dbgate-plugin-cosmosdb 5.5.7-alpha.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/dist/259.backend.js +1 -0
- package/dist/304.backend.js +1 -0
- package/dist/591.backend.js +1 -0
- package/dist/649.backend.js +1 -0
- package/dist/657.backend.js +1 -0
- package/dist/79.backend.js +1 -0
- package/dist/973.backend.js +1 -0
- package/dist/backend.js +2 -0
- package/dist/backend.js.LICENSE.txt +8 -0
- package/dist/frontend.js +1 -0
- package/package.json +35 -0
package/dist/backend.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! For license information please see backend.js.LICENSE.txt */
|
|
2
|
+
(()=>{var __webpack_modules__={4319:(e,t,r)=>{"use strict";r.d(t,{yG:()=>o,pi:()=>s,fromEnv:()=>i});var n=r(3929);const o="AWS_ACCESS_KEY_ID",s="AWS_SECRET_ACCESS_KEY",i=e=>async()=>{e?.logger?.debug("@aws-sdk/credential-provider-env - fromEnv");const t=process.env[o],r=process.env[s],i=process.env.AWS_SESSION_TOKEN,u=process.env.AWS_CREDENTIAL_EXPIRATION,a=process.env.AWS_CREDENTIAL_SCOPE,c=process.env.AWS_ACCOUNT_ID;if(t&&r)return{accessKeyId:t,secretAccessKey:r,...i&&{sessionToken:i},...u&&{expiration:new Date(u)},...a&&{credentialScope:a},...c&&{accountId:c}};throw new n.C1("Unable to find environment variable credentials.",{logger:e?.logger})}},8979:(e,t,r)=>{"use strict";r.d(t,{fromHttp:()=>l});var n=r(80),o=r(3929),s=r(1943),i=r.n(s),u=r(5282),a=r(4285),c=r(1108);const l=(e={})=>{let t;e.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");const r=e.awsContainerCredentialsRelativeUri??process.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI,s=e.awsContainerCredentialsFullUri??process.env.AWS_CONTAINER_CREDENTIALS_FULL_URI,l=e.awsContainerAuthorizationToken??process.env.AWS_CONTAINER_AUTHORIZATION_TOKEN,h=e.awsContainerAuthorizationTokenFile??process.env.AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE,d="NoOpLogger"!==e.logger?.constructor?.name&&e.logger?e.logger.warn:console.warn;if(r&&s&&(d("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri."),d("awsContainerCredentialsFullUri will take precedence.")),l&&h&&(d("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile."),d("awsContainerAuthorizationToken will take precedence.")),s)t=s;else{if(!r)throw new o.C1("No HTTP credential provider host provided.\nSet AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.",{logger:e.logger});t=`http://169.254.170.2${r}`}const p=new URL(t);((e,t)=>{if("https:"!==e.protocol&&"169.254.170.2"!==e.hostname&&"169.254.170.23"!==e.hostname&&"[fd00:ec2::23]"!==e.hostname){if(e.hostname.includes("[")){if("[::1]"===e.hostname||"[0000:0000:0000:0000:0000:0000:0000:0001]"===e.hostname)return}else{if("localhost"===e.hostname)return;const t=e.hostname.split("."),r=e=>{const t=parseInt(e,10);return 0<=t&&t<=255};if("127"===t[0]&&r(t[1])&&r(t[2])&&r(t[3])&&4===t.length)return}throw new o.C1("URL not accepted. It must either be HTTPS or match one of the following:\n - loopback CIDR 127.0.0.0/8 or [::1/128]\n - ECS container host 169.254.170.2\n - EKS container host 169.254.170.23 or [fd00:ec2::23]",{logger:t})}})(p,e.logger);const f=new n.$c({requestTimeout:e.timeout??1e3,connectionTimeout:e.timeout??1e3});return m=async()=>{const t=function(e){return new u.Kd({protocol:e.protocol,hostname:e.hostname,port:Number(e.port),path:e.pathname,query:Array.from(e.searchParams.entries()).reduce(((e,[t,r])=>(e[t]=r,e)),{}),fragment:e.hash})}(p);l?t.headers.Authorization=l:h&&(t.headers.Authorization=(await i().readFile(h)).toString());try{return async function(e,t){const r=(0,c.c9)(e.body),n=await r.transformToString();if(200===e.statusCode){const e=JSON.parse(n);if("string"!=typeof e.AccessKeyId||"string"!=typeof e.SecretAccessKey||"string"!=typeof e.Token||"string"!=typeof e.Expiration)throw new o.C1("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }",{logger:t});return{accessKeyId:e.AccessKeyId,secretAccessKey:e.SecretAccessKey,sessionToken:e.Token,expiration:(0,a.EI)(e.Expiration)}}if(e.statusCode>=400&&e.statusCode<500){let r={};try{r=JSON.parse(n)}catch(e){}throw Object.assign(new o.C1(`Server responded with status: ${e.statusCode}`,{logger:t}),{Code:r.Code,Message:r.Message})}throw new o.C1(`Server responded with status: ${e.statusCode}`,{logger:t})}((await f.handle(t)).response)}catch(t){throw new o.C1(String(t),{logger:e.logger})}},g=e.maxRetries??3,E=e.timeout??1e3,async()=>{for(let e=0;e<g;++e)try{return await m()}catch(e){await new Promise((e=>setTimeout(e,E)))}return await m()};var m,g,E}},7194:(e,t,r)=>{"use strict";r.d(t,{fromIni:()=>c});var n=r(3041),o=r(3929);const s=e=>!e.role_arn&&!!e.credential_source,i=e=>Boolean(e)&&"object"==typeof e&&"string"==typeof e.aws_access_key_id&&"string"==typeof e.aws_secret_access_key&&["undefined","string"].indexOf(typeof e.aws_session_token)>-1&&["undefined","string"].indexOf(typeof e.aws_account_id)>-1,u=(e,t)=>(t?.logger?.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials"),Promise.resolve({accessKeyId:e.aws_access_key_id,secretAccessKey:e.aws_secret_access_key,sessionToken:e.aws_session_token,...e.aws_credential_scope&&{credentialScope:e.aws_credential_scope},...e.aws_account_id&&{accountId:e.aws_account_id}})),a=async(e,t,c,l={},h=!1)=>{const d=t[e];if(Object.keys(l).length>0&&i(d))return u(d,c);if(h||((e,{profile:t="default",logger:r}={})=>Boolean(e)&&"object"==typeof e&&"string"==typeof e.role_arn&&["undefined","string"].indexOf(typeof e.role_session_name)>-1&&["undefined","string"].indexOf(typeof e.external_id)>-1&&["undefined","string"].indexOf(typeof e.mfa_serial)>-1&&(((e,{profile:t,logger:r})=>{const n="string"==typeof e.source_profile&&void 0===e.credential_source;return n&&r?.debug?.(` ${t} isAssumeRoleWithSourceProfile source_profile=${e.source_profile}`),n})(e,{profile:t,logger:r})||((e,{profile:t,logger:r})=>{const n="string"==typeof e.credential_source&&void 0===e.source_profile;return n&&r?.debug?.(` ${t} isCredentialSourceProfile credential_source=${e.credential_source}`),n})(e,{profile:t,logger:r})))(d,{profile:e,logger:c.logger}))return(async(e,t,i,u={})=>{i.logger?.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");const c=t[e];if(!i.roleAssumer){const{getDefaultRoleAssumer:e}=await Promise.all([r.e(649),r.e(591),r.e(973)]).then(r.bind(r,4973));i.roleAssumer=e({...i.clientConfig,credentialProviderLogger:i.logger,parentClientConfig:i?.parentClientConfig},i.clientPlugins)}const{source_profile:l}=c;if(l&&l in u)throw new o.C1(`Detected a cycle attempting to resolve credentials for profile ${(0,n.Bz)(i)}. Profiles visited: `+Object.keys(u).join(", "),{logger:i.logger});i.logger?.debug("@aws-sdk/credential-provider-ini - finding credential resolver using "+(l?`source_profile=[${l}]`:`profile=[${e}]`));const h=l?a(l,t,i,{...u,[l]:!0},s(t[l]??{})):(await((e,t,n)=>{const s={EcsContainer:async e=>{const{fromHttp:t}=await Promise.resolve().then(r.bind(r,8979)),{fromContainerMetadata:s}=await Promise.resolve().then(r.bind(r,1442));return n?.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer"),(0,o.cy)(t(e??{}),s(e))},Ec2InstanceMetadata:async e=>{n?.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");const{fromInstanceMetadata:t}=await Promise.resolve().then(r.bind(r,1442));return t(e)},Environment:async e=>{n?.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");const{fromEnv:t}=await Promise.resolve().then(r.bind(r,4319));return t(e)}};if(e in s)return s[e];throw new o.C1(`Unsupported credential source in profile ${t}. Got ${e}, expected EcsContainer or Ec2InstanceMetadata or Environment.`,{logger:n})})(c.credential_source,e,i.logger)(i))();if(s(c))return h;{const t={RoleArn:c.role_arn,RoleSessionName:c.role_session_name||`aws-sdk-js-${Date.now()}`,ExternalId:c.external_id,DurationSeconds:parseInt(c.duration_seconds||"3600",10)},{mfa_serial:r}=c;if(r){if(!i.mfaCodeProvider)throw new o.C1(`Profile ${e} requires multi-factor authentication, but no MFA code callback was provided.`,{logger:i.logger,tryNextLink:!1});t.SerialNumber=r,t.TokenCode=await i.mfaCodeProvider(r)}const n=await h;return i.roleAssumer(n,t)}})(e,t,c,l);if(i(d))return u(d,c);if(p=d,Boolean(p)&&"object"==typeof p&&"string"==typeof p.web_identity_token_file&&"string"==typeof p.role_arn&&["undefined","string"].indexOf(typeof p.role_session_name)>-1)return(async(e,t)=>Promise.resolve().then(r.bind(r,5362)).then((({fromTokenFile:r})=>r({webIdentityTokenFile:e.web_identity_token_file,roleArn:e.role_arn,roleSessionName:e.role_session_name,roleAssumerWithWebIdentity:t.roleAssumerWithWebIdentity,logger:t.logger,parentClientConfig:t.parentClientConfig})())))(d,c);var p;if((e=>Boolean(e)&&"object"==typeof e&&"string"==typeof e.credential_process)(d))return(async(e,t)=>Promise.resolve().then(r.bind(r,666)).then((({fromProcess:r})=>r({...e,profile:t})())))(c,e);if((e=>e&&("string"==typeof e.sso_start_url||"string"==typeof e.sso_account_id||"string"==typeof e.sso_session||"string"==typeof e.sso_region||"string"==typeof e.sso_role_name))(d))return await(async(e,t={})=>{const{fromSSO:n}=await Promise.resolve().then(r.bind(r,4516));return n({profile:e,logger:t.logger})()})(e,c);throw new o.C1(`Could not resolve credentials using profile: [${e}] in configuration/credentials file(s).`,{logger:c.logger})},c=(e={})=>async()=>{e.logger?.debug("@aws-sdk/credential-provider-ini - fromIni");const t=await(0,n.YU)(e);return a((0,n.Bz)(e),t,e)}},5968:(e,t,r)=>{"use strict";r.d(t,{v6:()=>u});var n=r(4319),o=r(3929),s=r(3041);let i=!1;const u=(e={})=>(0,o.Bj)((0,o.cy)((async()=>{if(e.profile??process.env[s.Ch])throw process.env[n.yG]&&process.env[n.pi]&&!i&&((e.logger?.warn&&"NoOpLogger"!==e.logger?.constructor?.name?e.logger.warn:console.warn)("@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:\n Multiple credential sources detected: \n Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.\n This SDK will proceed with the AWS_PROFILE value.\n \n However, a future version may change this behavior to prefer the ENV static credentials.\n Please ensure that your environment only sets either the AWS_PROFILE or the\n AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.\n"),i=!0),new o.C1("AWS_PROFILE is set, skipping fromEnv provider.",{logger:e.logger,tryNextLink:!0});return e.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),(0,n.fromEnv)(e)()}),(async()=>{e.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");const{ssoStartUrl:t,ssoAccountId:n,ssoRegion:s,ssoRoleName:i,ssoSession:u}=e;if(!(t||n||s||i||u))throw new o.C1("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:e.logger});const{fromSSO:a}=await Promise.resolve().then(r.bind(r,4516));return a(e)()}),(async()=>{e.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");const{fromIni:t}=await Promise.resolve().then(r.bind(r,7194));return t(e)()}),(async()=>{e.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");const{fromProcess:t}=await Promise.resolve().then(r.bind(r,666));return t(e)()}),(async()=>{e.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");const{fromTokenFile:t}=await Promise.resolve().then(r.bind(r,5362));return t(e)()}),(async()=>(e.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await(async e=>{const{ENV_CMDS_FULL_URI:t,ENV_CMDS_RELATIVE_URI:n,fromContainerMetadata:s,fromInstanceMetadata:i}=await Promise.resolve().then(r.bind(r,1442));if(process.env[n]||process.env[t]){e.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");const{fromHttp:t}=await Promise.resolve().then(r.bind(r,8979));return(0,o.cy)(t(e),s(e))}return process.env.AWS_EC2_METADATA_DISABLED?async()=>{throw new o.C1("EC2 Instance Metadata Service access disabled",{logger:e.logger})}:(e.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata"),i(e))})(e))())),(async()=>{throw new o.C1("Could not load credentials from any providers",{tryNextLink:!1,logger:e.logger})})),c,a),a=e=>void 0!==e?.expiration,c=e=>void 0!==e?.expiration&&e.expiration.getTime()-Date.now()<3e5},666:(e,t,r)=>{"use strict";r.r(t),r.d(t,{fromProcess:()=>u});var n=r(3041),o=r(3929),s=r(5317),i=r(9023);const u=(e={})=>async()=>{e.logger?.debug("@aws-sdk/credential-provider-process - fromProcess");const t=await(0,n.YU)(e);return(async(e,t,r)=>{const n=t[e];if(!t[e])throw new o.C1(`Profile ${e} could not be found in shared credentials file.`,{logger:r});{const u=n.credential_process;if(void 0===u)throw new o.C1(`Profile ${e} did not contain credential_process.`,{logger:r});{const n=(0,i.promisify)(s.exec);try{const{stdout:r}=await n(u);let o;try{o=JSON.parse(r.trim())}catch{throw Error(`Profile ${e} credential_process returned invalid JSON.`)}return((e,t,r)=>{if(1!==t.Version)throw Error(`Profile ${e} credential_process did not return Version 1.`);if(void 0===t.AccessKeyId||void 0===t.SecretAccessKey)throw Error(`Profile ${e} credential_process returned invalid credentials.`);if(t.Expiration){const r=new Date;if(new Date(t.Expiration)<r)throw Error(`Profile ${e} credential_process returned expired credentials.`)}let n=t.AccountId;return!n&&r?.[e]?.aws_account_id&&(n=r[e].aws_account_id),{accessKeyId:t.AccessKeyId,secretAccessKey:t.SecretAccessKey,...t.SessionToken&&{sessionToken:t.SessionToken},...t.Expiration&&{expiration:new Date(t.Expiration)},...t.CredentialScope&&{credentialScope:t.CredentialScope},...n&&{accountId:n}}})(e,o,t)}catch(e){throw new o.C1(e.message,{logger:r})}}}})((0,n.Bz)(e),t,e.logger)}},4516:(e,t,r)=>{"use strict";r.d(t,{fromSSO:()=>m});var n=r(3929),o=r(3041);const s="To refresh this SSO session run 'aws sso login' with the corresponding profile.",i={},u=e=>{if(e.expiration&&e.expiration.getTime()<Date.now())throw new n.Jh(`Token is expired. ${s}`,!1)},a=(e,t,r=!1)=>{if(void 0===t)throw new n.Jh(`Value not present for '${e}' in SSO Token${r?". Cannot refresh":""}. ${s}`,!1)};var c=r(9896);const{writeFile:l}=c.promises,h=new Date(0),d=(e={})=>async()=>{e.logger?.debug("@aws-sdk/token-providers - fromSso");const t=await(0,o.YU)(e),c=(0,o.Bz)(e),d=t[c];if(!d)throw new n.Jh(`Profile '${c}' could not be found in shared credentials file.`,!1);if(!d.sso_session)throw new n.Jh(`Profile '${c}' is missing required property 'sso_session'.`);const p=d.sso_session,f=(await(0,o.qw)(e))[p];if(!f)throw new n.Jh(`Sso session '${p}' could not be found in shared credentials file.`,!1);for(const e of["sso_start_url","sso_region"])if(!f[e])throw new n.Jh(`Sso session '${p}' is missing required property '${e}'.`,!1);f.sso_start_url;const m=f.sso_region;let g;try{g=await(0,o.vf)(p)}catch(e){throw new n.Jh(`The SSO session token associated with profile=${c} was not found or is invalid. ${s}`,!1)}a("accessToken",g.accessToken),a("expiresAt",g.expiresAt);const{accessToken:E,expiresAt:A}=g,y={token:E,expiration:new Date(A)};if(y.expiration.getTime()-Date.now()>3e5)return y;if(Date.now()-h.getTime()<3e4)return u(y),y;a("clientId",g.clientId,!0),a("clientSecret",g.clientSecret,!0),a("refreshToken",g.refreshToken,!0);try{h.setTime(Date.now());const e=await(async(e,t)=>{const{CreateTokenCommand:n}=await Promise.all([r.e(649),r.e(657)]).then(r.bind(r,5657)),o=await(async e=>{const{SSOOIDCClient:t}=await Promise.all([r.e(649),r.e(657)]).then(r.bind(r,5657));if(i[e])return i[e];const n=new t({region:e});return i[e]=n,n})(t);return o.send(new n({clientId:e.clientId,clientSecret:e.clientSecret,refreshToken:e.refreshToken,grantType:"refresh_token"}))})(g,m);a("accessToken",e.accessToken),a("expiresIn",e.expiresIn);const t=new Date(Date.now()+1e3*e.expiresIn);try{await((e,t)=>{const r=(0,o.C9)(e),n=JSON.stringify(t,null,2);return l(r,n)})(p,{...g,accessToken:e.accessToken,expiresAt:t.toISOString(),refreshToken:e.refreshToken})}catch(e){}return{token:e.accessToken,expiration:t}}catch(e){return u(y),y}},p=!1,f=async({ssoStartUrl:e,ssoSession:t,ssoAccountId:s,ssoRegion:i,ssoRoleName:u,ssoClient:a,clientConfig:c,profile:l,logger:h})=>{let f;const m="To refresh this SSO session run aws sso login with the corresponding profile.";if(t)try{const e=await d({profile:l})();f={accessToken:e.token,expiresAt:new Date(e.expiration).toISOString()}}catch(e){throw new n.C1(e.message,{tryNextLink:p,logger:h})}else try{f=await(0,o.vf)(e)}catch(e){throw new n.C1(`The SSO session associated with this profile is invalid. ${m}`,{tryNextLink:p,logger:h})}if(new Date(f.expiresAt).getTime()-Date.now()<=0)throw new n.C1(`The SSO session associated with this profile has expired. ${m}`,{tryNextLink:p,logger:h});const{accessToken:g}=f,{SSOClient:E,GetRoleCredentialsCommand:A}=await Promise.all([r.e(649),r.e(304)]).then(r.bind(r,1304)),y=a||new E(Object.assign({},c??{},{region:c?.region??i}));let C;try{C=await y.send(new A({accountId:s,roleName:u,accessToken:g}))}catch(e){throw new n.C1(e,{tryNextLink:p,logger:h})}const{roleCredentials:{accessKeyId:S,secretAccessKey:w,sessionToken:b,expiration:v,credentialScope:O,accountId:_}={}}=C;if(!(S&&w&&b&&v))throw new n.C1("SSO returns an invalid temporary credential.",{tryNextLink:p,logger:h});return{accessKeyId:S,secretAccessKey:w,sessionToken:b,expiration:new Date(v),...O&&{credentialScope:O},..._&&{accountId:_}}},m=(e={})=>async()=>{e.logger?.debug("@aws-sdk/credential-provider-sso - fromSSO");const{ssoStartUrl:t,ssoAccountId:r,ssoRegion:s,ssoRoleName:i,ssoSession:u}=e,{ssoClient:a}=e,c=(0,o.Bz)(e);if(t||r||s||i||u){if(t&&r&&s&&i)return f({ssoStartUrl:t,ssoSession:u,ssoAccountId:r,ssoRegion:s,ssoRoleName:i,ssoClient:a,clientConfig:e.clientConfig,profile:c});throw new n.C1('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',{tryNextLink:!1,logger:e.logger})}{const r=(await(0,o.YU)(e))[c];if(!r)throw new n.C1(`Profile ${c} was not found.`,{logger:e.logger});if(!(l=r)||"string"!=typeof l.sso_start_url&&"string"!=typeof l.sso_account_id&&"string"!=typeof l.sso_session&&"string"!=typeof l.sso_region&&"string"!=typeof l.sso_role_name)throw new n.C1(`Profile ${c} is not configured with SSO credentials.`,{logger:e.logger});if(r?.sso_session){const i=(await(0,o.qw)(e))[r.sso_session],u=` configurations in profile ${c} and sso-session ${r.sso_session}`;if(s&&s!==i.sso_region)throw new n.C1("Conflicting SSO region"+u,{tryNextLink:!1,logger:e.logger});if(t&&t!==i.sso_start_url)throw new n.C1("Conflicting SSO start_url"+u,{tryNextLink:!1,logger:e.logger});r.sso_region=i.sso_region,r.sso_start_url=i.sso_start_url}const{sso_start_url:i,sso_account_id:u,sso_region:h,sso_role_name:d,sso_session:p}=((e,t)=>{const{sso_start_url:r,sso_account_id:o,sso_region:s,sso_role_name:i}=e;if(!(r&&o&&s&&i))throw new n.C1(`Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(e).join(", ")}\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,{tryNextLink:!1,logger:t});return e})(r,e.logger);return f({ssoStartUrl:i,ssoSession:p,ssoAccountId:u,ssoRegion:h,ssoRoleName:d,ssoClient:a,clientConfig:e.clientConfig,profile:c})}var l}},5362:(e,t,r)=>{"use strict";r.r(t),r.d(t,{fromTokenFile:()=>i,fromWebToken:()=>s});var n=r(3929),o=r(9896);const s=e=>async()=>{e.logger?.debug("@aws-sdk/credential-provider-web-identity - fromWebToken");const{roleArn:t,roleSessionName:n,webIdentityToken:o,providerId:s,policyArns:i,policy:u,durationSeconds:a}=e;let{roleAssumerWithWebIdentity:c}=e;if(!c){const{getDefaultRoleAssumerWithWebIdentity:t}=await Promise.all([r.e(649),r.e(591),r.e(973)]).then(r.bind(r,4973));c=t({...e.clientConfig,credentialProviderLogger:e.logger,parentClientConfig:e.parentClientConfig},e.clientPlugins)}return c({RoleArn:t,RoleSessionName:n??`aws-sdk-js-session-${Date.now()}`,WebIdentityToken:o,ProviderId:s,PolicyArns:i,Policy:u,DurationSeconds:a})},i=(e={})=>async()=>{e.logger?.debug("@aws-sdk/credential-provider-web-identity - fromTokenFile");const t=e?.webIdentityTokenFile??process.env.AWS_WEB_IDENTITY_TOKEN_FILE,r=e?.roleArn??process.env.AWS_ROLE_ARN,i=e?.roleSessionName??process.env.AWS_ROLE_SESSION_NAME;if(!t||!r)throw new n.C1("Web identity configuration not specified",{logger:e.logger});return s({...e,webIdentityToken:(0,o.readFileSync)(t,{encoding:"ascii"}),roleArn:r,roleSessionName:i})()}},1899:(e,t,r)=>{"use strict";r.r(t),r.d(t,{createCredentialChain:()=>o,fromCognitoIdentity:()=>l,fromCognitoIdentityPool:()=>g,fromContainerMetadata:()=>A,fromEnv:()=>S,fromHttp:()=>y.fromHttp,fromIni:()=>b,fromInstanceMetadata:()=>v,fromNodeProviderChain:()=>_,fromProcess:()=>D,fromSSO:()=>I,fromTemporaryCredentials:()=>F,fromTokenFile:()=>N,fromWebToken:()=>M});var n=r(3929);const o=(...e)=>{let t=-1;const r=Object.assign((async()=>{const r=await(0,n.cy)(...e)();return r.expiration||-1===t||(r.expiration=new Date(Date.now()+t)),r}),{expireAfter(e){if(e<3e5)throw new Error("@aws-sdk/credential-providers - createCredentialChain(...).expireAfter(ms) may not be called with a duration lower than five minutes.");return t=e,r}});return r};function s(e){return Promise.all(Object.keys(e).reduce(((t,r)=>{const n=e[r];return"string"==typeof n?t.push([r,n]):t.push(n().then((e=>[r,e]))),t}),[])).then((e=>e.reduce(((e,[t,r])=>(e[t]=r,e)),{})))}function i(e){return async()=>{e.logger?.debug("@aws-sdk/credential-provider-cognito-identity - fromCognitoIdentity");const{GetCredentialsForIdentityCommand:t,CognitoIdentityClient:n}=await Promise.all([r.e(649),r.e(259)]).then(r.bind(r,1259)),{Credentials:{AccessKeyId:o=u(e.logger),Expiration:i,SecretKey:l=c(e.logger),SessionToken:h}=a(e.logger)}=await(e.client??new n(Object.assign({},e.clientConfig??{},{region:e.clientConfig?.region??e.parentClientConfig?.region}))).send(new t({CustomRoleArn:e.customRoleArn,IdentityId:e.identityId,Logins:e.logins?await s(e.logins):void 0}));return{identityId:e.identityId,accessKeyId:o,secretAccessKey:l,sessionToken:h,expiration:i}}}function u(e){throw new n.C1("Response from Amazon Cognito contained no access key ID",{logger:e})}function a(e){throw new n.C1("Response from Amazon Cognito contained no credentials",{logger:e})}function c(e){throw new n.C1("Response from Amazon Cognito contained no secret key",{logger:e})}const l=e=>i({...e}),h="IdentityIds";class d{constructor(e="aws:cognito-identity-ids"){this.dbName=e}getItem(e){return this.withObjectStore("readonly",(t=>{const r=t.get(e);return new Promise((e=>{r.onerror=()=>e(null),r.onsuccess=()=>e(r.result?r.result.value:null)}))})).catch((()=>null))}removeItem(e){return this.withObjectStore("readwrite",(t=>{const r=t.delete(e);return new Promise(((e,t)=>{r.onerror=()=>t(r.error),r.onsuccess=()=>e()}))}))}setItem(e,t){return this.withObjectStore("readwrite",(r=>{const n=r.put({id:e,value:t});return new Promise(((e,t)=>{n.onerror=()=>t(n.error),n.onsuccess=()=>e()}))}))}getDb(){const e=self.indexedDB.open(this.dbName,1);return new Promise(((t,r)=>{e.onsuccess=()=>{t(e.result)},e.onerror=()=>{r(e.error)},e.onblocked=()=>{r(new Error("Unable to access DB"))},e.onupgradeneeded=()=>{const t=e.result;t.onerror=()=>{r(new Error("Failed to create object store"))},t.createObjectStore(h,{keyPath:"id"})}}))}withObjectStore(e,t){return this.getDb().then((r=>{const n=r.transaction(h,e);return n.oncomplete=()=>r.close(),new Promise(((e,r)=>{n.onerror=()=>r(n.error),e(t(n.objectStore(h)))})).catch((e=>{throw r.close(),e}))}))}}const p=new class{constructor(e={}){this.store=e}getItem(e){return e in this.store?this.store[e]:null}removeItem(e){delete this.store[e]}setItem(e,t){this.store[e]=t}};function f(){return"object"==typeof self&&self.indexedDB?new d:"object"==typeof window&&window.localStorage?window.localStorage:p}function m(e){throw new n.C1("Response from Amazon Cognito contained no identity ID",{logger:e})}const g=e=>function({accountId:e,cache:t=f(),client:n,clientConfig:o,customRoleArn:u,identityPoolId:a,logins:c,userIdentifier:l=(c&&0!==Object.keys(c).length?void 0:"ANONYMOUS"),logger:h,parentClientConfig:d}){h?.debug("@aws-sdk/credential-provider-cognito-identity - fromCognitoIdentity");const p=l?`aws:cognito-identity-credentials:${a}:${l}`:void 0;let g=async()=>{const{GetIdCommand:l,CognitoIdentityClient:f}=await Promise.all([r.e(649),r.e(259)]).then(r.bind(r,1259)),E=n??new f(Object.assign({},o??{},{region:o?.region??d?.region}));let A=p&&await t.getItem(p);if(!A){const{IdentityId:r=m(h)}=await E.send(new l({AccountId:e,IdentityPoolId:a,Logins:c?await s(c):void 0}));A=r,p&&Promise.resolve(t.setItem(p,A)).catch((()=>{}))}return g=i({client:E,customRoleArn:u,logins:c,identityId:A}),g()};return()=>g().catch((async e=>{throw p&&Promise.resolve(t.removeItem(p)).catch((()=>{})),e}))}({...e});var E=r(1442);const A=e=>(e?.logger?.debug("@smithy/credential-provider-imds","fromContainerMetadata"),(0,E.fromContainerMetadata)(e));var y=r(8979),C=r(4319);const S=e=>(0,C.fromEnv)(e);var w=r(7194);const b=(e={})=>(0,w.fromIni)({...e}),v=e=>(e?.logger?.debug("@smithy/credential-provider-imds","fromInstanceMetadata"),(0,E.fromInstanceMetadata)(e));var O=r(5968);const _=(e={})=>(0,O.v6)({...e});var B=r(666);const D=e=>(0,B.fromProcess)(e);var T=r(4516);const I=(e={})=>(0,T.fromSSO)({...e}),F=e=>{let t;return async()=>{e.logger?.debug("@aws-sdk/credential-providers - fromTemporaryCredentials (STS)");const o={...e.params,RoleSessionName:e.params.RoleSessionName??"aws-sdk-js-"+Date.now()};if(o?.SerialNumber){if(!e.mfaCodeProvider)throw new n.C1("Temporary credential requires multi-factor authentication, but no MFA code callback was provided.",{tryNextLink:!1,logger:e.logger});o.TokenCode=await e.mfaCodeProvider(o?.SerialNumber)}const{AssumeRoleCommand:s,STSClient:i}=await Promise.all([r.e(649),r.e(591),r.e(79)]).then(r.bind(r,3079));if(t||(t=new i({...e.clientConfig,credentials:e.masterCredentials})),e.clientPlugins)for(const r of e.clientPlugins)t.middlewareStack.use(r);const{Credentials:u}=await t.send(new s(o));if(!u||!u.AccessKeyId||!u.SecretAccessKey)throw new n.C1(`Invalid response from STS.assumeRole call with role ${o.RoleArn}`,{logger:e.logger});return{accessKeyId:u.AccessKeyId,secretAccessKey:u.SecretAccessKey,sessionToken:u.SessionToken,expiration:u.Expiration,credentialScope:u.CredentialScope}}};var R=r(5362);const N=(e={})=>(0,R.fromTokenFile)({...e}),M=e=>(0,R.fromWebToken)({...e})},1900:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(3106);t.default=(0,n.gunzipSync)(Buffer.from("H4sIAAAAAAACA+3dTYgcaRkA4LemO9Mhxm0FITnE9Cwr4jHgwgZ22B6YywqCJ0HQg5CL4sGTuOjCtGSF4CkHEW856MlTQHD3EJnWkU0Owh5VxE3LHlYQdNxd2U6mU59UV/d09fw4M2EySSXPAzNdP1/9fX/99bzVNZEN4jisRDulVFnQmLxm1aXF9Id/2/xMxNJ4XZlg576yuYlGt9gupV6xoFf8jhu9YvulVrFlp5XSx+lfvYhORGPXvqIRWSxERKtIm8bKFd10WNfKDS5Fo9jJWrq2+M2IlW+8uHgl/+BsROfPF4v5L7148Ur68Sha6dqZpYiVVy8tvLCWXo80Sf/lS89dGX2wHGvpzoXVn75/YWH5wmqe8uika82ViJXTy83Ve2k5Urozm38wm4/ls6t5uT6yfsTSJ7J3T0VKt8c5ExEXI8aFkH729c3eT+7EC6ca8cVULZUiYacX0R5PNWNxlh9L1y90q5kyzrpyy+9WcvOV6URntqw7La9sNVstXyczWVaWYbaaTYqzOHpr7pyiNT3/YzKuT63Z/FqKZlFTiuXtFM2vVOtIq7jiyKJbWZaOWD0euz0yoV2Z7kY0xq2x0YhfzVpmM5px9nTEH7JZ0ot5u39p0ma75Z472/s/H+2yr2inYyuq7fMvJivH2rM72N/Z3lyL31F2b1ya1P0zn816k2KP6JU9UzseucdQH5YqVeH/lFajSN2udg+TLJ9rksNxlvV2lki19rXKI43TPLejFu4ov7k3nMbhyhfY3Xb37f8BAGCf0eMTOH5szf154KmnNgKcnLb+Fzi2AfXktbN7fJelwTAiO/W5uQ2KINXRYu+znqo/WTAdLadURHmy3qciazd3bra4T3w16/f7t7Ms9U5gfJu10955sx1r3vmhBAAAAAAAgId20J1iZbDowNvIjuH427Gr5l/eiC+8OplZON8sVjx/qr9y+Pj+YRItT+NqAM+kkZs3AAAAAID6yfx1FwCAI97/dCh1/ub6SA0AAAAAAAAAgNoT/wcAAAAAAACA+hP/BwAAAAAAAID6E/8HAAAAAAAAgPoT/wcAAAAAAACA+hP/BwAAAAAAAID6E/8HAAAAAAAAgPoT/wcAAAAAAACA+hP/BwAAAAAAAID6E/8HAAAAAAAAgPoT/wcAAAAAAACA+hutp5SiQpYAAAAAAAAAQO2MIpZiT804flnAE2fhwjOeAZXr76kOAAAAAAAA8FjNf4N/l0NE3U/vuVQskLpSd4/Yh2xu9xTu0tFeeNYsLI2f/VMdNxTzj6Je9E/+6pp6Nn3awW3A54goe4Bss6v+PGsjQGMAAAAAAOBp5XEgwH6e7J7rwEQHRb/XvAMAAAAAAAA8yzoDeQDwVGjIAgAAAAAAAACoPfF/AAAAAAAAAKg/8X8AAAAAAAAAqD/xfwAAAAAAAACoP/F/AAAAAAAAAKg/8X8AAAAAAAAAqD/xfwAAAAAAAACoP/F/AAAAAAAAAKg/8X8AAAAAAAAAqD/xfwAAAAAAAACoP/F/AAAAAAAAAKg/8X8AAAAAAAAAqL/GSkSkClkCAAAAAAAAALXTSAAAAAAAAABA3Y1kAQAAAAAAAADUX8RSXZ9dsHC9+M8Fg2Ex/em1lAZpEBGttcrVjZqLEa+k0XpKw9mG4zWx4ukPUMhkAQAAAAAAABzBqbSe3//rXOS9HxGdo4TqR2XkutCdBu+LaPZw/lBbO7cbHnh2C7N7AIo4evEznllqLqWUp/LnYOtpM2bnOH66wI1+9GO4sOuISwv/TOlumu56FDv3NZhc4mR9v7zYIrafr40j/Cccvj9Xns3t3mu99E7qxUv3bqS0/ouNH/08++RGemfQ+nsx/5uNXsQPGulynPvv3ZTW37zd+1ovrqaYpP/122X6Xpx779Z3zr/3YOPKW1lkaRDf31pPaf3j/msRsVGkL+d/f+/m4sJsPm1cfSsr16e8m9Ldj/KsnyIuR3nXw83Is3EhxLd/2V773ks3m/cj/THKUummdP9qKhIOImuOU0Xjwb3y+oqt735rpTetVbF9n8R4x9crRfO77TKqVOZpDclv5bfK18lMnk+q0K18UpxF/RrGXE0Zxtqx3tWSj+vxbL4XaasfKb0dRbtLW73JsfPGg177H+OmGKlfvS1msllt7JEJm9XOJqXR+Fkfo1H66uy5H1v3Xx5+uJmGLw9jro2u7Loj4PnuR6+f+e3d261+eazNhzrL7X83MohoHpS4PddV8ki1it61//pw1g7z6p1U/26Nm2llST57B5rUvuG0XqSU/rPd7jYrqWcbd+beJQ77BgPMDwn37/8BAGCf0eMTOH4cPlufv9VGgJOzqf8Fjm1APXkd7B7f5dF57GPMaWy/MTvjvNvtXj6h8W2+GXvnzXaseeeHEgAAAAAAAB7aQXeKlcGiadBoEOeLb2dtpGOL2MyOtf391a3P/zD96c3JzIP3t4oV797vrh8+vn+YRL5bBuj/AQAAAABqJvfHXQAAHkX82zfXAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACeAgkAAAAAAAAAqLuRLAAAAAAAAACA2hv9D1iu/VAYaAYA","base64"))},64:e=>{"use strict";const t=e=>e.codePointAt(0);function r(e){const t=[],r=e.length;for(let n=0;n<r;n+=1){const o=e.charCodeAt(n);if(o>=55296&&o<=56319&&r>n+1){const r=e.charCodeAt(n+1);if(r>=56320&&r<=57343){t.push(1024*(o-55296)+r-56320+65536),n+=1;continue}}t.push(o)}return t}function n({unassigned_code_points:e,commonly_mapped_to_nothing:n,non_ASCII_space_characters:o,prohibited_characters:s,bidirectional_r_al:i,bidirectional_l:u},a,c={}){const l=o,h=n;if("string"!=typeof a)throw new TypeError("Expected string.");if(0===a.length)return"";const d=r(a).map((e=>l.get(e)?32:e)).filter((e=>!h.get(e))),p=String.fromCodePoint.apply(null,d).normalize("NFKC"),f=r(p);if(f.some((e=>s.get(e))))throw new Error("Prohibited character, see https://tools.ietf.org/html/rfc4013#section-2.3");if(!0!==c.allowUnassigned&&f.some((t=>e.get(t))))throw new Error("Unassigned code point, see https://tools.ietf.org/html/rfc4013#section-2.5");const m=f.some((e=>i.get(e))),g=f.some((e=>u.get(e)));if(m&&g)throw new Error("String must not contain RandALCat and LCat at the same time, see https://tools.ietf.org/html/rfc3454#section-6");const E=i.get(t(p[0])),A=i.get(t((y=p)[y.length-1]));var y;if(m&&(!E||!A))throw new Error("Bidirectional RandALCat character must be the first and the last character of the string, see https://tools.ietf.org/html/rfc3454#section-6");return p}n.saslprep=n,n.default=n,e.exports=n},8939:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.createMemoryCodePoints=void 0;const o=n(r(3174));t.createMemoryCodePoints=function(e){let t=0;function r(){const r=e.readUInt32BE(t);t+=4;const n=e.slice(t,t+r);return t+=r,(0,o.default)({buffer:n})}return{unassigned_code_points:r(),commonly_mapped_to_nothing:r(),non_ASCII_space_characters:r(),prohibited_characters:r(),bidirectional_r_al:r(),bidirectional_l:r()}}},1726:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};const o=n(r(64)),s=r(8939),i=n(r(1900)),u=(0,s.createMemoryCodePoints)(i.default);function a(e,t){return(0,o.default)(u,e,t)}a.saslprep=a,a.default=a,e.exports=a},1442:(e,t,r)=>{"use strict";r.d(t,{ENV_CMDS_FULL_URI:()=>d,ENV_CMDS_RELATIVE_URI:()=>p,fromContainerMetadata:()=>m,fromInstanceMetadata:()=>x,getInstanceMetadataEndpoint:()=>B,httpRequest:()=>u});var n=r(3929),o=r(7016),s=r(2562),i=r(8611);function u(e){return new Promise(((t,r)=>{const o=(0,i.request)({method:"GET",...e,hostname:e.hostname?.replace(/^\[(.+)\]$/,"$1")});o.on("error",(e=>{r(Object.assign(new n.mZ("Unable to connect to instance metadata service"),e)),o.destroy()})),o.on("timeout",(()=>{r(new n.mZ("TimeoutError from instance metadata service")),o.destroy()})),o.on("response",(e=>{const{statusCode:i=400}=e;(i<200||300<=i)&&(r(Object.assign(new n.mZ("Error response received from instance metadata service"),{statusCode:i})),o.destroy());const u=[];e.on("data",(e=>{u.push(e)})),e.on("end",(()=>{t(s.Buffer.concat(u)),o.destroy()}))})),o.end()}))}const a=e=>Boolean(e)&&"object"==typeof e&&"string"==typeof e.AccessKeyId&&"string"==typeof e.SecretAccessKey&&"string"==typeof e.Token&&"string"==typeof e.Expiration,c=e=>({accessKeyId:e.AccessKeyId,secretAccessKey:e.SecretAccessKey,sessionToken:e.Token,expiration:new Date(e.Expiration),...e.AccountId&&{accountId:e.AccountId}}),l=({maxRetries:e=0,timeout:t=1e3})=>({maxRetries:e,timeout:t}),h=(e,t)=>{let r=e();for(let n=0;n<t;n++)r=r.catch(e);return r},d="AWS_CONTAINER_CREDENTIALS_FULL_URI",p="AWS_CONTAINER_CREDENTIALS_RELATIVE_URI",f="AWS_CONTAINER_AUTHORIZATION_TOKEN",m=(e={})=>{const{timeout:t,maxRetries:r}=l(e);return()=>h((async()=>{const r=await y({logger:e.logger}),o=JSON.parse(await g(t,r));if(!a(o))throw new n.C1("Invalid response received from instance metadata service.",{logger:e.logger});return c(o)}),r)},g=async(e,t)=>(process.env[f]&&(t.headers={...t.headers,Authorization:process.env[f]}),(await u({...t,timeout:e})).toString()),E={localhost:!0,"127.0.0.1":!0},A={"http:":!0,"https:":!0},y=async({logger:e})=>{if(process.env[p])return{hostname:"169.254.170.2",path:process.env[p]};if(process.env[d]){const t=(0,o.parse)(process.env[d]);if(!t.hostname||!(t.hostname in E))throw new n.C1(`${t.hostname} is not a valid container metadata service hostname`,{tryNextLink:!1,logger:e});if(!t.protocol||!(t.protocol in A))throw new n.C1(`${t.protocol} is not a valid container metadata service protocol`,{tryNextLink:!1,logger:e});return{...t,port:t.port?parseInt(t.port,10):void 0}}throw new n.C1(`The container metadata credential provider cannot be used unless the ${p} or ${d} environment variable is set`,{tryNextLink:!1,logger:e})};var C=r(4012);class S extends n.C1{constructor(e,t=!0){super(e,t),this.tryNextLink=t,this.name="InstanceMetadataV1FallbackError",Object.setPrototypeOf(this,S.prototype)}}var w,b=r(30);!function(e){e.IPv4="http://169.254.169.254",e.IPv6="http://[fd00:ec2::254]"}(w||(w={}));const v={environmentVariableSelector:e=>e.AWS_EC2_METADATA_SERVICE_ENDPOINT,configFileSelector:e=>e.ec2_metadata_service_endpoint,default:void 0};var O;!function(e){e.IPv4="IPv4",e.IPv6="IPv6"}(O||(O={}));const _={environmentVariableSelector:e=>e.AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE,configFileSelector:e=>e.ec2_metadata_service_endpoint_mode,default:O.IPv4},B=async()=>(0,b.D)(await D()||await T()),D=async()=>(0,C.Z)(v)(),T=async()=>{const e=await(0,C.Z)(_)();switch(e){case O.IPv4:return w.IPv4;case O.IPv6:return w.IPv6;default:throw new Error(`Unsupported endpoint mode: ${e}. Select from ${Object.values(O)}`)}},I=(e,t)=>{const r=300+Math.floor(300*Math.random()),n=new Date(Date.now()+1e3*r);t.warn(`Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(n)}.\nFor more information, please visit: https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html`);const o=e.originalExpiration??e.expiration;return{...e,...o?{originalExpiration:o}:{},expiration:n}},F="/latest/meta-data/iam/security-credentials/",R="AWS_EC2_METADATA_V1_DISABLED",N="ec2_metadata_v1_disabled",M="x-aws-ec2-metadata-token",x=(e={})=>((e,t={})=>{const r=t?.logger||console;let n;return async()=>{let t;try{t=await e(),t.expiration&&t.expiration.getTime()<Date.now()&&(t=I(t,r))}catch(e){if(!n)throw e;r.warn("Credential renew failed: ",e),t=I(n,r)}return n=t,t}})(P(e),{logger:e.logger}),P=(e={})=>{let t=!1;const{logger:r,profile:o}=e,{timeout:s,maxRetries:i}=l(e),u=async(r,s)=>{if(t||null==s.headers?.[M]){let t=!1,r=!1;const s=await(0,C.Z)({environmentVariableSelector:t=>{const o=t[R];if(r=!!o&&"false"!==o,void 0===o)throw new n.C1(`${R} not set in env, checking config file next.`,{logger:e.logger});return r},configFileSelector:e=>{const r=e[N];return t=!!r&&"false"!==r,t},default:!1},{profile:o})();if(e.ec2MetadataV1Disabled||s){const n=[];throw e.ec2MetadataV1Disabled&&n.push("credential provider initialization (runtime option ec2MetadataV1Disabled)"),t&&n.push(`config file profile (${N})`),r&&n.push(`process environment variable (${R})`),new S(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${n.join(", ")}].`)}}const i=(await h((async()=>{let e;try{e=await L(s)}catch(e){throw 401===e.statusCode&&(t=!1),e}return e}),r)).trim();return h((async()=>{let r;try{r=await U(i,s,e)}catch(e){throw 401===e.statusCode&&(t=!1),e}return r}),r)};return async()=>{const e=await B();if(t)return r?.debug("AWS SDK Instance Metadata","using v1 fallback (no token fetch)"),u(i,{...e,timeout:s});{let n;try{n=(await k({...e,timeout:s})).toString()}catch(n){if(400===n?.statusCode)throw Object.assign(n,{message:"EC2 Metadata token request returned error"});return("TimeoutError"===n.message||[403,404,405].includes(n.statusCode))&&(t=!0),r?.debug("AWS SDK Instance Metadata","using v1 fallback (initial)"),u(i,{...e,timeout:s})}return u(i,{...e,headers:{[M]:n},timeout:s})}}},k=async e=>u({...e,path:"/latest/api/token",method:"PUT",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"21600"}}),L=async e=>(await u({...e,path:F})).toString(),U=async(e,t,r)=>{const o=JSON.parse((await u({...t,path:F+e})).toString());if(!a(o))throw new n.C1("Invalid response received from instance metadata service.",{logger:r.logger});return c(o)}},7140:(e,t,r)=>{"use strict";r.d(t,{m:()=>n});const n=e=>"function"==typeof ArrayBuffer&&e instanceof ArrayBuffer||"[object ArrayBuffer]"===Object.prototype.toString.call(e)},4012:(e,t,r)=>{"use strict";r.d(t,{Z:()=>i});var n=r(3929);function o(e){try{const t=new Set(Array.from(e.match(/([A-Z_]){3,}/g)??[]));return t.delete("CONFIG"),t.delete("CONFIG_PREFIX_SEPARATOR"),t.delete("ENV"),[...t].join(", ")}catch(t){return e}}var s=r(3041);const i=({environmentVariableSelector:e,configFileSelector:t,default:r},i={})=>{return(0,n.Bj)((0,n.cy)((u=e,async()=>{try{const e=u(process.env);if(void 0===e)throw new Error;return e}catch(e){throw new n.C1(e.message||`Not found in ENV: ${o(u.toString())}`,{logger:undefined})}}),((e,{preferredFile:t="config",...r}={})=>async()=>{const i=(0,s.Bz)(r),{configFile:u,credentialsFile:a}=await(0,s.p6)(r),c=a[i]||{},l=u[i]||{},h="config"===t?{...c,...l}:{...l,...c};try{const r=e(h,"config"===t?u:a);if(void 0===r)throw new Error;return r}catch(t){throw new n.C1(t.message||`Not found in config files w/ profile [${i}]: ${o(e.toString())}`,{logger:r.logger})}})(t,i),(e=>(e=>"function"==typeof e)(e)?async()=>await e():(0,n.VR)(e))(r)));var u}},80:(e,t,r)=>{"use strict";r.d(t,{$c:()=>l,kv:()=>d});var n=r(5282),o=r(3110),s=r(8611);const i=require("https"),u=["ECONNRESET","EPIPE","ETIMEDOUT"],a=e=>{const t={};for(const r of Object.keys(e)){const n=e[r];t[r]=Array.isArray(n)?n.join(","):n}return t};var c=r(2203);class l{static create(e){return"function"==typeof e?.handle?e:new l(e)}static checkSocketUsage(e,t,r=console){const{sockets:n,requests:o,maxSockets:s}=e;if("number"!=typeof s||s===1/0)return t;if(Date.now()-15e3<t)return t;if(n&&o)for(const e in n){const t=n[e]?.length??0,i=o[e]?.length??0;if(t>=s&&i>=2*s)return r?.warn?.(`@smithy/node-http-handler:WARN - socket usage at capacity=${t} and ${i} additional requests are enqueued.\nSee https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html\nor increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`),Date.now()}return t}constructor(e){this.socketWarningTimestamp=0,this.metadata={handlerProtocol:"http/1.1"},this.configProvider=new Promise(((t,r)=>{"function"==typeof e?e().then((e=>{t(this.resolveDefaultConfig(e))})).catch(r):t(this.resolveDefaultConfig(e))}))}resolveDefaultConfig(e){const{requestTimeout:t,connectionTimeout:r,socketTimeout:n,httpAgent:o,httpsAgent:u}=e||{},a=!0;return{connectionTimeout:r,requestTimeout:t??n,httpAgent:o instanceof s.Agent||"function"==typeof o?.destroy?o:new s.Agent({keepAlive:a,maxSockets:50,...o}),httpsAgent:u instanceof i.Agent||"function"==typeof u?.destroy?u:new i.Agent({keepAlive:a,maxSockets:50,...u}),logger:console}}destroy(){this.config?.httpAgent?.destroy(),this.config?.httpsAgent?.destroy()}async handle(e,{abortSignal:t}={}){return this.config||(this.config=await this.configProvider),new Promise(((r,h)=>{let d;const p=[],f=async e=>{await d,p.forEach(clearTimeout),h(e)};if(!this.config)throw new Error("Node HTTP request handler config is not resolved");if(t?.aborted){const e=new Error("Request aborted");return e.name="AbortError",void f(e)}const m="https:"===e.protocol,g=m?this.config.httpsAgent:this.config.httpAgent;p.push(setTimeout((()=>{this.socketWarningTimestamp=l.checkSocketUsage(g,this.socketWarningTimestamp,this.config.logger)}),this.config.socketAcquisitionWarningTimeout??(this.config.requestTimeout??2e3)+(this.config.connectionTimeout??1e3)));const E=function(e){const t=[];for(let r of Object.keys(e).sort()){const n=e[r];if(r=(0,o.o)(r),Array.isArray(n))for(let e=0,s=n.length;e<s;e++)t.push(`${r}=${(0,o.o)(n[e])}`);else{let e=r;(n||"string"==typeof n)&&(e+=`=${(0,o.o)(n)}`),t.push(e)}}return t.join("&")}(e.query||{});let A;null==e.username&&null==e.password||(A=`${e.username??""}:${e.password??""}`);let y=e.path;E&&(y+=`?${E}`),e.fragment&&(y+=`#${e.fragment}`);let C=e.hostname??"";C="["===C[0]&&C.endsWith("]")?e.hostname.slice(1,-1):e.hostname;const S={headers:e.headers,host:C,method:e.method,path:y,port:e.port,agent:g,auth:A},w=(m?i.request:s.request)(S,(e=>{(async e=>{await d,p.forEach(clearTimeout),r(e)})({response:new n.cS({statusCode:e.statusCode||-1,reason:e.statusMessage,headers:a(e.headers),body:e})})}));if(w.on("error",(e=>{u.includes(e.code)?f(Object.assign(e,{name:"TimeoutError"})):f(e)})),t){const e=()=>{w.destroy();const e=new Error("Request aborted");e.name="AbortError",f(e)};if("function"==typeof t.addEventListener){const r=t;r.addEventListener("abort",e,{once:!0}),w.once("close",(()=>r.removeEventListener("abort",e)))}else t.onabort=e}p.push(((e,t,r=0)=>{if(!r)return-1;const n=n=>{const o=setTimeout((()=>{e.destroy(),t(Object.assign(new Error(`Socket timed out without establishing a connection within ${r} ms`),{name:"TimeoutError"}))}),r-n),s=e=>{e?.connecting?e.on("connect",(()=>{clearTimeout(o)})):clearTimeout(o)};e.socket?s(e.socket):e.on("socket",s)};return r<2e3?(n(0),0):setTimeout(n.bind(null,1e3),1e3)})(w,f,this.config.connectionTimeout)),p.push(((e,t,r=0)=>{const n=n=>{e.setTimeout(r-n,(()=>{e.destroy(),t(Object.assign(new Error(`Connection timed out after ${r} ms`),{name:"TimeoutError"}))}))};return 0<r&&r<6e3?(n(0),0):setTimeout(n.bind(null,0===r?0:3e3),3e3)})(w,f,this.config.requestTimeout));const b=S.agent;"object"==typeof b&&"keepAlive"in b&&p.push(((e,{keepAlive:t,keepAliveMsecs:r},n=3e3)=>{if(!0!==t)return-1;const o=()=>{e.socket?e.socket.setKeepAlive(t,r||0):e.on("socket",(e=>{e.setKeepAlive(t,r||0)}))};return 0===n?(o(),0):setTimeout(o,n)})(w,{keepAlive:b.keepAlive,keepAliveMsecs:b.keepAliveMsecs})),d=async function(e,t,r=1e3){const n=t.headers??{},o=n.Expect||n.expect;let s=-1,i=!1;"100-continue"===o&&await Promise.race([new Promise((e=>{s=Number(setTimeout(e,Math.max(1e3,r)))})),new Promise((t=>{e.on("continue",(()=>{clearTimeout(s),t()})),e.on("error",(()=>{i=!0,clearTimeout(s),t()}))}))]),i||function(e,t){if(t instanceof c.Readable)t.pipe(e);else{if(t){if(Buffer.isBuffer(t)||"string"==typeof t)return void e.end(t);const r=t;return"object"==typeof r&&r.buffer&&"number"==typeof r.byteOffset&&"number"==typeof r.byteLength?void e.end(Buffer.from(r.buffer,r.byteOffset,r.byteLength)):void e.end(Buffer.from(t))}e.end()}}(e,t.body)}(w,e,this.config.requestTimeout).catch((e=>(p.forEach(clearTimeout),h(e))))}))}updateHttpClientConfig(e,t){this.config=void 0,this.configProvider=this.configProvider.then((r=>({...r,[e]:t})))}httpHandlerConfigs(){return this.config??{}}}require("http2"),Symbol.iterator;class h extends c.Writable{constructor(){super(...arguments),this.bufferedBytes=[]}_write(e,t,r){this.bufferedBytes.push(e),r()}}const d=e=>p(e)?async function(e){const t=[],r=e.getReader();let n=!1,o=0;for(;!n;){const{done:e,value:s}=await r.read();s&&(t.push(s),o+=s.length),n=e}const s=new Uint8Array(o);let i=0;for(const e of t)s.set(e,i),i+=e.length;return s}(e):new Promise(((t,r)=>{const n=new h;e.pipe(n),e.on("error",(e=>{n.end(),r(e)})),n.on("error",r),n.on("finish",(function(){const e=new Uint8Array(Buffer.concat(this.bufferedBytes));t(e)}))})),p=e=>"function"==typeof ReadableStream&&e instanceof ReadableStream},3929:(e,t,r)=>{"use strict";r.d(t,{C1:()=>o,mZ:()=>n,Jh:()=>s,cy:()=>i,VR:()=>u,Bj:()=>a});class n extends Error{constructor(e,t=!0){let r,o=!0;"boolean"==typeof t?(r=void 0,o=t):null!=t&&"object"==typeof t&&(r=t.logger,o=t.tryNextLink??!0),super(e),this.name="ProviderError",this.tryNextLink=o,Object.setPrototypeOf(this,n.prototype),r?.debug?.(`@smithy/property-provider ${o?"->":"(!)"} ${e}`)}static from(e,t=!0){return Object.assign(new this(e.message,t),e)}}class o extends n{constructor(e,t=!0){super(e,t),this.name="CredentialsProviderError",Object.setPrototypeOf(this,o.prototype)}}class s extends n{constructor(e,t=!0){super(e,t),this.name="TokenProviderError",Object.setPrototypeOf(this,s.prototype)}}const i=(...e)=>async()=>{if(0===e.length)throw new n("No providers in chain");let t;for(const r of e)try{return await r()}catch(e){if(t=e,e?.tryNextLink)continue;throw e}throw t},u=e=>()=>Promise.resolve(e),a=(e,t,r)=>{let n,o,s,i=!1;const u=async()=>{o||(o=e());try{n=await o,s=!0,i=!1}finally{o=void 0}return n};return void 0===t?async e=>(s&&!e?.forceRefresh||(n=await u()),n):async e=>(s&&!e?.forceRefresh||(n=await u()),i?n:r&&!r(n)?(i=!0,n):t(n)?(await u(),n):n)}},5282:(e,t,r)=>{"use strict";r.d(t,{Kd:()=>s,cS:()=>i,eS:()=>n,jt:()=>o});const n=e=>{let t=e.httpHandler;return{setHttpHandler(e){t=e},httpHandler:()=>t,updateHttpClientConfig(e,r){t.updateHttpClientConfig(e,r)},httpHandlerConfigs:()=>t.httpHandlerConfigs()}},o=e=>({httpHandler:e.httpHandler()});r(9830);class s{constructor(e){this.method=e.method||"GET",this.hostname=e.hostname||"localhost",this.port=e.port,this.query=e.query||{},this.headers=e.headers||{},this.body=e.body,this.protocol=e.protocol?":"!==e.protocol.slice(-1)?`${e.protocol}:`:e.protocol:"https:",this.path=e.path?"/"!==e.path.charAt(0)?`/${e.path}`:e.path:"/",this.username=e.username,this.password=e.password,this.fragment=e.fragment}static clone(e){const t=new s({...e,headers:{...e.headers}});var r;return t.query&&(t.query=(r=t.query,Object.keys(r).reduce(((e,t)=>{const n=r[t];return{...e,[t]:Array.isArray(n)?[...n]:n}}),{}))),t}static isInstance(e){if(!e)return!1;const t=e;return"method"in t&&"protocol"in t&&"hostname"in t&&"path"in t&&"object"==typeof t.query&&"object"==typeof t.headers}clone(){return s.clone(this)}}class i{constructor(e){this.statusCode=e.statusCode,this.reason=e.reason,this.headers=e.headers||{},this.body=e.body}static isInstance(e){if(!e)return!1;const t=e;return"number"==typeof t.statusCode&&"object"==typeof t.headers}}},3041:(e,t,r)=>{"use strict";r.d(t,{QD:()=>O,Ch:()=>u,Bz:()=>a,C9:()=>l,vf:()=>p,p6:()=>_,qw:()=>T,YU:()=>I});var n=r(857),o=r(6928);const s={},i=()=>{const{HOME:e,USERPROFILE:t,HOMEPATH:r,HOMEDRIVE:i=`C:${o.sep}`}=process.env;if(e)return e;if(t)return t;if(r)return`${i}${r}`;const u=process&&process.geteuid?`${process.geteuid()}`:"DEFAULT";return s[u]||(s[u]=(0,n.homedir)()),s[u]},u="AWS_PROFILE",a=e=>e.profile||process.env[u]||"default";var c=r(6982);const l=e=>{const t=(0,c.createHash)("sha1").update(e).digest("hex");return(0,o.join)(i(),".aws","sso","cache",`${t}.json`)};var h=r(9896);const{readFile:d}=h.promises,p=async e=>{const t=l(e),r=await d(t,"utf8");return JSON.parse(r)};var f=r(9830);const m=e=>Object.entries(e).filter((([e])=>{const t=e.indexOf(O);return-1!==t&&Object.values(f.Ip).includes(e.substring(0,t))})).reduce(((e,[t,r])=>{const n=t.indexOf(O);return e[t.substring(0,n)===f.Ip.PROFILE?t.substring(n+1):t]=r,e}),{...e.default&&{default:e.default}}),g=()=>process.env.AWS_CONFIG_FILE||(0,o.join)(i(),".aws","config"),E=()=>process.env.AWS_SHARED_CREDENTIALS_FILE||(0,o.join)(i(),".aws","credentials"),A=/^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/,y=["__proto__","profile __proto__"],C=e=>{const t={};let r,n;for(const o of e.split(/\r?\n/)){const e=o.split(/(^|\s)[;#]/)[0].trim();if("["===e[0]&&"]"===e[e.length-1]){r=void 0,n=void 0;const t=e.substring(1,e.length-1),o=A.exec(t);if(o){const[,e,,t]=o;Object.values(f.Ip).includes(e)&&(r=[e,t].join(O))}else r=t;if(y.includes(t))throw new Error(`Found invalid profile name "${t}"`)}else if(r){const s=e.indexOf("=");if(![0,-1].includes(s)){const[i,u]=[e.substring(0,s).trim(),e.substring(s+1).trim()];if(""===u)n=i;else{n&&o.trimStart()===o&&(n=void 0),t[r]=t[r]||{};const e=n?[n,i].join(O):i;t[r][e]=u}}}}return t},{readFile:S}=h.promises,w={},b=(e,t)=>(w[e]&&!t?.ignoreCache||(w[e]=S(e,"utf8")),w[e]),v=()=>({}),O=".",_=async(e={})=>{const{filepath:t=E(),configFilepath:r=g()}=e,n=i();let s=t;t.startsWith("~/")&&(s=(0,o.join)(n,t.slice(2)));let u=r;r.startsWith("~/")&&(u=(0,o.join)(n,r.slice(2)));const a=await Promise.all([b(u,{ignoreCache:e.ignoreCache}).then(C).then(m).catch(v),b(s,{ignoreCache:e.ignoreCache}).then(C).catch(v)]);return{configFile:a[0],credentialsFile:a[1]}},B=e=>Object.entries(e).filter((([e])=>e.startsWith(f.Ip.SSO_SESSION+O))).reduce(((e,[t,r])=>({...e,[t.substring(t.indexOf(O)+1)]:r})),{}),D=()=>({}),T=async(e={})=>b(e.configFilepath??g()).then(C).then(B).catch(D),I=async e=>{const t=await _(e);return((...e)=>{const t={};for(const r of e)for(const[e,n]of Object.entries(r))void 0!==t[e]?Object.assign(t[e],n):t[e]=n;return t})(t.configFile,t.credentialsFile)}},4285:(e,t,r)=>{"use strict";r.d(t,{Kj:()=>a,uB:()=>d,N4:()=>ie,$H:()=>f,TJ:()=>V,Ss:()=>fe,Px:()=>l,Mw:()=>H,I9:()=>Y,ET:()=>E,Y0:()=>C,r$:()=>m,Xk:()=>S,lK:()=>w,$6:()=>J,xA:()=>te,rm:()=>ne,eU:()=>oe,lT:()=>G,Tj:()=>ue,l3:()=>M,EI:()=>F,t_:()=>N,uv:()=>re,un:()=>pe,xW:()=>O,s:()=>ae,jr:()=>q});const n=(e,t)=>{const r=[];if(e&&r.push(e),t)for(const e of t)r.push(e);return r},o=(e,t)=>`${e||"anonymous"}${t&&t.length>0?` (a.k.a. ${t.join(",")})`:""}`,s=()=>{let e=[],t=[],r=!1;const a=new Set,c=r=>(e.forEach((e=>{r.add(e.middleware,{...e})})),t.forEach((e=>{r.addRelativeTo(e.middleware,{...e})})),r.identifyOnResolve?.(d.identifyOnResolve()),r),l=e=>{const t=[];return e.before.forEach((e=>{0===e.before.length&&0===e.after.length?t.push(e):t.push(...l(e))})),t.push(e),e.after.reverse().forEach((e=>{0===e.before.length&&0===e.after.length?t.push(e):t.push(...l(e))})),t},h=(r=!1)=>{const s=[],a=[],c={};var h;return e.forEach((e=>{const t={...e,before:[],after:[]};for(const e of n(t.name,t.aliases))c[e]=t;s.push(t)})),t.forEach((e=>{const t={...e,before:[],after:[]};for(const e of n(t.name,t.aliases))c[e]=t;a.push(t)})),a.forEach((e=>{if(e.toMiddleware){const t=c[e.toMiddleware];if(void 0===t){if(r)return;throw new Error(`${e.toMiddleware} is not found when adding ${o(e.name,e.aliases)} middleware ${e.relation} ${e.toMiddleware}`)}"after"===e.relation&&t.after.push(e),"before"===e.relation&&t.before.push(e)}})),(h=s,h.sort(((e,t)=>i[t.step]-i[e.step]||u[t.priority||"normal"]-u[e.priority||"normal"]))).map(l).reduce(((e,t)=>(e.push(...t),e)),[])},d={add:(t,r={})=>{const{name:s,override:i,aliases:u}=r,c={step:"initialize",priority:"normal",middleware:t,...r},l=n(s,u);if(l.length>0){if(l.some((e=>a.has(e)))){if(!i)throw new Error(`Duplicate middleware name '${o(s,u)}'`);for(const t of l){const r=e.findIndex((e=>e.name===t||e.aliases?.some((e=>e===t))));if(-1===r)continue;const n=e[r];if(n.step!==c.step||c.priority!==n.priority)throw new Error(`"${o(n.name,n.aliases)}" middleware with ${n.priority} priority in ${n.step} step cannot be overridden by "${o(s,u)}" middleware with ${c.priority} priority in ${c.step} step.`);e.splice(r,1)}}for(const e of l)a.add(e)}e.push(c)},addRelativeTo:(e,r)=>{const{name:s,override:i,aliases:u}=r,c={middleware:e,...r},l=n(s,u);if(l.length>0){if(l.some((e=>a.has(e)))){if(!i)throw new Error(`Duplicate middleware name '${o(s,u)}'`);for(const e of l){const r=t.findIndex((t=>t.name===e||t.aliases?.some((t=>t===e))));if(-1===r)continue;const n=t[r];if(n.toMiddleware!==c.toMiddleware||n.relation!==c.relation)throw new Error(`"${o(n.name,n.aliases)}" middleware ${n.relation} "${n.toMiddleware}" middleware cannot be overridden by "${o(s,u)}" middleware ${c.relation} "${c.toMiddleware}" middleware.`);t.splice(r,1)}}for(const e of l)a.add(e)}t.push(c)},clone:()=>c(s()),use:e=>{e.applyToStack(d)},remove:r=>"string"==typeof r?(r=>{let o=!1;const s=e=>{const t=n(e.name,e.aliases);if(t.includes(r)){o=!0;for(const e of t)a.delete(e);return!1}return!0};return e=e.filter(s),t=t.filter(s),o})(r):(r=>{let o=!1;const s=e=>{if(e.middleware===r){o=!0;for(const t of n(e.name,e.aliases))a.delete(t);return!1}return!0};return e=e.filter(s),t=t.filter(s),o})(r),removeByTag:r=>{let o=!1;const s=e=>{const{tags:t,name:s,aliases:i}=e;if(t&&t.includes(r)){const e=n(s,i);for(const t of e)a.delete(t);return o=!0,!1}return!0};return e=e.filter(s),t=t.filter(s),o},concat:e=>{const t=c(s());return t.use(e),t.identifyOnResolve(r||t.identifyOnResolve()||(e.identifyOnResolve?.()??!1)),t},applyToStack:c,identify:()=>h(!0).map((e=>{const t=e.step??e.relation+" "+e.toMiddleware;return o(e.name,e.aliases)+" - "+t})),identifyOnResolve:e=>("boolean"==typeof e&&(r=e),r),resolve:(e,t)=>{for(const r of h().map((e=>e.middleware)).reverse())e=r(e,t);return r&&console.log(d.identify()),e}};return d},i={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},u={high:3,normal:2,low:1};class a{constructor(e){this.config=e,this.middlewareStack=s()}send(e,t,r){const n="function"!=typeof t?t:void 0,o="function"==typeof t?t:r;let s;if(void 0===n&&!0===this.config.cacheMiddleware){this.handlers||(this.handlers=new WeakMap);const t=this.handlers;t.has(e.constructor)?s=t.get(e.constructor):(s=e.resolveMiddleware(this.middlewareStack,this.config,n),t.set(e.constructor,s))}else delete this.handlers,s=e.resolveMiddleware(this.middlewareStack,this.config,n);if(!o)return s(e).then((e=>e.output));s(e).then((e=>o(null,e.output)),(e=>o(e))).catch((()=>{}))}destroy(){this.config?.requestHandler?.destroy?.(),delete this.handlers}}var c=r(1108);const l=async(e=new Uint8Array,t)=>{if(e instanceof Uint8Array)return c.Mu.mutate(e);if(!e)return c.Mu.mutate(new Uint8Array);const r=t.streamCollector(e);return c.Mu.mutate(await r)};var h=r(9830);class d{constructor(){this.middlewareStack=s()}static classBuilder(){return new p}resolveMiddlewareWithContext(e,t,r,{middlewareFn:n,clientName:o,commandName:s,inputFilterSensitiveLog:i,outputFilterSensitiveLog:u,smithyContext:a,additionalContext:c,CommandCtor:l}){for(const o of n.bind(this)(l,e,t,r))this.middlewareStack.use(o);const d=e.concat(this.middlewareStack),{logger:p}=t,f={logger:p,clientName:o,commandName:s,inputFilterSensitiveLog:i,outputFilterSensitiveLog:u,[h.Vf]:{commandInstance:this,...a},...c},{requestHandler:m}=t;return d.resolve((e=>m.handle(e.request,r||{})),f)}}class p{constructor(){this._init=()=>{},this._ep={},this._middlewareFn=()=>[],this._commandName="",this._clientName="",this._additionalContext={},this._smithyContext={},this._inputFilterSensitiveLog=e=>e,this._outputFilterSensitiveLog=e=>e,this._serializer=null,this._deserializer=null}init(e){this._init=e}ep(e){return this._ep=e,this}m(e){return this._middlewareFn=e,this}s(e,t,r={}){return this._smithyContext={service:e,operation:t,...r},this}c(e={}){return this._additionalContext=e,this}n(e,t){return this._clientName=e,this._commandName=t,this}f(e=(e=>e),t=(e=>e)){return this._inputFilterSensitiveLog=e,this._outputFilterSensitiveLog=t,this}ser(e){return this._serializer=e,this}de(e){return this._deserializer=e,this}build(){const e=this;let t;return t=class extends d{static getEndpointParameterInstructions(){return e._ep}constructor(...[t]){super(),this.serialize=e._serializer,this.deserialize=e._deserializer,this.input=t??{},e._init(this)}resolveMiddleware(r,n,o){return this.resolveMiddlewareWithContext(r,n,o,{CommandCtor:t,middlewareFn:e._middlewareFn,clientName:e._clientName,commandName:e._commandName,inputFilterSensitiveLog:e._inputFilterSensitiveLog,outputFilterSensitiveLog:e._outputFilterSensitiveLog,smithyContext:e._smithyContext,additionalContext:e._additionalContext})}}}}const f="***SensitiveInformation***",m=e=>{if(null!=e){if("string"==typeof e){const t=parseFloat(e);if(!Number.isNaN(t))return String(t)!==String(e)&&D.warn(B(`Expected number but observed string: ${e}`)),t}if("number"==typeof e)return e;throw new TypeError(`Expected number, got ${typeof e}: ${e}`)}},g=Math.ceil(2**127*(2-2**-23)),E=e=>A(e,32),A=(e,t)=>{const r=(e=>{if(null!=e){if(Number.isInteger(e)&&!Number.isNaN(e))return e;throw new TypeError(`Expected integer, got ${typeof e}: ${e}`)}})(e);if(void 0!==r&&y(r,t)!==r)throw new TypeError(`Expected ${t}-bit integer, got ${e}`);return r},y=(e,t)=>{switch(t){case 32:return Int32Array.of(e)[0];case 16:return Int16Array.of(e)[0];case 8:return Int8Array.of(e)[0]}},C=(e,t)=>{if(null==e){if(t)throw new TypeError(`Expected a non-null value for ${t}`);throw new TypeError("Expected a non-null value")}return e},S=e=>{if(null==e)return;if("object"==typeof e&&!Array.isArray(e))return e;const t=Array.isArray(e)?"array":typeof e;throw new TypeError(`Expected object, got ${t}: ${e}`)},w=e=>{if(null!=e){if("string"==typeof e)return e;if(["boolean","number","bigint"].includes(typeof e))return D.warn(B(`Expected string, got ${typeof e}: ${e}`)),String(e);throw new TypeError(`Expected string, got ${typeof e}: ${e}`)}},b=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,v=e=>{const t=e.match(b);if(null===t||t[0].length!==e.length)throw new TypeError("Expected real number, got implicit NaN");return parseFloat(e)},O=e=>E("string"==typeof e?v(e):e),_=e=>(e=>A(e,16))("string"==typeof e?v(e):e),B=e=>String(new TypeError(e).stack||e).split("\n").slice(0,5).filter((e=>!e.includes("stackTraceWarning"))).join("\n"),D={warn:console.warn},T=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],I=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),F=e=>{if(null==e)return;if("string"!=typeof e)throw new TypeError("RFC-3339 date-times must be expressed as strings");const t=I.exec(e);if(!t)throw new TypeError("Invalid RFC-3339 date-time value");const[r,n,o,s,i,u,a,c]=t,l=_(z(n)),h=U(o,"month",1,12),d=U(s,"day",1,31);return x(l,h,d,{hours:i,minutes:u,seconds:a,fractionalMilliseconds:c})},R=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),N=e=>{if(null==e)return;if("string"!=typeof e)throw new TypeError("RFC-3339 date-times must be expressed as strings");const t=R.exec(e);if(!t)throw new TypeError("Invalid RFC-3339 date-time value");const[r,n,o,s,i,u,a,c,l]=t,h=_(z(n)),d=U(o,"month",1,12),p=U(s,"day",1,31),f=x(h,d,p,{hours:i,minutes:u,seconds:a,fractionalMilliseconds:c});return"Z"!=l.toUpperCase()&&f.setTime(f.getTime()-$(l)),f},M=e=>{if(null==e)return;let t;if("number"==typeof e)t=e;else if("string"==typeof e)t=(e=>m("string"==typeof e?v(e):e))(e);else{if("object"!=typeof e||1!==e.tag)throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");t=e.value}if(Number.isNaN(t)||t===1/0||t===-1/0)throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(1e3*t))},x=(e,t,r,n)=>{const o=t-1;return k(e,o,r),new Date(Date.UTC(e,o,r,U(n.hours,"hour",0,23),U(n.minutes,"minute",0,59),U(n.seconds,"seconds",0,60),j(n.fractionalMilliseconds)))},P=[31,28,31,30,31,30,31,31,30,31,30,31],k=(e,t,r)=>{let n=P[t];if(1===t&&L(e)&&(n=29),r>n)throw new TypeError(`Invalid day for ${T[t]} in ${e}: ${r}`)},L=e=>e%4==0&&(e%100!=0||e%400==0),U=(e,t,r,n)=>{const o=(e=>(e=>A(e,8))("string"==typeof e?v(e):e))(z(e));if(o<r||o>n)throw new TypeError(`${t} must be between ${r} and ${n}, inclusive`);return o},j=e=>null==e?0:1e3*(e=>(e=>{const t=m(e);if(void 0!==t&&!Number.isNaN(t)&&t!==1/0&&t!==-1/0&&Math.abs(t)>g)throw new TypeError(`Expected 32-bit float, got ${e}`);return t})("string"==typeof e?v(e):e))("0."+e),$=e=>{const t=e[0];let r=1;if("+"==t)r=1;else{if("-"!=t)throw new TypeError(`Offset direction, ${t}, must be "+" or "-"`);r=-1}return r*(60*Number(e.substring(1,3))+Number(e.substring(4,6)))*60*1e3},z=e=>{let t=0;for(;t<e.length-1&&"0"===e.charAt(t);)t++;return 0===t?e:e.slice(t)};class V extends Error{constructor(e){super(e.message),Object.setPrototypeOf(this,V.prototype),this.name=e.name,this.$fault=e.$fault,this.$metadata=e.$metadata}}const H=(e,t={})=>{Object.entries(t).filter((([,e])=>void 0!==e)).forEach((([t,r])=>{null!=e[t]&&""!==e[t]||(e[t]=r)}));const r=e.message||e.Message||"UnknownError";return e.message=r,delete e.Message,e},q=e=>({output:t,parsedBody:r,errorCode:n})=>{(({output:e,parsedBody:t,exceptionCtor:r,errorCode:n})=>{const o=W(e),s=o.httpStatusCode?o.httpStatusCode+"":void 0,i=new r({name:t?.code||t?.Code||n||s||"UnknownError",$fault:"client",$metadata:o});throw H(i,t)})({output:t,parsedBody:r,exceptionCtor:e,errorCode:n})},W=e=>({httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}),G=e=>{switch(e){case"standard":case"cross-region":return{retryMode:"standard",connectionTimeout:3100};case"in-region":return{retryMode:"standard",connectionTimeout:1100};case"mobile":return{retryMode:"standard",connectionTimeout:3e4};default:return{}}};let K=!1;const Y=e=>{e&&!K&&parseInt(e.substring(1,e.indexOf(".")))<16&&(K=!0)};function J(e){return encodeURIComponent(e).replace(/[!'()*]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}const X=e=>{const t=[];for(const r in h.dB){const n=h.dB[r];void 0!==e[n]&&t.push({algorithmId:()=>n,checksumConstructor:()=>e[n]})}return{_checksumAlgorithms:t,addChecksumAlgorithm(e){this._checksumAlgorithms.push(e)},checksumAlgorithms(){return this._checksumAlgorithms}}},Z=e=>{const t={};return e.checksumAlgorithms().forEach((e=>{t[e.algorithmId()]=e.checksumConstructor()})),t},Q=e=>{let t=e.retryStrategy;return{setRetryStrategy(e){t=e},retryStrategy:()=>t}},ee=e=>{const t={};return t.retryStrategy=e.retryStrategy(),t},te=e=>({...X(e),...Q(e)}),re=e=>({...Z(e),...ee(e)}),ne=e=>{const t="#text";for(const r in e)e.hasOwnProperty(r)&&void 0!==e[r][t]?e[r]=e[r][t]:"object"==typeof e[r]&&null!==e[r]&&(e[r]=ne(e[r]));return e},oe=e=>null!=e,se=function(){const e=Object.getPrototypeOf(this).constructor,t=new(Function.bind.apply(String,[null,...arguments]));return Object.setPrototypeOf(t,e.prototype),t};se.prototype=Object.create(String.prototype,{constructor:{value:se,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf(se,String);class ie{trace(){}debug(){}info(){}warn(){}error(){}}function ue(e,t,r){let n,o,s;if(void 0===t&&void 0===r)n={},s=e;else{if(n=e,"function"==typeof t)return o=t,s=r,ce(n,o,s);s=t}for(const e of Object.keys(s))Array.isArray(s[e])?le(n,null,s,e):n[e]=s[e];return n}const ae=(e,t)=>{const r={};for(const n in t)le(r,e,t,n);return r},ce=(e,t,r)=>ue(e,Object.entries(r).reduce(((e,[r,n])=>(Array.isArray(n)?e[r]=n:e[r]="function"==typeof n?[t,n()]:[t,n],e)),{})),le=(e,t,r,n)=>{if(null!==t){let o=r[n];"function"==typeof o&&(o=[,o]);const[s=he,i=de,u=n]=o;return void(("function"==typeof s&&s(t[u])||"function"!=typeof s&&s)&&(e[n]=i(t[u])))}let[o,s]=r[n];if("function"==typeof s){let t;const r=void 0===o&&null!=(t=s()),i="function"==typeof o&&!!o(void 0)||"function"!=typeof o&&!!o;r?e[n]=t:i&&(e[n]=s())}else{const t=void 0===o&&null!=s,r="function"==typeof o&&!!o(s)||"function"!=typeof o&&!!o;(t||r)&&(e[n]=s)}},he=e=>null!=e,de=e=>e,pe=(e,t,r,n,o,s)=>{if(null==t||void 0===t[r])throw new Error("No value provided for input HTTP label: "+r+".");{const t=n();if(t.length<=0)throw new Error("Empty value provided for input HTTP label: "+r+".");e=e.replace(o,s?t.split("/").map((e=>J(e))).join("/"):J(t))}return e},fe=e=>{if(null==e)return{};if(Array.isArray(e))return e.filter((e=>null!=e)).map(fe);if("object"==typeof e){const t={};for(const r of Object.keys(e))null!=e[r]&&(t[r]=fe(e[r]));return t}return e}},9830:(e,t,r)=>{"use strict";var n,o,s,i,u;r.d(t,{dB:()=>i,Ue:()=>s,Ip:()=>c,Vf:()=>a}),function(e){e.HEADER="header",e.QUERY="query"}(n||(n={})),function(e){e.HEADER="header",e.QUERY="query"}(o||(o={})),function(e){e.HTTP="http",e.HTTPS="https"}(s||(s={})),function(e){e.MD5="md5",e.CRC32="crc32",e.CRC32C="crc32c",e.SHA1="sha1",e.SHA256="sha256"}(i||(i={})),function(e){e[e.HEADER=0]="HEADER",e[e.TRAILER=1]="TRAILER"}(u||(u={}));const a="__smithy_context";var c,l;!function(e){e.PROFILE="profile",e.SSO_SESSION="sso-session",e.SERVICES="services"}(c||(c={})),function(e){e.HTTP_0_9="http/0.9",e.HTTP_1_0="http/1.0",e.TDS_8_0="tds/8.0"}(l||(l={}))},30:(e,t,r)=>{"use strict";r.d(t,{D:()=>n});const n=e=>{if("string"==typeof e)return n(new URL(e));const{hostname:t,pathname:r,port:o,protocol:s,search:i}=e;let u;return i&&(u=function(e){const t={};if(e=e.replace(/^\?/,""))for(const r of e.split("&")){let[e,n=null]=r.split("=");e=decodeURIComponent(e),n&&(n=decodeURIComponent(n)),e in t?Array.isArray(t[e])?t[e].push(n):t[e]=[t[e],n]:t[e]=n}return t}(i)),{hostname:t,port:o?parseInt(o):void 0,protocol:s,path:r,query:u}}},5409:(e,t,r)=>{"use strict";r.d(t,{E:()=>s,n:()=>u});var n=r(2219);const o=/^[A-Za-z0-9+/]*={0,2}$/,s=e=>{if(3*e.length%4!=0)throw new TypeError("Incorrect padding on base64 string.");if(!o.exec(e))throw new TypeError("Invalid base64 string.");const t=(0,n.s)(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)};var i=r(8304);const u=e=>{let t;if(t="string"==typeof e?(0,i.ar)(e):e,"object"!=typeof t||"number"!=typeof t.byteOffset||"number"!=typeof t.byteLength)throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");return(0,n.Q)(t.buffer,t.byteOffset,t.byteLength).toString("base64")}},2219:(e,t,r)=>{"use strict";r.d(t,{Q:()=>s,s:()=>i});var n=r(7140),o=r(2562);const s=(e,t=0,r=e.byteLength-t)=>{if(!(0,n.m)(e))throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof e} (${e})`);return o.Buffer.from(e,t,r)},i=(e,t)=>{if("string"!=typeof e)throw new TypeError(`The "input" argument must be of type string. Received type ${typeof e} (${e})`);return t?o.Buffer.from(e,t):o.Buffer.from(e)}},199:(e,t,r)=>{"use strict";r.d(t,{a:()=>s,n:()=>i});const n={},o={};for(let e=0;e<256;e++){let t=e.toString(16).toLowerCase();1===t.length&&(t=`0${t}`),n[e]=t,o[t]=e}function s(e){if(e.length%2!=0)throw new Error("Hex encoded strings must have an even number length");const t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2){const n=e.slice(r,r+2).toLowerCase();if(!(n in o))throw new Error(`Cannot decode unrecognized sequence ${n} as hexadecimal`);t[r/2]=o[n]}return t}function i(e){let t="";for(let r=0;r<e.byteLength;r++)t+=n[e[r]];return t}},1108:(e,t,r)=>{"use strict";r.d(t,{Mu:()=>s,c9:()=>g});var n=r(5409),o=r(8304);class s extends Uint8Array{static fromString(e,t="utf-8"){if("string"==typeof e)return function(e,t){return"base64"===t?s.mutate((0,n.E)(e)):s.mutate((0,o.ar)(e))}(e,t);throw new Error(`Unsupported conversion from ${typeof e} to Uint8ArrayBlobAdapter.`)}static mutate(e){return Object.setPrototypeOf(e,s.prototype),e}transformToString(e="utf-8"){return function(e,t="utf-8"){return"base64"===t?(0,n.n)(e):(0,o.Pq)(e)}(this,e)}}var i=r(2203),u=r(80),a=r(2219),c=r(9023);r(5282);var l=r(199);const h=e=>"function"==typeof ReadableStream&&(e?.constructor?.name===ReadableStream.name||e instanceof ReadableStream),d="The stream has already been transformed.",p=e=>{if(!f(e)&&!h(e))throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${e?.__proto__?.constructor?.name||e}`);let t=!1;const r=async()=>{if(t)throw new Error(d);return t=!0,await(e=>"function"==typeof Blob&&e instanceof Blob?async function(e){const t=await function(e){return new Promise(((t,r)=>{const n=new FileReader;n.onloadend=()=>{if(2!==n.readyState)return r(new Error("Reader aborted too early"));const e=n.result??"",o=e.indexOf(","),s=o>-1?o+1:e.length;t(e.substring(s))},n.onabort=()=>r(new Error("Read aborted")),n.onerror=()=>r(n.error),n.readAsDataURL(e)}))}(e),r=(0,n.E)(t);return new Uint8Array(r)}(e):async function(e){const t=[],r=e.getReader();let n=!1,o=0;for(;!n;){const{done:e,value:s}=await r.read();s&&(t.push(s),o+=s.length),n=e}const s=new Uint8Array(o);let i=0;for(const e of t)s.set(e,i),i+=e.length;return s}(e))(e)};return Object.assign(e,{transformToByteArray:r,transformToString:async e=>{const t=await r();if("base64"===e)return(0,n.n)(t);if("hex"===e)return(0,l.n)(t);if(void 0===e||"utf8"===e||"utf-8"===e)return(0,o.Pq)(t);if("function"==typeof TextDecoder)return new TextDecoder(e).decode(t);throw new Error("TextDecoder is not available, please make sure polyfill is provided.")},transformToWebStream:()=>{if(t)throw new Error(d);if(t=!0,f(e))return(e=>{if("function"!=typeof e.stream)throw new Error("Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\nIf you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body");return e.stream()})(e);if(h(e))return e;throw new Error(`Cannot transform payload to web stream, got ${e}`)}})},f=e=>"function"==typeof Blob&&e instanceof Blob,m="The stream has already been transformed.",g=e=>{if(!(e instanceof i.Readable))try{return p(e)}catch(t){throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${e?.__proto__?.constructor?.name||e}`)}let t=!1;const r=async()=>{if(t)throw new Error(m);return t=!0,await(0,u.kv)(e)};return Object.assign(e,{transformToByteArray:r,transformToString:async e=>{const t=await r();return void 0===e||Buffer.isEncoding(e)?(0,a.Q)(t.buffer,t.byteOffset,t.byteLength).toString(e):new c.TextDecoder(e).decode(t)},transformToWebStream:()=>{if(t)throw new Error(m);if(null!==e.readableFlowing)throw new Error("The stream has been consumed by other callbacks.");if("function"!=typeof i.Readable.toWeb)throw new Error("Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.");return t=!0,i.Readable.toWeb(e)}})};i.Writable},3110:(e,t,r)=>{"use strict";r.d(t,{o:()=>n});const n=e=>encodeURIComponent(e).replace(/[!'()*]/g,o),o=e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`},8304:(e,t,r)=>{"use strict";r.d(t,{ar:()=>o,Fo:()=>s,Pq:()=>i});var n=r(2219);const o=e=>{const t=(0,n.s)(e,"utf8");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT)},s=e=>"string"==typeof e?o(e):ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(e),i=e=>{if("string"==typeof e)return e;if("object"!=typeof e||"number"!=typeof e.byteOffset||"number"!=typeof e.byteLength)throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return(0,n.Q)(e.buffer,e.byteOffset,e.byteLength).toString("utf8")}},6144:(e,t,r)=>{var n=t,o=r(7016),s=r(1099),i=r(6982),u=r(3310)(1e3);function a(e,t,r){return i.createHmac("sha256",e).update(t,"utf8").digest(r)}function c(e,t){return i.createHash("sha256").update(e,"utf8").digest(t)}function l(e){return e.replace(/[!'()*]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function h(e){return l(encodeURIComponent(e))}var d={authorization:!0,connection:!0,"x-amzn-trace-id":!0,"user-agent":!0,expect:!0,"presigned-expires":!0,range:!0};function p(e,t){"string"==typeof e&&(e=o.parse(e));var r=e.headers=e.headers||{},n=(!this.service||!this.region)&&this.matchHost(e.hostname||e.host||r.Host||r.host);this.request=e,this.credentials=t||this.defaultCredentials(),this.service=e.service||n[0]||"",this.region=e.region||n[1]||"us-east-1","email"===this.service&&(this.service="ses"),!e.method&&e.body&&(e.method="POST"),r.Host||r.host||(r.Host=e.hostname||e.host||this.createHost(),e.port&&(r.Host+=":"+e.port)),e.hostname||e.host||(e.hostname=r.Host||r.host),this.isCodeCommitGit="codecommit"===this.service&&"GIT"===e.method,this.extraHeadersToIgnore=e.extraHeadersToIgnore||Object.create(null),this.extraHeadersToInclude=e.extraHeadersToInclude||Object.create(null)}p.prototype.matchHost=function(e){var t=((e||"").match(/([^\.]+)\.(?:([^\.]*)\.)?amazonaws\.com(\.cn)?$/)||[]).slice(1,3);if("es"!==t[1]&&"aoss"!==t[1]||(t=t.reverse()),"s3"==t[1])t[0]="s3",t[1]="us-east-1";else for(var r=0;r<2;r++)if(/^s3-/.test(t[r])){t[1]=t[r].slice(3),t[0]="s3";break}return t},p.prototype.isSingleRegion=function(){return["s3","sdb"].indexOf(this.service)>=0&&"us-east-1"===this.region||["cloudfront","ls","route53","iam","importexport","sts"].indexOf(this.service)>=0},p.prototype.createHost=function(){var e=this.isSingleRegion()?"":"."+this.region;return("ses"===this.service?"email":this.service)+e+".amazonaws.com"},p.prototype.prepareRequest=function(){this.parsePath();var e,t=this.request,r=t.headers;t.signQuery?(this.parsedPath.query=e=this.parsedPath.query||{},this.credentials.sessionToken&&(e["X-Amz-Security-Token"]=this.credentials.sessionToken),"s3"!==this.service||e["X-Amz-Expires"]||(e["X-Amz-Expires"]=86400),e["X-Amz-Date"]?this.datetime=e["X-Amz-Date"]:e["X-Amz-Date"]=this.getDateTime(),e["X-Amz-Algorithm"]="AWS4-HMAC-SHA256",e["X-Amz-Credential"]=this.credentials.accessKeyId+"/"+this.credentialString(),e["X-Amz-SignedHeaders"]=this.signedHeaders()):(t.doNotModifyHeaders||this.isCodeCommitGit||(!t.body||r["Content-Type"]||r["content-type"]||(r["Content-Type"]="application/x-www-form-urlencoded; charset=utf-8"),!t.body||r["Content-Length"]||r["content-length"]||(r["Content-Length"]=Buffer.byteLength(t.body)),!this.credentials.sessionToken||r["X-Amz-Security-Token"]||r["x-amz-security-token"]||(r["X-Amz-Security-Token"]=this.credentials.sessionToken),"s3"!==this.service||r["X-Amz-Content-Sha256"]||r["x-amz-content-sha256"]||(r["X-Amz-Content-Sha256"]=c(this.request.body||"","hex")),r["X-Amz-Date"]||r["x-amz-date"]?this.datetime=r["X-Amz-Date"]||r["x-amz-date"]:r["X-Amz-Date"]=this.getDateTime()),delete r.Authorization,delete r.authorization)},p.prototype.sign=function(){return this.parsedPath||this.prepareRequest(),this.request.signQuery?this.parsedPath.query["X-Amz-Signature"]=this.signature():this.request.headers.Authorization=this.authHeader(),this.request.path=this.formatPath(),this.request},p.prototype.getDateTime=function(){if(!this.datetime){var e=this.request.headers,t=new Date(e.Date||e.date||new Date);this.datetime=t.toISOString().replace(/[:\-]|\.\d{3}/g,""),this.isCodeCommitGit&&(this.datetime=this.datetime.slice(0,-1))}return this.datetime},p.prototype.getDate=function(){return this.getDateTime().substr(0,8)},p.prototype.authHeader=function(){return["AWS4-HMAC-SHA256 Credential="+this.credentials.accessKeyId+"/"+this.credentialString(),"SignedHeaders="+this.signedHeaders(),"Signature="+this.signature()].join(", ")},p.prototype.signature=function(){var e,t,r,n=this.getDate(),o=[this.credentials.secretAccessKey,n,this.region,this.service].join(),s=u.get(o);return s||(e=a("AWS4"+this.credentials.secretAccessKey,n),t=a(e,this.region),r=a(t,this.service),s=a(r,"aws4_request"),u.set(o,s)),a(s,this.stringToSign(),"hex")},p.prototype.stringToSign=function(){return["AWS4-HMAC-SHA256",this.getDateTime(),this.credentialString(),c(this.canonicalString(),"hex")].join("\n")},p.prototype.canonicalString=function(){this.parsedPath||this.prepareRequest();var e,t=this.parsedPath.path,r=this.parsedPath.query,n=this.request.headers,o="",s="s3"!==this.service,i="s3"===this.service||this.request.doNotEncodePath,u="s3"===this.service,a="s3"===this.service;if(e="s3"===this.service&&this.request.signQuery?"UNSIGNED-PAYLOAD":this.isCodeCommitGit?"":n["X-Amz-Content-Sha256"]||n["x-amz-content-sha256"]||c(this.request.body||"","hex"),r){var l=Object.keys(r).reduce((function(e,t){return t?(e[h(t)]=Array.isArray(r[t])&&a?r[t][0]:r[t],e):e}),{}),d=[];Object.keys(l).sort().forEach((function(e){Array.isArray(l[e])?l[e].map(h).sort().forEach((function(t){d.push(e+"="+t)})):d.push(e+"="+h(l[e]))})),o=d.join("&")}return"/"!==t&&(s&&(t=t.replace(/\/{2,}/g,"/")),"/"!==(t=t.split("/").reduce((function(e,t){return s&&".."===t?e.pop():s&&"."===t||(i&&(t=decodeURIComponent(t.replace(/\+/g," "))),e.push(h(t))),e}),[]).join("/"))[0]&&(t="/"+t),u&&(t=t.replace(/%2F/g,"/"))),[this.request.method||"GET",t,o,this.canonicalHeaders()+"\n",this.signedHeaders(),e].join("\n")},p.prototype.canonicalHeaders=function(){var e=this.request.headers;return Object.keys(e).filter((function(e){return null==d[e.toLowerCase()]})).sort((function(e,t){return e.toLowerCase()<t.toLowerCase()?-1:1})).map((function(t){return t.toLowerCase()+":"+e[t].toString().trim().replace(/\s+/g," ")})).join("\n")},p.prototype.signedHeaders=function(){var e=this.extraHeadersToInclude,t=this.extraHeadersToIgnore;return Object.keys(this.request.headers).map((function(e){return e.toLowerCase()})).filter((function(r){return e[r]||null==d[r]&&!t[r]})).sort().join(";")},p.prototype.credentialString=function(){return[this.getDate(),this.region,this.service,"aws4_request"].join("/")},p.prototype.defaultCredentials=function(){var e=process.env;return{accessKeyId:e.AWS_ACCESS_KEY_ID||e.AWS_ACCESS_KEY,secretAccessKey:e.AWS_SECRET_ACCESS_KEY||e.AWS_SECRET_KEY,sessionToken:e.AWS_SESSION_TOKEN}},p.prototype.parsePath=function(){var e=this.request.path||"/";/[^0-9A-Za-z;,/?:@&=+$\-_.!~*'()#%]/.test(e)&&(e=encodeURI(decodeURI(e)));var t=e.indexOf("?"),r=null;t>=0&&(r=s.parse(e.slice(t+1)),e=e.slice(0,t)),this.parsedPath={path:e,query:r}},p.prototype.formatPath=function(){var e=this.parsedPath.path,t=this.parsedPath.query;return t?(null!=t[""]&&delete t[""],e+"?"+l(s.stringify(t))):e},n.RequestSigner=p,n.sign=function(e,t){return new p(e,t).sign()}},3310:e=>{function t(e){this.capacity=0|e,this.map=Object.create(null),this.list=new r}function r(){this.firstNode=null,this.lastNode=null}function n(e,t){this.key=e,this.val=t,this.prev=null,this.next=null}e.exports=function(e){return new t(e)},t.prototype.get=function(e){var t=this.map[e];if(null!=t)return this.used(t),t.val},t.prototype.set=function(e,t){var r=this.map[e];if(null!=r)r.val=t;else{if(this.capacity||this.prune(),!this.capacity)return!1;r=new n(e,t),this.map[e]=r,this.capacity--}return this.used(r),!0},t.prototype.used=function(e){this.list.moveToFront(e)},t.prototype.prune=function(){var e=this.list.pop();null!=e&&(delete this.map[e.key],this.capacity++)},r.prototype.moveToFront=function(e){this.firstNode!=e&&(this.remove(e),null==this.firstNode?(this.firstNode=e,this.lastNode=e,e.prev=null,e.next=null):(e.prev=null,e.next=this.firstNode,e.next.prev=e,this.firstNode=e))},r.prototype.pop=function(){var e=this.lastNode;return null!=e&&this.remove(e),e},r.prototype.remove=function(e){this.firstNode==e?this.firstNode=e.next:null!=e.prev&&(e.prev.next=e.next),this.lastNode==e?this.lastNode=e.prev:null!=e.next&&(e.next.prev=e.prev)}},9666:(e,t,r)=>{var n=r(9896),o=r(6928),s=r(7935),i=o.join,u=o.dirname,a=n.accessSync&&function(e){try{n.accessSync(e)}catch(e){return!1}return!0}||n.existsSync||o.existsSync,c={arrow:process.env.NODE_BINDINGS_ARROW||" → ",compiled:process.env.NODE_BINDINGS_COMPILED_DIR||"compiled",platform:process.platform,arch:process.arch,nodePreGyp:"node-v"+process.versions.modules+"-"+process.platform+"-"+process.arch,version:process.versions.node,bindings:"bindings.node",try:[["module_root","build","bindings"],["module_root","build","Debug","bindings"],["module_root","build","Release","bindings"],["module_root","out","Debug","bindings"],["module_root","Debug","bindings"],["module_root","out","Release","bindings"],["module_root","Release","bindings"],["module_root","build","default","bindings"],["module_root","compiled","version","platform","arch","bindings"],["module_root","addon-build","release","install-root","bindings"],["module_root","addon-build","debug","install-root","bindings"],["module_root","addon-build","default","install-root","bindings"],["module_root","lib","binding","nodePreGyp","bindings"]]};e.exports=t=function(e){"string"==typeof e?e={bindings:e}:e||(e={}),Object.keys(c).map((function(t){t in e||(e[t]=c[t])})),e.module_root||(e.module_root=t.getRoot(t.getFileName())),".node"!=o.extname(e.bindings)&&(e.bindings+=".node");for(var r,n,s,u=require,a=[],l=0,h=e.try.length;l<h;l++){r=i.apply(null,e.try[l].map((function(t){return e[t]||t}))),a.push(r);try{return n=e.path?u.resolve(r):u(r),e.path||(n.path=r),n}catch(e){if("MODULE_NOT_FOUND"!==e.code&&"QUALIFIED_PATH_RESOLUTION_FAILED"!==e.code&&!/not find/i.test(e.message))throw e}}throw(s=new Error("Could not locate the bindings file. Tried:\n"+a.map((function(t){return e.arrow+t})).join("\n"))).tries=a,s},t.getFileName=function(e){var t,r=Error.prepareStackTrace,n=Error.stackTraceLimit;return Error.stackTraceLimit=10,Error.prepareStackTrace=function(r,n){for(var o=0,s=n.length;o<s;o++)if((t=n[o].getFileName())!==__filename){if(!e)return;if(t!==e)return}},Error.captureStackTrace({}),Error.prepareStackTrace=r,Error.stackTraceLimit=n,0===t.indexOf("file://")&&(t=s(t)),t},t.getRoot=function(e){for(var t,r=u(e);;){if("."===r&&(r=process.cwd()),a(i(r,"package.json"))||a(i(r,"node_modules")))return r;if(t===r)throw new Error('Could not find module root given file: "'+e+'". Do you have a `package.json` file? ');t=r,r=i(r,"..")}}},5994:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.oracleSplitterOptions=t.redisSplitterOptions=t.noSplitSplitterOptions=t.mongoSplitterOptions=t.sqliteSplitterOptions=t.postgreSplitterOptions=t.mssqlSplitterOptions=t.mysqlSplitterOptions=t.defaultSplitterOptions=void 0,t.defaultSplitterOptions={stringsBegins:["'"],stringsEnds:{"'":"'"},stringEscapes:{"'":"'"},allowSemicolon:!0,allowCustomDelimiter:!1,allowCustomSqlTerminator:!1,allowGoDelimiter:!1,allowSlashDelimiter:!1,allowDollarDollarString:!1,noSplit:!1,doubleDashComments:!0,multilineComments:!0,javaScriptComments:!1,returnRichInfo:!1,splitByLines:!1,preventSingleLineSplit:!1,adaptiveGoSplit:!1,ignoreComments:!1,copyFromStdin:!1,queryParameterStyle:null},t.mysqlSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowCustomDelimiter:!0,stringsBegins:["'","`"],stringsEnds:{"'":"'","`":"`"},stringEscapes:{"'":"\\","`":"`"}}),t.mssqlSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowSemicolon:!1,allowGoDelimiter:!0,stringsBegins:["'","["],stringsEnds:{"'":"'","[":"]"},stringEscapes:{"'":"'"}}),t.postgreSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowDollarDollarString:!0,stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"'",'"':'"'}}),t.sqliteSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"'",'"':'"'}}),t.mongoSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"\\",'"':"\\"}}),t.noSplitSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{noSplit:!0}),t.redisSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{splitByLines:!0}),t.oracleSplitterOptions=Object.assign(Object.assign({},t.defaultSplitterOptions),{allowCustomSqlTerminator:!0,allowSlashDelimiter:!0,stringsBegins:["'",'"'],stringsEnds:{"'":"'",'"':'"'},stringEscapes:{"'":"'",'"':'"'}})},7935:(e,t,r)=>{var n=r(6928).sep||"/";e.exports=function(e){if("string"!=typeof e||e.length<=7||"file://"!=e.substring(0,7))throw new TypeError("must pass in a file:// URI to convert to a file path");var t=decodeURI(e.substring(7)),r=t.indexOf("/"),o=t.substring(0,r),s=t.substring(r+1);return"localhost"==o&&(o=""),o&&(o=n+n+o),s=s.replace(/^(.+)\|/,"$1:"),"\\"==n&&(s=s.replace(/\//g,"\\")),/^.+\:/.test(s)||(s=n+s),o+s}},8018:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AddressError=void 0;class r extends Error{constructor(e,t){super(e),this.name="AddressError",null!==t&&(this.parseMessage=t)}}t.AddressError=r},3480:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isCorrect=t.isInSubnet=void 0,t.isInSubnet=function(e){return!(this.subnetMask<e.subnetMask)&&this.mask(e.subnetMask)===e.mask()},t.isCorrect=function(e){return function(){return this.addressMinusSuffix===this.correctForm()&&(this.subnetMask===e&&!this.parsedSubnet||this.parsedSubnet===String(this.subnetMask))}}},5557:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.v6=t.AddressError=t.Address6=t.Address4=void 0;const i=r(3146);Object.defineProperty(t,"Address4",{enumerable:!0,get:function(){return i.Address4}});const u=r(2720);Object.defineProperty(t,"Address6",{enumerable:!0,get:function(){return u.Address6}});const a=r(8018);Object.defineProperty(t,"AddressError",{enumerable:!0,get:function(){return a.AddressError}});const c=s(r(7251));t.v6={helpers:c}},3146:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.Address4=void 0;const i=s(r(3480)),u=s(r(4274)),a=r(8018),c=r(115),l=r(5797);class h{constructor(e){this.groups=u.GROUPS,this.parsedAddress=[],this.parsedSubnet="",this.subnet="/32",this.subnetMask=32,this.v4=!0,this.isCorrect=i.isCorrect(u.BITS),this.isInSubnet=i.isInSubnet,this.address=e;const t=u.RE_SUBNET_STRING.exec(e);if(t){if(this.parsedSubnet=t[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,this.subnetMask<0||this.subnetMask>u.BITS)throw new a.AddressError("Invalid subnet mask.");e=e.replace(u.RE_SUBNET_STRING,"")}this.addressMinusSuffix=e,this.parsedAddress=this.parse(e)}static isValid(e){try{return new h(e),!0}catch(e){return!1}}parse(e){const t=e.split(".");if(!e.match(u.RE_ADDRESS))throw new a.AddressError("Invalid IPv4 address.");return t}correctForm(){return this.parsedAddress.map((e=>parseInt(e,10))).join(".")}static fromHex(e){const t=e.replace(/:/g,"").padStart(8,"0"),r=[];let n;for(n=0;n<8;n+=2){const e=t.slice(n,n+2);r.push(parseInt(e,16))}return new h(r.join("."))}static fromInteger(e){return h.fromHex(e.toString(16))}static fromArpa(e){const t=e.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join(".");return new h(t)}toHex(){return this.parsedAddress.map((e=>(0,l.sprintf)("%02x",parseInt(e,10)))).join(":")}toArray(){return this.parsedAddress.map((e=>parseInt(e,10)))}toGroup6(){const e=[];let t;for(t=0;t<u.GROUPS;t+=2){const r=(0,l.sprintf)("%02x%02x",parseInt(this.parsedAddress[t],10),parseInt(this.parsedAddress[t+1],10));e.push((0,l.sprintf)("%x",parseInt(r,16)))}return e.join(":")}bigInteger(){return new c.BigInteger(this.parsedAddress.map((e=>(0,l.sprintf)("%02x",parseInt(e,10)))).join(""),16)}_startAddress(){return new c.BigInteger(this.mask()+"0".repeat(u.BITS-this.subnetMask),2)}startAddress(){return h.fromBigInteger(this._startAddress())}startAddressExclusive(){const e=new c.BigInteger("1");return h.fromBigInteger(this._startAddress().add(e))}_endAddress(){return new c.BigInteger(this.mask()+"1".repeat(u.BITS-this.subnetMask),2)}endAddress(){return h.fromBigInteger(this._endAddress())}endAddressExclusive(){const e=new c.BigInteger("1");return h.fromBigInteger(this._endAddress().subtract(e))}static fromBigInteger(e){return h.fromInteger(parseInt(e.toString(),10))}mask(e){return void 0===e&&(e=this.subnetMask),this.getBitsBase2(0,e)}getBitsBase2(e,t){return this.binaryZeroPad().slice(e,t)}reverseForm(e){e||(e={});const t=this.correctForm().split(".").reverse().join(".");return e.omitSuffix?t:(0,l.sprintf)("%s.in-addr.arpa.",t)}isMulticast(){return this.isInSubnet(new h("224.0.0.0/4"))}binaryZeroPad(){return this.bigInteger().toString(2).padStart(u.BITS,"0")}groupForV6(){const e=this.parsedAddress;return this.address.replace(u.RE_ADDRESS,(0,l.sprintf)('<span class="hover-group group-v4 group-6">%s</span>.<span class="hover-group group-v4 group-7">%s</span>',e.slice(0,2).join("."),e.slice(2,4).join(".")))}}t.Address4=h},2720:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.Address6=void 0;const i=s(r(3480)),u=s(r(4274)),a=s(r(8931)),c=s(r(7251)),l=r(3146),h=r(880),d=r(8018),p=r(115),f=r(5797);function m(e){if(!e)throw new Error("Assertion failed.")}function g(e){return(e=e.replace(/^(0{1,})([1-9]+)$/,'<span class="parse-error">$1</span>$2')).replace(/^(0{1,})(0)$/,'<span class="parse-error">$1</span>$2')}function E(e){return(0,f.sprintf)("%04x",parseInt(e,16))}function A(e){return 255&e}class y{constructor(e,t){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=i.isInSubnet,this.isCorrect=i.isCorrect(a.BITS),this.groups=void 0===t?a.GROUPS:t,this.address=e;const r=a.RE_SUBNET_STRING.exec(e);if(r){if(this.parsedSubnet=r[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet=`/${this.subnetMask}`,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>a.BITS)throw new d.AddressError("Invalid subnet mask.");e=e.replace(a.RE_SUBNET_STRING,"")}else if(/\//.test(e))throw new d.AddressError("Invalid subnet mask.");const n=a.RE_ZONE_STRING.exec(e);n&&(this.zone=n[0],e=e.replace(a.RE_ZONE_STRING,"")),this.addressMinusSuffix=e,this.parsedAddress=this.parse(this.addressMinusSuffix)}static isValid(e){try{return new y(e),!0}catch(e){return!1}}static fromBigInteger(e){const t=e.toString(16).padStart(32,"0"),r=[];let n;for(n=0;n<a.GROUPS;n++)r.push(t.slice(4*n,4*(n+1)));return new y(r.join(":"))}static fromURL(e){let t,r,n=null;if(-1!==e.indexOf("[")&&-1!==e.indexOf("]:")){if(r=a.RE_URL_WITH_PORT.exec(e),null===r)return{error:"failed to parse address with port",address:null,port:null};t=r[1],n=r[2]}else if(-1!==e.indexOf("/")){if(e=e.replace(/^[a-z0-9]+:\/\//,""),r=a.RE_URL.exec(e),null===r)return{error:"failed to parse address from URL",address:null,port:null};t=r[1]}else t=e;return n?(n=parseInt(n,10),(n<0||n>65536)&&(n=null)):n=null,{address:new y(t),port:n}}static fromAddress4(e){const t=new l.Address4(e),r=a.BITS-(u.BITS-t.subnetMask);return new y(`::ffff:${t.correctForm()}/${r}`)}static fromArpa(e){let t=e.replace(/(\.ip6\.arpa)?\.$/,"");if(63!==t.length)throw new d.AddressError("Invalid 'ip6.arpa' form.");const r=t.split(".").reverse();for(let e=7;e>0;e--){const t=4*e;r.splice(t,0,":")}return t=r.join(""),new y(t)}microsoftTranscription(){return(0,f.sprintf)("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))}mask(e=this.subnetMask){return this.getBitsBase2(0,e)}possibleSubnets(e=128){const t=a.BITS-this.subnetMask-Math.abs(e-a.BITS);return t<0?"0":function(e){const t=/(\d+)(\d{3})/;for(;t.test(e);)e=e.replace(t,"$1,$2");return e}(new p.BigInteger("2",10).pow(t).toString(10))}_startAddress(){return new p.BigInteger(this.mask()+"0".repeat(a.BITS-this.subnetMask),2)}startAddress(){return y.fromBigInteger(this._startAddress())}startAddressExclusive(){const e=new p.BigInteger("1");return y.fromBigInteger(this._startAddress().add(e))}_endAddress(){return new p.BigInteger(this.mask()+"1".repeat(a.BITS-this.subnetMask),2)}endAddress(){return y.fromBigInteger(this._endAddress())}endAddressExclusive(){const e=new p.BigInteger("1");return y.fromBigInteger(this._endAddress().subtract(e))}getScope(){let e=a.SCOPES[this.getBits(12,16).intValue()];return"Global unicast"===this.getType()&&"Link local"!==e&&(e="Global"),e||"Unknown"}getType(){for(const e of Object.keys(a.TYPES))if(this.isInSubnet(new y(e)))return a.TYPES[e];return"Global unicast"}getBits(e,t){return new p.BigInteger(this.getBitsBase2(e,t),2)}getBitsBase2(e,t){return this.binaryZeroPad().slice(e,t)}getBitsBase16(e,t){const r=t-e;if(r%4!=0)throw new Error("Length of bits to retrieve must be divisible by four");return this.getBits(e,t).toString(16).padStart(r/4,"0")}getBitsPastSubnet(){return this.getBitsBase2(this.subnetMask,a.BITS)}reverseForm(e){e||(e={});const t=Math.floor(this.subnetMask/4),r=this.canonicalForm().replace(/:/g,"").split("").slice(0,t).reverse().join(".");return t>0?e.omitSuffix?r:(0,f.sprintf)("%s.ip6.arpa.",r):e.omitSuffix?"":"ip6.arpa."}correctForm(){let e,t=[],r=0;const n=[];for(e=0;e<this.parsedAddress.length;e++){const t=parseInt(this.parsedAddress[e],16);0===t&&r++,0!==t&&r>0&&(r>1&&n.push([e-r,e-1]),r=0)}r>1&&n.push([this.parsedAddress.length-r,this.parsedAddress.length-1]);const o=n.map((e=>e[1]-e[0]+1));if(n.length>0){const e=o.indexOf(Math.max(...o));t=function(e,t){const r=[],n=[];let o;for(o=0;o<e.length;o++)o<t[0]?r.push(e[o]):o>t[1]&&n.push(e[o]);return r.concat(["compact"]).concat(n)}(this.parsedAddress,n[e])}else t=this.parsedAddress;for(e=0;e<t.length;e++)"compact"!==t[e]&&(t[e]=parseInt(t[e],16).toString(16));let s=t.join(":");return s=s.replace(/^compact$/,"::"),s=s.replace(/^compact|compact$/,":"),s=s.replace(/compact/,""),s}binaryZeroPad(){return this.bigInteger().toString(2).padStart(a.BITS,"0")}parse4in6(e){const t=e.split(":"),r=t.slice(-1)[0].match(u.RE_ADDRESS);if(r){this.parsedAddress4=r[0],this.address4=new l.Address4(this.parsedAddress4);for(let t=0;t<this.address4.groups;t++)if(/^0[0-9]+/.test(this.address4.parsedAddress[t]))throw new d.AddressError("IPv4 addresses can't have leading zeroes.",e.replace(u.RE_ADDRESS,this.address4.parsedAddress.map(g).join(".")));this.v4=!0,t[t.length-1]=this.address4.toGroup6(),e=t.join(":")}return e}parse(e){const t=(e=this.parse4in6(e)).match(a.RE_BAD_CHARACTERS);if(t)throw new d.AddressError((0,f.sprintf)("Bad character%s detected in address: %s",t.length>1?"s":"",t.join("")),e.replace(a.RE_BAD_CHARACTERS,'<span class="parse-error">$1</span>'));const r=e.match(a.RE_BAD_ADDRESS);if(r)throw new d.AddressError((0,f.sprintf)("Address failed regex: %s",r.join("")),e.replace(a.RE_BAD_ADDRESS,'<span class="parse-error">$1</span>'));let n=[];const o=e.split("::");if(2===o.length){let e=o[0].split(":"),t=o[1].split(":");1===e.length&&""===e[0]&&(e=[]),1===t.length&&""===t[0]&&(t=[]);const r=this.groups-(e.length+t.length);if(!r)throw new d.AddressError("Error parsing groups");this.elidedGroups=r,this.elisionBegin=e.length,this.elisionEnd=e.length+this.elidedGroups,n=n.concat(e);for(let e=0;e<r;e++)n.push("0");n=n.concat(t)}else{if(1!==o.length)throw new d.AddressError("Too many :: groups found");n=e.split(":"),this.elidedGroups=0}if(n=n.map((e=>(0,f.sprintf)("%x",parseInt(e,16)))),n.length!==this.groups)throw new d.AddressError("Incorrect number of groups found");return n}canonicalForm(){return this.parsedAddress.map(E).join(":")}decimal(){return this.parsedAddress.map((e=>(0,f.sprintf)("%05d",parseInt(e,16)))).join(":")}bigInteger(){return new p.BigInteger(this.parsedAddress.map(E).join(""),16)}to4(){const e=this.binaryZeroPad().split("");return l.Address4.fromHex(new p.BigInteger(e.slice(96,128).join(""),2).toString(16))}to4in6(){const e=this.to4(),t=new y(this.parsedAddress.slice(0,6).join(":"),6).correctForm();let r="";return/:$/.test(t)||(r=":"),t+r+e.address}inspectTeredo(){const e=this.getBitsBase16(0,32),t=this.getBits(80,96).xor(new p.BigInteger("ffff",16)).toString(),r=l.Address4.fromHex(this.getBitsBase16(32,64)),n=l.Address4.fromHex(this.getBits(96,128).xor(new p.BigInteger("ffffffff",16)).toString(16)),o=this.getBits(64,80),s=this.getBitsBase2(64,80),i=o.testBit(15),u=o.testBit(14),a=o.testBit(8),c=o.testBit(9),h=new p.BigInteger(s.slice(2,6)+s.slice(8,16),2).toString(10);return{prefix:(0,f.sprintf)("%s:%s",e.slice(0,4),e.slice(4,8)),server4:r.address,client4:n.address,flags:s,coneNat:i,microsoft:{reserved:u,universalLocal:c,groupIndividual:a,nonce:h},udpPort:t}}inspect6to4(){const e=this.getBitsBase16(0,16),t=l.Address4.fromHex(this.getBitsBase16(16,48));return{prefix:(0,f.sprintf)("%s",e.slice(0,4)),gateway:t.address}}to6to4(){if(!this.is4())return null;const e=["2002",this.getBitsBase16(96,112),this.getBitsBase16(112,128),"","/16"].join(":");return new y(e)}toByteArray(){const e=this.bigInteger().toByteArray();return 17===e.length&&0===e[0]?e.slice(1):e}toUnsignedByteArray(){return this.toByteArray().map(A)}static fromByteArray(e){return this.fromUnsignedByteArray(e.map(A))}static fromUnsignedByteArray(e){const t=new p.BigInteger("256",10);let r=new p.BigInteger("0",10),n=new p.BigInteger("1",10);for(let o=e.length-1;o>=0;o--)r=r.add(n.multiply(new p.BigInteger(e[o].toString(10),10))),n=n.multiply(t);return y.fromBigInteger(r)}isCanonical(){return this.addressMinusSuffix===this.canonicalForm()}isLinkLocal(){return"1111111010000000000000000000000000000000000000000000000000000000"===this.getBitsBase2(0,64)}isMulticast(){return"Multicast"===this.getType()}is4(){return this.v4}isTeredo(){return this.isInSubnet(new y("2001::/32"))}is6to4(){return this.isInSubnet(new y("2002::/16"))}isLoopback(){return"Loopback"===this.getType()}href(e){return e=void 0===e?"":(0,f.sprintf)(":%s",e),(0,f.sprintf)("http://[%s]%s/",this.correctForm(),e)}link(e){e||(e={}),void 0===e.className&&(e.className=""),void 0===e.prefix&&(e.prefix="/#address="),void 0===e.v4&&(e.v4=!1);let t=this.correctForm;return e.v4&&(t=this.to4in6),e.className?(0,f.sprintf)('<a href="%1$s%2$s" class="%3$s">%2$s</a>',e.prefix,t.call(this),e.className):(0,f.sprintf)('<a href="%1$s%2$s">%2$s</a>',e.prefix,t.call(this))}group(){if(0===this.elidedGroups)return c.simpleGroup(this.address).join(":");m("number"==typeof this.elidedGroups),m("number"==typeof this.elisionBegin);const e=[],[t,r]=this.address.split("::");t.length?e.push(...c.simpleGroup(t)):e.push("");const n=["hover-group"];for(let e=this.elisionBegin;e<this.elisionBegin+this.elidedGroups;e++)n.push((0,f.sprintf)("group-%d",e));return e.push((0,f.sprintf)('<span class="%s"></span>',n.join(" "))),r.length?e.push(...c.simpleGroup(r,this.elisionEnd)):e.push(""),this.is4()&&(m(this.address4 instanceof l.Address4),e.pop(),e.push(this.address4.groupForV6())),e.join(":")}regularExpressionString(e=!1){let t=[];const r=new y(this.correctForm());if(0===r.elidedGroups)t.push((0,h.simpleRegularExpression)(r.parsedAddress));else if(r.elidedGroups===a.GROUPS)t.push((0,h.possibleElisions)(a.GROUPS));else{const e=r.address.split("::");e[0].length&&t.push((0,h.simpleRegularExpression)(e[0].split(":"))),m("number"==typeof r.elidedGroups),t.push((0,h.possibleElisions)(r.elidedGroups,0!==e[0].length,0!==e[1].length)),e[1].length&&t.push((0,h.simpleRegularExpression)(e[1].split(":"))),t=[t.join(":")]}return e||(t=["(?=^|",h.ADDRESS_BOUNDARY,"|[^\\w\\:])(",...t,")(?=[^\\w\\:]|",h.ADDRESS_BOUNDARY,"|$)"]),t.join("")}regularExpression(e=!1){return new RegExp(this.regularExpressionString(e),"i")}}t.Address6=y},4274:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RE_SUBNET_STRING=t.RE_ADDRESS=t.GROUPS=t.BITS=void 0,t.BITS=32,t.GROUPS=4,t.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g,t.RE_SUBNET_STRING=/\/\d{1,2}$/},8931:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RE_URL_WITH_PORT=t.RE_URL=t.RE_ZONE_STRING=t.RE_SUBNET_STRING=t.RE_BAD_ADDRESS=t.RE_BAD_CHARACTERS=t.TYPES=t.SCOPES=t.GROUPS=t.BITS=void 0,t.BITS=128,t.GROUPS=8,t.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"},t.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"},t.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi,t.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi,t.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/,t.RE_ZONE_STRING=/%.*$/,t.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/),t.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)},7251:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.simpleGroup=t.spanLeadingZeroes=t.spanAll=t.spanAllZeroes=void 0;const n=r(5797);function o(e){return e.replace(/(0+)/g,'<span class="zero">$1</span>')}function s(e){return e.replace(/^(0+)/,'<span class="zero">$1</span>')}t.spanAllZeroes=o,t.spanAll=function(e,t=0){return e.split("").map(((e,r)=>(0,n.sprintf)('<span class="digit value-%s position-%d">%s</span>',e,r+t,o(e)))).join("")},t.spanLeadingZeroes=function(e){return e.split(":").map((e=>s(e))).join(":")},t.simpleGroup=function(e,t=0){return e.split(":").map(((e,r)=>/group-v4/.test(e)?e:(0,n.sprintf)('<span class="hover-group group-%d">%s</span>',r+t,s(e))))}},880:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.possibleElisions=t.simpleRegularExpression=t.ADDRESS_BOUNDARY=t.padGroup=t.groupPossibilities=void 0;const i=s(r(8931)),u=r(5797);function a(e){return(0,u.sprintf)("(%s)",e.join("|"))}function c(e){return e.length<4?(0,u.sprintf)("0{0,%d}%s",4-e.length,e):e}t.groupPossibilities=a,t.padGroup=c,t.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]",t.simpleRegularExpression=function(e){const t=[];e.forEach(((e,r)=>{0===parseInt(e,16)&&t.push(r)}));const r=t.map((t=>e.map(((e,r)=>{if(r===t){const t=0===r||r===i.GROUPS-1?":":"";return a([c(e),t])}return c(e)})).join(":")));return r.push(e.map(c).join(":")),a(r)},t.possibleElisions=function(e,t,r){const n=t?"":":",o=r?"":":",s=[];t||r||s.push("::"),t&&r&&s.push(""),(r&&!t||!r&&t)&&s.push(":"),s.push((0,u.sprintf)("%s(:0{1,4}){1,%d}",n,e-1)),s.push((0,u.sprintf)("(0{1,4}:){1,%d}%s",e-1,o)),s.push((0,u.sprintf)("(0{1,4}:){%d}0{1,4}",e-1));for(let t=1;t<e-1;t++)for(let r=1;r<e-t;r++)s.push((0,u.sprintf)("(0{1,4}:){%d}:(0{1,4}:){%d}0{1,4}",r,e-r-t-1));return a(s)}},115:function(e,t){(function(){var t;function r(e,t,r){null!=e&&("number"==typeof e?this.fromNumber(e,t,r):null==t&&"string"!=typeof e?this.fromString(e,256):this.fromString(e,t))}function n(){return new r(null)}var o="undefined"!=typeof navigator;o&&"Microsoft Internet Explorer"==navigator.appName?(r.prototype.am=function(e,t,r,n,o,s){for(var i=32767&t,u=t>>15;--s>=0;){var a=32767&this[e],c=this[e++]>>15,l=u*a+c*i;o=((a=i*a+((32767&l)<<15)+r[n]+(1073741823&o))>>>30)+(l>>>15)+u*c+(o>>>30),r[n++]=1073741823&a}return o},t=30):o&&"Netscape"!=navigator.appName?(r.prototype.am=function(e,t,r,n,o,s){for(;--s>=0;){var i=t*this[e++]+r[n]+o;o=Math.floor(i/67108864),r[n++]=67108863&i}return o},t=26):(r.prototype.am=function(e,t,r,n,o,s){for(var i=16383&t,u=t>>14;--s>=0;){var a=16383&this[e],c=this[e++]>>14,l=u*a+c*i;o=((a=i*a+((16383&l)<<14)+r[n]+o)>>28)+(l>>14)+u*c,r[n++]=268435455&a}return o},t=28),r.prototype.DB=t,r.prototype.DM=(1<<t)-1,r.prototype.DV=1<<t,r.prototype.FV=Math.pow(2,52),r.prototype.F1=52-t,r.prototype.F2=2*t-52;var s,i,u=new Array;for(s="0".charCodeAt(0),i=0;i<=9;++i)u[s++]=i;for(s="a".charCodeAt(0),i=10;i<36;++i)u[s++]=i;for(s="A".charCodeAt(0),i=10;i<36;++i)u[s++]=i;function a(e){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(e)}function c(e,t){var r=u[e.charCodeAt(t)];return null==r?-1:r}function l(e){var t=n();return t.fromInt(e),t}function h(e){var t,r=1;return 0!=(t=e>>>16)&&(e=t,r+=16),0!=(t=e>>8)&&(e=t,r+=8),0!=(t=e>>4)&&(e=t,r+=4),0!=(t=e>>2)&&(e=t,r+=2),0!=(t=e>>1)&&(e=t,r+=1),r}function d(e){this.m=e}function p(e){this.m=e,this.mp=e.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<<e.DB-15)-1,this.mt2=2*e.t}function f(e,t){return e&t}function m(e,t){return e|t}function g(e,t){return e^t}function E(e,t){return e&~t}function A(e){if(0==e)return-1;var t=0;return 65535&e||(e>>=16,t+=16),255&e||(e>>=8,t+=8),15&e||(e>>=4,t+=4),3&e||(e>>=2,t+=2),1&e||++t,t}function y(e){for(var t=0;0!=e;)e&=e-1,++t;return t}function C(){}function S(e){return e}function w(e){this.r2=n(),this.q3=n(),r.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}d.prototype.convert=function(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e},d.prototype.revert=function(e){return e},d.prototype.reduce=function(e){e.divRemTo(this.m,null,e)},d.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},d.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},p.prototype.convert=function(e){var t=n();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(r.ZERO)>0&&this.m.subTo(t,t),t},p.prototype.revert=function(e){var t=n();return e.copyTo(t),this.reduce(t),t},p.prototype.reduce=function(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t<this.m.t;++t){var r=32767&e[t],n=r*this.mpl+((r*this.mph+(e[t]>>15)*this.mpl&this.um)<<15)&e.DM;for(e[r=t+this.m.t]+=this.m.am(0,n,e,t,0,this.m.t);e[r]>=e.DV;)e[r]-=e.DV,e[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)},p.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},p.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},r.prototype.copyTo=function(e){for(var t=this.t-1;t>=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s},r.prototype.fromInt=function(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+this.DV:this.t=0},r.prototype.fromString=function(e,t){var n;if(16==t)n=4;else if(8==t)n=3;else if(256==t)n=8;else if(2==t)n=1;else if(32==t)n=5;else{if(4!=t)return void this.fromRadix(e,t);n=2}this.t=0,this.s=0;for(var o=e.length,s=!1,i=0;--o>=0;){var u=8==n?255&e[o]:c(e,o);u<0?"-"==e.charAt(o)&&(s=!0):(s=!1,0==i?this[this.t++]=u:i+n>this.DB?(this[this.t-1]|=(u&(1<<this.DB-i)-1)<<i,this[this.t++]=u>>this.DB-i):this[this.t-1]|=u<<i,(i+=n)>=this.DB&&(i-=this.DB))}8==n&&128&e[0]&&(this.s=-1,i>0&&(this[this.t-1]|=(1<<this.DB-i)-1<<i)),this.clamp(),s&&r.ZERO.subTo(this,this)},r.prototype.clamp=function(){for(var e=this.s&this.DM;this.t>0&&this[this.t-1]==e;)--this.t},r.prototype.dlShiftTo=function(e,t){var r;for(r=this.t-1;r>=0;--r)t[r+e]=this[r];for(r=e-1;r>=0;--r)t[r]=0;t.t=this.t+e,t.s=this.s},r.prototype.drShiftTo=function(e,t){for(var r=e;r<this.t;++r)t[r-e]=this[r];t.t=Math.max(this.t-e,0),t.s=this.s},r.prototype.lShiftTo=function(e,t){var r,n=e%this.DB,o=this.DB-n,s=(1<<o)-1,i=Math.floor(e/this.DB),u=this.s<<n&this.DM;for(r=this.t-1;r>=0;--r)t[r+i+1]=this[r]>>o|u,u=(this[r]&s)<<n;for(r=i-1;r>=0;--r)t[r]=0;t[i]=u,t.t=this.t+i+1,t.s=this.s,t.clamp()},r.prototype.rShiftTo=function(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t)t.t=0;else{var n=e%this.DB,o=this.DB-n,s=(1<<n)-1;t[0]=this[r]>>n;for(var i=r+1;i<this.t;++i)t[i-r-1]|=(this[i]&s)<<o,t[i-r]=this[i]>>n;n>0&&(t[this.t-r-1]|=(this.s&s)<<o),t.t=this.t-r,t.clamp()}},r.prototype.subTo=function(e,t){for(var r=0,n=0,o=Math.min(e.t,this.t);r<o;)n+=this[r]-e[r],t[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n-=e.s;r<this.t;)n+=this[r],t[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n-=e[r],t[r++]=n&this.DM,n>>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[r++]=this.DV+n:n>0&&(t[r++]=n),t.t=r,t.clamp()},r.prototype.multiplyTo=function(e,t){var n=this.abs(),o=e.abs(),s=n.t;for(t.t=s+o.t;--s>=0;)t[s]=0;for(s=0;s<o.t;++s)t[s+n.t]=n.am(0,o[s],t,s,0,n.t);t.s=0,t.clamp(),this.s!=e.s&&r.ZERO.subTo(t,t)},r.prototype.squareTo=function(e){for(var t=this.abs(),r=e.t=2*t.t;--r>=0;)e[r]=0;for(r=0;r<t.t-1;++r){var n=t.am(r,t[r],e,2*r,0,1);(e[r+t.t]+=t.am(r+1,2*t[r],e,2*r+1,n,t.t-r-1))>=t.DV&&(e[r+t.t]-=t.DV,e[r+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(r,t[r],e,2*r,0,1)),e.s=0,e.clamp()},r.prototype.divRemTo=function(e,t,o){var s=e.abs();if(!(s.t<=0)){var i=this.abs();if(i.t<s.t)return null!=t&&t.fromInt(0),void(null!=o&&this.copyTo(o));null==o&&(o=n());var u=n(),a=this.s,c=e.s,l=this.DB-h(s[s.t-1]);l>0?(s.lShiftTo(l,u),i.lShiftTo(l,o)):(s.copyTo(u),i.copyTo(o));var d=u.t,p=u[d-1];if(0!=p){var f=p*(1<<this.F1)+(d>1?u[d-2]>>this.F2:0),m=this.FV/f,g=(1<<this.F1)/f,E=1<<this.F2,A=o.t,y=A-d,C=null==t?n():t;for(u.dlShiftTo(y,C),o.compareTo(C)>=0&&(o[o.t++]=1,o.subTo(C,o)),r.ONE.dlShiftTo(d,C),C.subTo(u,u);u.t<d;)u[u.t++]=0;for(;--y>=0;){var S=o[--A]==p?this.DM:Math.floor(o[A]*m+(o[A-1]+E)*g);if((o[A]+=u.am(0,S,o,y,0,d))<S)for(u.dlShiftTo(y,C),o.subTo(C,o);o[A]<--S;)o.subTo(C,o)}null!=t&&(o.drShiftTo(d,t),a!=c&&r.ZERO.subTo(t,t)),o.t=d,o.clamp(),l>0&&o.rShiftTo(l,o),a<0&&r.ZERO.subTo(o,o)}}},r.prototype.invDigit=function(){if(this.t<1)return 0;var e=this[0];if(!(1&e))return 0;var t=3&e;return(t=(t=(t=(t=t*(2-(15&e)*t)&15)*(2-(255&e)*t)&255)*(2-((65535&e)*t&65535))&65535)*(2-e*t%this.DV)%this.DV)>0?this.DV-t:-t},r.prototype.isEven=function(){return 0==(this.t>0?1&this[0]:this.s)},r.prototype.exp=function(e,t){if(e>4294967295||e<1)return r.ONE;var o=n(),s=n(),i=t.convert(this),u=h(e)-1;for(i.copyTo(o);--u>=0;)if(t.sqrTo(o,s),(e&1<<u)>0)t.mulTo(s,i,o);else{var a=o;o=s,s=a}return t.revert(o)},r.prototype.toString=function(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(16==e)t=4;else if(8==e)t=3;else if(2==e)t=1;else if(32==e)t=5;else{if(4!=e)return this.toRadix(e);t=2}var r,n=(1<<t)-1,o=!1,s="",i=this.t,u=this.DB-i*this.DB%t;if(i-- >0)for(u<this.DB&&(r=this[i]>>u)>0&&(o=!0,s=a(r));i>=0;)u<t?(r=(this[i]&(1<<u)-1)<<t-u,r|=this[--i]>>(u+=this.DB-t)):(r=this[i]>>(u-=t)&n,u<=0&&(u+=this.DB,--i)),r>0&&(o=!0),o&&(s+=a(r));return o?s:"0"},r.prototype.negate=function(){var e=n();return r.ZERO.subTo(this,e),e},r.prototype.abs=function(){return this.s<0?this.negate():this},r.prototype.compareTo=function(e){var t=this.s-e.s;if(0!=t)return t;var r=this.t;if(0!=(t=r-e.t))return this.s<0?-t:t;for(;--r>=0;)if(0!=(t=this[r]-e[r]))return t;return 0},r.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+h(this[this.t-1]^this.s&this.DM)},r.prototype.mod=function(e){var t=n();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(r.ZERO)>0&&e.subTo(t,t),t},r.prototype.modPowInt=function(e,t){var r;return r=e<256||t.isEven()?new d(t):new p(t),this.exp(e,r)},r.ZERO=l(0),r.ONE=l(1),C.prototype.convert=S,C.prototype.revert=S,C.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r)},C.prototype.sqrTo=function(e,t){e.squareTo(t)},w.prototype.convert=function(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=n();return e.copyTo(t),this.reduce(t),t},w.prototype.revert=function(e){return e},w.prototype.reduce=function(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)},w.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},w.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)};var b,v,O,_=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],B=(1<<26)/_[_.length-1];function D(){var e;e=(new Date).getTime(),v[O++]^=255&e,v[O++]^=e>>8&255,v[O++]^=e>>16&255,v[O++]^=e>>24&255,O>=x&&(O-=x)}if(r.prototype.chunkSize=function(e){return Math.floor(Math.LN2*this.DB/Math.log(e))},r.prototype.toRadix=function(e){if(null==e&&(e=10),0==this.signum()||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),o=l(r),s=n(),i=n(),u="";for(this.divRemTo(o,s,i);s.signum()>0;)u=(r+i.intValue()).toString(e).substr(1)+u,s.divRemTo(o,s,i);return i.intValue().toString(e)+u},r.prototype.fromRadix=function(e,t){this.fromInt(0),null==t&&(t=10);for(var n=this.chunkSize(t),o=Math.pow(t,n),s=!1,i=0,u=0,a=0;a<e.length;++a){var l=c(e,a);l<0?"-"==e.charAt(a)&&0==this.signum()&&(s=!0):(u=t*u+l,++i>=n&&(this.dMultiply(o),this.dAddOffset(u,0),i=0,u=0))}i>0&&(this.dMultiply(Math.pow(t,i)),this.dAddOffset(u,0)),s&&r.ZERO.subTo(this,this)},r.prototype.fromNumber=function(e,t,n){if("number"==typeof t)if(e<2)this.fromInt(1);else for(this.fromNumber(e,n),this.testBit(e-1)||this.bitwiseTo(r.ONE.shiftLeft(e-1),m,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(r.ONE.shiftLeft(e-1),this);else{var o=new Array,s=7&e;o.length=1+(e>>3),t.nextBytes(o),s>0?o[0]&=(1<<s)-1:o[0]=0,this.fromString(o,256)}},r.prototype.bitwiseTo=function(e,t,r){var n,o,s=Math.min(e.t,this.t);for(n=0;n<s;++n)r[n]=t(this[n],e[n]);if(e.t<this.t){for(o=e.s&this.DM,n=s;n<this.t;++n)r[n]=t(this[n],o);r.t=this.t}else{for(o=this.s&this.DM,n=s;n<e.t;++n)r[n]=t(o,e[n]);r.t=e.t}r.s=t(this.s,e.s),r.clamp()},r.prototype.changeBit=function(e,t){var n=r.ONE.shiftLeft(e);return this.bitwiseTo(n,t,n),n},r.prototype.addTo=function(e,t){for(var r=0,n=0,o=Math.min(e.t,this.t);r<o;)n+=this[r]+e[r],t[r++]=n&this.DM,n>>=this.DB;if(e.t<this.t){for(n+=e.s;r<this.t;)n+=this[r],t[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<e.t;)n+=e[r],t[r++]=n&this.DM,n>>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t[r++]=n:n<-1&&(t[r++]=this.DV+n),t.t=r,t.clamp()},r.prototype.dMultiply=function(e){this[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()},r.prototype.dAddOffset=function(e,t){if(0!=e){for(;this.t<=t;)this[this.t++]=0;for(this[t]+=e;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}},r.prototype.multiplyLowerTo=function(e,t,r){var n,o=Math.min(this.t+e.t,t);for(r.s=0,r.t=o;o>0;)r[--o]=0;for(n=r.t-this.t;o<n;++o)r[o+this.t]=this.am(0,e[o],r,o,0,this.t);for(n=Math.min(e.t,t);o<n;++o)this.am(0,e[o],r,o,0,t-o);r.clamp()},r.prototype.multiplyUpperTo=function(e,t,r){--t;var n=r.t=this.t+e.t-t;for(r.s=0;--n>=0;)r[n]=0;for(n=Math.max(t-this.t,0);n<e.t;++n)r[this.t+n-t]=this.am(t-n,e[n],r,0,0,this.t+n-t);r.clamp(),r.drShiftTo(1,r)},r.prototype.modInt=function(e){if(e<=0)return 0;var t=this.DV%e,r=this.s<0?e-1:0;if(this.t>0)if(0==t)r=this[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this[n])%e;return r},r.prototype.millerRabin=function(e){var t=this.subtract(r.ONE),o=t.getLowestSetBit();if(o<=0)return!1;var s=t.shiftRight(o);(e=e+1>>1)>_.length&&(e=_.length);for(var i=n(),u=0;u<e;++u){i.fromInt(_[Math.floor(Math.random()*_.length)]);var a=i.modPow(s,this);if(0!=a.compareTo(r.ONE)&&0!=a.compareTo(t)){for(var c=1;c++<o&&0!=a.compareTo(t);)if(0==(a=a.modPowInt(2,this)).compareTo(r.ONE))return!1;if(0!=a.compareTo(t))return!1}}return!0},r.prototype.clone=function(){var e=n();return this.copyTo(e),e},r.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this[0]-this.DV;if(0==this.t)return-1}else{if(1==this.t)return this[0];if(0==this.t)return 0}return(this[1]&(1<<32-this.DB)-1)<<this.DB|this[0]},r.prototype.byteValue=function(){return 0==this.t?this.s:this[0]<<24>>24},r.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},r.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},r.prototype.toByteArray=function(){var e=this.t,t=new Array;t[0]=this.s;var r,n=this.DB-e*this.DB%8,o=0;if(e-- >0)for(n<this.DB&&(r=this[e]>>n)!=(this.s&this.DM)>>n&&(t[o++]=r|this.s<<this.DB-n);e>=0;)n<8?(r=(this[e]&(1<<n)-1)<<8-n,r|=this[--e]>>(n+=this.DB-8)):(r=this[e]>>(n-=8)&255,n<=0&&(n+=this.DB,--e)),128&r&&(r|=-256),0==o&&(128&this.s)!=(128&r)&&++o,(o>0||r!=this.s)&&(t[o++]=r);return t},r.prototype.equals=function(e){return 0==this.compareTo(e)},r.prototype.min=function(e){return this.compareTo(e)<0?this:e},r.prototype.max=function(e){return this.compareTo(e)>0?this:e},r.prototype.and=function(e){var t=n();return this.bitwiseTo(e,f,t),t},r.prototype.or=function(e){var t=n();return this.bitwiseTo(e,m,t),t},r.prototype.xor=function(e){var t=n();return this.bitwiseTo(e,g,t),t},r.prototype.andNot=function(e){var t=n();return this.bitwiseTo(e,E,t),t},r.prototype.not=function(){for(var e=n(),t=0;t<this.t;++t)e[t]=this.DM&~this[t];return e.t=this.t,e.s=~this.s,e},r.prototype.shiftLeft=function(e){var t=n();return e<0?this.rShiftTo(-e,t):this.lShiftTo(e,t),t},r.prototype.shiftRight=function(e){var t=n();return e<0?this.lShiftTo(-e,t):this.rShiftTo(e,t),t},r.prototype.getLowestSetBit=function(){for(var e=0;e<this.t;++e)if(0!=this[e])return e*this.DB+A(this[e]);return this.s<0?this.t*this.DB:-1},r.prototype.bitCount=function(){for(var e=0,t=this.s&this.DM,r=0;r<this.t;++r)e+=y(this[r]^t);return e},r.prototype.testBit=function(e){var t=Math.floor(e/this.DB);return t>=this.t?0!=this.s:!!(this[t]&1<<e%this.DB)},r.prototype.setBit=function(e){return this.changeBit(e,m)},r.prototype.clearBit=function(e){return this.changeBit(e,E)},r.prototype.flipBit=function(e){return this.changeBit(e,g)},r.prototype.add=function(e){var t=n();return this.addTo(e,t),t},r.prototype.subtract=function(e){var t=n();return this.subTo(e,t),t},r.prototype.multiply=function(e){var t=n();return this.multiplyTo(e,t),t},r.prototype.divide=function(e){var t=n();return this.divRemTo(e,t,null),t},r.prototype.remainder=function(e){var t=n();return this.divRemTo(e,null,t),t},r.prototype.divideAndRemainder=function(e){var t=n(),r=n();return this.divRemTo(e,t,r),new Array(t,r)},r.prototype.modPow=function(e,t){var r,o,s=e.bitLength(),i=l(1);if(s<=0)return i;r=s<18?1:s<48?3:s<144?4:s<768?5:6,o=s<8?new d(t):t.isEven()?new w(t):new p(t);var u=new Array,a=3,c=r-1,f=(1<<r)-1;if(u[1]=o.convert(this),r>1){var m=n();for(o.sqrTo(u[1],m);a<=f;)u[a]=n(),o.mulTo(m,u[a-2],u[a]),a+=2}var g,E,A=e.t-1,y=!0,C=n();for(s=h(e[A])-1;A>=0;){for(s>=c?g=e[A]>>s-c&f:(g=(e[A]&(1<<s+1)-1)<<c-s,A>0&&(g|=e[A-1]>>this.DB+s-c)),a=r;!(1&g);)g>>=1,--a;if((s-=a)<0&&(s+=this.DB,--A),y)u[g].copyTo(i),y=!1;else{for(;a>1;)o.sqrTo(i,C),o.sqrTo(C,i),a-=2;a>0?o.sqrTo(i,C):(E=i,i=C,C=E),o.mulTo(C,u[g],i)}for(;A>=0&&!(e[A]&1<<s);)o.sqrTo(i,C),E=i,i=C,C=E,--s<0&&(s=this.DB-1,--A)}return o.revert(i)},r.prototype.modInverse=function(e){var t=e.isEven();if(this.isEven()&&t||0==e.signum())return r.ZERO;for(var n=e.clone(),o=this.clone(),s=l(1),i=l(0),u=l(0),a=l(1);0!=n.signum();){for(;n.isEven();)n.rShiftTo(1,n),t?(s.isEven()&&i.isEven()||(s.addTo(this,s),i.subTo(e,i)),s.rShiftTo(1,s)):i.isEven()||i.subTo(e,i),i.rShiftTo(1,i);for(;o.isEven();)o.rShiftTo(1,o),t?(u.isEven()&&a.isEven()||(u.addTo(this,u),a.subTo(e,a)),u.rShiftTo(1,u)):a.isEven()||a.subTo(e,a),a.rShiftTo(1,a);n.compareTo(o)>=0?(n.subTo(o,n),t&&s.subTo(u,s),i.subTo(a,i)):(o.subTo(n,o),t&&u.subTo(s,u),a.subTo(i,a))}return 0!=o.compareTo(r.ONE)?r.ZERO:a.compareTo(e)>=0?a.subtract(e):a.signum()<0?(a.addTo(e,a),a.signum()<0?a.add(e):a):a},r.prototype.pow=function(e){return this.exp(e,new C)},r.prototype.gcd=function(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var o=t.getLowestSetBit(),s=r.getLowestSetBit();if(s<0)return t;for(o<s&&(s=o),s>0&&(t.rShiftTo(s,t),r.rShiftTo(s,r));t.signum()>0;)(o=t.getLowestSetBit())>0&&t.rShiftTo(o,t),(o=r.getLowestSetBit())>0&&r.rShiftTo(o,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return s>0&&r.lShiftTo(s,r),r},r.prototype.isProbablePrime=function(e){var t,r=this.abs();if(1==r.t&&r[0]<=_[_.length-1]){for(t=0;t<_.length;++t)if(r[0]==_[t])return!0;return!1}if(r.isEven())return!1;for(t=1;t<_.length;){for(var n=_[t],o=t+1;o<_.length&&n<B;)n*=_[o++];for(n=r.modInt(n);t<o;)if(n%_[t++]==0)return!1}return r.millerRabin(e)},r.prototype.square=function(){var e=n();return this.squareTo(e),e},r.prototype.Barrett=w,null==v){var T;if(v=new Array,O=0,"undefined"!=typeof window&&window.crypto)if(window.crypto.getRandomValues){var I=new Uint8Array(32);for(window.crypto.getRandomValues(I),T=0;T<32;++T)v[O++]=I[T]}else if("Netscape"==navigator.appName&&navigator.appVersion<"5"){var F=window.crypto.random(32);for(T=0;T<F.length;++T)v[O++]=255&F.charCodeAt(T)}for(;O<x;)T=Math.floor(65536*Math.random()),v[O++]=T>>>8,v[O++]=255&T;O=0,D()}function R(){if(null==b){for(D(),(b=new M).init(v),O=0;O<v.length;++O)v[O]=0;O=0}return b.next()}function N(){}function M(){this.i=0,this.j=0,this.S=new Array}N.prototype.nextBytes=function(e){var t;for(t=0;t<e.length;++t)e[t]=R()},M.prototype.init=function(e){var t,r,n;for(t=0;t<256;++t)this.S[t]=t;for(r=0,t=0;t<256;++t)r=r+this.S[t]+e[t%e.length]&255,n=this.S[t],this.S[t]=this.S[r],this.S[r]=n;this.i=0,this.j=0},M.prototype.next=function(){var e;return this.i=this.i+1&255,this.j=this.j+this.S[this.i]&255,e=this.S[this.i],this.S[this.i]=this.S[this.j],this.S[this.j]=e,this.S[e+this.S[this.i]&255]};var x=256;e.exports={default:r,BigInteger:r,SecureRandom:N}}).call(this)},3688:e=>{function t(e){return!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then}e.exports=t,e.exports.default=t},7737:(e,t,r)=>{var n=r(3789)(r(5036),"DataView");e.exports=n},5072:(e,t,r)=>{var n=r(9763),o=r(3879),s=r(8150),i=r(7106),u=r(938);function a(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}a.prototype.clear=n,a.prototype.delete=o,a.prototype.get=s,a.prototype.has=i,a.prototype.set=u,e.exports=a},5332:(e,t,r)=>{var n=r(3023),o=r(4747),s=r(9978),i=r(6734),u=r(4710);function a(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}a.prototype.clear=n,a.prototype.delete=o,a.prototype.get=s,a.prototype.has=i,a.prototype.set=u,e.exports=a},16:(e,t,r)=>{var n=r(3789)(r(5036),"Map");e.exports=n},1708:(e,t,r)=>{var n=r(615),o=r(9859),s=r(5170),i=r(8470),u=r(7646);function a(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}a.prototype.clear=n,a.prototype.delete=o,a.prototype.get=s,a.prototype.has=i,a.prototype.set=u,e.exports=a},1767:(e,t,r)=>{var n=r(3789)(r(5036),"Promise");e.exports=n},7802:(e,t,r)=>{var n=r(3789)(r(5036),"Set");e.exports=n},9310:(e,t,r)=>{var n=r(5332),o=r(9333),s=r(1893),i=r(9676),u=r(6536),a=r(3336);function c(e){var t=this.__data__=new n(e);this.size=t.size}c.prototype.clear=o,c.prototype.delete=s,c.prototype.get=i,c.prototype.has=u,c.prototype.set=a,e.exports=c},7432:(e,t,r)=>{var n=r(5036).Symbol;e.exports=n},181:(e,t,r)=>{var n=r(5036).Uint8Array;e.exports=n},20:(e,t,r)=>{var n=r(3789)(r(5036),"WeakMap");e.exports=n},2130:e=>{e.exports=function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}},5773:e=>{e.exports=function(e,t){for(var r=-1,n=null==e?0:e.length,o=0,s=[];++r<n;){var i=e[r];t(i,r,e)&&(s[o++]=i)}return s}},6272:(e,t,r)=>{var n=r(8355),o=r(7933),s=r(9464),i=r(5752),u=r(1574),a=r(264),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var r=s(e),l=!r&&o(e),h=!r&&!l&&i(e),d=!r&&!l&&!h&&a(e),p=r||l||h||d,f=p?n(e.length,String):[],m=f.length;for(var g in e)!t&&!c.call(e,g)||p&&("length"==g||h&&("offset"==g||"parent"==g)||d&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||u(g,m))||f.push(g);return f}},1595:e=>{e.exports=function(e,t){for(var r=-1,n=t.length,o=e.length;++r<n;)e[o+r]=t[r];return e}},6312:(e,t,r)=>{var n=r(6571),o=r(9679),s=Object.prototype.hasOwnProperty;e.exports=function(e,t,r){var i=e[t];s.call(e,t)&&o(i,r)&&(void 0!==r||t in e)||n(e,t,r)}},5096:(e,t,r)=>{var n=r(9679);e.exports=function(e,t){for(var r=e.length;r--;)if(n(e[r][0],t))return r;return-1}},2516:(e,t,r)=>{var n=r(5634),o=r(9125);e.exports=function(e,t){return e&&n(t,o(t),e)}},5771:(e,t,r)=>{var n=r(5634),o=r(7798);e.exports=function(e,t){return e&&n(t,o(t),e)}},6571:(e,t,r)=>{var n=r(6514);e.exports=function(e,t,r){"__proto__"==t&&n?n(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}},9192:(e,t,r)=>{var n=r(9310),o=r(2130),s=r(6312),i=r(2516),u=r(5771),a=r(1733),c=r(5240),l=r(6752),h=r(4239),d=r(1679),p=r(6628),f=r(1344),m=r(7928),g=r(4290),E=r(6082),A=r(9464),y=r(5752),C=r(6043),S=r(6130),w=r(6885),b=r(9125),v=r(7798),O="[object Arguments]",_="[object Function]",B="[object Object]",D={};D[O]=D["[object Array]"]=D["[object ArrayBuffer]"]=D["[object DataView]"]=D["[object Boolean]"]=D["[object Date]"]=D["[object Float32Array]"]=D["[object Float64Array]"]=D["[object Int8Array]"]=D["[object Int16Array]"]=D["[object Int32Array]"]=D["[object Map]"]=D["[object Number]"]=D[B]=D["[object RegExp]"]=D["[object Set]"]=D["[object String]"]=D["[object Symbol]"]=D["[object Uint8Array]"]=D["[object Uint8ClampedArray]"]=D["[object Uint16Array]"]=D["[object Uint32Array]"]=!0,D["[object Error]"]=D[_]=D["[object WeakMap]"]=!1,e.exports=function e(t,r,T,I,F,R){var N,M=1&r,x=2&r,P=4&r;if(T&&(N=F?T(t,I,F,R):T(t)),void 0!==N)return N;if(!S(t))return t;var k=A(t);if(k){if(N=m(t),!M)return c(t,N)}else{var L=f(t),U=L==_||"[object GeneratorFunction]"==L;if(y(t))return a(t,M);if(L==B||L==O||U&&!F){if(N=x||U?{}:E(t),!M)return x?h(t,u(N,t)):l(t,i(N,t))}else{if(!D[L])return F?t:{};N=g(t,L,M)}}R||(R=new n);var j=R.get(t);if(j)return j;R.set(t,N),w(t)?t.forEach((function(n){N.add(e(n,r,T,n,t,R))})):C(t)&&t.forEach((function(n,o){N.set(o,e(n,r,T,o,t,R))}));var $=k?void 0:(P?x?p:d:x?v:b)(t);return o($||t,(function(n,o){$&&(n=t[o=n]),s(N,o,e(n,r,T,o,t,R))})),N}},6309:(e,t,r)=>{var n=r(6130),o=Object.create,s=function(){function e(){}return function(t){if(!n(t))return{};if(o)return o(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();e.exports=s},4090:(e,t,r)=>{var n=r(1595),o=r(9464);e.exports=function(e,t,r){var s=t(e);return o(e)?s:n(s,r(e))}},6077:(e,t,r)=>{var n=r(7432),o=r(4444),s=r(3371),i=n?n.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":i&&i in Object(e)?o(e):s(e)}},5301:(e,t,r)=>{var n=r(6077),o=r(4189);e.exports=function(e){return o(e)&&"[object Arguments]"==n(e)}},1939:(e,t,r)=>{var n=r(1344),o=r(4189);e.exports=function(e){return o(e)&&"[object Map]"==n(e)}},9950:(e,t,r)=>{var n=r(6553),o=r(3909),s=r(6130),i=r(2760),u=/^\[object .+?Constructor\]$/,a=Function.prototype,c=Object.prototype,l=a.toString,h=c.hasOwnProperty,d=RegExp("^"+l.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!s(e)||o(e))&&(n(e)?d:u).test(i(e))}},8685:(e,t,r)=>{var n=r(1344),o=r(4189);e.exports=function(e){return o(e)&&"[object Set]"==n(e)}},8912:(e,t,r)=>{var n=r(6077),o=r(5841),s=r(4189),i={};i["[object Float32Array]"]=i["[object Float64Array]"]=i["[object Int8Array]"]=i["[object Int16Array]"]=i["[object Int32Array]"]=i["[object Uint8Array]"]=i["[object Uint8ClampedArray]"]=i["[object Uint16Array]"]=i["[object Uint32Array]"]=!0,i["[object Arguments]"]=i["[object Array]"]=i["[object ArrayBuffer]"]=i["[object Boolean]"]=i["[object DataView]"]=i["[object Date]"]=i["[object Error]"]=i["[object Function]"]=i["[object Map]"]=i["[object Number]"]=i["[object Object]"]=i["[object RegExp]"]=i["[object Set]"]=i["[object String]"]=i["[object WeakMap]"]=!1,e.exports=function(e){return s(e)&&o(e.length)&&!!i[n(e)]}},4829:(e,t,r)=>{var n=r(2632),o=r(9963),s=Object.prototype.hasOwnProperty;e.exports=function(e){if(!n(e))return o(e);var t=[];for(var r in Object(e))s.call(e,r)&&"constructor"!=r&&t.push(r);return t}},9262:(e,t,r)=>{var n=r(6130),o=r(2632),s=r(312),i=Object.prototype.hasOwnProperty;e.exports=function(e){if(!n(e))return s(e);var t=o(e),r=[];for(var u in e)("constructor"!=u||!t&&i.call(e,u))&&r.push(u);return r}},8355:e=>{e.exports=function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}},7746:e=>{e.exports=function(e){return function(t){return e(t)}}},990:(e,t,r)=>{var n=r(181);e.exports=function(e){var t=new e.constructor(e.byteLength);return new n(t).set(new n(e)),t}},1733:(e,t,r)=>{e=r.nmd(e);var n=r(5036),o=t&&!t.nodeType&&t,s=o&&e&&!e.nodeType&&e,i=s&&s.exports===o?n.Buffer:void 0,u=i?i.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var r=e.length,n=u?u(r):new e.constructor(r);return e.copy(n),n}},9842:(e,t,r)=>{var n=r(990);e.exports=function(e,t){var r=t?n(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}},7054:e=>{var t=/\w*$/;e.exports=function(e){var r=new e.constructor(e.source,t.exec(e));return r.lastIndex=e.lastIndex,r}},6923:(e,t,r)=>{var n=r(7432),o=n?n.prototype:void 0,s=o?o.valueOf:void 0;e.exports=function(e){return s?Object(s.call(e)):{}}},1058:(e,t,r)=>{var n=r(990);e.exports=function(e,t){var r=t?n(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}},5240:e=>{e.exports=function(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r<n;)t[r]=e[r];return t}},5634:(e,t,r)=>{var n=r(6312),o=r(6571);e.exports=function(e,t,r,s){var i=!r;r||(r={});for(var u=-1,a=t.length;++u<a;){var c=t[u],l=s?s(r[c],e[c],c,r,e):void 0;void 0===l&&(l=e[c]),i?o(r,c,l):n(r,c,l)}return r}},6752:(e,t,r)=>{var n=r(5634),o=r(1809);e.exports=function(e,t){return n(e,o(e),t)}},4239:(e,t,r)=>{var n=r(5634),o=r(9242);e.exports=function(e,t){return n(e,o(e),t)}},4780:(e,t,r)=>{var n=r(5036)["__core-js_shared__"];e.exports=n},6514:(e,t,r)=>{var n=r(3789),o=function(){try{var e=n(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=o},8565:e=>{var t="object"==typeof global&&global&&global.Object===Object&&global;e.exports=t},1679:(e,t,r)=>{var n=r(4090),o=r(1809),s=r(9125);e.exports=function(e){return n(e,s,o)}},6628:(e,t,r)=>{var n=r(4090),o=r(9242),s=r(7798);e.exports=function(e){return n(e,s,o)}},5930:(e,t,r)=>{var n=r(29);e.exports=function(e,t){var r=e.__data__;return n(t)?r["string"==typeof t?"string":"hash"]:r.map}},3789:(e,t,r)=>{var n=r(9950),o=r(8869);e.exports=function(e,t){var r=o(e,t);return n(r)?r:void 0}},4754:(e,t,r)=>{var n=r(2344)(Object.getPrototypeOf,Object);e.exports=n},4444:(e,t,r)=>{var n=r(7432),o=Object.prototype,s=o.hasOwnProperty,i=o.toString,u=n?n.toStringTag:void 0;e.exports=function(e){var t=s.call(e,u),r=e[u];try{e[u]=void 0;var n=!0}catch(e){}var o=i.call(e);return n&&(t?e[u]=r:delete e[u]),o}},1809:(e,t,r)=>{var n=r(5773),o=r(3864),s=Object.prototype.propertyIsEnumerable,i=Object.getOwnPropertySymbols,u=i?function(e){return null==e?[]:(e=Object(e),n(i(e),(function(t){return s.call(e,t)})))}:o;e.exports=u},9242:(e,t,r)=>{var n=r(1595),o=r(4754),s=r(1809),i=r(3864),u=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)n(t,s(e)),e=o(e);return t}:i;e.exports=u},1344:(e,t,r)=>{var n=r(7737),o=r(16),s=r(1767),i=r(7802),u=r(20),a=r(6077),c=r(2760),l="[object Map]",h="[object Promise]",d="[object Set]",p="[object WeakMap]",f="[object DataView]",m=c(n),g=c(o),E=c(s),A=c(i),y=c(u),C=a;(n&&C(new n(new ArrayBuffer(1)))!=f||o&&C(new o)!=l||s&&C(s.resolve())!=h||i&&C(new i)!=d||u&&C(new u)!=p)&&(C=function(e){var t=a(e),r="[object Object]"==t?e.constructor:void 0,n=r?c(r):"";if(n)switch(n){case m:return f;case g:return l;case E:return h;case A:return d;case y:return p}return t}),e.exports=C},8869:e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},9763:(e,t,r)=>{var n=r(267);e.exports=function(){this.__data__=n?n(null):{},this.size=0}},3879:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},8150:(e,t,r)=>{var n=r(267),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(n){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return o.call(t,e)?t[e]:void 0}},7106:(e,t,r)=>{var n=r(267),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return n?void 0!==t[e]:o.call(t,e)}},938:(e,t,r)=>{var n=r(267);e.exports=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=n&&void 0===t?"__lodash_hash_undefined__":t,this}},7928:e=>{var t=Object.prototype.hasOwnProperty;e.exports=function(e){var r=e.length,n=new e.constructor(r);return r&&"string"==typeof e[0]&&t.call(e,"index")&&(n.index=e.index,n.input=e.input),n}},4290:(e,t,r)=>{var n=r(990),o=r(9842),s=r(7054),i=r(6923),u=r(1058);e.exports=function(e,t,r){var a=e.constructor;switch(t){case"[object ArrayBuffer]":return n(e);case"[object Boolean]":case"[object Date]":return new a(+e);case"[object DataView]":return o(e,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return u(e,r);case"[object Map]":case"[object Set]":return new a;case"[object Number]":case"[object String]":return new a(e);case"[object RegExp]":return s(e);case"[object Symbol]":return i(e)}}},6082:(e,t,r)=>{var n=r(6309),o=r(4754),s=r(2632);e.exports=function(e){return"function"!=typeof e.constructor||s(e)?{}:n(o(e))}},1574:e=>{var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,r){var n=typeof e;return!!(r=null==r?9007199254740991:r)&&("number"==n||"symbol"!=n&&t.test(e))&&e>-1&&e%1==0&&e<r}},29:e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},3909:(e,t,r)=>{var n,o=r(4780),s=(n=/[^.]+$/.exec(o&&o.keys&&o.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"";e.exports=function(e){return!!s&&s in e}},2632:e=>{var t=Object.prototype;e.exports=function(e){var r=e&&e.constructor;return e===("function"==typeof r&&r.prototype||t)}},3023:e=>{e.exports=function(){this.__data__=[],this.size=0}},4747:(e,t,r)=>{var n=r(5096),o=Array.prototype.splice;e.exports=function(e){var t=this.__data__,r=n(t,e);return!(r<0||(r==t.length-1?t.pop():o.call(t,r,1),--this.size,0))}},9978:(e,t,r)=>{var n=r(5096);e.exports=function(e){var t=this.__data__,r=n(t,e);return r<0?void 0:t[r][1]}},6734:(e,t,r)=>{var n=r(5096);e.exports=function(e){return n(this.__data__,e)>-1}},4710:(e,t,r)=>{var n=r(5096);e.exports=function(e,t){var r=this.__data__,o=n(r,e);return o<0?(++this.size,r.push([e,t])):r[o][1]=t,this}},615:(e,t,r)=>{var n=r(5072),o=r(5332),s=r(16);e.exports=function(){this.size=0,this.__data__={hash:new n,map:new(s||o),string:new n}}},9859:(e,t,r)=>{var n=r(5930);e.exports=function(e){var t=n(this,e).delete(e);return this.size-=t?1:0,t}},5170:(e,t,r)=>{var n=r(5930);e.exports=function(e){return n(this,e).get(e)}},8470:(e,t,r)=>{var n=r(5930);e.exports=function(e){return n(this,e).has(e)}},7646:(e,t,r)=>{var n=r(5930);e.exports=function(e,t){var r=n(this,e),o=r.size;return r.set(e,t),this.size+=r.size==o?0:1,this}},267:(e,t,r)=>{var n=r(3789)(Object,"create");e.exports=n},9963:(e,t,r)=>{var n=r(2344)(Object.keys,Object);e.exports=n},312:e=>{e.exports=function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}},1172:(e,t,r)=>{e=r.nmd(e);var n=r(8565),o=t&&!t.nodeType&&t,s=o&&e&&!e.nodeType&&e,i=s&&s.exports===o&&n.process,u=function(){try{return s&&s.require&&s.require("util").types||i&&i.binding&&i.binding("util")}catch(e){}}();e.exports=u},3371:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},2344:e=>{e.exports=function(e,t){return function(r){return e(t(r))}}},5036:(e,t,r)=>{var n=r(8565),o="object"==typeof self&&self&&self.Object===Object&&self,s=n||o||Function("return this")();e.exports=s},9333:(e,t,r)=>{var n=r(5332);e.exports=function(){this.__data__=new n,this.size=0}},1893:e=>{e.exports=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}},9676:e=>{e.exports=function(e){return this.__data__.get(e)}},6536:e=>{e.exports=function(e){return this.__data__.has(e)}},3336:(e,t,r)=>{var n=r(5332),o=r(16),s=r(1708);e.exports=function(e,t){var r=this.__data__;if(r instanceof n){var i=r.__data__;if(!o||i.length<199)return i.push([e,t]),this.size=++r.size,this;r=this.__data__=new s(i)}return r.set(e,t),this.size=r.size,this}},2760:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},3402:(e,t,r)=>{var n=r(9192);e.exports=function(e,t){return n(e,5,t="function"==typeof t?t:void 0)}},9679:e=>{e.exports=function(e,t){return e===t||e!=e&&t!=t}},7933:(e,t,r)=>{var n=r(5301),o=r(4189),s=Object.prototype,i=s.hasOwnProperty,u=s.propertyIsEnumerable,a=n(function(){return arguments}())?n:function(e){return o(e)&&i.call(e,"callee")&&!u.call(e,"callee")};e.exports=a},9464:e=>{var t=Array.isArray;e.exports=t},623:(e,t,r)=>{var n=r(6553),o=r(5841);e.exports=function(e){return null!=e&&o(e.length)&&!n(e)}},5752:(e,t,r)=>{e=r.nmd(e);var n=r(5036),o=r(8042),s=t&&!t.nodeType&&t,i=s&&e&&!e.nodeType&&e,u=i&&i.exports===s?n.Buffer:void 0,a=(u?u.isBuffer:void 0)||o;e.exports=a},6553:(e,t,r)=>{var n=r(6077),o=r(6130);e.exports=function(e){if(!o(e))return!1;var t=n(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},5841:e=>{e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},6043:(e,t,r)=>{var n=r(1939),o=r(7746),s=r(1172),i=s&&s.isMap,u=i?o(i):n;e.exports=u},6130:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},4189:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},6885:(e,t,r)=>{var n=r(8685),o=r(7746),s=r(1172),i=s&&s.isSet,u=i?o(i):n;e.exports=u},264:(e,t,r)=>{var n=r(8912),o=r(7746),s=r(1172),i=s&&s.isTypedArray,u=i?o(i):n;e.exports=u},9125:(e,t,r)=>{var n=r(6272),o=r(4829),s=r(623);e.exports=function(e){return s(e)?n(e):o(e)}},7798:(e,t,r)=>{var n=r(6272),o=r(9262),s=r(623);e.exports=function(e){return s(e)?n(e,!0):o(e)}},5076:function(e,t,r){var n;e=r.nmd(e),function(){var o,s="Expected a function",i="__lodash_hash_undefined__",u="__lodash_placeholder__",a=32,c=128,l=1/0,h=9007199254740991,d=NaN,p=4294967295,f=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",a],["partialRight",64],["rearg",256]],m="[object Arguments]",g="[object Array]",E="[object Boolean]",A="[object Date]",y="[object Error]",C="[object Function]",S="[object GeneratorFunction]",w="[object Map]",b="[object Number]",v="[object Object]",O="[object Promise]",_="[object RegExp]",B="[object Set]",D="[object String]",T="[object Symbol]",I="[object WeakMap]",F="[object ArrayBuffer]",R="[object DataView]",N="[object Float32Array]",M="[object Float64Array]",x="[object Int8Array]",P="[object Int16Array]",k="[object Int32Array]",L="[object Uint8Array]",U="[object Uint8ClampedArray]",j="[object Uint16Array]",$="[object Uint32Array]",z=/\b__p \+= '';/g,V=/\b(__p \+=) '' \+/g,H=/(__e\(.*?\)|\b__t\)) \+\n'';/g,q=/&(?:amp|lt|gt|quot|#39);/g,W=/[&<>"']/g,G=RegExp(q.source),K=RegExp(W.source),Y=/<%-([\s\S]+?)%>/g,J=/<%([\s\S]+?)%>/g,X=/<%=([\s\S]+?)%>/g,Z=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,ee=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,te=/[\\^$.*+?()[\]{}|]/g,re=RegExp(te.source),ne=/^\s+/,oe=/\s/,se=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ie=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,ae=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ce=/[()=,{}\[\]\/\s]/,le=/\\(\\)?/g,he=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,pe=/^[-+]0x[0-9a-f]+$/i,fe=/^0b[01]+$/i,me=/^\[object .+?Constructor\]$/,ge=/^0o[0-7]+$/i,Ee=/^(?:0|[1-9]\d*)$/,Ae=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ye=/($^)/,Ce=/['\n\r\u2028\u2029\\]/g,Se="\\ud800-\\udfff",we="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",be="\\u2700-\\u27bf",ve="a-z\\xdf-\\xf6\\xf8-\\xff",Oe="A-Z\\xc0-\\xd6\\xd8-\\xde",_e="\\ufe0e\\ufe0f",Be="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\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",De="["+Se+"]",Te="["+Be+"]",Ie="["+we+"]",Fe="\\d+",Re="["+be+"]",Ne="["+ve+"]",Me="[^"+Se+Be+Fe+be+ve+Oe+"]",xe="\\ud83c[\\udffb-\\udfff]",Pe="[^"+Se+"]",ke="(?:\\ud83c[\\udde6-\\uddff]){2}",Le="[\\ud800-\\udbff][\\udc00-\\udfff]",Ue="["+Oe+"]",je="\\u200d",$e="(?:"+Ne+"|"+Me+")",ze="(?:"+Ue+"|"+Me+")",Ve="(?:['’](?:d|ll|m|re|s|t|ve))?",He="(?:['’](?:D|LL|M|RE|S|T|VE))?",qe="(?:"+Ie+"|"+xe+")?",We="["+_e+"]?",Ge=We+qe+"(?:"+je+"(?:"+[Pe,ke,Le].join("|")+")"+We+qe+")*",Ke="(?:"+[Re,ke,Le].join("|")+")"+Ge,Ye="(?:"+[Pe+Ie+"?",Ie,ke,Le,De].join("|")+")",Je=RegExp("['’]","g"),Xe=RegExp(Ie,"g"),Ze=RegExp(xe+"(?="+xe+")|"+Ye+Ge,"g"),Qe=RegExp([Ue+"?"+Ne+"+"+Ve+"(?="+[Te,Ue,"$"].join("|")+")",ze+"+"+He+"(?="+[Te,Ue+$e,"$"].join("|")+")",Ue+"?"+$e+"+"+Ve,Ue+"+"+He,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Fe,Ke].join("|"),"g"),et=RegExp("["+je+Se+we+_e+"]"),tt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,rt=["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"],nt=-1,ot={};ot[N]=ot[M]=ot[x]=ot[P]=ot[k]=ot[L]=ot[U]=ot[j]=ot[$]=!0,ot[m]=ot[g]=ot[F]=ot[E]=ot[R]=ot[A]=ot[y]=ot[C]=ot[w]=ot[b]=ot[v]=ot[_]=ot[B]=ot[D]=ot[I]=!1;var st={};st[m]=st[g]=st[F]=st[R]=st[E]=st[A]=st[N]=st[M]=st[x]=st[P]=st[k]=st[w]=st[b]=st[v]=st[_]=st[B]=st[D]=st[T]=st[L]=st[U]=st[j]=st[$]=!0,st[y]=st[C]=st[I]=!1;var it={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ut=parseFloat,at=parseInt,ct="object"==typeof global&&global&&global.Object===Object&&global,lt="object"==typeof self&&self&&self.Object===Object&&self,ht=ct||lt||Function("return this")(),dt=t&&!t.nodeType&&t,pt=dt&&e&&!e.nodeType&&e,ft=pt&&pt.exports===dt,mt=ft&&ct.process,gt=function(){try{return pt&&pt.require&&pt.require("util").types||mt&&mt.binding&&mt.binding("util")}catch(e){}}(),Et=gt&>.isArrayBuffer,At=gt&>.isDate,yt=gt&>.isMap,Ct=gt&>.isRegExp,St=gt&>.isSet,wt=gt&>.isTypedArray;function bt(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)}function vt(e,t,r,n){for(var o=-1,s=null==e?0:e.length;++o<s;){var i=e[o];t(n,i,r(i),e)}return n}function Ot(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function _t(e,t){for(var r=null==e?0:e.length;r--&&!1!==t(e[r],r,e););return e}function Bt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0}function Dt(e,t){for(var r=-1,n=null==e?0:e.length,o=0,s=[];++r<n;){var i=e[r];t(i,r,e)&&(s[o++]=i)}return s}function Tt(e,t){return!(null==e||!e.length)&&Ut(e,t,0)>-1}function It(e,t,r){for(var n=-1,o=null==e?0:e.length;++n<o;)if(r(t,e[n]))return!0;return!1}function Ft(e,t){for(var r=-1,n=null==e?0:e.length,o=Array(n);++r<n;)o[r]=t(e[r],r,e);return o}function Rt(e,t){for(var r=-1,n=t.length,o=e.length;++r<n;)e[o+r]=t[r];return e}function Nt(e,t,r,n){var o=-1,s=null==e?0:e.length;for(n&&s&&(r=e[++o]);++o<s;)r=t(r,e[o],o,e);return r}function Mt(e,t,r,n){var o=null==e?0:e.length;for(n&&o&&(r=e[--o]);o--;)r=t(r,e[o],o,e);return r}function xt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}var Pt=Vt("length");function kt(e,t,r){var n;return r(e,(function(e,r,o){if(t(e,r,o))return n=r,!1})),n}function Lt(e,t,r,n){for(var o=e.length,s=r+(n?1:-1);n?s--:++s<o;)if(t(e[s],s,e))return s;return-1}function Ut(e,t,r){return t==t?function(e,t,r){for(var n=r-1,o=e.length;++n<o;)if(e[n]===t)return n;return-1}(e,t,r):Lt(e,$t,r)}function jt(e,t,r,n){for(var o=r-1,s=e.length;++o<s;)if(n(e[o],t))return o;return-1}function $t(e){return e!=e}function zt(e,t){var r=null==e?0:e.length;return r?Wt(e,t)/r:d}function Vt(e){return function(t){return null==t?o:t[e]}}function Ht(e){return function(t){return null==e?o:e[t]}}function qt(e,t,r,n,o){return o(e,(function(e,o,s){r=n?(n=!1,e):t(r,e,o,s)})),r}function Wt(e,t){for(var r,n=-1,s=e.length;++n<s;){var i=t(e[n]);i!==o&&(r=r===o?i:r+i)}return r}function Gt(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function Kt(e){return e?e.slice(0,hr(e)+1).replace(ne,""):e}function Yt(e){return function(t){return e(t)}}function Jt(e,t){return Ft(t,(function(t){return e[t]}))}function Xt(e,t){return e.has(t)}function Zt(e,t){for(var r=-1,n=e.length;++r<n&&Ut(t,e[r],0)>-1;);return r}function Qt(e,t){for(var r=e.length;r--&&Ut(t,e[r],0)>-1;);return r}var er=Ht({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),tr=Ht({"&":"&","<":"<",">":">",'"':""","'":"'"});function rr(e){return"\\"+it[e]}function nr(e){return et.test(e)}function or(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function sr(e,t){return function(r){return e(t(r))}}function ir(e,t){for(var r=-1,n=e.length,o=0,s=[];++r<n;){var i=e[r];i!==t&&i!==u||(e[r]=u,s[o++]=r)}return s}function ur(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}function ar(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=[e,e]})),r}function cr(e){return nr(e)?function(e){for(var t=Ze.lastIndex=0;Ze.test(e);)++t;return t}(e):Pt(e)}function lr(e){return nr(e)?function(e){return e.match(Ze)||[]}(e):function(e){return e.split("")}(e)}function hr(e){for(var t=e.length;t--&&oe.test(e.charAt(t)););return t}var dr=Ht({"&":"&","<":"<",">":">",""":'"',"'":"'"}),pr=function e(t){var r,n=(t=null==t?ht:pr.defaults(ht.Object(),t,pr.pick(ht,rt))).Array,oe=t.Date,Se=t.Error,we=t.Function,be=t.Math,ve=t.Object,Oe=t.RegExp,_e=t.String,Be=t.TypeError,De=n.prototype,Te=we.prototype,Ie=ve.prototype,Fe=t["__core-js_shared__"],Re=Te.toString,Ne=Ie.hasOwnProperty,Me=0,xe=(r=/[^.]+$/.exec(Fe&&Fe.keys&&Fe.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"",Pe=Ie.toString,ke=Re.call(ve),Le=ht._,Ue=Oe("^"+Re.call(Ne).replace(te,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),je=ft?t.Buffer:o,$e=t.Symbol,ze=t.Uint8Array,Ve=je?je.allocUnsafe:o,He=sr(ve.getPrototypeOf,ve),qe=ve.create,We=Ie.propertyIsEnumerable,Ge=De.splice,Ke=$e?$e.isConcatSpreadable:o,Ye=$e?$e.iterator:o,Ze=$e?$e.toStringTag:o,et=function(){try{var e=cs(ve,"defineProperty");return e({},"",{}),e}catch(e){}}(),it=t.clearTimeout!==ht.clearTimeout&&t.clearTimeout,ct=oe&&oe.now!==ht.Date.now&&oe.now,lt=t.setTimeout!==ht.setTimeout&&t.setTimeout,dt=be.ceil,pt=be.floor,mt=ve.getOwnPropertySymbols,gt=je?je.isBuffer:o,Pt=t.isFinite,Ht=De.join,fr=sr(ve.keys,ve),mr=be.max,gr=be.min,Er=oe.now,Ar=t.parseInt,yr=be.random,Cr=De.reverse,Sr=cs(t,"DataView"),wr=cs(t,"Map"),br=cs(t,"Promise"),vr=cs(t,"Set"),Or=cs(t,"WeakMap"),_r=cs(ve,"create"),Br=Or&&new Or,Dr={},Tr=ks(Sr),Ir=ks(wr),Fr=ks(br),Rr=ks(vr),Nr=ks(Or),Mr=$e?$e.prototype:o,xr=Mr?Mr.valueOf:o,Pr=Mr?Mr.toString:o;function kr(e){if(eu(e)&&!Vi(e)&&!(e instanceof $r)){if(e instanceof jr)return e;if(Ne.call(e,"__wrapped__"))return Ls(e)}return new jr(e)}var Lr=function(){function e(){}return function(t){if(!Qi(t))return{};if(qe)return qe(t);e.prototype=t;var r=new e;return e.prototype=o,r}}();function Ur(){}function jr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=o}function $r(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=p,this.__views__=[]}function zr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Vr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function Hr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function qr(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Hr;++t<r;)this.add(e[t])}function Wr(e){var t=this.__data__=new Vr(e);this.size=t.size}function Gr(e,t){var r=Vi(e),n=!r&&zi(e),o=!r&&!n&&Gi(e),s=!r&&!n&&!o&&au(e),i=r||n||o||s,u=i?Gt(e.length,_e):[],a=u.length;for(var c in e)!t&&!Ne.call(e,c)||i&&("length"==c||o&&("offset"==c||"parent"==c)||s&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||gs(c,a))||u.push(c);return u}function Kr(e){var t=e.length;return t?e[qn(0,t-1)]:o}function Yr(e,t){return Rs(Bo(e),on(t,0,e.length))}function Jr(e){return Rs(Bo(e))}function Xr(e,t,r){(r!==o&&!Ui(e[t],r)||r===o&&!(t in e))&&rn(e,t,r)}function Zr(e,t,r){var n=e[t];Ne.call(e,t)&&Ui(n,r)&&(r!==o||t in e)||rn(e,t,r)}function Qr(e,t){for(var r=e.length;r--;)if(Ui(e[r][0],t))return r;return-1}function en(e,t,r,n){return ln(e,(function(e,o,s){t(n,e,r(e),s)})),n}function tn(e,t){return e&&Do(t,Iu(t),e)}function rn(e,t,r){"__proto__"==t&&et?et(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function nn(e,t){for(var r=-1,s=t.length,i=n(s),u=null==e;++r<s;)i[r]=u?o:Ou(e,t[r]);return i}function on(e,t,r){return e==e&&(r!==o&&(e=e<=r?e:r),t!==o&&(e=e>=t?e:t)),e}function sn(e,t,r,n,s,i){var u,a=1&t,c=2&t,l=4&t;if(r&&(u=s?r(e,n,s,i):r(e)),u!==o)return u;if(!Qi(e))return e;var h=Vi(e);if(h){if(u=function(e){var t=e.length,r=new e.constructor(t);return t&&"string"==typeof e[0]&&Ne.call(e,"index")&&(r.index=e.index,r.input=e.input),r}(e),!a)return Bo(e,u)}else{var d=ds(e),p=d==C||d==S;if(Gi(e))return So(e,a);if(d==v||d==m||p&&!s){if(u=c||p?{}:fs(e),!a)return c?function(e,t){return Do(e,hs(e),t)}(e,function(e,t){return e&&Do(t,Fu(t),e)}(u,e)):function(e,t){return Do(e,ls(e),t)}(e,tn(u,e))}else{if(!st[d])return s?e:{};u=function(e,t,r){var n,o=e.constructor;switch(t){case F:return wo(e);case E:case A:return new o(+e);case R:return function(e,t){var r=t?wo(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case N:case M:case x:case P:case k:case L:case U:case j:case $:return bo(e,r);case w:return new o;case b:case D:return new o(e);case _:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case B:return new o;case T:return n=e,xr?ve(xr.call(n)):{}}}(e,d,a)}}i||(i=new Wr);var f=i.get(e);if(f)return f;i.set(e,u),su(e)?e.forEach((function(n){u.add(sn(n,t,r,n,e,i))})):tu(e)&&e.forEach((function(n,o){u.set(o,sn(n,t,r,o,e,i))}));var g=h?o:(l?c?rs:ts:c?Fu:Iu)(e);return Ot(g||e,(function(n,o){g&&(n=e[o=n]),Zr(u,o,sn(n,t,r,o,e,i))})),u}function un(e,t,r){var n=r.length;if(null==e)return!n;for(e=ve(e);n--;){var s=r[n],i=t[s],u=e[s];if(u===o&&!(s in e)||!i(u))return!1}return!0}function an(e,t,r){if("function"!=typeof e)throw new Be(s);return Ds((function(){e.apply(o,r)}),t)}function cn(e,t,r,n){var o=-1,s=Tt,i=!0,u=e.length,a=[],c=t.length;if(!u)return a;r&&(t=Ft(t,Yt(r))),n?(s=It,i=!1):t.length>=200&&(s=Xt,i=!1,t=new qr(t));e:for(;++o<u;){var l=e[o],h=null==r?l:r(l);if(l=n||0!==l?l:0,i&&h==h){for(var d=c;d--;)if(t[d]===h)continue e;a.push(l)}else s(t,h,n)||a.push(l)}return a}kr.templateSettings={escape:Y,evaluate:J,interpolate:X,variable:"",imports:{_:kr}},kr.prototype=Ur.prototype,kr.prototype.constructor=kr,jr.prototype=Lr(Ur.prototype),jr.prototype.constructor=jr,$r.prototype=Lr(Ur.prototype),$r.prototype.constructor=$r,zr.prototype.clear=function(){this.__data__=_r?_r(null):{},this.size=0},zr.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},zr.prototype.get=function(e){var t=this.__data__;if(_r){var r=t[e];return r===i?o:r}return Ne.call(t,e)?t[e]:o},zr.prototype.has=function(e){var t=this.__data__;return _r?t[e]!==o:Ne.call(t,e)},zr.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=_r&&t===o?i:t,this},Vr.prototype.clear=function(){this.__data__=[],this.size=0},Vr.prototype.delete=function(e){var t=this.__data__,r=Qr(t,e);return!(r<0||(r==t.length-1?t.pop():Ge.call(t,r,1),--this.size,0))},Vr.prototype.get=function(e){var t=this.__data__,r=Qr(t,e);return r<0?o:t[r][1]},Vr.prototype.has=function(e){return Qr(this.__data__,e)>-1},Vr.prototype.set=function(e,t){var r=this.__data__,n=Qr(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Hr.prototype.clear=function(){this.size=0,this.__data__={hash:new zr,map:new(wr||Vr),string:new zr}},Hr.prototype.delete=function(e){var t=us(this,e).delete(e);return this.size-=t?1:0,t},Hr.prototype.get=function(e){return us(this,e).get(e)},Hr.prototype.has=function(e){return us(this,e).has(e)},Hr.prototype.set=function(e,t){var r=us(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},qr.prototype.add=qr.prototype.push=function(e){return this.__data__.set(e,i),this},qr.prototype.has=function(e){return this.__data__.has(e)},Wr.prototype.clear=function(){this.__data__=new Vr,this.size=0},Wr.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Wr.prototype.get=function(e){return this.__data__.get(e)},Wr.prototype.has=function(e){return this.__data__.has(e)},Wr.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Vr){var n=r.__data__;if(!wr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Hr(n)}return r.set(e,t),this.size=r.size,this};var ln=Fo(An),hn=Fo(yn,!0);function dn(e,t){var r=!0;return ln(e,(function(e,n,o){return r=!!t(e,n,o)})),r}function pn(e,t,r){for(var n=-1,s=e.length;++n<s;){var i=e[n],u=t(i);if(null!=u&&(a===o?u==u&&!uu(u):r(u,a)))var a=u,c=i}return c}function fn(e,t){var r=[];return ln(e,(function(e,n,o){t(e,n,o)&&r.push(e)})),r}function mn(e,t,r,n,o){var s=-1,i=e.length;for(r||(r=ms),o||(o=[]);++s<i;){var u=e[s];t>0&&r(u)?t>1?mn(u,t-1,r,n,o):Rt(o,u):n||(o[o.length]=u)}return o}var gn=Ro(),En=Ro(!0);function An(e,t){return e&&gn(e,t,Iu)}function yn(e,t){return e&&En(e,t,Iu)}function Cn(e,t){return Dt(t,(function(t){return Ji(e[t])}))}function Sn(e,t){for(var r=0,n=(t=Eo(t,e)).length;null!=e&&r<n;)e=e[Ps(t[r++])];return r&&r==n?e:o}function wn(e,t,r){var n=t(e);return Vi(e)?n:Rt(n,r(e))}function bn(e){return null==e?e===o?"[object Undefined]":"[object Null]":Ze&&Ze in ve(e)?function(e){var t=Ne.call(e,Ze),r=e[Ze];try{e[Ze]=o;var n=!0}catch(e){}var s=Pe.call(e);return n&&(t?e[Ze]=r:delete e[Ze]),s}(e):function(e){return Pe.call(e)}(e)}function vn(e,t){return e>t}function On(e,t){return null!=e&&Ne.call(e,t)}function _n(e,t){return null!=e&&t in ve(e)}function Bn(e,t,r){for(var s=r?It:Tt,i=e[0].length,u=e.length,a=u,c=n(u),l=1/0,h=[];a--;){var d=e[a];a&&t&&(d=Ft(d,Yt(t))),l=gr(d.length,l),c[a]=!r&&(t||i>=120&&d.length>=120)?new qr(a&&d):o}d=e[0];var p=-1,f=c[0];e:for(;++p<i&&h.length<l;){var m=d[p],g=t?t(m):m;if(m=r||0!==m?m:0,!(f?Xt(f,g):s(h,g,r))){for(a=u;--a;){var E=c[a];if(!(E?Xt(E,g):s(e[a],g,r)))continue e}f&&f.push(g),h.push(m)}}return h}function Dn(e,t,r){var n=null==(e=Os(e,t=Eo(t,e)))?e:e[Ps(Ys(t))];return null==n?o:bt(n,e,r)}function Tn(e){return eu(e)&&bn(e)==m}function In(e,t,r,n,s){return e===t||(null==e||null==t||!eu(e)&&!eu(t)?e!=e&&t!=t:function(e,t,r,n,s,i){var u=Vi(e),a=Vi(t),c=u?g:ds(e),l=a?g:ds(t),h=(c=c==m?v:c)==v,d=(l=l==m?v:l)==v,p=c==l;if(p&&Gi(e)){if(!Gi(t))return!1;u=!0,h=!1}if(p&&!h)return i||(i=new Wr),u||au(e)?Qo(e,t,r,n,s,i):function(e,t,r,n,o,s,i){switch(r){case R:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case F:return!(e.byteLength!=t.byteLength||!s(new ze(e),new ze(t)));case E:case A:case b:return Ui(+e,+t);case y:return e.name==t.name&&e.message==t.message;case _:case D:return e==t+"";case w:var u=or;case B:var a=1&n;if(u||(u=ur),e.size!=t.size&&!a)return!1;var c=i.get(e);if(c)return c==t;n|=2,i.set(e,t);var l=Qo(u(e),u(t),n,o,s,i);return i.delete(e),l;case T:if(xr)return xr.call(e)==xr.call(t)}return!1}(e,t,c,r,n,s,i);if(!(1&r)){var f=h&&Ne.call(e,"__wrapped__"),C=d&&Ne.call(t,"__wrapped__");if(f||C){var S=f?e.value():e,O=C?t.value():t;return i||(i=new Wr),s(S,O,r,n,i)}}return!!p&&(i||(i=new Wr),function(e,t,r,n,s,i){var u=1&r,a=ts(e),c=a.length;if(c!=ts(t).length&&!u)return!1;for(var l=c;l--;){var h=a[l];if(!(u?h in t:Ne.call(t,h)))return!1}var d=i.get(e),p=i.get(t);if(d&&p)return d==t&&p==e;var f=!0;i.set(e,t),i.set(t,e);for(var m=u;++l<c;){var g=e[h=a[l]],E=t[h];if(n)var A=u?n(E,g,h,t,e,i):n(g,E,h,e,t,i);if(!(A===o?g===E||s(g,E,r,n,i):A)){f=!1;break}m||(m="constructor"==h)}if(f&&!m){var y=e.constructor,C=t.constructor;y==C||!("constructor"in e)||!("constructor"in t)||"function"==typeof y&&y instanceof y&&"function"==typeof C&&C instanceof C||(f=!1)}return i.delete(e),i.delete(t),f}(e,t,r,n,s,i))}(e,t,r,n,In,s))}function Fn(e,t,r,n){var s=r.length,i=s,u=!n;if(null==e)return!i;for(e=ve(e);s--;){var a=r[s];if(u&&a[2]?a[1]!==e[a[0]]:!(a[0]in e))return!1}for(;++s<i;){var c=(a=r[s])[0],l=e[c],h=a[1];if(u&&a[2]){if(l===o&&!(c in e))return!1}else{var d=new Wr;if(n)var p=n(l,h,c,e,t,d);if(!(p===o?In(h,l,3,n,d):p))return!1}}return!0}function Rn(e){return!(!Qi(e)||function(e){return!!xe&&xe in e}(e))&&(Ji(e)?Ue:me).test(ks(e))}function Nn(e){return"function"==typeof e?e:null==e?ra:"object"==typeof e?Vi(e)?Ln(e[0],e[1]):kn(e):ha(e)}function Mn(e){if(!Ss(e))return fr(e);var t=[];for(var r in ve(e))Ne.call(e,r)&&"constructor"!=r&&t.push(r);return t}function xn(e,t){return e<t}function Pn(e,t){var r=-1,o=qi(e)?n(e.length):[];return ln(e,(function(e,n,s){o[++r]=t(e,n,s)})),o}function kn(e){var t=as(e);return 1==t.length&&t[0][2]?bs(t[0][0],t[0][1]):function(r){return r===e||Fn(r,e,t)}}function Ln(e,t){return As(e)&&ws(t)?bs(Ps(e),t):function(r){var n=Ou(r,e);return n===o&&n===t?_u(r,e):In(t,n,3)}}function Un(e,t,r,n,s){e!==t&&gn(t,(function(i,u){if(s||(s=new Wr),Qi(i))!function(e,t,r,n,s,i,u){var a=_s(e,r),c=_s(t,r),l=u.get(c);if(l)Xr(e,r,l);else{var h=i?i(a,c,r+"",e,t,u):o,d=h===o;if(d){var p=Vi(c),f=!p&&Gi(c),m=!p&&!f&&au(c);h=c,p||f||m?Vi(a)?h=a:Wi(a)?h=Bo(a):f?(d=!1,h=So(c,!0)):m?(d=!1,h=bo(c,!0)):h=[]:nu(c)||zi(c)?(h=a,zi(a)?h=gu(a):Qi(a)&&!Ji(a)||(h=fs(c))):d=!1}d&&(u.set(c,h),s(h,c,n,i,u),u.delete(c)),Xr(e,r,h)}}(e,t,u,r,Un,n,s);else{var a=n?n(_s(e,u),i,u+"",e,t,s):o;a===o&&(a=i),Xr(e,u,a)}}),Fu)}function jn(e,t){var r=e.length;if(r)return gs(t+=t<0?r:0,r)?e[t]:o}function $n(e,t,r){t=t.length?Ft(t,(function(e){return Vi(e)?function(t){return Sn(t,1===e.length?e[0]:e)}:e})):[ra];var n=-1;t=Ft(t,Yt(is()));var o=Pn(e,(function(e,r,o){var s=Ft(t,(function(t){return t(e)}));return{criteria:s,index:++n,value:e}}));return function(e,t){var n=e.length;for(e.sort((function(e,t){return function(e,t,r){for(var n=-1,o=e.criteria,s=t.criteria,i=o.length,u=r.length;++n<i;){var a=vo(o[n],s[n]);if(a)return n>=u?a:a*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}));n--;)e[n]=e[n].value;return e}(o)}function zn(e,t,r){for(var n=-1,o=t.length,s={};++n<o;){var i=t[n],u=Sn(e,i);r(u,i)&&Jn(s,Eo(i,e),u)}return s}function Vn(e,t,r,n){var o=n?jt:Ut,s=-1,i=t.length,u=e;for(e===t&&(t=Bo(t)),r&&(u=Ft(e,Yt(r)));++s<i;)for(var a=0,c=t[s],l=r?r(c):c;(a=o(u,l,a,n))>-1;)u!==e&&Ge.call(u,a,1),Ge.call(e,a,1);return e}function Hn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var o=t[r];if(r==n||o!==s){var s=o;gs(o)?Ge.call(e,o,1):ao(e,o)}}return e}function qn(e,t){return e+pt(yr()*(t-e+1))}function Wn(e,t){var r="";if(!e||t<1||t>h)return r;do{t%2&&(r+=e),(t=pt(t/2))&&(e+=e)}while(t);return r}function Gn(e,t){return Ts(vs(e,t,ra),e+"")}function Kn(e){return Kr(Uu(e))}function Yn(e,t){var r=Uu(e);return Rs(r,on(t,0,r.length))}function Jn(e,t,r,n){if(!Qi(e))return e;for(var s=-1,i=(t=Eo(t,e)).length,u=i-1,a=e;null!=a&&++s<i;){var c=Ps(t[s]),l=r;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(s!=u){var h=a[c];(l=n?n(h,c,a):o)===o&&(l=Qi(h)?h:gs(t[s+1])?[]:{})}Zr(a,c,l),a=a[c]}return e}var Xn=Br?function(e,t){return Br.set(e,t),e}:ra,Zn=et?function(e,t){return et(e,"toString",{configurable:!0,enumerable:!1,value:Qu(t),writable:!0})}:ra;function Qn(e){return Rs(Uu(e))}function eo(e,t,r){var o=-1,s=e.length;t<0&&(t=-t>s?0:s+t),(r=r>s?s:r)<0&&(r+=s),s=t>r?0:r-t>>>0,t>>>=0;for(var i=n(s);++o<s;)i[o]=e[o+t];return i}function to(e,t){var r;return ln(e,(function(e,n,o){return!(r=t(e,n,o))})),!!r}function ro(e,t,r){var n=0,o=null==e?n:e.length;if("number"==typeof t&&t==t&&o<=2147483647){for(;n<o;){var s=n+o>>>1,i=e[s];null!==i&&!uu(i)&&(r?i<=t:i<t)?n=s+1:o=s}return o}return no(e,t,ra,r)}function no(e,t,r,n){var s=0,i=null==e?0:e.length;if(0===i)return 0;for(var u=(t=r(t))!=t,a=null===t,c=uu(t),l=t===o;s<i;){var h=pt((s+i)/2),d=r(e[h]),p=d!==o,f=null===d,m=d==d,g=uu(d);if(u)var E=n||m;else E=l?m&&(n||p):a?m&&p&&(n||!f):c?m&&p&&!f&&(n||!g):!f&&!g&&(n?d<=t:d<t);E?s=h+1:i=h}return gr(i,4294967294)}function oo(e,t){for(var r=-1,n=e.length,o=0,s=[];++r<n;){var i=e[r],u=t?t(i):i;if(!r||!Ui(u,a)){var a=u;s[o++]=0===i?0:i}}return s}function so(e){return"number"==typeof e?e:uu(e)?d:+e}function io(e){if("string"==typeof e)return e;if(Vi(e))return Ft(e,io)+"";if(uu(e))return Pr?Pr.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function uo(e,t,r){var n=-1,o=Tt,s=e.length,i=!0,u=[],a=u;if(r)i=!1,o=It;else if(s>=200){var c=t?null:Go(e);if(c)return ur(c);i=!1,o=Xt,a=new qr}else a=t?[]:u;e:for(;++n<s;){var l=e[n],h=t?t(l):l;if(l=r||0!==l?l:0,i&&h==h){for(var d=a.length;d--;)if(a[d]===h)continue e;t&&a.push(h),u.push(l)}else o(a,h,r)||(a!==u&&a.push(h),u.push(l))}return u}function ao(e,t){return null==(e=Os(e,t=Eo(t,e)))||delete e[Ps(Ys(t))]}function co(e,t,r,n){return Jn(e,t,r(Sn(e,t)),n)}function lo(e,t,r,n){for(var o=e.length,s=n?o:-1;(n?s--:++s<o)&&t(e[s],s,e););return r?eo(e,n?0:s,n?s+1:o):eo(e,n?s+1:0,n?o:s)}function ho(e,t){var r=e;return r instanceof $r&&(r=r.value()),Nt(t,(function(e,t){return t.func.apply(t.thisArg,Rt([e],t.args))}),r)}function po(e,t,r){var o=e.length;if(o<2)return o?uo(e[0]):[];for(var s=-1,i=n(o);++s<o;)for(var u=e[s],a=-1;++a<o;)a!=s&&(i[s]=cn(i[s]||u,e[a],t,r));return uo(mn(i,1),t,r)}function fo(e,t,r){for(var n=-1,s=e.length,i=t.length,u={};++n<s;){var a=n<i?t[n]:o;r(u,e[n],a)}return u}function mo(e){return Wi(e)?e:[]}function go(e){return"function"==typeof e?e:ra}function Eo(e,t){return Vi(e)?e:As(e,t)?[e]:xs(Eu(e))}var Ao=Gn;function yo(e,t,r){var n=e.length;return r=r===o?n:r,!t&&r>=n?e:eo(e,t,r)}var Co=it||function(e){return ht.clearTimeout(e)};function So(e,t){if(t)return e.slice();var r=e.length,n=Ve?Ve(r):new e.constructor(r);return e.copy(n),n}function wo(e){var t=new e.constructor(e.byteLength);return new ze(t).set(new ze(e)),t}function bo(e,t){var r=t?wo(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function vo(e,t){if(e!==t){var r=e!==o,n=null===e,s=e==e,i=uu(e),u=t!==o,a=null===t,c=t==t,l=uu(t);if(!a&&!l&&!i&&e>t||i&&u&&c&&!a&&!l||n&&u&&c||!r&&c||!s)return 1;if(!n&&!i&&!l&&e<t||l&&r&&s&&!n&&!i||a&&r&&s||!u&&s||!c)return-1}return 0}function Oo(e,t,r,o){for(var s=-1,i=e.length,u=r.length,a=-1,c=t.length,l=mr(i-u,0),h=n(c+l),d=!o;++a<c;)h[a]=t[a];for(;++s<u;)(d||s<i)&&(h[r[s]]=e[s]);for(;l--;)h[a++]=e[s++];return h}function _o(e,t,r,o){for(var s=-1,i=e.length,u=-1,a=r.length,c=-1,l=t.length,h=mr(i-a,0),d=n(h+l),p=!o;++s<h;)d[s]=e[s];for(var f=s;++c<l;)d[f+c]=t[c];for(;++u<a;)(p||s<i)&&(d[f+r[u]]=e[s++]);return d}function Bo(e,t){var r=-1,o=e.length;for(t||(t=n(o));++r<o;)t[r]=e[r];return t}function Do(e,t,r,n){var s=!r;r||(r={});for(var i=-1,u=t.length;++i<u;){var a=t[i],c=n?n(r[a],e[a],a,r,e):o;c===o&&(c=e[a]),s?rn(r,a,c):Zr(r,a,c)}return r}function To(e,t){return function(r,n){var o=Vi(r)?vt:en,s=t?t():{};return o(r,e,is(n,2),s)}}function Io(e){return Gn((function(t,r){var n=-1,s=r.length,i=s>1?r[s-1]:o,u=s>2?r[2]:o;for(i=e.length>3&&"function"==typeof i?(s--,i):o,u&&Es(r[0],r[1],u)&&(i=s<3?o:i,s=1),t=ve(t);++n<s;){var a=r[n];a&&e(t,a,n,i)}return t}))}function Fo(e,t){return function(r,n){if(null==r)return r;if(!qi(r))return e(r,n);for(var o=r.length,s=t?o:-1,i=ve(r);(t?s--:++s<o)&&!1!==n(i[s],s,i););return r}}function Ro(e){return function(t,r,n){for(var o=-1,s=ve(t),i=n(t),u=i.length;u--;){var a=i[e?u:++o];if(!1===r(s[a],a,s))break}return t}}function No(e){return function(t){var r=nr(t=Eu(t))?lr(t):o,n=r?r[0]:t.charAt(0),s=r?yo(r,1).join(""):t.slice(1);return n[e]()+s}}function Mo(e){return function(t){return Nt(Ju(zu(t).replace(Je,"")),e,"")}}function xo(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=Lr(e.prototype),n=e.apply(r,t);return Qi(n)?n:r}}function Po(e){return function(t,r,n){var s=ve(t);if(!qi(t)){var i=is(r,3);t=Iu(t),r=function(e){return i(s[e],e,s)}}var u=e(t,r,n);return u>-1?s[i?t[u]:u]:o}}function ko(e){return es((function(t){var r=t.length,n=r,i=jr.prototype.thru;for(e&&t.reverse();n--;){var u=t[n];if("function"!=typeof u)throw new Be(s);if(i&&!a&&"wrapper"==os(u))var a=new jr([],!0)}for(n=a?n:r;++n<r;){var c=os(u=t[n]),l="wrapper"==c?ns(u):o;a=l&&ys(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?a[os(l[0])].apply(a,l[3]):1==u.length&&ys(u)?a[c]():a.thru(u)}return function(){var e=arguments,n=e[0];if(a&&1==e.length&&Vi(n))return a.plant(n).value();for(var o=0,s=r?t[o].apply(this,e):n;++o<r;)s=t[o].call(this,s);return s}}))}function Lo(e,t,r,s,i,u,a,l,h,d){var p=t&c,f=1&t,m=2&t,g=24&t,E=512&t,A=m?o:xo(e);return function c(){for(var y=arguments.length,C=n(y),S=y;S--;)C[S]=arguments[S];if(g)var w=ss(c),b=function(e,t){for(var r=e.length,n=0;r--;)e[r]===t&&++n;return n}(C,w);if(s&&(C=Oo(C,s,i,g)),u&&(C=_o(C,u,a,g)),y-=b,g&&y<d){var v=ir(C,w);return qo(e,t,Lo,c.placeholder,r,C,v,l,h,d-y)}var O=f?r:this,_=m?O[e]:e;return y=C.length,l?C=function(e,t){for(var r=e.length,n=gr(t.length,r),s=Bo(e);n--;){var i=t[n];e[n]=gs(i,r)?s[i]:o}return e}(C,l):E&&y>1&&C.reverse(),p&&h<y&&(C.length=h),this&&this!==ht&&this instanceof c&&(_=A||xo(_)),_.apply(O,C)}}function Uo(e,t){return function(r,n){return function(e,t,r,n){return An(e,(function(e,o,s){t(n,r(e),o,s)})),n}(r,e,t(n),{})}}function jo(e,t){return function(r,n){var s;if(r===o&&n===o)return t;if(r!==o&&(s=r),n!==o){if(s===o)return n;"string"==typeof r||"string"==typeof n?(r=io(r),n=io(n)):(r=so(r),n=so(n)),s=e(r,n)}return s}}function $o(e){return es((function(t){return t=Ft(t,Yt(is())),Gn((function(r){var n=this;return e(t,(function(e){return bt(e,n,r)}))}))}))}function zo(e,t){var r=(t=t===o?" ":io(t)).length;if(r<2)return r?Wn(t,e):t;var n=Wn(t,dt(e/cr(t)));return nr(t)?yo(lr(n),0,e).join(""):n.slice(0,e)}function Vo(e){return function(t,r,s){return s&&"number"!=typeof s&&Es(t,r,s)&&(r=s=o),t=du(t),r===o?(r=t,t=0):r=du(r),function(e,t,r,o){for(var s=-1,i=mr(dt((t-e)/(r||1)),0),u=n(i);i--;)u[o?i:++s]=e,e+=r;return u}(t,r,s=s===o?t<r?1:-1:du(s),e)}}function Ho(e){return function(t,r){return"string"==typeof t&&"string"==typeof r||(t=mu(t),r=mu(r)),e(t,r)}}function qo(e,t,r,n,s,i,u,c,l,h){var d=8&t;t|=d?a:64,4&(t&=~(d?64:a))||(t&=-4);var p=[e,t,s,d?i:o,d?u:o,d?o:i,d?o:u,c,l,h],f=r.apply(o,p);return ys(e)&&Bs(f,p),f.placeholder=n,Is(f,e,t)}function Wo(e){var t=be[e];return function(e,r){if(e=mu(e),(r=null==r?0:gr(pu(r),292))&&Pt(e)){var n=(Eu(e)+"e").split("e");return+((n=(Eu(t(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return t(e)}}var Go=vr&&1/ur(new vr([,-0]))[1]==l?function(e){return new vr(e)}:ua;function Ko(e){return function(t){var r=ds(t);return r==w?or(t):r==B?ar(t):function(e,t){return Ft(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Yo(e,t,r,i,l,h,d,p){var f=2&t;if(!f&&"function"!=typeof e)throw new Be(s);var m=i?i.length:0;if(m||(t&=-97,i=l=o),d=d===o?d:mr(pu(d),0),p=p===o?p:pu(p),m-=l?l.length:0,64&t){var g=i,E=l;i=l=o}var A=f?o:ns(e),y=[e,t,r,i,l,g,E,h,d,p];if(A&&function(e,t){var r=e[1],n=t[1],o=r|n,s=o<131,i=n==c&&8==r||n==c&&256==r&&e[7].length<=t[8]||384==n&&t[7].length<=t[8]&&8==r;if(!s&&!i)return e;1&n&&(e[2]=t[2],o|=1&r?0:4);var a=t[3];if(a){var l=e[3];e[3]=l?Oo(l,a,t[4]):a,e[4]=l?ir(e[3],u):t[4]}(a=t[5])&&(l=e[5],e[5]=l?_o(l,a,t[6]):a,e[6]=l?ir(e[5],u):t[6]),(a=t[7])&&(e[7]=a),n&c&&(e[8]=null==e[8]?t[8]:gr(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=o}(y,A),e=y[0],t=y[1],r=y[2],i=y[3],l=y[4],!(p=y[9]=y[9]===o?f?0:e.length:mr(y[9]-m,0))&&24&t&&(t&=-25),t&&1!=t)C=8==t||16==t?function(e,t,r){var s=xo(e);return function i(){for(var u=arguments.length,a=n(u),c=u,l=ss(i);c--;)a[c]=arguments[c];var h=u<3&&a[0]!==l&&a[u-1]!==l?[]:ir(a,l);return(u-=h.length)<r?qo(e,t,Lo,i.placeholder,o,a,h,o,o,r-u):bt(this&&this!==ht&&this instanceof i?s:e,this,a)}}(e,t,p):t!=a&&33!=t||l.length?Lo.apply(o,y):function(e,t,r,o){var s=1&t,i=xo(e);return function t(){for(var u=-1,a=arguments.length,c=-1,l=o.length,h=n(l+a),d=this&&this!==ht&&this instanceof t?i:e;++c<l;)h[c]=o[c];for(;a--;)h[c++]=arguments[++u];return bt(d,s?r:this,h)}}(e,t,r,i);else var C=function(e,t,r){var n=1&t,o=xo(e);return function t(){return(this&&this!==ht&&this instanceof t?o:e).apply(n?r:this,arguments)}}(e,t,r);return Is((A?Xn:Bs)(C,y),e,t)}function Jo(e,t,r,n){return e===o||Ui(e,Ie[r])&&!Ne.call(n,r)?t:e}function Xo(e,t,r,n,s,i){return Qi(e)&&Qi(t)&&(i.set(t,e),Un(e,t,o,Xo,i),i.delete(t)),e}function Zo(e){return nu(e)?o:e}function Qo(e,t,r,n,s,i){var u=1&r,a=e.length,c=t.length;if(a!=c&&!(u&&c>a))return!1;var l=i.get(e),h=i.get(t);if(l&&h)return l==t&&h==e;var d=-1,p=!0,f=2&r?new qr:o;for(i.set(e,t),i.set(t,e);++d<a;){var m=e[d],g=t[d];if(n)var E=u?n(g,m,d,t,e,i):n(m,g,d,e,t,i);if(E!==o){if(E)continue;p=!1;break}if(f){if(!xt(t,(function(e,t){if(!Xt(f,t)&&(m===e||s(m,e,r,n,i)))return f.push(t)}))){p=!1;break}}else if(m!==g&&!s(m,g,r,n,i)){p=!1;break}}return i.delete(e),i.delete(t),p}function es(e){return Ts(vs(e,o,Hs),e+"")}function ts(e){return wn(e,Iu,ls)}function rs(e){return wn(e,Fu,hs)}var ns=Br?function(e){return Br.get(e)}:ua;function os(e){for(var t=e.name+"",r=Dr[t],n=Ne.call(Dr,t)?r.length:0;n--;){var o=r[n],s=o.func;if(null==s||s==e)return o.name}return t}function ss(e){return(Ne.call(kr,"placeholder")?kr:e).placeholder}function is(){var e=kr.iteratee||na;return e=e===na?Nn:e,arguments.length?e(arguments[0],arguments[1]):e}function us(e,t){var r,n,o=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?o["string"==typeof t?"string":"hash"]:o.map}function as(e){for(var t=Iu(e),r=t.length;r--;){var n=t[r],o=e[n];t[r]=[n,o,ws(o)]}return t}function cs(e,t){var r=function(e,t){return null==e?o:e[t]}(e,t);return Rn(r)?r:o}var ls=mt?function(e){return null==e?[]:(e=ve(e),Dt(mt(e),(function(t){return We.call(e,t)})))}:fa,hs=mt?function(e){for(var t=[];e;)Rt(t,ls(e)),e=He(e);return t}:fa,ds=bn;function ps(e,t,r){for(var n=-1,o=(t=Eo(t,e)).length,s=!1;++n<o;){var i=Ps(t[n]);if(!(s=null!=e&&r(e,i)))break;e=e[i]}return s||++n!=o?s:!!(o=null==e?0:e.length)&&Zi(o)&&gs(i,o)&&(Vi(e)||zi(e))}function fs(e){return"function"!=typeof e.constructor||Ss(e)?{}:Lr(He(e))}function ms(e){return Vi(e)||zi(e)||!!(Ke&&e&&e[Ke])}function gs(e,t){var r=typeof e;return!!(t=null==t?h:t)&&("number"==r||"symbol"!=r&&Ee.test(e))&&e>-1&&e%1==0&&e<t}function Es(e,t,r){if(!Qi(r))return!1;var n=typeof t;return!!("number"==n?qi(r)&&gs(t,r.length):"string"==n&&t in r)&&Ui(r[t],e)}function As(e,t){if(Vi(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!uu(e))||Q.test(e)||!Z.test(e)||null!=t&&e in ve(t)}function ys(e){var t=os(e),r=kr[t];if("function"!=typeof r||!(t in $r.prototype))return!1;if(e===r)return!0;var n=ns(r);return!!n&&e===n[0]}(Sr&&ds(new Sr(new ArrayBuffer(1)))!=R||wr&&ds(new wr)!=w||br&&ds(br.resolve())!=O||vr&&ds(new vr)!=B||Or&&ds(new Or)!=I)&&(ds=function(e){var t=bn(e),r=t==v?e.constructor:o,n=r?ks(r):"";if(n)switch(n){case Tr:return R;case Ir:return w;case Fr:return O;case Rr:return B;case Nr:return I}return t});var Cs=Fe?Ji:ma;function Ss(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ie)}function ws(e){return e==e&&!Qi(e)}function bs(e,t){return function(r){return null!=r&&r[e]===t&&(t!==o||e in ve(r))}}function vs(e,t,r){return t=mr(t===o?e.length-1:t,0),function(){for(var o=arguments,s=-1,i=mr(o.length-t,0),u=n(i);++s<i;)u[s]=o[t+s];s=-1;for(var a=n(t+1);++s<t;)a[s]=o[s];return a[t]=r(u),bt(e,this,a)}}function Os(e,t){return t.length<2?e:Sn(e,eo(t,0,-1))}function _s(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Bs=Fs(Xn),Ds=lt||function(e,t){return ht.setTimeout(e,t)},Ts=Fs(Zn);function Is(e,t,r){var n=t+"";return Ts(e,function(e,t){var r=t.length;if(!r)return e;var n=r-1;return t[n]=(r>1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(se,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Ot(f,(function(r){var n="_."+r[0];t&r[1]&&!Tt(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(ie);return t?t[1].split(ue):[]}(n),r)))}function Fs(e){var t=0,r=0;return function(){var n=Er(),s=16-(n-r);if(r=n,s>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(o,arguments)}}function Rs(e,t){var r=-1,n=e.length,s=n-1;for(t=t===o?n:t;++r<t;){var i=qn(r,s),u=e[i];e[i]=e[r],e[r]=u}return e.length=t,e}var Ns,Ms,xs=(Ns=Ni((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ee,(function(e,r,n,o){t.push(n?o.replace(le,"$1"):r||e)})),t}),(function(e){return 500===Ms.size&&Ms.clear(),e})),Ms=Ns.cache,Ns);function Ps(e){if("string"==typeof e||uu(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ks(e){if(null!=e){try{return Re.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ls(e){if(e instanceof $r)return e.clone();var t=new jr(e.__wrapped__,e.__chain__);return t.__actions__=Bo(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Us=Gn((function(e,t){return Wi(e)?cn(e,mn(t,1,Wi,!0)):[]})),js=Gn((function(e,t){var r=Ys(t);return Wi(r)&&(r=o),Wi(e)?cn(e,mn(t,1,Wi,!0),is(r,2)):[]})),$s=Gn((function(e,t){var r=Ys(t);return Wi(r)&&(r=o),Wi(e)?cn(e,mn(t,1,Wi,!0),o,r):[]}));function zs(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=null==r?0:pu(r);return o<0&&(o=mr(n+o,0)),Lt(e,is(t,3),o)}function Vs(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var s=n-1;return r!==o&&(s=pu(r),s=r<0?mr(n+s,0):gr(s,n-1)),Lt(e,is(t,3),s,!0)}function Hs(e){return null!=e&&e.length?mn(e,1):[]}function qs(e){return e&&e.length?e[0]:o}var Ws=Gn((function(e){var t=Ft(e,mo);return t.length&&t[0]===e[0]?Bn(t):[]})),Gs=Gn((function(e){var t=Ys(e),r=Ft(e,mo);return t===Ys(r)?t=o:r.pop(),r.length&&r[0]===e[0]?Bn(r,is(t,2)):[]})),Ks=Gn((function(e){var t=Ys(e),r=Ft(e,mo);return(t="function"==typeof t?t:o)&&r.pop(),r.length&&r[0]===e[0]?Bn(r,o,t):[]}));function Ys(e){var t=null==e?0:e.length;return t?e[t-1]:o}var Js=Gn(Xs);function Xs(e,t){return e&&e.length&&t&&t.length?Vn(e,t):e}var Zs=es((function(e,t){var r=null==e?0:e.length,n=nn(e,t);return Hn(e,Ft(t,(function(e){return gs(e,r)?+e:e})).sort(vo)),n}));function Qs(e){return null==e?e:Cr.call(e)}var ei=Gn((function(e){return uo(mn(e,1,Wi,!0))})),ti=Gn((function(e){var t=Ys(e);return Wi(t)&&(t=o),uo(mn(e,1,Wi,!0),is(t,2))})),ri=Gn((function(e){var t=Ys(e);return t="function"==typeof t?t:o,uo(mn(e,1,Wi,!0),o,t)}));function ni(e){if(!e||!e.length)return[];var t=0;return e=Dt(e,(function(e){if(Wi(e))return t=mr(e.length,t),!0})),Gt(t,(function(t){return Ft(e,Vt(t))}))}function oi(e,t){if(!e||!e.length)return[];var r=ni(e);return null==t?r:Ft(r,(function(e){return bt(t,o,e)}))}var si=Gn((function(e,t){return Wi(e)?cn(e,t):[]})),ii=Gn((function(e){return po(Dt(e,Wi))})),ui=Gn((function(e){var t=Ys(e);return Wi(t)&&(t=o),po(Dt(e,Wi),is(t,2))})),ai=Gn((function(e){var t=Ys(e);return t="function"==typeof t?t:o,po(Dt(e,Wi),o,t)})),ci=Gn(ni),li=Gn((function(e){var t=e.length,r=t>1?e[t-1]:o;return r="function"==typeof r?(e.pop(),r):o,oi(e,r)}));function hi(e){var t=kr(e);return t.__chain__=!0,t}function di(e,t){return t(e)}var pi=es((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,s=function(t){return nn(t,e)};return!(t>1||this.__actions__.length)&&n instanceof $r&&gs(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:di,args:[s],thisArg:o}),new jr(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(o),e}))):this.thru(s)})),fi=To((function(e,t,r){Ne.call(e,r)?++e[r]:rn(e,r,1)})),mi=Po(zs),gi=Po(Vs);function Ei(e,t){return(Vi(e)?Ot:ln)(e,is(t,3))}function Ai(e,t){return(Vi(e)?_t:hn)(e,is(t,3))}var yi=To((function(e,t,r){Ne.call(e,r)?e[r].push(t):rn(e,r,[t])})),Ci=Gn((function(e,t,r){var o=-1,s="function"==typeof t,i=qi(e)?n(e.length):[];return ln(e,(function(e){i[++o]=s?bt(t,e,r):Dn(e,t,r)})),i})),Si=To((function(e,t,r){rn(e,r,t)}));function wi(e,t){return(Vi(e)?Ft:Pn)(e,is(t,3))}var bi=To((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]})),vi=Gn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&Es(e,t[0],t[1])?t=[]:r>2&&Es(t[0],t[1],t[2])&&(t=[t[0]]),$n(e,mn(t,1),[])})),Oi=ct||function(){return ht.Date.now()};function _i(e,t,r){return t=r?o:t,t=e&&null==t?e.length:t,Yo(e,c,o,o,o,o,t)}function Bi(e,t){var r;if("function"!=typeof t)throw new Be(s);return e=pu(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=o),r}}var Di=Gn((function(e,t,r){var n=1;if(r.length){var o=ir(r,ss(Di));n|=a}return Yo(e,n,t,r,o)})),Ti=Gn((function(e,t,r){var n=3;if(r.length){var o=ir(r,ss(Ti));n|=a}return Yo(t,n,e,r,o)}));function Ii(e,t,r){var n,i,u,a,c,l,h=0,d=!1,p=!1,f=!0;if("function"!=typeof e)throw new Be(s);function m(t){var r=n,s=i;return n=i=o,h=t,a=e.apply(s,r)}function g(e){var r=e-l;return l===o||r>=t||r<0||p&&e-h>=u}function E(){var e=Oi();if(g(e))return A(e);c=Ds(E,function(e){var r=t-(e-l);return p?gr(r,u-(e-h)):r}(e))}function A(e){return c=o,f&&n?m(e):(n=i=o,a)}function y(){var e=Oi(),r=g(e);if(n=arguments,i=this,l=e,r){if(c===o)return function(e){return h=e,c=Ds(E,t),d?m(e):a}(l);if(p)return Co(c),c=Ds(E,t),m(l)}return c===o&&(c=Ds(E,t)),a}return t=mu(t)||0,Qi(r)&&(d=!!r.leading,u=(p="maxWait"in r)?mr(mu(r.maxWait)||0,t):u,f="trailing"in r?!!r.trailing:f),y.cancel=function(){c!==o&&Co(c),h=0,n=l=i=c=o},y.flush=function(){return c===o?a:A(Oi())},y}var Fi=Gn((function(e,t){return an(e,1,t)})),Ri=Gn((function(e,t,r){return an(e,mu(t)||0,r)}));function Ni(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Be(s);var r=function(){var n=arguments,o=t?t.apply(this,n):n[0],s=r.cache;if(s.has(o))return s.get(o);var i=e.apply(this,n);return r.cache=s.set(o,i)||s,i};return r.cache=new(Ni.Cache||Hr),r}function Mi(e){if("function"!=typeof e)throw new Be(s);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ni.Cache=Hr;var xi=Ao((function(e,t){var r=(t=1==t.length&&Vi(t[0])?Ft(t[0],Yt(is())):Ft(mn(t,1),Yt(is()))).length;return Gn((function(n){for(var o=-1,s=gr(n.length,r);++o<s;)n[o]=t[o].call(this,n[o]);return bt(e,this,n)}))})),Pi=Gn((function(e,t){var r=ir(t,ss(Pi));return Yo(e,a,o,t,r)})),ki=Gn((function(e,t){var r=ir(t,ss(ki));return Yo(e,64,o,t,r)})),Li=es((function(e,t){return Yo(e,256,o,o,o,t)}));function Ui(e,t){return e===t||e!=e&&t!=t}var ji=Ho(vn),$i=Ho((function(e,t){return e>=t})),zi=Tn(function(){return arguments}())?Tn:function(e){return eu(e)&&Ne.call(e,"callee")&&!We.call(e,"callee")},Vi=n.isArray,Hi=Et?Yt(Et):function(e){return eu(e)&&bn(e)==F};function qi(e){return null!=e&&Zi(e.length)&&!Ji(e)}function Wi(e){return eu(e)&&qi(e)}var Gi=gt||ma,Ki=At?Yt(At):function(e){return eu(e)&&bn(e)==A};function Yi(e){if(!eu(e))return!1;var t=bn(e);return t==y||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!nu(e)}function Ji(e){if(!Qi(e))return!1;var t=bn(e);return t==C||t==S||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Xi(e){return"number"==typeof e&&e==pu(e)}function Zi(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=h}function Qi(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function eu(e){return null!=e&&"object"==typeof e}var tu=yt?Yt(yt):function(e){return eu(e)&&ds(e)==w};function ru(e){return"number"==typeof e||eu(e)&&bn(e)==b}function nu(e){if(!eu(e)||bn(e)!=v)return!1;var t=He(e);if(null===t)return!0;var r=Ne.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Re.call(r)==ke}var ou=Ct?Yt(Ct):function(e){return eu(e)&&bn(e)==_},su=St?Yt(St):function(e){return eu(e)&&ds(e)==B};function iu(e){return"string"==typeof e||!Vi(e)&&eu(e)&&bn(e)==D}function uu(e){return"symbol"==typeof e||eu(e)&&bn(e)==T}var au=wt?Yt(wt):function(e){return eu(e)&&Zi(e.length)&&!!ot[bn(e)]},cu=Ho(xn),lu=Ho((function(e,t){return e<=t}));function hu(e){if(!e)return[];if(qi(e))return iu(e)?lr(e):Bo(e);if(Ye&&e[Ye])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Ye]());var t=ds(e);return(t==w?or:t==B?ur:Uu)(e)}function du(e){return e?(e=mu(e))===l||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function pu(e){var t=du(e),r=t%1;return t==t?r?t-r:t:0}function fu(e){return e?on(pu(e),0,p):0}function mu(e){if("number"==typeof e)return e;if(uu(e))return d;if(Qi(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Qi(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Kt(e);var r=fe.test(e);return r||ge.test(e)?at(e.slice(2),r?2:8):pe.test(e)?d:+e}function gu(e){return Do(e,Fu(e))}function Eu(e){return null==e?"":io(e)}var Au=Io((function(e,t){if(Ss(t)||qi(t))Do(t,Iu(t),e);else for(var r in t)Ne.call(t,r)&&Zr(e,r,t[r])})),yu=Io((function(e,t){Do(t,Fu(t),e)})),Cu=Io((function(e,t,r,n){Do(t,Fu(t),e,n)})),Su=Io((function(e,t,r,n){Do(t,Iu(t),e,n)})),wu=es(nn),bu=Gn((function(e,t){e=ve(e);var r=-1,n=t.length,s=n>2?t[2]:o;for(s&&Es(t[0],t[1],s)&&(n=1);++r<n;)for(var i=t[r],u=Fu(i),a=-1,c=u.length;++a<c;){var l=u[a],h=e[l];(h===o||Ui(h,Ie[l])&&!Ne.call(e,l))&&(e[l]=i[l])}return e})),vu=Gn((function(e){return e.push(o,Xo),bt(Nu,o,e)}));function Ou(e,t,r){var n=null==e?o:Sn(e,t);return n===o?r:n}function _u(e,t){return null!=e&&ps(e,t,_n)}var Bu=Uo((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Pe.call(t)),e[t]=r}),Qu(ra)),Du=Uo((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=Pe.call(t)),Ne.call(e,t)?e[t].push(r):e[t]=[r]}),is),Tu=Gn(Dn);function Iu(e){return qi(e)?Gr(e):Mn(e)}function Fu(e){return qi(e)?Gr(e,!0):function(e){if(!Qi(e))return function(e){var t=[];if(null!=e)for(var r in ve(e))t.push(r);return t}(e);var t=Ss(e),r=[];for(var n in e)("constructor"!=n||!t&&Ne.call(e,n))&&r.push(n);return r}(e)}var Ru=Io((function(e,t,r){Un(e,t,r)})),Nu=Io((function(e,t,r,n){Un(e,t,r,n)})),Mu=es((function(e,t){var r={};if(null==e)return r;var n=!1;t=Ft(t,(function(t){return t=Eo(t,e),n||(n=t.length>1),t})),Do(e,rs(e),r),n&&(r=sn(r,7,Zo));for(var o=t.length;o--;)ao(r,t[o]);return r})),xu=es((function(e,t){return null==e?{}:function(e,t){return zn(e,t,(function(t,r){return _u(e,r)}))}(e,t)}));function Pu(e,t){if(null==e)return{};var r=Ft(rs(e),(function(e){return[e]}));return t=is(t),zn(e,r,(function(e,r){return t(e,r[0])}))}var ku=Ko(Iu),Lu=Ko(Fu);function Uu(e){return null==e?[]:Jt(e,Iu(e))}var ju=Mo((function(e,t,r){return t=t.toLowerCase(),e+(r?$u(t):t)}));function $u(e){return Yu(Eu(e).toLowerCase())}function zu(e){return(e=Eu(e))&&e.replace(Ae,er).replace(Xe,"")}var Vu=Mo((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),Hu=Mo((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),qu=No("toLowerCase"),Wu=Mo((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()})),Gu=Mo((function(e,t,r){return e+(r?" ":"")+Yu(t)})),Ku=Mo((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Yu=No("toUpperCase");function Ju(e,t,r){return e=Eu(e),(t=r?o:t)===o?function(e){return tt.test(e)}(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.match(ae)||[]}(e):e.match(t)||[]}var Xu=Gn((function(e,t){try{return bt(e,o,t)}catch(e){return Yi(e)?e:new Se(e)}})),Zu=es((function(e,t){return Ot(t,(function(t){t=Ps(t),rn(e,t,Di(e[t],e))})),e}));function Qu(e){return function(){return e}}var ea=ko(),ta=ko(!0);function ra(e){return e}function na(e){return Nn("function"==typeof e?e:sn(e,1))}var oa=Gn((function(e,t){return function(r){return Dn(r,e,t)}})),sa=Gn((function(e,t){return function(r){return Dn(e,r,t)}}));function ia(e,t,r){var n=Iu(t),o=Cn(t,n);null!=r||Qi(t)&&(o.length||!n.length)||(r=t,t=e,e=this,o=Cn(t,Iu(t)));var s=!(Qi(r)&&"chain"in r&&!r.chain),i=Ji(e);return Ot(o,(function(r){var n=t[r];e[r]=n,i&&(e.prototype[r]=function(){var t=this.__chain__;if(s||t){var r=e(this.__wrapped__);return(r.__actions__=Bo(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Rt([this.value()],arguments))})})),e}function ua(){}var aa=$o(Ft),ca=$o(Bt),la=$o(xt);function ha(e){return As(e)?Vt(Ps(e)):function(e){return function(t){return Sn(t,e)}}(e)}var da=Vo(),pa=Vo(!0);function fa(){return[]}function ma(){return!1}var ga,Ea=jo((function(e,t){return e+t}),0),Aa=Wo("ceil"),ya=jo((function(e,t){return e/t}),1),Ca=Wo("floor"),Sa=jo((function(e,t){return e*t}),1),wa=Wo("round"),ba=jo((function(e,t){return e-t}),0);return kr.after=function(e,t){if("function"!=typeof t)throw new Be(s);return e=pu(e),function(){if(--e<1)return t.apply(this,arguments)}},kr.ary=_i,kr.assign=Au,kr.assignIn=yu,kr.assignInWith=Cu,kr.assignWith=Su,kr.at=wu,kr.before=Bi,kr.bind=Di,kr.bindAll=Zu,kr.bindKey=Ti,kr.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Vi(e)?e:[e]},kr.chain=hi,kr.chunk=function(e,t,r){t=(r?Es(e,t,r):t===o)?1:mr(pu(t),0);var s=null==e?0:e.length;if(!s||t<1)return[];for(var i=0,u=0,a=n(dt(s/t));i<s;)a[u++]=eo(e,i,i+=t);return a},kr.compact=function(e){for(var t=-1,r=null==e?0:e.length,n=0,o=[];++t<r;){var s=e[t];s&&(o[n++]=s)}return o},kr.concat=function(){var e=arguments.length;if(!e)return[];for(var t=n(e-1),r=arguments[0],o=e;o--;)t[o-1]=arguments[o];return Rt(Vi(r)?Bo(r):[r],mn(t,1))},kr.cond=function(e){var t=null==e?0:e.length,r=is();return e=t?Ft(e,(function(e){if("function"!=typeof e[1])throw new Be(s);return[r(e[0]),e[1]]})):[],Gn((function(r){for(var n=-1;++n<t;){var o=e[n];if(bt(o[0],this,r))return bt(o[1],this,r)}}))},kr.conforms=function(e){return function(e){var t=Iu(e);return function(r){return un(r,e,t)}}(sn(e,1))},kr.constant=Qu,kr.countBy=fi,kr.create=function(e,t){var r=Lr(e);return null==t?r:tn(r,t)},kr.curry=function e(t,r,n){var s=Yo(t,8,o,o,o,o,o,r=n?o:r);return s.placeholder=e.placeholder,s},kr.curryRight=function e(t,r,n){var s=Yo(t,16,o,o,o,o,o,r=n?o:r);return s.placeholder=e.placeholder,s},kr.debounce=Ii,kr.defaults=bu,kr.defaultsDeep=vu,kr.defer=Fi,kr.delay=Ri,kr.difference=Us,kr.differenceBy=js,kr.differenceWith=$s,kr.drop=function(e,t,r){var n=null==e?0:e.length;return n?eo(e,(t=r||t===o?1:pu(t))<0?0:t,n):[]},kr.dropRight=function(e,t,r){var n=null==e?0:e.length;return n?eo(e,0,(t=n-(t=r||t===o?1:pu(t)))<0?0:t):[]},kr.dropRightWhile=function(e,t){return e&&e.length?lo(e,is(t,3),!0,!0):[]},kr.dropWhile=function(e,t){return e&&e.length?lo(e,is(t,3),!0):[]},kr.fill=function(e,t,r,n){var s=null==e?0:e.length;return s?(r&&"number"!=typeof r&&Es(e,t,r)&&(r=0,n=s),function(e,t,r,n){var s=e.length;for((r=pu(r))<0&&(r=-r>s?0:s+r),(n=n===o||n>s?s:pu(n))<0&&(n+=s),n=r>n?0:fu(n);r<n;)e[r++]=t;return e}(e,t,r,n)):[]},kr.filter=function(e,t){return(Vi(e)?Dt:fn)(e,is(t,3))},kr.flatMap=function(e,t){return mn(wi(e,t),1)},kr.flatMapDeep=function(e,t){return mn(wi(e,t),l)},kr.flatMapDepth=function(e,t,r){return r=r===o?1:pu(r),mn(wi(e,t),r)},kr.flatten=Hs,kr.flattenDeep=function(e){return null!=e&&e.length?mn(e,l):[]},kr.flattenDepth=function(e,t){return null!=e&&e.length?mn(e,t=t===o?1:pu(t)):[]},kr.flip=function(e){return Yo(e,512)},kr.flow=ea,kr.flowRight=ta,kr.fromPairs=function(e){for(var t=-1,r=null==e?0:e.length,n={};++t<r;){var o=e[t];n[o[0]]=o[1]}return n},kr.functions=function(e){return null==e?[]:Cn(e,Iu(e))},kr.functionsIn=function(e){return null==e?[]:Cn(e,Fu(e))},kr.groupBy=yi,kr.initial=function(e){return null!=e&&e.length?eo(e,0,-1):[]},kr.intersection=Ws,kr.intersectionBy=Gs,kr.intersectionWith=Ks,kr.invert=Bu,kr.invertBy=Du,kr.invokeMap=Ci,kr.iteratee=na,kr.keyBy=Si,kr.keys=Iu,kr.keysIn=Fu,kr.map=wi,kr.mapKeys=function(e,t){var r={};return t=is(t,3),An(e,(function(e,n,o){rn(r,t(e,n,o),e)})),r},kr.mapValues=function(e,t){var r={};return t=is(t,3),An(e,(function(e,n,o){rn(r,n,t(e,n,o))})),r},kr.matches=function(e){return kn(sn(e,1))},kr.matchesProperty=function(e,t){return Ln(e,sn(t,1))},kr.memoize=Ni,kr.merge=Ru,kr.mergeWith=Nu,kr.method=oa,kr.methodOf=sa,kr.mixin=ia,kr.negate=Mi,kr.nthArg=function(e){return e=pu(e),Gn((function(t){return jn(t,e)}))},kr.omit=Mu,kr.omitBy=function(e,t){return Pu(e,Mi(is(t)))},kr.once=function(e){return Bi(2,e)},kr.orderBy=function(e,t,r,n){return null==e?[]:(Vi(t)||(t=null==t?[]:[t]),Vi(r=n?o:r)||(r=null==r?[]:[r]),$n(e,t,r))},kr.over=aa,kr.overArgs=xi,kr.overEvery=ca,kr.overSome=la,kr.partial=Pi,kr.partialRight=ki,kr.partition=bi,kr.pick=xu,kr.pickBy=Pu,kr.property=ha,kr.propertyOf=function(e){return function(t){return null==e?o:Sn(e,t)}},kr.pull=Js,kr.pullAll=Xs,kr.pullAllBy=function(e,t,r){return e&&e.length&&t&&t.length?Vn(e,t,is(r,2)):e},kr.pullAllWith=function(e,t,r){return e&&e.length&&t&&t.length?Vn(e,t,o,r):e},kr.pullAt=Zs,kr.range=da,kr.rangeRight=pa,kr.rearg=Li,kr.reject=function(e,t){return(Vi(e)?Dt:fn)(e,Mi(is(t,3)))},kr.remove=function(e,t){var r=[];if(!e||!e.length)return r;var n=-1,o=[],s=e.length;for(t=is(t,3);++n<s;){var i=e[n];t(i,n,e)&&(r.push(i),o.push(n))}return Hn(e,o),r},kr.rest=function(e,t){if("function"!=typeof e)throw new Be(s);return Gn(e,t=t===o?t:pu(t))},kr.reverse=Qs,kr.sampleSize=function(e,t,r){return t=(r?Es(e,t,r):t===o)?1:pu(t),(Vi(e)?Yr:Yn)(e,t)},kr.set=function(e,t,r){return null==e?e:Jn(e,t,r)},kr.setWith=function(e,t,r,n){return n="function"==typeof n?n:o,null==e?e:Jn(e,t,r,n)},kr.shuffle=function(e){return(Vi(e)?Jr:Qn)(e)},kr.slice=function(e,t,r){var n=null==e?0:e.length;return n?(r&&"number"!=typeof r&&Es(e,t,r)?(t=0,r=n):(t=null==t?0:pu(t),r=r===o?n:pu(r)),eo(e,t,r)):[]},kr.sortBy=vi,kr.sortedUniq=function(e){return e&&e.length?oo(e):[]},kr.sortedUniqBy=function(e,t){return e&&e.length?oo(e,is(t,2)):[]},kr.split=function(e,t,r){return r&&"number"!=typeof r&&Es(e,t,r)&&(t=r=o),(r=r===o?p:r>>>0)?(e=Eu(e))&&("string"==typeof t||null!=t&&!ou(t))&&!(t=io(t))&&nr(e)?yo(lr(e),0,r):e.split(t,r):[]},kr.spread=function(e,t){if("function"!=typeof e)throw new Be(s);return t=null==t?0:mr(pu(t),0),Gn((function(r){var n=r[t],o=yo(r,0,t);return n&&Rt(o,n),bt(e,this,o)}))},kr.tail=function(e){var t=null==e?0:e.length;return t?eo(e,1,t):[]},kr.take=function(e,t,r){return e&&e.length?eo(e,0,(t=r||t===o?1:pu(t))<0?0:t):[]},kr.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?eo(e,(t=n-(t=r||t===o?1:pu(t)))<0?0:t,n):[]},kr.takeRightWhile=function(e,t){return e&&e.length?lo(e,is(t,3),!1,!0):[]},kr.takeWhile=function(e,t){return e&&e.length?lo(e,is(t,3)):[]},kr.tap=function(e,t){return t(e),e},kr.throttle=function(e,t,r){var n=!0,o=!0;if("function"!=typeof e)throw new Be(s);return Qi(r)&&(n="leading"in r?!!r.leading:n,o="trailing"in r?!!r.trailing:o),Ii(e,t,{leading:n,maxWait:t,trailing:o})},kr.thru=di,kr.toArray=hu,kr.toPairs=ku,kr.toPairsIn=Lu,kr.toPath=function(e){return Vi(e)?Ft(e,Ps):uu(e)?[e]:Bo(xs(Eu(e)))},kr.toPlainObject=gu,kr.transform=function(e,t,r){var n=Vi(e),o=n||Gi(e)||au(e);if(t=is(t,4),null==r){var s=e&&e.constructor;r=o?n?new s:[]:Qi(e)&&Ji(s)?Lr(He(e)):{}}return(o?Ot:An)(e,(function(e,n,o){return t(r,e,n,o)})),r},kr.unary=function(e){return _i(e,1)},kr.union=ei,kr.unionBy=ti,kr.unionWith=ri,kr.uniq=function(e){return e&&e.length?uo(e):[]},kr.uniqBy=function(e,t){return e&&e.length?uo(e,is(t,2)):[]},kr.uniqWith=function(e,t){return t="function"==typeof t?t:o,e&&e.length?uo(e,o,t):[]},kr.unset=function(e,t){return null==e||ao(e,t)},kr.unzip=ni,kr.unzipWith=oi,kr.update=function(e,t,r){return null==e?e:co(e,t,go(r))},kr.updateWith=function(e,t,r,n){return n="function"==typeof n?n:o,null==e?e:co(e,t,go(r),n)},kr.values=Uu,kr.valuesIn=function(e){return null==e?[]:Jt(e,Fu(e))},kr.without=si,kr.words=Ju,kr.wrap=function(e,t){return Pi(go(t),e)},kr.xor=ii,kr.xorBy=ui,kr.xorWith=ai,kr.zip=ci,kr.zipObject=function(e,t){return fo(e||[],t||[],Zr)},kr.zipObjectDeep=function(e,t){return fo(e||[],t||[],Jn)},kr.zipWith=li,kr.entries=ku,kr.entriesIn=Lu,kr.extend=yu,kr.extendWith=Cu,ia(kr,kr),kr.add=Ea,kr.attempt=Xu,kr.camelCase=ju,kr.capitalize=$u,kr.ceil=Aa,kr.clamp=function(e,t,r){return r===o&&(r=t,t=o),r!==o&&(r=(r=mu(r))==r?r:0),t!==o&&(t=(t=mu(t))==t?t:0),on(mu(e),t,r)},kr.clone=function(e){return sn(e,4)},kr.cloneDeep=function(e){return sn(e,5)},kr.cloneDeepWith=function(e,t){return sn(e,5,t="function"==typeof t?t:o)},kr.cloneWith=function(e,t){return sn(e,4,t="function"==typeof t?t:o)},kr.conformsTo=function(e,t){return null==t||un(e,t,Iu(t))},kr.deburr=zu,kr.defaultTo=function(e,t){return null==e||e!=e?t:e},kr.divide=ya,kr.endsWith=function(e,t,r){e=Eu(e),t=io(t);var n=e.length,s=r=r===o?n:on(pu(r),0,n);return(r-=t.length)>=0&&e.slice(r,s)==t},kr.eq=Ui,kr.escape=function(e){return(e=Eu(e))&&K.test(e)?e.replace(W,tr):e},kr.escapeRegExp=function(e){return(e=Eu(e))&&re.test(e)?e.replace(te,"\\$&"):e},kr.every=function(e,t,r){var n=Vi(e)?Bt:dn;return r&&Es(e,t,r)&&(t=o),n(e,is(t,3))},kr.find=mi,kr.findIndex=zs,kr.findKey=function(e,t){return kt(e,is(t,3),An)},kr.findLast=gi,kr.findLastIndex=Vs,kr.findLastKey=function(e,t){return kt(e,is(t,3),yn)},kr.floor=Ca,kr.forEach=Ei,kr.forEachRight=Ai,kr.forIn=function(e,t){return null==e?e:gn(e,is(t,3),Fu)},kr.forInRight=function(e,t){return null==e?e:En(e,is(t,3),Fu)},kr.forOwn=function(e,t){return e&&An(e,is(t,3))},kr.forOwnRight=function(e,t){return e&&yn(e,is(t,3))},kr.get=Ou,kr.gt=ji,kr.gte=$i,kr.has=function(e,t){return null!=e&&ps(e,t,On)},kr.hasIn=_u,kr.head=qs,kr.identity=ra,kr.includes=function(e,t,r,n){e=qi(e)?e:Uu(e),r=r&&!n?pu(r):0;var o=e.length;return r<0&&(r=mr(o+r,0)),iu(e)?r<=o&&e.indexOf(t,r)>-1:!!o&&Ut(e,t,r)>-1},kr.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=null==r?0:pu(r);return o<0&&(o=mr(n+o,0)),Ut(e,t,o)},kr.inRange=function(e,t,r){return t=du(t),r===o?(r=t,t=0):r=du(r),function(e,t,r){return e>=gr(t,r)&&e<mr(t,r)}(e=mu(e),t,r)},kr.invoke=Tu,kr.isArguments=zi,kr.isArray=Vi,kr.isArrayBuffer=Hi,kr.isArrayLike=qi,kr.isArrayLikeObject=Wi,kr.isBoolean=function(e){return!0===e||!1===e||eu(e)&&bn(e)==E},kr.isBuffer=Gi,kr.isDate=Ki,kr.isElement=function(e){return eu(e)&&1===e.nodeType&&!nu(e)},kr.isEmpty=function(e){if(null==e)return!0;if(qi(e)&&(Vi(e)||"string"==typeof e||"function"==typeof e.splice||Gi(e)||au(e)||zi(e)))return!e.length;var t=ds(e);if(t==w||t==B)return!e.size;if(Ss(e))return!Mn(e).length;for(var r in e)if(Ne.call(e,r))return!1;return!0},kr.isEqual=function(e,t){return In(e,t)},kr.isEqualWith=function(e,t,r){var n=(r="function"==typeof r?r:o)?r(e,t):o;return n===o?In(e,t,o,r):!!n},kr.isError=Yi,kr.isFinite=function(e){return"number"==typeof e&&Pt(e)},kr.isFunction=Ji,kr.isInteger=Xi,kr.isLength=Zi,kr.isMap=tu,kr.isMatch=function(e,t){return e===t||Fn(e,t,as(t))},kr.isMatchWith=function(e,t,r){return r="function"==typeof r?r:o,Fn(e,t,as(t),r)},kr.isNaN=function(e){return ru(e)&&e!=+e},kr.isNative=function(e){if(Cs(e))throw new Se("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Rn(e)},kr.isNil=function(e){return null==e},kr.isNull=function(e){return null===e},kr.isNumber=ru,kr.isObject=Qi,kr.isObjectLike=eu,kr.isPlainObject=nu,kr.isRegExp=ou,kr.isSafeInteger=function(e){return Xi(e)&&e>=-9007199254740991&&e<=h},kr.isSet=su,kr.isString=iu,kr.isSymbol=uu,kr.isTypedArray=au,kr.isUndefined=function(e){return e===o},kr.isWeakMap=function(e){return eu(e)&&ds(e)==I},kr.isWeakSet=function(e){return eu(e)&&"[object WeakSet]"==bn(e)},kr.join=function(e,t){return null==e?"":Ht.call(e,t)},kr.kebabCase=Vu,kr.last=Ys,kr.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var s=n;return r!==o&&(s=(s=pu(r))<0?mr(n+s,0):gr(s,n-1)),t==t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,s):Lt(e,$t,s,!0)},kr.lowerCase=Hu,kr.lowerFirst=qu,kr.lt=cu,kr.lte=lu,kr.max=function(e){return e&&e.length?pn(e,ra,vn):o},kr.maxBy=function(e,t){return e&&e.length?pn(e,is(t,2),vn):o},kr.mean=function(e){return zt(e,ra)},kr.meanBy=function(e,t){return zt(e,is(t,2))},kr.min=function(e){return e&&e.length?pn(e,ra,xn):o},kr.minBy=function(e,t){return e&&e.length?pn(e,is(t,2),xn):o},kr.stubArray=fa,kr.stubFalse=ma,kr.stubObject=function(){return{}},kr.stubString=function(){return""},kr.stubTrue=function(){return!0},kr.multiply=Sa,kr.nth=function(e,t){return e&&e.length?jn(e,pu(t)):o},kr.noConflict=function(){return ht._===this&&(ht._=Le),this},kr.noop=ua,kr.now=Oi,kr.pad=function(e,t,r){e=Eu(e);var n=(t=pu(t))?cr(e):0;if(!t||n>=t)return e;var o=(t-n)/2;return zo(pt(o),r)+e+zo(dt(o),r)},kr.padEnd=function(e,t,r){e=Eu(e);var n=(t=pu(t))?cr(e):0;return t&&n<t?e+zo(t-n,r):e},kr.padStart=function(e,t,r){e=Eu(e);var n=(t=pu(t))?cr(e):0;return t&&n<t?zo(t-n,r)+e:e},kr.parseInt=function(e,t,r){return r||null==t?t=0:t&&(t=+t),Ar(Eu(e).replace(ne,""),t||0)},kr.random=function(e,t,r){if(r&&"boolean"!=typeof r&&Es(e,t,r)&&(t=r=o),r===o&&("boolean"==typeof t?(r=t,t=o):"boolean"==typeof e&&(r=e,e=o)),e===o&&t===o?(e=0,t=1):(e=du(e),t===o?(t=e,e=0):t=du(t)),e>t){var n=e;e=t,t=n}if(r||e%1||t%1){var s=yr();return gr(e+s*(t-e+ut("1e-"+((s+"").length-1))),t)}return qn(e,t)},kr.reduce=function(e,t,r){var n=Vi(e)?Nt:qt,o=arguments.length<3;return n(e,is(t,4),r,o,ln)},kr.reduceRight=function(e,t,r){var n=Vi(e)?Mt:qt,o=arguments.length<3;return n(e,is(t,4),r,o,hn)},kr.repeat=function(e,t,r){return t=(r?Es(e,t,r):t===o)?1:pu(t),Wn(Eu(e),t)},kr.replace=function(){var e=arguments,t=Eu(e[0]);return e.length<3?t:t.replace(e[1],e[2])},kr.result=function(e,t,r){var n=-1,s=(t=Eo(t,e)).length;for(s||(s=1,e=o);++n<s;){var i=null==e?o:e[Ps(t[n])];i===o&&(n=s,i=r),e=Ji(i)?i.call(e):i}return e},kr.round=wa,kr.runInContext=e,kr.sample=function(e){return(Vi(e)?Kr:Kn)(e)},kr.size=function(e){if(null==e)return 0;if(qi(e))return iu(e)?cr(e):e.length;var t=ds(e);return t==w||t==B?e.size:Mn(e).length},kr.snakeCase=Wu,kr.some=function(e,t,r){var n=Vi(e)?xt:to;return r&&Es(e,t,r)&&(t=o),n(e,is(t,3))},kr.sortedIndex=function(e,t){return ro(e,t)},kr.sortedIndexBy=function(e,t,r){return no(e,t,is(r,2))},kr.sortedIndexOf=function(e,t){var r=null==e?0:e.length;if(r){var n=ro(e,t);if(n<r&&Ui(e[n],t))return n}return-1},kr.sortedLastIndex=function(e,t){return ro(e,t,!0)},kr.sortedLastIndexBy=function(e,t,r){return no(e,t,is(r,2),!0)},kr.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var r=ro(e,t,!0)-1;if(Ui(e[r],t))return r}return-1},kr.startCase=Gu,kr.startsWith=function(e,t,r){return e=Eu(e),r=null==r?0:on(pu(r),0,e.length),t=io(t),e.slice(r,r+t.length)==t},kr.subtract=ba,kr.sum=function(e){return e&&e.length?Wt(e,ra):0},kr.sumBy=function(e,t){return e&&e.length?Wt(e,is(t,2)):0},kr.template=function(e,t,r){var n=kr.templateSettings;r&&Es(e,t,r)&&(t=o),e=Eu(e),t=Cu({},t,n,Jo);var s,i,u=Cu({},t.imports,n.imports,Jo),a=Iu(u),c=Jt(u,a),l=0,h=t.interpolate||ye,d="__p += '",p=Oe((t.escape||ye).source+"|"+h.source+"|"+(h===X?he:ye).source+"|"+(t.evaluate||ye).source+"|$","g"),f="//# sourceURL="+(Ne.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++nt+"]")+"\n";e.replace(p,(function(t,r,n,o,u,a){return n||(n=o),d+=e.slice(l,a).replace(Ce,rr),r&&(s=!0,d+="' +\n__e("+r+") +\n'"),u&&(i=!0,d+="';\n"+u+";\n__p += '"),n&&(d+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),l=a+t.length,t})),d+="';\n";var m=Ne.call(t,"variable")&&t.variable;if(m){if(ce.test(m))throw new Se("Invalid `variable` option passed into `_.template`")}else d="with (obj) {\n"+d+"\n}\n";d=(i?d.replace(z,""):d).replace(V,"$1").replace(H,"$1;"),d="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(s?", __e = _.escape":"")+(i?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var g=Xu((function(){return we(a,f+"return "+d).apply(o,c)}));if(g.source=d,Yi(g))throw g;return g},kr.times=function(e,t){if((e=pu(e))<1||e>h)return[];var r=p,n=gr(e,p);t=is(t),e-=p;for(var o=Gt(n,t);++r<e;)t(r);return o},kr.toFinite=du,kr.toInteger=pu,kr.toLength=fu,kr.toLower=function(e){return Eu(e).toLowerCase()},kr.toNumber=mu,kr.toSafeInteger=function(e){return e?on(pu(e),-9007199254740991,h):0===e?e:0},kr.toString=Eu,kr.toUpper=function(e){return Eu(e).toUpperCase()},kr.trim=function(e,t,r){if((e=Eu(e))&&(r||t===o))return Kt(e);if(!e||!(t=io(t)))return e;var n=lr(e),s=lr(t);return yo(n,Zt(n,s),Qt(n,s)+1).join("")},kr.trimEnd=function(e,t,r){if((e=Eu(e))&&(r||t===o))return e.slice(0,hr(e)+1);if(!e||!(t=io(t)))return e;var n=lr(e);return yo(n,0,Qt(n,lr(t))+1).join("")},kr.trimStart=function(e,t,r){if((e=Eu(e))&&(r||t===o))return e.replace(ne,"");if(!e||!(t=io(t)))return e;var n=lr(e);return yo(n,Zt(n,lr(t))).join("")},kr.truncate=function(e,t){var r=30,n="...";if(Qi(t)){var s="separator"in t?t.separator:s;r="length"in t?pu(t.length):r,n="omission"in t?io(t.omission):n}var i=(e=Eu(e)).length;if(nr(e)){var u=lr(e);i=u.length}if(r>=i)return e;var a=r-cr(n);if(a<1)return n;var c=u?yo(u,0,a).join(""):e.slice(0,a);if(s===o)return c+n;if(u&&(a+=c.length-a),ou(s)){if(e.slice(a).search(s)){var l,h=c;for(s.global||(s=Oe(s.source,Eu(de.exec(s))+"g")),s.lastIndex=0;l=s.exec(h);)var d=l.index;c=c.slice(0,d===o?a:d)}}else if(e.indexOf(io(s),a)!=a){var p=c.lastIndexOf(s);p>-1&&(c=c.slice(0,p))}return c+n},kr.unescape=function(e){return(e=Eu(e))&&G.test(e)?e.replace(q,dr):e},kr.uniqueId=function(e){var t=++Me;return Eu(e)+t},kr.upperCase=Ku,kr.upperFirst=Yu,kr.each=Ei,kr.eachRight=Ai,kr.first=qs,ia(kr,(ga={},An(kr,(function(e,t){Ne.call(kr.prototype,t)||(ga[t]=e)})),ga),{chain:!1}),kr.VERSION="4.17.21",Ot(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){kr[e].placeholder=kr})),Ot(["drop","take"],(function(e,t){$r.prototype[e]=function(r){r=r===o?1:mr(pu(r),0);var n=this.__filtered__&&!t?new $r(this):this.clone();return n.__filtered__?n.__takeCount__=gr(r,n.__takeCount__):n.__views__.push({size:gr(r,p),type:e+(n.__dir__<0?"Right":"")}),n},$r.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Ot(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;$r.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:is(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),Ot(["head","last"],(function(e,t){var r="take"+(t?"Right":"");$r.prototype[e]=function(){return this[r](1).value()[0]}})),Ot(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");$r.prototype[e]=function(){return this.__filtered__?new $r(this):this[r](1)}})),$r.prototype.compact=function(){return this.filter(ra)},$r.prototype.find=function(e){return this.filter(e).head()},$r.prototype.findLast=function(e){return this.reverse().find(e)},$r.prototype.invokeMap=Gn((function(e,t){return"function"==typeof e?new $r(this):this.map((function(r){return Dn(r,e,t)}))})),$r.prototype.reject=function(e){return this.filter(Mi(is(e)))},$r.prototype.slice=function(e,t){e=pu(e);var r=this;return r.__filtered__&&(e>0||t<0)?new $r(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==o&&(r=(t=pu(t))<0?r.dropRight(-t):r.take(t-e)),r)},$r.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},$r.prototype.toArray=function(){return this.take(p)},An($r.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),s=kr[n?"take"+("last"==t?"Right":""):t],i=n||/^find/.test(t);s&&(kr.prototype[t]=function(){var t=this.__wrapped__,u=n?[1]:arguments,a=t instanceof $r,c=u[0],l=a||Vi(t),h=function(e){var t=s.apply(kr,Rt([e],u));return n&&d?t[0]:t};l&&r&&"function"==typeof c&&1!=c.length&&(a=l=!1);var d=this.__chain__,p=!!this.__actions__.length,f=i&&!d,m=a&&!p;if(!i&&l){t=m?t:new $r(this);var g=e.apply(t,u);return g.__actions__.push({func:di,args:[h],thisArg:o}),new jr(g,d)}return f&&m?e.apply(this,u):(g=this.thru(h),f?n?g.value()[0]:g.value():g)})})),Ot(["pop","push","shift","sort","splice","unshift"],(function(e){var t=De[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);kr.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var o=this.value();return t.apply(Vi(o)?o:[],e)}return this[r]((function(r){return t.apply(Vi(r)?r:[],e)}))}})),An($r.prototype,(function(e,t){var r=kr[t];if(r){var n=r.name+"";Ne.call(Dr,n)||(Dr[n]=[]),Dr[n].push({name:t,func:r})}})),Dr[Lo(o,2).name]=[{name:"wrapper",func:o}],$r.prototype.clone=function(){var e=new $r(this.__wrapped__);return e.__actions__=Bo(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Bo(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Bo(this.__views__),e},$r.prototype.reverse=function(){if(this.__filtered__){var e=new $r(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},$r.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Vi(e),n=t<0,o=r?e.length:0,s=function(e,t,r){for(var n=-1,o=r.length;++n<o;){var s=r[n],i=s.size;switch(s.type){case"drop":e+=i;break;case"dropRight":t-=i;break;case"take":t=gr(t,e+i);break;case"takeRight":e=mr(e,t-i)}}return{start:e,end:t}}(0,o,this.__views__),i=s.start,u=s.end,a=u-i,c=n?u:i-1,l=this.__iteratees__,h=l.length,d=0,p=gr(a,this.__takeCount__);if(!r||!n&&o==a&&p==a)return ho(e,this.__actions__);var f=[];e:for(;a--&&d<p;){for(var m=-1,g=e[c+=t];++m<h;){var E=l[m],A=E.iteratee,y=E.type,C=A(g);if(2==y)g=C;else if(!C){if(1==y)continue e;break e}}f[d++]=g}return f},kr.prototype.at=pi,kr.prototype.chain=function(){return hi(this)},kr.prototype.commit=function(){return new jr(this.value(),this.__chain__)},kr.prototype.next=function(){this.__values__===o&&(this.__values__=hu(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?o:this.__values__[this.__index__++]}},kr.prototype.plant=function(e){for(var t,r=this;r instanceof Ur;){var n=Ls(r);n.__index__=0,n.__values__=o,t?s.__wrapped__=n:t=n;var s=n;r=r.__wrapped__}return s.__wrapped__=e,t},kr.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof $r){var t=e;return this.__actions__.length&&(t=new $r(this)),(t=t.reverse()).__actions__.push({func:di,args:[Qs],thisArg:o}),new jr(t,this.__chain__)}return this.thru(Qs)},kr.prototype.toJSON=kr.prototype.valueOf=kr.prototype.value=function(){return ho(this.__wrapped__,this.__actions__)},kr.prototype.first=kr.prototype.head,Ye&&(kr.prototype[Ye]=function(){return this}),kr}();ht._=pr,(n=function(){return pr}.call(t,r,t,e))===o||(e.exports=n)}.call(this)},3864:e=>{e.exports=function(){return[]}},8042:e=>{e.exports=function(){return!1}},3757:e=>{function t(e,n){if(!(this instanceof t))return new t(e,n);this.length=0,this.updates=[],this.path=new Uint16Array(4),this.pages=new Array(32768),this.maxPages=this.pages.length,this.level=0,this.pageSize=e||1024,this.deduplicate=n?n.deduplicate:null,this.zeros=this.deduplicate?r(this.deduplicate.length):null}function r(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t}function n(e,t){this.offset=e*t.length,this.buffer=t,this.updated=!1,this.deduplicate=0}e.exports=t,t.prototype.updated=function(e){for(;this.deduplicate&&e.buffer[e.deduplicate]===this.deduplicate[e.deduplicate];)if(e.deduplicate++,e.deduplicate===this.deduplicate.length){e.deduplicate=0,e.buffer.equals&&e.buffer.equals(this.deduplicate)&&(e.buffer=this.deduplicate);break}!e.updated&&this.updates&&(e.updated=!0,this.updates.push(e))},t.prototype.lastUpdate=function(){if(!this.updates||!this.updates.length)return null;var e=this.updates.pop();return e.updated=!1,e},t.prototype._array=function(e,t){if(e>=this.maxPages){if(t)return;!function(e,t){for(;e.maxPages<t;){var r=e.pages;e.pages=new Array(32768),e.pages[0]=r,e.level++,e.maxPages*=32768}}(this,e)}var r,n;r=((r=((r=e)-((n=this.path)[0]=32767&r))/32768)-(n[1]=32767&r))/32768,n[3]=(r-(n[2]=32767&r))/32768&32767;for(var o=this.pages,s=this.level;s>0;s--){var i=this.path[s],u=o[i];if(!u){if(t)return;u=o[i]=new Array(32768)}o=u}return o},t.prototype.get=function(e,t){var o,s,i=this._array(e,t),u=this.path[0],a=i&&i[u];return a||t||(a=i[u]=new n(e,r(this.pageSize)),e>=this.length&&(this.length=e+1)),a&&a.buffer===this.deduplicate&&this.deduplicate&&!t&&(a.buffer=(o=a.buffer,s=Buffer.allocUnsafe?Buffer.allocUnsafe(o.length):new Buffer(o.length),o.copy(s),s),a.deduplicate=0),a},t.prototype.set=function(e,t){var o=this._array(e,!1),s=this.path[0];if(e>=this.length&&(this.length=e+1),!t||this.zeros&&t.equals&&t.equals(this.zeros))o[s]=void 0;else{this.deduplicate&&t.equals&&t.equals(this.deduplicate)&&(t=this.deduplicate);var i=o[s],u=function(e,t){if(e.length===t)return e;if(e.length>t)return e.slice(0,t);var n=r(t);return e.copy(n),n}(t,this.pageSize);i?i.buffer=u:o[s]=new n(e,u)}},t.prototype.toBuffer=function(){for(var e=new Array(this.length),t=r(this.pageSize),n=0;n<e.length;)for(var o=this._array(n,!0),s=0;s<32768&&n<e.length;s++)e[n++]=o&&o[s]?o[s].buffer:t;return Buffer.concat(e)}},955:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoCryptContextCtor=t.MongoCrypt=void 0;const n=r(9666)("mongocrypt");t.MongoCrypt=n.MongoCrypt,t.MongoCryptContextCtor=n.MongoCryptContextCtor},1101:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CommaAndColonSeparatedRecord=t.ConnectionString=t.redactConnectionString=void 0;const n=r(9865),o=r(2912);Object.defineProperty(t,"redactConnectionString",{enumerable:!0,get:function(){return o.redactConnectionString}});const s="__this_is_a_placeholder__",i=/^(?<protocol>[^/]+):\/\/(?:(?<username>[^:@]*)(?::(?<password>[^@]*))?@)?(?<hosts>(?!:)[^/?@]*)(?<rest>.*)/;class u extends Map{delete(e){return super.delete(this._normalizeKey(e))}get(e){return super.get(this._normalizeKey(e))}has(e){return super.has(this._normalizeKey(e))}set(e,t){return super.set(this._normalizeKey(e),t)}_normalizeKey(e){e=`${e}`;for(const t of this.keys())if(t.toLowerCase()===e.toLowerCase()){e=t;break}return e}}class a extends n.URL{}class c extends Error{get name(){return"MongoParseError"}}class l extends a{constructor(e,t={}){var r;const{looseValidation:n}=t;if(!n&&!(o=e).startsWith("mongodb://")&&!o.startsWith("mongodb+srv://"))throw new c('Invalid scheme, expected connection string to start with "mongodb://" or "mongodb+srv://"');var o;const a=e.match(i);if(!a)throw new c(`Invalid connection string "${e}"`);const{protocol:h,username:d,password:p,hosts:f,rest:m}=null!==(r=a.groups)&&void 0!==r?r:{};if(!n){if(!h||!f)throw new c(`Protocol and host list are required in "${e}"`);try{decodeURIComponent(null!=d?d:""),decodeURIComponent(null!=p?p:"")}catch(e){throw new c(e.message)}const t=/[:/?#[\]@]/gi;if(null==d?void 0:d.match(t))throw new c(`Username contains unescaped characters ${d}`);if(!d||!p){const t=e.replace(`${h}://`,"");if(t.startsWith("@")||t.startsWith(":"))throw new c("URI contained empty userinfo section")}if(null==p?void 0:p.match(t))throw new c("Password contains unescaped characters")}let g="";"string"==typeof d&&(g+=d),"string"==typeof p&&(g+=`:${p}`),g&&(g+="@");try{super(`${h.toLowerCase()}://${g}${s}${m}`)}catch(r){throw n&&new l(e,{...t,looseValidation:!1}),"string"==typeof r.message&&(r.message=r.message.replace(s,f)),r}if(this._hosts=f.split(","),!n){if(this.isSRV&&1!==this.hosts.length)throw new c("mongodb+srv URI cannot have multiple service names");if(this.isSRV&&this.hosts.some((e=>e.includes(":"))))throw new c("mongodb+srv URI cannot have port number")}var E;this.pathname||(this.pathname="/"),Object.setPrototypeOf(this.searchParams,(E=this.searchParams.constructor,class extends E{append(e,t){return super.append(this._normalizeKey(e),t)}delete(e){return super.delete(this._normalizeKey(e))}get(e){return super.get(this._normalizeKey(e))}getAll(e){return super.getAll(this._normalizeKey(e))}has(e){return super.has(this._normalizeKey(e))}set(e,t){return super.set(this._normalizeKey(e),t)}keys(){return super.keys()}values(){return super.values()}entries(){return super.entries()}[Symbol.iterator](){return super[Symbol.iterator]()}_normalizeKey(e){return u.prototype._normalizeKey.call(this,e)}}).prototype)}get host(){return s}set host(e){throw new Error("No single host for connection string")}get hostname(){return s}set hostname(e){throw new Error("No single host for connection string")}get port(){return""}set port(e){throw new Error("No single host for connection string")}get href(){return this.toString()}set href(e){throw new Error("Cannot set href for connection strings")}get isSRV(){return this.protocol.includes("srv")}get hosts(){return this._hosts}set hosts(e){this._hosts=e}toString(){return super.toString().replace(s,this.hosts.join(","))}clone(){return new l(this.toString(),{looseValidation:!0})}redact(e){return(0,o.redactValidConnectionString)(this,e)}typedSearchParams(){return this.searchParams}[Symbol.for("nodejs.util.inspect.custom")](){const{href:e,origin:t,protocol:r,username:n,password:o,hosts:s,pathname:i,search:u,searchParams:a,hash:c}=this;return{href:e,origin:t,protocol:r,username:n,password:o,hosts:s,pathname:i,search:u,searchParams:a,hash:c}}}t.ConnectionString=l,t.CommaAndColonSeparatedRecord=class extends u{constructor(e){super();for(const t of(null!=e?e:"").split(",")){if(!t)continue;const e=t.indexOf(":");-1===e?this.set(t,""):this.set(t.slice(0,e),t.slice(e+1))}}toString(){return[...this].map((e=>e.join(":"))).join(",")}},t.default=l},2912:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.redactConnectionString=t.redactValidConnectionString=void 0;const i=s(r(1101));t.redactValidConnectionString=function(e,t){var r,n;const o=e.clone(),s=null!==(r=null==t?void 0:t.replacementString)&&void 0!==r?r:"_credentials_",u=null===(n=null==t?void 0:t.redactUsernames)||void 0===n||n;if((o.username||o.password)&&u?(o.username=s,o.password=""):o.password&&(o.password=s),o.searchParams.has("authMechanismProperties")){const e=new i.CommaAndColonSeparatedRecord(o.searchParams.get("authMechanismProperties"));e.get("AWS_SESSION_TOKEN")&&(e.set("AWS_SESSION_TOKEN",s),o.searchParams.set("authMechanismProperties",e.toString()))}return o.searchParams.has("tlsCertificateKeyFilePassword")&&o.searchParams.set("tlsCertificateKeyFilePassword",s),o.searchParams.has("proxyUsername")&&u&&o.searchParams.set("proxyUsername",s),o.searchParams.has("proxyPassword")&&o.searchParams.set("proxyPassword",s),o},t.redactConnectionString=function(e,t){var r,n;const o=null!==(r=null==t?void 0:t.replacementString)&&void 0!==r?r:"<credentials>",s=null===(n=null==t?void 0:t.redactUsernames)||void 0===n||n;let u;try{u=new i.default(e)}catch(e){}if(u)return t={...t,replacementString:"___credentials___"},u.redact(t).toString().replace(/___credentials___/g,o);const a=o,c=[e=>e.replace(s?/(\/\/)(.*)(@)/g:/(\/\/[^@]*:)(.*)(@)/g,`$1${a}$3`),e=>e.replace(/(AWS_SESSION_TOKEN(:|%3A))([^,&]+)/gi,`$1${a}`),e=>e.replace(/(tlsCertificateKeyFilePassword=)([^&]+)/gi,`$1${a}`),e=>s?e.replace(/(proxyUsername=)([^&]+)/gi,`$1${a}`):e,e=>e.replace(/(proxyPassword=)([^&]+)/gi,`$1${a}`)];for(const t of c)e=t(e);return e}},5425:(e,t,r)=>{"use strict";const n=r(9160),o=r(4346),s=r(7976),{STATUS_MAPPING:i}=r(5597);function u(e,{useSTD3ASCIIRules:t}){let r=0,n=s.length-1;for(;r<=n;){const o=Math.floor((r+n)/2),u=s[o],a=Array.isArray(u[0])?u[0][0]:u[0],c=Array.isArray(u[0])?u[0][1]:u[0];if(a<=e&&c>=e)return!t||u[1]!==i.disallowed_STD3_valid&&u[1]!==i.disallowed_STD3_mapped?u[1]===i.disallowed_STD3_valid?[i.valid,...u.slice(2)]:u[1]===i.disallowed_STD3_mapped?[i.mapped,...u.slice(2)]:u.slice(1):[i.disallowed,...u.slice(2)];a>e?n=o-1:r=o+1}return null}function a(e,{checkHyphens:t,checkBidi:r,checkJoiners:n,processingOption:s,useSTD3ASCIIRules:a}){if(e.normalize("NFC")!==e)return!1;const c=Array.from(e);if(t&&("-"===c[2]&&"-"===c[3]||e.startsWith("-")||e.endsWith("-")))return!1;if(e.includes(".")||c.length>0&&o.combiningMarks.test(c[0]))return!1;for(const e of c){const[t]=u(e.codePointAt(0),{useSTD3ASCIIRules:a});if("transitional"===s&&t!==i.valid||"nontransitional"===s&&t!==i.valid&&t!==i.deviation)return!1}if(n){let e=0;for(const[t,r]of c.entries())if(""===r||""===r){if(t>0){if(o.combiningClassVirama.test(c[t-1]))continue;if(""===r){const r=c.indexOf("",t+1),n=r<0?c.slice(e):c.slice(e,r);if(o.validZWNJ.test(n.join(""))){e=t+1;continue}}}return!1}}if(r&&c.length>0){let t;if(o.bidiS1LTR.test(c[0]))t=!1;else{if(!o.bidiS1RTL.test(c[0]))return!1;t=!0}if(t){if(!o.bidiS2.test(e)||!o.bidiS3.test(e)||o.bidiS4EN.test(e)&&o.bidiS4AN.test(e))return!1}else if(!o.bidiS5.test(e)||!o.bidiS6.test(e))return!1}return!0}function c(e,t){const{processingOption:r}=t;let{string:s,error:c}=function(e,{useSTD3ASCIIRules:t,processingOption:r}){let n=!1,o="";for(const s of e){const[e,a]=u(s.codePointAt(0),{useSTD3ASCIIRules:t});switch(e){case i.disallowed:n=!0,o+=s;break;case i.ignored:break;case i.mapped:o+=a;break;case i.deviation:o+="transitional"===r?a:s;break;case i.valid:o+=s}}return{string:o,error:n}}(e,t);s=s.normalize("NFC");const l=s.split("."),h=function(e){const t=e.map((e=>{if(e.startsWith("xn--"))try{return n.decode(e.substring(4))}catch(e){return""}return e})).join(".");return o.bidiDomain.test(t)}(l);for(const[e,o]of l.entries()){let s=o,i=r;if(s.startsWith("xn--")){try{s=n.decode(s.substring(4)),l[e]=s}catch(e){c=!0;continue}i="nontransitional"}c||(a(s,{...t,processingOption:i,checkBidi:t.checkBidi&&h})||(c=!0))}return{string:l.join("."),error:c}}e.exports={toASCII:function(e,{checkHyphens:t=!1,checkBidi:r=!1,checkJoiners:o=!1,useSTD3ASCIIRules:s=!1,processingOption:i="nontransitional",verifyDNSLength:u=!1}={}){if("transitional"!==i&&"nontransitional"!==i)throw new RangeError("processingOption must be either transitional or nontransitional");const a=c(e,{processingOption:i,checkHyphens:t,checkBidi:r,checkJoiners:o,useSTD3ASCIIRules:s});let l=a.string.split(".");if(l=l.map((e=>{if(/[^\x00-\x7F]/u.test(e))try{return`xn--${n.encode(e)}`}catch(e){a.error=!0}return e})),u){const e=l.join(".").length;(e>253||0===e)&&(a.error=!0);for(let e=0;e<l.length;++e)if(l[e].length>63||0===l[e].length){a.error=!0;break}}return a.error?null:l.join(".")},toUnicode:function(e,{checkHyphens:t=!1,checkBidi:r=!1,checkJoiners:n=!1,useSTD3ASCIIRules:o=!1,processingOption:s="nontransitional"}={}){const i=c(e,{processingOption:s,checkHyphens:t,checkBidi:r,checkJoiners:n,useSTD3ASCIIRules:o});return{domain:i.string,error:i.error}}}},4346:e=>{"use strict";e.exports={combiningMarks:/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11000}-\u{11002}\u{11038}-\u{11046}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11082}\u{110B0}-\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{11134}\u{11145}\u{11146}\u{11173}\u{11180}-\u{11182}\u{111B3}-\u{111C0}\u{111C9}-\u{111CC}\u{111CE}\u{111CF}\u{1122C}-\u{11237}\u{1123E}\u{11241}\u{112DF}-\u{112EA}\u{11300}-\u{11303}\u{1133B}\u{1133C}\u{1133E}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11357}\u{11362}\u{11363}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11435}-\u{11446}\u{1145E}\u{114B0}-\u{114C3}\u{115AF}-\u{115B5}\u{115B8}-\u{115C0}\u{115DC}\u{115DD}\u{11630}-\u{11640}\u{116AB}-\u{116B7}\u{1171D}-\u{1172B}\u{1182C}-\u{1183A}\u{11930}-\u{11935}\u{11937}\u{11938}\u{1193B}-\u{1193E}\u{11940}\u{11942}\u{11943}\u{119D1}-\u{119D7}\u{119DA}-\u{119E0}\u{119E4}\u{11A01}-\u{11A0A}\u{11A33}-\u{11A39}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A5B}\u{11A8A}-\u{11A99}\u{11C2F}-\u{11C36}\u{11C38}-\u{11C3F}\u{11C92}-\u{11CA7}\u{11CA9}-\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D8A}-\u{11D8E}\u{11D90}\u{11D91}\u{11D93}-\u{11D97}\u{11EF3}-\u{11EF6}\u{11F00}\u{11F01}\u{11F03}\u{11F34}-\u{11F3A}\u{11F3E}-\u{11F42}\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F51}-\u{16F87}\u{16F8F}-\u{16F92}\u{16FE4}\u{16FF0}\u{16FF1}\u{1BC9D}\u{1BC9E}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D165}-\u{1D169}\u{1D16D}-\u{1D172}\u{1D17B}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E4EC}-\u{1E4EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94A}\u{E0100}-\u{E01EF}]/u,combiningClassVirama:/[\u094D\u09CD\u0A4D\u0ACD\u0B4D\u0BCD\u0C4D\u0CCD\u0D3B\u0D3C\u0D4D\u0DCA\u0E3A\u0EBA\u0F84\u1039\u103A\u1714\u1734\u17D2\u1A60\u1B44\u1BAA\u1BAB\u1BF2\u1BF3\u2D7F\uA806\uA8C4\uA953\uA9C0\uAAF6\uABED\u{10A3F}\u{11046}\u{1107F}\u{110B9}\u{11133}\u{11134}\u{111C0}\u{11235}\u{112EA}\u{1134D}\u{11442}\u{114C2}\u{115BF}\u{1163F}\u{116B6}\u{1172B}\u{11839}\u{119E0}\u{11A34}\u{11A47}\u{11A99}\u{11C3F}\u{11D44}\u{11D45}\u{11D97}]/u,validZWNJ:/[\u0620\u0626\u0628\u062A-\u062E\u0633-\u063F\u0641-\u0647\u0649\u064A\u066E\u066F\u0678-\u0687\u069A-\u06BF\u06C1\u06C2\u06CC\u06CE\u06D0\u06D1\u06FA-\u06FC\u06FF\u0712-\u0714\u071A-\u071D\u071F-\u0727\u0729\u072B\u072D\u072E\u074E-\u0758\u075C-\u076A\u076D-\u0770\u0772\u0775-\u0777\u077A-\u077F\u07CA-\u07EA\u0841-\u0845\u0848\u084A-\u0853\u0855\u0860\u0862-\u0865\u0868\u08A0-\u08A9\u08AF\u08B0\u08B3\u08B4\u08B6-\u08B8\u08BA-\u08BD\u1807\u1820-\u1878\u1887-\u18A8\u18AA\uA840-\uA872\u{10AC0}-\u{10AC4}\u{10ACD}\u{10AD3}-\u{10ADC}\u{10ADE}-\u{10AE0}\u{10AEB}-\u{10AEE}\u{10B80}\u{10B82}\u{10B86}-\u{10B88}\u{10B8A}\u{10B8B}\u{10B8D}\u{10B90}\u{10BAD}\u{10BAE}\u{10D00}-\u{10D21}\u{10D23}\u{10F30}-\u{10F32}\u{10F34}-\u{10F44}\u{10F51}-\u{10F53}\u{1E900}-\u{1E943}][\xAD\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u061C\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u070F\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u200B\u200E\u200F\u202A-\u202E\u2060-\u2064\u206A-\u206F\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFEFF\uFFF9-\uFFFB\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10F46}-\u{10F50}\u{11001}\u{11038}-\u{11046}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C3F}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{13430}-\u{13438}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{1BC9D}\u{1BC9E}\u{1BCA0}-\u{1BCA3}\u{1D167}-\u{1D169}\u{1D173}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E130}-\u{1E136}\u{1E2EC}-\u{1E2EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94B}\u{E0001}\u{E0020}-\u{E007F}\u{E0100}-\u{E01EF}]*\u200C[\xAD\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u061C\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u070F\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u200B\u200E\u200F\u202A-\u202E\u2060-\u2064\u206A-\u206F\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFEFF\uFFF9-\uFFFB\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10F46}-\u{10F50}\u{11001}\u{11038}-\u{11046}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C3F}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{13430}-\u{13438}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{1BC9D}\u{1BC9E}\u{1BCA0}-\u{1BCA3}\u{1D167}-\u{1D169}\u{1D173}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E130}-\u{1E136}\u{1E2EC}-\u{1E2EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94B}\u{E0001}\u{E0020}-\u{E007F}\u{E0100}-\u{E01EF}]*[\u0620\u0622-\u063F\u0641-\u064A\u066E\u066F\u0671-\u0673\u0675-\u06D3\u06D5\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u077F\u07CA-\u07EA\u0840-\u0855\u0860\u0862-\u0865\u0867-\u086A\u08A0-\u08AC\u08AE-\u08B4\u08B6-\u08BD\u1807\u1820-\u1878\u1887-\u18A8\u18AA\uA840-\uA871\u{10AC0}-\u{10AC5}\u{10AC7}\u{10AC9}\u{10ACA}\u{10ACE}-\u{10AD6}\u{10AD8}-\u{10AE1}\u{10AE4}\u{10AEB}-\u{10AEF}\u{10B80}-\u{10B91}\u{10BA9}-\u{10BAE}\u{10D01}-\u{10D23}\u{10F30}-\u{10F44}\u{10F51}-\u{10F54}\u{1E900}-\u{1E943}]/u,bidiDomain:/[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05EA\u05EF-\u05F4\u0600-\u0605\u0608\u060B\u060D\u061B-\u064A\u0660-\u0669\u066B-\u066F\u0671-\u06D5\u06DD\u06E5\u06E6\u06EE\u06EF\u06FA-\u070D\u070F\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u083E\u0840-\u0858\u085E\u0860-\u086A\u0870-\u088E\u0890\u0891\u08A0-\u08C9\u08E2\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBC2\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFC\uFE70-\uFE74\uFE76-\uFEFC\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10857}-\u{1089E}\u{108A7}-\u{108AF}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{108FB}-\u{1091B}\u{10920}-\u{10939}\u{1093F}\u{10980}-\u{109B7}\u{109BC}-\u{109CF}\u{109D2}-\u{10A00}\u{10A10}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A40}-\u{10A48}\u{10A50}-\u{10A58}\u{10A60}-\u{10A9F}\u{10AC0}-\u{10AE4}\u{10AEB}-\u{10AF6}\u{10B00}-\u{10B35}\u{10B40}-\u{10B55}\u{10B58}-\u{10B72}\u{10B78}-\u{10B91}\u{10B99}-\u{10B9C}\u{10BA9}-\u{10BAF}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10CFA}-\u{10D23}\u{10D30}-\u{10D39}\u{10E60}-\u{10E7E}\u{10E80}-\u{10EA9}\u{10EAD}\u{10EB0}\u{10EB1}\u{10F00}-\u{10F27}\u{10F30}-\u{10F45}\u{10F51}-\u{10F59}\u{10F70}-\u{10F81}\u{10F86}-\u{10F89}\u{10FB0}-\u{10FCB}\u{10FE0}-\u{10FF6}\u{1E800}-\u{1E8C4}\u{1E8C7}-\u{1E8CF}\u{1E900}-\u{1E943}\u{1E94B}\u{1E950}-\u{1E959}\u{1E95E}\u{1E95F}\u{1EC71}-\u{1ECB4}\u{1ED01}-\u{1ED3D}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}]/u,bidiS1LTR:/[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02B8\u02BB-\u02C1\u02D0\u02D1\u02E0-\u02E4\u02EE\u0370-\u0373\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0482\u048A-\u052F\u0531-\u0556\u0559-\u0589\u0903-\u0939\u093B\u093D-\u0940\u0949-\u094C\u094E-\u0950\u0958-\u0961\u0964-\u0980\u0982\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD-\u09C0\u09C7\u09C8\u09CB\u09CC\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09FA\u09FC\u09FD\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3E-\u0A40\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A76\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD-\u0AC0\u0AC9\u0ACB\u0ACC\u0AD0\u0AE0\u0AE1\u0AE6-\u0AF0\u0AF9\u0B02\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B3E\u0B40\u0B47\u0B48\u0B4B\u0B4C\u0B57\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE\u0BBF\u0BC1\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7\u0BE6-\u0BF2\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C41-\u0C44\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C77\u0C7F\u0C80\u0C82-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD-\u0CC4\u0CC6-\u0CC8\u0CCA\u0CCB\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D02-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D4F\u0D54-\u0D61\u0D66-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2-\u0DF4\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E4F-\u0E5B\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00-\u0F17\u0F1A-\u0F34\u0F36\u0F38\u0F3E-\u0F47\u0F49-\u0F6C\u0F7F\u0F85\u0F88-\u0F8C\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u1000-\u102C\u1031\u1038\u103B\u103C\u103F-\u1057\u105A-\u105D\u1061-\u1070\u1075-\u1081\u1083\u1084\u1087-\u108C\u108E-\u109C\u109E-\u10C5\u10C7\u10CD\u10D0-\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\u1360-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u167F\u1681-\u169A\u16A0-\u16F8\u1700-\u1711\u1715\u171F-\u1731\u1734-\u1736\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17B6\u17BE-\u17C5\u17C7\u17C8\u17D4-\u17DA\u17DC\u17E0-\u17E9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1923-\u1926\u1929-\u192B\u1930\u1931\u1933-\u1938\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A19\u1A1A\u1A1E-\u1A55\u1A57\u1A61\u1A63\u1A64\u1A6D-\u1A72\u1A80-\u1A89\u1A90-\u1A99\u1AA0-\u1AAD\u1B04-\u1B33\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B4C\u1B50-\u1B6A\u1B74-\u1B7E\u1B82-\u1BA1\u1BA6\u1BA7\u1BAA\u1BAE-\u1BE5\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2\u1BF3\u1BFC-\u1C2B\u1C34\u1C35\u1C3B-\u1C49\u1C4D-\u1C88\u1C90-\u1CBA\u1CBD-\u1CC7\u1CD3\u1CE1\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5-\u1CF7\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\u200E\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u214F\u2160-\u2188\u2336-\u237A\u2395\u249C-\u24E9\u26AC\u2800-\u28FF\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D70\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u302E\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3190-\u31BF\u31F0-\u321C\u3220-\u324F\u3260-\u327B\u327F-\u32B0\u32C0-\u32CB\u32D0-\u3376\u337B-\u33DD\u33E0-\u33FE\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA60C\uA610-\uA62B\uA640-\uA66E\uA680-\uA69D\uA6A0-\uA6EF\uA6F2-\uA6F7\uA722-\uA787\uA789-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA824\uA827\uA830-\uA837\uA840-\uA873\uA880-\uA8C3\uA8CE-\uA8D9\uA8F2-\uA8FE\uA900-\uA925\uA92E-\uA946\uA952\uA953\uA95F-\uA97C\uA983-\uA9B2\uA9B4\uA9B5\uA9BA\uA9BB\uA9BE-\uA9CD\uA9CF-\uA9D9\uA9DE-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA2F\uAA30\uAA33\uAA34\uAA40-\uAA42\uAA44-\uAA4B\uAA4D\uAA50-\uAA59\uAA5C-\uAA7B\uAA7D-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAAEB\uAAEE-\uAAF5\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB69\uAB70-\uABE4\uABE6\uABE7\uABE9-\uABEC\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uD800-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\u{10000}-\u{1000B}\u{1000D}-\u{10026}\u{10028}-\u{1003A}\u{1003C}\u{1003D}\u{1003F}-\u{1004D}\u{10050}-\u{1005D}\u{10080}-\u{100FA}\u{10100}\u{10102}\u{10107}-\u{10133}\u{10137}-\u{1013F}\u{1018D}\u{1018E}\u{101D0}-\u{101FC}\u{10280}-\u{1029C}\u{102A0}-\u{102D0}\u{10300}-\u{10323}\u{1032D}-\u{1034A}\u{10350}-\u{10375}\u{10380}-\u{1039D}\u{1039F}-\u{103C3}\u{103C8}-\u{103D5}\u{10400}-\u{1049D}\u{104A0}-\u{104A9}\u{104B0}-\u{104D3}\u{104D8}-\u{104FB}\u{10500}-\u{10527}\u{10530}-\u{10563}\u{1056F}-\u{1057A}\u{1057C}-\u{1058A}\u{1058C}-\u{10592}\u{10594}\u{10595}\u{10597}-\u{105A1}\u{105A3}-\u{105B1}\u{105B3}-\u{105B9}\u{105BB}\u{105BC}\u{10600}-\u{10736}\u{10740}-\u{10755}\u{10760}-\u{10767}\u{10780}-\u{10785}\u{10787}-\u{107B0}\u{107B2}-\u{107BA}\u{11000}\u{11002}-\u{11037}\u{11047}-\u{1104D}\u{11066}-\u{1106F}\u{11071}\u{11072}\u{11075}\u{11082}-\u{110B2}\u{110B7}\u{110B8}\u{110BB}-\u{110C1}\u{110CD}\u{110D0}-\u{110E8}\u{110F0}-\u{110F9}\u{11103}-\u{11126}\u{1112C}\u{11136}-\u{11147}\u{11150}-\u{11172}\u{11174}-\u{11176}\u{11182}-\u{111B5}\u{111BF}-\u{111C8}\u{111CD}\u{111CE}\u{111D0}-\u{111DF}\u{111E1}-\u{111F4}\u{11200}-\u{11211}\u{11213}-\u{1122E}\u{11232}\u{11233}\u{11235}\u{11238}-\u{1123D}\u{1123F}\u{11240}\u{11280}-\u{11286}\u{11288}\u{1128A}-\u{1128D}\u{1128F}-\u{1129D}\u{1129F}-\u{112A9}\u{112B0}-\u{112DE}\u{112E0}-\u{112E2}\u{112F0}-\u{112F9}\u{11302}\u{11303}\u{11305}-\u{1130C}\u{1130F}\u{11310}\u{11313}-\u{11328}\u{1132A}-\u{11330}\u{11332}\u{11333}\u{11335}-\u{11339}\u{1133D}-\u{1133F}\u{11341}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11350}\u{11357}\u{1135D}-\u{11363}\u{11400}-\u{11437}\u{11440}\u{11441}\u{11445}\u{11447}-\u{1145B}\u{1145D}\u{1145F}-\u{11461}\u{11480}-\u{114B2}\u{114B9}\u{114BB}-\u{114BE}\u{114C1}\u{114C4}-\u{114C7}\u{114D0}-\u{114D9}\u{11580}-\u{115B1}\u{115B8}-\u{115BB}\u{115BE}\u{115C1}-\u{115DB}\u{11600}-\u{11632}\u{1163B}\u{1163C}\u{1163E}\u{11641}-\u{11644}\u{11650}-\u{11659}\u{11680}-\u{116AA}\u{116AC}\u{116AE}\u{116AF}\u{116B6}\u{116B8}\u{116B9}\u{116C0}-\u{116C9}\u{11700}-\u{1171A}\u{11720}\u{11721}\u{11726}\u{11730}-\u{11746}\u{11800}-\u{1182E}\u{11838}\u{1183B}\u{118A0}-\u{118F2}\u{118FF}-\u{11906}\u{11909}\u{1190C}-\u{11913}\u{11915}\u{11916}\u{11918}-\u{11935}\u{11937}\u{11938}\u{1193D}\u{1193F}-\u{11942}\u{11944}-\u{11946}\u{11950}-\u{11959}\u{119A0}-\u{119A7}\u{119AA}-\u{119D3}\u{119DC}-\u{119DF}\u{119E1}-\u{119E4}\u{11A00}\u{11A07}\u{11A08}\u{11A0B}-\u{11A32}\u{11A39}\u{11A3A}\u{11A3F}-\u{11A46}\u{11A50}\u{11A57}\u{11A58}\u{11A5C}-\u{11A89}\u{11A97}\u{11A9A}-\u{11AA2}\u{11AB0}-\u{11AF8}\u{11B00}-\u{11B09}\u{11C00}-\u{11C08}\u{11C0A}-\u{11C2F}\u{11C3E}-\u{11C45}\u{11C50}-\u{11C6C}\u{11C70}-\u{11C8F}\u{11CA9}\u{11CB1}\u{11CB4}\u{11D00}-\u{11D06}\u{11D08}\u{11D09}\u{11D0B}-\u{11D30}\u{11D46}\u{11D50}-\u{11D59}\u{11D60}-\u{11D65}\u{11D67}\u{11D68}\u{11D6A}-\u{11D8E}\u{11D93}\u{11D94}\u{11D96}\u{11D98}\u{11DA0}-\u{11DA9}\u{11EE0}-\u{11EF2}\u{11EF5}-\u{11EF8}\u{11F02}-\u{11F10}\u{11F12}-\u{11F35}\u{11F3E}\u{11F3F}\u{11F41}\u{11F43}-\u{11F59}\u{11FB0}\u{11FC0}-\u{11FD4}\u{11FFF}-\u{12399}\u{12400}-\u{1246E}\u{12470}-\u{12474}\u{12480}-\u{12543}\u{12F90}-\u{12FF2}\u{13000}-\u{1343F}\u{13441}-\u{13446}\u{14400}-\u{14646}\u{16800}-\u{16A38}\u{16A40}-\u{16A5E}\u{16A60}-\u{16A69}\u{16A6E}-\u{16ABE}\u{16AC0}-\u{16AC9}\u{16AD0}-\u{16AED}\u{16AF5}\u{16B00}-\u{16B2F}\u{16B37}-\u{16B45}\u{16B50}-\u{16B59}\u{16B5B}-\u{16B61}\u{16B63}-\u{16B77}\u{16B7D}-\u{16B8F}\u{16E40}-\u{16E9A}\u{16F00}-\u{16F4A}\u{16F50}-\u{16F87}\u{16F93}-\u{16F9F}\u{16FE0}\u{16FE1}\u{16FE3}\u{16FF0}\u{16FF1}\u{17000}-\u{187F7}\u{18800}-\u{18CD5}\u{18D00}-\u{18D08}\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{1B170}-\u{1B2FB}\u{1BC00}-\u{1BC6A}\u{1BC70}-\u{1BC7C}\u{1BC80}-\u{1BC88}\u{1BC90}-\u{1BC99}\u{1BC9C}\u{1BC9F}\u{1CF50}-\u{1CFC3}\u{1D000}-\u{1D0F5}\u{1D100}-\u{1D126}\u{1D129}-\u{1D166}\u{1D16A}-\u{1D172}\u{1D183}\u{1D184}\u{1D18C}-\u{1D1A9}\u{1D1AE}-\u{1D1E8}\u{1D2C0}-\u{1D2D3}\u{1D2E0}-\u{1D2F3}\u{1D360}-\u{1D378}\u{1D400}-\u{1D454}\u{1D456}-\u{1D49C}\u{1D49E}\u{1D49F}\u{1D4A2}\u{1D4A5}\u{1D4A6}\u{1D4A9}-\u{1D4AC}\u{1D4AE}-\u{1D4B9}\u{1D4BB}\u{1D4BD}-\u{1D4C3}\u{1D4C5}-\u{1D505}\u{1D507}-\u{1D50A}\u{1D50D}-\u{1D514}\u{1D516}-\u{1D51C}\u{1D51E}-\u{1D539}\u{1D53B}-\u{1D53E}\u{1D540}-\u{1D544}\u{1D546}\u{1D54A}-\u{1D550}\u{1D552}-\u{1D6A5}\u{1D6A8}-\u{1D6DA}\u{1D6DC}-\u{1D714}\u{1D716}-\u{1D74E}\u{1D750}-\u{1D788}\u{1D78A}-\u{1D7C2}\u{1D7C4}-\u{1D7CB}\u{1D800}-\u{1D9FF}\u{1DA37}-\u{1DA3A}\u{1DA6D}-\u{1DA74}\u{1DA76}-\u{1DA83}\u{1DA85}-\u{1DA8B}\u{1DF00}-\u{1DF1E}\u{1DF25}-\u{1DF2A}\u{1E030}-\u{1E06D}\u{1E100}-\u{1E12C}\u{1E137}-\u{1E13D}\u{1E140}-\u{1E149}\u{1E14E}\u{1E14F}\u{1E290}-\u{1E2AD}\u{1E2C0}-\u{1E2EB}\u{1E2F0}-\u{1E2F9}\u{1E4D0}-\u{1E4EB}\u{1E4F0}-\u{1E4F9}\u{1E7E0}-\u{1E7E6}\u{1E7E8}-\u{1E7EB}\u{1E7ED}\u{1E7EE}\u{1E7F0}-\u{1E7FE}\u{1F110}-\u{1F12E}\u{1F130}-\u{1F169}\u{1F170}-\u{1F1AC}\u{1F1E6}-\u{1F202}\u{1F210}-\u{1F23B}\u{1F240}-\u{1F248}\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{F0000}-\u{FFFFD}\u{100000}-\u{10FFFD}]/u,bidiS1RTL:/[\u05BE\u05C0\u05C3\u05C6\u05D0-\u05EA\u05EF-\u05F4\u0608\u060B\u060D\u061B-\u064A\u066D-\u066F\u0671-\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u070D\u070F\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u083E\u0840-\u0858\u085E\u0860-\u086A\u0870-\u088E\u08A0-\u08C9\u200F\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBC2\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFC\uFE70-\uFE74\uFE76-\uFEFC\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10857}-\u{1089E}\u{108A7}-\u{108AF}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{108FB}-\u{1091B}\u{10920}-\u{10939}\u{1093F}\u{10980}-\u{109B7}\u{109BC}-\u{109CF}\u{109D2}-\u{10A00}\u{10A10}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A40}-\u{10A48}\u{10A50}-\u{10A58}\u{10A60}-\u{10A9F}\u{10AC0}-\u{10AE4}\u{10AEB}-\u{10AF6}\u{10B00}-\u{10B35}\u{10B40}-\u{10B55}\u{10B58}-\u{10B72}\u{10B78}-\u{10B91}\u{10B99}-\u{10B9C}\u{10BA9}-\u{10BAF}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10CFA}-\u{10D23}\u{10E80}-\u{10EA9}\u{10EAD}\u{10EB0}\u{10EB1}\u{10F00}-\u{10F27}\u{10F30}-\u{10F45}\u{10F51}-\u{10F59}\u{10F70}-\u{10F81}\u{10F86}-\u{10F89}\u{10FB0}-\u{10FCB}\u{10FE0}-\u{10FF6}\u{1E800}-\u{1E8C4}\u{1E8C7}-\u{1E8CF}\u{1E900}-\u{1E943}\u{1E94B}\u{1E950}-\u{1E959}\u{1E95E}\u{1E95F}\u{1EC71}-\u{1ECB4}\u{1ED01}-\u{1ED3D}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}]/u,bidiS2:/^[\0-\x08\x0E-\x1B!-@\[-`\{-\x84\x86-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02B9\u02BA\u02C2-\u02CF\u02D2-\u02DF\u02E5-\u02ED\u02EF-\u036F\u0374\u0375\u037E\u0384\u0385\u0387\u03F6\u0483-\u0489\u058A\u058D-\u058F\u0591-\u05C7\u05D0-\u05EA\u05EF-\u05F4\u0600-\u070D\u070F-\u074A\u074D-\u07B1\u07C0-\u07FA\u07FD-\u082D\u0830-\u083E\u0840-\u085B\u085E\u0860-\u086A\u0870-\u088E\u0890\u0891\u0898-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09F2\u09F3\u09FB\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AF1\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0BF3-\u0BFA\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C78-\u0C7E\u0C81\u0CBC\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E3F\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39-\u0F3D\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1390-\u1399\u1400\u169B\u169C\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DB\u17DD\u17F0-\u17F9\u1800-\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1940\u1944\u1945\u19DE-\u19FF\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u200B-\u200D\u200F-\u2027\u202F-\u205E\u2060-\u2064\u206A-\u2070\u2074-\u207E\u2080-\u208E\u20A0-\u20C0\u20D0-\u20F0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u2150-\u215F\u2189-\u218B\u2190-\u2335\u237B-\u2394\u2396-\u2426\u2440-\u244A\u2460-\u249B\u24EA-\u26AB\u26AD-\u27FF\u2900-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2CEF-\u2CF1\u2CF9-\u2CFF\u2D7F\u2DE0-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u3004\u3008-\u3020\u302A-\u302D\u3030\u3036\u3037\u303D-\u303F\u3099-\u309C\u30A0\u30FB\u31C0-\u31E3\u321D\u321E\u3250-\u325F\u327C-\u327E\u32B1-\u32BF\u32CC-\u32CF\u3377-\u337A\u33DE\u33DF\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA60D-\uA60F\uA66F-\uA67F\uA69E\uA69F\uA6F0\uA6F1\uA700-\uA721\uA788\uA802\uA806\uA80B\uA825\uA826\uA828-\uA82C\uA838\uA839\uA874-\uA877\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uAB6A\uAB6B\uABE5\uABE8\uABED\uFB1D-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBC2\uFBD3-\uFD8F\uFD92-\uFDC7\uFDCF\uFDF0-\uFE19\uFE20-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFE70-\uFE74\uFE76-\uFEFC\uFEFF\uFF01-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFF9-\uFFFD\u{10101}\u{10140}-\u{1018C}\u{10190}-\u{1019C}\u{101A0}\u{101FD}\u{102E0}-\u{102FB}\u{10376}-\u{1037A}\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10857}-\u{1089E}\u{108A7}-\u{108AF}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{108FB}-\u{1091B}\u{1091F}-\u{10939}\u{1093F}\u{10980}-\u{109B7}\u{109BC}-\u{109CF}\u{109D2}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A38}-\u{10A3A}\u{10A3F}-\u{10A48}\u{10A50}-\u{10A58}\u{10A60}-\u{10A9F}\u{10AC0}-\u{10AE6}\u{10AEB}-\u{10AF6}\u{10B00}-\u{10B35}\u{10B39}-\u{10B55}\u{10B58}-\u{10B72}\u{10B78}-\u{10B91}\u{10B99}-\u{10B9C}\u{10BA9}-\u{10BAF}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10CFA}-\u{10D27}\u{10D30}-\u{10D39}\u{10E60}-\u{10E7E}\u{10E80}-\u{10EA9}\u{10EAB}-\u{10EAD}\u{10EB0}\u{10EB1}\u{10EFD}-\u{10F27}\u{10F30}-\u{10F59}\u{10F70}-\u{10F89}\u{10FB0}-\u{10FCB}\u{10FE0}-\u{10FF6}\u{11001}\u{11038}-\u{11046}\u{11052}-\u{11065}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{111CF}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{11241}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{11660}-\u{1166C}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{1193B}\u{1193C}\u{1193E}\u{11943}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A06}\u{11A09}\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{11F00}\u{11F01}\u{11F36}-\u{11F3A}\u{11F40}\u{11F42}\u{11FD5}-\u{11FF1}\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{16FE2}\u{16FE4}\u{1BC9D}\u{1BC9E}\u{1BCA0}-\u{1BCA3}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D167}-\u{1D169}\u{1D173}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D1E9}\u{1D1EA}\u{1D200}-\u{1D245}\u{1D300}-\u{1D356}\u{1D6DB}\u{1D715}\u{1D74F}\u{1D789}\u{1D7C3}\u{1D7CE}-\u{1D7FF}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E2FF}\u{1E4EC}-\u{1E4EF}\u{1E800}-\u{1E8C4}\u{1E8C7}-\u{1E8D6}\u{1E900}-\u{1E94B}\u{1E950}-\u{1E959}\u{1E95E}\u{1E95F}\u{1EC71}-\u{1ECB4}\u{1ED01}-\u{1ED3D}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}\u{1EEF0}\u{1EEF1}\u{1F000}-\u{1F02B}\u{1F030}-\u{1F093}\u{1F0A0}-\u{1F0AE}\u{1F0B1}-\u{1F0BF}\u{1F0C1}-\u{1F0CF}\u{1F0D1}-\u{1F0F5}\u{1F100}-\u{1F10F}\u{1F12F}\u{1F16A}-\u{1F16F}\u{1F1AD}\u{1F260}-\u{1F265}\u{1F300}-\u{1F6D7}\u{1F6DC}-\u{1F6EC}\u{1F6F0}-\u{1F6FC}\u{1F700}-\u{1F776}\u{1F77B}-\u{1F7D9}\u{1F7E0}-\u{1F7EB}\u{1F7F0}\u{1F800}-\u{1F80B}\u{1F810}-\u{1F847}\u{1F850}-\u{1F859}\u{1F860}-\u{1F887}\u{1F890}-\u{1F8AD}\u{1F8B0}\u{1F8B1}\u{1F900}-\u{1FA53}\u{1FA60}-\u{1FA6D}\u{1FA70}-\u{1FA7C}\u{1FA80}-\u{1FA88}\u{1FA90}-\u{1FABD}\u{1FABF}-\u{1FAC5}\u{1FACE}-\u{1FADB}\u{1FAE0}-\u{1FAE8}\u{1FAF0}-\u{1FAF8}\u{1FB00}-\u{1FB92}\u{1FB94}-\u{1FBCA}\u{1FBF0}-\u{1FBF9}\u{E0001}\u{E0020}-\u{E007F}\u{E0100}-\u{E01EF}]*$/u,bidiS3:/[0-9\xB2\xB3\xB9\u05BE\u05C0\u05C3\u05C6\u05D0-\u05EA\u05EF-\u05F4\u0600-\u0605\u0608\u060B\u060D\u061B-\u064A\u0660-\u0669\u066B-\u066F\u0671-\u06D5\u06DD\u06E5\u06E6\u06EE-\u070D\u070F\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u07FE-\u0815\u081A\u0824\u0828\u0830-\u083E\u0840-\u0858\u085E\u0860-\u086A\u0870-\u088E\u0890\u0891\u08A0-\u08C9\u08E2\u200F\u2070\u2074-\u2079\u2080-\u2089\u2488-\u249B\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBC2\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFC\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\u{102E1}-\u{102FB}\u{10800}-\u{10805}\u{10808}\u{1080A}-\u{10835}\u{10837}\u{10838}\u{1083C}\u{1083F}-\u{10855}\u{10857}-\u{1089E}\u{108A7}-\u{108AF}\u{108E0}-\u{108F2}\u{108F4}\u{108F5}\u{108FB}-\u{1091B}\u{10920}-\u{10939}\u{1093F}\u{10980}-\u{109B7}\u{109BC}-\u{109CF}\u{109D2}-\u{10A00}\u{10A10}-\u{10A13}\u{10A15}-\u{10A17}\u{10A19}-\u{10A35}\u{10A40}-\u{10A48}\u{10A50}-\u{10A58}\u{10A60}-\u{10A9F}\u{10AC0}-\u{10AE4}\u{10AEB}-\u{10AF6}\u{10B00}-\u{10B35}\u{10B40}-\u{10B55}\u{10B58}-\u{10B72}\u{10B78}-\u{10B91}\u{10B99}-\u{10B9C}\u{10BA9}-\u{10BAF}\u{10C00}-\u{10C48}\u{10C80}-\u{10CB2}\u{10CC0}-\u{10CF2}\u{10CFA}-\u{10D23}\u{10D30}-\u{10D39}\u{10E60}-\u{10E7E}\u{10E80}-\u{10EA9}\u{10EAD}\u{10EB0}\u{10EB1}\u{10F00}-\u{10F27}\u{10F30}-\u{10F45}\u{10F51}-\u{10F59}\u{10F70}-\u{10F81}\u{10F86}-\u{10F89}\u{10FB0}-\u{10FCB}\u{10FE0}-\u{10FF6}\u{1D7CE}-\u{1D7FF}\u{1E800}-\u{1E8C4}\u{1E8C7}-\u{1E8CF}\u{1E900}-\u{1E943}\u{1E94B}\u{1E950}-\u{1E959}\u{1E95E}\u{1E95F}\u{1EC71}-\u{1ECB4}\u{1ED01}-\u{1ED3D}\u{1EE00}-\u{1EE03}\u{1EE05}-\u{1EE1F}\u{1EE21}\u{1EE22}\u{1EE24}\u{1EE27}\u{1EE29}-\u{1EE32}\u{1EE34}-\u{1EE37}\u{1EE39}\u{1EE3B}\u{1EE42}\u{1EE47}\u{1EE49}\u{1EE4B}\u{1EE4D}-\u{1EE4F}\u{1EE51}\u{1EE52}\u{1EE54}\u{1EE57}\u{1EE59}\u{1EE5B}\u{1EE5D}\u{1EE5F}\u{1EE61}\u{1EE62}\u{1EE64}\u{1EE67}-\u{1EE6A}\u{1EE6C}-\u{1EE72}\u{1EE74}-\u{1EE77}\u{1EE79}-\u{1EE7C}\u{1EE7E}\u{1EE80}-\u{1EE89}\u{1EE8B}-\u{1EE9B}\u{1EEA1}-\u{1EEA3}\u{1EEA5}-\u{1EEA9}\u{1EEAB}-\u{1EEBB}\u{1F100}-\u{1F10A}\u{1FBF0}-\u{1FBF9}][\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11001}\u{11038}-\u{11046}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{111CF}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{11241}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{1193B}\u{1193C}\u{1193E}\u{11943}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A06}\u{11A09}\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{11F00}\u{11F01}\u{11F36}-\u{11F3A}\u{11F40}\u{11F42}\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{16FE4}\u{1BC9D}\u{1BC9E}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D167}-\u{1D169}\u{1D17B}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E4EC}-\u{1E4EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94A}\u{E0100}-\u{E01EF}]*$/u,bidiS4EN:/[0-9\xB2\xB3\xB9\u06F0-\u06F9\u2070\u2074-\u2079\u2080-\u2089\u2488-\u249B\uFF10-\uFF19\u{102E1}-\u{102FB}\u{1D7CE}-\u{1D7FF}\u{1F100}-\u{1F10A}\u{1FBF0}-\u{1FBF9}]/u,bidiS4AN:/[\u0600-\u0605\u0660-\u0669\u066B\u066C\u06DD\u0890\u0891\u08E2\u{10D30}-\u{10D39}\u{10E60}-\u{10E7E}]/u,bidiS5:/^[\0-\x08\x0E-\x1B!-\x84\x86-\u0377\u037A-\u037F\u0384-\u038A\u038C\u038E-\u03A1\u03A3-\u052F\u0531-\u0556\u0559-\u058A\u058D-\u058F\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0606\u0607\u0609\u060A\u060C\u060E-\u061A\u064B-\u065F\u066A\u0670\u06D6-\u06DC\u06DE-\u06E4\u06E7-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07F6-\u07F9\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09FE\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-\u0A76\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AF1\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B77\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-\u0BFA\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3C-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C5D\u0C60-\u0C63\u0C66-\u0C6F\u0C77-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D00-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4F\u0D54-\u0D63\u0D66-\u0D7F\u0D81-\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2-\u0DF4\u0E01-\u0E3A\u0E3F-\u0E5B\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECE\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00-\u0F47\u0F49-\u0F6C\u0F71-\u0F97\u0F99-\u0FBC\u0FBE-\u0FCC\u0FCE-\u0FDA\u1000-\u10C5\u10C7\u10CD\u10D0-\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-\u137C\u1380-\u1399\u13A0-\u13F5\u13F8-\u13FD\u1400-\u167F\u1681-\u169C\u16A0-\u16F8\u1700-\u1715\u171F-\u1736\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17DD\u17E0-\u17E9\u17F0-\u17F9\u1800-\u1819\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1940\u1944-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u19DE-\u1A1B\u1A1E-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA0-\u1AAD\u1AB0-\u1ACE\u1B00-\u1B4C\u1B50-\u1B7E\u1B80-\u1BF3\u1BFC-\u1C37\u1C3B-\u1C49\u1C4D-\u1C88\u1C90-\u1CBA\u1CBD-\u1CC7\u1CD0-\u1CFA\u1D00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FC4\u1FC6-\u1FD3\u1FD6-\u1FDB\u1FDD-\u1FEF\u1FF2-\u1FF4\u1FF6-\u1FFE\u200B-\u200E\u2010-\u2027\u202F-\u205E\u2060-\u2064\u206A-\u2071\u2074-\u208E\u2090-\u209C\u20A0-\u20C0\u20D0-\u20F0\u2100-\u218B\u2190-\u2426\u2440-\u244A\u2460-\u2B73\u2B76-\u2B95\u2B97-\u2CF3\u2CF9-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D70\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2E5D\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u303F\u3041-\u3096\u3099-\u30FF\u3105-\u312F\u3131-\u318E\u3190-\u31E3\u31F0-\u321E\u3220-\uA48C\uA490-\uA4C6\uA4D0-\uA62B\uA640-\uA6F7\uA700-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA82C\uA830-\uA839\uA840-\uA877\uA880-\uA8C5\uA8CE-\uA8D9\uA8E0-\uA953\uA95F-\uA97C\uA980-\uA9CD\uA9CF-\uA9D9\uA9DE-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA5C-\uAAC2\uAADB-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB6B\uAB70-\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uD800-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1E\uFB29\uFD3E-\uFD4F\uFDCF\uFDFD-\uFE19\uFE20-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFEFF\uFF01-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFF9-\uFFFD\u{10000}-\u{1000B}\u{1000D}-\u{10026}\u{10028}-\u{1003A}\u{1003C}\u{1003D}\u{1003F}-\u{1004D}\u{10050}-\u{1005D}\u{10080}-\u{100FA}\u{10100}-\u{10102}\u{10107}-\u{10133}\u{10137}-\u{1018E}\u{10190}-\u{1019C}\u{101A0}\u{101D0}-\u{101FD}\u{10280}-\u{1029C}\u{102A0}-\u{102D0}\u{102E0}-\u{102FB}\u{10300}-\u{10323}\u{1032D}-\u{1034A}\u{10350}-\u{1037A}\u{10380}-\u{1039D}\u{1039F}-\u{103C3}\u{103C8}-\u{103D5}\u{10400}-\u{1049D}\u{104A0}-\u{104A9}\u{104B0}-\u{104D3}\u{104D8}-\u{104FB}\u{10500}-\u{10527}\u{10530}-\u{10563}\u{1056F}-\u{1057A}\u{1057C}-\u{1058A}\u{1058C}-\u{10592}\u{10594}\u{10595}\u{10597}-\u{105A1}\u{105A3}-\u{105B1}\u{105B3}-\u{105B9}\u{105BB}\u{105BC}\u{10600}-\u{10736}\u{10740}-\u{10755}\u{10760}-\u{10767}\u{10780}-\u{10785}\u{10787}-\u{107B0}\u{107B2}-\u{107BA}\u{1091F}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10B39}-\u{10B3F}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11000}-\u{1104D}\u{11052}-\u{11075}\u{1107F}-\u{110C2}\u{110CD}\u{110D0}-\u{110E8}\u{110F0}-\u{110F9}\u{11100}-\u{11134}\u{11136}-\u{11147}\u{11150}-\u{11176}\u{11180}-\u{111DF}\u{111E1}-\u{111F4}\u{11200}-\u{11211}\u{11213}-\u{11241}\u{11280}-\u{11286}\u{11288}\u{1128A}-\u{1128D}\u{1128F}-\u{1129D}\u{1129F}-\u{112A9}\u{112B0}-\u{112EA}\u{112F0}-\u{112F9}\u{11300}-\u{11303}\u{11305}-\u{1130C}\u{1130F}\u{11310}\u{11313}-\u{11328}\u{1132A}-\u{11330}\u{11332}\u{11333}\u{11335}-\u{11339}\u{1133B}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11350}\u{11357}\u{1135D}-\u{11363}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11400}-\u{1145B}\u{1145D}-\u{11461}\u{11480}-\u{114C7}\u{114D0}-\u{114D9}\u{11580}-\u{115B5}\u{115B8}-\u{115DD}\u{11600}-\u{11644}\u{11650}-\u{11659}\u{11660}-\u{1166C}\u{11680}-\u{116B9}\u{116C0}-\u{116C9}\u{11700}-\u{1171A}\u{1171D}-\u{1172B}\u{11730}-\u{11746}\u{11800}-\u{1183B}\u{118A0}-\u{118F2}\u{118FF}-\u{11906}\u{11909}\u{1190C}-\u{11913}\u{11915}\u{11916}\u{11918}-\u{11935}\u{11937}\u{11938}\u{1193B}-\u{11946}\u{11950}-\u{11959}\u{119A0}-\u{119A7}\u{119AA}-\u{119D7}\u{119DA}-\u{119E4}\u{11A00}-\u{11A47}\u{11A50}-\u{11AA2}\u{11AB0}-\u{11AF8}\u{11B00}-\u{11B09}\u{11C00}-\u{11C08}\u{11C0A}-\u{11C36}\u{11C38}-\u{11C45}\u{11C50}-\u{11C6C}\u{11C70}-\u{11C8F}\u{11C92}-\u{11CA7}\u{11CA9}-\u{11CB6}\u{11D00}-\u{11D06}\u{11D08}\u{11D09}\u{11D0B}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D47}\u{11D50}-\u{11D59}\u{11D60}-\u{11D65}\u{11D67}\u{11D68}\u{11D6A}-\u{11D8E}\u{11D90}\u{11D91}\u{11D93}-\u{11D98}\u{11DA0}-\u{11DA9}\u{11EE0}-\u{11EF8}\u{11F00}-\u{11F10}\u{11F12}-\u{11F3A}\u{11F3E}-\u{11F59}\u{11FB0}\u{11FC0}-\u{11FF1}\u{11FFF}-\u{12399}\u{12400}-\u{1246E}\u{12470}-\u{12474}\u{12480}-\u{12543}\u{12F90}-\u{12FF2}\u{13000}-\u{13455}\u{14400}-\u{14646}\u{16800}-\u{16A38}\u{16A40}-\u{16A5E}\u{16A60}-\u{16A69}\u{16A6E}-\u{16ABE}\u{16AC0}-\u{16AC9}\u{16AD0}-\u{16AED}\u{16AF0}-\u{16AF5}\u{16B00}-\u{16B45}\u{16B50}-\u{16B59}\u{16B5B}-\u{16B61}\u{16B63}-\u{16B77}\u{16B7D}-\u{16B8F}\u{16E40}-\u{16E9A}\u{16F00}-\u{16F4A}\u{16F4F}-\u{16F87}\u{16F8F}-\u{16F9F}\u{16FE0}-\u{16FE4}\u{16FF0}\u{16FF1}\u{17000}-\u{187F7}\u{18800}-\u{18CD5}\u{18D00}-\u{18D08}\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{1B170}-\u{1B2FB}\u{1BC00}-\u{1BC6A}\u{1BC70}-\u{1BC7C}\u{1BC80}-\u{1BC88}\u{1BC90}-\u{1BC99}\u{1BC9C}-\u{1BCA3}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1CF50}-\u{1CFC3}\u{1D000}-\u{1D0F5}\u{1D100}-\u{1D126}\u{1D129}-\u{1D1EA}\u{1D200}-\u{1D245}\u{1D2C0}-\u{1D2D3}\u{1D2E0}-\u{1D2F3}\u{1D300}-\u{1D356}\u{1D360}-\u{1D378}\u{1D400}-\u{1D454}\u{1D456}-\u{1D49C}\u{1D49E}\u{1D49F}\u{1D4A2}\u{1D4A5}\u{1D4A6}\u{1D4A9}-\u{1D4AC}\u{1D4AE}-\u{1D4B9}\u{1D4BB}\u{1D4BD}-\u{1D4C3}\u{1D4C5}-\u{1D505}\u{1D507}-\u{1D50A}\u{1D50D}-\u{1D514}\u{1D516}-\u{1D51C}\u{1D51E}-\u{1D539}\u{1D53B}-\u{1D53E}\u{1D540}-\u{1D544}\u{1D546}\u{1D54A}-\u{1D550}\u{1D552}-\u{1D6A5}\u{1D6A8}-\u{1D7CB}\u{1D7CE}-\u{1DA8B}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1DF00}-\u{1DF1E}\u{1DF25}-\u{1DF2A}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E030}-\u{1E06D}\u{1E08F}\u{1E100}-\u{1E12C}\u{1E130}-\u{1E13D}\u{1E140}-\u{1E149}\u{1E14E}\u{1E14F}\u{1E290}-\u{1E2AE}\u{1E2C0}-\u{1E2F9}\u{1E2FF}\u{1E4D0}-\u{1E4F9}\u{1E7E0}-\u{1E7E6}\u{1E7E8}-\u{1E7EB}\u{1E7ED}\u{1E7EE}\u{1E7F0}-\u{1E7FE}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94A}\u{1EEF0}\u{1EEF1}\u{1F000}-\u{1F02B}\u{1F030}-\u{1F093}\u{1F0A0}-\u{1F0AE}\u{1F0B1}-\u{1F0BF}\u{1F0C1}-\u{1F0CF}\u{1F0D1}-\u{1F0F5}\u{1F100}-\u{1F1AD}\u{1F1E6}-\u{1F202}\u{1F210}-\u{1F23B}\u{1F240}-\u{1F248}\u{1F250}\u{1F251}\u{1F260}-\u{1F265}\u{1F300}-\u{1F6D7}\u{1F6DC}-\u{1F6EC}\u{1F6F0}-\u{1F6FC}\u{1F700}-\u{1F776}\u{1F77B}-\u{1F7D9}\u{1F7E0}-\u{1F7EB}\u{1F7F0}\u{1F800}-\u{1F80B}\u{1F810}-\u{1F847}\u{1F850}-\u{1F859}\u{1F860}-\u{1F887}\u{1F890}-\u{1F8AD}\u{1F8B0}\u{1F8B1}\u{1F900}-\u{1FA53}\u{1FA60}-\u{1FA6D}\u{1FA70}-\u{1FA7C}\u{1FA80}-\u{1FA88}\u{1FA90}-\u{1FABD}\u{1FABF}-\u{1FAC5}\u{1FACE}-\u{1FADB}\u{1FAE0}-\u{1FAE8}\u{1FAF0}-\u{1FAF8}\u{1FB00}-\u{1FB92}\u{1FB94}-\u{1FBCA}\u{1FBF0}-\u{1FBF9}\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{E0001}\u{E0020}-\u{E007F}\u{E0100}-\u{E01EF}\u{F0000}-\u{FFFFD}\u{100000}-\u{10FFFD}]*$/u,bidiS6:/[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02B8\u02BB-\u02C1\u02D0\u02D1\u02E0-\u02E4\u02EE\u0370-\u0373\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0482\u048A-\u052F\u0531-\u0556\u0559-\u0589\u06F0-\u06F9\u0903-\u0939\u093B\u093D-\u0940\u0949-\u094C\u094E-\u0950\u0958-\u0961\u0964-\u0980\u0982\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD-\u09C0\u09C7\u09C8\u09CB\u09CC\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09FA\u09FC\u09FD\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3E-\u0A40\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A76\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD-\u0AC0\u0AC9\u0ACB\u0ACC\u0AD0\u0AE0\u0AE1\u0AE6-\u0AF0\u0AF9\u0B02\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B3E\u0B40\u0B47\u0B48\u0B4B\u0B4C\u0B57\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE\u0BBF\u0BC1\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7\u0BE6-\u0BF2\u0C01-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C41-\u0C44\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C66-\u0C6F\u0C77\u0C7F\u0C80\u0C82-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD-\u0CC4\u0CC6-\u0CC8\u0CCA\u0CCB\u0CD5\u0CD6\u0CDD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1-\u0CF3\u0D02-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D4F\u0D54-\u0D61\u0D66-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2-\u0DF4\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E4F-\u0E5B\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00-\u0F17\u0F1A-\u0F34\u0F36\u0F38\u0F3E-\u0F47\u0F49-\u0F6C\u0F7F\u0F85\u0F88-\u0F8C\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE-\u0FDA\u1000-\u102C\u1031\u1038\u103B\u103C\u103F-\u1057\u105A-\u105D\u1061-\u1070\u1075-\u1081\u1083\u1084\u1087-\u108C\u108E-\u109C\u109E-\u10C5\u10C7\u10CD\u10D0-\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\u1360-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u167F\u1681-\u169A\u16A0-\u16F8\u1700-\u1711\u1715\u171F-\u1731\u1734-\u1736\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17B6\u17BE-\u17C5\u17C7\u17C8\u17D4-\u17DA\u17DC\u17E0-\u17E9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1923-\u1926\u1929-\u192B\u1930\u1931\u1933-\u1938\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A19\u1A1A\u1A1E-\u1A55\u1A57\u1A61\u1A63\u1A64\u1A6D-\u1A72\u1A80-\u1A89\u1A90-\u1A99\u1AA0-\u1AAD\u1B04-\u1B33\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B4C\u1B50-\u1B6A\u1B74-\u1B7E\u1B82-\u1BA1\u1BA6\u1BA7\u1BAA\u1BAE-\u1BE5\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2\u1BF3\u1BFC-\u1C2B\u1C34\u1C35\u1C3B-\u1C49\u1C4D-\u1C88\u1C90-\u1CBA\u1CBD-\u1CC7\u1CD3\u1CE1\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5-\u1CF7\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\u200E\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u214F\u2160-\u2188\u2336-\u237A\u2395\u2488-\u24E9\u26AC\u2800-\u28FF\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D70\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u302E\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3190-\u31BF\u31F0-\u321C\u3220-\u324F\u3260-\u327B\u327F-\u32B0\u32C0-\u32CB\u32D0-\u3376\u337B-\u33DD\u33E0-\u33FE\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA60C\uA610-\uA62B\uA640-\uA66E\uA680-\uA69D\uA6A0-\uA6EF\uA6F2-\uA6F7\uA722-\uA787\uA789-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA824\uA827\uA830-\uA837\uA840-\uA873\uA880-\uA8C3\uA8CE-\uA8D9\uA8F2-\uA8FE\uA900-\uA925\uA92E-\uA946\uA952\uA953\uA95F-\uA97C\uA983-\uA9B2\uA9B4\uA9B5\uA9BA\uA9BB\uA9BE-\uA9CD\uA9CF-\uA9D9\uA9DE-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA2F\uAA30\uAA33\uAA34\uAA40-\uAA42\uAA44-\uAA4B\uAA4D\uAA50-\uAA59\uAA5C-\uAA7B\uAA7D-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAAEB\uAAEE-\uAAF5\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB69\uAB70-\uABE4\uABE6\uABE7\uABE9-\uABEC\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uD800-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\u{10000}-\u{1000B}\u{1000D}-\u{10026}\u{10028}-\u{1003A}\u{1003C}\u{1003D}\u{1003F}-\u{1004D}\u{10050}-\u{1005D}\u{10080}-\u{100FA}\u{10100}\u{10102}\u{10107}-\u{10133}\u{10137}-\u{1013F}\u{1018D}\u{1018E}\u{101D0}-\u{101FC}\u{10280}-\u{1029C}\u{102A0}-\u{102D0}\u{102E1}-\u{102FB}\u{10300}-\u{10323}\u{1032D}-\u{1034A}\u{10350}-\u{10375}\u{10380}-\u{1039D}\u{1039F}-\u{103C3}\u{103C8}-\u{103D5}\u{10400}-\u{1049D}\u{104A0}-\u{104A9}\u{104B0}-\u{104D3}\u{104D8}-\u{104FB}\u{10500}-\u{10527}\u{10530}-\u{10563}\u{1056F}-\u{1057A}\u{1057C}-\u{1058A}\u{1058C}-\u{10592}\u{10594}\u{10595}\u{10597}-\u{105A1}\u{105A3}-\u{105B1}\u{105B3}-\u{105B9}\u{105BB}\u{105BC}\u{10600}-\u{10736}\u{10740}-\u{10755}\u{10760}-\u{10767}\u{10780}-\u{10785}\u{10787}-\u{107B0}\u{107B2}-\u{107BA}\u{11000}\u{11002}-\u{11037}\u{11047}-\u{1104D}\u{11066}-\u{1106F}\u{11071}\u{11072}\u{11075}\u{11082}-\u{110B2}\u{110B7}\u{110B8}\u{110BB}-\u{110C1}\u{110CD}\u{110D0}-\u{110E8}\u{110F0}-\u{110F9}\u{11103}-\u{11126}\u{1112C}\u{11136}-\u{11147}\u{11150}-\u{11172}\u{11174}-\u{11176}\u{11182}-\u{111B5}\u{111BF}-\u{111C8}\u{111CD}\u{111CE}\u{111D0}-\u{111DF}\u{111E1}-\u{111F4}\u{11200}-\u{11211}\u{11213}-\u{1122E}\u{11232}\u{11233}\u{11235}\u{11238}-\u{1123D}\u{1123F}\u{11240}\u{11280}-\u{11286}\u{11288}\u{1128A}-\u{1128D}\u{1128F}-\u{1129D}\u{1129F}-\u{112A9}\u{112B0}-\u{112DE}\u{112E0}-\u{112E2}\u{112F0}-\u{112F9}\u{11302}\u{11303}\u{11305}-\u{1130C}\u{1130F}\u{11310}\u{11313}-\u{11328}\u{1132A}-\u{11330}\u{11332}\u{11333}\u{11335}-\u{11339}\u{1133D}-\u{1133F}\u{11341}-\u{11344}\u{11347}\u{11348}\u{1134B}-\u{1134D}\u{11350}\u{11357}\u{1135D}-\u{11363}\u{11400}-\u{11437}\u{11440}\u{11441}\u{11445}\u{11447}-\u{1145B}\u{1145D}\u{1145F}-\u{11461}\u{11480}-\u{114B2}\u{114B9}\u{114BB}-\u{114BE}\u{114C1}\u{114C4}-\u{114C7}\u{114D0}-\u{114D9}\u{11580}-\u{115B1}\u{115B8}-\u{115BB}\u{115BE}\u{115C1}-\u{115DB}\u{11600}-\u{11632}\u{1163B}\u{1163C}\u{1163E}\u{11641}-\u{11644}\u{11650}-\u{11659}\u{11680}-\u{116AA}\u{116AC}\u{116AE}\u{116AF}\u{116B6}\u{116B8}\u{116B9}\u{116C0}-\u{116C9}\u{11700}-\u{1171A}\u{11720}\u{11721}\u{11726}\u{11730}-\u{11746}\u{11800}-\u{1182E}\u{11838}\u{1183B}\u{118A0}-\u{118F2}\u{118FF}-\u{11906}\u{11909}\u{1190C}-\u{11913}\u{11915}\u{11916}\u{11918}-\u{11935}\u{11937}\u{11938}\u{1193D}\u{1193F}-\u{11942}\u{11944}-\u{11946}\u{11950}-\u{11959}\u{119A0}-\u{119A7}\u{119AA}-\u{119D3}\u{119DC}-\u{119DF}\u{119E1}-\u{119E4}\u{11A00}\u{11A07}\u{11A08}\u{11A0B}-\u{11A32}\u{11A39}\u{11A3A}\u{11A3F}-\u{11A46}\u{11A50}\u{11A57}\u{11A58}\u{11A5C}-\u{11A89}\u{11A97}\u{11A9A}-\u{11AA2}\u{11AB0}-\u{11AF8}\u{11B00}-\u{11B09}\u{11C00}-\u{11C08}\u{11C0A}-\u{11C2F}\u{11C3E}-\u{11C45}\u{11C50}-\u{11C6C}\u{11C70}-\u{11C8F}\u{11CA9}\u{11CB1}\u{11CB4}\u{11D00}-\u{11D06}\u{11D08}\u{11D09}\u{11D0B}-\u{11D30}\u{11D46}\u{11D50}-\u{11D59}\u{11D60}-\u{11D65}\u{11D67}\u{11D68}\u{11D6A}-\u{11D8E}\u{11D93}\u{11D94}\u{11D96}\u{11D98}\u{11DA0}-\u{11DA9}\u{11EE0}-\u{11EF2}\u{11EF5}-\u{11EF8}\u{11F02}-\u{11F10}\u{11F12}-\u{11F35}\u{11F3E}\u{11F3F}\u{11F41}\u{11F43}-\u{11F59}\u{11FB0}\u{11FC0}-\u{11FD4}\u{11FFF}-\u{12399}\u{12400}-\u{1246E}\u{12470}-\u{12474}\u{12480}-\u{12543}\u{12F90}-\u{12FF2}\u{13000}-\u{1343F}\u{13441}-\u{13446}\u{14400}-\u{14646}\u{16800}-\u{16A38}\u{16A40}-\u{16A5E}\u{16A60}-\u{16A69}\u{16A6E}-\u{16ABE}\u{16AC0}-\u{16AC9}\u{16AD0}-\u{16AED}\u{16AF5}\u{16B00}-\u{16B2F}\u{16B37}-\u{16B45}\u{16B50}-\u{16B59}\u{16B5B}-\u{16B61}\u{16B63}-\u{16B77}\u{16B7D}-\u{16B8F}\u{16E40}-\u{16E9A}\u{16F00}-\u{16F4A}\u{16F50}-\u{16F87}\u{16F93}-\u{16F9F}\u{16FE0}\u{16FE1}\u{16FE3}\u{16FF0}\u{16FF1}\u{17000}-\u{187F7}\u{18800}-\u{18CD5}\u{18D00}-\u{18D08}\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{1B170}-\u{1B2FB}\u{1BC00}-\u{1BC6A}\u{1BC70}-\u{1BC7C}\u{1BC80}-\u{1BC88}\u{1BC90}-\u{1BC99}\u{1BC9C}\u{1BC9F}\u{1CF50}-\u{1CFC3}\u{1D000}-\u{1D0F5}\u{1D100}-\u{1D126}\u{1D129}-\u{1D166}\u{1D16A}-\u{1D172}\u{1D183}\u{1D184}\u{1D18C}-\u{1D1A9}\u{1D1AE}-\u{1D1E8}\u{1D2C0}-\u{1D2D3}\u{1D2E0}-\u{1D2F3}\u{1D360}-\u{1D378}\u{1D400}-\u{1D454}\u{1D456}-\u{1D49C}\u{1D49E}\u{1D49F}\u{1D4A2}\u{1D4A5}\u{1D4A6}\u{1D4A9}-\u{1D4AC}\u{1D4AE}-\u{1D4B9}\u{1D4BB}\u{1D4BD}-\u{1D4C3}\u{1D4C5}-\u{1D505}\u{1D507}-\u{1D50A}\u{1D50D}-\u{1D514}\u{1D516}-\u{1D51C}\u{1D51E}-\u{1D539}\u{1D53B}-\u{1D53E}\u{1D540}-\u{1D544}\u{1D546}\u{1D54A}-\u{1D550}\u{1D552}-\u{1D6A5}\u{1D6A8}-\u{1D6DA}\u{1D6DC}-\u{1D714}\u{1D716}-\u{1D74E}\u{1D750}-\u{1D788}\u{1D78A}-\u{1D7C2}\u{1D7C4}-\u{1D7CB}\u{1D7CE}-\u{1D9FF}\u{1DA37}-\u{1DA3A}\u{1DA6D}-\u{1DA74}\u{1DA76}-\u{1DA83}\u{1DA85}-\u{1DA8B}\u{1DF00}-\u{1DF1E}\u{1DF25}-\u{1DF2A}\u{1E030}-\u{1E06D}\u{1E100}-\u{1E12C}\u{1E137}-\u{1E13D}\u{1E140}-\u{1E149}\u{1E14E}\u{1E14F}\u{1E290}-\u{1E2AD}\u{1E2C0}-\u{1E2EB}\u{1E2F0}-\u{1E2F9}\u{1E4D0}-\u{1E4EB}\u{1E4F0}-\u{1E4F9}\u{1E7E0}-\u{1E7E6}\u{1E7E8}-\u{1E7EB}\u{1E7ED}\u{1E7EE}\u{1E7F0}-\u{1E7FE}\u{1F100}-\u{1F10A}\u{1F110}-\u{1F12E}\u{1F130}-\u{1F169}\u{1F170}-\u{1F1AC}\u{1F1E6}-\u{1F202}\u{1F210}-\u{1F23B}\u{1F240}-\u{1F248}\u{1F250}\u{1F251}\u{1FBF0}-\u{1FBF9}\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{F0000}-\u{FFFFD}\u{100000}-\u{10FFFD}][\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3C\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732\u1733\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u180F\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ACE\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\u{101FD}\u{102E0}\u{10376}-\u{1037A}\u{10A01}-\u{10A03}\u{10A05}\u{10A06}\u{10A0C}-\u{10A0F}\u{10A38}-\u{10A3A}\u{10A3F}\u{10AE5}\u{10AE6}\u{10D24}-\u{10D27}\u{10EAB}\u{10EAC}\u{10EFD}-\u{10EFF}\u{10F46}-\u{10F50}\u{10F82}-\u{10F85}\u{11001}\u{11038}-\u{11046}\u{11070}\u{11073}\u{11074}\u{1107F}-\u{11081}\u{110B3}-\u{110B6}\u{110B9}\u{110BA}\u{110C2}\u{11100}-\u{11102}\u{11127}-\u{1112B}\u{1112D}-\u{11134}\u{11173}\u{11180}\u{11181}\u{111B6}-\u{111BE}\u{111C9}-\u{111CC}\u{111CF}\u{1122F}-\u{11231}\u{11234}\u{11236}\u{11237}\u{1123E}\u{11241}\u{112DF}\u{112E3}-\u{112EA}\u{11300}\u{11301}\u{1133B}\u{1133C}\u{11340}\u{11366}-\u{1136C}\u{11370}-\u{11374}\u{11438}-\u{1143F}\u{11442}-\u{11444}\u{11446}\u{1145E}\u{114B3}-\u{114B8}\u{114BA}\u{114BF}\u{114C0}\u{114C2}\u{114C3}\u{115B2}-\u{115B5}\u{115BC}\u{115BD}\u{115BF}\u{115C0}\u{115DC}\u{115DD}\u{11633}-\u{1163A}\u{1163D}\u{1163F}\u{11640}\u{116AB}\u{116AD}\u{116B0}-\u{116B5}\u{116B7}\u{1171D}-\u{1171F}\u{11722}-\u{11725}\u{11727}-\u{1172B}\u{1182F}-\u{11837}\u{11839}\u{1183A}\u{1193B}\u{1193C}\u{1193E}\u{11943}\u{119D4}-\u{119D7}\u{119DA}\u{119DB}\u{119E0}\u{11A01}-\u{11A06}\u{11A09}\u{11A0A}\u{11A33}-\u{11A38}\u{11A3B}-\u{11A3E}\u{11A47}\u{11A51}-\u{11A56}\u{11A59}-\u{11A5B}\u{11A8A}-\u{11A96}\u{11A98}\u{11A99}\u{11C30}-\u{11C36}\u{11C38}-\u{11C3D}\u{11C92}-\u{11CA7}\u{11CAA}-\u{11CB0}\u{11CB2}\u{11CB3}\u{11CB5}\u{11CB6}\u{11D31}-\u{11D36}\u{11D3A}\u{11D3C}\u{11D3D}\u{11D3F}-\u{11D45}\u{11D47}\u{11D90}\u{11D91}\u{11D95}\u{11D97}\u{11EF3}\u{11EF4}\u{11F00}\u{11F01}\u{11F36}-\u{11F3A}\u{11F40}\u{11F42}\u{13440}\u{13447}-\u{13455}\u{16AF0}-\u{16AF4}\u{16B30}-\u{16B36}\u{16F4F}\u{16F8F}-\u{16F92}\u{16FE4}\u{1BC9D}\u{1BC9E}\u{1CF00}-\u{1CF2D}\u{1CF30}-\u{1CF46}\u{1D167}-\u{1D169}\u{1D17B}-\u{1D182}\u{1D185}-\u{1D18B}\u{1D1AA}-\u{1D1AD}\u{1D242}-\u{1D244}\u{1DA00}-\u{1DA36}\u{1DA3B}-\u{1DA6C}\u{1DA75}\u{1DA84}\u{1DA9B}-\u{1DA9F}\u{1DAA1}-\u{1DAAF}\u{1E000}-\u{1E006}\u{1E008}-\u{1E018}\u{1E01B}-\u{1E021}\u{1E023}\u{1E024}\u{1E026}-\u{1E02A}\u{1E08F}\u{1E130}-\u{1E136}\u{1E2AE}\u{1E2EC}-\u{1E2EF}\u{1E4EC}-\u{1E4EF}\u{1E8D0}-\u{1E8D6}\u{1E944}-\u{1E94A}\u{E0100}-\u{E01EF}]*$/u}},5597:e=>{"use strict";e.exports.STATUS_MAPPING={mapped:1,valid:2,disallowed:3,disallowed_STD3_valid:4,disallowed_STD3_mapped:5,deviation:6,ignored:7}},6800:(e,t)=>{"use strict";function r(e,t,r){return r.globals&&(e=r.globals[e.name]),new e(`${r.context?r.context:"Value"} ${t}.`)}function n(e,t){if("bigint"==typeof e)throw r(TypeError,"is a BigInt which cannot be converted to a number",t);return t.globals?t.globals.Number(e):Number(e)}function o(e){return u(e>0&&e%1==.5&&!(1&e)||e<0&&e%1==-.5&&!(1&~e)?Math.floor(e):Math.round(e))}function s(e){return u(Math.trunc(e))}function i(e){return e<0?-1:1}function u(e){return 0===e?0:e}function a(e,{unsigned:t}){let a,c;t?(a=0,c=2**e-1):(a=-(2**(e-1)),c=2**(e-1)-1);const l=2**e,h=2**(e-1);return(e,d={})=>{let p=n(e,d);if(p=u(p),d.enforceRange){if(!Number.isFinite(p))throw r(TypeError,"is not a finite number",d);if(p=s(p),p<a||p>c)throw r(TypeError,`is outside the accepted range of ${a} to ${c}, inclusive`,d);return p}return!Number.isNaN(p)&&d.clamp?(p=Math.min(Math.max(p,a),c),p=o(p),p):Number.isFinite(p)&&0!==p?(p=s(p),p>=a&&p<=c?p:(p=function(e,t){const r=e%t;return i(t)!==i(r)?r+t:r}(p,l),!t&&p>=h?p-l:p)):0}}function c(e,{unsigned:t}){const i=Number.MAX_SAFE_INTEGER,a=t?0:Number.MIN_SAFE_INTEGER,c=t?BigInt.asUintN:BigInt.asIntN;return(t,l={})=>{let h=n(t,l);if(h=u(h),l.enforceRange){if(!Number.isFinite(h))throw r(TypeError,"is not a finite number",l);if(h=s(h),h<a||h>i)throw r(TypeError,`is outside the accepted range of ${a} to ${i}, inclusive`,l);return h}if(!Number.isNaN(h)&&l.clamp)return h=Math.min(Math.max(h,a),i),h=o(h),h;if(!Number.isFinite(h)||0===h)return 0;let d=BigInt(s(h));return d=c(e,d),Number(d)}}t.any=e=>e,t.undefined=()=>{},t.boolean=e=>Boolean(e),t.byte=a(8,{unsigned:!1}),t.octet=a(8,{unsigned:!0}),t.short=a(16,{unsigned:!1}),t["unsigned short"]=a(16,{unsigned:!0}),t.long=a(32,{unsigned:!1}),t["unsigned long"]=a(32,{unsigned:!0}),t["long long"]=c(64,{unsigned:!1}),t["unsigned long long"]=c(64,{unsigned:!0}),t.double=(e,t={})=>{const o=n(e,t);if(!Number.isFinite(o))throw r(TypeError,"is not a finite floating-point value",t);return o},t["unrestricted double"]=(e,t={})=>n(e,t),t.float=(e,t={})=>{const o=n(e,t);if(!Number.isFinite(o))throw r(TypeError,"is not a finite floating-point value",t);if(Object.is(o,-0))return o;const s=Math.fround(o);if(!Number.isFinite(s))throw r(TypeError,"is outside the range of a single-precision floating-point value",t);return s},t["unrestricted float"]=(e,t={})=>{const r=n(e,t);return isNaN(r)||Object.is(r,-0)?r:Math.fround(r)},t.DOMString=(e,t={})=>{if(t.treatNullAsEmptyString&&null===e)return"";if("symbol"==typeof e)throw r(TypeError,"is a symbol, which cannot be converted to a string",t);return(t.globals?t.globals.String:String)(e)},t.ByteString=(e,n={})=>{const o=t.DOMString(e,n);let s;for(let e=0;void 0!==(s=o.codePointAt(e));++e)if(s>255)throw r(TypeError,"is not a valid ByteString",n);return o},t.USVString=(e,r={})=>{const n=t.DOMString(e,r),o=n.length,s=[];for(let e=0;e<o;++e){const t=n.charCodeAt(e);if(t<55296||t>57343)s.push(String.fromCodePoint(t));else if(56320<=t&&t<=57343)s.push(String.fromCodePoint(65533));else if(e===o-1)s.push(String.fromCodePoint(65533));else{const r=n.charCodeAt(e+1);if(56320<=r&&r<=57343){const n=1023&t,o=1023&r;s.push(String.fromCodePoint(65536+1024*n+o)),++e}else s.push(String.fromCodePoint(65533))}}return s.join("")},t.object=(e,t={})=>{if(null===e||"object"!=typeof e&&"function"!=typeof e)throw r(TypeError,"is not an object",t);return e};const l=Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get,h="function"==typeof SharedArrayBuffer?Object.getOwnPropertyDescriptor(SharedArrayBuffer.prototype,"byteLength").get:null;function d(e){try{return l.call(e),!0}catch{return!1}}function p(e){try{return h.call(e),!0}catch{return!1}}function f(e){try{return new Uint8Array(e),!1}catch{return!0}}t.ArrayBuffer=(e,t={})=>{if(!d(e)){if(t.allowShared&&!p(e))throw r(TypeError,"is not an ArrayBuffer or SharedArrayBuffer",t);throw r(TypeError,"is not an ArrayBuffer",t)}if(f(e))throw r(TypeError,"is a detached ArrayBuffer",t);return e};const m=Object.getOwnPropertyDescriptor(DataView.prototype,"byteLength").get;t.DataView=(e,t={})=>{try{m.call(e)}catch(e){throw r(TypeError,"is not a DataView",t)}if(!t.allowShared&&p(e.buffer))throw r(TypeError,"is backed by a SharedArrayBuffer, which is not allowed",t);if(f(e.buffer))throw r(TypeError,"is backed by a detached ArrayBuffer",t);return e};const g=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Uint8Array).prototype,Symbol.toStringTag).get;[Int8Array,Int16Array,Int32Array,Uint8Array,Uint16Array,Uint32Array,Uint8ClampedArray,Float32Array,Float64Array].forEach((e=>{const{name:n}=e,o=/^[AEIOU]/u.test(n)?"an":"a";t[n]=(e,t={})=>{if(!ArrayBuffer.isView(e)||g.call(e)!==n)throw r(TypeError,`is not ${o} ${n} object`,t);if(!t.allowShared&&p(e.buffer))throw r(TypeError,"is a view on a SharedArrayBuffer, which is not allowed",t);if(f(e.buffer))throw r(TypeError,"is a view on a detached ArrayBuffer",t);return e}})),t.ArrayBufferView=(e,t={})=>{if(!ArrayBuffer.isView(e))throw r(TypeError,"is not a view on an ArrayBuffer or SharedArrayBuffer",t);if(!t.allowShared&&p(e.buffer))throw r(TypeError,"is a view on a SharedArrayBuffer, which is not allowed",t);if(f(e.buffer))throw r(TypeError,"is a view on a detached ArrayBuffer",t);return e},t.BufferSource=(e,t={})=>{if(ArrayBuffer.isView(e)){if(!t.allowShared&&p(e.buffer))throw r(TypeError,"is a view on a SharedArrayBuffer, which is not allowed",t);if(f(e.buffer))throw r(TypeError,"is a view on a detached ArrayBuffer",t);return e}if(!t.allowShared&&!d(e))throw r(TypeError,"is not an ArrayBuffer or a view on one",t);if(t.allowShared&&!p(e)&&!d(e))throw r(TypeError,"is not an ArrayBuffer, SharedArrayBuffer, or a view on one",t);if(f(e))throw r(TypeError,"is a detached ArrayBuffer",t);return e},t.DOMTimeStamp=t["unsigned long long"]},9865:(e,t,r)=>{"use strict";const{URL:n,URLSearchParams:o}=r(8957),s=r(2140),i=r(1912),u={Array,Object,Promise,String,TypeError};n.install(u,["Window"]),o.install(u,["Window"]),t.URL=u.URL,t.URLSearchParams=u.URLSearchParams,t.parseURL=s.parseURL,t.basicURLParse=s.basicURLParse,t.serializeURL=s.serializeURL,t.serializePath=s.serializePath,t.serializeHost=s.serializeHost,t.serializeInteger=s.serializeInteger,t.serializeURLOrigin=s.serializeURLOrigin,t.setTheUsername=s.setTheUsername,t.setThePassword=s.setThePassword,t.cannotHaveAUsernamePasswordPort=s.cannotHaveAUsernamePasswordPort,t.hasAnOpaquePath=s.hasAnOpaquePath,t.percentDecodeString=i.percentDecodeString,t.percentDecodeBytes=i.percentDecodeBytes},3249:(e,t,r)=>{"use strict";const n=r(6800),o=r(2908);t.convert=(e,t,{context:r="The provided value"}={})=>{if("function"!=typeof t)throw new e.TypeError(r+" is not a function");function s(...s){const i=o.tryWrapperForImpl(this);let u;for(let e=0;e<s.length;e++)s[e]=o.tryWrapperForImpl(s[e]);return u=Reflect.apply(t,i,s),u=n.any(u,{context:r,globals:e}),u}return s.construct=(...s)=>{for(let e=0;e<s.length;e++)s[e]=o.tryWrapperForImpl(s[e]);let i=Reflect.construct(t,s);return i=n.any(i,{context:r,globals:e}),i},s[o.wrapperSymbol]=t,s.objectReference=t,s}},2996:(e,t,r)=>{"use strict";const n=r(2140),o=r(372),s=r(8557);t.implementation=class{constructor(e,t){const r=t[0],o=t[1];let i=null;if(void 0!==o&&(i=n.basicURLParse(o),null===i))throw new TypeError(`Invalid base URL: ${o}`);const u=n.basicURLParse(r,{baseURL:i});if(null===u)throw new TypeError(`Invalid URL: ${r}`);const a=null!==u.query?u.query:"";this._url=u,this._query=s.createImpl(e,[a],{doNotStripQMark:!0}),this._query._url=this}static canParse(e,t){let r=null;return(void 0===t||(r=n.basicURLParse(t),null!==r))&&null!==n.basicURLParse(e,{baseURL:r})}get href(){return n.serializeURL(this._url)}set href(e){const t=n.basicURLParse(e);if(null===t)throw new TypeError(`Invalid URL: ${e}`);this._url=t,this._query._list.splice(0);const{query:r}=t;null!==r&&(this._query._list=o.parseUrlencodedString(r))}get origin(){return n.serializeURLOrigin(this._url)}get protocol(){return`${this._url.scheme}:`}set protocol(e){n.basicURLParse(`${e}:`,{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(e){n.cannotHaveAUsernamePasswordPort(this._url)||n.setTheUsername(this._url,e)}get password(){return this._url.password}set password(e){n.cannotHaveAUsernamePasswordPort(this._url)||n.setThePassword(this._url,e)}get host(){const e=this._url;return null===e.host?"":null===e.port?n.serializeHost(e.host):`${n.serializeHost(e.host)}:${n.serializeInteger(e.port)}`}set host(e){n.hasAnOpaquePath(this._url)||n.basicURLParse(e,{url:this._url,stateOverride:"host"})}get hostname(){return null===this._url.host?"":n.serializeHost(this._url.host)}set hostname(e){n.hasAnOpaquePath(this._url)||n.basicURLParse(e,{url:this._url,stateOverride:"hostname"})}get port(){return null===this._url.port?"":n.serializeInteger(this._url.port)}set port(e){n.cannotHaveAUsernamePasswordPort(this._url)||(""===e?this._url.port=null:n.basicURLParse(e,{url:this._url,stateOverride:"port"}))}get pathname(){return n.serializePath(this._url)}set pathname(e){n.hasAnOpaquePath(this._url)||(this._url.path=[],n.basicURLParse(e,{url:this._url,stateOverride:"path start"}))}get search(){return null===this._url.query||""===this._url.query?"":`?${this._url.query}`}set search(e){const t=this._url;if(""===e)return t.query=null,this._query._list=[],void this._potentiallyStripTrailingSpacesFromAnOpaquePath();const r="?"===e[0]?e.substring(1):e;t.query="",n.basicURLParse(r,{url:t,stateOverride:"query"}),this._query._list=o.parseUrlencodedString(r)}get searchParams(){return this._query}get hash(){return null===this._url.fragment||""===this._url.fragment?"":`#${this._url.fragment}`}set hash(e){if(""===e)return this._url.fragment=null,void this._potentiallyStripTrailingSpacesFromAnOpaquePath();const t="#"===e[0]?e.substring(1):e;this._url.fragment="",n.basicURLParse(t,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}_potentiallyStripTrailingSpacesFromAnOpaquePath(){n.hasAnOpaquePath(this._url)&&null===this._url.fragment&&null===this._url.query&&(this._url.path=this._url.path.replace(/\u0020+$/u,""))}}},9496:(e,t,r)=>{"use strict";const n=r(6800),o=r(2908),s=o.implSymbol,i=o.ctorRegistrySymbol;function u(e,t){let r;return void 0!==t&&(r=t.prototype),o.isObject(r)||(r=e[i].URL.prototype),Object.create(r)}t.is=e=>o.isObject(e)&&o.hasOwn(e,s)&&e[s]instanceof c.implementation,t.isImpl=e=>o.isObject(e)&&e instanceof c.implementation,t.convert=(e,r,{context:n="The provided value"}={})=>{if(t.is(r))return o.implForWrapper(r);throw new e.TypeError(`${n} is not of type 'URL'.`)},t.create=(e,r,n)=>{const o=u(e);return t.setup(o,e,r,n)},t.createImpl=(e,r,n)=>{const s=t.create(e,r,n);return o.implForWrapper(s)},t._internalSetup=(e,t)=>{},t.setup=(e,r,n=[],i={})=>(i.wrapper=e,t._internalSetup(e,r),Object.defineProperty(e,s,{value:new c.implementation(r,n,i),configurable:!0}),e[s][o.wrapperSymbol]=e,c.init&&c.init(e[s]),e),t.new=(e,r)=>{const n=u(e,r);return t._internalSetup(n,e),Object.defineProperty(n,s,{value:Object.create(c.implementation.prototype),configurable:!0}),n[s][o.wrapperSymbol]=n,c.init&&c.init(n[s]),n[s]};const a=new Set(["Window","Worker"]);t.install=(e,r)=>{if(!r.some((e=>a.has(e))))return;const i=o.initCtorRegistry(e);class u{constructor(r){if(arguments.length<1)throw new e.TypeError(`Failed to construct 'URL': 1 argument required, but only ${arguments.length} present.`);const o=[];{let t=arguments[0];t=n.USVString(t,{context:"Failed to construct 'URL': parameter 1",globals:e}),o.push(t)}{let t=arguments[1];void 0!==t&&(t=n.USVString(t,{context:"Failed to construct 'URL': parameter 2",globals:e})),o.push(t)}return t.setup(Object.create(new.target.prototype),e,o)}toJSON(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'toJSON' called on an object that is not a valid instance of URL.");return r[s].toJSON()}get href(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get href' called on an object that is not a valid instance of URL.");return r[s].href}set href(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set href' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'href' property on 'URL': The provided value",globals:e}),o[s].href=r}toString(){if(!t.is(this))throw new e.TypeError("'toString' called on an object that is not a valid instance of URL.");return this[s].href}get origin(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get origin' called on an object that is not a valid instance of URL.");return r[s].origin}get protocol(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get protocol' called on an object that is not a valid instance of URL.");return r[s].protocol}set protocol(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set protocol' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'protocol' property on 'URL': The provided value",globals:e}),o[s].protocol=r}get username(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get username' called on an object that is not a valid instance of URL.");return r[s].username}set username(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set username' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'username' property on 'URL': The provided value",globals:e}),o[s].username=r}get password(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get password' called on an object that is not a valid instance of URL.");return r[s].password}set password(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set password' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'password' property on 'URL': The provided value",globals:e}),o[s].password=r}get host(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get host' called on an object that is not a valid instance of URL.");return r[s].host}set host(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set host' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'host' property on 'URL': The provided value",globals:e}),o[s].host=r}get hostname(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get hostname' called on an object that is not a valid instance of URL.");return r[s].hostname}set hostname(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set hostname' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'hostname' property on 'URL': The provided value",globals:e}),o[s].hostname=r}get port(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get port' called on an object that is not a valid instance of URL.");return r[s].port}set port(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set port' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'port' property on 'URL': The provided value",globals:e}),o[s].port=r}get pathname(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get pathname' called on an object that is not a valid instance of URL.");return r[s].pathname}set pathname(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set pathname' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'pathname' property on 'URL': The provided value",globals:e}),o[s].pathname=r}get search(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get search' called on an object that is not a valid instance of URL.");return r[s].search}set search(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set search' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'search' property on 'URL': The provided value",globals:e}),o[s].search=r}get searchParams(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get searchParams' called on an object that is not a valid instance of URL.");return o.getSameObject(this,"searchParams",(()=>o.tryWrapperForImpl(r[s].searchParams)))}get hash(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get hash' called on an object that is not a valid instance of URL.");return r[s].hash}set hash(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'set hash' called on an object that is not a valid instance of URL.");r=n.USVString(r,{context:"Failed to set the 'hash' property on 'URL': The provided value",globals:e}),o[s].hash=r}static canParse(t){if(arguments.length<1)throw new e.TypeError(`Failed to execute 'canParse' on 'URL': 1 argument required, but only ${arguments.length} present.`);const r=[];{let t=arguments[0];t=n.USVString(t,{context:"Failed to execute 'canParse' on 'URL': parameter 1",globals:e}),r.push(t)}{let t=arguments[1];void 0!==t&&(t=n.USVString(t,{context:"Failed to execute 'canParse' on 'URL': parameter 2",globals:e})),r.push(t)}return c.implementation.canParse(...r)}}Object.defineProperties(u.prototype,{toJSON:{enumerable:!0},href:{enumerable:!0},toString:{enumerable:!0},origin:{enumerable:!0},protocol:{enumerable:!0},username:{enumerable:!0},password:{enumerable:!0},host:{enumerable:!0},hostname:{enumerable:!0},port:{enumerable:!0},pathname:{enumerable:!0},search:{enumerable:!0},searchParams:{enumerable:!0},hash:{enumerable:!0},[Symbol.toStringTag]:{value:"URL",configurable:!0}}),Object.defineProperties(u,{canParse:{enumerable:!0}}),i.URL=u,Object.defineProperty(e,"URL",{configurable:!0,writable:!0,value:u}),r.includes("Window")&&Object.defineProperty(e,"webkitURL",{configurable:!0,writable:!0,value:u})};const c=r(2996)},3045:(e,t,r)=>{"use strict";const n=r(372);t.implementation=class{constructor(e,t,{doNotStripQMark:r=!1}){let o=t[0];if(this._list=[],this._url=null,r||"string"!=typeof o||"?"!==o[0]||(o=o.slice(1)),Array.isArray(o))for(const e of o){if(2!==e.length)throw new TypeError("Failed to construct 'URLSearchParams': parameter 1 sequence's element does not contain exactly two elements.");this._list.push([e[0],e[1]])}else if("object"==typeof o&&null===Object.getPrototypeOf(o))for(const e of Object.keys(o)){const t=o[e];this._list.push([e,t])}else this._list=n.parseUrlencodedString(o)}_updateSteps(){if(null!==this._url){let e=n.serializeUrlencoded(this._list);""===e&&(e=null),this._url._url.query=e,null===e&&this._url._potentiallyStripTrailingSpacesFromAnOpaquePath()}}get size(){return this._list.length}append(e,t){this._list.push([e,t]),this._updateSteps()}delete(e,t){let r=0;for(;r<this._list.length;)this._list[r][0]!==e||void 0!==t&&this._list[r][1]!==t?r++:this._list.splice(r,1);this._updateSteps()}get(e){for(const t of this._list)if(t[0]===e)return t[1];return null}getAll(e){const t=[];for(const r of this._list)r[0]===e&&t.push(r[1]);return t}has(e,t){for(const r of this._list)if(r[0]===e&&(void 0===t||r[1]===t))return!0;return!1}set(e,t){let r=!1,n=0;for(;n<this._list.length;)this._list[n][0]===e?r?this._list.splice(n,1):(r=!0,this._list[n][1]=t,n++):n++;r||this._list.push([e,t]),this._updateSteps()}sort(){this._list.sort(((e,t)=>e[0]<t[0]?-1:e[0]>t[0]?1:0)),this._updateSteps()}[Symbol.iterator](){return this._list[Symbol.iterator]()}toString(){return n.serializeUrlencoded(this._list)}}},8557:(e,t,r)=>{"use strict";const n=r(6800),o=r(2908),s=r(3249),i=o.newObjectInRealm,u=o.implSymbol,a=o.ctorRegistrySymbol,c="URLSearchParams";function l(e,t){let r;return void 0!==t&&(r=t.prototype),o.isObject(r)||(r=e[a].URLSearchParams.prototype),Object.create(r)}t.is=e=>o.isObject(e)&&o.hasOwn(e,u)&&e[u]instanceof d.implementation,t.isImpl=e=>o.isObject(e)&&e instanceof d.implementation,t.convert=(e,r,{context:n="The provided value"}={})=>{if(t.is(r))return o.implForWrapper(r);throw new e.TypeError(`${n} is not of type 'URLSearchParams'.`)},t.createDefaultIterator=(e,t,r)=>{const n=e[a]["URLSearchParams Iterator"],s=Object.create(n);return Object.defineProperty(s,o.iterInternalSymbol,{value:{target:t,kind:r,index:0},configurable:!0}),s},t.create=(e,r,n)=>{const o=l(e);return t.setup(o,e,r,n)},t.createImpl=(e,r,n)=>{const s=t.create(e,r,n);return o.implForWrapper(s)},t._internalSetup=(e,t)=>{},t.setup=(e,r,n=[],s={})=>(s.wrapper=e,t._internalSetup(e,r),Object.defineProperty(e,u,{value:new d.implementation(r,n,s),configurable:!0}),e[u][o.wrapperSymbol]=e,d.init&&d.init(e[u]),e),t.new=(e,r)=>{const n=l(e,r);return t._internalSetup(n,e),Object.defineProperty(n,u,{value:Object.create(d.implementation.prototype),configurable:!0}),n[u][o.wrapperSymbol]=n,d.init&&d.init(n[u]),n[u]};const h=new Set(["Window","Worker"]);t.install=(e,r)=>{if(!r.some((e=>h.has(e))))return;const a=o.initCtorRegistry(e);class l{constructor(){const r=[];{let t=arguments[0];if(void 0!==t)if(o.isObject(t))if(void 0!==t[Symbol.iterator]){if(!o.isObject(t))throw new e.TypeError("Failed to construct 'URLSearchParams': parameter 1 sequence is not an iterable object.");{const r=[],s=t;for(let t of s){if(!o.isObject(t))throw new e.TypeError("Failed to construct 'URLSearchParams': parameter 1 sequence's element is not an iterable object.");{const r=[],o=t;for(let t of o)t=n.USVString(t,{context:"Failed to construct 'URLSearchParams': parameter 1 sequence's element's element",globals:e}),r.push(t);t=r}r.push(t)}t=r}}else{if(!o.isObject(t))throw new e.TypeError("Failed to construct 'URLSearchParams': parameter 1 record is not an object.");{const r=Object.create(null);for(const o of Reflect.ownKeys(t)){const s=Object.getOwnPropertyDescriptor(t,o);if(s&&s.enumerable){let s=o;s=n.USVString(s,{context:"Failed to construct 'URLSearchParams': parameter 1 record's key",globals:e});let i=t[o];i=n.USVString(i,{context:"Failed to construct 'URLSearchParams': parameter 1 record's value",globals:e}),r[s]=i}}t=r}}else t=n.USVString(t,{context:"Failed to construct 'URLSearchParams': parameter 1",globals:e});else t="";r.push(t)}return t.setup(Object.create(new.target.prototype),e,r)}append(r,s){const i=null!=this?this:e;if(!t.is(i))throw new e.TypeError("'append' called on an object that is not a valid instance of URLSearchParams.");if(arguments.length<2)throw new e.TypeError(`Failed to execute 'append' on 'URLSearchParams': 2 arguments required, but only ${arguments.length} present.`);const a=[];{let t=arguments[0];t=n.USVString(t,{context:"Failed to execute 'append' on 'URLSearchParams': parameter 1",globals:e}),a.push(t)}{let t=arguments[1];t=n.USVString(t,{context:"Failed to execute 'append' on 'URLSearchParams': parameter 2",globals:e}),a.push(t)}return o.tryWrapperForImpl(i[u].append(...a))}delete(r){const s=null!=this?this:e;if(!t.is(s))throw new e.TypeError("'delete' called on an object that is not a valid instance of URLSearchParams.");if(arguments.length<1)throw new e.TypeError(`Failed to execute 'delete' on 'URLSearchParams': 1 argument required, but only ${arguments.length} present.`);const i=[];{let t=arguments[0];t=n.USVString(t,{context:"Failed to execute 'delete' on 'URLSearchParams': parameter 1",globals:e}),i.push(t)}{let t=arguments[1];void 0!==t&&(t=n.USVString(t,{context:"Failed to execute 'delete' on 'URLSearchParams': parameter 2",globals:e})),i.push(t)}return o.tryWrapperForImpl(s[u].delete(...i))}get(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'get' called on an object that is not a valid instance of URLSearchParams.");if(arguments.length<1)throw new e.TypeError(`Failed to execute 'get' on 'URLSearchParams': 1 argument required, but only ${arguments.length} present.`);const s=[];{let t=arguments[0];t=n.USVString(t,{context:"Failed to execute 'get' on 'URLSearchParams': parameter 1",globals:e}),s.push(t)}return o[u].get(...s)}getAll(r){const s=null!=this?this:e;if(!t.is(s))throw new e.TypeError("'getAll' called on an object that is not a valid instance of URLSearchParams.");if(arguments.length<1)throw new e.TypeError(`Failed to execute 'getAll' on 'URLSearchParams': 1 argument required, but only ${arguments.length} present.`);const i=[];{let t=arguments[0];t=n.USVString(t,{context:"Failed to execute 'getAll' on 'URLSearchParams': parameter 1",globals:e}),i.push(t)}return o.tryWrapperForImpl(s[u].getAll(...i))}has(r){const o=null!=this?this:e;if(!t.is(o))throw new e.TypeError("'has' called on an object that is not a valid instance of URLSearchParams.");if(arguments.length<1)throw new e.TypeError(`Failed to execute 'has' on 'URLSearchParams': 1 argument required, but only ${arguments.length} present.`);const s=[];{let t=arguments[0];t=n.USVString(t,{context:"Failed to execute 'has' on 'URLSearchParams': parameter 1",globals:e}),s.push(t)}{let t=arguments[1];void 0!==t&&(t=n.USVString(t,{context:"Failed to execute 'has' on 'URLSearchParams': parameter 2",globals:e})),s.push(t)}return o[u].has(...s)}set(r,s){const i=null!=this?this:e;if(!t.is(i))throw new e.TypeError("'set' called on an object that is not a valid instance of URLSearchParams.");if(arguments.length<2)throw new e.TypeError(`Failed to execute 'set' on 'URLSearchParams': 2 arguments required, but only ${arguments.length} present.`);const a=[];{let t=arguments[0];t=n.USVString(t,{context:"Failed to execute 'set' on 'URLSearchParams': parameter 1",globals:e}),a.push(t)}{let t=arguments[1];t=n.USVString(t,{context:"Failed to execute 'set' on 'URLSearchParams': parameter 2",globals:e}),a.push(t)}return o.tryWrapperForImpl(i[u].set(...a))}sort(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'sort' called on an object that is not a valid instance of URLSearchParams.");return o.tryWrapperForImpl(r[u].sort())}toString(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'toString' called on an object that is not a valid instance of URLSearchParams.");return r[u].toString()}keys(){if(!t.is(this))throw new e.TypeError("'keys' called on an object that is not a valid instance of URLSearchParams.");return t.createDefaultIterator(e,this,"key")}values(){if(!t.is(this))throw new e.TypeError("'values' called on an object that is not a valid instance of URLSearchParams.");return t.createDefaultIterator(e,this,"value")}entries(){if(!t.is(this))throw new e.TypeError("'entries' called on an object that is not a valid instance of URLSearchParams.");return t.createDefaultIterator(e,this,"key+value")}forEach(r){if(!t.is(this))throw new e.TypeError("'forEach' called on an object that is not a valid instance of URLSearchParams.");if(arguments.length<1)throw new e.TypeError("Failed to execute 'forEach' on 'iterable': 1 argument required, but only 0 present.");r=s.convert(e,r,{context:"Failed to execute 'forEach' on 'iterable': The callback provided as parameter 1"});const n=arguments[1];let i=Array.from(this[u]),a=0;for(;a<i.length;){const[e,t]=i[a].map(o.tryWrapperForImpl);r.call(n,t,e,this),i=Array.from(this[u]),a++}}get size(){const r=null!=this?this:e;if(!t.is(r))throw new e.TypeError("'get size' called on an object that is not a valid instance of URLSearchParams.");return r[u].size}}Object.defineProperties(l.prototype,{append:{enumerable:!0},delete:{enumerable:!0},get:{enumerable:!0},getAll:{enumerable:!0},has:{enumerable:!0},set:{enumerable:!0},sort:{enumerable:!0},toString:{enumerable:!0},keys:{enumerable:!0},values:{enumerable:!0},entries:{enumerable:!0},forEach:{enumerable:!0},size:{enumerable:!0},[Symbol.toStringTag]:{value:"URLSearchParams",configurable:!0},[Symbol.iterator]:{value:l.prototype.entries,configurable:!0,writable:!0}}),a[c]=l,a["URLSearchParams Iterator"]=Object.create(a["%IteratorPrototype%"],{[Symbol.toStringTag]:{configurable:!0,value:"URLSearchParams Iterator"}}),o.define(a["URLSearchParams Iterator"],{next(){const t=this&&this[o.iterInternalSymbol];if(!t)throw new e.TypeError("next() called on a value that is not a URLSearchParams iterator object");const{target:r,kind:n,index:s}=t,a=Array.from(r[u]);if(s>=a.length)return i(e,{value:void 0,done:!0});const c=a[s];return t.index=s+1,i(e,o.iteratorResult(c.map(o.tryWrapperForImpl),n))}}),Object.defineProperty(e,c,{configurable:!0,writable:!0,value:l})};const d=r(3045)},5464:e=>{"use strict";const t=new TextEncoder,r=new TextDecoder("utf-8",{ignoreBOM:!0});e.exports={utf8Encode:function(e){return t.encode(e)},utf8DecodeWithoutBOM:function(e){return r.decode(e)}}},9951:e=>{"use strict";function t(e){return e>=48&&e<=57}function r(e){return e>=65&&e<=90||e>=97&&e<=122}e.exports={isASCIIDigit:t,isASCIIAlpha:r,isASCIIAlphanumeric:function(e){return r(e)||t(e)},isASCIIHex:function(e){return t(e)||e>=65&&e<=70||e>=97&&e<=102}}},1912:(e,t,r)=>{"use strict";const{isASCIIHex:n}=r(9951),{utf8Encode:o}=r(5464);function s(e){return e.codePointAt(0)}function i(e){let t=e.toString(16).toUpperCase();return 1===t.length&&(t=`0${t}`),`%${t}`}function u(e){const t=new Uint8Array(e.byteLength);let r=0;for(let o=0;o<e.byteLength;++o){const s=e[o];if(37!==s)t[r++]=s;else if(37!==s||n(e[o+1])&&n(e[o+2])){const n=parseInt(String.fromCodePoint(e[o+1],e[o+2]),16);t[r++]=n,o+=2}else t[r++]=s}return t.slice(0,r)}function a(e){return e<=31||e>126}const c=new Set([s(" "),s('"'),s("<"),s(">"),s("`")]),l=new Set([s(" "),s('"'),s("#"),s("<"),s(">")]);function h(e){return a(e)||l.has(e)}const d=new Set([s("?"),s("`"),s("{"),s("}")]);function p(e){return h(e)||d.has(e)}const f=new Set([s("/"),s(":"),s(";"),s("="),s("@"),s("["),s("\\"),s("]"),s("^"),s("|")]);function m(e){return p(e)||f.has(e)}const g=new Set([s("$"),s("%"),s("&"),s("+"),s(",")]),E=new Set([s("!"),s("'"),s("("),s(")"),s("~")]);function A(e,t){const r=o(e);let n="";for(const e of r)t(e)?n+=i(e):n+=String.fromCharCode(e);return n}e.exports={isC0ControlPercentEncode:a,isFragmentPercentEncode:function(e){return a(e)||c.has(e)},isQueryPercentEncode:h,isSpecialQueryPercentEncode:function(e){return h(e)||e===s("'")},isPathPercentEncode:p,isUserinfoPercentEncode:m,isURLEncodedPercentEncode:function(e){return function(e){return m(e)||g.has(e)}(e)||E.has(e)},percentDecodeString:function(e){return u(o(e))},percentDecodeBytes:u,utf8PercentEncodeString:function(e,t,r=!1){let n="";for(const o of e)n+=r&&" "===o?"+":A(o,t);return n},utf8PercentEncodeCodePoint:function(e,t){return A(String.fromCodePoint(e),t)}}},2140:(e,t,r)=>{"use strict";const n=r(5425),o=r(9951),{utf8DecodeWithoutBOM:s}=r(5464),{percentDecodeString:i,utf8PercentEncodeCodePoint:u,utf8PercentEncodeString:a,isC0ControlPercentEncode:c,isFragmentPercentEncode:l,isQueryPercentEncode:h,isSpecialQueryPercentEncode:d,isPathPercentEncode:p,isUserinfoPercentEncode:f}=r(1912);function m(e){return e.codePointAt(0)}const g={ftp:21,file:null,http:80,https:443,ws:80,wss:443},E=Symbol("failure");function A(e){return[...e].length}function y(e,t){const r=e[t];return isNaN(r)?void 0:String.fromCodePoint(r)}function C(e){return"."===e||"%2e"===e.toLowerCase()}function S(e){return 2===e.length&&o.isASCIIAlpha(e.codePointAt(0))&&(":"===e[1]||"|"===e[1])}function w(e){return-1!==e.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|<|>|\?|@|\[|\\|\]|\^|\|/u)}function b(e){return void 0!==g[e]}function v(e){return b(e.scheme)}function O(e){return!b(e.scheme)}function _(e){return g[e]}function B(e){if(""===e)return E;let t=10;if(e.length>=2&&"0"===e.charAt(0)&&"x"===e.charAt(1).toLowerCase()?(e=e.substring(2),t=16):e.length>=2&&"0"===e.charAt(0)&&(e=e.substring(1),t=8),""===e)return 0;let r=/[^0-7]/u;return 10===t&&(r=/[^0-9]/u),16===t&&(r=/[^0-9A-Fa-f]/u),r.test(e)?E:parseInt(e,t)}function D(e,t=!1){if("["===e[0])return"]"!==e[e.length-1]?E:function(e){const t=[0,0,0,0,0,0,0,0];let r=0,n=null,s=0;if((e=Array.from(e,(e=>e.codePointAt(0))))[s]===m(":")){if(e[s+1]!==m(":"))return E;s+=2,++r,n=r}for(;s<e.length;){if(8===r)return E;if(e[s]===m(":")){if(null!==n)return E;++s,++r,n=r;continue}let i=0,u=0;for(;u<4&&o.isASCIIHex(e[s]);)i=16*i+parseInt(y(e,s),16),++s,++u;if(e[s]===m(".")){if(0===u)return E;if(s-=u,r>6)return E;let n=0;for(;void 0!==e[s];){let i=null;if(n>0){if(!(e[s]===m(".")&&n<4))return E;++s}if(!o.isASCIIDigit(e[s]))return E;for(;o.isASCIIDigit(e[s]);){const t=parseInt(y(e,s));if(null===i)i=t;else{if(0===i)return E;i=10*i+t}if(i>255)return E;++s}t[r]=256*t[r]+i,++n,2!==n&&4!==n||++r}if(4!==n)return E;break}if(e[s]===m(":")){if(++s,void 0===e[s])return E}else if(void 0!==e[s])return E;t[r]=i,++r}if(null!==n){let e=r-n;for(r=7;0!==r&&e>0;){const o=t[n+e-1];t[n+e-1]=t[r],t[r]=o,--r,--e}}else if(null===n&&8!==r)return E;return t}(e.substring(1,e.length-1));if(t)return function(e){return w(e)?E:a(e,c)}(e);const r=function(e,t=!1){const r=n.toASCII(e,{checkBidi:!0,checkHyphens:!1,checkJoiners:!0,useSTD3ASCIIRules:t,verifyDNSLength:t});return null===r||""===r?E:r}(s(i(e)));return r===E||w(u=r)||-1!==u.search(/[\u0000-\u001F]|%|\u007F/u)?E:function(e){const t=e.split(".");if(""===t[t.length-1]){if(1===t.length)return!1;t.pop()}const r=t[t.length-1];return B(r)!==E||!!/^[0-9]+$/u.test(r)}(r)?function(e){const t=e.split(".");if(""===t[t.length-1]&&t.length>1&&t.pop(),t.length>4)return E;const r=[];for(const e of t){const t=B(e);if(t===E)return E;r.push(t)}for(let e=0;e<r.length-1;++e)if(r[e]>255)return E;if(r[r.length-1]>=256**(5-r.length))return E;let n=r.pop(),o=0;for(const e of r)n+=e*256**(3-o),++o;return n}(r):r;var u}function T(e){return"number"==typeof e?function(e){let t="",r=e;for(let e=1;e<=4;++e)t=String(r%256)+t,4!==e&&(t=`.${t}`),r=Math.floor(r/256);return t}(e):e instanceof Array?`[${function(e){let t="";const r=function(e){let t=null,r=1,n=null,o=0;for(let s=0;s<e.length;++s)0!==e[s]?(o>r&&(t=n,r=o),n=null,o=0):(null===n&&(n=s),++o);return o>r?n:t}(e);let n=!1;for(let o=0;o<=7;++o)n&&0===e[o]||(n&&(n=!1),r!==o?(t+=e[o].toString(16),7!==o&&(t+=":")):(t+=0===o?"::":":",n=!0));return t}(e)}]`:e}function I(e){const{path:t}=e;var r;0!==t.length&&("file"===e.scheme&&1===t.length&&(r=t[0],/^[A-Za-z]:$/u.test(r))||t.pop())}function F(e){return""!==e.username||""!==e.password}function R(e){return"string"==typeof e.path}function N(e,t,r,n,o){if(this.pointer=0,this.input=e,this.base=t||null,this.encodingOverride=r||"utf-8",this.stateOverride=o,this.url=n,this.failure=!1,this.parseError=!1,!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null};const e=function(e){return e.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/gu,"")}(this.input);e!==this.input&&(this.parseError=!0),this.input=e}const s=function(e){return e.replace(/\u0009|\u000A|\u000D/gu,"")}(this.input);for(s!==this.input&&(this.parseError=!0),this.input=s,this.state=o||"scheme start",this.buffer="",this.atFlag=!1,this.arrFlag=!1,this.passwordTokenSeenFlag=!1,this.input=Array.from(this.input,(e=>e.codePointAt(0)));this.pointer<=this.input.length;++this.pointer){const e=this.input[this.pointer],t=isNaN(e)?void 0:String.fromCodePoint(e),r=this[`parse ${this.state}`](e,t);if(!r)break;if(r===E){this.failure=!0;break}}}N.prototype["parse scheme start"]=function(e,t){if(o.isASCIIAlpha(e))this.buffer+=t.toLowerCase(),this.state="scheme";else{if(this.stateOverride)return this.parseError=!0,E;this.state="no scheme",--this.pointer}return!0},N.prototype["parse scheme"]=function(e,t){if(o.isASCIIAlphanumeric(e)||e===m("+")||e===m("-")||e===m("."))this.buffer+=t.toLowerCase();else if(e===m(":")){if(this.stateOverride){if(v(this.url)&&!b(this.buffer))return!1;if(!v(this.url)&&b(this.buffer))return!1;if((F(this.url)||null!==this.url.port)&&"file"===this.buffer)return!1;if("file"===this.url.scheme&&""===this.url.host)return!1}if(this.url.scheme=this.buffer,this.stateOverride)return this.url.port===_(this.url.scheme)&&(this.url.port=null),!1;this.buffer="","file"===this.url.scheme?(this.input[this.pointer+1]===m("/")&&this.input[this.pointer+2]===m("/")||(this.parseError=!0),this.state="file"):v(this.url)&&null!==this.base&&this.base.scheme===this.url.scheme?this.state="special relative or authority":v(this.url)?this.state="special authority slashes":this.input[this.pointer+1]===m("/")?(this.state="path or authority",++this.pointer):(this.url.path="",this.state="opaque path")}else{if(this.stateOverride)return this.parseError=!0,E;this.buffer="",this.state="no scheme",this.pointer=-1}return!0},N.prototype["parse no scheme"]=function(e){return null===this.base||R(this.base)&&e!==m("#")?E:(R(this.base)&&e===m("#")?(this.url.scheme=this.base.scheme,this.url.path=this.base.path,this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):"file"===this.base.scheme?(this.state="file",--this.pointer):(this.state="relative",--this.pointer),!0)},N.prototype["parse special relative or authority"]=function(e){return e===m("/")&&this.input[this.pointer+1]===m("/")?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="relative",--this.pointer),!0},N.prototype["parse path or authority"]=function(e){return e===m("/")?this.state="authority":(this.state="path",--this.pointer),!0},N.prototype["parse relative"]=function(e){return this.url.scheme=this.base.scheme,e===m("/")?this.state="relative slash":v(this.url)&&e===m("\\")?(this.parseError=!0,this.state="relative slash"):(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query,e===m("?")?(this.url.query="",this.state="query"):e===m("#")?(this.url.fragment="",this.state="fragment"):isNaN(e)||(this.url.query=null,this.url.path.pop(),this.state="path",--this.pointer)),!0},N.prototype["parse relative slash"]=function(e){return!v(this.url)||e!==m("/")&&e!==m("\\")?e===m("/")?this.state="authority":(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.state="path",--this.pointer):(e===m("\\")&&(this.parseError=!0),this.state="special authority ignore slashes"),!0},N.prototype["parse special authority slashes"]=function(e){return e===m("/")&&this.input[this.pointer+1]===m("/")?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="special authority ignore slashes",--this.pointer),!0},N.prototype["parse special authority ignore slashes"]=function(e){return e!==m("/")&&e!==m("\\")?(this.state="authority",--this.pointer):this.parseError=!0,!0},N.prototype["parse authority"]=function(e,t){if(e===m("@")){this.parseError=!0,this.atFlag&&(this.buffer=`%40${this.buffer}`),this.atFlag=!0;const e=A(this.buffer);for(let t=0;t<e;++t){const e=this.buffer.codePointAt(t);if(e===m(":")&&!this.passwordTokenSeenFlag){this.passwordTokenSeenFlag=!0;continue}const r=u(e,f);this.passwordTokenSeenFlag?this.url.password+=r:this.url.username+=r}this.buffer=""}else if(isNaN(e)||e===m("/")||e===m("?")||e===m("#")||v(this.url)&&e===m("\\")){if(this.atFlag&&""===this.buffer)return this.parseError=!0,E;this.pointer-=A(this.buffer)+1,this.buffer="",this.state="host"}else this.buffer+=t;return!0},N.prototype["parse hostname"]=N.prototype["parse host"]=function(e,t){if(this.stateOverride&&"file"===this.url.scheme)--this.pointer,this.state="file host";else if(e!==m(":")||this.arrFlag)if(isNaN(e)||e===m("/")||e===m("?")||e===m("#")||v(this.url)&&e===m("\\")){if(--this.pointer,v(this.url)&&""===this.buffer)return this.parseError=!0,E;if(this.stateOverride&&""===this.buffer&&(F(this.url)||null!==this.url.port))return this.parseError=!0,!1;const e=D(this.buffer,O(this.url));if(e===E)return E;if(this.url.host=e,this.buffer="",this.state="path start",this.stateOverride)return!1}else e===m("[")?this.arrFlag=!0:e===m("]")&&(this.arrFlag=!1),this.buffer+=t;else{if(""===this.buffer)return this.parseError=!0,E;if("hostname"===this.stateOverride)return!1;const e=D(this.buffer,O(this.url));if(e===E)return E;this.url.host=e,this.buffer="",this.state="port"}return!0},N.prototype["parse port"]=function(e,t){if(o.isASCIIDigit(e))this.buffer+=t;else{if(!(isNaN(e)||e===m("/")||e===m("?")||e===m("#")||v(this.url)&&e===m("\\")||this.stateOverride))return this.parseError=!0,E;if(""!==this.buffer){const e=parseInt(this.buffer);if(e>65535)return this.parseError=!0,E;this.url.port=e===_(this.url.scheme)?null:e,this.buffer=""}if(this.stateOverride)return!1;this.state="path start",--this.pointer}return!0};const M=new Set([m("/"),m("\\"),m("?"),m("#")]);function x(e,t){const r=e.length-t;return r>=2&&(n=e[t],s=e[t+1],o.isASCIIAlpha(n)&&(s===m(":")||s===m("|")))&&(2===r||M.has(e[t+2]));var n,s}function P(e){if(R(e))return e.path;let t="";for(const r of e.path)t+=`/${r}`;return t}N.prototype["parse file"]=function(e){return this.url.scheme="file",this.url.host="",e===m("/")||e===m("\\")?(e===m("\\")&&(this.parseError=!0),this.state="file slash"):null!==this.base&&"file"===this.base.scheme?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query,e===m("?")?(this.url.query="",this.state="query"):e===m("#")?(this.url.fragment="",this.state="fragment"):isNaN(e)||(this.url.query=null,x(this.input,this.pointer)?(this.parseError=!0,this.url.path=[]):I(this.url),this.state="path",--this.pointer)):(this.state="path",--this.pointer),!0},N.prototype["parse file slash"]=function(e){var t;return e===m("/")||e===m("\\")?(e===m("\\")&&(this.parseError=!0),this.state="file host"):(null!==this.base&&"file"===this.base.scheme&&(!x(this.input,this.pointer)&&2===(t=this.base.path[0]).length&&o.isASCIIAlpha(t.codePointAt(0))&&":"===t[1]&&this.url.path.push(this.base.path[0]),this.url.host=this.base.host),this.state="path",--this.pointer),!0},N.prototype["parse file host"]=function(e,t){if(isNaN(e)||e===m("/")||e===m("\\")||e===m("?")||e===m("#"))if(--this.pointer,!this.stateOverride&&S(this.buffer))this.parseError=!0,this.state="path";else if(""===this.buffer){if(this.url.host="",this.stateOverride)return!1;this.state="path start"}else{let e=D(this.buffer,O(this.url));if(e===E)return E;if("localhost"===e&&(e=""),this.url.host=e,this.stateOverride)return!1;this.buffer="",this.state="path start"}else this.buffer+=t;return!0},N.prototype["parse path start"]=function(e){return v(this.url)?(e===m("\\")&&(this.parseError=!0),this.state="path",e!==m("/")&&e!==m("\\")&&--this.pointer):this.stateOverride||e!==m("?")?this.stateOverride||e!==m("#")?void 0!==e?(this.state="path",e!==m("/")&&--this.pointer):this.stateOverride&&null===this.url.host&&this.url.path.push(""):(this.url.fragment="",this.state="fragment"):(this.url.query="",this.state="query"),!0},N.prototype["parse path"]=function(e){var t;return isNaN(e)||e===m("/")||v(this.url)&&e===m("\\")||!this.stateOverride&&(e===m("?")||e===m("#"))?(v(this.url)&&e===m("\\")&&(this.parseError=!0),".."===(t=(t=this.buffer).toLowerCase())||"%2e."===t||".%2e"===t||"%2e%2e"===t?(I(this.url),e===m("/")||v(this.url)&&e===m("\\")||this.url.path.push("")):!C(this.buffer)||e===m("/")||v(this.url)&&e===m("\\")?C(this.buffer)||("file"===this.url.scheme&&0===this.url.path.length&&S(this.buffer)&&(this.buffer=`${this.buffer[0]}:`),this.url.path.push(this.buffer)):this.url.path.push(""),this.buffer="",e===m("?")&&(this.url.query="",this.state="query"),e===m("#")&&(this.url.fragment="",this.state="fragment")):(e!==m("%")||o.isASCIIHex(this.input[this.pointer+1])&&o.isASCIIHex(this.input[this.pointer+2])||(this.parseError=!0),this.buffer+=u(e,p)),!0},N.prototype["parse opaque path"]=function(e){return e===m("?")?(this.url.query="",this.state="query"):e===m("#")?(this.url.fragment="",this.state="fragment"):(isNaN(e)||e===m("%")||(this.parseError=!0),e!==m("%")||o.isASCIIHex(this.input[this.pointer+1])&&o.isASCIIHex(this.input[this.pointer+2])||(this.parseError=!0),isNaN(e)||(this.url.path+=u(e,c))),!0},N.prototype["parse query"]=function(e,t){if(v(this.url)&&"ws"!==this.url.scheme&&"wss"!==this.url.scheme||(this.encodingOverride="utf-8"),!this.stateOverride&&e===m("#")||isNaN(e)){const t=v(this.url)?d:h;this.url.query+=a(this.buffer,t),this.buffer="",e===m("#")&&(this.url.fragment="",this.state="fragment")}else isNaN(e)||(e!==m("%")||o.isASCIIHex(this.input[this.pointer+1])&&o.isASCIIHex(this.input[this.pointer+2])||(this.parseError=!0),this.buffer+=t);return!0},N.prototype["parse fragment"]=function(e){return isNaN(e)||(e!==m("%")||o.isASCIIHex(this.input[this.pointer+1])&&o.isASCIIHex(this.input[this.pointer+2])||(this.parseError=!0),this.url.fragment+=u(e,l)),!0},e.exports.serializeURL=function(e,t){let r=`${e.scheme}:`;return null!==e.host&&(r+="//",""===e.username&&""===e.password||(r+=e.username,""!==e.password&&(r+=`:${e.password}`),r+="@"),r+=T(e.host),null!==e.port&&(r+=`:${e.port}`)),null===e.host&&!R(e)&&e.path.length>1&&""===e.path[0]&&(r+="/."),r+=P(e),null!==e.query&&(r+=`?${e.query}`),t||null===e.fragment||(r+=`#${e.fragment}`),r},e.exports.serializePath=P,e.exports.serializeURLOrigin=function(t){switch(t.scheme){case"blob":{const r=e.exports.parseURL(P(t));return null===r||"http"!==r.scheme&&"https"!==r.scheme?"null":e.exports.serializeURLOrigin(r)}case"ftp":case"http":case"https":case"ws":case"wss":return function(e){let t=`${e.scheme}://`;return t+=T(e.host),null!==e.port&&(t+=`:${e.port}`),t}({scheme:t.scheme,host:t.host,port:t.port});default:return"null"}},e.exports.basicURLParse=function(e,t){void 0===t&&(t={});const r=new N(e,t.baseURL,t.encodingOverride,t.url,t.stateOverride);return r.failure?null:r.url},e.exports.setTheUsername=function(e,t){e.username=a(t,f)},e.exports.setThePassword=function(e,t){e.password=a(t,f)},e.exports.serializeHost=T,e.exports.cannotHaveAUsernamePasswordPort=function(e){return null===e.host||""===e.host||"file"===e.scheme},e.exports.hasAnOpaquePath=R,e.exports.serializeInteger=function(e){return String(e)},e.exports.parseURL=function(t,r){return void 0===r&&(r={}),e.exports.basicURLParse(t,{baseURL:r.baseURL,encodingOverride:r.encodingOverride})}},372:(e,t,r)=>{"use strict";const{utf8Encode:n,utf8DecodeWithoutBOM:o}=r(5464),{percentDecodeBytes:s,utf8PercentEncodeString:i,isURLEncodedPercentEncode:u}=r(1912);function a(e){return e.codePointAt(0)}function c(e,t,r){let n=e.indexOf(t);for(;n>=0;)e[n]=r,n=e.indexOf(t,n+1);return e}e.exports={parseUrlencodedString:function(e){return function(e){const t=function(e,t){const r=[];let n=0,o=e.indexOf(t);for(;o>=0;)r.push(e.slice(n,o)),n=o+1,o=e.indexOf(t,n);return n!==e.length&&r.push(e.slice(n)),r}(e,a("&")),r=[];for(const e of t){if(0===e.length)continue;let t,n;const i=e.indexOf(a("="));i>=0?(t=e.slice(0,i),n=e.slice(i+1)):(t=e,n=new Uint8Array(0)),t=c(t,43,32),n=c(n,43,32);const u=o(s(t)),l=o(s(n));r.push([u,l])}return r}(n(e))},serializeUrlencoded:function(e,t=void 0){let r="utf-8";void 0!==t&&(r=t);let n="";for(const[t,o]of e.entries()){const e=i(o[0],u,!0);let s=o[1];o.length>2&&void 0!==o[2]&&("hidden"===o[2]&&"_charset_"===e?s=r:"file"===o[2]&&(s=s.name)),s=i(s,u,!0),0!==t&&(n+="&"),n+=`${e}=${s}`}return n}}},2908:(e,t)=>{"use strict";const r=Function.prototype.call.bind(Object.prototype.hasOwnProperty),n=Symbol("wrapper"),o=Symbol("impl"),s=Symbol("SameObject caches"),i=Symbol.for("[webidl2js] constructor registry"),u=Object.getPrototypeOf(Object.getPrototypeOf((async function*(){})).prototype);function a(e){if(r(e,i))return e[i];const t=Object.create(null);t["%Object.prototype%"]=e.Object.prototype,t["%IteratorPrototype%"]=Object.getPrototypeOf(Object.getPrototypeOf((new e.Array)[Symbol.iterator]()));try{t["%AsyncIteratorPrototype%"]=Object.getPrototypeOf(Object.getPrototypeOf(e.eval("(async function* () {})").prototype))}catch{t["%AsyncIteratorPrototype%"]=u}return e[i]=t,t}function c(e){return e?e[n]:null}function l(e){return e?e[o]:null}const h=Symbol("internal"),d=Object.getOwnPropertyDescriptor(ArrayBuffer.prototype,"byteLength").get,p=Symbol("supports property index"),f=Symbol("supported property indices"),m=Symbol("supports property name"),g=Symbol("supported property names"),E=Symbol("indexed property get"),A=Symbol("indexed property set new"),y=Symbol("indexed property set existing"),C=Symbol("named property get"),S=Symbol("named property set new"),w=Symbol("named property set existing"),b=Symbol("named property delete"),v=Symbol("async iterator get the next iteration result"),O=Symbol("async iterator return steps"),_=Symbol("async iterator initialization steps"),B=Symbol("async iterator end of iteration");e.exports={isObject:function(e){return"object"==typeof e&&null!==e||"function"==typeof e},hasOwn:r,define:function(e,t){for(const r of Reflect.ownKeys(t)){const n=Reflect.getOwnPropertyDescriptor(t,r);if(n&&!Reflect.defineProperty(e,r,n))throw new TypeError(`Cannot redefine property: ${String(r)}`)}},newObjectInRealm:function(e,t){const r=a(e);return Object.defineProperties(Object.create(r["%Object.prototype%"]),Object.getOwnPropertyDescriptors(t))},wrapperSymbol:n,implSymbol:o,getSameObject:function(e,t,r){return e[s]||(e[s]=Object.create(null)),t in e[s]||(e[s][t]=r()),e[s][t]},ctorRegistrySymbol:i,initCtorRegistry:a,wrapperForImpl:c,implForWrapper:l,tryWrapperForImpl:function(e){return c(e)||e},tryImplForWrapper:function(e){return l(e)||e},iterInternalSymbol:h,isArrayBuffer:function(e){try{return d.call(e),!0}catch(e){return!1}},isArrayIndexPropName:function(e){if("string"!=typeof e)return!1;const t=e>>>0;return t!==2**32-1&&e===`${t}`},supportsPropertyIndex:p,supportedPropertyIndices:f,supportsPropertyName:m,supportedPropertyNames:g,indexedGet:E,indexedSetNew:A,indexedSetExisting:y,namedGet:C,namedSetNew:S,namedSetExisting:w,namedDelete:b,asyncIteratorNext:v,asyncIteratorReturn:O,asyncIteratorInit:_,asyncIteratorEOI:B,iteratorResult:function([e,t],r){let n;switch(r){case"key":n=e;break;case"value":n=t;break;case"key+value":n=[e,t]}return{value:n,done:!1}}}},8957:(e,t,r)=>{"use strict";const n=r(9496),o=r(8557);t.URL=n,t.URLSearchParams=o},8137:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Admin=void 0;const n=r(5638),o=r(3184),s=r(5776),i=r(8859),u=r(7074),a=r(8978);t.Admin=class{constructor(e){this.s={db:e}}async command(e,t){return await(0,o.executeOperation)(this.s.db.client,new u.RunAdminCommandOperation(e,{...(0,n.resolveBSONOptions)(t),session:t?.session,readPreference:t?.readPreference}))}async buildInfo(e){return await this.command({buildinfo:1},e)}async serverInfo(e){return await this.command({buildinfo:1},e)}async serverStatus(e){return await this.command({serverStatus:1},e)}async ping(e){return await this.command({ping:1},e)}async removeUser(e,t){return await(0,o.executeOperation)(this.s.db.client,new i.RemoveUserOperation(this.s.db,e,{dbName:"admin",...t}))}async validateCollection(e,t={}){return await(0,o.executeOperation)(this.s.db.client,new a.ValidateCollectionOperation(this,e,t))}async listDatabases(e){return await(0,o.executeOperation)(this.s.db.client,new s.ListDatabasesOperation(this.s.db,e))}async replSetGetStatus(e){return await this.command({replSetGetStatus:1},e)}}},5638:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resolveBSONOptions=t.pluckBSONSerializeOptions=t.toUTF8=t.getBigInt64LE=t.getFloat64LE=t.getInt32LE=t.parseToElementsToArray=t.UUID=t.Timestamp=t.serialize=t.ObjectId=t.MinKey=t.MaxKey=t.Long=t.Int32=t.EJSON=t.Double=t.deserialize=t.Decimal128=t.DBRef=t.Code=t.calculateObjectSize=t.BSONType=t.BSONSymbol=t.BSONRegExp=t.BSONError=t.BSON=t.Binary=void 0;const n=r(4752);var o=r(4752);Object.defineProperty(t,"Binary",{enumerable:!0,get:function(){return o.Binary}}),Object.defineProperty(t,"BSON",{enumerable:!0,get:function(){return o.BSON}}),Object.defineProperty(t,"BSONError",{enumerable:!0,get:function(){return o.BSONError}}),Object.defineProperty(t,"BSONRegExp",{enumerable:!0,get:function(){return o.BSONRegExp}}),Object.defineProperty(t,"BSONSymbol",{enumerable:!0,get:function(){return o.BSONSymbol}}),Object.defineProperty(t,"BSONType",{enumerable:!0,get:function(){return o.BSONType}}),Object.defineProperty(t,"calculateObjectSize",{enumerable:!0,get:function(){return o.calculateObjectSize}}),Object.defineProperty(t,"Code",{enumerable:!0,get:function(){return o.Code}}),Object.defineProperty(t,"DBRef",{enumerable:!0,get:function(){return o.DBRef}}),Object.defineProperty(t,"Decimal128",{enumerable:!0,get:function(){return o.Decimal128}}),Object.defineProperty(t,"deserialize",{enumerable:!0,get:function(){return o.deserialize}}),Object.defineProperty(t,"Double",{enumerable:!0,get:function(){return o.Double}}),Object.defineProperty(t,"EJSON",{enumerable:!0,get:function(){return o.EJSON}}),Object.defineProperty(t,"Int32",{enumerable:!0,get:function(){return o.Int32}}),Object.defineProperty(t,"Long",{enumerable:!0,get:function(){return o.Long}}),Object.defineProperty(t,"MaxKey",{enumerable:!0,get:function(){return o.MaxKey}}),Object.defineProperty(t,"MinKey",{enumerable:!0,get:function(){return o.MinKey}}),Object.defineProperty(t,"ObjectId",{enumerable:!0,get:function(){return o.ObjectId}}),Object.defineProperty(t,"serialize",{enumerable:!0,get:function(){return o.serialize}}),Object.defineProperty(t,"Timestamp",{enumerable:!0,get:function(){return o.Timestamp}}),Object.defineProperty(t,"UUID",{enumerable:!0,get:function(){return o.UUID}}),t.parseToElementsToArray=function(e,t){const r=n.BSON.onDemand.parseToElements(e,t);return Array.isArray(r)?r:[...r]},t.getInt32LE=n.BSON.onDemand.NumberUtils.getInt32LE,t.getFloat64LE=n.BSON.onDemand.NumberUtils.getFloat64LE,t.getBigInt64LE=n.BSON.onDemand.NumberUtils.getBigInt64LE,t.toUTF8=n.BSON.onDemand.ByteUtils.toUTF8,t.pluckBSONSerializeOptions=function(e){const{fieldsAsRaw:t,useBigInt64:r,promoteValues:n,promoteBuffers:o,promoteLongs:s,serializeFunctions:i,ignoreUndefined:u,bsonRegExp:a,raw:c,enableUtf8Validation:l}=e;return{fieldsAsRaw:t,useBigInt64:r,promoteValues:n,promoteBuffers:o,promoteLongs:s,serializeFunctions:i,ignoreUndefined:u,bsonRegExp:a,raw:c,enableUtf8Validation:l}},t.resolveBSONOptions=function(e,t){const r=t?.bsonOptions;return{raw:e?.raw??r?.raw??!1,useBigInt64:e?.useBigInt64??r?.useBigInt64??!1,promoteLongs:e?.promoteLongs??r?.promoteLongs??!0,promoteValues:e?.promoteValues??r?.promoteValues??!0,promoteBuffers:e?.promoteBuffers??r?.promoteBuffers??!1,ignoreUndefined:e?.ignoreUndefined??r?.ignoreUndefined??!1,bsonRegExp:e?.bsonRegExp??r?.bsonRegExp??!1,serializeFunctions:e?.serializeFunctions??r?.serializeFunctions??!1,fieldsAsRaw:e?.fieldsAsRaw??r?.fieldsAsRaw??{},enableUtf8Validation:e?.enableUtf8Validation??r?.enableUtf8Validation??!0}}},1546:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BulkOperationBase=t.BulkWriteShimOperation=t.FindOperators=t.MongoBulkWriteError=t.mergeBatchResults=t.WriteError=t.WriteConcernError=t.BulkWriteResult=t.Batch=t.BatchType=void 0;const n=r(9023),o=r(5638),s=r(6372),i=r(3618),u=r(3184),a=r(9252),c=r(5192),l=r(1652),h=r(407),d=r(407),p=r(770),f=Symbol("serverError");t.BatchType=Object.freeze({INSERT:1,UPDATE:2,DELETE:3}),t.Batch=class{constructor(e,t){this.originalZeroIndex=t,this.currentIndex=0,this.originalIndexes=[],this.batchType=e,this.operations=[],this.size=0,this.sizeBytes=0}};class m{static generateIdMap(e){const t={};for(const r of e)t[r.index]=r._id;return t}constructor(e,t){this.result=e,this.insertedCount=this.result.nInserted??0,this.matchedCount=this.result.nMatched??0,this.modifiedCount=this.result.nModified??0,this.deletedCount=this.result.nRemoved??0,this.upsertedCount=this.result.upserted.length??0,this.upsertedIds=m.generateIdMap(this.result.upserted),this.insertedIds=m.generateIdMap(this.getSuccessfullyInsertedIds(e,t)),Object.defineProperty(this,"result",{value:this.result,enumerable:!1})}get ok(){return this.result.ok}getSuccessfullyInsertedIds(e,t){return 0===e.writeErrors.length?e.insertedIds:t?e.insertedIds.slice(0,e.writeErrors[0].index):e.insertedIds.filter((({index:t})=>!e.writeErrors.some((e=>t===e.index))))}getUpsertedIdAt(e){return this.result.upserted[e]}getRawResponse(){return this.result}hasWriteErrors(){return this.result.writeErrors.length>0}getWriteErrorCount(){return this.result.writeErrors.length}getWriteErrorAt(e){return e<this.result.writeErrors.length?this.result.writeErrors[e]:void 0}getWriteErrors(){return this.result.writeErrors}getWriteConcernError(){if(0!==this.result.writeConcernErrors.length){if(1===this.result.writeConcernErrors.length)return this.result.writeConcernErrors[0];{let e="";for(let t=0;t<this.result.writeConcernErrors.length;t++)e+=this.result.writeConcernErrors[t].errmsg,0===t&&(e+=" and ");return new g({errmsg:e,code:s.MONGODB_ERROR_CODES.WriteConcernFailed})}}}toString(){return`BulkWriteResult(${this.result})`}isOk(){return 1===this.result.ok}}t.BulkWriteResult=m;class g{constructor(e){this[f]=e}get code(){return this[f].code}get errmsg(){return this[f].errmsg}get errInfo(){return this[f].errInfo}toJSON(){return this[f]}toString(){return`WriteConcernError(${this.errmsg})`}}t.WriteConcernError=g;class E{constructor(e){this.err=e}get code(){return this.err.code}get index(){return this.err.index}get errmsg(){return this.err.errmsg}get errInfo(){return this.err.errInfo}getOperation(){return this.err.op}toJSON(){return{code:this.err.code,index:this.err.index,errmsg:this.err.errmsg,op:this.err.op}}toString(){return`WriteError(${JSON.stringify(this.toJSON())})`}}function A(e,t,r,n){if(r?n=r:n&&n.result&&(n=n.result),null==n)return;if(0===n.ok&&1===t.ok){t.ok=0;const r={index:0,code:n.code||0,errmsg:n.message,errInfo:n.errInfo,op:e.operations[0]};return void t.writeErrors.push(new E(r))}if(0===n.ok&&0===t.ok)return;v(e)&&n.n&&(t.nInserted=t.nInserted+n.n),_(e)&&n.n&&(t.nRemoved=t.nRemoved+n.n);let o=0;if(Array.isArray(n.upserted)){o=n.upserted.length;for(let r=0;r<n.upserted.length;r++)t.upserted.push({index:n.upserted[r].index+e.originalZeroIndex,_id:n.upserted[r]._id})}else n.upserted&&(o=1,t.upserted.push({index:e.originalZeroIndex,_id:n.upserted}));if(O(e)&&n.n){const e=n.nModified;t.nUpserted=t.nUpserted+o,t.nMatched=t.nMatched+(n.n-o),t.nModified="number"==typeof e?t.nModified+e:0}if(Array.isArray(n.writeErrors))for(let r=0;r<n.writeErrors.length;r++){const o={index:e.originalIndexes[n.writeErrors[r].index],code:n.writeErrors[r].code,errmsg:n.writeErrors[r].errmsg,errInfo:n.writeErrors[r].errInfo,op:e.operations[n.writeErrors[r].index]};t.writeErrors.push(new E(o))}n.writeConcernError&&t.writeConcernErrors.push(new g(n.writeConcernError))}t.WriteError=E,t.mergeBatchResults=A;class y extends s.MongoServerError{constructor(e,t){super(e),this.writeErrors=[],e instanceof g?this.err=e:e instanceof Error||(this.message=e.message,this.code=e.code,this.writeErrors=e.writeErrors??[]),this.result=t,Object.assign(this,e)}get name(){return"MongoBulkWriteError"}get insertedCount(){return this.result.insertedCount}get matchedCount(){return this.result.matchedCount}get modifiedCount(){return this.result.modifiedCount}get deletedCount(){return this.result.deletedCount}get upsertedCount(){return this.result.upsertedCount}get insertedIds(){return this.result.insertedIds}get upsertedIds(){return this.result.upsertedIds}}t.MongoBulkWriteError=y;class C{constructor(e){this.bulkOperation=e}update(e){const r=B(this.bulkOperation);return this.bulkOperation.addToOperationsList(t.BatchType.UPDATE,(0,l.makeUpdateStatement)(r.selector,e,{...r,multi:!0}))}updateOne(e){if(!(0,d.hasAtomicOperators)(e))throw new s.MongoInvalidArgumentError("Update document requires atomic operators");const r=B(this.bulkOperation);return this.bulkOperation.addToOperationsList(t.BatchType.UPDATE,(0,l.makeUpdateStatement)(r.selector,e,{...r,multi:!1}))}replaceOne(e){if((0,d.hasAtomicOperators)(e))throw new s.MongoInvalidArgumentError("Replacement document must not use atomic operators");const r=B(this.bulkOperation);return this.bulkOperation.addToOperationsList(t.BatchType.UPDATE,(0,l.makeUpdateStatement)(r.selector,e,{...r,multi:!1}))}deleteOne(){const e=B(this.bulkOperation);return this.bulkOperation.addToOperationsList(t.BatchType.DELETE,(0,i.makeDeleteStatement)(e.selector,{...e,limit:1}))}delete(){const e=B(this.bulkOperation);return this.bulkOperation.addToOperationsList(t.BatchType.DELETE,(0,i.makeDeleteStatement)(e.selector,{...e,limit:0}))}upsert(){return this.bulkOperation.s.currentOp||(this.bulkOperation.s.currentOp={}),this.bulkOperation.s.currentOp.upsert=!0,this}collation(e){return this.bulkOperation.s.currentOp||(this.bulkOperation.s.currentOp={}),this.bulkOperation.s.currentOp.collation=e,this}arrayFilters(e){return this.bulkOperation.s.currentOp||(this.bulkOperation.s.currentOp={}),this.bulkOperation.s.currentOp.arrayFilters=e,this}hint(e){return this.bulkOperation.s.currentOp||(this.bulkOperation.s.currentOp={}),this.bulkOperation.s.currentOp.hint=e,this}}t.FindOperators=C;const S=(0,n.promisify)((function e(t,r,n){if(0===t.s.batches.length)return n(void 0,new m(t.s.bulkResult,t.isOrdered));const o=t.s.batches.shift();function c(i,u){if(i&&"message"in i&&!(i instanceof s.MongoWriteConcernError))return n(new y(i,new m(t.s.bulkResult,t.isOrdered)));if(i instanceof s.MongoWriteConcernError)return function(e,t,r,n,o){A(e,t,void 0,n.result),o(new y({message:n.result?.writeConcernError.errmsg,code:n.result?.writeConcernError.result},new m(t,r)))}(o,t.s.bulkResult,t.isOrdered,i,n);A(o,t.s.bulkResult,i,u);const a=new m(t.s.bulkResult,t.isOrdered);t.handleWriteError(n,a)||e(t,r,n)}const h=(0,d.resolveOptions)(t,{...r,ordered:t.isOrdered});!0!==h.bypassDocumentValidation&&delete h.bypassDocumentValidation,t.operationId&&(c.operationId=t.operationId),!0===t.s.bypassDocumentValidation&&(h.bypassDocumentValidation=!0),!1===t.s.checkKeys&&(h.checkKeys=!1),h.retryWrites&&(O(o)&&(h.retryWrites=h.retryWrites&&!o.operations.some((e=>e.multi))),_(o)&&(h.retryWrites=h.retryWrites&&!o.operations.some((e=>0===e.limit))));try{const e=v(o)?new a.InsertOperation(t.s.namespace,o.operations,h):O(o)?new l.UpdateOperation(t.s.namespace,o.operations,h):_(o)?new i.DeleteOperation(t.s.namespace,o.operations,h):null;null!=e&&(0,u.executeOperation)(t.s.collection.client,e).then((e=>c(void 0,e)),(e=>c(e)))}catch(e){e.ok=0,A(o,t.s.bulkResult,e,void 0),n()}}));class w extends c.AbstractOperation{constructor(e,t){super(t),this.bulkOperation=e}get commandName(){return"bulkWrite"}execute(e,t){return null==this.options.session&&(this.options.session=t),S(this.bulkOperation,this.options)}}t.BulkWriteShimOperation=w;class b{constructor(e,t,r){this.collection=e,this.isOrdered=r;const n=(0,d.getTopology)(e);t=null==t?{}:t;const s=e.s.namespace,i=n.lastHello(),u=!(!n.s.options||!n.s.options.autoEncrypter),a=i&&i.maxBsonObjectSize?i.maxBsonObjectSize:16777216,c=u?2097152:a,l=i&&i.maxWriteBatchSize?i.maxWriteBatchSize:1e3,h=(l-1).toString(10).length+2;let f=Object.assign({},t);f=(0,d.applyRetryableWrites)(f,e.s.db),this.s={bulkResult:{ok:1,writeErrors:[],writeConcernErrors:[],insertedIds:[],nInserted:0,nUpserted:0,nMatched:0,nModified:0,nRemoved:0,upserted:[]},currentBatch:void 0,currentIndex:0,currentBatchSize:0,currentBatchSizeBytes:0,currentInsertBatch:void 0,currentUpdateBatch:void 0,currentRemoveBatch:void 0,batches:[],writeConcern:p.WriteConcern.fromOptions(t),maxBsonObjectSize:a,maxBatchSizeBytes:c,maxWriteBatchSize:l,maxKeySize:h,namespace:s,topology:n,options:f,bsonOptions:(0,o.resolveBSONOptions)(t),currentOp:void 0,executed:!1,collection:e,err:void 0,checkKeys:"boolean"==typeof t.checkKeys&&t.checkKeys},!0===t.bypassDocumentValidation&&(this.s.bypassDocumentValidation=!0)}insert(e){return(0,h.maybeAddIdToDocuments)(this.collection,e,{forceServerObjectId:this.shouldForceServerObjectId()}),this.addToOperationsList(t.BatchType.INSERT,e)}find(e){if(!e)throw new s.MongoInvalidArgumentError("Bulk find operation must specify a selector");return this.s.currentOp={selector:e},new C(this)}raw(e){if(null==e||"object"!=typeof e)throw new s.MongoInvalidArgumentError("Operation must be an object with an operation key");if("insertOne"in e){const r=this.shouldForceServerObjectId(),n=e.insertOne&&null==e.insertOne.document?e.insertOne:e.insertOne.document;return(0,h.maybeAddIdToDocuments)(this.collection,n,{forceServerObjectId:r}),this.addToOperationsList(t.BatchType.INSERT,n)}if("replaceOne"in e||"updateOne"in e||"updateMany"in e){if("replaceOne"in e){if("q"in e.replaceOne)throw new s.MongoInvalidArgumentError("Raw operations are not allowed");const r=(0,l.makeUpdateStatement)(e.replaceOne.filter,e.replaceOne.replacement,{...e.replaceOne,multi:!1});if((0,d.hasAtomicOperators)(r.u))throw new s.MongoInvalidArgumentError("Replacement document must not use atomic operators");return this.addToOperationsList(t.BatchType.UPDATE,r)}if("updateOne"in e){if("q"in e.updateOne)throw new s.MongoInvalidArgumentError("Raw operations are not allowed");const r=(0,l.makeUpdateStatement)(e.updateOne.filter,e.updateOne.update,{...e.updateOne,multi:!1});if(!(0,d.hasAtomicOperators)(r.u))throw new s.MongoInvalidArgumentError("Update document requires atomic operators");return this.addToOperationsList(t.BatchType.UPDATE,r)}if("updateMany"in e){if("q"in e.updateMany)throw new s.MongoInvalidArgumentError("Raw operations are not allowed");const r=(0,l.makeUpdateStatement)(e.updateMany.filter,e.updateMany.update,{...e.updateMany,multi:!0});if(!(0,d.hasAtomicOperators)(r.u))throw new s.MongoInvalidArgumentError("Update document requires atomic operators");return this.addToOperationsList(t.BatchType.UPDATE,r)}}if("deleteOne"in e){if("q"in e.deleteOne)throw new s.MongoInvalidArgumentError("Raw operations are not allowed");return this.addToOperationsList(t.BatchType.DELETE,(0,i.makeDeleteStatement)(e.deleteOne.filter,{...e.deleteOne,limit:1}))}if("deleteMany"in e){if("q"in e.deleteMany)throw new s.MongoInvalidArgumentError("Raw operations are not allowed");return this.addToOperationsList(t.BatchType.DELETE,(0,i.makeDeleteStatement)(e.deleteMany.filter,{...e.deleteMany,limit:0}))}throw new s.MongoInvalidArgumentError("bulkWrite only supports insertOne, updateOne, updateMany, deleteOne, deleteMany")}get bsonOptions(){return this.s.bsonOptions}get writeConcern(){return this.s.writeConcern}get batches(){const e=[...this.s.batches];return this.isOrdered?this.s.currentBatch&&e.push(this.s.currentBatch):(this.s.currentInsertBatch&&e.push(this.s.currentInsertBatch),this.s.currentUpdateBatch&&e.push(this.s.currentUpdateBatch),this.s.currentRemoveBatch&&e.push(this.s.currentRemoveBatch)),e}async execute(e={}){if(this.s.executed)throw new s.MongoBatchReExecutionError;const t=p.WriteConcern.fromOptions(e);if(t&&(this.s.writeConcern=t),this.isOrdered?this.s.currentBatch&&this.s.batches.push(this.s.currentBatch):(this.s.currentInsertBatch&&this.s.batches.push(this.s.currentInsertBatch),this.s.currentUpdateBatch&&this.s.batches.push(this.s.currentUpdateBatch),this.s.currentRemoveBatch&&this.s.batches.push(this.s.currentRemoveBatch)),0===this.s.batches.length)throw new s.MongoInvalidArgumentError("Invalid BulkOperation, Batch cannot be empty");this.s.executed=!0;const r={...this.s.options,...e},n=new w(this,r);return await(0,u.executeOperation)(this.s.collection.client,n)}handleWriteError(e,t){if(this.s.bulkResult.writeErrors.length>0){const r=this.s.bulkResult.writeErrors[0].errmsg?this.s.bulkResult.writeErrors[0].errmsg:"write operation failed";return e(new y({message:r,code:this.s.bulkResult.writeErrors[0].code,writeErrors:this.s.bulkResult.writeErrors},t)),!0}const r=t.getWriteConcernError();return!!r&&(e(new y(r,t)),!0)}shouldForceServerObjectId(){return!0===this.s.options.forceServerObjectId||!0===this.s.collection.s.db.options?.forceServerObjectId}}function v(e){return e.batchType===t.BatchType.INSERT}function O(e){return e.batchType===t.BatchType.UPDATE}function _(e){return e.batchType===t.BatchType.DELETE}function B(e){let{currentOp:t}=e.s;return e.s.currentOp=void 0,t||(t={}),t}t.BulkOperationBase=b,Object.defineProperty(b.prototype,"length",{enumerable:!0,get(){return this.s.currentIndex}})},1986:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OrderedBulkOperation=void 0;const n=r(5638),o=r(6372),s=r(1546);class i extends s.BulkOperationBase{constructor(e,t){super(e,t,!0)}addToOperationsList(e,t){const r=n.calculateObjectSize(t,{checkKeys:!1,ignoreUndefined:!1});if(r>=this.s.maxBsonObjectSize)throw new o.MongoInvalidArgumentError(`Document is larger than the maximum size ${this.s.maxBsonObjectSize}`);null==this.s.currentBatch&&(this.s.currentBatch=new s.Batch(e,this.s.currentIndex));const i=this.s.maxKeySize;if((this.s.currentBatchSize+1>=this.s.maxWriteBatchSize||this.s.currentBatchSize>0&&this.s.currentBatchSizeBytes+i+r>=this.s.maxBatchSizeBytes||this.s.currentBatch.batchType!==e)&&(this.s.batches.push(this.s.currentBatch),this.s.currentBatch=new s.Batch(e,this.s.currentIndex),this.s.currentBatchSize=0,this.s.currentBatchSizeBytes=0),e===s.BatchType.INSERT&&this.s.bulkResult.insertedIds.push({index:this.s.currentIndex,_id:t._id}),Array.isArray(t))throw new o.MongoInvalidArgumentError("Operation passed in cannot be an Array");return this.s.currentBatch.originalIndexes.push(this.s.currentIndex),this.s.currentBatch.operations.push(t),this.s.currentBatchSize+=1,this.s.currentBatchSizeBytes+=i+r,this.s.currentIndex+=1,this}}t.OrderedBulkOperation=i},6835:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UnorderedBulkOperation=void 0;const n=r(5638),o=r(6372),s=r(1546);class i extends s.BulkOperationBase{constructor(e,t){super(e,t,!1)}handleWriteError(e,t){return!this.s.batches.length&&super.handleWriteError(e,t)}addToOperationsList(e,t){const r=n.calculateObjectSize(t,{checkKeys:!1,ignoreUndefined:!1});if(r>=this.s.maxBsonObjectSize)throw new o.MongoInvalidArgumentError(`Document is larger than the maximum size ${this.s.maxBsonObjectSize}`);this.s.currentBatch=void 0,e===s.BatchType.INSERT?this.s.currentBatch=this.s.currentInsertBatch:e===s.BatchType.UPDATE?this.s.currentBatch=this.s.currentUpdateBatch:e===s.BatchType.DELETE&&(this.s.currentBatch=this.s.currentRemoveBatch);const i=this.s.maxKeySize;if(null==this.s.currentBatch&&(this.s.currentBatch=new s.Batch(e,this.s.currentIndex)),(this.s.currentBatch.size+1>=this.s.maxWriteBatchSize||this.s.currentBatch.size>0&&this.s.currentBatch.sizeBytes+i+r>=this.s.maxBatchSizeBytes||this.s.currentBatch.batchType!==e)&&(this.s.batches.push(this.s.currentBatch),this.s.currentBatch=new s.Batch(e,this.s.currentIndex)),Array.isArray(t))throw new o.MongoInvalidArgumentError("Operation passed in cannot be an Array");return this.s.currentBatch.operations.push(t),this.s.currentBatch.originalIndexes.push(this.s.currentIndex),this.s.currentIndex=this.s.currentIndex+1,e===s.BatchType.INSERT?(this.s.currentInsertBatch=this.s.currentBatch,this.s.bulkResult.insertedIds.push({index:this.s.bulkResult.insertedIds.length,_id:t._id})):e===s.BatchType.UPDATE?this.s.currentUpdateBatch=this.s.currentBatch:e===s.BatchType.DELETE&&(this.s.currentRemoveBatch=this.s.currentBatch),this.s.currentBatch.size+=1,this.s.currentBatch.sizeBytes+=i+r,this}}t.UnorderedBulkOperation=i},5451:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChangeStream=void 0;const n=r(948),o=r(3543),s=r(7117),i=r(522),u=r(6372),a=r(6622),c=r(1404),l=r(407),h=Symbol("cursorStream"),d=Symbol("closed"),p=Symbol("mode"),f=["resumeAfter","startAfter","startAtOperationTime","fullDocument","fullDocumentBeforeChange","showExpandedEvents"],m={COLLECTION:Symbol("Collection"),DATABASE:Symbol("Database"),CLUSTER:Symbol("Cluster")},g=[o.RESUME_TOKEN_CHANGED,o.END,o.CLOSE],E="ChangeStream is closed";class A extends c.TypedEventEmitter{constructor(e,t=[],r={}){if(super(),this.pipeline=t,this.options={...r},delete this.options.writeConcern,e instanceof n.Collection)this.type=m.COLLECTION;else if(e instanceof i.Db)this.type=m.DATABASE;else{if(!(e instanceof a.MongoClient))throw new u.MongoChangeStreamError("Parent provided to ChangeStream constructor must be an instance of Collection, Db, or MongoClient");this.type=m.CLUSTER}this.parent=e,this.namespace=e.s.namespace,!this.options.readPreference&&e.readPreference&&(this.options.readPreference=e.readPreference),this.cursor=this._createChangeStreamCursor(r),this[d]=!1,this[p]=!1,this.on("newListener",(e=>{"change"===e&&this.cursor&&0===this.listenerCount("change")&&this._streamEvents(this.cursor)})),this.on("removeListener",(e=>{"change"===e&&0===this.listenerCount("change")&&this.cursor&&this[h]?.removeAllListeners("data")}))}get cursorStream(){return this[h]}get resumeToken(){return this.cursor?.resumeToken}async hasNext(){for(this._setIsIterator();;)try{return await this.cursor.hasNext()}catch(e){try{await this._processErrorIteratorMode(e)}catch(e){try{await this.close()}catch(e){(0,l.squashError)(e)}throw e}}}async next(){for(this._setIsIterator();;)try{const e=await this.cursor.next();return this._processChange(e??null)}catch(e){try{await this._processErrorIteratorMode(e)}catch(e){try{await this.close()}catch(e){(0,l.squashError)(e)}throw e}}}async tryNext(){for(this._setIsIterator();;)try{return await this.cursor.tryNext()??null}catch(e){try{await this._processErrorIteratorMode(e)}catch(e){try{await this.close()}catch(e){(0,l.squashError)(e)}throw e}}}async*[Symbol.asyncIterator](){if(!this.closed)try{for(;;)yield await this.next()}finally{try{await this.close()}catch(e){(0,l.squashError)(e)}}}get closed(){return this[d]||this.cursor.closed}async close(){this[d]=!0;const e=this.cursor;try{await e.close()}finally{this._endStream()}}stream(e){if(this.closed)throw new u.MongoChangeStreamError(E);return this.streamOptions=e,this.cursor.stream(e)}_setIsEmitter(){if("iterator"===this[p])throw new u.MongoAPIError("ChangeStream cannot be used as an EventEmitter after being used as an iterator");this[p]="emitter"}_setIsIterator(){if("emitter"===this[p])throw new u.MongoAPIError("ChangeStream cannot be used as an iterator after being used as an EventEmitter");this[p]="iterator"}_createChangeStreamCursor(e){const t=(0,l.filterOptions)(e,f);this.type===m.CLUSTER&&(t.allChangesForCluster=!0);const r=[{$changeStream:t},...this.pipeline],n=this.type===m.CLUSTER?this.parent:this.type===m.DATABASE||this.type===m.COLLECTION?this.parent.client:null;if(null==n)throw new u.MongoRuntimeError(`Changestream type should only be one of cluster, database, collection. Found ${this.type.toString()}`);const o=new s.ChangeStreamCursor(n,this.namespace,r,e);for(const e of g)o.on(e,(t=>this.emit(e,t)));return this.listenerCount(A.CHANGE)>0&&this._streamEvents(o),o}_closeEmitterModeWithError(e){this.emit(A.ERROR,e),this.close().then(void 0,l.squashError)}_streamEvents(e){this._setIsEmitter();const t=this[h]??e.stream();this[h]=t,t.on("data",(e=>{try{const t=this._processChange(e);this.emit(A.CHANGE,t)}catch(e){this.emit(A.ERROR,e)}})),t.on("error",(e=>this._processErrorStreamMode(e)))}_endStream(){const e=this[h];e&&(["data","close","end","error"].forEach((t=>e.removeAllListeners(t))),e.destroy()),this[h]=void 0}_processChange(e){if(this[d])throw new u.MongoAPIError(E);if(null==e)throw new u.MongoRuntimeError(E);if(e&&!e._id)throw new u.MongoChangeStreamError("A change stream document has been received that lacks a resume token (_id).");return this.cursor.cacheResumeToken(e._id),this.options.startAtOperationTime=void 0,e}_processErrorStreamMode(e){this[d]||((0,u.isResumableError)(e,this.cursor.maxWireVersion)?(this._endStream(),this.cursor.close().then(void 0,l.squashError),(0,l.getTopology)(this.parent).selectServer(this.cursor.readPreference,{operationName:"reconnect topology in change stream"}).then((()=>{this.cursor=this._createChangeStreamCursor(this.cursor.resumeOptions)}),(()=>this._closeEmitterModeWithError(e)))):this._closeEmitterModeWithError(e))}async _processErrorIteratorMode(e){if(this[d])throw new u.MongoAPIError(E);if(!(0,u.isResumableError)(e,this.cursor.maxWireVersion)){try{await this.close()}catch(e){(0,l.squashError)(e)}throw e}try{await this.cursor.close()}catch(e){(0,l.squashError)(e)}const t=(0,l.getTopology)(this.parent);try{await t.selectServer(this.cursor.readPreference,{operationName:"reconnect topology in change stream"}),this.cursor=this._createChangeStreamCursor(this.cursor.resumeOptions)}catch{throw await this.close(),e}}}A.RESPONSE=o.RESPONSE,A.MORE=o.MORE,A.INIT=o.INIT,A.CLOSE=o.CLOSE,A.CHANGE=o.CHANGE,A.END=o.END,A.ERROR=o.ERROR,A.RESUME_TOKEN_CHANGED=o.RESUME_TOKEN_CHANGED,t.ChangeStream=A},4782:(e,t,r)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.AutoEncrypter=t.AutoEncryptionLoggerLevel=void 0;const o=r(5638),s=r(2822),i=r(6372),u=r(6622),a=r(407),c=r(4482),l=r(5871),h=r(1374),d=r(1663),p=r(2213);t.AutoEncryptionLoggerLevel=Object.freeze({FatalError:0,Error:1,Warning:2,Info:3,Trace:4});const f=Symbol.for("@@mdb.decorateDecryptionResult"),m=Symbol.for("@@mdb.decryptedKeys");class g{static getMongoCrypt(){const e=(0,s.getMongoDBClientEncryption)();if("kModuleError"in e)throw e.kModuleError;return e.MongoCrypt}constructor(e,t){this[n]=!1,this._client=e,this._bypassEncryption=!0===t.bypassAutoEncryption,this._keyVaultNamespace=t.keyVaultNamespace||"admin.datakeys",this._keyVaultClient=t.keyVaultClient||e,this._metaDataClient=t.metadataClient||e,this._proxyOptions=t.proxyOptions||{},this._tlsOptions=t.tlsOptions||{},this._kmsProviders=t.kmsProviders||{};const r={cryptoCallbacks:c};t.schemaMap&&(r.schemaMap=Buffer.isBuffer(t.schemaMap)?t.schemaMap:(0,o.serialize)(t.schemaMap)),t.encryptedFieldsMap&&(r.encryptedFieldsMap=Buffer.isBuffer(t.encryptedFieldsMap)?t.encryptedFieldsMap:(0,o.serialize)(t.encryptedFieldsMap)),r.kmsProviders=Buffer.isBuffer(this._kmsProviders)?this._kmsProviders:(0,o.serialize)(this._kmsProviders),t.options?.logger&&(r.logger=t.options.logger),t.extraOptions&&t.extraOptions.cryptSharedLibPath&&(r.cryptSharedLibPath=t.extraOptions.cryptSharedLibPath),t.bypassQueryAnalysis&&(r.bypassQueryAnalysis=t.bypassQueryAnalysis),this._bypassMongocryptdAndCryptShared=this._bypassEncryption||!!t.bypassQueryAnalysis,t.extraOptions&&t.extraOptions.cryptSharedLibSearchPaths?r.cryptSharedLibSearchPaths=t.extraOptions.cryptSharedLibSearchPaths:this._bypassMongocryptdAndCryptShared||(r.cryptSharedLibSearchPaths=["$SYSTEM"]);const s=g.getMongoCrypt();if(this._mongocrypt=new s(r),this._contextCounter=0,t.extraOptions&&t.extraOptions.cryptSharedLibRequired&&!this.cryptSharedLibVersionInfo)throw new l.MongoCryptInvalidArgumentError("`cryptSharedLibRequired` set but no crypt_shared library loaded");if(!this._bypassMongocryptdAndCryptShared&&!this.cryptSharedLibVersionInfo){this._mongocryptdManager=new h.MongocryptdManager(t.extraOptions);const e={serverSelectionTimeoutMS:1e4};null!=t.extraOptions&&"string"==typeof t.extraOptions.mongocryptdURI||(e.family=4),this._mongocryptdClient=new u.MongoClient(this._mongocryptdManager.uri,e)}}async init(){if(!this._bypassMongocryptdAndCryptShared&&!this.cryptSharedLibVersionInfo){if(!this._mongocryptdManager)throw new i.MongoRuntimeError("Reached impossible state: mongocryptdManager is undefined when neither bypassSpawn nor the shared lib are specified.");if(!this._mongocryptdClient)throw new i.MongoRuntimeError("Reached impossible state: mongocryptdClient is undefined when neither bypassSpawn nor the shared lib are specified.");this._mongocryptdManager.bypassSpawn||await this._mongocryptdManager.spawn();try{return await this._mongocryptdClient.connect()}catch(e){const{message:t}=e;if(t&&(t.match(/timed out after/)||t.match(/ENOTFOUND/)))throw new i.MongoRuntimeError("Unable to connect to `mongocryptd`, please make sure it is running or in your PATH for auto-spawn",{cause:e});throw e}}}async teardown(e){await(this._mongocryptdClient?.close(e))}async encrypt(e,t,r={}){if(this._bypassEncryption)return t;const n=Buffer.isBuffer(t)?t:(0,o.serialize)(t,r),s=this._mongocrypt.makeEncryptionContext(a.MongoDBCollectionNamespace.fromString(e).db,n);s.id=this._contextCounter++,s.ns=e,s.document=t;const i=new p.StateMachine({promoteValues:!1,promoteLongs:!1,proxyOptions:this._proxyOptions,tlsOptions:this._tlsOptions});return await i.execute(this,s)}async decrypt(e,t={}){const r=Buffer.isBuffer(e)?e:(0,o.serialize)(e,t),n=this._mongocrypt.makeDecryptionContext(r);n.id=this._contextCounter++;const s=new p.StateMachine({...t,proxyOptions:this._proxyOptions,tlsOptions:this._tlsOptions}),i=this[f],u=await s.execute(this,n);return i&&E(u,e),u}async askForKMSCredentials(){return await(0,d.refreshKMSCredentials)(this._kmsProviders)}get cryptSharedLibVersionInfo(){return this._mongocrypt.cryptSharedLibVersionInfo}static get libmongocryptVersion(){return g.getMongoCrypt().libmongocryptVersion}}function E(e,t,r=!0){if(r&&(Buffer.isBuffer(t)&&(t=(0,o.deserialize)(t)),Buffer.isBuffer(e)))throw new i.MongoRuntimeError("Expected result of decryption to be deserialized BSON object");if(e&&"object"==typeof e)for(const r of Object.keys(e)){const n=t[r];n&&"Binary"===n._bsontype&&6===n.sub_type?(e[m]||Object.defineProperty(e,m,{value:[],configurable:!0,enumerable:!1,writable:!1}),e[m].push(r)):E(e[r],n,!1)}}t.AutoEncrypter=g,n=f},575:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClientEncryption=void 0;const n=r(5638),o=r(2822),s=r(407),i=r(4482),u=r(5871),a=r(1663),c=r(2213);class l{static getMongoCrypt(){const e=(0,o.getMongoDBClientEncryption)();if("kModuleError"in e)throw e.kModuleError;return e.MongoCrypt}constructor(e,t){if(this._client=e,this._proxyOptions=t.proxyOptions??{},this._tlsOptions=t.tlsOptions??{},this._kmsProviders=t.kmsProviders||{},null==t.keyVaultNamespace)throw new u.MongoCryptInvalidArgumentError("Missing required option `keyVaultNamespace`");const r={...t,cryptoCallbacks:i,kmsProviders:Buffer.isBuffer(this._kmsProviders)?this._kmsProviders:(0,n.serialize)(this._kmsProviders)};this._keyVaultNamespace=t.keyVaultNamespace,this._keyVaultClient=t.keyVaultClient||e;const o=l.getMongoCrypt();this._mongoCrypt=new o(r)}async createDataKey(e,t={}){if(t.keyAltNames&&!Array.isArray(t.keyAltNames))throw new u.MongoCryptInvalidArgumentError(`Option "keyAltNames" must be an array of strings, but was of type ${typeof t.keyAltNames}.`);let r,o;t.keyAltNames&&t.keyAltNames.length>0&&(r=t.keyAltNames.map(((e,t)=>{if("string"!=typeof e)throw new u.MongoCryptInvalidArgumentError(`Option "keyAltNames" must be an array of strings, but item at index ${t} was of type ${typeof e}`);return(0,n.serialize)({keyAltName:e})}))),t.keyMaterial&&(o=(0,n.serialize)({keyMaterial:t.keyMaterial}));const i=(0,n.serialize)({provider:e,...t.masterKey}),a=this._mongoCrypt.makeDataKeyContext(i,{keyAltNames:r,keyMaterial:o}),l=new c.StateMachine({proxyOptions:this._proxyOptions,tlsOptions:this._tlsOptions}),h=await l.execute(this,a),{db:d,collection:p}=s.MongoDBCollectionNamespace.fromString(this._keyVaultNamespace),{insertedId:f}=await this._keyVaultClient.db(d).collection(p).insertOne(h,{writeConcern:{w:"majority"}});return f}async rewrapManyDataKey(e,t){let r;if(t){const e=Object.assign({provider:t.provider},t.masterKey);r=(0,n.serialize)(e)}const o=(0,n.serialize)(e),i=this._mongoCrypt.makeRewrapManyDataKeyContext(o,r),u=new c.StateMachine({proxyOptions:this._proxyOptions,tlsOptions:this._tlsOptions}),{v:a}=await u.execute(this,i);if(0===a.length)return{};const{db:l,collection:h}=s.MongoDBCollectionNamespace.fromString(this._keyVaultNamespace),d=a.map((e=>({updateOne:{filter:{_id:e._id},update:{$set:{masterKey:e.masterKey,keyMaterial:e.keyMaterial},$currentDate:{updateDate:!0}}}})));return{bulkWriteResult:await this._keyVaultClient.db(l).collection(h).bulkWrite(d,{writeConcern:{w:"majority"}})}}async deleteKey(e){const{db:t,collection:r}=s.MongoDBCollectionNamespace.fromString(this._keyVaultNamespace);return await this._keyVaultClient.db(t).collection(r).deleteOne({_id:e},{writeConcern:{w:"majority"}})}getKeys(){const{db:e,collection:t}=s.MongoDBCollectionNamespace.fromString(this._keyVaultNamespace);return this._keyVaultClient.db(e).collection(t).find({},{readConcern:{level:"majority"}})}async getKey(e){const{db:t,collection:r}=s.MongoDBCollectionNamespace.fromString(this._keyVaultNamespace);return await this._keyVaultClient.db(t).collection(r).findOne({_id:e},{readConcern:{level:"majority"}})}async getKeyByAltName(e){const{db:t,collection:r}=s.MongoDBCollectionNamespace.fromString(this._keyVaultNamespace);return await this._keyVaultClient.db(t).collection(r).findOne({keyAltNames:e},{readConcern:{level:"majority"}})}async addKeyAltName(e,t){const{db:r,collection:n}=s.MongoDBCollectionNamespace.fromString(this._keyVaultNamespace);return await this._keyVaultClient.db(r).collection(n).findOneAndUpdate({_id:e},{$addToSet:{keyAltNames:t}},{writeConcern:{w:"majority"},returnDocument:"before"})}async removeKeyAltName(e,t){const{db:r,collection:n}=s.MongoDBCollectionNamespace.fromString(this._keyVaultNamespace),o=[{$set:{keyAltNames:{$cond:[{$eq:["$keyAltNames",[t]]},"$$REMOVE",{$filter:{input:"$keyAltNames",cond:{$ne:["$$this",t]}}}]}}}];return await this._keyVaultClient.db(r).collection(n).findOneAndUpdate({_id:e},o,{writeConcern:{w:"majority"},returnDocument:"before"})}async createEncryptedCollection(e,t,r){const{provider:n,masterKey:o,createCollectionOptions:{encryptedFields:{...s},...i}}=r;if(Array.isArray(s.fields)){const e=s.fields.map((async e=>null==e||"object"!=typeof e||null!=e.keyId?e:{...e,keyId:await this.createDataKey(n,{masterKey:o})})),t=await Promise.allSettled(e);s.fields=t.map(((e,t)=>"fulfilled"===e.status?e.value:s.fields[t]));const r=t.find((e=>"rejected"===e.status));if(null!=r)throw new u.MongoCryptCreateDataKeyError(s,{cause:r.reason})}try{return{collection:await e.createCollection(t,{...i,encryptedFields:s}),encryptedFields:s}}catch(e){throw new u.MongoCryptCreateEncryptedCollectionError(s,{cause:e})}}async encrypt(e,t){return await this._encrypt(e,!1,t)}async encryptExpression(e,t){return await this._encrypt(e,!0,t)}async decrypt(e){const t=(0,n.serialize)({v:e}),r=this._mongoCrypt.makeExplicitDecryptionContext(t),o=new c.StateMachine({proxyOptions:this._proxyOptions,tlsOptions:this._tlsOptions}),{v:s}=await o.execute(this,r);return s}async askForKMSCredentials(){return await(0,a.refreshKMSCredentials)(this._kmsProviders)}static get libmongocryptVersion(){return l.getMongoCrypt().libmongocryptVersion}async _encrypt(e,t,r){const{algorithm:o,keyId:s,keyAltName:i,contentionFactor:a,queryType:l,rangeOptions:h}=r,d={expressionMode:t,algorithm:o};if(s&&(d.keyId=s.buffer),i){if(s)throw new u.MongoCryptInvalidArgumentError('"options" cannot contain both "keyId" and "keyAltName"');if("string"!=typeof i)throw new u.MongoCryptInvalidArgumentError('"options.keyAltName" must be of type string, but was of type '+typeof i);d.keyAltName=(0,n.serialize)({keyAltName:i})}"number"!=typeof a&&"bigint"!=typeof a||(d.contentionFactor=a),"string"==typeof l&&(d.queryType=l),"object"==typeof h&&(d.rangeOptions=(0,n.serialize)(h));const p=(0,n.serialize)({v:e}),f=new c.StateMachine({proxyOptions:this._proxyOptions,tlsOptions:this._tlsOptions}),m=this._mongoCrypt.makeExplicitEncryptionContext(p,d);return(await f.execute(this,m)).v}}t.ClientEncryption=l},4482:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hmacSha256Hook=t.hmacSha512Hook=t.aes256CtrDecryptHook=t.aes256CtrEncryptHook=t.aes256CbcDecryptHook=t.aes256CbcEncryptHook=t.signRsaSha256Hook=t.makeHmacHook=t.sha256Hook=t.randomHook=t.makeAES256Hook=void 0;const n=r(6982);function o(e,t){return function(r,o,s,i){let u;try{const i=n[e](t,r,o);i.setAutoPadding(!1),u=i.update(s);const a=i.final();a.length>0&&(u=Buffer.concat([u,a]))}catch(e){return e}return u.copy(i),u.length}}function s(e){return(t,r,o)=>{let s;try{s=n.createHmac(e,t).update(r).digest()}catch(e){return e}return s.copy(o),s.length}}t.makeAES256Hook=o,t.randomHook=function(e,t){try{n.randomFillSync(e,0,t)}catch(e){return e}return t},t.sha256Hook=function(e,t){let r;try{r=n.createHash("sha256").update(e).digest()}catch(e){return e}return r.copy(t),r.length},t.makeHmacHook=s,t.signRsaSha256Hook=function(e,t,r){let o;try{const r=n.createSign("sha256WithRSAEncryption"),s=Buffer.from(`-----BEGIN PRIVATE KEY-----\n${e.toString("base64")}\n-----END PRIVATE KEY-----\n`);o=r.update(t).end().sign(s)}catch(e){return e}return o.copy(r),o.length},t.aes256CbcEncryptHook=o("createCipheriv","aes-256-cbc"),t.aes256CbcDecryptHook=o("createDecipheriv","aes-256-cbc"),t.aes256CtrEncryptHook=o("createCipheriv","aes-256-ctr"),t.aes256CtrDecryptHook=o("createDecipheriv","aes-256-ctr"),t.hmacSha512Hook=s("sha512"),t.hmacSha256Hook=s("sha256")},5871:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoCryptKMSRequestNetworkTimeoutError=t.MongoCryptAzureKMSRequestError=t.MongoCryptCreateEncryptedCollectionError=t.MongoCryptCreateDataKeyError=t.MongoCryptInvalidArgumentError=t.MongoCryptError=void 0;const n=r(6372);class o extends n.MongoError{constructor(e,t={}){super(e,t)}get name(){return"MongoCryptError"}}t.MongoCryptError=o,t.MongoCryptInvalidArgumentError=class extends o{constructor(e){super(e)}get name(){return"MongoCryptInvalidArgumentError"}},t.MongoCryptCreateDataKeyError=class extends o{constructor(e,{cause:t}){super(`Unable to complete creating data keys: ${t.message}`,{cause:t}),this.encryptedFields=e}get name(){return"MongoCryptCreateDataKeyError"}},t.MongoCryptCreateEncryptedCollectionError=class extends o{constructor(e,{cause:t}){super(`Unable to create collection: ${t.message}`,{cause:t}),this.encryptedFields=e}get name(){return"MongoCryptCreateEncryptedCollectionError"}},t.MongoCryptAzureKMSRequestError=class extends o{constructor(e,t){super(e),this.body=t}get name(){return"MongoCryptAzureKMSRequestError"}},t.MongoCryptKMSRequestNetworkTimeoutError=class extends o{get name(){return"MongoCryptKMSRequestNetworkTimeoutError"}}},1374:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongocryptdManager=void 0;const n=r(6372);class o{constructor(e={}){this.uri="string"==typeof e.mongocryptdURI&&e.mongocryptdURI.length>0?e.mongocryptdURI:o.DEFAULT_MONGOCRYPTD_URI,this.bypassSpawn=!!e.mongocryptdBypassSpawn,this.spawnPath=e.mongocryptdSpawnPath||"",this.spawnArgs=[],Array.isArray(e.mongocryptdSpawnArgs)&&(this.spawnArgs=this.spawnArgs.concat(e.mongocryptdSpawnArgs)),this.spawnArgs.filter((e=>"string"==typeof e)).every((e=>e.indexOf("--idleShutdownTimeoutSecs")<0))&&this.spawnArgs.push("--idleShutdownTimeoutSecs","60")}async spawn(){const e=this.spawnPath||"mongocryptd",{spawn:t}=r(5317);this._child=t(e,this.spawnArgs,{stdio:"ignore",detached:!0}),this._child.on("error",(()=>{})),this._child.unref()}async withRespawn(e){try{return await e()}catch(e){if(!(e instanceof n.MongoNetworkTimeoutError)||this.bypassSpawn)throw e}return await this.spawn(),await e()}}o.DEFAULT_MONGOCRYPTD_URI="mongodb://localhost:27020",t.MongocryptdManager=o},1658:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.loadAWSCredentials=void 0;const n=r(8373);t.loadAWSCredentials=async function(e){const t=new n.AWSSDKCredentialProvider,{SecretAccessKey:r="",AccessKeyId:o="",Token:s}=await t.getCredentials(),i={secretAccessKey:r,accessKeyId:o};return null!=s&&(i.sessionToken=s),{...e,aws:i}}},2544:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.loadAzureCredentials=t.fetchAzureKMSToken=t.prepareRequest=t.tokenCache=t.AzureCredentialCache=void 0;const n=r(5871),o=r(3370);class s{constructor(){this.cachedToken=null}async getToken(){return(null==this.cachedToken||this.needsRefresh(this.cachedToken))&&(this.cachedToken=await this._getToken()),{accessToken:this.cachedToken.accessToken}}needsRefresh(e){return e.expiresOnTimestamp-Date.now()<=6e3}resetCache(){this.cachedToken=null}_getToken(){return u()}}function i(e){const t=new URL(e.url?.toString()??"http://169.254.169.254/metadata/identity/oauth2/token");return t.searchParams.append("api-version","2018-02-01"),t.searchParams.append("resource","https://vault.azure.net"),{headers:{...e.headers,"Content-Type":"application/json",Metadata:!0},url:t}}async function u(e={}){const{headers:t,url:r}=i(e);try{const e=await(0,o.get)(r,{headers:t});return await async function(e){const{status:t,body:r}=e,o=(()=>{try{return JSON.parse(r)}catch{throw new n.MongoCryptAzureKMSRequestError("Malformed JSON body in GET request.")}})();if(200!==t)throw new n.MongoCryptAzureKMSRequestError("Unable to complete request.",o);if(!o.access_token)throw new n.MongoCryptAzureKMSRequestError("Malformed response body - missing field `access_token`.");if(!o.expires_in)throw new n.MongoCryptAzureKMSRequestError("Malformed response body - missing field `expires_in`.");const s=1e3*Number(o.expires_in);if(Number.isNaN(s))throw new n.MongoCryptAzureKMSRequestError("Malformed response body - unable to parse int from `expires_in` field.");return{accessToken:o.access_token,expiresOnTimestamp:Date.now()+s}}(e)}catch(e){if(e instanceof n.MongoCryptKMSRequestNetworkTimeoutError)throw new n.MongoCryptAzureKMSRequestError(`[Azure KMS] ${e.message}`);throw e}}t.AzureCredentialCache=s,t.tokenCache=new s,t.prepareRequest=i,t.fetchAzureKMSToken=u,t.loadAzureCredentials=async function(e){return{...e,azure:await t.tokenCache.getToken()}}},8157:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.loadGCPCredentials=void 0;const n=r(2822);t.loadGCPCredentials=async function(e){const t=(0,n.getGcpMetadata)();if("kModuleError"in t)return e;const{access_token:r}=await t.instance({property:"service-accounts/default/token"});return{...e,gcp:{accessToken:r}}}},1663:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.refreshKMSCredentials=t.isEmptyCredentials=void 0;const n=r(1658),o=r(2544),s=r(8157);function i(e,t){const r=t[e];return null!=r&&"object"==typeof r&&0===Object.keys(r).length}t.isEmptyCredentials=i,t.refreshKMSCredentials=async function(e){let t=e;return i("aws",e)&&(t=await(0,n.loadAWSCredentials)(t)),i("gcp",e)&&(t=await(0,s.loadGCPCredentials)(t)),i("azure",e)&&(t=await(0,o.loadAzureCredentials)(t)),t}},3370:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.get=void 0;const n=r(8611),o=r(3557),s=r(5871);t.get=function(e,t={}){return new Promise(((r,i)=>{let u;const a=n.get(e,t,(e=>{e.setEncoding("utf8");let t="";e.on("data",(e=>t+=e)),e.on("end",(()=>{(0,o.clearTimeout)(u),r({status:e.statusCode,body:t})}))})).on("error",(e=>{(0,o.clearTimeout)(u),i(e)})).end();u=(0,o.setTimeout)((()=>{a.destroy(new s.MongoCryptKMSRequestNetworkTimeoutError("request timed out after 10 seconds"))}),1e4)}))}},2213:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StateMachine=void 0;const n=r(1943),o=r(9278),s=r(2375),i=r(5638),u=r(2822),a=r(407),c=r(5871);let l=null;const h=new Map([[0,"MONGOCRYPT_CTX_ERROR"],[1,"MONGOCRYPT_CTX_NEED_MONGO_COLLINFO"],[2,"MONGOCRYPT_CTX_NEED_MONGO_MARKINGS"],[3,"MONGOCRYPT_CTX_NEED_MONGO_KEYS"],[7,"MONGOCRYPT_CTX_NEED_KMS_CREDENTIALS"],[4,"MONGOCRYPT_CTX_NEED_KMS"],[5,"MONGOCRYPT_CTX_READY"],[6,"MONGOCRYPT_CTX_DONE"]]),d=["tlsInsecure","tlsAllowInvalidCertificates","tlsAllowInvalidHostnames","tlsDisableOCSPEndpointCheck","tlsDisableCertificateRevocationCheck"];function p(e){process.env.MONGODB_CRYPT_DEBUG&&console.error(e)}t.StateMachine=class{constructor(e,t=(0,i.pluckBSONSerializeOptions)(e)){this.options=e,this.bsonOptions=t}async execute(e,t){const r=e._keyVaultNamespace,n=e._keyVaultClient,o=e._metaDataClient,s=e._mongocryptdClient,u=e._mongocryptdManager;let a=null;for(;6!==t.state&&0!==t.state;)switch(p(`[context#${t.id}] ${h.get(t.state)||t.state}`),t.state){case 1:{const e=(0,i.deserialize)(t.nextMongoOperation());if(!o)throw new c.MongoCryptError("unreachable state machine state: entered MONGOCRYPT_CTX_NEED_MONGO_COLLINFO but metadata client is undefined");const r=await this.fetchCollectionInfo(o,t.ns,e);r&&t.addMongoOperationResponse(r),t.finishMongoOperation();break}case 2:{const e=t.nextMongoOperation();if(!s)throw new c.MongoCryptError("unreachable state machine state: entered MONGOCRYPT_CTX_NEED_MONGO_MARKINGS but mongocryptdClient is undefined");const r=u?await u.withRespawn(this.markCommand.bind(this,s,t.ns,e)):await this.markCommand(s,t.ns,e);t.addMongoOperationResponse(r),t.finishMongoOperation();break}case 3:{const e=t.nextMongoOperation(),o=await this.fetchKeys(n,r,e);0===o.length&&(a={v:[]});for await(const e of o)t.addMongoOperationResponse((0,i.serialize)(e));t.finishMongoOperation();break}case 7:{const r=await e.askForKMSCredentials();t.provideKMSProviders((0,i.serialize)(r));break}case 4:{const e=Array.from(this.requests(t));await Promise.all(e),t.finishKMSRequests();break}case 5:{const e=t.finalize();if(0===t.state){const e=t.status.message||"Finalization error";throw new c.MongoCryptError(e)}a=(0,i.deserialize)(e,this.options);break}default:throw new c.MongoCryptError(`Unknown state: ${t.state}`)}if(0===t.state||null==a){const e=t.status.message;throw e||p("unidentifiable error in MongoCrypt - received an error status from `libmongocrypt` but received no error message."),new c.MongoCryptError(e??"unidentifiable error in MongoCrypt - received an error status from `libmongocrypt` but received no error message.")}return a}async kmsRequest(e){const t=e.endpoint.split(":"),r=null!=t[1]?Number.parseInt(t[1],10):443,n={host:t[0],servername:t[0],port:r},i=e.message,h=new a.BufferPool,d=new o.Socket;let p;function f(){return new c.MongoCryptError("KMS request timed out")}function m(e){return new c.MongoCryptError("KMS request failed",{cause:e})}function g(){return new c.MongoCryptError("KMS request closed")}const E=this.options.tlsOptions;if(E){const t=e.kmsProvider,r=E[t];if(r){const e=this.validateTlsOptions(t,r);if(e)throw e;try{await this.setTlsOptions(r,n)}catch(e){throw m(e)}}}const{promise:A,reject:y,resolve:C}=(0,a.promiseWithResolvers)();d.once("timeout",(()=>y(f()))).once("error",(e=>y(m(e)))).once("close",(()=>y(g()))).once("connect",(()=>C()));try{if(this.options.proxyOptions&&this.options.proxyOptions.proxyHost){d.connect({host:this.options.proxyOptions.proxyHost,port:this.options.proxyOptions.proxyPort||1080}),await A;try{l??=function(){if(null==l){const e=(0,u.getSocks)();if("kModuleError"in e)throw e.kModuleError;l=e}return l}(),n.socket=(await l.SocksClient.createConnection({existing_socket:d,command:"connect",destination:{host:n.host,port:n.port},proxy:{host:"iLoveJavaScript",port:0,type:5,userId:this.options.proxyOptions.proxyUsername,password:this.options.proxyOptions.proxyPassword}})).socket}catch(e){throw m(e)}}p=s.connect(n,(()=>{p.write(i)}));const{promise:t,reject:r,resolve:o}=(0,a.promiseWithResolvers)();p.once("timeout",(()=>r(f()))).once("error",(e=>r(m(e)))).once("close",(()=>r(g()))).on("data",(t=>{for(h.append(t);e.bytesNeeded>0&&h.length;){const t=Math.min(e.bytesNeeded,h.length);e.addResponse(h.read(t))}e.bytesNeeded<=0&&o()})),await t}finally{!function(){for(const e of[p,d])e&&(e.removeAllListeners(),e.destroy())}()}}*requests(e){for(let t=e.nextKMSRequest();null!=t;t=e.nextKMSRequest())yield this.kmsRequest(t)}validateTlsOptions(e,t){const r=Object.keys(t);for(const t of d)if(r.includes(t))return new c.MongoCryptError(`Insecure TLS options prohibited for ${e}: ${t}`)}async setTlsOptions(e,t){if(e.tlsCertificateKeyFile){const r=await n.readFile(e.tlsCertificateKeyFile);t.cert=t.key=r}e.tlsCAFile&&(t.ca=await n.readFile(e.tlsCAFile)),e.tlsCertificateKeyFilePassword&&(t.passphrase=e.tlsCertificateKeyFilePassword)}async fetchCollectionInfo(e,t,r){const{db:n}=a.MongoDBCollectionNamespace.fromString(t),o=await e.db(n).listCollections(r,{promoteLongs:!1,promoteValues:!1}).toArray();return o.length>0?(0,i.serialize)(o[0]):null}async markCommand(e,t,r){const n={promoteLongs:!1,promoteValues:!1},{db:o}=a.MongoDBCollectionNamespace.fromString(t),s=(0,i.deserialize)(r,n),u=await e.db(o).command(s,n);return(0,i.serialize)(u,this.bsonOptions)}fetchKeys(e,t,r){const{db:n,collection:o}=a.MongoDBCollectionNamespace.fromString(t);return e.db(n).collection(o,{readConcern:{level:"majority"}}).find((0,i.deserialize)(r)).toArray()}}},6315:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AuthProvider=t.AuthContext=void 0;const n=r(6372);t.AuthContext=class{constructor(e,t,r){this.reauthenticating=!1,this.connection=e,this.credentials=t,this.options=r}},t.AuthProvider=class{async prepare(e,t){return e}async reauth(e){if(e.reauthenticating)throw new n.MongoRuntimeError("Reauthentication already in progress.");try{e.reauthenticating=!0,await this.auth(e)}finally{e.reauthenticating=!1}}}},8373:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LegacyAWSTemporaryCredentialProvider=t.AWSSDKCredentialProvider=t.AWSTemporaryCredentialProvider=void 0;const n=r(2822),o=r(6372),s=r(407),i="http://169.254.169.254",u="/latest/meta-data/iam/security-credentials";class a{static get awsSDK(){return a._awsSDK??=(0,n.getAwsCredentialProvider)(),a._awsSDK}static get isAWSSDKInstalled(){return!("kModuleError"in a.awsSDK)}}t.AWSTemporaryCredentialProvider=a,t.AWSSDKCredentialProvider=class extends a{get provider(){if("kModuleError"in a.awsSDK)throw a.awsSDK.kModuleError;if(this._provider)return this._provider;let{AWS_STS_REGIONAL_ENDPOINTS:e="",AWS_REGION:t=""}=process.env;e=e.toLowerCase(),t=t.toLowerCase();const r=0!==t.length&&0!==e.length,n=new Set(["ap-northeast-1","ap-south-1","ap-southeast-1","ap-southeast-2","aws-global","ca-central-1","eu-central-1","eu-north-1","eu-west-1","eu-west-2","eu-west-3","sa-east-1","us-east-1","us-east-2","us-west-1","us-west-2"]),o="regional"===e||"legacy"===e&&!n.has(t);return this._provider=r&&o?a.awsSDK.fromNodeProviderChain({clientConfig:{region:t}}):a.awsSDK.fromNodeProviderChain(),this._provider}async getCredentials(){try{const e=await this.provider();return{AccessKeyId:e.accessKeyId,SecretAccessKey:e.secretAccessKey,Token:e.sessionToken,Expiration:e.expiration}}catch(e){throw new o.MongoAWSError(e.message,{cause:e})}}},t.LegacyAWSTemporaryCredentialProvider=class extends a{async getCredentials(){if(process.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI)return await(0,s.request)(`http://169.254.170.2${process.env.AWS_CONTAINER_CREDENTIALS_RELATIVE_URI}`);const e=await(0,s.request)(`${i}/latest/api/token`,{method:"PUT",json:!1,headers:{"X-aws-ec2-metadata-token-ttl-seconds":30}}),t=await(0,s.request)(`${i}/${u}`,{json:!1,headers:{"X-aws-ec2-metadata-token":e}});return await(0,s.request)(`${i}/${u}/${t}`,{headers:{"X-aws-ec2-metadata-token":e}})}}},1876:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.resolveCname=t.performGSSAPICanonicalizeHostName=t.GSSAPI=t.GSSAPICanonicalizationValue=void 0;const n=r(2250),o=r(2822),s=r(6372),i=r(407),u=r(6315);async function a(e,t){return await e.command((0,i.ns)("$external.$cmd"),t)}let c;t.GSSAPICanonicalizationValue=Object.freeze({on:!0,off:!1,none:"none",forward:"forward",forwardAndReverse:"forwardAndReverse"});class l extends u.AuthProvider{async auth(e){const{connection:t,credentials:r}=e;if(null==r)throw new s.MongoMissingCredentialsError("Credentials required for GSSAPI authentication");const{username:n}=r,i=await async function(e){const{hostAddress:t}=e.options,{credentials:r}=e;if(!t||"string"!=typeof t.host||!r)throw new s.MongoInvalidArgumentError("Connection must have host and port and credentials defined.");if(c||(c=(0,o.getKerberos)()),"kModuleError"in c)throw c.kModuleError;const{initializeClient:n}=c,{username:i,password:u}=r,a=r.mechanismProperties,l=a.SERVICE_NAME??"mongodb",h=await d(t.host,a),p={};null!=u&&Object.assign(p,{user:i,password:u});const f=a.SERVICE_HOST??h;let m=`${l}${"win32"===process.platform?"/":"@"}${f}`;return"SERVICE_REALM"in a&&(m=`${m}@${a.SERVICE_REALM}`),await n(m,p)}(e),u=await i.step(""),l=await a(t,function(e){return{saslStart:1,mechanism:"GSSAPI",payload:e,autoAuthorize:1}}(u)),p=await h(i,10,l.payload),f=await a(t,function(e,t){return{saslContinue:1,conversationId:t,payload:e}}(p,l.conversationId)),m=await async function(e,t,r){const n=await e.unwrap(r);return await e.wrap(n||"",{user:t})}(i,n,f.payload);await a(t,{saslContinue:1,conversationId:f.conversationId,payload:m})}}async function h(e,t,r){try{return await e.step(r)||""}catch(n){if(0===t)throw n;return await h(e,t-1,r)}}async function d(e,r){const o=r.CANONICALIZE_HOST_NAME;if(!o||o===t.GSSAPICanonicalizationValue.none)return e;if(o!==t.GSSAPICanonicalizationValue.on&&o!==t.GSSAPICanonicalizationValue.forwardAndReverse)return await p(e);{const{address:t}=await n.promises.lookup(e);try{const r=await n.promises.resolvePtr(t);return r.length>0?r[0]:e}catch(t){return await p(e)}}}async function p(e){try{const t=await n.promises.resolveCname(e);return t.length>0?t[0]:e}catch{return e}}t.GSSAPI=l,t.performGSSAPICanonicalizeHostName=d,t.resolveCname=p},3416:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoCredentials=t.DEFAULT_ALLOWED_HOSTS=void 0;const n=r(6372),o=r(1876),s=r(3387);function i(e){if(e){if(Array.isArray(e.saslSupportedMechs))return e.saslSupportedMechs.includes(s.AuthMechanism.MONGODB_SCRAM_SHA256)?s.AuthMechanism.MONGODB_SCRAM_SHA256:s.AuthMechanism.MONGODB_SCRAM_SHA1;if(e.maxWireVersion>=3)return s.AuthMechanism.MONGODB_SCRAM_SHA1}return s.AuthMechanism.MONGODB_CR}const u=["aws","azure"],a="Auth mechanism property ALLOWED_HOSTS must be an array of strings.";t.DEFAULT_ALLOWED_HOSTS=["*.mongodb.net","*.mongodb-dev.net","*.mongodbgov.net","localhost","127.0.0.1","::1"];class c{constructor(e){this.username=e.username??"",this.password=e.password,this.source=e.source,!this.source&&e.db&&(this.source=e.db),this.mechanism=e.mechanism||s.AuthMechanism.MONGODB_DEFAULT,this.mechanismProperties=e.mechanismProperties||{},this.mechanism.match(/MONGODB-AWS/i)&&(!this.username&&process.env.AWS_ACCESS_KEY_ID&&(this.username=process.env.AWS_ACCESS_KEY_ID),!this.password&&process.env.AWS_SECRET_ACCESS_KEY&&(this.password=process.env.AWS_SECRET_ACCESS_KEY),null==this.mechanismProperties.AWS_SESSION_TOKEN&&null!=process.env.AWS_SESSION_TOKEN&&(this.mechanismProperties={...this.mechanismProperties,AWS_SESSION_TOKEN:process.env.AWS_SESSION_TOKEN})),this.mechanism!==s.AuthMechanism.MONGODB_OIDC||this.mechanismProperties.ALLOWED_HOSTS||(this.mechanismProperties={...this.mechanismProperties,ALLOWED_HOSTS:t.DEFAULT_ALLOWED_HOSTS}),Object.freeze(this.mechanismProperties),Object.freeze(this)}equals(e){return this.mechanism===e.mechanism&&this.username===e.username&&this.password===e.password&&this.source===e.source}resolveAuthMechanism(e){return this.mechanism.match(/DEFAULT/i)?new c({username:this.username,password:this.password,source:this.source,mechanism:i(e),mechanismProperties:this.mechanismProperties}):this}validate(){if((this.mechanism===s.AuthMechanism.MONGODB_GSSAPI||this.mechanism===s.AuthMechanism.MONGODB_CR||this.mechanism===s.AuthMechanism.MONGODB_PLAIN||this.mechanism===s.AuthMechanism.MONGODB_SCRAM_SHA1||this.mechanism===s.AuthMechanism.MONGODB_SCRAM_SHA256)&&!this.username)throw new n.MongoMissingCredentialsError(`Username required for mechanism '${this.mechanism}'`);if(this.mechanism===s.AuthMechanism.MONGODB_OIDC){if(this.username&&this.mechanismProperties.PROVIDER_NAME)throw new n.MongoInvalidArgumentError(`username and PROVIDER_NAME may not be used together for mechanism '${this.mechanism}'.`);if("azure"===this.mechanismProperties.PROVIDER_NAME&&!this.mechanismProperties.TOKEN_AUDIENCE)throw new n.MongoAzureError("TOKEN_AUDIENCE must be set in the auth mechanism properties when PROVIDER_NAME is azure.");if(this.mechanismProperties.PROVIDER_NAME&&!u.includes(this.mechanismProperties.PROVIDER_NAME))throw new n.MongoInvalidArgumentError(`Currently only a PROVIDER_NAME in ${u.join(",")} is supported for mechanism '${this.mechanism}'.`);if(this.mechanismProperties.REFRESH_TOKEN_CALLBACK&&!this.mechanismProperties.REQUEST_TOKEN_CALLBACK)throw new n.MongoInvalidArgumentError(`A REQUEST_TOKEN_CALLBACK must be provided when using a REFRESH_TOKEN_CALLBACK for mechanism '${this.mechanism}'`);if(!this.mechanismProperties.PROVIDER_NAME&&!this.mechanismProperties.REQUEST_TOKEN_CALLBACK)throw new n.MongoInvalidArgumentError(`Either a PROVIDER_NAME or a REQUEST_TOKEN_CALLBACK must be specified for mechanism '${this.mechanism}'.`);if(this.mechanismProperties.ALLOWED_HOSTS){const e=this.mechanismProperties.ALLOWED_HOSTS;if(!Array.isArray(e))throw new n.MongoInvalidArgumentError(a);for(const t of e)if("string"!=typeof t)throw new n.MongoInvalidArgumentError(a)}}if(s.AUTH_MECHS_AUTH_SRC_EXTERNAL.has(this.mechanism)&&null!=this.source&&"$external"!==this.source)throw new n.MongoAPIError(`Invalid source '${this.source}' for mechanism '${this.mechanism}' specified.`);if(this.mechanism===s.AuthMechanism.MONGODB_PLAIN&&null==this.source)throw new n.MongoAPIError("PLAIN Authentication Mechanism needs an auth source");if(this.mechanism===s.AuthMechanism.MONGODB_X509&&null!=this.password){if(""===this.password)return void Reflect.set(this,"password",void 0);throw new n.MongoAPIError("Password not allowed for mechanism MONGODB-X509")}const e=this.mechanismProperties.CANONICALIZE_HOST_NAME??!1;if(!Object.values(o.GSSAPICanonicalizationValue).includes(e))throw new n.MongoAPIError(`Invalid CANONICALIZE_HOST_NAME value: ${e}`)}static merge(e,t){return new c({username:t.username??e?.username??"",password:t.password??e?.password??"",mechanism:t.mechanism??e?.mechanism??s.AuthMechanism.MONGODB_DEFAULT,mechanismProperties:t.mechanismProperties??e?.mechanismProperties??{},source:t.source??t.db??e?.source??"admin"})}}t.MongoCredentials=c},364:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoCR=void 0;const n=r(6982),o=r(6372),s=r(407),i=r(6315);class u extends i.AuthProvider{async auth(e){const{connection:t,credentials:r}=e;if(!r)throw new o.MongoMissingCredentialsError("AuthContext must provide credentials.");const{username:i,password:u,source:a}=r,{nonce:c}=await t.command((0,s.ns)(`${a}.$cmd`),{getnonce:1},void 0),l=n.createHash("md5").update(`${i}:mongo:${u}`,"utf8").digest("hex"),h={authenticate:1,user:i,nonce:c,key:n.createHash("md5").update(`${c}${i}${l}`,"utf8").digest("hex")};await t.command((0,s.ns)(`${a}.$cmd`),h,void 0)}}t.MongoCR=u},6093:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoDBAWS=void 0;const n=r(5638),o=r(2822),s=r(6372),i=r(407),u=r(6315),a=r(8373),c=r(3416),l=r(3387),h={useBigInt64:!1,promoteLongs:!0,promoteValues:!0,promoteBuffers:!1,bsonRegExp:!1};class d extends u.AuthProvider{constructor(){super(),this.credentialFetcher=a.AWSTemporaryCredentialProvider.isAWSSDKInstalled?new a.AWSSDKCredentialProvider:new a.LegacyAWSTemporaryCredentialProvider}async auth(e){const{connection:t}=e;if(!e.credentials)throw new s.MongoMissingCredentialsError("AuthContext must provide credentials.");if("kModuleError"in o.aws4)throw o.aws4.kModuleError;const{sign:r}=o.aws4;if((0,i.maxWireVersion)(t)<9)throw new s.MongoCompatibilityError("MONGODB-AWS authentication requires MongoDB version 4.4 or later");e.credentials.username||(e.credentials=await async function(e,t){return function(t){if(!t.AccessKeyId||!t.SecretAccessKey)throw new s.MongoMissingCredentialsError("Could not obtain temporary MONGODB-AWS credentials");return new c.MongoCredentials({username:t.AccessKeyId,password:t.SecretAccessKey,source:e.source,mechanism:l.AuthMechanism.MONGODB_AWS,mechanismProperties:{AWS_SESSION_TOKEN:t.Token}})}(await t.getCredentials())}(e.credentials,this.credentialFetcher));const{credentials:u}=e,a=u.username,d=u.password,f=u.mechanismProperties.AWS_SESSION_TOKEN,m=a&&d&&f?{accessKeyId:a,secretAccessKey:d,sessionToken:f}:a&&d?{accessKeyId:a,secretAccessKey:d}:void 0,g=u.source,E=await(0,i.randomBytes)(32),A={saslStart:1,mechanism:"MONGODB-AWS",payload:n.serialize({r:E,p:110},h)},y=await t.command((0,i.ns)(`${g}.$cmd`),A,void 0),C=n.deserialize(y.payload.buffer,h),S=C.h,w=C.s.buffer;if(64!==w.length)throw new s.MongoRuntimeError(`Invalid server nonce length ${w.length}, expected 64`);if(!i.ByteUtils.equals(w.subarray(0,E.byteLength),E))throw new s.MongoRuntimeError("Server nonce does not begin with client nonce");if(S.length<1||S.length>255||-1!==S.indexOf(".."))throw new s.MongoRuntimeError(`Server returned an invalid host: "${S}"`);const b=r({method:"POST",host:S,region:p(C.h),service:"sts",headers:{"Content-Type":"application/x-www-form-urlencoded","Content-Length":43,"X-MongoDB-Server-Nonce":i.ByteUtils.toBase64(w),"X-MongoDB-GS2-CB-Flag":"n"},path:"/",body:"Action=GetCallerIdentity&Version=2011-06-15"},m),v={a:b.headers.Authorization,d:b.headers["X-Amz-Date"]};f&&(v.t=f);const O={saslContinue:1,conversationId:1,payload:n.serialize(v,h)};await t.command((0,i.ns)(`${g}.$cmd`),O,void 0)}}function p(e){const t=e.split(".");return 1===t.length||"amazonaws"===t[1]?"us-east-1":t[1]}t.MongoDBAWS=d},7723:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoDBOIDC=t.OIDC_WORKFLOWS=void 0;const n=r(6372),o=r(6315),s=r(881),i=r(6503),u=r(6921);t.OIDC_WORKFLOWS=new Map,t.OIDC_WORKFLOWS.set("callback",new u.CallbackWorkflow),t.OIDC_WORKFLOWS.set("aws",new s.AwsServiceWorkflow),t.OIDC_WORKFLOWS.set("azure",new i.AzureServiceWorkflow);class a extends o.AuthProvider{constructor(){super()}async auth(e){const{connection:t,reauthenticating:r,response:n}=e,o=c(e),s=l(o);await s.execute(t,o,r,n)}async prepare(e,t){const r=c(t),n=l(r);return{...e,...await n.speculativeAuth(r)}}}function c(e){const{credentials:t}=e;if(!t)throw new n.MongoMissingCredentialsError("AuthContext must provide credentials.");return t}function l(e){const r=e.mechanismProperties.PROVIDER_NAME,o=t.OIDC_WORKFLOWS.get(r||"callback");if(!o)throw new n.MongoInvalidArgumentError(`Could not load workflow for provider ${e.mechanismProperties.PROVIDER_NAME}`);return o}t.MongoDBOIDC=a},881:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AwsServiceWorkflow=void 0;const n=r(9896),o=r(6372),s=r(2463);class i extends s.ServiceWorkflow{constructor(){super()}async getToken(){const e=process.env.AWS_WEB_IDENTITY_TOKEN_FILE;if(!e)throw new o.MongoAWSError("AWS_WEB_IDENTITY_TOKEN_FILE must be set in the environment.");return await n.promises.readFile(e,"utf8")}}t.AwsServiceWorkflow=i},6503:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AzureServiceWorkflow=void 0;const n=r(6372),o=r(407),s=r(8364),i=r(2463),u=Object.freeze({Metadata:"true",Accept:"application/json"});class a extends i.ServiceWorkflow{constructor(){super(...arguments),this.cache=new s.AzureTokenCache}async getToken(e){const t=e?.mechanismProperties.TOKEN_AUDIENCE;if(!t)throw new n.MongoAzureError("TOKEN_AUDIENCE must be set in the auth mechanism properties when PROVIDER_NAME is azure.");let r;const s=this.cache.getEntry(t);if(s?.isValid())r=s.token;else{this.cache.deleteEntry(t);const e=await async function(e){const t=`http://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=${e}`;return await(0,o.request)(t,{json:!0,headers:u})}(t);if(!function(e){return null!=e&&"object"==typeof e&&"access_token"in e&&"expires_in"in e}(e))throw new n.MongoAzureError("Azure endpoint did not return a value with only access_token and expires_in properties");this.cache.addEntry(t,e),r=e.access_token}return r}}t.AzureServiceWorkflow=a},8364:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AzureTokenCache=t.AzureTokenEntry=void 0;const n=r(1082);class o extends n.ExpiringCacheEntry{constructor(e,t){super(t),this.token=e}}t.AzureTokenEntry=o;class s extends n.Cache{addEntry(e,t){const r=new o(t.access_token,t.expires_in);return this.entries.set(e,r),r}cacheKey(e){return e}deleteEntry(e){this.entries.delete(e)}getEntry(e){return this.entries.get(e)}}t.AzureTokenCache=s},1082:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Cache=t.ExpiringCacheEntry=void 0,t.ExpiringCacheEntry=class{constructor(e){this.expiration=this.expirationTime(e)}isValid(){return this.expiration-Date.now()>3e5}expirationTime(e){return Date.now()+1e3*e}},t.Cache=class{constructor(){this.entries=new Map}clear(){this.entries.clear()}hashedCacheKey(e,t,r){return JSON.stringify([e,t,r])}}},1406:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CallbackLockCache=void 0;const n=r(6372),o=r(1082);let s=0;const i=async()=>({accessToken:"test"}),u=new WeakMap;u.set(i,s);class a extends o.Cache{getEntry(e,t){const r=t.mechanismProperties.REQUEST_TOKEN_CALLBACK,o=t.mechanismProperties.REFRESH_TOKEN_CALLBACK;if(!r)throw new n.MongoInvalidArgumentError("Auth mechanism property REQUEST_TOKEN_CALLBACK is required.");const a=function(e,t){let r=u.get(e),n=u.get(t??i);return null==r&&(s++,r=s,u.set(e,s)),null==n&&t&&(s++,n=s,u.set(t,s)),`${r}-${n}`}(r,o),c=this.cacheKey(e.address,t.username,a);return this.entries.get(c)||this.addEntry(c,a,r,o)}addEntry(e,t,r,n){const o={requestCallback:c(r),refreshCallback:n?c(n):void 0,callbackHash:t};return this.entries.set(e,o),o}cacheKey(e,t,r){return this.hashedCacheKey(e,t,r)}}function c(e){let t=Promise.resolve();return async(r,n)=>(await t,t=t.then((()=>e(r,n))),await t)}t.CallbackLockCache=a},6921:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CallbackWorkflow=void 0;const n=r(4752),o=r(6372),s=r(407),i=r(3387),u=r(1406),a=r(2459),c=["accessToken","expiresInSeconds","refreshToken"];function l(e){const t={};return e.username&&(t.n=e.username),{saslStart:1,autoAuthorize:1,mechanism:i.AuthMechanism.MONGODB_OIDC,payload:new n.Binary(n.BSON.serialize(t))}}t.CallbackWorkflow=class{constructor(){this.cache=new a.TokenEntryCache,this.callbackCache=new u.CallbackLockCache}async speculativeAuth(e){const t=l(e);return t.db=e.source,{speculativeAuthenticate:t}}async execute(e,t,r,s){const{requestCallback:i,refreshCallback:u,callbackHash:a}=this.callbackCache.getEntry(e,t),c=this.cache.getEntry(e.address,t.username,a);let l;if(c)if(c.isValid()&&!r)l=await this.finishAuthentication(e,t,c.tokenResult,s?.speculativeAuthenticate?.conversationId);else{const n=await this.fetchAccessToken(e,t,c.serverInfo,r,a,i,u);try{l=await this.finishAuthentication(e,t,n,r?void 0:s?.speculativeAuthenticate?.conversationId)}catch(n){if(!(r&&n instanceof o.MongoError&&n.code===o.MONGODB_ERROR_CODES.Reauthenticate))throw n;this.cache.deleteEntry(e.address,t.username,a),l=await this.execute(e,t,r)}}else{const o=await this.startAuthentication(e,t,r,s),c=o.conversationId,h=n.BSON.deserialize(o.payload.buffer),d=await this.fetchAccessToken(e,t,h,r,a,i,u);l=await this.finishAuthentication(e,t,d,c)}return l}async startAuthentication(e,t,r,n){let o;return o=!r&&n?.speculativeAuthenticate?n.speculativeAuthenticate:await e.command((0,s.ns)(t.source),l(t),void 0),o}async finishAuthentication(e,t,r,o){const u=await e.command((0,s.ns)(t.source),function(e,t){return null!=t&&"number"==typeof t?{saslContinue:1,conversationId:t,payload:new n.Binary(n.BSON.serialize({jwt:e}))}:{saslStart:1,mechanism:i.AuthMechanism.MONGODB_OIDC,payload:new n.Binary(n.BSON.serialize({jwt:e}))}}(r.accessToken,o),void 0);return u}async fetchAccessToken(e,t,r,n,s,i,u){const a=this.cache.getEntry(e.address,t.username,s);let l;const h={timeoutSeconds:300,version:0};if(a){if(a.isValid()&&!n)return a.tokenResult;u?(h.refreshToken=a.tokenResult.refreshToken,l=await u(r,h)):l=await i(r,h)}else l=await i(r,h);if(null==(d=l)||"object"!=typeof d||!("accessToken"in d)||!Object.getOwnPropertyNames(d).every((e=>c.includes(e))))throw this.cache.deleteEntry(e.address,t.username,s),new o.MongoMissingCredentialsError("User provided OIDC callbacks must return a valid object with an accessToken.");var d;return this.cache.deleteExpiredEntries(),this.cache.addEntry(e.address,t.username||"",s,l,r),l}}},2463:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.commandDocument=t.ServiceWorkflow=void 0;const n=r(4752),o=r(407),s=r(3387);function i(e){return{saslStart:1,mechanism:s.AuthMechanism.MONGODB_OIDC,payload:n.BSON.serialize({jwt:e})}}t.ServiceWorkflow=class{async execute(e,t){const r=i(await this.getToken(t));return await e.command((0,o.ns)(t.source),r,void 0)}async speculativeAuth(e){const t=i(await this.getToken(e));return t.db=e.source,{speculativeAuthenticate:t}}},t.commandDocument=i},2459:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TokenEntryCache=t.TokenEntry=void 0;const n=r(1082);class o extends n.ExpiringCacheEntry{constructor(e,t,r){super(r),this.tokenResult=e,this.serverInfo=t}}t.TokenEntry=o;class s extends n.Cache{addEntry(e,t,r,n,s){const i=new o(n,s,n.expiresInSeconds??0);return this.entries.set(this.cacheKey(e,t,r),i),i}deleteEntry(e,t,r){this.entries.delete(this.cacheKey(e,t,r))}getEntry(e,t,r){return this.entries.get(this.cacheKey(e,t,r))}deleteExpiredEntries(){for(const[e,t]of this.entries)t.isValid()||this.entries.delete(e)}cacheKey(e,t,r){return this.hashedCacheKey(e,t,r)}}t.TokenEntryCache=s},7985:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Plain=void 0;const n=r(5638),o=r(6372),s=r(407),i=r(6315);class u extends i.AuthProvider{async auth(e){const{connection:t,credentials:r}=e;if(!r)throw new o.MongoMissingCredentialsError("AuthContext must provide credentials.");const{username:i,password:u}=r,a={saslStart:1,mechanism:"PLAIN",payload:new n.Binary(Buffer.from(`\0${i}\0${u}`)),autoAuthorize:1};await t.command((0,s.ns)("$external.$cmd"),a,void 0)}}t.Plain=u},3387:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AUTH_MECHS_AUTH_SRC_EXTERNAL=t.AuthMechanism=void 0,t.AuthMechanism=Object.freeze({MONGODB_AWS:"MONGODB-AWS",MONGODB_CR:"MONGODB-CR",MONGODB_DEFAULT:"DEFAULT",MONGODB_GSSAPI:"GSSAPI",MONGODB_PLAIN:"PLAIN",MONGODB_SCRAM_SHA1:"SCRAM-SHA-1",MONGODB_SCRAM_SHA256:"SCRAM-SHA-256",MONGODB_X509:"MONGODB-X509",MONGODB_OIDC:"MONGODB-OIDC"}),t.AUTH_MECHS_AUTH_SRC_EXTERNAL=new Set([t.AuthMechanism.MONGODB_GSSAPI,t.AuthMechanism.MONGODB_AWS,t.AuthMechanism.MONGODB_OIDC,t.AuthMechanism.MONGODB_X509])},5039:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ScramSHA256=t.ScramSHA1=void 0;const n=r(1726),o=r(6982),s=r(5638),i=r(6372),u=r(407),a=r(6315),c=r(3387);class l extends a.AuthProvider{constructor(e){super(),this.cryptoMethod=e||"sha1"}async prepare(e,t){const r=this.cryptoMethod,n=t.credentials;if(!n)throw new i.MongoMissingCredentialsError("AuthContext must provide credentials.");const o=await(0,u.randomBytes)(24);return t.nonce=o,{...e,speculativeAuthenticate:{...p(r,n,o),db:n.source}}}async auth(e){const{reauthenticating:t,response:r}=e;return r?.speculativeAuthenticate&&!t?await f(this.cryptoMethod,r.speculativeAuthenticate,e):await async function(e,t){const{connection:r,credentials:n}=t;if(!n)throw new i.MongoMissingCredentialsError("AuthContext must provide credentials.");if(!t.nonce)throw new i.MongoInvalidArgumentError("AuthContext must contain a valid nonce property");const o=t.nonce,s=n.source,a=p(e,n,o),c=await r.command((0,u.ns)(`${s}.$cmd`),a,void 0);await f(e,c,t)}(this.cryptoMethod,e)}}function h(e){return e.replace("=","=3D").replace(",","=2C")}function d(e,t){return Buffer.concat([Buffer.from("n=","utf8"),Buffer.from(e,"utf8"),Buffer.from(",r=","utf8"),Buffer.from(t.toString("base64"),"utf8")])}function p(e,t,r){const n=h(t.username);return{saslStart:1,mechanism:"sha1"===e?c.AuthMechanism.MONGODB_SCRAM_SHA1:c.AuthMechanism.MONGODB_SCRAM_SHA256,payload:new s.Binary(Buffer.concat([Buffer.from("n,,","utf8"),d(n,r)])),autoAuthorize:1,options:{skipEmptyExchange:!0}}}async function f(e,t,r){const a=r.connection,c=r.credentials;if(!c)throw new i.MongoMissingCredentialsError("AuthContext must provide credentials.");if(!r.nonce)throw new i.MongoInvalidArgumentError("Unable to continue SCRAM without valid nonce");const l=r.nonce,p=c.source,f=h(c.username),C=c.password,S="sha256"===e?(0,n.saslprep)(C):function(e,t){if("string"!=typeof e)throw new i.MongoInvalidArgumentError("Username must be a string");if("string"!=typeof t)throw new i.MongoInvalidArgumentError("Password must be a string");if(0===t.length)throw new i.MongoInvalidArgumentError("Password cannot be empty");let r;try{r=o.createHash("md5")}catch(e){if(o.getFips())throw new Error("Auth mechanism SCRAM-SHA-1 is not supported in FIPS mode");throw e}return r.update(`${e}:mongo:${t}`,"utf8"),r.digest("hex")}(f,C),w=Buffer.isBuffer(t.payload)?new s.Binary(t.payload):t.payload,b=m(w),v=parseInt(b.i,10);if(v&&v<4096)throw new i.MongoRuntimeError(`Server returned an invalid iteration count ${v}`);const O=b.s,_=b.r;if(_.startsWith("nonce"))throw new i.MongoRuntimeError(`Server returned an invalid nonce: ${_}`);const B=`c=biws,r=${_}`,D=function(e,t,r,n){const s=[e,t.toString("base64"),r].join("_");if(null!=E[s])return E[s];const i=o.pbkdf2Sync(e,t,r,y[n],n);return A>=200&&(E={},A=0),E[s]=i,A+=1,i}(S,Buffer.from(O,"base64"),v,e),T=g(e,D,"Client Key"),I=g(e,D,"Server Key"),F=(R=e,N=T,o.createHash(R).update(N).digest());var R,N;const M=[d(f,l),w.toString("utf8"),B].join(","),x=[B,`p=${function(e,t){Buffer.isBuffer(e)||(e=Buffer.from(e)),Buffer.isBuffer(t)||(t=Buffer.from(t));const r=Math.max(e.length,t.length),n=[];for(let o=0;o<r;o+=1)n.push(e[o]^t[o]);return Buffer.from(n).toString("base64")}(T,g(e,F,M))}`].join(","),P=g(e,I,M),k={saslContinue:1,conversationId:t.conversationId,payload:new s.Binary(Buffer.from(x))},L=await a.command((0,u.ns)(`${p}.$cmd`),k,void 0),U=m(L.payload);if(!function(e,t){if(e.length!==t.length)return!1;if("function"==typeof o.timingSafeEqual)return o.timingSafeEqual(e,t);let r=0;for(let n=0;n<e.length;n++)r|=e[n]^t[n];return 0===r}(Buffer.from(U.v,"base64"),P))throw new i.MongoRuntimeError("Server returned an invalid signature");if(!1!==L.done)return;const j={saslContinue:1,conversationId:L.conversationId,payload:Buffer.alloc(0)};await a.command((0,u.ns)(`${p}.$cmd`),j,void 0)}function m(e){const t={},r=e.toString("utf8").split(",");for(let e=0;e<r.length;e++){const n=(r[e].match(/^([^=]*)=(.*)$/)??[]).slice(1);t[n[0]]=n[1]}return t}function g(e,t,r){return o.createHmac(e,t).update(r).digest()}let E={},A=0;const y={sha256:32,sha1:20};t.ScramSHA1=class extends l{constructor(){super("sha1")}},t.ScramSHA256=class extends l{constructor(){super("sha256")}}},2985:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.X509=void 0;const n=r(6372),o=r(407),s=r(6315);class i extends s.AuthProvider{async prepare(e,t){const{credentials:r}=t;if(!r)throw new n.MongoMissingCredentialsError("AuthContext must provide credentials.");return{...e,speculativeAuthenticate:u(r)}}async auth(e){const t=e.connection,r=e.credentials;if(!r)throw new n.MongoMissingCredentialsError("AuthContext must provide credentials.");const s=e.response;s?.speculativeAuthenticate||await t.command((0,o.ns)("$external.$cmd"),u(r),void 0)}}function u(e){const t={authenticate:1,mechanism:"MONGODB-X509"};return e.username&&(t.user=e.username),t}t.X509=i},3574:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SENSITIVE_COMMANDS=t.CommandFailedEvent=t.CommandSucceededEvent=t.CommandStartedEvent=void 0;const n=r(3543),o=r(407),s=r(3646);t.CommandStartedEvent=class{constructor(e,r,o){this.name=n.COMMAND_STARTED;const s=f(r),i=u(s),{address:a,connectionId:c,serviceId:h}=m(e);t.SENSITIVE_COMMANDS.has(i)&&(this.commandObj={},this.commandObj[i]=!0),this.address=a,this.connectionId=c,this.serviceId=h,this.requestId=r.requestId,this.databaseName=r.databaseName,this.commandName=i,this.command=l(i,s,s),this.serverConnectionId=o}get hasServiceId(){return!!this.serviceId}},t.CommandSucceededEvent=class{constructor(e,t,r,i,c){this.name=n.COMMAND_SUCCEEDED;const h=f(t),d=u(h),{address:p,connectionId:g,serviceId:E}=m(e);this.address=p,this.connectionId=g,this.serviceId=E,this.requestId=t.requestId,this.commandName=d,this.duration=(0,o.calculateDurationInMs)(i),this.reply=l(d,h,function(e,t){return t?e instanceof s.OpMsgRequest?(0,o.deepCopy)(t.result?t.result:t):e.query&&null!=e.query.$query?{ok:1,cursor:{id:(0,o.deepCopy)(t.cursorId),ns:a(e),firstBatch:(0,o.deepCopy)(t.documents)}}:(0,o.deepCopy)(t.result?t.result:t):t}(t,r)),this.serverConnectionId=c}get hasServiceId(){return!!this.serviceId}},t.CommandFailedEvent=class{constructor(e,t,r,s,i){this.name=n.COMMAND_FAILED;const a=f(t),c=u(a),{address:h,connectionId:d,serviceId:p}=m(e);this.address=h,this.connectionId=d,this.serviceId=p,this.requestId=t.requestId,this.commandName=c,this.duration=(0,o.calculateDurationInMs)(s),this.failure=l(c,a,r),this.serverConnectionId=i}get hasServiceId(){return!!this.serviceId}},t.SENSITIVE_COMMANDS=new Set(["authenticate","saslStart","saslContinue","getnonce","createUser","updateUser","copydbgetnonce","copydbsaslstart","copydb"]);const i=new Set(["hello",n.LEGACY_HELLO_COMMAND,n.LEGACY_HELLO_COMMAND_CAMEL_CASE]),u=e=>Object.keys(e)[0],a=e=>e.ns,c=e=>e.ns.split(".")[1],l=(e,r,n)=>t.SENSITIVE_COMMANDS.has(e)||i.has(e)&&r.speculativeAuthenticate?{}:n,h={$query:"filter",$orderby:"sort",$hint:"hint",$comment:"comment",$maxScan:"maxScan",$max:"max",$min:"min",$returnKey:"returnKey",$showDiskLoc:"showRecordId",$maxTimeMS:"maxTimeMS",$snapshot:"snapshot"},d={numberToSkip:"skip",numberToReturn:"batchSize",returnFieldSelector:"projection"},p=["tailable","oplogReplay","noCursorTimeout","awaitData","partial","exhaust"];function f(e){if(e instanceof s.OpMsgRequest)return(0,o.deepCopy)(e.command);if(e.query?.$query){let t;return"admin.$cmd"===e.ns?t=Object.assign({},e.query.$query):(t={find:c(e)},Object.keys(h).forEach((r=>{null!=e.query[r]&&(t[h[r]]=(0,o.deepCopy)(e.query[r]))}))),Object.keys(d).forEach((r=>{const n=r;null!=e[n]&&(t[d[n]]=(0,o.deepCopy)(e[n]))})),p.forEach((r=>{e[r]&&(t[r]=e[r])})),null!=e.pre32Limit&&(t.limit=e.pre32Limit),e.query.$explain?{explain:t}:t}const t={},r={};if(e.query){for(const r in e.query)t[r]=(0,o.deepCopy)(e.query[r]);r.query=t}for(const t in e)"query"!==t&&(r[t]=(0,o.deepCopy)(e[t]));return e.query?t:r}function m(e){let t;return"id"in e&&(t=e.id),{address:e.address,serviceId:e.serviceId,connectionId:t}}},3646:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OpCompressedRequest=t.OpMsgResponse=t.OpMsgRequest=t.OpReply=t.OpQueryRequest=void 0;const n=r(5638),o=r(6372),s=r(6377),i=r(9826);let u=0;class a{constructor(e,t,r){this.databaseName=e,this.query=t;const n=`${e}.$cmd`;if("string"!=typeof e)throw new o.MongoRuntimeError("Database name must be a string for a query");if(null==t)throw new o.MongoRuntimeError("A query document must be specified for query");if(-1!==n.indexOf("\0"))throw new o.MongoRuntimeError("Namespace cannot contain a null character");this.ns=n,this.numberToSkip=r.numberToSkip||0,this.numberToReturn=r.numberToReturn||0,this.returnFieldSelector=r.returnFieldSelector||void 0,this.requestId=r.requestId??a.getRequestId(),this.pre32Limit=r.pre32Limit,this.serializeFunctions="boolean"==typeof r.serializeFunctions&&r.serializeFunctions,this.ignoreUndefined="boolean"==typeof r.ignoreUndefined&&r.ignoreUndefined,this.maxBsonSize=r.maxBsonSize||16777216,this.checkKeys="boolean"==typeof r.checkKeys&&r.checkKeys,this.batchSize=this.numberToReturn,this.tailable=!1,this.secondaryOk="boolean"==typeof r.secondaryOk&&r.secondaryOk,this.oplogReplay=!1,this.noCursorTimeout=!1,this.awaitData=!1,this.exhaust=!1,this.partial=!1}incRequestId(){this.requestId=u++}nextRequestId(){return u+1}static getRequestId(){return++u}toBin(){const e=[];let t=null,r=0;this.tailable&&(r|=2),this.secondaryOk&&(r|=4),this.oplogReplay&&(r|=8),this.noCursorTimeout&&(r|=16),this.awaitData&&(r|=32),this.exhaust&&(r|=64),this.partial&&(r|=128),this.batchSize!==this.numberToReturn&&(this.numberToReturn=this.batchSize);const o=Buffer.alloc(20+Buffer.byteLength(this.ns)+1+4+4);e.push(o);const s=n.serialize(this.query,{checkKeys:this.checkKeys,serializeFunctions:this.serializeFunctions,ignoreUndefined:this.ignoreUndefined});e.push(s),this.returnFieldSelector&&Object.keys(this.returnFieldSelector).length>0&&(t=n.serialize(this.returnFieldSelector,{checkKeys:this.checkKeys,serializeFunctions:this.serializeFunctions,ignoreUndefined:this.ignoreUndefined}),e.push(t));const u=o.length+s.length+(t?t.length:0);let a=4;return o[3]=u>>24&255,o[2]=u>>16&255,o[1]=u>>8&255,o[0]=255&u,o[a+3]=this.requestId>>24&255,o[a+2]=this.requestId>>16&255,o[a+1]=this.requestId>>8&255,o[a]=255&this.requestId,a+=4,o[a+3]=0,o[a+2]=0,o[a+1]=0,o[a]=0,a+=4,o[a+3]=i.OP_QUERY>>24&255,o[a+2]=i.OP_QUERY>>16&255,o[a+1]=i.OP_QUERY>>8&255,o[a]=255&i.OP_QUERY,a+=4,o[a+3]=r>>24&255,o[a+2]=r>>16&255,o[a+1]=r>>8&255,o[a]=255&r,a+=4,a=a+o.write(this.ns,a,"utf8")+1,o[a-1]=0,o[a+3]=this.numberToSkip>>24&255,o[a+2]=this.numberToSkip>>16&255,o[a+1]=this.numberToSkip>>8&255,o[a]=255&this.numberToSkip,a+=4,o[a+3]=this.numberToReturn>>24&255,o[a+2]=this.numberToReturn>>16&255,o[a+1]=this.numberToReturn>>8&255,o[a]=255&this.numberToReturn,a+=4,e}}t.OpQueryRequest=a,t.OpReply=class{constructor(e,t,r,n){this.index=0,this.sections=[],this.moreToCome=!1,this.parsed=!1,this.raw=e,this.data=r,this.opts=n??{useBigInt64:!1,promoteLongs:!0,promoteValues:!0,promoteBuffers:!1,bsonRegExp:!1},this.length=t.length,this.requestId=t.requestId,this.responseTo=t.responseTo,this.opCode=t.opCode,this.fromCompressed=t.fromCompressed,this.useBigInt64="boolean"==typeof this.opts.useBigInt64&&this.opts.useBigInt64,this.promoteLongs="boolean"!=typeof this.opts.promoteLongs||this.opts.promoteLongs,this.promoteValues="boolean"!=typeof this.opts.promoteValues||this.opts.promoteValues,this.promoteBuffers="boolean"==typeof this.opts.promoteBuffers&&this.opts.promoteBuffers,this.bsonRegExp="boolean"==typeof this.opts.bsonRegExp&&this.opts.bsonRegExp}isParsed(){return this.parsed}parse(){if(this.parsed)return this.sections[0];if(this.index=20,this.responseFlags=this.data.readInt32LE(0),this.cursorId=new n.Long(this.data.readInt32LE(4),this.data.readInt32LE(8)),this.startingFrom=this.data.readInt32LE(12),this.numberReturned=this.data.readInt32LE(16),this.numberReturned<0||this.numberReturned>2**32-1)throw new RangeError(`OP_REPLY numberReturned is an invalid array length ${this.numberReturned}`);this.cursorNotFound=!!(1&this.responseFlags),this.queryFailure=!!(2&this.responseFlags),this.shardConfigStale=!!(4&this.responseFlags),this.awaitCapable=!!(8&this.responseFlags);for(let e=0;e<this.numberReturned;e++){const e=this.data[this.index]|this.data[this.index+1]<<8|this.data[this.index+2]<<16|this.data[this.index+3]<<24,t=this.data.subarray(this.index,this.index+e);this.sections.push(t),this.index=this.index+e}return this.parsed=!0,this.sections[0]}};class c{constructor(e,t,r){if(this.databaseName=e,this.command=t,this.options=r,null==t)throw new o.MongoInvalidArgumentError("Query document must be specified for query");this.command.$db=e,this.options=r??{},this.requestId=r.requestId?r.requestId:c.getRequestId(),this.serializeFunctions="boolean"==typeof r.serializeFunctions&&r.serializeFunctions,this.ignoreUndefined="boolean"==typeof r.ignoreUndefined&&r.ignoreUndefined,this.checkKeys="boolean"==typeof r.checkKeys&&r.checkKeys,this.maxBsonSize=r.maxBsonSize||16777216,this.checksumPresent=!1,this.moreToCome=r.moreToCome||!1,this.exhaustAllowed="boolean"==typeof r.exhaustAllowed&&r.exhaustAllowed}toBin(){const e=[];let t=0;this.checksumPresent&&(t|=1),this.moreToCome&&(t|=2),this.exhaustAllowed&&(t|=65536);const r=Buffer.alloc(20);e.push(r);let n=r.length;const o=this.command;return n+=this.makeDocumentSegment(e,o),r.writeInt32LE(n,0),r.writeInt32LE(this.requestId,4),r.writeInt32LE(0,8),r.writeInt32LE(i.OP_MSG,12),r.writeUInt32LE(t,16),e}makeDocumentSegment(e,t){const r=Buffer.alloc(1);r[0]=0;const n=this.serializeBson(t);return e.push(r),e.push(n),r.length+n.length}serializeBson(e){return n.serialize(e,{checkKeys:this.checkKeys,serializeFunctions:this.serializeFunctions,ignoreUndefined:this.ignoreUndefined})}static getRequestId(){return u=u+1&2147483647,u}}t.OpMsgRequest=c,t.OpMsgResponse=class{constructor(e,t,r,n){this.index=0,this.sections=[],this.parsed=!1,this.raw=e,this.data=r,this.opts=n??{useBigInt64:!1,promoteLongs:!0,promoteValues:!0,promoteBuffers:!1,bsonRegExp:!1},this.length=t.length,this.requestId=t.requestId,this.responseTo=t.responseTo,this.opCode=t.opCode,this.fromCompressed=t.fromCompressed,this.responseFlags=r.readInt32LE(0),this.checksumPresent=!!(1&this.responseFlags),this.moreToCome=!!(2&this.responseFlags),this.exhaustAllowed=!!(65536&this.responseFlags),this.useBigInt64="boolean"==typeof this.opts.useBigInt64&&this.opts.useBigInt64,this.promoteLongs="boolean"!=typeof this.opts.promoteLongs||this.opts.promoteLongs,this.promoteValues="boolean"!=typeof this.opts.promoteValues||this.opts.promoteValues,this.promoteBuffers="boolean"==typeof this.opts.promoteBuffers&&this.opts.promoteBuffers,this.bsonRegExp="boolean"==typeof this.opts.bsonRegExp&&this.opts.bsonRegExp}isParsed(){return this.parsed}parse(){if(this.parsed)return this.sections[0];for(this.index=4;this.index<this.data.length;){const e=this.data.readUInt8(this.index++);if(0===e){const e=this.data.readUInt32LE(this.index),t=this.data.subarray(this.index,this.index+e);this.sections.push(t),this.index+=e}else if(1===e)throw new o.MongoRuntimeError("OP_MSG Payload Type 1 detected unsupported protocol")}return this.parsed=!0,this.sections[0]}},t.OpCompressedRequest=class{constructor(e,t){this.command=e,this.options=t}static canCompress(e){const t=e instanceof c?e.command:e.query,r=Object.keys(t)[0];return!s.uncompressibleCommands.has(r)}async toBin(){const e=Buffer.concat(this.command.toBin()),t=e.slice(16),r=e.readInt32LE(12),n=await(0,s.compress)(this.options,t),o=Buffer.alloc(16);o.writeInt32LE(25+n.length,0),o.writeInt32LE(this.command.requestId,4),o.writeInt32LE(0,8),o.writeInt32LE(i.OP_COMPRESSED,12);const u=Buffer.alloc(9);return u.writeInt32LE(r,0),u.writeInt32LE(t.length,4),u.writeUInt8(s.Compressor[this.options.agreedCompressor],8),[o,u,n]}}},1008:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.makeSocket=t.LEGAL_TCP_SOCKET_OPTIONS=t.LEGAL_TLS_SOCKET_OPTIONS=t.prepareHandshakeDocument=t.performInitialHandshake=t.makeConnection=t.connect=void 0;const n=r(9278),o=r(2375),s=r(3543),i=r(2822),u=r(6372),a=r(407),c=r(6315),l=r(3387),h=r(2676),d=r(9826);function p(e,t){let r=e.connectionType??h.Connection;return e.autoEncrypter&&(r=h.CryptoConnection),new r(t,e)}async function f(e,t){const r=t.credentials;if(r&&r.mechanism!==l.AuthMechanism.MONGODB_DEFAULT&&!t.authProviders.getOrCreateProvider(r.mechanism))throw new u.MongoInvalidArgumentError(`AuthMechanism '${r.mechanism}' not supported`);const n=new c.AuthContext(e,r,t);e.authContext=n;const o=await m(n),i={...t,raw:!1};"number"==typeof t.connectTimeoutMS&&(i.socketTimeoutMS=t.connectTimeoutMS);const h=(new Date).getTime(),p=await e.command((0,a.ns)("admin.$cmd"),o,i);"isWritablePrimary"in p||(p.isWritablePrimary=p[s.LEGACY_HELLO_COMMAND]),p.helloOk&&(e.helloOk=!0);const f=function(e,t){const r=Number(e.maxWireVersion),n=Number(e.minWireVersion),o=!Number.isNaN(r)&&r>=d.MIN_SUPPORTED_WIRE_VERSION,s=!Number.isNaN(n)&&n<=d.MAX_SUPPORTED_WIRE_VERSION;if(o){if(s)return null;const r=`Server at ${t.hostAddress} reports minimum wire version ${JSON.stringify(e.minWireVersion)}, but this version of the Node.js Driver requires at most ${d.MAX_SUPPORTED_WIRE_VERSION} (MongoDB ${d.MAX_SUPPORTED_SERVER_VERSION})`;return new u.MongoCompatibilityError(r)}const i=`Server at ${t.hostAddress} reports maximum wire version ${JSON.stringify(e.maxWireVersion)??0}, but this version of the Node.js Driver requires at least ${d.MIN_SUPPORTED_WIRE_VERSION} (MongoDB ${d.MIN_SUPPORTED_SERVER_VERSION})`;return new u.MongoCompatibilityError(i)}(p,t);if(f)throw f;if(t.loadBalanced&&!p.serviceId)throw new u.MongoCompatibilityError("Driver attempted to initialize in load balancing mode, but the server does not support this mode.");if(e.hello=p,e.lastHelloMS=(new Date).getTime()-h,!p.arbiterOnly&&r){n.response=p;const e=r.resolveAuthMechanism(p),o=t.authProviders.getOrCreateProvider(e.mechanism);if(!o)throw new u.MongoInvalidArgumentError(`No AuthProvider for ${e.mechanism} defined.`);try{await o.auth(n)}catch(e){throw e instanceof u.MongoError&&(e.addErrorLabel(u.MongoErrorLabel.HandshakeError),(0,u.needsRetryableWriteLabel)(e,p.maxWireVersion)&&e.addErrorLabel(u.MongoErrorLabel.RetryableWriteError)),e}}e.established=!0}async function m(e){const t=e.options,r=t.compressors?t.compressors:[],{serverApi:n}=e.connection,o=await t.extendedMetadata,i={[n?.version||!0===t.loadBalanced?"hello":s.LEGACY_HELLO_COMMAND]:1,helloOk:!0,client:o,compression:r};!0===t.loadBalanced&&(i.loadBalanced=!0);const a=e.credentials;if(a){if(a.mechanism===l.AuthMechanism.MONGODB_DEFAULT&&a.username){i.saslSupportedMechs=`${a.source}.${a.username}`;const t=e.options.authProviders.getOrCreateProvider(l.AuthMechanism.MONGODB_SCRAM_SHA256);if(!t)throw new u.MongoInvalidArgumentError(`No AuthProvider for ${l.AuthMechanism.MONGODB_SCRAM_SHA256} defined.`);return await t.prepare(i,e)}const t=e.options.authProviders.getOrCreateProvider(a.mechanism);if(!t)throw new u.MongoInvalidArgumentError(`No AuthProvider for ${a.mechanism} defined.`);return await t.prepare(i,e)}return i}function g(e){const r=e.hostAddress;if(!r)throw new u.MongoInvalidArgumentError('Option "hostAddress" is required');const n={};for(const r of t.LEGAL_TCP_SOCKET_OPTIONS)null!=e[r]&&(n[r]=e[r]);if("string"==typeof r.socketPath)return n.path=r.socketPath,n;if("string"==typeof r.host)return n.host=r.host,n.port=r.port,n;throw new u.MongoRuntimeError(`Unexpected HostAddress ${JSON.stringify(r)}`)}async function E(e){const r=e.tls??!1,s=e.noDelay??!0,c=e.connectTimeoutMS??3e4,l=e.existingSocket;let h;if(null!=e.proxyHost)return await async function(e){const t=a.HostAddress.fromHostPort(e.proxyHost??"",e.proxyPort??1080),r=await E({...e,hostAddress:t,tls:!1,proxyHost:void 0}),n=g(e);if("string"!=typeof n.host||"number"!=typeof n.port)throw new u.MongoInvalidArgumentError("Can only make Socks5 connections to TCP hosts");A??=function(){if(null==A){const e=(0,i.getSocks)();if("kModuleError"in e)throw e.kModuleError;A=e}return A}();try{const{socket:t}=await A.SocksClient.createConnection({existing_socket:r,timeout:e.connectTimeoutMS,command:"connect",destination:{host:n.host,port:n.port},proxy:{host:"iLoveJavaScript",port:0,type:5,userId:e.proxyUsername||void 0,password:e.proxyPassword||void 0}});return await E({...e,existingSocket:t,proxyHost:void 0})}catch(e){throw y("error",e)}}({...e,connectTimeoutMS:c});if(r){const r=o.connect(function(e){const r=g(e);for(const n of t.LEGAL_TLS_SOCKET_OPTIONS)null!=e[n]&&(r[n]=e[n]);return e.existingSocket&&(r.socket=e.existingSocket),null==r.servername&&r.host&&!n.isIP(r.host)&&(r.servername=r.host),r}(e));"function"==typeof r.disableRenegotiation&&r.disableRenegotiation(),h=r}else h=l||n.createConnection(g(e));h.setKeepAlive(!0,3e5),h.setTimeout(c),h.setNoDelay(s);let d=null;const{promise:p,resolve:f,reject:m}=(0,a.promiseWithResolvers)();if(l)f(h);else{const t=r?"secureConnect":"connect";h.once(t,(()=>f(h))).once("error",(e=>m(y("error",e)))).once("timeout",(()=>m(y("timeout")))).once("close",(()=>m(y("close")))),null!=e.cancellationToken&&(d=()=>m(y("cancel")),e.cancellationToken.once("cancel",d))}try{return h=await p,h}catch(e){throw h.destroy(),e}finally{h.setTimeout(0),h.removeAllListeners(),null!=d&&e.cancellationToken?.removeListener("cancel",d)}}t.connect=async function(e){let t=null;try{return t=p(e,await E(e)),await f(t,e),t}catch(e){throw t?.destroy(),e}},t.makeConnection=p,t.performInitialHandshake=f,t.prepareHandshakeDocument=m,t.LEGAL_TLS_SOCKET_OPTIONS=["ALPNProtocols","ca","cert","checkServerIdentity","ciphers","crl","ecdhCurve","key","minDHSize","passphrase","pfx","rejectUnauthorized","secureContext","secureProtocol","servername","session"],t.LEGAL_TCP_SOCKET_OPTIONS=["family","hints","localAddress","localPort","lookup"],t.makeSocket=E;let A=null;function y(e,t){switch(e){case"error":return new u.MongoNetworkError(u.MongoError.buildErrorMessage(t),{cause:t});case"timeout":return new u.MongoNetworkTimeoutError("connection timed out");case"close":return new u.MongoNetworkError("connection closed");case"cancel":return new u.MongoNetworkError("connection establishment was cancelled");default:return new u.MongoNetworkError("unknown network error")}}},2676:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CryptoConnection=t.SizedMessageTransform=t.Connection=t.hasSessionSupport=void 0;const n=r(2203),o=r(3557),s=r(3543),i=r(6372),u=r(2973),a=r(1404),c=r(6474),l=r(281),h=r(945),d=r(407),p=r(3574),f=r(3646),m=r(7901),g=r(6377),E=r(4465),A=r(7783),y=r(6234);t.hasSessionSupport=function(e){return null!=e.description.logicalSessionTimeoutMinutes};class C extends a.TypedEventEmitter{constructor(e,t){super(),this.lastHelloMS=-1,this.helloOk=!1,this.delayedTimeoutId=null,this.closed=!1,this.clusterTime=null,this.error=null,this.dataEvents=null,this.socket=e,this.id=t.id,this.address=function(e,t){if(t.proxyHost)return t.hostAddress.toString();const{remoteAddress:r,remotePort:n}=e;return"string"==typeof r&&"number"==typeof n?d.HostAddress.fromHostPort(r,n).toString():(0,d.uuidV4)().toString("hex")}(e,t),this.socketTimeoutMS=t.socketTimeoutMS??0,this.monitorCommands=t.monitorCommands,this.serverApi=t.serverApi,this.mongoLogger=t.mongoLogger,this.established=!1,this.description=new m.StreamDescription(this.address,t),this.generation=t.generation,this.lastUseTime=(0,d.now)(),this.messageStream=this.socket.on("error",this.onError.bind(this)).pipe(new S({connection:this})).on("error",this.onError.bind(this)),this.socket.on("close",this.onClose.bind(this)),this.socket.on("timeout",this.onTimeout.bind(this))}get hello(){return this.description.hello}set hello(e){this.description.receiveResponse(e),Object.freeze(this.description)}get serviceId(){return this.hello?.serviceId}get loadBalanced(){return this.description.loadBalanced}get idleTime(){return(0,d.calculateDurationInMs)(this.lastUseTime)}get hasSessionSupport(){return null!=this.description.logicalSessionTimeoutMinutes}get supportsOpMsg(){return null!=this.description&&(0,d.maxWireVersion)(this)>=6&&!this.description.__nodejs_mock_server__}get shouldEmitAndLogCommand(){return(this.monitorCommands||this.established&&!this.authContext?.reauthenticating&&this.mongoLogger?.willLog(u.MongoLoggableComponent.COMMAND,u.SeverityLevel.DEBUG))??!1}markAvailable(){this.lastUseTime=(0,d.now)()}onError(e){this.cleanup(e)}onClose(){const e=`connection ${this.id} to ${this.address} closed`;this.cleanup(new i.MongoNetworkError(e))}onTimeout(){this.delayedTimeoutId=(0,o.setTimeout)((()=>{const e=`connection ${this.id} to ${this.address} timed out`,t=null==this.hello;this.cleanup(new i.MongoNetworkTimeoutError(e,{beforeHandshake:t}))}),1).unref()}destroy(){if(this.closed)return;this.removeAllListeners(C.PINNED),this.removeAllListeners(C.UNPINNED);const e=`connection ${this.id} to ${this.address} closed`;this.cleanup(new i.MongoNetworkError(e))}cleanup(e){this.closed||(this.socket.destroy(),this.error=e,this.dataEvents?.throw(e).then(void 0,d.squashError),this.closed=!0,this.emit(C.CLOSE))}prepareCommand(e,t,r){let n={...t};const o=(0,y.getReadPreference)(r),s=r?.session;let u=this.clusterTime;if(this.serverApi){const{version:e,strict:t,deprecationErrors:r}=this.serverApi;n.apiVersion=e,null!=t&&(n.apiStrict=t),null!=r&&(n.apiDeprecationErrors=r)}if(this.hasSessionSupport&&s){s.clusterTime&&u&&s.clusterTime.clusterTime.greaterThan(u.clusterTime)&&(u=s.clusterTime);const e=(0,h.applySession)(s,n,r);if(e)throw e}else if(s?.explicit)throw new i.MongoCompatibilityError("Current topology does not support sessions");u&&(n.$clusterTime=u),this.description.type!==l.ServerType.Standalone&&((0,y.isSharded)(this)||this.description.loadBalanced||!this.supportsOpMsg||!0!==r.directConnection||"primary"!==o?.mode?(0,y.isSharded)(this)&&!this.supportsOpMsg&&"primary"!==o?.mode?n={$query:n,$readPreference:o.toJSON()}:"primary"!==o?.mode&&(n.$readPreference=o.toJSON()):n.$readPreference=c.ReadPreference.primaryPreferred.toJSON());const a={numberToSkip:0,numberToReturn:-1,checkKeys:!1,secondaryOk:o.secondaryOk(),...r};return this.supportsOpMsg?new f.OpMsgRequest(e,n,a):new f.OpQueryRequest(e,n,a)}async*sendWire(e,t,r){this.throwIfAborted(),"number"==typeof t.socketTimeoutMS?this.socket.setTimeout(t.socketTimeoutMS):0!==this.socketTimeoutMS&&this.socket.setTimeout(this.socketTimeoutMS);try{if(await this.writeCommand(e,{agreedCompressor:this.description.compressor??"none",zlibCompressionLevel:this.description.zlibCompressionLevel}),t.noResponse)return void(yield A.MongoDBResponse.empty);this.throwIfAborted();for await(const e of this.readMany()){this.socket.setTimeout(0);const n=e.parse(),o=null==r||(0,A.isErrorResponse)(n)?new A.MongoDBResponse(n):new r(n);yield o,this.throwIfAborted(),"number"==typeof t.socketTimeoutMS?this.socket.setTimeout(t.socketTimeoutMS):0!==this.socketTimeoutMS&&this.socket.setTimeout(this.socketTimeoutMS)}}finally{this.socket.setTimeout(0)}}async*sendCommand(e,t,r,n){const o=this.prepareCommand(e.db,t,r);let s=0;this.shouldEmitAndLogCommand&&(s=(0,d.now)(),this.emitAndLogCommand(this.monitorCommands,C.COMMAND_STARTED,o.databaseName,this.established,new p.CommandStartedEvent(this,o,this.description.serverConnectionId)));const u=null!=r.documentsReturnedIn&&r.raw?{...r,raw:!1,fieldsAsRaw:{[r.documentsReturnedIn]:!0}}:r;let a,c;try{for await(a of(this.throwIfAborted(),this.sendWire(o,r,n))){if(c=void 0,null!=r.session&&(0,h.updateSessionFromResponse)(r.session,a),a.$clusterTime&&(this.clusterTime=a.$clusterTime,this.emit(C.CLUSTER_TIME_RECEIVED,a.$clusterTime)),a.has("writeConcernError"))throw c??=a.toObject(u),new i.MongoWriteConcernError(c.writeConcernError,c);if(a.isError)throw new i.MongoServerError(c??=a.toObject(u));this.shouldEmitAndLogCommand&&this.emitAndLogCommand(this.monitorCommands,C.COMMAND_SUCCEEDED,o.databaseName,this.established,new p.CommandSucceededEvent(this,o,r.noResponse?void 0:c??=a.toObject(u),s,this.description.serverConnectionId)),null==n?yield c??=a.toObject(u):yield a,this.throwIfAborted()}}catch(e){throw this.shouldEmitAndLogCommand&&("MongoWriteConcernError"===e.name?this.emitAndLogCommand(this.monitorCommands,C.COMMAND_SUCCEEDED,o.databaseName,this.established,new p.CommandSucceededEvent(this,o,r.noResponse?void 0:c??=a?.toObject(u),s,this.description.serverConnectionId)):this.emitAndLogCommand(this.monitorCommands,C.COMMAND_FAILED,o.databaseName,this.established,new p.CommandFailedEvent(this,o,e,s,this.description.serverConnectionId))),e}}async command(e,t,r={},n){this.throwIfAborted();for await(const o of this.sendCommand(e,t,r,n))return o;throw new i.MongoUnexpectedServerResponseError("Unable to get response from server")}exhaustCommand(e,t,r,n){(async()=>{this.throwIfAborted();for await(const o of this.sendCommand(e,t,r))n(void 0,o),this.throwIfAborted();throw new i.MongoUnexpectedServerResponseError("Server ended moreToCome unexpectedly")})().then(void 0,n)}throwIfAborted(){if(this.error)throw this.error}async writeCommand(e,t){const r="none"!==t.agreedCompressor&&f.OpCompressedRequest.canCompress(e)?new f.OpCompressedRequest(e,{agreedCompressor:t.agreedCompressor??"none",zlibCompressionLevel:t.zlibCompressionLevel??0}):e,n=Buffer.concat(await r.toBin());if(!this.socket.write(n))return await(0,d.once)(this.socket,"drain")}async*readMany(){try{this.dataEvents=(0,E.onData)(this.messageStream);for await(const e of this.dataEvents){const t=await(0,g.decompressResponse)(e);if(yield t,!t.moreToCome)return}}finally{this.dataEvents=null,this.throwIfAborted()}}}C.COMMAND_STARTED=s.COMMAND_STARTED,C.COMMAND_SUCCEEDED=s.COMMAND_SUCCEEDED,C.COMMAND_FAILED=s.COMMAND_FAILED,C.CLUSTER_TIME_RECEIVED=s.CLUSTER_TIME_RECEIVED,C.CLOSE=s.CLOSE,C.PINNED=s.PINNED,C.UNPINNED=s.UNPINNED,t.Connection=C;class S extends n.Transform{constructor({connection:e}){super({objectMode:!1}),this.bufferPool=new d.BufferPool,this.connection=e}_transform(e,t,r){null!=this.connection.delayedTimeoutId&&((0,o.clearTimeout)(this.connection.delayedTimeoutId),this.connection.delayedTimeoutId=null),this.bufferPool.append(e);const n=this.bufferPool.getInt32();return null==n?r():n<0?r(new i.MongoParseError(`Invalid message size: ${n}, too small`)):n>this.bufferPool.length?r():r(null,this.bufferPool.read(n))}}t.SizedMessageTransform=S,t.CryptoConnection=class extends C{constructor(e,t){super(e,t),this.autoEncrypter=t.autoEncrypter}async command(e,t,r,n){const{autoEncrypter:o}=this;if(!o)throw new i.MongoMissingDependencyError("No AutoEncrypter available for encryption",{dependencyName:"n/a"});const s=(0,d.maxWireVersion)(this);if(0===s)return await super.command(e,t,r,void 0);if(s<8)throw new i.MongoCompatibilityError("Auto-encryption requires a minimum MongoDB version of 4.2");const u=t.find||t.findAndModify?t.sort:null,a=t.createIndexes?t.indexes.map((e=>e.key)):null,c=await o.encrypt(e.toString(),t,r);if(null!=u&&(t.find||t.findAndModify)&&(c.sort=u),null!=a&&t.createIndexes)for(const[e,t]of a.entries())c.indexes[e].key=t;const l=await super.command(e,c,r,void 0);return await o.decrypt(l,r)}}},9689:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConnectionPool=t.PoolState=void 0;const n=r(3557),o=r(3543),s=r(6372),i=r(1404),u=r(3533),a=r(407),c=r(1008),l=r(2676),h=r(3113),d=r(275),p=r(7367),f=Symbol("server"),m=Symbol("connections"),g=Symbol("pending"),E=Symbol("checkedOut"),A=Symbol("minPoolSizeTimer"),y=Symbol("generation"),C=Symbol("serviceGenerations"),S=Symbol("connectionCounter"),w=Symbol("cancellationToken"),b=Symbol("waitQueue"),v=Symbol("cancelled"),O=Symbol("metrics"),_=Symbol("processingWaitQueue"),B=Symbol("poolState");t.PoolState=Object.freeze({paused:"paused",ready:"ready",closed:"closed"});class D extends i.TypedEventEmitter{constructor(e,r){if(super(),this.options=Object.freeze({connectionType:l.Connection,...r,maxPoolSize:r.maxPoolSize??100,minPoolSize:r.minPoolSize??0,maxConnecting:r.maxConnecting??2,maxIdleTimeMS:r.maxIdleTimeMS??0,waitQueueTimeoutMS:r.waitQueueTimeoutMS??0,minPoolSizeCheckFrequencyMS:r.minPoolSizeCheckFrequencyMS??100,autoEncrypter:r.autoEncrypter}),this.options.minPoolSize>this.options.maxPoolSize)throw new s.MongoInvalidArgumentError("Connection pool minimum size must not be greater than maximum pool size");this[B]=t.PoolState.paused,this[f]=e,this[m]=new a.List,this[g]=0,this[E]=new Set,this[A]=void 0,this[y]=0,this[C]=new Map,this[S]=(0,a.makeCounter)(1),this[w]=new i.CancellationToken,this[w].setMaxListeners(1/0),this[b]=new a.List,this[O]=new p.ConnectionPoolMetrics,this[_]=!1,this.mongoLogger=this[f].topology.client?.mongoLogger,this.component="connection",process.nextTick((()=>{this.emitAndLog(D.CONNECTION_POOL_CREATED,new h.ConnectionPoolCreatedEvent(this))}))}get address(){return this.options.hostAddress.toString()}get closed(){return this[B]===t.PoolState.closed}get generation(){return this[y]}get totalConnectionCount(){return this.availableConnectionCount+this.pendingConnectionCount+this.currentCheckedOutCount}get availableConnectionCount(){return this[m].length}get pendingConnectionCount(){return this[g]}get currentCheckedOutCount(){return this[E].size}get waitQueueSize(){return this[b].length}get loadBalanced(){return this.options.loadBalanced}get serviceGenerations(){return this[C]}get serverError(){return this[f].description.error}get checkedOutConnections(){return this[E]}waitQueueErrorMetrics(){return this[O].info(this.options.maxPoolSize)}ready(){this[B]===t.PoolState.paused&&(this[B]=t.PoolState.ready,this.emitAndLog(D.CONNECTION_POOL_READY,new h.ConnectionPoolReadyEvent(this)),(0,n.clearTimeout)(this[A]),this.ensureMinPoolSize())}async checkOut(){this.emitAndLog(D.CONNECTION_CHECK_OUT_STARTED,new h.ConnectionCheckOutStartedEvent(this));const e=this.options.waitQueueTimeoutMS,{promise:t,resolve:r,reject:n}=(0,a.promiseWithResolvers)(),o={resolve:r,reject:n,timeout:u.Timeout.expires(e)};this[b].push(o),process.nextTick((()=>this.processWaitQueue()));try{return await Promise.race([t,o.timeout])}catch(e){if(u.TimeoutError.is(e))throw o[v]=!0,o.timeout.clear(),this.emitAndLog(D.CONNECTION_CHECK_OUT_FAILED,new h.ConnectionCheckOutFailedEvent(this,"timeout")),new d.WaitQueueTimeoutError(this.loadBalanced?this.waitQueueErrorMetrics():"Timed out while checking out a connection from connection pool",this.address);throw e}}checkIn(e){if(!this[E].has(e))return;const t=this.closed,r=this.connectionIsStale(e),n=!!(t||r||e.closed);if(n||(e.markAvailable(),this[m].unshift(e)),this[E].delete(e),this.emitAndLog(D.CONNECTION_CHECKED_IN,new h.ConnectionCheckedInEvent(this,e)),n){const r=e.closed?"error":t?"poolClosed":"stale";this.destroyConnection(e,r)}process.nextTick((()=>this.processWaitQueue()))}clear(e={}){if(this.closed)return;if(this.loadBalanced){const{serviceId:t}=e;if(!t)throw new s.MongoRuntimeError("ConnectionPool.clear() called in load balanced mode with no serviceId.");const r=t.toHexString(),n=this.serviceGenerations.get(r);if(null==n)throw new s.MongoRuntimeError("Service generations are required in load balancer mode.");return this.serviceGenerations.set(r,n+1),void this.emitAndLog(D.CONNECTION_POOL_CLEARED,new h.ConnectionPoolClearedEvent(this,{serviceId:t}))}const r=e.interruptInUseConnections??!1,n=this[y];this[y]+=1;const o=this[B]===t.PoolState.paused;this[B]=t.PoolState.paused,this.clearMinPoolSizeTimer(),o||this.emitAndLog(D.CONNECTION_POOL_CLEARED,new h.ConnectionPoolClearedEvent(this,{interruptInUseConnections:r})),r&&process.nextTick((()=>this.interruptInUseConnections(n))),this.processWaitQueue()}interruptInUseConnections(e){for(const t of this[E])t.generation<=e&&(t.onError(new d.PoolClearedOnNetworkError(this)),this.checkIn(t))}close(){if(!this.closed){this[w].emit("cancel"),"function"==typeof this[S].return&&this[S].return(void 0),this[B]=t.PoolState.closed,this.clearMinPoolSizeTimer(),this.processWaitQueue();for(const e of this[m])this.emitAndLog(D.CONNECTION_CLOSED,new h.ConnectionClosedEvent(this,e,"poolClosed")),e.destroy();this[m].clear(),this.emitAndLog(D.CONNECTION_POOL_CLOSED,new h.ConnectionPoolClosedEvent(this))}}async reauthenticate(e){const t=e.authContext;if(!t)throw new s.MongoRuntimeError("No auth context found on connection.");const r=t.credentials;if(!r)throw new s.MongoMissingCredentialsError("Connection is missing credentials when asked to reauthenticate");const n=r.resolveAuthMechanism(e.hello),o=this[f].topology.client.s.authProviders.getOrCreateProvider(n.mechanism);if(!o)throw new s.MongoMissingCredentialsError(`Reauthenticate failed due to no auth provider for ${r.mechanism}`);await o.reauth(t)}clearMinPoolSizeTimer(){const e=this[A];e&&(0,n.clearTimeout)(e)}destroyConnection(e,t){this.emitAndLog(D.CONNECTION_CLOSED,new h.ConnectionClosedEvent(this,e,t)),e.destroy()}connectionIsStale(e){const t=e.serviceId;if(this.loadBalanced&&t){const r=t.toHexString(),n=this.serviceGenerations.get(r);return e.generation!==n}return e.generation!==this[y]}connectionIsIdle(e){return!!(this.options.maxIdleTimeMS&&e.idleTime>this.options.maxIdleTimeMS)}destroyConnectionIfPerished(e){const t=this.connectionIsStale(e),r=this.connectionIsIdle(e);if(!t&&!r&&!e.closed)return!1;const n=e.closed?"error":t?"stale":"idle";return this.destroyConnection(e,n),!0}createConnection(e){const r={...this.options,id:this[S].next().value,generation:this[y],cancellationToken:this[w],mongoLogger:this.mongoLogger,authProviders:this[f].topology.client.s.authProviders};this[g]++,this.emitAndLog(D.CONNECTION_CREATED,new h.ConnectionCreatedEvent(this,{id:r.id})),(0,c.connect)(r).then((r=>{if(this[B]!==t.PoolState.ready)return this[g]--,r.destroy(),void e(this.closed?new d.PoolClosedError(this):new d.PoolClearedError(this));for(const e of[...o.APM_EVENTS,l.Connection.CLUSTER_TIME_RECEIVED])r.on(e,(t=>this.emit(e,t)));if(this.loadBalanced){r.on(l.Connection.PINNED,(e=>this[O].markPinned(e))),r.on(l.Connection.UNPINNED,(e=>this[O].markUnpinned(e)));const e=r.serviceId;if(e){let t;const n=e.toHexString();(t=this.serviceGenerations.get(n))?r.generation=t:(this.serviceGenerations.set(n,0),r.generation=0)}}r.markAvailable(),this.emitAndLog(D.CONNECTION_READY,new h.ConnectionReadyEvent(this,r)),this[g]--,e(void 0,r)}),(t=>{this[g]--,this.emitAndLog(D.CONNECTION_CLOSED,new h.ConnectionClosedEvent(this,{id:r.id,serviceId:void 0},"error",t)),(t instanceof s.MongoNetworkError||t instanceof s.MongoServerError)&&(t.connectionGeneration=r.generation),e(t??new s.MongoRuntimeError("Connection creation failed without error"))}))}ensureMinPoolSize(){const e=this.options.minPoolSize;this[B]===t.PoolState.ready&&0!==e&&(this[m].prune((e=>this.destroyConnectionIfPerished(e))),this.totalConnectionCount<e&&this.pendingConnectionCount<this.options.maxConnecting?this.createConnection(((e,r)=>{e&&this[f].handleError(e),!e&&r&&(this[m].push(r),process.nextTick((()=>this.processWaitQueue()))),this[B]===t.PoolState.ready&&((0,n.clearTimeout)(this[A]),this[A]=(0,n.setTimeout)((()=>this.ensureMinPoolSize()),this.options.minPoolSizeCheckFrequencyMS))})):((0,n.clearTimeout)(this[A]),this[A]=(0,n.setTimeout)((()=>this.ensureMinPoolSize()),this.options.minPoolSizeCheckFrequencyMS)))}processWaitQueue(){if(this[_])return;for(this[_]=!0;this.waitQueueSize;){const e=this[b].first();if(!e){this[b].shift();continue}if(e[v]){this[b].shift();continue}if(this[B]!==t.PoolState.ready){const t=this.closed?"poolClosed":"connectionError",r=this.closed?new d.PoolClosedError(this):new d.PoolClearedError(this);this.emitAndLog(D.CONNECTION_CHECK_OUT_FAILED,new h.ConnectionCheckOutFailedEvent(this,t,r)),e.timeout.clear(),this[b].shift(),e.reject(r);continue}if(!this.availableConnectionCount)break;const r=this[m].shift();if(!r)break;this.destroyConnectionIfPerished(r)||(this[E].add(r),this.emitAndLog(D.CONNECTION_CHECKED_OUT,new h.ConnectionCheckedOutEvent(this,r)),e.timeout.clear(),this[b].shift(),e.resolve(r))}const{maxPoolSize:e,maxConnecting:r}=this.options;for(;this.waitQueueSize>0&&this.pendingConnectionCount<r&&(0===e||this.totalConnectionCount<e);){const e=this[b].shift();e&&!e[v]&&this.createConnection(((t,r)=>{e[v]?!t&&r&&this[m].push(r):(t?(this.emitAndLog(D.CONNECTION_CHECK_OUT_FAILED,new h.ConnectionCheckOutFailedEvent(this,"connectionError",t)),e.reject(t)):r&&(this[E].add(r),this.emitAndLog(D.CONNECTION_CHECKED_OUT,new h.ConnectionCheckedOutEvent(this,r)),e.resolve(r)),e.timeout.clear()),process.nextTick((()=>this.processWaitQueue()))}))}this[_]=!1}}D.CONNECTION_POOL_CREATED=o.CONNECTION_POOL_CREATED,D.CONNECTION_POOL_CLOSED=o.CONNECTION_POOL_CLOSED,D.CONNECTION_POOL_CLEARED=o.CONNECTION_POOL_CLEARED,D.CONNECTION_POOL_READY=o.CONNECTION_POOL_READY,D.CONNECTION_CREATED=o.CONNECTION_CREATED,D.CONNECTION_READY=o.CONNECTION_READY,D.CONNECTION_CLOSED=o.CONNECTION_CLOSED,D.CONNECTION_CHECK_OUT_STARTED=o.CONNECTION_CHECK_OUT_STARTED,D.CONNECTION_CHECK_OUT_FAILED=o.CONNECTION_CHECK_OUT_FAILED,D.CONNECTION_CHECKED_OUT=o.CONNECTION_CHECKED_OUT,D.CONNECTION_CHECKED_IN=o.CONNECTION_CHECKED_IN,t.ConnectionPool=D},3113:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConnectionPoolClearedEvent=t.ConnectionCheckedInEvent=t.ConnectionCheckedOutEvent=t.ConnectionCheckOutFailedEvent=t.ConnectionCheckOutStartedEvent=t.ConnectionClosedEvent=t.ConnectionReadyEvent=t.ConnectionCreatedEvent=t.ConnectionPoolClosedEvent=t.ConnectionPoolReadyEvent=t.ConnectionPoolCreatedEvent=t.ConnectionPoolMonitoringEvent=void 0;const n=r(3543);class o{constructor(e){this.time=new Date,this.address=e.address}}t.ConnectionPoolMonitoringEvent=o,t.ConnectionPoolCreatedEvent=class extends o{constructor(e){super(e),this.name=n.CONNECTION_POOL_CREATED;const{maxConnecting:t,maxPoolSize:r,minPoolSize:o,maxIdleTimeMS:s,waitQueueTimeoutMS:i}=e.options;this.options={maxConnecting:t,maxPoolSize:r,minPoolSize:o,maxIdleTimeMS:s,waitQueueTimeoutMS:i}}},t.ConnectionPoolReadyEvent=class extends o{constructor(e){super(e),this.name=n.CONNECTION_POOL_READY}},t.ConnectionPoolClosedEvent=class extends o{constructor(e){super(e),this.name=n.CONNECTION_POOL_CLOSED}},t.ConnectionCreatedEvent=class extends o{constructor(e,t){super(e),this.name=n.CONNECTION_CREATED,this.connectionId=t.id}},t.ConnectionReadyEvent=class extends o{constructor(e,t){super(e),this.name=n.CONNECTION_READY,this.connectionId=t.id}},t.ConnectionClosedEvent=class extends o{constructor(e,t,r,o){super(e),this.name=n.CONNECTION_CLOSED,this.connectionId=t.id,this.reason=r,this.serviceId=t.serviceId,this.error=o??null}},t.ConnectionCheckOutStartedEvent=class extends o{constructor(e){super(e),this.name=n.CONNECTION_CHECK_OUT_STARTED}},t.ConnectionCheckOutFailedEvent=class extends o{constructor(e,t,r){super(e),this.name=n.CONNECTION_CHECK_OUT_FAILED,this.reason=t,this.error=r}},t.ConnectionCheckedOutEvent=class extends o{constructor(e,t){super(e),this.name=n.CONNECTION_CHECKED_OUT,this.connectionId=t.id}},t.ConnectionCheckedInEvent=class extends o{constructor(e,t){super(e),this.name=n.CONNECTION_CHECKED_IN,this.connectionId=t.id}},t.ConnectionPoolClearedEvent=class extends o{constructor(e,t={}){super(e),this.name=n.CONNECTION_POOL_CLEARED,this.serviceId=t.serviceId,this.interruptInUseConnections=t.interruptInUseConnections}}},275:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WaitQueueTimeoutError=t.PoolClearedOnNetworkError=t.PoolClearedError=t.PoolClosedError=void 0;const n=r(6372);class o extends n.MongoDriverError{constructor(e){super("Attempted to check out a connection from closed connection pool"),this.address=e.address}get name(){return"MongoPoolClosedError"}}t.PoolClosedError=o;class s extends n.MongoNetworkError{constructor(e,t){super(t||`Connection pool for ${e.address} was cleared because another operation failed with: "${e.serverError?.message}"`,e.serverError?{cause:e.serverError}:void 0),this.address=e.address,this.addErrorLabel(n.MongoErrorLabel.PoolRequstedRetry)}get name(){return"MongoPoolClearedError"}}t.PoolClearedError=s,t.PoolClearedOnNetworkError=class extends s{constructor(e){super(e,`Connection to ${e.address} interrupted due to server monitor timeout`)}get name(){return"PoolClearedOnNetworkError"}};class i extends n.MongoDriverError{constructor(e,t){super(e),this.address=t}get name(){return"MongoWaitQueueTimeoutError"}}t.WaitQueueTimeoutError=i},5377:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFAASEnv=t.addContainerMetadata=t.makeClientMetadata=t.LimitedSizeDocument=void 0;const n=r(857),o=r(932),s=r(5638),i=r(6372),u=r(407),a=r(978).rE;class c{constructor(e){this.maxSize=e,this.document=new Map,this.documentSize=5}ifItFitsItSits(e,t){const r=s.BSON.serialize((new Map).set(e,t)).byteLength-5;return!(r+this.documentSize>this.maxSize||(this.documentSize+=r,this.document.set(e,t),0))}toObject(){return s.BSON.deserialize(s.BSON.serialize(this.document),{promoteLongs:!1,promoteBuffers:!1,promoteValues:!1,useBigInt64:!1})}}let l;function h(){const{AWS_EXECUTION_ENV:e="",AWS_LAMBDA_RUNTIME_API:t="",FUNCTIONS_WORKER_RUNTIME:r="",K_SERVICE:n="",FUNCTION_NAME:i="",VERCEL:u="",AWS_LAMBDA_FUNCTION_MEMORY_SIZE:a="",AWS_REGION:c="",FUNCTION_MEMORY_MB:l="",FUNCTION_REGION:h="",FUNCTION_TIMEOUT_SEC:d="",VERCEL_REGION:p=""}=o.env,f=e.startsWith("AWS_Lambda_")||t.length>0,m=r.length>0,g=n.length>0||i.length>0,E=u.length>0,A=new Map;return!E||m||g?f&&!(m||g||E)?(c.length>0&&A.set("region",c),a.length>0&&Number.isInteger(+a)&&A.set("memory_mb",new s.Int32(a)),A.set("name","aws.lambda"),A):m&&!(g||f||E)?(A.set("name","azure.func"),A):g&&!(m||f||E)?(h.length>0&&A.set("region",h),l.length>0&&Number.isInteger(+l)&&A.set("memory_mb",new s.Int32(l)),d.length>0&&Number.isInteger(+d)&&A.set("timeout_sec",new s.Int32(d)),A.set("name","gcp.func"),A):null:(p.length>0&&A.set("region",p),A.set("name","vercel"),A)}t.LimitedSizeDocument=c,t.makeClientMetadata=function(e){const t=new c(512),{appName:r=""}=e;if(r.length>0){const n=Buffer.byteLength(r,"utf8")<=128?e.appName:Buffer.from(r,"utf8").subarray(0,128).toString("utf8");t.ifItFitsItSits("application",{name:n})}const{name:s="",version:u="",platform:l=""}=e.driverInfo,d={name:s.length>0?`nodejs|${s}`:"nodejs",version:u.length>0?`${a}|${u}`:a};if(!t.ifItFitsItSits("driver",d))throw new i.MongoInvalidArgumentError("Unable to include driverInfo name and version, metadata cannot exceed 512 bytes");let p="Deno"in globalThis?`Deno v${"string"==typeof Deno?.version?.deno?Deno?.version?.deno:"0.0.0-unknown"}, ${n.endianness()}`:"Bun"in globalThis?`Bun v${"string"==typeof Bun?.version?Bun?.version:"0.0.0-unknown"}, ${n.endianness()}`:`Node.js ${o.version}, ${n.endianness()}`;if(l.length>0&&(p=`${p}|${l}`),!t.ifItFitsItSits("platform",p))throw new i.MongoInvalidArgumentError("Unable to include driverInfo platform, metadata cannot exceed 512 bytes");const f=(new Map).set("name",o.platform).set("architecture",o.arch).set("version",n.release()).set("type",n.type());if(!t.ifItFitsItSits("os",f))for(const e of f.keys()){if(f.delete(e),0===f.size)break;if(t.ifItFitsItSits("os",f))break}const m=h();if(null!=m&&!t.ifItFitsItSits("env",m))for(const e of m.keys()){if(m.delete(e),0===m.size)break;if(t.ifItFitsItSits("env",m))break}return t.toObject()},t.addContainerMetadata=async function(e){const t=await async function(){const e={};l??=(0,u.fileIsAccessible)("/.dockerenv");const t=await l,{KUBERNETES_SERVICE_HOST:r=""}=o.env,n=r.length>0;return t&&(e.runtime="docker"),n&&(e.orchestrator="kubernetes"),e}();if(0===Object.keys(t).length)return e;const r=new c(512),n={...e?.env,container:t};for(const[t,o]of Object.entries(e))"env"!==t?r.ifItFitsItSits(t,o):r.ifItFitsItSits("env",n)||r.ifItFitsItSits("env",o);return"env"in e||r.ifItFitsItSits("env",n),r.toObject()},t.getFAASEnv=h},7367:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ConnectionPoolMetrics=void 0;class r{constructor(){this.txnConnections=0,this.cursorConnections=0,this.otherConnections=0}markPinned(e){e===r.TXN?this.txnConnections+=1:e===r.CURSOR?this.cursorConnections+=1:this.otherConnections+=1}markUnpinned(e){e===r.TXN?this.txnConnections-=1:e===r.CURSOR?this.cursorConnections-=1:this.otherConnections-=1}info(e){return`Timed out while checking out a connection from connection pool: maxPoolSize: ${e}, connections in use by cursors: ${this.cursorConnections}, connections in use by transactions: ${this.txnConnections}, connections in use by other operations: ${this.otherConnections}`}reset(){this.txnConnections=0,this.cursorConnections=0,this.otherConnections=0}}r.TXN="txn",r.CURSOR="cursor",r.OTHER="other",t.ConnectionPoolMetrics=r},7901:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamDescription=void 0;const n=r(5638),o=r(281),s=r(6366),i=["minWireVersion","maxWireVersion","maxBsonObjectSize","maxMessageSizeBytes","maxWriteBatchSize","logicalSessionTimeoutMinutes"];t.StreamDescription=class{constructor(e,t){this.hello=null,this.address=e,this.type=o.ServerType.Unknown,this.minWireVersion=void 0,this.maxWireVersion=void 0,this.maxBsonObjectSize=16777216,this.maxMessageSizeBytes=48e6,this.maxWriteBatchSize=1e5,this.logicalSessionTimeoutMinutes=t?.logicalSessionTimeoutMinutes,this.loadBalanced=!!t?.loadBalanced,this.compressors=t&&t.compressors&&Array.isArray(t.compressors)?t.compressors:[],this.serverConnectionId=null}receiveResponse(e){if(null!=e){this.hello=e,this.type=(0,s.parseServerType)(e),this.serverConnectionId="connectionId"in e?this.parseServerConnectionID(e.connectionId):null;for(const t of i)null!=e[t]&&(this[t]=e[t]),"__nodejs_mock_server__"in e&&(this.__nodejs_mock_server__=e.__nodejs_mock_server__);e.compression&&(this.compressor=this.compressors.filter((t=>e.compression?.includes(t)))[0])}}parseServerConnectionID(e){return n.Long.isLong(e)?e.toBigInt():BigInt(e)}}},6377:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decompressResponse=t.compressCommand=t.decompress=t.compress=t.uncompressibleCommands=t.Compressor=void 0;const n=r(9023),o=r(3106),s=r(3543),i=r(2822),u=r(6372),a=r(3646),c=r(9826);t.Compressor=Object.freeze({none:0,snappy:1,zlib:2,zstd:3}),t.uncompressibleCommands=new Set([s.LEGACY_HELLO_COMMAND,"saslStart","saslContinue","getnonce","authenticate","createUser","updateUser","copydbSaslStart","copydbgetnonce","copydb"]);const l=(0,n.promisify)(o.inflate.bind(o)),h=(0,n.promisify)(o.deflate.bind(o));let d,p=null;function f(){if(null==p){const e=(0,i.getSnappy)();if("kModuleError"in e)throw e.kModuleError;p=e}return p}async function m(e,r){if(e!==t.Compressor.snappy&&e!==t.Compressor.zstd&&e!==t.Compressor.zlib&&e!==t.Compressor.none)throw new u.MongoDecompressionError(`Server sent message compressed using an unsupported compressor. (Received compressor ID ${e})`);switch(e){case t.Compressor.snappy:return p??=f(),await p.uncompress(r,{asBuffer:!0});case t.Compressor.zstd:if(g(),"kModuleError"in d)throw d.kModuleError;return await d.decompress(r);case t.Compressor.zlib:return await l(r);default:return r}}function g(){d||(d=(0,i.getZstdLibrary)())}t.compress=async function(e,t){const r={};switch(e.agreedCompressor){case"snappy":return p??=f(),await p.compress(t);case"zstd":if(g(),"kModuleError"in d)throw d.kModuleError;return await d.compress(t,3);case"zlib":return e.zlibCompressionLevel&&(r.level=e.zlibCompressionLevel),await h(t,r);default:throw new u.MongoInvalidArgumentError(`Unknown compressor ${e.agreedCompressor} failed to compress`)}},t.decompress=m,t.compressCommand=async function(e,t){const r="none"!==t.agreedCompressor&&a.OpCompressedRequest.canCompress(e)?new a.OpCompressedRequest(e,{agreedCompressor:t.agreedCompressor??"none",zlibCompressionLevel:t.zlibCompressionLevel??0}):e,n=await r.toBin();return Buffer.concat(n)},t.decompressResponse=async function(e){const t={length:e.readInt32LE(0),requestId:e.readInt32LE(4),responseTo:e.readInt32LE(8),opCode:e.readInt32LE(12)};if(t.opCode!==c.OP_COMPRESSED){const r=t.opCode===c.OP_MSG?a.OpMsgResponse:a.OpReply,n=e.subarray(16);return new r(e,t,n)}const r={...t,fromCompressed:!0,opCode:e.readInt32LE(16),length:e.readInt32LE(20)},n=e[24],o=e.slice(25),s=r.opCode===c.OP_MSG?a.OpMsgResponse:a.OpReply,i=await m(n,o);if(i.length!==r.length)throw new u.MongoDecompressionError("Message body and message header must be the same length");return new s(e,r,i)}},9826:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OP_MSG=t.OP_COMPRESSED=t.OP_DELETE=t.OP_QUERY=t.OP_INSERT=t.OP_UPDATE=t.OP_REPLY=t.MIN_SUPPORTED_QE_SERVER_VERSION=t.MIN_SUPPORTED_QE_WIRE_VERSION=t.MAX_SUPPORTED_WIRE_VERSION=t.MIN_SUPPORTED_WIRE_VERSION=t.MAX_SUPPORTED_SERVER_VERSION=t.MIN_SUPPORTED_SERVER_VERSION=void 0,t.MIN_SUPPORTED_SERVER_VERSION="3.6",t.MAX_SUPPORTED_SERVER_VERSION="7.0",t.MIN_SUPPORTED_WIRE_VERSION=6,t.MAX_SUPPORTED_WIRE_VERSION=21,t.MIN_SUPPORTED_QE_WIRE_VERSION=21,t.MIN_SUPPORTED_QE_SERVER_VERSION="7.0",t.OP_REPLY=1,t.OP_UPDATE=2001,t.OP_INSERT=2002,t.OP_QUERY=2004,t.OP_DELETE=2006,t.OP_COMPRESSED=2012,t.OP_MSG=2013},4465:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.onData=void 0;const n=r(407);t.onData=function(e){const t=new n.List,r=new n.List;let o=null,s=!1;const i={next(){const e=t.shift();if(null!=e)return Promise.resolve({value:e,done:!1});if(null!=o){const e=Promise.reject(o);return o=null,e}if(s)return c();const{promise:i,resolve:u,reject:a}=(0,n.promiseWithResolvers)();return r.push({resolve:u,reject:a}),i},return:()=>c(),throw:e=>(a(e),Promise.resolve({value:void 0,done:!0})),[Symbol.asyncIterator](){return this}};return e.on("data",u),e.on("error",a),i;function u(e){const n=r.shift();null!=n?n.resolve({value:e,done:!1}):t.push(e)}function a(e){const t=r.shift();null!=t?t.reject(e):o=e,c()}function c(){e.off("data",u),e.off("error",a),s=!0;const t={value:void 0,done:s};for(const e of r)e.resolve(t);return Promise.resolve(t)}}},3395:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OnDemandDocument=void 0;const n=r(5638);class o{constructor(e,t=0,r=!1){this.bson=e,this.offset=t,this.isArray=r,this.cache=Object.create(null),this.indexFound=Object.create(null),this.elements=(0,n.parseToElementsToArray)(this.bson,t)}isElementName(e,t){const r=t[2],n=t[1];if(e.length!==r)return!1;for(let t=0;t<e.length;t++)if(this.bson[n+t]!==e.charCodeAt(t))return!1;return!0}getElement(e){const t=this.cache[e];if(!1===t)return null;if(null!=t)return t;if("number"==typeof e){if(this.isArray){if(e<this.elements.length){const t={element:this.elements[e],value:void 0};return this.cache[e]=t,this.indexFound[e]=!0,t}return null}return null}for(let t=0;t<this.elements.length;t++){const r=this.elements[t];if(!this.indexFound[t]&&this.isElementName(e,r)){const n={element:r,value:void 0};return this.cache[e]=n,this.indexFound[t]=!0,n}}return this.cache[e]=!1,null}toJSValue(e,t){const r=e[0],s=e[3],i=e[4];if(t!==r)return null;switch(t){case n.BSONType.null:case n.BSONType.undefined:return null;case n.BSONType.double:return(0,n.getFloat64LE)(this.bson,s);case n.BSONType.int:return(0,n.getInt32LE)(this.bson,s);case n.BSONType.long:return(0,n.getBigInt64LE)(this.bson,s);case n.BSONType.bool:return Boolean(this.bson[s]);case n.BSONType.objectId:return new n.ObjectId(this.bson.subarray(s,s+12));case n.BSONType.timestamp:return new n.Timestamp((0,n.getBigInt64LE)(this.bson,s));case n.BSONType.string:return(0,n.toUTF8)(this.bson,s+4,s+i-1,!1);case n.BSONType.binData:{const e=(0,n.getInt32LE)(this.bson,s),t=this.bson[s+4];if(2===t){const t=(0,n.getInt32LE)(this.bson,s+1+4);if(t<0)throw new n.BSONError("Negative binary type element size found for subtype 0x02");if(t>e-4)throw new n.BSONError("Binary type with subtype 0x02 contains too long binary size");if(t<e-4)throw new n.BSONError("Binary type with subtype 0x02 contains too short binary size");return new n.Binary(this.bson.subarray(s+1+4+4,s+1+4+4+t),2)}return new n.Binary(this.bson.subarray(s+1+4,s+1+4+e),t)}case n.BSONType.date:return new Date(Number((0,n.getBigInt64LE)(this.bson,s)));case n.BSONType.object:return new o(this.bson,s);case n.BSONType.array:return new o(this.bson,s,!0);default:throw new n.BSONError(`Unsupported BSON type: ${t}`)}}size(){return this.elements.length}has(e){const t=this.cache[e];return!1!==t&&(null!=t||null!=this.getElement(e))}get(e,t,r){const o=this.getElement(e);if(null==o){if(!0===r)throw new n.BSONError(`BSON element "${e}" is missing`);return null}if(null==o.value){const s=this.toJSValue(o.element,t);if(null==s){if(!0===r)throw new n.BSONError(`BSON element "${e}" is missing`);return null}o.value=s}return o.value}getNumber(e,t){const r=this.get(e,n.BSONType.bool),o=null==r?null:r?1:0,s=this.get(e,n.BSONType.long),i=null==s?null:Number(s),u=o??i??this.get(e,n.BSONType.int)??this.get(e,n.BSONType.double);if(!0===t&&null==u)throw new n.BSONError(`BSON element "${e}" is missing`);return u}toObject(e){return n.BSON.deserialize(this.bson,{...e,index:this.offset,allowObjectSmallerThanBufferSize:!0})}toBytes(){const e=(0,n.getInt32LE)(this.bson,this.offset);return this.bson.subarray(this.offset,this.offset+e)}}t.OnDemandDocument=o},7783:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CursorResponse=t.MongoDBResponse=t.isErrorResponse=void 0;const n=r(5638),o=r(6372),s=r(407),i=r(3395);t.isErrorResponse=function(e){const t=(0,n.parseToElementsToArray)(e,0);for(let r=0;r<t.length;r++){const n=t[r];if(2===n[2]){const t=n[1];if(111===e[t]&&107===e[t+1]){const t=n[3],r=n[4];for(let n=t;n<t+r;n++)if(0!==e[n])return!1;return!0}}}return!0};class u extends i.OnDemandDocument{static is(e){return e instanceof u}get isError(){let e=0===this.ok;return e||=this.has("errmsg"),e||=this.has("code"),e||=this.has("$err"),e}get recoveryToken(){return this.get("recoveryToken",n.BSONType.object)?.toObject({promoteValues:!1,promoteLongs:!1,promoteBuffers:!1})??null}get atClusterTime(){return this.get("cursor",n.BSONType.object)?.get("atClusterTime",n.BSONType.timestamp)??this.get("atClusterTime",n.BSONType.timestamp)}get operationTime(){return this.get("operationTime",n.BSONType.timestamp)}get ok(){return this.getNumber("ok")?1:0}get $err(){return this.get("$err",n.BSONType.string)}get errmsg(){return this.get("errmsg",n.BSONType.string)}get code(){return this.getNumber("code")}get $clusterTime(){if(!("clusterTime"in this)){const e=this.get("$clusterTime",n.BSONType.object);if(null==e)return this.clusterTime=null,null;const t=e.get("clusterTime",n.BSONType.timestamp,!0),r=e.get("signature",n.BSONType.object)?.toObject();this.clusterTime={clusterTime:t,signature:r}}return this.clusterTime??null}toObject(e){const t={useBigInt64:e?.useBigInt64,promoteLongs:e?.promoteLongs,promoteValues:e?.promoteValues,promoteBuffers:e?.promoteBuffers,bsonRegExp:e?.bsonRegExp,raw:e?.raw??!1,fieldsAsRaw:e?.fieldsAsRaw??{},validation:this.parseBsonSerializationOptions(e)};return super.toObject(t)}parseBsonSerializationOptions(e){const t=e?.enableUtf8Validation;return!1===t?{utf8:!1}:{utf8:{writeErrors:!1}}}}u.empty=new u(new Uint8Array([13,0,0,0,16,111,107,0,1,0,0,0,0])),t.MongoDBResponse=u;class a extends u{static is(e){return e instanceof a||e===a.emptyGetMore}constructor(e,t,r){super(e,t,r),this.ns=null,this.batchSize=0,this.iterated=0;const i=this.get("cursor",n.BSONType.object,!0),u=i.get("id",n.BSONType.long,!0);this.id=new n.Long(Number(0xffffffffn&u),Number(u>>32n&0xffffffffn));const a=i.get("ns",n.BSONType.string);if(null!=a&&(this.ns=(0,s.ns)(a)),i.has("firstBatch"))this.batch=i.get("firstBatch",n.BSONType.array,!0);else{if(!i.has("nextBatch"))throw new o.MongoUnexpectedServerResponseError("Cursor document did not contain a batch");this.batch=i.get("nextBatch",n.BSONType.array,!0)}this.batchSize=this.batch.size()}get length(){return Math.max(this.batchSize-this.iterated,0)}shift(e){if(this.iterated>=this.batchSize)return null;const t=this.batch.get(this.iterated,n.BSONType.object,!0)??null;return this.iterated+=1,e?.raw?t.toBytes():t.toObject(e)}clear(){this.iterated=this.batchSize}pushMany(){throw new Error("pushMany Unsupported method")}push(){throw new Error("push Unsupported method")}}a.emptyGetMore={id:new n.Long(0),length:0,shift:()=>null},t.CursorResponse=a},6234:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSharded=t.getReadPreference=void 0;const n=r(6372),o=r(6474),s=r(281),i=r(7796);t.getReadPreference=function(e){let t=e?.readPreference??o.ReadPreference.primary;if("string"==typeof t&&(t=o.ReadPreference.fromString(t)),!(t instanceof o.ReadPreference))throw new n.MongoInvalidArgumentError('Option "readPreference" must be a ReadPreference instance');return t},t.isSharded=function(e){return null!=e&&(!(!e.description||e.description.type!==s.ServerType.Mongos)||!!(e.description&&e.description instanceof i.TopologyDescription)&&Array.from(e.description.servers.values()).some((e=>e.type===s.ServerType.Mongos)))}},948:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Collection=void 0;const n=r(5638),o=r(1986),s=r(6835),i=r(5451),u=r(1888),a=r(383),c=r(303),l=r(4756),h=r(6372),d=r(6061),p=r(2374),f=r(5343),m=r(3618),g=r(253),E=r(3208),A=r(2331),y=r(3184),C=r(9061),S=r(1213),w=r(9252),b=r(1785),v=r(7937),O=r(1591),_=r(6101),B=r(2296),D=r(8196),T=r(1652),I=r(9875),F=r(6474),R=r(407),N=r(770);t.Collection=class{constructor(e,t,r){this.s={db:e,options:r,namespace:new R.MongoDBCollectionNamespace(e.databaseName,t),pkFactory:e.options?.pkFactory??R.DEFAULT_PK_FACTORY,readPreference:F.ReadPreference.fromOptions(r),bsonOptions:(0,n.resolveBSONOptions)(r,e),readConcern:I.ReadConcern.fromOptions(r),writeConcern:N.WriteConcern.fromOptions(r)},this.client=e.client}get dbName(){return this.s.namespace.db}get collectionName(){return this.s.namespace.collection}get namespace(){return this.fullNamespace.toString()}get fullNamespace(){return this.s.namespace}get readConcern(){return null==this.s.readConcern?this.s.db.readConcern:this.s.readConcern}get readPreference(){return null==this.s.readPreference?this.s.db.readPreference:this.s.readPreference}get bsonOptions(){return this.s.bsonOptions}get writeConcern(){return null==this.s.writeConcern?this.s.db.writeConcern:this.s.writeConcern}get hint(){return this.s.collectionHint}set hint(e){this.s.collectionHint=(0,R.normalizeHintField)(e)}async insertOne(e,t){return await(0,y.executeOperation)(this.client,new w.InsertOneOperation(this,e,(0,R.resolveOptions)(this,t)))}async insertMany(e,t){return await(0,y.executeOperation)(this.client,new w.InsertManyOperation(this,e,(0,R.resolveOptions)(this,t??{ordered:!0})))}async bulkWrite(e,t){if(!Array.isArray(e))throw new h.MongoInvalidArgumentError('Argument "operations" must be an array of documents');return await(0,y.executeOperation)(this.client,new d.BulkWriteOperation(this,e,(0,R.resolveOptions)(this,t??{ordered:!0})))}async updateOne(e,t,r){return await(0,y.executeOperation)(this.client,new T.UpdateOneOperation(this,e,t,(0,R.resolveOptions)(this,r)))}async replaceOne(e,t,r){return await(0,y.executeOperation)(this.client,new T.ReplaceOneOperation(this,e,t,(0,R.resolveOptions)(this,r)))}async updateMany(e,t,r){return await(0,y.executeOperation)(this.client,new T.UpdateManyOperation(this,e,t,(0,R.resolveOptions)(this,r)))}async deleteOne(e={},t={}){return await(0,y.executeOperation)(this.client,new m.DeleteOneOperation(this,e,(0,R.resolveOptions)(this,t)))}async deleteMany(e={},t={}){return await(0,y.executeOperation)(this.client,new m.DeleteManyOperation(this,e,(0,R.resolveOptions)(this,t)))}async rename(e,t){return await(0,y.executeOperation)(this.client,new O.RenameOperation(this,e,{...t,readPreference:F.ReadPreference.PRIMARY}))}async drop(e){return await(0,y.executeOperation)(this.client,new E.DropCollectionOperation(this.s.db,this.collectionName,e))}async findOne(e={},t={}){const r=this.find(e,t).limit(-1).batchSize(1),n=await r.next();return await r.close(),n}find(e={},t={}){return new a.FindCursor(this.client,this.s.namespace,e,(0,R.resolveOptions)(this,t))}async options(e){return await(0,y.executeOperation)(this.client,new v.OptionsOperation(this,(0,R.resolveOptions)(this,e)))}async isCapped(e){return await(0,y.executeOperation)(this.client,new b.IsCappedOperation(this,(0,R.resolveOptions)(this,e)))}async createIndex(e,t){return(await(0,y.executeOperation)(this.client,S.CreateIndexesOperation.fromIndexSpecification(this,this.collectionName,e,(0,R.resolveOptions)(this,t))))[0]}async createIndexes(e,t){return await(0,y.executeOperation)(this.client,S.CreateIndexesOperation.fromIndexDescriptionArray(this,this.collectionName,e,(0,R.resolveOptions)(this,{...t,maxTimeMS:void 0})))}async dropIndex(e,t){return await(0,y.executeOperation)(this.client,new S.DropIndexOperation(this,e,{...(0,R.resolveOptions)(this,t),readPreference:F.ReadPreference.primary}))}async dropIndexes(e){try{return await(0,y.executeOperation)(this.client,new S.DropIndexOperation(this,"*",(0,R.resolveOptions)(this,e))),!0}catch{return!1}}listIndexes(e){return new c.ListIndexesCursor(this,(0,R.resolveOptions)(this,e))}async indexExists(e,t){const r=Array.isArray(e)?e:[e],n=new Set(await this.listIndexes(t).map((({name:e})=>e)).toArray());return r.every((e=>n.has(e)))}async indexInformation(e){return await this.indexes({...e,full:e?.full??!1})}async estimatedDocumentCount(e){return await(0,y.executeOperation)(this.client,new A.EstimatedDocumentCountOperation(this,(0,R.resolveOptions)(this,e)))}async countDocuments(e={},t={}){return await(0,y.executeOperation)(this.client,new f.CountDocumentsOperation(this,e,(0,R.resolveOptions)(this,t)))}async distinct(e,t={},r={}){return await(0,y.executeOperation)(this.client,new g.DistinctOperation(this,e,t,(0,R.resolveOptions)(this,r)))}async indexes(e){const t=await this.listIndexes(e).toArray();return e?.full??1?t:Object.fromEntries(t.map((({name:e,key:t})=>[e,Object.entries(t)])))}async findOneAndDelete(e,t){return await(0,y.executeOperation)(this.client,new C.FindOneAndDeleteOperation(this,e,(0,R.resolveOptions)(this,t)))}async findOneAndReplace(e,t,r){return await(0,y.executeOperation)(this.client,new C.FindOneAndReplaceOperation(this,e,t,(0,R.resolveOptions)(this,r)))}async findOneAndUpdate(e,t,r){return await(0,y.executeOperation)(this.client,new C.FindOneAndUpdateOperation(this,e,t,(0,R.resolveOptions)(this,r)))}aggregate(e=[],t){if(!Array.isArray(e))throw new h.MongoInvalidArgumentError('Argument "pipeline" must be an array of aggregation stages');return new u.AggregationCursor(this.client,this.s.namespace,e,(0,R.resolveOptions)(this,t))}watch(e=[],t={}){return Array.isArray(e)||(t=e,e=[]),new i.ChangeStream(this,e,(0,R.resolveOptions)(this,t))}initializeUnorderedBulkOp(e){return new s.UnorderedBulkOperation(this,(0,R.resolveOptions)(this,e))}initializeOrderedBulkOp(e){return new o.OrderedBulkOperation(this,(0,R.resolveOptions)(this,e))}async count(e={},t={}){return await(0,y.executeOperation)(this.client,new p.CountOperation(this.fullNamespace,e,(0,R.resolveOptions)(this,t)))}listSearchIndexes(e,t){t="object"==typeof e?e:null==t?{}:t;const r=null==e||"object"==typeof e?null:e;return new l.ListSearchIndexesCursor(this,r,t)}async createSearchIndex(e){const[t]=await this.createSearchIndexes([e]);return t}async createSearchIndexes(e){return await(0,y.executeOperation)(this.client,new _.CreateSearchIndexesOperation(this,e))}async dropSearchIndex(e){return await(0,y.executeOperation)(this.client,new B.DropSearchIndexOperation(this,e))}async updateSearchIndex(e,t){return await(0,y.executeOperation)(this.client,new D.UpdateSearchIndexOperation(this,e,t))}}},8266:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FEATURE_FLAGS=t.DEFAULT_OPTIONS=t.OPTIONS=t.parseOptions=t.resolveSRVRecord=void 0;const n=r(2250),o=r(1101),s=r(7016),i=r(3416),u=r(3387),a=r(5377),c=r(6377),l=r(3568),h=r(6372),d=r(6622),p=r(2973),f=r(9875),m=r(6474),g=r(3660),E=r(407),A=r(770),y=["authSource","replicaSet","loadBalanced"];function C(e,t){if("boolean"==typeof t)return t;switch(t){case"true":return!0;case"false":return!1;default:throw new h.MongoParseError(`${e} must be either "true" or "false"`)}}function S(e,t){const r=(0,E.parseInteger)(t);if(null!=r)return r;throw new h.MongoParseError(`Expected ${e} to be stringified int value, got: ${t}`)}function w(e,t){const r=S(e,t);if(r<0)throw new h.MongoParseError(`${e} can only be a positive int value, got: ${t}`);return r}function*b(e){if(""===e)return;const t=e.split(",");for(const e of t){const[t,r]=e.split(/:(.*)/);if(null==r)throw new h.MongoParseError("Cannot have undefined values in key value pairs");yield[t,r]}}t.resolveSRVRecord=async function(e){if("string"!=typeof e.srvHost)throw new h.MongoAPIError('Option "srvHost" must not be empty');if(e.srvHost.split(".").length<3)throw new h.MongoAPIError("URI must include hostname, domain name, and tld");const t=e.srvHost,r=n.promises.resolveTxt(t);r.then(void 0,E.squashError);const o=await n.promises.resolveSrv(`_${e.srvServiceName}._tcp.${t}`);if(0===o.length)throw new h.MongoAPIError("No addresses found at host");for(const{name:e}of o)if(!(0,E.matchesParentDomain)(e,t))throw new h.MongoAPIError("Server record does not share hostname with parent URI");const a=o.map((e=>E.HostAddress.fromString(`${e.name}:${e.port??27017}`)));let c;O(a,e,!0);try{c=await r}catch(e){if("ENODATA"!==e.code&&"ENOTFOUND"!==e.code)throw e;return a}if(c.length>1)throw new h.MongoParseError("Multiple text records not allowed");const l=new s.URLSearchParams(c[0].join(""));if([...l.keys()].some((e=>!y.includes(e))))throw new h.MongoParseError(`Text record may only set any of: ${y.join(", ")}`);if(y.some((e=>""===l.get(e))))throw new h.MongoParseError("Cannot have empty URI params in DNS TXT Record");const d=l.get("authSource")??void 0,p=l.get("replicaSet")??void 0,f=l.get("loadBalanced")??void 0;if(!e.userSpecifiedAuthSource&&d&&e.credentials&&!u.AUTH_MECHS_AUTH_SRC_EXTERNAL.has(e.credentials.mechanism)&&(e.credentials=i.MongoCredentials.merge(e.credentials,{source:d})),!e.userSpecifiedReplicaSet&&p&&(e.replicaSet=p),"true"===f&&(e.loadBalanced=!0),e.replicaSet&&e.srvMaxHosts>0)throw new h.MongoParseError("Cannot combine replicaSet option with srvMaxHosts");return O(a,e,!0),a};class v extends Map{constructor(e=[]){super(e.map((([e,t])=>[e.toLowerCase(),t])))}has(e){return super.has(e.toLowerCase())}get(e){return super.get(e.toLowerCase())}set(e,t){return super.set(e.toLowerCase(),t)}delete(e){return super.delete(e.toLowerCase())}}function O(e,t,r){if(t.loadBalanced){if(e.length>1)throw new h.MongoParseError("loadBalanced option only supported with a single host in the URI");if(t.replicaSet)throw new h.MongoParseError("loadBalanced option not supported with a replicaSet option");if(t.directConnection)throw new h.MongoParseError("loadBalanced option not supported when directConnection is provided");if(r&&t.srvMaxHosts>0)throw new h.MongoParseError("Cannot limit srv hosts with loadBalanced enabled")}}function _(e,t,r,n){const{target:o,type:s,transform:i}=r,u=o??t;switch(s){case"boolean":e[u]=C(u,n[0]);break;case"int":e[u]=S(u,n[0]);break;case"uint":e[u]=w(u,n[0]);break;case"string":if(null==n[0])break;e[u]=String(n[0]);break;case"record":if(!(0,E.isRecord)(n[0]))throw new h.MongoParseError(`${u} must be an object`);e[u]=n[0];break;case"any":e[u]=n[0];break;default:{if(!i)throw new h.MongoParseError("Descriptors missing a type must define a transform");const t=i({name:u,options:e,values:n});e[u]=t;break}}}t.parseOptions=function(e,r=void 0,n={}){if(null==r||r instanceof d.MongoClient||(n=r,r=void 0),n.useBigInt64&&"boolean"==typeof n.promoteLongs&&!n.promoteLongs)throw new h.MongoAPIError("Must request either bigint or Long for int64 deserialization");if(n.useBigInt64&&"boolean"==typeof n.promoteValues&&!n.promoteValues)throw new h.MongoAPIError("Must request either bigint or Long for int64 deserialization");const s=new o.default(e),{hosts:c,isSRV:f}=s,m=Object.create(null);for(const e of Object.getOwnPropertySymbols(n))t.FEATURE_FLAGS.has(e)&&(m[e]=n[e]);m.hosts=f?[]:c.map(E.HostAddress.fromString);const g=new v;if("/"!==s.pathname&&""!==s.pathname){const e=decodeURIComponent("/"===s.pathname[0]?s.pathname.slice(1):s.pathname);e&&g.set("dbName",[e])}if(""!==s.username){const e={username:decodeURIComponent(s.username)};"string"==typeof s.password&&(e.password=decodeURIComponent(s.password)),g.set("auth",[e])}for(const e of s.searchParams.keys()){const t=s.searchParams.getAll(e),r=/readPreferenceTags/i.test(e);if(!r&&t.length>1)throw new h.MongoInvalidArgumentError(`URI option "${e}" cannot appear more than once in the connection string`);if(!r&&t.includes(""))throw new h.MongoAPIError(`URI option "${e}" cannot be specified with no value`);g.has(e)||g.set(e,t)}const A=new v(Object.entries(n).filter((([,e])=>null!=e)));if(g.has("serverApi"))throw new h.MongoParseError("URI cannot contain `serverApi`, it can only be passed to the client");const y=g.get("authMechanismProperties");if(y)for(const e of y)if(/(^|,)ALLOWED_HOSTS:/.test(e))throw new h.MongoParseError("Auth mechanism property ALLOWED_HOSTS is not allowed in the connection string.");if(A.has("loadBalanced"))throw new h.MongoParseError("loadBalanced is only a valid option in the URI");const S=new v,w=new Set([...g.keys(),...A.keys()]);for(const e of w){const t=[],r=A.get(e);null!=r&&t.push(r);const n=g.get(e)??[];t.push(...n),S.set(e,t)}if(S.has("tls")||S.has("ssl")){const e=(S.get("tls")||[]).concat(S.get("ssl")||[]).map(C.bind(null,"tls/ssl"));if(1!==new Set(e).size)throw new h.MongoParseError("All values of tls/ssl must be the same.")}!function(e){if(!e)return;const t=(t,r)=>{if(e.has(t)&&e.has(r))throw new h.MongoAPIError(`The '${t}' option cannot be used with the '${r}' option`)};t("tlsInsecure","tlsAllowInvalidCertificates"),t("tlsInsecure","tlsAllowInvalidHostnames"),t("tlsInsecure","tlsDisableCertificateRevocationCheck"),t("tlsInsecure","tlsDisableOCSPEndpointCheck"),t("tlsAllowInvalidCertificates","tlsDisableCertificateRevocationCheck"),t("tlsAllowInvalidCertificates","tlsDisableOCSPEndpointCheck"),t("tlsDisableCertificateRevocationCheck","tlsDisableOCSPEndpointCheck")}(S);const b=(0,E.setDifference)(w,Array.from(Object.keys(t.OPTIONS)).map((e=>e.toLowerCase())));if(0!==b.size){const e=b.size>1?"options":"option",t=b.size>1?"are":"is";throw new h.MongoParseError(`${e} ${Array.from(b).join(", ")} ${t} not supported`)}for(const[e,r]of Object.entries(t.OPTIONS)){const n=S.get(e);if(n&&0!==n.length){const{deprecated:t}=r;if(t){const r="string"==typeof t?`: ${t}`:"";(0,E.emitWarning)(`${e} is a deprecated option${r}`)}_(m,e,r,n)}else t.DEFAULT_OPTIONS.has(e)&&_(m,e,r,[t.DEFAULT_OPTIONS.get(e)])}if(m.credentials){const e=m.credentials.mechanism===u.AuthMechanism.MONGODB_GSSAPI,t=m.credentials.mechanism===u.AuthMechanism.MONGODB_X509,r=m.credentials.mechanism===u.AuthMechanism.MONGODB_AWS,n=m.credentials.mechanism===u.AuthMechanism.MONGODB_OIDC;if((e||t)&&S.has("authSource")&&"$external"!==m.credentials.source)throw new h.MongoParseError(`authMechanism ${m.credentials.mechanism} requires an authSource of '$external'`);if(e||t||r||n||!m.dbName||S.has("authSource")||(m.credentials=i.MongoCredentials.merge(m.credentials,{source:m.dbName})),r&&m.credentials.username&&!m.credentials.password)throw new h.MongoMissingCredentialsError(`When using ${m.credentials.mechanism} password must be set when a username is specified`);m.credentials.validate(),""===m.credentials.password&&""===m.credentials.username&&m.credentials.mechanism===u.AuthMechanism.MONGODB_DEFAULT&&0===Object.keys(m.credentials.mechanismProperties).length&&delete m.credentials}if(m.dbName||(m.dbName="test"),O(c,m,f),r&&m.autoEncryption&&(l.Encrypter.checkForMongoCrypt(),m.encrypter=new l.Encrypter(r,e,n),m.autoEncrypter=m.encrypter.autoEncrypter),m.userSpecifiedAuthSource=A.has("authSource")||g.has("authSource"),m.userSpecifiedReplicaSet=A.has("replicaSet")||g.has("replicaSet"),f){if(m.srvHost=c[0],m.directConnection)throw new h.MongoAPIError("SRV URI does not support directConnection");if(m.srvMaxHosts>0&&"string"==typeof m.replicaSet)throw new h.MongoParseError("Cannot use srvMaxHosts option with replicaSet");const e=!A.has("tls")&&!g.has("tls"),t=!A.has("ssl")&&!g.has("ssl");e&&t&&(m.tls=!0)}else if(g.has("srvMaxHosts")||A.has("srvMaxHosts")||g.has("srvServiceName")||A.has("srvServiceName"))throw new h.MongoParseError("Cannot use srvMaxHosts or srvServiceName with a non-srv connection string");if(m.directConnection&&1!==m.hosts.length)throw new h.MongoParseError("directConnection option requires exactly one host");if(!m.proxyHost&&(m.proxyPort||m.proxyUsername||m.proxyPassword))throw new h.MongoParseError("Must specify proxyHost if other proxy options are passed");if(m.proxyUsername&&!m.proxyPassword||!m.proxyUsername&&m.proxyPassword)throw new h.MongoParseError("Can only specify both of proxy username/password or neither");if(["proxyHost","proxyPort","proxyUsername","proxyPassword"].map((e=>g.get(e)??[])).some((e=>e.length>1)))throw new h.MongoParseError("Proxy options cannot be specified multiple times in the connection string");const B=Symbol.for("@@mdb.enableMongoLogger");m[B]=m[B]??!1;let D={},T={};return m[B]&&(D={MONGODB_LOG_COMMAND:process.env.MONGODB_LOG_COMMAND,MONGODB_LOG_TOPOLOGY:process.env.MONGODB_LOG_TOPOLOGY,MONGODB_LOG_SERVER_SELECTION:process.env.MONGODB_LOG_SERVER_SELECTION,MONGODB_LOG_CONNECTION:process.env.MONGODB_LOG_CONNECTION,MONGODB_LOG_CLIENT:process.env.MONGODB_LOG_CLIENT,MONGODB_LOG_ALL:process.env.MONGODB_LOG_ALL,MONGODB_LOG_MAX_DOCUMENT_LENGTH:process.env.MONGODB_LOG_MAX_DOCUMENT_LENGTH,MONGODB_LOG_PATH:process.env.MONGODB_LOG_PATH,...m[Symbol.for("@@mdb.internalLoggerConfig")]},T={mongodbLogPath:m.mongodbLogPath,mongodbLogComponentSeverities:m.mongodbLogComponentSeverities,mongodbLogMaxDocumentLength:m.mongodbLogMaxDocumentLength}),m.mongoLoggerOptions=p.MongoLogger.resolveOptions(D,T),m.metadata=(0,a.makeClientMetadata)(m),m.extendedMetadata=(0,a.addContainerMetadata)(m.metadata).then(void 0,E.squashError),m},t.OPTIONS={appName:{type:"string"},auth:{target:"credentials",transform({name:e,options:t,values:[r]}){if(!(0,E.isRecord)(r,["username","password"]))throw new h.MongoParseError(`${e} must be an object with 'username' and 'password' properties`);return i.MongoCredentials.merge(t.credentials,{username:r.username,password:r.password})}},authMechanism:{target:"credentials",transform({options:e,values:[t]}){const r=Object.values(u.AuthMechanism),[n]=r.filter((e=>e.match(RegExp(String.raw`\b${t}\b`,"i"))));if(!n)throw new h.MongoParseError(`authMechanism one of ${r}, got ${t}`);let o=e.credentials?.source;(n===u.AuthMechanism.MONGODB_PLAIN||u.AUTH_MECHS_AUTH_SRC_EXTERNAL.has(n))&&(o="$external");let s=e.credentials?.password;return n===u.AuthMechanism.MONGODB_X509&&""===s&&(s=void 0),i.MongoCredentials.merge(e.credentials,{mechanism:n,source:o,password:s})}},authMechanismProperties:{target:"credentials",transform({options:e,values:t}){let r=Object.create(null);for(const e of t)if("string"==typeof e)for(const[t,n]of b(e))try{r[t]=C(t,n)}catch{r[t]=n}else{if(!(0,E.isRecord)(e))throw new h.MongoParseError("AuthMechanismProperties must be an object");r={...e}}return i.MongoCredentials.merge(e.credentials,{mechanismProperties:r})}},authSource:{target:"credentials",transform({options:e,values:[t]}){const r=String(t);return i.MongoCredentials.merge(e.credentials,{source:r})}},autoEncryption:{type:"record"},bsonRegExp:{type:"boolean"},serverApi:{target:"serverApi",transform({values:[e]}){const t="string"==typeof e?{version:e}:e,r=t&&t.version;if(!r)throw new h.MongoParseError(`Invalid \`serverApi\` property; must specify a version from the following enum: ["${Object.values(d.ServerApiVersion).join('", "')}"]`);if(!Object.values(d.ServerApiVersion).some((e=>e===r)))throw new h.MongoParseError(`Invalid server API version=${r}; must be in the following enum: ["${Object.values(d.ServerApiVersion).join('", "')}"]`);return t}},checkKeys:{type:"boolean"},compressors:{default:"none",target:"compressors",transform({values:e}){const t=new Set;for(const r of e){const e="string"==typeof r?r.split(","):r;if(!Array.isArray(e))throw new h.MongoInvalidArgumentError("compressors must be an array or a comma-delimited list of strings");for(const r of e){if(!Object.keys(c.Compressor).includes(String(r)))throw new h.MongoInvalidArgumentError(`${r} is not a valid compression mechanism. Must be one of: ${Object.keys(c.Compressor)}.`);t.add(String(r))}}return[...t]}},connectTimeoutMS:{default:3e4,type:"uint"},dbName:{type:"string"},directConnection:{default:!1,type:"boolean"},driverInfo:{default:{},type:"record"},enableUtf8Validation:{type:"boolean",default:!0},family:{transform({name:e,values:[t]}){const r=S(e,t);if(4===r||6===r)return r;throw new h.MongoParseError(`Option 'family' must be 4 or 6 got ${r}.`)}},fieldsAsRaw:{type:"record"},forceServerObjectId:{default:!1,type:"boolean"},fsync:{deprecated:"Please use journal instead",target:"writeConcern",transform({name:e,options:t,values:[r]}){const n=A.WriteConcern.fromOptions({writeConcern:{...t.writeConcern,fsync:C(e,r)}});if(!n)throw new h.MongoParseError(`Unable to make a writeConcern from fsync=${r}`);return n}},heartbeatFrequencyMS:{default:1e4,type:"uint"},ignoreUndefined:{type:"boolean"},j:{deprecated:"Please use journal instead",target:"writeConcern",transform({name:e,options:t,values:[r]}){const n=A.WriteConcern.fromOptions({writeConcern:{...t.writeConcern,journal:C(e,r)}});if(!n)throw new h.MongoParseError(`Unable to make a writeConcern from journal=${r}`);return n}},journal:{target:"writeConcern",transform({name:e,options:t,values:[r]}){const n=A.WriteConcern.fromOptions({writeConcern:{...t.writeConcern,journal:C(e,r)}});if(!n)throw new h.MongoParseError(`Unable to make a writeConcern from journal=${r}`);return n}},loadBalanced:{default:!1,type:"boolean"},localThresholdMS:{default:15,type:"uint"},maxConnecting:{default:2,transform({name:e,values:[t]}){const r=w(e,t);if(0===r)throw new h.MongoInvalidArgumentError("maxConnecting must be > 0 if specified");return r}},maxIdleTimeMS:{default:0,type:"uint"},maxPoolSize:{default:100,type:"uint"},maxStalenessSeconds:{target:"readPreference",transform({name:e,options:t,values:[r]}){const n=w(e,r);return t.readPreference?m.ReadPreference.fromOptions({readPreference:{...t.readPreference,maxStalenessSeconds:n}}):new m.ReadPreference("secondary",void 0,{maxStalenessSeconds:n})}},minInternalBufferSize:{type:"uint"},minPoolSize:{default:0,type:"uint"},minHeartbeatFrequencyMS:{default:500,type:"uint"},monitorCommands:{default:!1,type:"boolean"},name:{target:"driverInfo",transform:({values:[e],options:t})=>({...t.driverInfo,name:String(e)})},noDelay:{default:!0,type:"boolean"},pkFactory:{default:E.DEFAULT_PK_FACTORY,transform({values:[e]}){if((0,E.isRecord)(e,["createPk"])&&"function"==typeof e.createPk)return e;throw new h.MongoParseError(`Option pkFactory must be an object with a createPk function, got ${e}`)}},promoteBuffers:{type:"boolean"},promoteLongs:{type:"boolean"},promoteValues:{type:"boolean"},useBigInt64:{type:"boolean"},proxyHost:{type:"string"},proxyPassword:{type:"string"},proxyPort:{type:"uint"},proxyUsername:{type:"string"},raw:{default:!1,type:"boolean"},readConcern:{transform({values:[e],options:t}){if(e instanceof f.ReadConcern||(0,E.isRecord)(e,["level"]))return f.ReadConcern.fromOptions({...t.readConcern,...e});throw new h.MongoParseError(`ReadConcern must be an object, got ${JSON.stringify(e)}`)}},readConcernLevel:{target:"readConcern",transform:({values:[e],options:t})=>f.ReadConcern.fromOptions({...t.readConcern,level:e})},readPreference:{default:m.ReadPreference.primary,transform({values:[e],options:t}){if(e instanceof m.ReadPreference)return m.ReadPreference.fromOptions({readPreference:{...t.readPreference,...e},...e});if((0,E.isRecord)(e,["mode"])){const r=m.ReadPreference.fromOptions({readPreference:{...t.readPreference,...e},...e});if(r)return r;throw new h.MongoParseError(`Cannot make read preference from ${JSON.stringify(e)}`)}if("string"==typeof e){const r={hedge:t.readPreference?.hedge,maxStalenessSeconds:t.readPreference?.maxStalenessSeconds};return new m.ReadPreference(e,t.readPreference?.tags,r)}throw new h.MongoParseError(`Unknown ReadPreference value: ${e}`)}},readPreferenceTags:{target:"readPreference",transform({values:e,options:t}){const r=Array.isArray(e[0])?e[0]:e,n=[];for(const e of r){const t=Object.create(null);if("string"==typeof e)for(const[r,n]of b(e))t[r]=n;if((0,E.isRecord)(e))for(const[r,n]of Object.entries(e))t[r]=n;n.push(t)}return m.ReadPreference.fromOptions({readPreference:t.readPreference,readPreferenceTags:n})}},replicaSet:{type:"string"},retryReads:{default:!0,type:"boolean"},retryWrites:{default:!0,type:"boolean"},serializeFunctions:{type:"boolean"},serverMonitoringMode:{default:"auto",transform({values:[e]}){if(!Object.values(g.ServerMonitoringMode).includes(e))throw new h.MongoParseError("serverMonitoringMode must be one of `auto`, `poll`, or `stream`");return e}},serverSelectionTimeoutMS:{default:3e4,type:"uint"},servername:{type:"string"},socketTimeoutMS:{default:0,type:"uint"},srvMaxHosts:{type:"uint",default:0},srvServiceName:{type:"string",default:"mongodb"},ssl:{target:"tls",type:"boolean"},timeoutMS:{type:"uint"},tls:{type:"boolean"},tlsAllowInvalidCertificates:{target:"rejectUnauthorized",transform:({name:e,values:[t]})=>!C(e,t)},tlsAllowInvalidHostnames:{target:"checkServerIdentity",transform:({name:e,values:[t]})=>C(e,t)?()=>{}:void 0},tlsCAFile:{type:"string"},tlsCRLFile:{type:"string"},tlsCertificateKeyFile:{type:"string"},tlsCertificateKeyFilePassword:{target:"passphrase",type:"any"},tlsInsecure:{transform({name:e,options:t,values:[r]}){const n=C(e,r);return n?(t.checkServerIdentity=()=>{},t.rejectUnauthorized=!1):(t.checkServerIdentity=t.tlsAllowInvalidHostnames?()=>{}:void 0,t.rejectUnauthorized=!t.tlsAllowInvalidCertificates),n}},w:{target:"writeConcern",transform:({values:[e],options:t})=>A.WriteConcern.fromOptions({writeConcern:{...t.writeConcern,w:e}})},waitQueueTimeoutMS:{default:0,type:"uint"},writeConcern:{target:"writeConcern",transform({values:[e],options:t}){if((0,E.isRecord)(e)||e instanceof A.WriteConcern)return A.WriteConcern.fromOptions({writeConcern:{...t.writeConcern,...e}});if("majority"===e||"number"==typeof e)return A.WriteConcern.fromOptions({writeConcern:{...t.writeConcern,w:e}});throw new h.MongoParseError(`Invalid WriteConcern cannot parse: ${JSON.stringify(e)}`)}},wtimeout:{deprecated:"Please use wtimeoutMS instead",target:"writeConcern",transform({values:[e],options:t}){const r=A.WriteConcern.fromOptions({writeConcern:{...t.writeConcern,wtimeout:w("wtimeout",e)}});if(r)return r;throw new h.MongoParseError("Cannot make WriteConcern from wtimeout")}},wtimeoutMS:{target:"writeConcern",transform({values:[e],options:t}){const r=A.WriteConcern.fromOptions({writeConcern:{...t.writeConcern,wtimeoutMS:w("wtimeoutMS",e)}});if(r)return r;throw new h.MongoParseError("Cannot make WriteConcern from wtimeout")}},zlibCompressionLevel:{default:0,type:"int"},connectionType:{type:"any"},srvPoller:{type:"any"},minDHSize:{type:"any"},pskCallback:{type:"any"},secureContext:{type:"any"},enableTrace:{type:"any"},requestCert:{type:"any"},rejectUnauthorized:{type:"any"},checkServerIdentity:{type:"any"},ALPNProtocols:{type:"any"},SNICallback:{type:"any"},session:{type:"any"},requestOCSP:{type:"any"},localAddress:{type:"any"},localPort:{type:"any"},hints:{type:"any"},lookup:{type:"any"},ca:{type:"any"},cert:{type:"any"},ciphers:{type:"any"},crl:{type:"any"},ecdhCurve:{type:"any"},key:{type:"any"},passphrase:{type:"any"},pfx:{type:"any"},secureProtocol:{type:"any"},index:{type:"any"},useNewUrlParser:{type:"boolean",deprecated:"useNewUrlParser has no effect since Node.js Driver version 4.0.0 and will be removed in the next major version"},useUnifiedTopology:{type:"boolean",deprecated:"useUnifiedTopology has no effect since Node.js Driver version 4.0.0 and will be removed in the next major version"},mongodbLogPath:{transform({values:[e]}){if(!("string"==typeof e&&["stderr","stdout"].includes(e)||e&&"object"==typeof e&&"write"in e&&"function"==typeof e.write))throw new h.MongoAPIError("Option 'mongodbLogPath' must be of type 'stderr' | 'stdout' | MongoDBLogWritable");return e}},mongodbLogComponentSeverities:{transform({values:[e]}){if("object"!=typeof e||!e)throw new h.MongoAPIError("Option 'mongodbLogComponentSeverities' must be a non-null object");for(const[t,r]of Object.entries(e)){if("string"!=typeof r||"string"!=typeof t)throw new h.MongoAPIError("User input for option 'mongodbLogComponentSeverities' object cannot include a non-string key or value");if(!Object.values(p.MongoLoggableComponent).some((e=>e===t))&&"default"!==t)throw new h.MongoAPIError(`User input for option 'mongodbLogComponentSeverities' contains invalid key: ${t}`);if(!Object.values(p.SeverityLevel).some((e=>e===r)))throw new h.MongoAPIError(`Option 'mongodbLogComponentSeverities' does not support ${r} as a value for ${t}`)}return e}},mongodbLogMaxDocumentLength:{type:"uint"}},t.DEFAULT_OPTIONS=new v(Object.entries(t.OPTIONS).filter((([,e])=>null!=e.default)).map((([e,t])=>[e,t.default]))),t.FEATURE_FLAGS=new Set([Symbol.for("@@mdb.skipPingOnConnect"),Symbol.for("@@mdb.enableMongoLogger"),Symbol.for("@@mdb.internalLoggerConfig")])},3543:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.END=t.CHANGE=t.INIT=t.MORE=t.RESPONSE=t.SERVER_HEARTBEAT_FAILED=t.SERVER_HEARTBEAT_SUCCEEDED=t.SERVER_HEARTBEAT_STARTED=t.COMMAND_FAILED=t.COMMAND_SUCCEEDED=t.COMMAND_STARTED=t.CLUSTER_TIME_RECEIVED=t.CONNECTION_CHECKED_IN=t.CONNECTION_CHECKED_OUT=t.CONNECTION_CHECK_OUT_FAILED=t.CONNECTION_CHECK_OUT_STARTED=t.CONNECTION_CLOSED=t.CONNECTION_READY=t.CONNECTION_CREATED=t.CONNECTION_POOL_READY=t.CONNECTION_POOL_CLEARED=t.CONNECTION_POOL_CLOSED=t.CONNECTION_POOL_CREATED=t.WAITING_FOR_SUITABLE_SERVER=t.SERVER_SELECTION_SUCCEEDED=t.SERVER_SELECTION_FAILED=t.SERVER_SELECTION_STARTED=t.TOPOLOGY_DESCRIPTION_CHANGED=t.TOPOLOGY_CLOSED=t.TOPOLOGY_OPENING=t.SERVER_DESCRIPTION_CHANGED=t.SERVER_CLOSED=t.SERVER_OPENING=t.DESCRIPTION_RECEIVED=t.UNPINNED=t.PINNED=t.MESSAGE=t.ENDED=t.CLOSED=t.CONNECT=t.OPEN=t.CLOSE=t.TIMEOUT=t.ERROR=t.SYSTEM_JS_COLLECTION=t.SYSTEM_COMMAND_COLLECTION=t.SYSTEM_USER_COLLECTION=t.SYSTEM_PROFILE_COLLECTION=t.SYSTEM_INDEX_COLLECTION=t.SYSTEM_NAMESPACE_COLLECTION=void 0,t.LEGACY_HELLO_COMMAND_CAMEL_CASE=t.LEGACY_HELLO_COMMAND=t.MONGO_CLIENT_EVENTS=t.LOCAL_SERVER_EVENTS=t.SERVER_RELAY_EVENTS=t.APM_EVENTS=t.TOPOLOGY_EVENTS=t.CMAP_EVENTS=t.HEARTBEAT_EVENTS=t.RESUME_TOKEN_CHANGED=void 0,t.SYSTEM_NAMESPACE_COLLECTION="system.namespaces",t.SYSTEM_INDEX_COLLECTION="system.indexes",t.SYSTEM_PROFILE_COLLECTION="system.profile",t.SYSTEM_USER_COLLECTION="system.users",t.SYSTEM_COMMAND_COLLECTION="$cmd",t.SYSTEM_JS_COLLECTION="system.js",t.ERROR="error",t.TIMEOUT="timeout",t.CLOSE="close",t.OPEN="open",t.CONNECT="connect",t.CLOSED="closed",t.ENDED="ended",t.MESSAGE="message",t.PINNED="pinned",t.UNPINNED="unpinned",t.DESCRIPTION_RECEIVED="descriptionReceived",t.SERVER_OPENING="serverOpening",t.SERVER_CLOSED="serverClosed",t.SERVER_DESCRIPTION_CHANGED="serverDescriptionChanged",t.TOPOLOGY_OPENING="topologyOpening",t.TOPOLOGY_CLOSED="topologyClosed",t.TOPOLOGY_DESCRIPTION_CHANGED="topologyDescriptionChanged",t.SERVER_SELECTION_STARTED="serverSelectionStarted",t.SERVER_SELECTION_FAILED="serverSelectionFailed",t.SERVER_SELECTION_SUCCEEDED="serverSelectionSucceeded",t.WAITING_FOR_SUITABLE_SERVER="waitingForSuitableServer",t.CONNECTION_POOL_CREATED="connectionPoolCreated",t.CONNECTION_POOL_CLOSED="connectionPoolClosed",t.CONNECTION_POOL_CLEARED="connectionPoolCleared",t.CONNECTION_POOL_READY="connectionPoolReady",t.CONNECTION_CREATED="connectionCreated",t.CONNECTION_READY="connectionReady",t.CONNECTION_CLOSED="connectionClosed",t.CONNECTION_CHECK_OUT_STARTED="connectionCheckOutStarted",t.CONNECTION_CHECK_OUT_FAILED="connectionCheckOutFailed",t.CONNECTION_CHECKED_OUT="connectionCheckedOut",t.CONNECTION_CHECKED_IN="connectionCheckedIn",t.CLUSTER_TIME_RECEIVED="clusterTimeReceived",t.COMMAND_STARTED="commandStarted",t.COMMAND_SUCCEEDED="commandSucceeded",t.COMMAND_FAILED="commandFailed",t.SERVER_HEARTBEAT_STARTED="serverHeartbeatStarted",t.SERVER_HEARTBEAT_SUCCEEDED="serverHeartbeatSucceeded",t.SERVER_HEARTBEAT_FAILED="serverHeartbeatFailed",t.RESPONSE="response",t.MORE="more",t.INIT="init",t.CHANGE="change",t.END="end",t.RESUME_TOKEN_CHANGED="resumeTokenChanged",t.HEARTBEAT_EVENTS=Object.freeze([t.SERVER_HEARTBEAT_STARTED,t.SERVER_HEARTBEAT_SUCCEEDED,t.SERVER_HEARTBEAT_FAILED]),t.CMAP_EVENTS=Object.freeze([t.CONNECTION_POOL_CREATED,t.CONNECTION_POOL_READY,t.CONNECTION_POOL_CLEARED,t.CONNECTION_POOL_CLOSED,t.CONNECTION_CREATED,t.CONNECTION_READY,t.CONNECTION_CLOSED,t.CONNECTION_CHECK_OUT_STARTED,t.CONNECTION_CHECK_OUT_FAILED,t.CONNECTION_CHECKED_OUT,t.CONNECTION_CHECKED_IN]),t.TOPOLOGY_EVENTS=Object.freeze([t.SERVER_OPENING,t.SERVER_CLOSED,t.SERVER_DESCRIPTION_CHANGED,t.TOPOLOGY_OPENING,t.TOPOLOGY_CLOSED,t.TOPOLOGY_DESCRIPTION_CHANGED,t.ERROR,t.TIMEOUT,t.CLOSE]),t.APM_EVENTS=Object.freeze([t.COMMAND_STARTED,t.COMMAND_SUCCEEDED,t.COMMAND_FAILED]),t.SERVER_RELAY_EVENTS=Object.freeze([t.SERVER_HEARTBEAT_STARTED,t.SERVER_HEARTBEAT_SUCCEEDED,t.SERVER_HEARTBEAT_FAILED,t.COMMAND_STARTED,t.COMMAND_SUCCEEDED,t.COMMAND_FAILED,...t.CMAP_EVENTS]),t.LOCAL_SERVER_EVENTS=Object.freeze([t.CONNECT,t.DESCRIPTION_RECEIVED,t.CLOSED,t.ENDED]),t.MONGO_CLIENT_EVENTS=Object.freeze([...t.CMAP_EVENTS,...t.APM_EVENTS,...t.TOPOLOGY_EVENTS,...t.HEARTBEAT_EVENTS]),t.LEGACY_HELLO_COMMAND="ismaster",t.LEGACY_HELLO_COMMAND_CAMEL_CASE="isMaster"},136:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assertUninitialized=t.AbstractCursor=t.CURSOR_FLAGS=void 0;const n=r(2203),o=r(5638),s=r(7783),i=r(6372),u=r(1404),a=r(3184),c=r(8597),l=r(9741),h=r(9875),d=r(6474),p=r(945),f=r(407),m=Symbol("id"),g=Symbol("documents"),E=Symbol("server"),A=Symbol("namespace"),y=Symbol("client"),C=Symbol("session"),S=Symbol("options"),w=Symbol("transform"),b=Symbol("initialized"),v=Symbol("closed"),O=Symbol("killed"),_=Symbol("kInit");t.CURSOR_FLAGS=["tailable","oplogReplay","noCursorTimeout","awaitData","exhaust","partial"];class B extends u.TypedEventEmitter{constructor(e,t,r={}){if(super(),!e.s.isMongoClient)throw new i.MongoRuntimeError("Cursor must be constructed with MongoClient");this[y]=e,this[A]=t,this[m]=null,this[g]=new f.List,this[b]=!1,this[v]=!1,this[O]=!1,this[S]={readPreference:r.readPreference&&r.readPreference instanceof d.ReadPreference?r.readPreference:d.ReadPreference.primary,...(0,o.pluckBSONSerializeOptions)(r)},this[S].timeoutMS=r.timeoutMS;const n=h.ReadConcern.fromOptions(r);n&&(this[S].readConcern=n),"number"==typeof r.batchSize&&(this[S].batchSize=r.batchSize),void 0!==r.comment&&(this[S].comment=r.comment),"number"==typeof r.maxTimeMS&&(this[S].maxTimeMS=r.maxTimeMS),"number"==typeof r.maxAwaitTimeMS&&(this[S].maxAwaitTimeMS=r.maxAwaitTimeMS),r.session instanceof p.ClientSession?this[C]=r.session:this[C]=this[y].startSession({owner:this,explicit:!1})}get id(){return this[m]??void 0}get isDead(){return(this[m]?.isZero()??!1)||this[v]||this[O]}get client(){return this[y]}get server(){return this[E]}get namespace(){return this[A]}get readPreference(){return this[S].readPreference}get readConcern(){return this[S].readConcern}get session(){return this[C]}set session(e){this[C]=e}get cursorOptions(){return this[S]}get closed(){return this[v]}get killed(){return this[O]}get loadBalanced(){return!!this[y].topology?.loadBalanced}bufferedCount(){return this[g].length}readBufferedDocuments(e){const t=[],r=Math.min(e??this[g].length,this[g].length);for(let e=0;e<r;e++){const e=this[g].shift(this[S]);null!=e&&t.push(e)}return t}async*[Symbol.asyncIterator](){if(!this.closed)try{for(;;){const e=await this.next();if(null===e){if(!this.closed){const e="Cursor returned a `null` document, but the cursor is not exhausted. Mapping documents to `null` is not supported in the cursor transform.";try{await T(this,{needsToEmitClosed:!0})}catch(e){(0,f.squashError)(e)}throw new i.MongoAPIError(e)}break}if(yield e,this[m]===o.Long.ZERO)break}}finally{if(!this.closed)try{await this.close()}catch(e){(0,f.squashError)(e)}}}stream(e){if(e?.transform){const t=e.transform,r=new F(this),o=r.pipe(new n.Transform({objectMode:!0,highWaterMark:1,transform(e,r,n){try{n(void 0,t(e))}catch(e){n(e)}}}));return r.on("error",(e=>o.emit("error",e))),o}return new F(this)}async hasNext(){return this[m]!==o.Long.ZERO&&(0!==this[g].length||await D(this,{blocking:!0,transform:!1,shift:!1}))}async next(){if(this[m]===o.Long.ZERO)throw new i.MongoCursorExhaustedError;return await D(this,{blocking:!0,transform:!0,shift:!0})}async tryNext(){if(this[m]===o.Long.ZERO)throw new i.MongoCursorExhaustedError;return await D(this,{blocking:!1,transform:!0,shift:!0})}async forEach(e){if("function"!=typeof e)throw new i.MongoInvalidArgumentError('Argument "iterator" must be a function');for await(const t of this)if(!1===e(t))break}async close(){const e=!this[v];this[v]=!0,await T(this,{needsToEmitClosed:e})}async toArray(){const e=[];for await(const t of this)e.push(t);return e}addCursorFlag(e,r){if(I(this),!t.CURSOR_FLAGS.includes(e))throw new i.MongoInvalidArgumentError(`Flag ${e} is not one of ${t.CURSOR_FLAGS}`);if("boolean"!=typeof r)throw new i.MongoInvalidArgumentError(`Flag ${e} must be a boolean value`);return this[S][e]=r,this}map(e){I(this);const t=this[w];return this[w]=t?r=>e(t(r)):e,this}withReadPreference(e){if(I(this),e instanceof d.ReadPreference)this[S].readPreference=e;else{if("string"!=typeof e)throw new i.MongoInvalidArgumentError(`Invalid read preference: ${e}`);this[S].readPreference=d.ReadPreference.fromString(e)}return this}withReadConcern(e){I(this);const t=h.ReadConcern.fromOptions({readConcern:e});return t&&(this[S].readConcern=t),this}maxTimeMS(e){if(I(this),"number"!=typeof e)throw new i.MongoInvalidArgumentError("Argument for maxTimeMS must be a number");return this[S].maxTimeMS=e,this}batchSize(e){if(I(this),this[S].tailable)throw new i.MongoTailableCursorError("Tailable cursor does not support batchSize");if("number"!=typeof e)throw new i.MongoInvalidArgumentError('Operation "batchSize" requires an integer');return this[S].batchSize=e,this}rewind(){if(!this[b])return;this[m]=null,this[g].clear(),this[v]=!1,this[O]=!1,this[b]=!1;const e=this[C];e&&!1===e.explicit&&(e.hasEnded||e.endSession().then(void 0,f.squashError),this[C]=this.client.startSession({owner:this,explicit:!1}))}async getMore(e,t=!1){const r=new c.GetMoreOperation(this[A],this[m],this[E],{...this[S],session:this[C],batchSize:e,useCursorResponse:t});return await(0,a.executeOperation)(this[y],r)}async[_](){try{const e=await this._initialize(this[C]),t=e.response;this[E]=e.server,s.CursorResponse.is(t)?(this[m]=t.id,t.ns&&(this[A]=t.ns),this[g]=t):t.cursor&&(this[m]="number"==typeof t.cursor.id?o.Long.fromNumber(t.cursor.id):"bigint"==typeof t.cursor.id?o.Long.fromBigInt(t.cursor.id):t.cursor.id,t.cursor.ns&&(this[A]=(0,f.ns)(t.cursor.ns)),this[g].pushMany(t.cursor.firstBatch)),null==this[m]&&(this[m]=o.Long.ZERO,this[g].push(e.response)),this[b]=!0}catch(e){throw this[b]=!0,await T(this,{error:e}),e}this.isDead&&await T(this,void 0)}}async function D(e,{blocking:t,transform:r,shift:n}){if(e.closed)return!!n&&null;do{if(null==e[m]&&await e[_](),0!==e[g].length){if(!n)return!0;const t=e[g].shift(e[S]);if(null!=t&&r&&e[w])try{return e[w](t)}catch(t){try{await T(e,{error:t,needsToEmitClosed:!0})}catch(e){(0,f.squashError)(e)}throw t}return t}if(e.isDead)return await T(e,{}),!!n&&null;const i=e[S].batchSize||1e3;try{const t=await e.getMore(i);if(s.CursorResponse.is(t))e[m]=t.id,e[g]=t;else if(t){const r="number"==typeof t.cursor.id?o.Long.fromNumber(t.cursor.id):"bigint"==typeof t.cursor.id?o.Long.fromBigInt(t.cursor.id):t.cursor.id;e[g].pushMany(t.cursor.nextBatch),e[m]=r}}catch(t){try{await T(e,{error:t,needsToEmitClosed:!0})}catch(e){(0,f.squashError)(e)}throw t}if(e.isDead&&await T(e,{}),0===e[g].length&&!1===t)return!!n&&null}while(!e.isDead||0!==e[g].length);return!!n&&null}async function T(e,t){const r=e[m],n=e[A],s=e[E],u=e[C],c=t?.error,h=t?.needsToEmitClosed??0===e[g].length;if(c&&e.loadBalanced&&c instanceof i.MongoNetworkError)return await d();if(null==r||null==s||r.isZero()||null==n){if(h&&(e[v]=!0,e[m]=o.Long.ZERO,e.emit(B.CLOSE)),u){if(u.owner===e)return void await u.endSession({error:c});u.inTransaction()||(0,p.maybeClearPinnedConnection)(u,{error:c})}}else{if(e[O]=!0,u.hasEnded)return await d();try{await(0,a.executeOperation)(e[y],new l.KillCursorsOperation(r,n,s,{session:u}))}catch(c){(0,f.squashError)(c)}finally{await d()}}async function d(){if(u){if(u.owner===e){try{await u.endSession({error:c})}finally{e.emit(B.CLOSE)}return}u.inTransaction()||(0,p.maybeClearPinnedConnection)(u,{error:c})}e.emit(B.CLOSE)}}function I(e){if(e[b])throw new i.MongoCursorInUseError}B.CLOSE="close",t.AbstractCursor=B,t.assertUninitialized=I;class F extends n.Readable{constructor(e){super({objectMode:!0,autoDestroy:!1,highWaterMark:1}),this._readInProgress=!1,this._cursor=e}_read(e){this._readInProgress||(this._readInProgress=!0,this._readNext())}_destroy(e,t){this._cursor.close().then((()=>t(e)),(e=>t(e)))}_readNext(){D(this._cursor,{blocking:!0,transform:!0,shift:!0}).then((e=>{if(null==e)this.push(null);else if(this.destroyed)this._cursor.close().then(void 0,f.squashError);else{if(this.push(e))return this._readNext();this._readInProgress=!1}}),(e=>e.message.match(/server is closed/)?(this._cursor.close().then(void 0,f.squashError),this.push(null)):e.message.match(/operation was interrupted/)?this.push(null):this.destroy(e)))}}},1888:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggregationCursor=void 0;const n=r(5182),o=r(3184),s=r(407),i=r(136),u=Symbol("pipeline"),a=Symbol("options");class c extends i.AbstractCursor{constructor(e,t,r=[],n={}){super(e,t,n),this[u]=r,this[a]=n}get pipeline(){return this[u]}clone(){const e=(0,s.mergeOptions)({},this[a]);return delete e.session,new c(this.client,this.namespace,this[u],{...e})}map(e){return super.map(e)}async _initialize(e){const t=new n.AggregateOperation(this.namespace,this[u],{...this[a],...this.cursorOptions,session:e}),r=await(0,o.executeOperation)(this.client,t);return{server:t.server,session:e,response:r}}async explain(e){return await(0,o.executeOperation)(this.client,new n.AggregateOperation(this.namespace,this[u],{...this[a],...this.cursorOptions,explain:e??!0}))}addStage(e){return(0,i.assertUninitialized)(this),this[u].push(e),this}group(e){return this.addStage({$group:e})}limit(e){return this.addStage({$limit:e})}match(e){return this.addStage({$match:e})}out(e){return this.addStage({$out:e})}project(e){return this.addStage({$project:e})}lookup(e){return this.addStage({$lookup:e})}redact(e){return this.addStage({$redact:e})}skip(e){return this.addStage({$skip:e})}sort(e){return this.addStage({$sort:e})}unwind(e){return this.addStage({$unwind:e})}geoNear(e){return this.addStage({$geoNear:e})}}t.AggregationCursor=c},7117:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChangeStreamCursor=void 0;const n=r(5451),o=r(3543),s=r(5182),i=r(3184),u=r(407),a=r(136);class c extends a.AbstractCursor{constructor(e,t,r=[],n={}){super(e,t,n),this.pipeline=r,this.options=n,this._resumeToken=null,this.startAtOperationTime=n.startAtOperationTime,n.startAfter?this.resumeToken=n.startAfter:n.resumeAfter&&(this.resumeToken=n.resumeAfter)}set resumeToken(e){this._resumeToken=e,this.emit(n.ChangeStream.RESUME_TOKEN_CHANGED,e)}get resumeToken(){return this._resumeToken}get resumeOptions(){const e={...this.options};for(const t of["resumeAfter","startAfter","startAtOperationTime"])delete e[t];return null!=this.resumeToken?this.options.startAfter&&!this.hasReceived?e.startAfter=this.resumeToken:e.resumeAfter=this.resumeToken:null!=this.startAtOperationTime&&(0,u.maxWireVersion)(this.server)>=7&&(e.startAtOperationTime=this.startAtOperationTime),e}cacheResumeToken(e){0===this.bufferedCount()&&this.postBatchResumeToken?this.resumeToken=this.postBatchResumeToken:this.resumeToken=e,this.hasReceived=!0}_processBatch(e){const t=e.cursor;t.postBatchResumeToken&&(this.postBatchResumeToken=e.cursor.postBatchResumeToken,0===("firstBatch"in e.cursor?e.cursor.firstBatch:e.cursor.nextBatch).length&&(this.resumeToken=t.postBatchResumeToken))}clone(){return new c(this.client,this.namespace,this.pipeline,{...this.cursorOptions})}async _initialize(e){const t=new s.AggregateOperation(this.namespace,this.pipeline,{...this.cursorOptions,...this.options,session:e}),r=await(0,i.executeOperation)(e.client,t),n=t.server;return this.maxWireVersion=(0,u.maxWireVersion)(n),null==this.startAtOperationTime&&null==this.resumeAfter&&null==this.startAfter&&this.maxWireVersion>=7&&(this.startAtOperationTime=r.operationTime),this._processBatch(r),this.emit(o.INIT,r),this.emit(o.RESPONSE),{server:n,session:e,response:r}}async getMore(e){const t=await super.getMore(e);return this.maxWireVersion=(0,u.maxWireVersion)(this.server),this._processBatch(t),this.emit(n.ChangeStream.MORE,t),this.emit(n.ChangeStream.RESPONSE),t}}t.ChangeStreamCursor=c},383:(e,t,r)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.FindCursor=t.FLAGS=void 0;const o=r(7783),s=r(6372),i=r(2374),u=r(3184),a=r(7850),c=r(2260),l=r(407),h=r(136),d=Symbol("filter"),p=Symbol("numReturned"),f=Symbol("builtOptions");t.FLAGS=["tailable","oplogReplay","noCursorTimeout","awaitData","exhaust","partial"];class m extends h.AbstractCursor{constructor(e,t,r={},o={}){super(e,t,o),this[n]=0,this[d]=r,this[f]=o,null!=o.sort&&(this[f].sort=(0,c.formatSort)(o.sort))}clone(){const e=(0,l.mergeOptions)({},this[f]);return delete e.session,new m(this.client,this.namespace,this[d],{...e})}map(e){return super.map(e)}async _initialize(e){const t=new a.FindOperation(this.namespace,this[d],{...this[f],...this.cursorOptions,session:e}),r=await(0,u.executeOperation)(this.client,t);return o.CursorResponse.is(r)?this[p]=r.batchSize:this[p]=this[p]+(r?.cursor?.firstBatch?.length??0),{server:t.server,session:e,response:r}}async getMore(e){const t=this[p];if(t){const r=this[f].limit;if((e=r&&r>0&&t+e>r?r-t:e)<=0){try{await this.close()}catch(e){(0,l.squashError)(e)}return o.CursorResponse.emptyGetMore}}const r=await super.getMore(e,!1);return o.CursorResponse.is(r)?this[p]=this[p]+r.batchSize:this[p]=this[p]+(r?.cursor?.nextBatch?.length??0),r}async count(e){if((0,l.emitWarningOnce)("cursor.count is deprecated and will be removed in the next major version, please use `collection.estimatedDocumentCount` or `collection.countDocuments` instead "),"boolean"==typeof e)throw new s.MongoInvalidArgumentError("Invalid first parameter to count");return await(0,u.executeOperation)(this.client,new i.CountOperation(this.namespace,this[d],{...this[f],...this.cursorOptions,...e}))}async explain(e){return await(0,u.executeOperation)(this.client,new a.FindOperation(this.namespace,this[d],{...this[f],...this.cursorOptions,explain:e??!0}))}filter(e){return(0,h.assertUninitialized)(this),this[d]=e,this}hint(e){return(0,h.assertUninitialized)(this),this[f].hint=e,this}min(e){return(0,h.assertUninitialized)(this),this[f].min=e,this}max(e){return(0,h.assertUninitialized)(this),this[f].max=e,this}returnKey(e){return(0,h.assertUninitialized)(this),this[f].returnKey=e,this}showRecordId(e){return(0,h.assertUninitialized)(this),this[f].showRecordId=e,this}addQueryModifier(e,t){if((0,h.assertUninitialized)(this),"$"!==e[0])throw new s.MongoInvalidArgumentError(`${e} is not a valid query modifier`);switch(e.substr(1)){case"comment":this[f].comment=t;break;case"explain":this[f].explain=t;break;case"hint":this[f].hint=t;break;case"max":this[f].max=t;break;case"maxTimeMS":this[f].maxTimeMS=t;break;case"min":this[f].min=t;break;case"orderby":this[f].sort=(0,c.formatSort)(t);break;case"query":this[d]=t;break;case"returnKey":this[f].returnKey=t;break;case"showDiskLoc":this[f].showRecordId=t;break;default:throw new s.MongoInvalidArgumentError(`Invalid query modifier: ${e}`)}return this}comment(e){return(0,h.assertUninitialized)(this),this[f].comment=e,this}maxAwaitTimeMS(e){if((0,h.assertUninitialized)(this),"number"!=typeof e)throw new s.MongoInvalidArgumentError("Argument for maxAwaitTimeMS must be a number");return this[f].maxAwaitTimeMS=e,this}maxTimeMS(e){if((0,h.assertUninitialized)(this),"number"!=typeof e)throw new s.MongoInvalidArgumentError("Argument for maxTimeMS must be a number");return this[f].maxTimeMS=e,this}project(e){return(0,h.assertUninitialized)(this),this[f].projection=e,this}sort(e,t){if((0,h.assertUninitialized)(this),this[f].tailable)throw new s.MongoTailableCursorError("Tailable cursor does not support sorting");return this[f].sort=(0,c.formatSort)(e,t),this}allowDiskUse(e=!0){if((0,h.assertUninitialized)(this),!this[f].sort)throw new s.MongoInvalidArgumentError('Option "allowDiskUse" requires a sort specification');return e?(this[f].allowDiskUse=!0,this):(this[f].allowDiskUse=!1,this)}collation(e){return(0,h.assertUninitialized)(this),this[f].collation=e,this}limit(e){if((0,h.assertUninitialized)(this),this[f].tailable)throw new s.MongoTailableCursorError("Tailable cursor does not support limit");if("number"!=typeof e)throw new s.MongoInvalidArgumentError('Operation "limit" requires an integer');return this[f].limit=e,this}skip(e){if((0,h.assertUninitialized)(this),this[f].tailable)throw new s.MongoTailableCursorError("Tailable cursor does not support skip");if("number"!=typeof e)throw new s.MongoInvalidArgumentError('Operation "skip" requires an integer');return this[f].skip=e,this}}t.FindCursor=m,n=p},6472:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListCollectionsCursor=void 0;const n=r(3184),o=r(1579),s=r(136);class i extends s.AbstractCursor{constructor(e,t,r){super(e.client,e.s.namespace,r),this.parent=e,this.filter=t,this.options=r}clone(){return new i(this.parent,this.filter,{...this.options,...this.cursorOptions})}async _initialize(e){const t=new o.ListCollectionsOperation(this.parent,this.filter,{...this.cursorOptions,...this.options,session:e}),r=await(0,n.executeOperation)(this.parent.client,t);return{server:t.server,session:e,response:r}}}t.ListCollectionsCursor=i},303:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListIndexesCursor=void 0;const n=r(3184),o=r(1213),s=r(136);class i extends s.AbstractCursor{constructor(e,t){super(e.client,e.s.namespace,t),this.parent=e,this.options=t}clone(){return new i(this.parent,{...this.options,...this.cursorOptions})}async _initialize(e){const t=new o.ListIndexesOperation(this.parent,{...this.cursorOptions,...this.options,session:e}),r=await(0,n.executeOperation)(this.parent.client,t);return{server:t.server,session:e,response:r}}}t.ListIndexesCursor=i},4756:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListSearchIndexesCursor=void 0;const n=r(1888);class o extends n.AggregationCursor{constructor({fullNamespace:e,client:t},r,n={}){super(t,e,null==r?[{$listSearchIndexes:{}}]:[{$listSearchIndexes:{name:r}}],n)}}t.ListSearchIndexesCursor=o},2567:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RunCommandCursor=void 0;const n=r(6372),o=r(3184),s=r(8597),i=r(7074),u=r(407),a=r(136);class c extends a.AbstractCursor{setComment(e){return this.getMoreOptions.comment=e,this}setMaxTimeMS(e){return this.getMoreOptions.maxAwaitTimeMS=e,this}setBatchSize(e){return this.getMoreOptions.batchSize=e,this}clone(){throw new n.MongoAPIError("Clone not supported, create a new cursor with db.runCursorCommand")}withReadConcern(e){throw new n.MongoAPIError("RunCommandCursor does not support readConcern it must be attached to the command being run")}addCursorFlag(e,t){throw new n.MongoAPIError("RunCommandCursor does not support cursor flags, they must be attached to the command being run")}maxTimeMS(e){throw new n.MongoAPIError("maxTimeMS must be configured on the command document directly, to configure getMore.maxTimeMS use cursor.setMaxTimeMS()")}batchSize(e){throw new n.MongoAPIError("batchSize must be configured on the command document directly, to configure getMore.batchSize use cursor.setBatchSize()")}constructor(e,t,r={}){super(e.client,(0,u.ns)(e.namespace),r),this.getMoreOptions={},this.db=e,this.command=Object.freeze({...t})}async _initialize(e){const t=new i.RunCommandOperation(this.db,this.command,{...this.cursorOptions,session:e,readPreference:this.cursorOptions.readPreference}),r=await(0,o.executeOperation)(this.client,t);if(null==r.cursor)throw new n.MongoUnexpectedServerResponseError("Expected server to respond with cursor");return{server:t.server,session:e,response:r}}async getMore(e){const t=new s.GetMoreOperation(this.namespace,this.id,this.server,{...this.cursorOptions,session:this.session,...this.getMoreOptions,useCursorResponse:!1});return await(0,o.executeOperation)(this.client,t)}}t.RunCommandCursor=c},522:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Db=void 0;const n=r(8137),o=r(5638),s=r(5451),i=r(948),u=r(3543),a=r(1888),c=r(6472),l=r(2567),h=r(6372),d=r(2700),p=r(6060),f=r(3208),m=r(3184),g=r(1213),E=r(3842),A=r(8859),y=r(1591),C=r(7074),S=r(737),w=r(8414),b=r(9875),v=r(6474),O=r(407),_=r(770),B=["writeConcern","readPreference","readPreferenceTags","native_parser","forceServerObjectId","pkFactory","serializeFunctions","raw","authSource","ignoreUndefined","readConcern","retryMiliSeconds","numberOfRetries","useBigInt64","promoteBuffers","promoteLongs","bsonRegExp","enableUtf8Validation","promoteValues","compression","retryWrites","timeoutMS"];class D{constructor(e,t,r){if(r=r??{},r=(0,O.filterOptions)(r,B),"string"==typeof t&&t.includes("."))throw new h.MongoInvalidArgumentError("Database names cannot contain the character '.'");this.s={options:r,readPreference:v.ReadPreference.fromOptions(r),bsonOptions:(0,o.resolveBSONOptions)(r,e),pkFactory:r?.pkFactory??O.DEFAULT_PK_FACTORY,readConcern:b.ReadConcern.fromOptions(r),writeConcern:_.WriteConcern.fromOptions(r),namespace:new O.MongoDBNamespace(t)},this.client=e}get databaseName(){return this.s.namespace.db}get options(){return this.s.options}get secondaryOk(){return"primary"!==this.s.readPreference?.preference||!1}get readConcern(){return this.s.readConcern}get readPreference(){return null==this.s.readPreference?this.client.readPreference:this.s.readPreference}get bsonOptions(){return this.s.bsonOptions}get writeConcern(){return this.s.writeConcern}get namespace(){return this.s.namespace.toString()}async createCollection(e,t){return await(0,m.executeOperation)(this.client,new p.CreateCollectionOperation(this,e,(0,O.resolveOptions)(this,t)))}async command(e,t){return await(0,m.executeOperation)(this.client,new C.RunCommandOperation(this,e,{...(0,o.resolveBSONOptions)(t),session:t?.session,readPreference:t?.readPreference}))}aggregate(e=[],t){return new a.AggregationCursor(this.client,this.s.namespace,e,(0,O.resolveOptions)(this,t))}admin(){return new n.Admin(this)}collection(e,t={}){if("function"==typeof t)throw new h.MongoInvalidArgumentError("The callback form of this helper has been removed.");return new i.Collection(this,e,(0,O.resolveOptions)(this,t))}async stats(e){return await(0,m.executeOperation)(this.client,new w.DbStatsOperation(this,(0,O.resolveOptions)(this,e)))}listCollections(e={},t={}){return new c.ListCollectionsCursor(this,e,(0,O.resolveOptions)(this,t))}async renameCollection(e,t,r){return await(0,m.executeOperation)(this.client,new y.RenameOperation(this.collection(e),t,{...r,new_collection:!0,readPreference:v.ReadPreference.primary}))}async dropCollection(e,t){return await(0,m.executeOperation)(this.client,new f.DropCollectionOperation(this,e,(0,O.resolveOptions)(this,t)))}async dropDatabase(e){return await(0,m.executeOperation)(this.client,new f.DropDatabaseOperation(this,(0,O.resolveOptions)(this,e)))}async collections(e){return await(0,m.executeOperation)(this.client,new d.CollectionsOperation(this,(0,O.resolveOptions)(this,e)))}async createIndex(e,t,r){return(await(0,m.executeOperation)(this.client,g.CreateIndexesOperation.fromIndexSpecification(this,e,t,r)))[0]}async removeUser(e,t){return await(0,m.executeOperation)(this.client,new A.RemoveUserOperation(this,e,(0,O.resolveOptions)(this,t)))}async setProfilingLevel(e,t){return await(0,m.executeOperation)(this.client,new S.SetProfilingLevelOperation(this,e,(0,O.resolveOptions)(this,t)))}async profilingLevel(e){return await(0,m.executeOperation)(this.client,new E.ProfilingLevelOperation(this,(0,O.resolveOptions)(this,e)))}async indexInformation(e,t){return await this.collection(e).indexInformation((0,O.resolveOptions)(this,t))}watch(e=[],t={}){return Array.isArray(e)||(t=e,e=[]),new s.ChangeStream(this,e,(0,O.resolveOptions)(this,t))}runCursorCommand(e,t){return new l.RunCommandCursor(this,e,t)}}D.SYSTEM_NAMESPACE_COLLECTION=u.SYSTEM_NAMESPACE_COLLECTION,D.SYSTEM_INDEX_COLLECTION=u.SYSTEM_INDEX_COLLECTION,D.SYSTEM_PROFILE_COLLECTION=u.SYSTEM_PROFILE_COLLECTION,D.SYSTEM_USER_COLLECTION=u.SYSTEM_USER_COLLECTION,D.SYSTEM_COMMAND_COLLECTION=u.SYSTEM_COMMAND_COLLECTION,D.SYSTEM_JS_COLLECTION=u.SYSTEM_JS_COLLECTION,t.Db=D},2822:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getMongoDBClientEncryption=t.aws4=t.getSocks=t.getSnappy=t.getGcpMetadata=t.getAwsCredentialProvider=t.getZstdLibrary=t.getKerberos=void 0;const n=r(6372);function o(e){return new Proxy(e?{kModuleError:e}:{},{get:(t,r)=>{if("kModuleError"===r)return e;throw e},set:()=>{throw e}})}t.getKerberos=function(){let e;try{e=r(Object(function(){var e=new Error("Cannot find module 'kerberos'");throw e.code="MODULE_NOT_FOUND",e}()))}catch(t){e=o(new n.MongoMissingDependencyError("Optional module `kerberos` not found. Please install it to enable kerberos authentication",{cause:t,dependencyName:"kerberos"}))}return e},t.getZstdLibrary=function(){let e;try{e=r(Object(function(){var e=new Error("Cannot find module '@mongodb-js/zstd'");throw e.code="MODULE_NOT_FOUND",e}()))}catch(t){e=o(new n.MongoMissingDependencyError("Optional module `@mongodb-js/zstd` not found. Please install it to enable zstd compression",{cause:t,dependencyName:"zstd"}))}return e},t.getAwsCredentialProvider=function(){try{return r(1899)}catch(e){return o(new n.MongoMissingDependencyError("Optional module `@aws-sdk/credential-providers` not found. Please install it to enable getting aws credentials via the official sdk.",{cause:e,dependencyName:"@aws-sdk/credential-providers"}))}},t.getGcpMetadata=function(){try{return r(Object(function(){var e=new Error("Cannot find module 'gcp-metadata'");throw e.code="MODULE_NOT_FOUND",e}()))}catch(e){return o(new n.MongoMissingDependencyError("Optional module `gcp-metadata` not found. Please install it to enable getting gcp credentials via the official sdk.",{cause:e,dependencyName:"gcp-metadata"}))}},t.getSnappy=function(){try{return r(Object(function(){var e=new Error("Cannot find module 'snappy'");throw e.code="MODULE_NOT_FOUND",e}()))}catch(e){return{kModuleError:new n.MongoMissingDependencyError("Optional module `snappy` not found. Please install it to enable snappy compression",{cause:e,dependencyName:"snappy"})}}},t.getSocks=function(){try{return r(2794)}catch(e){return{kModuleError:new n.MongoMissingDependencyError("Optional module `socks` not found. Please install it to connections over a SOCKS5 proxy",{cause:e,dependencyName:"socks"})}}},t.aws4=function(){let e;try{e=r(6144)}catch(t){e=o(new n.MongoMissingDependencyError("Optional module `aws4` not found. Please install it to enable AWS authentication",{cause:t,dependencyName:"aws4"}))}return e}(),t.getMongoDBClientEncryption=function(){let e=null;try{e=r(955)}catch(e){return{kModuleError:new n.MongoMissingDependencyError("Optional module `mongodb-client-encryption` not found. Please install it to use auto encryption or ClientEncryption.",{cause:e,dependencyName:"mongodb-client-encryption"})}}return e}},3568:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Encrypter=void 0;const n=r(9023),o=r(4782),s=r(3543),i=r(2822),u=r(6372),a=r(6622),c=Symbol("internalClient");t.Encrypter=class{constructor(e,t,r){if("object"!=typeof r.autoEncryption)throw new u.MongoInvalidArgumentError('Option "autoEncryption" must be specified');this[c]=null,this.bypassAutoEncryption=!!r.autoEncryption.bypassAutoEncryption,this.needsConnecting=!1,0===r.maxPoolSize&&null==r.autoEncryption.keyVaultClient?r.autoEncryption.keyVaultClient=e:null==r.autoEncryption.keyVaultClient&&(r.autoEncryption.keyVaultClient=this.getInternalClient(e,t,r)),this.bypassAutoEncryption?r.autoEncryption.metadataClient=void 0:0===r.maxPoolSize?r.autoEncryption.metadataClient=e:r.autoEncryption.metadataClient=this.getInternalClient(e,t,r),r.proxyHost&&(r.autoEncryption.proxyOptions={proxyHost:r.proxyHost,proxyPort:r.proxyPort,proxyUsername:r.proxyUsername,proxyPassword:r.proxyPassword}),this.autoEncrypter=new o.AutoEncrypter(e,r.autoEncryption)}getInternalClient(e,t,r){let n=this[c];if(null==n){const o={};for(const e of[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)])["autoEncryption","minPoolSize","servers","caseTranslate","dbName"].includes(e)||Reflect.set(o,e,Reflect.get(r,e));o.minPoolSize=0,n=new a.MongoClient(t,o),this[c]=n;for(const t of s.MONGO_CLIENT_EVENTS)for(const r of e.listeners(t))n.on(t,r);e.on("newListener",((e,t)=>{n?.on(e,t)})),this.needsConnecting=!0}return n}async connectInternalClient(){const e=this[c];this.needsConnecting&&null!=e&&(this.needsConnecting=!1,await e.connect())}closeCallback(e,t,r){(0,n.callbackify)(this.close.bind(this))(e,t,r)}async close(e,t){let r;try{await this.autoEncrypter.teardown(t)}catch(e){r=e}const n=this[c];if(null!=n&&e!==n)return await n.close(t);if(null!=r)throw r}static checkForMongoCrypt(){const e=(0,i.getMongoDBClientEncryption)();if("kModuleError"in e)throw new u.MongoMissingDependencyError("Auto-encryption requested, but the module is not installed. Please add `mongodb-client-encryption` as a dependency of your project",{cause:e.kModuleError,dependencyName:"mongodb-client-encryption"})}}},6372:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isResumableError=t.isNetworkTimeoutError=t.isSDAMUnrecoverableError=t.isNodeShuttingDownError=t.isRetryableReadError=t.isRetryableWriteError=t.needsRetryableWriteLabel=t.MongoWriteConcernError=t.MongoServerSelectionError=t.MongoSystemError=t.MongoMissingDependencyError=t.MongoMissingCredentialsError=t.MongoCompatibilityError=t.MongoInvalidArgumentError=t.MongoParseError=t.MongoNetworkTimeoutError=t.MongoNetworkError=t.isNetworkErrorBeforeHandshake=t.MongoTopologyClosedError=t.MongoCursorExhaustedError=t.MongoServerClosedError=t.MongoCursorInUseError=t.MongoUnexpectedServerResponseError=t.MongoGridFSChunkError=t.MongoGridFSStreamError=t.MongoTailableCursorError=t.MongoChangeStreamError=t.MongoAzureError=t.MongoAWSError=t.MongoKerberosError=t.MongoExpiredSessionError=t.MongoTransactionError=t.MongoNotConnectedError=t.MongoDecompressionError=t.MongoBatchReExecutionError=t.MongoRuntimeError=t.MongoAPIError=t.MongoDriverError=t.MongoServerError=t.MongoError=t.MongoErrorLabel=t.GET_MORE_RESUMABLE_CODES=t.MONGODB_ERROR_CODES=t.NODE_IS_RECOVERING_ERROR_MESSAGE=t.LEGACY_NOT_PRIMARY_OR_SECONDARY_ERROR_MESSAGE=t.LEGACY_NOT_WRITABLE_PRIMARY_ERROR_MESSAGE=void 0;const r=Symbol("errorLabels");t.LEGACY_NOT_WRITABLE_PRIMARY_ERROR_MESSAGE=new RegExp("not master","i"),t.LEGACY_NOT_PRIMARY_OR_SECONDARY_ERROR_MESSAGE=new RegExp("not master or secondary","i"),t.NODE_IS_RECOVERING_ERROR_MESSAGE=new RegExp("node is recovering","i"),t.MONGODB_ERROR_CODES=Object.freeze({HostUnreachable:6,HostNotFound:7,NetworkTimeout:89,ShutdownInProgress:91,PrimarySteppedDown:189,ExceededTimeLimit:262,SocketException:9001,NotWritablePrimary:10107,InterruptedAtShutdown:11600,InterruptedDueToReplStateChange:11602,NotPrimaryNoSecondaryOk:13435,NotPrimaryOrSecondary:13436,StaleShardVersion:63,StaleEpoch:150,StaleConfig:13388,RetryChangeStream:234,FailedToSatisfyReadPreference:133,CursorNotFound:43,LegacyNotPrimary:10058,WriteConcernFailed:64,NamespaceNotFound:26,IllegalOperation:20,MaxTimeMSExpired:50,UnknownReplWriteConcern:79,UnsatisfiableWriteConcern:100,Reauthenticate:391}),t.GET_MORE_RESUMABLE_CODES=new Set([t.MONGODB_ERROR_CODES.HostUnreachable,t.MONGODB_ERROR_CODES.HostNotFound,t.MONGODB_ERROR_CODES.NetworkTimeout,t.MONGODB_ERROR_CODES.ShutdownInProgress,t.MONGODB_ERROR_CODES.PrimarySteppedDown,t.MONGODB_ERROR_CODES.ExceededTimeLimit,t.MONGODB_ERROR_CODES.SocketException,t.MONGODB_ERROR_CODES.NotWritablePrimary,t.MONGODB_ERROR_CODES.InterruptedAtShutdown,t.MONGODB_ERROR_CODES.InterruptedDueToReplStateChange,t.MONGODB_ERROR_CODES.NotPrimaryNoSecondaryOk,t.MONGODB_ERROR_CODES.NotPrimaryOrSecondary,t.MONGODB_ERROR_CODES.StaleShardVersion,t.MONGODB_ERROR_CODES.StaleEpoch,t.MONGODB_ERROR_CODES.StaleConfig,t.MONGODB_ERROR_CODES.RetryChangeStream,t.MONGODB_ERROR_CODES.FailedToSatisfyReadPreference,t.MONGODB_ERROR_CODES.CursorNotFound]),t.MongoErrorLabel=Object.freeze({RetryableWriteError:"RetryableWriteError",TransientTransactionError:"TransientTransactionError",UnknownTransactionCommitResult:"UnknownTransactionCommitResult",ResumableChangeStreamError:"ResumableChangeStreamError",HandshakeError:"HandshakeError",ResetPool:"ResetPool",PoolRequstedRetry:"PoolRequstedRetry",InterruptInUseConnections:"InterruptInUseConnections",NoWritesPerformed:"NoWritesPerformed"});class n extends Error{constructor(e,t){super(e,t),this[r]=new Set}static buildErrorMessage(e){return"string"==typeof e?e:function(e){return null!=e&&"object"==typeof e&&"errors"in e&&Array.isArray(e.errors)}(e)&&0===e.message.length?0===e.errors.length?"AggregateError has an empty errors array. Please check the `cause` property for more information.":e.errors.map((({message:e})=>e)).join(", "):null!=e&&"object"==typeof e&&"message"in e&&"string"==typeof e.message?e.message:"empty error message"}get name(){return"MongoError"}get errmsg(){return this.message}hasErrorLabel(e){return this[r].has(e)}addErrorLabel(e){this[r].add(e)}get errorLabels(){return Array.from(this[r])}}t.MongoError=n;class o extends n{constructor(e){super(e.message||e.errmsg||e.$err||"n/a"),e.errorLabels&&(this[r]=new Set(e.errorLabels)),this.errorResponse=e;for(const t in e)"errorLabels"!==t&&"errmsg"!==t&&"message"!==t&&"errorResponse"!==t&&(this[t]=e[t])}get name(){return"MongoServerError"}}t.MongoServerError=o;class s extends n{constructor(e,t){super(e,t)}get name(){return"MongoDriverError"}}t.MongoDriverError=s;class i extends s{constructor(e,t){super(e,t)}get name(){return"MongoAPIError"}}t.MongoAPIError=i;class u extends s{constructor(e,t){super(e,t)}get name(){return"MongoRuntimeError"}}t.MongoRuntimeError=u,t.MongoBatchReExecutionError=class extends i{constructor(e="This batch has already been executed, create new batch to execute"){super(e)}get name(){return"MongoBatchReExecutionError"}},t.MongoDecompressionError=class extends u{constructor(e){super(e)}get name(){return"MongoDecompressionError"}},t.MongoNotConnectedError=class extends i{constructor(e){super(e)}get name(){return"MongoNotConnectedError"}},t.MongoTransactionError=class extends i{constructor(e){super(e)}get name(){return"MongoTransactionError"}},t.MongoExpiredSessionError=class extends i{constructor(e="Cannot use a session that has ended"){super(e)}get name(){return"MongoExpiredSessionError"}},t.MongoKerberosError=class extends u{constructor(e){super(e)}get name(){return"MongoKerberosError"}},t.MongoAWSError=class extends u{constructor(e,t){super(e,t)}get name(){return"MongoAWSError"}},t.MongoAzureError=class extends u{constructor(e){super(e)}get name(){return"MongoAzureError"}},t.MongoChangeStreamError=class extends u{constructor(e){super(e)}get name(){return"MongoChangeStreamError"}},t.MongoTailableCursorError=class extends i{constructor(e="Tailable cursor does not support this operation"){super(e)}get name(){return"MongoTailableCursorError"}},t.MongoGridFSStreamError=class extends u{constructor(e){super(e)}get name(){return"MongoGridFSStreamError"}},t.MongoGridFSChunkError=class extends u{constructor(e){super(e)}get name(){return"MongoGridFSChunkError"}},t.MongoUnexpectedServerResponseError=class extends u{constructor(e){super(e)}get name(){return"MongoUnexpectedServerResponseError"}},t.MongoCursorInUseError=class extends i{constructor(e="Cursor is already initialized"){super(e)}get name(){return"MongoCursorInUseError"}},t.MongoServerClosedError=class extends i{constructor(e="Server is closed"){super(e)}get name(){return"MongoServerClosedError"}},t.MongoCursorExhaustedError=class extends i{constructor(e){super(e||"Cursor is exhausted")}get name(){return"MongoCursorExhaustedError"}},t.MongoTopologyClosedError=class extends i{constructor(e="Topology is closed"){super(e)}get name(){return"MongoTopologyClosedError"}};const a=Symbol("beforeHandshake");t.isNetworkErrorBeforeHandshake=function(e){return!0===e[a]};class c extends n{constructor(e,t){super(e,{cause:t?.cause}),t&&"boolean"==typeof t.beforeHandshake&&(this[a]=t.beforeHandshake)}get name(){return"MongoNetworkError"}}t.MongoNetworkError=c,t.MongoNetworkTimeoutError=class extends c{constructor(e,t){super(e,t)}get name(){return"MongoNetworkTimeoutError"}};class l extends s{constructor(e){super(e)}get name(){return"MongoParseError"}}t.MongoParseError=l,t.MongoInvalidArgumentError=class extends i{constructor(e){super(e)}get name(){return"MongoInvalidArgumentError"}},t.MongoCompatibilityError=class extends i{constructor(e){super(e)}get name(){return"MongoCompatibilityError"}},t.MongoMissingCredentialsError=class extends i{constructor(e){super(e)}get name(){return"MongoMissingCredentialsError"}},t.MongoMissingDependencyError=class extends i{constructor(e,t){super(e,t),this.dependencyName=t.dependencyName}get name(){return"MongoMissingDependencyError"}};class h extends n{constructor(e,t){t&&t.error?super(n.buildErrorMessage(t.error.message||t.error),{cause:t.error}):super(e),t&&(this.reason=t),this.code=t.error?.code}get name(){return"MongoSystemError"}}t.MongoSystemError=h,t.MongoServerSelectionError=class extends h{constructor(e,t){super(e,t)}get name(){return"MongoServerSelectionError"}};class d extends o{constructor(e,t){t&&Array.isArray(t.errorLabels)&&(e.errorLabels=t.errorLabels),super(e),this.errInfo=e.errInfo,null!=t&&(this.result=function(e){const t=Object.assign({},e);return 0===t.ok&&(t.ok=1,delete t.errmsg,delete t.code,delete t.codeName),t}(t))}get name(){return"MongoWriteConcernError"}}t.MongoWriteConcernError=d;const p=new Set([t.MONGODB_ERROR_CODES.HostUnreachable,t.MONGODB_ERROR_CODES.HostNotFound,t.MONGODB_ERROR_CODES.NetworkTimeout,t.MONGODB_ERROR_CODES.ShutdownInProgress,t.MONGODB_ERROR_CODES.PrimarySteppedDown,t.MONGODB_ERROR_CODES.SocketException,t.MONGODB_ERROR_CODES.NotWritablePrimary,t.MONGODB_ERROR_CODES.InterruptedAtShutdown,t.MONGODB_ERROR_CODES.InterruptedDueToReplStateChange,t.MONGODB_ERROR_CODES.NotPrimaryNoSecondaryOk,t.MONGODB_ERROR_CODES.NotPrimaryOrSecondary,t.MONGODB_ERROR_CODES.ExceededTimeLimit]),f=p;function m(e){return e.hasErrorLabel(t.MongoErrorLabel.RetryableWriteError)||e.hasErrorLabel(t.MongoErrorLabel.PoolRequstedRetry)}t.needsRetryableWriteLabel=function(e,r){return e instanceof c||!(e instanceof n&&(r>=9||m(e))&&!e.hasErrorLabel(t.MongoErrorLabel.HandshakeError))&&(e instanceof d?f.has(e.result?.code??e.code??0):e instanceof n&&"number"==typeof e.code?f.has(e.code):!!t.LEGACY_NOT_WRITABLE_PRIMARY_ERROR_MESSAGE.test(e.message)||!!t.NODE_IS_RECOVERING_ERROR_MESSAGE.test(e.message))},t.isRetryableWriteError=m,t.isRetryableReadError=function(e){return!("number"!=typeof e.code||!p.has(e.code))||e instanceof c||!!t.LEGACY_NOT_WRITABLE_PRIMARY_ERROR_MESSAGE.test(e.message)||!!t.NODE_IS_RECOVERING_ERROR_MESSAGE.test(e.message)};const g=new Set([t.MONGODB_ERROR_CODES.ShutdownInProgress,t.MONGODB_ERROR_CODES.PrimarySteppedDown,t.MONGODB_ERROR_CODES.InterruptedAtShutdown,t.MONGODB_ERROR_CODES.InterruptedDueToReplStateChange,t.MONGODB_ERROR_CODES.NotPrimaryOrSecondary]),E=new Set([t.MONGODB_ERROR_CODES.NotWritablePrimary,t.MONGODB_ERROR_CODES.NotPrimaryNoSecondaryOk,t.MONGODB_ERROR_CODES.LegacyNotPrimary]),A=new Set([t.MONGODB_ERROR_CODES.InterruptedAtShutdown,t.MONGODB_ERROR_CODES.ShutdownInProgress]);function y(e){return"number"==typeof e.code?g.has(e.code):t.LEGACY_NOT_PRIMARY_OR_SECONDARY_ERROR_MESSAGE.test(e.message)||t.NODE_IS_RECOVERING_ERROR_MESSAGE.test(e.message)}t.isNodeShuttingDownError=function(e){return!("number"!=typeof e.code||!A.has(e.code))},t.isSDAMUnrecoverableError=function(e){return e instanceof l||null==e||y(e)||("number"==typeof(r=e).code?E.has(r.code):!y(r)&&t.LEGACY_NOT_WRITABLE_PRIMARY_ERROR_MESSAGE.test(r.message));var r},t.isNetworkTimeoutError=function(e){return!!(e instanceof c&&e.message.match(/timed out/))},t.isResumableError=function(e,r){return null!=e&&e instanceof n&&(e instanceof c||(null!=r&&r>=9?e.code===t.MONGODB_ERROR_CODES.CursorNotFound||e.hasErrorLabel(t.MongoErrorLabel.ResumableChangeStreamError):"number"==typeof e.code&&t.GET_MORE_RESUMABLE_CODES.has(e.code)))}},593:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Explain=t.ExplainVerbosity=void 0;const n=r(6372);t.ExplainVerbosity=Object.freeze({queryPlanner:"queryPlanner",queryPlannerExtended:"queryPlannerExtended",executionStats:"executionStats",allPlansExecution:"allPlansExecution"});class o{constructor(e){this.verbosity="boolean"==typeof e?e?t.ExplainVerbosity.allPlansExecution:t.ExplainVerbosity.queryPlanner:e}static fromOptions(e){if(null==e?.explain)return;const t=e.explain;if("boolean"==typeof t||"string"==typeof t)return new o(t);throw new n.MongoInvalidArgumentError('Field "explain" must be a string or a boolean')}}t.Explain=o},3838:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GridFSBucketReadStream=void 0;const n=r(2203),o=r(6372);class s extends n.Readable{constructor(e,t,r,n,o){super({emitClose:!0}),this.s={bytesToTrim:0,bytesToSkip:0,bytesRead:0,chunks:e,expected:0,files:t,filter:n,init:!1,expectedEnd:0,options:{start:0,end:0,...o},readPreference:r}}_read(){this.destroyed||function(e,t){if(e.s.file)return t();e.s.init||(function(e){const t={};e.s.readPreference&&(t.readPreference=e.s.readPreference),e.s.options&&e.s.options.sort&&(t.sort=e.s.options.sort),e.s.options&&e.s.options.skip&&(t.skip=e.s.options.skip);e.s.files.findOne(e.s.filter,t).then((t=>{if(e.destroyed)return;if(!t){const t=`FileNotFound: file ${e.s.filter._id?e.s.filter._id.toString():e.s.filter.filename} was not found`,r=new o.MongoRuntimeError(t);return r.code="ENOENT",e.destroy(r)}if(t.length<=0)return void e.push(null);if(e.destroyed)return void e.destroy();try{e.s.bytesToSkip=function(e,t,r){if(r&&null!=r.start){if(r.start>t.length)throw new o.MongoInvalidArgumentError(`Stream start (${r.start}) must not be more than the length of the file (${t.length})`);if(r.start<0)throw new o.MongoInvalidArgumentError(`Stream start (${r.start}) must not be negative`);if(null!=r.end&&r.end<r.start)throw new o.MongoInvalidArgumentError(`Stream start (${r.start}) must not be greater than stream end (${r.end})`);return e.s.bytesRead=Math.floor(r.start/t.chunkSize)*t.chunkSize,e.s.expected=Math.floor(r.start/t.chunkSize),r.start-e.s.bytesRead}throw new o.MongoInvalidArgumentError("Start option must be defined")}(e,t,e.s.options)}catch(t){return e.destroy(t)}const r={files_id:t._id};if(e.s.options&&null!=e.s.options.start){const n=Math.floor(e.s.options.start/t.chunkSize);n>0&&(r.n={$gte:n})}e.s.cursor=e.s.chunks.find(r).sort({n:1}),e.s.readPreference&&e.s.cursor.withReadPreference(e.s.readPreference),e.s.expectedEnd=Math.ceil(t.length/t.chunkSize),e.s.file=t;try{e.s.bytesToTrim=function(e,t,r,n){if(n&&null!=n.end){if(n.end>t.length)throw new o.MongoInvalidArgumentError(`Stream end (${n.end}) must not be more than the length of the file (${t.length})`);if(null==n.start||n.start<0)throw new o.MongoInvalidArgumentError(`Stream end (${n.end}) must not be negative`);const s=null!=n.start?Math.floor(n.start/t.chunkSize):0;return r.limit(Math.ceil(n.end/t.chunkSize)-s),e.s.expectedEnd=Math.ceil(n.end/t.chunkSize),Math.ceil(n.end/t.chunkSize)*t.chunkSize-n.end}throw new o.MongoInvalidArgumentError("End option must be defined")}(e,t,e.s.cursor,e.s.options)}catch(t){return e.destroy(t)}e.emit(s.FILE,t)}),(t=>{e.destroyed||e.destroy(t)}))}(e),e.s.init=!0),e.once("file",(()=>{t()}))}(this,(()=>function(e){if(e.destroyed)return;if(!e.s.cursor)return;if(!e.s.file)return;e.s.cursor.next().then((t=>{if(e.destroyed)return;if(!t)return e.push(null),void e.s.cursor?.close().then(void 0,(t=>e.destroy(t)));if(!e.s.file)return;const r=e.s.file.length-e.s.bytesRead,n=e.s.expected++,s=Math.min(e.s.file.chunkSize,r);if(t.n>n)return e.destroy(new o.MongoGridFSChunkError(`ChunkIsMissing: Got unexpected n: ${t.n}, expected: ${n}`));if(t.n<n)return e.destroy(new o.MongoGridFSChunkError(`ExtraChunk: Got unexpected n: ${t.n}, expected: ${n}`));let i=Buffer.isBuffer(t.data)?t.data:t.data.buffer;if(i.byteLength!==s)return r<=0?e.destroy(new o.MongoGridFSChunkError(`ExtraChunk: Got unexpected n: ${t.n}, expected file length ${e.s.file.length} bytes but already read ${e.s.bytesRead} bytes`)):e.destroy(new o.MongoGridFSChunkError(`ChunkIsWrongSize: Got unexpected length: ${i.byteLength}, expected: ${s}`));if(e.s.bytesRead+=i.byteLength,0===i.byteLength)return e.push(null);let u=null,a=null;null!=e.s.bytesToSkip&&(u=e.s.bytesToSkip,e.s.bytesToSkip=0);const c=n===e.s.expectedEnd-1,l=e.s.options.end-e.s.bytesToSkip;c&&null!=e.s.bytesToTrim?a=e.s.file.chunkSize-e.s.bytesToTrim:e.s.options.end&&l<t.data.byteLength&&(a=l),null==u&&null==a||(i=i.slice(u||0,a||i.byteLength)),e.push(i)}),(t=>{e.destroyed||e.destroy(t)}))}(this)))}start(e=0){return i(this),this.s.options.start=e,this}end(e=0){return i(this),this.s.options.end=e,this}async abort(){this.push(null),this.destroy(),await(this.s.cursor?.close())}}function i(e){if(e.s.init)throw new o.MongoGridFSStreamError("Options cannot be changed after the stream is initialized")}s.FILE="file",t.GridFSBucketReadStream=s},4124:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GridFSBucket=void 0;const n=r(6372),o=r(1404),s=r(770),i=r(3838),u=r(7055),a={bucketName:"fs",chunkSizeBytes:261120};class c extends o.TypedEventEmitter{constructor(e,t){super(),this.setMaxListeners(0);const r={...a,...t,writeConcern:s.WriteConcern.fromOptions(t)};this.s={db:e,options:r,_chunksCollection:e.collection(r.bucketName+".chunks"),_filesCollection:e.collection(r.bucketName+".files"),checkedIndexes:!1,calledOpenUploadStream:!1}}openUploadStream(e,t){return new u.GridFSBucketWriteStream(this,e,t)}openUploadStreamWithId(e,t,r){return new u.GridFSBucketWriteStream(this,t,{...r,id:e})}openDownloadStream(e,t){return new i.GridFSBucketReadStream(this.s._chunksCollection,this.s._filesCollection,this.s.options.readPreference,{_id:e},t)}async delete(e){const{deletedCount:t}=await this.s._filesCollection.deleteOne({_id:e});if(await this.s._chunksCollection.deleteMany({files_id:e}),0===t)throw new n.MongoRuntimeError(`File not found for id ${e}`)}find(e={},t={}){return this.s._filesCollection.find(e,t)}openDownloadStreamByName(e,t){let r,n={uploadDate:-1};return t&&null!=t.revision&&(t.revision>=0?(n={uploadDate:1},r=t.revision):r=-t.revision-1),new i.GridFSBucketReadStream(this.s._chunksCollection,this.s._filesCollection,this.s.options.readPreference,{filename:e},{...t,sort:n,skip:r})}async rename(e,t){const r={_id:e},o={$set:{filename:t}},{matchedCount:s}=await this.s._filesCollection.updateOne(r,o);if(0===s)throw new n.MongoRuntimeError(`File with id ${e} not found`)}async drop(){await this.s._filesCollection.drop(),await this.s._chunksCollection.drop()}}c.INDEX="index",t.GridFSBucket=c},7055:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GridFSBucketWriteStream=void 0;const n=r(2203),o=r(5638),s=r(6372),i=r(407),u=r(770);class a extends n.Writable{constructor(e,t,r){super(),this.gridFSFile=null,r=r??{},this.bucket=e,this.chunks=e.s._chunksCollection,this.filename=t,this.files=e.s._filesCollection,this.options=r,this.writeConcern=u.WriteConcern.fromOptions(r)||e.s.options.writeConcern,this.done=!1,this.id=r.id?r.id:new o.ObjectId,this.chunkSizeBytes=r.chunkSizeBytes||this.bucket.s.options.chunkSizeBytes,this.bufToStore=Buffer.alloc(this.chunkSizeBytes),this.length=0,this.n=0,this.pos=0,this.state={streamEnd:!1,outstandingRequests:0,errored:!1,aborted:!1},this.bucket.s.calledOpenUploadStream||(this.bucket.s.calledOpenUploadStream=!0,async function(e){if(null!=await e.files.findOne({},{projection:{_id:1}}))return;let t;try{t=await e.files.listIndexes().toArray()}catch(e){if(!(e instanceof s.MongoError&&e.code===s.MONGODB_ERROR_CODES.NamespaceNotFound))throw e;t=[]}t.find((e=>2===Object.keys(e.key).length&&1===e.key.filename&&1===e.key.uploadDate))||await e.files.createIndex({filename:1,uploadDate:1},{background:!1}),await async function(e){let t;try{t=await e.chunks.listIndexes().toArray()}catch(e){if(!(e instanceof s.MongoError&&e.code===s.MONGODB_ERROR_CODES.NamespaceNotFound))throw e;t=[]}const r=!!t.find((e=>2===Object.keys(e.key).length&&1===e.key.files_id&&1===e.key.n));r||await e.chunks.createIndex({files_id:1,n:1},{...e.writeConcern,background:!0,unique:!0})}(e)}(this).then((()=>{this.bucket.s.checkedIndexes=!0,this.bucket.emit("index")}),i.squashError))}_construct(e){if(this.bucket.s.checkedIndexes)return process.nextTick(e);this.bucket.once("index",e)}_write(e,t,r){!function(e,t,r,n){if(d(e,n))return;const o=Buffer.isBuffer(t)?t:Buffer.from(t,r);if(e.length+=o.length,e.pos+o.length<e.chunkSizeBytes)return o.copy(e.bufToStore,e.pos),e.pos+=o.length,void process.nextTick(n);let s=o.length,i=e.chunkSizeBytes-e.pos,u=Math.min(i,o.length),a=0;for(;s>0;){const t=o.length-s;let r;if(o.copy(e.bufToStore,e.pos,t,t+u),e.pos+=u,i-=u,0===i){if(r=l(e.id,e.n,Buffer.from(e.bufToStore)),++e.state.outstandingRequests,++a,d(e,n))return;e.chunks.insertOne(r,{writeConcern:e.writeConcern}).then((()=>{--e.state.outstandingRequests,--a,a||h(e,n)}),(t=>c(e,t,n))),i=e.chunkSizeBytes,e.pos=0,++e.n}s-=u,u=Math.min(i,s)}}(this,e,t,r)}_final(e){if(this.state.streamEnd)return process.nextTick(e);this.state.streamEnd=!0,function(e,t){if(0===e.pos)return h(e,t);++e.state.outstandingRequests;const r=Buffer.alloc(e.pos);e.bufToStore.copy(r,0,0,e.pos);const n=l(e.id,e.n,r);d(e,t)||e.chunks.insertOne(n,{writeConcern:e.writeConcern}).then((()=>{--e.state.outstandingRequests,h(e,t)}),(r=>c(e,r,t)))}(this,e)}async abort(){if(this.state.streamEnd)throw new s.MongoAPIError("Cannot abort a stream that has already completed");if(this.state.aborted)throw new s.MongoAPIError("Cannot call abort() on a stream twice");this.state.aborted=!0,await this.chunks.deleteMany({files_id:this.id})}}function c(e,t,r){e.state.errored?process.nextTick(r):(e.state.errored=!0,process.nextTick(r,t))}function l(e,t,r){return{_id:new o.ObjectId,files_id:e,n:t,data:r}}function h(e,t){if(e.done)return process.nextTick(t);if(!e.state.streamEnd||0!==e.state.outstandingRequests||e.state.errored)process.nextTick(t);else{e.done=!0;const r=function(e,t,r,n,o,s,i){const u={_id:e,length:t,chunkSize:r,uploadDate:new Date,filename:n};return o&&(u.contentType=o),s&&(u.aliases=s),i&&(u.metadata=i),u}(e.id,e.length,e.chunkSizeBytes,e.filename,e.options.contentType,e.options.aliases,e.options.metadata);if(d(e,t))return;e.files.insertOne(r,{writeConcern:e.writeConcern}).then((()=>{e.gridFSFile=r,t()}),(r=>c(e,r,t)))}}function d(e,t){return!!e.state.aborted&&(process.nextTick(t,new s.MongoAPIError("Stream has been aborted")),!0)}t.GridFSBucketWriteStream=a},2950:(e,t,r)=>{"use strict";t.Vr=void 0;r(8137),r(1986),r(6835),r(5451),r(948),r(136),r(1888),r(383),r(6472),r(303),r(522),r(4124),r(3838),r(7055),r(6622),r(1404),r(945);r(5638);var n=r(5638);Object.defineProperty(t,"Vr",{enumerable:!0,get:function(){return n.ObjectId}});r(1546),r(575),r(7117),r(6372),r(1546),r(4782),r(1876),r(3387),r(6377),r(136),r(6372),r(593),r(6622),r(9061),r(737),r(9875),r(6474),r(281),r(9875),r(6474),r(770),r(3574),r(3113),r(9397),r(8124),r(1083),r(5871),r(9274)},6622:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoClient=t.ServerApiVersion=void 0;const n=r(9896),o=r(5638),s=r(5451),i=r(3416),u=r(3387),a=r(8266),c=r(3543),l=r(522),h=r(6372),d=r(9274),p=r(2973),f=r(1404),m=r(3184),g=r(7074),E=r(6474),A=r(6610),y=r(3737),C=r(945),S=r(407);t.ServerApiVersion=Object.freeze({v1:"1"});const w=Symbol("options");class b extends f.TypedEventEmitter{constructor(e,t){super(),this[w]=(0,a.parseOptions)(e,this,t);const r=Object.values(this[w].mongoLoggerOptions.componentSeverities).some((e=>e!==p.SeverityLevel.OFF));this.mongoLogger=r?new p.MongoLogger(this[w].mongoLoggerOptions):void 0;const n=this;this.s={url:e,bsonOptions:(0,o.resolveBSONOptions)(this[w]),namespace:(0,S.ns)("admin"),hasBeenClosed:!1,sessionPool:new C.ServerSessionPool(this),activeSessions:new Set,authProviders:new d.MongoClientAuthProviders,get options(){return n[w]},get readConcern(){return n[w].readConcern},get writeConcern(){return n[w].writeConcern},get readPreference(){return n[w].readPreference},get isMongoClient(){return!0}},this.checkForNonGenuineHosts()}checkForNonGenuineHosts(){const e=this[w].hosts.filter((e=>(0,S.isHostMatch)(S.DOCUMENT_DB_CHECK,e.host))),t=(0,S.isHostMatch)(S.DOCUMENT_DB_CHECK,this[w].srvHost),r=this[w].hosts.filter((e=>(0,S.isHostMatch)(S.COSMOS_DB_CHECK,e.host))),n=(0,S.isHostMatch)(S.COSMOS_DB_CHECK,this[w].srvHost);0!==e.length||t?this.mongoLogger?.info("client",S.DOCUMENT_DB_MSG):(0!==r.length||n)&&this.mongoLogger?.info("client",S.COSMOS_DB_MSG)}get options(){return Object.freeze({...this[w]})}get serverApi(){return this[w].serverApi&&Object.freeze({...this[w].serverApi})}get monitorCommands(){return this[w].monitorCommands}set monitorCommands(e){this[w].monitorCommands=e}get autoEncrypter(){return this[w].autoEncrypter}get readConcern(){return this.s.readConcern}get writeConcern(){return this.s.writeConcern}get readPreference(){return this.s.readPreference}get bsonOptions(){return this.s.bsonOptions}async connect(){if(this.connectionLock)return await this.connectionLock;try{this.connectionLock=this._connect(),await this.connectionLock}finally{this.connectionLock=void 0}return this}async _connect(){if(this.topology&&this.topology.isConnected())return this;const e=this[w];if(e.tls&&("string"==typeof e.tlsCAFile&&(e.ca??=await n.promises.readFile(e.tlsCAFile)),"string"==typeof e.tlsCRLFile&&(e.crl??=await n.promises.readFile(e.tlsCRLFile)),!("string"!=typeof e.tlsCertificateKeyFile||e.key&&e.cert))){const t=await n.promises.readFile(e.tlsCertificateKeyFile);e.key??=t,e.cert??=t}if("string"==typeof e.srvHost){const t=await(0,a.resolveSRVRecord)(e);for(const[r,n]of t.entries())e.hosts[r]=n}if(e.credentials?.mechanism===u.AuthMechanism.MONGODB_OIDC){const t=e.credentials?.mechanismProperties?.ALLOWED_HOSTS||i.DEFAULT_ALLOWED_HOSTS;if(!e.credentials?.mechanismProperties?.PROVIDER_NAME)for(const r of e.hosts)if(!(0,S.hostMatchesWildcards)(r.toHostPort().host,t))throw new h.MongoInvalidArgumentError(`Host '${r}' is not valid for OIDC authentication with ALLOWED_HOSTS of '${t.join(",")}'`)}this.topology=new y.Topology(this,e.hosts,e),this.topology.once(y.Topology.OPEN,(()=>this.emit("open",this)));for(const e of c.MONGO_CLIENT_EVENTS)this.topology.on(e,((...t)=>this.emit(e,...t)));const t=async()=>{try{await(this.topology?.connect(e))}catch(e){throw this.topology?.close(),e}};return this.autoEncrypter?(await(this.autoEncrypter?.init()),await t(),await e.encrypter.connectInternalClient()):await t(),this}async close(e=!1){Object.defineProperty(this.s,"hasBeenClosed",{value:!0,enumerable:!0,configurable:!1,writable:!1});const t=Array.from(this.s.activeSessions,(e=>e.endSession()));if(this.s.activeSessions.clear(),await Promise.all(t),null==this.topology)return;const r=(0,A.readPreferenceServerSelector)(E.ReadPreference.primaryPreferred),n=this.topology.description,o=Array.from(n.servers.values());if(0!==r(n,o).length){const e=Array.from(this.s.sessionPool.sessions,(({id:e})=>e));if(0!==e.length)try{await(0,m.executeOperation)(this,new g.RunAdminCommandOperation({endSessions:e},{readPreference:E.ReadPreference.primaryPreferred,noResponse:!0}))}catch(e){(0,S.squashError)(e)}}const s=this.topology;this.topology=void 0,s.close();const{encrypter:i}=this[w];i&&await i.close(this,e)}db(e,t){t=t??{},e||(e=this.options.dbName);const r=Object.assign({},this[w],t);return new l.Db(this,e,r)}static async connect(e,t){const r=new this(e,t);return await r.connect()}startSession(e){const t=new C.ClientSession(this,this.s.sessionPool,{explicit:!0,...e},this[w]);return this.s.activeSessions.add(t),t.once("ended",(()=>{this.s.activeSessions.delete(t)})),t}async withSession(e,t){const r={owner:Symbol(),..."object"==typeof e?e:{}},n="function"==typeof e?e:t;if(null==n)throw new h.MongoInvalidArgumentError("Missing required callback parameter");const o=this.startSession(r);try{return await n(o)}finally{try{await o.endSession()}catch(e){(0,S.squashError)(e)}}}watch(e=[],t={}){return Array.isArray(e)||(t=e,e=[]),new s.ChangeStream(this,e,(0,S.resolveOptions)(this,t))}}t.MongoClient=b},9274:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoClientAuthProviders=void 0;const n=r(1876),o=r(364),s=r(6093),i=r(7723),u=r(7985),a=r(3387),c=r(5039),l=r(2985),h=r(6372),d=new Map([[a.AuthMechanism.MONGODB_AWS,()=>new s.MongoDBAWS],[a.AuthMechanism.MONGODB_CR,()=>new o.MongoCR],[a.AuthMechanism.MONGODB_GSSAPI,()=>new n.GSSAPI],[a.AuthMechanism.MONGODB_OIDC,()=>new i.MongoDBOIDC],[a.AuthMechanism.MONGODB_PLAIN,()=>new u.Plain],[a.AuthMechanism.MONGODB_SCRAM_SHA1,()=>new c.ScramSHA1],[a.AuthMechanism.MONGODB_SCRAM_SHA256,()=>new c.ScramSHA256],[a.AuthMechanism.MONGODB_X509,()=>new l.X509]]);t.MongoClientAuthProviders=class{constructor(){this.existingProviders=new Map}getOrCreateProvider(e){const t=this.existingProviders.get(e);if(t)return t;const r=d.get(e)?.();if(!r)throw new h.MongoInvalidArgumentError(`authMechanism ${e} not supported`);return this.existingProviders.set(e,r),r}}},2973:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MongoLogger=t.defaultLogTransform=t.stringifyWithMaxLen=t.createStdioLogger=t.parseSeverityFromString=t.MongoLoggableComponent=t.SEVERITY_LEVEL_MAP=t.DEFAULT_MAX_DOCUMENT_LENGTH=t.SeverityLevel=void 0;const n=r(9023),o=r(5638),s=r(3543),i=r(407);t.SeverityLevel=Object.freeze({EMERGENCY:"emergency",ALERT:"alert",CRITICAL:"critical",ERROR:"error",WARNING:"warn",NOTICE:"notice",INFORMATIONAL:"info",DEBUG:"debug",TRACE:"trace",OFF:"off"}),t.DEFAULT_MAX_DOCUMENT_LENGTH=1e3;class u extends Map{constructor(e){const t=[];for(const[r,n]of e)t.push([n,r]);t.push(...e),super(t)}getNumericSeverityLevel(e){return this.get(e)}getSeverityLevelName(e){return this.get(e)}}function a(e){const r=Object.values(t.SeverityLevel),n=e?.toLowerCase();return null!=n&&r.includes(n)?n:null}function c(e){return{write:(0,n.promisify)(((t,r)=>{const o=(0,n.inspect)(t,{compact:!0,breakLength:1/0});e.write(`${o}\n`,"utf-8",r)}))}}function l(e,t,r){return a(e)??a(t)??r}function h(e,r){const n=t.SEVERITY_LEVEL_MAP.getNumericSeverityLevel(e),o=t.SEVERITY_LEVEL_MAP.getNumericSeverityLevel(r);return n<o?-1:n>o?1:0}function d(e,t,r={}){let n="";if("string"==typeof e)n=e;else if("function"==typeof e)n=e.name;else try{n=o.EJSON.stringify(e,r)}catch(e){n=`Extended JSON serialization failed with: ${e.message}`}return 0!==t&&n.length>t&&n.charCodeAt(t-1)!==n.codePointAt(t-1)&&0==--t?"":0!==t&&n.length>t?`${n.slice(0,t)}...`:n}function p(e,r,n=t.DEFAULT_MAX_DOCUMENT_LENGTH){const{selector:o,operation:s,topologyDescription:i,message:u}=r;return e.selector=d(o,n),e.operation=s,e.topologyDescription=d(i,n),e.message=u,e}function f(e,t){e.commandName=t.commandName,e.requestId=t.requestId,e.driverConnectionId=t.connectionId;const{host:r,port:n}=i.HostAddress.fromString(t.address).toHostPort();return e.serverHost=r,e.serverPort=n,t?.serviceId&&(e.serviceId=t.serviceId.toHexString()),e.databaseName=t.databaseName,e.serverConnectionId=t.serverConnectionId,e}function m(e,t){const{host:r,port:n}=i.HostAddress.fromString(t.address).toHostPort();return e.serverHost=r,e.serverPort=n,e}function g(e,t){return e.topologyId=t.topologyId,e}function E(e,t){const{awaited:r,connectionId:n}=t;e.awaited=r,e.driverConnectionId=t.connectionId;const{host:o,port:s}=i.HostAddress.fromString(n).toHostPort();return e.serverHost=o,e.serverPort=s,e}function A(e,r=t.DEFAULT_MAX_DOCUMENT_LENGTH){let n=Object.create(null);switch(e.name){case s.SERVER_SELECTION_STARTED:return n=p(n,e,r),n;case s.SERVER_SELECTION_FAILED:return n=p(n,e,r),n.failure=e.failure?.message,n;case s.SERVER_SELECTION_SUCCEEDED:return n=p(n,e,r),n.serverHost=e.serverHost,n.serverPort=e.serverPort,n;case s.WAITING_FOR_SUITABLE_SERVER:return n=p(n,e,r),n.remainingTimeMS=e.remainingTimeMS,n;case s.COMMAND_STARTED:return n=f(n,e),n.message="Command started",n.command=d(e.command,r,{relaxed:!0}),n.databaseName=e.databaseName,n;case s.COMMAND_SUCCEEDED:return n=f(n,e),n.message="Command succeeded",n.durationMS=e.duration,n.reply=d(e.reply,r,{relaxed:!0}),n;case s.COMMAND_FAILED:return n=f(n,e),n.message="Command failed",n.durationMS=e.duration,n.failure=e.failure?.message??"(redacted)",n;case s.CONNECTION_POOL_CREATED:if(n=m(n,e),n.message="Connection pool created",e.options){const{maxIdleTimeMS:t,minPoolSize:r,maxPoolSize:o,maxConnecting:s,waitQueueTimeoutMS:i}=e.options;n={...n,maxIdleTimeMS:t,minPoolSize:r,maxPoolSize:o,maxConnecting:s,waitQueueTimeoutMS:i}}return n;case s.CONNECTION_POOL_READY:return n=m(n,e),n.message="Connection pool ready",n;case s.CONNECTION_POOL_CLEARED:return n=m(n,e),n.message="Connection pool cleared","ObjectId"===e.serviceId?._bsontype&&(n.serviceId=e.serviceId?.toHexString()),n;case s.CONNECTION_POOL_CLOSED:return n=m(n,e),n.message="Connection pool closed",n;case s.CONNECTION_CREATED:return n=m(n,e),n.message="Connection created",n.driverConnectionId=e.connectionId,n;case s.CONNECTION_READY:return n=m(n,e),n.message="Connection ready",n.driverConnectionId=e.connectionId,n;case s.CONNECTION_CLOSED:switch(n=m(n,e),n.message="Connection closed",n.driverConnectionId=e.connectionId,e.reason){case"stale":n.reason="Connection became stale because the pool was cleared";break;case"idle":n.reason="Connection has been available but unused for longer than the configured max idle time";break;case"error":n.reason="An error occurred while using the connection",e.error&&(n.error=e.error);break;case"poolClosed":n.reason="Connection pool was closed";break;default:n.reason=`Unknown close reason: ${e.reason}`}return n;case s.CONNECTION_CHECK_OUT_STARTED:return n=m(n,e),n.message="Connection checkout started",n;case s.CONNECTION_CHECK_OUT_FAILED:switch(n=m(n,e),n.message="Connection checkout failed",e.reason){case"poolClosed":n.reason="Connection pool was closed";break;case"timeout":n.reason="Wait queue timeout elapsed without a connection becoming available";break;case"connectionError":n.reason="An error occurred while trying to establish a new connection",e.error&&(n.error=e.error);break;default:n.reason=`Unknown close reason: ${e.reason}`}return n;case s.CONNECTION_CHECKED_OUT:return n=m(n,e),n.message="Connection checked out",n.driverConnectionId=e.connectionId,n;case s.CONNECTION_CHECKED_IN:return n=m(n,e),n.message="Connection checked in",n.driverConnectionId=e.connectionId,n;case s.SERVER_OPENING:return n=g(n,e),n=m(n,e),n.message="Starting server monitoring",n;case s.SERVER_CLOSED:return n=g(n,e),n=m(n,e),n.message="Stopped server monitoring",n;case s.SERVER_HEARTBEAT_STARTED:return n=g(n,e),n=E(n,e),n.message="Server heartbeat started",n;case s.SERVER_HEARTBEAT_SUCCEEDED:return n=g(n,e),n=E(n,e),n.message="Server heartbeat succeeded",n.durationMS=e.duration,n.serverConnectionId=e.serverConnectionId,n.reply=d(e.reply,r,{relaxed:!0}),n;case s.SERVER_HEARTBEAT_FAILED:return n=g(n,e),n=E(n,e),n.message="Server heartbeat failed",n.durationMS=e.duration,n.failure=e.failure?.message,n;case s.TOPOLOGY_OPENING:return n=g(n,e),n.message="Starting topology monitoring",n;case s.TOPOLOGY_CLOSED:return n=g(n,e),n.message="Stopped topology monitoring",n;case s.TOPOLOGY_DESCRIPTION_CHANGED:return n=g(n,e),n.message="Topology description changed",n.previousDescription=n.reply=d(e.previousDescription,r),n.newDescription=n.reply=d(e.newDescription,r),n;default:for(const[t,r]of Object.entries(e))null!=r&&(n[t]=r)}return n}t.SEVERITY_LEVEL_MAP=new u([[t.SeverityLevel.OFF,-1/0],[t.SeverityLevel.EMERGENCY,0],[t.SeverityLevel.ALERT,1],[t.SeverityLevel.CRITICAL,2],[t.SeverityLevel.ERROR,3],[t.SeverityLevel.WARNING,4],[t.SeverityLevel.NOTICE,5],[t.SeverityLevel.INFORMATIONAL,6],[t.SeverityLevel.DEBUG,7],[t.SeverityLevel.TRACE,8]]),t.MongoLoggableComponent=Object.freeze({COMMAND:"command",TOPOLOGY:"topology",SERVER_SELECTION:"serverSelection",CONNECTION:"connection",CLIENT:"client"}),t.parseSeverityFromString=a,t.createStdioLogger=c,t.stringifyWithMaxLen=d,t.defaultLogTransform=A,t.MongoLogger=class{constructor(e){this.pendingLog=null,this.error=this.log.bind(this,"error"),this.warn=this.log.bind(this,"warn"),this.info=this.log.bind(this,"info"),this.debug=this.log.bind(this,"debug"),this.trace=this.log.bind(this,"trace"),this.componentSeverities=e.componentSeverities,this.maxDocumentLength=e.maxDocumentLength,this.logDestination=e.logDestination,this.logDestinationIsStdErr=e.logDestinationIsStdErr,this.severities=this.createLoggingSeverities()}createLoggingSeverities(){const e=Object();for(const r of Object.values(t.MongoLoggableComponent)){e[r]={};for(const n of Object.values(t.SeverityLevel))e[r][n]=h(n,this.componentSeverities[r])<=0}return e}turnOffSeverities(){for(const e of Object.values(t.MongoLoggableComponent)){this.componentSeverities[e]=t.SeverityLevel.OFF;for(const r of Object.values(t.SeverityLevel))this.severities[e][r]=!1}}logWriteFailureHandler(e){if(this.logDestinationIsStdErr)return this.turnOffSeverities(),void this.clearPendingLog();this.logDestination=c(process.stderr),this.logDestinationIsStdErr=!0,this.clearPendingLog(),this.error(t.MongoLoggableComponent.CLIENT,{toLog:function(){return{message:"User input for mongodbLogPath is now invalid. Logging is halted.",error:e.message}}}),this.turnOffSeverities(),this.clearPendingLog()}clearPendingLog(){this.pendingLog=null}willLog(e,r){return r!==t.SeverityLevel.OFF&&this.severities[e][r]}log(e,t,r){if(!this.willLog(t,e))return;let n={t:new Date,c:t,s:e};if("string"==typeof r?n.message=r:"object"==typeof r&&(n=function(e){const t=e;return void 0!==t.toLog&&"function"==typeof t.toLog}(r)?{...n,...r.toLog()}:{...n,...A(r,this.maxDocumentLength)}),(0,i.isPromiseLike)(this.pendingLog))this.pendingLog=this.pendingLog.then((()=>this.logDestination.write(n))).then(this.clearPendingLog.bind(this),this.logWriteFailureHandler.bind(this));else try{const e=this.logDestination.write(n);(0,i.isPromiseLike)(e)&&(this.pendingLog=e.then(this.clearPendingLog.bind(this),this.logWriteFailureHandler.bind(this)))}catch(e){this.logWriteFailureHandler(e)}}static resolveOptions(e,r){const n=function({MONGODB_LOG_PATH:e},{mongodbLogPath:t}){return"string"==typeof t&&/^stderr$/i.test(t)?{mongodbLogPath:c(process.stderr),mongodbLogPathIsStdErr:!0}:"string"==typeof t&&/^stdout$/i.test(t)?{mongodbLogPath:c(process.stdout),mongodbLogPathIsStdErr:!1}:"object"==typeof t&&"function"==typeof t?.write?{mongodbLogPath:t,mongodbLogPathIsStdErr:!1}:e&&/^stderr$/i.test(e)?{mongodbLogPath:c(process.stderr),mongodbLogPathIsStdErr:!0}:e&&/^stdout$/i.test(e)?{mongodbLogPath:c(process.stdout),mongodbLogPathIsStdErr:!1}:{mongodbLogPath:c(process.stderr),mongodbLogPathIsStdErr:!0}}(e,r),o={...e,...r,mongodbLogPath:n.mongodbLogPath,mongodbLogPathIsStdErr:n.mongodbLogPathIsStdErr},s=l(o.mongodbLogComponentSeverities?.default,o.MONGODB_LOG_ALL,t.SeverityLevel.OFF);return{componentSeverities:{command:l(o.mongodbLogComponentSeverities?.command,o.MONGODB_LOG_COMMAND,s),topology:l(o.mongodbLogComponentSeverities?.topology,o.MONGODB_LOG_TOPOLOGY,s),serverSelection:l(o.mongodbLogComponentSeverities?.serverSelection,o.MONGODB_LOG_SERVER_SELECTION,s),connection:l(o.mongodbLogComponentSeverities?.connection,o.MONGODB_LOG_CONNECTION,s),client:l(o.mongodbLogComponentSeverities?.client,o.MONGODB_LOG_CLIENT,s),default:s},maxDocumentLength:o.mongodbLogMaxDocumentLength??(0,i.parseUnsignedInteger)(o.MONGODB_LOG_MAX_DOCUMENT_LENGTH)??1e3,logDestination:o.mongodbLogPath,logDestinationIsStdErr:o.mongodbLogPathIsStdErr}}}},1404:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CancellationToken=t.TypedEventEmitter=void 0;const n=r(4434),o=r(2973);class s extends n.EventEmitter{emitAndLog(e,...t){this.emit(e,...t),this.component&&this.mongoLogger?.debug(this.component,t[0])}emitAndLogHeartbeat(e,t,r,...n){if(this.emit(e,...n),this.component){const e={topologyId:t,serverConnectionId:r??null,...n[0]};this.mongoLogger?.debug(this.component,e)}}emitAndLogCommand(e,t,r,n,...s){if(e&&this.emit(t,...s),n){const e={databaseName:r,...s[0]};this.mongoLogger?.debug(o.MongoLoggableComponent.COMMAND,e)}}}t.TypedEventEmitter=s,t.CancellationToken=class extends s{}},5182:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggregateOperation=t.DB_AGGREGATE_COLLECTION=void 0;const n=r(6372),o=r(407),s=r(770),i=r(6684),u=r(5192);t.DB_AGGREGATE_COLLECTION=1;class a extends i.CommandOperation{constructor(e,r,o){if(super(void 0,{...o,dbName:e.db}),this.options={...o},this.target=e.collection||t.DB_AGGREGATE_COLLECTION,this.pipeline=r,this.hasWriteStage=!1,"string"==typeof o?.out)this.pipeline=this.pipeline.concat({$out:o.out}),this.hasWriteStage=!0;else if(r.length>0){const e=r[r.length-1];(e.$out||e.$merge)&&(this.hasWriteStage=!0)}if(this.hasWriteStage?this.trySecondaryWrite=!0:delete this.options.writeConcern,this.explain&&this.writeConcern)throw new n.MongoInvalidArgumentError('Option "explain" cannot be used on an aggregate call with writeConcern');if(null!=o?.cursor&&"object"!=typeof o.cursor)throw new n.MongoInvalidArgumentError("Cursor options must be an object")}get commandName(){return"aggregate"}get canRetryRead(){return!this.hasWriteStage}addToPipeline(e){this.pipeline.push(e)}async execute(e,t){const r=this.options,n=(0,o.maxWireVersion)(e),i={aggregate:this.target,pipeline:this.pipeline};return this.hasWriteStage&&n<8&&(this.readConcern=void 0),this.hasWriteStage&&this.writeConcern&&s.WriteConcern.apply(i,this.writeConcern),!0===r.bypassDocumentValidation&&(i.bypassDocumentValidation=r.bypassDocumentValidation),"boolean"==typeof r.allowDiskUse&&(i.allowDiskUse=r.allowDiskUse),r.hint&&(i.hint=r.hint),r.let&&(i.let=r.let),void 0!==r.comment&&(i.comment=r.comment),i.cursor=r.cursor||{},r.batchSize&&!this.hasWriteStage&&(i.cursor.batchSize=r.batchSize),await super.executeCommand(e,t,i)}}t.AggregateOperation=a,(0,u.defineAspects)(a,[u.Aspect.READ_OPERATION,u.Aspect.RETRYABLE,u.Aspect.EXPLAINABLE,u.Aspect.CURSOR_CREATING])},6061:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BulkWriteOperation=void 0;const n=r(5192);class o extends n.AbstractOperation{constructor(e,t,r){super(r),this.options=r,this.collection=e,this.operations=t}get commandName(){return"bulkWrite"}async execute(e,t){const r=this.collection,n=this.operations,o={...this.options,...this.bsonOptions,readPreference:this.readPreference},s=!1===o.ordered?r.initializeUnorderedBulkOp(o):r.initializeOrderedBulkOp(o);for(let e=0;e<n.length;e++)s.raw(n[e]);return await s.execute({...o,session:t})}}t.BulkWriteOperation=o,(0,n.defineAspects)(o,[n.Aspect.WRITE_OPERATION])},2700:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CollectionsOperation=void 0;const n=r(948),o=r(5192);class s extends o.AbstractOperation{constructor(e,t){super(t),this.options=t,this.db=e}get commandName(){return"listCollections"}async execute(e,t){const r=await this.db.listCollections({},{...this.options,nameOnly:!0,readPreference:this.readPreference,session:t}).toArray(),o=[];for(const{name:e}of r)e.includes("$")||o.push(new n.Collection(this.db,e,this.db.s.options));return o}}t.CollectionsOperation=s},6684:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CommandOperation=void 0;const n=r(6372),o=r(593),s=r(9875),i=r(6610),u=r(407),a=r(770),c=r(5192);class l extends c.AbstractOperation{constructor(e,t){super(t),this.options=t??{};const r=t?.dbName||t?.authdb;if(this.ns=r?new u.MongoDBNamespace(r,"$cmd"):e?e.s.namespace.withCollection("$cmd"):new u.MongoDBNamespace("admin","$cmd"),this.readConcern=s.ReadConcern.fromOptions(t),this.writeConcern=a.WriteConcern.fromOptions(t),this.hasAspect(c.Aspect.EXPLAINABLE))this.explain=o.Explain.fromOptions(t);else if(null!=t?.explain)throw new n.MongoInvalidArgumentError('Option "explain" is not supported on this command')}get canRetryWrite(){return!this.hasAspect(c.Aspect.EXPLAINABLE)||null==this.explain}async executeCommand(e,t,r){this.server=e;const n={...this.options,...this.bsonOptions,readPreference:this.readPreference,session:t},o=(0,u.maxWireVersion)(e),s=this.session&&this.session.inTransaction();return this.readConcern&&(0,u.commandSupportsReadConcern)(r)&&!s&&Object.assign(r,{readConcern:this.readConcern}),this.trySecondaryWrite&&o<i.MIN_SECONDARY_WRITE_WIRE_VERSION&&(n.omitReadPreference=!0),this.writeConcern&&this.hasAspect(c.Aspect.WRITE_OPERATION)&&!s&&a.WriteConcern.apply(r,this.writeConcern),n.collation&&"object"==typeof n.collation&&!this.hasAspect(c.Aspect.SKIP_COLLATION)&&Object.assign(r,{collation:n.collation}),"number"==typeof n.maxTimeMS&&(r.maxTimeMS=n.maxTimeMS),this.hasAspect(c.Aspect.EXPLAINABLE)&&this.explain&&(r=(0,u.decorateWithExplain)(r,this.explain)),await e.command(this.ns,r,n)}}t.CommandOperation=l},2374:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CountOperation=void 0;const n=r(6684),o=r(5192);class s extends n.CommandOperation{constructor(e,t,r){super({s:{namespace:e}},r),this.options=r,this.collectionName=e.collection,this.query=t}get commandName(){return"count"}async execute(e,t){const r=this.options,n={count:this.collectionName,query:this.query};"number"==typeof r.limit&&(n.limit=r.limit),"number"==typeof r.skip&&(n.skip=r.skip),null!=r.hint&&(n.hint=r.hint),"number"==typeof r.maxTimeMS&&(n.maxTimeMS=r.maxTimeMS);const o=await super.executeCommand(e,t,n);return o?o.n:0}}t.CountOperation=s,(0,o.defineAspects)(s,[o.Aspect.READ_OPERATION,o.Aspect.RETRYABLE])},5343:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CountDocumentsOperation=void 0;const n=r(5182);class o extends n.AggregateOperation{constructor(e,t,r){const n=[];n.push({$match:t}),"number"==typeof r.skip&&n.push({$skip:r.skip}),"number"==typeof r.limit&&n.push({$limit:r.limit}),n.push({$group:{_id:1,n:{$sum:1}}}),super(e.s.namespace,n,r)}async execute(e,t){const r=await super.execute(e,t);if(null==r.cursor||null==r.cursor.firstBatch)return 0;const n=r.cursor.firstBatch;return n.length?n[0].n:0}}t.CountDocumentsOperation=o},6060:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CreateCollectionOperation=void 0;const n=r(9826),o=r(948),s=r(6372),i=r(6684),u=r(1213),a=r(5192),c=new Set(["w","wtimeout","j","fsync","autoIndexId","pkFactory","raw","readPreference","session","readConcern","writeConcern","raw","fieldsAsRaw","useBigInt64","promoteLongs","promoteValues","promoteBuffers","bsonRegExp","serializeFunctions","ignoreUndefined","enableUtf8Validation"]);class l extends i.CommandOperation{constructor(e,t,r={}){super(e,r),this.options=r,this.db=e,this.name=t}get commandName(){return"create"}async execute(e,t){const r=this.db,o=this.name,i=this.options,a=i.encryptedFields??r.client.options.autoEncryption?.encryptedFieldsMap?.[`${r.databaseName}.${o}`];if(a){if(!e.loadBalanced&&e.description.maxWireVersion<n.MIN_SUPPORTED_QE_WIRE_VERSION)throw new s.MongoCompatibilityError(`Driver support of Queryable Encryption is incompatible with server. Upgrade server to use Queryable Encryption. The minimum server version required is ${n.MIN_SUPPORTED_QE_SERVER_VERSION}`);const u=a.escCollection??`enxcol_.${o}.esc`,c=a.ecocCollection??`enxcol_.${o}.ecoc`;for(const n of[u,c]){const o=new l(r,n,{clusteredIndex:{key:{_id:1},unique:!0}});await o.executeWithoutEncryptedFieldsCheck(e,t)}i.encryptedFields||(this.options={...this.options,encryptedFields:a})}const c=await this.executeWithoutEncryptedFieldsCheck(e,t);if(a){const n=u.CreateIndexesOperation.fromIndexSpecification(r,o,{__safeContent__:1},{});await n.execute(e,t)}return c}async executeWithoutEncryptedFieldsCheck(e,t){const r=this.db,n=this.name,s=this.options,i={create:n};for(const e in s)null==s[e]||"function"==typeof s[e]||c.has(e)||(i[e]=s[e]);return await super.executeCommand(e,t,i),new o.Collection(r,n,s)}}t.CreateCollectionOperation=l,(0,a.defineAspects)(l,[a.Aspect.WRITE_OPERATION])},3618:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.makeDeleteStatement=t.DeleteManyOperation=t.DeleteOneOperation=t.DeleteOperation=void 0;const n=r(6372),o=r(6684),s=r(5192);class i extends o.CommandOperation{constructor(e,t,r){super(void 0,r),this.options=r,this.ns=e,this.statements=t}get commandName(){return"delete"}get canRetryWrite(){return!1!==super.canRetryWrite&&this.statements.every((e=>null==e.limit||e.limit>0))}async execute(e,t){const r=this.options??{},o="boolean"!=typeof r.ordered||r.ordered,s={delete:this.ns.collection,deletes:this.statements,ordered:o};if(r.let&&(s.let=r.let),void 0!==r.comment&&(s.comment=r.comment),this.writeConcern&&0===this.writeConcern.w&&this.statements.find((e=>e.hint)))throw new n.MongoCompatibilityError("hint is not supported with unacknowledged writes");return await super.executeCommand(e,t,s)}}t.DeleteOperation=i;class u extends i{constructor(e,t,r){super(e.s.namespace,[c(t,{...r,limit:1})],r)}async execute(e,t){const r=await super.execute(e,t);if(this.explain)return r;if(r.code)throw new n.MongoServerError(r);if(r.writeErrors)throw new n.MongoServerError(r.writeErrors[0]);return{acknowledged:0!==this.writeConcern?.w,deletedCount:r.n}}}t.DeleteOneOperation=u;class a extends i{constructor(e,t,r){super(e.s.namespace,[c(t,r)],r)}async execute(e,t){const r=await super.execute(e,t);if(this.explain)return r;if(r.code)throw new n.MongoServerError(r);if(r.writeErrors)throw new n.MongoServerError(r.writeErrors[0]);return{acknowledged:0!==this.writeConcern?.w,deletedCount:r.n}}}function c(e,t){const r={q:e,limit:"number"==typeof t.limit?t.limit:0};return t.collation&&(r.collation=t.collation),t.hint&&(r.hint=t.hint),r}t.DeleteManyOperation=a,t.makeDeleteStatement=c,(0,s.defineAspects)(i,[s.Aspect.RETRYABLE,s.Aspect.WRITE_OPERATION]),(0,s.defineAspects)(u,[s.Aspect.RETRYABLE,s.Aspect.WRITE_OPERATION,s.Aspect.EXPLAINABLE,s.Aspect.SKIP_COLLATION]),(0,s.defineAspects)(a,[s.Aspect.WRITE_OPERATION,s.Aspect.EXPLAINABLE,s.Aspect.SKIP_COLLATION])},253:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DistinctOperation=void 0;const n=r(407),o=r(6684),s=r(5192);class i extends o.CommandOperation{constructor(e,t,r,n){super(e,n),this.options=n??{},this.collection=e,this.key=t,this.query=r}get commandName(){return"distinct"}async execute(e,t){const r=this.collection,o=this.key,s=this.query,i=this.options,u={distinct:r.collectionName,key:o,query:s};"number"==typeof i.maxTimeMS&&(u.maxTimeMS=i.maxTimeMS),void 0!==i.comment&&(u.comment=i.comment),(0,n.decorateWithReadConcern)(u,r,i),(0,n.decorateWithCollation)(u,r,i);const a=await super.executeCommand(e,t,u);return this.explain?a:a.values}}t.DistinctOperation=i,(0,s.defineAspects)(i,[s.Aspect.READ_OPERATION,s.Aspect.RETRYABLE,s.Aspect.EXPLAINABLE])},3208:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DropDatabaseOperation=t.DropCollectionOperation=void 0;const n=r(6372),o=r(6684),s=r(5192);class i extends o.CommandOperation{constructor(e,t,r={}){super(e,r),this.db=e,this.options=r,this.name=t}get commandName(){return"drop"}async execute(e,t){const r=this.db,o=this.options,s=this.name,u=r.client.options.autoEncryption?.encryptedFieldsMap;let a=o.encryptedFields??u?.[`${r.databaseName}.${s}`];if(!a&&u){const e=await r.listCollections({name:s},{nameOnly:!1}).toArray();a=e?.[0]?.options?.encryptedFields}if(a){const o=a.escCollection||`enxcol_.${s}.esc`,u=a.ecocCollection||`enxcol_.${s}.ecoc`;for(const s of[o,u]){const o=new i(r,s);try{await o.executeWithoutEncryptedFieldsCheck(e,t)}catch(e){if(!(e instanceof n.MongoServerError)||e.code!==n.MONGODB_ERROR_CODES.NamespaceNotFound)throw e}}}return await this.executeWithoutEncryptedFieldsCheck(e,t)}async executeWithoutEncryptedFieldsCheck(e,t){return await super.executeCommand(e,t,{drop:this.name}),!0}}t.DropCollectionOperation=i;class u extends o.CommandOperation{constructor(e,t){super(e,t),this.options=t}get commandName(){return"dropDatabase"}async execute(e,t){return await super.executeCommand(e,t,{dropDatabase:1}),!0}}t.DropDatabaseOperation=u,(0,s.defineAspects)(i,[s.Aspect.WRITE_OPERATION]),(0,s.defineAspects)(u,[s.Aspect.WRITE_OPERATION])},2331:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EstimatedDocumentCountOperation=void 0;const n=r(6684),o=r(5192);class s extends n.CommandOperation{constructor(e,t={}){super(e,t),this.options=t,this.collectionName=e.collectionName}get commandName(){return"count"}async execute(e,t){const r={count:this.collectionName};"number"==typeof this.options.maxTimeMS&&(r.maxTimeMS=this.options.maxTimeMS),void 0!==this.options.comment&&(r.comment=this.options.comment);const n=await super.executeCommand(e,t,r);return n?.n||0}}t.EstimatedDocumentCountOperation=s,(0,o.defineAspects)(s,[o.Aspect.READ_OPERATION,o.Aspect.RETRYABLE,o.Aspect.CURSOR_CREATING])},3184:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.executeOperation=void 0;const n=r(6372),o=r(6474),s=r(6610),i=r(407),u=r(5192),a=n.MONGODB_ERROR_CODES.IllegalOperation,c="This MongoDB deployment does not support retryable writes. Please add retryWrites=false to your connection string.";t.executeOperation=async function(e,t){if(!(t instanceof u.AbstractOperation))throw new n.MongoRuntimeError("This method requires a valid operation instance");if(null==e.topology){if(e.s.hasBeenClosed)throw new n.MongoNotConnectedError("Client must be connected before running operations");e.s.options[Symbol.for("@@mdb.skipPingOnConnect")]=!0;try{await e.connect()}finally{delete e.s.options[Symbol.for("@@mdb.skipPingOnConnect")]}}const{topology:r}=e;if(null==r)throw new n.MongoRuntimeError("client.connect did not create a topology but also did not throw");let l,h=t.session;if(null==h)l=Symbol(),h=e.startSession({owner:l,explicit:!1});else{if(h.hasEnded)throw new n.MongoExpiredSessionError("Use of expired sessions is not permitted");if(h.snapshotEnabled&&!r.capabilities.supportsSnapshotReads)throw new n.MongoCompatibilityError("Snapshot reads require MongoDB 5.0 or later");if(h.client!==e)throw new n.MongoInvalidArgumentError("ClientSession must be from the same MongoClient")}if(h.explicit&&null!=h?.timeoutMS&&null!=t.options.timeoutMS)throw new n.MongoInvalidArgumentError("Do not specify timeoutMS on operation if already specified on an explicit session");const d=t.readPreference??o.ReadPreference.primary,p=!!h?.inTransaction(),f=t.hasAspect(u.Aspect.READ_OPERATION),m=t.hasAspect(u.Aspect.WRITE_OPERATION);if(p&&!d.equals(o.ReadPreference.primary)&&(f||"runCommand"===t.commandName))throw new n.MongoTransactionError(`Read preference in a transaction must be primary, not: ${d.mode}`);let g;h?.isPinned&&h.transaction.isCommitted&&!t.bypassPinningCheck&&h.unpin(),g=t.hasAspect(u.Aspect.MUST_SELECT_SAME_SERVER)?(0,s.sameServerSelector)(t.server?.description):t.trySecondaryWrite?(0,s.secondaryWritableServerSelector)(r.commonWireVersion,d):d;const E=await r.selectServer(g,{session:h,operationName:t.commandName});if(null==h)return await t.execute(E,void 0);if(!t.hasAspect(u.Aspect.RETRYABLE))try{return await t.execute(E,h)}finally{if(null!=h?.owner&&h.owner===l)try{await h.endSession()}catch(e){(0,i.squashError)(e)}}const A=r.s.options.retryReads&&!p&&t.canRetryRead,y=r.s.options.retryWrites&&!p&&(0,i.supportsRetryableWrites)(E)&&t.canRetryWrite,C=f&&A||m&&y;m&&y&&(t.options.willRetryWrite=!0,h.incrementTransactionNumber());try{return await t.execute(E,h)}catch(e){if(C&&e instanceof n.MongoError)return await async function(e,t,{session:r,topology:o,selector:s,previousServer:l}){const h=e.hasAspect(u.Aspect.WRITE_OPERATION),d=e.hasAspect(u.Aspect.READ_OPERATION);if(h&&t.code===a)throw new n.MongoServerError({message:c,errmsg:c,originalError:t});if(h&&!(0,n.isRetryableWriteError)(t))throw t;if(d&&!(0,n.isRetryableReadError)(t))throw t;t instanceof n.MongoNetworkError&&r.isPinned&&!r.inTransaction()&&e.hasAspect(u.Aspect.CURSOR_CREATING)&&r.unpin({force:!0,forceClear:!0});const p=await o.selectServer(s,{session:r,operationName:e.commandName,previousServer:l});if(h&&!(0,i.supportsRetryableWrites)(p))throw new n.MongoUnexpectedServerResponseError("Selected server does not support retryable writes");try{return await e.execute(p,r)}catch(e){if(e instanceof n.MongoError&&e.hasErrorLabel(n.MongoErrorLabel.NoWritesPerformed))throw t;throw e}}(t,e,{session:h,topology:r,selector:g,previousServer:E.description});throw e}finally{if(null!=h?.owner&&h.owner===l)try{await h.endSession()}catch(e){(0,i.squashError)(e)}}}},7850:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FindOperation=void 0;const n=r(6372),o=r(9875),s=r(2260),i=r(407),u=r(6684),a=r(5192);class c extends u.CommandOperation{constructor(e,t={},r={}){if(super(void 0,r),this.options={...r},delete this.options.writeConcern,this.ns=e,"object"!=typeof t||Array.isArray(t))throw new n.MongoInvalidArgumentError("Query filter must be a plain object or ObjectId");this.filter=null!=t&&"ObjectId"===t._bsontype?{_id:t}:t}get commandName(){return"find"}async execute(e,t){this.server=e;const r=this.options;let n=function(e,t,r){const n={find:e.collection,filter:t};if(r.sort&&(n.sort=(0,s.formatSort)(r.sort)),r.projection){let e=r.projection;e&&Array.isArray(e)&&(e=e.length?e.reduce(((e,t)=>(e[t]=1,e)),{}):{_id:1}),n.projection=e}r.hint&&(n.hint=(0,i.normalizeHintField)(r.hint)),"number"==typeof r.skip&&(n.skip=r.skip),"number"==typeof r.limit&&(r.limit<0?(n.limit=-r.limit,n.singleBatch=!0):n.limit=r.limit),"number"==typeof r.batchSize&&(r.batchSize<0?(r.limit&&0!==r.limit&&Math.abs(r.batchSize)<Math.abs(r.limit)&&(n.limit=-r.batchSize),n.singleBatch=!0):n.batchSize=r.batchSize),"boolean"==typeof r.singleBatch&&(n.singleBatch=r.singleBatch),void 0!==r.comment&&(n.comment=r.comment),"number"==typeof r.maxTimeMS&&(n.maxTimeMS=r.maxTimeMS);const u=o.ReadConcern.fromOptions(r);return u&&(n.readConcern=u.toJSON()),r.max&&(n.max=r.max),r.min&&(n.min=r.min),"boolean"==typeof r.returnKey&&(n.returnKey=r.returnKey),"boolean"==typeof r.showRecordId&&(n.showRecordId=r.showRecordId),"boolean"==typeof r.tailable&&(n.tailable=r.tailable),"boolean"==typeof r.oplogReplay&&(n.oplogReplay=r.oplogReplay),"boolean"==typeof r.timeout?n.noCursorTimeout=!r.timeout:"boolean"==typeof r.noCursorTimeout&&(n.noCursorTimeout=r.noCursorTimeout),"boolean"==typeof r.awaitData&&(n.awaitData=r.awaitData),"boolean"==typeof r.allowPartialResults&&(n.allowPartialResults=r.allowPartialResults),r.collation&&(n.collation=r.collation),"boolean"==typeof r.allowDiskUse&&(n.allowDiskUse=r.allowDiskUse),r.let&&(n.let=r.let),n}(this.ns,this.filter,r);return this.explain&&(n=(0,i.decorateWithExplain)(n,this.explain)),await e.command(this.ns,n,{...this.options,...this.bsonOptions,documentsReturnedIn:"firstBatch",session:t},void 0)}}t.FindOperation=c,(0,a.defineAspects)(c,[a.Aspect.READ_OPERATION,a.Aspect.RETRYABLE,a.Aspect.EXPLAINABLE,a.Aspect.CURSOR_CREATING])},9061:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FindOneAndUpdateOperation=t.FindOneAndReplaceOperation=t.FindOneAndDeleteOperation=t.FindAndModifyOperation=t.ReturnDocument=void 0;const n=r(6372),o=r(6474),s=r(2260),i=r(407),u=r(6684),a=r(5192);function c(e,r){return e.new=r.returnDocument===t.ReturnDocument.AFTER,e.upsert=!0===r.upsert,!0===r.bypassDocumentValidation&&(e.bypassDocumentValidation=r.bypassDocumentValidation),e}t.ReturnDocument=Object.freeze({BEFORE:"before",AFTER:"after"});class l extends u.CommandOperation{constructor(e,t,r){super(e,r),this.options=r??{},this.cmdBase={remove:!1,new:!1,upsert:!1},r.includeResultMetadata??=!1;const n=(0,s.formatSort)(r.sort);n&&(this.cmdBase.sort=n),r.projection&&(this.cmdBase.fields=r.projection),r.maxTimeMS&&(this.cmdBase.maxTimeMS=r.maxTimeMS),r.writeConcern&&(this.cmdBase.writeConcern=r.writeConcern),r.let&&(this.cmdBase.let=r.let),void 0!==r.comment&&(this.cmdBase.comment=r.comment),this.readPreference=o.ReadPreference.primary,this.collection=e,this.query=t}get commandName(){return"findAndModify"}async execute(e,t){const r=this.collection,o=this.query,s={...this.options,...this.bsonOptions},u={findAndModify:r.collectionName,query:o,...this.cmdBase};try{(0,i.decorateWithCollation)(u,r,s)}catch(e){return e}if(s.hint){if(0===this.writeConcern?.w||(0,i.maxWireVersion)(e)<8)throw new n.MongoCompatibilityError("The current topology does not support a hint on findAndModify commands");u.hint=s.hint}const a=await super.executeCommand(e,t,u);return s.includeResultMetadata?a:a.value??null}}t.FindAndModifyOperation=l,t.FindOneAndDeleteOperation=class extends l{constructor(e,t,r){if(null==t||"object"!=typeof t)throw new n.MongoInvalidArgumentError('Argument "filter" must be an object');super(e,t,r),this.cmdBase.remove=!0}},t.FindOneAndReplaceOperation=class extends l{constructor(e,t,r,o){if(null==t||"object"!=typeof t)throw new n.MongoInvalidArgumentError('Argument "filter" must be an object');if(null==r||"object"!=typeof r)throw new n.MongoInvalidArgumentError('Argument "replacement" must be an object');if((0,i.hasAtomicOperators)(r))throw new n.MongoInvalidArgumentError("Replacement document must not contain atomic operators");super(e,t,o),this.cmdBase.update=r,c(this.cmdBase,o)}},t.FindOneAndUpdateOperation=class extends l{constructor(e,t,r,o){if(null==t||"object"!=typeof t)throw new n.MongoInvalidArgumentError('Argument "filter" must be an object');if(null==r||"object"!=typeof r)throw new n.MongoInvalidArgumentError('Argument "update" must be an object');if(!(0,i.hasAtomicOperators)(r))throw new n.MongoInvalidArgumentError("Update document requires atomic operators");super(e,t,o),this.cmdBase.update=r,c(this.cmdBase,o),o.arrayFilters&&(this.cmdBase.arrayFilters=o.arrayFilters)}},(0,a.defineAspects)(l,[a.Aspect.WRITE_OPERATION,a.Aspect.RETRYABLE,a.Aspect.EXPLAINABLE])},8597:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GetMoreOperation=void 0;const n=r(7783),o=r(6372),s=r(407),i=r(5192);class u extends i.AbstractOperation{constructor(e,t,r,n){super(n),this.options=n,this.ns=e,this.cursorId=t,this.server=r}get commandName(){return"getMore"}async execute(e,t){if(e!==this.server)throw new o.MongoRuntimeError("Getmore must run on the same server operation began on");if(null==this.cursorId||this.cursorId.isZero())throw new o.MongoRuntimeError("Unable to iterate cursor with no id");const r=this.ns.collection;if(null==r)throw new o.MongoRuntimeError("A collection name must be determined before getMore");const i={getMore:this.cursorId,collection:r};"number"==typeof this.options.batchSize&&(i.batchSize=Math.abs(this.options.batchSize)),"number"==typeof this.options.maxAwaitTimeMS&&(i.maxTimeMS=this.options.maxAwaitTimeMS),void 0!==this.options.comment&&(0,s.maxWireVersion)(e)>=9&&(i.comment=this.options.comment);const u={returnFieldSelector:null,documentsReturnedIn:"nextBatch",...this.options};return await e.command(this.ns,i,u,this.options.useCursorResponse?n.CursorResponse:void 0)}}t.GetMoreOperation=u,(0,i.defineAspects)(u,[i.Aspect.READ_OPERATION,i.Aspect.MUST_SELECT_SAME_SERVER])},1213:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListIndexesOperation=t.DropIndexOperation=t.CreateIndexesOperation=void 0;const n=r(6372),o=r(407),s=r(6684),i=r(5192),u=new Set(["background","unique","name","partialFilterExpression","sparse","hidden","expireAfterSeconds","storageEngine","collation","version","weights","default_language","language_override","textIndexVersion","2dsphereIndexVersion","bits","min","max","bucketSize","wildcardProjection"]);class a extends s.CommandOperation{constructor(e,t,r,n){super(e,n),this.options=n??{},this.collectionName=t,this.indexes=r.map((e=>{const t=e.key instanceof Map?e.key:new Map(Object.entries(e.key)),r=e.name??Array.from(t).flat().join("_"),n=function(e){const t=Object.entries(e).filter((([e])=>u.has(e)));return Object.fromEntries(t.map((([e,t])=>"version"===e?["v",t]:[e,t])))}(e);return{...n,name:r,key:t}}))}static fromIndexDescriptionArray(e,t,r,n){return new a(e,t,r,n)}static fromIndexSpecification(e,t,r,n={}){const s=function(e){const t=new Map,r=Array.isArray(e)&&(n=e,!Array.isArray(n)||2!==n.length||"number"!=typeof(s=n[1])&&"2d"!==s&&"2dsphere"!==s&&"text"!==s&&"geoHaystack"!==s)?e:[e];var n,s;for(const e of r)if("string"==typeof e)t.set(e,1);else if(Array.isArray(e))t.set(e[0],e[1]??1);else if(e instanceof Map)for(const[r,n]of e)t.set(r,n);else if((0,o.isObject)(e))for(const[r,n]of Object.entries(e))t.set(r,n);return t}(r),i={...n,key:s};return new a(e,t,[i],n)}get commandName(){return"createIndexes"}async execute(e,t){const r=this.options,s=this.indexes,i=(0,o.maxWireVersion)(e),u={createIndexes:this.collectionName,indexes:s};if(null!=r.commitQuorum){if(i<9)throw new n.MongoCompatibilityError("Option `commitQuorum` for `createIndexes` not supported on servers < 4.4");u.commitQuorum=r.commitQuorum}return this.options.collation=void 0,await super.executeCommand(e,t,u),s.map((e=>e.name||""))}}t.CreateIndexesOperation=a;class c extends s.CommandOperation{constructor(e,t,r){super(e,r),this.options=r??{},this.collection=e,this.indexName=t}get commandName(){return"dropIndexes"}async execute(e,t){const r={dropIndexes:this.collection.collectionName,index:this.indexName};return await super.executeCommand(e,t,r)}}t.DropIndexOperation=c;class l extends s.CommandOperation{constructor(e,t){super(e,t),this.options={...t},delete this.options.writeConcern,this.collectionNamespace=e.s.namespace}get commandName(){return"listIndexes"}async execute(e,t){const r=(0,o.maxWireVersion)(e),n=this.options.batchSize?{batchSize:this.options.batchSize}:{},s={listIndexes:this.collectionNamespace.collection,cursor:n};return r>=9&&void 0!==this.options.comment&&(s.comment=this.options.comment),await super.executeCommand(e,t,s)}}t.ListIndexesOperation=l,(0,i.defineAspects)(l,[i.Aspect.READ_OPERATION,i.Aspect.RETRYABLE,i.Aspect.CURSOR_CREATING]),(0,i.defineAspects)(a,[i.Aspect.WRITE_OPERATION]),(0,i.defineAspects)(c,[i.Aspect.WRITE_OPERATION])},9252:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.InsertManyOperation=t.InsertOneOperation=t.InsertOperation=void 0;const n=r(6372),o=r(407),s=r(770),i=r(6061),u=r(6684),a=r(5192);class c extends u.CommandOperation{constructor(e,t,r){super(void 0,r),this.options={...r,checkKeys:r.checkKeys??!1},this.ns=e,this.documents=t}get commandName(){return"insert"}async execute(e,t){const r=this.options??{},n="boolean"!=typeof r.ordered||r.ordered,o={insert:this.ns.collection,documents:this.documents,ordered:n};return"boolean"==typeof r.bypassDocumentValidation&&(o.bypassDocumentValidation=r.bypassDocumentValidation),void 0!==r.comment&&(o.comment=r.comment),await super.executeCommand(e,t,o)}}t.InsertOperation=c;class l extends c{constructor(e,t,r){super(e.s.namespace,(0,o.maybeAddIdToDocuments)(e,[t],r),r)}async execute(e,t){const r=await super.execute(e,t);if(r.code)throw new n.MongoServerError(r);if(r.writeErrors)throw new n.MongoServerError(r.writeErrors[0]);return{acknowledged:0!==this.writeConcern?.w,insertedId:this.documents[0]._id}}}t.InsertOneOperation=l;class h extends a.AbstractOperation{constructor(e,t,r){if(super(r),!Array.isArray(t))throw new n.MongoInvalidArgumentError('Argument "docs" must be an array of documents');this.options=r,this.collection=e,this.docs=t}get commandName(){return"insert"}async execute(e,t){const r=this.collection,o={...this.options,...this.bsonOptions,readPreference:this.readPreference},u=s.WriteConcern.fromOptions(o),a=new i.BulkWriteOperation(r,this.docs.map((e=>({insertOne:{document:e}}))),o);try{const r=await a.execute(e,t);return{acknowledged:0!==u?.w,insertedCount:r.insertedCount,insertedIds:r.insertedIds}}catch(e){if(e&&"Operation must be an object with an operation key"===e.message)throw new n.MongoInvalidArgumentError("Collection.insertMany() cannot be called with an array that has null/undefined values");throw e}}}t.InsertManyOperation=h,(0,a.defineAspects)(c,[a.Aspect.RETRYABLE,a.Aspect.WRITE_OPERATION]),(0,a.defineAspects)(l,[a.Aspect.RETRYABLE,a.Aspect.WRITE_OPERATION]),(0,a.defineAspects)(h,[a.Aspect.WRITE_OPERATION])},1785:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IsCappedOperation=void 0;const n=r(6372),o=r(5192);class s extends o.AbstractOperation{constructor(e,t){super(t),this.options=t,this.collection=e}get commandName(){return"listCollections"}async execute(e,t){const r=this.collection,[o]=await r.s.db.listCollections({name:r.collectionName},{...this.options,nameOnly:!1,readPreference:this.readPreference,session:t}).toArray();if(null==o||null==o.options)throw new n.MongoAPIError(`collection ${r.namespace} not found`);return!!o.options?.capped}}t.IsCappedOperation=s},9741:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.KillCursorsOperation=void 0;const n=r(6372),o=r(407),s=r(5192);class i extends s.AbstractOperation{constructor(e,t,r,n){super(n),this.ns=t,this.cursorId=e,this.server=r}get commandName(){return"killCursors"}async execute(e,t){if(e!==this.server)throw new n.MongoRuntimeError("Killcursor must run on the same server operation began on");const r=this.ns.collection;if(null==r)throw new n.MongoRuntimeError("A collection name must be determined before killCursors");const s={killCursors:r,cursors:[this.cursorId]};try{await e.command(this.ns,s,{session:t})}catch(e){(0,o.squashError)(e)}}}t.KillCursorsOperation=i,(0,s.defineAspects)(i,[s.Aspect.MUST_SELECT_SAME_SERVER])},1579:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListCollectionsOperation=void 0;const n=r(407),o=r(6684),s=r(5192);class i extends o.CommandOperation{constructor(e,t,r){super(e,r),this.options={...r},delete this.options.writeConcern,this.db=e,this.filter=t,this.nameOnly=!!this.options.nameOnly,this.authorizedCollections=!!this.options.authorizedCollections,"number"==typeof this.options.batchSize&&(this.batchSize=this.options.batchSize)}get commandName(){return"listCollections"}async execute(e,t){return await super.executeCommand(e,t,this.generateCommand((0,n.maxWireVersion)(e)))}generateCommand(e){const t={listCollections:1,filter:this.filter,cursor:this.batchSize?{batchSize:this.batchSize}:{},nameOnly:this.nameOnly,authorizedCollections:this.authorizedCollections};return e>=9&&void 0!==this.options.comment&&(t.comment=this.options.comment),t}}t.ListCollectionsOperation=i,(0,s.defineAspects)(i,[s.Aspect.READ_OPERATION,s.Aspect.RETRYABLE,s.Aspect.CURSOR_CREATING])},5776:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ListDatabasesOperation=void 0;const n=r(407),o=r(6684),s=r(5192);class i extends o.CommandOperation{constructor(e,t){super(e,t),this.options=t??{},this.ns=new n.MongoDBNamespace("admin","$cmd")}get commandName(){return"listDatabases"}async execute(e,t){const r={listDatabases:1};return"boolean"==typeof this.options.nameOnly&&(r.nameOnly=this.options.nameOnly),this.options.filter&&(r.filter=this.options.filter),"boolean"==typeof this.options.authorizedDatabases&&(r.authorizedDatabases=this.options.authorizedDatabases),(0,n.maxWireVersion)(e)>=9&&void 0!==this.options.comment&&(r.comment=this.options.comment),await super.executeCommand(e,t,r)}}t.ListDatabasesOperation=i,(0,s.defineAspects)(i,[s.Aspect.READ_OPERATION,s.Aspect.RETRYABLE])},5192:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defineAspects=t.AbstractOperation=t.Aspect=void 0;const n=r(5638),o=r(6474);t.Aspect={READ_OPERATION:Symbol("READ_OPERATION"),WRITE_OPERATION:Symbol("WRITE_OPERATION"),RETRYABLE:Symbol("RETRYABLE"),EXPLAINABLE:Symbol("EXPLAINABLE"),SKIP_COLLATION:Symbol("SKIP_COLLATION"),CURSOR_CREATING:Symbol("CURSOR_CREATING"),MUST_SELECT_SAME_SERVER:Symbol("MUST_SELECT_SAME_SERVER")};const s=Symbol("session");t.AbstractOperation=class{constructor(e={}){this.readPreference=this.hasAspect(t.Aspect.WRITE_OPERATION)?o.ReadPreference.primary:o.ReadPreference.fromOptions(e)??o.ReadPreference.primary,this.bsonOptions=(0,n.resolveBSONOptions)(e),this[s]=null!=e.session?e.session:void 0,this.options=e,this.bypassPinningCheck=!!e.bypassPinningCheck,this.trySecondaryWrite=!1}hasAspect(e){const t=this.constructor;return null!=t.aspects&&t.aspects.has(e)}get session(){return this[s]}clearSession(){this[s]=void 0}get canRetryRead(){return!0}get canRetryWrite(){return!0}},t.defineAspects=function(e,t){return Array.isArray(t)||t instanceof Set||(t=[t]),t=new Set(t),Object.defineProperty(e,"aspects",{value:t,writable:!1}),t}},7937:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsOperation=void 0;const n=r(6372),o=r(5192);class s extends o.AbstractOperation{constructor(e,t){super(t),this.options=t,this.collection=e}get commandName(){return"listCollections"}async execute(e,t){const r=this.collection,[o]=await r.s.db.listCollections({name:r.collectionName},{...this.options,nameOnly:!1,readPreference:this.readPreference,session:t}).toArray();if(null==o||null==o.options)throw new n.MongoAPIError(`collection ${r.namespace} not found`);return o.options}}t.OptionsOperation=s},3842:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ProfilingLevelOperation=void 0;const n=r(6372),o=r(6684);class s extends o.CommandOperation{constructor(e,t){super(e,t),this.options=t}get commandName(){return"profile"}async execute(e,t){const r=await super.executeCommand(e,t,{profile:-1});if(1===r.ok){const e=r.was;if(0===e)return"off";if(1===e)return"slow_only";if(2===e)return"all";throw new n.MongoUnexpectedServerResponseError(`Illegal profiling level value ${e}`)}throw new n.MongoUnexpectedServerResponseError("Error with profile command")}}t.ProfilingLevelOperation=s},8859:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RemoveUserOperation=void 0;const n=r(6684),o=r(5192);class s extends n.CommandOperation{constructor(e,t,r){super(e,r),this.options=r,this.username=t}get commandName(){return"dropUser"}async execute(e,t){return await super.executeCommand(e,t,{dropUser:this.username}),!0}}t.RemoveUserOperation=s,(0,o.defineAspects)(s,[o.Aspect.WRITE_OPERATION])},1591:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RenameOperation=void 0;const n=r(948),o=r(407),s=r(6684),i=r(5192);class u extends s.CommandOperation{constructor(e,t,r){super(e,r),this.collection=e,this.newName=t,this.options=r,this.ns=new o.MongoDBNamespace("admin","$cmd")}get commandName(){return"renameCollection"}async execute(e,t){const r={renameCollection:this.collection.namespace,to:this.collection.s.namespace.withCollection(this.newName).toString(),dropTarget:"boolean"==typeof this.options.dropTarget&&this.options.dropTarget};return await super.executeCommand(e,t,r),new n.Collection(this.collection.s.db,this.newName,this.collection.s.options)}}t.RenameOperation=u,(0,i.defineAspects)(u,[i.Aspect.WRITE_OPERATION])},7074:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RunAdminCommandOperation=t.RunCommandOperation=void 0;const n=r(407),o=r(5192);class s extends o.AbstractOperation{constructor(e,t,r){super(r),this.command=t,this.options=r,this.ns=e.s.namespace.withCollection("$cmd")}get commandName(){return"runCommand"}async execute(e,t){return this.server=e,await e.command(this.ns,this.command,{...this.options,readPreference:this.readPreference,session:t})}}t.RunCommandOperation=s;class i extends o.AbstractOperation{constructor(e,t){super(t),this.command=e,this.options=t,this.ns=new n.MongoDBNamespace("admin","$cmd")}get commandName(){return"runCommand"}async execute(e,t){return this.server=e,await e.command(this.ns,this.command,{...this.options,readPreference:this.readPreference,session:t})}}t.RunAdminCommandOperation=i},6101:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CreateSearchIndexesOperation=void 0;const n=r(5192);class o extends n.AbstractOperation{constructor(e,t){super(),this.collection=e,this.descriptions=t}get commandName(){return"createSearchIndexes"}async execute(e,t){const r=this.collection.fullNamespace,n={createSearchIndexes:r.collection,indexes:this.descriptions},o=await e.command(r,n,{session:t});return(o?.indexesCreated??[]).map((({name:e})=>e))}}t.CreateSearchIndexesOperation=o},2296:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DropSearchIndexOperation=void 0;const n=r(6372),o=r(5192);class s extends o.AbstractOperation{constructor(e,t){super(),this.collection=e,this.name=t}get commandName(){return"dropSearchIndex"}async execute(e,t){const r=this.collection.fullNamespace,o={dropSearchIndex:r.collection};"string"==typeof this.name&&(o.name=this.name);try{await e.command(r,o,{session:t})}catch(e){if(!(e instanceof n.MongoServerError&&e.code===n.MONGODB_ERROR_CODES.NamespaceNotFound))throw e}}}t.DropSearchIndexOperation=s},8196:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UpdateSearchIndexOperation=void 0;const n=r(5192);class o extends n.AbstractOperation{constructor(e,t,r){super(),this.collection=e,this.name=t,this.definition=r}get commandName(){return"updateSearchIndex"}async execute(e,t){const r=this.collection.fullNamespace,n={updateSearchIndex:r.collection,name:this.name,definition:this.definition};await e.command(r,n,{session:t})}}t.UpdateSearchIndexOperation=o},737:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SetProfilingLevelOperation=t.ProfilingLevel=void 0;const n=r(6372),o=r(407),s=r(6684),i=new Set(["off","slow_only","all"]);t.ProfilingLevel=Object.freeze({off:"off",slowOnly:"slow_only",all:"all"});class u extends s.CommandOperation{constructor(e,r,n){switch(super(e,n),this.options=n,r){case t.ProfilingLevel.off:this.profile=0;break;case t.ProfilingLevel.slowOnly:this.profile=1;break;case t.ProfilingLevel.all:this.profile=2;break;default:this.profile=0}this.level=r}get commandName(){return"profile"}async execute(e,r){const s=this.level;if(!i.has(s))throw new n.MongoInvalidArgumentError(`Profiling level must be one of "${(0,o.enumToString)(t.ProfilingLevel)}"`);return await super.executeCommand(e,r,{profile:this.profile}),s}}t.SetProfilingLevelOperation=u},8414:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DbStatsOperation=void 0;const n=r(6684),o=r(5192);class s extends n.CommandOperation{constructor(e,t){super(e,t),this.options=t}get commandName(){return"dbStats"}async execute(e,t){const r={dbStats:!0};return null!=this.options.scale&&(r.scale=this.options.scale),await super.executeCommand(e,t,r)}}t.DbStatsOperation=s,(0,o.defineAspects)(s,[o.Aspect.READ_OPERATION])},1652:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.makeUpdateStatement=t.ReplaceOneOperation=t.UpdateManyOperation=t.UpdateOneOperation=t.UpdateOperation=void 0;const n=r(6372),o=r(407),s=r(6684),i=r(5192);class u extends s.CommandOperation{constructor(e,t,r){super(void 0,r),this.options=r,this.ns=e,this.statements=t}get commandName(){return"update"}get canRetryWrite(){return!1!==super.canRetryWrite&&this.statements.every((e=>null==e.multi||!1===e.multi))}async execute(e,t){const r=this.options??{},o="boolean"!=typeof r.ordered||r.ordered,s={update:this.ns.collection,updates:this.statements,ordered:o};if("boolean"==typeof r.bypassDocumentValidation&&(s.bypassDocumentValidation=r.bypassDocumentValidation),r.let&&(s.let=r.let),void 0!==r.comment&&(s.comment=r.comment),this.writeConcern&&0===this.writeConcern.w&&this.statements.find((e=>e.hint)))throw new n.MongoCompatibilityError("hint is not supported with unacknowledged writes");return await super.executeCommand(e,t,s)}}t.UpdateOperation=u;class a extends u{constructor(e,t,r,s){if(super(e.s.namespace,[h(t,r,{...s,multi:!1})],s),!(0,o.hasAtomicOperators)(r))throw new n.MongoInvalidArgumentError("Update document requires atomic operators")}async execute(e,t){const r=await super.execute(e,t);if(null!=this.explain)return r;if(r.code)throw new n.MongoServerError(r);if(r.writeErrors)throw new n.MongoServerError(r.writeErrors[0]);return{acknowledged:0!==this.writeConcern?.w,modifiedCount:r.nModified??r.n,upsertedId:Array.isArray(r.upserted)&&r.upserted.length>0?r.upserted[0]._id:null,upsertedCount:Array.isArray(r.upserted)&&r.upserted.length?r.upserted.length:0,matchedCount:Array.isArray(r.upserted)&&r.upserted.length>0?0:r.n}}}t.UpdateOneOperation=a;class c extends u{constructor(e,t,r,s){if(super(e.s.namespace,[h(t,r,{...s,multi:!0})],s),!(0,o.hasAtomicOperators)(r))throw new n.MongoInvalidArgumentError("Update document requires atomic operators")}async execute(e,t){const r=await super.execute(e,t);if(null!=this.explain)return r;if(r.code)throw new n.MongoServerError(r);if(r.writeErrors)throw new n.MongoServerError(r.writeErrors[0]);return{acknowledged:0!==this.writeConcern?.w,modifiedCount:r.nModified??r.n,upsertedId:Array.isArray(r.upserted)&&r.upserted.length>0?r.upserted[0]._id:null,upsertedCount:Array.isArray(r.upserted)&&r.upserted.length?r.upserted.length:0,matchedCount:Array.isArray(r.upserted)&&r.upserted.length>0?0:r.n}}}t.UpdateManyOperation=c;class l extends u{constructor(e,t,r,s){if(super(e.s.namespace,[h(t,r,{...s,multi:!1})],s),(0,o.hasAtomicOperators)(r))throw new n.MongoInvalidArgumentError("Replacement document must not contain atomic operators")}async execute(e,t){const r=await super.execute(e,t);if(null!=this.explain)return r;if(r.code)throw new n.MongoServerError(r);if(r.writeErrors)throw new n.MongoServerError(r.writeErrors[0]);return{acknowledged:0!==this.writeConcern?.w,modifiedCount:r.nModified??r.n,upsertedId:Array.isArray(r.upserted)&&r.upserted.length>0?r.upserted[0]._id:null,upsertedCount:Array.isArray(r.upserted)&&r.upserted.length?r.upserted.length:0,matchedCount:Array.isArray(r.upserted)&&r.upserted.length>0?0:r.n}}}function h(e,t,r){if(null==e||"object"!=typeof e)throw new n.MongoInvalidArgumentError("Selector must be a valid JavaScript object");if(null==t||"object"!=typeof t)throw new n.MongoInvalidArgumentError("Document must be a valid JavaScript object");const o={q:e,u:t};return"boolean"==typeof r.upsert&&(o.upsert=r.upsert),r.multi&&(o.multi=r.multi),r.hint&&(o.hint=r.hint),r.arrayFilters&&(o.arrayFilters=r.arrayFilters),r.collation&&(o.collation=r.collation),o}t.ReplaceOneOperation=l,t.makeUpdateStatement=h,(0,i.defineAspects)(u,[i.Aspect.RETRYABLE,i.Aspect.WRITE_OPERATION,i.Aspect.SKIP_COLLATION]),(0,i.defineAspects)(a,[i.Aspect.RETRYABLE,i.Aspect.WRITE_OPERATION,i.Aspect.EXPLAINABLE,i.Aspect.SKIP_COLLATION]),(0,i.defineAspects)(c,[i.Aspect.WRITE_OPERATION,i.Aspect.EXPLAINABLE,i.Aspect.SKIP_COLLATION]),(0,i.defineAspects)(l,[i.Aspect.RETRYABLE,i.Aspect.WRITE_OPERATION,i.Aspect.SKIP_COLLATION])},8978:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ValidateCollectionOperation=void 0;const n=r(6372),o=r(6684);class s extends o.CommandOperation{constructor(e,t,r){const n={validate:t},o=Object.keys(r);for(let e=0;e<o.length;e++)Object.prototype.hasOwnProperty.call(r,o[e])&&"session"!==o[e]&&(n[o[e]]=r[o[e]]);super(e.s.db,r),this.options=r,this.command=n,this.collectionName=t}get commandName(){return"validate"}async execute(e,t){const r=this.collectionName,o=await super.executeCommand(e,t,this.command);if(null!=o.result&&"string"!=typeof o.result)throw new n.MongoUnexpectedServerResponseError("Error with validation data");if(null!=o.result&&null!=o.result.match(/exception|corrupt/))throw new n.MongoUnexpectedServerResponseError(`Invalid collection ${r}`);if(null!=o.valid&&!o.valid)throw new n.MongoUnexpectedServerResponseError(`Invalid collection ${r}`);return o}}t.ValidateCollectionOperation=s},9875:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReadConcern=t.ReadConcernLevel=void 0,t.ReadConcernLevel=Object.freeze({local:"local",majority:"majority",linearizable:"linearizable",available:"available",snapshot:"snapshot"});class r{constructor(e){this.level=t.ReadConcernLevel[e]??e}static fromOptions(e){if(null!=e){if(e.readConcern){const{readConcern:t}=e;if(t instanceof r)return t;if("string"==typeof t)return new r(t);if("level"in t&&t.level)return new r(t.level)}return e.level?new r(e.level):void 0}}static get MAJORITY(){return t.ReadConcernLevel.majority}static get AVAILABLE(){return t.ReadConcernLevel.available}static get LINEARIZABLE(){return t.ReadConcernLevel.linearizable}static get SNAPSHOT(){return t.ReadConcernLevel.snapshot}toJSON(){return{level:this.level}}}t.ReadConcern=r},6474:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReadPreference=t.ReadPreferenceMode=void 0;const n=r(6372);t.ReadPreferenceMode=Object.freeze({primary:"primary",primaryPreferred:"primaryPreferred",secondary:"secondary",secondaryPreferred:"secondaryPreferred",nearest:"nearest"});class o{constructor(e,t,r){if(!o.isValid(e))throw new n.MongoInvalidArgumentError(`Invalid read preference mode ${JSON.stringify(e)}`);if(null!=r||"object"!=typeof t||Array.isArray(t)){if(t&&!Array.isArray(t))throw new n.MongoInvalidArgumentError("ReadPreference tags must be an array")}else r=t,t=void 0;if(this.mode=e,this.tags=t,this.hedge=r?.hedge,this.maxStalenessSeconds=void 0,this.minWireVersion=void 0,null!=(r=r??{}).maxStalenessSeconds){if(r.maxStalenessSeconds<=0)throw new n.MongoInvalidArgumentError("maxStalenessSeconds must be a positive integer");this.maxStalenessSeconds=r.maxStalenessSeconds,this.minWireVersion=5}if(this.mode===o.PRIMARY){if(this.tags&&Array.isArray(this.tags)&&this.tags.length>0)throw new n.MongoInvalidArgumentError("Primary read preference cannot be combined with tags");if(this.maxStalenessSeconds)throw new n.MongoInvalidArgumentError("Primary read preference cannot be combined with maxStalenessSeconds");if(this.hedge)throw new n.MongoInvalidArgumentError("Primary read preference cannot be combined with hedge")}}get preference(){return this.mode}static fromString(e){return new o(e)}static fromOptions(e){if(!e)return;const t=e.readPreference??e.session?.transaction.options.readPreference,r=e.readPreferenceTags;if(null!=t){if("string"==typeof t)return new o(t,r,{maxStalenessSeconds:e.maxStalenessSeconds,hedge:e.hedge});if(!(t instanceof o)&&"object"==typeof t){const n=t.mode||t.preference;if(n&&"string"==typeof n)return new o(n,t.tags??r,{maxStalenessSeconds:t.maxStalenessSeconds,hedge:e.hedge})}return r&&(t.tags=r),t}}static translate(e){if(null==e.readPreference)return e;const t=e.readPreference;if("string"==typeof t)e.readPreference=new o(t);else if(!t||t instanceof o||"object"!=typeof t){if(!(t instanceof o))throw new n.MongoInvalidArgumentError(`Invalid read preference: ${t}`)}else{const r=t.mode||t.preference;r&&"string"==typeof r&&(e.readPreference=new o(r,t.tags,{maxStalenessSeconds:t.maxStalenessSeconds}))}return e}static isValid(e){return new Set([o.PRIMARY,o.PRIMARY_PREFERRED,o.SECONDARY,o.SECONDARY_PREFERRED,o.NEAREST,null]).has(e)}isValid(e){return o.isValid("string"==typeof e?e:this.mode)}secondaryOk(){return new Set([o.PRIMARY_PREFERRED,o.SECONDARY,o.SECONDARY_PREFERRED,o.NEAREST]).has(this.mode)}equals(e){return e.mode===this.mode}toJSON(){const e={mode:this.mode};return Array.isArray(this.tags)&&(e.tags=this.tags),this.maxStalenessSeconds&&(e.maxStalenessSeconds=this.maxStalenessSeconds),this.hedge&&(e.hedge=this.hedge),e}}o.PRIMARY=t.ReadPreferenceMode.primary,o.PRIMARY_PREFERRED=t.ReadPreferenceMode.primaryPreferred,o.SECONDARY=t.ReadPreferenceMode.secondary,o.SECONDARY_PREFERRED=t.ReadPreferenceMode.secondaryPreferred,o.NEAREST=t.ReadPreferenceMode.nearest,o.primary=new o(t.ReadPreferenceMode.primary),o.primaryPreferred=new o(t.ReadPreferenceMode.primaryPreferred),o.secondary=new o(t.ReadPreferenceMode.secondary),o.secondaryPreferred=new o(t.ReadPreferenceMode.secondaryPreferred),o.nearest=new o(t.ReadPreferenceMode.nearest),t.ReadPreference=o},281:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._advanceClusterTime=t.drainTimerQueue=t.ServerType=t.TopologyType=t.STATE_CONNECTED=t.STATE_CONNECTING=t.STATE_CLOSED=t.STATE_CLOSING=void 0;const n=r(3557);t.STATE_CLOSING="closing",t.STATE_CLOSED="closed",t.STATE_CONNECTING="connecting",t.STATE_CONNECTED="connected",t.TopologyType=Object.freeze({Single:"Single",ReplicaSetNoPrimary:"ReplicaSetNoPrimary",ReplicaSetWithPrimary:"ReplicaSetWithPrimary",Sharded:"Sharded",Unknown:"Unknown",LoadBalanced:"LoadBalanced"}),t.ServerType=Object.freeze({Standalone:"Standalone",Mongos:"Mongos",PossiblePrimary:"PossiblePrimary",RSPrimary:"RSPrimary",RSSecondary:"RSSecondary",RSArbiter:"RSArbiter",RSOther:"RSOther",RSGhost:"RSGhost",Unknown:"Unknown",LoadBalancer:"LoadBalancer"}),t.drainTimerQueue=function(e){e.forEach(n.clearTimeout),e.clear()},t._advanceClusterTime=function(e,t){(null==e.clusterTime||t.clusterTime.greaterThan(e.clusterTime.clusterTime))&&(e.clusterTime=t)}},9397:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ServerHeartbeatFailedEvent=t.ServerHeartbeatSucceededEvent=t.ServerHeartbeatStartedEvent=t.TopologyClosedEvent=t.TopologyOpeningEvent=t.TopologyDescriptionChangedEvent=t.ServerClosedEvent=t.ServerOpeningEvent=t.ServerDescriptionChangedEvent=void 0;const n=r(3543);t.ServerDescriptionChangedEvent=class{constructor(e,t,r,o){this.name=n.SERVER_DESCRIPTION_CHANGED,this.topologyId=e,this.address=t,this.previousDescription=r,this.newDescription=o}},t.ServerOpeningEvent=class{constructor(e,t){this.name=n.SERVER_OPENING,this.topologyId=e,this.address=t}},t.ServerClosedEvent=class{constructor(e,t){this.name=n.SERVER_CLOSED,this.topologyId=e,this.address=t}},t.TopologyDescriptionChangedEvent=class{constructor(e,t,r){this.name=n.TOPOLOGY_DESCRIPTION_CHANGED,this.topologyId=e,this.previousDescription=t,this.newDescription=r}},t.TopologyOpeningEvent=class{constructor(e){this.name=n.TOPOLOGY_OPENING,this.topologyId=e}},t.TopologyClosedEvent=class{constructor(e){this.name=n.TOPOLOGY_CLOSED,this.topologyId=e}},t.ServerHeartbeatStartedEvent=class{constructor(e,t){this.name=n.SERVER_HEARTBEAT_STARTED,this.connectionId=e,this.awaited=t}},t.ServerHeartbeatSucceededEvent=class{constructor(e,t,r,o){this.name=n.SERVER_HEARTBEAT_SUCCEEDED,this.connectionId=e,this.duration=t,this.reply=r??{},this.awaited=o}},t.ServerHeartbeatFailedEvent=class{constructor(e,t,r,o){this.name=n.SERVER_HEARTBEAT_FAILED,this.connectionId=e,this.duration=t,this.failure=r,this.awaited=o}}},3660:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RTTSampler=t.MonitorInterval=t.RTTPinger=t.Monitor=t.ServerMonitoringMode=void 0;const n=r(3557),o=r(5638),s=r(1008),i=r(5377),u=r(3543),a=r(6372),c=r(2973),l=r(1404),h=r(407),d=r(281),p=r(9397),f=r(8579),m=Symbol("server"),g=Symbol("monitorId"),E=Symbol("cancellationToken"),A="idle",y="monitoring",C=(0,h.makeStateMachine)({[d.STATE_CLOSING]:[d.STATE_CLOSING,A,d.STATE_CLOSED],[d.STATE_CLOSED]:[d.STATE_CLOSED,y],[A]:[A,y,d.STATE_CLOSING],[y]:[y,A,d.STATE_CLOSING]}),S=new Set([d.STATE_CLOSING,d.STATE_CLOSED,y]);function w(e){return e.s.state===d.STATE_CLOSED||e.s.state===d.STATE_CLOSING}t.ServerMonitoringMode=Object.freeze({auto:"auto",poll:"poll",stream:"stream"});class b extends l.TypedEventEmitter{constructor(e,t){super(),this.component=c.MongoLoggableComponent.TOPOLOGY,this[m]=e,this.connection=null,this[E]=new l.CancellationToken,this[E].setMaxListeners(1/0),this[g]=void 0,this.s={state:d.STATE_CLOSED},this.address=e.description.address,this.options=Object.freeze({connectTimeoutMS:t.connectTimeoutMS??1e4,heartbeatFrequencyMS:t.heartbeatFrequencyMS??1e4,minHeartbeatFrequencyMS:t.minHeartbeatFrequencyMS??500,serverMonitoringMode:t.serverMonitoringMode}),this.isRunningInFaasEnv=null!=(0,i.getFAASEnv)(),this.mongoLogger=this[m].topology.client?.mongoLogger,this.rttSampler=new T(10);const r=this[E],n={id:"<monitor>",generation:e.pool.generation,cancellationToken:r,hostAddress:e.description.hostAddress,...t,raw:!1,useBigInt64:!1,promoteLongs:!0,promoteValues:!0,promoteBuffers:!0};delete n.credentials,n.autoEncrypter&&delete n.autoEncrypter,this.connectOptions=Object.freeze(n)}connect(){if(this.s.state!==d.STATE_CLOSED)return;const e=this.options.heartbeatFrequencyMS,t=this.options.minHeartbeatFrequencyMS;this[g]=new D(_(this),{heartbeatFrequencyMS:e,minHeartbeatFrequencyMS:t,immediate:!0})}requestCheck(){S.has(this.s.state)||this[g]?.wake()}reset(){const e=this[m].description.topologyVersion;if(w(this)||null==e)return;C(this,d.STATE_CLOSING),v(this),C(this,A);const t=this.options.heartbeatFrequencyMS,r=this.options.minHeartbeatFrequencyMS;this[g]=new D(_(this),{heartbeatFrequencyMS:t,minHeartbeatFrequencyMS:r})}close(){w(this)||(C(this,d.STATE_CLOSING),v(this),this.emit("close"),C(this,d.STATE_CLOSED))}get roundTripTime(){return this.rttSampler.average()}get minRoundTripTime(){return this.rttSampler.min()}get latestRtt(){return this.rttSampler.last??0}addRttSample(e){this.rttSampler.addSample(e)}clearRttSamples(){this.rttSampler.clear()}}function v(e){e[g]?.stop(),e[g]=void 0,e.rttPinger?.close(),e.rttPinger=void 0,e[E].emit("cancel"),e.connection?.destroy(),e.connection=null,e.clearRttSamples()}function O(e,r){if(null==r)return!1;const n=e.options.serverMonitoringMode;return n!==t.ServerMonitoringMode.poll&&(n===t.ServerMonitoringMode.stream||!e.isRunningInFaasEnv)}function _(e){return t=>{function r(){w(e)||C(e,A),t()}e.s.state!==y?(C(e,y),function(e,t){let r,n;const i=e[m].description.topologyVersion,c=O(e,i);function l(o){e.connection?.destroy(),e.connection=null,e.emitAndLogHeartbeat(f.Server.SERVER_HEARTBEAT_FAILED,e[m].topology.s.id,void 0,new p.ServerHeartbeatFailedEvent(e.address,(0,h.calculateDurationInMs)(r),o,n));const s=o instanceof a.MongoError?o:new a.MongoError(a.MongoError.buildErrorMessage(o),{cause:o});s.addErrorLabel(a.MongoErrorLabel.ResetPool),s instanceof a.MongoNetworkTimeoutError&&s.addErrorLabel(a.MongoErrorLabel.InterruptInUseConnections),e.emit("resetServer",s),t(o)}function d(n){"isWritablePrimary"in n||(n.isWritablePrimary=n[u.LEGACY_HELLO_COMMAND]);const o=c&&e.rttPinger?e.rttPinger.latestRtt??(0,h.calculateDurationInMs)(r):(0,h.calculateDurationInMs)(r);e.addRttSample(o),e.emitAndLogHeartbeat(f.Server.SERVER_HEARTBEAT_SUCCEEDED,e[m].topology.s.id,n.connectionId,new p.ServerHeartbeatSucceededEvent(e.address,o,n,c)),c?(e.emitAndLogHeartbeat(f.Server.SERVER_HEARTBEAT_STARTED,e[m].topology.s.id,void 0,new p.ServerHeartbeatStartedEvent(e.address,!0)),r=(0,h.now)()):(e.rttPinger?.close(),e.rttPinger=void 0,t(void 0,n))}e.emitAndLogHeartbeat(f.Server.SERVER_HEARTBEAT_STARTED,e[m].topology.s.id,void 0,new p.ServerHeartbeatStartedEvent(e.address,c));const{connection:g}=e;if(g&&!g.closed){const{serverApi:t,helloOk:s}=g,a=e.options.connectTimeoutMS,p=e.options.heartbeatFrequencyMS,f={[t?.version||s?"hello":u.LEGACY_HELLO_COMMAND]:1,...c&&i?{maxAwaitTimeMS:p,topologyVersion:(E=i,{processId:E.processId,counter:o.Long.isLong(E.counter)?E.counter:o.Long.fromNumber(E.counter)})}:{}},m=c?{socketTimeoutMS:a?a+p:0,exhaustAllowed:!0}:{socketTimeoutMS:a};return c&&null==e.rttPinger&&(e.rttPinger=new B(e)),r=(0,h.now)(),c?(n=!0,g.exhaustCommand((0,h.ns)("admin.$cmd"),f,m,((e,t)=>e?l(e):d(t)))):(n=!1,void g.command((0,h.ns)("admin.$cmd"),f,m).then(d,l))}var E;(async()=>{const t=await(0,s.makeSocket)(e.connectOptions),n=(0,s.makeConnection)(e.connectOptions,t);r=(0,h.now)();try{return await(0,s.performInitialHandshake)(n,e.connectOptions),n}catch(e){throw n.destroy(),e}})().then((n=>{if(w(e))return void n.destroy();const o=(0,h.calculateDurationInMs)(r);e.addRttSample(o),e.connection=n,e.emitAndLogHeartbeat(f.Server.SERVER_HEARTBEAT_SUCCEEDED,e[m].topology.s.id,n.hello?.connectionId,new p.ServerHeartbeatSucceededEvent(e.address,o,n.hello,O(e,n.hello?.topologyVersion))),t(void 0,n.hello)}),(t=>{e.connection=null,n=!1,l(t)}))}(e,((t,o)=>{if(t&&e[m].description.type===d.ServerType.Unknown)return r();O(e,o?.topologyVersion)&&(0,n.setTimeout)((()=>{w(e)||e[g]?.wake()}),0),r()}))):process.nextTick(t)}}t.Monitor=b;class B{constructor(e){this.connection=void 0,this[E]=e[E],this.closed=!1,this.monitor=e,this.latestRtt=e.latestRtt;const t=e.options.heartbeatFrequencyMS;this[g]=(0,n.setTimeout)((()=>this.measureRoundTripTime()),t)}get roundTripTime(){return this.monitor.roundTripTime}get minRoundTripTime(){return this.monitor.minRoundTripTime}close(){this.closed=!0,(0,n.clearTimeout)(this[g]),this.connection?.destroy(),this.connection=void 0}measureAndReschedule(e,t){null==e&&(e=(0,h.now)()),this.closed?t?.destroy():(null==this.connection&&(this.connection=t),this.latestRtt=(0,h.calculateDurationInMs)(e),this[g]=(0,n.setTimeout)((()=>this.measureRoundTripTime()),this.monitor.options.heartbeatFrequencyMS))}measureRoundTripTime(){const e=(0,h.now)();if(this.closed)return;const t=this.connection;if(null==t)return void(0,s.connect)(this.monitor.connectOptions).then((t=>{this.measureAndReschedule(e,t)}),(()=>{this.connection=void 0}));const r=t.serverApi?.version||t.helloOk?"hello":u.LEGACY_HELLO_COMMAND;t.command((0,h.ns)("admin.$cmd"),{[r]:1},void 0).then((()=>this.measureAndReschedule()),(()=>{this.connection?.destroy(),this.connection=void 0}))}}t.RTTPinger=B;class D{constructor(e,t={}){this.isExpeditedCallToFnScheduled=!1,this.stopped=!1,this.isExecutionInProgress=!1,this.hasExecutedOnce=!1,this._executeAndReschedule=()=>{this.stopped||(this.timerId&&(0,n.clearTimeout)(this.timerId),this.isExpeditedCallToFnScheduled=!1,this.isExecutionInProgress=!0,this.fn((()=>{this.lastExecutionEnded=(0,h.now)(),this.isExecutionInProgress=!1,this._reschedule(this.heartbeatFrequencyMS)})))},this.fn=e,this.lastExecutionEnded=-1/0,this.heartbeatFrequencyMS=t.heartbeatFrequencyMS??1e3,this.minHeartbeatFrequencyMS=t.minHeartbeatFrequencyMS??500,t.immediate?this._executeAndReschedule():this._reschedule(void 0)}wake(){const e=(0,h.now)()-this.lastExecutionEnded;return e<0?this._executeAndReschedule():this.isExecutionInProgress||this.isExpeditedCallToFnScheduled?void 0:e<this.minHeartbeatFrequencyMS?(this.isExpeditedCallToFnScheduled=!0,void this._reschedule(this.minHeartbeatFrequencyMS-e)):void this._executeAndReschedule()}stop(){this.stopped=!0,this.timerId&&((0,n.clearTimeout)(this.timerId),this.timerId=void 0),this.lastExecutionEnded=-1/0,this.isExpeditedCallToFnScheduled=!1}toString(){return JSON.stringify(this)}toJSON(){const e=(0,h.now)(),t=e-this.lastExecutionEnded;return{timerId:null!=this.timerId?"set":"cleared",lastCallTime:this.lastExecutionEnded,isExpeditedCheckScheduled:this.isExpeditedCallToFnScheduled,stopped:this.stopped,heartbeatFrequencyMS:this.heartbeatFrequencyMS,minHeartbeatFrequencyMS:this.minHeartbeatFrequencyMS,currentTime:e,timeSinceLastCall:t}}_reschedule(e){this.stopped||(this.timerId&&(0,n.clearTimeout)(this.timerId),this.timerId=(0,n.setTimeout)(this._executeAndReschedule,e||this.heartbeatFrequencyMS))}}t.MonitorInterval=D;class T{constructor(e=10){this.rttSamples=new Float64Array(e),this.length=0,this.writeIndex=0}addSample(e){this.rttSamples[this.writeIndex++]=e,this.length<this.rttSamples.length&&this.length++,this.writeIndex%=this.rttSamples.length}min(){if(this.length<2)return 0;let e=this.rttSamples[0];for(let t=1;t<this.length;t++)this.rttSamples[t]<e&&(e=this.rttSamples[t]);return e}average(){if(0===this.length)return 0;let e=0;for(let t=0;t<this.length;t++)e+=this.rttSamples[t];return e/this.length}get last(){return 0===this.length?null:this.rttSamples[0===this.writeIndex?this.length-1:this.writeIndex-1]}clear(){this.length=0,this.writeIndex=0}}t.RTTSampler=T},8579:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Server=void 0;const n=r(2676),o=r(9689),s=r(275),i=r(3543),u=r(6372),a=r(1404),c=r(8297),l=r(407),h=r(281),d=r(3660),p=r(6366),f=(0,l.makeStateMachine)({[h.STATE_CLOSED]:[h.STATE_CLOSED,h.STATE_CONNECTING],[h.STATE_CONNECTING]:[h.STATE_CONNECTING,h.STATE_CLOSING,h.STATE_CONNECTED,h.STATE_CLOSED],[h.STATE_CONNECTED]:[h.STATE_CONNECTED,h.STATE_CLOSING,h.STATE_CLOSED],[h.STATE_CLOSING]:[h.STATE_CLOSING,h.STATE_CLOSED]});class m extends a.TypedEventEmitter{constructor(e,t,r){super(),this.serverApi=r.serverApi;const s={hostAddress:t.hostAddress,...r};this.topology=e,this.pool=new o.ConnectionPool(this,s),this.s={description:t,options:r,state:h.STATE_CLOSED,operationCount:0};for(const e of[...i.CMAP_EVENTS,...i.APM_EVENTS])this.pool.on(e,(t=>this.emit(e,t)));if(this.pool.on(n.Connection.CLUSTER_TIME_RECEIVED,(e=>{this.clusterTime=e})),this.loadBalanced)this.monitor=null;else{this.monitor=new d.Monitor(this,this.s.options);for(const e of i.HEARTBEAT_EVENTS)this.monitor.on(e,(t=>this.emit(e,t)));this.monitor.on("resetServer",(e=>g(this,e))),this.monitor.on(m.SERVER_HEARTBEAT_SUCCEEDED,(e=>{this.emit(m.DESCRIPTION_RECEIVED,new p.ServerDescription(this.description.hostAddress,e.reply,{roundTripTime:this.monitor?.roundTripTime,minRoundTripTime:this.monitor?.minRoundTripTime})),this.s.state===h.STATE_CONNECTING&&(f(this,h.STATE_CONNECTED),this.emit(m.CONNECT,this))}))}}get clusterTime(){return this.topology.clusterTime}set clusterTime(e){this.topology.clusterTime=e}get description(){return this.s.description}get name(){return this.s.description.address}get autoEncrypter(){if(this.s.options&&this.s.options.autoEncrypter)return this.s.options.autoEncrypter}get loadBalanced(){return this.topology.description.type===h.TopologyType.LoadBalanced}connect(){this.s.state===h.STATE_CLOSED&&(f(this,h.STATE_CONNECTING),this.loadBalanced?(f(this,h.STATE_CONNECTED),this.emit(m.CONNECT,this)):this.monitor?.connect())}destroy(){this.s.state!==h.STATE_CLOSED&&(f(this,h.STATE_CLOSING),this.loadBalanced||this.monitor?.close(),this.pool.close(),f(this,h.STATE_CLOSED),this.emit("closed"))}requestCheck(){this.loadBalanced||this.monitor?.requestCheck()}async command(e,t,r,n){if(null==e.db||"string"==typeof e)throw new u.MongoInvalidArgumentError("Namespace must not be a string");if(this.s.state===h.STATE_CLOSING||this.s.state===h.STATE_CLOSED)throw new u.MongoServerClosedError;const o=Object.assign({},r,{wireProtocolCommand:!1,directConnection:this.topology.s.options.directConnection});o.omitReadPreference&&delete o.readPreference;const i=o.session;let a=i?.pinnedConnection;if(this.incrementOperationCount(),null==a)try{a=await this.pool.checkOut(),this.loadBalanced&&function(e,t){return!!t&&(t.inTransaction()||t.transaction.isCommitted&&"commitTransaction"in e||"aggregate"in e||"find"in e||"getMore"in e||"listCollections"in e||"listIndexes"in e)}(t,i)&&i?.pin(a)}catch(e){throw this.decrementOperationCount(),e instanceof s.PoolClearedError||this.handleError(e),e}try{try{return await a.command(e,t,o,n)}catch(e){throw this.decorateCommandError(a,t,o,e)}}catch(r){if(!(r instanceof u.MongoError&&r.code===u.MONGODB_ERROR_CODES.Reauthenticate))throw r;await this.pool.reauthenticate(a);try{return await a.command(e,t,o,n)}catch(e){throw this.decorateCommandError(a,t,o,e)}}finally{this.decrementOperationCount(),i?.pinnedConnection!==a&&this.pool.checkIn(a)}}handleError(e,t){if(!(e instanceof u.MongoError))return;if(e.connectionGeneration&&e.connectionGeneration<this.pool.generation)return;const r=e instanceof u.MongoNetworkError&&!(e instanceof u.MongoNetworkTimeoutError),n=(0,u.isNetworkErrorBeforeHandshake)(e),o=e.hasErrorLabel(u.MongoErrorLabel.HandshakeError);if(r||n||o)this.loadBalanced?t&&this.pool.clear({serviceId:t.serviceId}):(e.addErrorLabel(u.MongoErrorLabel.ResetPool),g(this,e));else if((0,u.isSDAMUnrecoverableError)(e)&&function(e,t){const r=t.topologyVersion,n=e.description.topologyVersion;return(0,p.compareTopologyVersion)(n,r)<0}(this,e)){const r=(0,l.maxWireVersion)(this)<=7||(0,u.isNodeShuttingDownError)(e);this.loadBalanced&&t&&r&&this.pool.clear({serviceId:t.serviceId}),this.loadBalanced||(r&&e.addErrorLabel(u.MongoErrorLabel.ResetPool),g(this,e),process.nextTick((()=>this.requestCheck())))}}decorateCommandError(e,t,r,n){if("object"!=typeof n||null==n||!("name"in n))throw new u.MongoRuntimeError("An unexpected error type: "+typeof n);if("AbortError"===n.name&&"cause"in n&&n.cause instanceof u.MongoError&&(n=n.cause),!(n instanceof u.MongoError))return n;if(function(e,t){return t.serviceId?t.generation!==e.serviceGenerations.get(t.serviceId.toHexString()):t.generation!==e.generation}(this.pool,e))return n;const o=r?.session;return n instanceof u.MongoNetworkError?(o&&!o.hasEnded&&o.serverSession&&(o.serverSession.isDirty=!0),E(o,t)&&!n.hasErrorLabel(u.MongoErrorLabel.TransientTransactionError)&&n.addErrorLabel(u.MongoErrorLabel.TransientTransactionError),(A(this.topology)||(0,c.isTransactionCommand)(t))&&(0,l.supportsRetryableWrites)(this)&&!E(o,t)&&n.addErrorLabel(u.MongoErrorLabel.RetryableWriteError)):(A(this.topology)||(0,c.isTransactionCommand)(t))&&(0,u.needsRetryableWriteLabel)(n,(0,l.maxWireVersion)(this))&&!E(o,t)&&n.addErrorLabel(u.MongoErrorLabel.RetryableWriteError),o&&o.isPinned&&n.hasErrorLabel(u.MongoErrorLabel.TransientTransactionError)&&o.unpin({force:!0}),this.handleError(n,e),n}decrementOperationCount(){return this.s.operationCount-=1}incrementOperationCount(){return this.s.operationCount+=1}}function g(e,t){e.loadBalanced||(t instanceof u.MongoNetworkError&&!(t instanceof u.MongoNetworkTimeoutError)&&e.monitor?.reset(),e.emit(m.DESCRIPTION_RECEIVED,new p.ServerDescription(e.description.hostAddress,void 0,{error:t})))}function E(e,t){return e&&e.inTransaction()&&!(0,c.isTransactionCommand)(t)}function A(e){return!1!==e.s.options.retryWrites}m.SERVER_HEARTBEAT_STARTED=i.SERVER_HEARTBEAT_STARTED,m.SERVER_HEARTBEAT_SUCCEEDED=i.SERVER_HEARTBEAT_SUCCEEDED,m.SERVER_HEARTBEAT_FAILED=i.SERVER_HEARTBEAT_FAILED,m.CONNECT=i.CONNECT,m.DESCRIPTION_RECEIVED=i.DESCRIPTION_RECEIVED,m.CLOSED=i.CLOSED,m.ENDED=i.ENDED,t.Server=m},6366:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.compareTopologyVersion=t.parseServerType=t.ServerDescription=void 0;const n=r(5638),o=r(6372),s=r(407),i=r(281),u=new Set([i.ServerType.RSPrimary,i.ServerType.Standalone,i.ServerType.Mongos,i.ServerType.LoadBalancer]),a=new Set([i.ServerType.RSPrimary,i.ServerType.RSSecondary,i.ServerType.Mongos,i.ServerType.Standalone,i.ServerType.LoadBalancer]);function c(e,t){return t?.loadBalanced?i.ServerType.LoadBalancer:e&&e.ok?e.isreplicaset?i.ServerType.RSGhost:e.msg&&"isdbgrid"===e.msg?i.ServerType.Mongos:e.setName?e.hidden?i.ServerType.RSOther:e.isWritablePrimary?i.ServerType.RSPrimary:e.secondary?i.ServerType.RSSecondary:e.arbiterOnly?i.ServerType.RSArbiter:i.ServerType.RSOther:i.ServerType.Standalone:i.ServerType.Unknown}function l(e,t){if(null==e||null==t)return-1;if(!e.processId.equals(t.processId))return-1;const r=n.Long.isLong(e.counter)?e.counter:n.Long.fromNumber(e.counter),o=n.Long.isLong(t.counter)?t.counter:n.Long.fromNumber(t.counter);return r.compare(o)}t.ServerDescription=class{constructor(e,t,r={}){if(null==e||""===e)throw new o.MongoRuntimeError("ServerDescription must be provided with a non-empty address");this.address="string"==typeof e?s.HostAddress.fromString(e).toString():e.toString(),this.type=c(t,r),this.hosts=t?.hosts?.map((e=>e.toLowerCase()))??[],this.passives=t?.passives?.map((e=>e.toLowerCase()))??[],this.arbiters=t?.arbiters?.map((e=>e.toLowerCase()))??[],this.tags=t?.tags??{},this.minWireVersion=t?.minWireVersion??0,this.maxWireVersion=t?.maxWireVersion??0,this.roundTripTime=r?.roundTripTime??-1,this.minRoundTripTime=r?.minRoundTripTime??0,this.lastUpdateTime=(0,s.now)(),this.lastWriteDate=t?.lastWrite?.lastWriteDate??0,this.error=r.error??null,this.topologyVersion=this.error?.topologyVersion??t?.topologyVersion??null,this.setName=t?.setName??null,this.setVersion=t?.setVersion??null,this.electionId=t?.electionId??null,this.logicalSessionTimeoutMinutes=t?.logicalSessionTimeoutMinutes??null,this.primary=t?.primary??null,this.me=t?.me?.toLowerCase()??null,this.$clusterTime=t?.$clusterTime??null}get hostAddress(){return s.HostAddress.fromString(this.address)}get allHosts(){return this.hosts.concat(this.arbiters).concat(this.passives)}get isReadable(){return this.type===i.ServerType.RSSecondary||this.isWritable}get isDataBearing(){return a.has(this.type)}get isWritable(){return u.has(this.type)}get host(){const e=`:${this.port}`.length;return this.address.slice(0,-e)}get port(){const e=this.address.split(":").pop();return e?Number.parseInt(e,10):27017}equals(e){const t=this.topologyVersion===e?.topologyVersion||0===l(this.topologyVersion,e?.topologyVersion),r=null!=this.electionId&&null!=e?.electionId?0===(0,s.compareObjectId)(this.electionId,e.electionId):this.electionId===e?.electionId;return null!=e&&(0,s.errorStrictEqual)(this.error,e.error)&&this.type===e.type&&this.minWireVersion===e.minWireVersion&&(0,s.arrayStrictEqual)(this.hosts,e.hosts)&&function(e,t){const r=Object.keys(e),n=Object.keys(t);return r.length===n.length&&r.every((r=>t[r]===e[r]))}(this.tags,e.tags)&&this.setName===e.setName&&this.setVersion===e.setVersion&&r&&this.primary===e.primary&&this.logicalSessionTimeoutMinutes===e.logicalSessionTimeoutMinutes&&t}},t.parseServerType=c,t.compareTopologyVersion=l},6610:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.readPreferenceServerSelector=t.secondaryWritableServerSelector=t.sameServerSelector=t.writableServerSelector=t.MIN_SECONDARY_WRITE_WIRE_VERSION=void 0;const n=r(6372),o=r(6474),s=r(281);function i(e,t){const r=Object.keys(e),n=Object.keys(t);for(let o=0;o<r.length;++o){const s=r[o];if(-1===n.indexOf(s)||t[s]!==e[s])return!1}return!0}function u(e,t){const r=t.reduce(((e,t)=>Math.min(t.roundTripTime,e)),1/0),n=r+e.localThresholdMS;return t.reduce(((e,t)=>(t.roundTripTime<=n&&t.roundTripTime>=r&&e.push(t),e)),[])}function a(e){return e.type===s.ServerType.RSPrimary}function c(e){return e.type===s.ServerType.RSSecondary}function l(e){return e.type===s.ServerType.RSSecondary||e.type===s.ServerType.RSPrimary}function h(e){return e.type!==s.ServerType.Unknown}function d(e){return e.type===s.ServerType.LoadBalancer}function p(e){if(!e.isValid())throw new n.MongoInvalidArgumentError("Invalid read preference specified");return function(t,r,p=[]){const f=t.commonWireVersion;if(f&&e.minWireVersion&&e.minWireVersion>f)throw new n.MongoCompatibilityError(`Minimum wire version '${e.minWireVersion}' required, but found '${f}'`);if(t.type===s.TopologyType.LoadBalanced)return r.filter(d);if(t.type===s.TopologyType.Unknown)return[];if(t.type===s.TopologyType.Single)return u(t,r.filter(h));if(t.type===s.TopologyType.Sharded){const e=r.filter((e=>!p.includes(e)));return u(t,(e.length>0?e:p).filter(h))}const m=e.mode;if(m===o.ReadPreference.PRIMARY)return r.filter(a);if(m===o.ReadPreference.PRIMARY_PREFERRED){const e=r.filter(a);if(e.length)return e}const g=m===o.ReadPreference.NEAREST?l:c,E=u(t,function(e,t){if(null==e.tags||Array.isArray(e.tags)&&0===e.tags.length)return t;for(let r=0;r<e.tags.length;++r){const n=e.tags[r],o=t.reduce(((e,t)=>(i(n,t.tags)&&e.push(t),e)),[]);if(o.length)return o}return[]}(e,function(e,t,r){if(null==e.maxStalenessSeconds||e.maxStalenessSeconds<0)return r;const o=e.maxStalenessSeconds,i=(t.heartbeatFrequencyMS+1e4)/1e3;if(o<i)throw new n.MongoInvalidArgumentError(`Option "maxStalenessSeconds" must be at least ${i} seconds`);if(o<90)throw new n.MongoInvalidArgumentError('Option "maxStalenessSeconds" must be at least 90 seconds');if(t.type===s.TopologyType.ReplicaSetWithPrimary){const n=Array.from(t.servers.values()).filter(a)[0];return r.reduce(((r,o)=>((o.lastUpdateTime-o.lastWriteDate-(n.lastUpdateTime-n.lastWriteDate)+t.heartbeatFrequencyMS)/1e3<=(e.maxStalenessSeconds??0)&&r.push(o),r)),[])}if(t.type===s.TopologyType.ReplicaSetNoPrimary){if(0===r.length)return r;const n=r.reduce(((e,t)=>t.lastWriteDate>e.lastWriteDate?t:e));return r.reduce(((r,o)=>((n.lastWriteDate-o.lastWriteDate+t.heartbeatFrequencyMS)/1e3<=(e.maxStalenessSeconds??0)&&r.push(o),r)),[])}return r}(e,t,r.filter(g))));return m===o.ReadPreference.SECONDARY_PREFERRED&&0===E.length?r.filter(a):E}}t.MIN_SECONDARY_WRITE_WIRE_VERSION=13,t.writableServerSelector=function(){return function(e,t){return u(e,t.filter((e=>e.isWritable)))}},t.sameServerSelector=function(e){return function(t,r){return e?r.filter((t=>t.address===e.address&&t.type!==s.ServerType.Unknown)):[]}},t.secondaryWritableServerSelector=function(e,r){return!r||!e||e&&e<t.MIN_SECONDARY_WRITE_WIRE_VERSION?p(o.ReadPreference.primary):p(r)},t.readPreferenceServerSelector=p},8124:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WaitingForSuitableServerEvent=t.ServerSelectionSucceededEvent=t.ServerSelectionFailedEvent=t.ServerSelectionStartedEvent=t.ServerSelectionEvent=void 0;const n=r(407),o=r(3543);class s{constructor(e,t,r){this.selector=e,this.operation=r,this.topologyDescription=t}}t.ServerSelectionEvent=s,t.ServerSelectionStartedEvent=class extends s{constructor(e,t,r){super(e,t,r),this.name=o.SERVER_SELECTION_STARTED,this.message="Server selection started"}},t.ServerSelectionFailedEvent=class extends s{constructor(e,t,r,n){super(e,t,n),this.name=o.SERVER_SELECTION_FAILED,this.message="Server selection failed",this.failure=r}},t.ServerSelectionSucceededEvent=class extends s{constructor(e,t,r,s){super(e,t,s),this.name=o.SERVER_SELECTION_SUCCEEDED,this.message="Server selection succeeded";const{host:i,port:u}=n.HostAddress.fromString(r).toHostPort();this.serverHost=i,this.serverPort=u}},t.WaitingForSuitableServerEvent=class extends s{constructor(e,t,r,n){super(e,t,n),this.name=o.WAITING_FOR_SUITABLE_SERVER,this.message="Waiting for suitable server to become available",this.remainingTimeMS=r}}},1083:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SrvPoller=t.SrvPollingEvent=void 0;const n=r(2250),o=r(3557),s=r(6372),i=r(1404),u=r(407);class a{constructor(e){this.srvRecords=e}hostnames(){return new Set(this.srvRecords.map((e=>u.HostAddress.fromSrvRecord(e).toString())))}}t.SrvPollingEvent=a;class c extends i.TypedEventEmitter{constructor(e){if(super(),!e||!e.srvHost)throw new s.MongoRuntimeError("Options for SrvPoller must exist and include srvHost");this.srvHost=e.srvHost,this.srvMaxHosts=e.srvMaxHosts??0,this.srvServiceName=e.srvServiceName??"mongodb",this.rescanSrvIntervalMS=6e4,this.heartbeatFrequencyMS=e.heartbeatFrequencyMS??1e4,this.haMode=!1,this.generation=0,this._timeout=void 0}get srvAddress(){return`_${this.srvServiceName}._tcp.${this.srvHost}`}get intervalMS(){return this.haMode?this.heartbeatFrequencyMS:this.rescanSrvIntervalMS}start(){this._timeout||this.schedule()}stop(){this._timeout&&((0,o.clearTimeout)(this._timeout),this.generation+=1,this._timeout=void 0)}schedule(){this._timeout&&(0,o.clearTimeout)(this._timeout),this._timeout=(0,o.setTimeout)((()=>{this._poll().then(void 0,u.squashError)}),this.intervalMS)}success(e){this.haMode=!1,this.schedule(),this.emit(c.SRV_RECORD_DISCOVERY,new a(e))}failure(){this.haMode=!0,this.schedule()}async _poll(){const e=this.generation;let t;try{t=await n.promises.resolveSrv(this.srvAddress)}catch(e){return void this.failure()}if(e!==this.generation)return;const r=[];for(const e of t)(0,u.matchesParentDomain)(e.name,this.srvHost)&&r.push(e);r.length?this.success(r):this.failure()}}c.SRV_RECORD_DISCOVERY="srvRecordDiscovery",t.SrvPoller=c},3737:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ServerCapabilities=t.Topology=void 0;const n=r(8266),o=r(3543),s=r(6372),i=r(2973),u=r(1404),a=r(6474),c=r(3533),l=r(407),h=r(281),d=r(9397),p=r(8579),f=r(6366),m=r(6610),g=r(8124),E=r(1083),A=r(7796);let y=0;const C=(0,l.makeStateMachine)({[h.STATE_CLOSED]:[h.STATE_CLOSED,h.STATE_CONNECTING],[h.STATE_CONNECTING]:[h.STATE_CONNECTING,h.STATE_CLOSING,h.STATE_CONNECTED,h.STATE_CLOSED],[h.STATE_CONNECTED]:[h.STATE_CONNECTED,h.STATE_CLOSING,h.STATE_CLOSED],[h.STATE_CLOSING]:[h.STATE_CLOSING,h.STATE_CLOSED]}),S=Symbol("cancelled"),w=Symbol("waitQueue");class b extends u.TypedEventEmitter{constructor(e,t,r){super(),this.client=e,r=r??{hosts:[l.HostAddress.fromString("localhost:27017")],...Object.fromEntries(n.DEFAULT_OPTIONS.entries()),...Object.fromEntries(n.FEATURE_FLAGS.entries())},"string"==typeof t?t=[l.HostAddress.fromString(t)]:Array.isArray(t)||(t=[t]);const o=[];for(const e of t)if("string"==typeof e)o.push(l.HostAddress.fromString(e));else{if(!(e instanceof l.HostAddress))throw new s.MongoRuntimeError(`Topology cannot be constructed from ${JSON.stringify(e)}`);o.push(e)}const i=function(e){return e?.directConnection?h.TopologyType.Single:e?.replicaSet?h.TopologyType.ReplicaSetNoPrimary:e?.loadBalanced?h.TopologyType.LoadBalanced:h.TopologyType.Unknown}(r),u=y++,a=null==r.srvMaxHosts||0===r.srvMaxHosts||r.srvMaxHosts>=o.length?o:(0,l.shuffle)(o,r.srvMaxHosts),c=new Map;for(const e of a)c.set(e.toString(),new f.ServerDescription(e));this[w]=new l.List,this.s={id:u,options:r,seedlist:o,state:h.STATE_CLOSED,description:new A.TopologyDescription(i,c,r.replicaSet,void 0,void 0,void 0,r),serverSelectionTimeoutMS:r.serverSelectionTimeoutMS,heartbeatFrequencyMS:r.heartbeatFrequencyMS,minHeartbeatFrequencyMS:r.minHeartbeatFrequencyMS,servers:new Map,credentials:r?.credentials,clusterTime:void 0,connectionTimers:new Set,detectShardedTopology:e=>this.detectShardedTopology(e),detectSrvRecords:e=>this.detectSrvRecords(e)},this.mongoLogger=e.mongoLogger,this.component="topology",r.srvHost&&!r.loadBalanced&&(this.s.srvPoller=r.srvPoller??new E.SrvPoller({heartbeatFrequencyMS:this.s.heartbeatFrequencyMS,srvHost:r.srvHost,srvMaxHosts:r.srvMaxHosts,srvServiceName:r.srvServiceName}),this.on(b.TOPOLOGY_DESCRIPTION_CHANGED,this.s.detectShardedTopology)),this.connectionLock=void 0}detectShardedTopology(e){const t=e.previousDescription.type,r=e.newDescription.type,n=t!==h.TopologyType.Sharded&&r===h.TopologyType.Sharded,o=this.s.srvPoller?.listeners(E.SrvPoller.SRV_RECORD_DISCOVERY),s=!!o?.includes(this.s.detectSrvRecords);n&&!s&&(this.s.srvPoller?.on(E.SrvPoller.SRV_RECORD_DISCOVERY,this.s.detectSrvRecords),this.s.srvPoller?.start())}detectSrvRecords(e){const t=this.s.description;this.s.description=this.s.description.updateFromSrvPollingEvent(e,this.s.options.srvMaxHosts),this.s.description!==t&&(_(this),this.emitAndLog(b.TOPOLOGY_DESCRIPTION_CHANGED,new d.TopologyDescriptionChangedEvent(this.s.id,t,this.s.description)))}get description(){return this.s.description}get loadBalanced(){return this.s.options.loadBalanced}get serverApi(){return this.s.options.serverApi}get capabilities(){return new T(this.lastHello())}async connect(e){this.connectionLock??=this._connect(e);try{return await this.connectionLock,this}finally{this.connectionLock=void 0}return this}async _connect(e){if(e=e??{},this.s.state===h.STATE_CONNECTED)return this;C(this,h.STATE_CONNECTING),this.emitAndLog(b.TOPOLOGY_OPENING,new d.TopologyOpeningEvent(this.s.id)),this.emitAndLog(b.TOPOLOGY_DESCRIPTION_CHANGED,new d.TopologyDescriptionChangedEvent(this.s.id,new A.TopologyDescription(h.TopologyType.Unknown),this.s.description));const t=Array.from(this.s.description.servers.values());if(this.s.servers=new Map(t.map((e=>[e.address,O(this,e)]))),this.s.options.loadBalanced)for(const e of t){const t=new f.ServerDescription(e.hostAddress,void 0,{loadBalanced:this.s.options.loadBalanced});this.serverUpdateHandler(t)}const r=e.readPreference??a.ReadPreference.primary,n={operationName:"ping",...e};try{const e=await this.selectServer((0,m.readPreferenceServerSelector)(r),n);return!0!==this.s.options[Symbol.for("@@mdb.skipPingOnConnect")]&&e&&this.s.credentials?(await e.command((0,l.ns)("admin.$cmd"),{ping:1},{}),C(this,h.STATE_CONNECTED),this.emit(b.OPEN,this),this.emit(b.CONNECT,this),this):(C(this,h.STATE_CONNECTED),this.emit(b.OPEN,this),this.emit(b.CONNECT,this),this)}catch(e){throw this.close(),e}}close(){if(this.s.state!==h.STATE_CLOSED&&this.s.state!==h.STATE_CLOSING){for(const e of this.s.servers.values())v(e,this);this.s.servers.clear(),C(this,h.STATE_CLOSING),B(this[w],new s.MongoTopologyClosedError),(0,h.drainTimerQueue)(this.s.connectionTimers),this.s.srvPoller&&(this.s.srvPoller.stop(),this.s.srvPoller.removeListener(E.SrvPoller.SRV_RECORD_DISCOVERY,this.s.detectSrvRecords)),this.removeListener(b.TOPOLOGY_DESCRIPTION_CHANGED,this.s.detectShardedTopology),C(this,h.STATE_CLOSED),this.emitAndLog(b.TOPOLOGY_CLOSED,new d.TopologyClosedEvent(this.s.id))}}async selectServer(e,t){let r;if("function"!=typeof e)if("string"==typeof e)r=(0,m.readPreferenceServerSelector)(a.ReadPreference.fromString(e));else{let n;e instanceof a.ReadPreference?n=e:(a.ReadPreference.translate(t),n=t.readPreference||a.ReadPreference.primary),r=(0,m.readPreferenceServerSelector)(n)}else r=e;t={serverSelectionTimeoutMS:this.s.serverSelectionTimeoutMS,...t},this.client.mongoLogger?.willLog(i.MongoLoggableComponent.SERVER_SELECTION,i.SeverityLevel.DEBUG)&&this.client.mongoLogger?.debug(i.MongoLoggableComponent.SERVER_SELECTION,new g.ServerSelectionStartedEvent(e,this.description,t.operationName));const n=this.description.type===h.TopologyType.Sharded,o=t.session,u=o&&o.transaction;if(n&&u&&u.server)return this.client.mongoLogger?.willLog(i.MongoLoggableComponent.SERVER_SELECTION,i.SeverityLevel.DEBUG)&&this.client.mongoLogger?.debug(i.MongoLoggableComponent.SERVER_SELECTION,new g.ServerSelectionSucceededEvent(e,this.description,u.server.pool.address,t.operationName)),u.server;const{promise:d,resolve:p,reject:f}=(0,l.promiseWithResolvers)(),E=c.Timeout.expires(t.serverSelectionTimeoutMS??0),A={serverSelector:r,topologyDescription:this.description,mongoLogger:this.client.mongoLogger,transaction:u,resolve:p,reject:f,timeout:E,startTime:(0,l.now)(),operationName:t.operationName,waitingLogged:!1,previousServer:t.previousServer};this[w].push(A),D(this);try{return await Promise.race([d,A.timeout])}catch(r){if(c.TimeoutError.is(r)){A[S]=!0,E.clear();const r=new s.MongoServerSelectionError(`Server selection timed out after ${t.serverSelectionTimeoutMS} ms`,this.description);throw this.client.mongoLogger?.willLog(i.MongoLoggableComponent.SERVER_SELECTION,i.SeverityLevel.DEBUG)&&this.client.mongoLogger?.debug(i.MongoLoggableComponent.SERVER_SELECTION,new g.ServerSelectionFailedEvent(e,this.description,r,t.operationName)),r}throw r}}serverUpdateHandler(e){if(!this.s.description.hasServer(e.address))return;if(function(e,t){const r=e.servers.get(t.address),n=r?.topologyVersion;return(0,f.compareTopologyVersion)(n,t.topologyVersion)>0}(this.s.description,e))return;const t=this.s.description,r=this.s.description.servers.get(e.address);if(!r)return;const n=e.$clusterTime;n&&(0,h._advanceClusterTime)(this,n);const o=r&&r.equals(e);if(this.s.description=this.s.description.update(e),this.s.description.compatibilityError)this.emit(b.ERROR,new s.MongoCompatibilityError(this.s.description.compatibilityError));else{if(!o){const t=this.s.description.servers.get(e.address);t&&this.emit(b.SERVER_DESCRIPTION_CHANGED,new d.ServerDescriptionChangedEvent(this.s.id,e.address,r,t))}_(this,e),this[w].length>0&&D(this),o||this.emitAndLog(b.TOPOLOGY_DESCRIPTION_CHANGED,new d.TopologyDescriptionChangedEvent(this.s.id,t,this.s.description))}}auth(e,t){"function"==typeof e&&(t=e,e=void 0),"function"==typeof t&&t(void 0,!0)}get clientMetadata(){return this.s.options.metadata}isConnected(){return this.s.state===h.STATE_CONNECTED}isDestroyed(){return this.s.state===h.STATE_CLOSED}lastHello(){const e=Array.from(this.description.servers.values());return 0===e.length?{}:e.filter((e=>e.type!==h.ServerType.Unknown))[0]||{maxWireVersion:this.description.commonWireVersion}}get commonWireVersion(){return this.description.commonWireVersion}get logicalSessionTimeoutMinutes(){return this.description.logicalSessionTimeoutMinutes}get clusterTime(){return this.s.clusterTime}set clusterTime(e){this.s.clusterTime=e}}function v(e,t){for(const t of o.LOCAL_SERVER_EVENTS)e.removeAllListeners(t);e.destroy(),t.emitAndLog(b.SERVER_CLOSED,new d.ServerClosedEvent(t.s.id,e.description.address));for(const t of o.SERVER_RELAY_EVENTS)e.removeAllListeners(t)}function O(e,t){e.emitAndLog(b.SERVER_OPENING,new d.ServerOpeningEvent(e.s.id,t.address));const r=new p.Server(e,t,e.s.options);for(const t of o.SERVER_RELAY_EVENTS)r.on(t,(r=>e.emit(t,r)));return r.on(p.Server.DESCRIPTION_RECEIVED,(t=>e.serverUpdateHandler(t))),r.connect(),r}function _(e,t){if(t&&e.s.servers.has(t.address)){const r=e.s.servers.get(t.address);if(r)if(r.s.description=t,t.error instanceof s.MongoError&&t.error.hasErrorLabel(s.MongoErrorLabel.ResetPool)){const e=t.error.hasErrorLabel(s.MongoErrorLabel.InterruptInUseConnections);r.pool.clear({interruptInUseConnections:e})}else if(null==t.error){const n=e.s.description.type;(t.isDataBearing||t.type!==h.ServerType.Unknown&&n===h.TopologyType.Single)&&r.pool.ready()}}for(const t of e.description.servers.values())if(!e.s.servers.has(t.address)){const r=O(e,t);e.s.servers.set(t.address,r)}for(const t of e.s.servers){const r=t[0];if(e.description.hasServer(r))continue;if(!e.s.servers.has(r))continue;const n=e.s.servers.get(r);e.s.servers.delete(r),n&&v(n,e)}}function B(e,t){for(;e.length;){const r=e.shift();r&&(r.timeout.clear(),r[S]||(r.mongoLogger?.willLog(i.MongoLoggableComponent.SERVER_SELECTION,i.SeverityLevel.DEBUG)&&r.mongoLogger?.debug(i.MongoLoggableComponent.SERVER_SELECTION,new g.ServerSelectionFailedEvent(r.serverSelector,r.topologyDescription,t,r.operationName)),r.reject(t)))}}function D(e){if(e.s.state===h.STATE_CLOSED)return void B(e[w],new s.MongoTopologyClosedError);const t=e.description.type===h.TopologyType.Sharded,r=Array.from(e.description.servers.values()),n=e[w].length;for(let o=0;o<n;++o){const n=e[w].shift();if(!n)continue;if(n[S])continue;let o,u;try{const t=n.serverSelector,s=n.previousServer;o=t?t(e.description,r,s?[s]:[]):r}catch(t){n.timeout.clear(),e.client.mongoLogger?.willLog(i.MongoLoggableComponent.SERVER_SELECTION,i.SeverityLevel.DEBUG)&&e.client.mongoLogger?.debug(i.MongoLoggableComponent.SERVER_SELECTION,new g.ServerSelectionFailedEvent(n.serverSelector,e.description,t,n.operationName)),n.reject(t);continue}if(0===o.length){n.waitingLogged||(e.client.mongoLogger?.willLog(i.MongoLoggableComponent.SERVER_SELECTION,i.SeverityLevel.INFORMATIONAL)&&e.client.mongoLogger?.info(i.MongoLoggableComponent.SERVER_SELECTION,new g.WaitingForSuitableServerEvent(n.serverSelector,e.description,0!==e.s.serverSelectionTimeoutMS?e.s.serverSelectionTimeoutMS-((0,l.now)()-n.startTime):-1,n.operationName)),n.waitingLogged=!0),e[w].push(n);continue}if(1===o.length)u=e.s.servers.get(o[0].address);else{const t=(0,l.shuffle)(o,2),r=e.s.servers.get(t[0].address),n=e.s.servers.get(t[1].address);u=r&&n&&r.s.operationCount<n.s.operationCount?r:n}if(!u){const t=new s.MongoServerSelectionError("server selection returned a server description but the server was not found in the topology",e.description);return e.client.mongoLogger?.willLog(i.MongoLoggableComponent.SERVER_SELECTION,i.SeverityLevel.DEBUG)&&e.client.mongoLogger?.debug(i.MongoLoggableComponent.SERVER_SELECTION,new g.ServerSelectionFailedEvent(n.serverSelector,e.description,t,n.operationName)),void n.reject(t)}const a=n.transaction;t&&a&&a.isActive&&u&&a.pinServer(u),n.timeout.clear(),e.client.mongoLogger?.willLog(i.MongoLoggableComponent.SERVER_SELECTION,i.SeverityLevel.DEBUG)&&e.client.mongoLogger?.debug(i.MongoLoggableComponent.SERVER_SELECTION,new g.ServerSelectionSucceededEvent(n.serverSelector,n.topologyDescription,u.pool.address,n.operationName)),n.resolve(u)}if(e[w].length>0)for(const[,t]of e.s.servers)process.nextTick((function(){return t.requestCheck()}))}b.SERVER_OPENING=o.SERVER_OPENING,b.SERVER_CLOSED=o.SERVER_CLOSED,b.SERVER_DESCRIPTION_CHANGED=o.SERVER_DESCRIPTION_CHANGED,b.TOPOLOGY_OPENING=o.TOPOLOGY_OPENING,b.TOPOLOGY_CLOSED=o.TOPOLOGY_CLOSED,b.TOPOLOGY_DESCRIPTION_CHANGED=o.TOPOLOGY_DESCRIPTION_CHANGED,b.ERROR=o.ERROR,b.OPEN=o.OPEN,b.CONNECT=o.CONNECT,b.CLOSE=o.CLOSE,b.TIMEOUT=o.TIMEOUT,t.Topology=b;class T{constructor(e){this.minWireVersion=e.minWireVersion||0,this.maxWireVersion=e.maxWireVersion||0}get hasAggregationCursor(){return this.maxWireVersion>=1}get hasWriteCommands(){return this.maxWireVersion>=2}get hasTextSearch(){return this.minWireVersion>=0}get hasAuthCommands(){return this.maxWireVersion>=1}get hasListCollectionsCommand(){return this.maxWireVersion>=3}get hasListIndexesCommand(){return this.maxWireVersion>=3}get supportsSnapshotReads(){return this.maxWireVersion>=13}get commandsTakeWriteConcern(){return this.maxWireVersion>=5}get commandsTakeCollation(){return this.maxWireVersion>=5}}t.ServerCapabilities=T},7796:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TopologyDescription=void 0;const n=r(5638),o=r(9826),s=r(6372),i=r(407),u=r(281),a=r(6366),c=o.MIN_SUPPORTED_SERVER_VERSION,l=o.MAX_SUPPORTED_SERVER_VERSION,h=o.MIN_SUPPORTED_WIRE_VERSION,d=o.MAX_SUPPORTED_WIRE_VERSION,p=new Set([u.ServerType.Mongos,u.ServerType.Unknown]),f=new Set([u.ServerType.Mongos,u.ServerType.Standalone]),m=new Set([u.ServerType.RSSecondary,u.ServerType.RSArbiter,u.ServerType.RSOther]);class g{constructor(e,t=null,r=null,n=null,o=null,s=null,i=null){i=i??{},this.type=e??u.TopologyType.Unknown,this.servers=t??new Map,this.stale=!1,this.compatible=!0,this.heartbeatFrequencyMS=i.heartbeatFrequencyMS??0,this.localThresholdMS=i.localThresholdMS??15,this.setName=r??null,this.maxElectionId=o??null,this.maxSetVersion=n??null,this.commonWireVersion=s??0;for(const e of this.servers.values())if(e.type!==u.ServerType.Unknown&&e.type!==u.ServerType.LoadBalancer&&(e.minWireVersion>d&&(this.compatible=!1,this.compatibilityError=`Server at ${e.address} requires wire version ${e.minWireVersion}, but this version of the driver only supports up to ${d} (MongoDB ${l})`),e.maxWireVersion<h)){this.compatible=!1,this.compatibilityError=`Server at ${e.address} reports wire version ${e.maxWireVersion}, but this version of the driver requires at least ${h} (MongoDB ${c}).`;break}this.logicalSessionTimeoutMinutes=null;for(const[,e]of this.servers)if(e.isReadable){if(null==e.logicalSessionTimeoutMinutes){this.logicalSessionTimeoutMinutes=null;break}if(null==this.logicalSessionTimeoutMinutes){this.logicalSessionTimeoutMinutes=e.logicalSessionTimeoutMinutes;continue}this.logicalSessionTimeoutMinutes=Math.min(this.logicalSessionTimeoutMinutes,e.logicalSessionTimeoutMinutes)}}updateFromSrvPollingEvent(e,t=0){const r=e.hostnames(),n=new Set(this.servers.keys()),o=new Set(r),s=new Set;for(const e of n)o.delete(e),r.has(e)||s.add(e);if(0===o.size&&0===s.size)return this;const u=new Map(this.servers);for(const e of s)u.delete(e);if(o.size>0)if(0===t)for(const e of o)u.set(e,new a.ServerDescription(e));else if(u.size<t){const e=(0,i.shuffle)(o,t-u.size);for(const t of e)u.set(t,new a.ServerDescription(t))}return new g(this.type,u,this.setName,this.maxSetVersion,this.maxElectionId,this.commonWireVersion,{heartbeatFrequencyMS:this.heartbeatFrequencyMS,localThresholdMS:this.localThresholdMS})}update(e){const t=e.address;let{type:r,setName:n,maxSetVersion:o,maxElectionId:i,commonWireVersion:c}=this;const l=e.type,h=new Map(this.servers);if(0!==e.maxWireVersion&&(c=null==c?e.maxWireVersion:Math.min(c,e.maxWireVersion)),"string"==typeof e.setName&&"string"==typeof n&&e.setName!==n&&(r===u.TopologyType.Single?e=new a.ServerDescription(t):h.delete(t)),h.set(t,e),r===u.TopologyType.Single)return new g(u.TopologyType.Single,h,n,o,i,c,{heartbeatFrequencyMS:this.heartbeatFrequencyMS,localThresholdMS:this.localThresholdMS});if(r===u.TopologyType.Unknown&&(l===u.ServerType.Standalone&&1!==this.servers.size?h.delete(t):r=function(e){switch(e){case u.ServerType.Standalone:return u.TopologyType.Single;case u.ServerType.Mongos:return u.TopologyType.Sharded;case u.ServerType.RSPrimary:return u.TopologyType.ReplicaSetWithPrimary;case u.ServerType.RSOther:case u.ServerType.RSSecondary:return u.TopologyType.ReplicaSetNoPrimary;default:return u.TopologyType.Unknown}}(l)),r===u.TopologyType.Sharded&&(p.has(l)||h.delete(t)),r===u.TopologyType.ReplicaSetNoPrimary)if(f.has(l)&&h.delete(t),l===u.ServerType.RSPrimary){const t=E(h,e,n,o,i);r=t[0],n=t[1],o=t[2],i=t[3]}else if(m.has(l)){const t=function(e,t,r=null){const n=u.TopologyType.ReplicaSetNoPrimary;return(r=r??t.setName)!==t.setName?(e.delete(t.address),[n,r]):(t.allHosts.forEach((t=>{e.has(t)||e.set(t,new a.ServerDescription(t))})),t.me&&t.address!==t.me&&e.delete(t.address),[n,r])}(h,e,n);r=t[0],n=t[1]}if(r===u.TopologyType.ReplicaSetWithPrimary)if(f.has(l))h.delete(t),r=A(h);else if(l===u.ServerType.RSPrimary){const t=E(h,e,n,o,i);r=t[0],n=t[1],o=t[2],i=t[3]}else r=m.has(l)?function(e,t,r=null){if(null==r)throw new s.MongoRuntimeError('Argument "setName" is required if connected to a replica set');return(r!==t.setName||t.me&&t.address!==t.me)&&e.delete(t.address),A(e)}(h,e,n):A(h);return new g(r,h,n,o,i,c,{heartbeatFrequencyMS:this.heartbeatFrequencyMS,localThresholdMS:this.localThresholdMS})}get error(){const e=Array.from(this.servers.values()).filter((e=>e.error));return e.length>0?e[0].error:null}get hasKnownServers(){return Array.from(this.servers.values()).some((e=>e.type!==u.ServerType.Unknown))}get hasDataBearingServers(){return Array.from(this.servers.values()).some((e=>e.isDataBearing))}hasServer(e){return this.servers.has(e)}toJSON(){return n.EJSON.serialize(this)}}function E(e,t,r=null,n=null,o=null){if((r=r||t.setName)!==t.setName)return e.delete(t.address),[A(e),r,n,o];if(t.maxWireVersion>=17){const s=(0,i.compareObjectId)(o,t.electionId),u=0===s,c=-1===s,l=(n??-1)<=(t.setVersion??-1);if(!(c||u&&l))return e.set(t.address,new a.ServerDescription(t.address)),[A(e),r,n,o];o=t.electionId,n=t.setVersion}else{const s=t.electionId?t.electionId:null;if(t.setVersion&&s){if(n&&o&&(n>t.setVersion||(0,i.compareObjectId)(o,s)>0))return e.set(t.address,new a.ServerDescription(t.address)),[A(e),r,n,o];o=t.electionId}null!=t.setVersion&&(null==n||t.setVersion>n)&&(n=t.setVersion)}for(const[r,n]of e)if(n.type===u.ServerType.RSPrimary&&n.address!==t.address){e.set(r,new a.ServerDescription(n.address));break}t.allHosts.forEach((t=>{e.has(t)||e.set(t,new a.ServerDescription(t))}));const s=Array.from(e.keys()),c=t.allHosts;return s.filter((e=>-1===c.indexOf(e))).forEach((t=>{e.delete(t)})),[A(e),r,n,o]}function A(e){for(const t of e.values())if(t.type===u.ServerType.RSPrimary)return u.TopologyType.ReplicaSetWithPrimary;return u.TopologyType.ReplicaSetNoPrimary}t.TopologyDescription=g},945:(e,t,r)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.updateSessionFromResponse=t.applySession=t.ServerSessionPool=t.ServerSession=t.maybeClearPinnedConnection=t.ClientSession=void 0;const o=r(5638),s=r(7367),i=r(6234),u=r(3543),a=r(6372),c=r(1404),l=r(3184),h=r(7074),d=r(9875),p=r(6474),f=r(281),m=r(8297),g=r(407),E=r(770),A=Symbol("serverSession"),y=Symbol("snapshotTime"),C=Symbol("snapshotEnabled"),S=Symbol("pinnedConnection"),w=Symbol("txnNumberIncrement");class b extends c.TypedEventEmitter{constructor(e,t,r,o){if(super(),this[n]=!1,null==e)throw new a.MongoRuntimeError("ClientSession requires a MongoClient");if(null==t||!(t instanceof x))throw new a.MongoRuntimeError("ClientSession requires a ServerSessionPool");if(!0===(r=r??{}).snapshot&&(this[C]=!0,!0===r.causalConsistency))throw new a.MongoInvalidArgumentError('Properties "causalConsistency" and "snapshot" are mutually exclusive');this.client=e,this.sessionPool=t,this.hasEnded=!1,this.clientOptions=o,this.timeoutMS=r.defaultTimeoutMS??e.options?.timeoutMS,this.explicit=!!r.explicit,this[A]=this.explicit?this.sessionPool.acquire():null,this[w]=0;const s=this.explicit&&!0!==r.snapshot;this.supports={causalConsistency:r.causalConsistency??s},this.clusterTime=r.initialClusterTime,this.operationTime=void 0,this.owner=r.owner,this.defaultTransactionOptions={...r.defaultTransactionOptions},this.transaction=new m.Transaction}get id(){return this[A]?.id}get serverSession(){let e=this[A];if(null==e){if(this.explicit)throw new a.MongoRuntimeError("Unexpected null serverSession for an explicit session");if(this.hasEnded)throw new a.MongoRuntimeError("Unexpected null serverSession for an ended implicit session");e=this.sessionPool.acquire(),this[A]=e}return e}get snapshotEnabled(){return this[C]}get loadBalanced(){return this.client.topology?.description.type===f.TopologyType.LoadBalanced}get pinnedConnection(){return this[S]}pin(e){if(this[S])throw TypeError("Cannot pin multiple connections to the same session");this[S]=e,e.emit(u.PINNED,this.inTransaction()?s.ConnectionPoolMetrics.TXN:s.ConnectionPoolMetrics.CURSOR)}unpin(e){if(this.loadBalanced)return B(this,e);this.transaction.unpinServer()}get isPinned(){return this.loadBalanced?!!this[S]:this.transaction.isPinned}async endSession(e){try{if(this.inTransaction()&&await this.abortTransaction(),!this.hasEnded){const e=this[A];null!=e&&(this.sessionPool.release(e),Object.defineProperty(this,A,{value:M.clone(e),writable:!1})),this.hasEnded=!0,this.emit("ended",this)}}catch(e){(0,g.squashError)(e)}finally{B(this,{force:!0,...e})}}advanceOperationTime(e){null!=this.operationTime?e.greaterThan(this.operationTime)&&(this.operationTime=e):this.operationTime=e}advanceClusterTime(e){if(!e||"object"!=typeof e)throw new a.MongoInvalidArgumentError("input cluster time must be an object");if(!e.clusterTime||"Timestamp"!==e.clusterTime._bsontype)throw new a.MongoInvalidArgumentError('input cluster time "clusterTime" property must be a valid BSON Timestamp');if(!e.signature||"Binary"!==e.signature.hash?._bsontype||"bigint"!=typeof e.signature.keyId&&"number"!=typeof e.signature.keyId&&"Long"!==e.signature.keyId?._bsontype)throw new a.MongoInvalidArgumentError('input cluster time must have a valid "signature" property with BSON Binary hash and BSON Long keyId');(0,f._advanceClusterTime)(this,e)}equals(e){return e instanceof b&&null!=this.id&&null!=e.id&&g.ByteUtils.equals(this.id.id.buffer,e.id.id.buffer)}incrementTransactionNumber(){this[w]+=1}inTransaction(){return this.transaction.isActive}startTransaction(e){if(this[C])throw new a.MongoCompatibilityError("Transactions are not supported in snapshot sessions");if(this.inTransaction())throw new a.MongoTransactionError("Transaction already in progress");this.isPinned&&this.transaction.isCommitted&&this.unpin();const t=(0,g.maxWireVersion)(this.client.topology);if((0,i.isSharded)(this.client.topology)&&null!=t&&t<8)throw new a.MongoCompatibilityError("Transactions are not supported on sharded clusters in MongoDB < 4.2.");this.incrementTransactionNumber(),this.transaction=new m.Transaction({readConcern:e?.readConcern??this.defaultTransactionOptions.readConcern??this.clientOptions?.readConcern,writeConcern:e?.writeConcern??this.defaultTransactionOptions.writeConcern??this.clientOptions?.writeConcern,readPreference:e?.readPreference??this.defaultTransactionOptions.readPreference??this.clientOptions?.readPreference,maxCommitTimeMS:e?.maxCommitTimeMS??this.defaultTransactionOptions.maxCommitTimeMS}),this.transaction.transition(m.TxnState.STARTING_TRANSACTION)}async commitTransaction(){return await R(this,"commitTransaction")}async abortTransaction(){return await R(this,"abortTransaction")}toBSON(){throw new a.MongoRuntimeError("ClientSession cannot be serialized to BSON.")}async withTransaction(e,t){const r=(0,g.now)();return await F(this,r,e,t)}}t.ClientSession=b,n=C;const v=12e4,O=new Set(["CannotSatisfyWriteConcern","UnknownReplWriteConcern","UnsatisfiableWriteConcern"]);function _(e,t){return(0,g.calculateDurationInMs)(e)<t}function B(e,t){const r=e[S],n=t?.error;if(e.inTransaction()&&n&&n instanceof a.MongoError&&n.hasErrorLabel(a.MongoErrorLabel.TransientTransactionError))return;const o=e.client.topology;if(r&&null!=o){const n=Array.from(o.s.servers.values())[0];(null==t?.error||t?.force)&&(n.pool.checkIn(r),e[S]=void 0,r.emit(u.UNPINNED,e.transaction.state!==m.TxnState.NO_TRANSACTION?s.ConnectionPoolMetrics.TXN:s.ConnectionPoolMetrics.CURSOR),t?.forceClear&&n.pool.clear({serviceId:r.serviceId}))}}function D(e){return null!=e&&e instanceof a.MongoServerError&&(e.code===a.MONGODB_ERROR_CODES.MaxTimeMSExpired||e.writeConcernError&&e.writeConcernError.code===a.MONGODB_ERROR_CODES.MaxTimeMSExpired)}async function T(e,t,r,n,o){try{return await e.commitTransaction(),n}catch(s){if(s instanceof a.MongoError&&_(t,v)&&!D(s)){if(s.hasErrorLabel(a.MongoErrorLabel.UnknownTransactionCommitResult))return await T(e,t,r,n,o);if(s.hasErrorLabel(a.MongoErrorLabel.TransientTransactionError))return await F(e,t,r,o)}throw s}}t.maybeClearPinnedConnection=B;const I=new Set([m.TxnState.NO_TRANSACTION,m.TxnState.TRANSACTION_COMMITTED,m.TxnState.TRANSACTION_ABORTED]);async function F(e,t,r,n={}){let o;e.startTransaction(n);try{o=r(e)}catch(e){o=Promise.reject(e)}if(!(0,g.isPromiseLike)(o)){try{await e.abortTransaction()}catch(e){(0,g.squashError)(e)}throw new a.MongoInvalidArgumentError("Function provided to `withTransaction` must return a Promise")}try{const s=await o;return function(e){return I.has(e.transaction.state)}(e)?s:await T(e,t,r,s,n)}catch(o){if(e.inTransaction()&&await e.abortTransaction(),o instanceof a.MongoError&&o.hasErrorLabel(a.MongoErrorLabel.TransientTransactionError)&&_(t,v))return await F(e,t,r,n);throw D(o)&&o.addErrorLabel(a.MongoErrorLabel.UnknownTransactionCommitResult),o}}async function R(e,t){const r=e.transaction.state;if(r===m.TxnState.NO_TRANSACTION)throw new a.MongoTransactionError("No transaction started");if("commitTransaction"===t){if(r===m.TxnState.STARTING_TRANSACTION||r===m.TxnState.TRANSACTION_COMMITTED_EMPTY)return void e.transaction.transition(m.TxnState.TRANSACTION_COMMITTED_EMPTY);if(r===m.TxnState.TRANSACTION_ABORTED)throw new a.MongoTransactionError("Cannot call commitTransaction after calling abortTransaction")}else{if(r===m.TxnState.STARTING_TRANSACTION)return void e.transaction.transition(m.TxnState.TRANSACTION_ABORTED);if(r===m.TxnState.TRANSACTION_ABORTED)throw new a.MongoTransactionError("Cannot call abortTransaction twice");if(r===m.TxnState.TRANSACTION_COMMITTED||r===m.TxnState.TRANSACTION_COMMITTED_EMPTY)throw new a.MongoTransactionError("Cannot call abortTransaction after calling commitTransaction")}const n={[t]:1};let o;e.transaction.options.writeConcern?o=Object.assign({},e.transaction.options.writeConcern):e.clientOptions&&e.clientOptions.writeConcern&&(o={w:e.clientOptions.writeConcern.w}),r===m.TxnState.TRANSACTION_COMMITTED&&(o=Object.assign({wtimeoutMS:1e4},o,{w:"majority"})),o&&E.WriteConcern.apply(n,o),"commitTransaction"===t&&e.transaction.options.maxTimeMS&&Object.assign(n,{maxTimeMS:e.transaction.options.maxTimeMS}),e.transaction.recoveryToken&&(n.recoveryToken=e.transaction.recoveryToken);try{await(0,l.executeOperation)(e.client,new h.RunAdminCommandOperation(n,{session:e,readPreference:p.ReadPreference.primary,bypassPinningCheck:!0})),n.abortTransaction&&e.unpin(),"commitTransaction"!==t?(e.transaction.transition(m.TxnState.TRANSACTION_ABORTED),e.loadBalanced&&B(e,{force:!1})):e.transaction.transition(m.TxnState.TRANSACTION_COMMITTED)}catch(r){if(n.abortTransaction&&e.unpin(),r instanceof a.MongoError&&(0,a.isRetryableWriteError)(r)){n.commitTransaction&&(e.unpin({force:!0}),n.writeConcern=Object.assign({wtimeout:1e4},n.writeConcern,{w:"majority"}));try{await(0,l.executeOperation)(e.client,new h.RunAdminCommandOperation(n,{session:e,readPreference:p.ReadPreference.primary,bypassPinningCheck:!0})),"commitTransaction"!==t?(e.transaction.transition(m.TxnState.TRANSACTION_ABORTED),e.loadBalanced&&B(e,{force:!1})):e.transaction.transition(m.TxnState.TRANSACTION_COMMITTED)}catch(r){N(e,t,r)}}else N(e,t,r)}}function N(e,t,r){if("commitTransaction"!==t)return e.transaction.transition(m.TxnState.TRANSACTION_ABORTED),void(e.loadBalanced&&B(e,{force:!1}));throw e.transaction.transition(m.TxnState.TRANSACTION_COMMITTED),r instanceof a.MongoError&&((0,a.isRetryableWriteError)(r)||r instanceof a.MongoWriteConcernError||D(r)?function(e){const t=e instanceof a.MongoServerError&&e.codeName&&O.has(e.codeName);return D(e)||!t&&e.code!==a.MONGODB_ERROR_CODES.UnsatisfiableWriteConcern&&e.code!==a.MONGODB_ERROR_CODES.UnknownReplWriteConcern}(r)&&(r.addErrorLabel(a.MongoErrorLabel.UnknownTransactionCommitResult),e.unpin({error:r})):r.hasErrorLabel(a.MongoErrorLabel.TransientTransactionError)&&e.unpin({error:r})),r}class M{constructor(){this.id={id:new o.Binary((0,g.uuidV4)(),o.Binary.SUBTYPE_UUID)},this.lastUse=(0,g.now)(),this.txnNumber=0,this.isDirty=!1}hasTimedOut(e){return Math.round((0,g.calculateDurationInMs)(this.lastUse)%864e5%36e5/6e4)>e-1}static clone(e){const t=new ArrayBuffer(16),r=Buffer.from(t);r.set(e.id.id.buffer);const n=new o.Binary(r,e.id.id.sub_type);return Object.setPrototypeOf({id:{id:n},lastUse:e.lastUse,txnNumber:e.txnNumber,isDirty:e.isDirty},M.prototype)}}t.ServerSession=M;class x{constructor(e){if(null==e)throw new a.MongoRuntimeError("ServerSessionPool requires a MongoClient");this.client=e,this.sessions=new g.List}acquire(){const e=this.client.topology?.logicalSessionTimeoutMinutes??10;let t=null;for(;this.sessions.length>0;){const r=this.sessions.shift();if(null!=r&&(this.client.topology?.loadBalanced||!r.hasTimedOut(e))){t=r;break}}return null==t&&(t=new M),t}release(e){const t=this.client.topology?.logicalSessionTimeoutMinutes??10;if(this.client.topology?.loadBalanced&&!t&&this.sessions.unshift(e),t&&(this.sessions.prune((e=>e.hasTimedOut(t))),!e.hasTimedOut(t))){if(e.isDirty)return;this.sessions.unshift(e)}}}t.ServerSessionPool=x,t.applySession=function(e,t,r){if(e.hasEnded)return new a.MongoExpiredSessionError;const n=e.serverSession;if(null==n)return new a.MongoRuntimeError("Unable to acquire server session");if(0===r.writeConcern?.w)return e&&e.explicit?new a.MongoAPIError("Cannot have explicit session with unacknowledged writes"):void 0;n.lastUse=(0,g.now)(),t.lsid=n.id;const s=e.inTransaction()||(0,m.isTransactionCommand)(t);if((!!r.willRetryWrite||s)&&(n.txnNumber+=e[w],e[w]=0,t.txnNumber=o.Long.fromNumber(n.txnNumber)),!s)return e.transaction.state!==m.TxnState.NO_TRANSACTION&&e.transaction.transition(m.TxnState.NO_TRANSACTION),void(e.supports.causalConsistency&&e.operationTime&&(0,g.commandSupportsReadConcern)(t)?(t.readConcern=t.readConcern||{},Object.assign(t.readConcern,{afterClusterTime:e.operationTime})):e[C]&&(t.readConcern=t.readConcern||{level:d.ReadConcernLevel.snapshot},null!=e[y]&&Object.assign(t.readConcern,{atClusterTime:e[y]})));if(t.autocommit=!1,e.transaction.state===m.TxnState.STARTING_TRANSACTION){e.transaction.transition(m.TxnState.TRANSACTION_IN_PROGRESS),t.startTransaction=!0;const r=e.transaction.options.readConcern||e?.clientOptions?.readConcern;r&&(t.readConcern=r),e.supports.causalConsistency&&e.operationTime&&(t.readConcern=t.readConcern||{},Object.assign(t.readConcern,{afterClusterTime:e.operationTime}))}},t.updateSessionFromResponse=function(e,t){if(t.$clusterTime&&(0,f._advanceClusterTime)(e,t.$clusterTime),t.operationTime&&e&&e.supports.causalConsistency&&e.advanceOperationTime(t.operationTime),t.recoveryToken&&e&&e.inTransaction()&&(e.transaction._recoveryToken=t.recoveryToken),e?.[C]&&null==e[y]){const r=t.atClusterTime;r&&(e[y]=r)}}},2260:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.formatSort=void 0;const n=r(6372);function o(e=1){const t=`${e}`.toLowerCase();if("object"==typeof(r=e)&&null!=r&&"$meta"in r&&"string"==typeof r.$meta)return e;var r;switch(t){case"ascending":case"asc":case"1":return 1;case"descending":case"desc":case"-1":return-1;default:throw new n.MongoInvalidArgumentError(`Invalid sort direction: ${JSON.stringify(e)}`)}}t.formatSort=function(e,t){if(null!=e){if("string"==typeof e)return new Map([[e,o(t)]]);if("object"!=typeof e)throw new n.MongoInvalidArgumentError(`Invalid sort format: ${JSON.stringify(e)} Sort must be a valid object`);if(!Array.isArray(e))return(r=e)instanceof Map&&r.size>0?function(e){const t=Array.from(e).map((([e,t])=>[`${e}`,o(t)]));return new Map(t)}(e):Object.keys(e).length?function(e){const t=Object.entries(e).map((([e,t])=>[`${e}`,o(t)]));return new Map(t)}(e):void 0;var r,s;if(e.length)return function(e){return Array.isArray(e)&&Array.isArray(e[0])}(e)?function(e){const t=e.map((([e,t])=>[`${e}`,o(t)]));return new Map(t)}(e):function(e){if(Array.isArray(e)&&2===e.length)try{return o(e[1]),!0}catch(e){return!1}return!1}(e)?(s=e,new Map([[`${s[0]}`,o([s[1]])]])):function(e){const t=e.map((e=>[`${e}`,1]));return new Map(t)}(e)}}},3533:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Timeout=t.TimeoutError=void 0;const n=r(3557),o=r(6372),s=r(407);class i extends Error{get name(){return"TimeoutError"}constructor(e,t){super(e,t)}static is(e){return null!=e&&"object"==typeof e&&"name"in e&&"TimeoutError"===e.name}}t.TimeoutError=i;class u extends Promise{get[Symbol.toStringTag](){return"MongoDBTimeout"}constructor(e=(()=>null),t,r=!1){let u;if(t<0)throw new o.MongoInvalidArgumentError("Cannot create a Timeout with a negative duration");super(((t,r)=>{u=r,e(s.noop,r)})),this.ended=null,this.timedOut=!1,this.duration=t,this.start=Math.trunc(performance.now()),this.duration>0&&(this.id=(0,n.setTimeout)((()=>{this.ended=Math.trunc(performance.now()),this.timedOut=!0,u(new i(`Expired after ${t}ms`))}),this.duration),"function"==typeof this.id.unref&&r&&this.id.unref())}clear(){(0,n.clearTimeout)(this.id),this.id=void 0}static expires(e,t){return new u(void 0,e,t)}static is(e){return"object"==typeof e&&null!=e&&Symbol.toStringTag in e&&"MongoDBTimeout"===e[Symbol.toStringTag]&&"then"in e&&"function"==typeof e.then}}t.Timeout=u},8297:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isTransactionCommand=t.Transaction=t.TxnState=void 0;const n=r(6372),o=r(9875),s=r(6474),i=r(770);t.TxnState=Object.freeze({NO_TRANSACTION:"NO_TRANSACTION",STARTING_TRANSACTION:"STARTING_TRANSACTION",TRANSACTION_IN_PROGRESS:"TRANSACTION_IN_PROGRESS",TRANSACTION_COMMITTED:"TRANSACTION_COMMITTED",TRANSACTION_COMMITTED_EMPTY:"TRANSACTION_COMMITTED_EMPTY",TRANSACTION_ABORTED:"TRANSACTION_ABORTED"});const u={[t.TxnState.NO_TRANSACTION]:[t.TxnState.NO_TRANSACTION,t.TxnState.STARTING_TRANSACTION],[t.TxnState.STARTING_TRANSACTION]:[t.TxnState.TRANSACTION_IN_PROGRESS,t.TxnState.TRANSACTION_COMMITTED,t.TxnState.TRANSACTION_COMMITTED_EMPTY,t.TxnState.TRANSACTION_ABORTED],[t.TxnState.TRANSACTION_IN_PROGRESS]:[t.TxnState.TRANSACTION_IN_PROGRESS,t.TxnState.TRANSACTION_COMMITTED,t.TxnState.TRANSACTION_ABORTED],[t.TxnState.TRANSACTION_COMMITTED]:[t.TxnState.TRANSACTION_COMMITTED,t.TxnState.TRANSACTION_COMMITTED_EMPTY,t.TxnState.STARTING_TRANSACTION,t.TxnState.NO_TRANSACTION],[t.TxnState.TRANSACTION_ABORTED]:[t.TxnState.STARTING_TRANSACTION,t.TxnState.NO_TRANSACTION],[t.TxnState.TRANSACTION_COMMITTED_EMPTY]:[t.TxnState.TRANSACTION_COMMITTED_EMPTY,t.TxnState.NO_TRANSACTION]},a=new Set([t.TxnState.STARTING_TRANSACTION,t.TxnState.TRANSACTION_IN_PROGRESS]),c=new Set([t.TxnState.TRANSACTION_COMMITTED,t.TxnState.TRANSACTION_COMMITTED_EMPTY,t.TxnState.TRANSACTION_ABORTED]);t.Transaction=class{constructor(e){e=e??{},this.state=t.TxnState.NO_TRANSACTION,this.options={};const r=i.WriteConcern.fromOptions(e);if(r){if(0===r.w)throw new n.MongoTransactionError("Transactions do not support unacknowledged write concern");this.options.writeConcern=r}e.readConcern&&(this.options.readConcern=o.ReadConcern.fromOptions(e)),e.readPreference&&(this.options.readPreference=s.ReadPreference.fromOptions(e)),e.maxCommitTimeMS&&(this.options.maxTimeMS=e.maxCommitTimeMS),this._pinnedServer=void 0,this._recoveryToken=void 0}get server(){return this._pinnedServer}get recoveryToken(){return this._recoveryToken}get isPinned(){return!!this.server}get isStarting(){return this.state===t.TxnState.STARTING_TRANSACTION}get isActive(){return a.has(this.state)}get isCommitted(){return c.has(this.state)}transition(e){const r=u[this.state];if(r&&r.includes(e))return this.state=e,void(this.state!==t.TxnState.NO_TRANSACTION&&this.state!==t.TxnState.STARTING_TRANSACTION&&this.state!==t.TxnState.TRANSACTION_ABORTED||this.unpinServer());throw new n.MongoRuntimeError(`Attempted illegal state transition from [${this.state}] to [${e}]`)}pinServer(e){this.isActive&&(this._pinnedServer=e)}unpinServer(){this._pinnedServer=void 0}},t.isTransactionCommand=function(e){return!(!e.commitTransaction&&!e.abortTransaction)}},407:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DOCUMENT_DB_MSG=t.COSMOS_DB_CHECK=t.DOCUMENT_DB_CHECK=t.request=t.matchesParentDomain=t.parseUnsignedInteger=t.parseInteger=t.compareObjectId=t.commandSupportsReadConcern=t.shuffle=t.supportsRetryableWrites=t.enumToString=t.emitWarningOnce=t.emitWarning=t.MONGODB_WARNING_CODE=t.DEFAULT_PK_FACTORY=t.HostAddress=t.BufferPool=t.List=t.deepCopy=t.isRecord=t.setDifference=t.isHello=t.isSuperset=t.resolveOptions=t.hasAtomicOperators=t.calculateDurationInMs=t.now=t.makeStateMachine=t.errorStrictEqual=t.arrayStrictEqual=t.maxWireVersion=t.uuidV4=t.makeCounter=t.MongoDBCollectionNamespace=t.MongoDBNamespace=t.ns=t.getTopology=t.decorateWithExplain=t.decorateWithReadConcern=t.decorateWithCollation=t.isPromiseLike=t.applyRetryableWrites=t.filterOptions=t.mergeOptions=t.isObject=t.normalizeHintField=t.hostMatchesWildcards=t.isUint8Array=t.ByteUtils=void 0,t.noop=t.fileIsAccessible=t.maybeAddIdToDocuments=t.once=t.randomBytes=t.squashError=t.promiseWithResolvers=t.isHostMatch=t.COSMOS_DB_MSG=void 0;const n=r(6982),o=r(9896),s=r(8611),i=r(7016),u=r(7016),a=r(9023),c=r(5638),l=r(9826),h=r(3543),d=r(6372),p=r(9875),f=r(6474),m=r(281),g=r(770);t.ByteUtils={toLocalBufferType:e=>Buffer.isBuffer(e)?e:Buffer.from(e.buffer,e.byteOffset,e.byteLength),equals:(e,r)=>t.ByteUtils.toLocalBufferType(e).equals(r),compare:(e,r)=>t.ByteUtils.toLocalBufferType(e).compare(r),toBase64:e=>t.ByteUtils.toLocalBufferType(e).toString("base64")},t.isUint8Array=function(e){return null!=e&&"object"==typeof e&&Symbol.toStringTag in e&&"Uint8Array"===e[Symbol.toStringTag]},t.hostMatchesWildcards=function(e,t){for(const r of t)if(e===r||r.startsWith("*.")&&e?.endsWith(r.substring(2,r.length))||r.startsWith("*/")&&e?.endsWith(r.substring(2,r.length)))return!0;return!1},t.normalizeHintField=function(e){let t;if("string"==typeof e)t=e;else if(Array.isArray(e))t={},e.forEach((e=>{t[e]=1}));else if(null!=e&&"object"==typeof e){t={};for(const r in e)t[r]=e[r]}return t};const E=e=>Object.prototype.toString.call(e);function A(e){return"[object Object]"===E(e)}function y(e){if("topology"in e&&e.topology)return e.topology;if("client"in e&&e.client.topology)return e.client.topology;throw new d.MongoNotConnectedError("MongoClient must be connected to perform this operation")}t.isObject=A,t.mergeOptions=function(e,t){return{...e,...t}},t.filterOptions=function(e,t){const r={};for(const n in e)t.includes(n)&&(r[n]=e[n]);return r},t.applyRetryableWrites=function(e,t){return t&&t.s.options?.retryWrites&&(e.retryWrites=!0),e},t.isPromiseLike=function(e){return null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then},t.decorateWithCollation=function(e,t,r){const n=y(t).capabilities;if(r.collation&&"object"==typeof r.collation){if(!n||!n.commandsTakeCollation)throw new d.MongoCompatibilityError("Current topology does not support collation");e.collation=r.collation}},t.decorateWithReadConcern=function(e,t,r){if(r&&r.session&&r.session.inTransaction())return;const n=Object.assign({},e.readConcern||{});t.s.readConcern&&Object.assign(n,t.s.readConcern),Object.keys(n).length>0&&Object.assign(e,{readConcern:n})},t.decorateWithExplain=function(e,t){return e.explain?e:{explain:e,verbosity:t.verbosity}},t.getTopology=y,t.ns=function(e){return C.fromString(e)};class C{constructor(e,t){this.db=e,this.collection=t,this.collection=""===t?void 0:t}toString(){return this.collection?`${this.db}.${this.collection}`:this.db}withCollection(e){return new S(this.db,e)}static fromString(e){if("string"!=typeof e||""===e)throw new d.MongoRuntimeError(`Cannot parse namespace from "${e}"`);const[t,...r]=e.split("."),n=r.join(".");return new C(t,""===n?void 0:n)}}t.MongoDBNamespace=C;class S extends C{constructor(e,t){super(e,t),this.collection=t}static fromString(e){return super.fromString(e)}}function w(){const e=process.hrtime();return Math.floor(1e3*e[0]+e[1]/1e6)}function b(e,t){e=Array.isArray(e)?new Set(e):e,t=Array.isArray(t)?new Set(t):t;for(const r of t)if(!e.has(r))return!1;return!0}t.MongoDBCollectionNamespace=S,t.makeCounter=function*(e=0){let t=e;for(;;){const e=t;t+=1,yield e}},t.uuidV4=function(){const e=n.randomBytes(16);return e[6]=15&e[6]|64,e[8]=63&e[8]|128,e},t.maxWireVersion=function(e){if(e){if(e.loadBalanced||e.serverApi?.version)return l.MAX_SUPPORTED_WIRE_VERSION;if(e.hello)return e.hello.maxWireVersion;if("lastHello"in e&&"function"==typeof e.lastHello){const t=e.lastHello();if(t)return t.maxWireVersion}if(e.description&&"maxWireVersion"in e.description&&null!=e.description.maxWireVersion)return e.description.maxWireVersion}return 0},t.arrayStrictEqual=function(e,t){return!(!Array.isArray(e)||!Array.isArray(t))&&e.length===t.length&&e.every(((e,r)=>e===t[r]))},t.errorStrictEqual=function(e,t){return e===t||(e&&t?!(null==e&&null!=t||null!=e&&null==t)&&e.constructor.name===t.constructor.name&&e.message===t.message:e===t)},t.makeStateMachine=function(e){return function(t,r){const n=e[t.s.state];if(n&&n.indexOf(r)<0)throw new d.MongoRuntimeError(`illegal state transition from [${t.s.state}] => [${r}], allowed: [${n}]`);t.emit("stateChanged",t.s.state,r),t.s.state=r}},t.now=w,t.calculateDurationInMs=function(e){if("number"!=typeof e)return-1;const t=w()-e;return t<0?0:t},t.hasAtomicOperators=function e(t){if(Array.isArray(t)){for(const r of t)if(e(r))return!0;return!1}const r=Object.keys(t);return r.length>0&&"$"===r[0][0]},t.resolveOptions=function(e,t){const r=Object.assign({},t,(0,c.resolveBSONOptions)(t,e)),n=t?.session;if(!n?.inTransaction()){const n=p.ReadConcern.fromOptions(t)??e?.readConcern;n&&(r.readConcern=n);const o=g.WriteConcern.fromOptions(t)??e?.writeConcern;o&&(r.writeConcern=o)}const o=f.ReadPreference.fromOptions(t)??e?.readPreference;return o&&(r.readPreference=o),r},t.isSuperset=b,t.isHello=function(e){return!(!e[h.LEGACY_HELLO_COMMAND]&&!e.hello)},t.setDifference=function(e,t){const r=new Set(e);for(const e of t)r.delete(e);return r};function v(e,t=void 0){if(!A(e))return!1;const r=e.constructor;if(r&&r.prototype){if(!A(r.prototype))return!1;if(n=r.prototype,o="isPrototypeOf",!Object.prototype.hasOwnProperty.call(n,o))return!1}var n,o;return!t||b(Object.keys(e),t)}t.isRecord=v,t.deepCopy=function e(t){if(null==t)return t;if(Array.isArray(t))return t.map((t=>e(t)));if(v(t)){const r={};for(const n in t)r[n]=e(t[n]);return r}const r=t.constructor;if(r)switch(r.name.toLowerCase()){case"date":return new r(Number(t));case"map":return new Map(t);case"set":return new Set(t);case"buffer":return Buffer.from(t)}return t};class O{get length(){return this.count}get[Symbol.toStringTag](){return"List"}constructor(){this.count=0,this.head={next:null,prev:null,value:null},this.head.next=this.head,this.head.prev=this.head}toArray(){return Array.from(this)}toString(){return`head <=> ${this.toArray().join(" <=> ")} <=> head`}*[Symbol.iterator](){for(const e of this.nodes())yield e.value}*nodes(){let e=this.head.next;for(;e!==this.head;){const{next:t}=e;yield e,e=t}}push(e){this.count+=1;const t={next:this.head,prev:this.head.prev,value:e};this.head.prev.next=t,this.head.prev=t}pushMany(e){for(const t of e)this.push(t)}unshift(e){this.count+=1;const t={next:this.head.next,prev:this.head,value:e};this.head.next.prev=t,this.head.next=t}remove(e){if(e===this.head||0===this.length)return null;this.count-=1;const t=e.prev,r=e.next;return t.next=r,r.prev=t,e.value}shift(){return this.remove(this.head.next)}pop(){return this.remove(this.head.prev)}prune(e){for(const t of this.nodes())e(t.value)&&this.remove(t)}clear(){this.count=0,this.head.next=this.head,this.head.prev=this.head}first(){return this.head.next.value}last(){return this.head.prev.value}}t.List=O,t.BufferPool=class{constructor(){this.buffers=new O,this.totalByteLength=0}get length(){return this.totalByteLength}append(e){this.buffers.push(e),this.totalByteLength+=e.length}getInt32(){if(this.totalByteLength<4)return null;const e=this.buffers.first();if(null!=e&&e.byteLength>=4)return e.readInt32LE(0);const t=this.read(4),r=t.readInt32LE(0);return this.totalByteLength+=4,this.buffers.unshift(t),r}read(e){if("number"!=typeof e||e<0)throw new d.MongoInvalidArgumentError('Argument "size" must be a non-negative number');if(e>this.totalByteLength)return Buffer.alloc(0);const t=Buffer.allocUnsafe(e);for(let r=0;r<e;){const n=this.buffers.shift();if(null==n)break;const o=e-r,s=Math.min(o,n.byteLength),i=n.subarray(0,s);t.set(i,r),r+=s,this.totalByteLength-=s,s<n.byteLength&&this.buffers.unshift(n.subarray(s))}return t}};class _{constructor(e){this.host=void 0,this.port=void 0,this.socketPath=void 0,this.isIPv6=!1;const t=e.split(" ").join("%20");if(t.endsWith(".sock"))return void(this.socketPath=decodeURIComponent(t));const r=`iLoveJS://${t}`;let n;try{n=new u.URL(r)}catch(e){const r=new d.MongoRuntimeError(`Unable to parse ${t} with URL`);throw r.cause=e,r}const o=n.hostname,s=n.port;let i=decodeURIComponent(o).toLowerCase();if(i.startsWith("[")&&i.endsWith("]")&&(this.isIPv6=!0,i=i.substring(1,o.length-1)),this.host=i.toLowerCase(),this.port="number"==typeof s?s:"string"==typeof s&&""!==s?Number.parseInt(s,10):27017,0===this.port)throw new d.MongoParseError("Invalid port (zero) with hostname");Object.freeze(this)}[Symbol.for("nodejs.util.inspect.custom")](){return this.inspect()}inspect(){return`new HostAddress('${this.toString()}')`}toString(){return"string"==typeof this.host?this.isIPv6?`[${this.host}]:${this.port}`:`${this.host}:${this.port}`:`${this.socketPath}`}static fromString(e){return new _(e)}static fromHostPort(e,t){return e.includes(":")&&(e=`[${e}]`),_.fromString(`${e}:${t}`)}static fromSrvRecord({name:e,port:t}){return _.fromHostPort(e,t)}toHostPort(){return this.socketPath?{host:this.socketPath,port:0}:{host:this.host??"",port:this.port??0}}}function B(e){return process.emitWarning(e,{code:t.MONGODB_WARNING_CODE})}t.HostAddress=_,t.DEFAULT_PK_FACTORY={createPk:()=>new c.ObjectId},t.MONGODB_WARNING_CODE="MONGODB DRIVER",t.emitWarning=B;const D=new Set;function T(e){if("number"==typeof e)return Math.trunc(e);const t=Number.parseInt(String(e),10);return Number.isNaN(t)?null:t}function I(){let e,t;return{promise:new Promise((function(r,n){e=r,t=n})),resolve:e,reject:t}}t.emitWarningOnce=function(e){if(!D.has(e))return D.add(e),B(e)},t.enumToString=function(e){return Object.values(e).join(", ")},t.supportsRetryableWrites=function(e){return!!e&&(!!e.loadBalanced||null!=e.description.logicalSessionTimeoutMinutes&&e.description.type!==m.ServerType.Standalone)},t.shuffle=function(e,t=0){const r=Array.from(e);if(t>r.length)throw new d.MongoRuntimeError("Limit must be less than the number of items");let n=r.length;const o=t%r.length==0?1:r.length-t;for(;n>o;){const e=Math.floor(Math.random()*n);n-=1;const t=r[n];r[n]=r[e],r[e]=t}return t%r.length==0?r:r.slice(o)},t.commandSupportsReadConcern=function(e){return!!(e.aggregate||e.count||e.distinct||e.find||e.geoNear)},t.compareObjectId=function(e,r){return null==e&&null==r?0:null==e?-1:null==r?1:t.ByteUtils.compare(e.id,r.id)},t.parseInteger=T,t.parseUnsignedInteger=function(e){const t=T(e);return null!=t&&t>=0?t:null},t.matchesParentDomain=function(e,t){const r=e.endsWith(".")?e.slice(0,e.length-1):e,n=t.endsWith(".")?t.slice(0,t.length-1):t,o=/^.*?\./,s=`.${r.replace(o,"")}`,i=`.${n.replace(o,"")}`;return s.endsWith(i)},t.request=async function(e,t={}){return await new Promise(((r,n)=>{const o={method:"GET",timeout:1e4,json:!0,...i.parse(e),...t},u=s.request(o,(e=>{e.setEncoding("utf8");let o="";e.on("data",(e=>{o+=e})),e.once("end",(()=>{if(!1!==t.json)try{const e=JSON.parse(o);r(e)}catch{n(new d.MongoRuntimeError(`Invalid JSON response: "${o}"`))}else r(o)}))}));u.once("timeout",(()=>u.destroy(new d.MongoNetworkTimeoutError(`Network request to ${e} timed out after ${t.timeout} ms`)))),u.once("error",(e=>n(e))),u.end()}))},t.DOCUMENT_DB_CHECK=/(\.docdb\.amazonaws\.com$)|(\.docdb-elastic\.amazonaws\.com$)/,t.COSMOS_DB_CHECK=/\.cosmos\.azure\.com$/,t.DOCUMENT_DB_MSG="You appear to be connected to a DocumentDB cluster. For more information regarding feature compatibility and support please visit https://www.mongodb.com/supportability/documentdb",t.COSMOS_DB_MSG="You appear to be connected to a CosmosDB cluster. For more information regarding feature compatibility and support please visit https://www.mongodb.com/supportability/cosmosdb",t.isHostMatch=function(e,t){return!(!t||!e.test(t.toLowerCase()))},t.promiseWithResolvers=I,t.squashError=function(e){},t.randomBytes=(0,a.promisify)(n.randomBytes),t.once=async function(e,t){const{promise:r,resolve:n,reject:o}=I(),s=e=>n(e),i=e=>o(e);e.once(t,s).once("error",i);try{const t=await r;return e.off("error",i),t}catch(r){throw e.off(t,s),r}},t.maybeAddIdToDocuments=function(e,t,r){if(!0===("boolean"==typeof r.forceServerObjectId?r.forceServerObjectId:e.s.db.options?.forceServerObjectId))return t;const n=t=>(null==t._id&&(t._id=e.s.pkFactory.createPk()),t);return Array.isArray(t)?t.map(n):n(t)},t.fileIsAccessible=async function(e,t){try{return await o.promises.access(e,t),!0}catch{return!1}},t.noop=function(){}},770:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WriteConcern=t.WRITE_CONCERN_KEYS=void 0,t.WRITE_CONCERN_KEYS=["w","wtimeout","j","journal","fsync"];class r{constructor(e,t,r,n){null!=e&&(Number.isNaN(Number(e))?this.w=e:this.w=Number(e)),null!=t&&(this.wtimeoutMS=this.wtimeout=t),null!=r&&(this.journal=this.j=r),null!=n&&(this.journal=this.j=!!n)}static apply(e,t){const r={};return null!=t.w&&(r.w=t.w),null!=t.wtimeoutMS&&(r.wtimeout=t.wtimeoutMS),null!=t.journal&&(r.j=t.j),e.writeConcern=r,e}static fromOptions(e,t){if(null==e)return;let n;t=t??{},n="string"==typeof e||"number"==typeof e?{w:e}:e instanceof r?e:e.writeConcern;const o=t instanceof r?t:t.writeConcern,{w:s,wtimeout:i,j:u,fsync:a,journal:c,wtimeoutMS:l}={...o,...n};return null!=s||null!=i||null!=l||null!=u||null!=c||null!=a?new r(s,i??l,u??c,a):void 0}}t.WriteConcern=r},9160:(e,t,r)=>{"use strict";r.r(t),r.d(t,{decode:()=>E,default:()=>S,encode:()=>A,toASCII:()=>C,toUnicode:()=>y,ucs2decode:()=>p,ucs2encode:()=>f});const n=2147483647,o=36,s=/^xn--/,i=/[^\0-\x7F]/,u=/[\x2E\u3002\uFF0E\uFF61]/g,a={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},c=Math.floor,l=String.fromCharCode;function h(e){throw new RangeError(a[e])}function d(e,t){const r=e.split("@");let n="";r.length>1&&(n=r[0]+"@",e=r[1]);const o=function(e,t){const r=[];let n=e.length;for(;n--;)r[n]=t(e[n]);return r}((e=e.replace(u,".")).split("."),t).join(".");return n+o}function p(e){const t=[];let r=0;const n=e.length;for(;r<n;){const o=e.charCodeAt(r++);if(o>=55296&&o<=56319&&r<n){const n=e.charCodeAt(r++);56320==(64512&n)?t.push(((1023&o)<<10)+(1023&n)+65536):(t.push(o),r--)}else t.push(o)}return t}const f=e=>String.fromCodePoint(...e),m=function(e,t){return e+22+75*(e<26)-((0!=t)<<5)},g=function(e,t,r){let n=0;for(e=r?c(e/700):e>>1,e+=c(e/t);e>455;n+=o)e=c(e/35);return c(n+36*e/(e+38))},E=function(e){const t=[],r=e.length;let s=0,i=128,u=72,a=e.lastIndexOf("-");a<0&&(a=0);for(let r=0;r<a;++r)e.charCodeAt(r)>=128&&h("not-basic"),t.push(e.charCodeAt(r));for(let d=a>0?a+1:0;d<r;){const a=s;for(let t=1,i=o;;i+=o){d>=r&&h("invalid-input");const a=(l=e.charCodeAt(d++))>=48&&l<58?l-48+26:l>=65&&l<91?l-65:l>=97&&l<123?l-97:o;a>=o&&h("invalid-input"),a>c((n-s)/t)&&h("overflow"),s+=a*t;const p=i<=u?1:i>=u+26?26:i-u;if(a<p)break;const f=o-p;t>c(n/f)&&h("overflow"),t*=f}const p=t.length+1;u=g(s-a,p,0==a),c(s/p)>n-i&&h("overflow"),i+=c(s/p),s%=p,t.splice(s++,0,i)}var l;return String.fromCodePoint(...t)},A=function(e){const t=[],r=(e=p(e)).length;let s=128,i=0,u=72;for(const r of e)r<128&&t.push(l(r));const a=t.length;let d=a;for(a&&t.push("-");d<r;){let r=n;for(const t of e)t>=s&&t<r&&(r=t);const p=d+1;r-s>c((n-i)/p)&&h("overflow"),i+=(r-s)*p,s=r;for(const r of e)if(r<s&&++i>n&&h("overflow"),r===s){let e=i;for(let r=o;;r+=o){const n=r<=u?1:r>=u+26?26:r-u;if(e<n)break;const s=e-n,i=o-n;t.push(l(m(n+s%i,0))),e=c(s/i)}t.push(l(m(e,0))),u=g(i,p,d===a),i=0,++d}++i,++s}return t.join("")},y=function(e){return d(e,(function(e){return s.test(e)?E(e.slice(4).toLowerCase()):e}))},C=function(e){return d(e,(function(e){return i.test(e)?"xn--"+A(e):e}))},S={version:"2.3.1",ucs2:{decode:p,encode:f},decode:E,encode:A,toASCII:C,toUnicode:y}},7498:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(2648);class o{constructor(e){if(this.length=0,this._encoding="utf8",this._writeOffset=0,this._readOffset=0,o.isSmartBufferOptions(e))if(e.encoding&&(n.checkEncoding(e.encoding),this._encoding=e.encoding),e.size){if(!(n.isFiniteInteger(e.size)&&e.size>0))throw new Error(n.ERRORS.INVALID_SMARTBUFFER_SIZE);this._buff=Buffer.allocUnsafe(e.size)}else if(e.buff){if(!Buffer.isBuffer(e.buff))throw new Error(n.ERRORS.INVALID_SMARTBUFFER_BUFFER);this._buff=e.buff,this.length=e.buff.length}else this._buff=Buffer.allocUnsafe(4096);else{if(void 0!==e)throw new Error(n.ERRORS.INVALID_SMARTBUFFER_OBJECT);this._buff=Buffer.allocUnsafe(4096)}}static fromSize(e,t){return new this({size:e,encoding:t})}static fromBuffer(e,t){return new this({buff:e,encoding:t})}static fromOptions(e){return new this(e)}static isSmartBufferOptions(e){const t=e;return t&&(void 0!==t.encoding||void 0!==t.size||void 0!==t.buff)}readInt8(e){return this._readNumberValue(Buffer.prototype.readInt8,1,e)}readInt16BE(e){return this._readNumberValue(Buffer.prototype.readInt16BE,2,e)}readInt16LE(e){return this._readNumberValue(Buffer.prototype.readInt16LE,2,e)}readInt32BE(e){return this._readNumberValue(Buffer.prototype.readInt32BE,4,e)}readInt32LE(e){return this._readNumberValue(Buffer.prototype.readInt32LE,4,e)}readBigInt64BE(e){return n.bigIntAndBufferInt64Check("readBigInt64BE"),this._readNumberValue(Buffer.prototype.readBigInt64BE,8,e)}readBigInt64LE(e){return n.bigIntAndBufferInt64Check("readBigInt64LE"),this._readNumberValue(Buffer.prototype.readBigInt64LE,8,e)}writeInt8(e,t){return this._writeNumberValue(Buffer.prototype.writeInt8,1,e,t),this}insertInt8(e,t){return this._insertNumberValue(Buffer.prototype.writeInt8,1,e,t)}writeInt16BE(e,t){return this._writeNumberValue(Buffer.prototype.writeInt16BE,2,e,t)}insertInt16BE(e,t){return this._insertNumberValue(Buffer.prototype.writeInt16BE,2,e,t)}writeInt16LE(e,t){return this._writeNumberValue(Buffer.prototype.writeInt16LE,2,e,t)}insertInt16LE(e,t){return this._insertNumberValue(Buffer.prototype.writeInt16LE,2,e,t)}writeInt32BE(e,t){return this._writeNumberValue(Buffer.prototype.writeInt32BE,4,e,t)}insertInt32BE(e,t){return this._insertNumberValue(Buffer.prototype.writeInt32BE,4,e,t)}writeInt32LE(e,t){return this._writeNumberValue(Buffer.prototype.writeInt32LE,4,e,t)}insertInt32LE(e,t){return this._insertNumberValue(Buffer.prototype.writeInt32LE,4,e,t)}writeBigInt64BE(e,t){return n.bigIntAndBufferInt64Check("writeBigInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigInt64BE,8,e,t)}insertBigInt64BE(e,t){return n.bigIntAndBufferInt64Check("writeBigInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigInt64BE,8,e,t)}writeBigInt64LE(e,t){return n.bigIntAndBufferInt64Check("writeBigInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigInt64LE,8,e,t)}insertBigInt64LE(e,t){return n.bigIntAndBufferInt64Check("writeBigInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigInt64LE,8,e,t)}readUInt8(e){return this._readNumberValue(Buffer.prototype.readUInt8,1,e)}readUInt16BE(e){return this._readNumberValue(Buffer.prototype.readUInt16BE,2,e)}readUInt16LE(e){return this._readNumberValue(Buffer.prototype.readUInt16LE,2,e)}readUInt32BE(e){return this._readNumberValue(Buffer.prototype.readUInt32BE,4,e)}readUInt32LE(e){return this._readNumberValue(Buffer.prototype.readUInt32LE,4,e)}readBigUInt64BE(e){return n.bigIntAndBufferInt64Check("readBigUInt64BE"),this._readNumberValue(Buffer.prototype.readBigUInt64BE,8,e)}readBigUInt64LE(e){return n.bigIntAndBufferInt64Check("readBigUInt64LE"),this._readNumberValue(Buffer.prototype.readBigUInt64LE,8,e)}writeUInt8(e,t){return this._writeNumberValue(Buffer.prototype.writeUInt8,1,e,t)}insertUInt8(e,t){return this._insertNumberValue(Buffer.prototype.writeUInt8,1,e,t)}writeUInt16BE(e,t){return this._writeNumberValue(Buffer.prototype.writeUInt16BE,2,e,t)}insertUInt16BE(e,t){return this._insertNumberValue(Buffer.prototype.writeUInt16BE,2,e,t)}writeUInt16LE(e,t){return this._writeNumberValue(Buffer.prototype.writeUInt16LE,2,e,t)}insertUInt16LE(e,t){return this._insertNumberValue(Buffer.prototype.writeUInt16LE,2,e,t)}writeUInt32BE(e,t){return this._writeNumberValue(Buffer.prototype.writeUInt32BE,4,e,t)}insertUInt32BE(e,t){return this._insertNumberValue(Buffer.prototype.writeUInt32BE,4,e,t)}writeUInt32LE(e,t){return this._writeNumberValue(Buffer.prototype.writeUInt32LE,4,e,t)}insertUInt32LE(e,t){return this._insertNumberValue(Buffer.prototype.writeUInt32LE,4,e,t)}writeBigUInt64BE(e,t){return n.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64BE,8,e,t)}insertBigUInt64BE(e,t){return n.bigIntAndBufferInt64Check("writeBigUInt64BE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64BE,8,e,t)}writeBigUInt64LE(e,t){return n.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._writeNumberValue(Buffer.prototype.writeBigUInt64LE,8,e,t)}insertBigUInt64LE(e,t){return n.bigIntAndBufferInt64Check("writeBigUInt64LE"),this._insertNumberValue(Buffer.prototype.writeBigUInt64LE,8,e,t)}readFloatBE(e){return this._readNumberValue(Buffer.prototype.readFloatBE,4,e)}readFloatLE(e){return this._readNumberValue(Buffer.prototype.readFloatLE,4,e)}writeFloatBE(e,t){return this._writeNumberValue(Buffer.prototype.writeFloatBE,4,e,t)}insertFloatBE(e,t){return this._insertNumberValue(Buffer.prototype.writeFloatBE,4,e,t)}writeFloatLE(e,t){return this._writeNumberValue(Buffer.prototype.writeFloatLE,4,e,t)}insertFloatLE(e,t){return this._insertNumberValue(Buffer.prototype.writeFloatLE,4,e,t)}readDoubleBE(e){return this._readNumberValue(Buffer.prototype.readDoubleBE,8,e)}readDoubleLE(e){return this._readNumberValue(Buffer.prototype.readDoubleLE,8,e)}writeDoubleBE(e,t){return this._writeNumberValue(Buffer.prototype.writeDoubleBE,8,e,t)}insertDoubleBE(e,t){return this._insertNumberValue(Buffer.prototype.writeDoubleBE,8,e,t)}writeDoubleLE(e,t){return this._writeNumberValue(Buffer.prototype.writeDoubleLE,8,e,t)}insertDoubleLE(e,t){return this._insertNumberValue(Buffer.prototype.writeDoubleLE,8,e,t)}readString(e,t){let r;"number"==typeof e?(n.checkLengthValue(e),r=Math.min(e,this.length-this._readOffset)):(t=e,r=this.length-this._readOffset),void 0!==t&&n.checkEncoding(t);const o=this._buff.slice(this._readOffset,this._readOffset+r).toString(t||this._encoding);return this._readOffset+=r,o}insertString(e,t,r){return n.checkOffsetValue(t),this._handleString(e,!0,t,r)}writeString(e,t,r){return this._handleString(e,!1,t,r)}readStringNT(e){void 0!==e&&n.checkEncoding(e);let t=this.length;for(let e=this._readOffset;e<this.length;e++)if(0===this._buff[e]){t=e;break}const r=this._buff.slice(this._readOffset,t);return this._readOffset=t+1,r.toString(e||this._encoding)}insertStringNT(e,t,r){return n.checkOffsetValue(t),this.insertString(e,t,r),this.insertUInt8(0,t+e.length),this}writeStringNT(e,t,r){return this.writeString(e,t,r),this.writeUInt8(0,"number"==typeof t?t+e.length:this.writeOffset),this}readBuffer(e){void 0!==e&&n.checkLengthValue(e);const t="number"==typeof e?e:this.length,r=Math.min(this.length,this._readOffset+t),o=this._buff.slice(this._readOffset,r);return this._readOffset=r,o}insertBuffer(e,t){return n.checkOffsetValue(t),this._handleBuffer(e,!0,t)}writeBuffer(e,t){return this._handleBuffer(e,!1,t)}readBufferNT(){let e=this.length;for(let t=this._readOffset;t<this.length;t++)if(0===this._buff[t]){e=t;break}const t=this._buff.slice(this._readOffset,e);return this._readOffset=e+1,t}insertBufferNT(e,t){return n.checkOffsetValue(t),this.insertBuffer(e,t),this.insertUInt8(0,t+e.length),this}writeBufferNT(e,t){return void 0!==t&&n.checkOffsetValue(t),this.writeBuffer(e,t),this.writeUInt8(0,"number"==typeof t?t+e.length:this._writeOffset),this}clear(){return this._writeOffset=0,this._readOffset=0,this.length=0,this}remaining(){return this.length-this._readOffset}get readOffset(){return this._readOffset}set readOffset(e){n.checkOffsetValue(e),n.checkTargetOffset(e,this),this._readOffset=e}get writeOffset(){return this._writeOffset}set writeOffset(e){n.checkOffsetValue(e),n.checkTargetOffset(e,this),this._writeOffset=e}get encoding(){return this._encoding}set encoding(e){n.checkEncoding(e),this._encoding=e}get internalBuffer(){return this._buff}toBuffer(){return this._buff.slice(0,this.length)}toString(e){const t="string"==typeof e?e:this._encoding;return n.checkEncoding(t),this._buff.toString(t,0,this.length)}destroy(){return this.clear(),this}_handleString(e,t,r,o){let s=this._writeOffset,i=this._encoding;"number"==typeof r?s=r:"string"==typeof r&&(n.checkEncoding(r),i=r),"string"==typeof o&&(n.checkEncoding(o),i=o);const u=Buffer.byteLength(e,i);return t?this.ensureInsertable(u,s):this._ensureWriteable(u,s),this._buff.write(e,s,u,i),t?this._writeOffset+=u:"number"==typeof r?this._writeOffset=Math.max(this._writeOffset,s+u):this._writeOffset+=u,this}_handleBuffer(e,t,r){const n="number"==typeof r?r:this._writeOffset;return t?this.ensureInsertable(e.length,n):this._ensureWriteable(e.length,n),e.copy(this._buff,n),t?this._writeOffset+=e.length:"number"==typeof r?this._writeOffset=Math.max(this._writeOffset,n+e.length):this._writeOffset+=e.length,this}ensureReadable(e,t){let r=this._readOffset;if(void 0!==t&&(n.checkOffsetValue(t),r=t),r<0||r+e>this.length)throw new Error(n.ERRORS.INVALID_READ_BEYOND_BOUNDS)}ensureInsertable(e,t){n.checkOffsetValue(t),this._ensureCapacity(this.length+e),t<this.length&&this._buff.copy(this._buff,t+e,t,this._buff.length),t+e>this.length?this.length=t+e:this.length+=e}_ensureWriteable(e,t){const r="number"==typeof t?t:this._writeOffset;this._ensureCapacity(r+e),r+e>this.length&&(this.length=r+e)}_ensureCapacity(e){const t=this._buff.length;if(e>t){let r=this._buff,n=3*t/2+1;n<e&&(n=e),this._buff=Buffer.allocUnsafe(n),r.copy(this._buff,0,0,t)}}_readNumberValue(e,t,r){this.ensureReadable(t,r);const n=e.call(this._buff,"number"==typeof r?r:this._readOffset);return void 0===r&&(this._readOffset+=t),n}_insertNumberValue(e,t,r,o){return n.checkOffsetValue(o),this.ensureInsertable(t,o),e.call(this._buff,r,o),this._writeOffset+=t,this}_writeNumberValue(e,t,r,o){if("number"==typeof o){if(o<0)throw new Error(n.ERRORS.INVALID_WRITE_BEYOND_BOUNDS);n.checkOffsetValue(o)}const s="number"==typeof o?o:this._writeOffset;return this._ensureWriteable(t,s),e.call(this._buff,r,s),"number"==typeof o?this._writeOffset=Math.max(this._writeOffset,s+t):this._writeOffset+=t,this}}t.SmartBuffer=o},2648:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(2562),o={INVALID_ENCODING:"Invalid encoding provided. Please specify a valid encoding the internal Node.js Buffer supports.",INVALID_SMARTBUFFER_SIZE:"Invalid size provided. Size must be a valid integer greater than zero.",INVALID_SMARTBUFFER_BUFFER:"Invalid Buffer provided in SmartBufferOptions.",INVALID_SMARTBUFFER_OBJECT:"Invalid SmartBufferOptions object supplied to SmartBuffer constructor or factory methods.",INVALID_OFFSET:"An invalid offset value was provided.",INVALID_OFFSET_NON_NUMBER:"An invalid offset value was provided. A numeric value is required.",INVALID_LENGTH:"An invalid length value was provided.",INVALID_LENGTH_NON_NUMBER:"An invalid length value was provived. A numeric value is required.",INVALID_TARGET_OFFSET:"Target offset is beyond the bounds of the internal SmartBuffer data.",INVALID_TARGET_LENGTH:"Specified length value moves cursor beyong the bounds of the internal SmartBuffer data.",INVALID_READ_BEYOND_BOUNDS:"Attempted to read beyond the bounds of the managed data.",INVALID_WRITE_BEYOND_BOUNDS:"Attempted to write beyond the bounds of the managed data."};function s(e){return"number"==typeof e&&isFinite(e)&&function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e}(e)}function i(e,t){if("number"!=typeof e)throw new Error(t?o.INVALID_OFFSET_NON_NUMBER:o.INVALID_LENGTH_NON_NUMBER);if(!s(e)||e<0)throw new Error(t?o.INVALID_OFFSET:o.INVALID_LENGTH)}t.ERRORS=o,t.checkEncoding=function(e){if(!n.Buffer.isEncoding(e))throw new Error(o.INVALID_ENCODING)},t.isFiniteInteger=s,t.checkLengthValue=function(e){i(e,!1)},t.checkOffsetValue=function(e){i(e,!0)},t.checkTargetOffset=function(e,t){if(e<0||e>t.length)throw new Error(o.INVALID_TARGET_OFFSET)},t.bigIntAndBufferInt64Check=function(e){if("undefined"==typeof BigInt)throw new Error("Platform does not support JS BigInt type.");if(void 0===n.Buffer.prototype[e])throw new Error(`Platform does not support Buffer.prototype.${e}.`)}},1014:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,s){function i(e){try{a(n.next(e))}catch(e){s(e)}}function u(e){try{a(n.throw(e))}catch(e){s(e)}}function a(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,u)}a((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.SocksClientError=t.SocksClient=void 0;const o=r(4434),s=r(9278),i=r(7498),u=r(8239),a=r(4127),c=r(3849),l=r(3136);Object.defineProperty(t,"SocksClientError",{enumerable:!0,get:function(){return l.SocksClientError}});const h=r(5557);class d extends o.EventEmitter{constructor(e){super(),this.options=Object.assign({},e),(0,a.validateSocksClientOptions)(e),this.setState(u.SocksClientState.Created)}static createConnection(e,t){return new Promise(((r,n)=>{try{(0,a.validateSocksClientOptions)(e,["connect"])}catch(e){return"function"==typeof t?(t(e),r(e)):n(e)}const o=new d(e);o.connect(e.existing_socket),o.once("established",(e=>{o.removeAllListeners(),"function"==typeof t?(t(null,e),r(e)):r(e)})),o.once("error",(e=>{o.removeAllListeners(),"function"==typeof t?(t(e),r(e)):n(e)}))}))}static createConnectionChain(e,t){return new Promise(((r,o)=>n(this,void 0,void 0,(function*(){try{(0,a.validateSocksClientChainOptions)(e)}catch(e){return"function"==typeof t?(t(e),r(e)):o(e)}e.randomizeChain&&(0,l.shuffleArray)(e.proxies);try{let n;for(let t=0;t<e.proxies.length;t++){const r=e.proxies[t],o=t===e.proxies.length-1?e.destination:{host:e.proxies[t+1].host||e.proxies[t+1].ipaddress,port:e.proxies[t+1].port},s=yield d.createConnection({command:"connect",proxy:r,destination:o,existing_socket:n});n=n||s.socket}"function"==typeof t?(t(null,{socket:n}),r({socket:n})):r({socket:n})}catch(e){"function"==typeof t?(t(e),r(e)):o(e)}}))))}static createUDPFrame(e){const t=new i.SmartBuffer;return t.writeUInt16BE(0),t.writeUInt8(e.frameNumber||0),s.isIPv4(e.remoteHost.host)?(t.writeUInt8(u.Socks5HostType.IPv4),t.writeUInt32BE((0,a.ipv4ToInt32)(e.remoteHost.host))):s.isIPv6(e.remoteHost.host)?(t.writeUInt8(u.Socks5HostType.IPv6),t.writeBuffer((0,a.ipToBuffer)(e.remoteHost.host))):(t.writeUInt8(u.Socks5HostType.Hostname),t.writeUInt8(Buffer.byteLength(e.remoteHost.host)),t.writeString(e.remoteHost.host)),t.writeUInt16BE(e.remoteHost.port),t.writeBuffer(e.data),t.toBuffer()}static parseUDPFrame(e){const t=i.SmartBuffer.fromBuffer(e);t.readOffset=2;const r=t.readUInt8(),n=t.readUInt8();let o;return o=n===u.Socks5HostType.IPv4?(0,a.int32ToIpv4)(t.readUInt32BE()):n===u.Socks5HostType.IPv6?h.Address6.fromByteArray(Array.from(t.readBuffer(16))).canonicalForm():t.readString(t.readUInt8()),{frameNumber:r,remoteHost:{host:o,port:t.readUInt16BE()},data:t.readBuffer()}}setState(e){this.state!==u.SocksClientState.Error&&(this.state=e)}connect(e){this.onDataReceived=e=>this.onDataReceivedHandler(e),this.onClose=()=>this.onCloseHandler(),this.onError=e=>this.onErrorHandler(e),this.onConnect=()=>this.onConnectHandler();const t=setTimeout((()=>this.onEstablishedTimeout()),this.options.timeout||u.DEFAULT_TIMEOUT);t.unref&&"function"==typeof t.unref&&t.unref(),this.socket=e||new s.Socket,this.socket.once("close",this.onClose),this.socket.once("error",this.onError),this.socket.once("connect",this.onConnect),this.socket.on("data",this.onDataReceived),this.setState(u.SocksClientState.Connecting),this.receiveBuffer=new c.ReceiveBuffer,e?this.socket.emit("connect"):(this.socket.connect(this.getSocketOptions()),void 0!==this.options.set_tcp_nodelay&&null!==this.options.set_tcp_nodelay&&this.socket.setNoDelay(!!this.options.set_tcp_nodelay)),this.prependOnceListener("established",(e=>{setImmediate((()=>{if(this.receiveBuffer.length>0){const t=this.receiveBuffer.get(this.receiveBuffer.length);e.socket.emit("data",t)}e.socket.resume()}))}))}getSocketOptions(){return Object.assign(Object.assign({},this.options.socket_options),{host:this.options.proxy.host||this.options.proxy.ipaddress,port:this.options.proxy.port})}onEstablishedTimeout(){this.state!==u.SocksClientState.Established&&this.state!==u.SocksClientState.BoundWaitingForConnection&&this.closeSocket(u.ERRORS.ProxyConnectionTimedOut)}onConnectHandler(){this.setState(u.SocksClientState.Connected),4===this.options.proxy.type?this.sendSocks4InitialHandshake():this.sendSocks5InitialHandshake(),this.setState(u.SocksClientState.SentInitialHandshake)}onDataReceivedHandler(e){this.receiveBuffer.append(e),this.processData()}processData(){for(;this.state!==u.SocksClientState.Established&&this.state!==u.SocksClientState.Error&&this.receiveBuffer.length>=this.nextRequiredPacketBufferSize;)if(this.state===u.SocksClientState.SentInitialHandshake)4===this.options.proxy.type?this.handleSocks4FinalHandshakeResponse():this.handleInitialSocks5HandshakeResponse();else if(this.state===u.SocksClientState.SentAuthentication)this.handleInitialSocks5AuthenticationHandshakeResponse();else if(this.state===u.SocksClientState.SentFinalHandshake)this.handleSocks5FinalHandshakeResponse();else{if(this.state!==u.SocksClientState.BoundWaitingForConnection){this.closeSocket(u.ERRORS.InternalError);break}4===this.options.proxy.type?this.handleSocks4IncomingConnectionResponse():this.handleSocks5IncomingConnectionResponse()}}onCloseHandler(){this.closeSocket(u.ERRORS.SocketClosed)}onErrorHandler(e){this.closeSocket(e.message)}removeInternalSocketHandlers(){this.socket.pause(),this.socket.removeListener("data",this.onDataReceived),this.socket.removeListener("close",this.onClose),this.socket.removeListener("error",this.onError),this.socket.removeListener("connect",this.onConnect)}closeSocket(e){this.state!==u.SocksClientState.Error&&(this.setState(u.SocksClientState.Error),this.socket.destroy(),this.removeInternalSocketHandlers(),this.emit("error",new l.SocksClientError(e,this.options)))}sendSocks4InitialHandshake(){const e=this.options.proxy.userId||"",t=new i.SmartBuffer;t.writeUInt8(4),t.writeUInt8(u.SocksCommand[this.options.command]),t.writeUInt16BE(this.options.destination.port),s.isIPv4(this.options.destination.host)?(t.writeBuffer((0,a.ipToBuffer)(this.options.destination.host)),t.writeStringNT(e)):(t.writeUInt8(0),t.writeUInt8(0),t.writeUInt8(0),t.writeUInt8(1),t.writeStringNT(e),t.writeStringNT(this.options.destination.host)),this.nextRequiredPacketBufferSize=u.SOCKS_INCOMING_PACKET_SIZES.Socks4Response,this.socket.write(t.toBuffer())}handleSocks4FinalHandshakeResponse(){const e=this.receiveBuffer.get(8);if(e[1]!==u.Socks4Response.Granted)this.closeSocket(`${u.ERRORS.Socks4ProxyRejectedConnection} - (${u.Socks4Response[e[1]]})`);else if(u.SocksCommand[this.options.command]===u.SocksCommand.bind){const t=i.SmartBuffer.fromBuffer(e);t.readOffset=2;const r={port:t.readUInt16BE(),host:(0,a.int32ToIpv4)(t.readUInt32BE())};"0.0.0.0"===r.host&&(r.host=this.options.proxy.ipaddress),this.setState(u.SocksClientState.BoundWaitingForConnection),this.emit("bound",{remoteHost:r,socket:this.socket})}else this.setState(u.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{socket:this.socket})}handleSocks4IncomingConnectionResponse(){const e=this.receiveBuffer.get(8);if(e[1]!==u.Socks4Response.Granted)this.closeSocket(`${u.ERRORS.Socks4ProxyRejectedIncomingBoundConnection} - (${u.Socks4Response[e[1]]})`);else{const t=i.SmartBuffer.fromBuffer(e);t.readOffset=2;const r={port:t.readUInt16BE(),host:(0,a.int32ToIpv4)(t.readUInt32BE())};this.setState(u.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:r,socket:this.socket})}}sendSocks5InitialHandshake(){const e=new i.SmartBuffer,t=[u.Socks5Auth.NoAuth];(this.options.proxy.userId||this.options.proxy.password)&&t.push(u.Socks5Auth.UserPass),void 0!==this.options.proxy.custom_auth_method&&t.push(this.options.proxy.custom_auth_method),e.writeUInt8(5),e.writeUInt8(t.length);for(const r of t)e.writeUInt8(r);this.nextRequiredPacketBufferSize=u.SOCKS_INCOMING_PACKET_SIZES.Socks5InitialHandshakeResponse,this.socket.write(e.toBuffer()),this.setState(u.SocksClientState.SentInitialHandshake)}handleInitialSocks5HandshakeResponse(){const e=this.receiveBuffer.get(2);5!==e[0]?this.closeSocket(u.ERRORS.InvalidSocks5IntiailHandshakeSocksVersion):e[1]===u.SOCKS5_NO_ACCEPTABLE_AUTH?this.closeSocket(u.ERRORS.InvalidSocks5InitialHandshakeNoAcceptedAuthType):e[1]===u.Socks5Auth.NoAuth?(this.socks5ChosenAuthType=u.Socks5Auth.NoAuth,this.sendSocks5CommandRequest()):e[1]===u.Socks5Auth.UserPass?(this.socks5ChosenAuthType=u.Socks5Auth.UserPass,this.sendSocks5UserPassAuthentication()):e[1]===this.options.proxy.custom_auth_method?(this.socks5ChosenAuthType=this.options.proxy.custom_auth_method,this.sendSocks5CustomAuthentication()):this.closeSocket(u.ERRORS.InvalidSocks5InitialHandshakeUnknownAuthType)}sendSocks5UserPassAuthentication(){const e=this.options.proxy.userId||"",t=this.options.proxy.password||"",r=new i.SmartBuffer;r.writeUInt8(1),r.writeUInt8(Buffer.byteLength(e)),r.writeString(e),r.writeUInt8(Buffer.byteLength(t)),r.writeString(t),this.nextRequiredPacketBufferSize=u.SOCKS_INCOMING_PACKET_SIZES.Socks5UserPassAuthenticationResponse,this.socket.write(r.toBuffer()),this.setState(u.SocksClientState.SentAuthentication)}sendSocks5CustomAuthentication(){return n(this,void 0,void 0,(function*(){this.nextRequiredPacketBufferSize=this.options.proxy.custom_auth_response_size,this.socket.write(yield this.options.proxy.custom_auth_request_handler()),this.setState(u.SocksClientState.SentAuthentication)}))}handleSocks5CustomAuthHandshakeResponse(e){return n(this,void 0,void 0,(function*(){return yield this.options.proxy.custom_auth_response_handler(e)}))}handleSocks5AuthenticationNoAuthHandshakeResponse(e){return n(this,void 0,void 0,(function*(){return 0===e[1]}))}handleSocks5AuthenticationUserPassHandshakeResponse(e){return n(this,void 0,void 0,(function*(){return 0===e[1]}))}handleInitialSocks5AuthenticationHandshakeResponse(){return n(this,void 0,void 0,(function*(){this.setState(u.SocksClientState.ReceivedAuthenticationResponse);let e=!1;this.socks5ChosenAuthType===u.Socks5Auth.NoAuth?e=yield this.handleSocks5AuthenticationNoAuthHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===u.Socks5Auth.UserPass?e=yield this.handleSocks5AuthenticationUserPassHandshakeResponse(this.receiveBuffer.get(2)):this.socks5ChosenAuthType===this.options.proxy.custom_auth_method&&(e=yield this.handleSocks5CustomAuthHandshakeResponse(this.receiveBuffer.get(this.options.proxy.custom_auth_response_size))),e?this.sendSocks5CommandRequest():this.closeSocket(u.ERRORS.Socks5AuthenticationFailed)}))}sendSocks5CommandRequest(){const e=new i.SmartBuffer;e.writeUInt8(5),e.writeUInt8(u.SocksCommand[this.options.command]),e.writeUInt8(0),s.isIPv4(this.options.destination.host)?(e.writeUInt8(u.Socks5HostType.IPv4),e.writeBuffer((0,a.ipToBuffer)(this.options.destination.host))):s.isIPv6(this.options.destination.host)?(e.writeUInt8(u.Socks5HostType.IPv6),e.writeBuffer((0,a.ipToBuffer)(this.options.destination.host))):(e.writeUInt8(u.Socks5HostType.Hostname),e.writeUInt8(this.options.destination.host.length),e.writeString(this.options.destination.host)),e.writeUInt16BE(this.options.destination.port),this.nextRequiredPacketBufferSize=u.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.socket.write(e.toBuffer()),this.setState(u.SocksClientState.SentFinalHandshake)}handleSocks5FinalHandshakeResponse(){const e=this.receiveBuffer.peek(5);if(5!==e[0]||e[1]!==u.Socks5Response.Granted)this.closeSocket(`${u.ERRORS.InvalidSocks5FinalHandshakeRejected} - ${u.Socks5Response[e[1]]}`);else{const t=e[3];let r,n;if(t===u.Socks5HostType.IPv4){const e=u.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length<e)return void(this.nextRequiredPacketBufferSize=e);n=i.SmartBuffer.fromBuffer(this.receiveBuffer.get(e).slice(4)),r={host:(0,a.int32ToIpv4)(n.readUInt32BE()),port:n.readUInt16BE()},"0.0.0.0"===r.host&&(r.host=this.options.proxy.ipaddress)}else if(t===u.Socks5HostType.Hostname){const t=e[4],o=u.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(t);if(this.receiveBuffer.length<o)return void(this.nextRequiredPacketBufferSize=o);n=i.SmartBuffer.fromBuffer(this.receiveBuffer.get(o).slice(5)),r={host:n.readString(t),port:n.readUInt16BE()}}else if(t===u.Socks5HostType.IPv6){const e=u.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6;if(this.receiveBuffer.length<e)return void(this.nextRequiredPacketBufferSize=e);n=i.SmartBuffer.fromBuffer(this.receiveBuffer.get(e).slice(4)),r={host:h.Address6.fromByteArray(Array.from(n.readBuffer(16))).canonicalForm(),port:n.readUInt16BE()}}this.setState(u.SocksClientState.ReceivedFinalResponse),u.SocksCommand[this.options.command]===u.SocksCommand.connect?(this.setState(u.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:r,socket:this.socket})):u.SocksCommand[this.options.command]===u.SocksCommand.bind?(this.setState(u.SocksClientState.BoundWaitingForConnection),this.nextRequiredPacketBufferSize=u.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHeader,this.emit("bound",{remoteHost:r,socket:this.socket})):u.SocksCommand[this.options.command]===u.SocksCommand.associate&&(this.setState(u.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:r,socket:this.socket}))}}handleSocks5IncomingConnectionResponse(){const e=this.receiveBuffer.peek(5);if(5!==e[0]||e[1]!==u.Socks5Response.Granted)this.closeSocket(`${u.ERRORS.Socks5ProxyRejectedIncomingBoundConnection} - ${u.Socks5Response[e[1]]}`);else{const t=e[3];let r,n;if(t===u.Socks5HostType.IPv4){const e=u.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv4;if(this.receiveBuffer.length<e)return void(this.nextRequiredPacketBufferSize=e);n=i.SmartBuffer.fromBuffer(this.receiveBuffer.get(e).slice(4)),r={host:(0,a.int32ToIpv4)(n.readUInt32BE()),port:n.readUInt16BE()},"0.0.0.0"===r.host&&(r.host=this.options.proxy.ipaddress)}else if(t===u.Socks5HostType.Hostname){const t=e[4],o=u.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseHostname(t);if(this.receiveBuffer.length<o)return void(this.nextRequiredPacketBufferSize=o);n=i.SmartBuffer.fromBuffer(this.receiveBuffer.get(o).slice(5)),r={host:n.readString(t),port:n.readUInt16BE()}}else if(t===u.Socks5HostType.IPv6){const e=u.SOCKS_INCOMING_PACKET_SIZES.Socks5ResponseIPv6;if(this.receiveBuffer.length<e)return void(this.nextRequiredPacketBufferSize=e);n=i.SmartBuffer.fromBuffer(this.receiveBuffer.get(e).slice(4)),r={host:h.Address6.fromByteArray(Array.from(n.readBuffer(16))).canonicalForm(),port:n.readUInt16BE()}}this.setState(u.SocksClientState.Established),this.removeInternalSocketHandlers(),this.emit("established",{remoteHost:r,socket:this.socket})}}get socksClientOptions(){return Object.assign({},this.options)}}t.SocksClient=d},8239:(e,t)=>{"use strict";var r,n,o,s,i,u;Object.defineProperty(t,"__esModule",{value:!0}),t.SOCKS5_NO_ACCEPTABLE_AUTH=t.SOCKS5_CUSTOM_AUTH_END=t.SOCKS5_CUSTOM_AUTH_START=t.SOCKS_INCOMING_PACKET_SIZES=t.SocksClientState=t.Socks5Response=t.Socks5HostType=t.Socks5Auth=t.Socks4Response=t.SocksCommand=t.ERRORS=t.DEFAULT_TIMEOUT=void 0,t.DEFAULT_TIMEOUT=3e4,t.ERRORS={InvalidSocksCommand:"An invalid SOCKS command was provided. Valid options are connect, bind, and associate.",InvalidSocksCommandForOperation:"An invalid SOCKS command was provided. Only a subset of commands are supported for this operation.",InvalidSocksCommandChain:"An invalid SOCKS command was provided. Chaining currently only supports the connect command.",InvalidSocksClientOptionsDestination:"An invalid destination host was provided.",InvalidSocksClientOptionsExistingSocket:"An invalid existing socket was provided. This should be an instance of stream.Duplex.",InvalidSocksClientOptionsProxy:"Invalid SOCKS proxy details were provided.",InvalidSocksClientOptionsTimeout:"An invalid timeout value was provided. Please enter a value above 0 (in ms).",InvalidSocksClientOptionsProxiesLength:"At least two socks proxies must be provided for chaining.",InvalidSocksClientOptionsCustomAuthRange:"Custom auth must be a value between 0x80 and 0xFE.",InvalidSocksClientOptionsCustomAuthOptions:"When a custom_auth_method is provided, custom_auth_request_handler, custom_auth_response_size, and custom_auth_response_handler must also be provided and valid.",NegotiationError:"Negotiation error",SocketClosed:"Socket closed",ProxyConnectionTimedOut:"Proxy connection timed out",InternalError:"SocksClient internal error (this should not happen)",InvalidSocks4HandshakeResponse:"Received invalid Socks4 handshake response",Socks4ProxyRejectedConnection:"Socks4 Proxy rejected connection",InvalidSocks4IncomingConnectionResponse:"Socks4 invalid incoming connection response",Socks4ProxyRejectedIncomingBoundConnection:"Socks4 Proxy rejected incoming bound connection",InvalidSocks5InitialHandshakeResponse:"Received invalid Socks5 initial handshake response",InvalidSocks5IntiailHandshakeSocksVersion:"Received invalid Socks5 initial handshake (invalid socks version)",InvalidSocks5InitialHandshakeNoAcceptedAuthType:"Received invalid Socks5 initial handshake (no accepted authentication type)",InvalidSocks5InitialHandshakeUnknownAuthType:"Received invalid Socks5 initial handshake (unknown authentication type)",Socks5AuthenticationFailed:"Socks5 Authentication failed",InvalidSocks5FinalHandshake:"Received invalid Socks5 final handshake response",InvalidSocks5FinalHandshakeRejected:"Socks5 proxy rejected connection",InvalidSocks5IncomingConnectionResponse:"Received invalid Socks5 incoming connection response",Socks5ProxyRejectedIncomingBoundConnection:"Socks5 Proxy rejected incoming bound connection"},t.SOCKS_INCOMING_PACKET_SIZES={Socks5InitialHandshakeResponse:2,Socks5UserPassAuthenticationResponse:2,Socks5ResponseHeader:5,Socks5ResponseIPv4:10,Socks5ResponseIPv6:22,Socks5ResponseHostname:e=>e+7,Socks4Response:8},function(e){e[e.connect=1]="connect",e[e.bind=2]="bind",e[e.associate=3]="associate"}(r||(t.SocksCommand=r={})),function(e){e[e.Granted=90]="Granted",e[e.Failed=91]="Failed",e[e.Rejected=92]="Rejected",e[e.RejectedIdent=93]="RejectedIdent"}(n||(t.Socks4Response=n={})),function(e){e[e.NoAuth=0]="NoAuth",e[e.GSSApi=1]="GSSApi",e[e.UserPass=2]="UserPass"}(o||(t.Socks5Auth=o={})),t.SOCKS5_CUSTOM_AUTH_START=128,t.SOCKS5_CUSTOM_AUTH_END=254,t.SOCKS5_NO_ACCEPTABLE_AUTH=255,function(e){e[e.Granted=0]="Granted",e[e.Failure=1]="Failure",e[e.NotAllowed=2]="NotAllowed",e[e.NetworkUnreachable=3]="NetworkUnreachable",e[e.HostUnreachable=4]="HostUnreachable",e[e.ConnectionRefused=5]="ConnectionRefused",e[e.TTLExpired=6]="TTLExpired",e[e.CommandNotSupported=7]="CommandNotSupported",e[e.AddressNotSupported=8]="AddressNotSupported"}(s||(t.Socks5Response=s={})),function(e){e[e.IPv4=1]="IPv4",e[e.Hostname=3]="Hostname",e[e.IPv6=4]="IPv6"}(i||(t.Socks5HostType=i={})),function(e){e[e.Created=0]="Created",e[e.Connecting=1]="Connecting",e[e.Connected=2]="Connected",e[e.SentInitialHandshake=3]="SentInitialHandshake",e[e.ReceivedInitialHandshakeResponse=4]="ReceivedInitialHandshakeResponse",e[e.SentAuthentication=5]="SentAuthentication",e[e.ReceivedAuthenticationResponse=6]="ReceivedAuthenticationResponse",e[e.SentFinalHandshake=7]="SentFinalHandshake",e[e.ReceivedFinalResponse=8]="ReceivedFinalResponse",e[e.BoundWaitingForConnection=9]="BoundWaitingForConnection",e[e.Established=10]="Established",e[e.Disconnected=11]="Disconnected",e[e.Error=99]="Error"}(u||(t.SocksClientState=u={}))},4127:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ipToBuffer=t.int32ToIpv4=t.ipv4ToInt32=t.validateSocksClientChainOptions=t.validateSocksClientOptions=void 0;const n=r(3136),o=r(8239),s=r(2203),i=r(5557),u=r(9278);function a(e,t){if(void 0!==e.custom_auth_method){if(e.custom_auth_method<o.SOCKS5_CUSTOM_AUTH_START||e.custom_auth_method>o.SOCKS5_CUSTOM_AUTH_END)throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsCustomAuthRange,t);if(void 0===e.custom_auth_request_handler||"function"!=typeof e.custom_auth_request_handler)throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(void 0===e.custom_auth_response_size)throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t);if(void 0===e.custom_auth_response_handler||"function"!=typeof e.custom_auth_response_handler)throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsCustomAuthOptions,t)}}function c(e){return e&&"string"==typeof e.host&&"number"==typeof e.port&&e.port>=0&&e.port<=65535}function l(e){return e&&("string"==typeof e.host||"string"==typeof e.ipaddress)&&"number"==typeof e.port&&e.port>=0&&e.port<=65535&&(4===e.type||5===e.type)}function h(e){return"number"==typeof e&&e>0}t.validateSocksClientOptions=function(e,t=["connect","bind","associate"]){if(!o.SocksCommand[e.command])throw new n.SocksClientError(o.ERRORS.InvalidSocksCommand,e);if(-1===t.indexOf(e.command))throw new n.SocksClientError(o.ERRORS.InvalidSocksCommandForOperation,e);if(!c(e.destination))throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsDestination,e);if(!l(e.proxy))throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsProxy,e);if(a(e.proxy,e),e.timeout&&!h(e.timeout))throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsTimeout,e);if(e.existing_socket&&!(e.existing_socket instanceof s.Duplex))throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsExistingSocket,e)},t.validateSocksClientChainOptions=function(e){if("connect"!==e.command)throw new n.SocksClientError(o.ERRORS.InvalidSocksCommandChain,e);if(!c(e.destination))throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsDestination,e);if(!(e.proxies&&Array.isArray(e.proxies)&&e.proxies.length>=2))throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsProxiesLength,e);if(e.proxies.forEach((t=>{if(!l(t))throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsProxy,e);a(t,e)})),e.timeout&&!h(e.timeout))throw new n.SocksClientError(o.ERRORS.InvalidSocksClientOptionsTimeout,e)},t.ipv4ToInt32=function(e){return new i.Address4(e).toArray().reduce(((e,t)=>(e<<8)+t),0)},t.int32ToIpv4=function(e){return[e>>>24&255,e>>>16&255,e>>>8&255,255&e].join(".")},t.ipToBuffer=function(e){if(u.isIPv4(e)){const t=new i.Address4(e);return Buffer.from(t.toArray())}if(u.isIPv6(e)){const t=new i.Address6(e);return Buffer.from(t.canonicalForm().split(":").map((e=>e.padStart(4,"0"))).join(""),"hex")}throw new Error("Invalid IP address format")}},3849:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReceiveBuffer=void 0,t.ReceiveBuffer=class{constructor(e=4096){this.buffer=Buffer.allocUnsafe(e),this.offset=0,this.originalSize=e}get length(){return this.offset}append(e){if(!Buffer.isBuffer(e))throw new Error("Attempted to append a non-buffer instance to ReceiveBuffer.");if(this.offset+e.length>=this.buffer.length){const t=this.buffer;this.buffer=Buffer.allocUnsafe(Math.max(this.buffer.length+this.originalSize,this.buffer.length+e.length)),t.copy(this.buffer)}return e.copy(this.buffer,this.offset),this.offset+=e.length}peek(e){if(e>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");return this.buffer.slice(0,e)}get(e){if(e>this.offset)throw new Error("Attempted to read beyond the bounds of the managed internal data.");const t=Buffer.allocUnsafe(e);return this.buffer.slice(0,e).copy(t),this.buffer.copyWithin(0,e,e+this.offset-e),this.offset-=e,t}}},3136:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.shuffleArray=t.SocksClientError=void 0;class r extends Error{constructor(e,t){super(e),this.options=t}}t.SocksClientError=r,t.shuffleArray=function(e){for(let t=e.length-1;t>0;t--){const r=Math.floor(Math.random()*(t+1));[e[t],e[r]]=[e[r],e[t]]}}},2794:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,o)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(1014),t)},3174:(e,t,r)=>{var n=r(3757);function o(e){if(!(this instanceof o))return new o(e);if(e||(e={}),Buffer.isBuffer(e)&&(e={buffer:e}),this.pageOffset=e.pageOffset||0,this.pageSize=e.pageSize||1024,this.pages=e.pages||n(this.pageSize),this.byteLength=this.pages.length*this.pageSize,this.length=8*this.byteLength,(t=this.pageSize)&t-1)throw new Error("The page size should be a power of two");var t;if(this._trackUpdates=!!e.trackUpdates,this._pageMask=this.pageSize-1,e.buffer){for(var r=0;r<e.buffer.length;r+=this.pageSize)this.pages.set(r/this.pageSize,e.buffer.slice(r,r+this.pageSize));this.byteLength=e.buffer.length,this.length=8*this.byteLength}}e.exports=o,o.prototype.get=function(e){var t=7&e,r=(e-t)/8;return!!(this.getByte(r)&128>>t)},o.prototype.getByte=function(e){var t=e&this._pageMask,r=(e-t)/this.pageSize,n=this.pages.get(r,!0);return n?n.buffer[t+this.pageOffset]:0},o.prototype.set=function(e,t){var r=7&e,n=(e-r)/8,o=this.getByte(n);return this.setByte(n,t?o|128>>r:o&(255^128>>r))},o.prototype.toBuffer=function(){for(var e=function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t}(this.pages.length*this.pageSize),t=0;t<this.pages.length;t++){var r=this.pages.get(t,!0),n=t*this.pageSize;r&&r.buffer.copy(e,n,this.pageOffset,this.pageOffset+this.pageSize)}return e},o.prototype.setByte=function(e,t){var r=e&this._pageMask,n=(e-r)/this.pageSize,o=this.pages.get(n,!1);return r+=this.pageOffset,o.buffer[r]!==t&&(o.buffer[r]=t,e>=this.byteLength&&(this.byteLength=e+1,this.length=8*this.byteLength),this._trackUpdates&&this.pages.updated(o),!0)}},5797:(e,t,r)=>{var n;!function(){"use strict";var o={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function s(e){return function(e,t){var r,n,i,u,a,c,l,h,d,p=1,f=e.length,m="";for(n=0;n<f;n++)if("string"==typeof e[n])m+=e[n];else if("object"==typeof e[n]){if((u=e[n]).keys)for(r=t[p],i=0;i<u.keys.length;i++){if(null==r)throw new Error(s('[sprintf] Cannot access property "%s" of undefined value "%s"',u.keys[i],u.keys[i-1]));r=r[u.keys[i]]}else r=u.param_no?t[u.param_no]:t[p++];if(o.not_type.test(u.type)&&o.not_primitive.test(u.type)&&r instanceof Function&&(r=r()),o.numeric_arg.test(u.type)&&"number"!=typeof r&&isNaN(r))throw new TypeError(s("[sprintf] expecting number but found %T",r));switch(o.number.test(u.type)&&(h=r>=0),u.type){case"b":r=parseInt(r,10).toString(2);break;case"c":r=String.fromCharCode(parseInt(r,10));break;case"d":case"i":r=parseInt(r,10);break;case"j":r=JSON.stringify(r,null,u.width?parseInt(u.width):0);break;case"e":r=u.precision?parseFloat(r).toExponential(u.precision):parseFloat(r).toExponential();break;case"f":r=u.precision?parseFloat(r).toFixed(u.precision):parseFloat(r);break;case"g":r=u.precision?String(Number(r.toPrecision(u.precision))):parseFloat(r);break;case"o":r=(parseInt(r,10)>>>0).toString(8);break;case"s":r=String(r),r=u.precision?r.substring(0,u.precision):r;break;case"t":r=String(!!r),r=u.precision?r.substring(0,u.precision):r;break;case"T":r=Object.prototype.toString.call(r).slice(8,-1).toLowerCase(),r=u.precision?r.substring(0,u.precision):r;break;case"u":r=parseInt(r,10)>>>0;break;case"v":r=r.valueOf(),r=u.precision?r.substring(0,u.precision):r;break;case"x":r=(parseInt(r,10)>>>0).toString(16);break;case"X":r=(parseInt(r,10)>>>0).toString(16).toUpperCase()}o.json.test(u.type)?m+=r:(!o.number.test(u.type)||h&&!u.sign?d="":(d=h?"+":"-",r=r.toString().replace(o.sign,"")),c=u.pad_char?"0"===u.pad_char?"0":u.pad_char.charAt(1):" ",l=u.width-(d+r).length,a=u.width&&l>0?c.repeat(l):"",m+=u.align?d+r+a:"0"===c?d+a+r:a+d+r)}return m}(function(e){if(u[e])return u[e];for(var t,r=e,n=[],s=0;r;){if(null!==(t=o.text.exec(r)))n.push(t[0]);else if(null!==(t=o.modulo.exec(r)))n.push("%");else{if(null===(t=o.placeholder.exec(r)))throw new SyntaxError("[sprintf] unexpected placeholder");if(t[2]){s|=1;var i=[],a=t[2],c=[];if(null===(c=o.key.exec(a)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(i.push(c[1]);""!==(a=a.substring(c[0].length));)if(null!==(c=o.key_access.exec(a)))i.push(c[1]);else{if(null===(c=o.index_access.exec(a)))throw new SyntaxError("[sprintf] failed to parse named argument key");i.push(c[1])}t[2]=i}else s|=2;if(3===s)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");n.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}r=r.substring(t[0].length)}return u[e]=n}(e),arguments)}function i(e,t){return s.apply(null,[e].concat(t||[]))}var u=Object.create(null);t.sprintf=s,t.vsprintf=i,"undefined"!=typeof window&&(window.sprintf=s,window.vsprintf=i,void 0===(n=function(){return{sprintf:s,vsprintf:i}}.call(t,r,t,e))||(e.exports=n))}()},4688:e=>{const{DatabaseAnalyser:t}=global.DBGATE_PACKAGES["dbgate-tools"];function r(e){const t=e.partitionKey?.paths?.map((e=>({columnName:e.substring(1).replace(/\//g,".")})));return{pureName:e.id,clusterKey:[{columnName:"id"}],partitionKey:t,uniqueKey:t.find((e=>"id"==e.columnName))?[{columnName:"id"}]:[...t,{columnName:"id"}]}}class n extends t{constructor(e,t){super(e,t)}async _runAnalysis(){this.feedback({analysingMessage:"Loading containers"});const e=await this.dbhan.client.database(this.dbhan.database).containers.readAll().fetchAll();return this.feedback({analysingMessage:null}),this.mergeAnalyseResult({collections:e.resources.map(((e,t)=>r(e)))})}}n.getCollectionInfoFromContainer=r,e.exports=n},4882:e=>{e.exports={createContainerFromDefinition:async function(e,t,r){const{resource:n}=await e.containers.create({id:t,partitionKey:r?.partitionKey,indexingPolicy:r?.indexingPolicy,uniqueKeyPolicy:r?.uniqueKeyPolicy,changeFeedPolicy:r?.changeFeedPolicy,defaultTtl:r?.defaultTtl,conflictResolutionPolicy:r?.conflictResolutionPolicy});return n},bulkOperationBatched:async function(e,t){const r=[];for(let n=0;n<t.length;n+=100){const o=t.slice(n,n+100),s=await e.items.bulk(o);r.push(...s)}return r}}},8308:(e,t,r)=>{const{createContainerFromDefinition:n,bulkOperationBatched:o}=r(4882),{getLogger:s}=(r(2950).Vr,global.DBGATE_PACKAGES["dbgate-tools"]),i=s("cosmosDbBulkInsert");e.exports=function(e,t,r,s,u){const a=s.pureName,c=r.client.database(r.database),l=new t.Writable({objectMode:!0});return l.buffer=[],l.wasHeader=!1,l.addRow=async e=>{!l.wasHeader&&(l.wasHeader=!0,e.__isStreamHeader)||l.buffer.push(e)},l.checkStructure=async()=>{if(u.dropIfExists&&(i.info(`Dropping container ${a}`),await c.container(a).delete()),u.truncate){const{resource:e}=await c.container(a).read();await c.container(a).delete(),await n(c,a,e)}u.createIfNotExists&&await c.containers.createIfNotExists({id:a,partitionKey:{kind:"Hash",paths:["/id"]}})},l.send=async()=>{l.wasStructureChecked||(await l.checkStructure(),l.wasStructureChecked=!0);const e=l.buffer;l.buffer=[];const t=e.map((e=>({operationType:"Create",resourceBody:e})));await o(c.container(a),t)},l.sendIfFull=async()=>{l.buffer.length>100&&await l.send()},l._write=async(e,t,r)=>{l.addRow(e),await l.sendIfFull(),r()},l._final=async e=>{await l.send(),e()},l}},9831:(module,__unused_webpack_exports,__webpack_require__)=>{const _=__webpack_require__(5076),isPromise=__webpack_require__(3688),stream=__webpack_require__(2203),driverBase=__webpack_require__(9534),Analyser=__webpack_require__(4688),cosmos=__webpack_require__(3648),{convertToCosmosDbCondition,convertToCosmosDbOrder,getCosmosDbAggregateQuery}=__webpack_require__(873),createBulkInsertStream=__webpack_require__(8308),{createContainerFromDefinition,bulkOperationBatched}=__webpack_require__(4882);let authProxy;async function cloneOrRenameContainer(e,t,r,n){const o=e.container(t),s=await o.read();await createContainerFromDefinition(e,r,s);const i=e.container(r);await copyContainerData(o,i),n&&await o.delete()}async function copyContainerData(e,t){const r=e.items.readAll();for(;r.hasMoreResults();){const{resources:e}=await r.fetchNext();if(0===e.length)break;const n=e.map((e=>({operationType:"Create",resourceBody:e})));await bulkOperationBatched(t,n)}}function mapResultRow(e){return _.omit(e,["_rid","_self","_etag","_attachments","_ts"])}function findArrayResult(e){return e.resources&&_.isArray(e.resources)?e.resources:null}async function readAsyncIterator(e,t){let r=!1;try{for await(const{resources:n}of e){r||(t.recordset({__isDynamicStructure:!0}),r=!0);for(const e of n)t.row(e)}}catch(e){t.info({message:"Error getting data: "+e.message,time:new Date,severity:"error"})}}async function readAsyncIteratorIntoStream(e,t){t.write({__isDynamicStructure:!0});for await(const{resources:r}of e)for(const e of r)t.write(e);t.end()}class MyTokenCredential{constructor(e){this.accessToken=e}async getToken(e,t){return{token:this.accessToken,expiresOnTimestamp:Date.now()+36e5}}}const driver={...driverBase,analyserClass:Analyser,async connect({endpoint:e,endpointKey:t,database:r,accessToken:n,authType:o}){const s={endpoint:e,userAgentSuffix:"DbGate"};return"msentra"==o?s.aadCredentials=new MyTokenCredential(n):s.key=t,{client:new cosmos.CosmosClient(s),database:r}},query:async(e,t)=>({rows:[],columns:[]}),stream:async(e,t,r)=>null,async readQuery(dbhan,sql,structure){try{const e=JSON.parse(sql);e&&e.pureName&&(sql=`database.container('${e.pureName}').items.readAll()`)}catch(e){}func=eval(`(database) => ${sql}`);const database=await dbhan.client.database(dbhan.database);exprValue=func(database);const pass=new stream.PassThrough({objectMode:!0,highWaterMark:100}),iterator=exprValue.getAsyncIterator();return readAsyncIteratorIntoStream(iterator,pass),pass},async writeTable(e,t,r){return createBulkInsertStream(this,stream,e,t,r)},getVersion:async e=>({version:"Azure"}),listDatabases:async e=>(await e.client.databases.readAll().fetchAll()).resources.map((e=>({name:e.id}))),async createDatabase(e,t){const{database:r}=await e.client.databases.createIfNotExists({id:t})},async dropDatabase(e,t){await e.client.database(t).delete()},async createContainer(e,t){let{partitionKey:r}=t;if(!r)throw new Error("Partition key is required");r.startsWith("/")||(r="/"+r);let n=(t.uniqueKeys||[]).map((e=>e.trim())).filter((e=>e)).map((e=>e.startsWith("/")?e:"/"+e));await e.containers.createIfNotExists({id:t.name,partitionKey:{kind:"Hash",paths:[r],version:t.largePartitionKey?2:1},throughput:t.throughput,maxThroughput:t.maxThroughput,uniqueKeyPolicy:n.length>0?{uniqueKeys:n.map((e=>({paths:[e]})))}:void 0})},async operation(e,t,r){const n=await e.client.database(e.database),{type:o}=t;switch(o){case"createCollection":await this.createContainer(n,t.collection);break;case"dropCollection":await n.container(t.collection).delete();break;case"renameCollection":await cloneOrRenameContainer(n,t.collection,t.newName,!0);break;case"cloneCollection":await cloneOrRenameContainer(n,t.collection,t.newName,!1);break;default:throw new Error(`Operation type ${o} not supported`)}},async readCollection(e,t){const r=e.client.database(e.database).container(t.pureName).items;try{let e=convertToCosmosDbCondition(this,t.condition);if(t.countDocuments)return{count:(await r.query({query:`SELECT VALUE COUNT(1) FROM c ${e}`}).fetchAll()).resources[0]};if(t.aggregate){const{aggregate:e}=t,n=getCosmosDbAggregateQuery(this,e);return{rows:(await r.query({query:n}).fetchAll()).resources.map((e=>mapResultRow(e)))}}{const{limit:n,skip:o,sort:s}=t,i=convertToCosmosDbOrder(this,s),u=n?`SELECT * FROM c ${e} ${i} OFFSET @skip LIMIT @limit`:`SELECT * FROM c ${e} ${i}`;return{rows:(await r.query({query:u,parameters:n?[{name:"@skip",value:o},{name:"@limit",value:n}]:[]}).fetchAll()).resources.map((e=>mapResultRow(e)))}}}catch(e){return{errorMessage:e.message}}},async updateCollection(e,t){const r=_.groupBy(t.inserts,(e=>e.pureName)),n=_.groupBy(t.updates,(e=>e.pureName)),o=_.groupBy(t.deletes,(e=>e.pureName)),s=[];try{const t=_.uniq([...Object.keys(r),...Object.keys(n),...Object.keys(o)]);for(const i of t){const t=e.client.database(e.database).container(i),u=await t.read(),a=Analyser.getCollectionInfoFromContainer(u.resource),c=this.getCollectionUpdateBulkOperations({inserts:r[i]||[],updates:n[i]||[],deletes:o[i]||[]},a),l=await bulkOperationBatched(t,c);s.push(...l.map((e=>e.resourceBody)))}return s}catch(e){return{errorMessage:e.message}}},async script(dbhan,sql){let func;func=eval(`(database) => ${sql}`);const database=dbhan.database(dbhan.database),res=func(database);isPromise(res)&&await res},async stream(dbhan,sql,options){let func;try{func=eval(`(database) => ${sql}`)}catch(e){return options.info({message:"Error compiling expression: "+e.message,time:new Date,severity:"error"}),void options.done()}const database=pool.database(dbhan.database);let exprValue;try{exprValue=func(database)}catch(e){return options.info({message:"Error evaluating expression: "+e.message,time:new Date,severity:"error"}),void options.done()}if(exprValue?.getAsyncIterator)await readAsyncIterator(exprValue.getAsyncIterator(),options);else if(isPromise(exprValue))try{const e=await exprValue;options.info({message:"Command succesfully executed",time:new Date,severity:"info"});try{options.info({message:`Result: ${JSON.stringify(e)}`,time:new Date,severity:"info"})}catch(t){options.info({message:`Result: ${e}`,time:new Date,severity:"info"})}const t=findArrayResult(e);if(t){options.recordset({__isDynamicStructure:!0});for(const e of t)options.row(e)}}catch(e){options.info({message:"Error when running command: "+e.message,time:new Date,severity:"error"})}options.done()},getAuthTypes:()=>[{title:"Endpoint+key",name:"endpointKey"},{title:"Microsoft Entra ID (with MFA support)",name:"msentra",disabledFields:["endpointKey"]}],getRedirectAuthUrl:(e,t)=>"msentra"!=e.authType?null:authProxy.authProxyGetRedirectUrl({...t,type:"msentra"}),getAuthTokenFromCode:(e,t)=>authProxy.authProxyGetTokenFromCode(t),getAccessTokenFromAuth:(e,t)=>t?.user?.msentraToken};driver.initialize=e=>{authProxy=e.authProxy},module.exports=driver},5237:(e,t,r)=>{const n=r(9831);e.exports={packageName:"dbgate-plugin-cosmosdb",drivers:[n],initialize(e){n.initialize(e)}}},6197:e=>{const{SqlDumper:t}=global.DBGATE_PACKAGES["dbgate-tools"];e.exports=class extends t{}},873:(e,t,r)=>{const{dumpSqlCondition:n}=global.DBGATE_PACKAGES["dbgate-sqltree"],o=r(3402);function s(e){return e=o(e,(e=>{if("like"==e.conditionType)return{conditionType:"expression",expr:{exprType:"call",func:"RegexMatch",args:[e.left,{exprType:"value",value:(e.right.value||"").toString().replace(/%/g,".*")},{exprType:"value",value:"i"}]}}})),o(e,(e=>{if("column"==e.exprType)return{...e,source:{alias:"c"}}}))}e.exports={convertToCosmosDbCondition:function(e,t){if(!t)return"";t=s(t);const r=e.createDumper();return n(r,t),` WHERE ${r.s}`},convertToCosmosDbOrder:function(e,t){if(!t||!t.length)return"";const r=e.createDumper();return r.putCollection(", ",t,(e=>{r.put("c.%s %k",e.columnName,e.direction)})),` ORDER BY ${r.s}`},getCosmosDbAggregateQuery:function(e,t){const{groupByColumns:r,aggregateColumns:o,condition:i}=t,u=e.createDumper();u.put("SELECT "),u.putCollection(", ",r,(e=>{u.put("c.%s",e)}));for(const e of o){const{alias:t,aggregateFunction:r,columnArgument:n}=e;u.put(",%k(c.%s) AS %s",r,n??"id",t)}return u.put(" FROM c "),i&&(u.put(" WHERE "),n(u,s(i))),u.put(" GROUP BY "),u.putCollection(", ",r,(e=>{u.put("c.%s",e)})),u.s}}},9534:(e,t,r)=>{const{driverBase:n}=global.DBGATE_PACKAGES["dbgate-tools"],{convertToCosmosDbCondition:o,convertToCosmosDbOrder:s}=r(873),i=r(6197),{mongoSplitterOptions:u}=r(5994),a={...n,dumperClass:i,dialect:{limitSelect:!0,rangeSelect:!0,offsetFetchRangeSyntax:!0,stringEscapeChar:"'",fallbackDataType:"nvarchar(max)",quoteIdentifier:e=>e},engine:"cosmosdb@dbgate-plugin-cosmosdb",databaseEngineTypes:["document"],title:"Azure Cosmos DB",editorMode:"javascript",premiumOnly:!0,collectionSingularLabel:"container",collectionPluralLabel:"containers",defaultAuthTypeName:"endpointKey",showConnectionField:(e,t)=>["endpoint","endpointKey","authType"].includes(e),getFilterBehaviour:(e,t)=>({...t.stringFilterBehaviour,allowNumberDualTesting:!0}),getQuerySplitterOptions:()=>u,newCollectionFormParams:[{type:"text",label:"Container ID",name:"name",focused:!0},{type:"text",label:"Partition Key",name:"partitionKey",placeholder:"Required - first partition key e.g. /TenantId"},{type:"checkbox",label:"Large partition key",name:"largePartitionKey"},{type:"number",label:"Throughput (RU/s)",name:"throughput"},{type:"number",label:"Max Throughput (RU/s)",name:"maxThroughput"},{type:"stringlist",label:"Unique keys",name:"uniqueKeys",placeholder:"Comma separated paths e.g. /firstName,/address",addButtonLabel:"Add unique key"}],getCollectionExportQueryScript(e,t,r){const n=o(this,t),i=s(this,r);return`database\n .container('${e}')\n .items\n .query({query: 'SELECT * FROM c ${n.replace(/'/g,"\\'")} ${i}'})`},getCollectionExportQueryJson(e,t,r){return{container:e,query:`SELECT * FROM c ${o(this,t)} ${s(this,r)}`}},getCollectionUpdateScript(e,t){const r=this.getCollectionUpdateBulkOperations(e,t);return`database.container('${t.pureName}').items.bulk(${JSON.stringify(r,null,2)})`},getCollectionUpdateBulkOperations(e,t){const r=t?.partitionKey?.[0]?.columnName;if(!r)throw new Error(`Partition key not defined for collection ${containerName}`);return[...(e.inserts||[]).map((e=>({operationType:"Create",resourceBody:{...e.document,...e.fields}}))),...(e.updates||[]).filter((e=>e.document)).map((e=>({operationType:"Upsert",resourceBody:{...e.condition,...e.document,...e.fields}}))),...(e.updates||[]).filter((e=>!e.document)).map((e=>({operationType:"Patch",id:e.condition.id,partitionKey:e.condition[r],resourceBody:{operations:Object.keys(e.fields).map((t=>void 0===e.fields[t]||e.fields[t]?.$$undefined$$?{op:"remove",path:`/${t}`}:{op:"set",path:`/${t}`,value:e.fields[t]}))}}))),...(e.deletes||[]).map((e=>({operationType:"Delete",id:e.condition.id,partitionKey:e.condition[r]})))]},dataEditorTypesBehaviour:{parseJsonNull:!0,parseJsonBoolean:!0,parseNumber:!0,parseJsonArray:!0,parseJsonObject:!0,explicitDataType:!0,supportNumberType:!0,supportStringType:!0,supportBooleanType:!0,supportJsonType:!0,supportNullType:!0,supportFieldRemoval:!0},getScriptTemplates:e=>"collections"===e?[{label:"JS: container.delete()",scriptTemplate:"dropContainer"},{label:"JS: container.items.query()",scriptTemplate:"queryContainer"}]:[],async getScriptTemplateContent(e,t){switch(e){case"dropContainer":return`database.container('${t.pureName}').delete();`;case"queryContainer":return`database.container('${t.pureName}').items.query({query: 'SELECT * FROM c'});`}},beforeConnectionSave:e=>({...e,useRedirectDbLogin:"msentra"==e.authType?1:0})};e.exports=a},3648:e=>{"use strict";e.exports=require("@azure/cosmos")},2562:e=>{"use strict";e.exports=require("buffer")},5317:e=>{"use strict";e.exports=require("child_process")},6982:e=>{"use strict";e.exports=require("crypto")},2250:e=>{"use strict";e.exports=require("dns")},4434:e=>{"use strict";e.exports=require("events")},9896:e=>{"use strict";e.exports=require("fs")},1943:e=>{"use strict";e.exports=require("fs/promises")},8611:e=>{"use strict";e.exports=require("http")},9278:e=>{"use strict";e.exports=require("net")},857:e=>{"use strict";e.exports=require("os")},6928:e=>{"use strict";e.exports=require("path")},932:e=>{"use strict";e.exports=require("process")},1099:e=>{"use strict";e.exports=require("querystring")},2203:e=>{"use strict";e.exports=require("stream")},3557:e=>{"use strict";e.exports=require("timers")},2375:e=>{"use strict";e.exports=require("tls")},7016:e=>{"use strict";e.exports=require("url")},9023:e=>{"use strict";e.exports=require("util")},3106:e=>{"use strict";e.exports=require("zlib")},4752:(e,t,r)=>{"use strict";function n(e){return["[object ArrayBuffer]","[object SharedArrayBuffer]"].includes(Object.prototype.toString.call(e))}function o(e){return"[object Uint8Array]"===Object.prototype.toString.call(e)}function s(e){return"[object RegExp]"===Object.prototype.toString.call(e)}function i(e){return"[object Map]"===Object.prototype.toString.call(e)}function u(e){return"[object Date]"===Object.prototype.toString.call(e)}function a(e,t){return JSON.stringify(e,((e,t)=>"bigint"==typeof t?{$numberLong:`${t}`}:i(t)?Object.fromEntries(t):t))}const c=6,l=2147483647,h=-2147483648,d=Math.pow(2,63)-1,p=-Math.pow(2,63),f=Math.pow(2,53),m=-Math.pow(2,53),g=1,E=2,A=3,y=4,C=5,S=6,w=7,b=8,v=9,O=10,_=11,B=12,D=13,T=14,I=15,F=16,R=17,N=18,M=19,x=255,P=127,k=0,L=4,U=Object.freeze({double:1,string:2,object:3,array:4,binData:5,undefined:6,objectId:7,bool:8,date:9,null:10,regex:11,dbPointer:12,javascript:13,symbol:14,javascriptWithScope:15,int:16,timestamp:17,long:18,decimal:19,minKey:-1,maxKey:127});class j extends Error{get bsonError(){return!0}get name(){return"BSONError"}constructor(e,t){super(e,t)}static isBSONError(e){return null!=e&&"object"==typeof e&&"bsonError"in e&&!0===e.bsonError&&"name"in e&&"message"in e&&"stack"in e}}class $ extends j{get name(){return"BSONVersionError"}constructor(){super(`Unsupported BSON version, bson types must be from bson ${c}.x.x`)}}class z extends j{get name(){return"BSONRuntimeError"}constructor(e){super(e)}}class V extends j{get name(){return"BSONOffsetError"}constructor(e,t,r){super(`${e}. offset: ${t}`,r),this.offset=t}}let H,q;function W(e,t,r,n){if(n){H??=new TextDecoder("utf8",{fatal:!0});try{return H.decode(e.subarray(t,r))}catch(e){throw new j("Invalid UTF-8 string in BSON document",{cause:e})}}return q??=new TextDecoder("utf8",{fatal:!1}),q.decode(e.subarray(t,r))}function G(e,t,r){if(0===e.length)return"";const n=r-t;if(0===n)return"";if(n>20)return null;if(1===n&&e[t]<128)return String.fromCharCode(e[t]);if(2===n&&e[t]<128&&e[t+1]<128)return String.fromCharCode(e[t])+String.fromCharCode(e[t+1]);if(3===n&&e[t]<128&&e[t+1]<128&&e[t+2]<128)return String.fromCharCode(e[t])+String.fromCharCode(e[t+1])+String.fromCharCode(e[t+2]);const o=[];for(let n=t;n<r;n++){const t=e[n];if(t>127)return null;o.push(t)}return String.fromCharCode(...o)}function K(e){return J.fromNumberArray(Array.from({length:e},(()=>Math.floor(256*Math.random()))))}const Y=(()=>{try{return r(6982).randomBytes}catch{return K}})(),J={toLocalBufferType(e){if(Buffer.isBuffer(e))return e;if(ArrayBuffer.isView(e))return Buffer.from(e.buffer,e.byteOffset,e.byteLength);const t=e?.[Symbol.toStringTag]??Object.prototype.toString.call(e);if("ArrayBuffer"===t||"SharedArrayBuffer"===t||"[object ArrayBuffer]"===t||"[object SharedArrayBuffer]"===t)return Buffer.from(e);throw new j(`Cannot create Buffer from ${String(e)}`)},allocate:e=>Buffer.alloc(e),allocateUnsafe:e=>Buffer.allocUnsafe(e),equals:(e,t)=>J.toLocalBufferType(e).equals(t),fromNumberArray:e=>Buffer.from(e),fromBase64:e=>Buffer.from(e,"base64"),toBase64:e=>J.toLocalBufferType(e).toString("base64"),fromISO88591:e=>Buffer.from(e,"binary"),toISO88591:e=>J.toLocalBufferType(e).toString("binary"),fromHex:e=>Buffer.from(e,"hex"),toHex:e=>J.toLocalBufferType(e).toString("hex"),toUTF8(e,t,r,n){const o=r-t<=20?G(e,t,r):null;if(null!=o)return o;const s=J.toLocalBufferType(e).toString("utf8",t,r);if(n)for(let n=0;n<s.length;n++)if(65533===s.charCodeAt(n)){W(e,t,r,!0);break}return s},utf8ByteLength:e=>Buffer.byteLength(e,"utf8"),encodeUTF8Into(e,t,r){const n=function(e,t,r){if(0===t.length)return 0;if(t.length>25)return null;if(e.length-r<t.length)return null;for(let n=0,o=r;n<t.length;n++,o++){const r=t.charCodeAt(n);if(r>127)return null;e[o]=r}return t.length}(e,t,r);return null!=n?n:J.toLocalBufferType(e).write(t,r,void 0,"utf8")},randomBytes:Y};function X(e){if(e<0)throw new RangeError(`The argument 'byteLength' is invalid. Received ${e}`);return ee.fromNumberArray(Array.from({length:e},(()=>Math.floor(256*Math.random()))))}const Z=(()=>{const{crypto:e}=globalThis;if(null!=e&&"function"==typeof e.getRandomValues)return t=>e.getRandomValues(ee.allocate(t));if(function(){const{navigator:e}=globalThis;return"object"==typeof e&&"ReactNative"===e.product}()){const{console:e}=globalThis;e?.warn?.("BSON: For React Native please polyfill crypto.getRandomValues, e.g. using: https://www.npmjs.com/package/react-native-get-random-values.")}return X})(),Q=/(\d|[a-f])/i,ee={toLocalBufferType(e){const t=e?.[Symbol.toStringTag]??Object.prototype.toString.call(e);if("Uint8Array"===t)return e;if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength));if("ArrayBuffer"===t||"SharedArrayBuffer"===t||"[object ArrayBuffer]"===t||"[object SharedArrayBuffer]"===t)return new Uint8Array(e);throw new j(`Cannot make a Uint8Array from ${String(e)}`)},allocate(e){if("number"!=typeof e)throw new TypeError(`The "size" argument must be of type number. Received ${String(e)}`);return new Uint8Array(e)},allocateUnsafe:e=>ee.allocate(e),equals(e,t){if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},fromNumberArray:e=>Uint8Array.from(e),fromBase64:e=>Uint8Array.from(atob(e),(e=>e.charCodeAt(0))),toBase64:e=>btoa(ee.toISO88591(e)),fromISO88591:e=>Uint8Array.from(e,(e=>255&e.charCodeAt(0))),toISO88591:e=>Array.from(Uint16Array.from(e),(e=>String.fromCharCode(e))).join(""),fromHex(e){const t=e.length%2==0?e:e.slice(0,e.length-1),r=[];for(let e=0;e<t.length;e+=2){const n=t[e],o=t[e+1];if(!Q.test(n))break;if(!Q.test(o))break;const s=Number.parseInt(`${n}${o}`,16);r.push(s)}return Uint8Array.from(r)},toHex:e=>Array.from(e,(e=>e.toString(16).padStart(2,"0"))).join(""),toUTF8(e,t,r,n){const o=r-t<=20?G(e,t,r):null;return null!=o?o:W(e,t,r,n)},utf8ByteLength:e=>(new TextEncoder).encode(e).byteLength,encodeUTF8Into(e,t,r){const n=(new TextEncoder).encode(t);return e.set(n,r),n.byteLength},randomBytes:Z},te="function"==typeof Buffer&&!0!==Buffer.prototype?._isBuffer?J:ee;class re{get[Symbol.for("@@mdb.bson.version")](){return c}[Symbol.for("nodejs.util.inspect.custom")](e,t,r){return this.inspect(e,t,r)}}class ne extends re{get _bsontype(){return"Binary"}constructor(e,t){if(super(),null!=e&&"string"==typeof e&&!ArrayBuffer.isView(e)&&!n(e)&&!Array.isArray(e))throw new j("Binary can only be constructed from Uint8Array or number[]");this.sub_type=t??ne.BSON_BINARY_SUBTYPE_DEFAULT,null==e?(this.buffer=te.allocate(ne.BUFFER_SIZE),this.position=0):(this.buffer=Array.isArray(e)?te.fromNumberArray(e):te.toLocalBufferType(e),this.position=this.buffer.byteLength)}put(e){if("string"==typeof e&&1!==e.length)throw new j("only accepts single character String");if("number"!=typeof e&&1!==e.length)throw new j("only accepts single character Uint8Array or Array");let t;if(t="string"==typeof e?e.charCodeAt(0):"number"==typeof e?e:e[0],t<0||t>255)throw new j("only accepts number in a valid unsigned byte range 0-255");if(this.buffer.byteLength>this.position)this.buffer[this.position++]=t;else{const e=te.allocate(ne.BUFFER_SIZE+this.buffer.length);e.set(this.buffer,0),this.buffer=e,this.buffer[this.position++]=t}}write(e,t){if(t="number"==typeof t?t:this.position,this.buffer.byteLength<t+e.length){const t=te.allocate(this.buffer.byteLength+e.length);t.set(this.buffer,0),this.buffer=t}if(ArrayBuffer.isView(e))this.buffer.set(te.toLocalBufferType(e),t),this.position=t+e.byteLength>this.position?t+e.length:this.position;else if("string"==typeof e)throw new j("input cannot be string")}read(e,t){return t=t&&t>0?t:this.position,this.buffer.slice(e,e+t)}value(){return this.buffer.length===this.position?this.buffer:this.buffer.subarray(0,this.position)}length(){return this.position}toJSON(){return te.toBase64(this.buffer.subarray(0,this.position))}toString(e){return"hex"===e?te.toHex(this.buffer.subarray(0,this.position)):"base64"===e?te.toBase64(this.buffer.subarray(0,this.position)):te.toUTF8(this.buffer,0,this.position,!1)}toExtendedJSON(e){e=e||{};const t=te.toBase64(this.buffer),r=Number(this.sub_type).toString(16);return e.legacy?{$binary:t,$type:1===r.length?"0"+r:r}:{$binary:{base64:t,subType:1===r.length?"0"+r:r}}}toUUID(){if(this.sub_type===ne.SUBTYPE_UUID)return new ie(this.buffer.slice(0,this.position));throw new j(`Binary sub_type "${this.sub_type}" is not supported for converting to UUID. Only "${ne.SUBTYPE_UUID}" is currently supported.`)}static createFromHexString(e,t){return new ne(te.fromHex(e),t)}static createFromBase64(e,t){return new ne(te.fromBase64(e),t)}static fromExtendedJSON(e,t){let r,n;if(t=t||{},"$binary"in e?t.legacy&&"string"==typeof e.$binary&&"$type"in e?(n=e.$type?parseInt(e.$type,16):0,r=te.fromBase64(e.$binary)):"string"!=typeof e.$binary&&(n=e.$binary.subType?parseInt(e.$binary.subType,16):0,r=te.fromBase64(e.$binary.base64)):"$uuid"in e&&(n=4,r=ie.bytesFromString(e.$uuid)),!r)throw new j(`Unexpected Binary Extended JSON format ${JSON.stringify(e)}`);return n===L?new ie(r):new ne(r,n)}inspect(e,t,r){return r??=a,`Binary.createFromBase64(${r(te.toBase64(this.buffer.subarray(0,this.position)),t)}, ${r(this.sub_type,t)})`}}ne.BSON_BINARY_SUBTYPE_DEFAULT=0,ne.BUFFER_SIZE=256,ne.SUBTYPE_DEFAULT=0,ne.SUBTYPE_FUNCTION=1,ne.SUBTYPE_BYTE_ARRAY=2,ne.SUBTYPE_UUID_OLD=3,ne.SUBTYPE_UUID=4,ne.SUBTYPE_MD5=5,ne.SUBTYPE_ENCRYPTED=6,ne.SUBTYPE_COLUMN=7,ne.SUBTYPE_SENSITIVE=8,ne.SUBTYPE_USER_DEFINED=128;const oe=/^[0-9A-F]{32}$/i,se=/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i;class ie extends ne{constructor(e){let t;if(null==e)t=ie.generate();else if(e instanceof ie)t=te.toLocalBufferType(new Uint8Array(e.buffer));else if(ArrayBuffer.isView(e)&&16===e.byteLength)t=te.toLocalBufferType(e);else{if("string"!=typeof e)throw new j("Argument passed in UUID constructor must be a UUID, a 16 byte Buffer or a 32/36 character hex string (dashes excluded/included, format: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).");t=ie.bytesFromString(e)}super(t,L)}get id(){return this.buffer}set id(e){this.buffer=e}toHexString(e=!0){return e?[te.toHex(this.buffer.subarray(0,4)),te.toHex(this.buffer.subarray(4,6)),te.toHex(this.buffer.subarray(6,8)),te.toHex(this.buffer.subarray(8,10)),te.toHex(this.buffer.subarray(10,16))].join("-"):te.toHex(this.buffer)}toString(e){return"hex"===e?te.toHex(this.id):"base64"===e?te.toBase64(this.id):this.toHexString()}toJSON(){return this.toHexString()}equals(e){if(!e)return!1;if(e instanceof ie)return te.equals(e.id,this.id);try{return te.equals(new ie(e).id,this.id)}catch{return!1}}toBinary(){return new ne(this.id,ne.SUBTYPE_UUID)}static generate(){const e=te.randomBytes(16);return e[6]=15&e[6]|64,e[8]=63&e[8]|128,e}static isValid(e){return!!e&&("string"==typeof e?ie.isValidUUIDString(e):o(e)?16===e.byteLength:"Binary"===e._bsontype&&e.sub_type===this.SUBTYPE_UUID&&16===e.buffer.byteLength)}static createFromHexString(e){const t=ie.bytesFromString(e);return new ie(t)}static createFromBase64(e){return new ie(te.fromBase64(e))}static bytesFromString(e){if(!ie.isValidUUIDString(e))throw new j("UUID string representation must be 32 hex digits or canonical hyphenated representation");return te.fromHex(e.replace(/-/g,""))}static isValidUUIDString(e){return oe.test(e)||se.test(e)}inspect(e,t,r){return r??=a,`new UUID(${r(this.toHexString(),t)})`}}class ue extends re{get _bsontype(){return"Code"}constructor(e,t){super(),this.code=e.toString(),this.scope=t??null}toJSON(){return null!=this.scope?{code:this.code,scope:this.scope}:{code:this.code}}toExtendedJSON(){return this.scope?{$code:this.code,$scope:this.scope}:{$code:this.code}}static fromExtendedJSON(e){return new ue(e.$code,e.$scope)}inspect(e,t,r){r??=a;let n=r(this.code,t);const o=n.includes("\n");return null!=this.scope&&(n+=`,${o?"\n":" "}${r(this.scope,t)}`),`new Code(${o?"\n":""}${n}${o&&null===this.scope?"\n":""})`}}function ae(e){return null!=e&&"object"==typeof e&&"$id"in e&&null!=e.$id&&"$ref"in e&&"string"==typeof e.$ref&&(!("$db"in e)||"$db"in e&&"string"==typeof e.$db)}class ce extends re{get _bsontype(){return"DBRef"}constructor(e,t,r,n){super();const o=e.split(".");2===o.length&&(r=o.shift(),e=o.shift()),this.collection=e,this.oid=t,this.db=r,this.fields=n||{}}get namespace(){return this.collection}set namespace(e){this.collection=e}toJSON(){const e=Object.assign({$ref:this.collection,$id:this.oid},this.fields);return null!=this.db&&(e.$db=this.db),e}toExtendedJSON(e){e=e||{};let t={$ref:this.collection,$id:this.oid};return e.legacy||(this.db&&(t.$db=this.db),t=Object.assign(t,this.fields)),t}static fromExtendedJSON(e){const t=Object.assign({},e);return delete t.$ref,delete t.$id,delete t.$db,new ce(e.$ref,e.$id,e.$db,t)}inspect(e,t,r){r??=a;const n=[r(this.namespace,t),r(this.oid,t),...this.db?[r(this.db,t)]:[],...Object.keys(this.fields).length>0?[r(this.fields,t)]:[]];return n[1]=r===a?`new ObjectId(${n[1]})`:n[1],`new DBRef(${n.join(", ")})`}}function le(e){if(""===e)return e;let t=0;const r="-"===e[t],n="+"===e[t];(n||r)&&(t+=1);let o=!1;for(;t<e.length&&"0"===e[t];++t)o=!0;return o?`${r?"-":""}${e.length===t?"0":e.slice(t)}`:n?e.slice(1):e}let he;try{he=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch{}const de=4294967296,pe=0x10000000000000000,fe=pe/2,me={},ge={},Ee=/^(\+?0|(\+|-)?[1-9][0-9]*)$/;class Ae extends re{get _bsontype(){return"Long"}get __isLong__(){return!0}constructor(e=0,t,r){super(),"bigint"==typeof e?Object.assign(this,Ae.fromBigInt(e,!!t)):"string"==typeof e?Object.assign(this,Ae.fromString(e,!!t)):(this.low=0|e,this.high=0|t,this.unsigned=!!r)}static fromBits(e,t,r){return new Ae(e,t,r)}static fromInt(e,t){let r,n,o;return t?(o=0<=(e>>>=0)&&e<256)&&(n=ge[e],n)?n:(r=Ae.fromBits(e,(0|e)<0?-1:0,!0),o&&(ge[e]=r),r):(o=-128<=(e|=0)&&e<128)&&(n=me[e],n)?n:(r=Ae.fromBits(e,e<0?-1:0,!1),o&&(me[e]=r),r)}static fromNumber(e,t){if(isNaN(e))return t?Ae.UZERO:Ae.ZERO;if(t){if(e<0)return Ae.UZERO;if(e>=pe)return Ae.MAX_UNSIGNED_VALUE}else{if(e<=-fe)return Ae.MIN_VALUE;if(e+1>=fe)return Ae.MAX_VALUE}return e<0?Ae.fromNumber(-e,t).neg():Ae.fromBits(e%de|0,e/de|0,t)}static fromBigInt(e,t){return Ae.fromString(e.toString(),t)}static _fromString(e,t,r){if(0===e.length)throw new j("empty string");if(r<2||36<r)throw new j("radix");let n;if((n=e.indexOf("-"))>0)throw new j("interior hyphen");if(0===n)return Ae._fromString(e.substring(1),t,r).neg();const o=Ae.fromNumber(Math.pow(r,8));let s=Ae.ZERO;for(let t=0;t<e.length;t+=8){const n=Math.min(8,e.length-t),i=parseInt(e.substring(t,t+n),r);if(n<8){const e=Ae.fromNumber(Math.pow(r,n));s=s.mul(e).add(Ae.fromNumber(i))}else s=s.mul(o),s=s.add(Ae.fromNumber(i))}return s.unsigned=t,s}static fromStringStrict(e,t,r){let n=!1;if("number"==typeof t?(r=t,t=!1):n=!!t,r??=10,e.trim()!==e)throw new j(`Input: '${e}' contains leading and/or trailing whitespace`);if(!function(e,t){const r="0123456789abcdefghijklmnopqrstuvwxyz".slice(0,t=t??10);return!new RegExp(`[^-+${r}]`,"i").test(e)&&e}(e,r))throw new j(`Input: '${e}' contains invalid characters for radix: ${r}`);const o=le(e),s=Ae._fromString(o,n,r);if(s.toString(r).toLowerCase()!==o.toLowerCase())throw new j(`Input: ${e} is not representable as ${s.unsigned?"an unsigned":"a signed"} 64-bit Long ${null!=r?`with radix: ${r}`:""}`);return s}static fromString(e,t,r){let n=!1;return"number"==typeof t?(r=t,t=!1):n=!!t,r??=10,"NaN"===e&&r<24||("Infinity"===e||"+Infinity"===e||"-Infinity"===e)&&r<35?Ae.ZERO:Ae._fromString(e,n,r)}static fromBytes(e,t,r){return r?Ae.fromBytesLE(e,t):Ae.fromBytesBE(e,t)}static fromBytesLE(e,t){return new Ae(e[0]|e[1]<<8|e[2]<<16|e[3]<<24,e[4]|e[5]<<8|e[6]<<16|e[7]<<24,t)}static fromBytesBE(e,t){return new Ae(e[4]<<24|e[5]<<16|e[6]<<8|e[7],e[0]<<24|e[1]<<16|e[2]<<8|e[3],t)}static isLong(e){return null!=e&&"object"==typeof e&&"__isLong__"in e&&!0===e.__isLong__}static fromValue(e,t){return"number"==typeof e?Ae.fromNumber(e,t):"string"==typeof e?Ae.fromString(e,t):Ae.fromBits(e.low,e.high,"boolean"==typeof t?t:e.unsigned)}add(e){Ae.isLong(e)||(e=Ae.fromValue(e));const t=this.high>>>16,r=65535&this.high,n=this.low>>>16,o=65535&this.low,s=e.high>>>16,i=65535&e.high,u=e.low>>>16;let a=0,c=0,l=0,h=0;return h+=o+(65535&e.low),l+=h>>>16,h&=65535,l+=n+u,c+=l>>>16,l&=65535,c+=r+i,a+=c>>>16,c&=65535,a+=t+s,a&=65535,Ae.fromBits(l<<16|h,a<<16|c,this.unsigned)}and(e){return Ae.isLong(e)||(e=Ae.fromValue(e)),Ae.fromBits(this.low&e.low,this.high&e.high,this.unsigned)}compare(e){if(Ae.isLong(e)||(e=Ae.fromValue(e)),this.eq(e))return 0;const t=this.isNegative(),r=e.isNegative();return t&&!r?-1:!t&&r?1:this.unsigned?e.high>>>0>this.high>>>0||e.high===this.high&&e.low>>>0>this.low>>>0?-1:1:this.sub(e).isNegative()?-1:1}comp(e){return this.compare(e)}divide(e){if(Ae.isLong(e)||(e=Ae.fromValue(e)),e.isZero())throw new j("division by zero");if(he){if(!this.unsigned&&-2147483648===this.high&&-1===e.low&&-1===e.high)return this;const t=(this.unsigned?he.div_u:he.div_s)(this.low,this.high,e.low,e.high);return Ae.fromBits(t,he.get_high(),this.unsigned)}if(this.isZero())return this.unsigned?Ae.UZERO:Ae.ZERO;let t,r,n;if(this.unsigned){if(e.unsigned||(e=e.toUnsigned()),e.gt(this))return Ae.UZERO;if(e.gt(this.shru(1)))return Ae.UONE;n=Ae.UZERO}else{if(this.eq(Ae.MIN_VALUE))return e.eq(Ae.ONE)||e.eq(Ae.NEG_ONE)?Ae.MIN_VALUE:e.eq(Ae.MIN_VALUE)?Ae.ONE:(t=this.shr(1).div(e).shl(1),t.eq(Ae.ZERO)?e.isNegative()?Ae.ONE:Ae.NEG_ONE:(r=this.sub(e.mul(t)),n=t.add(r.div(e)),n));if(e.eq(Ae.MIN_VALUE))return this.unsigned?Ae.UZERO:Ae.ZERO;if(this.isNegative())return e.isNegative()?this.neg().div(e.neg()):this.neg().div(e).neg();if(e.isNegative())return this.div(e.neg()).neg();n=Ae.ZERO}for(r=this;r.gte(e);){t=Math.max(1,Math.floor(r.toNumber()/e.toNumber()));const o=Math.ceil(Math.log(t)/Math.LN2),s=o<=48?1:Math.pow(2,o-48);let i=Ae.fromNumber(t),u=i.mul(e);for(;u.isNegative()||u.gt(r);)t-=s,i=Ae.fromNumber(t,this.unsigned),u=i.mul(e);i.isZero()&&(i=Ae.ONE),n=n.add(i),r=r.sub(u)}return n}div(e){return this.divide(e)}equals(e){return Ae.isLong(e)||(e=Ae.fromValue(e)),(this.unsigned===e.unsigned||this.high>>>31!=1||e.high>>>31!=1)&&this.high===e.high&&this.low===e.low}eq(e){return this.equals(e)}getHighBits(){return this.high}getHighBitsUnsigned(){return this.high>>>0}getLowBits(){return this.low}getLowBitsUnsigned(){return this.low>>>0}getNumBitsAbs(){if(this.isNegative())return this.eq(Ae.MIN_VALUE)?64:this.neg().getNumBitsAbs();const e=0!==this.high?this.high:this.low;let t;for(t=31;t>0&&!(e&1<<t);t--);return 0!==this.high?t+33:t+1}greaterThan(e){return this.comp(e)>0}gt(e){return this.greaterThan(e)}greaterThanOrEqual(e){return this.comp(e)>=0}gte(e){return this.greaterThanOrEqual(e)}ge(e){return this.greaterThanOrEqual(e)}isEven(){return!(1&this.low)}isNegative(){return!this.unsigned&&this.high<0}isOdd(){return!(1&~this.low)}isPositive(){return this.unsigned||this.high>=0}isZero(){return 0===this.high&&0===this.low}lessThan(e){return this.comp(e)<0}lt(e){return this.lessThan(e)}lessThanOrEqual(e){return this.comp(e)<=0}lte(e){return this.lessThanOrEqual(e)}modulo(e){if(Ae.isLong(e)||(e=Ae.fromValue(e)),he){const t=(this.unsigned?he.rem_u:he.rem_s)(this.low,this.high,e.low,e.high);return Ae.fromBits(t,he.get_high(),this.unsigned)}return this.sub(this.div(e).mul(e))}mod(e){return this.modulo(e)}rem(e){return this.modulo(e)}multiply(e){if(this.isZero())return Ae.ZERO;if(Ae.isLong(e)||(e=Ae.fromValue(e)),he){const t=he.mul(this.low,this.high,e.low,e.high);return Ae.fromBits(t,he.get_high(),this.unsigned)}if(e.isZero())return Ae.ZERO;if(this.eq(Ae.MIN_VALUE))return e.isOdd()?Ae.MIN_VALUE:Ae.ZERO;if(e.eq(Ae.MIN_VALUE))return this.isOdd()?Ae.MIN_VALUE:Ae.ZERO;if(this.isNegative())return e.isNegative()?this.neg().mul(e.neg()):this.neg().mul(e).neg();if(e.isNegative())return this.mul(e.neg()).neg();if(this.lt(Ae.TWO_PWR_24)&&e.lt(Ae.TWO_PWR_24))return Ae.fromNumber(this.toNumber()*e.toNumber(),this.unsigned);const t=this.high>>>16,r=65535&this.high,n=this.low>>>16,o=65535&this.low,s=e.high>>>16,i=65535&e.high,u=e.low>>>16,a=65535&e.low;let c=0,l=0,h=0,d=0;return d+=o*a,h+=d>>>16,d&=65535,h+=n*a,l+=h>>>16,h&=65535,h+=o*u,l+=h>>>16,h&=65535,l+=r*a,c+=l>>>16,l&=65535,l+=n*u,c+=l>>>16,l&=65535,l+=o*i,c+=l>>>16,l&=65535,c+=t*a+r*u+n*i+o*s,c&=65535,Ae.fromBits(h<<16|d,c<<16|l,this.unsigned)}mul(e){return this.multiply(e)}negate(){return!this.unsigned&&this.eq(Ae.MIN_VALUE)?Ae.MIN_VALUE:this.not().add(Ae.ONE)}neg(){return this.negate()}not(){return Ae.fromBits(~this.low,~this.high,this.unsigned)}notEquals(e){return!this.equals(e)}neq(e){return this.notEquals(e)}ne(e){return this.notEquals(e)}or(e){return Ae.isLong(e)||(e=Ae.fromValue(e)),Ae.fromBits(this.low|e.low,this.high|e.high,this.unsigned)}shiftLeft(e){return Ae.isLong(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?Ae.fromBits(this.low<<e,this.high<<e|this.low>>>32-e,this.unsigned):Ae.fromBits(0,this.low<<e-32,this.unsigned)}shl(e){return this.shiftLeft(e)}shiftRight(e){return Ae.isLong(e)&&(e=e.toInt()),0==(e&=63)?this:e<32?Ae.fromBits(this.low>>>e|this.high<<32-e,this.high>>e,this.unsigned):Ae.fromBits(this.high>>e-32,this.high>=0?0:-1,this.unsigned)}shr(e){return this.shiftRight(e)}shiftRightUnsigned(e){if(Ae.isLong(e)&&(e=e.toInt()),0==(e&=63))return this;{const t=this.high;if(e<32){const r=this.low;return Ae.fromBits(r>>>e|t<<32-e,t>>>e,this.unsigned)}return 32===e?Ae.fromBits(t,0,this.unsigned):Ae.fromBits(t>>>e-32,0,this.unsigned)}}shr_u(e){return this.shiftRightUnsigned(e)}shru(e){return this.shiftRightUnsigned(e)}subtract(e){return Ae.isLong(e)||(e=Ae.fromValue(e)),this.add(e.neg())}sub(e){return this.subtract(e)}toInt(){return this.unsigned?this.low>>>0:this.low}toNumber(){return this.unsigned?(this.high>>>0)*de+(this.low>>>0):this.high*de+(this.low>>>0)}toBigInt(){return BigInt(this.toString())}toBytes(e){return e?this.toBytesLE():this.toBytesBE()}toBytesLE(){const e=this.high,t=this.low;return[255&t,t>>>8&255,t>>>16&255,t>>>24,255&e,e>>>8&255,e>>>16&255,e>>>24]}toBytesBE(){const e=this.high,t=this.low;return[e>>>24,e>>>16&255,e>>>8&255,255&e,t>>>24,t>>>16&255,t>>>8&255,255&t]}toSigned(){return this.unsigned?Ae.fromBits(this.low,this.high,!1):this}toString(e){if((e=e||10)<2||36<e)throw new j("radix");if(this.isZero())return"0";if(this.isNegative()){if(this.eq(Ae.MIN_VALUE)){const t=Ae.fromNumber(e),r=this.div(t),n=r.mul(t).sub(this);return r.toString(e)+n.toInt().toString(e)}return"-"+this.neg().toString(e)}const t=Ae.fromNumber(Math.pow(e,6),this.unsigned);let r=this,n="";for(;;){const o=r.div(t);let s=(r.sub(o.mul(t)).toInt()>>>0).toString(e);if(r=o,r.isZero())return s+n;for(;s.length<6;)s="0"+s;n=""+s+n}}toUnsigned(){return this.unsigned?this:Ae.fromBits(this.low,this.high,!0)}xor(e){return Ae.isLong(e)||(e=Ae.fromValue(e)),Ae.fromBits(this.low^e.low,this.high^e.high,this.unsigned)}eqz(){return this.isZero()}le(e){return this.lessThanOrEqual(e)}toExtendedJSON(e){return e&&e.relaxed?this.toNumber():{$numberLong:this.toString()}}static fromExtendedJSON(e,t){const{useBigInt64:r=!1,relaxed:n=!0}={...t};if(e.$numberLong.length>20)throw new j("$numberLong string is too long");if(!Ee.test(e.$numberLong))throw new j(`$numberLong string "${e.$numberLong}" is in an invalid format`);if(r){const t=BigInt(e.$numberLong);return BigInt.asIntN(64,t)}const o=Ae.fromString(e.$numberLong);return n?o.toNumber():o}inspect(e,t,r){return r??=a,`new Long(${r(this.toString(),t)}${this.unsigned?`, ${r(this.unsigned,t)}`:""})`}}Ae.TWO_PWR_24=Ae.fromInt(1<<24),Ae.MAX_UNSIGNED_VALUE=Ae.fromBits(-1,-1,!0),Ae.ZERO=Ae.fromInt(0),Ae.UZERO=Ae.fromInt(0,!0),Ae.ONE=Ae.fromInt(1),Ae.UONE=Ae.fromInt(1,!0),Ae.NEG_ONE=Ae.fromInt(-1),Ae.MAX_VALUE=Ae.fromBits(-1,2147483647,!1),Ae.MIN_VALUE=Ae.fromBits(0,-2147483648,!1);const ye=/^(\+|-)?(\d+|(\d*\.\d*))?(E|e)?([-+])?(\d+)?$/,Ce=/^(\+|-)?(Infinity|inf)$/i,Se=/^(\+|-)?NaN$/i,we=6111,be=-6176,ve=te.fromNumberArray([124,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse()),Oe=te.fromNumberArray([248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse()),_e=te.fromNumberArray([120,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0].reverse()),Be=/^([-+])?(\d+)?$/;function De(e){return!isNaN(parseInt(e,10))}function Te(e){const t=Ae.fromNumber(1e9);let r=Ae.fromNumber(0);if(!(e.parts[0]||e.parts[1]||e.parts[2]||e.parts[3]))return{quotient:e,rem:r};for(let n=0;n<=3;n++)r=r.shiftLeft(32),r=r.add(new Ae(e.parts[n],0)),e.parts[n]=r.div(t).low,r=r.modulo(t);return{quotient:e,rem:r}}function Ie(e,t){throw new j(`"${e}" is not a valid Decimal128 string - ${t}`)}class Fe extends re{get _bsontype(){return"Decimal128"}constructor(e){if(super(),"string"==typeof e)this.bytes=Fe.fromString(e).bytes;else{if(!o(e))throw new j("Decimal128 must take a Buffer or string");if(16!==e.byteLength)throw new j("Decimal128 must take a Buffer of 16 bytes");this.bytes=e}}static fromString(e){return Fe._fromString(e,{allowRounding:!1})}static fromStringWithRounding(e){return Fe._fromString(e,{allowRounding:!0})}static _fromString(e,t){let r=!1,n=!1,o=!1,s=!1,i=0,u=0,a=0,c=0,l=0;const h=[0];let d=0,p=0,f=0,m=0,g=new Ae(0,0),E=new Ae(0,0),A=0,y=0;if(e.length>=7e3)throw new j(e+" not a valid Decimal128 string");const C=e.match(ye),S=e.match(Ce),w=e.match(Se);if(!C&&!S&&!w||0===e.length)throw new j(e+" not a valid Decimal128 string");if(C){const t=C[2],r=C[4],n=C[5],o=C[6];r&&void 0===o&&Ie(e,"missing exponent power"),r&&void 0===t&&Ie(e,"missing exponent base"),void 0===r&&(n||o)&&Ie(e,"missing e before exponent")}if("+"!==e[y]&&"-"!==e[y]||(n=!0,r="-"===e[y++]),!De(e[y])&&"."!==e[y]){if("i"===e[y]||"I"===e[y])return new Fe(r?Oe:_e);if("N"===e[y])return new Fe(ve)}for(;De(e[y])||"."===e[y];)"."!==e[y]?(d<34&&("0"!==e[y]||s)&&(s||(l=u),s=!0,h[p++]=parseInt(e[y],10),d+=1),s&&(a+=1),o&&(c+=1),u+=1,y+=1):(o&&Ie(e,"contains multiple periods"),o=!0,y+=1);if(o&&!u)throw new j(e+" not a valid Decimal128 string");if("e"===e[y]||"E"===e[y]){const t=e.substr(++y).match(Be);if(!t||!t[2])return new Fe(ve);m=parseInt(t[0],10),y+=t[0].length}if(e[y])return new Fe(ve);if(d){if(f=d-1,i=a,1!==i)for(;"0"===e[l+i-1+Number(n)+Number(o)];)i-=1}else h[0]=0,a=1,d=1,i=0;for(m<=c&&c>m+16384?m=be:m-=c;m>we;){if(f+=1,f>=34){if(0===i){m=we;break}Ie(e,"overflow")}m-=1}if(t.allowRounding){for(;m<be||d<a;){if(0===f&&i<d){m=be,i=0;break}if(d<a?a-=1:f-=1,m<we)m+=1;else{if(h.join("").match(/^0+$/)){m=we;break}Ie(e,"overflow")}}if(f+1<i){let t=u;o&&(l+=1,t+=1),n&&(l+=1,t+=1);const s=parseInt(e[l+f+1],10);let i=0;if(s>=5&&(i=1,5===s)){i=h[f]%2==1?1:0;for(let r=l+f+2;r<t;r++)if(parseInt(e[r],10)){i=1;break}}if(i){let e=f;for(;e>=0&&++h[e]>9;e--)if(h[e]=0,0===e){if(!(m<we))return new Fe(r?Oe:_e);m+=1,h[e]=1}}}}else{for(;m<be||d<a;){if(0===f){if(0===i){m=be;break}Ie(e,"exponent underflow")}d<a?("0"!==e[a-1+Number(n)+Number(o)]&&0!==i&&Ie(e,"inexact rounding"),a-=1):(0!==h[f]&&Ie(e,"inexact rounding"),f-=1),m<we?m+=1:Ie(e,"overflow")}f+1<i&&(o&&(l+=1),n&&(l+=1),0!==parseInt(e[l+f+1],10)&&Ie(e,"inexact rounding"))}if(g=Ae.fromNumber(0),E=Ae.fromNumber(0),0===i)g=Ae.fromNumber(0),E=Ae.fromNumber(0);else if(f<17){let e=0;for(E=Ae.fromNumber(h[e++]),g=new Ae(0,0);e<=f;e++)E=E.multiply(Ae.fromNumber(10)),E=E.add(Ae.fromNumber(h[e]))}else{let e=0;for(g=Ae.fromNumber(h[e++]);e<=f-17;e++)g=g.multiply(Ae.fromNumber(10)),g=g.add(Ae.fromNumber(h[e]));for(E=Ae.fromNumber(h[e++]);e<=f;e++)E=E.multiply(Ae.fromNumber(10)),E=E.add(Ae.fromNumber(h[e]))}const b=function(e,t){if(!e&&!t)return{high:Ae.fromNumber(0),low:Ae.fromNumber(0)};const r=e.shiftRightUnsigned(32),n=new Ae(e.getLowBits(),0),o=t.shiftRightUnsigned(32),s=new Ae(t.getLowBits(),0);let i=r.multiply(o),u=r.multiply(s);const a=n.multiply(o);let c=n.multiply(s);return i=i.add(u.shiftRightUnsigned(32)),u=new Ae(u.getLowBits(),0).add(a).add(c.shiftRightUnsigned(32)),i=i.add(u.shiftRightUnsigned(32)),c=u.shiftLeft(32).add(new Ae(c.getLowBits(),0)),{high:i,low:c}}(g,Ae.fromString("100000000000000000"));b.low=b.low.add(E),function(e,t){const r=e.high>>>0,n=t.high>>>0;return r<n||r===n&&e.low>>>0<t.low>>>0}(b.low,E)&&(b.high=b.high.add(Ae.fromNumber(1))),A=m+6176;const v={low:Ae.fromNumber(0),high:Ae.fromNumber(0)};b.high.shiftRightUnsigned(49).and(Ae.fromNumber(1)).equals(Ae.fromNumber(1))?(v.high=v.high.or(Ae.fromNumber(3).shiftLeft(61)),v.high=v.high.or(Ae.fromNumber(A).and(Ae.fromNumber(16383).shiftLeft(47))),v.high=v.high.or(b.high.and(Ae.fromNumber(0x7fffffffffff)))):(v.high=v.high.or(Ae.fromNumber(16383&A).shiftLeft(49)),v.high=v.high.or(b.high.and(Ae.fromNumber(562949953421311)))),v.low=b.low,r&&(v.high=v.high.or(Ae.fromString("9223372036854775808")));const O=te.allocateUnsafe(16);return y=0,O[y++]=255&v.low.low,O[y++]=v.low.low>>8&255,O[y++]=v.low.low>>16&255,O[y++]=v.low.low>>24&255,O[y++]=255&v.low.high,O[y++]=v.low.high>>8&255,O[y++]=v.low.high>>16&255,O[y++]=v.low.high>>24&255,O[y++]=255&v.high.low,O[y++]=v.high.low>>8&255,O[y++]=v.high.low>>16&255,O[y++]=v.high.low>>24&255,O[y++]=255&v.high.high,O[y++]=v.high.high>>8&255,O[y++]=v.high.high>>16&255,O[y++]=v.high.high>>24&255,new Fe(O)}toString(){let e,t=0;const r=new Array(36);for(let e=0;e<r.length;e++)r[e]=0;let n,o,s,i=0,u=!1,a={parts:[0,0,0,0]};const c=[];i=0;const l=this.bytes,h=l[i++]|l[i++]<<8|l[i++]<<16|l[i++]<<24,d=l[i++]|l[i++]<<8|l[i++]<<16|l[i++]<<24,p=l[i++]|l[i++]<<8|l[i++]<<16|l[i++]<<24,f=l[i++]|l[i++]<<8|l[i++]<<16|l[i++]<<24;i=0,(new Ae(h,d),new Ae(p,f)).lessThan(Ae.ZERO)&&c.push("-");const m=f>>26&31;if(m>>3==3){if(30===m)return c.join("")+"Infinity";if(31===m)return"NaN";e=f>>15&16383,n=8+(f>>14&1)}else n=f>>14&7,e=f>>17&16383;const g=e-6176;if(a.parts[0]=(16383&f)+((15&n)<<14),a.parts[1]=p,a.parts[2]=d,a.parts[3]=h,0===a.parts[0]&&0===a.parts[1]&&0===a.parts[2]&&0===a.parts[3])u=!0;else for(s=3;s>=0;s--){let e=0;const t=Te(a);if(a=t.quotient,e=t.rem.low,e)for(o=8;o>=0;o--)r[9*s+o]=e%10,e=Math.floor(e/10)}if(u)t=1,r[i]=0;else for(t=36;!r[i];)t-=1,i+=1;const E=t-1+g;if(E>=34||E<=-7||g>0){if(t>34)return c.push("0"),g>0?c.push(`E+${g}`):g<0&&c.push(`E${g}`),c.join("");c.push(`${r[i++]}`),t-=1,t&&c.push(".");for(let e=0;e<t;e++)c.push(`${r[i++]}`);c.push("E"),E>0?c.push(`+${E}`):c.push(`${E}`)}else if(g>=0)for(let e=0;e<t;e++)c.push(`${r[i++]}`);else{let e=t+g;if(e>0)for(let t=0;t<e;t++)c.push(`${r[i++]}`);else c.push("0");for(c.push(".");e++<0;)c.push("0");for(let n=0;n<t-Math.max(e-1,0);n++)c.push(`${r[i++]}`)}return c.join("")}toJSON(){return{$numberDecimal:this.toString()}}toExtendedJSON(){return{$numberDecimal:this.toString()}}static fromExtendedJSON(e){return Fe.fromString(e.$numberDecimal)}inspect(e,t,r){return r??=a,`new Decimal128(${r(this.toString(),t)})`}}class Re extends re{get _bsontype(){return"Double"}constructor(e){super(),e instanceof Number&&(e=e.valueOf()),this.value=+e}static fromString(e){const t=Number(e);if("NaN"===e)return new Re(NaN);if("Infinity"===e)return new Re(1/0);if("-Infinity"===e)return new Re(-1/0);if(!Number.isFinite(t))throw new j(`Input: ${e} is not representable as a Double`);if(e.trim()!==e)throw new j(`Input: '${e}' contains whitespace`);if(""===e)throw new j("Input is an empty string");if(/[^-0-9.+eE]/.test(e))throw new j(`Input: '${e}' is not in decimal or exponential notation`);return new Re(t)}valueOf(){return this.value}toJSON(){return this.value}toString(e){return this.value.toString(e)}toExtendedJSON(e){return e&&(e.legacy||e.relaxed&&isFinite(this.value))?this.value:Object.is(Math.sign(this.value),-0)?{$numberDouble:"-0.0"}:{$numberDouble:Number.isInteger(this.value)?this.value.toFixed(1):this.value.toString()}}static fromExtendedJSON(e,t){const r=parseFloat(e.$numberDouble);return t&&t.relaxed?r:new Re(r)}inspect(e,t,r){return r??=a,`new Double(${r(this.value,t)})`}}class Ne extends re{get _bsontype(){return"Int32"}constructor(e){super(),e instanceof Number&&(e=e.valueOf()),this.value=0|+e}static fromString(e){const t=le(e),r=Number(e);if(l<r)throw new j(`Input: '${e}' is larger than the maximum value for Int32`);if(h>r)throw new j(`Input: '${e}' is smaller than the minimum value for Int32`);if(!Number.isSafeInteger(r))throw new j(`Input: '${e}' is not a safe integer`);if(r.toString()!==t)throw new j(`Input: '${e}' is not a valid Int32 string`);return new Ne(r)}valueOf(){return this.value}toString(e){return this.value.toString(e)}toJSON(){return this.value}toExtendedJSON(e){return e&&(e.relaxed||e.legacy)?this.value:{$numberInt:this.value.toString()}}static fromExtendedJSON(e,t){return t&&t.relaxed?parseInt(e.$numberInt,10):new Ne(e.$numberInt)}inspect(e,t,r){return r??=a,`new Int32(${r(this.value,t)})`}}class Me extends re{get _bsontype(){return"MaxKey"}toExtendedJSON(){return{$maxKey:1}}static fromExtendedJSON(){return new Me}inspect(){return"new MaxKey()"}}class xe extends re{get _bsontype(){return"MinKey"}toExtendedJSON(){return{$minKey:1}}static fromExtendedJSON(){return new xe}inspect(){return"new MinKey()"}}const Pe=new Float64Array(1),ke=new Uint8Array(Pe.buffer,0,8);Pe[0]=-1;const Le=0===ke[7],Ue={getNonnegativeInt32LE(e,t){if(e[t+3]>127)throw new RangeError(`Size cannot be negative at offset: ${t}`);return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24},getInt32LE:(e,t)=>e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24,getUint32LE:(e,t)=>e[t]+256*e[t+1]+65536*e[t+2]+16777216*e[t+3],getUint32BE:(e,t)=>e[t+3]+256*e[t+2]+65536*e[t+1]+16777216*e[t],getBigInt64LE(e,t){const r=Ue.getUint32LE(e,t),n=Ue.getUint32LE(e,t+4);return(BigInt(n)<<BigInt(32))+BigInt(r)},getFloat64LE:Le?(e,t)=>(ke[7]=e[t],ke[6]=e[t+1],ke[5]=e[t+2],ke[4]=e[t+3],ke[3]=e[t+4],ke[2]=e[t+5],ke[1]=e[t+6],ke[0]=e[t+7],Pe[0]):(e,t)=>(ke[0]=e[t],ke[1]=e[t+1],ke[2]=e[t+2],ke[3]=e[t+3],ke[4]=e[t+4],ke[5]=e[t+5],ke[6]=e[t+6],ke[7]=e[t+7],Pe[0]),setInt32BE:(e,t,r)=>(e[t+3]=r,r>>>=8,e[t+2]=r,r>>>=8,e[t+1]=r,r>>>=8,e[t]=r,4),setInt32LE:(e,t,r)=>(e[t]=r,r>>>=8,e[t+1]=r,r>>>=8,e[t+2]=r,r>>>=8,e[t+3]=r,4),setBigInt64LE(e,t,r){const n=BigInt(4294967295);let o=Number(r&n);e[t]=o,o>>=8,e[t+1]=o,o>>=8,e[t+2]=o,o>>=8,e[t+3]=o;let s=Number(r>>BigInt(32)&n);return e[t+4]=s,s>>=8,e[t+5]=s,s>>=8,e[t+6]=s,s>>=8,e[t+7]=s,8},setFloat64LE:Le?(e,t,r)=>(Pe[0]=r,e[t]=ke[7],e[t+1]=ke[6],e[t+2]=ke[5],e[t+3]=ke[4],e[t+4]=ke[3],e[t+5]=ke[2],e[t+6]=ke[1],e[t+7]=ke[0],8):(e,t,r)=>(Pe[0]=r,e[t]=ke[0],e[t+1]=ke[1],e[t+2]=ke[2],e[t+3]=ke[3],e[t+4]=ke[4],e[t+5]=ke[5],e[t+6]=ke[6],e[t+7]=ke[7],8)},je=new RegExp("^[0-9a-fA-F]{24}$");let $e=null;class ze extends re{get _bsontype(){return"ObjectId"}constructor(e){let t;if(super(),"object"==typeof e&&e&&"id"in e){if("string"!=typeof e.id&&!ArrayBuffer.isView(e.id))throw new j("Argument passed in must have an id that is of type string or Buffer");t="toHexString"in e&&"function"==typeof e.toHexString?te.fromHex(e.toHexString()):e.id}else t=e;if(null==t||"number"==typeof t)this.buffer=ze.generate("number"==typeof t?t:void 0);else if(ArrayBuffer.isView(t)&&12===t.byteLength)this.buffer=te.toLocalBufferType(t);else{if("string"!=typeof t)throw new j("Argument passed in does not match the accepted types");if(24!==t.length||!je.test(t))throw new j("input must be a 24 character hex string, 12 byte Uint8Array, or an integer");this.buffer=te.fromHex(t)}ze.cacheHexString&&(this.__id=te.toHex(this.id))}get id(){return this.buffer}set id(e){this.buffer=e,ze.cacheHexString&&(this.__id=te.toHex(e))}toHexString(){if(ze.cacheHexString&&this.__id)return this.__id;const e=te.toHex(this.id);return ze.cacheHexString&&!this.__id&&(this.__id=e),e}static getInc(){return ze.index=(ze.index+1)%16777215}static generate(e){"number"!=typeof e&&(e=Math.floor(Date.now()/1e3));const t=ze.getInc(),r=te.allocateUnsafe(12);return Ue.setInt32BE(r,0,e),null===$e&&($e=te.randomBytes(5)),r[4]=$e[0],r[5]=$e[1],r[6]=$e[2],r[7]=$e[3],r[8]=$e[4],r[11]=255&t,r[10]=t>>8&255,r[9]=t>>16&255,r}toString(e){return"base64"===e?te.toBase64(this.id):this.toHexString()}toJSON(){return this.toHexString()}static is(e){return null!=e&&"object"==typeof e&&"_bsontype"in e&&"ObjectId"===e._bsontype}equals(e){if(null==e)return!1;if(ze.is(e))return this.buffer[11]===e.buffer[11]&&te.equals(this.buffer,e.buffer);if("string"==typeof e)return e.toLowerCase()===this.toHexString();if("object"==typeof e&&"function"==typeof e.toHexString){const t=e.toHexString(),r=this.toHexString();return"string"==typeof t&&t.toLowerCase()===r}return!1}getTimestamp(){const e=new Date,t=Ue.getUint32BE(this.buffer,0);return e.setTime(1e3*Math.floor(t)),e}static createPk(){return new ze}serializeInto(e,t){return e[t]=this.buffer[0],e[t+1]=this.buffer[1],e[t+2]=this.buffer[2],e[t+3]=this.buffer[3],e[t+4]=this.buffer[4],e[t+5]=this.buffer[5],e[t+6]=this.buffer[6],e[t+7]=this.buffer[7],e[t+8]=this.buffer[8],e[t+9]=this.buffer[9],e[t+10]=this.buffer[10],e[t+11]=this.buffer[11],12}static createFromTime(e){const t=te.allocate(12);for(let e=11;e>=4;e--)t[e]=0;return Ue.setInt32BE(t,0,e),new ze(t)}static createFromHexString(e){if(24!==e?.length)throw new j("hex string must be 24 characters");return new ze(te.fromHex(e))}static createFromBase64(e){if(16!==e?.length)throw new j("base64 string must be 16 characters");return new ze(te.fromBase64(e))}static isValid(e){if(null==e)return!1;try{return new ze(e),!0}catch{return!1}}toExtendedJSON(){return this.toHexString?{$oid:this.toHexString()}:{$oid:this.toString("hex")}}static fromExtendedJSON(e){return new ze(e.$oid)}inspect(e,t,r){return r??=a,`new ObjectId(${r(this.toHexString(),t)})`}}function Ve(e,t,r){let n=5;if(Array.isArray(e))for(let o=0;o<e.length;o++)n+=He(o.toString(),e[o],t,!0,r);else{"function"==typeof e?.toBSON&&(e=e.toBSON());for(const o of Object.keys(e))n+=He(o,e[o],t,!1,r)}return n}function He(e,t,r=!1,o=!1,i=!1){switch("function"==typeof t?.toBSON&&(t=t.toBSON()),typeof t){case"string":return 1+te.utf8ByteLength(e)+1+4+te.utf8ByteLength(t)+1;case"number":return Math.floor(t)===t&&t>=m&&t<=f&&t>=h&&t<=l?(null!=e?te.utf8ByteLength(e)+1:0)+5:(null!=e?te.utf8ByteLength(e)+1:0)+9;case"undefined":return o||!i?(null!=e?te.utf8ByteLength(e)+1:0)+1:0;case"boolean":return(null!=e?te.utf8ByteLength(e)+1:0)+2;case"object":if(null!=t&&"string"==typeof t._bsontype&&t[Symbol.for("@@mdb.bson.version")]!==c)throw new $;if(null==t||"MinKey"===t._bsontype||"MaxKey"===t._bsontype)return(null!=e?te.utf8ByteLength(e)+1:0)+1;if("ObjectId"===t._bsontype)return(null!=e?te.utf8ByteLength(e)+1:0)+13;if(t instanceof Date||u(t))return(null!=e?te.utf8ByteLength(e)+1:0)+9;if(ArrayBuffer.isView(t)||t instanceof ArrayBuffer||n(t))return(null!=e?te.utf8ByteLength(e)+1:0)+6+t.byteLength;if("Long"===t._bsontype||"Double"===t._bsontype||"Timestamp"===t._bsontype)return(null!=e?te.utf8ByteLength(e)+1:0)+9;if("Decimal128"===t._bsontype)return(null!=e?te.utf8ByteLength(e)+1:0)+17;if("Code"===t._bsontype)return null!=t.scope&&Object.keys(t.scope).length>0?(null!=e?te.utf8ByteLength(e)+1:0)+1+4+4+te.utf8ByteLength(t.code.toString())+1+Ve(t.scope,r,i):(null!=e?te.utf8ByteLength(e)+1:0)+1+4+te.utf8ByteLength(t.code.toString())+1;if("Binary"===t._bsontype){const r=t;return r.sub_type===ne.SUBTYPE_BYTE_ARRAY?(null!=e?te.utf8ByteLength(e)+1:0)+(r.position+1+4+1+4):(null!=e?te.utf8ByteLength(e)+1:0)+(r.position+1+4+1)}if("Symbol"===t._bsontype)return(null!=e?te.utf8ByteLength(e)+1:0)+te.utf8ByteLength(t.value)+4+1+1;if("DBRef"===t._bsontype){const n=Object.assign({$ref:t.collection,$id:t.oid},t.fields);return null!=t.db&&(n.$db=t.db),(null!=e?te.utf8ByteLength(e)+1:0)+1+Ve(n,r,i)}return t instanceof RegExp||s(t)?(null!=e?te.utf8ByteLength(e)+1:0)+1+te.utf8ByteLength(t.source)+1+(t.global?1:0)+(t.ignoreCase?1:0)+(t.multiline?1:0)+1:"BSONRegExp"===t._bsontype?(null!=e?te.utf8ByteLength(e)+1:0)+1+te.utf8ByteLength(t.pattern)+1+te.utf8ByteLength(t.options)+1:(null!=e?te.utf8ByteLength(e)+1:0)+Ve(t,r,i)+1;case"function":if(r)return(null!=e?te.utf8ByteLength(e)+1:0)+1+4+te.utf8ByteLength(t.toString())+1}return 0}ze.index=Math.floor(16777215*Math.random());class qe extends re{get _bsontype(){return"BSONRegExp"}constructor(e,t){if(super(),this.pattern=e,this.options=(t??"").split("").sort().join(""),-1!==this.pattern.indexOf("\0"))throw new j(`BSON Regex patterns cannot contain null bytes, found: ${JSON.stringify(this.pattern)}`);if(-1!==this.options.indexOf("\0"))throw new j(`BSON Regex options cannot contain null bytes, found: ${JSON.stringify(this.options)}`);for(let e=0;e<this.options.length;e++)if("i"!==this.options[e]&&"m"!==this.options[e]&&"x"!==this.options[e]&&"l"!==this.options[e]&&"s"!==this.options[e]&&"u"!==this.options[e])throw new j(`The regular expression option [${this.options[e]}] is not supported`)}static parseOptions(e){return e?e.split("").sort().join(""):""}toExtendedJSON(e){return(e=e||{}).legacy?{$regex:this.pattern,$options:this.options}:{$regularExpression:{pattern:this.pattern,options:this.options}}}static fromExtendedJSON(e){if("$regex"in e){if("string"==typeof e.$regex)return new qe(e.$regex,qe.parseOptions(e.$options));if("BSONRegExp"===e.$regex._bsontype)return e}if("$regularExpression"in e)return new qe(e.$regularExpression.pattern,qe.parseOptions(e.$regularExpression.options));throw new j(`Unexpected BSONRegExp EJSON object form: ${JSON.stringify(e)}`)}inspect(e,t,r){const n=function(e){if(null!=e&&"object"==typeof e&&"stylize"in e&&"function"==typeof e.stylize)return e.stylize}(t)??(e=>e);return r??=a,`new BSONRegExp(${n(r(this.pattern),"regexp")}, ${n(r(this.options),"regexp")})`}}class We extends re{get _bsontype(){return"BSONSymbol"}constructor(e){super(),this.value=e}valueOf(){return this.value}toString(){return this.value}toJSON(){return this.value}toExtendedJSON(){return{$symbol:this.value}}static fromExtendedJSON(e){return new We(e.$symbol)}inspect(e,t,r){return r??=a,`new BSONSymbol(${r(this.value,t)})`}}const Ge=Ae;class Ke extends Ge{get _bsontype(){return"Timestamp"}constructor(e){if(null==e)super(0,0,!0);else if("bigint"==typeof e)super(e,!0);else if(Ae.isLong(e))super(e.low,e.high,!0);else{if("object"!=typeof e||!("t"in e)||!("i"in e))throw new j("A Timestamp can only be constructed with: bigint, Long, or { t: number; i: number }");{if("number"!=typeof e.t&&("object"!=typeof e.t||"Int32"!==e.t._bsontype))throw new j("Timestamp constructed from { t, i } must provide t as a number");if("number"!=typeof e.i&&("object"!=typeof e.i||"Int32"!==e.i._bsontype))throw new j("Timestamp constructed from { t, i } must provide i as a number");const t=Number(e.t),r=Number(e.i);if(t<0||Number.isNaN(t))throw new j("Timestamp constructed from { t, i } must provide a positive t");if(r<0||Number.isNaN(r))throw new j("Timestamp constructed from { t, i } must provide a positive i");if(t>4294967295)throw new j("Timestamp constructed from { t, i } must provide t equal or less than uint32 max");if(r>4294967295)throw new j("Timestamp constructed from { t, i } must provide i equal or less than uint32 max");super(r,t,!0)}}}toJSON(){return{$timestamp:this.toString()}}static fromInt(e){return new Ke(Ae.fromInt(e,!0))}static fromNumber(e){return new Ke(Ae.fromNumber(e,!0))}static fromBits(e,t){return new Ke({i:e,t})}static fromString(e,t){return new Ke(Ae.fromString(e,!0,t))}toExtendedJSON(){return{$timestamp:{t:this.high>>>0,i:this.low>>>0}}}static fromExtendedJSON(e){const t=Ae.isLong(e.$timestamp.i)?e.$timestamp.i.getLowBitsUnsigned():e.$timestamp.i,r=Ae.isLong(e.$timestamp.t)?e.$timestamp.t.getLowBitsUnsigned():e.$timestamp.t;return new Ke({t:r,i:t})}inspect(e,t,r){return r??=a,`new Timestamp({ t: ${r(this.high>>>0,t)}, i: ${r(this.low>>>0,t)} })`}}Ke.MAX_VALUE=Ae.MAX_UNSIGNED_VALUE;const Ye=Ae.fromNumber(f),Je=Ae.fromNumber(m);function Xe(e,t,r){const n=(t=null==t?{}:t)&&t.index?t.index:0,o=Ue.getInt32LE(e,n);if(o<5)throw new j(`bson size must be >= 5, is ${o}`);if(t.allowObjectSmallerThanBufferSize&&e.length<o)throw new j(`buffer length ${e.length} must be >= bson size ${o}`);if(!t.allowObjectSmallerThanBufferSize&&e.length!==o)throw new j(`buffer length ${e.length} must === bson size ${o}`);if(o+n>e.byteLength)throw new j(`(bson size ${o} + options.index ${n} must be <= buffer length ${e.byteLength})`);if(0!==e[n+o-1])throw new j("One object, sized correctly, with a spot for an EOO, but the EOO isn't 0x00");return Qe(e,n,t,r)}const Ze=/^\$ref$|^\$id$|^\$db$/;function Qe(e,t,r,n=!1){const o=null==r.fieldsAsRaw?null:r.fieldsAsRaw,s=null!=r.raw&&r.raw,i="boolean"==typeof r.bsonRegExp&&r.bsonRegExp,u=r.promoteBuffers??!1,a=r.promoteLongs??!0,c=r.promoteValues??!0,l=r.useBigInt64??!1;if(l&&!c)throw new j("Must either request bigint or Long for int64 deserialization");if(l&&!a)throw new j("Must either request bigint or Long for int64 deserialization");let h,d,p=!0;const f=(null==r.validation?{utf8:!0}:r.validation).utf8;if("boolean"==typeof f)h=f;else{p=!1;const e=Object.keys(f).map((function(e){return f[e]}));if(0===e.length)throw new j("UTF-8 validation setting cannot be empty");if("boolean"!=typeof e[0])throw new j("Invalid UTF-8 validation option, must specify boolean values");if(h=e[0],!e.every((e=>e===h)))throw new j("Invalid UTF-8 validation option - keys must be all true or all false")}if(!p){d=new Set;for(const e of Object.keys(f))d.add(e)}const m=t;if(e.length<5)throw new j("corrupt bson message < 5 bytes long");const k=Ue.getInt32LE(e,t);if(t+=4,k<5||k>e.length)throw new j("corrupt bson message");const U=n?[]:{};let $=0,z=!n&&null;for(;;){const f=e[t++];if(0===f)break;let m=t;for(;0!==e[m]&&m<e.length;)m++;if(m>=e.byteLength)throw new j("Bad BSON Document: illegal CString");const k=n?$++:te.toUTF8(e,t,m,!1);let V,H=!0;if(H=p||d?.has(k)?h:!h,!1!==z&&"$"===k[0]&&(z=Ze.test(k)),t=m+1,f===E){const r=Ue.getInt32LE(e,t);if(t+=4,r<=0||r>e.length-t||0!==e[t+r-1])throw new j("bad string length in bson");V=te.toUTF8(e,t,t+r-1,H),t+=r}else if(f===w){const r=te.allocateUnsafe(12);for(let n=0;n<12;n++)r[n]=e[t+n];V=new ze(r),t+=12}else if(f===F&&!1===c)V=new Ne(Ue.getInt32LE(e,t)),t+=4;else if(f===F)V=Ue.getInt32LE(e,t),t+=4;else if(f===g)V=Ue.getFloat64LE(e,t),t+=8,!1===c&&(V=new Re(V));else if(f===v){const r=Ue.getInt32LE(e,t),n=Ue.getInt32LE(e,t+4);t+=8,V=new Date(new Ae(r,n).toNumber())}else if(f===b){if(0!==e[t]&&1!==e[t])throw new j("illegal boolean type value");V=1===e[t++]}else if(f===A){const n=t,o=Ue.getInt32LE(e,t);if(o<=0||o>e.length-t)throw new j("bad embedded document length in bson");if(s)V=e.slice(t,t+o);else{let t=r;p||(t={...r,validation:{utf8:H}}),V=Qe(e,n,t,!1)}t+=o}else if(f===y){const n=t,s=Ue.getInt32LE(e,t);let i=r;const u=t+s;if(o&&o[k]&&(i={...r,raw:!0}),p||(i={...i,validation:{utf8:H}}),V=Qe(e,n,i,!0),0!==e[(t+=s)-1])throw new j("invalid array terminator byte");if(t!==u)throw new j("corrupted array bson")}else if(f===S)V=void 0;else if(f===O)V=null;else if(f===N)if(l)V=Ue.getBigInt64LE(e,t),t+=8;else{const r=Ue.getInt32LE(e,t),n=Ue.getInt32LE(e,t+4);t+=8;const o=new Ae(r,n);V=a&&!0===c&&o.lessThanOrEqual(Ye)&&o.greaterThanOrEqual(Je)?o.toNumber():o}else if(f===M){const r=te.allocateUnsafe(16);for(let n=0;n<16;n++)r[n]=e[t+n];t+=16,V=new Fe(r)}else if(f===C){let r=Ue.getInt32LE(e,t);t+=4;const n=r,o=e[t++];if(r<0)throw new j("Negative binary type element size found");if(r>e.byteLength)throw new j("Binary type size larger than document size");if(null!=e.slice){if(o===ne.SUBTYPE_BYTE_ARRAY){if(r=Ue.getInt32LE(e,t),t+=4,r<0)throw new j("Negative binary type element size found for subtype 0x02");if(r>n-4)throw new j("Binary type with subtype 0x02 contains too long binary size");if(r<n-4)throw new j("Binary type with subtype 0x02 contains too short binary size")}u&&c?V=te.toLocalBufferType(e.slice(t,t+r)):(V=new ne(e.slice(t,t+r),o),o===L&&ie.isValid(V)&&(V=V.toUUID()))}else{if(o===ne.SUBTYPE_BYTE_ARRAY){if(r=Ue.getInt32LE(e,t),t+=4,r<0)throw new j("Negative binary type element size found for subtype 0x02");if(r>n-4)throw new j("Binary type with subtype 0x02 contains too long binary size");if(r<n-4)throw new j("Binary type with subtype 0x02 contains too short binary size")}if(u&&c)for(V=te.allocateUnsafe(r),m=0;m<r;m++)V[m]=e[t+m];else V=new ne(e.slice(t,t+r),o),o===L&&ie.isValid(V)&&(V=V.toUUID())}t+=r}else if(f===_&&!1===i){for(m=t;0!==e[m]&&m<e.length;)m++;if(m>=e.length)throw new j("Bad BSON Document: illegal CString");const r=te.toUTF8(e,t,m,!1);for(m=t=m+1;0!==e[m]&&m<e.length;)m++;if(m>=e.length)throw new j("Bad BSON Document: illegal CString");const n=te.toUTF8(e,t,m,!1);t=m+1;const o=new Array(n.length);for(m=0;m<n.length;m++)switch(n[m]){case"m":o[m]="m";break;case"s":o[m]="g";break;case"i":o[m]="i"}V=new RegExp(r,o.join(""))}else if(f===_&&!0===i){for(m=t;0!==e[m]&&m<e.length;)m++;if(m>=e.length)throw new j("Bad BSON Document: illegal CString");const r=te.toUTF8(e,t,m,!1);for(m=t=m+1;0!==e[m]&&m<e.length;)m++;if(m>=e.length)throw new j("Bad BSON Document: illegal CString");const n=te.toUTF8(e,t,m,!1);t=m+1,V=new qe(r,n)}else if(f===T){const r=Ue.getInt32LE(e,t);if(t+=4,r<=0||r>e.length-t||0!==e[t+r-1])throw new j("bad string length in bson");const n=te.toUTF8(e,t,t+r-1,H);V=c?n:new We(n),t+=r}else if(f===R)V=new Ke({i:Ue.getUint32LE(e,t),t:Ue.getUint32LE(e,t+4)}),t+=8;else if(f===x)V=new xe;else if(f===P)V=new Me;else if(f===D){const r=Ue.getInt32LE(e,t);if(t+=4,r<=0||r>e.length-t||0!==e[t+r-1])throw new j("bad string length in bson");const n=te.toUTF8(e,t,t+r-1,H);V=new ue(n),t+=r}else if(f===I){const n=Ue.getInt32LE(e,t);if(t+=4,n<13)throw new j("code_w_scope total size shorter minimum expected length");const o=Ue.getInt32LE(e,t);if(t+=4,o<=0||o>e.length-t||0!==e[t+o-1])throw new j("bad string length in bson");const s=te.toUTF8(e,t,t+o-1,H),i=t+=o,u=Ue.getInt32LE(e,t),a=Qe(e,i,r,!1);if(t+=u,n<8+u+o)throw new j("code_w_scope total size is too short, truncating scope");if(n>8+u+o)throw new j("code_w_scope total size is too long, clips outer document");V=new ue(s,a)}else{if(f!==B)throw new j(`Detected unknown BSON type ${f.toString(16)} for fieldname "${k}"`);{const r=Ue.getInt32LE(e,t);if(t+=4,r<=0||r>e.length-t||0!==e[t+r-1])throw new j("bad string length in bson");const n=te.toUTF8(e,t,t+r-1,H);t+=r;const o=te.allocateUnsafe(12);for(let r=0;r<12;r++)o[r]=e[t+r];const s=new ze(o);t+=12,V=new ce(n,s)}}"__proto__"===k?Object.defineProperty(U,k,{value:V,writable:!0,enumerable:!0,configurable:!0}):U[k]=V}if(k!==t-m){if(n)throw new j("corrupt array bson");throw new j("corrupt object bson")}if(!z)return U;if(ae(U)){const e=Object.assign({},U);return delete e.$ref,delete e.$id,delete e.$db,new ce(U.$ref,U.$id,U.$db,e)}return U}const et=/\x00/,tt=new Set(["$db","$ref","$id","$clusterTime"]);function rt(e,t,r,n){e[n++]=E,e[(n=n+te.encodeUTF8Into(e,t,n)+1)-1]=0;const o=te.encodeUTF8Into(e,r,n+4);return Ue.setInt32LE(e,n,o+1),n=n+4+o,e[n++]=0,n}function nt(e,t,r,n){const o=!Object.is(r,-0)&&Number.isSafeInteger(r)&&r<=l&&r>=h?F:g;return e[n++]=o,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,n+(o===F?Ue.setInt32LE(e,n,r):Ue.setFloat64LE(e,n,r))}function ot(e,t,r,n){return e[n++]=N,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,n+Ue.setBigInt64LE(e,n,r)}function st(e,t,r,n){return e[n++]=O,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,n}function it(e,t,r,n){return e[n++]=b,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,e[n++]=r?1:0,n}function ut(e,t,r,n){e[n++]=v,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;const o=Ae.fromNumber(r.getTime()),s=o.getLowBits(),i=o.getHighBits();return(n+=Ue.setInt32LE(e,n,s))+Ue.setInt32LE(e,n,i)}function at(e,t,r,n){if(e[n++]=_,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,r.source&&null!=r.source.match(et))throw new j("value "+r.source+" must not contain null bytes");return n+=te.encodeUTF8Into(e,r.source,n),e[n++]=0,r.ignoreCase&&(e[n++]=105),r.global&&(e[n++]=115),r.multiline&&(e[n++]=109),e[n++]=0,n}function ct(e,t,r,n){if(e[n++]=_,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,null!=r.pattern.match(et))throw new j("pattern "+r.pattern+" must not contain null bytes");n+=te.encodeUTF8Into(e,r.pattern,n),e[n++]=0;const o=r.options.split("").sort().join("");return n+=te.encodeUTF8Into(e,o,n),e[n++]=0,n}function lt(e,t,r,n){return null===r?e[n++]=O:"MinKey"===r._bsontype?e[n++]=x:e[n++]=P,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,n}function ht(e,t,r,n){return e[n++]=w,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,n+r.serializeInto(e,n)}function dt(e,t,r,n){e[n++]=C,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;const o=r.length;if(n+=Ue.setInt32LE(e,n,o),e[n++]=k,o<=16)for(let t=0;t<o;t++)e[n+t]=r[t];else e.set(r,n);return n+o}function pt(e,t,r,n,o,s,i,u,a){if(a.has(r))throw new j("Cannot convert circular structure to BSON");a.add(r),e[n++]=Array.isArray(r)?y:A,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;const c=bt(e,r,o,n,s+1,i,u,a);return a.delete(r),c}function ft(e,t,r,n){e[n++]=M,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;for(let t=0;t<16;t++)e[n+t]=r.bytes[t];return n+16}function mt(e,t,r,n){e[n++]="Long"===r._bsontype?N:R,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;const o=r.getLowBits(),s=r.getHighBits();return(n+=Ue.setInt32LE(e,n,o))+Ue.setInt32LE(e,n,s)}function gt(e,t,r,n){return r=r.valueOf(),e[n++]=F,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,n+Ue.setInt32LE(e,n,r)}function Et(e,t,r,n){return e[n++]=g,n+=te.encodeUTF8Into(e,t,n),e[n++]=0,n+Ue.setFloat64LE(e,n,r.value)}function At(e,t,r,n){e[n++]=D,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;const o=r.toString(),s=te.encodeUTF8Into(e,o,n+4)+1;return Ue.setInt32LE(e,n,s),n=n+4+s-1,e[n++]=0,n}function yt(e,t,r,n,o=!1,s=0,i=!1,u=!0,a){if(r.scope&&"object"==typeof r.scope){e[n++]=I,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;let c=n;const l=r.code;n+=4;const h=te.encodeUTF8Into(e,l,n+4)+1;Ue.setInt32LE(e,n,h),e[n+4+h-1]=0,n=n+h+4;const d=bt(e,r.scope,o,n,s+1,i,u,a);n=d-1;const p=d-c;c+=Ue.setInt32LE(e,c,p),e[n++]=0}else{e[n++]=D,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;const o=r.code.toString(),s=te.encodeUTF8Into(e,o,n+4)+1;Ue.setInt32LE(e,n,s),n=n+4+s-1,e[n++]=0}return n}function Ct(e,t,r,n){e[n++]=C,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;const o=r.buffer;let s=r.position;if(r.sub_type===ne.SUBTYPE_BYTE_ARRAY&&(s+=4),n+=Ue.setInt32LE(e,n,s),e[n++]=r.sub_type,r.sub_type===ne.SUBTYPE_BYTE_ARRAY&&(s-=4,n+=Ue.setInt32LE(e,n,s)),s<=16)for(let t=0;t<s;t++)e[n+t]=o[t];else e.set(o,n);return n+r.position}function St(e,t,r,n){e[n++]=T,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;const o=te.encodeUTF8Into(e,r.value,n+4)+1;return Ue.setInt32LE(e,n,o),n=n+4+o-1,e[n++]=0,n}function wt(e,t,r,n,o,s,i){e[n++]=A,n+=te.encodeUTF8Into(e,t,n),e[n++]=0;let u=n,a={$ref:r.collection||r.namespace,$id:r.oid};null!=r.db&&(a.$db=r.db),a=Object.assign(a,r.fields);const c=bt(e,a,!1,n,o+1,s,!0,i),l=c-u;return u+=Ue.setInt32LE(e,n,l),c}function bt(e,t,r,a,l,h,d,p){if(null==p){if(null==t)return e[0]=5,e[1]=0,e[2]=0,e[3]=0,e[4]=0,5;if(Array.isArray(t))throw new j("serialize does not support an array as the root input");if("object"!=typeof t)throw new j("serialize does not support non-object as the root input");if("_bsontype"in t&&"string"==typeof t._bsontype)throw new j("BSON types cannot be serialized as a document");if(u(t)||s(t)||o(t)||n(t))throw new j("date, regexp, typedarray, and arraybuffer cannot be BSON documents");p=new Set}p.add(t);let f=a+4;if(Array.isArray(t))for(let n=0;n<t.length;n++){const i=`${n}`;let a=t[n];if("function"==typeof a?.toBSON&&(a=a.toBSON()),"string"==typeof a)f=rt(e,i,a,f);else if("number"==typeof a)f=nt(e,i,a,f);else if("bigint"==typeof a)f=ot(e,i,a,f);else if("boolean"==typeof a)f=it(e,i,a,f);else if(a instanceof Date||u(a))f=ut(e,i,a,f);else if(void 0===a)f=st(e,i,0,f);else if(null===a)f=st(e,i,0,f);else if(o(a))f=dt(e,i,a,f);else if(a instanceof RegExp||s(a))f=at(e,i,a,f);else if("object"==typeof a&&null==a._bsontype)f=pt(e,i,a,f,r,l,h,d,p);else{if("object"==typeof a&&a[Symbol.for("@@mdb.bson.version")]!==c)throw new $;if("ObjectId"===a._bsontype)f=ht(e,i,a,f);else if("Decimal128"===a._bsontype)f=ft(e,i,a,f);else if("Long"===a._bsontype||"Timestamp"===a._bsontype)f=mt(e,i,a,f);else if("Double"===a._bsontype)f=Et(e,i,a,f);else if("function"==typeof a&&h)f=At(e,i,a,f);else if("Code"===a._bsontype)f=yt(e,i,a,f,r,l,h,d,p);else if("Binary"===a._bsontype)f=Ct(e,i,a,f);else if("BSONSymbol"===a._bsontype)f=St(e,i,a,f);else if("DBRef"===a._bsontype)f=wt(e,i,a,f,l,h,p);else if("BSONRegExp"===a._bsontype)f=ct(e,i,a,f);else if("Int32"===a._bsontype)f=gt(e,i,a,f);else if("MinKey"===a._bsontype||"MaxKey"===a._bsontype)f=lt(e,i,a,f);else if(void 0!==a._bsontype)throw new j(`Unrecognized or invalid _bsontype: ${String(a._bsontype)}`)}}else if(t instanceof Map||i(t)){const n=t.entries();let i=!1;for(;!i;){const t=n.next();if(i=!!t.done,i)continue;const a=t.value[0];let m=t.value[1];"function"==typeof m?.toBSON&&(m=m.toBSON());const g=typeof m;if("string"==typeof a&&!tt.has(a)){if(null!=a.match(et))throw new j("key "+a+" must not contain null bytes");if(r){if("$"===a[0])throw new j("key "+a+" must not start with '$'");if(a.includes("."))throw new j("key "+a+" must not contain '.'")}}if("string"===g)f=rt(e,a,m,f);else if("number"===g)f=nt(e,a,m,f);else if("bigint"===g)f=ot(e,a,m,f);else if("boolean"===g)f=it(e,a,m,f);else if(m instanceof Date||u(m))f=ut(e,a,m,f);else if(null===m||void 0===m&&!1===d)f=st(e,a,0,f);else if(o(m))f=dt(e,a,m,f);else if(m instanceof RegExp||s(m))f=at(e,a,m,f);else if("object"===g&&null==m._bsontype)f=pt(e,a,m,f,r,l,h,d,p);else{if("object"==typeof m&&m[Symbol.for("@@mdb.bson.version")]!==c)throw new $;if("ObjectId"===m._bsontype)f=ht(e,a,m,f);else if("object"===g&&"Decimal128"===m._bsontype)f=ft(e,a,m,f);else if("Long"===m._bsontype||"Timestamp"===m._bsontype)f=mt(e,a,m,f);else if("Double"===m._bsontype)f=Et(e,a,m,f);else if("Code"===m._bsontype)f=yt(e,a,m,f,r,l,h,d,p);else if("function"==typeof m&&h)f=At(e,a,m,f);else if("Binary"===m._bsontype)f=Ct(e,a,m,f);else if("BSONSymbol"===m._bsontype)f=St(e,a,m,f);else if("DBRef"===m._bsontype)f=wt(e,a,m,f,l,h,p);else if("BSONRegExp"===m._bsontype)f=ct(e,a,m,f);else if("Int32"===m._bsontype)f=gt(e,a,m,f);else if("MinKey"===m._bsontype||"MaxKey"===m._bsontype)f=lt(e,a,m,f);else if(void 0!==m._bsontype)throw new j(`Unrecognized or invalid _bsontype: ${String(m._bsontype)}`)}}}else{if("function"==typeof t?.toBSON&&null!=(t=t.toBSON())&&"object"!=typeof t)throw new j("toBSON function did not return an object");for(const n of Object.keys(t)){let i=t[n];"function"==typeof i?.toBSON&&(i=i.toBSON());const a=typeof i;if("string"==typeof n&&!tt.has(n)){if(null!=n.match(et))throw new j("key "+n+" must not contain null bytes");if(r){if("$"===n[0])throw new j("key "+n+" must not start with '$'");if(n.includes("."))throw new j("key "+n+" must not contain '.'")}}if("string"===a)f=rt(e,n,i,f);else if("number"===a)f=nt(e,n,i,f);else if("bigint"===a)f=ot(e,n,i,f);else if("boolean"===a)f=it(e,n,i,f);else if(i instanceof Date||u(i))f=ut(e,n,i,f);else if(void 0===i)!1===d&&(f=st(e,n,0,f));else if(null===i)f=st(e,n,0,f);else if(o(i))f=dt(e,n,i,f);else if(i instanceof RegExp||s(i))f=at(e,n,i,f);else if("object"===a&&null==i._bsontype)f=pt(e,n,i,f,r,l,h,d,p);else{if("object"==typeof i&&i[Symbol.for("@@mdb.bson.version")]!==c)throw new $;if("ObjectId"===i._bsontype)f=ht(e,n,i,f);else if("object"===a&&"Decimal128"===i._bsontype)f=ft(e,n,i,f);else if("Long"===i._bsontype||"Timestamp"===i._bsontype)f=mt(e,n,i,f);else if("Double"===i._bsontype)f=Et(e,n,i,f);else if("Code"===i._bsontype)f=yt(e,n,i,f,r,l,h,d,p);else if("function"==typeof i&&h)f=At(e,n,i,f);else if("Binary"===i._bsontype)f=Ct(e,n,i,f);else if("BSONSymbol"===i._bsontype)f=St(e,n,i,f);else if("DBRef"===i._bsontype)f=wt(e,n,i,f,l,h,p);else if("BSONRegExp"===i._bsontype)f=ct(e,n,i,f);else if("Int32"===i._bsontype)f=gt(e,n,i,f);else if("MinKey"===i._bsontype||"MaxKey"===i._bsontype)f=lt(e,n,i,f);else if(void 0!==i._bsontype)throw new j(`Unrecognized or invalid _bsontype: ${String(i._bsontype)}`)}}}p.delete(t),e[f++]=0;const m=f-a;return a+=Ue.setInt32LE(e,a,m),f}const vt={$oid:ze,$binary:ne,$uuid:ne,$symbol:We,$numberInt:Ne,$numberDecimal:Fe,$numberDouble:Re,$numberLong:Ae,$minKey:xe,$maxKey:Me,$regex:qe,$regularExpression:qe,$timestamp:Ke};function Ot(e,t={}){if("number"==typeof e){const r=e<=l&&e>=h,n=e<=d&&e>=p;if(t.relaxed||t.legacy)return e;if(Number.isInteger(e)&&!Object.is(e,-0)){if(r)return new Ne(e);if(n)return t.useBigInt64?BigInt(e):Ae.fromNumber(e)}return new Re(e)}if(null==e||"object"!=typeof e)return e;if(e.$undefined)return null;const r=Object.keys(e).filter((t=>t.startsWith("$")&&null!=e[t]));for(let n=0;n<r.length;n++){const o=vt[r[n]];if(o)return o.fromExtendedJSON(e,t)}if(null!=e.$date){const r=e.$date,n=new Date;if(t.legacy)if("number"==typeof r)n.setTime(r);else if("string"==typeof r)n.setTime(Date.parse(r));else{if("bigint"!=typeof r)throw new z("Unrecognized type for EJSON date: "+typeof r);n.setTime(Number(r))}else if("string"==typeof r)n.setTime(Date.parse(r));else if(Ae.isLong(r))n.setTime(r.toNumber());else if("number"==typeof r&&t.relaxed)n.setTime(r);else{if("bigint"!=typeof r)throw new z("Unrecognized type for EJSON date: "+typeof r);n.setTime(Number(r))}return n}if(null!=e.$code){const t=Object.assign({},e);return e.$scope&&(t.$scope=Ot(e.$scope)),ue.fromExtendedJSON(e)}if(ae(e)||e.$dbPointer){const t=e.$ref?e:e.$dbPointer;if(t instanceof ce)return t;const r=Object.keys(t).filter((e=>e.startsWith("$")));let n=!0;if(r.forEach((e=>{-1===["$ref","$id","$db"].indexOf(e)&&(n=!1)})),n)return ce.fromExtendedJSON(t)}return e}function _t(e){const t=e.toISOString();return 0!==e.getUTCMilliseconds()?t:t.slice(0,-5)+"Z"}function Bt(e,t){if(e instanceof Map||i(e)){const r=Object.create(null);for(const[t,n]of e){if("string"!=typeof t)throw new j("Can only serialize maps with string keys");r[t]=n}return Bt(r,t)}if(("object"==typeof e||"function"==typeof e)&&null!==e){const r=t.seenObjects.findIndex((t=>t.obj===e));if(-1!==r){const e=t.seenObjects.map((e=>e.propertyName)),n=e.slice(0,r).map((e=>`${e} -> `)).join(""),o=e[r],s=" -> "+e.slice(r+1,e.length-1).map((e=>`${e} -> `)).join(""),i=e[e.length-1],u=" ".repeat(n.length+o.length/2),a="-".repeat(s.length+(o.length+i.length)/2-1);throw new j(`Converting circular structure to EJSON:\n ${n}${o}${s}${i}\n ${u}\\${a}/`)}t.seenObjects[t.seenObjects.length-1].obj=e}if(Array.isArray(e))return function(e,t){return e.map(((e,r)=>{t.seenObjects.push({propertyName:`index ${r}`,obj:null});try{return Bt(e,t)}finally{t.seenObjects.pop()}}))}(e,t);if(void 0===e)return null;if(e instanceof Date||u(e)){const r=e.getTime(),n=r>-1&&r<2534023188e5;return t.legacy?t.relaxed&&n?{$date:e.getTime()}:{$date:_t(e)}:t.relaxed&&n?{$date:_t(e)}:{$date:{$numberLong:e.getTime().toString()}}}if(!("number"!=typeof e||t.relaxed&&isFinite(e))){if(Number.isInteger(e)&&!Object.is(e,-0)){if(e>=h&&e<=l)return{$numberInt:e.toString()};if(e>=p&&e<=d)return{$numberLong:e.toString()}}return{$numberDouble:Object.is(e,-0)?"-0.0":e.toString()}}if("bigint"==typeof e)return t.relaxed?Number(BigInt.asIntN(64,e)):{$numberLong:BigInt.asIntN(64,e).toString()};if(e instanceof RegExp||s(e)){let r=e.flags;if(void 0===r){const t=e.toString().match(/[gimuy]*$/);t&&(r=t[0])}return new qe(e.source,r).toExtendedJSON(t)}return null!=e&&"object"==typeof e?function(e,t){if(null==e||"object"!=typeof e)throw new j("not an object instance");const r=e._bsontype;if(void 0===r){const r={};for(const n of Object.keys(e)){t.seenObjects.push({propertyName:n,obj:null});try{const o=Bt(e[n],t);"__proto__"===n?Object.defineProperty(r,n,{value:o,writable:!0,enumerable:!0,configurable:!0}):r[n]=o}finally{t.seenObjects.pop()}}return r}if(null!=e&&"object"==typeof e&&"string"==typeof e._bsontype&&e[Symbol.for("@@mdb.bson.version")]!==c)throw new $;if(function(e){return null!=e&&"object"==typeof e&&"_bsontype"in e&&"string"==typeof e._bsontype}(e)){let n=e;if("function"!=typeof n.toExtendedJSON){const t=Dt[e._bsontype];if(!t)throw new j("Unrecognized or invalid _bsontype: "+e._bsontype);n=t(n)}return"Code"===r&&n.scope?n=new ue(n.code,Bt(n.scope,t)):"DBRef"===r&&n.oid&&(n=new ce(Bt(n.collection,t),Bt(n.oid,t),Bt(n.db,t),Bt(n.fields,t))),n.toExtendedJSON(t)}throw new j("_bsontype must be a string, but was: "+typeof r)}(e,t):e}const Dt={Binary:e=>new ne(e.value(),e.sub_type),Code:e=>new ue(e.code,e.scope),DBRef:e=>new ce(e.collection||e.namespace,e.oid,e.db,e.fields),Decimal128:e=>new Fe(e.bytes),Double:e=>new Re(e.value),Int32:e=>new Ne(e.value),Long:e=>Ae.fromBits(null!=e.low?e.low:e.low_,null!=e.low?e.high:e.high_,null!=e.low?e.unsigned:e.unsigned_),MaxKey:()=>new Me,MinKey:()=>new xe,ObjectId:e=>new ze(e),BSONRegExp:e=>new qe(e.pattern,e.options),BSONSymbol:e=>new We(e.value),Timestamp:e=>Ke.fromBits(e.low,e.high)};function Tt(e,t){const r={useBigInt64:t?.useBigInt64??!1,relaxed:t?.relaxed??!0,legacy:t?.legacy??!1};return JSON.parse(e,((e,t)=>{if(-1!==e.indexOf("\0"))throw new j(`BSON Document field names cannot contain null bytes, found: ${JSON.stringify(e)}`);return Ot(t,r)}))}function It(e,t,r,n){null!=r&&"object"==typeof r&&(n=r,r=0),null==t||"object"!=typeof t||Array.isArray(t)||(n=t,t=void 0,r=0);const o=Bt(e,Object.assign({relaxed:!0,legacy:!1},n,{seenObjects:[{propertyName:"(root)",obj:null}]}));return JSON.stringify(o,t,r)}const Ft=Object.create(null);function Rt(e,t){try{return Ue.getNonnegativeInt32LE(e,t)}catch(e){throw new V("BSON size cannot be negative",t,{cause:e})}}function Nt(e,t){let r=t;for(;0!==e[r];r++);if(r===e.length-1)throw new V("Null terminator not found",t);return r}Ft.parse=Tt,Ft.stringify=It,Ft.serialize=function(e,t){return t=t||{},JSON.parse(It(e,t))},Ft.deserialize=function(e,t){return t=t||{},Tt(JSON.stringify(e),t)},Object.freeze(Ft);const Mt=Object.create(null);Mt.parseToElements=function(e,t=0){if(t??=0,e.length<5)throw new V(`Input must be at least 5 bytes, got ${e.length} bytes`,t);const r=Rt(e,t);if(r>e.length-t)throw new V(`Parsed documentSize (${r} bytes) does not match input length (${e.length} bytes)`,t);if(0!==e[t+r-1])throw new V("BSON documents must end in 0x00",t+r);const n=[];let o=t+4;for(;o<=r+t;){const s=e[o];if(o+=1,0===s){if(o-t!==r)throw new V("Invalid 0x00 type byte",o);break}const i=o,u=Nt(e,o)-i;let a;if(o+=u+1,1===s||18===s||9===s||17===s)a=8;else if(16===s)a=4;else if(7===s)a=12;else if(19===s)a=16;else if(8===s)a=1;else if(10===s||6===s||127===s||255===s)a=0;else if(11===s)a=Nt(e,Nt(e,o)+1)+1-o;else if(3===s||4===s||15===s)a=Rt(e,o);else{if(2!==s&&5!==s&&12!==s&&13!==s&&14!==s)throw new V(`Invalid 0x${s.toString(16).padStart(2,"0")} type byte`,o);a=Rt(e,o)+4,5===s&&(a+=1),12===s&&(a+=12)}if(a>r)throw new V("value reports length larger than document",o);n.push([s,i,u,o,a]),o+=a}return n},Mt.ByteUtils=te,Mt.NumberUtils=Ue,Object.freeze(Mt);const xt=17825792;let Pt=te.allocate(xt);function kt(e){Pt.length<e&&(Pt=te.allocate(e))}function Lt(e,t={}){const r="boolean"==typeof t.checkKeys&&t.checkKeys,n="boolean"==typeof t.serializeFunctions&&t.serializeFunctions,o="boolean"!=typeof t.ignoreUndefined||t.ignoreUndefined,s="number"==typeof t.minInternalBufferSize?t.minInternalBufferSize:xt;Pt.length<s&&(Pt=te.allocate(s));const i=bt(Pt,e,r,0,0,n,o,null),u=te.allocateUnsafe(i);return u.set(Pt.subarray(0,i),0),u}function Ut(e,t,r={}){const n="boolean"==typeof r.checkKeys&&r.checkKeys,o="boolean"==typeof r.serializeFunctions&&r.serializeFunctions,s="boolean"!=typeof r.ignoreUndefined||r.ignoreUndefined,i="number"==typeof r.index?r.index:0,u=bt(Pt,e,n,0,0,o,s,null);return t.set(Pt.subarray(0,u),i),i+u-1}function jt(e,t={}){return Xe(te.toLocalBufferType(e),t)}function $t(e,t={}){return Ve(e,"boolean"==typeof(t=t||{}).serializeFunctions&&t.serializeFunctions,"boolean"!=typeof t.ignoreUndefined||t.ignoreUndefined)}function zt(e,t,r,n,o,s){const i=Object.assign({allowObjectSmallerThanBufferSize:!0,index:0},s),u=te.toLocalBufferType(e);let a=t;for(let e=0;e<r;e++){const t=Ue.getInt32LE(u,a);i.index=a,n[o+e]=Xe(u,i),a+=t}return a}var Vt=Object.freeze({__proto__:null,BSONError:j,BSONOffsetError:V,BSONRegExp:qe,BSONRuntimeError:z,BSONSymbol:We,BSONType:U,BSONValue:re,BSONVersionError:$,Binary:ne,Code:ue,DBRef:ce,Decimal128:Fe,Double:Re,EJSON:Ft,Int32:Ne,Long:Ae,MaxKey:Me,MinKey:xe,ObjectId:ze,Timestamp:Ke,UUID:ie,calculateObjectSize:$t,deserialize:jt,deserializeStream:zt,onDemand:Mt,serialize:Lt,serializeWithBufferAndIndex:Ut,setInternalBufferSize:kt});t.BSON=Vt,t.BSONError=j,t.BSONOffsetError=V,t.BSONRegExp=qe,t.BSONRuntimeError=z,t.BSONSymbol=We,t.BSONType=U,t.BSONValue=re,t.BSONVersionError=$,t.Binary=ne,t.Code=ue,t.DBRef=ce,t.Decimal128=Fe,t.Double=Re,t.EJSON=Ft,t.Int32=Ne,t.Long=Ae,t.MaxKey=Me,t.MinKey=xe,t.ObjectId=ze,t.Timestamp=Ke,t.UUID=ie,t.calculateObjectSize=$t,t.deserialize=jt,t.deserializeStream=zt,t.onDemand=Mt,t.serialize=Lt,t.serializeWithBufferAndIndex=Ut,t.setInternalBufferSize=kt},7976:e=>{"use strict";e.exports=JSON.parse('[[[0,44],4],[[45,46],2],[47,4],[[48,57],2],[[58,64],4],[65,1,"a"],[66,1,"b"],[67,1,"c"],[68,1,"d"],[69,1,"e"],[70,1,"f"],[71,1,"g"],[72,1,"h"],[73,1,"i"],[74,1,"j"],[75,1,"k"],[76,1,"l"],[77,1,"m"],[78,1,"n"],[79,1,"o"],[80,1,"p"],[81,1,"q"],[82,1,"r"],[83,1,"s"],[84,1,"t"],[85,1,"u"],[86,1,"v"],[87,1,"w"],[88,1,"x"],[89,1,"y"],[90,1,"z"],[[91,96],4],[[97,122],2],[[123,127],4],[[128,159],3],[160,5," "],[[161,167],2],[168,5," ̈"],[169,2],[170,1,"a"],[[171,172],2],[173,7],[174,2],[175,5," ̄"],[[176,177],2],[178,1,"2"],[179,1,"3"],[180,5," ́"],[181,1,"μ"],[182,2],[183,2],[184,5," ̧"],[185,1,"1"],[186,1,"o"],[187,2],[188,1,"1⁄4"],[189,1,"1⁄2"],[190,1,"3⁄4"],[191,2],[192,1,"à"],[193,1,"á"],[194,1,"â"],[195,1,"ã"],[196,1,"ä"],[197,1,"å"],[198,1,"æ"],[199,1,"ç"],[200,1,"è"],[201,1,"é"],[202,1,"ê"],[203,1,"ë"],[204,1,"ì"],[205,1,"í"],[206,1,"î"],[207,1,"ï"],[208,1,"ð"],[209,1,"ñ"],[210,1,"ò"],[211,1,"ó"],[212,1,"ô"],[213,1,"õ"],[214,1,"ö"],[215,2],[216,1,"ø"],[217,1,"ù"],[218,1,"ú"],[219,1,"û"],[220,1,"ü"],[221,1,"ý"],[222,1,"þ"],[223,6,"ss"],[[224,246],2],[247,2],[[248,255],2],[256,1,"ā"],[257,2],[258,1,"ă"],[259,2],[260,1,"ą"],[261,2],[262,1,"ć"],[263,2],[264,1,"ĉ"],[265,2],[266,1,"ċ"],[267,2],[268,1,"č"],[269,2],[270,1,"ď"],[271,2],[272,1,"đ"],[273,2],[274,1,"ē"],[275,2],[276,1,"ĕ"],[277,2],[278,1,"ė"],[279,2],[280,1,"ę"],[281,2],[282,1,"ě"],[283,2],[284,1,"ĝ"],[285,2],[286,1,"ğ"],[287,2],[288,1,"ġ"],[289,2],[290,1,"ģ"],[291,2],[292,1,"ĥ"],[293,2],[294,1,"ħ"],[295,2],[296,1,"ĩ"],[297,2],[298,1,"ī"],[299,2],[300,1,"ĭ"],[301,2],[302,1,"į"],[303,2],[304,1,"i̇"],[305,2],[[306,307],1,"ij"],[308,1,"ĵ"],[309,2],[310,1,"ķ"],[[311,312],2],[313,1,"ĺ"],[314,2],[315,1,"ļ"],[316,2],[317,1,"ľ"],[318,2],[[319,320],1,"l·"],[321,1,"ł"],[322,2],[323,1,"ń"],[324,2],[325,1,"ņ"],[326,2],[327,1,"ň"],[328,2],[329,1,"ʼn"],[330,1,"ŋ"],[331,2],[332,1,"ō"],[333,2],[334,1,"ŏ"],[335,2],[336,1,"ő"],[337,2],[338,1,"œ"],[339,2],[340,1,"ŕ"],[341,2],[342,1,"ŗ"],[343,2],[344,1,"ř"],[345,2],[346,1,"ś"],[347,2],[348,1,"ŝ"],[349,2],[350,1,"ş"],[351,2],[352,1,"š"],[353,2],[354,1,"ţ"],[355,2],[356,1,"ť"],[357,2],[358,1,"ŧ"],[359,2],[360,1,"ũ"],[361,2],[362,1,"ū"],[363,2],[364,1,"ŭ"],[365,2],[366,1,"ů"],[367,2],[368,1,"ű"],[369,2],[370,1,"ų"],[371,2],[372,1,"ŵ"],[373,2],[374,1,"ŷ"],[375,2],[376,1,"ÿ"],[377,1,"ź"],[378,2],[379,1,"ż"],[380,2],[381,1,"ž"],[382,2],[383,1,"s"],[384,2],[385,1,"ɓ"],[386,1,"ƃ"],[387,2],[388,1,"ƅ"],[389,2],[390,1,"ɔ"],[391,1,"ƈ"],[392,2],[393,1,"ɖ"],[394,1,"ɗ"],[395,1,"ƌ"],[[396,397],2],[398,1,"ǝ"],[399,1,"ə"],[400,1,"ɛ"],[401,1,"ƒ"],[402,2],[403,1,"ɠ"],[404,1,"ɣ"],[405,2],[406,1,"ɩ"],[407,1,"ɨ"],[408,1,"ƙ"],[[409,411],2],[412,1,"ɯ"],[413,1,"ɲ"],[414,2],[415,1,"ɵ"],[416,1,"ơ"],[417,2],[418,1,"ƣ"],[419,2],[420,1,"ƥ"],[421,2],[422,1,"ʀ"],[423,1,"ƨ"],[424,2],[425,1,"ʃ"],[[426,427],2],[428,1,"ƭ"],[429,2],[430,1,"ʈ"],[431,1,"ư"],[432,2],[433,1,"ʊ"],[434,1,"ʋ"],[435,1,"ƴ"],[436,2],[437,1,"ƶ"],[438,2],[439,1,"ʒ"],[440,1,"ƹ"],[[441,443],2],[444,1,"ƽ"],[[445,451],2],[[452,454],1,"dž"],[[455,457],1,"lj"],[[458,460],1,"nj"],[461,1,"ǎ"],[462,2],[463,1,"ǐ"],[464,2],[465,1,"ǒ"],[466,2],[467,1,"ǔ"],[468,2],[469,1,"ǖ"],[470,2],[471,1,"ǘ"],[472,2],[473,1,"ǚ"],[474,2],[475,1,"ǜ"],[[476,477],2],[478,1,"ǟ"],[479,2],[480,1,"ǡ"],[481,2],[482,1,"ǣ"],[483,2],[484,1,"ǥ"],[485,2],[486,1,"ǧ"],[487,2],[488,1,"ǩ"],[489,2],[490,1,"ǫ"],[491,2],[492,1,"ǭ"],[493,2],[494,1,"ǯ"],[[495,496],2],[[497,499],1,"dz"],[500,1,"ǵ"],[501,2],[502,1,"ƕ"],[503,1,"ƿ"],[504,1,"ǹ"],[505,2],[506,1,"ǻ"],[507,2],[508,1,"ǽ"],[509,2],[510,1,"ǿ"],[511,2],[512,1,"ȁ"],[513,2],[514,1,"ȃ"],[515,2],[516,1,"ȅ"],[517,2],[518,1,"ȇ"],[519,2],[520,1,"ȉ"],[521,2],[522,1,"ȋ"],[523,2],[524,1,"ȍ"],[525,2],[526,1,"ȏ"],[527,2],[528,1,"ȑ"],[529,2],[530,1,"ȓ"],[531,2],[532,1,"ȕ"],[533,2],[534,1,"ȗ"],[535,2],[536,1,"ș"],[537,2],[538,1,"ț"],[539,2],[540,1,"ȝ"],[541,2],[542,1,"ȟ"],[543,2],[544,1,"ƞ"],[545,2],[546,1,"ȣ"],[547,2],[548,1,"ȥ"],[549,2],[550,1,"ȧ"],[551,2],[552,1,"ȩ"],[553,2],[554,1,"ȫ"],[555,2],[556,1,"ȭ"],[557,2],[558,1,"ȯ"],[559,2],[560,1,"ȱ"],[561,2],[562,1,"ȳ"],[563,2],[[564,566],2],[[567,569],2],[570,1,"ⱥ"],[571,1,"ȼ"],[572,2],[573,1,"ƚ"],[574,1,"ⱦ"],[[575,576],2],[577,1,"ɂ"],[578,2],[579,1,"ƀ"],[580,1,"ʉ"],[581,1,"ʌ"],[582,1,"ɇ"],[583,2],[584,1,"ɉ"],[585,2],[586,1,"ɋ"],[587,2],[588,1,"ɍ"],[589,2],[590,1,"ɏ"],[591,2],[[592,680],2],[[681,685],2],[[686,687],2],[688,1,"h"],[689,1,"ɦ"],[690,1,"j"],[691,1,"r"],[692,1,"ɹ"],[693,1,"ɻ"],[694,1,"ʁ"],[695,1,"w"],[696,1,"y"],[[697,705],2],[[706,709],2],[[710,721],2],[[722,727],2],[728,5," ̆"],[729,5," ̇"],[730,5," ̊"],[731,5," ̨"],[732,5," ̃"],[733,5," ̋"],[734,2],[735,2],[736,1,"ɣ"],[737,1,"l"],[738,1,"s"],[739,1,"x"],[740,1,"ʕ"],[[741,745],2],[[746,747],2],[748,2],[749,2],[750,2],[[751,767],2],[[768,831],2],[832,1,"̀"],[833,1,"́"],[834,2],[835,1,"̓"],[836,1,"̈́"],[837,1,"ι"],[[838,846],2],[847,7],[[848,855],2],[[856,860],2],[[861,863],2],[[864,865],2],[866,2],[[867,879],2],[880,1,"ͱ"],[881,2],[882,1,"ͳ"],[883,2],[884,1,"ʹ"],[885,2],[886,1,"ͷ"],[887,2],[[888,889],3],[890,5," ι"],[[891,893],2],[894,5,";"],[895,1,"ϳ"],[[896,899],3],[900,5," ́"],[901,5," ̈́"],[902,1,"ά"],[903,1,"·"],[904,1,"έ"],[905,1,"ή"],[906,1,"ί"],[907,3],[908,1,"ό"],[909,3],[910,1,"ύ"],[911,1,"ώ"],[912,2],[913,1,"α"],[914,1,"β"],[915,1,"γ"],[916,1,"δ"],[917,1,"ε"],[918,1,"ζ"],[919,1,"η"],[920,1,"θ"],[921,1,"ι"],[922,1,"κ"],[923,1,"λ"],[924,1,"μ"],[925,1,"ν"],[926,1,"ξ"],[927,1,"ο"],[928,1,"π"],[929,1,"ρ"],[930,3],[931,1,"σ"],[932,1,"τ"],[933,1,"υ"],[934,1,"φ"],[935,1,"χ"],[936,1,"ψ"],[937,1,"ω"],[938,1,"ϊ"],[939,1,"ϋ"],[[940,961],2],[962,6,"σ"],[[963,974],2],[975,1,"ϗ"],[976,1,"β"],[977,1,"θ"],[978,1,"υ"],[979,1,"ύ"],[980,1,"ϋ"],[981,1,"φ"],[982,1,"π"],[983,2],[984,1,"ϙ"],[985,2],[986,1,"ϛ"],[987,2],[988,1,"ϝ"],[989,2],[990,1,"ϟ"],[991,2],[992,1,"ϡ"],[993,2],[994,1,"ϣ"],[995,2],[996,1,"ϥ"],[997,2],[998,1,"ϧ"],[999,2],[1000,1,"ϩ"],[1001,2],[1002,1,"ϫ"],[1003,2],[1004,1,"ϭ"],[1005,2],[1006,1,"ϯ"],[1007,2],[1008,1,"κ"],[1009,1,"ρ"],[1010,1,"σ"],[1011,2],[1012,1,"θ"],[1013,1,"ε"],[1014,2],[1015,1,"ϸ"],[1016,2],[1017,1,"σ"],[1018,1,"ϻ"],[1019,2],[1020,2],[1021,1,"ͻ"],[1022,1,"ͼ"],[1023,1,"ͽ"],[1024,1,"ѐ"],[1025,1,"ё"],[1026,1,"ђ"],[1027,1,"ѓ"],[1028,1,"є"],[1029,1,"ѕ"],[1030,1,"і"],[1031,1,"ї"],[1032,1,"ј"],[1033,1,"љ"],[1034,1,"њ"],[1035,1,"ћ"],[1036,1,"ќ"],[1037,1,"ѝ"],[1038,1,"ў"],[1039,1,"џ"],[1040,1,"а"],[1041,1,"б"],[1042,1,"в"],[1043,1,"г"],[1044,1,"д"],[1045,1,"е"],[1046,1,"ж"],[1047,1,"з"],[1048,1,"и"],[1049,1,"й"],[1050,1,"к"],[1051,1,"л"],[1052,1,"м"],[1053,1,"н"],[1054,1,"о"],[1055,1,"п"],[1056,1,"р"],[1057,1,"с"],[1058,1,"т"],[1059,1,"у"],[1060,1,"ф"],[1061,1,"х"],[1062,1,"ц"],[1063,1,"ч"],[1064,1,"ш"],[1065,1,"щ"],[1066,1,"ъ"],[1067,1,"ы"],[1068,1,"ь"],[1069,1,"э"],[1070,1,"ю"],[1071,1,"я"],[[1072,1103],2],[1104,2],[[1105,1116],2],[1117,2],[[1118,1119],2],[1120,1,"ѡ"],[1121,2],[1122,1,"ѣ"],[1123,2],[1124,1,"ѥ"],[1125,2],[1126,1,"ѧ"],[1127,2],[1128,1,"ѩ"],[1129,2],[1130,1,"ѫ"],[1131,2],[1132,1,"ѭ"],[1133,2],[1134,1,"ѯ"],[1135,2],[1136,1,"ѱ"],[1137,2],[1138,1,"ѳ"],[1139,2],[1140,1,"ѵ"],[1141,2],[1142,1,"ѷ"],[1143,2],[1144,1,"ѹ"],[1145,2],[1146,1,"ѻ"],[1147,2],[1148,1,"ѽ"],[1149,2],[1150,1,"ѿ"],[1151,2],[1152,1,"ҁ"],[1153,2],[1154,2],[[1155,1158],2],[1159,2],[[1160,1161],2],[1162,1,"ҋ"],[1163,2],[1164,1,"ҍ"],[1165,2],[1166,1,"ҏ"],[1167,2],[1168,1,"ґ"],[1169,2],[1170,1,"ғ"],[1171,2],[1172,1,"ҕ"],[1173,2],[1174,1,"җ"],[1175,2],[1176,1,"ҙ"],[1177,2],[1178,1,"қ"],[1179,2],[1180,1,"ҝ"],[1181,2],[1182,1,"ҟ"],[1183,2],[1184,1,"ҡ"],[1185,2],[1186,1,"ң"],[1187,2],[1188,1,"ҥ"],[1189,2],[1190,1,"ҧ"],[1191,2],[1192,1,"ҩ"],[1193,2],[1194,1,"ҫ"],[1195,2],[1196,1,"ҭ"],[1197,2],[1198,1,"ү"],[1199,2],[1200,1,"ұ"],[1201,2],[1202,1,"ҳ"],[1203,2],[1204,1,"ҵ"],[1205,2],[1206,1,"ҷ"],[1207,2],[1208,1,"ҹ"],[1209,2],[1210,1,"һ"],[1211,2],[1212,1,"ҽ"],[1213,2],[1214,1,"ҿ"],[1215,2],[1216,3],[1217,1,"ӂ"],[1218,2],[1219,1,"ӄ"],[1220,2],[1221,1,"ӆ"],[1222,2],[1223,1,"ӈ"],[1224,2],[1225,1,"ӊ"],[1226,2],[1227,1,"ӌ"],[1228,2],[1229,1,"ӎ"],[1230,2],[1231,2],[1232,1,"ӑ"],[1233,2],[1234,1,"ӓ"],[1235,2],[1236,1,"ӕ"],[1237,2],[1238,1,"ӗ"],[1239,2],[1240,1,"ә"],[1241,2],[1242,1,"ӛ"],[1243,2],[1244,1,"ӝ"],[1245,2],[1246,1,"ӟ"],[1247,2],[1248,1,"ӡ"],[1249,2],[1250,1,"ӣ"],[1251,2],[1252,1,"ӥ"],[1253,2],[1254,1,"ӧ"],[1255,2],[1256,1,"ө"],[1257,2],[1258,1,"ӫ"],[1259,2],[1260,1,"ӭ"],[1261,2],[1262,1,"ӯ"],[1263,2],[1264,1,"ӱ"],[1265,2],[1266,1,"ӳ"],[1267,2],[1268,1,"ӵ"],[1269,2],[1270,1,"ӷ"],[1271,2],[1272,1,"ӹ"],[1273,2],[1274,1,"ӻ"],[1275,2],[1276,1,"ӽ"],[1277,2],[1278,1,"ӿ"],[1279,2],[1280,1,"ԁ"],[1281,2],[1282,1,"ԃ"],[1283,2],[1284,1,"ԅ"],[1285,2],[1286,1,"ԇ"],[1287,2],[1288,1,"ԉ"],[1289,2],[1290,1,"ԋ"],[1291,2],[1292,1,"ԍ"],[1293,2],[1294,1,"ԏ"],[1295,2],[1296,1,"ԑ"],[1297,2],[1298,1,"ԓ"],[1299,2],[1300,1,"ԕ"],[1301,2],[1302,1,"ԗ"],[1303,2],[1304,1,"ԙ"],[1305,2],[1306,1,"ԛ"],[1307,2],[1308,1,"ԝ"],[1309,2],[1310,1,"ԟ"],[1311,2],[1312,1,"ԡ"],[1313,2],[1314,1,"ԣ"],[1315,2],[1316,1,"ԥ"],[1317,2],[1318,1,"ԧ"],[1319,2],[1320,1,"ԩ"],[1321,2],[1322,1,"ԫ"],[1323,2],[1324,1,"ԭ"],[1325,2],[1326,1,"ԯ"],[1327,2],[1328,3],[1329,1,"ա"],[1330,1,"բ"],[1331,1,"գ"],[1332,1,"դ"],[1333,1,"ե"],[1334,1,"զ"],[1335,1,"է"],[1336,1,"ը"],[1337,1,"թ"],[1338,1,"ժ"],[1339,1,"ի"],[1340,1,"լ"],[1341,1,"խ"],[1342,1,"ծ"],[1343,1,"կ"],[1344,1,"հ"],[1345,1,"ձ"],[1346,1,"ղ"],[1347,1,"ճ"],[1348,1,"մ"],[1349,1,"յ"],[1350,1,"ն"],[1351,1,"շ"],[1352,1,"ո"],[1353,1,"չ"],[1354,1,"պ"],[1355,1,"ջ"],[1356,1,"ռ"],[1357,1,"ս"],[1358,1,"վ"],[1359,1,"տ"],[1360,1,"ր"],[1361,1,"ց"],[1362,1,"ւ"],[1363,1,"փ"],[1364,1,"ք"],[1365,1,"օ"],[1366,1,"ֆ"],[[1367,1368],3],[1369,2],[[1370,1375],2],[1376,2],[[1377,1414],2],[1415,1,"եւ"],[1416,2],[1417,2],[1418,2],[[1419,1420],3],[[1421,1422],2],[1423,2],[1424,3],[[1425,1441],2],[1442,2],[[1443,1455],2],[[1456,1465],2],[1466,2],[[1467,1469],2],[1470,2],[1471,2],[1472,2],[[1473,1474],2],[1475,2],[1476,2],[1477,2],[1478,2],[1479,2],[[1480,1487],3],[[1488,1514],2],[[1515,1518],3],[1519,2],[[1520,1524],2],[[1525,1535],3],[[1536,1539],3],[1540,3],[1541,3],[[1542,1546],2],[1547,2],[1548,2],[[1549,1551],2],[[1552,1557],2],[[1558,1562],2],[1563,2],[1564,3],[1565,2],[1566,2],[1567,2],[1568,2],[[1569,1594],2],[[1595,1599],2],[1600,2],[[1601,1618],2],[[1619,1621],2],[[1622,1624],2],[[1625,1630],2],[1631,2],[[1632,1641],2],[[1642,1645],2],[[1646,1647],2],[[1648,1652],2],[1653,1,"اٴ"],[1654,1,"وٴ"],[1655,1,"ۇٴ"],[1656,1,"يٴ"],[[1657,1719],2],[[1720,1721],2],[[1722,1726],2],[1727,2],[[1728,1742],2],[1743,2],[[1744,1747],2],[1748,2],[[1749,1756],2],[1757,3],[1758,2],[[1759,1768],2],[1769,2],[[1770,1773],2],[[1774,1775],2],[[1776,1785],2],[[1786,1790],2],[1791,2],[[1792,1805],2],[1806,3],[1807,3],[[1808,1836],2],[[1837,1839],2],[[1840,1866],2],[[1867,1868],3],[[1869,1871],2],[[1872,1901],2],[[1902,1919],2],[[1920,1968],2],[1969,2],[[1970,1983],3],[[1984,2037],2],[[2038,2042],2],[[2043,2044],3],[2045,2],[[2046,2047],2],[[2048,2093],2],[[2094,2095],3],[[2096,2110],2],[2111,3],[[2112,2139],2],[[2140,2141],3],[2142,2],[2143,3],[[2144,2154],2],[[2155,2159],3],[[2160,2183],2],[2184,2],[[2185,2190],2],[2191,3],[[2192,2193],3],[[2194,2199],3],[[2200,2207],2],[2208,2],[2209,2],[[2210,2220],2],[[2221,2226],2],[[2227,2228],2],[2229,2],[[2230,2237],2],[[2238,2247],2],[[2248,2258],2],[2259,2],[[2260,2273],2],[2274,3],[2275,2],[[2276,2302],2],[2303,2],[2304,2],[[2305,2307],2],[2308,2],[[2309,2361],2],[[2362,2363],2],[[2364,2381],2],[2382,2],[2383,2],[[2384,2388],2],[2389,2],[[2390,2391],2],[2392,1,"क़"],[2393,1,"ख़"],[2394,1,"ग़"],[2395,1,"ज़"],[2396,1,"ड़"],[2397,1,"ढ़"],[2398,1,"फ़"],[2399,1,"य़"],[[2400,2403],2],[[2404,2405],2],[[2406,2415],2],[2416,2],[[2417,2418],2],[[2419,2423],2],[2424,2],[[2425,2426],2],[[2427,2428],2],[2429,2],[[2430,2431],2],[2432,2],[[2433,2435],2],[2436,3],[[2437,2444],2],[[2445,2446],3],[[2447,2448],2],[[2449,2450],3],[[2451,2472],2],[2473,3],[[2474,2480],2],[2481,3],[2482,2],[[2483,2485],3],[[2486,2489],2],[[2490,2491],3],[2492,2],[2493,2],[[2494,2500],2],[[2501,2502],3],[[2503,2504],2],[[2505,2506],3],[[2507,2509],2],[2510,2],[[2511,2518],3],[2519,2],[[2520,2523],3],[2524,1,"ড়"],[2525,1,"ঢ়"],[2526,3],[2527,1,"য়"],[[2528,2531],2],[[2532,2533],3],[[2534,2545],2],[[2546,2554],2],[2555,2],[2556,2],[2557,2],[2558,2],[[2559,2560],3],[2561,2],[2562,2],[2563,2],[2564,3],[[2565,2570],2],[[2571,2574],3],[[2575,2576],2],[[2577,2578],3],[[2579,2600],2],[2601,3],[[2602,2608],2],[2609,3],[2610,2],[2611,1,"ਲ਼"],[2612,3],[2613,2],[2614,1,"ਸ਼"],[2615,3],[[2616,2617],2],[[2618,2619],3],[2620,2],[2621,3],[[2622,2626],2],[[2627,2630],3],[[2631,2632],2],[[2633,2634],3],[[2635,2637],2],[[2638,2640],3],[2641,2],[[2642,2648],3],[2649,1,"ਖ਼"],[2650,1,"ਗ਼"],[2651,1,"ਜ਼"],[2652,2],[2653,3],[2654,1,"ਫ਼"],[[2655,2661],3],[[2662,2676],2],[2677,2],[2678,2],[[2679,2688],3],[[2689,2691],2],[2692,3],[[2693,2699],2],[2700,2],[2701,2],[2702,3],[[2703,2705],2],[2706,3],[[2707,2728],2],[2729,3],[[2730,2736],2],[2737,3],[[2738,2739],2],[2740,3],[[2741,2745],2],[[2746,2747],3],[[2748,2757],2],[2758,3],[[2759,2761],2],[2762,3],[[2763,2765],2],[[2766,2767],3],[2768,2],[[2769,2783],3],[2784,2],[[2785,2787],2],[[2788,2789],3],[[2790,2799],2],[2800,2],[2801,2],[[2802,2808],3],[2809,2],[[2810,2815],2],[2816,3],[[2817,2819],2],[2820,3],[[2821,2828],2],[[2829,2830],3],[[2831,2832],2],[[2833,2834],3],[[2835,2856],2],[2857,3],[[2858,2864],2],[2865,3],[[2866,2867],2],[2868,3],[2869,2],[[2870,2873],2],[[2874,2875],3],[[2876,2883],2],[2884,2],[[2885,2886],3],[[2887,2888],2],[[2889,2890],3],[[2891,2893],2],[[2894,2900],3],[2901,2],[[2902,2903],2],[[2904,2907],3],[2908,1,"ଡ଼"],[2909,1,"ଢ଼"],[2910,3],[[2911,2913],2],[[2914,2915],2],[[2916,2917],3],[[2918,2927],2],[2928,2],[2929,2],[[2930,2935],2],[[2936,2945],3],[[2946,2947],2],[2948,3],[[2949,2954],2],[[2955,2957],3],[[2958,2960],2],[2961,3],[[2962,2965],2],[[2966,2968],3],[[2969,2970],2],[2971,3],[2972,2],[2973,3],[[2974,2975],2],[[2976,2978],3],[[2979,2980],2],[[2981,2983],3],[[2984,2986],2],[[2987,2989],3],[[2990,2997],2],[2998,2],[[2999,3001],2],[[3002,3005],3],[[3006,3010],2],[[3011,3013],3],[[3014,3016],2],[3017,3],[[3018,3021],2],[[3022,3023],3],[3024,2],[[3025,3030],3],[3031,2],[[3032,3045],3],[3046,2],[[3047,3055],2],[[3056,3058],2],[[3059,3066],2],[[3067,3071],3],[3072,2],[[3073,3075],2],[3076,2],[[3077,3084],2],[3085,3],[[3086,3088],2],[3089,3],[[3090,3112],2],[3113,3],[[3114,3123],2],[3124,2],[[3125,3129],2],[[3130,3131],3],[3132,2],[3133,2],[[3134,3140],2],[3141,3],[[3142,3144],2],[3145,3],[[3146,3149],2],[[3150,3156],3],[[3157,3158],2],[3159,3],[[3160,3161],2],[3162,2],[[3163,3164],3],[3165,2],[[3166,3167],3],[[3168,3169],2],[[3170,3171],2],[[3172,3173],3],[[3174,3183],2],[[3184,3190],3],[3191,2],[[3192,3199],2],[3200,2],[3201,2],[[3202,3203],2],[3204,2],[[3205,3212],2],[3213,3],[[3214,3216],2],[3217,3],[[3218,3240],2],[3241,3],[[3242,3251],2],[3252,3],[[3253,3257],2],[[3258,3259],3],[[3260,3261],2],[[3262,3268],2],[3269,3],[[3270,3272],2],[3273,3],[[3274,3277],2],[[3278,3284],3],[[3285,3286],2],[[3287,3292],3],[3293,2],[3294,2],[3295,3],[[3296,3297],2],[[3298,3299],2],[[3300,3301],3],[[3302,3311],2],[3312,3],[[3313,3314],2],[3315,2],[[3316,3327],3],[3328,2],[3329,2],[[3330,3331],2],[3332,2],[[3333,3340],2],[3341,3],[[3342,3344],2],[3345,3],[[3346,3368],2],[3369,2],[[3370,3385],2],[3386,2],[[3387,3388],2],[3389,2],[[3390,3395],2],[3396,2],[3397,3],[[3398,3400],2],[3401,3],[[3402,3405],2],[3406,2],[3407,2],[[3408,3411],3],[[3412,3414],2],[3415,2],[[3416,3422],2],[3423,2],[[3424,3425],2],[[3426,3427],2],[[3428,3429],3],[[3430,3439],2],[[3440,3445],2],[[3446,3448],2],[3449,2],[[3450,3455],2],[3456,3],[3457,2],[[3458,3459],2],[3460,3],[[3461,3478],2],[[3479,3481],3],[[3482,3505],2],[3506,3],[[3507,3515],2],[3516,3],[3517,2],[[3518,3519],3],[[3520,3526],2],[[3527,3529],3],[3530,2],[[3531,3534],3],[[3535,3540],2],[3541,3],[3542,2],[3543,3],[[3544,3551],2],[[3552,3557],3],[[3558,3567],2],[[3568,3569],3],[[3570,3571],2],[3572,2],[[3573,3584],3],[[3585,3634],2],[3635,1,"ํา"],[[3636,3642],2],[[3643,3646],3],[3647,2],[[3648,3662],2],[3663,2],[[3664,3673],2],[[3674,3675],2],[[3676,3712],3],[[3713,3714],2],[3715,3],[3716,2],[3717,3],[3718,2],[[3719,3720],2],[3721,2],[3722,2],[3723,3],[3724,2],[3725,2],[[3726,3731],2],[[3732,3735],2],[3736,2],[[3737,3743],2],[3744,2],[[3745,3747],2],[3748,3],[3749,2],[3750,3],[3751,2],[[3752,3753],2],[[3754,3755],2],[3756,2],[[3757,3762],2],[3763,1,"ໍາ"],[[3764,3769],2],[3770,2],[[3771,3773],2],[[3774,3775],3],[[3776,3780],2],[3781,3],[3782,2],[3783,3],[[3784,3789],2],[3790,2],[3791,3],[[3792,3801],2],[[3802,3803],3],[3804,1,"ຫນ"],[3805,1,"ຫມ"],[[3806,3807],2],[[3808,3839],3],[3840,2],[[3841,3850],2],[3851,2],[3852,1,"་"],[[3853,3863],2],[[3864,3865],2],[[3866,3871],2],[[3872,3881],2],[[3882,3892],2],[3893,2],[3894,2],[3895,2],[3896,2],[3897,2],[[3898,3901],2],[[3902,3906],2],[3907,1,"གྷ"],[[3908,3911],2],[3912,3],[[3913,3916],2],[3917,1,"ཌྷ"],[[3918,3921],2],[3922,1,"དྷ"],[[3923,3926],2],[3927,1,"བྷ"],[[3928,3931],2],[3932,1,"ཛྷ"],[[3933,3944],2],[3945,1,"ཀྵ"],[3946,2],[[3947,3948],2],[[3949,3952],3],[[3953,3954],2],[3955,1,"ཱི"],[3956,2],[3957,1,"ཱུ"],[3958,1,"ྲྀ"],[3959,1,"ྲཱྀ"],[3960,1,"ླྀ"],[3961,1,"ླཱྀ"],[[3962,3968],2],[3969,1,"ཱྀ"],[[3970,3972],2],[3973,2],[[3974,3979],2],[[3980,3983],2],[[3984,3986],2],[3987,1,"ྒྷ"],[[3988,3989],2],[3990,2],[3991,2],[3992,3],[[3993,3996],2],[3997,1,"ྜྷ"],[[3998,4001],2],[4002,1,"ྡྷ"],[[4003,4006],2],[4007,1,"ྦྷ"],[[4008,4011],2],[4012,1,"ྫྷ"],[4013,2],[[4014,4016],2],[[4017,4023],2],[4024,2],[4025,1,"ྐྵ"],[[4026,4028],2],[4029,3],[[4030,4037],2],[4038,2],[[4039,4044],2],[4045,3],[4046,2],[4047,2],[[4048,4049],2],[[4050,4052],2],[[4053,4056],2],[[4057,4058],2],[[4059,4095],3],[[4096,4129],2],[4130,2],[[4131,4135],2],[4136,2],[[4137,4138],2],[4139,2],[[4140,4146],2],[[4147,4149],2],[[4150,4153],2],[[4154,4159],2],[[4160,4169],2],[[4170,4175],2],[[4176,4185],2],[[4186,4249],2],[[4250,4253],2],[[4254,4255],2],[[4256,4293],3],[4294,3],[4295,1,"ⴧ"],[[4296,4300],3],[4301,1,"ⴭ"],[[4302,4303],3],[[4304,4342],2],[[4343,4344],2],[[4345,4346],2],[4347,2],[4348,1,"ნ"],[[4349,4351],2],[[4352,4441],2],[[4442,4446],2],[[4447,4448],3],[[4449,4514],2],[[4515,4519],2],[[4520,4601],2],[[4602,4607],2],[[4608,4614],2],[4615,2],[[4616,4678],2],[4679,2],[4680,2],[4681,3],[[4682,4685],2],[[4686,4687],3],[[4688,4694],2],[4695,3],[4696,2],[4697,3],[[4698,4701],2],[[4702,4703],3],[[4704,4742],2],[4743,2],[4744,2],[4745,3],[[4746,4749],2],[[4750,4751],3],[[4752,4782],2],[4783,2],[4784,2],[4785,3],[[4786,4789],2],[[4790,4791],3],[[4792,4798],2],[4799,3],[4800,2],[4801,3],[[4802,4805],2],[[4806,4807],3],[[4808,4814],2],[4815,2],[[4816,4822],2],[4823,3],[[4824,4846],2],[4847,2],[[4848,4878],2],[4879,2],[4880,2],[4881,3],[[4882,4885],2],[[4886,4887],3],[[4888,4894],2],[4895,2],[[4896,4934],2],[4935,2],[[4936,4954],2],[[4955,4956],3],[[4957,4958],2],[4959,2],[4960,2],[[4961,4988],2],[[4989,4991],3],[[4992,5007],2],[[5008,5017],2],[[5018,5023],3],[[5024,5108],2],[5109,2],[[5110,5111],3],[5112,1,"Ᏸ"],[5113,1,"Ᏹ"],[5114,1,"Ᏺ"],[5115,1,"Ᏻ"],[5116,1,"Ᏼ"],[5117,1,"Ᏽ"],[[5118,5119],3],[5120,2],[[5121,5740],2],[[5741,5742],2],[[5743,5750],2],[[5751,5759],2],[5760,3],[[5761,5786],2],[[5787,5788],2],[[5789,5791],3],[[5792,5866],2],[[5867,5872],2],[[5873,5880],2],[[5881,5887],3],[[5888,5900],2],[5901,2],[[5902,5908],2],[5909,2],[[5910,5918],3],[5919,2],[[5920,5940],2],[[5941,5942],2],[[5943,5951],3],[[5952,5971],2],[[5972,5983],3],[[5984,5996],2],[5997,3],[[5998,6000],2],[6001,3],[[6002,6003],2],[[6004,6015],3],[[6016,6067],2],[[6068,6069],3],[[6070,6099],2],[[6100,6102],2],[6103,2],[[6104,6107],2],[6108,2],[6109,2],[[6110,6111],3],[[6112,6121],2],[[6122,6127],3],[[6128,6137],2],[[6138,6143],3],[[6144,6149],2],[6150,3],[[6151,6154],2],[[6155,6157],7],[6158,3],[6159,7],[[6160,6169],2],[[6170,6175],3],[[6176,6263],2],[6264,2],[[6265,6271],3],[[6272,6313],2],[6314,2],[[6315,6319],3],[[6320,6389],2],[[6390,6399],3],[[6400,6428],2],[[6429,6430],2],[6431,3],[[6432,6443],2],[[6444,6447],3],[[6448,6459],2],[[6460,6463],3],[6464,2],[[6465,6467],3],[[6468,6469],2],[[6470,6509],2],[[6510,6511],3],[[6512,6516],2],[[6517,6527],3],[[6528,6569],2],[[6570,6571],2],[[6572,6575],3],[[6576,6601],2],[[6602,6607],3],[[6608,6617],2],[6618,2],[[6619,6621],3],[[6622,6623],2],[[6624,6655],2],[[6656,6683],2],[[6684,6685],3],[[6686,6687],2],[[6688,6750],2],[6751,3],[[6752,6780],2],[[6781,6782],3],[[6783,6793],2],[[6794,6799],3],[[6800,6809],2],[[6810,6815],3],[[6816,6822],2],[6823,2],[[6824,6829],2],[[6830,6831],3],[[6832,6845],2],[6846,2],[[6847,6848],2],[[6849,6862],2],[[6863,6911],3],[[6912,6987],2],[6988,2],[[6989,6991],3],[[6992,7001],2],[[7002,7018],2],[[7019,7027],2],[[7028,7036],2],[[7037,7038],2],[7039,3],[[7040,7082],2],[[7083,7085],2],[[7086,7097],2],[[7098,7103],2],[[7104,7155],2],[[7156,7163],3],[[7164,7167],2],[[7168,7223],2],[[7224,7226],3],[[7227,7231],2],[[7232,7241],2],[[7242,7244],3],[[7245,7293],2],[[7294,7295],2],[7296,1,"в"],[7297,1,"д"],[7298,1,"о"],[7299,1,"с"],[[7300,7301],1,"т"],[7302,1,"ъ"],[7303,1,"ѣ"],[7304,1,"ꙋ"],[[7305,7311],3],[7312,1,"ა"],[7313,1,"ბ"],[7314,1,"გ"],[7315,1,"დ"],[7316,1,"ე"],[7317,1,"ვ"],[7318,1,"ზ"],[7319,1,"თ"],[7320,1,"ი"],[7321,1,"კ"],[7322,1,"ლ"],[7323,1,"მ"],[7324,1,"ნ"],[7325,1,"ო"],[7326,1,"პ"],[7327,1,"ჟ"],[7328,1,"რ"],[7329,1,"ს"],[7330,1,"ტ"],[7331,1,"უ"],[7332,1,"ფ"],[7333,1,"ქ"],[7334,1,"ღ"],[7335,1,"ყ"],[7336,1,"შ"],[7337,1,"ჩ"],[7338,1,"ც"],[7339,1,"ძ"],[7340,1,"წ"],[7341,1,"ჭ"],[7342,1,"ხ"],[7343,1,"ჯ"],[7344,1,"ჰ"],[7345,1,"ჱ"],[7346,1,"ჲ"],[7347,1,"ჳ"],[7348,1,"ჴ"],[7349,1,"ჵ"],[7350,1,"ჶ"],[7351,1,"ჷ"],[7352,1,"ჸ"],[7353,1,"ჹ"],[7354,1,"ჺ"],[[7355,7356],3],[7357,1,"ჽ"],[7358,1,"ჾ"],[7359,1,"ჿ"],[[7360,7367],2],[[7368,7375],3],[[7376,7378],2],[7379,2],[[7380,7410],2],[[7411,7414],2],[7415,2],[[7416,7417],2],[7418,2],[[7419,7423],3],[[7424,7467],2],[7468,1,"a"],[7469,1,"æ"],[7470,1,"b"],[7471,2],[7472,1,"d"],[7473,1,"e"],[7474,1,"ǝ"],[7475,1,"g"],[7476,1,"h"],[7477,1,"i"],[7478,1,"j"],[7479,1,"k"],[7480,1,"l"],[7481,1,"m"],[7482,1,"n"],[7483,2],[7484,1,"o"],[7485,1,"ȣ"],[7486,1,"p"],[7487,1,"r"],[7488,1,"t"],[7489,1,"u"],[7490,1,"w"],[7491,1,"a"],[7492,1,"ɐ"],[7493,1,"ɑ"],[7494,1,"ᴂ"],[7495,1,"b"],[7496,1,"d"],[7497,1,"e"],[7498,1,"ə"],[7499,1,"ɛ"],[7500,1,"ɜ"],[7501,1,"g"],[7502,2],[7503,1,"k"],[7504,1,"m"],[7505,1,"ŋ"],[7506,1,"o"],[7507,1,"ɔ"],[7508,1,"ᴖ"],[7509,1,"ᴗ"],[7510,1,"p"],[7511,1,"t"],[7512,1,"u"],[7513,1,"ᴝ"],[7514,1,"ɯ"],[7515,1,"v"],[7516,1,"ᴥ"],[7517,1,"β"],[7518,1,"γ"],[7519,1,"δ"],[7520,1,"φ"],[7521,1,"χ"],[7522,1,"i"],[7523,1,"r"],[7524,1,"u"],[7525,1,"v"],[7526,1,"β"],[7527,1,"γ"],[7528,1,"ρ"],[7529,1,"φ"],[7530,1,"χ"],[7531,2],[[7532,7543],2],[7544,1,"н"],[[7545,7578],2],[7579,1,"ɒ"],[7580,1,"c"],[7581,1,"ɕ"],[7582,1,"ð"],[7583,1,"ɜ"],[7584,1,"f"],[7585,1,"ɟ"],[7586,1,"ɡ"],[7587,1,"ɥ"],[7588,1,"ɨ"],[7589,1,"ɩ"],[7590,1,"ɪ"],[7591,1,"ᵻ"],[7592,1,"ʝ"],[7593,1,"ɭ"],[7594,1,"ᶅ"],[7595,1,"ʟ"],[7596,1,"ɱ"],[7597,1,"ɰ"],[7598,1,"ɲ"],[7599,1,"ɳ"],[7600,1,"ɴ"],[7601,1,"ɵ"],[7602,1,"ɸ"],[7603,1,"ʂ"],[7604,1,"ʃ"],[7605,1,"ƫ"],[7606,1,"ʉ"],[7607,1,"ʊ"],[7608,1,"ᴜ"],[7609,1,"ʋ"],[7610,1,"ʌ"],[7611,1,"z"],[7612,1,"ʐ"],[7613,1,"ʑ"],[7614,1,"ʒ"],[7615,1,"θ"],[[7616,7619],2],[[7620,7626],2],[[7627,7654],2],[[7655,7669],2],[[7670,7673],2],[7674,2],[7675,2],[7676,2],[7677,2],[[7678,7679],2],[7680,1,"ḁ"],[7681,2],[7682,1,"ḃ"],[7683,2],[7684,1,"ḅ"],[7685,2],[7686,1,"ḇ"],[7687,2],[7688,1,"ḉ"],[7689,2],[7690,1,"ḋ"],[7691,2],[7692,1,"ḍ"],[7693,2],[7694,1,"ḏ"],[7695,2],[7696,1,"ḑ"],[7697,2],[7698,1,"ḓ"],[7699,2],[7700,1,"ḕ"],[7701,2],[7702,1,"ḗ"],[7703,2],[7704,1,"ḙ"],[7705,2],[7706,1,"ḛ"],[7707,2],[7708,1,"ḝ"],[7709,2],[7710,1,"ḟ"],[7711,2],[7712,1,"ḡ"],[7713,2],[7714,1,"ḣ"],[7715,2],[7716,1,"ḥ"],[7717,2],[7718,1,"ḧ"],[7719,2],[7720,1,"ḩ"],[7721,2],[7722,1,"ḫ"],[7723,2],[7724,1,"ḭ"],[7725,2],[7726,1,"ḯ"],[7727,2],[7728,1,"ḱ"],[7729,2],[7730,1,"ḳ"],[7731,2],[7732,1,"ḵ"],[7733,2],[7734,1,"ḷ"],[7735,2],[7736,1,"ḹ"],[7737,2],[7738,1,"ḻ"],[7739,2],[7740,1,"ḽ"],[7741,2],[7742,1,"ḿ"],[7743,2],[7744,1,"ṁ"],[7745,2],[7746,1,"ṃ"],[7747,2],[7748,1,"ṅ"],[7749,2],[7750,1,"ṇ"],[7751,2],[7752,1,"ṉ"],[7753,2],[7754,1,"ṋ"],[7755,2],[7756,1,"ṍ"],[7757,2],[7758,1,"ṏ"],[7759,2],[7760,1,"ṑ"],[7761,2],[7762,1,"ṓ"],[7763,2],[7764,1,"ṕ"],[7765,2],[7766,1,"ṗ"],[7767,2],[7768,1,"ṙ"],[7769,2],[7770,1,"ṛ"],[7771,2],[7772,1,"ṝ"],[7773,2],[7774,1,"ṟ"],[7775,2],[7776,1,"ṡ"],[7777,2],[7778,1,"ṣ"],[7779,2],[7780,1,"ṥ"],[7781,2],[7782,1,"ṧ"],[7783,2],[7784,1,"ṩ"],[7785,2],[7786,1,"ṫ"],[7787,2],[7788,1,"ṭ"],[7789,2],[7790,1,"ṯ"],[7791,2],[7792,1,"ṱ"],[7793,2],[7794,1,"ṳ"],[7795,2],[7796,1,"ṵ"],[7797,2],[7798,1,"ṷ"],[7799,2],[7800,1,"ṹ"],[7801,2],[7802,1,"ṻ"],[7803,2],[7804,1,"ṽ"],[7805,2],[7806,1,"ṿ"],[7807,2],[7808,1,"ẁ"],[7809,2],[7810,1,"ẃ"],[7811,2],[7812,1,"ẅ"],[7813,2],[7814,1,"ẇ"],[7815,2],[7816,1,"ẉ"],[7817,2],[7818,1,"ẋ"],[7819,2],[7820,1,"ẍ"],[7821,2],[7822,1,"ẏ"],[7823,2],[7824,1,"ẑ"],[7825,2],[7826,1,"ẓ"],[7827,2],[7828,1,"ẕ"],[[7829,7833],2],[7834,1,"aʾ"],[7835,1,"ṡ"],[[7836,7837],2],[7838,1,"ss"],[7839,2],[7840,1,"ạ"],[7841,2],[7842,1,"ả"],[7843,2],[7844,1,"ấ"],[7845,2],[7846,1,"ầ"],[7847,2],[7848,1,"ẩ"],[7849,2],[7850,1,"ẫ"],[7851,2],[7852,1,"ậ"],[7853,2],[7854,1,"ắ"],[7855,2],[7856,1,"ằ"],[7857,2],[7858,1,"ẳ"],[7859,2],[7860,1,"ẵ"],[7861,2],[7862,1,"ặ"],[7863,2],[7864,1,"ẹ"],[7865,2],[7866,1,"ẻ"],[7867,2],[7868,1,"ẽ"],[7869,2],[7870,1,"ế"],[7871,2],[7872,1,"ề"],[7873,2],[7874,1,"ể"],[7875,2],[7876,1,"ễ"],[7877,2],[7878,1,"ệ"],[7879,2],[7880,1,"ỉ"],[7881,2],[7882,1,"ị"],[7883,2],[7884,1,"ọ"],[7885,2],[7886,1,"ỏ"],[7887,2],[7888,1,"ố"],[7889,2],[7890,1,"ồ"],[7891,2],[7892,1,"ổ"],[7893,2],[7894,1,"ỗ"],[7895,2],[7896,1,"ộ"],[7897,2],[7898,1,"ớ"],[7899,2],[7900,1,"ờ"],[7901,2],[7902,1,"ở"],[7903,2],[7904,1,"ỡ"],[7905,2],[7906,1,"ợ"],[7907,2],[7908,1,"ụ"],[7909,2],[7910,1,"ủ"],[7911,2],[7912,1,"ứ"],[7913,2],[7914,1,"ừ"],[7915,2],[7916,1,"ử"],[7917,2],[7918,1,"ữ"],[7919,2],[7920,1,"ự"],[7921,2],[7922,1,"ỳ"],[7923,2],[7924,1,"ỵ"],[7925,2],[7926,1,"ỷ"],[7927,2],[7928,1,"ỹ"],[7929,2],[7930,1,"ỻ"],[7931,2],[7932,1,"ỽ"],[7933,2],[7934,1,"ỿ"],[7935,2],[[7936,7943],2],[7944,1,"ἀ"],[7945,1,"ἁ"],[7946,1,"ἂ"],[7947,1,"ἃ"],[7948,1,"ἄ"],[7949,1,"ἅ"],[7950,1,"ἆ"],[7951,1,"ἇ"],[[7952,7957],2],[[7958,7959],3],[7960,1,"ἐ"],[7961,1,"ἑ"],[7962,1,"ἒ"],[7963,1,"ἓ"],[7964,1,"ἔ"],[7965,1,"ἕ"],[[7966,7967],3],[[7968,7975],2],[7976,1,"ἠ"],[7977,1,"ἡ"],[7978,1,"ἢ"],[7979,1,"ἣ"],[7980,1,"ἤ"],[7981,1,"ἥ"],[7982,1,"ἦ"],[7983,1,"ἧ"],[[7984,7991],2],[7992,1,"ἰ"],[7993,1,"ἱ"],[7994,1,"ἲ"],[7995,1,"ἳ"],[7996,1,"ἴ"],[7997,1,"ἵ"],[7998,1,"ἶ"],[7999,1,"ἷ"],[[8000,8005],2],[[8006,8007],3],[8008,1,"ὀ"],[8009,1,"ὁ"],[8010,1,"ὂ"],[8011,1,"ὃ"],[8012,1,"ὄ"],[8013,1,"ὅ"],[[8014,8015],3],[[8016,8023],2],[8024,3],[8025,1,"ὑ"],[8026,3],[8027,1,"ὓ"],[8028,3],[8029,1,"ὕ"],[8030,3],[8031,1,"ὗ"],[[8032,8039],2],[8040,1,"ὠ"],[8041,1,"ὡ"],[8042,1,"ὢ"],[8043,1,"ὣ"],[8044,1,"ὤ"],[8045,1,"ὥ"],[8046,1,"ὦ"],[8047,1,"ὧ"],[8048,2],[8049,1,"ά"],[8050,2],[8051,1,"έ"],[8052,2],[8053,1,"ή"],[8054,2],[8055,1,"ί"],[8056,2],[8057,1,"ό"],[8058,2],[8059,1,"ύ"],[8060,2],[8061,1,"ώ"],[[8062,8063],3],[8064,1,"ἀι"],[8065,1,"ἁι"],[8066,1,"ἂι"],[8067,1,"ἃι"],[8068,1,"ἄι"],[8069,1,"ἅι"],[8070,1,"ἆι"],[8071,1,"ἇι"],[8072,1,"ἀι"],[8073,1,"ἁι"],[8074,1,"ἂι"],[8075,1,"ἃι"],[8076,1,"ἄι"],[8077,1,"ἅι"],[8078,1,"ἆι"],[8079,1,"ἇι"],[8080,1,"ἠι"],[8081,1,"ἡι"],[8082,1,"ἢι"],[8083,1,"ἣι"],[8084,1,"ἤι"],[8085,1,"ἥι"],[8086,1,"ἦι"],[8087,1,"ἧι"],[8088,1,"ἠι"],[8089,1,"ἡι"],[8090,1,"ἢι"],[8091,1,"ἣι"],[8092,1,"ἤι"],[8093,1,"ἥι"],[8094,1,"ἦι"],[8095,1,"ἧι"],[8096,1,"ὠι"],[8097,1,"ὡι"],[8098,1,"ὢι"],[8099,1,"ὣι"],[8100,1,"ὤι"],[8101,1,"ὥι"],[8102,1,"ὦι"],[8103,1,"ὧι"],[8104,1,"ὠι"],[8105,1,"ὡι"],[8106,1,"ὢι"],[8107,1,"ὣι"],[8108,1,"ὤι"],[8109,1,"ὥι"],[8110,1,"ὦι"],[8111,1,"ὧι"],[[8112,8113],2],[8114,1,"ὰι"],[8115,1,"αι"],[8116,1,"άι"],[8117,3],[8118,2],[8119,1,"ᾶι"],[8120,1,"ᾰ"],[8121,1,"ᾱ"],[8122,1,"ὰ"],[8123,1,"ά"],[8124,1,"αι"],[8125,5," ̓"],[8126,1,"ι"],[8127,5," ̓"],[8128,5," ͂"],[8129,5," ̈͂"],[8130,1,"ὴι"],[8131,1,"ηι"],[8132,1,"ήι"],[8133,3],[8134,2],[8135,1,"ῆι"],[8136,1,"ὲ"],[8137,1,"έ"],[8138,1,"ὴ"],[8139,1,"ή"],[8140,1,"ηι"],[8141,5," ̓̀"],[8142,5," ̓́"],[8143,5," ̓͂"],[[8144,8146],2],[8147,1,"ΐ"],[[8148,8149],3],[[8150,8151],2],[8152,1,"ῐ"],[8153,1,"ῑ"],[8154,1,"ὶ"],[8155,1,"ί"],[8156,3],[8157,5," ̔̀"],[8158,5," ̔́"],[8159,5," ̔͂"],[[8160,8162],2],[8163,1,"ΰ"],[[8164,8167],2],[8168,1,"ῠ"],[8169,1,"ῡ"],[8170,1,"ὺ"],[8171,1,"ύ"],[8172,1,"ῥ"],[8173,5," ̈̀"],[8174,5," ̈́"],[8175,5,"`"],[[8176,8177],3],[8178,1,"ὼι"],[8179,1,"ωι"],[8180,1,"ώι"],[8181,3],[8182,2],[8183,1,"ῶι"],[8184,1,"ὸ"],[8185,1,"ό"],[8186,1,"ὼ"],[8187,1,"ώ"],[8188,1,"ωι"],[8189,5," ́"],[8190,5," ̔"],[8191,3],[[8192,8202],5," "],[8203,7],[[8204,8205],6,""],[[8206,8207],3],[8208,2],[8209,1,"‐"],[[8210,8214],2],[8215,5," ̳"],[[8216,8227],2],[[8228,8230],3],[8231,2],[[8232,8238],3],[8239,5," "],[[8240,8242],2],[8243,1,"′′"],[8244,1,"′′′"],[8245,2],[8246,1,"‵‵"],[8247,1,"‵‵‵"],[[8248,8251],2],[8252,5,"!!"],[8253,2],[8254,5," ̅"],[[8255,8262],2],[8263,5,"??"],[8264,5,"?!"],[8265,5,"!?"],[[8266,8269],2],[[8270,8274],2],[[8275,8276],2],[[8277,8278],2],[8279,1,"′′′′"],[[8280,8286],2],[8287,5," "],[8288,7],[[8289,8291],3],[8292,7],[8293,3],[[8294,8297],3],[[8298,8303],3],[8304,1,"0"],[8305,1,"i"],[[8306,8307],3],[8308,1,"4"],[8309,1,"5"],[8310,1,"6"],[8311,1,"7"],[8312,1,"8"],[8313,1,"9"],[8314,5,"+"],[8315,1,"−"],[8316,5,"="],[8317,5,"("],[8318,5,")"],[8319,1,"n"],[8320,1,"0"],[8321,1,"1"],[8322,1,"2"],[8323,1,"3"],[8324,1,"4"],[8325,1,"5"],[8326,1,"6"],[8327,1,"7"],[8328,1,"8"],[8329,1,"9"],[8330,5,"+"],[8331,1,"−"],[8332,5,"="],[8333,5,"("],[8334,5,")"],[8335,3],[8336,1,"a"],[8337,1,"e"],[8338,1,"o"],[8339,1,"x"],[8340,1,"ə"],[8341,1,"h"],[8342,1,"k"],[8343,1,"l"],[8344,1,"m"],[8345,1,"n"],[8346,1,"p"],[8347,1,"s"],[8348,1,"t"],[[8349,8351],3],[[8352,8359],2],[8360,1,"rs"],[[8361,8362],2],[8363,2],[8364,2],[[8365,8367],2],[[8368,8369],2],[[8370,8373],2],[[8374,8376],2],[8377,2],[8378,2],[[8379,8381],2],[8382,2],[8383,2],[8384,2],[[8385,8399],3],[[8400,8417],2],[[8418,8419],2],[[8420,8426],2],[8427,2],[[8428,8431],2],[8432,2],[[8433,8447],3],[8448,5,"a/c"],[8449,5,"a/s"],[8450,1,"c"],[8451,1,"°c"],[8452,2],[8453,5,"c/o"],[8454,5,"c/u"],[8455,1,"ɛ"],[8456,2],[8457,1,"°f"],[8458,1,"g"],[[8459,8462],1,"h"],[8463,1,"ħ"],[[8464,8465],1,"i"],[[8466,8467],1,"l"],[8468,2],[8469,1,"n"],[8470,1,"no"],[[8471,8472],2],[8473,1,"p"],[8474,1,"q"],[[8475,8477],1,"r"],[[8478,8479],2],[8480,1,"sm"],[8481,1,"tel"],[8482,1,"tm"],[8483,2],[8484,1,"z"],[8485,2],[8486,1,"ω"],[8487,2],[8488,1,"z"],[8489,2],[8490,1,"k"],[8491,1,"å"],[8492,1,"b"],[8493,1,"c"],[8494,2],[[8495,8496],1,"e"],[8497,1,"f"],[8498,3],[8499,1,"m"],[8500,1,"o"],[8501,1,"א"],[8502,1,"ב"],[8503,1,"ג"],[8504,1,"ד"],[8505,1,"i"],[8506,2],[8507,1,"fax"],[8508,1,"π"],[[8509,8510],1,"γ"],[8511,1,"π"],[8512,1,"∑"],[[8513,8516],2],[[8517,8518],1,"d"],[8519,1,"e"],[8520,1,"i"],[8521,1,"j"],[[8522,8523],2],[8524,2],[8525,2],[8526,2],[8527,2],[8528,1,"1⁄7"],[8529,1,"1⁄9"],[8530,1,"1⁄10"],[8531,1,"1⁄3"],[8532,1,"2⁄3"],[8533,1,"1⁄5"],[8534,1,"2⁄5"],[8535,1,"3⁄5"],[8536,1,"4⁄5"],[8537,1,"1⁄6"],[8538,1,"5⁄6"],[8539,1,"1⁄8"],[8540,1,"3⁄8"],[8541,1,"5⁄8"],[8542,1,"7⁄8"],[8543,1,"1⁄"],[8544,1,"i"],[8545,1,"ii"],[8546,1,"iii"],[8547,1,"iv"],[8548,1,"v"],[8549,1,"vi"],[8550,1,"vii"],[8551,1,"viii"],[8552,1,"ix"],[8553,1,"x"],[8554,1,"xi"],[8555,1,"xii"],[8556,1,"l"],[8557,1,"c"],[8558,1,"d"],[8559,1,"m"],[8560,1,"i"],[8561,1,"ii"],[8562,1,"iii"],[8563,1,"iv"],[8564,1,"v"],[8565,1,"vi"],[8566,1,"vii"],[8567,1,"viii"],[8568,1,"ix"],[8569,1,"x"],[8570,1,"xi"],[8571,1,"xii"],[8572,1,"l"],[8573,1,"c"],[8574,1,"d"],[8575,1,"m"],[[8576,8578],2],[8579,3],[8580,2],[[8581,8584],2],[8585,1,"0⁄3"],[[8586,8587],2],[[8588,8591],3],[[8592,8682],2],[[8683,8691],2],[[8692,8703],2],[[8704,8747],2],[8748,1,"∫∫"],[8749,1,"∫∫∫"],[8750,2],[8751,1,"∮∮"],[8752,1,"∮∮∮"],[[8753,8799],2],[8800,4],[[8801,8813],2],[[8814,8815],4],[[8816,8945],2],[[8946,8959],2],[8960,2],[8961,2],[[8962,9000],2],[9001,1,"〈"],[9002,1,"〉"],[[9003,9082],2],[9083,2],[9084,2],[[9085,9114],2],[[9115,9166],2],[[9167,9168],2],[[9169,9179],2],[[9180,9191],2],[9192,2],[[9193,9203],2],[[9204,9210],2],[[9211,9214],2],[9215,2],[[9216,9252],2],[[9253,9254],2],[[9255,9279],3],[[9280,9290],2],[[9291,9311],3],[9312,1,"1"],[9313,1,"2"],[9314,1,"3"],[9315,1,"4"],[9316,1,"5"],[9317,1,"6"],[9318,1,"7"],[9319,1,"8"],[9320,1,"9"],[9321,1,"10"],[9322,1,"11"],[9323,1,"12"],[9324,1,"13"],[9325,1,"14"],[9326,1,"15"],[9327,1,"16"],[9328,1,"17"],[9329,1,"18"],[9330,1,"19"],[9331,1,"20"],[9332,5,"(1)"],[9333,5,"(2)"],[9334,5,"(3)"],[9335,5,"(4)"],[9336,5,"(5)"],[9337,5,"(6)"],[9338,5,"(7)"],[9339,5,"(8)"],[9340,5,"(9)"],[9341,5,"(10)"],[9342,5,"(11)"],[9343,5,"(12)"],[9344,5,"(13)"],[9345,5,"(14)"],[9346,5,"(15)"],[9347,5,"(16)"],[9348,5,"(17)"],[9349,5,"(18)"],[9350,5,"(19)"],[9351,5,"(20)"],[[9352,9371],3],[9372,5,"(a)"],[9373,5,"(b)"],[9374,5,"(c)"],[9375,5,"(d)"],[9376,5,"(e)"],[9377,5,"(f)"],[9378,5,"(g)"],[9379,5,"(h)"],[9380,5,"(i)"],[9381,5,"(j)"],[9382,5,"(k)"],[9383,5,"(l)"],[9384,5,"(m)"],[9385,5,"(n)"],[9386,5,"(o)"],[9387,5,"(p)"],[9388,5,"(q)"],[9389,5,"(r)"],[9390,5,"(s)"],[9391,5,"(t)"],[9392,5,"(u)"],[9393,5,"(v)"],[9394,5,"(w)"],[9395,5,"(x)"],[9396,5,"(y)"],[9397,5,"(z)"],[9398,1,"a"],[9399,1,"b"],[9400,1,"c"],[9401,1,"d"],[9402,1,"e"],[9403,1,"f"],[9404,1,"g"],[9405,1,"h"],[9406,1,"i"],[9407,1,"j"],[9408,1,"k"],[9409,1,"l"],[9410,1,"m"],[9411,1,"n"],[9412,1,"o"],[9413,1,"p"],[9414,1,"q"],[9415,1,"r"],[9416,1,"s"],[9417,1,"t"],[9418,1,"u"],[9419,1,"v"],[9420,1,"w"],[9421,1,"x"],[9422,1,"y"],[9423,1,"z"],[9424,1,"a"],[9425,1,"b"],[9426,1,"c"],[9427,1,"d"],[9428,1,"e"],[9429,1,"f"],[9430,1,"g"],[9431,1,"h"],[9432,1,"i"],[9433,1,"j"],[9434,1,"k"],[9435,1,"l"],[9436,1,"m"],[9437,1,"n"],[9438,1,"o"],[9439,1,"p"],[9440,1,"q"],[9441,1,"r"],[9442,1,"s"],[9443,1,"t"],[9444,1,"u"],[9445,1,"v"],[9446,1,"w"],[9447,1,"x"],[9448,1,"y"],[9449,1,"z"],[9450,1,"0"],[[9451,9470],2],[9471,2],[[9472,9621],2],[[9622,9631],2],[[9632,9711],2],[[9712,9719],2],[[9720,9727],2],[[9728,9747],2],[[9748,9749],2],[[9750,9751],2],[9752,2],[9753,2],[[9754,9839],2],[[9840,9841],2],[[9842,9853],2],[[9854,9855],2],[[9856,9865],2],[[9866,9873],2],[[9874,9884],2],[9885,2],[[9886,9887],2],[[9888,9889],2],[[9890,9905],2],[9906,2],[[9907,9916],2],[[9917,9919],2],[[9920,9923],2],[[9924,9933],2],[9934,2],[[9935,9953],2],[9954,2],[9955,2],[[9956,9959],2],[[9960,9983],2],[9984,2],[[9985,9988],2],[9989,2],[[9990,9993],2],[[9994,9995],2],[[9996,10023],2],[10024,2],[[10025,10059],2],[10060,2],[10061,2],[10062,2],[[10063,10066],2],[[10067,10069],2],[10070,2],[10071,2],[[10072,10078],2],[[10079,10080],2],[[10081,10087],2],[[10088,10101],2],[[10102,10132],2],[[10133,10135],2],[[10136,10159],2],[10160,2],[[10161,10174],2],[10175,2],[[10176,10182],2],[[10183,10186],2],[10187,2],[10188,2],[10189,2],[[10190,10191],2],[[10192,10219],2],[[10220,10223],2],[[10224,10239],2],[[10240,10495],2],[[10496,10763],2],[10764,1,"∫∫∫∫"],[[10765,10867],2],[10868,5,"::="],[10869,5,"=="],[10870,5,"==="],[[10871,10971],2],[10972,1,"⫝̸"],[[10973,11007],2],[[11008,11021],2],[[11022,11027],2],[[11028,11034],2],[[11035,11039],2],[[11040,11043],2],[[11044,11084],2],[[11085,11087],2],[[11088,11092],2],[[11093,11097],2],[[11098,11123],2],[[11124,11125],3],[[11126,11157],2],[11158,3],[11159,2],[[11160,11193],2],[[11194,11196],2],[[11197,11208],2],[11209,2],[[11210,11217],2],[11218,2],[[11219,11243],2],[[11244,11247],2],[[11248,11262],2],[11263,2],[11264,1,"ⰰ"],[11265,1,"ⰱ"],[11266,1,"ⰲ"],[11267,1,"ⰳ"],[11268,1,"ⰴ"],[11269,1,"ⰵ"],[11270,1,"ⰶ"],[11271,1,"ⰷ"],[11272,1,"ⰸ"],[11273,1,"ⰹ"],[11274,1,"ⰺ"],[11275,1,"ⰻ"],[11276,1,"ⰼ"],[11277,1,"ⰽ"],[11278,1,"ⰾ"],[11279,1,"ⰿ"],[11280,1,"ⱀ"],[11281,1,"ⱁ"],[11282,1,"ⱂ"],[11283,1,"ⱃ"],[11284,1,"ⱄ"],[11285,1,"ⱅ"],[11286,1,"ⱆ"],[11287,1,"ⱇ"],[11288,1,"ⱈ"],[11289,1,"ⱉ"],[11290,1,"ⱊ"],[11291,1,"ⱋ"],[11292,1,"ⱌ"],[11293,1,"ⱍ"],[11294,1,"ⱎ"],[11295,1,"ⱏ"],[11296,1,"ⱐ"],[11297,1,"ⱑ"],[11298,1,"ⱒ"],[11299,1,"ⱓ"],[11300,1,"ⱔ"],[11301,1,"ⱕ"],[11302,1,"ⱖ"],[11303,1,"ⱗ"],[11304,1,"ⱘ"],[11305,1,"ⱙ"],[11306,1,"ⱚ"],[11307,1,"ⱛ"],[11308,1,"ⱜ"],[11309,1,"ⱝ"],[11310,1,"ⱞ"],[11311,1,"ⱟ"],[[11312,11358],2],[11359,2],[11360,1,"ⱡ"],[11361,2],[11362,1,"ɫ"],[11363,1,"ᵽ"],[11364,1,"ɽ"],[[11365,11366],2],[11367,1,"ⱨ"],[11368,2],[11369,1,"ⱪ"],[11370,2],[11371,1,"ⱬ"],[11372,2],[11373,1,"ɑ"],[11374,1,"ɱ"],[11375,1,"ɐ"],[11376,1,"ɒ"],[11377,2],[11378,1,"ⱳ"],[11379,2],[11380,2],[11381,1,"ⱶ"],[[11382,11383],2],[[11384,11387],2],[11388,1,"j"],[11389,1,"v"],[11390,1,"ȿ"],[11391,1,"ɀ"],[11392,1,"ⲁ"],[11393,2],[11394,1,"ⲃ"],[11395,2],[11396,1,"ⲅ"],[11397,2],[11398,1,"ⲇ"],[11399,2],[11400,1,"ⲉ"],[11401,2],[11402,1,"ⲋ"],[11403,2],[11404,1,"ⲍ"],[11405,2],[11406,1,"ⲏ"],[11407,2],[11408,1,"ⲑ"],[11409,2],[11410,1,"ⲓ"],[11411,2],[11412,1,"ⲕ"],[11413,2],[11414,1,"ⲗ"],[11415,2],[11416,1,"ⲙ"],[11417,2],[11418,1,"ⲛ"],[11419,2],[11420,1,"ⲝ"],[11421,2],[11422,1,"ⲟ"],[11423,2],[11424,1,"ⲡ"],[11425,2],[11426,1,"ⲣ"],[11427,2],[11428,1,"ⲥ"],[11429,2],[11430,1,"ⲧ"],[11431,2],[11432,1,"ⲩ"],[11433,2],[11434,1,"ⲫ"],[11435,2],[11436,1,"ⲭ"],[11437,2],[11438,1,"ⲯ"],[11439,2],[11440,1,"ⲱ"],[11441,2],[11442,1,"ⲳ"],[11443,2],[11444,1,"ⲵ"],[11445,2],[11446,1,"ⲷ"],[11447,2],[11448,1,"ⲹ"],[11449,2],[11450,1,"ⲻ"],[11451,2],[11452,1,"ⲽ"],[11453,2],[11454,1,"ⲿ"],[11455,2],[11456,1,"ⳁ"],[11457,2],[11458,1,"ⳃ"],[11459,2],[11460,1,"ⳅ"],[11461,2],[11462,1,"ⳇ"],[11463,2],[11464,1,"ⳉ"],[11465,2],[11466,1,"ⳋ"],[11467,2],[11468,1,"ⳍ"],[11469,2],[11470,1,"ⳏ"],[11471,2],[11472,1,"ⳑ"],[11473,2],[11474,1,"ⳓ"],[11475,2],[11476,1,"ⳕ"],[11477,2],[11478,1,"ⳗ"],[11479,2],[11480,1,"ⳙ"],[11481,2],[11482,1,"ⳛ"],[11483,2],[11484,1,"ⳝ"],[11485,2],[11486,1,"ⳟ"],[11487,2],[11488,1,"ⳡ"],[11489,2],[11490,1,"ⳣ"],[[11491,11492],2],[[11493,11498],2],[11499,1,"ⳬ"],[11500,2],[11501,1,"ⳮ"],[[11502,11505],2],[11506,1,"ⳳ"],[11507,2],[[11508,11512],3],[[11513,11519],2],[[11520,11557],2],[11558,3],[11559,2],[[11560,11564],3],[11565,2],[[11566,11567],3],[[11568,11621],2],[[11622,11623],2],[[11624,11630],3],[11631,1,"ⵡ"],[11632,2],[[11633,11646],3],[11647,2],[[11648,11670],2],[[11671,11679],3],[[11680,11686],2],[11687,3],[[11688,11694],2],[11695,3],[[11696,11702],2],[11703,3],[[11704,11710],2],[11711,3],[[11712,11718],2],[11719,3],[[11720,11726],2],[11727,3],[[11728,11734],2],[11735,3],[[11736,11742],2],[11743,3],[[11744,11775],2],[[11776,11799],2],[[11800,11803],2],[[11804,11805],2],[[11806,11822],2],[11823,2],[11824,2],[11825,2],[[11826,11835],2],[[11836,11842],2],[[11843,11844],2],[[11845,11849],2],[[11850,11854],2],[11855,2],[[11856,11858],2],[[11859,11869],2],[[11870,11903],3],[[11904,11929],2],[11930,3],[[11931,11934],2],[11935,1,"母"],[[11936,12018],2],[12019,1,"龟"],[[12020,12031],3],[12032,1,"一"],[12033,1,"丨"],[12034,1,"丶"],[12035,1,"丿"],[12036,1,"乙"],[12037,1,"亅"],[12038,1,"二"],[12039,1,"亠"],[12040,1,"人"],[12041,1,"儿"],[12042,1,"入"],[12043,1,"八"],[12044,1,"冂"],[12045,1,"冖"],[12046,1,"冫"],[12047,1,"几"],[12048,1,"凵"],[12049,1,"刀"],[12050,1,"力"],[12051,1,"勹"],[12052,1,"匕"],[12053,1,"匚"],[12054,1,"匸"],[12055,1,"十"],[12056,1,"卜"],[12057,1,"卩"],[12058,1,"厂"],[12059,1,"厶"],[12060,1,"又"],[12061,1,"口"],[12062,1,"囗"],[12063,1,"土"],[12064,1,"士"],[12065,1,"夂"],[12066,1,"夊"],[12067,1,"夕"],[12068,1,"大"],[12069,1,"女"],[12070,1,"子"],[12071,1,"宀"],[12072,1,"寸"],[12073,1,"小"],[12074,1,"尢"],[12075,1,"尸"],[12076,1,"屮"],[12077,1,"山"],[12078,1,"巛"],[12079,1,"工"],[12080,1,"己"],[12081,1,"巾"],[12082,1,"干"],[12083,1,"幺"],[12084,1,"广"],[12085,1,"廴"],[12086,1,"廾"],[12087,1,"弋"],[12088,1,"弓"],[12089,1,"彐"],[12090,1,"彡"],[12091,1,"彳"],[12092,1,"心"],[12093,1,"戈"],[12094,1,"戶"],[12095,1,"手"],[12096,1,"支"],[12097,1,"攴"],[12098,1,"文"],[12099,1,"斗"],[12100,1,"斤"],[12101,1,"方"],[12102,1,"无"],[12103,1,"日"],[12104,1,"曰"],[12105,1,"月"],[12106,1,"木"],[12107,1,"欠"],[12108,1,"止"],[12109,1,"歹"],[12110,1,"殳"],[12111,1,"毋"],[12112,1,"比"],[12113,1,"毛"],[12114,1,"氏"],[12115,1,"气"],[12116,1,"水"],[12117,1,"火"],[12118,1,"爪"],[12119,1,"父"],[12120,1,"爻"],[12121,1,"爿"],[12122,1,"片"],[12123,1,"牙"],[12124,1,"牛"],[12125,1,"犬"],[12126,1,"玄"],[12127,1,"玉"],[12128,1,"瓜"],[12129,1,"瓦"],[12130,1,"甘"],[12131,1,"生"],[12132,1,"用"],[12133,1,"田"],[12134,1,"疋"],[12135,1,"疒"],[12136,1,"癶"],[12137,1,"白"],[12138,1,"皮"],[12139,1,"皿"],[12140,1,"目"],[12141,1,"矛"],[12142,1,"矢"],[12143,1,"石"],[12144,1,"示"],[12145,1,"禸"],[12146,1,"禾"],[12147,1,"穴"],[12148,1,"立"],[12149,1,"竹"],[12150,1,"米"],[12151,1,"糸"],[12152,1,"缶"],[12153,1,"网"],[12154,1,"羊"],[12155,1,"羽"],[12156,1,"老"],[12157,1,"而"],[12158,1,"耒"],[12159,1,"耳"],[12160,1,"聿"],[12161,1,"肉"],[12162,1,"臣"],[12163,1,"自"],[12164,1,"至"],[12165,1,"臼"],[12166,1,"舌"],[12167,1,"舛"],[12168,1,"舟"],[12169,1,"艮"],[12170,1,"色"],[12171,1,"艸"],[12172,1,"虍"],[12173,1,"虫"],[12174,1,"血"],[12175,1,"行"],[12176,1,"衣"],[12177,1,"襾"],[12178,1,"見"],[12179,1,"角"],[12180,1,"言"],[12181,1,"谷"],[12182,1,"豆"],[12183,1,"豕"],[12184,1,"豸"],[12185,1,"貝"],[12186,1,"赤"],[12187,1,"走"],[12188,1,"足"],[12189,1,"身"],[12190,1,"車"],[12191,1,"辛"],[12192,1,"辰"],[12193,1,"辵"],[12194,1,"邑"],[12195,1,"酉"],[12196,1,"釆"],[12197,1,"里"],[12198,1,"金"],[12199,1,"長"],[12200,1,"門"],[12201,1,"阜"],[12202,1,"隶"],[12203,1,"隹"],[12204,1,"雨"],[12205,1,"靑"],[12206,1,"非"],[12207,1,"面"],[12208,1,"革"],[12209,1,"韋"],[12210,1,"韭"],[12211,1,"音"],[12212,1,"頁"],[12213,1,"風"],[12214,1,"飛"],[12215,1,"食"],[12216,1,"首"],[12217,1,"香"],[12218,1,"馬"],[12219,1,"骨"],[12220,1,"高"],[12221,1,"髟"],[12222,1,"鬥"],[12223,1,"鬯"],[12224,1,"鬲"],[12225,1,"鬼"],[12226,1,"魚"],[12227,1,"鳥"],[12228,1,"鹵"],[12229,1,"鹿"],[12230,1,"麥"],[12231,1,"麻"],[12232,1,"黃"],[12233,1,"黍"],[12234,1,"黑"],[12235,1,"黹"],[12236,1,"黽"],[12237,1,"鼎"],[12238,1,"鼓"],[12239,1,"鼠"],[12240,1,"鼻"],[12241,1,"齊"],[12242,1,"齒"],[12243,1,"龍"],[12244,1,"龜"],[12245,1,"龠"],[[12246,12271],3],[[12272,12283],3],[[12284,12287],3],[12288,5," "],[12289,2],[12290,1,"."],[[12291,12292],2],[[12293,12295],2],[[12296,12329],2],[[12330,12333],2],[[12334,12341],2],[12342,1,"〒"],[12343,2],[12344,1,"十"],[12345,1,"卄"],[12346,1,"卅"],[12347,2],[12348,2],[12349,2],[12350,2],[12351,2],[12352,3],[[12353,12436],2],[[12437,12438],2],[[12439,12440],3],[[12441,12442],2],[12443,5," ゙"],[12444,5," ゚"],[[12445,12446],2],[12447,1,"より"],[12448,2],[[12449,12542],2],[12543,1,"コト"],[[12544,12548],3],[[12549,12588],2],[12589,2],[12590,2],[12591,2],[12592,3],[12593,1,"ᄀ"],[12594,1,"ᄁ"],[12595,1,"ᆪ"],[12596,1,"ᄂ"],[12597,1,"ᆬ"],[12598,1,"ᆭ"],[12599,1,"ᄃ"],[12600,1,"ᄄ"],[12601,1,"ᄅ"],[12602,1,"ᆰ"],[12603,1,"ᆱ"],[12604,1,"ᆲ"],[12605,1,"ᆳ"],[12606,1,"ᆴ"],[12607,1,"ᆵ"],[12608,1,"ᄚ"],[12609,1,"ᄆ"],[12610,1,"ᄇ"],[12611,1,"ᄈ"],[12612,1,"ᄡ"],[12613,1,"ᄉ"],[12614,1,"ᄊ"],[12615,1,"ᄋ"],[12616,1,"ᄌ"],[12617,1,"ᄍ"],[12618,1,"ᄎ"],[12619,1,"ᄏ"],[12620,1,"ᄐ"],[12621,1,"ᄑ"],[12622,1,"ᄒ"],[12623,1,"ᅡ"],[12624,1,"ᅢ"],[12625,1,"ᅣ"],[12626,1,"ᅤ"],[12627,1,"ᅥ"],[12628,1,"ᅦ"],[12629,1,"ᅧ"],[12630,1,"ᅨ"],[12631,1,"ᅩ"],[12632,1,"ᅪ"],[12633,1,"ᅫ"],[12634,1,"ᅬ"],[12635,1,"ᅭ"],[12636,1,"ᅮ"],[12637,1,"ᅯ"],[12638,1,"ᅰ"],[12639,1,"ᅱ"],[12640,1,"ᅲ"],[12641,1,"ᅳ"],[12642,1,"ᅴ"],[12643,1,"ᅵ"],[12644,3],[12645,1,"ᄔ"],[12646,1,"ᄕ"],[12647,1,"ᇇ"],[12648,1,"ᇈ"],[12649,1,"ᇌ"],[12650,1,"ᇎ"],[12651,1,"ᇓ"],[12652,1,"ᇗ"],[12653,1,"ᇙ"],[12654,1,"ᄜ"],[12655,1,"ᇝ"],[12656,1,"ᇟ"],[12657,1,"ᄝ"],[12658,1,"ᄞ"],[12659,1,"ᄠ"],[12660,1,"ᄢ"],[12661,1,"ᄣ"],[12662,1,"ᄧ"],[12663,1,"ᄩ"],[12664,1,"ᄫ"],[12665,1,"ᄬ"],[12666,1,"ᄭ"],[12667,1,"ᄮ"],[12668,1,"ᄯ"],[12669,1,"ᄲ"],[12670,1,"ᄶ"],[12671,1,"ᅀ"],[12672,1,"ᅇ"],[12673,1,"ᅌ"],[12674,1,"ᇱ"],[12675,1,"ᇲ"],[12676,1,"ᅗ"],[12677,1,"ᅘ"],[12678,1,"ᅙ"],[12679,1,"ᆄ"],[12680,1,"ᆅ"],[12681,1,"ᆈ"],[12682,1,"ᆑ"],[12683,1,"ᆒ"],[12684,1,"ᆔ"],[12685,1,"ᆞ"],[12686,1,"ᆡ"],[12687,3],[[12688,12689],2],[12690,1,"一"],[12691,1,"二"],[12692,1,"三"],[12693,1,"四"],[12694,1,"上"],[12695,1,"中"],[12696,1,"下"],[12697,1,"甲"],[12698,1,"乙"],[12699,1,"丙"],[12700,1,"丁"],[12701,1,"天"],[12702,1,"地"],[12703,1,"人"],[[12704,12727],2],[[12728,12730],2],[[12731,12735],2],[[12736,12751],2],[[12752,12771],2],[[12772,12783],3],[[12784,12799],2],[12800,5,"(ᄀ)"],[12801,5,"(ᄂ)"],[12802,5,"(ᄃ)"],[12803,5,"(ᄅ)"],[12804,5,"(ᄆ)"],[12805,5,"(ᄇ)"],[12806,5,"(ᄉ)"],[12807,5,"(ᄋ)"],[12808,5,"(ᄌ)"],[12809,5,"(ᄎ)"],[12810,5,"(ᄏ)"],[12811,5,"(ᄐ)"],[12812,5,"(ᄑ)"],[12813,5,"(ᄒ)"],[12814,5,"(가)"],[12815,5,"(나)"],[12816,5,"(다)"],[12817,5,"(라)"],[12818,5,"(마)"],[12819,5,"(바)"],[12820,5,"(사)"],[12821,5,"(아)"],[12822,5,"(자)"],[12823,5,"(차)"],[12824,5,"(카)"],[12825,5,"(타)"],[12826,5,"(파)"],[12827,5,"(하)"],[12828,5,"(주)"],[12829,5,"(오전)"],[12830,5,"(오후)"],[12831,3],[12832,5,"(一)"],[12833,5,"(二)"],[12834,5,"(三)"],[12835,5,"(四)"],[12836,5,"(五)"],[12837,5,"(六)"],[12838,5,"(七)"],[12839,5,"(八)"],[12840,5,"(九)"],[12841,5,"(十)"],[12842,5,"(月)"],[12843,5,"(火)"],[12844,5,"(水)"],[12845,5,"(木)"],[12846,5,"(金)"],[12847,5,"(土)"],[12848,5,"(日)"],[12849,5,"(株)"],[12850,5,"(有)"],[12851,5,"(社)"],[12852,5,"(名)"],[12853,5,"(特)"],[12854,5,"(財)"],[12855,5,"(祝)"],[12856,5,"(労)"],[12857,5,"(代)"],[12858,5,"(呼)"],[12859,5,"(学)"],[12860,5,"(監)"],[12861,5,"(企)"],[12862,5,"(資)"],[12863,5,"(協)"],[12864,5,"(祭)"],[12865,5,"(休)"],[12866,5,"(自)"],[12867,5,"(至)"],[12868,1,"問"],[12869,1,"幼"],[12870,1,"文"],[12871,1,"箏"],[[12872,12879],2],[12880,1,"pte"],[12881,1,"21"],[12882,1,"22"],[12883,1,"23"],[12884,1,"24"],[12885,1,"25"],[12886,1,"26"],[12887,1,"27"],[12888,1,"28"],[12889,1,"29"],[12890,1,"30"],[12891,1,"31"],[12892,1,"32"],[12893,1,"33"],[12894,1,"34"],[12895,1,"35"],[12896,1,"ᄀ"],[12897,1,"ᄂ"],[12898,1,"ᄃ"],[12899,1,"ᄅ"],[12900,1,"ᄆ"],[12901,1,"ᄇ"],[12902,1,"ᄉ"],[12903,1,"ᄋ"],[12904,1,"ᄌ"],[12905,1,"ᄎ"],[12906,1,"ᄏ"],[12907,1,"ᄐ"],[12908,1,"ᄑ"],[12909,1,"ᄒ"],[12910,1,"가"],[12911,1,"나"],[12912,1,"다"],[12913,1,"라"],[12914,1,"마"],[12915,1,"바"],[12916,1,"사"],[12917,1,"아"],[12918,1,"자"],[12919,1,"차"],[12920,1,"카"],[12921,1,"타"],[12922,1,"파"],[12923,1,"하"],[12924,1,"참고"],[12925,1,"주의"],[12926,1,"우"],[12927,2],[12928,1,"一"],[12929,1,"二"],[12930,1,"三"],[12931,1,"四"],[12932,1,"五"],[12933,1,"六"],[12934,1,"七"],[12935,1,"八"],[12936,1,"九"],[12937,1,"十"],[12938,1,"月"],[12939,1,"火"],[12940,1,"水"],[12941,1,"木"],[12942,1,"金"],[12943,1,"土"],[12944,1,"日"],[12945,1,"株"],[12946,1,"有"],[12947,1,"社"],[12948,1,"名"],[12949,1,"特"],[12950,1,"財"],[12951,1,"祝"],[12952,1,"労"],[12953,1,"秘"],[12954,1,"男"],[12955,1,"女"],[12956,1,"適"],[12957,1,"優"],[12958,1,"印"],[12959,1,"注"],[12960,1,"項"],[12961,1,"休"],[12962,1,"写"],[12963,1,"正"],[12964,1,"上"],[12965,1,"中"],[12966,1,"下"],[12967,1,"左"],[12968,1,"右"],[12969,1,"医"],[12970,1,"宗"],[12971,1,"学"],[12972,1,"監"],[12973,1,"企"],[12974,1,"資"],[12975,1,"協"],[12976,1,"夜"],[12977,1,"36"],[12978,1,"37"],[12979,1,"38"],[12980,1,"39"],[12981,1,"40"],[12982,1,"41"],[12983,1,"42"],[12984,1,"43"],[12985,1,"44"],[12986,1,"45"],[12987,1,"46"],[12988,1,"47"],[12989,1,"48"],[12990,1,"49"],[12991,1,"50"],[12992,1,"1月"],[12993,1,"2月"],[12994,1,"3月"],[12995,1,"4月"],[12996,1,"5月"],[12997,1,"6月"],[12998,1,"7月"],[12999,1,"8月"],[13000,1,"9月"],[13001,1,"10月"],[13002,1,"11月"],[13003,1,"12月"],[13004,1,"hg"],[13005,1,"erg"],[13006,1,"ev"],[13007,1,"ltd"],[13008,1,"ア"],[13009,1,"イ"],[13010,1,"ウ"],[13011,1,"エ"],[13012,1,"オ"],[13013,1,"カ"],[13014,1,"キ"],[13015,1,"ク"],[13016,1,"ケ"],[13017,1,"コ"],[13018,1,"サ"],[13019,1,"シ"],[13020,1,"ス"],[13021,1,"セ"],[13022,1,"ソ"],[13023,1,"タ"],[13024,1,"チ"],[13025,1,"ツ"],[13026,1,"テ"],[13027,1,"ト"],[13028,1,"ナ"],[13029,1,"ニ"],[13030,1,"ヌ"],[13031,1,"ネ"],[13032,1,"ノ"],[13033,1,"ハ"],[13034,1,"ヒ"],[13035,1,"フ"],[13036,1,"ヘ"],[13037,1,"ホ"],[13038,1,"マ"],[13039,1,"ミ"],[13040,1,"ム"],[13041,1,"メ"],[13042,1,"モ"],[13043,1,"ヤ"],[13044,1,"ユ"],[13045,1,"ヨ"],[13046,1,"ラ"],[13047,1,"リ"],[13048,1,"ル"],[13049,1,"レ"],[13050,1,"ロ"],[13051,1,"ワ"],[13052,1,"ヰ"],[13053,1,"ヱ"],[13054,1,"ヲ"],[13055,1,"令和"],[13056,1,"アパート"],[13057,1,"アルファ"],[13058,1,"アンペア"],[13059,1,"アール"],[13060,1,"イニング"],[13061,1,"インチ"],[13062,1,"ウォン"],[13063,1,"エスクード"],[13064,1,"エーカー"],[13065,1,"オンス"],[13066,1,"オーム"],[13067,1,"カイリ"],[13068,1,"カラット"],[13069,1,"カロリー"],[13070,1,"ガロン"],[13071,1,"ガンマ"],[13072,1,"ギガ"],[13073,1,"ギニー"],[13074,1,"キュリー"],[13075,1,"ギルダー"],[13076,1,"キロ"],[13077,1,"キログラム"],[13078,1,"キロメートル"],[13079,1,"キロワット"],[13080,1,"グラム"],[13081,1,"グラムトン"],[13082,1,"クルゼイロ"],[13083,1,"クローネ"],[13084,1,"ケース"],[13085,1,"コルナ"],[13086,1,"コーポ"],[13087,1,"サイクル"],[13088,1,"サンチーム"],[13089,1,"シリング"],[13090,1,"センチ"],[13091,1,"セント"],[13092,1,"ダース"],[13093,1,"デシ"],[13094,1,"ドル"],[13095,1,"トン"],[13096,1,"ナノ"],[13097,1,"ノット"],[13098,1,"ハイツ"],[13099,1,"パーセント"],[13100,1,"パーツ"],[13101,1,"バーレル"],[13102,1,"ピアストル"],[13103,1,"ピクル"],[13104,1,"ピコ"],[13105,1,"ビル"],[13106,1,"ファラッド"],[13107,1,"フィート"],[13108,1,"ブッシェル"],[13109,1,"フラン"],[13110,1,"ヘクタール"],[13111,1,"ペソ"],[13112,1,"ペニヒ"],[13113,1,"ヘルツ"],[13114,1,"ペンス"],[13115,1,"ページ"],[13116,1,"ベータ"],[13117,1,"ポイント"],[13118,1,"ボルト"],[13119,1,"ホン"],[13120,1,"ポンド"],[13121,1,"ホール"],[13122,1,"ホーン"],[13123,1,"マイクロ"],[13124,1,"マイル"],[13125,1,"マッハ"],[13126,1,"マルク"],[13127,1,"マンション"],[13128,1,"ミクロン"],[13129,1,"ミリ"],[13130,1,"ミリバール"],[13131,1,"メガ"],[13132,1,"メガトン"],[13133,1,"メートル"],[13134,1,"ヤード"],[13135,1,"ヤール"],[13136,1,"ユアン"],[13137,1,"リットル"],[13138,1,"リラ"],[13139,1,"ルピー"],[13140,1,"ルーブル"],[13141,1,"レム"],[13142,1,"レントゲン"],[13143,1,"ワット"],[13144,1,"0点"],[13145,1,"1点"],[13146,1,"2点"],[13147,1,"3点"],[13148,1,"4点"],[13149,1,"5点"],[13150,1,"6点"],[13151,1,"7点"],[13152,1,"8点"],[13153,1,"9点"],[13154,1,"10点"],[13155,1,"11点"],[13156,1,"12点"],[13157,1,"13点"],[13158,1,"14点"],[13159,1,"15点"],[13160,1,"16点"],[13161,1,"17点"],[13162,1,"18点"],[13163,1,"19点"],[13164,1,"20点"],[13165,1,"21点"],[13166,1,"22点"],[13167,1,"23点"],[13168,1,"24点"],[13169,1,"hpa"],[13170,1,"da"],[13171,1,"au"],[13172,1,"bar"],[13173,1,"ov"],[13174,1,"pc"],[13175,1,"dm"],[13176,1,"dm2"],[13177,1,"dm3"],[13178,1,"iu"],[13179,1,"平成"],[13180,1,"昭和"],[13181,1,"大正"],[13182,1,"明治"],[13183,1,"株式会社"],[13184,1,"pa"],[13185,1,"na"],[13186,1,"μa"],[13187,1,"ma"],[13188,1,"ka"],[13189,1,"kb"],[13190,1,"mb"],[13191,1,"gb"],[13192,1,"cal"],[13193,1,"kcal"],[13194,1,"pf"],[13195,1,"nf"],[13196,1,"μf"],[13197,1,"μg"],[13198,1,"mg"],[13199,1,"kg"],[13200,1,"hz"],[13201,1,"khz"],[13202,1,"mhz"],[13203,1,"ghz"],[13204,1,"thz"],[13205,1,"μl"],[13206,1,"ml"],[13207,1,"dl"],[13208,1,"kl"],[13209,1,"fm"],[13210,1,"nm"],[13211,1,"μm"],[13212,1,"mm"],[13213,1,"cm"],[13214,1,"km"],[13215,1,"mm2"],[13216,1,"cm2"],[13217,1,"m2"],[13218,1,"km2"],[13219,1,"mm3"],[13220,1,"cm3"],[13221,1,"m3"],[13222,1,"km3"],[13223,1,"m∕s"],[13224,1,"m∕s2"],[13225,1,"pa"],[13226,1,"kpa"],[13227,1,"mpa"],[13228,1,"gpa"],[13229,1,"rad"],[13230,1,"rad∕s"],[13231,1,"rad∕s2"],[13232,1,"ps"],[13233,1,"ns"],[13234,1,"μs"],[13235,1,"ms"],[13236,1,"pv"],[13237,1,"nv"],[13238,1,"μv"],[13239,1,"mv"],[13240,1,"kv"],[13241,1,"mv"],[13242,1,"pw"],[13243,1,"nw"],[13244,1,"μw"],[13245,1,"mw"],[13246,1,"kw"],[13247,1,"mw"],[13248,1,"kω"],[13249,1,"mω"],[13250,3],[13251,1,"bq"],[13252,1,"cc"],[13253,1,"cd"],[13254,1,"c∕kg"],[13255,3],[13256,1,"db"],[13257,1,"gy"],[13258,1,"ha"],[13259,1,"hp"],[13260,1,"in"],[13261,1,"kk"],[13262,1,"km"],[13263,1,"kt"],[13264,1,"lm"],[13265,1,"ln"],[13266,1,"log"],[13267,1,"lx"],[13268,1,"mb"],[13269,1,"mil"],[13270,1,"mol"],[13271,1,"ph"],[13272,3],[13273,1,"ppm"],[13274,1,"pr"],[13275,1,"sr"],[13276,1,"sv"],[13277,1,"wb"],[13278,1,"v∕m"],[13279,1,"a∕m"],[13280,1,"1日"],[13281,1,"2日"],[13282,1,"3日"],[13283,1,"4日"],[13284,1,"5日"],[13285,1,"6日"],[13286,1,"7日"],[13287,1,"8日"],[13288,1,"9日"],[13289,1,"10日"],[13290,1,"11日"],[13291,1,"12日"],[13292,1,"13日"],[13293,1,"14日"],[13294,1,"15日"],[13295,1,"16日"],[13296,1,"17日"],[13297,1,"18日"],[13298,1,"19日"],[13299,1,"20日"],[13300,1,"21日"],[13301,1,"22日"],[13302,1,"23日"],[13303,1,"24日"],[13304,1,"25日"],[13305,1,"26日"],[13306,1,"27日"],[13307,1,"28日"],[13308,1,"29日"],[13309,1,"30日"],[13310,1,"31日"],[13311,1,"gal"],[[13312,19893],2],[[19894,19903],2],[[19904,19967],2],[[19968,40869],2],[[40870,40891],2],[[40892,40899],2],[[40900,40907],2],[40908,2],[[40909,40917],2],[[40918,40938],2],[[40939,40943],2],[[40944,40956],2],[[40957,40959],2],[[40960,42124],2],[[42125,42127],3],[[42128,42145],2],[[42146,42147],2],[[42148,42163],2],[42164,2],[[42165,42176],2],[42177,2],[[42178,42180],2],[42181,2],[42182,2],[[42183,42191],3],[[42192,42237],2],[[42238,42239],2],[[42240,42508],2],[[42509,42511],2],[[42512,42539],2],[[42540,42559],3],[42560,1,"ꙁ"],[42561,2],[42562,1,"ꙃ"],[42563,2],[42564,1,"ꙅ"],[42565,2],[42566,1,"ꙇ"],[42567,2],[42568,1,"ꙉ"],[42569,2],[42570,1,"ꙋ"],[42571,2],[42572,1,"ꙍ"],[42573,2],[42574,1,"ꙏ"],[42575,2],[42576,1,"ꙑ"],[42577,2],[42578,1,"ꙓ"],[42579,2],[42580,1,"ꙕ"],[42581,2],[42582,1,"ꙗ"],[42583,2],[42584,1,"ꙙ"],[42585,2],[42586,1,"ꙛ"],[42587,2],[42588,1,"ꙝ"],[42589,2],[42590,1,"ꙟ"],[42591,2],[42592,1,"ꙡ"],[42593,2],[42594,1,"ꙣ"],[42595,2],[42596,1,"ꙥ"],[42597,2],[42598,1,"ꙧ"],[42599,2],[42600,1,"ꙩ"],[42601,2],[42602,1,"ꙫ"],[42603,2],[42604,1,"ꙭ"],[[42605,42607],2],[[42608,42611],2],[[42612,42619],2],[[42620,42621],2],[42622,2],[42623,2],[42624,1,"ꚁ"],[42625,2],[42626,1,"ꚃ"],[42627,2],[42628,1,"ꚅ"],[42629,2],[42630,1,"ꚇ"],[42631,2],[42632,1,"ꚉ"],[42633,2],[42634,1,"ꚋ"],[42635,2],[42636,1,"ꚍ"],[42637,2],[42638,1,"ꚏ"],[42639,2],[42640,1,"ꚑ"],[42641,2],[42642,1,"ꚓ"],[42643,2],[42644,1,"ꚕ"],[42645,2],[42646,1,"ꚗ"],[42647,2],[42648,1,"ꚙ"],[42649,2],[42650,1,"ꚛ"],[42651,2],[42652,1,"ъ"],[42653,1,"ь"],[42654,2],[42655,2],[[42656,42725],2],[[42726,42735],2],[[42736,42737],2],[[42738,42743],2],[[42744,42751],3],[[42752,42774],2],[[42775,42778],2],[[42779,42783],2],[[42784,42785],2],[42786,1,"ꜣ"],[42787,2],[42788,1,"ꜥ"],[42789,2],[42790,1,"ꜧ"],[42791,2],[42792,1,"ꜩ"],[42793,2],[42794,1,"ꜫ"],[42795,2],[42796,1,"ꜭ"],[42797,2],[42798,1,"ꜯ"],[[42799,42801],2],[42802,1,"ꜳ"],[42803,2],[42804,1,"ꜵ"],[42805,2],[42806,1,"ꜷ"],[42807,2],[42808,1,"ꜹ"],[42809,2],[42810,1,"ꜻ"],[42811,2],[42812,1,"ꜽ"],[42813,2],[42814,1,"ꜿ"],[42815,2],[42816,1,"ꝁ"],[42817,2],[42818,1,"ꝃ"],[42819,2],[42820,1,"ꝅ"],[42821,2],[42822,1,"ꝇ"],[42823,2],[42824,1,"ꝉ"],[42825,2],[42826,1,"ꝋ"],[42827,2],[42828,1,"ꝍ"],[42829,2],[42830,1,"ꝏ"],[42831,2],[42832,1,"ꝑ"],[42833,2],[42834,1,"ꝓ"],[42835,2],[42836,1,"ꝕ"],[42837,2],[42838,1,"ꝗ"],[42839,2],[42840,1,"ꝙ"],[42841,2],[42842,1,"ꝛ"],[42843,2],[42844,1,"ꝝ"],[42845,2],[42846,1,"ꝟ"],[42847,2],[42848,1,"ꝡ"],[42849,2],[42850,1,"ꝣ"],[42851,2],[42852,1,"ꝥ"],[42853,2],[42854,1,"ꝧ"],[42855,2],[42856,1,"ꝩ"],[42857,2],[42858,1,"ꝫ"],[42859,2],[42860,1,"ꝭ"],[42861,2],[42862,1,"ꝯ"],[42863,2],[42864,1,"ꝯ"],[[42865,42872],2],[42873,1,"ꝺ"],[42874,2],[42875,1,"ꝼ"],[42876,2],[42877,1,"ᵹ"],[42878,1,"ꝿ"],[42879,2],[42880,1,"ꞁ"],[42881,2],[42882,1,"ꞃ"],[42883,2],[42884,1,"ꞅ"],[42885,2],[42886,1,"ꞇ"],[[42887,42888],2],[[42889,42890],2],[42891,1,"ꞌ"],[42892,2],[42893,1,"ɥ"],[42894,2],[42895,2],[42896,1,"ꞑ"],[42897,2],[42898,1,"ꞓ"],[42899,2],[[42900,42901],2],[42902,1,"ꞗ"],[42903,2],[42904,1,"ꞙ"],[42905,2],[42906,1,"ꞛ"],[42907,2],[42908,1,"ꞝ"],[42909,2],[42910,1,"ꞟ"],[42911,2],[42912,1,"ꞡ"],[42913,2],[42914,1,"ꞣ"],[42915,2],[42916,1,"ꞥ"],[42917,2],[42918,1,"ꞧ"],[42919,2],[42920,1,"ꞩ"],[42921,2],[42922,1,"ɦ"],[42923,1,"ɜ"],[42924,1,"ɡ"],[42925,1,"ɬ"],[42926,1,"ɪ"],[42927,2],[42928,1,"ʞ"],[42929,1,"ʇ"],[42930,1,"ʝ"],[42931,1,"ꭓ"],[42932,1,"ꞵ"],[42933,2],[42934,1,"ꞷ"],[42935,2],[42936,1,"ꞹ"],[42937,2],[42938,1,"ꞻ"],[42939,2],[42940,1,"ꞽ"],[42941,2],[42942,1,"ꞿ"],[42943,2],[42944,1,"ꟁ"],[42945,2],[42946,1,"ꟃ"],[42947,2],[42948,1,"ꞔ"],[42949,1,"ʂ"],[42950,1,"ᶎ"],[42951,1,"ꟈ"],[42952,2],[42953,1,"ꟊ"],[42954,2],[[42955,42959],3],[42960,1,"ꟑ"],[42961,2],[42962,3],[42963,2],[42964,3],[42965,2],[42966,1,"ꟗ"],[42967,2],[42968,1,"ꟙ"],[42969,2],[[42970,42993],3],[42994,1,"c"],[42995,1,"f"],[42996,1,"q"],[42997,1,"ꟶ"],[42998,2],[42999,2],[43000,1,"ħ"],[43001,1,"œ"],[43002,2],[[43003,43007],2],[[43008,43047],2],[[43048,43051],2],[43052,2],[[43053,43055],3],[[43056,43065],2],[[43066,43071],3],[[43072,43123],2],[[43124,43127],2],[[43128,43135],3],[[43136,43204],2],[43205,2],[[43206,43213],3],[[43214,43215],2],[[43216,43225],2],[[43226,43231],3],[[43232,43255],2],[[43256,43258],2],[43259,2],[43260,2],[43261,2],[[43262,43263],2],[[43264,43309],2],[[43310,43311],2],[[43312,43347],2],[[43348,43358],3],[43359,2],[[43360,43388],2],[[43389,43391],3],[[43392,43456],2],[[43457,43469],2],[43470,3],[[43471,43481],2],[[43482,43485],3],[[43486,43487],2],[[43488,43518],2],[43519,3],[[43520,43574],2],[[43575,43583],3],[[43584,43597],2],[[43598,43599],3],[[43600,43609],2],[[43610,43611],3],[[43612,43615],2],[[43616,43638],2],[[43639,43641],2],[[43642,43643],2],[[43644,43647],2],[[43648,43714],2],[[43715,43738],3],[[43739,43741],2],[[43742,43743],2],[[43744,43759],2],[[43760,43761],2],[[43762,43766],2],[[43767,43776],3],[[43777,43782],2],[[43783,43784],3],[[43785,43790],2],[[43791,43792],3],[[43793,43798],2],[[43799,43807],3],[[43808,43814],2],[43815,3],[[43816,43822],2],[43823,3],[[43824,43866],2],[43867,2],[43868,1,"ꜧ"],[43869,1,"ꬷ"],[43870,1,"ɫ"],[43871,1,"ꭒ"],[[43872,43875],2],[[43876,43877],2],[[43878,43879],2],[43880,2],[43881,1,"ʍ"],[[43882,43883],2],[[43884,43887],3],[43888,1,"Ꭰ"],[43889,1,"Ꭱ"],[43890,1,"Ꭲ"],[43891,1,"Ꭳ"],[43892,1,"Ꭴ"],[43893,1,"Ꭵ"],[43894,1,"Ꭶ"],[43895,1,"Ꭷ"],[43896,1,"Ꭸ"],[43897,1,"Ꭹ"],[43898,1,"Ꭺ"],[43899,1,"Ꭻ"],[43900,1,"Ꭼ"],[43901,1,"Ꭽ"],[43902,1,"Ꭾ"],[43903,1,"Ꭿ"],[43904,1,"Ꮀ"],[43905,1,"Ꮁ"],[43906,1,"Ꮂ"],[43907,1,"Ꮃ"],[43908,1,"Ꮄ"],[43909,1,"Ꮅ"],[43910,1,"Ꮆ"],[43911,1,"Ꮇ"],[43912,1,"Ꮈ"],[43913,1,"Ꮉ"],[43914,1,"Ꮊ"],[43915,1,"Ꮋ"],[43916,1,"Ꮌ"],[43917,1,"Ꮍ"],[43918,1,"Ꮎ"],[43919,1,"Ꮏ"],[43920,1,"Ꮐ"],[43921,1,"Ꮑ"],[43922,1,"Ꮒ"],[43923,1,"Ꮓ"],[43924,1,"Ꮔ"],[43925,1,"Ꮕ"],[43926,1,"Ꮖ"],[43927,1,"Ꮗ"],[43928,1,"Ꮘ"],[43929,1,"Ꮙ"],[43930,1,"Ꮚ"],[43931,1,"Ꮛ"],[43932,1,"Ꮜ"],[43933,1,"Ꮝ"],[43934,1,"Ꮞ"],[43935,1,"Ꮟ"],[43936,1,"Ꮠ"],[43937,1,"Ꮡ"],[43938,1,"Ꮢ"],[43939,1,"Ꮣ"],[43940,1,"Ꮤ"],[43941,1,"Ꮥ"],[43942,1,"Ꮦ"],[43943,1,"Ꮧ"],[43944,1,"Ꮨ"],[43945,1,"Ꮩ"],[43946,1,"Ꮪ"],[43947,1,"Ꮫ"],[43948,1,"Ꮬ"],[43949,1,"Ꮭ"],[43950,1,"Ꮮ"],[43951,1,"Ꮯ"],[43952,1,"Ꮰ"],[43953,1,"Ꮱ"],[43954,1,"Ꮲ"],[43955,1,"Ꮳ"],[43956,1,"Ꮴ"],[43957,1,"Ꮵ"],[43958,1,"Ꮶ"],[43959,1,"Ꮷ"],[43960,1,"Ꮸ"],[43961,1,"Ꮹ"],[43962,1,"Ꮺ"],[43963,1,"Ꮻ"],[43964,1,"Ꮼ"],[43965,1,"Ꮽ"],[43966,1,"Ꮾ"],[43967,1,"Ꮿ"],[[43968,44010],2],[44011,2],[[44012,44013],2],[[44014,44015],3],[[44016,44025],2],[[44026,44031],3],[[44032,55203],2],[[55204,55215],3],[[55216,55238],2],[[55239,55242],3],[[55243,55291],2],[[55292,55295],3],[[55296,57343],3],[[57344,63743],3],[63744,1,"豈"],[63745,1,"更"],[63746,1,"車"],[63747,1,"賈"],[63748,1,"滑"],[63749,1,"串"],[63750,1,"句"],[[63751,63752],1,"龜"],[63753,1,"契"],[63754,1,"金"],[63755,1,"喇"],[63756,1,"奈"],[63757,1,"懶"],[63758,1,"癩"],[63759,1,"羅"],[63760,1,"蘿"],[63761,1,"螺"],[63762,1,"裸"],[63763,1,"邏"],[63764,1,"樂"],[63765,1,"洛"],[63766,1,"烙"],[63767,1,"珞"],[63768,1,"落"],[63769,1,"酪"],[63770,1,"駱"],[63771,1,"亂"],[63772,1,"卵"],[63773,1,"欄"],[63774,1,"爛"],[63775,1,"蘭"],[63776,1,"鸞"],[63777,1,"嵐"],[63778,1,"濫"],[63779,1,"藍"],[63780,1,"襤"],[63781,1,"拉"],[63782,1,"臘"],[63783,1,"蠟"],[63784,1,"廊"],[63785,1,"朗"],[63786,1,"浪"],[63787,1,"狼"],[63788,1,"郎"],[63789,1,"來"],[63790,1,"冷"],[63791,1,"勞"],[63792,1,"擄"],[63793,1,"櫓"],[63794,1,"爐"],[63795,1,"盧"],[63796,1,"老"],[63797,1,"蘆"],[63798,1,"虜"],[63799,1,"路"],[63800,1,"露"],[63801,1,"魯"],[63802,1,"鷺"],[63803,1,"碌"],[63804,1,"祿"],[63805,1,"綠"],[63806,1,"菉"],[63807,1,"錄"],[63808,1,"鹿"],[63809,1,"論"],[63810,1,"壟"],[63811,1,"弄"],[63812,1,"籠"],[63813,1,"聾"],[63814,1,"牢"],[63815,1,"磊"],[63816,1,"賂"],[63817,1,"雷"],[63818,1,"壘"],[63819,1,"屢"],[63820,1,"樓"],[63821,1,"淚"],[63822,1,"漏"],[63823,1,"累"],[63824,1,"縷"],[63825,1,"陋"],[63826,1,"勒"],[63827,1,"肋"],[63828,1,"凜"],[63829,1,"凌"],[63830,1,"稜"],[63831,1,"綾"],[63832,1,"菱"],[63833,1,"陵"],[63834,1,"讀"],[63835,1,"拏"],[63836,1,"樂"],[63837,1,"諾"],[63838,1,"丹"],[63839,1,"寧"],[63840,1,"怒"],[63841,1,"率"],[63842,1,"異"],[63843,1,"北"],[63844,1,"磻"],[63845,1,"便"],[63846,1,"復"],[63847,1,"不"],[63848,1,"泌"],[63849,1,"數"],[63850,1,"索"],[63851,1,"參"],[63852,1,"塞"],[63853,1,"省"],[63854,1,"葉"],[63855,1,"說"],[63856,1,"殺"],[63857,1,"辰"],[63858,1,"沈"],[63859,1,"拾"],[63860,1,"若"],[63861,1,"掠"],[63862,1,"略"],[63863,1,"亮"],[63864,1,"兩"],[63865,1,"凉"],[63866,1,"梁"],[63867,1,"糧"],[63868,1,"良"],[63869,1,"諒"],[63870,1,"量"],[63871,1,"勵"],[63872,1,"呂"],[63873,1,"女"],[63874,1,"廬"],[63875,1,"旅"],[63876,1,"濾"],[63877,1,"礪"],[63878,1,"閭"],[63879,1,"驪"],[63880,1,"麗"],[63881,1,"黎"],[63882,1,"力"],[63883,1,"曆"],[63884,1,"歷"],[63885,1,"轢"],[63886,1,"年"],[63887,1,"憐"],[63888,1,"戀"],[63889,1,"撚"],[63890,1,"漣"],[63891,1,"煉"],[63892,1,"璉"],[63893,1,"秊"],[63894,1,"練"],[63895,1,"聯"],[63896,1,"輦"],[63897,1,"蓮"],[63898,1,"連"],[63899,1,"鍊"],[63900,1,"列"],[63901,1,"劣"],[63902,1,"咽"],[63903,1,"烈"],[63904,1,"裂"],[63905,1,"說"],[63906,1,"廉"],[63907,1,"念"],[63908,1,"捻"],[63909,1,"殮"],[63910,1,"簾"],[63911,1,"獵"],[63912,1,"令"],[63913,1,"囹"],[63914,1,"寧"],[63915,1,"嶺"],[63916,1,"怜"],[63917,1,"玲"],[63918,1,"瑩"],[63919,1,"羚"],[63920,1,"聆"],[63921,1,"鈴"],[63922,1,"零"],[63923,1,"靈"],[63924,1,"領"],[63925,1,"例"],[63926,1,"禮"],[63927,1,"醴"],[63928,1,"隸"],[63929,1,"惡"],[63930,1,"了"],[63931,1,"僚"],[63932,1,"寮"],[63933,1,"尿"],[63934,1,"料"],[63935,1,"樂"],[63936,1,"燎"],[63937,1,"療"],[63938,1,"蓼"],[63939,1,"遼"],[63940,1,"龍"],[63941,1,"暈"],[63942,1,"阮"],[63943,1,"劉"],[63944,1,"杻"],[63945,1,"柳"],[63946,1,"流"],[63947,1,"溜"],[63948,1,"琉"],[63949,1,"留"],[63950,1,"硫"],[63951,1,"紐"],[63952,1,"類"],[63953,1,"六"],[63954,1,"戮"],[63955,1,"陸"],[63956,1,"倫"],[63957,1,"崙"],[63958,1,"淪"],[63959,1,"輪"],[63960,1,"律"],[63961,1,"慄"],[63962,1,"栗"],[63963,1,"率"],[63964,1,"隆"],[63965,1,"利"],[63966,1,"吏"],[63967,1,"履"],[63968,1,"易"],[63969,1,"李"],[63970,1,"梨"],[63971,1,"泥"],[63972,1,"理"],[63973,1,"痢"],[63974,1,"罹"],[63975,1,"裏"],[63976,1,"裡"],[63977,1,"里"],[63978,1,"離"],[63979,1,"匿"],[63980,1,"溺"],[63981,1,"吝"],[63982,1,"燐"],[63983,1,"璘"],[63984,1,"藺"],[63985,1,"隣"],[63986,1,"鱗"],[63987,1,"麟"],[63988,1,"林"],[63989,1,"淋"],[63990,1,"臨"],[63991,1,"立"],[63992,1,"笠"],[63993,1,"粒"],[63994,1,"狀"],[63995,1,"炙"],[63996,1,"識"],[63997,1,"什"],[63998,1,"茶"],[63999,1,"刺"],[64000,1,"切"],[64001,1,"度"],[64002,1,"拓"],[64003,1,"糖"],[64004,1,"宅"],[64005,1,"洞"],[64006,1,"暴"],[64007,1,"輻"],[64008,1,"行"],[64009,1,"降"],[64010,1,"見"],[64011,1,"廓"],[64012,1,"兀"],[64013,1,"嗀"],[[64014,64015],2],[64016,1,"塚"],[64017,2],[64018,1,"晴"],[[64019,64020],2],[64021,1,"凞"],[64022,1,"猪"],[64023,1,"益"],[64024,1,"礼"],[64025,1,"神"],[64026,1,"祥"],[64027,1,"福"],[64028,1,"靖"],[64029,1,"精"],[64030,1,"羽"],[64031,2],[64032,1,"蘒"],[64033,2],[64034,1,"諸"],[[64035,64036],2],[64037,1,"逸"],[64038,1,"都"],[[64039,64041],2],[64042,1,"飯"],[64043,1,"飼"],[64044,1,"館"],[64045,1,"鶴"],[64046,1,"郞"],[64047,1,"隷"],[64048,1,"侮"],[64049,1,"僧"],[64050,1,"免"],[64051,1,"勉"],[64052,1,"勤"],[64053,1,"卑"],[64054,1,"喝"],[64055,1,"嘆"],[64056,1,"器"],[64057,1,"塀"],[64058,1,"墨"],[64059,1,"層"],[64060,1,"屮"],[64061,1,"悔"],[64062,1,"慨"],[64063,1,"憎"],[64064,1,"懲"],[64065,1,"敏"],[64066,1,"既"],[64067,1,"暑"],[64068,1,"梅"],[64069,1,"海"],[64070,1,"渚"],[64071,1,"漢"],[64072,1,"煮"],[64073,1,"爫"],[64074,1,"琢"],[64075,1,"碑"],[64076,1,"社"],[64077,1,"祉"],[64078,1,"祈"],[64079,1,"祐"],[64080,1,"祖"],[64081,1,"祝"],[64082,1,"禍"],[64083,1,"禎"],[64084,1,"穀"],[64085,1,"突"],[64086,1,"節"],[64087,1,"練"],[64088,1,"縉"],[64089,1,"繁"],[64090,1,"署"],[64091,1,"者"],[64092,1,"臭"],[[64093,64094],1,"艹"],[64095,1,"著"],[64096,1,"褐"],[64097,1,"視"],[64098,1,"謁"],[64099,1,"謹"],[64100,1,"賓"],[64101,1,"贈"],[64102,1,"辶"],[64103,1,"逸"],[64104,1,"難"],[64105,1,"響"],[64106,1,"頻"],[64107,1,"恵"],[64108,1,"𤋮"],[64109,1,"舘"],[[64110,64111],3],[64112,1,"並"],[64113,1,"况"],[64114,1,"全"],[64115,1,"侀"],[64116,1,"充"],[64117,1,"冀"],[64118,1,"勇"],[64119,1,"勺"],[64120,1,"喝"],[64121,1,"啕"],[64122,1,"喙"],[64123,1,"嗢"],[64124,1,"塚"],[64125,1,"墳"],[64126,1,"奄"],[64127,1,"奔"],[64128,1,"婢"],[64129,1,"嬨"],[64130,1,"廒"],[64131,1,"廙"],[64132,1,"彩"],[64133,1,"徭"],[64134,1,"惘"],[64135,1,"慎"],[64136,1,"愈"],[64137,1,"憎"],[64138,1,"慠"],[64139,1,"懲"],[64140,1,"戴"],[64141,1,"揄"],[64142,1,"搜"],[64143,1,"摒"],[64144,1,"敖"],[64145,1,"晴"],[64146,1,"朗"],[64147,1,"望"],[64148,1,"杖"],[64149,1,"歹"],[64150,1,"殺"],[64151,1,"流"],[64152,1,"滛"],[64153,1,"滋"],[64154,1,"漢"],[64155,1,"瀞"],[64156,1,"煮"],[64157,1,"瞧"],[64158,1,"爵"],[64159,1,"犯"],[64160,1,"猪"],[64161,1,"瑱"],[64162,1,"甆"],[64163,1,"画"],[64164,1,"瘝"],[64165,1,"瘟"],[64166,1,"益"],[64167,1,"盛"],[64168,1,"直"],[64169,1,"睊"],[64170,1,"着"],[64171,1,"磌"],[64172,1,"窱"],[64173,1,"節"],[64174,1,"类"],[64175,1,"絛"],[64176,1,"練"],[64177,1,"缾"],[64178,1,"者"],[64179,1,"荒"],[64180,1,"華"],[64181,1,"蝹"],[64182,1,"襁"],[64183,1,"覆"],[64184,1,"視"],[64185,1,"調"],[64186,1,"諸"],[64187,1,"請"],[64188,1,"謁"],[64189,1,"諾"],[64190,1,"諭"],[64191,1,"謹"],[64192,1,"變"],[64193,1,"贈"],[64194,1,"輸"],[64195,1,"遲"],[64196,1,"醙"],[64197,1,"鉶"],[64198,1,"陼"],[64199,1,"難"],[64200,1,"靖"],[64201,1,"韛"],[64202,1,"響"],[64203,1,"頋"],[64204,1,"頻"],[64205,1,"鬒"],[64206,1,"龜"],[64207,1,"𢡊"],[64208,1,"𢡄"],[64209,1,"𣏕"],[64210,1,"㮝"],[64211,1,"䀘"],[64212,1,"䀹"],[64213,1,"𥉉"],[64214,1,"𥳐"],[64215,1,"𧻓"],[64216,1,"齃"],[64217,1,"龎"],[[64218,64255],3],[64256,1,"ff"],[64257,1,"fi"],[64258,1,"fl"],[64259,1,"ffi"],[64260,1,"ffl"],[[64261,64262],1,"st"],[[64263,64274],3],[64275,1,"մն"],[64276,1,"մե"],[64277,1,"մի"],[64278,1,"վն"],[64279,1,"մխ"],[[64280,64284],3],[64285,1,"יִ"],[64286,2],[64287,1,"ײַ"],[64288,1,"ע"],[64289,1,"א"],[64290,1,"ד"],[64291,1,"ה"],[64292,1,"כ"],[64293,1,"ל"],[64294,1,"ם"],[64295,1,"ר"],[64296,1,"ת"],[64297,5,"+"],[64298,1,"שׁ"],[64299,1,"שׂ"],[64300,1,"שּׁ"],[64301,1,"שּׂ"],[64302,1,"אַ"],[64303,1,"אָ"],[64304,1,"אּ"],[64305,1,"בּ"],[64306,1,"גּ"],[64307,1,"דּ"],[64308,1,"הּ"],[64309,1,"וּ"],[64310,1,"זּ"],[64311,3],[64312,1,"טּ"],[64313,1,"יּ"],[64314,1,"ךּ"],[64315,1,"כּ"],[64316,1,"לּ"],[64317,3],[64318,1,"מּ"],[64319,3],[64320,1,"נּ"],[64321,1,"סּ"],[64322,3],[64323,1,"ףּ"],[64324,1,"פּ"],[64325,3],[64326,1,"צּ"],[64327,1,"קּ"],[64328,1,"רּ"],[64329,1,"שּ"],[64330,1,"תּ"],[64331,1,"וֹ"],[64332,1,"בֿ"],[64333,1,"כֿ"],[64334,1,"פֿ"],[64335,1,"אל"],[[64336,64337],1,"ٱ"],[[64338,64341],1,"ٻ"],[[64342,64345],1,"پ"],[[64346,64349],1,"ڀ"],[[64350,64353],1,"ٺ"],[[64354,64357],1,"ٿ"],[[64358,64361],1,"ٹ"],[[64362,64365],1,"ڤ"],[[64366,64369],1,"ڦ"],[[64370,64373],1,"ڄ"],[[64374,64377],1,"ڃ"],[[64378,64381],1,"چ"],[[64382,64385],1,"ڇ"],[[64386,64387],1,"ڍ"],[[64388,64389],1,"ڌ"],[[64390,64391],1,"ڎ"],[[64392,64393],1,"ڈ"],[[64394,64395],1,"ژ"],[[64396,64397],1,"ڑ"],[[64398,64401],1,"ک"],[[64402,64405],1,"گ"],[[64406,64409],1,"ڳ"],[[64410,64413],1,"ڱ"],[[64414,64415],1,"ں"],[[64416,64419],1,"ڻ"],[[64420,64421],1,"ۀ"],[[64422,64425],1,"ہ"],[[64426,64429],1,"ھ"],[[64430,64431],1,"ے"],[[64432,64433],1,"ۓ"],[[64434,64449],2],[64450,2],[[64451,64466],3],[[64467,64470],1,"ڭ"],[[64471,64472],1,"ۇ"],[[64473,64474],1,"ۆ"],[[64475,64476],1,"ۈ"],[64477,1,"ۇٴ"],[[64478,64479],1,"ۋ"],[[64480,64481],1,"ۅ"],[[64482,64483],1,"ۉ"],[[64484,64487],1,"ې"],[[64488,64489],1,"ى"],[[64490,64491],1,"ئا"],[[64492,64493],1,"ئە"],[[64494,64495],1,"ئو"],[[64496,64497],1,"ئۇ"],[[64498,64499],1,"ئۆ"],[[64500,64501],1,"ئۈ"],[[64502,64504],1,"ئې"],[[64505,64507],1,"ئى"],[[64508,64511],1,"ی"],[64512,1,"ئج"],[64513,1,"ئح"],[64514,1,"ئم"],[64515,1,"ئى"],[64516,1,"ئي"],[64517,1,"بج"],[64518,1,"بح"],[64519,1,"بخ"],[64520,1,"بم"],[64521,1,"بى"],[64522,1,"بي"],[64523,1,"تج"],[64524,1,"تح"],[64525,1,"تخ"],[64526,1,"تم"],[64527,1,"تى"],[64528,1,"تي"],[64529,1,"ثج"],[64530,1,"ثم"],[64531,1,"ثى"],[64532,1,"ثي"],[64533,1,"جح"],[64534,1,"جم"],[64535,1,"حج"],[64536,1,"حم"],[64537,1,"خج"],[64538,1,"خح"],[64539,1,"خم"],[64540,1,"سج"],[64541,1,"سح"],[64542,1,"سخ"],[64543,1,"سم"],[64544,1,"صح"],[64545,1,"صم"],[64546,1,"ضج"],[64547,1,"ضح"],[64548,1,"ضخ"],[64549,1,"ضم"],[64550,1,"طح"],[64551,1,"طم"],[64552,1,"ظم"],[64553,1,"عج"],[64554,1,"عم"],[64555,1,"غج"],[64556,1,"غم"],[64557,1,"فج"],[64558,1,"فح"],[64559,1,"فخ"],[64560,1,"فم"],[64561,1,"فى"],[64562,1,"في"],[64563,1,"قح"],[64564,1,"قم"],[64565,1,"قى"],[64566,1,"قي"],[64567,1,"كا"],[64568,1,"كج"],[64569,1,"كح"],[64570,1,"كخ"],[64571,1,"كل"],[64572,1,"كم"],[64573,1,"كى"],[64574,1,"كي"],[64575,1,"لج"],[64576,1,"لح"],[64577,1,"لخ"],[64578,1,"لم"],[64579,1,"لى"],[64580,1,"لي"],[64581,1,"مج"],[64582,1,"مح"],[64583,1,"مخ"],[64584,1,"مم"],[64585,1,"مى"],[64586,1,"مي"],[64587,1,"نج"],[64588,1,"نح"],[64589,1,"نخ"],[64590,1,"نم"],[64591,1,"نى"],[64592,1,"ني"],[64593,1,"هج"],[64594,1,"هم"],[64595,1,"هى"],[64596,1,"هي"],[64597,1,"يج"],[64598,1,"يح"],[64599,1,"يخ"],[64600,1,"يم"],[64601,1,"يى"],[64602,1,"يي"],[64603,1,"ذٰ"],[64604,1,"رٰ"],[64605,1,"ىٰ"],[64606,5," ٌّ"],[64607,5," ٍّ"],[64608,5," َّ"],[64609,5," ُّ"],[64610,5," ِّ"],[64611,5," ّٰ"],[64612,1,"ئر"],[64613,1,"ئز"],[64614,1,"ئم"],[64615,1,"ئن"],[64616,1,"ئى"],[64617,1,"ئي"],[64618,1,"بر"],[64619,1,"بز"],[64620,1,"بم"],[64621,1,"بن"],[64622,1,"بى"],[64623,1,"بي"],[64624,1,"تر"],[64625,1,"تز"],[64626,1,"تم"],[64627,1,"تن"],[64628,1,"تى"],[64629,1,"تي"],[64630,1,"ثر"],[64631,1,"ثز"],[64632,1,"ثم"],[64633,1,"ثن"],[64634,1,"ثى"],[64635,1,"ثي"],[64636,1,"فى"],[64637,1,"في"],[64638,1,"قى"],[64639,1,"قي"],[64640,1,"كا"],[64641,1,"كل"],[64642,1,"كم"],[64643,1,"كى"],[64644,1,"كي"],[64645,1,"لم"],[64646,1,"لى"],[64647,1,"لي"],[64648,1,"ما"],[64649,1,"مم"],[64650,1,"نر"],[64651,1,"نز"],[64652,1,"نم"],[64653,1,"نن"],[64654,1,"نى"],[64655,1,"ني"],[64656,1,"ىٰ"],[64657,1,"ير"],[64658,1,"يز"],[64659,1,"يم"],[64660,1,"ين"],[64661,1,"يى"],[64662,1,"يي"],[64663,1,"ئج"],[64664,1,"ئح"],[64665,1,"ئخ"],[64666,1,"ئم"],[64667,1,"ئه"],[64668,1,"بج"],[64669,1,"بح"],[64670,1,"بخ"],[64671,1,"بم"],[64672,1,"به"],[64673,1,"تج"],[64674,1,"تح"],[64675,1,"تخ"],[64676,1,"تم"],[64677,1,"ته"],[64678,1,"ثم"],[64679,1,"جح"],[64680,1,"جم"],[64681,1,"حج"],[64682,1,"حم"],[64683,1,"خج"],[64684,1,"خم"],[64685,1,"سج"],[64686,1,"سح"],[64687,1,"سخ"],[64688,1,"سم"],[64689,1,"صح"],[64690,1,"صخ"],[64691,1,"صم"],[64692,1,"ضج"],[64693,1,"ضح"],[64694,1,"ضخ"],[64695,1,"ضم"],[64696,1,"طح"],[64697,1,"ظم"],[64698,1,"عج"],[64699,1,"عم"],[64700,1,"غج"],[64701,1,"غم"],[64702,1,"فج"],[64703,1,"فح"],[64704,1,"فخ"],[64705,1,"فم"],[64706,1,"قح"],[64707,1,"قم"],[64708,1,"كج"],[64709,1,"كح"],[64710,1,"كخ"],[64711,1,"كل"],[64712,1,"كم"],[64713,1,"لج"],[64714,1,"لح"],[64715,1,"لخ"],[64716,1,"لم"],[64717,1,"له"],[64718,1,"مج"],[64719,1,"مح"],[64720,1,"مخ"],[64721,1,"مم"],[64722,1,"نج"],[64723,1,"نح"],[64724,1,"نخ"],[64725,1,"نم"],[64726,1,"نه"],[64727,1,"هج"],[64728,1,"هم"],[64729,1,"هٰ"],[64730,1,"يج"],[64731,1,"يح"],[64732,1,"يخ"],[64733,1,"يم"],[64734,1,"يه"],[64735,1,"ئم"],[64736,1,"ئه"],[64737,1,"بم"],[64738,1,"به"],[64739,1,"تم"],[64740,1,"ته"],[64741,1,"ثم"],[64742,1,"ثه"],[64743,1,"سم"],[64744,1,"سه"],[64745,1,"شم"],[64746,1,"شه"],[64747,1,"كل"],[64748,1,"كم"],[64749,1,"لم"],[64750,1,"نم"],[64751,1,"نه"],[64752,1,"يم"],[64753,1,"يه"],[64754,1,"ـَّ"],[64755,1,"ـُّ"],[64756,1,"ـِّ"],[64757,1,"طى"],[64758,1,"طي"],[64759,1,"عى"],[64760,1,"عي"],[64761,1,"غى"],[64762,1,"غي"],[64763,1,"سى"],[64764,1,"سي"],[64765,1,"شى"],[64766,1,"شي"],[64767,1,"حى"],[64768,1,"حي"],[64769,1,"جى"],[64770,1,"جي"],[64771,1,"خى"],[64772,1,"خي"],[64773,1,"صى"],[64774,1,"صي"],[64775,1,"ضى"],[64776,1,"ضي"],[64777,1,"شج"],[64778,1,"شح"],[64779,1,"شخ"],[64780,1,"شم"],[64781,1,"شر"],[64782,1,"سر"],[64783,1,"صر"],[64784,1,"ضر"],[64785,1,"طى"],[64786,1,"طي"],[64787,1,"عى"],[64788,1,"عي"],[64789,1,"غى"],[64790,1,"غي"],[64791,1,"سى"],[64792,1,"سي"],[64793,1,"شى"],[64794,1,"شي"],[64795,1,"حى"],[64796,1,"حي"],[64797,1,"جى"],[64798,1,"جي"],[64799,1,"خى"],[64800,1,"خي"],[64801,1,"صى"],[64802,1,"صي"],[64803,1,"ضى"],[64804,1,"ضي"],[64805,1,"شج"],[64806,1,"شح"],[64807,1,"شخ"],[64808,1,"شم"],[64809,1,"شر"],[64810,1,"سر"],[64811,1,"صر"],[64812,1,"ضر"],[64813,1,"شج"],[64814,1,"شح"],[64815,1,"شخ"],[64816,1,"شم"],[64817,1,"سه"],[64818,1,"شه"],[64819,1,"طم"],[64820,1,"سج"],[64821,1,"سح"],[64822,1,"سخ"],[64823,1,"شج"],[64824,1,"شح"],[64825,1,"شخ"],[64826,1,"طم"],[64827,1,"ظم"],[[64828,64829],1,"اً"],[[64830,64831],2],[[64832,64847],2],[64848,1,"تجم"],[[64849,64850],1,"تحج"],[64851,1,"تحم"],[64852,1,"تخم"],[64853,1,"تمج"],[64854,1,"تمح"],[64855,1,"تمخ"],[[64856,64857],1,"جمح"],[64858,1,"حمي"],[64859,1,"حمى"],[64860,1,"سحج"],[64861,1,"سجح"],[64862,1,"سجى"],[[64863,64864],1,"سمح"],[64865,1,"سمج"],[[64866,64867],1,"سمم"],[[64868,64869],1,"صحح"],[64870,1,"صمم"],[[64871,64872],1,"شحم"],[64873,1,"شجي"],[[64874,64875],1,"شمخ"],[[64876,64877],1,"شمم"],[64878,1,"ضحى"],[[64879,64880],1,"ضخم"],[[64881,64882],1,"طمح"],[64883,1,"طمم"],[64884,1,"طمي"],[64885,1,"عجم"],[[64886,64887],1,"عمم"],[64888,1,"عمى"],[64889,1,"غمم"],[64890,1,"غمي"],[64891,1,"غمى"],[[64892,64893],1,"فخم"],[64894,1,"قمح"],[64895,1,"قمم"],[64896,1,"لحم"],[64897,1,"لحي"],[64898,1,"لحى"],[[64899,64900],1,"لجج"],[[64901,64902],1,"لخم"],[[64903,64904],1,"لمح"],[64905,1,"محج"],[64906,1,"محم"],[64907,1,"محي"],[64908,1,"مجح"],[64909,1,"مجم"],[64910,1,"مخج"],[64911,1,"مخم"],[[64912,64913],3],[64914,1,"مجخ"],[64915,1,"همج"],[64916,1,"همم"],[64917,1,"نحم"],[64918,1,"نحى"],[[64919,64920],1,"نجم"],[64921,1,"نجى"],[64922,1,"نمي"],[64923,1,"نمى"],[[64924,64925],1,"يمم"],[64926,1,"بخي"],[64927,1,"تجي"],[64928,1,"تجى"],[64929,1,"تخي"],[64930,1,"تخى"],[64931,1,"تمي"],[64932,1,"تمى"],[64933,1,"جمي"],[64934,1,"جحى"],[64935,1,"جمى"],[64936,1,"سخى"],[64937,1,"صحي"],[64938,1,"شحي"],[64939,1,"ضحي"],[64940,1,"لجي"],[64941,1,"لمي"],[64942,1,"يحي"],[64943,1,"يجي"],[64944,1,"يمي"],[64945,1,"ممي"],[64946,1,"قمي"],[64947,1,"نحي"],[64948,1,"قمح"],[64949,1,"لحم"],[64950,1,"عمي"],[64951,1,"كمي"],[64952,1,"نجح"],[64953,1,"مخي"],[64954,1,"لجم"],[64955,1,"كمم"],[64956,1,"لجم"],[64957,1,"نجح"],[64958,1,"جحي"],[64959,1,"حجي"],[64960,1,"مجي"],[64961,1,"فمي"],[64962,1,"بحي"],[64963,1,"كمم"],[64964,1,"عجم"],[64965,1,"صمم"],[64966,1,"سخي"],[64967,1,"نجي"],[[64968,64974],3],[64975,2],[[64976,65007],3],[65008,1,"صلے"],[65009,1,"قلے"],[65010,1,"الله"],[65011,1,"اكبر"],[65012,1,"محمد"],[65013,1,"صلعم"],[65014,1,"رسول"],[65015,1,"عليه"],[65016,1,"وسلم"],[65017,1,"صلى"],[65018,5,"صلى الله عليه وسلم"],[65019,5,"جل جلاله"],[65020,1,"ریال"],[65021,2],[[65022,65023],2],[[65024,65039],7],[65040,5,","],[65041,1,"、"],[65042,3],[65043,5,":"],[65044,5,";"],[65045,5,"!"],[65046,5,"?"],[65047,1,"〖"],[65048,1,"〗"],[65049,3],[[65050,65055],3],[[65056,65059],2],[[65060,65062],2],[[65063,65069],2],[[65070,65071],2],[65072,3],[65073,1,"—"],[65074,1,"–"],[[65075,65076],5,"_"],[65077,5,"("],[65078,5,")"],[65079,5,"{"],[65080,5,"}"],[65081,1,"〔"],[65082,1,"〕"],[65083,1,"【"],[65084,1,"】"],[65085,1,"《"],[65086,1,"》"],[65087,1,"〈"],[65088,1,"〉"],[65089,1,"「"],[65090,1,"」"],[65091,1,"『"],[65092,1,"』"],[[65093,65094],2],[65095,5,"["],[65096,5,"]"],[[65097,65100],5," ̅"],[[65101,65103],5,"_"],[65104,5,","],[65105,1,"、"],[65106,3],[65107,3],[65108,5,";"],[65109,5,":"],[65110,5,"?"],[65111,5,"!"],[65112,1,"—"],[65113,5,"("],[65114,5,")"],[65115,5,"{"],[65116,5,"}"],[65117,1,"〔"],[65118,1,"〕"],[65119,5,"#"],[65120,5,"&"],[65121,5,"*"],[65122,5,"+"],[65123,1,"-"],[65124,5,"<"],[65125,5,">"],[65126,5,"="],[65127,3],[65128,5,"\\\\"],[65129,5,"$"],[65130,5,"%"],[65131,5,"@"],[[65132,65135],3],[65136,5," ً"],[65137,1,"ـً"],[65138,5," ٌ"],[65139,2],[65140,5," ٍ"],[65141,3],[65142,5," َ"],[65143,1,"ـَ"],[65144,5," ُ"],[65145,1,"ـُ"],[65146,5," ِ"],[65147,1,"ـِ"],[65148,5," ّ"],[65149,1,"ـّ"],[65150,5," ْ"],[65151,1,"ـْ"],[65152,1,"ء"],[[65153,65154],1,"آ"],[[65155,65156],1,"أ"],[[65157,65158],1,"ؤ"],[[65159,65160],1,"إ"],[[65161,65164],1,"ئ"],[[65165,65166],1,"ا"],[[65167,65170],1,"ب"],[[65171,65172],1,"ة"],[[65173,65176],1,"ت"],[[65177,65180],1,"ث"],[[65181,65184],1,"ج"],[[65185,65188],1,"ح"],[[65189,65192],1,"خ"],[[65193,65194],1,"د"],[[65195,65196],1,"ذ"],[[65197,65198],1,"ر"],[[65199,65200],1,"ز"],[[65201,65204],1,"س"],[[65205,65208],1,"ش"],[[65209,65212],1,"ص"],[[65213,65216],1,"ض"],[[65217,65220],1,"ط"],[[65221,65224],1,"ظ"],[[65225,65228],1,"ع"],[[65229,65232],1,"غ"],[[65233,65236],1,"ف"],[[65237,65240],1,"ق"],[[65241,65244],1,"ك"],[[65245,65248],1,"ل"],[[65249,65252],1,"م"],[[65253,65256],1,"ن"],[[65257,65260],1,"ه"],[[65261,65262],1,"و"],[[65263,65264],1,"ى"],[[65265,65268],1,"ي"],[[65269,65270],1,"لآ"],[[65271,65272],1,"لأ"],[[65273,65274],1,"لإ"],[[65275,65276],1,"لا"],[[65277,65278],3],[65279,7],[65280,3],[65281,5,"!"],[65282,5,"\\""],[65283,5,"#"],[65284,5,"$"],[65285,5,"%"],[65286,5,"&"],[65287,5,"\'"],[65288,5,"("],[65289,5,")"],[65290,5,"*"],[65291,5,"+"],[65292,5,","],[65293,1,"-"],[65294,1,"."],[65295,5,"/"],[65296,1,"0"],[65297,1,"1"],[65298,1,"2"],[65299,1,"3"],[65300,1,"4"],[65301,1,"5"],[65302,1,"6"],[65303,1,"7"],[65304,1,"8"],[65305,1,"9"],[65306,5,":"],[65307,5,";"],[65308,5,"<"],[65309,5,"="],[65310,5,">"],[65311,5,"?"],[65312,5,"@"],[65313,1,"a"],[65314,1,"b"],[65315,1,"c"],[65316,1,"d"],[65317,1,"e"],[65318,1,"f"],[65319,1,"g"],[65320,1,"h"],[65321,1,"i"],[65322,1,"j"],[65323,1,"k"],[65324,1,"l"],[65325,1,"m"],[65326,1,"n"],[65327,1,"o"],[65328,1,"p"],[65329,1,"q"],[65330,1,"r"],[65331,1,"s"],[65332,1,"t"],[65333,1,"u"],[65334,1,"v"],[65335,1,"w"],[65336,1,"x"],[65337,1,"y"],[65338,1,"z"],[65339,5,"["],[65340,5,"\\\\"],[65341,5,"]"],[65342,5,"^"],[65343,5,"_"],[65344,5,"`"],[65345,1,"a"],[65346,1,"b"],[65347,1,"c"],[65348,1,"d"],[65349,1,"e"],[65350,1,"f"],[65351,1,"g"],[65352,1,"h"],[65353,1,"i"],[65354,1,"j"],[65355,1,"k"],[65356,1,"l"],[65357,1,"m"],[65358,1,"n"],[65359,1,"o"],[65360,1,"p"],[65361,1,"q"],[65362,1,"r"],[65363,1,"s"],[65364,1,"t"],[65365,1,"u"],[65366,1,"v"],[65367,1,"w"],[65368,1,"x"],[65369,1,"y"],[65370,1,"z"],[65371,5,"{"],[65372,5,"|"],[65373,5,"}"],[65374,5,"~"],[65375,1,"⦅"],[65376,1,"⦆"],[65377,1,"."],[65378,1,"「"],[65379,1,"」"],[65380,1,"、"],[65381,1,"・"],[65382,1,"ヲ"],[65383,1,"ァ"],[65384,1,"ィ"],[65385,1,"ゥ"],[65386,1,"ェ"],[65387,1,"ォ"],[65388,1,"ャ"],[65389,1,"ュ"],[65390,1,"ョ"],[65391,1,"ッ"],[65392,1,"ー"],[65393,1,"ア"],[65394,1,"イ"],[65395,1,"ウ"],[65396,1,"エ"],[65397,1,"オ"],[65398,1,"カ"],[65399,1,"キ"],[65400,1,"ク"],[65401,1,"ケ"],[65402,1,"コ"],[65403,1,"サ"],[65404,1,"シ"],[65405,1,"ス"],[65406,1,"セ"],[65407,1,"ソ"],[65408,1,"タ"],[65409,1,"チ"],[65410,1,"ツ"],[65411,1,"テ"],[65412,1,"ト"],[65413,1,"ナ"],[65414,1,"ニ"],[65415,1,"ヌ"],[65416,1,"ネ"],[65417,1,"ノ"],[65418,1,"ハ"],[65419,1,"ヒ"],[65420,1,"フ"],[65421,1,"ヘ"],[65422,1,"ホ"],[65423,1,"マ"],[65424,1,"ミ"],[65425,1,"ム"],[65426,1,"メ"],[65427,1,"モ"],[65428,1,"ヤ"],[65429,1,"ユ"],[65430,1,"ヨ"],[65431,1,"ラ"],[65432,1,"リ"],[65433,1,"ル"],[65434,1,"レ"],[65435,1,"ロ"],[65436,1,"ワ"],[65437,1,"ン"],[65438,1,"゙"],[65439,1,"゚"],[65440,3],[65441,1,"ᄀ"],[65442,1,"ᄁ"],[65443,1,"ᆪ"],[65444,1,"ᄂ"],[65445,1,"ᆬ"],[65446,1,"ᆭ"],[65447,1,"ᄃ"],[65448,1,"ᄄ"],[65449,1,"ᄅ"],[65450,1,"ᆰ"],[65451,1,"ᆱ"],[65452,1,"ᆲ"],[65453,1,"ᆳ"],[65454,1,"ᆴ"],[65455,1,"ᆵ"],[65456,1,"ᄚ"],[65457,1,"ᄆ"],[65458,1,"ᄇ"],[65459,1,"ᄈ"],[65460,1,"ᄡ"],[65461,1,"ᄉ"],[65462,1,"ᄊ"],[65463,1,"ᄋ"],[65464,1,"ᄌ"],[65465,1,"ᄍ"],[65466,1,"ᄎ"],[65467,1,"ᄏ"],[65468,1,"ᄐ"],[65469,1,"ᄑ"],[65470,1,"ᄒ"],[[65471,65473],3],[65474,1,"ᅡ"],[65475,1,"ᅢ"],[65476,1,"ᅣ"],[65477,1,"ᅤ"],[65478,1,"ᅥ"],[65479,1,"ᅦ"],[[65480,65481],3],[65482,1,"ᅧ"],[65483,1,"ᅨ"],[65484,1,"ᅩ"],[65485,1,"ᅪ"],[65486,1,"ᅫ"],[65487,1,"ᅬ"],[[65488,65489],3],[65490,1,"ᅭ"],[65491,1,"ᅮ"],[65492,1,"ᅯ"],[65493,1,"ᅰ"],[65494,1,"ᅱ"],[65495,1,"ᅲ"],[[65496,65497],3],[65498,1,"ᅳ"],[65499,1,"ᅴ"],[65500,1,"ᅵ"],[[65501,65503],3],[65504,1,"¢"],[65505,1,"£"],[65506,1,"¬"],[65507,5," ̄"],[65508,1,"¦"],[65509,1,"¥"],[65510,1,"₩"],[65511,3],[65512,1,"│"],[65513,1,"←"],[65514,1,"↑"],[65515,1,"→"],[65516,1,"↓"],[65517,1,"■"],[65518,1,"○"],[[65519,65528],3],[[65529,65531],3],[65532,3],[65533,3],[[65534,65535],3],[[65536,65547],2],[65548,3],[[65549,65574],2],[65575,3],[[65576,65594],2],[65595,3],[[65596,65597],2],[65598,3],[[65599,65613],2],[[65614,65615],3],[[65616,65629],2],[[65630,65663],3],[[65664,65786],2],[[65787,65791],3],[[65792,65794],2],[[65795,65798],3],[[65799,65843],2],[[65844,65846],3],[[65847,65855],2],[[65856,65930],2],[[65931,65932],2],[[65933,65934],2],[65935,3],[[65936,65947],2],[65948,2],[[65949,65951],3],[65952,2],[[65953,65999],3],[[66000,66044],2],[66045,2],[[66046,66175],3],[[66176,66204],2],[[66205,66207],3],[[66208,66256],2],[[66257,66271],3],[66272,2],[[66273,66299],2],[[66300,66303],3],[[66304,66334],2],[66335,2],[[66336,66339],2],[[66340,66348],3],[[66349,66351],2],[[66352,66368],2],[66369,2],[[66370,66377],2],[66378,2],[[66379,66383],3],[[66384,66426],2],[[66427,66431],3],[[66432,66461],2],[66462,3],[66463,2],[[66464,66499],2],[[66500,66503],3],[[66504,66511],2],[[66512,66517],2],[[66518,66559],3],[66560,1,"𐐨"],[66561,1,"𐐩"],[66562,1,"𐐪"],[66563,1,"𐐫"],[66564,1,"𐐬"],[66565,1,"𐐭"],[66566,1,"𐐮"],[66567,1,"𐐯"],[66568,1,"𐐰"],[66569,1,"𐐱"],[66570,1,"𐐲"],[66571,1,"𐐳"],[66572,1,"𐐴"],[66573,1,"𐐵"],[66574,1,"𐐶"],[66575,1,"𐐷"],[66576,1,"𐐸"],[66577,1,"𐐹"],[66578,1,"𐐺"],[66579,1,"𐐻"],[66580,1,"𐐼"],[66581,1,"𐐽"],[66582,1,"𐐾"],[66583,1,"𐐿"],[66584,1,"𐑀"],[66585,1,"𐑁"],[66586,1,"𐑂"],[66587,1,"𐑃"],[66588,1,"𐑄"],[66589,1,"𐑅"],[66590,1,"𐑆"],[66591,1,"𐑇"],[66592,1,"𐑈"],[66593,1,"𐑉"],[66594,1,"𐑊"],[66595,1,"𐑋"],[66596,1,"𐑌"],[66597,1,"𐑍"],[66598,1,"𐑎"],[66599,1,"𐑏"],[[66600,66637],2],[[66638,66717],2],[[66718,66719],3],[[66720,66729],2],[[66730,66735],3],[66736,1,"𐓘"],[66737,1,"𐓙"],[66738,1,"𐓚"],[66739,1,"𐓛"],[66740,1,"𐓜"],[66741,1,"𐓝"],[66742,1,"𐓞"],[66743,1,"𐓟"],[66744,1,"𐓠"],[66745,1,"𐓡"],[66746,1,"𐓢"],[66747,1,"𐓣"],[66748,1,"𐓤"],[66749,1,"𐓥"],[66750,1,"𐓦"],[66751,1,"𐓧"],[66752,1,"𐓨"],[66753,1,"𐓩"],[66754,1,"𐓪"],[66755,1,"𐓫"],[66756,1,"𐓬"],[66757,1,"𐓭"],[66758,1,"𐓮"],[66759,1,"𐓯"],[66760,1,"𐓰"],[66761,1,"𐓱"],[66762,1,"𐓲"],[66763,1,"𐓳"],[66764,1,"𐓴"],[66765,1,"𐓵"],[66766,1,"𐓶"],[66767,1,"𐓷"],[66768,1,"𐓸"],[66769,1,"𐓹"],[66770,1,"𐓺"],[66771,1,"𐓻"],[[66772,66775],3],[[66776,66811],2],[[66812,66815],3],[[66816,66855],2],[[66856,66863],3],[[66864,66915],2],[[66916,66926],3],[66927,2],[66928,1,"𐖗"],[66929,1,"𐖘"],[66930,1,"𐖙"],[66931,1,"𐖚"],[66932,1,"𐖛"],[66933,1,"𐖜"],[66934,1,"𐖝"],[66935,1,"𐖞"],[66936,1,"𐖟"],[66937,1,"𐖠"],[66938,1,"𐖡"],[66939,3],[66940,1,"𐖣"],[66941,1,"𐖤"],[66942,1,"𐖥"],[66943,1,"𐖦"],[66944,1,"𐖧"],[66945,1,"𐖨"],[66946,1,"𐖩"],[66947,1,"𐖪"],[66948,1,"𐖫"],[66949,1,"𐖬"],[66950,1,"𐖭"],[66951,1,"𐖮"],[66952,1,"𐖯"],[66953,1,"𐖰"],[66954,1,"𐖱"],[66955,3],[66956,1,"𐖳"],[66957,1,"𐖴"],[66958,1,"𐖵"],[66959,1,"𐖶"],[66960,1,"𐖷"],[66961,1,"𐖸"],[66962,1,"𐖹"],[66963,3],[66964,1,"𐖻"],[66965,1,"𐖼"],[66966,3],[[66967,66977],2],[66978,3],[[66979,66993],2],[66994,3],[[66995,67001],2],[67002,3],[[67003,67004],2],[[67005,67071],3],[[67072,67382],2],[[67383,67391],3],[[67392,67413],2],[[67414,67423],3],[[67424,67431],2],[[67432,67455],3],[67456,2],[67457,1,"ː"],[67458,1,"ˑ"],[67459,1,"æ"],[67460,1,"ʙ"],[67461,1,"ɓ"],[67462,3],[67463,1,"ʣ"],[67464,1,"ꭦ"],[67465,1,"ʥ"],[67466,1,"ʤ"],[67467,1,"ɖ"],[67468,1,"ɗ"],[67469,1,"ᶑ"],[67470,1,"ɘ"],[67471,1,"ɞ"],[67472,1,"ʩ"],[67473,1,"ɤ"],[67474,1,"ɢ"],[67475,1,"ɠ"],[67476,1,"ʛ"],[67477,1,"ħ"],[67478,1,"ʜ"],[67479,1,"ɧ"],[67480,1,"ʄ"],[67481,1,"ʪ"],[67482,1,"ʫ"],[67483,1,"ɬ"],[67484,1,"𝼄"],[67485,1,"ꞎ"],[67486,1,"ɮ"],[67487,1,"𝼅"],[67488,1,"ʎ"],[67489,1,"𝼆"],[67490,1,"ø"],[67491,1,"ɶ"],[67492,1,"ɷ"],[67493,1,"q"],[67494,1,"ɺ"],[67495,1,"𝼈"],[67496,1,"ɽ"],[67497,1,"ɾ"],[67498,1,"ʀ"],[67499,1,"ʨ"],[67500,1,"ʦ"],[67501,1,"ꭧ"],[67502,1,"ʧ"],[67503,1,"ʈ"],[67504,1,"ⱱ"],[67505,3],[67506,1,"ʏ"],[67507,1,"ʡ"],[67508,1,"ʢ"],[67509,1,"ʘ"],[67510,1,"ǀ"],[67511,1,"ǁ"],[67512,1,"ǂ"],[67513,1,"𝼊"],[67514,1,"𝼞"],[[67515,67583],3],[[67584,67589],2],[[67590,67591],3],[67592,2],[67593,3],[[67594,67637],2],[67638,3],[[67639,67640],2],[[67641,67643],3],[67644,2],[[67645,67646],3],[67647,2],[[67648,67669],2],[67670,3],[[67671,67679],2],[[67680,67702],2],[[67703,67711],2],[[67712,67742],2],[[67743,67750],3],[[67751,67759],2],[[67760,67807],3],[[67808,67826],2],[67827,3],[[67828,67829],2],[[67830,67834],3],[[67835,67839],2],[[67840,67861],2],[[67862,67865],2],[[67866,67867],2],[[67868,67870],3],[67871,2],[[67872,67897],2],[[67898,67902],3],[67903,2],[[67904,67967],3],[[67968,68023],2],[[68024,68027],3],[[68028,68029],2],[[68030,68031],2],[[68032,68047],2],[[68048,68049],3],[[68050,68095],2],[[68096,68099],2],[68100,3],[[68101,68102],2],[[68103,68107],3],[[68108,68115],2],[68116,3],[[68117,68119],2],[68120,3],[[68121,68147],2],[[68148,68149],2],[[68150,68151],3],[[68152,68154],2],[[68155,68158],3],[68159,2],[[68160,68167],2],[68168,2],[[68169,68175],3],[[68176,68184],2],[[68185,68191],3],[[68192,68220],2],[[68221,68223],2],[[68224,68252],2],[[68253,68255],2],[[68256,68287],3],[[68288,68295],2],[68296,2],[[68297,68326],2],[[68327,68330],3],[[68331,68342],2],[[68343,68351],3],[[68352,68405],2],[[68406,68408],3],[[68409,68415],2],[[68416,68437],2],[[68438,68439],3],[[68440,68447],2],[[68448,68466],2],[[68467,68471],3],[[68472,68479],2],[[68480,68497],2],[[68498,68504],3],[[68505,68508],2],[[68509,68520],3],[[68521,68527],2],[[68528,68607],3],[[68608,68680],2],[[68681,68735],3],[68736,1,"𐳀"],[68737,1,"𐳁"],[68738,1,"𐳂"],[68739,1,"𐳃"],[68740,1,"𐳄"],[68741,1,"𐳅"],[68742,1,"𐳆"],[68743,1,"𐳇"],[68744,1,"𐳈"],[68745,1,"𐳉"],[68746,1,"𐳊"],[68747,1,"𐳋"],[68748,1,"𐳌"],[68749,1,"𐳍"],[68750,1,"𐳎"],[68751,1,"𐳏"],[68752,1,"𐳐"],[68753,1,"𐳑"],[68754,1,"𐳒"],[68755,1,"𐳓"],[68756,1,"𐳔"],[68757,1,"𐳕"],[68758,1,"𐳖"],[68759,1,"𐳗"],[68760,1,"𐳘"],[68761,1,"𐳙"],[68762,1,"𐳚"],[68763,1,"𐳛"],[68764,1,"𐳜"],[68765,1,"𐳝"],[68766,1,"𐳞"],[68767,1,"𐳟"],[68768,1,"𐳠"],[68769,1,"𐳡"],[68770,1,"𐳢"],[68771,1,"𐳣"],[68772,1,"𐳤"],[68773,1,"𐳥"],[68774,1,"𐳦"],[68775,1,"𐳧"],[68776,1,"𐳨"],[68777,1,"𐳩"],[68778,1,"𐳪"],[68779,1,"𐳫"],[68780,1,"𐳬"],[68781,1,"𐳭"],[68782,1,"𐳮"],[68783,1,"𐳯"],[68784,1,"𐳰"],[68785,1,"𐳱"],[68786,1,"𐳲"],[[68787,68799],3],[[68800,68850],2],[[68851,68857],3],[[68858,68863],2],[[68864,68903],2],[[68904,68911],3],[[68912,68921],2],[[68922,69215],3],[[69216,69246],2],[69247,3],[[69248,69289],2],[69290,3],[[69291,69292],2],[69293,2],[[69294,69295],3],[[69296,69297],2],[[69298,69372],3],[[69373,69375],2],[[69376,69404],2],[[69405,69414],2],[69415,2],[[69416,69423],3],[[69424,69456],2],[[69457,69465],2],[[69466,69487],3],[[69488,69509],2],[[69510,69513],2],[[69514,69551],3],[[69552,69572],2],[[69573,69579],2],[[69580,69599],3],[[69600,69622],2],[[69623,69631],3],[[69632,69702],2],[[69703,69709],2],[[69710,69713],3],[[69714,69733],2],[[69734,69743],2],[[69744,69749],2],[[69750,69758],3],[69759,2],[[69760,69818],2],[[69819,69820],2],[69821,3],[[69822,69825],2],[69826,2],[[69827,69836],3],[69837,3],[[69838,69839],3],[[69840,69864],2],[[69865,69871],3],[[69872,69881],2],[[69882,69887],3],[[69888,69940],2],[69941,3],[[69942,69951],2],[[69952,69955],2],[[69956,69958],2],[69959,2],[[69960,69967],3],[[69968,70003],2],[[70004,70005],2],[70006,2],[[70007,70015],3],[[70016,70084],2],[[70085,70088],2],[[70089,70092],2],[70093,2],[[70094,70095],2],[[70096,70105],2],[70106,2],[70107,2],[70108,2],[[70109,70111],2],[70112,3],[[70113,70132],2],[[70133,70143],3],[[70144,70161],2],[70162,3],[[70163,70199],2],[[70200,70205],2],[70206,2],[[70207,70209],2],[[70210,70271],3],[[70272,70278],2],[70279,3],[70280,2],[70281,3],[[70282,70285],2],[70286,3],[[70287,70301],2],[70302,3],[[70303,70312],2],[70313,2],[[70314,70319],3],[[70320,70378],2],[[70379,70383],3],[[70384,70393],2],[[70394,70399],3],[70400,2],[[70401,70403],2],[70404,3],[[70405,70412],2],[[70413,70414],3],[[70415,70416],2],[[70417,70418],3],[[70419,70440],2],[70441,3],[[70442,70448],2],[70449,3],[[70450,70451],2],[70452,3],[[70453,70457],2],[70458,3],[70459,2],[[70460,70468],2],[[70469,70470],3],[[70471,70472],2],[[70473,70474],3],[[70475,70477],2],[[70478,70479],3],[70480,2],[[70481,70486],3],[70487,2],[[70488,70492],3],[[70493,70499],2],[[70500,70501],3],[[70502,70508],2],[[70509,70511],3],[[70512,70516],2],[[70517,70655],3],[[70656,70730],2],[[70731,70735],2],[[70736,70745],2],[70746,2],[70747,2],[70748,3],[70749,2],[70750,2],[70751,2],[[70752,70753],2],[[70754,70783],3],[[70784,70853],2],[70854,2],[70855,2],[[70856,70863],3],[[70864,70873],2],[[70874,71039],3],[[71040,71093],2],[[71094,71095],3],[[71096,71104],2],[[71105,71113],2],[[71114,71127],2],[[71128,71133],2],[[71134,71167],3],[[71168,71232],2],[[71233,71235],2],[71236,2],[[71237,71247],3],[[71248,71257],2],[[71258,71263],3],[[71264,71276],2],[[71277,71295],3],[[71296,71351],2],[71352,2],[71353,2],[[71354,71359],3],[[71360,71369],2],[[71370,71423],3],[[71424,71449],2],[71450,2],[[71451,71452],3],[[71453,71467],2],[[71468,71471],3],[[71472,71481],2],[[71482,71487],2],[[71488,71494],2],[[71495,71679],3],[[71680,71738],2],[71739,2],[[71740,71839],3],[71840,1,"𑣀"],[71841,1,"𑣁"],[71842,1,"𑣂"],[71843,1,"𑣃"],[71844,1,"𑣄"],[71845,1,"𑣅"],[71846,1,"𑣆"],[71847,1,"𑣇"],[71848,1,"𑣈"],[71849,1,"𑣉"],[71850,1,"𑣊"],[71851,1,"𑣋"],[71852,1,"𑣌"],[71853,1,"𑣍"],[71854,1,"𑣎"],[71855,1,"𑣏"],[71856,1,"𑣐"],[71857,1,"𑣑"],[71858,1,"𑣒"],[71859,1,"𑣓"],[71860,1,"𑣔"],[71861,1,"𑣕"],[71862,1,"𑣖"],[71863,1,"𑣗"],[71864,1,"𑣘"],[71865,1,"𑣙"],[71866,1,"𑣚"],[71867,1,"𑣛"],[71868,1,"𑣜"],[71869,1,"𑣝"],[71870,1,"𑣞"],[71871,1,"𑣟"],[[71872,71913],2],[[71914,71922],2],[[71923,71934],3],[71935,2],[[71936,71942],2],[[71943,71944],3],[71945,2],[[71946,71947],3],[[71948,71955],2],[71956,3],[[71957,71958],2],[71959,3],[[71960,71989],2],[71990,3],[[71991,71992],2],[[71993,71994],3],[[71995,72003],2],[[72004,72006],2],[[72007,72015],3],[[72016,72025],2],[[72026,72095],3],[[72096,72103],2],[[72104,72105],3],[[72106,72151],2],[[72152,72153],3],[[72154,72161],2],[72162,2],[[72163,72164],2],[[72165,72191],3],[[72192,72254],2],[[72255,72262],2],[72263,2],[[72264,72271],3],[[72272,72323],2],[[72324,72325],2],[[72326,72345],2],[[72346,72348],2],[72349,2],[[72350,72354],2],[[72355,72367],3],[[72368,72383],2],[[72384,72440],2],[[72441,72447],3],[[72448,72457],2],[[72458,72703],3],[[72704,72712],2],[72713,3],[[72714,72758],2],[72759,3],[[72760,72768],2],[[72769,72773],2],[[72774,72783],3],[[72784,72793],2],[[72794,72812],2],[[72813,72815],3],[[72816,72817],2],[[72818,72847],2],[[72848,72849],3],[[72850,72871],2],[72872,3],[[72873,72886],2],[[72887,72959],3],[[72960,72966],2],[72967,3],[[72968,72969],2],[72970,3],[[72971,73014],2],[[73015,73017],3],[73018,2],[73019,3],[[73020,73021],2],[73022,3],[[73023,73031],2],[[73032,73039],3],[[73040,73049],2],[[73050,73055],3],[[73056,73061],2],[73062,3],[[73063,73064],2],[73065,3],[[73066,73102],2],[73103,3],[[73104,73105],2],[73106,3],[[73107,73112],2],[[73113,73119],3],[[73120,73129],2],[[73130,73439],3],[[73440,73462],2],[[73463,73464],2],[[73465,73471],3],[[73472,73488],2],[73489,3],[[73490,73530],2],[[73531,73533],3],[[73534,73538],2],[[73539,73551],2],[[73552,73561],2],[[73562,73647],3],[73648,2],[[73649,73663],3],[[73664,73713],2],[[73714,73726],3],[73727,2],[[73728,74606],2],[[74607,74648],2],[74649,2],[[74650,74751],3],[[74752,74850],2],[[74851,74862],2],[74863,3],[[74864,74867],2],[74868,2],[[74869,74879],3],[[74880,75075],2],[[75076,77711],3],[[77712,77808],2],[[77809,77810],2],[[77811,77823],3],[[77824,78894],2],[78895,2],[[78896,78904],3],[[78905,78911],3],[[78912,78933],2],[[78934,82943],3],[[82944,83526],2],[[83527,92159],3],[[92160,92728],2],[[92729,92735],3],[[92736,92766],2],[92767,3],[[92768,92777],2],[[92778,92781],3],[[92782,92783],2],[[92784,92862],2],[92863,3],[[92864,92873],2],[[92874,92879],3],[[92880,92909],2],[[92910,92911],3],[[92912,92916],2],[92917,2],[[92918,92927],3],[[92928,92982],2],[[92983,92991],2],[[92992,92995],2],[[92996,92997],2],[[92998,93007],3],[[93008,93017],2],[93018,3],[[93019,93025],2],[93026,3],[[93027,93047],2],[[93048,93052],3],[[93053,93071],2],[[93072,93759],3],[93760,1,"𖹠"],[93761,1,"𖹡"],[93762,1,"𖹢"],[93763,1,"𖹣"],[93764,1,"𖹤"],[93765,1,"𖹥"],[93766,1,"𖹦"],[93767,1,"𖹧"],[93768,1,"𖹨"],[93769,1,"𖹩"],[93770,1,"𖹪"],[93771,1,"𖹫"],[93772,1,"𖹬"],[93773,1,"𖹭"],[93774,1,"𖹮"],[93775,1,"𖹯"],[93776,1,"𖹰"],[93777,1,"𖹱"],[93778,1,"𖹲"],[93779,1,"𖹳"],[93780,1,"𖹴"],[93781,1,"𖹵"],[93782,1,"𖹶"],[93783,1,"𖹷"],[93784,1,"𖹸"],[93785,1,"𖹹"],[93786,1,"𖹺"],[93787,1,"𖹻"],[93788,1,"𖹼"],[93789,1,"𖹽"],[93790,1,"𖹾"],[93791,1,"𖹿"],[[93792,93823],2],[[93824,93850],2],[[93851,93951],3],[[93952,94020],2],[[94021,94026],2],[[94027,94030],3],[94031,2],[[94032,94078],2],[[94079,94087],2],[[94088,94094],3],[[94095,94111],2],[[94112,94175],3],[94176,2],[94177,2],[94178,2],[94179,2],[94180,2],[[94181,94191],3],[[94192,94193],2],[[94194,94207],3],[[94208,100332],2],[[100333,100337],2],[[100338,100343],2],[[100344,100351],3],[[100352,101106],2],[[101107,101589],2],[[101590,101631],3],[[101632,101640],2],[[101641,110575],3],[[110576,110579],2],[110580,3],[[110581,110587],2],[110588,3],[[110589,110590],2],[110591,3],[[110592,110593],2],[[110594,110878],2],[[110879,110882],2],[[110883,110897],3],[110898,2],[[110899,110927],3],[[110928,110930],2],[[110931,110932],3],[110933,2],[[110934,110947],3],[[110948,110951],2],[[110952,110959],3],[[110960,111355],2],[[111356,113663],3],[[113664,113770],2],[[113771,113775],3],[[113776,113788],2],[[113789,113791],3],[[113792,113800],2],[[113801,113807],3],[[113808,113817],2],[[113818,113819],3],[113820,2],[[113821,113822],2],[113823,2],[[113824,113827],7],[[113828,118527],3],[[118528,118573],2],[[118574,118575],3],[[118576,118598],2],[[118599,118607],3],[[118608,118723],2],[[118724,118783],3],[[118784,119029],2],[[119030,119039],3],[[119040,119078],2],[[119079,119080],3],[119081,2],[[119082,119133],2],[119134,1,"𝅗𝅥"],[119135,1,"𝅘𝅥"],[119136,1,"𝅘𝅥𝅮"],[119137,1,"𝅘𝅥𝅯"],[119138,1,"𝅘𝅥𝅰"],[119139,1,"𝅘𝅥𝅱"],[119140,1,"𝅘𝅥𝅲"],[[119141,119154],2],[[119155,119162],3],[[119163,119226],2],[119227,1,"𝆹𝅥"],[119228,1,"𝆺𝅥"],[119229,1,"𝆹𝅥𝅮"],[119230,1,"𝆺𝅥𝅮"],[119231,1,"𝆹𝅥𝅯"],[119232,1,"𝆺𝅥𝅯"],[[119233,119261],2],[[119262,119272],2],[[119273,119274],2],[[119275,119295],3],[[119296,119365],2],[[119366,119487],3],[[119488,119507],2],[[119508,119519],3],[[119520,119539],2],[[119540,119551],3],[[119552,119638],2],[[119639,119647],3],[[119648,119665],2],[[119666,119672],2],[[119673,119807],3],[119808,1,"a"],[119809,1,"b"],[119810,1,"c"],[119811,1,"d"],[119812,1,"e"],[119813,1,"f"],[119814,1,"g"],[119815,1,"h"],[119816,1,"i"],[119817,1,"j"],[119818,1,"k"],[119819,1,"l"],[119820,1,"m"],[119821,1,"n"],[119822,1,"o"],[119823,1,"p"],[119824,1,"q"],[119825,1,"r"],[119826,1,"s"],[119827,1,"t"],[119828,1,"u"],[119829,1,"v"],[119830,1,"w"],[119831,1,"x"],[119832,1,"y"],[119833,1,"z"],[119834,1,"a"],[119835,1,"b"],[119836,1,"c"],[119837,1,"d"],[119838,1,"e"],[119839,1,"f"],[119840,1,"g"],[119841,1,"h"],[119842,1,"i"],[119843,1,"j"],[119844,1,"k"],[119845,1,"l"],[119846,1,"m"],[119847,1,"n"],[119848,1,"o"],[119849,1,"p"],[119850,1,"q"],[119851,1,"r"],[119852,1,"s"],[119853,1,"t"],[119854,1,"u"],[119855,1,"v"],[119856,1,"w"],[119857,1,"x"],[119858,1,"y"],[119859,1,"z"],[119860,1,"a"],[119861,1,"b"],[119862,1,"c"],[119863,1,"d"],[119864,1,"e"],[119865,1,"f"],[119866,1,"g"],[119867,1,"h"],[119868,1,"i"],[119869,1,"j"],[119870,1,"k"],[119871,1,"l"],[119872,1,"m"],[119873,1,"n"],[119874,1,"o"],[119875,1,"p"],[119876,1,"q"],[119877,1,"r"],[119878,1,"s"],[119879,1,"t"],[119880,1,"u"],[119881,1,"v"],[119882,1,"w"],[119883,1,"x"],[119884,1,"y"],[119885,1,"z"],[119886,1,"a"],[119887,1,"b"],[119888,1,"c"],[119889,1,"d"],[119890,1,"e"],[119891,1,"f"],[119892,1,"g"],[119893,3],[119894,1,"i"],[119895,1,"j"],[119896,1,"k"],[119897,1,"l"],[119898,1,"m"],[119899,1,"n"],[119900,1,"o"],[119901,1,"p"],[119902,1,"q"],[119903,1,"r"],[119904,1,"s"],[119905,1,"t"],[119906,1,"u"],[119907,1,"v"],[119908,1,"w"],[119909,1,"x"],[119910,1,"y"],[119911,1,"z"],[119912,1,"a"],[119913,1,"b"],[119914,1,"c"],[119915,1,"d"],[119916,1,"e"],[119917,1,"f"],[119918,1,"g"],[119919,1,"h"],[119920,1,"i"],[119921,1,"j"],[119922,1,"k"],[119923,1,"l"],[119924,1,"m"],[119925,1,"n"],[119926,1,"o"],[119927,1,"p"],[119928,1,"q"],[119929,1,"r"],[119930,1,"s"],[119931,1,"t"],[119932,1,"u"],[119933,1,"v"],[119934,1,"w"],[119935,1,"x"],[119936,1,"y"],[119937,1,"z"],[119938,1,"a"],[119939,1,"b"],[119940,1,"c"],[119941,1,"d"],[119942,1,"e"],[119943,1,"f"],[119944,1,"g"],[119945,1,"h"],[119946,1,"i"],[119947,1,"j"],[119948,1,"k"],[119949,1,"l"],[119950,1,"m"],[119951,1,"n"],[119952,1,"o"],[119953,1,"p"],[119954,1,"q"],[119955,1,"r"],[119956,1,"s"],[119957,1,"t"],[119958,1,"u"],[119959,1,"v"],[119960,1,"w"],[119961,1,"x"],[119962,1,"y"],[119963,1,"z"],[119964,1,"a"],[119965,3],[119966,1,"c"],[119967,1,"d"],[[119968,119969],3],[119970,1,"g"],[[119971,119972],3],[119973,1,"j"],[119974,1,"k"],[[119975,119976],3],[119977,1,"n"],[119978,1,"o"],[119979,1,"p"],[119980,1,"q"],[119981,3],[119982,1,"s"],[119983,1,"t"],[119984,1,"u"],[119985,1,"v"],[119986,1,"w"],[119987,1,"x"],[119988,1,"y"],[119989,1,"z"],[119990,1,"a"],[119991,1,"b"],[119992,1,"c"],[119993,1,"d"],[119994,3],[119995,1,"f"],[119996,3],[119997,1,"h"],[119998,1,"i"],[119999,1,"j"],[120000,1,"k"],[120001,1,"l"],[120002,1,"m"],[120003,1,"n"],[120004,3],[120005,1,"p"],[120006,1,"q"],[120007,1,"r"],[120008,1,"s"],[120009,1,"t"],[120010,1,"u"],[120011,1,"v"],[120012,1,"w"],[120013,1,"x"],[120014,1,"y"],[120015,1,"z"],[120016,1,"a"],[120017,1,"b"],[120018,1,"c"],[120019,1,"d"],[120020,1,"e"],[120021,1,"f"],[120022,1,"g"],[120023,1,"h"],[120024,1,"i"],[120025,1,"j"],[120026,1,"k"],[120027,1,"l"],[120028,1,"m"],[120029,1,"n"],[120030,1,"o"],[120031,1,"p"],[120032,1,"q"],[120033,1,"r"],[120034,1,"s"],[120035,1,"t"],[120036,1,"u"],[120037,1,"v"],[120038,1,"w"],[120039,1,"x"],[120040,1,"y"],[120041,1,"z"],[120042,1,"a"],[120043,1,"b"],[120044,1,"c"],[120045,1,"d"],[120046,1,"e"],[120047,1,"f"],[120048,1,"g"],[120049,1,"h"],[120050,1,"i"],[120051,1,"j"],[120052,1,"k"],[120053,1,"l"],[120054,1,"m"],[120055,1,"n"],[120056,1,"o"],[120057,1,"p"],[120058,1,"q"],[120059,1,"r"],[120060,1,"s"],[120061,1,"t"],[120062,1,"u"],[120063,1,"v"],[120064,1,"w"],[120065,1,"x"],[120066,1,"y"],[120067,1,"z"],[120068,1,"a"],[120069,1,"b"],[120070,3],[120071,1,"d"],[120072,1,"e"],[120073,1,"f"],[120074,1,"g"],[[120075,120076],3],[120077,1,"j"],[120078,1,"k"],[120079,1,"l"],[120080,1,"m"],[120081,1,"n"],[120082,1,"o"],[120083,1,"p"],[120084,1,"q"],[120085,3],[120086,1,"s"],[120087,1,"t"],[120088,1,"u"],[120089,1,"v"],[120090,1,"w"],[120091,1,"x"],[120092,1,"y"],[120093,3],[120094,1,"a"],[120095,1,"b"],[120096,1,"c"],[120097,1,"d"],[120098,1,"e"],[120099,1,"f"],[120100,1,"g"],[120101,1,"h"],[120102,1,"i"],[120103,1,"j"],[120104,1,"k"],[120105,1,"l"],[120106,1,"m"],[120107,1,"n"],[120108,1,"o"],[120109,1,"p"],[120110,1,"q"],[120111,1,"r"],[120112,1,"s"],[120113,1,"t"],[120114,1,"u"],[120115,1,"v"],[120116,1,"w"],[120117,1,"x"],[120118,1,"y"],[120119,1,"z"],[120120,1,"a"],[120121,1,"b"],[120122,3],[120123,1,"d"],[120124,1,"e"],[120125,1,"f"],[120126,1,"g"],[120127,3],[120128,1,"i"],[120129,1,"j"],[120130,1,"k"],[120131,1,"l"],[120132,1,"m"],[120133,3],[120134,1,"o"],[[120135,120137],3],[120138,1,"s"],[120139,1,"t"],[120140,1,"u"],[120141,1,"v"],[120142,1,"w"],[120143,1,"x"],[120144,1,"y"],[120145,3],[120146,1,"a"],[120147,1,"b"],[120148,1,"c"],[120149,1,"d"],[120150,1,"e"],[120151,1,"f"],[120152,1,"g"],[120153,1,"h"],[120154,1,"i"],[120155,1,"j"],[120156,1,"k"],[120157,1,"l"],[120158,1,"m"],[120159,1,"n"],[120160,1,"o"],[120161,1,"p"],[120162,1,"q"],[120163,1,"r"],[120164,1,"s"],[120165,1,"t"],[120166,1,"u"],[120167,1,"v"],[120168,1,"w"],[120169,1,"x"],[120170,1,"y"],[120171,1,"z"],[120172,1,"a"],[120173,1,"b"],[120174,1,"c"],[120175,1,"d"],[120176,1,"e"],[120177,1,"f"],[120178,1,"g"],[120179,1,"h"],[120180,1,"i"],[120181,1,"j"],[120182,1,"k"],[120183,1,"l"],[120184,1,"m"],[120185,1,"n"],[120186,1,"o"],[120187,1,"p"],[120188,1,"q"],[120189,1,"r"],[120190,1,"s"],[120191,1,"t"],[120192,1,"u"],[120193,1,"v"],[120194,1,"w"],[120195,1,"x"],[120196,1,"y"],[120197,1,"z"],[120198,1,"a"],[120199,1,"b"],[120200,1,"c"],[120201,1,"d"],[120202,1,"e"],[120203,1,"f"],[120204,1,"g"],[120205,1,"h"],[120206,1,"i"],[120207,1,"j"],[120208,1,"k"],[120209,1,"l"],[120210,1,"m"],[120211,1,"n"],[120212,1,"o"],[120213,1,"p"],[120214,1,"q"],[120215,1,"r"],[120216,1,"s"],[120217,1,"t"],[120218,1,"u"],[120219,1,"v"],[120220,1,"w"],[120221,1,"x"],[120222,1,"y"],[120223,1,"z"],[120224,1,"a"],[120225,1,"b"],[120226,1,"c"],[120227,1,"d"],[120228,1,"e"],[120229,1,"f"],[120230,1,"g"],[120231,1,"h"],[120232,1,"i"],[120233,1,"j"],[120234,1,"k"],[120235,1,"l"],[120236,1,"m"],[120237,1,"n"],[120238,1,"o"],[120239,1,"p"],[120240,1,"q"],[120241,1,"r"],[120242,1,"s"],[120243,1,"t"],[120244,1,"u"],[120245,1,"v"],[120246,1,"w"],[120247,1,"x"],[120248,1,"y"],[120249,1,"z"],[120250,1,"a"],[120251,1,"b"],[120252,1,"c"],[120253,1,"d"],[120254,1,"e"],[120255,1,"f"],[120256,1,"g"],[120257,1,"h"],[120258,1,"i"],[120259,1,"j"],[120260,1,"k"],[120261,1,"l"],[120262,1,"m"],[120263,1,"n"],[120264,1,"o"],[120265,1,"p"],[120266,1,"q"],[120267,1,"r"],[120268,1,"s"],[120269,1,"t"],[120270,1,"u"],[120271,1,"v"],[120272,1,"w"],[120273,1,"x"],[120274,1,"y"],[120275,1,"z"],[120276,1,"a"],[120277,1,"b"],[120278,1,"c"],[120279,1,"d"],[120280,1,"e"],[120281,1,"f"],[120282,1,"g"],[120283,1,"h"],[120284,1,"i"],[120285,1,"j"],[120286,1,"k"],[120287,1,"l"],[120288,1,"m"],[120289,1,"n"],[120290,1,"o"],[120291,1,"p"],[120292,1,"q"],[120293,1,"r"],[120294,1,"s"],[120295,1,"t"],[120296,1,"u"],[120297,1,"v"],[120298,1,"w"],[120299,1,"x"],[120300,1,"y"],[120301,1,"z"],[120302,1,"a"],[120303,1,"b"],[120304,1,"c"],[120305,1,"d"],[120306,1,"e"],[120307,1,"f"],[120308,1,"g"],[120309,1,"h"],[120310,1,"i"],[120311,1,"j"],[120312,1,"k"],[120313,1,"l"],[120314,1,"m"],[120315,1,"n"],[120316,1,"o"],[120317,1,"p"],[120318,1,"q"],[120319,1,"r"],[120320,1,"s"],[120321,1,"t"],[120322,1,"u"],[120323,1,"v"],[120324,1,"w"],[120325,1,"x"],[120326,1,"y"],[120327,1,"z"],[120328,1,"a"],[120329,1,"b"],[120330,1,"c"],[120331,1,"d"],[120332,1,"e"],[120333,1,"f"],[120334,1,"g"],[120335,1,"h"],[120336,1,"i"],[120337,1,"j"],[120338,1,"k"],[120339,1,"l"],[120340,1,"m"],[120341,1,"n"],[120342,1,"o"],[120343,1,"p"],[120344,1,"q"],[120345,1,"r"],[120346,1,"s"],[120347,1,"t"],[120348,1,"u"],[120349,1,"v"],[120350,1,"w"],[120351,1,"x"],[120352,1,"y"],[120353,1,"z"],[120354,1,"a"],[120355,1,"b"],[120356,1,"c"],[120357,1,"d"],[120358,1,"e"],[120359,1,"f"],[120360,1,"g"],[120361,1,"h"],[120362,1,"i"],[120363,1,"j"],[120364,1,"k"],[120365,1,"l"],[120366,1,"m"],[120367,1,"n"],[120368,1,"o"],[120369,1,"p"],[120370,1,"q"],[120371,1,"r"],[120372,1,"s"],[120373,1,"t"],[120374,1,"u"],[120375,1,"v"],[120376,1,"w"],[120377,1,"x"],[120378,1,"y"],[120379,1,"z"],[120380,1,"a"],[120381,1,"b"],[120382,1,"c"],[120383,1,"d"],[120384,1,"e"],[120385,1,"f"],[120386,1,"g"],[120387,1,"h"],[120388,1,"i"],[120389,1,"j"],[120390,1,"k"],[120391,1,"l"],[120392,1,"m"],[120393,1,"n"],[120394,1,"o"],[120395,1,"p"],[120396,1,"q"],[120397,1,"r"],[120398,1,"s"],[120399,1,"t"],[120400,1,"u"],[120401,1,"v"],[120402,1,"w"],[120403,1,"x"],[120404,1,"y"],[120405,1,"z"],[120406,1,"a"],[120407,1,"b"],[120408,1,"c"],[120409,1,"d"],[120410,1,"e"],[120411,1,"f"],[120412,1,"g"],[120413,1,"h"],[120414,1,"i"],[120415,1,"j"],[120416,1,"k"],[120417,1,"l"],[120418,1,"m"],[120419,1,"n"],[120420,1,"o"],[120421,1,"p"],[120422,1,"q"],[120423,1,"r"],[120424,1,"s"],[120425,1,"t"],[120426,1,"u"],[120427,1,"v"],[120428,1,"w"],[120429,1,"x"],[120430,1,"y"],[120431,1,"z"],[120432,1,"a"],[120433,1,"b"],[120434,1,"c"],[120435,1,"d"],[120436,1,"e"],[120437,1,"f"],[120438,1,"g"],[120439,1,"h"],[120440,1,"i"],[120441,1,"j"],[120442,1,"k"],[120443,1,"l"],[120444,1,"m"],[120445,1,"n"],[120446,1,"o"],[120447,1,"p"],[120448,1,"q"],[120449,1,"r"],[120450,1,"s"],[120451,1,"t"],[120452,1,"u"],[120453,1,"v"],[120454,1,"w"],[120455,1,"x"],[120456,1,"y"],[120457,1,"z"],[120458,1,"a"],[120459,1,"b"],[120460,1,"c"],[120461,1,"d"],[120462,1,"e"],[120463,1,"f"],[120464,1,"g"],[120465,1,"h"],[120466,1,"i"],[120467,1,"j"],[120468,1,"k"],[120469,1,"l"],[120470,1,"m"],[120471,1,"n"],[120472,1,"o"],[120473,1,"p"],[120474,1,"q"],[120475,1,"r"],[120476,1,"s"],[120477,1,"t"],[120478,1,"u"],[120479,1,"v"],[120480,1,"w"],[120481,1,"x"],[120482,1,"y"],[120483,1,"z"],[120484,1,"ı"],[120485,1,"ȷ"],[[120486,120487],3],[120488,1,"α"],[120489,1,"β"],[120490,1,"γ"],[120491,1,"δ"],[120492,1,"ε"],[120493,1,"ζ"],[120494,1,"η"],[120495,1,"θ"],[120496,1,"ι"],[120497,1,"κ"],[120498,1,"λ"],[120499,1,"μ"],[120500,1,"ν"],[120501,1,"ξ"],[120502,1,"ο"],[120503,1,"π"],[120504,1,"ρ"],[120505,1,"θ"],[120506,1,"σ"],[120507,1,"τ"],[120508,1,"υ"],[120509,1,"φ"],[120510,1,"χ"],[120511,1,"ψ"],[120512,1,"ω"],[120513,1,"∇"],[120514,1,"α"],[120515,1,"β"],[120516,1,"γ"],[120517,1,"δ"],[120518,1,"ε"],[120519,1,"ζ"],[120520,1,"η"],[120521,1,"θ"],[120522,1,"ι"],[120523,1,"κ"],[120524,1,"λ"],[120525,1,"μ"],[120526,1,"ν"],[120527,1,"ξ"],[120528,1,"ο"],[120529,1,"π"],[120530,1,"ρ"],[[120531,120532],1,"σ"],[120533,1,"τ"],[120534,1,"υ"],[120535,1,"φ"],[120536,1,"χ"],[120537,1,"ψ"],[120538,1,"ω"],[120539,1,"∂"],[120540,1,"ε"],[120541,1,"θ"],[120542,1,"κ"],[120543,1,"φ"],[120544,1,"ρ"],[120545,1,"π"],[120546,1,"α"],[120547,1,"β"],[120548,1,"γ"],[120549,1,"δ"],[120550,1,"ε"],[120551,1,"ζ"],[120552,1,"η"],[120553,1,"θ"],[120554,1,"ι"],[120555,1,"κ"],[120556,1,"λ"],[120557,1,"μ"],[120558,1,"ν"],[120559,1,"ξ"],[120560,1,"ο"],[120561,1,"π"],[120562,1,"ρ"],[120563,1,"θ"],[120564,1,"σ"],[120565,1,"τ"],[120566,1,"υ"],[120567,1,"φ"],[120568,1,"χ"],[120569,1,"ψ"],[120570,1,"ω"],[120571,1,"∇"],[120572,1,"α"],[120573,1,"β"],[120574,1,"γ"],[120575,1,"δ"],[120576,1,"ε"],[120577,1,"ζ"],[120578,1,"η"],[120579,1,"θ"],[120580,1,"ι"],[120581,1,"κ"],[120582,1,"λ"],[120583,1,"μ"],[120584,1,"ν"],[120585,1,"ξ"],[120586,1,"ο"],[120587,1,"π"],[120588,1,"ρ"],[[120589,120590],1,"σ"],[120591,1,"τ"],[120592,1,"υ"],[120593,1,"φ"],[120594,1,"χ"],[120595,1,"ψ"],[120596,1,"ω"],[120597,1,"∂"],[120598,1,"ε"],[120599,1,"θ"],[120600,1,"κ"],[120601,1,"φ"],[120602,1,"ρ"],[120603,1,"π"],[120604,1,"α"],[120605,1,"β"],[120606,1,"γ"],[120607,1,"δ"],[120608,1,"ε"],[120609,1,"ζ"],[120610,1,"η"],[120611,1,"θ"],[120612,1,"ι"],[120613,1,"κ"],[120614,1,"λ"],[120615,1,"μ"],[120616,1,"ν"],[120617,1,"ξ"],[120618,1,"ο"],[120619,1,"π"],[120620,1,"ρ"],[120621,1,"θ"],[120622,1,"σ"],[120623,1,"τ"],[120624,1,"υ"],[120625,1,"φ"],[120626,1,"χ"],[120627,1,"ψ"],[120628,1,"ω"],[120629,1,"∇"],[120630,1,"α"],[120631,1,"β"],[120632,1,"γ"],[120633,1,"δ"],[120634,1,"ε"],[120635,1,"ζ"],[120636,1,"η"],[120637,1,"θ"],[120638,1,"ι"],[120639,1,"κ"],[120640,1,"λ"],[120641,1,"μ"],[120642,1,"ν"],[120643,1,"ξ"],[120644,1,"ο"],[120645,1,"π"],[120646,1,"ρ"],[[120647,120648],1,"σ"],[120649,1,"τ"],[120650,1,"υ"],[120651,1,"φ"],[120652,1,"χ"],[120653,1,"ψ"],[120654,1,"ω"],[120655,1,"∂"],[120656,1,"ε"],[120657,1,"θ"],[120658,1,"κ"],[120659,1,"φ"],[120660,1,"ρ"],[120661,1,"π"],[120662,1,"α"],[120663,1,"β"],[120664,1,"γ"],[120665,1,"δ"],[120666,1,"ε"],[120667,1,"ζ"],[120668,1,"η"],[120669,1,"θ"],[120670,1,"ι"],[120671,1,"κ"],[120672,1,"λ"],[120673,1,"μ"],[120674,1,"ν"],[120675,1,"ξ"],[120676,1,"ο"],[120677,1,"π"],[120678,1,"ρ"],[120679,1,"θ"],[120680,1,"σ"],[120681,1,"τ"],[120682,1,"υ"],[120683,1,"φ"],[120684,1,"χ"],[120685,1,"ψ"],[120686,1,"ω"],[120687,1,"∇"],[120688,1,"α"],[120689,1,"β"],[120690,1,"γ"],[120691,1,"δ"],[120692,1,"ε"],[120693,1,"ζ"],[120694,1,"η"],[120695,1,"θ"],[120696,1,"ι"],[120697,1,"κ"],[120698,1,"λ"],[120699,1,"μ"],[120700,1,"ν"],[120701,1,"ξ"],[120702,1,"ο"],[120703,1,"π"],[120704,1,"ρ"],[[120705,120706],1,"σ"],[120707,1,"τ"],[120708,1,"υ"],[120709,1,"φ"],[120710,1,"χ"],[120711,1,"ψ"],[120712,1,"ω"],[120713,1,"∂"],[120714,1,"ε"],[120715,1,"θ"],[120716,1,"κ"],[120717,1,"φ"],[120718,1,"ρ"],[120719,1,"π"],[120720,1,"α"],[120721,1,"β"],[120722,1,"γ"],[120723,1,"δ"],[120724,1,"ε"],[120725,1,"ζ"],[120726,1,"η"],[120727,1,"θ"],[120728,1,"ι"],[120729,1,"κ"],[120730,1,"λ"],[120731,1,"μ"],[120732,1,"ν"],[120733,1,"ξ"],[120734,1,"ο"],[120735,1,"π"],[120736,1,"ρ"],[120737,1,"θ"],[120738,1,"σ"],[120739,1,"τ"],[120740,1,"υ"],[120741,1,"φ"],[120742,1,"χ"],[120743,1,"ψ"],[120744,1,"ω"],[120745,1,"∇"],[120746,1,"α"],[120747,1,"β"],[120748,1,"γ"],[120749,1,"δ"],[120750,1,"ε"],[120751,1,"ζ"],[120752,1,"η"],[120753,1,"θ"],[120754,1,"ι"],[120755,1,"κ"],[120756,1,"λ"],[120757,1,"μ"],[120758,1,"ν"],[120759,1,"ξ"],[120760,1,"ο"],[120761,1,"π"],[120762,1,"ρ"],[[120763,120764],1,"σ"],[120765,1,"τ"],[120766,1,"υ"],[120767,1,"φ"],[120768,1,"χ"],[120769,1,"ψ"],[120770,1,"ω"],[120771,1,"∂"],[120772,1,"ε"],[120773,1,"θ"],[120774,1,"κ"],[120775,1,"φ"],[120776,1,"ρ"],[120777,1,"π"],[[120778,120779],1,"ϝ"],[[120780,120781],3],[120782,1,"0"],[120783,1,"1"],[120784,1,"2"],[120785,1,"3"],[120786,1,"4"],[120787,1,"5"],[120788,1,"6"],[120789,1,"7"],[120790,1,"8"],[120791,1,"9"],[120792,1,"0"],[120793,1,"1"],[120794,1,"2"],[120795,1,"3"],[120796,1,"4"],[120797,1,"5"],[120798,1,"6"],[120799,1,"7"],[120800,1,"8"],[120801,1,"9"],[120802,1,"0"],[120803,1,"1"],[120804,1,"2"],[120805,1,"3"],[120806,1,"4"],[120807,1,"5"],[120808,1,"6"],[120809,1,"7"],[120810,1,"8"],[120811,1,"9"],[120812,1,"0"],[120813,1,"1"],[120814,1,"2"],[120815,1,"3"],[120816,1,"4"],[120817,1,"5"],[120818,1,"6"],[120819,1,"7"],[120820,1,"8"],[120821,1,"9"],[120822,1,"0"],[120823,1,"1"],[120824,1,"2"],[120825,1,"3"],[120826,1,"4"],[120827,1,"5"],[120828,1,"6"],[120829,1,"7"],[120830,1,"8"],[120831,1,"9"],[[120832,121343],2],[[121344,121398],2],[[121399,121402],2],[[121403,121452],2],[[121453,121460],2],[121461,2],[[121462,121475],2],[121476,2],[[121477,121483],2],[[121484,121498],3],[[121499,121503],2],[121504,3],[[121505,121519],2],[[121520,122623],3],[[122624,122654],2],[[122655,122660],3],[[122661,122666],2],[[122667,122879],3],[[122880,122886],2],[122887,3],[[122888,122904],2],[[122905,122906],3],[[122907,122913],2],[122914,3],[[122915,122916],2],[122917,3],[[122918,122922],2],[[122923,122927],3],[122928,1,"а"],[122929,1,"б"],[122930,1,"в"],[122931,1,"г"],[122932,1,"д"],[122933,1,"е"],[122934,1,"ж"],[122935,1,"з"],[122936,1,"и"],[122937,1,"к"],[122938,1,"л"],[122939,1,"м"],[122940,1,"о"],[122941,1,"п"],[122942,1,"р"],[122943,1,"с"],[122944,1,"т"],[122945,1,"у"],[122946,1,"ф"],[122947,1,"х"],[122948,1,"ц"],[122949,1,"ч"],[122950,1,"ш"],[122951,1,"ы"],[122952,1,"э"],[122953,1,"ю"],[122954,1,"ꚉ"],[122955,1,"ә"],[122956,1,"і"],[122957,1,"ј"],[122958,1,"ө"],[122959,1,"ү"],[122960,1,"ӏ"],[122961,1,"а"],[122962,1,"б"],[122963,1,"в"],[122964,1,"г"],[122965,1,"д"],[122966,1,"е"],[122967,1,"ж"],[122968,1,"з"],[122969,1,"и"],[122970,1,"к"],[122971,1,"л"],[122972,1,"о"],[122973,1,"п"],[122974,1,"с"],[122975,1,"у"],[122976,1,"ф"],[122977,1,"х"],[122978,1,"ц"],[122979,1,"ч"],[122980,1,"ш"],[122981,1,"ъ"],[122982,1,"ы"],[122983,1,"ґ"],[122984,1,"і"],[122985,1,"ѕ"],[122986,1,"џ"],[122987,1,"ҫ"],[122988,1,"ꙑ"],[122989,1,"ұ"],[[122990,123022],3],[123023,2],[[123024,123135],3],[[123136,123180],2],[[123181,123183],3],[[123184,123197],2],[[123198,123199],3],[[123200,123209],2],[[123210,123213],3],[123214,2],[123215,2],[[123216,123535],3],[[123536,123566],2],[[123567,123583],3],[[123584,123641],2],[[123642,123646],3],[123647,2],[[123648,124111],3],[[124112,124153],2],[[124154,124895],3],[[124896,124902],2],[124903,3],[[124904,124907],2],[124908,3],[[124909,124910],2],[124911,3],[[124912,124926],2],[124927,3],[[124928,125124],2],[[125125,125126],3],[[125127,125135],2],[[125136,125142],2],[[125143,125183],3],[125184,1,"𞤢"],[125185,1,"𞤣"],[125186,1,"𞤤"],[125187,1,"𞤥"],[125188,1,"𞤦"],[125189,1,"𞤧"],[125190,1,"𞤨"],[125191,1,"𞤩"],[125192,1,"𞤪"],[125193,1,"𞤫"],[125194,1,"𞤬"],[125195,1,"𞤭"],[125196,1,"𞤮"],[125197,1,"𞤯"],[125198,1,"𞤰"],[125199,1,"𞤱"],[125200,1,"𞤲"],[125201,1,"𞤳"],[125202,1,"𞤴"],[125203,1,"𞤵"],[125204,1,"𞤶"],[125205,1,"𞤷"],[125206,1,"𞤸"],[125207,1,"𞤹"],[125208,1,"𞤺"],[125209,1,"𞤻"],[125210,1,"𞤼"],[125211,1,"𞤽"],[125212,1,"𞤾"],[125213,1,"𞤿"],[125214,1,"𞥀"],[125215,1,"𞥁"],[125216,1,"𞥂"],[125217,1,"𞥃"],[[125218,125258],2],[125259,2],[[125260,125263],3],[[125264,125273],2],[[125274,125277],3],[[125278,125279],2],[[125280,126064],3],[[126065,126132],2],[[126133,126208],3],[[126209,126269],2],[[126270,126463],3],[126464,1,"ا"],[126465,1,"ب"],[126466,1,"ج"],[126467,1,"د"],[126468,3],[126469,1,"و"],[126470,1,"ز"],[126471,1,"ح"],[126472,1,"ط"],[126473,1,"ي"],[126474,1,"ك"],[126475,1,"ل"],[126476,1,"م"],[126477,1,"ن"],[126478,1,"س"],[126479,1,"ع"],[126480,1,"ف"],[126481,1,"ص"],[126482,1,"ق"],[126483,1,"ر"],[126484,1,"ش"],[126485,1,"ت"],[126486,1,"ث"],[126487,1,"خ"],[126488,1,"ذ"],[126489,1,"ض"],[126490,1,"ظ"],[126491,1,"غ"],[126492,1,"ٮ"],[126493,1,"ں"],[126494,1,"ڡ"],[126495,1,"ٯ"],[126496,3],[126497,1,"ب"],[126498,1,"ج"],[126499,3],[126500,1,"ه"],[[126501,126502],3],[126503,1,"ح"],[126504,3],[126505,1,"ي"],[126506,1,"ك"],[126507,1,"ل"],[126508,1,"م"],[126509,1,"ن"],[126510,1,"س"],[126511,1,"ع"],[126512,1,"ف"],[126513,1,"ص"],[126514,1,"ق"],[126515,3],[126516,1,"ش"],[126517,1,"ت"],[126518,1,"ث"],[126519,1,"خ"],[126520,3],[126521,1,"ض"],[126522,3],[126523,1,"غ"],[[126524,126529],3],[126530,1,"ج"],[[126531,126534],3],[126535,1,"ح"],[126536,3],[126537,1,"ي"],[126538,3],[126539,1,"ل"],[126540,3],[126541,1,"ن"],[126542,1,"س"],[126543,1,"ع"],[126544,3],[126545,1,"ص"],[126546,1,"ق"],[126547,3],[126548,1,"ش"],[[126549,126550],3],[126551,1,"خ"],[126552,3],[126553,1,"ض"],[126554,3],[126555,1,"غ"],[126556,3],[126557,1,"ں"],[126558,3],[126559,1,"ٯ"],[126560,3],[126561,1,"ب"],[126562,1,"ج"],[126563,3],[126564,1,"ه"],[[126565,126566],3],[126567,1,"ح"],[126568,1,"ط"],[126569,1,"ي"],[126570,1,"ك"],[126571,3],[126572,1,"م"],[126573,1,"ن"],[126574,1,"س"],[126575,1,"ع"],[126576,1,"ف"],[126577,1,"ص"],[126578,1,"ق"],[126579,3],[126580,1,"ش"],[126581,1,"ت"],[126582,1,"ث"],[126583,1,"خ"],[126584,3],[126585,1,"ض"],[126586,1,"ظ"],[126587,1,"غ"],[126588,1,"ٮ"],[126589,3],[126590,1,"ڡ"],[126591,3],[126592,1,"ا"],[126593,1,"ب"],[126594,1,"ج"],[126595,1,"د"],[126596,1,"ه"],[126597,1,"و"],[126598,1,"ز"],[126599,1,"ح"],[126600,1,"ط"],[126601,1,"ي"],[126602,3],[126603,1,"ل"],[126604,1,"م"],[126605,1,"ن"],[126606,1,"س"],[126607,1,"ع"],[126608,1,"ف"],[126609,1,"ص"],[126610,1,"ق"],[126611,1,"ر"],[126612,1,"ش"],[126613,1,"ت"],[126614,1,"ث"],[126615,1,"خ"],[126616,1,"ذ"],[126617,1,"ض"],[126618,1,"ظ"],[126619,1,"غ"],[[126620,126624],3],[126625,1,"ب"],[126626,1,"ج"],[126627,1,"د"],[126628,3],[126629,1,"و"],[126630,1,"ز"],[126631,1,"ح"],[126632,1,"ط"],[126633,1,"ي"],[126634,3],[126635,1,"ل"],[126636,1,"م"],[126637,1,"ن"],[126638,1,"س"],[126639,1,"ع"],[126640,1,"ف"],[126641,1,"ص"],[126642,1,"ق"],[126643,1,"ر"],[126644,1,"ش"],[126645,1,"ت"],[126646,1,"ث"],[126647,1,"خ"],[126648,1,"ذ"],[126649,1,"ض"],[126650,1,"ظ"],[126651,1,"غ"],[[126652,126703],3],[[126704,126705],2],[[126706,126975],3],[[126976,127019],2],[[127020,127023],3],[[127024,127123],2],[[127124,127135],3],[[127136,127150],2],[[127151,127152],3],[[127153,127166],2],[127167,2],[127168,3],[[127169,127183],2],[127184,3],[[127185,127199],2],[[127200,127221],2],[[127222,127231],3],[127232,3],[127233,5,"0,"],[127234,5,"1,"],[127235,5,"2,"],[127236,5,"3,"],[127237,5,"4,"],[127238,5,"5,"],[127239,5,"6,"],[127240,5,"7,"],[127241,5,"8,"],[127242,5,"9,"],[[127243,127244],2],[[127245,127247],2],[127248,5,"(a)"],[127249,5,"(b)"],[127250,5,"(c)"],[127251,5,"(d)"],[127252,5,"(e)"],[127253,5,"(f)"],[127254,5,"(g)"],[127255,5,"(h)"],[127256,5,"(i)"],[127257,5,"(j)"],[127258,5,"(k)"],[127259,5,"(l)"],[127260,5,"(m)"],[127261,5,"(n)"],[127262,5,"(o)"],[127263,5,"(p)"],[127264,5,"(q)"],[127265,5,"(r)"],[127266,5,"(s)"],[127267,5,"(t)"],[127268,5,"(u)"],[127269,5,"(v)"],[127270,5,"(w)"],[127271,5,"(x)"],[127272,5,"(y)"],[127273,5,"(z)"],[127274,1,"〔s〕"],[127275,1,"c"],[127276,1,"r"],[127277,1,"cd"],[127278,1,"wz"],[127279,2],[127280,1,"a"],[127281,1,"b"],[127282,1,"c"],[127283,1,"d"],[127284,1,"e"],[127285,1,"f"],[127286,1,"g"],[127287,1,"h"],[127288,1,"i"],[127289,1,"j"],[127290,1,"k"],[127291,1,"l"],[127292,1,"m"],[127293,1,"n"],[127294,1,"o"],[127295,1,"p"],[127296,1,"q"],[127297,1,"r"],[127298,1,"s"],[127299,1,"t"],[127300,1,"u"],[127301,1,"v"],[127302,1,"w"],[127303,1,"x"],[127304,1,"y"],[127305,1,"z"],[127306,1,"hv"],[127307,1,"mv"],[127308,1,"sd"],[127309,1,"ss"],[127310,1,"ppv"],[127311,1,"wc"],[[127312,127318],2],[127319,2],[[127320,127326],2],[127327,2],[[127328,127337],2],[127338,1,"mc"],[127339,1,"md"],[127340,1,"mr"],[[127341,127343],2],[[127344,127352],2],[127353,2],[127354,2],[[127355,127356],2],[[127357,127358],2],[127359,2],[[127360,127369],2],[[127370,127373],2],[[127374,127375],2],[127376,1,"dj"],[[127377,127386],2],[[127387,127404],2],[127405,2],[[127406,127461],3],[[127462,127487],2],[127488,1,"ほか"],[127489,1,"ココ"],[127490,1,"サ"],[[127491,127503],3],[127504,1,"手"],[127505,1,"字"],[127506,1,"双"],[127507,1,"デ"],[127508,1,"二"],[127509,1,"多"],[127510,1,"解"],[127511,1,"天"],[127512,1,"交"],[127513,1,"映"],[127514,1,"無"],[127515,1,"料"],[127516,1,"前"],[127517,1,"後"],[127518,1,"再"],[127519,1,"新"],[127520,1,"初"],[127521,1,"終"],[127522,1,"生"],[127523,1,"販"],[127524,1,"声"],[127525,1,"吹"],[127526,1,"演"],[127527,1,"投"],[127528,1,"捕"],[127529,1,"一"],[127530,1,"三"],[127531,1,"遊"],[127532,1,"左"],[127533,1,"中"],[127534,1,"右"],[127535,1,"指"],[127536,1,"走"],[127537,1,"打"],[127538,1,"禁"],[127539,1,"空"],[127540,1,"合"],[127541,1,"満"],[127542,1,"有"],[127543,1,"月"],[127544,1,"申"],[127545,1,"割"],[127546,1,"営"],[127547,1,"配"],[[127548,127551],3],[127552,1,"〔本〕"],[127553,1,"〔三〕"],[127554,1,"〔二〕"],[127555,1,"〔安〕"],[127556,1,"〔点〕"],[127557,1,"〔打〕"],[127558,1,"〔盗〕"],[127559,1,"〔勝〕"],[127560,1,"〔敗〕"],[[127561,127567],3],[127568,1,"得"],[127569,1,"可"],[[127570,127583],3],[[127584,127589],2],[[127590,127743],3],[[127744,127776],2],[[127777,127788],2],[[127789,127791],2],[[127792,127797],2],[127798,2],[[127799,127868],2],[127869,2],[[127870,127871],2],[[127872,127891],2],[[127892,127903],2],[[127904,127940],2],[127941,2],[[127942,127946],2],[[127947,127950],2],[[127951,127955],2],[[127956,127967],2],[[127968,127984],2],[[127985,127991],2],[[127992,127999],2],[[128000,128062],2],[128063,2],[128064,2],[128065,2],[[128066,128247],2],[128248,2],[[128249,128252],2],[[128253,128254],2],[128255,2],[[128256,128317],2],[[128318,128319],2],[[128320,128323],2],[[128324,128330],2],[[128331,128335],2],[[128336,128359],2],[[128360,128377],2],[128378,2],[[128379,128419],2],[128420,2],[[128421,128506],2],[[128507,128511],2],[128512,2],[[128513,128528],2],[128529,2],[[128530,128532],2],[128533,2],[128534,2],[128535,2],[128536,2],[128537,2],[128538,2],[128539,2],[[128540,128542],2],[128543,2],[[128544,128549],2],[[128550,128551],2],[[128552,128555],2],[128556,2],[128557,2],[[128558,128559],2],[[128560,128563],2],[128564,2],[[128565,128576],2],[[128577,128578],2],[[128579,128580],2],[[128581,128591],2],[[128592,128639],2],[[128640,128709],2],[[128710,128719],2],[128720,2],[[128721,128722],2],[[128723,128724],2],[128725,2],[[128726,128727],2],[[128728,128731],3],[128732,2],[[128733,128735],2],[[128736,128748],2],[[128749,128751],3],[[128752,128755],2],[[128756,128758],2],[[128759,128760],2],[128761,2],[128762,2],[[128763,128764],2],[[128765,128767],3],[[128768,128883],2],[[128884,128886],2],[[128887,128890],3],[[128891,128895],2],[[128896,128980],2],[[128981,128984],2],[128985,2],[[128986,128991],3],[[128992,129003],2],[[129004,129007],3],[129008,2],[[129009,129023],3],[[129024,129035],2],[[129036,129039],3],[[129040,129095],2],[[129096,129103],3],[[129104,129113],2],[[129114,129119],3],[[129120,129159],2],[[129160,129167],3],[[129168,129197],2],[[129198,129199],3],[[129200,129201],2],[[129202,129279],3],[[129280,129291],2],[129292,2],[[129293,129295],2],[[129296,129304],2],[[129305,129310],2],[129311,2],[[129312,129319],2],[[129320,129327],2],[129328,2],[[129329,129330],2],[[129331,129342],2],[129343,2],[[129344,129355],2],[129356,2],[[129357,129359],2],[[129360,129374],2],[[129375,129387],2],[[129388,129392],2],[129393,2],[129394,2],[[129395,129398],2],[[129399,129400],2],[129401,2],[129402,2],[129403,2],[[129404,129407],2],[[129408,129412],2],[[129413,129425],2],[[129426,129431],2],[[129432,129442],2],[[129443,129444],2],[[129445,129450],2],[[129451,129453],2],[[129454,129455],2],[[129456,129465],2],[[129466,129471],2],[129472,2],[[129473,129474],2],[[129475,129482],2],[129483,2],[129484,2],[[129485,129487],2],[[129488,129510],2],[[129511,129535],2],[[129536,129619],2],[[129620,129631],3],[[129632,129645],2],[[129646,129647],3],[[129648,129651],2],[129652,2],[[129653,129655],2],[[129656,129658],2],[[129659,129660],2],[[129661,129663],3],[[129664,129666],2],[[129667,129670],2],[[129671,129672],2],[[129673,129679],3],[[129680,129685],2],[[129686,129704],2],[[129705,129708],2],[[129709,129711],2],[[129712,129718],2],[[129719,129722],2],[[129723,129725],2],[129726,3],[129727,2],[[129728,129730],2],[[129731,129733],2],[[129734,129741],3],[[129742,129743],2],[[129744,129750],2],[[129751,129753],2],[[129754,129755],2],[[129756,129759],3],[[129760,129767],2],[129768,2],[[129769,129775],3],[[129776,129782],2],[[129783,129784],2],[[129785,129791],3],[[129792,129938],2],[129939,3],[[129940,129994],2],[[129995,130031],3],[130032,1,"0"],[130033,1,"1"],[130034,1,"2"],[130035,1,"3"],[130036,1,"4"],[130037,1,"5"],[130038,1,"6"],[130039,1,"7"],[130040,1,"8"],[130041,1,"9"],[[130042,131069],3],[[131070,131071],3],[[131072,173782],2],[[173783,173789],2],[[173790,173791],2],[[173792,173823],3],[[173824,177972],2],[[177973,177976],2],[177977,2],[[177978,177983],3],[[177984,178205],2],[[178206,178207],3],[[178208,183969],2],[[183970,183983],3],[[183984,191456],2],[[191457,194559],3],[194560,1,"丽"],[194561,1,"丸"],[194562,1,"乁"],[194563,1,"𠄢"],[194564,1,"你"],[194565,1,"侮"],[194566,1,"侻"],[194567,1,"倂"],[194568,1,"偺"],[194569,1,"備"],[194570,1,"僧"],[194571,1,"像"],[194572,1,"㒞"],[194573,1,"𠘺"],[194574,1,"免"],[194575,1,"兔"],[194576,1,"兤"],[194577,1,"具"],[194578,1,"𠔜"],[194579,1,"㒹"],[194580,1,"內"],[194581,1,"再"],[194582,1,"𠕋"],[194583,1,"冗"],[194584,1,"冤"],[194585,1,"仌"],[194586,1,"冬"],[194587,1,"况"],[194588,1,"𩇟"],[194589,1,"凵"],[194590,1,"刃"],[194591,1,"㓟"],[194592,1,"刻"],[194593,1,"剆"],[194594,1,"割"],[194595,1,"剷"],[194596,1,"㔕"],[194597,1,"勇"],[194598,1,"勉"],[194599,1,"勤"],[194600,1,"勺"],[194601,1,"包"],[194602,1,"匆"],[194603,1,"北"],[194604,1,"卉"],[194605,1,"卑"],[194606,1,"博"],[194607,1,"即"],[194608,1,"卽"],[[194609,194611],1,"卿"],[194612,1,"𠨬"],[194613,1,"灰"],[194614,1,"及"],[194615,1,"叟"],[194616,1,"𠭣"],[194617,1,"叫"],[194618,1,"叱"],[194619,1,"吆"],[194620,1,"咞"],[194621,1,"吸"],[194622,1,"呈"],[194623,1,"周"],[194624,1,"咢"],[194625,1,"哶"],[194626,1,"唐"],[194627,1,"啓"],[194628,1,"啣"],[[194629,194630],1,"善"],[194631,1,"喙"],[194632,1,"喫"],[194633,1,"喳"],[194634,1,"嗂"],[194635,1,"圖"],[194636,1,"嘆"],[194637,1,"圗"],[194638,1,"噑"],[194639,1,"噴"],[194640,1,"切"],[194641,1,"壮"],[194642,1,"城"],[194643,1,"埴"],[194644,1,"堍"],[194645,1,"型"],[194646,1,"堲"],[194647,1,"報"],[194648,1,"墬"],[194649,1,"𡓤"],[194650,1,"売"],[194651,1,"壷"],[194652,1,"夆"],[194653,1,"多"],[194654,1,"夢"],[194655,1,"奢"],[194656,1,"𡚨"],[194657,1,"𡛪"],[194658,1,"姬"],[194659,1,"娛"],[194660,1,"娧"],[194661,1,"姘"],[194662,1,"婦"],[194663,1,"㛮"],[194664,3],[194665,1,"嬈"],[[194666,194667],1,"嬾"],[194668,1,"𡧈"],[194669,1,"寃"],[194670,1,"寘"],[194671,1,"寧"],[194672,1,"寳"],[194673,1,"𡬘"],[194674,1,"寿"],[194675,1,"将"],[194676,3],[194677,1,"尢"],[194678,1,"㞁"],[194679,1,"屠"],[194680,1,"屮"],[194681,1,"峀"],[194682,1,"岍"],[194683,1,"𡷤"],[194684,1,"嵃"],[194685,1,"𡷦"],[194686,1,"嵮"],[194687,1,"嵫"],[194688,1,"嵼"],[194689,1,"巡"],[194690,1,"巢"],[194691,1,"㠯"],[194692,1,"巽"],[194693,1,"帨"],[194694,1,"帽"],[194695,1,"幩"],[194696,1,"㡢"],[194697,1,"𢆃"],[194698,1,"㡼"],[194699,1,"庰"],[194700,1,"庳"],[194701,1,"庶"],[194702,1,"廊"],[194703,1,"𪎒"],[194704,1,"廾"],[[194705,194706],1,"𢌱"],[194707,1,"舁"],[[194708,194709],1,"弢"],[194710,1,"㣇"],[194711,1,"𣊸"],[194712,1,"𦇚"],[194713,1,"形"],[194714,1,"彫"],[194715,1,"㣣"],[194716,1,"徚"],[194717,1,"忍"],[194718,1,"志"],[194719,1,"忹"],[194720,1,"悁"],[194721,1,"㤺"],[194722,1,"㤜"],[194723,1,"悔"],[194724,1,"𢛔"],[194725,1,"惇"],[194726,1,"慈"],[194727,1,"慌"],[194728,1,"慎"],[194729,1,"慌"],[194730,1,"慺"],[194731,1,"憎"],[194732,1,"憲"],[194733,1,"憤"],[194734,1,"憯"],[194735,1,"懞"],[194736,1,"懲"],[194737,1,"懶"],[194738,1,"成"],[194739,1,"戛"],[194740,1,"扝"],[194741,1,"抱"],[194742,1,"拔"],[194743,1,"捐"],[194744,1,"𢬌"],[194745,1,"挽"],[194746,1,"拼"],[194747,1,"捨"],[194748,1,"掃"],[194749,1,"揤"],[194750,1,"𢯱"],[194751,1,"搢"],[194752,1,"揅"],[194753,1,"掩"],[194754,1,"㨮"],[194755,1,"摩"],[194756,1,"摾"],[194757,1,"撝"],[194758,1,"摷"],[194759,1,"㩬"],[194760,1,"敏"],[194761,1,"敬"],[194762,1,"𣀊"],[194763,1,"旣"],[194764,1,"書"],[194765,1,"晉"],[194766,1,"㬙"],[194767,1,"暑"],[194768,1,"㬈"],[194769,1,"㫤"],[194770,1,"冒"],[194771,1,"冕"],[194772,1,"最"],[194773,1,"暜"],[194774,1,"肭"],[194775,1,"䏙"],[194776,1,"朗"],[194777,1,"望"],[194778,1,"朡"],[194779,1,"杞"],[194780,1,"杓"],[194781,1,"𣏃"],[194782,1,"㭉"],[194783,1,"柺"],[194784,1,"枅"],[194785,1,"桒"],[194786,1,"梅"],[194787,1,"𣑭"],[194788,1,"梎"],[194789,1,"栟"],[194790,1,"椔"],[194791,1,"㮝"],[194792,1,"楂"],[194793,1,"榣"],[194794,1,"槪"],[194795,1,"檨"],[194796,1,"𣚣"],[194797,1,"櫛"],[194798,1,"㰘"],[194799,1,"次"],[194800,1,"𣢧"],[194801,1,"歔"],[194802,1,"㱎"],[194803,1,"歲"],[194804,1,"殟"],[194805,1,"殺"],[194806,1,"殻"],[194807,1,"𣪍"],[194808,1,"𡴋"],[194809,1,"𣫺"],[194810,1,"汎"],[194811,1,"𣲼"],[194812,1,"沿"],[194813,1,"泍"],[194814,1,"汧"],[194815,1,"洖"],[194816,1,"派"],[194817,1,"海"],[194818,1,"流"],[194819,1,"浩"],[194820,1,"浸"],[194821,1,"涅"],[194822,1,"𣴞"],[194823,1,"洴"],[194824,1,"港"],[194825,1,"湮"],[194826,1,"㴳"],[194827,1,"滋"],[194828,1,"滇"],[194829,1,"𣻑"],[194830,1,"淹"],[194831,1,"潮"],[194832,1,"𣽞"],[194833,1,"𣾎"],[194834,1,"濆"],[194835,1,"瀹"],[194836,1,"瀞"],[194837,1,"瀛"],[194838,1,"㶖"],[194839,1,"灊"],[194840,1,"災"],[194841,1,"灷"],[194842,1,"炭"],[194843,1,"𠔥"],[194844,1,"煅"],[194845,1,"𤉣"],[194846,1,"熜"],[194847,3],[194848,1,"爨"],[194849,1,"爵"],[194850,1,"牐"],[194851,1,"𤘈"],[194852,1,"犀"],[194853,1,"犕"],[194854,1,"𤜵"],[194855,1,"𤠔"],[194856,1,"獺"],[194857,1,"王"],[194858,1,"㺬"],[194859,1,"玥"],[[194860,194861],1,"㺸"],[194862,1,"瑇"],[194863,1,"瑜"],[194864,1,"瑱"],[194865,1,"璅"],[194866,1,"瓊"],[194867,1,"㼛"],[194868,1,"甤"],[194869,1,"𤰶"],[194870,1,"甾"],[194871,1,"𤲒"],[194872,1,"異"],[194873,1,"𢆟"],[194874,1,"瘐"],[194875,1,"𤾡"],[194876,1,"𤾸"],[194877,1,"𥁄"],[194878,1,"㿼"],[194879,1,"䀈"],[194880,1,"直"],[194881,1,"𥃳"],[194882,1,"𥃲"],[194883,1,"𥄙"],[194884,1,"𥄳"],[194885,1,"眞"],[[194886,194887],1,"真"],[194888,1,"睊"],[194889,1,"䀹"],[194890,1,"瞋"],[194891,1,"䁆"],[194892,1,"䂖"],[194893,1,"𥐝"],[194894,1,"硎"],[194895,1,"碌"],[194896,1,"磌"],[194897,1,"䃣"],[194898,1,"𥘦"],[194899,1,"祖"],[194900,1,"𥚚"],[194901,1,"𥛅"],[194902,1,"福"],[194903,1,"秫"],[194904,1,"䄯"],[194905,1,"穀"],[194906,1,"穊"],[194907,1,"穏"],[194908,1,"𥥼"],[[194909,194910],1,"𥪧"],[194911,3],[194912,1,"䈂"],[194913,1,"𥮫"],[194914,1,"篆"],[194915,1,"築"],[194916,1,"䈧"],[194917,1,"𥲀"],[194918,1,"糒"],[194919,1,"䊠"],[194920,1,"糨"],[194921,1,"糣"],[194922,1,"紀"],[194923,1,"𥾆"],[194924,1,"絣"],[194925,1,"䌁"],[194926,1,"緇"],[194927,1,"縂"],[194928,1,"繅"],[194929,1,"䌴"],[194930,1,"𦈨"],[194931,1,"𦉇"],[194932,1,"䍙"],[194933,1,"𦋙"],[194934,1,"罺"],[194935,1,"𦌾"],[194936,1,"羕"],[194937,1,"翺"],[194938,1,"者"],[194939,1,"𦓚"],[194940,1,"𦔣"],[194941,1,"聠"],[194942,1,"𦖨"],[194943,1,"聰"],[194944,1,"𣍟"],[194945,1,"䏕"],[194946,1,"育"],[194947,1,"脃"],[194948,1,"䐋"],[194949,1,"脾"],[194950,1,"媵"],[194951,1,"𦞧"],[194952,1,"𦞵"],[194953,1,"𣎓"],[194954,1,"𣎜"],[194955,1,"舁"],[194956,1,"舄"],[194957,1,"辞"],[194958,1,"䑫"],[194959,1,"芑"],[194960,1,"芋"],[194961,1,"芝"],[194962,1,"劳"],[194963,1,"花"],[194964,1,"芳"],[194965,1,"芽"],[194966,1,"苦"],[194967,1,"𦬼"],[194968,1,"若"],[194969,1,"茝"],[194970,1,"荣"],[194971,1,"莭"],[194972,1,"茣"],[194973,1,"莽"],[194974,1,"菧"],[194975,1,"著"],[194976,1,"荓"],[194977,1,"菊"],[194978,1,"菌"],[194979,1,"菜"],[194980,1,"𦰶"],[194981,1,"𦵫"],[194982,1,"𦳕"],[194983,1,"䔫"],[194984,1,"蓱"],[194985,1,"蓳"],[194986,1,"蔖"],[194987,1,"𧏊"],[194988,1,"蕤"],[194989,1,"𦼬"],[194990,1,"䕝"],[194991,1,"䕡"],[194992,1,"𦾱"],[194993,1,"𧃒"],[194994,1,"䕫"],[194995,1,"虐"],[194996,1,"虜"],[194997,1,"虧"],[194998,1,"虩"],[194999,1,"蚩"],[195000,1,"蚈"],[195001,1,"蜎"],[195002,1,"蛢"],[195003,1,"蝹"],[195004,1,"蜨"],[195005,1,"蝫"],[195006,1,"螆"],[195007,3],[195008,1,"蟡"],[195009,1,"蠁"],[195010,1,"䗹"],[195011,1,"衠"],[195012,1,"衣"],[195013,1,"𧙧"],[195014,1,"裗"],[195015,1,"裞"],[195016,1,"䘵"],[195017,1,"裺"],[195018,1,"㒻"],[195019,1,"𧢮"],[195020,1,"𧥦"],[195021,1,"䚾"],[195022,1,"䛇"],[195023,1,"誠"],[195024,1,"諭"],[195025,1,"變"],[195026,1,"豕"],[195027,1,"𧲨"],[195028,1,"貫"],[195029,1,"賁"],[195030,1,"贛"],[195031,1,"起"],[195032,1,"𧼯"],[195033,1,"𠠄"],[195034,1,"跋"],[195035,1,"趼"],[195036,1,"跰"],[195037,1,"𠣞"],[195038,1,"軔"],[195039,1,"輸"],[195040,1,"𨗒"],[195041,1,"𨗭"],[195042,1,"邔"],[195043,1,"郱"],[195044,1,"鄑"],[195045,1,"𨜮"],[195046,1,"鄛"],[195047,1,"鈸"],[195048,1,"鋗"],[195049,1,"鋘"],[195050,1,"鉼"],[195051,1,"鏹"],[195052,1,"鐕"],[195053,1,"𨯺"],[195054,1,"開"],[195055,1,"䦕"],[195056,1,"閷"],[195057,1,"𨵷"],[195058,1,"䧦"],[195059,1,"雃"],[195060,1,"嶲"],[195061,1,"霣"],[195062,1,"𩅅"],[195063,1,"𩈚"],[195064,1,"䩮"],[195065,1,"䩶"],[195066,1,"韠"],[195067,1,"𩐊"],[195068,1,"䪲"],[195069,1,"𩒖"],[[195070,195071],1,"頋"],[195072,1,"頩"],[195073,1,"𩖶"],[195074,1,"飢"],[195075,1,"䬳"],[195076,1,"餩"],[195077,1,"馧"],[195078,1,"駂"],[195079,1,"駾"],[195080,1,"䯎"],[195081,1,"𩬰"],[195082,1,"鬒"],[195083,1,"鱀"],[195084,1,"鳽"],[195085,1,"䳎"],[195086,1,"䳭"],[195087,1,"鵧"],[195088,1,"𪃎"],[195089,1,"䳸"],[195090,1,"𪄅"],[195091,1,"𪈎"],[195092,1,"𪊑"],[195093,1,"麻"],[195094,1,"䵖"],[195095,1,"黹"],[195096,1,"黾"],[195097,1,"鼅"],[195098,1,"鼏"],[195099,1,"鼖"],[195100,1,"鼻"],[195101,1,"𪘀"],[[195102,196605],3],[[196606,196607],3],[[196608,201546],2],[[201547,201551],3],[[201552,205743],2],[[205744,262141],3],[[262142,262143],3],[[262144,327677],3],[[327678,327679],3],[[327680,393213],3],[[393214,393215],3],[[393216,458749],3],[[458750,458751],3],[[458752,524285],3],[[524286,524287],3],[[524288,589821],3],[[589822,589823],3],[[589824,655357],3],[[655358,655359],3],[[655360,720893],3],[[720894,720895],3],[[720896,786429],3],[[786430,786431],3],[[786432,851965],3],[[851966,851967],3],[[851968,917501],3],[[917502,917503],3],[917504,3],[917505,3],[[917506,917535],3],[[917536,917631],3],[[917632,917759],3],[[917760,917999],7],[[918000,983037],3],[[983038,983039],3],[[983040,1048573],3],[[1048574,1048575],3],[[1048576,1114109],3],[[1114110,1114111],3]]')},978:e=>{"use strict";e.exports={rE:"6.6.1"}}},__webpack_module_cache__={},installedChunks;function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.loaded=!0,r.exports}__webpack_require__.m=__webpack_modules__,__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},__webpack_require__.f={},__webpack_require__.e=e=>Promise.all(Object.keys(__webpack_require__.f).reduce(((t,r)=>(__webpack_require__.f[r](e,t),t)),[])),__webpack_require__.u=e=>e+".backend.js",__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),installedChunks={524:1},__webpack_require__.f.require=(e,t)=>{installedChunks[e]||(e=>{var t=e.modules,r=e.ids,n=e.runtime;for(var o in t)__webpack_require__.o(t,o)&&(__webpack_require__.m[o]=t[o]);n&&n(__webpack_require__);for(var s=0;s<r.length;s++)installedChunks[r[s]]=1})(require("./"+__webpack_require__.u(e)))};var __webpack_exports__=__webpack_require__(5237);module.exports=__webpack_exports__})();
|