@arcblock/did-connect-js 4.1.37 → 4.1.38

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.
@@ -1,9 +1,11 @@
1
+ import type { LocaleCode } from '@arcblock/did-connect-core';
1
2
  import * as Jwt from '@arcblock/jwt';
2
3
  export declare const DEFAULT_CHAIN_INFO: {
3
4
  id: string;
4
5
  host: string;
5
6
  type: string;
6
7
  };
8
+ export declare function verifyErrorCatalog(fieldPk: string, fieldInfo: string): Record<string, Record<LocaleCode, string>>;
7
9
  declare class BaseAuthenticator {
8
10
  _validateWallet(wallet: any, canSign?: boolean): any;
9
11
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/authenticator/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AAMrC,eAAO,MAAM,kBAAkB;;;;CAAiD,CAAC;AAEjF,cAAM,iBAAiB;IACrB,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,UAAO;IAiD3C;;;;;;;;OAQG;IACG,OAAO,CACX,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,SAAO,EACb,gBAAgB,UAAO,GACtB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;CAmDxB;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/authenticator/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AAMrC,eAAO,MAAM,kBAAkB;;;;CAAiD,CAAC;AAEjF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAiCjH;AAED,cAAM,iBAAiB;IACrB,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,UAAO;IAiD3C;;;;;;;;OAQG;IACG,OAAO,CACX,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,SAAO,EACb,gBAAgB,UAAO,GACtB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;CA8BxB;AAED,eAAe,iBAAiB,CAAC"}
@@ -3,6 +3,40 @@ import { fromJSON, isValid } from '@ocap/wallet';
3
3
  import Debug from 'debug';
4
4
  const debug = Debug('@arcblock/did-connect-js:authenticator:base');
5
5
  export const DEFAULT_CHAIN_INFO = { id: 'none', host: 'none', type: 'arcblock' };
6
+ export function verifyErrorCatalog(fieldPk, fieldInfo) {
7
+ return {
8
+ pkMissing: {
9
+ en: `${fieldPk} is required to complete auth`,
10
+ zh: `${fieldPk} 参数缺失`,
11
+ 'zh-TW': `缺少 ${fieldPk} 參數,無法完成認證。`,
12
+ ja: `認証を完了するには ${fieldPk} が必要です。`,
13
+ },
14
+ tokenMissing: {
15
+ en: `${fieldInfo} is required to complete auth`,
16
+ zh: 'JWT Token 参数缺失',
17
+ 'zh-TW': '缺少 JWT Token 參數,無法完成認證。',
18
+ ja: '認証を完了するには JWT Token が必要です。',
19
+ },
20
+ pkFormat: {
21
+ en: `${fieldPk} should be either base58 or base16 format`,
22
+ zh: `${fieldPk} 无法解析`,
23
+ 'zh-TW': `無法解析 ${fieldPk}。`,
24
+ ja: `${fieldPk} を解析できません。`,
25
+ },
26
+ tokenInvalid: {
27
+ en: 'Invalid JWT token',
28
+ zh: '签名无效',
29
+ 'zh-TW': '簽章無效。',
30
+ ja: '署名が無効です。',
31
+ },
32
+ timeInvalid: {
33
+ en: 'JWT token expired, make sure your device time in sync with network',
34
+ zh: '签名中的时间戳无效,请确保设备和网络时间同步',
35
+ 'zh-TW': '簽章中的時間戳記無效,請確認裝置時間與網路時間同步。',
36
+ ja: '署名のタイムスタンプが無効です。デバイスの時刻をネットワークの時刻に同期してください。',
37
+ },
38
+ };
39
+ }
6
40
  class BaseAuthenticator {
7
41
  _validateWallet(wallet, canSign = true) {
8
42
  if (!wallet) {
@@ -60,28 +94,7 @@ class BaseAuthenticator {
60
94
  */
61
95
  async _verify(data, fieldPk, fieldInfo, locale = 'en', enforceTimestamp = true) {
62
96
  debug('verify', data, locale);
63
- const errors = {
64
- pkMissing: {
65
- en: `${fieldPk} is required to complete auth`,
66
- zh: `${fieldPk} 参数缺失`,
67
- },
68
- tokenMissing: {
69
- en: `${fieldInfo} is required to complete auth`,
70
- zh: 'JWT Token 参数缺失',
71
- },
72
- pkFormat: {
73
- en: `${fieldPk} should be either base58 or base16 format`,
74
- zh: `${fieldPk} 无法解析`,
75
- },
76
- tokenInvalid: {
77
- en: 'Invalid JWT token',
78
- zh: '签名无效',
79
- },
80
- timeInvalid: {
81
- en: 'JWT token expired, make sure your device time in sync with network',
82
- zh: '签名中的时间戳无效,请确保设备和网络时间同步',
83
- },
84
- };
97
+ const errors = verifyErrorCatalog(fieldPk, fieldInfo);
85
98
  const pk = data[fieldPk];
86
99
  const info = data[fieldInfo];
87
100
  if (!pk) {
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/authenticator/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/authenticator/base.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/handlers/util.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAgDjF,eAAO,MAAM,YAAY,WAAiE,CAAC;AAI3F,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAyCzD,CAAC;AAOF,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,KAAK,cAAc,WAOhE,CAAC;AAWF,eAAO,MAAM,cAAc,GAAI,KAAK,cAAc,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,WAiB/E,CAAC;AAMF,eAAO,MAAM,gBAAgB,WAAiE,CAAC;AAE/F,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM;;;;CA4B9C,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,YACkD,CAAC;AAGzF,eAAO,MAAM,eAAe,GAAI,QAAQ,GAAG,EAAE,uBAAmB,KAAG,OAAO,GAAG,MAgC5E,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACjC,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACnC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAChC,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACnC,UAAU,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACpC,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAClC,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACjC,eAAe,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACvC,YAAY,EAAE,GAAG,CAAC;IAClB,aAAa,EAAE,GAAG,CAAC;IACnB,aAAa,EAAE,GAAG,CAAC;IACnB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,GAAG,CAAC;IAC7C,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,KAAK,MAAM,CAAC;IAChE,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAGD,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,EACP,SAAS,EACT,MAAM,EACN,SAAS,EACT,UAAU,EACV,QAAQ,EACR,OAAO,EACP,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,uBAA+B,EAC/B,aAAoB,EACpB,WAAqB,EACrB,OAAO,GACR,EAAE,qBAAqB;2BAgIc,cAAc,OAAO,eAAe;yBAoItC,cAAc,OAAO,eAAe;wBA9CrC,cAAc,OAAO,eAAe;yBA8FnC,cAAc,OAAO,eAAe;0BAwFnC,cAAc,OAAO,eAAe;yBA2OrC,cAAc,QAAQ,eAAe,QAAQ,YAAY;4BA6B5D,cAAc,OAAO,eAAe,QAAQ,YAAY;gCAvlBpD,MAAM,UAAU,GAAG,UAAS,GAAG;EA6oBnE"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/handlers/util.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAwDjF,eAAO,MAAM,YAAY,WAAiE,CAAC;AAI3F,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA6DJ,CAAC;AAOvD,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,KAAK,cAAc,WAOhE,CAAC;AAWF,eAAO,MAAM,cAAc,GAAI,KAAK,cAAc,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,WAiB/E,CAAC;AAMF,eAAO,MAAM,gBAAgB,WAAiE,CAAC;AAE/F,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM;;;;CA4B9C,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,YACkD,CAAC;AAGzF,eAAO,MAAM,eAAe,GAAI,QAAQ,GAAG,EAAE,uBAAmB,KAAG,OAAO,GAAG,MAgC5E,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACjC,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACnC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAChC,SAAS,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACnC,UAAU,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACpC,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAClC,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IACjC,eAAe,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACvC,YAAY,EAAE,GAAG,CAAC;IAClB,aAAa,EAAE,GAAG,CAAC;IACnB,aAAa,EAAE,GAAG,CAAC;IACnB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,cAAc,KAAK,GAAG,CAAC;IAC7C,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,KAAK,MAAM,CAAC;IAChE,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAGD,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,EACP,SAAS,EACT,MAAM,EACN,SAAS,EACT,UAAU,EACV,QAAQ,EACR,OAAO,EACP,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,uBAA+B,EAC/B,aAAoB,EACpB,WAAqB,EACrB,OAAO,GACR,EAAE,qBAAqB;2BAgIc,cAAc,OAAO,eAAe;yBAoItC,cAAc,OAAO,eAAe;wBA9CrC,cAAc,OAAO,eAAe;yBA8FnC,cAAc,OAAO,eAAe;0BAwFnC,cAAc,OAAO,eAAe;yBA2OrC,cAAc,QAAQ,eAAe,QAAQ,YAAY;4BA6B5D,cAAc,OAAO,eAAe,QAAQ,YAAY;gCAvlBpD,MAAM,UAAU,GAAG,UAAS,GAAG;EA6oBnE"}
@@ -1,4 +1,5 @@
1
1
  import { isValid as isValidDid } from '@arcblock/did';
2
+ import { DEFAULT_ENABLED_LOCALES, LOCALE_CODES, matchAcceptLanguage, matchLocale, } from '@arcblock/did-connect-core';
2
3
  import * as Mcrypto from '@ocap/mcrypto';
3
4
  import { fromBase64, stripHexPrefix, toBase64 } from '@ocap/util';
4
5
  import stringify from 'fast-json-stable-stringify';
@@ -22,23 +23,33 @@ const isUrl = (input) => {
22
23
  };
23
24
  import Debug from 'debug';
24
25
  const _debug = Debug('@arcblock/did-connect-js:handlers:util');
25
- const SUPPORTED_LOCALES = ['en', 'zh'];
26
- function normalizeLocale(value) {
26
+ function readLocaleTag(value) {
27
27
  const raw = Array.isArray(value) ? value[0] : value;
28
28
  if (typeof raw !== 'string')
29
29
  return undefined;
30
- const base = raw.trim().toLowerCase().replace('_', '-').split('-')[0];
31
- return SUPPORTED_LOCALES.includes(base) ? base : undefined;
30
+ const tag = raw.trim();
31
+ return tag.length > 0 ? tag : undefined;
32
+ }
33
+ function matchKnownLocale(value) {
34
+ const tag = readLocaleTag(value);
35
+ if (!tag)
36
+ return undefined;
37
+ return matchLocale(tag, LOCALE_CODES);
32
38
  }
33
39
  const getLocale = (req) => {
34
- const queryLocale = normalizeLocale(req.query.locale);
40
+ const queryLocale = matchKnownLocale(req.query.locale);
35
41
  if (queryLocale)
36
42
  return queryLocale;
37
- const cookieLocale = normalizeLocale(req.cookies?.arc_lang);
43
+ const cookieLocale = matchKnownLocale(req.cookies?.arc_lang);
38
44
  if (cookieLocale)
39
45
  return cookieLocale;
40
- const acceptedLocale = normalizeLocale(req.acceptsLanguages('en-US', 'zh-CN'));
41
- return acceptedLocale || 'en';
46
+ const header = req.get('accept-language');
47
+ if (typeof header === 'string' && header.trim() !== '') {
48
+ const acceptedLocale = matchAcceptLanguage(header, DEFAULT_ENABLED_LOCALES);
49
+ if (acceptedLocale)
50
+ return acceptedLocale;
51
+ }
52
+ return 'en';
42
53
  };
43
54
  // CSPRNG-derived session id, ≥128-bit entropy, with no relationship to Date.now()
44
55
  // (same convention as getStepChallenge below). Fixes #57: the previous
@@ -52,42 +63,62 @@ export const errors = {
52
63
  tokenMissing: {
53
64
  en: 'Session Id is required to check status',
54
65
  zh: '缺少会话 ID 参数',
66
+ 'zh-TW': '缺少工作階段 ID 參數',
67
+ ja: 'ステータスを確認するにはセッション ID が必要です。',
55
68
  },
56
69
  didMismatch: {
57
70
  en: 'Login user and wallet user mismatch, please relogin and try again',
58
71
  zh: '登录用户和扫码用户不匹配,为保障安全,请重新登录应用',
72
+ 'zh-TW': '登入使用者與掃描錢包的使用者不符。為保障安全,請重新登入應用程式。',
73
+ ja: 'ログインユーザーとウォレットのユーザーが一致しません。安全のため、もう一度ログインしてください。',
59
74
  },
60
75
  mfaMismatch: {
61
76
  en: 'Dynamic verification code mismatch, please try again later',
62
77
  zh: '动态验证码不匹配,请重试',
78
+ 'zh-TW': '動態驗證碼不符,請稍後再試一次。',
79
+ ja: '動的確認コードが一致しません。しばらくしてからもう一度お試しください。',
63
80
  },
64
81
  challengeMismatch: {
65
82
  en: 'Challenge mismatch',
66
83
  zh: '随机校验码不匹配',
84
+ 'zh-TW': '隨機校驗碼不符。',
85
+ ja: 'ランダム確認コードが一致しません。',
67
86
  },
68
87
  token404: {
69
88
  en: 'Session not found or expired',
70
89
  zh: '会话不存在或已过期',
90
+ 'zh-TW': '工作階段不存在或已過期。',
91
+ ja: 'セッションが見つからないか、有効期限が切れています。',
71
92
  },
72
93
  didMissing: {
73
94
  en: 'userDid is required to start auth',
74
95
  zh: 'userDid 参数缺失,请勿尝试连接多个不同的钱包',
96
+ 'zh-TW': '缺少 userDid 參數,請勿嘗試連接多個不同的錢包。',
97
+ ja: '認証を開始するには userDid が必要です。複数の異なるウォレットには接続しないでください。',
75
98
  },
76
99
  pkMissing: {
77
100
  en: 'userPk is required to start auth',
78
101
  zh: 'userPk 参数缺失,请勿尝试连接多个不同的钱包',
102
+ 'zh-TW': '缺少 userPk 參數,請勿嘗試連接多個不同的錢包。',
103
+ ja: '認証を開始するには userPk が必要です。複数の異なるウォレットには接続しないでください。',
79
104
  },
80
105
  authClaim: {
81
106
  en: 'authPrincipal claim is not configured correctly',
82
107
  zh: 'authPrincipal 声明配置不正确',
108
+ 'zh-TW': 'authPrincipal 宣告的設定不正確。',
109
+ ja: 'authPrincipal クレームの設定が正しくありません。',
83
110
  },
84
111
  userDeclined: {
85
112
  en: 'You have declined the authentication request',
86
113
  zh: '授权请求被拒绝',
114
+ 'zh-TW': '您已拒絕這項授權請求。',
115
+ ja: '認証リクエストを拒否しました。',
87
116
  },
88
117
  userBusy: {
89
118
  en: 'Busy processing another DID Connect request',
90
119
  zh: '正在处理其他请求',
120
+ 'zh-TW': '正在處理另一個 DID Connect 請求。',
121
+ ja: '別の DID Connect リクエストを処理しています。',
91
122
  },
92
123
  };
93
124
  // This logic exist because the handlers maybe attached to a nested router
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/handlers/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/handlers/util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EACL,uBAAuB,EACvB,YAAY,EAEZ,mBAAmB,EACnB,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,SAAS,MAAM,4BAA4B,CAAC;AACnD,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAElF,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC5F,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE/D,0DAA0D;AAC1D,gEAAgE;AAChE,MAAM,kBAAkB,GAAG,4BAA4B,CAAC;AACxD,2BAA2B;AAC3B,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAC1C,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC,CAAC;AAEF,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,MAAM,GAAG,KAAK,CAAC,wCAAwC,CAAC,CAAC;AAE/D,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACpD,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAC9C,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACvB,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1C,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,OAAO,WAAW,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,GAAmB,EAAc,EAAE;IACpD,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACvD,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IAEpC,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7D,IAAI,YAAY;QAAE,OAAO,YAAY,CAAC;IAEtC,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC1C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACvD,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;QAC5E,IAAI,cAAc;YAAE,OAAO,cAAc,CAAC;IAC5C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AACF,kFAAkF;AAClF,uEAAuE;AACvE,kFAAkF;AAClF,gFAAgF;AAChF,0CAA0C;AAC1C,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AAC3F,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AACxB,MAAM,OAAO,GAAG,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC;AAE9B,MAAM,CAAC,MAAM,MAAM,GAA2C;IAC5D,YAAY,EAAE;QACZ,EAAE,EAAE,wCAAwC;QAC5C,EAAE,EAAE,YAAY;QAChB,OAAO,EAAE,cAAc;QACvB,EAAE,EAAE,6BAA6B;KAClC;IACD,WAAW,EAAE;QACX,EAAE,EAAE,mEAAmE;QACvE,EAAE,EAAE,4BAA4B;QAChC,OAAO,EAAE,mCAAmC;QAC5C,EAAE,EAAE,kDAAkD;KACvD;IACD,WAAW,EAAE;QACX,EAAE,EAAE,4DAA4D;QAChE,EAAE,EAAE,cAAc;QAClB,OAAO,EAAE,kBAAkB;QAC3B,EAAE,EAAE,qCAAqC;KAC1C;IACD,iBAAiB,EAAE;QACjB,EAAE,EAAE,oBAAoB;QACxB,EAAE,EAAE,UAAU;QACd,OAAO,EAAE,UAAU;QACnB,EAAE,EAAE,mBAAmB;KACxB;IACD,QAAQ,EAAE;QACR,EAAE,EAAE,8BAA8B;QAClC,EAAE,EAAE,WAAW;QACf,OAAO,EAAE,cAAc;QACvB,EAAE,EAAE,4BAA4B;KACjC;IACD,UAAU,EAAE;QACV,EAAE,EAAE,mCAAmC;QACvC,EAAE,EAAE,4BAA4B;QAChC,OAAO,EAAE,8BAA8B;QACvC,EAAE,EAAE,kDAAkD;KACvD;IACD,SAAS,EAAE;QACT,EAAE,EAAE,kCAAkC;QACtC,EAAE,EAAE,2BAA2B;QAC/B,OAAO,EAAE,6BAA6B;QACtC,EAAE,EAAE,iDAAiD;KACtD;IACD,SAAS,EAAE;QACT,EAAE,EAAE,iDAAiD;QACrD,EAAE,EAAE,uBAAuB;QAC3B,OAAO,EAAE,yBAAyB;QAClC,EAAE,EAAE,iCAAiC;KACtC;IACD,YAAY,EAAE;QACZ,EAAE,EAAE,8CAA8C;QAClD,EAAE,EAAE,SAAS;QACb,OAAO,EAAE,aAAa;QACtB,EAAE,EAAE,iBAAiB;KACtB;IACD,QAAQ,EAAE;QACR,EAAE,EAAE,6CAA6C;QACjD,EAAE,EAAE,UAAU;QACd,OAAO,EAAE,yBAAyB;QAClC,EAAE,EAAE,+BAA+B;KACpC;CACmD,CAAC;AAEvD,0EAA0E;AAC1E,0CAA0C;AAC1C,gJAAgJ;AAChJ,wDAAwD;AACxD,mGAAmG;AACnG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,GAAmB,EAAE,EAAE;IACnE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,QAAkB,CAAC;IAC/D,MAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChE,oFAAoF;IACpF,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,GAAmB,EAAE,EAAE;IACzC,IAAI,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QACjC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,uEAAuE;AACvE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAmB,EAAE,MAA4B,EAAE,EAAE;IAClF,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACtD,MAAM,CAAC,QAAQ,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,GAAG,CACjC,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAC1B,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;QACf,EAAE,CACH,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,2FAA2F;IAC3F,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;IAC5F,OAAO,GAAG,CAAC,MAAM,CAAC;QAChB,QAAQ,EACN,MAAM,EAAE,CAAC,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,GAAG,CAAC,QAAQ;QAC3G,QAAQ;QACR,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;QAC/C,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,0GAA0G;AAC1G,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAC3H,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEpG,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AAE/F,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAE,EAAE;IACjD,MAAM,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;IACtD,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC/B,EAAE,GAAG,SAAS,CAAC;IACjB,CAAC;SAAM,IAAI,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACrC,EAAE,GAAG,KAAK,CAAC;IACb,CAAC;SAAM,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnC,EAAE,GAAG,KAAK,CAAC;IACb,CAAC;SAAM,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnC,EAAE,GAAG,KAAK,CAAC;IACb,CAAC;SAAM,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,EAAE,GAAG,KAAK,CAAC;IACb,CAAC;SAAM,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,EAAE,GAAG,KAAK,CAAC;IACb,CAAC;IAED,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;IACpG,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxF,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,GAAG,OAAO,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CACxC,GAAG,CAAC,UAAU,CAAC,yBAAyB,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;AAEzF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAW,EAAE,cAAc,GAAG,EAAE,EAAoB,EAAE;IACpF,IAAI,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QACnF,OAAO,MAAM,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,UAAU,CAAC,cAAc,CAAC,KAAK,KAAK,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,MAAM,CAAC,YAAY,KAAK,cAAc,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO;IACP,IAAI,OAAO,MAAM,CAAC,cAAc,KAAK,WAAW,EAAE,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mDAAmD;IACnD,IAAI,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;QAC9C,IAAI,CAAC;YACH,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC;AACjC,CAAC,CAAC;AA4BF,yFAAyF;AACzF,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EACrC,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,EACP,SAAS,EACT,MAAM,EACN,SAAS,EACT,UAAU,EACV,QAAQ,EACR,OAAO,EACP,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,uBAAuB,GAAG,KAAK,EAC/B,aAAa,GAAG,IAAI,EACpB,WAAW,GAAG,OAAO,EACrB,OAAO,GACe;IACtB,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAE/D,MAAM,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEjF,sDAAsD;IACtD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC;gBACtC,aAAa,GAAG,KAAK,CAAC;YACxB,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC;YACvC,aAAa,GAAG,KAAK,CAAC;QACxB,CAAC;IACH,CAAC;IAED,iDAAiD;IACjD,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,WAAW,GAAG,mCAAmC,CAAC;QACtD,IAAI,SAAc,CAAC;QACnB,IAAI,UAAe,CAAC;QAEpB,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;YACtC,IAAI,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC9B,yCAAyC;gBACzC,MAAM,GAAG,aAAa,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,4CAA4C;gBAC5C,WAAW,GAAG,aAAa,CAAC;YAC9B,CAAC;QACH,CAAC;QACD,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;YACtC,MAAM,GAAG,aAAa,CAAC,MAAM,IAAI,MAAM,CAAC;YACxC,WAAW,GAAG,aAAa,CAAC,WAAW,IAAI,WAAW,CAAC;YACvD,UAAU,GAAG,aAAa,CAAC,UAAU,IAAI,UAAU,CAAC;YAEpD,0BAA0B;YAC1B,IAAI,aAAa,CAAC,SAAS,IAAI,aAAa,CAAC,iBAAiB,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxF,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;YACtC,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC;QAC7C,YAAY,CAAC,OAAO,CAAC;YACnB,aAAa,EAAE;gBACb,SAAS,EAAE,IAAI;gBACf,WAAW;gBACX,MAAM;gBACN,SAAS;gBACT,UAAU;gBACV,UAAU;aACX;SACF,CAAC,CAAC;IACL,CAAC;IAED,oDAAoD;IACpD,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,SAAS,CAAC;IAEjE,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAE,MAAW,EAAE,QAAa,EAAE,EAAE,EAAE;QACzE,MAAM,WAAW,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QACpD,OAAO;YACL,MAAM;YACN,MAAM;YACN,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;iBACxB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;iBACnG,MAAM,CAAC,CAAC,GAAQ,EAAE,CAAC,EAAE,EAAE;gBACtB,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;gBACxB,OAAO,GAAG,CAAC;YACb,CAAC,EAAE,EAAE,CAAC;SACT,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,oBAAoB,GACxB,CAAC,KAAa,EAAE,MAAW,EAAE,EAAE,CAC/B,KAAK,EAAE,GAAoB,EAAE,KAAW,EAAE,MAAM,GAAG,KAAK,EAAE,EAAE;QAC1D,MAAM,SAAS,GAAG,CAAC,CAAS,EAAE,CAAM,EAAE,EAAE;YACtC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAW,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACnG,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5D,CAAC;YAED,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QACpB,CAAC,CAAC;QAEF,4CAA4C;QAC5C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,KAAK,CAAC;YACf,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAG,GAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrF,OAAO,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,GAAa,EAAE,KAAK,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3F,CAAC,CAAC;IAEJ,uCAAuC;IACvC,MAAM,sBAAsB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE;QAC3D,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/B,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9C,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,EACtB,GAAG,EACH,GAAG,EACH,KAAK,EACL,GAAG,GACsE,EAAE,EAAE;QAC7E,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;QAC3C,IAAI,KAAK,EAAE,CAAC;YACV,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QAC/F,CAAC;QAED,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAClC,OAAO,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IACxE,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,GAAW,EAAE,GAAmB,EAAE,EAAE;QAC5D,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACrC,yDAAyD;QACzD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,cAAc;IACd,MAAM,eAAe,GAAG,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,EAAE;QAC1E,IAAI,CAAC;YACH,MAAM,MAAM,GAAQ;gBAClB,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;gBACrC,iBAAiB,EAAE,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC;gBAC7C,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC;gBAClC,YAAY,EAAG,GAAW,CAAC,OAAO,EAAE,aAAa,IAAI,EAAE;gBACvD,WAAW,EAAG,GAAW,CAAC,OAAO,EAAE,YAAY,IAAI,EAAE;gBACrD,GAAG,GAAG,CAAC,IAAI;gBACX,GAAG,GAAG,CAAC,KAAK;gBACZ,GAAG,GAAG,CAAC,MAAM;aACd,CAAC;YAEF,wFAAwF;YACxF,MAAM,CAAC,cAAc,GAAG,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;YAEvE,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;YAC7B,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;YAEzD,oDAAoD;YACpD,iDAAiD;YACjD,mDAAmD;YACnD,IAAI,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;YAC3C,MAAM,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnF,IAAI,gBAAgB,EAAE,CAAC;gBACrB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC/D,WAAW,GAAG,EAAE,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACN,MAAM,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YAExF,wDAAwD;YACxD,mEAAmE;YACnE,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;YACtF,MAAM,WAAW,GAAG,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;YAC9D,MAAM,UAAU,GAAG;gBACjB,GAAG;gBACH,OAAO,EAAE,GAAG;gBACZ,SAAS;gBACT,OAAO;gBACP,QAAQ,EAAE,GAAG;gBACb,WAAW;gBACX,aAAa,EAAE,oBAAoB,CAAC,KAAK,EAAE,WAAW,CAAC;gBACvD,SAAS;aACV,CAAC;YAEF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC5C,aAAa,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;gBACnE,aAAa,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;aACnE,CAAC,CAAC;YACH,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACjD,aAAa,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,SAAS,CAAC;gBAC9F,aAAa,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,eAAe,CAAC;aACrG,CAAC,CAAC;YACH,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE;gBAC/B,WAAW,EAAE,CAAC;gBACd,YAAY,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,6FAA6F;gBAC1H,SAAS;gBACT,SAAS,EAAE,gBAAgB,EAAE,EAAE,sCAAsC;gBACrE,WAAW,EAAE,MAAM;gBACnB,+EAA+E;gBAC/E,MAAM;gBACN,OAAO;gBACP,aAAa;gBACb,WAAW;aACZ,CAAC,CAAC;YACH,wDAAwD;YAExD,qEAAqE;YACrE,uKAAuK;YACvK,qIAAqI;YACrI,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;YAExC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7G,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC;IAEF,cAAc;IACd,MAAM,YAAY,GAAG,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,EAAE;QACvE,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;YACrD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC7D,OAAO;YACT,CAAC;YACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACzD,OAAO;YACT,CAAC;YAED,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc,CAAC,SAAS,EAAE,CAAC;gBAC9C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC5D,OAAO;YACT,CAAC;YAED,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC5C,UAAU,CAAC,GAAG,EAAE;oBACd,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAClD,CAAC,EAAE,YAAY,CAAC,CAAC;gBACjB,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;gBAChF,MAAM,UAAU,CAAC;oBACf,GAAG;oBACH,OAAO,EAAE,GAAG;oBACZ,OAAO,EAAE,KAAK,CAAC,GAAG;oBAClB,MAAM,EAAE,KAAK,CAAC,EAAE;oBAChB,WAAW;oBACX,aAAa,EAAE,oBAAoB,CAAC,KAAK,EAAE,WAAW,CAAC;iBACxD,CAAC,CAAC;YACL,CAAC;YAED,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;iBACf,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;iBACnD,MAAM,CAAC,CAAC,GAAQ,EAAE,GAAG,EAAE,EAAE;gBACxB,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBACtB,OAAO,GAAG,CAAC;YACb,CAAC,EAAE,EAAE,CAAC,CACT,CAAC;QACJ,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC,CAAC;IAEF,cAAc;IACd,MAAM,aAAa,GAAG,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,EAAE;QACxE,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;YAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC7D,OAAO;YACT,CAAC;YACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACzD,OAAO;YACT,CAAC;YAED,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAE9E,mFAAmF;YACnF,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC5C,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;YACD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC,CAAC;IAEF,+DAA+D;IAC/D,MAAM,SAAS,GAAG,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAqD,EAAE,EAAE;QAC1G,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;QAE1C,+DAA+D;QAC/D,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;YACD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAClC,CAAC;YAED,yBAAyB;YACzB,IAAI,OAAO,KAAK,KAAK,CAAC,GAAG,EAAE,CAAC;gBAC1B,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC;gBACvE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,EAAE;QACxE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QAChE,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;QAChF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,IAAI,WAAW,CAAC,YAAY,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,IAAI,WAAW,CAAC,WAAW,CAAC;QAEpE,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACzE,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,aAAa,KAAK,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YACrE,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;YACzC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzG,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;YAC3C,MAAM,iBAAiB,GAAG,cAAc,IAAI,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;YACvE,IAAI,iBAAiB,EAAE,CAAC;gBACtB,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,GAAG,KAAK,CAAC;YAC5C,CAAC;YACD,IAAI,WAAW,CAAC,cAAc,EAAE,CAAC;gBAC/B,IAAI,MAAM,GAAG,WAAW,CAAC,YAAY,CAAC;gBACtC,IAAI,OAAO,WAAW,CAAC,cAAc,KAAK,QAAQ,IAAI,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC7F,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC;gBACtC,CAAC;gBACD,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC;gBACzC,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC5C,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC,CAAC;YACnG,CAAC;YAED,oFAAoF;YACpF,IAAI,KAAK,CAAC,OAAO,IAAI,iBAAiB,EAAE,CAAC;gBACvC,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC;oBAChC,GAAG;oBACH,OAAO,EAAE,GAAG;oBACZ,OAAO;oBACP,MAAM;oBACN,SAAS;oBACT,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,QAAQ,EAAE,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC;oBAC3D,OAAO,EAAE,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC;oBACzC,WAAW;oBACX,aAAa,EAAE,oBAAoB,CAAC,KAAK,EAAE,WAAW,CAAC;iBACxD,CAAC,CAAC;gBACH,IAAI,SAAS,EAAE,CAAC;oBACd,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;oBAC3B,CAAC;yBAAM,CAAC;wBACN,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,IAAI,CAC1C,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;gBACxB,OAAO,EAAE;oBACP,KAAK;oBACL,OAAO;oBACP,MAAM;oBACN,SAAS;oBACT,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,aAAa,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;oBAC7D,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;iBACxE;gBACD,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC;gBAChC,QAAQ,EAAE,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC;gBAC3D,OAAO,EAAE,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC;gBACzC,WAAW;gBACX,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,aAAa,EAAE,KAAK,CAAC,aAAa;gBAClC,OAAO,EAAE,GAAG;aACb,CAAC,CACH,CAAC;YAEF,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,EAAE;QACzE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QAEhE,IAAI,CAAC;YACH,MAAM,EACJ,OAAO,EACP,MAAM,EACN,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,aAAa,EACrB,SAAS,GACV,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;YAC/D,6EAA6E;YAE7E,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;gBAC5B,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACjE,CAAC;YAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC;YAChF,MAAM,QAAQ,GAAG;gBACf,IAAI,EAAE,KAAK,CAAC,WAAW;gBACvB,GAAG;gBACH,OAAO,EAAE,GAAG;gBACZ,OAAO;gBACP,MAAM;gBACN,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,SAAS;gBACT,MAAM,EAAE,aAAa;gBACrB,OAAO,EAAE,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC;gBACzC,WAAW;gBACX,aAAa,EAAE,oBAAoB,CAAC,KAAK,EAAE,WAAW,CAAC;gBACvD,SAAS;aACV,CAAC;YAEF,MAAM,KAAK,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;YAChC,MAAM,iBAAiB,GAAG,cAAc,IAAI,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC;YAEvE,oFAAoF;YACpF,IAAI,KAAK,CAAC,OAAO,IAAI,iBAAiB,EAAE,CAAC;gBACvC,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC5C,IAAI,SAAS,EAAE,CAAC;oBACd,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;oBAC3B,CAAC;yBAAM,CAAC;wBACN,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,IAAI,uBAAuB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;gBACzE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;YACrC,CAAC;YAED,uBAAuB;YACvB,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;gBACjC,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE;oBAC/B,MAAM,EAAE,cAAc,CAAC,KAAK;oBAC5B,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;oBAClC,OAAO,EAAE,CAAC;oBACV,WAAW,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC;iBAC9B,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACzC,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC;YAED,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;gBAC1B,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE;oBAC/B,MAAM,EAAE,cAAc,CAAC,IAAI;oBAC3B,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAC9B,OAAO,EAAE,CAAC;oBACV,WAAW,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC;iBAC9B,CAAC,CAAC;gBAEH,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YAED,qGAAqG;YACrG,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1F,OAAO,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5G,CAAC;YAED,6BAA6B;YAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC;YACD,IAAI,aAAa,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;gBACtC,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC;YAED,+DAA+D;YAC/D,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACzE,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9B,CAAC;YAED,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;YAC1C,IAAI,WAAW,KAAK,KAAK,EAAE,CAAC;gBAC1B,+CAA+C;gBAC/C,6DAA6D;gBAC7D,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAC5C,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE;wBAC/B,OAAO,EAAE,CAAC,uBAAuB;wBACjC,aAAa,EAAE,uBAAuB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;qBAC/D,CAAC,CAAC;oBACH,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC7B,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;oBAC3B,CAAC;yBAAM,CAAC;wBACN,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,UAAU,GAAG,KAAK,EAAE,MAAW,EAAE,EAAE;gBACvC,IAAI,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/D,IAAI,YAAY,IAAI,MAAM,EAAE,gBAAgB,EAAE,CAAC;oBAC7C,IAAI,aAAa,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,KAAK,EAAE,CAAC;wBACrD,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,0DAA0D,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;wBAC3G,OAAO,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,6BAA6B,EAAE,GAAG,EAAE,CAAC,CAAC;oBACjF,CAAC;oBAED,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;oBAClC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,oBAAoB,IAAI,EAAE,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;oBAC9F,MAAM,oBAAoB,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC9D,6FAA6F;oBAC7F,IAAI,oBAAoB,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;wBACvC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;wBAC7F,OAAO,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC1E,CAAC;oBAED,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC7B,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAW,CAAC,CAAC;wBAC5E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;wBAC/B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;wBACnE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;oBACxC,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAC;oBACrE,CAAC;oBAED,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC;gBAC1B,CAAC;gBAED,MAAM,OAAO,GAAQ,EAAE,CAAC;gBAExB,gDAAgD;gBAChD,IAAI,QAAQ,GAAG,YAAY,IAAI,MAAM,EAAE,YAAY,IAAI,EAAE,CAAC;gBAC1D,IAAI,QAAQ,EAAE,CAAC;oBACb,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACzB,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBACvD,CAAC;oBACD,IAAI,QAAQ,EAAE,CAAC;wBACb,OAAO,CAAC,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;oBACtD,CAAC;gBACH,CAAC;gBAED,mEAAmE;gBACnE,iDAAiD;gBACjD,+DAA+D;gBAC/D,mEAAmE;gBACnE,IAAI,MAAM,EAAE,SAAS,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;oBAC7C,IAAI,CAAC;wBACH,MAAM,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;oBACpE,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;wBAC7D,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC;oBAC1C,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;wBACpB,IAAI,CAAC;4BACH,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;wBACjF,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,CAAC;wBAC/D,CAAC;oBACH,CAAC;oBACD,OAAO,CAAC,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC;gBAC1C,CAAC;gBAED,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC1C,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACzE,CAAC,CAAC;YAEF,oDAAoD;YACpD,mFAAmF;YACnF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACtC,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;YAED,yDAAyD;YACzD,IAAI,WAAW,IAAI,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBACpD,4EAA4E;gBAC5E,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAEtC,iDAAiD;gBACjD,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC1D,IAAI,UAAU,EAAE,CAAC;oBACf,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;YAED,iFAAiF;YACjF,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;YACvC,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;YACzC,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;YAClG,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC;YAE5C,IAAI,CAAC;gBACH,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,IAAI,CAC9C,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;oBACxB,OAAO,EAAE;wBACP,KAAK;wBACL,OAAO;wBACP,MAAM;wBACN,SAAS;wBACT,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,aAAa,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;wBAC7D,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;qBACxE;oBACD,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;oBACvB,QAAQ,EAAE,gBAAgB,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC;oBAC3D,OAAO,EAAE,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC;oBACzC,WAAW;oBACX,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,aAAa,EAAE,KAAK,CAAC,aAAa;oBAClC,OAAO,EAAE,GAAG;iBACb,CAAC,CACH,CAAC;gBACF,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC;YACpD,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,cAAc,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC;QAChE,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,EAAE,GAAmB,EAAE,IAAqB,EAAE,IAAkB,EAAE,EAAE;QAC7F,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;QACtF,MAAM,MAAM,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvC,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,KAAK,CAAC,WAAW,CAAC,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACxG,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;gBACvE,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,MAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;gBACvF,CAAC;YACH,CAAC;YACD,IAAI,KAAK,EAAE,SAAS,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;gBAC9D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACxD,IAAI,MAAM,EAAE,CAAC;oBACX,KAAK,GAAG,MAAM,CAAC;gBACjB,CAAC;YACH,CAAC;QACH,CAAC;QAED,GAAG,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC1D,OAAO,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;QACzF,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACvC,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC5B,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC;YAC9B,GAAG,CAAC,KAAK,GAAG,KAAK,EAAE,OAAY,EAAE,EAAE;gBACjC,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACtC,OAAO,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBACxC,CAAC;gBAED,MAAM,IAAI,GAAQ,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;gBAC5F,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;gBAE7G,qCAAqC;gBACrC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACnB,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;wBACf,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;gBAE1D,2CAA2C;gBAC3C,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAC9C,CAAC;gBAED,MAAM,MAAM,GAAG,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAE5D,MAAM,WAAW,GAAG,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;gBAC7C,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;gBAC9G,wCAAwC;gBACxC,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;YACpD,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC;QAC7C,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YACrB,OAAO,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;IAEF,OAAO;QACL,eAAe;QACf,aAAa;QACb,YAAY;QACZ,aAAa;QACb,cAAc;QACd,aAAa;QACb,gBAAgB;QAChB,iBAAiB;KAClB,CAAC;AACJ,CAAC"}
package/dist/index.cjs CHANGED
@@ -31,7 +31,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
31
31
  var index_exports = {};
32
32
  __export(index_exports, {
33
33
  CloudflareKVStorage: () => kv_default,
34
- VERSION: () => import_did_connect_core2.VERSION,
34
+ VERSION: () => import_did_connect_core3.VERSION,
35
35
  WalletAuthenticator: () => wallet_default,
36
36
  WalletHandlers: () => wallet_default2,
37
37
  attachExpress: () => attachExpress,
@@ -116,6 +116,40 @@ var import_wallet = require("@ocap/wallet");
116
116
  var import_debug = __toESM(require("debug"), 1);
117
117
  var debug = (0, import_debug.default)("@arcblock/did-connect-js:authenticator:base");
118
118
  var DEFAULT_CHAIN_INFO = { id: "none", host: "none", type: "arcblock" };
119
+ function verifyErrorCatalog(fieldPk, fieldInfo) {
120
+ return {
121
+ pkMissing: {
122
+ en: `${fieldPk} is required to complete auth`,
123
+ zh: `${fieldPk} \u53C2\u6570\u7F3A\u5931`,
124
+ "zh-TW": `\u7F3A\u5C11 ${fieldPk} \u53C3\u6578\uFF0C\u7121\u6CD5\u5B8C\u6210\u8A8D\u8B49\u3002`,
125
+ ja: `\u8A8D\u8A3C\u3092\u5B8C\u4E86\u3059\u308B\u306B\u306F ${fieldPk} \u304C\u5FC5\u8981\u3067\u3059\u3002`
126
+ },
127
+ tokenMissing: {
128
+ en: `${fieldInfo} is required to complete auth`,
129
+ zh: "JWT Token \u53C2\u6570\u7F3A\u5931",
130
+ "zh-TW": "\u7F3A\u5C11 JWT Token \u53C3\u6578\uFF0C\u7121\u6CD5\u5B8C\u6210\u8A8D\u8B49\u3002",
131
+ ja: "\u8A8D\u8A3C\u3092\u5B8C\u4E86\u3059\u308B\u306B\u306F JWT Token \u304C\u5FC5\u8981\u3067\u3059\u3002"
132
+ },
133
+ pkFormat: {
134
+ en: `${fieldPk} should be either base58 or base16 format`,
135
+ zh: `${fieldPk} \u65E0\u6CD5\u89E3\u6790`,
136
+ "zh-TW": `\u7121\u6CD5\u89E3\u6790 ${fieldPk}\u3002`,
137
+ ja: `${fieldPk} \u3092\u89E3\u6790\u3067\u304D\u307E\u305B\u3093\u3002`
138
+ },
139
+ tokenInvalid: {
140
+ en: "Invalid JWT token",
141
+ zh: "\u7B7E\u540D\u65E0\u6548",
142
+ "zh-TW": "\u7C3D\u7AE0\u7121\u6548\u3002",
143
+ ja: "\u7F72\u540D\u304C\u7121\u52B9\u3067\u3059\u3002"
144
+ },
145
+ timeInvalid: {
146
+ en: "JWT token expired, make sure your device time in sync with network",
147
+ zh: "\u7B7E\u540D\u4E2D\u7684\u65F6\u95F4\u6233\u65E0\u6548\uFF0C\u8BF7\u786E\u4FDD\u8BBE\u5907\u548C\u7F51\u7EDC\u65F6\u95F4\u540C\u6B65",
148
+ "zh-TW": "\u7C3D\u7AE0\u4E2D\u7684\u6642\u9593\u6233\u8A18\u7121\u6548\uFF0C\u8ACB\u78BA\u8A8D\u88DD\u7F6E\u6642\u9593\u8207\u7DB2\u8DEF\u6642\u9593\u540C\u6B65\u3002",
149
+ ja: "\u7F72\u540D\u306E\u30BF\u30A4\u30E0\u30B9\u30BF\u30F3\u30D7\u304C\u7121\u52B9\u3067\u3059\u3002\u30C7\u30D0\u30A4\u30B9\u306E\u6642\u523B\u3092\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u6642\u523B\u306B\u540C\u671F\u3057\u3066\u304F\u3060\u3055\u3044\u3002"
150
+ }
151
+ };
152
+ }
119
153
  var BaseAuthenticator = class {
120
154
  _validateWallet(wallet, canSign = true) {
121
155
  if (!wallet) {
@@ -166,28 +200,7 @@ var BaseAuthenticator = class {
166
200
  */
167
201
  async _verify(data, fieldPk, fieldInfo, locale = "en", enforceTimestamp = true) {
168
202
  debug("verify", data, locale);
169
- const errors2 = {
170
- pkMissing: {
171
- en: `${fieldPk} is required to complete auth`,
172
- zh: `${fieldPk} \u53C2\u6570\u7F3A\u5931`
173
- },
174
- tokenMissing: {
175
- en: `${fieldInfo} is required to complete auth`,
176
- zh: "JWT Token \u53C2\u6570\u7F3A\u5931"
177
- },
178
- pkFormat: {
179
- en: `${fieldPk} should be either base58 or base16 format`,
180
- zh: `${fieldPk} \u65E0\u6CD5\u89E3\u6790`
181
- },
182
- tokenInvalid: {
183
- en: "Invalid JWT token",
184
- zh: "\u7B7E\u540D\u65E0\u6548"
185
- },
186
- timeInvalid: {
187
- en: "JWT token expired, make sure your device time in sync with network",
188
- zh: "\u7B7E\u540D\u4E2D\u7684\u65F6\u95F4\u6233\u65E0\u6548\uFF0C\u8BF7\u786E\u4FDD\u8BBE\u5907\u548C\u7F51\u7EDC\u65F6\u95F4\u540C\u6B65"
189
- }
190
- };
203
+ const errors2 = verifyErrorCatalog(fieldPk, fieldInfo);
191
204
  const pk = data[fieldPk];
192
205
  const info = data[fieldInfo];
193
206
  if (!pk) {
@@ -1482,6 +1495,7 @@ var base_default2 = BaseHandler;
1482
1495
 
1483
1496
  // src/handlers/util.ts
1484
1497
  var import_did2 = require("@arcblock/did");
1498
+ var import_did_connect_core2 = require("@arcblock/did-connect-core");
1485
1499
  var Mcrypto = __toESM(require("@ocap/mcrypto"), 1);
1486
1500
  var import_util3 = require("@ocap/util");
1487
1501
  var import_fast_json_stable_stringify = __toESM(require("fast-json-stable-stringify"), 1);
@@ -1523,20 +1537,28 @@ var isUrl = (input) => {
1523
1537
  return ABSOLUTE_URL_REGEX.test(input);
1524
1538
  };
1525
1539
  var _debug = (0, import_debug3.default)("@arcblock/did-connect-js:handlers:util");
1526
- var SUPPORTED_LOCALES = ["en", "zh"];
1527
- function normalizeLocale(value) {
1540
+ function readLocaleTag(value) {
1528
1541
  const raw = Array.isArray(value) ? value[0] : value;
1529
1542
  if (typeof raw !== "string") return void 0;
1530
- const base = raw.trim().toLowerCase().replace("_", "-").split("-")[0];
1531
- return SUPPORTED_LOCALES.includes(base) ? base : void 0;
1543
+ const tag = raw.trim();
1544
+ return tag.length > 0 ? tag : void 0;
1545
+ }
1546
+ function matchKnownLocale(value) {
1547
+ const tag = readLocaleTag(value);
1548
+ if (!tag) return void 0;
1549
+ return (0, import_did_connect_core2.matchLocale)(tag, import_did_connect_core2.LOCALE_CODES);
1532
1550
  }
1533
1551
  var getLocale = (req) => {
1534
- const queryLocale = normalizeLocale(req.query.locale);
1552
+ const queryLocale = matchKnownLocale(req.query.locale);
1535
1553
  if (queryLocale) return queryLocale;
1536
- const cookieLocale = normalizeLocale(req.cookies?.arc_lang);
1554
+ const cookieLocale = matchKnownLocale(req.cookies?.arc_lang);
1537
1555
  if (cookieLocale) return cookieLocale;
1538
- const acceptedLocale = normalizeLocale(req.acceptsLanguages("en-US", "zh-CN"));
1539
- return acceptedLocale || "en";
1556
+ const header = req.get("accept-language");
1557
+ if (typeof header === "string" && header.trim() !== "") {
1558
+ const acceptedLocale = (0, import_did_connect_core2.matchAcceptLanguage)(header, import_did_connect_core2.DEFAULT_ENABLED_LOCALES);
1559
+ if (acceptedLocale) return acceptedLocale;
1560
+ }
1561
+ return "en";
1540
1562
  };
1541
1563
  var getSessionId = () => (0, import_util3.stripHexPrefix)(Mcrypto.getRandomBytes(16)).toUpperCase();
1542
1564
  var noop = () => ({});
@@ -1544,43 +1566,63 @@ var noTouch = (x) => x;
1544
1566
  var errors = {
1545
1567
  tokenMissing: {
1546
1568
  en: "Session Id is required to check status",
1547
- zh: "\u7F3A\u5C11\u4F1A\u8BDD ID \u53C2\u6570"
1569
+ zh: "\u7F3A\u5C11\u4F1A\u8BDD ID \u53C2\u6570",
1570
+ "zh-TW": "\u7F3A\u5C11\u5DE5\u4F5C\u968E\u6BB5 ID \u53C3\u6578",
1571
+ ja: "\u30B9\u30C6\u30FC\u30BF\u30B9\u3092\u78BA\u8A8D\u3059\u308B\u306B\u306F\u30BB\u30C3\u30B7\u30E7\u30F3 ID \u304C\u5FC5\u8981\u3067\u3059\u3002"
1548
1572
  },
1549
1573
  didMismatch: {
1550
1574
  en: "Login user and wallet user mismatch, please relogin and try again",
1551
- zh: "\u767B\u5F55\u7528\u6237\u548C\u626B\u7801\u7528\u6237\u4E0D\u5339\u914D\uFF0C\u4E3A\u4FDD\u969C\u5B89\u5168\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55\u5E94\u7528"
1575
+ zh: "\u767B\u5F55\u7528\u6237\u548C\u626B\u7801\u7528\u6237\u4E0D\u5339\u914D\uFF0C\u4E3A\u4FDD\u969C\u5B89\u5168\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55\u5E94\u7528",
1576
+ "zh-TW": "\u767B\u5165\u4F7F\u7528\u8005\u8207\u6383\u63CF\u9322\u5305\u7684\u4F7F\u7528\u8005\u4E0D\u7B26\u3002\u70BA\u4FDD\u969C\u5B89\u5168\uFF0C\u8ACB\u91CD\u65B0\u767B\u5165\u61C9\u7528\u7A0B\u5F0F\u3002",
1577
+ ja: "\u30ED\u30B0\u30A4\u30F3\u30E6\u30FC\u30B6\u30FC\u3068\u30A6\u30A9\u30EC\u30C3\u30C8\u306E\u30E6\u30FC\u30B6\u30FC\u304C\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002\u5B89\u5168\u306E\u305F\u3081\u3001\u3082\u3046\u4E00\u5EA6\u30ED\u30B0\u30A4\u30F3\u3057\u3066\u304F\u3060\u3055\u3044\u3002"
1552
1578
  },
1553
1579
  mfaMismatch: {
1554
1580
  en: "Dynamic verification code mismatch, please try again later",
1555
- zh: "\u52A8\u6001\u9A8C\u8BC1\u7801\u4E0D\u5339\u914D\uFF0C\u8BF7\u91CD\u8BD5"
1581
+ zh: "\u52A8\u6001\u9A8C\u8BC1\u7801\u4E0D\u5339\u914D\uFF0C\u8BF7\u91CD\u8BD5",
1582
+ "zh-TW": "\u52D5\u614B\u9A57\u8B49\u78BC\u4E0D\u7B26\uFF0C\u8ACB\u7A0D\u5F8C\u518D\u8A66\u4E00\u6B21\u3002",
1583
+ ja: "\u52D5\u7684\u78BA\u8A8D\u30B3\u30FC\u30C9\u304C\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002\u3057\u3070\u3089\u304F\u3057\u3066\u304B\u3089\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002"
1556
1584
  },
1557
1585
  challengeMismatch: {
1558
1586
  en: "Challenge mismatch",
1559
- zh: "\u968F\u673A\u6821\u9A8C\u7801\u4E0D\u5339\u914D"
1587
+ zh: "\u968F\u673A\u6821\u9A8C\u7801\u4E0D\u5339\u914D",
1588
+ "zh-TW": "\u96A8\u6A5F\u6821\u9A57\u78BC\u4E0D\u7B26\u3002",
1589
+ ja: "\u30E9\u30F3\u30C0\u30E0\u78BA\u8A8D\u30B3\u30FC\u30C9\u304C\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002"
1560
1590
  },
1561
1591
  token404: {
1562
1592
  en: "Session not found or expired",
1563
- zh: "\u4F1A\u8BDD\u4E0D\u5B58\u5728\u6216\u5DF2\u8FC7\u671F"
1593
+ zh: "\u4F1A\u8BDD\u4E0D\u5B58\u5728\u6216\u5DF2\u8FC7\u671F",
1594
+ "zh-TW": "\u5DE5\u4F5C\u968E\u6BB5\u4E0D\u5B58\u5728\u6216\u5DF2\u904E\u671F\u3002",
1595
+ ja: "\u30BB\u30C3\u30B7\u30E7\u30F3\u304C\u898B\u3064\u304B\u3089\u306A\u3044\u304B\u3001\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u3066\u3044\u307E\u3059\u3002"
1564
1596
  },
1565
1597
  didMissing: {
1566
1598
  en: "userDid is required to start auth",
1567
- zh: "userDid \u53C2\u6570\u7F3A\u5931\uFF0C\u8BF7\u52FF\u5C1D\u8BD5\u8FDE\u63A5\u591A\u4E2A\u4E0D\u540C\u7684\u94B1\u5305"
1599
+ zh: "userDid \u53C2\u6570\u7F3A\u5931\uFF0C\u8BF7\u52FF\u5C1D\u8BD5\u8FDE\u63A5\u591A\u4E2A\u4E0D\u540C\u7684\u94B1\u5305",
1600
+ "zh-TW": "\u7F3A\u5C11 userDid \u53C3\u6578\uFF0C\u8ACB\u52FF\u5617\u8A66\u9023\u63A5\u591A\u500B\u4E0D\u540C\u7684\u9322\u5305\u3002",
1601
+ ja: "\u8A8D\u8A3C\u3092\u958B\u59CB\u3059\u308B\u306B\u306F userDid \u304C\u5FC5\u8981\u3067\u3059\u3002\u8907\u6570\u306E\u7570\u306A\u308B\u30A6\u30A9\u30EC\u30C3\u30C8\u306B\u306F\u63A5\u7D9A\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002"
1568
1602
  },
1569
1603
  pkMissing: {
1570
1604
  en: "userPk is required to start auth",
1571
- zh: "userPk \u53C2\u6570\u7F3A\u5931\uFF0C\u8BF7\u52FF\u5C1D\u8BD5\u8FDE\u63A5\u591A\u4E2A\u4E0D\u540C\u7684\u94B1\u5305"
1605
+ zh: "userPk \u53C2\u6570\u7F3A\u5931\uFF0C\u8BF7\u52FF\u5C1D\u8BD5\u8FDE\u63A5\u591A\u4E2A\u4E0D\u540C\u7684\u94B1\u5305",
1606
+ "zh-TW": "\u7F3A\u5C11 userPk \u53C3\u6578\uFF0C\u8ACB\u52FF\u5617\u8A66\u9023\u63A5\u591A\u500B\u4E0D\u540C\u7684\u9322\u5305\u3002",
1607
+ ja: "\u8A8D\u8A3C\u3092\u958B\u59CB\u3059\u308B\u306B\u306F userPk \u304C\u5FC5\u8981\u3067\u3059\u3002\u8907\u6570\u306E\u7570\u306A\u308B\u30A6\u30A9\u30EC\u30C3\u30C8\u306B\u306F\u63A5\u7D9A\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002"
1572
1608
  },
1573
1609
  authClaim: {
1574
1610
  en: "authPrincipal claim is not configured correctly",
1575
- zh: "authPrincipal \u58F0\u660E\u914D\u7F6E\u4E0D\u6B63\u786E"
1611
+ zh: "authPrincipal \u58F0\u660E\u914D\u7F6E\u4E0D\u6B63\u786E",
1612
+ "zh-TW": "authPrincipal \u5BA3\u544A\u7684\u8A2D\u5B9A\u4E0D\u6B63\u78BA\u3002",
1613
+ ja: "authPrincipal \u30AF\u30EC\u30FC\u30E0\u306E\u8A2D\u5B9A\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093\u3002"
1576
1614
  },
1577
1615
  userDeclined: {
1578
1616
  en: "You have declined the authentication request",
1579
- zh: "\u6388\u6743\u8BF7\u6C42\u88AB\u62D2\u7EDD"
1617
+ zh: "\u6388\u6743\u8BF7\u6C42\u88AB\u62D2\u7EDD",
1618
+ "zh-TW": "\u60A8\u5DF2\u62D2\u7D55\u9019\u9805\u6388\u6B0A\u8ACB\u6C42\u3002",
1619
+ ja: "\u8A8D\u8A3C\u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u62D2\u5426\u3057\u307E\u3057\u305F\u3002"
1580
1620
  },
1581
1621
  userBusy: {
1582
1622
  en: "Busy processing another DID Connect request",
1583
- zh: "\u6B63\u5728\u5904\u7406\u5176\u4ED6\u8BF7\u6C42"
1623
+ zh: "\u6B63\u5728\u5904\u7406\u5176\u4ED6\u8BF7\u6C42",
1624
+ "zh-TW": "\u6B63\u5728\u8655\u7406\u53E6\u4E00\u500B DID Connect \u8ACB\u6C42\u3002",
1625
+ ja: "\u5225\u306E DID Connect \u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u51E6\u7406\u3057\u3066\u3044\u307E\u3059\u3002"
1584
1626
  }
1585
1627
  };
1586
1628
  var preparePathname = (path, req) => {
@@ -2455,7 +2497,7 @@ var CloudflareKVStorage = class extends import_events.EventEmitter {
2455
2497
  var kv_default = CloudflareKVStorage;
2456
2498
 
2457
2499
  // src/index.ts
2458
- var import_did_connect_core2 = require("@arcblock/did-connect-core");
2500
+ var import_did_connect_core3 = require("@arcblock/did-connect-core");
2459
2501
  // Annotate the CommonJS export names for ESM import in node:
2460
2502
  0 && (module.exports = {
2461
2503
  CloudflareKVStorage,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcblock/did-connect-js",
3
- "version": "4.1.37",
3
+ "version": "4.1.38",
4
4
  "description": "Server-side DID Connect protocol — WalletAuthenticator, WalletHandlers, framework adapters",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -35,7 +35,7 @@
35
35
  "debug": "^4.4.3",
36
36
  "fast-json-stable-stringify": "^2.1.0",
37
37
  "valibot": "^1.4.2",
38
- "@arcblock/did-connect-core": "^4.1.37"
38
+ "@arcblock/did-connect-core": "^4.1.38"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@arcblock/did-agent-storage-memory": "^1.8.0",