n8n-core 2.11.0 → 2.12.0

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.
@@ -81,13 +81,7 @@ axios_1.default.defaults.proxy = false;
81
81
  function validateUrl(url) {
82
82
  if (!url)
83
83
  return false;
84
- try {
85
- new URL(url);
86
- return true;
87
- }
88
- catch {
89
- return false;
90
- }
84
+ return tryParseUrl(url) !== null;
91
85
  }
92
86
  function isIgnoreStatusErrorConfig(ignoreHttpStatusErrors) {
93
87
  return (typeof ignoreHttpStatusErrors === 'object' &&
@@ -127,15 +121,16 @@ function buildTargetUrl(url, baseURL) {
127
121
  return undefined;
128
122
  }
129
123
  }
130
- function setAxiosAgents(config, agentOptions, proxyConfig) {
124
+ function setAxiosAgents(config, agentOptions, proxyConfig, secureLookup) {
131
125
  if (config.httpAgent || config.httpsAgent)
132
126
  return;
133
127
  const customProxyUrl = getUrlFromProxyConfig(proxyConfig);
134
128
  const targetUrl = buildTargetUrl(config.url, config.baseURL);
135
129
  if (!targetUrl)
136
130
  return;
137
- config.httpAgent = (0, http_proxy_1.createHttpProxyAgent)(customProxyUrl, targetUrl, agentOptions);
138
- config.httpsAgent = (0, http_proxy_1.createHttpsProxyAgent)(customProxyUrl, targetUrl, agentOptions);
131
+ const effectiveOptions = secureLookup && !customProxyUrl ? { ...agentOptions, lookup: secureLookup } : agentOptions;
132
+ config.httpAgent = (0, http_proxy_1.createHttpProxyAgent)(customProxyUrl, targetUrl, effectiveOptions);
133
+ config.httpsAgent = (0, http_proxy_1.createHttpsProxyAgent)(customProxyUrl, targetUrl, effectiveOptions);
139
134
  }
140
135
  function applyVendorHeaders(config) {
141
136
  if ([config.url, config.baseURL].some((url) => url?.startsWith('https://api.openai.com/'))) {
@@ -170,15 +165,21 @@ const getHostFromRequestObject = (requestObject) => {
170
165
  return null;
171
166
  }
172
167
  };
173
- const getBeforeRedirectFn = (agentOptions, axiosConfig, proxyConfig, sendCredentialsOnCrossOriginRedirect) => (redirectedRequest) => {
168
+ const getBeforeRedirectFn = (agentOptions, axiosConfig, proxyConfig, sendCredentialsOnCrossOriginRedirect, ssrfBridge) => (redirectedRequest) => {
169
+ if (ssrfBridge) {
170
+ ssrfBridge.validateRedirectSync(redirectedRequest.href);
171
+ }
174
172
  const redirectAgentOptions = {
175
173
  ...agentOptions,
176
174
  servername: redirectedRequest.hostname,
177
175
  };
178
176
  const customProxyUrl = getUrlFromProxyConfig(proxyConfig);
177
+ const effectiveRedirectOptions = ssrfBridge && !customProxyUrl
178
+ ? { ...redirectAgentOptions, lookup: ssrfBridge.createSecureLookup() }
179
+ : redirectAgentOptions;
179
180
  const targetUrl = redirectedRequest.href;
180
- const httpAgent = (0, http_proxy_1.createHttpProxyAgent)(customProxyUrl, targetUrl, redirectAgentOptions);
181
- const httpsAgent = (0, http_proxy_1.createHttpsProxyAgent)(customProxyUrl, targetUrl, redirectAgentOptions);
181
+ const httpAgent = (0, http_proxy_1.createHttpProxyAgent)(customProxyUrl, targetUrl, effectiveRedirectOptions);
182
+ const httpsAgent = (0, http_proxy_1.createHttpsProxyAgent)(customProxyUrl, targetUrl, effectiveRedirectOptions);
182
183
  redirectedRequest.agent = redirectedRequest.href.startsWith('https://')
183
184
  ? httpsAgent
184
185
  : httpAgent;
@@ -305,7 +306,7 @@ async function generateContentLengthHeader(config) {
305
306
  di_1.Container.get(backend_common_1.Logger).error('Unable to calculate form data length', { error });
306
307
  }
307
308
  }
308
- async function parseRequestObject(requestObject) {
309
+ async function parseRequestObject(requestObject, ssrfBridge) {
309
310
  const axiosConfig = {};
310
311
  if (requestObject.headers !== undefined) {
311
312
  axiosConfig.headers = requestObject.headers;
@@ -481,8 +482,9 @@ async function parseRequestObject(requestObject) {
481
482
  if (requestObject.timeout !== undefined) {
482
483
  axiosConfig.timeout = requestObject.timeout;
483
484
  }
484
- setAxiosAgents(axiosConfig, agentOptions, requestObject.proxy);
485
- axiosConfig.beforeRedirect = getBeforeRedirectFn(agentOptions, axiosConfig, requestObject.proxy, requestObject.sendCredentialsOnCrossOriginRedirect ?? true);
485
+ const secureLookup = ssrfBridge?.createSecureLookup();
486
+ setAxiosAgents(axiosConfig, agentOptions, requestObject.proxy, secureLookup);
487
+ axiosConfig.beforeRedirect = getBeforeRedirectFn(agentOptions, axiosConfig, requestObject.proxy, requestObject.sendCredentialsOnCrossOriginRedirect ?? true, ssrfBridge);
486
488
  if (requestObject.useStream) {
487
489
  axiosConfig.responseType = 'stream';
488
490
  }
@@ -519,7 +521,10 @@ async function proxyRequestToAxios(workflow, additionalData, node, uriOrObject,
519
521
  else {
520
522
  configObject = uriOrObject ?? {};
521
523
  }
522
- axiosConfig = Object.assign(axiosConfig, await parseRequestObject(configObject));
524
+ const ssrfBridge = additionalData?.ssrfBridge;
525
+ const url = resolveLegacyRequestUrl(configObject);
526
+ await validateUrlSsrf(url, ssrfBridge);
527
+ axiosConfig = Object.assign(axiosConfig, await parseRequestObject(configObject, ssrfBridge));
523
528
  try {
524
529
  const response = await invokeAxios(axiosConfig, configObject.auth);
525
530
  let body = response.data;
@@ -579,7 +584,7 @@ async function proxyRequestToAxios(workflow, additionalData, node, uriOrObject,
579
584
  throw error;
580
585
  }
581
586
  }
582
- function convertN8nRequestToAxios(n8nRequest) {
587
+ function convertN8nRequestToAxios(n8nRequest, ssrfBridge) {
583
588
  const { headers, method, timeout, auth, proxy, url } = n8nRequest;
584
589
  const axiosRequest = {
585
590
  headers: headers ?? {},
@@ -611,8 +616,9 @@ function convertN8nRequestToAxios(n8nRequest) {
611
616
  if (n8nRequest.skipSslCertificateValidation === true) {
612
617
  agentOptions.rejectUnauthorized = false;
613
618
  }
614
- setAxiosAgents(axiosRequest, agentOptions, proxy);
615
- axiosRequest.beforeRedirect = getBeforeRedirectFn(agentOptions, axiosRequest, n8nRequest.proxy, n8nRequest.sendCredentialsOnCrossOriginRedirect ?? true);
619
+ const secureLookup = ssrfBridge?.createSecureLookup();
620
+ setAxiosAgents(axiosRequest, agentOptions, proxy, secureLookup);
621
+ axiosRequest.beforeRedirect = getBeforeRedirectFn(agentOptions, axiosRequest, n8nRequest.proxy, n8nRequest.sendCredentialsOnCrossOriginRedirect ?? true, ssrfBridge);
616
622
  if (n8nRequest.arrayFormat !== undefined) {
617
623
  axiosRequest.paramsSerializer = (params) => {
618
624
  return (0, qs_1.stringify)(params, { arrayFormat: n8nRequest.arrayFormat });
@@ -669,6 +675,30 @@ function convertN8nRequestToAxios(n8nRequest) {
669
675
  }
670
676
  return axiosRequest;
671
677
  }
678
+ function tryParseUrl(url) {
679
+ try {
680
+ return new URL(url);
681
+ }
682
+ catch {
683
+ return null;
684
+ }
685
+ }
686
+ async function validateUrlSsrf(url, ssrfBridge) {
687
+ if (!ssrfBridge || !url)
688
+ return;
689
+ const parsed = tryParseUrl(url);
690
+ if (!parsed)
691
+ return;
692
+ const result = await ssrfBridge.validateUrl(parsed);
693
+ if (!result.ok) {
694
+ throw result.error;
695
+ }
696
+ }
697
+ function resolveLegacyRequestUrl(requestObject) {
698
+ const rawUrl = requestObject.uri?.toString() ?? requestObject.url?.toString();
699
+ const baseURL = requestObject.baseURL?.toString();
700
+ return buildTargetUrl(rawUrl, baseURL) ?? rawUrl;
701
+ }
672
702
  const NoBodyHttpMethods = ['GET', 'HEAD', 'OPTIONS'];
673
703
  const removeEmptyBody = (requestOptions) => {
674
704
  const method = requestOptions.method || 'GET';
@@ -677,9 +707,11 @@ const removeEmptyBody = (requestOptions) => {
677
707
  }
678
708
  };
679
709
  exports.removeEmptyBody = removeEmptyBody;
680
- async function httpRequest(requestOptions) {
710
+ async function httpRequest(requestOptions, ssrfBridge) {
681
711
  (0, exports.removeEmptyBody)(requestOptions);
682
- const axiosRequest = convertN8nRequestToAxios(requestOptions);
712
+ const url = buildTargetUrl(requestOptions.url, requestOptions.baseURL) ?? requestOptions.url;
713
+ await validateUrlSsrf(url, ssrfBridge);
714
+ const axiosRequest = convertN8nRequestToAxios(requestOptions, ssrfBridge);
683
715
  if (axiosRequest.data === undefined ||
684
716
  (axiosRequest.method !== undefined && axiosRequest.method.toUpperCase() === 'GET')) {
685
717
  delete axiosRequest.data;
@@ -725,6 +757,41 @@ function createOAuth2Client(credentials) {
725
757
  }),
726
758
  });
727
759
  }
760
+ async function refreshOrFetchToken(ctx) {
761
+ const { credentials, token, credentialsType, node, additionalData, oAuth2Options, logger } = ctx;
762
+ const tokenRefreshOptions = {};
763
+ if (oAuth2Options?.includeCredentialsOnRefreshOnBody) {
764
+ const body = {
765
+ client_id: credentials.clientId,
766
+ ...(credentials.grantType === 'authorizationCode' && {
767
+ client_secret: credentials.clientSecret,
768
+ }),
769
+ };
770
+ tokenRefreshOptions.body = body;
771
+ tokenRefreshOptions.headers = { Authorization: '' };
772
+ }
773
+ logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" expired. Revalidating.`);
774
+ let newToken;
775
+ if (credentials.grantType === 'clientCredentials') {
776
+ newToken = await token.client.credentials.getToken();
777
+ }
778
+ else {
779
+ newToken = await token.refresh(tokenRefreshOptions);
780
+ }
781
+ logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
782
+ credentials.oauthTokenData = newToken.data;
783
+ if (!node.credentials?.[credentialsType]) {
784
+ throw new n8n_workflow_1.ApplicationError('Node does not have credential type', {
785
+ extra: { nodeName: node.name, credentialType: credentialsType },
786
+ });
787
+ }
788
+ const nodeCredentials = node.credentials[credentialsType];
789
+ await additionalData.credentialsHelper.updateCredentialsOauthTokenData(nodeCredentials, credentialsType, credentials, additionalData);
790
+ return newToken;
791
+ }
792
+ function resolveTokenExpiredStatusCode(oAuth2Options, credentials) {
793
+ return credentials?.tokenExpiredStatusCode ?? oAuth2Options?.tokenExpiredStatusCode ?? 401;
794
+ }
728
795
  async function requestOAuth2(credentialsType, requestOptions, node, additionalData, oAuth2Options, isN8nRequest = false) {
729
796
  (0, exports.removeEmptyBody)(requestOptions);
730
797
  const credentials = (await this.getCredentials(credentialsType));
@@ -767,54 +834,35 @@ async function requestOAuth2(credentialsType, requestOptions, node, additionalDa
767
834
  [oAuth2Options.keyToIncludeInAccessTokenHeader]: token.accessToken,
768
835
  });
769
836
  }
837
+ const tokenExpiredStatusCode = resolveTokenExpiredStatusCode(oAuth2Options, credentials);
838
+ const refreshCtx = {
839
+ credentials,
840
+ token,
841
+ credentialsType,
842
+ node,
843
+ additionalData,
844
+ oAuth2Options,
845
+ logger: this.logger,
846
+ };
847
+ const retryWithNewToken = async (makeRequest) => {
848
+ const newToken = await refreshOrFetchToken(refreshCtx);
849
+ const refreshedRequestOptions = newToken.sign(requestOptions);
850
+ refreshedRequestOptions.headers = refreshedRequestOptions.headers ?? {};
851
+ if (oAuth2Options?.keyToIncludeInAccessTokenHeader) {
852
+ Object.assign(refreshedRequestOptions.headers, {
853
+ [oAuth2Options.keyToIncludeInAccessTokenHeader]: newToken.accessToken,
854
+ });
855
+ }
856
+ return await makeRequest(refreshedRequestOptions);
857
+ };
770
858
  if (isN8nRequest) {
771
859
  return await this.helpers.httpRequest(newRequestOptions).catch(async (error) => {
772
- if (error.response?.status === 401) {
773
- this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" expired. Should revalidate.`);
774
- const tokenRefreshOptions = {};
775
- if (oAuth2Options?.includeCredentialsOnRefreshOnBody) {
776
- const body = {
777
- client_id: credentials.clientId,
778
- ...(credentials.grantType === 'authorizationCode' && {
779
- client_secret: credentials.clientSecret,
780
- }),
781
- };
782
- tokenRefreshOptions.body = body;
783
- tokenRefreshOptions.headers = {
784
- Authorization: '',
785
- };
786
- }
787
- let newToken;
788
- this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
789
- if (credentials.grantType === 'clientCredentials') {
790
- newToken = await token.client.credentials.getToken();
791
- }
792
- else {
793
- newToken = await token.refresh(tokenRefreshOptions);
794
- }
795
- this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
796
- credentials.oauthTokenData = newToken.data;
797
- if (!node.credentials?.[credentialsType]) {
798
- throw new n8n_workflow_1.ApplicationError('Node does not have credential type', {
799
- extra: { nodeName: node.name, credentialType: credentialsType },
800
- });
801
- }
802
- const nodeCredentials = node.credentials[credentialsType];
803
- await additionalData.credentialsHelper.updateCredentialsOauthTokenData(nodeCredentials, credentialsType, credentials, additionalData);
804
- const refreshedRequestOption = newToken.sign(requestOptions);
805
- if (oAuth2Options?.keyToIncludeInAccessTokenHeader) {
806
- Object.assign(newRequestHeaders, {
807
- [oAuth2Options.keyToIncludeInAccessTokenHeader]: token.accessToken,
808
- });
809
- }
810
- return await this.helpers.httpRequest(refreshedRequestOption);
860
+ if (error.response?.status === tokenExpiredStatusCode) {
861
+ return await retryWithNewToken(async (opts) => await this.helpers.httpRequest(opts));
811
862
  }
812
863
  throw error;
813
864
  });
814
865
  }
815
- const tokenExpiredStatusCode = oAuth2Options?.tokenExpiredStatusCode === undefined
816
- ? 401
817
- : oAuth2Options?.tokenExpiredStatusCode;
818
866
  return await this.helpers
819
867
  .request(newRequestOptions)
820
868
  .then((response) => {
@@ -828,44 +876,7 @@ async function requestOAuth2(credentialsType, requestOptions, node, additionalDa
828
876
  })
829
877
  .catch(async (error) => {
830
878
  if (error.statusCode === tokenExpiredStatusCode) {
831
- const tokenRefreshOptions = {};
832
- if (oAuth2Options?.includeCredentialsOnRefreshOnBody) {
833
- const body = {
834
- client_id: credentials.clientId,
835
- client_secret: credentials.clientSecret,
836
- };
837
- tokenRefreshOptions.body = body;
838
- tokenRefreshOptions.headers = {
839
- Authorization: '',
840
- };
841
- }
842
- this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" expired. Should revalidate.`);
843
- let newToken;
844
- if (credentials.grantType === 'clientCredentials') {
845
- newToken = await token.client.credentials.getToken();
846
- }
847
- else {
848
- newToken = await token.refresh(tokenRefreshOptions);
849
- }
850
- this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
851
- credentials.oauthTokenData = newToken.data;
852
- if (!node.credentials?.[credentialsType]) {
853
- throw new n8n_workflow_1.ApplicationError('Node does not have credential type', {
854
- tags: { credentialType: credentialsType },
855
- extra: { nodeName: node.name },
856
- });
857
- }
858
- const nodeCredentials = node.credentials[credentialsType];
859
- await additionalData.credentialsHelper.updateCredentialsOauthTokenData(nodeCredentials, credentialsType, credentials, additionalData);
860
- this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been saved to database successfully.`);
861
- const newRequestOptions = newToken.sign(requestOptions);
862
- newRequestOptions.headers = newRequestOptions.headers ?? {};
863
- if (oAuth2Options?.keyToIncludeInAccessTokenHeader) {
864
- Object.assign(newRequestOptions.headers, {
865
- [oAuth2Options.keyToIncludeInAccessTokenHeader]: token.accessToken,
866
- });
867
- }
868
- return await this.helpers.request(newRequestOptions);
879
+ return await retryWithNewToken(async (opts) => await this.helpers.request(opts));
869
880
  }
870
881
  throw error;
871
882
  });
@@ -935,37 +946,15 @@ async function refreshOAuth2Token(credentialsType, node, additionalData, oAuth2O
935
946
  ...(accessToken ? { access_token: accessToken } : {}),
936
947
  ...(refreshToken ? { refresh_token: refreshToken } : {}),
937
948
  }, oAuth2Options?.tokenType || oauthTokenData.tokenType);
938
- const tokenRefreshOptions = {};
939
- if (oAuth2Options?.includeCredentialsOnRefreshOnBody) {
940
- const body = {
941
- client_id: credentials.clientId,
942
- ...(credentials.grantType === 'authorizationCode' && {
943
- client_secret: credentials.clientSecret,
944
- }),
945
- };
946
- tokenRefreshOptions.body = body;
947
- tokenRefreshOptions.headers = {
948
- Authorization: '',
949
- };
950
- }
951
- this.logger.debug(`Refreshing the OAuth2 token for "${credentialsType}" used by node "${node.name}".`);
952
- let newToken;
953
- if (credentials.grantType === 'clientCredentials') {
954
- newToken = await token.client.credentials.getToken();
955
- }
956
- else {
957
- newToken = await token.refresh(tokenRefreshOptions);
958
- }
959
- this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been renewed.`);
960
- credentials.oauthTokenData = newToken.data;
961
- if (!node.credentials?.[credentialsType]) {
962
- throw new n8n_workflow_1.ApplicationError('Node does not have credential type', {
963
- extra: { nodeName: node.name, credentialType: credentialsType },
964
- });
965
- }
966
- const nodeCredentials = node.credentials[credentialsType];
967
- await additionalData.credentialsHelper.updateCredentialsOauthTokenData(nodeCredentials, credentialsType, credentials, additionalData);
968
- this.logger.debug(`OAuth2 token for "${credentialsType}" used by node "${node.name}" has been saved to database successfully.`);
949
+ const newToken = await refreshOrFetchToken({
950
+ credentials,
951
+ token,
952
+ credentialsType,
953
+ node,
954
+ additionalData,
955
+ oAuth2Options,
956
+ logger: this.logger,
957
+ });
969
958
  return newToken.data;
970
959
  }
971
960
  async function httpRequestWithAuthentication(credentialsType, requestOptions, workflow, node, additionalData, additionalCredentialOptions) {
@@ -997,7 +986,7 @@ async function httpRequestWithAuthentication(credentialsType, requestOptions, wo
997
986
  Object.assign(credentialsDecrypted, data);
998
987
  }
999
988
  requestOptions = await additionalData.credentialsHelper.authenticate(credentialsDecrypted, credentialsType, requestOptions, workflow, node);
1000
- return await httpRequest(requestOptions);
989
+ return await httpRequest(requestOptions, additionalData.ssrfBridge);
1001
990
  }
1002
991
  catch (error) {
1003
992
  if (error.response?.status === 401 &&
@@ -1010,7 +999,7 @@ async function httpRequestWithAuthentication(credentialsType, requestOptions, wo
1010
999
  }
1011
1000
  requestOptions = await additionalData.credentialsHelper.authenticate(credentialsDecrypted, credentialsType, requestOptions, workflow, node);
1012
1001
  }
1013
- return await httpRequest(requestOptions);
1002
+ return await httpRequest(requestOptions, additionalData.ssrfBridge);
1014
1003
  }
1015
1004
  catch (error) {
1016
1005
  throw new n8n_workflow_1.NodeApiError(this.getNode(), error);
@@ -1210,7 +1199,7 @@ const getRequestHelperFunctions = (workflow, node, additionalData, runExecutionD
1210
1199
  return responseData;
1211
1200
  }
1212
1201
  return {
1213
- httpRequest,
1202
+ httpRequest: async (requestOptions) => await httpRequest(requestOptions, additionalData.ssrfBridge),
1214
1203
  requestWithAuthenticationPaginated,
1215
1204
  async httpRequestWithAuthentication(credentialsType, requestOptions, additionalCredentialOptions) {
1216
1205
  return await httpRequestWithAuthentication.call(this, credentialsType, requestOptions, workflow, node, additionalData, additionalCredentialOptions);
@@ -1 +1 @@
1
- {"version":3,"file":"request-helper-functions.js","sourceRoot":"","sources":["../../../../src/execution-engine/node-execution-context/utils/request-helper-functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAySA,kCAkBC;AAuDD,gDA+RC;AAKD,kDAsFC;AAED,4DAsHC;AAYD,kCAyBC;AAED,gEAkBC;AAmBD,sCAyOC;AAGD,sCAsEC;AAED,gDA6EC;AAED,sEAiHC;AAGD,8DAyGC;AAxgDD,wDAA6C;AAO7C,sDAAkD;AAClD,wCAAuC;AACvC,gCAAoC;AAEpC,kDAA0B;AAC1B,iDAA4C;AAC5C,0DAAiC;AACjC,+BAAuC;AAEvC,qDAA6B;AAC7B,6DAAqC;AACrC,yDAAiC;AACjC,uDAA+B;AAC/B,+CASsB;AA2BtB,4DAAsC;AACtC,2BAA+B;AAC/B,mCAAkC;AAElC,6CAA2E;AAG3E,uEAA2D;AAC3D,qEAAgE;AAEhE,eAAK,CAAC,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC;AAEhC,eAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC;AACjC,eAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;AAChC,eAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;AAClC,eAAK,CAAC,QAAQ,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;IAC5C,IAAI,MAAM,YAAY,eAAe,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IACD,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;AACtD,CAAC,CAAC;AAGF,eAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;AAE7B,SAAS,WAAW,CAAC,GAAY;IAChC,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,IAAI,CAAC;QACJ,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACb,OAAO,IAAI,CAAC;IACb,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED,SAAS,yBAAyB,CACjC,sBAA+B;IAE/B,OAAO,CACN,OAAO,sBAAsB,KAAK,QAAQ;QAC1C,sBAAsB,KAAK,IAAI;QAC/B,QAAQ,IAAI,sBAAsB;QAClC,sBAAsB,CAAC,MAAM,KAAK,IAAI,CACtC,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAkD;IAChF,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IACtD,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,IAAI;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;IACnD,MAAM,YAAY,GAAG,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC;IAE5F,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,YAAY,MAAM,IAAI,EAAE,CAAC,CAAC;QACjD,IAAI,IAAI,KAAK,SAAS;YAAE,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,IAAI,EAAE,QAAQ,EAAE,CAAC;YACpB,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC7B,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CAAC,GAAY,EAAE,OAAgB;IACrD,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAE3B,IAAI,CAAC;QACJ,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CACtB,MAA0B,EAC1B,YAA2B,EAC3B,WAAmD;IAEnD,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU;QAAE,OAAO;IAElD,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAE1D,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAE7D,IAAI,CAAC,SAAS;QAAE,OAAO;IAEvB,MAAM,CAAC,SAAS,GAAG,IAAA,iCAAoB,EAAC,cAAc,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IACjF,MAAM,CAAC,UAAU,GAAG,IAAA,kCAAqB,EAAC,cAAc,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA0B;IACrD,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC;QAC5F,MAAM,CAAC,OAAO,GAAG;YAChB,GAAG,cAAS,CAAC,GAAG,CAAC,iBAAQ,CAAC,CAAC,oBAAoB;YAC/C,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;SACzB,CAAC;IACH,CAAC;AACF,CAAC;AAED,eAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;IAEzC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,cAAc,CAAC,MAAM,CAAC,CAAC;IACvB,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE3B,OAAO,MAAM,CAAC;AACf,CAAC,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,MAA0B,EAAE,UAAkB;IACtE,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChD,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACtC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,wBAAwB,GAAG,CAChC,aAIE,EACc,EAAE;IAClB,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,aAAa,CAAC,GAAG,CAAW,CAAC;QAC/D,OAAO,IAAI,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;IACrD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,mBAAmB,GACxB,CACC,YAA0B,EAC1B,WAA+B,EAC/B,WAA8D,EAC9D,oCAA6C,EAC5C,EAAE,CACJ,CAAC,iBAAsC,EAAE,EAAE;IAC1C,MAAM,oBAAoB,GAAG;QAC5B,GAAG,YAAY;QACf,UAAU,EAAE,iBAAiB,CAAC,QAAQ;KACtC,CAAC;IACF,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAG1D,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC;IACzC,MAAM,SAAS,GAAG,IAAA,iCAAoB,EAAC,cAAc,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG,IAAA,kCAAqB,EAAC,cAAc,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;IAE1F,iBAAiB,CAAC,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QACtE,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,SAAS,CAAC;IACb,iBAAiB,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAElE,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO;QACtC,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC;QACrD,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAClC,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC;IAC1C,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;IAE/C,IAAI,cAAc,KAAK,YAAY,IAAI,oCAAoC,EAAE,CAAC;QAC7E,IAAI,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC;YACxC,iBAAiB,CAAC,OAAO,CAAC,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7E,CAAC;QACD,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;YACtB,iBAAiB,CAAC,IAAI,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtF,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEH,SAAS,qBAAqB,CAC7B,WAA+B,EAC/B,QAAuB,EACvB,IAAgC;IAEhC,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC;SACtD,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,IAAI,WAAW,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,WAAW,CAAC;QAC/B,MAAM,MAAM,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,KAAK,GAAW,WAAW;aAC/B,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/D,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpB,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3F,MAAM,MAAM,GAAW,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,MAAM,KAAK,GAAW,WAAW;aAC/B,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/D,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpB,MAAM,GAAG,GAAG,gBAAM;aAChB,UAAU,CAAC,KAAK,CAAC;aACjB,MAAM,CAAC,GAAG,IAAI,EAAE,QAAkB,IAAI,KAAK,IAAI,IAAI,EAAE,QAAkB,EAAE,CAAC;aAC1E,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC;QACvC,MAAM,GAAG,GAAG,gBAAM;aAChB,UAAU,CAAC,KAAK,CAAC;aACjB,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;aAChD,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,QAAQ,GAAG,gBAAM;aACrB,UAAU,CAAC,KAAK,CAAC;aACjB,MAAM,CAAC,GAAG,GAAG,IAAI,KAAK,IAAI,UAAU,IAAI,MAAM,SAAS,GAAG,EAAE,CAAC;aAC7D,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,IAAI,aAAa,GAChB,oBAAoB,IAAI,EAAE,QAAkB,YAAY,KAAK,IAAI;YACjE,UAAU,KAAK,UAAU,IAAI,+BAA+B;YAC5D,aAAa,QAAQ,SAAS,UAAU,aAAa,MAAM,GAAG,CAAC;QAEhE,IAAI,MAAM,EAAE,CAAC;YACZ,aAAa,IAAI,YAAY,MAAM,GAAG,CAAC;QACxC,CAAC;QACD,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,WAAW,CAAC,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;QACnD,CAAC;aAAM,CAAC;YACP,WAAW,CAAC,OAAO,GAAG,EAAE,aAAa,EAAE,CAAC;QACzC,CAAC;IACF,CAAC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC;AAEM,KAAK,UAAU,WAAW,CAChC,WAA+B,EAC/B,cAAuC,EAAE;IAEzC,IAAI,CAAC;QACJ,OAAO,MAAM,IAAA,eAAK,EAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAI,WAAW,CAAC,eAAe,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,YAAY,eAAK,CAAC,UAAU,CAAC;YAAE,MAAM,KAAK,CAAC;QAE/F,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAC3B,IAAI,QAAQ,EAAE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1F,MAAM,KAAK,CAAC;QACb,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;QAC7B,OAAO,WAAW,CAAC,IAAI,CAAC;QACxB,WAAW,GAAG,qBAAqB,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjE,OAAO,MAAM,IAAA,eAAK,EAAC,WAAW,CAAC,CAAC;IACjC,CAAC;AACF,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,IAAc,EAAE,GAAW,EAAE,KAAU,EAAE,EAAE;IACrE,IAAI,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;QACvE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACP,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;AACF,CAAC,CAAC;AAEK,MAAM,oBAAoB,GAAG,CAAC,IAA6B,EAAE,EAAE;IACrE,MAAM,QAAQ,GAAG,IAAI,mBAAQ,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5B,IAAI,SAAS,YAAY,KAAK,EAAE,CAAC;YAChC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC1B,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAfW,QAAA,oBAAoB,wBAe/B;AAEF,KAAK,UAAU,2BAA2B,CAAC,MAA0B;IACpE,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,mBAAQ,CAAC,EAAE,CAAC;QACxC,OAAO;IACR,CAAC;IACD,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACrD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAmB,EAAE,UAAkB,EAAE,EAAE;gBACjE,IAAI,KAAK;oBAAE,GAAG,CAAC,KAAK,CAAC,CAAC;;oBACjB,GAAG,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,GAAG;YAChB,GAAG,MAAM,CAAC,OAAO;YACjB,gBAAgB,EAAE,MAAM;SACxB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,cAAS,CAAC,GAAG,CAAC,uBAAM,CAAC,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAChF,CAAC;AACF,CAAC;AAUM,KAAK,UAAU,kBAAkB,CAAC,aAA8B;IACtE,MAAM,WAAW,GAAuB,EAAE,CAAC;IAE3C,IAAI,aAAa,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,WAAW,CAAC,OAAO,GAAG,aAAa,CAAC,OAAuB,CAAC;IAC7D,CAAC;IAUD,MAAM,wBAAwB,GAC7B,WAAW,CAAC,OAAO;QACnB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CACpC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,cAAc,CAC3D,CAAC;IACH,MAAM,WAAW,GAChB,wBAAwB;QACvB,WAAW,CAAC,OAAO,EAAE,CAAC,wBAAwB,CAAwB,CAAC;IACzE,IAAI,WAAW,KAAK,mCAAmC,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAKjG,IAAI,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5C,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;QACvC,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE,EAAE,aAAa,CAAC,IAAI,IAAI,EAAE,CAG/E,CAAC;YACF,IAAI,aAAa,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC3C,WAAW,CAAC,IAAI,GAAG,IAAA,cAAS,EAAC,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACP,WAAW,CAAC,IAAI,GAAG,IAAA,cAAS,EAAC,OAAO,CAAC,CAAC;YACvC,CAAC;QACF,CAAC;IACF,CAAC;SAAM,IAAI,WAAW,EAAE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACzD,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,IAAI,aAAa,CAAC,QAAQ,YAAY,mBAAQ,EAAE,CAAC;YACxF,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC;QAC3C,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAsB;gBAClC,GAAI,aAAa,CAAC,IAA2B;gBAC7C,GAAI,aAAa,CAAC,QAA+B;aACjD,CAAC;YAEF,WAAW,CAAC,IAAI,GAAG,IAAA,4BAAoB,EAAC,OAAO,CAAC,CAAC;QAClD,CAAC;QAGD,OAAO,WAAW,CAAC,OAAO,EAAE,CAAC,wBAAyB,CAAC,CAAC;QAExD,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAE9C,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;QACxE,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QAEP,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAE1E,WAAW,CAAC,IAAI;gBACf,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;oBACrC,CAAC,CAAC,IAAA,cAAS,EAAC,aAAa,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;oBACtD,CAAC,CAAC,IAAA,cAAS,EAAC,aAAa,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC7C,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,UAAU,GAAG,eAAe,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;gBAChE,IAAI,UAAU,EAAE,CAAC;oBAChB,OAAO,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACxC,CAAC;gBACD,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,mCAAmC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACP,WAAW,CAAC,OAAO,GAAG;oBACrB,cAAc,EAAE,mCAAmC;iBACnD,CAAC;YACH,CAAC;QACF,CAAC;aAAM,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAEjD,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACjD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC1B,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,cAAc,EAAE,CAAC;wBAC7C,OAAO,WAAW,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;oBACtC,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,aAAa,CAAC,QAAQ,YAAY,mBAAQ,EAAE,CAAC;gBAChD,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACP,WAAW,CAAC,IAAI,GAAG,IAAA,4BAAoB,EAAC,aAAa,CAAC,QAAmC,CAAC,CAAC;YAC5F,CAAC;YAGD,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAE9C,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;YACxE,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAE7C,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;gBAG5D,aAAa,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;YAC5E,CAAC;YACD,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,IAAgD,CAAC;QACnF,CAAC;IACF,CAAC;IAED,IAAI,aAAa,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QACrC,WAAW,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,IAAI,aAAa,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QACrC,WAAW,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,IAAI,aAAa,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,WAAW,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC;IACzD,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACxC,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IAC3C,CAAC;IAED,IAAI,aAAa,CAAC,EAAE,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1F,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC;IACvC,CAAC;IAED,SAAS,qBAAqB,CAC7B,GAAoB;QAEpB,IACC,OAAO,GAAG,CAAC,kBAAkB,KAAK,QAAQ;YAC1C,GAAG,CAAC,kBAAkB,KAAK,IAAI;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;YACtC,aAAa,IAAI,GAAG,CAAC,kBAAkB,EACtC,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IACC,aAAa,CAAC,cAAc,KAAK,IAAI;QACrC,CAAC,qBAAqB,CAAC,aAAa,CAAC;YACpC,aAAa,CAAC,kBAAkB,CAAC,WAAW,KAAK,QAAQ,CAAC,EAC1D,CAAC;QACF,WAAW,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;YACzC,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC,CAAC;IACH,CAAC;SAAM,IAAI,aAAa,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QACnD,WAAW,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;YACzC,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC,CAAC;IACH,CAAC;IAED,IACC,qBAAqB,CAAC,aAAa,CAAC;QACpC,aAAa,CAAC,kBAAkB,CAAC,WAAW,KAAK,UAAU,EAC1D,CAAC;QACF,WAAW,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;YACzC,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC;IACH,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAEtC,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7C,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;gBAC9D,aAAa,EAAE,UAAU,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE;aACpD,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC;YAEnC,WAAW,CAAC,IAAI,GAAG;gBAClB,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAW;gBAEtD,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAW;aACtD,CAAC;QACH,CAAC;IACF,CAAC;IAGD,IAAI,aAAa,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAGjC,MAAM,kBAAkB,GACvB,WAAW,CAAC,OAAO,KAAK,SAAS;YAChC,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;iBAC/B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;iBAC3C,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzB,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;gBAC9D,MAAM,EAAE,kBAAkB;aAC1B,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IACD,IAAI,aAAa,CAAC,IAAI,KAAK,KAAK,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAGtE,WAAW,CAAC,iBAAiB,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;IAC9C,CAAC;IAGD,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;IACjC,IACC,CAAC,aAAa,CAAC,cAAc,KAAK,KAAK;QACtC,CAAC,CAAC,MAAM,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,CAAC,CAAC;QACpD,aAAa,CAAC,kBAAkB,EAC/B,CAAC;QACF,WAAW,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;IACvD,CAAC;SAAM,CAAC;QACP,WAAW,CAAC,YAAY,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,IAAI,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IACrD,MAAM,YAAY,GAAiB,EAAE,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;IACrE,IAAI,IAAI,EAAE,CAAC;QACV,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;IAChC,CAAC;IACD,IAAI,aAAa,CAAC,kBAAkB,KAAK,KAAK,EAAE,CAAC;QAChD,YAAY,CAAC,kBAAkB,GAAG,KAAK,CAAC;QACxC,YAAY,CAAC,aAAa,GAAG,gBAAM,CAAC,SAAS,CAAC,4BAA4B,CAAC;IAC5E,CAAC;IAED,IAAI,aAAa,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,WAAW,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;IAC7C,CAAC;IAED,cAAc,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAE/D,WAAW,CAAC,cAAc,GAAG,mBAAmB,CAC/C,YAAY,EACZ,WAAW,EACX,aAAa,CAAC,KAAK,EACnB,aAAa,CAAC,oCAAoC,IAAI,IAAI,CAC1D,CAAC;IAEF,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;QAC7B,WAAW,CAAC,YAAY,GAAG,QAAQ,CAAC;IACrC,CAAC;SAAM,IAAI,aAAa,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAE5C,WAAW,CAAC,YAAY,GAAG,aAAa,CAAC;IAC1C,CAAC;IAMD,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC3E,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,IACC,aAAa,CAAC,IAAI,KAAK,KAAK;QAC5B,WAAW,CAAC,IAAI,KAAK,SAAS;QAC9B,WAAW,CAAC,IAAI,KAAK,EAAE;QACvB,CAAC,CAAC,WAAW,CAAC,IAAI,YAAY,MAAM,CAAC;QACrC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,EAC1E,CAAC;QAMF,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;YAC9D,cAAc,EAAE,kBAAkB;SAClC,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QACpC,WAAW,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC;IAQD,OAAO,WAAW,CAAC;AACpB,CAAC;AAKM,KAAK,UAAU,mBAAmB,CACxC,QAA8B,EAC9B,cAA0D,EAC1D,IAAuB,EACvB,WAAqC,EACrC,OAAyB;IAEzB,IAAI,WAAW,GAAuB;QACrC,aAAa,EAAE,QAAQ;QACvB,gBAAgB,EAAE,QAAQ;KAC1B,CAAC;IACF,IAAI,YAA6B,CAAC;IAClC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACrC,YAAY,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC;IACjD,CAAC;SAAM,CAAC;QACP,YAAY,GAAG,WAAW,IAAI,EAAE,CAAC;IAClC,CAAC;IAED,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC;IAEjF,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;QACnE,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QACzB,IAAI,IAAI,YAAY,sBAAe,IAAI,WAAW,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9E,IAAA,6CAAoB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACxB,IAAI,GAAG,WAAW,CAAC,YAAY,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjF,CAAC;QACD,MAAM,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9E,OAAO,YAAY,CAAC,uBAAuB;YAC1C,CAAC,CAAC;gBACA,IAAI;gBACJ,OAAO,EAAE,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE;gBAChC,UAAU,EAAE,QAAQ,CAAC,MAAM;gBAC3B,aAAa,EAAE,QAAQ,CAAC,UAAU;gBAClC,OAAO,EAAE,QAAQ,CAAC,OAAO;aACzB;YACF,CAAC,CAAC,IAAI,CAAC;IACT,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAKnC,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;YACzC,KAAK,CAAC,OAAO,GAAG,IAAA,cAAI,EAAC,MAAM,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;YACzE,IAAI,QAAQ,EAAE,CAAC;gBACd,cAAS,CAAC,GAAG,CAAC,uBAAM,CAAC,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5F,IAAI,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAEjC,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,YAAY,iBAAQ,EAAE,CAAC;oBACvE,YAAY,GAAG,MAAM,IAAA,wCAAc,EAAC,YAAY,CAAC,CAAC;gBACnD,CAAC;gBAED,IAAI,YAAY,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBACnC,IAAI,YAAY,CAAC,uBAAuB,EAAE,CAAC;wBAC1C,OAAO;4BACN,IAAI,EAAE,YAAY;4BAClB,OAAO,EAAE,QAAQ,CAAC,OAAO;4BACzB,UAAU,EAAE,QAAQ,CAAC,MAAM;4BAC3B,aAAa,EAAE,QAAQ,CAAC,UAAU;yBAClC,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACP,OAAO,YAAY,CAAC;oBACrB,CAAC;gBACF,CAAC;gBAED,KAAK,CAAC,OAAO,GAAG,GAAG,QAAQ,CAAC,MAAgB,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjF,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;oBAC1B,UAAU,EAAE,QAAQ,CAAC,MAAM;oBAK3B,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,KAAK,EAAE,YAAY;oBACnB,QAAQ,EAAE,IAAA,cAAI,EAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;iBAC7D,CAAC,CAAC;YACJ,CAAC;iBAAM,IAAI,oBAAoB,IAAI,YAAY,IAAI,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjF,MAAM,IAAI,2BAAY,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;QACF,CAAC;QAED,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAgB,wBAAwB,CAAC,UAA+B;IAEvE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC;IAElE,MAAM,YAAY,GAAuB;QACxC,OAAO,EAAE,OAAO,IAAI,EAAE;QACtB,MAAM;QACN,OAAO;QACP,IAAI;QACJ,GAAG;QACH,aAAa,EAAE,QAAQ;QACvB,gBAAgB,EAAE,QAAQ;KACJ,CAAC;IAExB,YAAY,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC;IAEpC,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;QAC5B,YAAY,CAAC,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC;IAC9C,CAAC;IAED,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACtC,YAAY,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;IAC3C,CAAC;IAED,IAAI,UAAU,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;QAC/C,YAAY,CAAC,YAAY,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACvC,YAAY,CAAC,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAClD,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,IAAI,IAAI,EAAE,CAAC;QACV,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;IAChC,CAAC;IACD,IAAI,UAAU,CAAC,4BAA4B,KAAK,IAAI,EAAE,CAAC;QACtD,YAAY,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACzC,CAAC;IACD,cAAc,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAElD,YAAY,CAAC,cAAc,GAAG,mBAAmB,CAChD,YAAY,EACZ,YAAY,EACZ,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,oCAAoC,IAAI,IAAI,CACvD,CAAC;IAEF,IAAI,UAAU,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAC1C,YAAY,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;YAC1C,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC;IACH,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;IAC5B,IAAI,IAAI,EAAE,CAAC;QAEV,MAAM,4BAA4B,GAAG,eAAe,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QACnF,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;YAChD,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC;YAGlD,IAAI,IAAI,YAAY,mBAAQ,EAAE,CAAC;gBAC9B,YAAY,CAAC,OAAO,GAAG;oBACtB,GAAG,YAAY,CAAC,OAAO;oBACvB,GAAG,IAAI,CAAC,UAAU,EAAE;iBACpB,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,YAAY,eAAe,EAAE,CAAC;gBAC5C,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,mCAAmC,CAAC;YAC5E,CAAC;QACF,CAAC;aAAM,IACN,YAAY,CAAC,OAAO,EAAE,CAAC,4BAA4B,CAAC,KAAK,mCAAmC,EAC3F,CAAC;YACF,YAAY,CAAC,IAAI,GAAG,IAAI,eAAe,CAAC,UAAU,CAAC,IAA8B,CAAC,CAAC;QACpF,CAAC;QAID,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAA,4BAAa,EAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACpF,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1B,CAAC;IACF,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,eAAe,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAGpD,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,YAAY,CAAC,OAAO,GAAG;gBACtB,GAAG,YAAY,CAAC,OAAO;gBACvB,MAAM,EAAE,kBAAkB;aAC1B,CAAC;QACH,CAAC;IACF,CAAC;IAED,MAAM,eAAe,GAAG,eAAe,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAGpE,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,YAAY,CAAC,OAAO,GAAG;YACtB,GAAG,YAAY,CAAC,OAAO;YACvB,YAAY,EAAE,KAAK;SACnB,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,sBAAsB,EAAE,CAAC;QACvC,MAAM,sBAAsB,GAAG,UAAU,CAAC,sBAAsB,CAAC;QACjE,IAAI,yBAAyB,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACvD,YAAY,CAAC,cAAc,GAAG,CAAC,MAAM,EAAE,EAAE;gBACxC,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACxD,CAAC,CAAC;QACH,CAAC;aAAM,CAAC;YACP,YAAY,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;QAC1C,CAAC;IACF,CAAC;IAED,OAAO,YAAY,CAAC;AACrB,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAG9C,MAAM,eAAe,GAAG,CAAC,cAAqD,EAAE,EAAE;IACxF,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,IAAI,KAAK,CAAC;IAC9C,IAAI,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAA,iBAAO,EAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QACxE,OAAO,cAAc,CAAC,IAAI,CAAC;IAC5B,CAAC;AACF,CAAC,CAAC;AALW,QAAA,eAAe,mBAK1B;AAEK,KAAK,UAAU,WAAW,CAChC,cAAmC;IAEnC,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAEhC,MAAM,YAAY,GAAG,wBAAwB,CAAC,cAAc,CAAC,CAAC;IAC9D,IACC,YAAY,CAAC,IAAI,KAAK,SAAS;QAC/B,CAAC,YAAY,CAAC,MAAM,KAAK,SAAS,IAAI,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EACjF,CAAC;QACF,OAAO,YAAY,CAAC,IAAI,CAAC;IAC1B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IAEpE,IAAI,cAAc,CAAC,kBAAkB,EAAE,CAAC;QACvC,OAAO;YACN,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,aAAa,EAAE,MAAM,CAAC,UAAU;SAChC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,SAAgB,0BAA0B,CACzC,WAA4B,EAC5B,qBAAmD;IAEnD,MAAM,sBAAsB,GAA6B;QACxD,GAAG,qBAAqB;QACxB,GAAG,EAAE,qBAAqB,CAAC,GAAG;KAC9B,CAAC;IAEF,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;QAC/B,sBAAsB,CAAC,QAAQ,GAAG,qBAAqB,CAAC,IAAI,CAAC;QAC7D,OAAO,sBAAsB,CAAC,IAAI,CAAC;IACpC,CAAC;SAAM,IAAI,MAAM,IAAI,WAAW,EAAE,CAAC;QAClC,sBAAsB,CAAC,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC;QACzD,OAAO,sBAAsB,CAAC,IAAI,CAAC;IACpC,CAAC;IAED,OAAO,IAAA,eAAK,EAAC,EAAE,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,kBAAkB,CAAC,WAAiC;IAC5D,OAAO,IAAI,4BAAY,CAAC;QACvB,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;QAC5C,eAAe,EAAE,WAAW,CAAC,eAAe;QAC5C,cAAc,EAAE,WAAW,CAAC,cAAc,IAAI,QAAQ;QACtD,GAAG,CAAC,WAAW,CAAC,wBAAwB,IAAI;YAC3C,wBAAwB,EAAE,IAAA,wBAAS,EAAC,WAAW,CAAC,wBAAwB,EAAE;gBACzE,aAAa,EAAE,EAAE;aACjB,CAAC;SACF,CAAC;KACF,CAAC,CAAC;AACJ,CAAC;AAGM,KAAK,UAAU,aAAa,CAElC,eAAuB,EACvB,cAAqD,EACrD,IAAW,EACX,cAA8C,EAC9C,aAA8B,EAC9B,YAAY,GAAG,KAAK;IAEpB,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAEhC,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAC7C,eAAe,CACf,CAAoC,CAAC;IAGtC,IAAI,WAAW,CAAC,SAAS,KAAK,mBAAmB,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC/F,MAAM,IAAI,+BAAgB,CAAC,iCAAiC,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAEpD,IAAI,cAAc,GAAG,WAAW,CAAC,cAAuC,CAAC;IAEzE,IACC,WAAW,CAAC,SAAS,KAAK,mBAAmB;QAC7C,CAAC,cAAc,KAAK,SAAS;YAC5B,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,KAAK,CAAC;YACxC,cAAc,CAAC,YAAY,KAAK,EAAE,CAAC,EACnC,CAAC;QACF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QAE1D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,+BAAgB,CAAC,oCAAoC,EAAE;gBAChE,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE;gBAC9B,IAAI,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE;aACzC,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QAC1D,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC;QAGlC,MAAM,cAAc,CAAC,iBAAiB,CAAC,+BAA+B,CACrE,eAAe,EACf,eAAe,EACf,WAAwD,EACxD,cAAc,CACd,CAAC;QAEF,cAAc,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,MAAM,WAAW,GAChB,IAAA,aAAG,EAAC,cAAc,EAAE,aAAa,EAAE,QAAkB,CAAC,IAAI,cAAc,CAAC,WAAW,CAAC;IACtF,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;IACjD,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,CACpC;QACC,GAAG,cAAc;QACjB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,EACD,aAAa,EAAE,SAAS,IAAI,cAAc,CAAC,SAAS,CACpD,CAAC;IAED,cAAkC,CAAC,kBAAkB,GAAG,CAAC,WAAW,CAAC,eAAe,CAAC;IAItF,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,cAA2C,CAAC,CAAC;IAClF,MAAM,iBAAiB,GAAG,CAAC,iBAAiB,CAAC,OAAO,GAAG,iBAAiB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAExF,IAAI,aAAa,EAAE,UAAU,KAAK,KAAK,IAAI,OAAO,iBAAiB,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;QAChG,iBAAiB,CAAC,aAAa,GAAG,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,aAAa,EAAE,+BAA+B,EAAE,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE;YAChC,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,KAAK,CAAC,WAAW;SAClE,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QAClB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAiB,EAAE,EAAE;YAC1F,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,+BAA+B,CAC/F,CAAC;gBACF,MAAM,mBAAmB,GAAgB,EAAE,CAAC;gBAC5C,IAAI,aAAa,EAAE,iCAAiC,EAAE,CAAC;oBACtD,MAAM,IAAI,GAAgB;wBACzB,SAAS,EAAE,WAAW,CAAC,QAAQ;wBAC/B,GAAG,CAAC,WAAW,CAAC,SAAS,KAAK,mBAAmB,IAAI;4BACpD,aAAa,EAAE,WAAW,CAAC,YAAsB;yBACjD,CAAC;qBACF,CAAC;oBACF,mBAAmB,CAAC,IAAI,GAAG,IAAI,CAAC;oBAChC,mBAAmB,CAAC,OAAO,GAAG;wBAC7B,aAAa,EAAE,EAAE;qBACjB,CAAC;gBACH,CAAC;gBAED,IAAI,QAAQ,CAAC;gBAEb,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,qBAAqB,CACrF,CAAC;gBAGF,IAAI,WAAW,CAAC,SAAS,KAAK,mBAAmB,EAAE,CAAC;oBACnD,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;gBACtD,CAAC;qBAAM,CAAC;oBACP,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,mBAAqD,CAAC,CAAC;gBACvF,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,qBAAqB,CACrF,CAAC;gBAEF,WAAW,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAE3C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC1C,MAAM,IAAI,+BAAgB,CAAC,oCAAoC,EAAE;wBAChE,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE;qBAC/D,CAAC,CAAC;gBACJ,CAAC;gBACD,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;gBAC1D,MAAM,cAAc,CAAC,iBAAiB,CAAC,+BAA+B,CACrE,eAAe,EACf,eAAe,EACf,WAAwD,EACxD,cAAc,CACd,CAAC;gBACF,MAAM,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,cAA2C,CAAC,CAAC;gBAE1F,IAAI,aAAa,EAAE,+BAA+B,EAAE,CAAC;oBACpD,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE;wBAChC,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,KAAK,CAAC,WAAW;qBAClE,CAAC,CAAC;gBACJ,CAAC;gBAED,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;YAC/D,CAAC;YACD,MAAM,KAAK,CAAC;QACb,CAAC,CAAC,CAAC;IACJ,CAAC;IACD,MAAM,sBAAsB,GAC3B,aAAa,EAAE,sBAAsB,KAAK,SAAS;QAClD,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,aAAa,EAAE,sBAAsB,CAAC;IAE1C,OAAO,MAAM,IAAI,CAAC,OAAO;SACvB,OAAO,CAAC,iBAAoC,CAAC;SAC7C,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QAClB,MAAM,cAAc,GAAG,iBAAwB,CAAC;QAChD,IACC,cAAc,CAAC,uBAAuB,KAAK,IAAI;YAC/C,cAAc,CAAC,MAAM,KAAK,KAAK;YAC/B,QAAQ,CAAC,UAAU,KAAK,sBAAsB,EAC7C,CAAC;YACF,MAAM,QAAQ,CAAC;QAChB,CAAC;QACD,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;SACD,KAAK,CAAC,KAAK,EAAE,KAAqB,EAAE,EAAE;QACtC,IAAI,KAAK,CAAC,UAAU,KAAK,sBAAsB,EAAE,CAAC;YAEjD,MAAM,mBAAmB,GAAgB,EAAE,CAAC;YAC5C,IAAI,aAAa,EAAE,iCAAiC,EAAE,CAAC;gBACtD,MAAM,IAAI,GAAgB;oBACzB,SAAS,EAAE,WAAW,CAAC,QAAQ;oBAC/B,aAAa,EAAE,WAAW,CAAC,YAAY;iBACvC,CAAC;gBACF,mBAAmB,CAAC,IAAI,GAAG,IAAI,CAAC;gBAEhC,mBAAmB,CAAC,OAAO,GAAG;oBAC7B,aAAa,EAAE,EAAE;iBACjB,CAAC;YACH,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,+BAA+B,CAC/F,CAAC;YAEF,IAAI,QAAQ,CAAC;YAIb,IAAI,WAAW,CAAC,SAAS,KAAK,mBAAmB,EAAE,CAAC;gBACnD,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACP,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,mBAAqD,CAAC,CAAC;YACvF,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,qBAAqB,CACrF,CAAC;YAEF,WAAW,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC;YAG3C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC1C,MAAM,IAAI,+BAAgB,CAAC,oCAAoC,EAAE;oBAChE,IAAI,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE;oBACzC,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE;iBAC9B,CAAC,CAAC;YACJ,CAAC;YACD,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;YAG1D,MAAM,cAAc,CAAC,iBAAiB,CAAC,+BAA+B,CACrE,eAAe,EACf,eAAe,EACf,WAAwD,EACxD,cAAc,CACd,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,4CAA4C,CAC5G,CAAC;YAGF,MAAM,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,cAA2C,CAAC,CAAC;YACrF,iBAAiB,CAAC,OAAO,GAAG,iBAAiB,CAAC,OAAO,IAAI,EAAE,CAAC;YAE5D,IAAI,aAAa,EAAE,+BAA+B,EAAE,CAAC;gBACpD,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE;oBACxC,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,KAAK,CAAC,WAAW;iBAClE,CAAC,CAAC;YACJ,CAAC;YAED,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAoC,CAAC,CAAC;QACzE,CAAC;QAGD,MAAM,KAAK,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC;AAGM,KAAK,UAAU,aAAa,CAElC,eAAuB,EACvB,cAAqD,EACrD,YAAY,GAAG,KAAK;IAEpB,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAEhC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IAE/D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,+BAAgB,CAAC,8BAA8B,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC9C,MAAM,IAAI,+BAAgB,CAAC,iCAAiC,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,oBAAY,CAAC;QAC9B,QAAQ,EAAE;YACT,GAAG,EAAE,WAAW,CAAC,WAAqB;YACtC,MAAM,EAAE,WAAW,CAAC,cAAwB;SAC5C;QACD,gBAAgB,EAAE,WAAW,CAAC,eAAyB;QACvD,aAAa,CAAC,IAAI,EAAE,GAAG;YACtB,IAAI,SAAiB,CAAC;YACtB,QAAQ,WAAW,CAAC,eAAe,EAAE,CAAC;gBACrC,KAAK,aAAa;oBACjB,SAAS,GAAG,QAAQ,CAAC;oBACrB,MAAM;gBACP,KAAK,aAAa;oBACjB,SAAS,GAAG,QAAQ,CAAC;oBACrB,MAAM;gBACP;oBACC,SAAS,GAAG,MAAM,CAAC;oBACnB,MAAM;YACR,CAAC;YACD,OAAO,IAAA,mBAAU,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjE,CAAC;KACD,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,WAAW,CAAC,cAA6B,CAAC;IAEjE,MAAM,KAAK,GAAU;QACpB,GAAG,EAAE,cAAc,CAAC,WAAqB;QACzC,MAAM,EAAE,cAAc,CAAC,kBAA4B;KACnD,CAAC;IAGF,cAAc,CAAC,IAAI,GAAG,EAAE,GAAG,cAAc,CAAC,EAAE,EAAE,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;IAGvE,IAAI,KAAK,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QACpD,cAAc,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC;QACxC,OAAO,cAAc,CAAC,GAAG,CAAC;IAC3B,CAAC;IAED,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,CACtC,KAAK,CAAC,SAAS,CAAC,cAAwD,EAAE,KAAK,CAAC,CAC3C,CAAC;IACvC,IAAI,YAAY,EAAE,CAAC;QAClB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,cAAqC,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,MAAM,IAAI,CAAC,OAAO;SACvB,OAAO,CAAC,cAAiC,CAAC;SAC1C,KAAK,CAAC,KAAK,EAAE,KAAqB,EAAE,EAAE;QAEtC,MAAM,KAAK,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,kBAAkB,CAEvC,eAAuB,EACvB,IAAW,EACX,cAA8C,EAC9C,aAA8B;IAE9B,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAC7C,eAAe,CACf,CAAoC,CAAC;IACtC,IAAI,WAAW,CAAC,SAAS,KAAK,mBAAmB,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC/F,MAAM,IAAI,+BAAgB,CAAC,iCAAiC,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,WAAW,CAAC,cAAuC,CAAC;IAC3E,MAAM,WAAW,GAChB,IAAA,aAAG,EAAC,cAAc,EAAE,aAAa,EAAE,QAAkB,CAAC,IAAI,cAAc,CAAC,WAAW,CAAC;IACtF,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;IACjD,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,CACpC;QACC,GAAG,cAAc;QACjB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,EACD,aAAa,EAAE,SAAS,IAAI,cAAc,CAAC,SAAS,CACpD,CAAC;IACF,MAAM,mBAAmB,GAAgB,EAAE,CAAC;IAC5C,IAAI,aAAa,EAAE,iCAAiC,EAAE,CAAC;QACtD,MAAM,IAAI,GAAgB;YACzB,SAAS,EAAE,WAAW,CAAC,QAAQ;YAC/B,GAAG,CAAC,WAAW,CAAC,SAAS,KAAK,mBAAmB,IAAI;gBACpD,aAAa,EAAE,WAAW,CAAC,YAAsB;aACjD,CAAC;SACF,CAAC;QACF,mBAAmB,CAAC,IAAI,GAAG,IAAI,CAAC;QAChC,mBAAmB,CAAC,OAAO,GAAG;YAC7B,aAAa,EAAE,EAAE;SACjB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,oCAAoC,eAAe,mBAAmB,IAAI,CAAC,IAAI,IAAI,CACnF,CAAC;IAEF,IAAI,QAAQ,CAAC;IAEb,IAAI,WAAW,CAAC,SAAS,KAAK,mBAAmB,EAAE,CAAC;QACnD,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IACtD,CAAC;SAAM,CAAC;QACP,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,mBAAqD,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,qBAAqB,CACrF,CAAC;IAEF,WAAW,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,+BAAgB,CAAC,oCAAoC,EAAE;YAChE,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE;SAC/D,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAC1D,MAAM,cAAc,CAAC,iBAAiB,CAAC,+BAA+B,CACrE,eAAe,EACf,eAAe,EACf,WAAwD,EACxD,cAAc,CACd,CAAC;IAEF,IAAI,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,4CAA4C,CAC5G,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACtB,CAAC;AAEM,KAAK,UAAU,6BAA6B,CAElD,eAAuB,EACvB,cAAmC,EACnC,QAAkB,EAClB,IAAW,EACX,cAA8C,EAC9C,2BAA0D;IAE1D,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAGhC,IAAI,0BAA0B,IAAI,IAAI,EAAE,CAAC;QACxC,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAC9D,CAAC;IAED,IAAI,oBAAgE,CAAC;IACrE,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAErF,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,OAAO,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,OAAO,MAAM,aAAa,CAAC,IAAI,CAC9B,IAAI,EACJ,eAAe,EACf,cAAc,EACd,IAAI,EACJ,cAAc,EACd,2BAA2B,EAAE,MAAM,EACnC,IAAI,CACJ,CAAC;QACH,CAAC;QAED,IAAI,2BAA2B,EAAE,oBAAoB,EAAE,CAAC;YACvD,oBAAoB,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,IAAI,CAAC;QAC9E,CAAC;aAAM,CAAC;YACP,oBAAoB;gBACnB,MAAM,IAAI,CAAC,cAAc,CAAiC,eAAe,CAAC,CAAC;QAC7E,CAAC;QAED,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,IAAI,iCAAkB,CAC3B,IAAI,EACJ,SAAS,IAAI,CAAC,IAAI,4CAA4C,eAAe,OAAO,EACpF,EAAE,KAAK,EAAE,SAAS,EAAE,CACpB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,CACpE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EACzB,oBAAoB,EACpB,eAAe,EACf,IAAI,EACJ,KAAK,CACL,CAAC;QAEF,IAAI,IAAI,EAAE,CAAC;YAGV,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QAED,cAAc,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,YAAY,CACnE,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,QAAQ,EACR,IAAI,CACJ,CAAC;QACF,OAAO,MAAM,WAAW,CAAC,cAAc,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAGhB,IACC,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG;YAC9B,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,KAAK,SAAS,EAC/D,CAAC;YACF,IAAI,CAAC;gBACJ,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;oBAExC,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,CACpE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EACzB,oBAAoB,EACpB,eAAe,EACf,IAAI,EACJ,IAAI,CACJ,CAAC;oBAEF,IAAI,IAAI,EAAE,CAAC;wBAGV,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;oBAC3C,CAAC;oBAED,cAAc,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,YAAY,CACnE,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,QAAQ,EACR,IAAI,CACJ,CAAC;gBACH,CAAC;gBAED,OAAO,MAAM,WAAW,CAAC,cAAc,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,MAAM,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;QAED,MAAM,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;AACF,CAAC;AAGM,KAAK,UAAU,yBAAyB,CAE9C,eAAuB,EACvB,cAA+B,EAC/B,QAAkB,EAClB,IAAW,EACX,cAA8C,EAC9C,2BAA0D,EAC1D,SAAkB;IAElB,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAEhC,IAAI,oBAAgE,CAAC;IAErE,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAErF,IAAI,eAAe,KAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1E,OAAO,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,eAAe,KAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1E,OAAO,MAAM,aAAa,CAAC,IAAI,CAC9B,IAAI,EACJ,eAAe,EACf,cAAc,EACd,IAAI,EACJ,cAAc,EACd,2BAA2B,EAAE,MAAM,EACnC,KAAK,CACL,CAAC;QACH,CAAC;QAED,IAAI,2BAA2B,EAAE,oBAAoB,EAAE,CAAC;YACvD,oBAAoB,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,IAAI,CAAC;QAC9E,CAAC;aAAM,CAAC;YACP,oBAAoB,GAAG,MAAM,IAAI,CAAC,cAAc,CAC/C,eAAe,EACf,SAAS,CACT,CAAC;QACH,CAAC;QAED,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,IAAI,iCAAkB,CAC3B,IAAI,EACJ,SAAS,IAAI,CAAC,IAAI,4CAA4C,eAAe,OAAO,EACpF,EAAE,KAAK,EAAE,SAAS,EAAE,CACpB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,CACpE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EACzB,oBAAoB,EACpB,eAAe,EACf,IAAI,EACJ,KAAK,CACL,CAAC;QAEF,IAAI,IAAI,EAAE,CAAC;YAGV,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QAED,cAAc,GAAG,CAAC,MAAM,cAAc,CAAC,iBAAiB,CAAC,YAAY,CACpE,oBAAoB,EACpB,eAAe,EACf,cAAqC,EACrC,QAAQ,EACR,IAAI,CACJ,CAAoB,CAAC;QACtB,OAAO,MAAM,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAClF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAI,CAAC;YACJ,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBAExC,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,CACpE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EACzB,oBAAoB,EACpB,eAAe,EACf,IAAI,EACJ,IAAI,CACJ,CAAC;gBAEF,IAAI,IAAI,EAAE,CAAC;oBAGV,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;oBAC1C,cAAc,GAAG,CAAC,MAAM,cAAc,CAAC,iBAAiB,CAAC,YAAY,CACpE,oBAAoB,EACpB,eAAe,EACf,cAAqC,EACrC,QAAQ,EACR,IAAI,CACJ,CAAoB,CAAC;oBAEtB,OAAO,MAAM,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;gBAClF,CAAC;YACF,CAAC;YACD,MAAM,KAAK,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,KAAK,YAAY,iCAAkB;gBAAE,MAAM,KAAK,CAAC;YAErD,MAAM,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACF,CAAC;AACF,CAAC;AAEM,MAAM,yBAAyB,GAAG,CACxC,QAAkB,EAClB,IAAW,EACX,cAA8C,EAC9C,mBAA6C,IAAI,EACjD,sBAA4C,EAAE,EACrB,EAAE;IAC3B,MAAM,gBAAgB,GAAG,CACxB,cAAsC,EACtC,SAAiB,EACjB,QAAgB,EAChB,WAAyB,EACzB,cAAiD,EACjD,oBAAoB,GAAG,KAAK,EACH,EAAE;QAC3B,MAAM,IAAI,GAAwB,UAAU,CAAC;QAE7C,IACC,OAAO,cAAc,KAAK,QAAQ;YAClC,CAAC,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EACvE,CAAC;YACF,OAAO,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAC3C,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,IAAI,CAAC,IAAI,EACT,mBAAmB,EACnB,IAAI,EACJ,cAAc,IAAI,EAAE,EACpB,WAAW,EACX,oBAAoB,CACpB,CAAC;QACH,CAAC;QAED,OAAO,cAAc,CAAC;IACvB,CAAC,CAAC;IAGF,KAAK,UAAU,kCAAkC,CAEhD,cAA+B,EAC/B,SAAiB,EACjB,iBAAoC,EACpC,eAAwB,EACxB,2BAA0D;QAE1D,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YACxB,cAAc,CAAC,EAAE,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,cAAc,CAAC,uBAAuB,GAAG,IAAI,CAAC;QAC9C,cAAc,CAAC,MAAM,GAAG,KAAK,CAAC;QAE9B,IAAI,gBAAsC,CAAC;QAC3C,IAAI,qBAA8B,CAAC;QACnC,IAAI,mBAAiD,CAAC;QAEtD,MAAM,QAAQ,GAAG,CAAC,CAAC;QAEnB,MAAM,cAAc,GAAqC;YACxD,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,EAA0B;YACrC,QAAQ,EAAE,IAAI,CAAC,WAAW;YAC1B,UAAU,EAAE,CAAC;SACb,CAAC;QAEF,MAAM,WAAW,GAAiB;YACjC,IAAI,EAAE,EAAE;YACR,IAAI;YACJ,MAAM,EAAE,IAAI;SACZ,CAAC;QAEF,MAAM,QAAQ,GAAG;YAChB,cAAc,EAAE,CAAC;YACjB,cAAc,EAAE,CAAC;YACjB,YAAY,EAAE,EAAE;SAChB,CAAC;QACF,GAAG,CAAC;YACH,mBAAmB,GAAG,gBAAgB,CACrC,iBAAiB,CAAC,OAA4C,EAC9D,SAAS,EACT,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,CACqC,CAAC;YAE5C,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;YAE3F,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAa,CAAC,EAAE,CAAC;gBACpD,MAAM,IAAI,iCAAkB,CAAC,IAAI,EAAE,IAAI,mBAAmB,CAAC,GAAG,uBAAuB,EAAE;oBACtF,SAAS;oBACT,QAAQ;oBACR,IAAI,EAAE,aAAa;iBACnB,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,eAAe,EAAE,CAAC;gBACrB,gBAAgB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CACnE,IAAI,EACJ,eAAe,EACf,kBAAkB,EAClB,2BAA2B,CAC3B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,gBAAgB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YACnE,CAAC;YAED,MAAM,WAAW,GAAyB,MAAM,CAAC,MAAM,CACtD;gBACC,IAAI,EAAE,EAAE;gBACR,OAAO,EAAE,EAAE;gBACX,UAAU,EAAE,CAAC;aACb,EACD,IAAA,cAAI,EAAC,gBAAgB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CACzD,CAAC;YAEF,IAAI,WAA8C,CAAC;YAEnD,IAAI,WAAW,CAAC,IAAI,YAAY,iBAAQ,IAAI,iBAAiB,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gBAErF,WAAW,GAAG,MAAM,IAAA,wCAAc,EAAC,WAAW,CAAC,IAAyB,CAAC,CAAC;gBAE1E,MAAM,mBAAmB,GAAG,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAClF,IAAI,mBAAmB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACtD,WAAW,CAAC,IAAI,GAAG,IAAA,wBAAS,EAAC,WAAW,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClE,CAAC;qBAAM,CAAC;oBACP,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC;gBAChC,CAAC;gBACD,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC;gBACvC,gBAAgB,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACP,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC;YAChC,CAAC;YAED,IAAI,iBAAiB,CAAC,YAAY,KAAK,IAAI,IAAI,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAI9E,IAAI,aAAa,GAAG,CAAC,CAAC;gBACtB,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;oBAClD,aAAa,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,gBAAgB,CAAW,CAAC,IAAI,CAAC,CAAC;gBACrF,CAAC;gBAED,IAAI,QAAQ,CAAC,cAAc,KAAK,aAAa,EAAE,CAAC;oBAC/C,IAAI,IAAY,CAAC;oBACjB,IAAI,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;wBAEnC,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAc,CAAC;oBAChD,CAAC;yBAAM,CAAC;wBAEP,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;4BACrC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wBAC3C,CAAC;wBACD,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACtE,CAAC;oBAED,IAAI,QAAQ,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;wBACpC,QAAQ,CAAC,cAAc,IAAI,CAAC,CAAC;wBAC7B,IAAI,QAAQ,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;4BAEjC,MAAM,IAAI,iCAAkB,CAC3B,IAAI,EACJ,iEAAiE,EACjE;gCACC,SAAS;gCACT,WAAW,EACV,qEAAqE;6BACtE,CACD,CAAC;wBACH,CAAC;oBACF,CAAC;yBAAM,CAAC;wBACP,QAAQ,CAAC,cAAc,GAAG,CAAC,CAAC;oBAC7B,CAAC;oBACD,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,cAAc,GAAG,CAAC,CAAC;gBAC7B,CAAC;gBACD,QAAQ,CAAC,cAAc,GAAG,aAAa,CAAC;YACzC,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAEpC,cAAc,CAAC,SAAS,GAAG,WAAW,CAAC;YACvC,cAAc,CAAC,UAAU,GAAG,CAAC,cAAc,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAEjE,MAAM,WAAW,GAAG,gBAAgB,CACnC,iBAAiB,CAAC,WAAW,EAC7B,SAAS,EACT,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,CACK,CAAC;YAEZ,IAAI,WAAW,IAAI,cAAc,CAAC,UAAU,IAAI,WAAW,EAAE,CAAC;gBAC7D,MAAM;YACP,CAAC;YAED,qBAAqB,GAAG,gBAAgB,CACvC,iBAAiB,CAAC,QAAQ,EAC1B,SAAS,EACT,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,CACM,CAAC;YAEb,IAAI,qBAAqB,EAAE,CAAC;gBAC3B,IAAI,iBAAiB,CAAC,eAAe,EAAE,CAAC;oBACvC,MAAM,eAAe,GAAG,gBAAgB,CACvC,iBAAiB,CAAC,eAAe,EACjC,SAAS,EACT,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,CACK,CAAC;oBAEZ,MAAM,IAAA,oBAAK,EAAC,eAAe,CAAC,CAAC;gBAC9B,CAAC;gBACD,IAAI,gBAAgB,CAAC,UAAU,GAAG,GAAG,IAAI,gBAAgB,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC;oBAK7E,IAAI,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC;oBACjC,IAAI,IAAI,YAAY,iBAAQ,IAAI,iBAAiB,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;wBACzE,IAAI,GAAG,MAAM,IAAA,wCAAc,EAAC,IAAyB,CAAC,CAAC;oBACxD,CAAC;yBAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACrC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBAC7B,CAAC;oBAED,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,gBAAgB,CAAC,UAAU,OAAO,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE;wBACxF,UAAU,EAAE,gBAAgB,CAAC,UAAU;wBACvC,KAAK,EAAE,IAAI;wBACX,YAAY,EAAE,IAAI;wBAClB,QAAQ,EAAE;4BACT,OAAO,EAAE,gBAAgB,CAAC,OAAO;4BACjC,MAAM,EAAE,gBAAgB,CAAC,UAAU;4BACnC,UAAU,EAAE,gBAAgB,CAAC,aAAa;yBAC1C;qBACD,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;QACF,CAAC,QAAQ,qBAAqB,EAAE;QAEhC,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,OAAO;QACN,WAAW;QACX,kCAAkC;QAClC,KAAK,CAAC,6BAA6B,CAElC,eAAe,EACf,cAAc,EACd,2BAA2B;YAE3B,OAAO,MAAM,6BAA6B,CAAC,IAAI,CAC9C,IAAI,EACJ,eAAe,EACf,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,cAAc,EACd,2BAA2B,CAC3B,CAAC;QACH,CAAC;QAED,KAAK,CAAC,kBAAkB,CAEvB,eAAuB,EACvB,aAA8B;YAE9B,OAAO,MAAM,kBAAkB,CAAC,IAAI,CACnC,IAAI,EACJ,eAAe,EACf,IAAI,EACJ,cAAc,EACd,aAAa,CACb,CAAC;QACH,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,CACvC,MAAM,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC;QAEhF,KAAK,CAAC,yBAAyB,CAE9B,eAAe,EACf,cAAc,EACd,2BAA2B,EAC3B,SAAS;YAET,OAAO,MAAM,yBAAyB,CAAC,IAAI,CAC1C,IAAI,EACJ,eAAe,EACf,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,cAAc,EACd,2BAA2B,EAC3B,SAAS,CACT,CAAC;QACH,CAAC;QAED,KAAK,CAAC,aAAa,CAElB,eAAuB,EACvB,cAA+B;YAE/B,OAAO,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;QACxE,CAAC;QAED,KAAK,CAAC,aAAa,CAElB,eAAuB,EACvB,cAA+B,EAC/B,aAA8B;YAE9B,OAAO,MAAM,aAAa,CAAC,IAAI,CAC9B,IAAI,EACJ,eAAe,EACf,cAAc,EACd,IAAI,EACJ,cAAc,EACd,aAAa,CACb,CAAC;QACH,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AA3UW,QAAA,yBAAyB,6BA2UpC"}
1
+ {"version":3,"file":"request-helper-functions.js","sourceRoot":"","sources":["../../../../src/execution-engine/node-execution-context/utils/request-helper-functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4TA,kCAkBC;AAuDD,gDAiSC;AAKD,kDA0FC;AAED,4DA2HC;AAuCD,kCA6BC;AAED,gEAkBC;AAmFD,sCAwIC;AAGD,sCAsEC;AAED,gDAuCC;AAED,sEAiHC;AAGD,8DAyGC;AA9/CD,wDAA6C;AAQ7C,sDAAkD;AAClD,wCAAuC;AACvC,gCAAoC;AAEpC,kDAA0B;AAC1B,iDAA4C;AAC5C,0DAAiC;AACjC,+BAAuC;AAEvC,qDAA6B;AAC7B,6DAAqC;AACrC,yDAAiC;AACjC,uDAA+B;AAC/B,+CASsB;AA4BtB,4DAAsC;AACtC,2BAA+B;AAC/B,mCAAkC;AAGlC,6CAA2E;AAG3E,uEAA2D;AAC3D,qEAAgE;AAEhE,eAAK,CAAC,QAAQ,CAAC,OAAO,GAAG,MAAM,CAAC;AAEhC,eAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC;AACjC,eAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;AAChC,eAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC;AAClC,eAAK,CAAC,QAAQ,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;IAC5C,IAAI,MAAM,YAAY,eAAe,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IACD,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;AACtD,CAAC,CAAC;AAGF,eAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;AAE7B,SAAS,WAAW,CAAC,GAAY;IAChC,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IAEvB,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;AAClC,CAAC;AAED,SAAS,yBAAyB,CACjC,sBAA+B;IAE/B,OAAO,CACN,OAAO,sBAAsB,KAAK,QAAQ;QAC1C,sBAAsB,KAAK,IAAI;QAC/B,QAAQ,IAAI,sBAAsB;QAClC,sBAAsB,CAAC,MAAM,KAAK,IAAI,CACtC,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAkD;IAChF,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACrC,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IACtD,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,IAAI;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;IACnD,MAAM,YAAY,GAAG,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC;IAE5F,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,YAAY,MAAM,IAAI,EAAE,CAAC,CAAC;QACjD,IAAI,IAAI,KAAK,SAAS;YAAE,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,IAAI,EAAE,QAAQ,EAAE,CAAC;YACpB,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC7B,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CAAC,GAAY,EAAE,OAAgB;IACrD,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAE3B,IAAI,CAAC;QACJ,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED,SAAS,cAAc,CACtB,MAA0B,EAC1B,YAA2B,EAC3B,WAAmD,EACnD,YAA2D;IAE3D,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU;QAAE,OAAO;IAElD,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAE1D,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAE7D,IAAI,CAAC,SAAS;QAAE,OAAO;IAKvB,MAAM,gBAAgB,GACrB,YAAY,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;IAE5F,MAAM,CAAC,SAAS,GAAG,IAAA,iCAAoB,EAAC,cAAc,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;IACrF,MAAM,CAAC,UAAU,GAAG,IAAA,kCAAqB,EAAC,cAAc,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,kBAAkB,CAAC,MAA0B;IACrD,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC;QAC5F,MAAM,CAAC,OAAO,GAAG;YAChB,GAAG,cAAS,CAAC,GAAG,CAAC,iBAAQ,CAAC,CAAC,oBAAoB;YAC/C,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;SACzB,CAAC;IACH,CAAC;AACF,CAAC;AAED,eAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;IAEzC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,cAAc,CAAC,MAAM,CAAC,CAAC;IACvB,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE3B,OAAO,MAAM,CAAC;AACf,CAAC,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,MAA0B,EAAE,UAAkB;IACtE,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChD,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACtC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,wBAAwB,GAAG,CAChC,aAIE,EACc,EAAE;IAClB,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,aAAa,CAAC,GAAG,CAAW,CAAC;QAC/D,OAAO,IAAI,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;IACrD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC,CAAC;AAEF,MAAM,mBAAmB,GACxB,CACC,YAA0B,EAC1B,WAA+B,EAC/B,WAA8D,EAC9D,oCAA6C,EAC7C,UAAuB,EACtB,EAAE,CACJ,CAAC,iBAAsC,EAAE,EAAE;IAG1C,IAAI,UAAU,EAAE,CAAC;QAChB,UAAU,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,oBAAoB,GAAiB;QAC1C,GAAG,YAAY;QACf,UAAU,EAAE,iBAAiB,CAAC,QAAQ;KACtC,CAAC;IACF,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAG1D,MAAM,wBAAwB,GAC7B,UAAU,IAAI,CAAC,cAAc;QAC5B,CAAC,CAAC,EAAE,GAAG,oBAAoB,EAAE,MAAM,EAAE,UAAU,CAAC,kBAAkB,EAAE,EAAE;QACtE,CAAC,CAAC,oBAAoB,CAAC;IAGzB,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC;IACzC,MAAM,SAAS,GAAG,IAAA,iCAAoB,EAAC,cAAc,EAAE,SAAS,EAAE,wBAAwB,CAAC,CAAC;IAC5F,MAAM,UAAU,GAAG,IAAA,kCAAqB,EAAC,cAAc,EAAE,SAAS,EAAE,wBAAwB,CAAC,CAAC;IAE9F,iBAAiB,CAAC,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QACtE,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,SAAS,CAAC;IACb,iBAAiB,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAElE,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO;QACtC,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC;QACrD,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAClC,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC;IAC1C,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;IAE/C,IAAI,cAAc,KAAK,YAAY,IAAI,oCAAoC,EAAE,CAAC;QAC7E,IAAI,WAAW,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC;YACxC,iBAAiB,CAAC,OAAO,CAAC,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7E,CAAC;QACD,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;YACtB,iBAAiB,CAAC,IAAI,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACtF,CAAC;IACF,CAAC;AACF,CAAC,CAAC;AAEH,SAAS,qBAAqB,CAC7B,WAA+B,EAC/B,QAAuB,EACvB,IAAgC;IAEhC,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC;SACtD,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,IAAI,WAAW,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,WAAW,CAAC;QAC/B,MAAM,MAAM,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,KAAK,GAAW,WAAW;aAC/B,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/D,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAEpB,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3F,MAAM,MAAM,GAAW,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,MAAM,KAAK,GAAW,WAAW;aAC/B,IAAI,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC/D,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpB,MAAM,GAAG,GAAG,gBAAM;aAChB,UAAU,CAAC,KAAK,CAAC;aACjB,MAAM,CAAC,GAAG,IAAI,EAAE,QAAkB,IAAI,KAAK,IAAI,IAAI,EAAE,QAAkB,EAAE,CAAC;aAC1E,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC;QACvC,MAAM,GAAG,GAAG,gBAAM;aAChB,UAAU,CAAC,KAAK,CAAC;aACjB,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;aAChD,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,MAAM,QAAQ,GAAG,gBAAM;aACrB,UAAU,CAAC,KAAK,CAAC;aACjB,MAAM,CAAC,GAAG,GAAG,IAAI,KAAK,IAAI,UAAU,IAAI,MAAM,SAAS,GAAG,EAAE,CAAC;aAC7D,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,IAAI,aAAa,GAChB,oBAAoB,IAAI,EAAE,QAAkB,YAAY,KAAK,IAAI;YACjE,UAAU,KAAK,UAAU,IAAI,+BAA+B;YAC5D,aAAa,QAAQ,SAAS,UAAU,aAAa,MAAM,GAAG,CAAC;QAEhE,IAAI,MAAM,EAAE,CAAC;YACZ,aAAa,IAAI,YAAY,MAAM,GAAG,CAAC;QACxC,CAAC;QACD,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,WAAW,CAAC,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;QACnD,CAAC;aAAM,CAAC;YACP,WAAW,CAAC,OAAO,GAAG,EAAE,aAAa,EAAE,CAAC;QACzC,CAAC;IACF,CAAC;IACD,OAAO,WAAW,CAAC;AACpB,CAAC;AAEM,KAAK,UAAU,WAAW,CAChC,WAA+B,EAC/B,cAAuC,EAAE;IAEzC,IAAI,CAAC;QACJ,OAAO,MAAM,IAAA,eAAK,EAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAI,WAAW,CAAC,eAAe,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,YAAY,eAAK,CAAC,UAAU,CAAC;YAAE,MAAM,KAAK,CAAC;QAE/F,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAC3B,IAAI,QAAQ,EAAE,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1F,MAAM,KAAK,CAAC;QACb,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,GAAG,WAAW,CAAC;QAC7B,OAAO,WAAW,CAAC,IAAI,CAAC;QACxB,WAAW,GAAG,qBAAqB,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjE,OAAO,MAAM,IAAA,eAAK,EAAC,WAAW,CAAC,CAAC;IACjC,CAAC;AACF,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,IAAc,EAAE,GAAW,EAAE,KAAU,EAAE,EAAE;IACrE,IAAI,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;QACvE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACP,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;AACF,CAAC,CAAC;AAEK,MAAM,oBAAoB,GAAG,CAAC,IAA6B,EAAE,EAAE;IACrE,MAAM,QAAQ,GAAG,IAAI,mBAAQ,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5B,IAAI,SAAS,YAAY,KAAK,EAAE,CAAC;YAChC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC1B,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AACjB,CAAC,CAAC;AAfW,QAAA,oBAAoB,wBAe/B;AAEF,KAAK,UAAU,2BAA2B,CAAC,MAA0B;IACpE,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,YAAY,mBAAQ,CAAC,EAAE,CAAC;QACxC,OAAO;IACR,CAAC;IACD,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACrD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAmB,EAAE,UAAkB,EAAE,EAAE;gBACjE,IAAI,KAAK;oBAAE,GAAG,CAAC,KAAK,CAAC,CAAC;;oBACjB,GAAG,CAAC,UAAU,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,GAAG;YAChB,GAAG,MAAM,CAAC,OAAO;YACjB,gBAAgB,EAAE,MAAM;SACxB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,cAAS,CAAC,GAAG,CAAC,uBAAM,CAAC,CAAC,KAAK,CAAC,sCAAsC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAChF,CAAC;AACF,CAAC;AAUM,KAAK,UAAU,kBAAkB,CAAC,aAA8B,EAAE,UAAuB;IAC/F,MAAM,WAAW,GAAuB,EAAE,CAAC;IAE3C,IAAI,aAAa,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,WAAW,CAAC,OAAO,GAAG,aAAa,CAAC,OAAuB,CAAC;IAC7D,CAAC;IAUD,MAAM,wBAAwB,GAC7B,WAAW,CAAC,OAAO;QACnB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CACpC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,cAAc,CAC3D,CAAC;IACH,MAAM,WAAW,GAChB,wBAAwB;QACvB,WAAW,CAAC,OAAO,EAAE,CAAC,wBAAwB,CAAwB,CAAC;IACzE,IAAI,WAAW,KAAK,mCAAmC,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAKjG,IAAI,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5C,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;QACvC,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE,EAAE,aAAa,CAAC,IAAI,IAAI,EAAE,CAG/E,CAAC;YACF,IAAI,aAAa,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC3C,WAAW,CAAC,IAAI,GAAG,IAAA,cAAS,EAAC,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACP,WAAW,CAAC,IAAI,GAAG,IAAA,cAAS,EAAC,OAAO,CAAC,CAAC;YACvC,CAAC;QACF,CAAC;IACF,CAAC;SAAM,IAAI,WAAW,EAAE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACzD,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,IAAI,aAAa,CAAC,QAAQ,YAAY,mBAAQ,EAAE,CAAC;YACxF,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC;QAC3C,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAsB;gBAClC,GAAI,aAAa,CAAC,IAA2B;gBAC7C,GAAI,aAAa,CAAC,QAA+B;aACjD,CAAC;YAEF,WAAW,CAAC,IAAI,GAAG,IAAA,4BAAoB,EAAC,OAAO,CAAC,CAAC;QAClD,CAAC;QAGD,OAAO,WAAW,CAAC,OAAO,EAAE,CAAC,wBAAyB,CAAC,CAAC;QAExD,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAE9C,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;QACxE,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QAEP,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAE1E,WAAW,CAAC,IAAI;gBACf,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;oBACrC,CAAC,CAAC,IAAA,cAAS,EAAC,aAAa,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;oBACtD,CAAC,CAAC,IAAA,cAAS,EAAC,aAAa,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC7C,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,UAAU,GAAG,eAAe,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;gBAChE,IAAI,UAAU,EAAE,CAAC;oBAChB,OAAO,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBACxC,CAAC;gBACD,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,mCAAmC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACP,WAAW,CAAC,OAAO,GAAG;oBACrB,cAAc,EAAE,mCAAmC;iBACnD,CAAC;YACH,CAAC;QACF,CAAC;aAAM,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAEjD,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACjD,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC1B,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,cAAc,EAAE,CAAC;wBAC7C,OAAO,WAAW,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;oBACtC,CAAC;gBACF,CAAC,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,aAAa,CAAC,QAAQ,YAAY,mBAAQ,EAAE,CAAC;gBAChD,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACP,WAAW,CAAC,IAAI,GAAG,IAAA,4BAAoB,EAAC,aAAa,CAAC,QAAmC,CAAC,CAAC;YAC5F,CAAC;YAGD,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAE9C,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;YACxE,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAE7C,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;gBAG5D,aAAa,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;YAC5E,CAAC;YACD,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,IAAgD,CAAC;QACnF,CAAC;IACF,CAAC;IAED,IAAI,aAAa,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QACrC,WAAW,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,IAAI,aAAa,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QACrC,WAAW,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,IAAI,aAAa,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,WAAW,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC;IACzD,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACxC,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IAC3C,CAAC;IAED,IAAI,aAAa,CAAC,EAAE,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1F,WAAW,CAAC,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC;IACvC,CAAC;IAED,SAAS,qBAAqB,CAC7B,GAAoB;QAEpB,IACC,OAAO,GAAG,CAAC,kBAAkB,KAAK,QAAQ;YAC1C,GAAG,CAAC,kBAAkB,KAAK,IAAI;YAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;YACtC,aAAa,IAAI,GAAG,CAAC,kBAAkB,EACtC,CAAC;YACF,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IACC,aAAa,CAAC,cAAc,KAAK,IAAI;QACrC,CAAC,qBAAqB,CAAC,aAAa,CAAC;YACpC,aAAa,CAAC,kBAAkB,CAAC,WAAW,KAAK,QAAQ,CAAC,EAC1D,CAAC;QACF,WAAW,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;YACzC,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC,CAAC;IACH,CAAC;SAAM,IAAI,aAAa,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QACnD,WAAW,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;YACzC,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QACtD,CAAC,CAAC;IACH,CAAC;IAED,IACC,qBAAqB,CAAC,aAAa,CAAC;QACpC,aAAa,CAAC,kBAAkB,CAAC,WAAW,KAAK,UAAU,EAC1D,CAAC;QACF,WAAW,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;YACzC,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC;IACH,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAEtC,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC7C,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;gBAC9D,aAAa,EAAE,UAAU,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE;aACpD,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC;YAEnC,WAAW,CAAC,IAAI,GAAG;gBAClB,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAW;gBAEtD,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAW;aACtD,CAAC;QACH,CAAC;IACF,CAAC;IAGD,IAAI,aAAa,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAGjC,MAAM,kBAAkB,GACvB,WAAW,CAAC,OAAO,KAAK,SAAS;YAChC,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;iBAC/B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;iBAC3C,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzB,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;gBAC9D,MAAM,EAAE,kBAAkB;aAC1B,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IACD,IAAI,aAAa,CAAC,IAAI,KAAK,KAAK,IAAI,aAAa,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAGtE,WAAW,CAAC,iBAAiB,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC;IAC9C,CAAC;IAGD,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;IACjC,IACC,CAAC,aAAa,CAAC,cAAc,KAAK,KAAK;QACtC,CAAC,CAAC,MAAM,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,CAAC,CAAC;QACpD,aAAa,CAAC,kBAAkB,EAC/B,CAAC;QACF,WAAW,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;IACvD,CAAC;SAAM,CAAC;QACP,WAAW,CAAC,YAAY,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,IAAI,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;IACrD,MAAM,YAAY,GAAiB,EAAE,GAAG,aAAa,CAAC,YAAY,EAAE,CAAC;IACrE,IAAI,IAAI,EAAE,CAAC;QACV,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;IAChC,CAAC;IACD,IAAI,aAAa,CAAC,kBAAkB,KAAK,KAAK,EAAE,CAAC;QAChD,YAAY,CAAC,kBAAkB,GAAG,KAAK,CAAC;QACxC,YAAY,CAAC,aAAa,GAAG,gBAAM,CAAC,SAAS,CAAC,4BAA4B,CAAC;IAC5E,CAAC;IAED,IAAI,aAAa,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACzC,WAAW,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;IAC7C,CAAC;IAED,MAAM,YAAY,GAAG,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACtD,cAAc,CAAC,WAAW,EAAE,YAAY,EAAE,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAE7E,WAAW,CAAC,cAAc,GAAG,mBAAmB,CAC/C,YAAY,EACZ,WAAW,EACX,aAAa,CAAC,KAAK,EACnB,aAAa,CAAC,oCAAoC,IAAI,IAAI,EAC1D,UAAU,CACV,CAAC;IAEF,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;QAC7B,WAAW,CAAC,YAAY,GAAG,QAAQ,CAAC;IACrC,CAAC;SAAM,IAAI,aAAa,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QAE5C,WAAW,CAAC,YAAY,GAAG,aAAa,CAAC;IAC1C,CAAC;IAMD,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC3E,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,IACC,aAAa,CAAC,IAAI,KAAK,KAAK;QAC5B,WAAW,CAAC,IAAI,KAAK,SAAS;QAC9B,WAAW,CAAC,IAAI,KAAK,EAAE;QACvB,CAAC,CAAC,WAAW,CAAC,IAAI,YAAY,MAAM,CAAC;QACrC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,cAAc,CAAC,EAC1E,CAAC;QAMF,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,EAAE;YAC9D,cAAc,EAAE,kBAAkB;SAClC,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,aAAa,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;QACpC,WAAW,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;IACzC,CAAC;IAQD,OAAO,WAAW,CAAC;AACpB,CAAC;AAKM,KAAK,UAAU,mBAAmB,CACxC,QAA8B,EAC9B,cAA0D,EAC1D,IAAuB,EACvB,WAAqC,EACrC,OAAyB;IAEzB,IAAI,WAAW,GAAuB;QACrC,aAAa,EAAE,QAAQ;QACvB,gBAAgB,EAAE,QAAQ;KAC1B,CAAC;IACF,IAAI,YAA6B,CAAC;IAClC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACrC,YAAY,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,OAAO,EAAE,CAAC;IACjD,CAAC;SAAM,CAAC;QACP,YAAY,GAAG,WAAW,IAAI,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,UAAU,GAAG,cAAc,EAAE,UAAU,CAAC;IAC9C,MAAM,GAAG,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAC;IAClD,MAAM,eAAe,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAEvC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,kBAAkB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;IAE7F,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;QACnE,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QACzB,IAAI,IAAI,YAAY,sBAAe,IAAI,WAAW,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9E,IAAA,6CAAoB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACxB,IAAI,GAAG,WAAW,CAAC,YAAY,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjF,CAAC;QACD,MAAM,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9E,OAAO,YAAY,CAAC,uBAAuB;YAC1C,CAAC,CAAC;gBACA,IAAI;gBACJ,OAAO,EAAE,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE;gBAChC,UAAU,EAAE,QAAQ,CAAC,MAAM;gBAC3B,aAAa,EAAE,QAAQ,CAAC,UAAU;gBAClC,OAAO,EAAE,QAAQ,CAAC,OAAO;aACzB;YACF,CAAC,CAAC,IAAI,CAAC;IACT,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QAKnC,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;YACzC,KAAK,CAAC,OAAO,GAAG,IAAA,cAAI,EAAC,MAAM,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;YACzE,IAAI,QAAQ,EAAE,CAAC;gBACd,cAAS,CAAC,GAAG,CAAC,uBAAM,CAAC,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5F,IAAI,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAEjC,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,YAAY,iBAAQ,EAAE,CAAC;oBACvE,YAAY,GAAG,MAAM,IAAA,wCAAc,EAAC,YAAY,CAAC,CAAC;gBACnD,CAAC;gBAED,IAAI,YAAY,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBACnC,IAAI,YAAY,CAAC,uBAAuB,EAAE,CAAC;wBAC1C,OAAO;4BACN,IAAI,EAAE,YAAY;4BAClB,OAAO,EAAE,QAAQ,CAAC,OAAO;4BACzB,UAAU,EAAE,QAAQ,CAAC,MAAM;4BAC3B,aAAa,EAAE,QAAQ,CAAC,UAAU;yBAClC,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACP,OAAO,YAAY,CAAC;oBACrB,CAAC;gBACF,CAAC;gBAED,KAAK,CAAC,OAAO,GAAG,GAAG,QAAQ,CAAC,MAAgB,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjF,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;oBAC1B,UAAU,EAAE,QAAQ,CAAC,MAAM;oBAK3B,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,KAAK,EAAE,YAAY;oBACnB,QAAQ,EAAE,IAAA,cAAI,EAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;iBAC7D,CAAC,CAAC;YACJ,CAAC;iBAAM,IAAI,oBAAoB,IAAI,YAAY,IAAI,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjF,MAAM,IAAI,2BAAY,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;QACF,CAAC;QAED,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAgB,wBAAwB,CACvC,UAA+B,EAC/B,UAAuB;IAGvB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC;IAElE,MAAM,YAAY,GAAuB;QACxC,OAAO,EAAE,OAAO,IAAI,EAAE;QACtB,MAAM;QACN,OAAO;QACP,IAAI;QACJ,GAAG;QACH,aAAa,EAAE,QAAQ;QACvB,gBAAgB,EAAE,QAAQ;KACJ,CAAC;IAExB,YAAY,CAAC,MAAM,GAAG,UAAU,CAAC,EAAE,CAAC;IAEpC,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC;QAC5B,YAAY,CAAC,MAAM,GAAG,UAAU,CAAC,WAAW,CAAC;IAC9C,CAAC;IAED,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACtC,YAAY,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;IAC3C,CAAC;IAED,IAAI,UAAU,CAAC,qBAAqB,KAAK,IAAI,EAAE,CAAC;QAC/C,YAAY,CAAC,YAAY,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACvC,YAAY,CAAC,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAClD,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,IAAI,IAAI,EAAE,CAAC;QACV,YAAY,CAAC,UAAU,GAAG,IAAI,CAAC;IAChC,CAAC;IACD,IAAI,UAAU,CAAC,4BAA4B,KAAK,IAAI,EAAE,CAAC;QACtD,YAAY,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACzC,CAAC;IACD,MAAM,YAAY,GAAG,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACtD,cAAc,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAEhE,YAAY,CAAC,cAAc,GAAG,mBAAmB,CAChD,YAAY,EACZ,YAAY,EACZ,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,oCAAoC,IAAI,IAAI,EACvD,UAAU,CACV,CAAC;IAEF,IAAI,UAAU,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QAC1C,YAAY,CAAC,gBAAgB,GAAG,CAAC,MAAM,EAAE,EAAE;YAC1C,OAAO,IAAA,cAAS,EAAC,MAAM,EAAE,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC;IACH,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;IAC5B,IAAI,IAAI,EAAE,CAAC;QAEV,MAAM,4BAA4B,GAAG,eAAe,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QACnF,IAAI,4BAA4B,KAAK,SAAS,EAAE,CAAC;YAChD,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC;YAGlD,IAAI,IAAI,YAAY,mBAAQ,EAAE,CAAC;gBAC9B,YAAY,CAAC,OAAO,GAAG;oBACtB,GAAG,YAAY,CAAC,OAAO;oBACvB,GAAG,IAAI,CAAC,UAAU,EAAE;iBACpB,CAAC;YACH,CAAC;iBAAM,IAAI,IAAI,YAAY,eAAe,EAAE,CAAC;gBAC5C,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,mCAAmC,CAAC;YAC5E,CAAC;QACF,CAAC;aAAM,IACN,YAAY,CAAC,OAAO,EAAE,CAAC,4BAA4B,CAAC,KAAK,mCAAmC,EAC3F,CAAC;YACF,YAAY,CAAC,IAAI,GAAG,IAAI,eAAe,CAAC,UAAU,CAAC,IAA8B,CAAC,CAAC;QACpF,CAAC;QAID,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAA,4BAAa,EAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACpF,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1B,CAAC;IACF,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QACrB,MAAM,GAAG,GAAG,eAAe,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAGpD,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,YAAY,CAAC,OAAO,GAAG;gBACtB,GAAG,YAAY,CAAC,OAAO;gBACvB,MAAM,EAAE,kBAAkB;aAC1B,CAAC;QACH,CAAC;IACF,CAAC;IAED,MAAM,eAAe,GAAG,eAAe,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAGpE,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,YAAY,CAAC,OAAO,GAAG;YACtB,GAAG,YAAY,CAAC,OAAO;YACvB,YAAY,EAAE,KAAK;SACnB,CAAC;IACH,CAAC;IAED,IAAI,UAAU,CAAC,sBAAsB,EAAE,CAAC;QACvC,MAAM,sBAAsB,GAAG,UAAU,CAAC,sBAAsB,CAAC;QACjE,IAAI,yBAAyB,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACvD,YAAY,CAAC,cAAc,GAAG,CAAC,MAAM,EAAE,EAAE;gBACxC,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACxD,CAAC,CAAC;QACH,CAAC;aAAM,CAAC;YACP,YAAY,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC;QAC1C,CAAC;IACF,CAAC;IAED,OAAO,YAAY,CAAC;AACrB,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC/B,IAAI,CAAC;QACJ,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAGD,KAAK,UAAU,eAAe,CAAC,GAAuB,EAAE,UAAuB;IAC9E,IAAI,CAAC,UAAU,IAAI,CAAC,GAAG;QAAE,OAAO;IAEhC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM;QAAE,OAAO;IAEpB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,MAAM,CAAC,KAAK,CAAC;IACpB,CAAC;AACF,CAAC;AAED,SAAS,uBAAuB,CAAC,aAA8B;IAC9D,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC;IAC9E,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC;IAClD,OAAO,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC;AAClD,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAG9C,MAAM,eAAe,GAAG,CAAC,cAAqD,EAAE,EAAE;IACxF,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,IAAI,KAAK,CAAC;IAC9C,IAAI,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAA,iBAAO,EAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;QACxE,OAAO,cAAc,CAAC,IAAI,CAAC;IAC5B,CAAC;AACF,CAAC,CAAC;AALW,QAAA,eAAe,mBAK1B;AAEK,KAAK,UAAU,WAAW,CAChC,cAAmC,EACnC,UAAuB;IAEvB,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC;IAC7F,MAAM,eAAe,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAEvC,MAAM,YAAY,GAAG,wBAAwB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAC1E,IACC,YAAY,CAAC,IAAI,KAAK,SAAS;QAC/B,CAAC,YAAY,CAAC,MAAM,KAAK,SAAS,IAAI,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EACjF,CAAC;QACF,OAAO,YAAY,CAAC,IAAI,CAAC;IAC1B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;IAEpE,IAAI,cAAc,CAAC,kBAAkB,EAAE,CAAC;QACvC,OAAO;YACN,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,MAAM;YACzB,aAAa,EAAE,MAAM,CAAC,UAAU;SAChC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,SAAgB,0BAA0B,CACzC,WAA4B,EAC5B,qBAAmD;IAEnD,MAAM,sBAAsB,GAA6B;QACxD,GAAG,qBAAqB;QACxB,GAAG,EAAE,qBAAqB,CAAC,GAAG;KAC9B,CAAC;IAEF,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;QAC/B,sBAAsB,CAAC,QAAQ,GAAG,qBAAqB,CAAC,IAAI,CAAC;QAC7D,OAAO,sBAAsB,CAAC,IAAI,CAAC;IACpC,CAAC;SAAM,IAAI,MAAM,IAAI,WAAW,EAAE,CAAC;QAClC,sBAAsB,CAAC,IAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC;QACzD,OAAO,sBAAsB,CAAC,IAAI,CAAC;IACpC,CAAC;IAED,OAAO,IAAA,eAAK,EAAC,EAAE,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,kBAAkB,CAAC,WAAiC;IAC5D,OAAO,IAAI,4BAAY,CAAC;QACvB,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,YAAY,EAAE,WAAW,CAAC,YAAY;QACtC,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;QAC5C,eAAe,EAAE,WAAW,CAAC,eAAe;QAC5C,cAAc,EAAE,WAAW,CAAC,cAAc,IAAI,QAAQ;QACtD,GAAG,CAAC,WAAW,CAAC,wBAAwB,IAAI;YAC3C,wBAAwB,EAAE,IAAA,wBAAS,EAAC,WAAW,CAAC,wBAAwB,EAAE;gBACzE,aAAa,EAAE,EAAE;aACjB,CAAC;SACF,CAAC;KACF,CAAC,CAAC;AACJ,CAAC;AAYD,KAAK,UAAU,mBAAmB,CAAC,GAA8B;IAChE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IACjG,MAAM,mBAAmB,GAAgB,EAAE,CAAC;IAC5C,IAAI,aAAa,EAAE,iCAAiC,EAAE,CAAC;QACtD,MAAM,IAAI,GAAgB;YACzB,SAAS,EAAE,WAAW,CAAC,QAAQ;YAC/B,GAAG,CAAC,WAAW,CAAC,SAAS,KAAK,mBAAmB,IAAI;gBACpD,aAAa,EAAE,WAAW,CAAC,YAAsB;aACjD,CAAC;SACF,CAAC;QACF,mBAAmB,CAAC,IAAI,GAAG,IAAI,CAAC;QAChC,mBAAmB,CAAC,OAAO,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;IACrD,CAAC;IAED,MAAM,CAAC,KAAK,CACX,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,0BAA0B,CAC1F,CAAC;IAEF,IAAI,QAAQ,CAAC;IACb,IAAI,WAAW,CAAC,SAAS,KAAK,mBAAmB,EAAE,CAAC;QACnD,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IACtD,CAAC;SAAM,CAAC;QACP,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,mBAAqD,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,CAAC,KAAK,CACX,qBAAqB,eAAe,mBAAmB,IAAI,CAAC,IAAI,qBAAqB,CACrF,CAAC;IAEF,WAAW,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,+BAAgB,CAAC,oCAAoC,EAAE;YAChE,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE;SAC/D,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IAC1D,MAAM,cAAc,CAAC,iBAAiB,CAAC,+BAA+B,CACrE,eAAe,EACf,eAAe,EACf,WAAwD,EACxD,cAAc,CACd,CAAC;IAEF,OAAO,QAAQ,CAAC;AACjB,CAAC;AAED,SAAS,6BAA6B,CACrC,aAA8B,EAC9B,WAAkC;IAElC,OAAO,WAAW,EAAE,sBAAsB,IAAI,aAAa,EAAE,sBAAsB,IAAI,GAAG,CAAC;AAC5F,CAAC;AAGM,KAAK,UAAU,aAAa,CAElC,eAAuB,EACvB,cAAqD,EACrD,IAAW,EACX,cAA8C,EAC9C,aAA8B,EAC9B,YAAY,GAAG,KAAK;IAEpB,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAEhC,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAC7C,eAAe,CACf,CAAoC,CAAC;IAGtC,IAAI,WAAW,CAAC,SAAS,KAAK,mBAAmB,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC/F,MAAM,IAAI,+BAAgB,CAAC,iCAAiC,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAEpD,IAAI,cAAc,GAAG,WAAW,CAAC,cAAuC,CAAC;IAEzE,IACC,WAAW,CAAC,SAAS,KAAK,mBAAmB;QAC7C,CAAC,cAAc,KAAK,SAAS;YAC5B,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,KAAK,CAAC;YACxC,cAAc,CAAC,YAAY,KAAK,EAAE,CAAC,EACnC,CAAC;QACF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QAE1D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,+BAAgB,CAAC,oCAAoC,EAAE;gBAChE,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE;gBAC9B,IAAI,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE;aACzC,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QAC1D,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC;QAGlC,MAAM,cAAc,CAAC,iBAAiB,CAAC,+BAA+B,CACrE,eAAe,EACf,eAAe,EACf,WAAwD,EACxD,cAAc,CACd,CAAC;QAEF,cAAc,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,MAAM,WAAW,GAChB,IAAA,aAAG,EAAC,cAAc,EAAE,aAAa,EAAE,QAAkB,CAAC,IAAI,cAAc,CAAC,WAAW,CAAC;IACtF,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;IACjD,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,CACpC;QACC,GAAG,cAAc;QACjB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,EACD,aAAa,EAAE,SAAS,IAAI,cAAc,CAAC,SAAS,CACpD,CAAC;IAED,cAAkC,CAAC,kBAAkB,GAAG,CAAC,WAAW,CAAC,eAAe,CAAC;IAItF,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,cAA2C,CAAC,CAAC;IAClF,MAAM,iBAAiB,GAAG,CAAC,iBAAiB,CAAC,OAAO,GAAG,iBAAiB,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAExF,IAAI,aAAa,EAAE,UAAU,KAAK,KAAK,IAAI,OAAO,iBAAiB,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;QAChG,iBAAiB,CAAC,aAAa,GAAG,iBAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,aAAa,EAAE,+BAA+B,EAAE,CAAC;QACpD,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE;YAChC,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,KAAK,CAAC,WAAW;SAClE,CAAC,CAAC;IACJ,CAAC;IACD,MAAM,sBAAsB,GAAG,6BAA6B,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IAEzF,MAAM,UAAU,GAA8B;QAC7C,WAAW;QACX,KAAK;QACL,eAAe;QACf,IAAI;QACJ,cAAc;QACd,aAAa;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;KACnB,CAAC;IAEF,MAAM,iBAAiB,GAAG,KAAK,EAC9B,WAA8D,EAC7D,EAAE;QACH,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,uBAAuB,GAAG,QAAQ,CAAC,IAAI,CAAC,cAA2C,CAAC,CAAC;QAC3F,uBAAuB,CAAC,OAAO,GAAG,uBAAuB,CAAC,OAAO,IAAI,EAAE,CAAC;QACxE,IAAI,aAAa,EAAE,+BAA+B,EAAE,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,OAAO,EAAE;gBAC9C,CAAC,aAAa,CAAC,+BAA+B,CAAC,EAAE,QAAQ,CAAC,WAAW;aACrE,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,WAAW,CAAC,uBAAuB,CAAC,CAAC;IACnD,CAAC,CAAC;IAEF,IAAI,YAAY,EAAE,CAAC;QAClB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,KAAiB,EAAE,EAAE;YAC1F,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,sBAAsB,EAAE,CAAC;gBACvD,OAAO,MAAM,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;YACtF,CAAC;YACD,MAAM,KAAK,CAAC;QACb,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,IAAI,CAAC,OAAO;SACvB,OAAO,CAAC,iBAAoC,CAAC;SAC7C,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QAClB,MAAM,cAAc,GAAG,iBAAwB,CAAC;QAChD,IACC,cAAc,CAAC,uBAAuB,KAAK,IAAI;YAC/C,cAAc,CAAC,MAAM,KAAK,KAAK;YAC/B,QAAQ,CAAC,UAAU,KAAK,sBAAsB,EAC7C,CAAC;YACF,MAAM,QAAQ,CAAC;QAChB,CAAC;QACD,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;SACD,KAAK,CAAC,KAAK,EAAE,KAAqB,EAAE,EAAE;QACtC,IAAI,KAAK,CAAC,UAAU,KAAK,sBAAsB,EAAE,CAAC;YACjD,OAAO,MAAM,iBAAiB,CAC7B,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAuB,CAAC,CACnE,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC;AAGM,KAAK,UAAU,aAAa,CAElC,eAAuB,EACvB,cAAqD,EACrD,YAAY,GAAG,KAAK;IAEpB,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAEhC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IAE/D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,+BAAgB,CAAC,8BAA8B,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC9C,MAAM,IAAI,+BAAgB,CAAC,iCAAiC,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,oBAAY,CAAC;QAC9B,QAAQ,EAAE;YACT,GAAG,EAAE,WAAW,CAAC,WAAqB;YACtC,MAAM,EAAE,WAAW,CAAC,cAAwB;SAC5C;QACD,gBAAgB,EAAE,WAAW,CAAC,eAAyB;QACvD,aAAa,CAAC,IAAI,EAAE,GAAG;YACtB,IAAI,SAAiB,CAAC;YACtB,QAAQ,WAAW,CAAC,eAAe,EAAE,CAAC;gBACrC,KAAK,aAAa;oBACjB,SAAS,GAAG,QAAQ,CAAC;oBACrB,MAAM;gBACP,KAAK,aAAa;oBACjB,SAAS,GAAG,QAAQ,CAAC;oBACrB,MAAM;gBACP;oBACC,SAAS,GAAG,MAAM,CAAC;oBACnB,MAAM;YACR,CAAC;YACD,OAAO,IAAA,mBAAU,EAAC,SAAS,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjE,CAAC;KACD,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,WAAW,CAAC,cAA6B,CAAC;IAEjE,MAAM,KAAK,GAAU;QACpB,GAAG,EAAE,cAAc,CAAC,WAAqB;QACzC,MAAM,EAAE,cAAc,CAAC,kBAA4B;KACnD,CAAC;IAGF,cAAc,CAAC,IAAI,GAAG,EAAE,GAAG,cAAc,CAAC,EAAE,EAAE,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;IAGvE,IAAI,KAAK,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QACpD,cAAc,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC;QACxC,OAAO,cAAc,CAAC,GAAG,CAAC;IAC3B,CAAC;IAED,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,CACtC,KAAK,CAAC,SAAS,CAAC,cAAwD,EAAE,KAAK,CAAC,CAC3C,CAAC;IACvC,IAAI,YAAY,EAAE,CAAC;QAClB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,cAAqC,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,MAAM,IAAI,CAAC,OAAO;SACvB,OAAO,CAAC,cAAiC,CAAC;SAC1C,KAAK,CAAC,KAAK,EAAE,KAAqB,EAAE,EAAE;QAEtC,MAAM,KAAK,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,kBAAkB,CAEvC,eAAuB,EACvB,IAAW,EACX,cAA8C,EAC9C,aAA8B;IAE9B,MAAM,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,cAAc,CAC7C,eAAe,CACf,CAAoC,CAAC;IACtC,IAAI,WAAW,CAAC,SAAS,KAAK,mBAAmB,IAAI,WAAW,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QAC/F,MAAM,IAAI,+BAAgB,CAAC,iCAAiC,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,WAAW,CAAC,cAAuC,CAAC;IAC3E,MAAM,WAAW,GAChB,IAAA,aAAG,EAAC,cAAc,EAAE,aAAa,EAAE,QAAkB,CAAC,IAAI,cAAc,CAAC,WAAW,CAAC;IACtF,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;IACjD,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,CACpC;QACC,GAAG,cAAc;QACjB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,EACD,aAAa,EAAE,SAAS,IAAI,cAAc,CAAC,SAAS,CACpD,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC;QAC1C,WAAW;QACX,KAAK;QACL,eAAe;QACf,IAAI;QACJ,cAAc;QACd,aAAa;QACb,MAAM,EAAE,IAAI,CAAC,MAAM;KACnB,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;AACtB,CAAC;AAEM,KAAK,UAAU,6BAA6B,CAElD,eAAuB,EACvB,cAAmC,EACnC,QAAkB,EAClB,IAAW,EACX,cAA8C,EAC9C,2BAA0D;IAE1D,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAGhC,IAAI,0BAA0B,IAAI,IAAI,EAAE,CAAC;QACxC,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAC9D,CAAC;IAED,IAAI,oBAAgE,CAAC;IACrE,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAErF,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,OAAO,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,OAAO,MAAM,aAAa,CAAC,IAAI,CAC9B,IAAI,EACJ,eAAe,EACf,cAAc,EACd,IAAI,EACJ,cAAc,EACd,2BAA2B,EAAE,MAAM,EACnC,IAAI,CACJ,CAAC;QACH,CAAC;QAED,IAAI,2BAA2B,EAAE,oBAAoB,EAAE,CAAC;YACvD,oBAAoB,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,IAAI,CAAC;QAC9E,CAAC;aAAM,CAAC;YACP,oBAAoB;gBACnB,MAAM,IAAI,CAAC,cAAc,CAAiC,eAAe,CAAC,CAAC;QAC7E,CAAC;QAED,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,IAAI,iCAAkB,CAC3B,IAAI,EACJ,SAAS,IAAI,CAAC,IAAI,4CAA4C,eAAe,OAAO,EACpF,EAAE,KAAK,EAAE,SAAS,EAAE,CACpB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,CACpE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EACzB,oBAAoB,EACpB,eAAe,EACf,IAAI,EACJ,KAAK,CACL,CAAC;QAEF,IAAI,IAAI,EAAE,CAAC;YAGV,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QAED,cAAc,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,YAAY,CACnE,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,QAAQ,EACR,IAAI,CACJ,CAAC;QACF,OAAO,MAAM,WAAW,CAAC,cAAc,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAGhB,IACC,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG;YAC9B,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,KAAK,SAAS,EAC/D,CAAC;YACF,IAAI,CAAC;gBACJ,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;oBAExC,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,CACpE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EACzB,oBAAoB,EACpB,eAAe,EACf,IAAI,EACJ,IAAI,CACJ,CAAC;oBAEF,IAAI,IAAI,EAAE,CAAC;wBAGV,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;oBAC3C,CAAC;oBAED,cAAc,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,YAAY,CACnE,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,QAAQ,EACR,IAAI,CACJ,CAAC;gBACH,CAAC;gBAED,OAAO,MAAM,WAAW,CAAC,cAAc,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,MAAM,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;QAED,MAAM,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;AACF,CAAC;AAGM,KAAK,UAAU,yBAAyB,CAE9C,eAAuB,EACvB,cAA+B,EAC/B,QAAkB,EAClB,IAAW,EACX,cAA8C,EAC9C,2BAA0D,EAC1D,SAAkB;IAElB,IAAA,uBAAe,EAAC,cAAc,CAAC,CAAC;IAEhC,IAAI,oBAAgE,CAAC;IAErE,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,cAAc,CAAC,iBAAiB,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAErF,IAAI,eAAe,KAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1E,OAAO,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,eAAe,KAAK,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1E,OAAO,MAAM,aAAa,CAAC,IAAI,CAC9B,IAAI,EACJ,eAAe,EACf,cAAc,EACd,IAAI,EACJ,cAAc,EACd,2BAA2B,EAAE,MAAM,EACnC,KAAK,CACL,CAAC;QACH,CAAC;QAED,IAAI,2BAA2B,EAAE,oBAAoB,EAAE,CAAC;YACvD,oBAAoB,GAAG,2BAA2B,CAAC,oBAAoB,CAAC,IAAI,CAAC;QAC9E,CAAC;aAAM,CAAC;YACP,oBAAoB,GAAG,MAAM,IAAI,CAAC,cAAc,CAC/C,eAAe,EACf,SAAS,CACT,CAAC;QACH,CAAC;QAED,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,IAAI,iCAAkB,CAC3B,IAAI,EACJ,SAAS,IAAI,CAAC,IAAI,4CAA4C,eAAe,OAAO,EACpF,EAAE,KAAK,EAAE,SAAS,EAAE,CACpB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,CACpE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EACzB,oBAAoB,EACpB,eAAe,EACf,IAAI,EACJ,KAAK,CACL,CAAC;QAEF,IAAI,IAAI,EAAE,CAAC;YAGV,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QAED,cAAc,GAAG,CAAC,MAAM,cAAc,CAAC,iBAAiB,CAAC,YAAY,CACpE,oBAAoB,EACpB,eAAe,EACf,cAAqC,EACrC,QAAQ,EACR,IAAI,CACJ,CAAoB,CAAC;QACtB,OAAO,MAAM,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;IAClF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAI,CAAC;YACJ,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBAExC,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,iBAAiB,CAAC,iBAAiB,CACpE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EACzB,oBAAoB,EACpB,eAAe,EACf,IAAI,EACJ,IAAI,CACJ,CAAC;gBAEF,IAAI,IAAI,EAAE,CAAC;oBAGV,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;oBAC1C,cAAc,GAAG,CAAC,MAAM,cAAc,CAAC,iBAAiB,CAAC,YAAY,CACpE,oBAAoB,EACpB,eAAe,EACf,cAAqC,EACrC,QAAQ,EACR,IAAI,CACJ,CAAoB,CAAC;oBAEtB,OAAO,MAAM,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;gBAClF,CAAC;YACF,CAAC;YACD,MAAM,KAAK,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,KAAK,YAAY,iCAAkB;gBAAE,MAAM,KAAK,CAAC;YAErD,MAAM,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACF,CAAC;AACF,CAAC;AAEM,MAAM,yBAAyB,GAAG,CACxC,QAAkB,EAClB,IAAW,EACX,cAA8C,EAC9C,mBAA6C,IAAI,EACjD,sBAA4C,EAAE,EACrB,EAAE;IAC3B,MAAM,gBAAgB,GAAG,CACxB,cAAsC,EACtC,SAAiB,EACjB,QAAgB,EAChB,WAAyB,EACzB,cAAiD,EACjD,oBAAoB,GAAG,KAAK,EACH,EAAE;QAC3B,MAAM,IAAI,GAAwB,UAAU,CAAC;QAE7C,IACC,OAAO,cAAc,KAAK,QAAQ;YAClC,CAAC,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EACvE,CAAC;YACF,OAAO,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAC3C,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,IAAI,CAAC,IAAI,EACT,mBAAmB,EACnB,IAAI,EACJ,cAAc,IAAI,EAAE,EACpB,WAAW,EACX,oBAAoB,CACpB,CAAC;QACH,CAAC;QAED,OAAO,cAAc,CAAC;IACvB,CAAC,CAAC;IAGF,KAAK,UAAU,kCAAkC,CAEhD,cAA+B,EAC/B,SAAiB,EACjB,iBAAoC,EACpC,eAAwB,EACxB,2BAA0D;QAE1D,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YACxB,cAAc,CAAC,EAAE,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,cAAc,CAAC,uBAAuB,GAAG,IAAI,CAAC;QAC9C,cAAc,CAAC,MAAM,GAAG,KAAK,CAAC;QAE9B,IAAI,gBAAsC,CAAC;QAC3C,IAAI,qBAA8B,CAAC;QACnC,IAAI,mBAAiD,CAAC;QAEtD,MAAM,QAAQ,GAAG,CAAC,CAAC;QAEnB,MAAM,cAAc,GAAqC;YACxD,QAAQ,EAAE,cAAc;YACxB,SAAS,EAAE,EAA0B;YACrC,QAAQ,EAAE,IAAI,CAAC,WAAW;YAC1B,UAAU,EAAE,CAAC;SACb,CAAC;QAEF,MAAM,WAAW,GAAiB;YACjC,IAAI,EAAE,EAAE;YACR,IAAI;YACJ,MAAM,EAAE,IAAI;SACZ,CAAC;QAEF,MAAM,QAAQ,GAAG;YAChB,cAAc,EAAE,CAAC;YACjB,cAAc,EAAE,CAAC;YACjB,YAAY,EAAE,EAAE;SAChB,CAAC;QACF,GAAG,CAAC;YACH,mBAAmB,GAAG,gBAAgB,CACrC,iBAAiB,CAAC,OAA4C,EAC9D,SAAS,EACT,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,CACqC,CAAC;YAE5C,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;YAE3F,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAa,CAAC,EAAE,CAAC;gBACpD,MAAM,IAAI,iCAAkB,CAAC,IAAI,EAAE,IAAI,mBAAmB,CAAC,GAAG,uBAAuB,EAAE;oBACtF,SAAS;oBACT,QAAQ;oBACR,IAAI,EAAE,aAAa;iBACnB,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,eAAe,EAAE,CAAC;gBACrB,gBAAgB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CACnE,IAAI,EACJ,eAAe,EACf,kBAAkB,EAClB,2BAA2B,CAC3B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,gBAAgB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YACnE,CAAC;YAED,MAAM,WAAW,GAAyB,MAAM,CAAC,MAAM,CACtD;gBACC,IAAI,EAAE,EAAE;gBACR,OAAO,EAAE,EAAE;gBACX,UAAU,EAAE,CAAC;aACb,EACD,IAAA,cAAI,EAAC,gBAAgB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CACzD,CAAC;YAEF,IAAI,WAA8C,CAAC;YAEnD,IAAI,WAAW,CAAC,IAAI,YAAY,iBAAQ,IAAI,iBAAiB,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gBAErF,WAAW,GAAG,MAAM,IAAA,wCAAc,EAAC,WAAW,CAAC,IAAyB,CAAC,CAAC;gBAE1E,MAAM,mBAAmB,GAAG,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gBAClF,IAAI,mBAAmB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;oBACtD,WAAW,CAAC,IAAI,GAAG,IAAA,wBAAS,EAAC,WAAW,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClE,CAAC;qBAAM,CAAC;oBACP,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC;gBAChC,CAAC;gBACD,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC;gBACvC,gBAAgB,CAAC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACP,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC;YAChC,CAAC;YAED,IAAI,iBAAiB,CAAC,YAAY,KAAK,IAAI,IAAI,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAI9E,IAAI,aAAa,GAAG,CAAC,CAAC;gBACtB,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;oBAClD,aAAa,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,gBAAgB,CAAW,CAAC,IAAI,CAAC,CAAC;gBACrF,CAAC;gBAED,IAAI,QAAQ,CAAC,cAAc,KAAK,aAAa,EAAE,CAAC;oBAC/C,IAAI,IAAY,CAAC;oBACjB,IAAI,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;wBAEnC,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,IAAc,CAAC;oBAChD,CAAC;yBAAM,CAAC;wBAEP,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;4BACrC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wBAC3C,CAAC;wBACD,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACtE,CAAC;oBAED,IAAI,QAAQ,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;wBACpC,QAAQ,CAAC,cAAc,IAAI,CAAC,CAAC;wBAC7B,IAAI,QAAQ,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;4BAEjC,MAAM,IAAI,iCAAkB,CAC3B,IAAI,EACJ,iEAAiE,EACjE;gCACC,SAAS;gCACT,WAAW,EACV,qEAAqE;6BACtE,CACD,CAAC;wBACH,CAAC;oBACF,CAAC;yBAAM,CAAC;wBACP,QAAQ,CAAC,cAAc,GAAG,CAAC,CAAC;oBAC7B,CAAC;oBACD,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;gBAC9B,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,cAAc,GAAG,CAAC,CAAC;gBAC7B,CAAC;gBACD,QAAQ,CAAC,cAAc,GAAG,aAAa,CAAC;YACzC,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAEpC,cAAc,CAAC,SAAS,GAAG,WAAW,CAAC;YACvC,cAAc,CAAC,UAAU,GAAG,CAAC,cAAc,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YAEjE,MAAM,WAAW,GAAG,gBAAgB,CACnC,iBAAiB,CAAC,WAAW,EAC7B,SAAS,EACT,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,CACK,CAAC;YAEZ,IAAI,WAAW,IAAI,cAAc,CAAC,UAAU,IAAI,WAAW,EAAE,CAAC;gBAC7D,MAAM;YACP,CAAC;YAED,qBAAqB,GAAG,gBAAgB,CACvC,iBAAiB,CAAC,QAAQ,EAC1B,SAAS,EACT,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,CACM,CAAC;YAEb,IAAI,qBAAqB,EAAE,CAAC;gBAC3B,IAAI,iBAAiB,CAAC,eAAe,EAAE,CAAC;oBACvC,MAAM,eAAe,GAAG,gBAAgB,CACvC,iBAAiB,CAAC,eAAe,EACjC,SAAS,EACT,QAAQ,EACR,WAAW,EACX,cAAc,EACd,KAAK,CACK,CAAC;oBAEZ,MAAM,IAAA,oBAAK,EAAC,eAAe,CAAC,CAAC;gBAC9B,CAAC;gBACD,IAAI,gBAAgB,CAAC,UAAU,GAAG,GAAG,IAAI,gBAAgB,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC;oBAK7E,IAAI,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC;oBACjC,IAAI,IAAI,YAAY,iBAAQ,IAAI,iBAAiB,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;wBACzE,IAAI,GAAG,MAAM,IAAA,wCAAc,EAAC,IAAyB,CAAC,CAAC;oBACxD,CAAC;yBAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACrC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;oBAC7B,CAAC;oBAED,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,gBAAgB,CAAC,UAAU,OAAO,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE;wBACxF,UAAU,EAAE,gBAAgB,CAAC,UAAU;wBACvC,KAAK,EAAE,IAAI;wBACX,YAAY,EAAE,IAAI;wBAClB,QAAQ,EAAE;4BACT,OAAO,EAAE,gBAAgB,CAAC,OAAO;4BACjC,MAAM,EAAE,gBAAgB,CAAC,UAAU;4BACnC,UAAU,EAAE,gBAAgB,CAAC,aAAa;yBAC1C;qBACD,CAAC,CAAC;gBACJ,CAAC;YACF,CAAC;QACF,CAAC,QAAQ,qBAAqB,EAAE;QAEhC,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,OAAO;QACN,WAAW,EAAE,KAAK,EAAE,cAAmC,EAAE,EAAE,CAC1D,MAAM,WAAW,CAAC,cAAc,EAAE,cAAc,CAAC,UAAU,CAAC;QAC7D,kCAAkC;QAClC,KAAK,CAAC,6BAA6B,CAElC,eAAe,EACf,cAAc,EACd,2BAA2B;YAE3B,OAAO,MAAM,6BAA6B,CAAC,IAAI,CAC9C,IAAI,EACJ,eAAe,EACf,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,cAAc,EACd,2BAA2B,CAC3B,CAAC;QACH,CAAC;QAED,KAAK,CAAC,kBAAkB,CAEvB,eAAuB,EACvB,aAA8B;YAE9B,OAAO,MAAM,kBAAkB,CAAC,IAAI,CACnC,IAAI,EACJ,eAAe,EACf,IAAI,EACJ,cAAc,EACd,aAAa,CACb,CAAC;QACH,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,CACvC,MAAM,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC;QAEhF,KAAK,CAAC,yBAAyB,CAE9B,eAAe,EACf,cAAc,EACd,2BAA2B,EAC3B,SAAS;YAET,OAAO,MAAM,yBAAyB,CAAC,IAAI,CAC1C,IAAI,EACJ,eAAe,EACf,cAAc,EACd,QAAQ,EACR,IAAI,EACJ,cAAc,EACd,2BAA2B,EAC3B,SAAS,CACT,CAAC;QACH,CAAC;QAED,KAAK,CAAC,aAAa,CAElB,eAAuB,EACvB,cAA+B;YAE/B,OAAO,MAAM,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;QACxE,CAAC;QAED,KAAK,CAAC,aAAa,CAElB,eAAuB,EACvB,cAA+B,EAC/B,aAA8B;YAE9B,OAAO,MAAM,aAAa,CAAC,IAAI,CAC9B,IAAI,EACJ,eAAe,EACf,cAAc,EACd,IAAI,EACJ,cAAc,EACd,aAAa,CACb,CAAC;QACH,CAAC;KACD,CAAC;AACH,CAAC,CAAC;AA5UW,QAAA,yBAAyB,6BA4UpC"}
@@ -8,7 +8,7 @@ const isWebhookHtmlSandboxingDisabled = () => {
8
8
  };
9
9
  exports.isWebhookHtmlSandboxingDisabled = isWebhookHtmlSandboxingDisabled;
10
10
  const getWebhookSandboxCSP = () => {
11
- return 'sandbox allow-downloads allow-forms allow-modals allow-orientation-lock allow-pointer-lock allow-popups allow-presentation allow-scripts allow-top-navigation allow-top-navigation-by-user-activation allow-top-navigation-to-custom-protocols';
11
+ return 'sandbox allow-downloads allow-forms allow-modals allow-orientation-lock allow-pointer-lock allow-popups allow-presentation allow-scripts allow-top-navigation-by-user-activation allow-top-navigation-to-custom-protocols';
12
12
  };
13
13
  exports.getWebhookSandboxCSP = getWebhookSandboxCSP;
14
14
  //# sourceMappingURL=html-sandbox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"html-sandbox.js","sourceRoot":"","sources":["../src/html-sandbox.ts"],"names":[],"mappings":";;;AAAA,wCAA6C;AAC7C,gCAAoC;AAE7B,MAAM,+BAA+B,GAAG,GAAG,EAAE;IACnD,OAAO,cAAS,CAAC,GAAG,CAAC,uBAAc,CAAC,CAAC,4BAA4B,CAAC;AACnE,CAAC,CAAC;AAFW,QAAA,+BAA+B,mCAE1C;AAKK,MAAM,oBAAoB,GAAG,GAAW,EAAE;IAChD,OAAO,gPAAgP,CAAC;AACzP,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B"}
1
+ {"version":3,"file":"html-sandbox.js","sourceRoot":"","sources":["../src/html-sandbox.ts"],"names":[],"mappings":";;;AAAA,wCAA6C;AAC7C,gCAAoC;AAE7B,MAAM,+BAA+B,GAAG,GAAG,EAAE;IACnD,OAAO,cAAS,CAAC,GAAG,CAAC,uBAAc,CAAC,CAAC,4BAA4B,CAAC;AACnE,CAAC,CAAC;AAFW,QAAA,+BAA+B,mCAE1C;AAKK,MAAM,oBAAoB,GAAG,GAAW,EAAE;IAChD,OAAO,2NAA2N,CAAC;AACpO,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B"}