@fairmint/open-captable-protocol-daml-js 0.2.154 → 0.2.158
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.ts
CHANGED
|
@@ -12,3 +12,10 @@ export declare const OCP_TEMPLATES: {
|
|
|
12
12
|
readonly issuerAuthorization: typeof Fairmint_OpenCapTable_IssuerAuthorization.IssuerAuthorization.templateId;
|
|
13
13
|
readonly ocpFactory: typeof Fairmint_OpenCapTable_OcpFactory.OcpFactory.templateId;
|
|
14
14
|
};
|
|
15
|
+
export {
|
|
16
|
+
getOpenCapTableDarPath,
|
|
17
|
+
resolveOpenCapTableDarPath,
|
|
18
|
+
OPEN_CAP_TABLE_DAR_EXPORT_SUBPATH,
|
|
19
|
+
OPEN_CAP_TABLE_DAR_PATH_ENV,
|
|
20
|
+
} from './openCapTableDarPath';
|
|
21
|
+
export type { ResolveOpenCapTableDarPathOptions } from './openCapTableDarPath';
|
package/lib/index.js
CHANGED
|
@@ -23,3 +23,8 @@ exports.OCP_TEMPLATES = Object.freeze({
|
|
|
23
23
|
issuerAuthorization: Fairmint_OpenCapTable_IssuerAuthorization.IssuerAuthorization.templateId,
|
|
24
24
|
ocpFactory: Fairmint_OpenCapTable_OcpFactory.OcpFactory.templateId,
|
|
25
25
|
});
|
|
26
|
+
var _openCapTableDarPath = require('./openCapTableDarPath');
|
|
27
|
+
exports.getOpenCapTableDarPath = _openCapTableDarPath.getOpenCapTableDarPath;
|
|
28
|
+
exports.resolveOpenCapTableDarPath = _openCapTableDarPath.resolveOpenCapTableDarPath;
|
|
29
|
+
exports.OPEN_CAP_TABLE_DAR_EXPORT_SUBPATH = _openCapTableDarPath.OPEN_CAP_TABLE_DAR_EXPORT_SUBPATH;
|
|
30
|
+
exports.OPEN_CAP_TABLE_DAR_PATH_ENV = _openCapTableDarPath.OPEN_CAP_TABLE_DAR_PATH_ENV;
|
|
@@ -1,19 +1,46 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* OpenCapTable DAR path helpers. Published as `@fairmint/open-captable-protocol-daml-js/openCapTableDarPath` (and
|
|
3
|
+
* re-exported from the package root).
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
* `
|
|
5
|
+
* @remarks
|
|
6
|
+
* User-facing documentation for `OPEN_CAP_TABLE_DAR_PATH`, monorepo layout, and options lives in this repository’s
|
|
7
|
+
* **GitHub Wiki** — not in markdown files inside the repo.
|
|
6
8
|
*/
|
|
9
|
+
/** Env var: absolute or cwd-relative path to a `.dar` file; checked first when set. */
|
|
10
|
+
export declare const OPEN_CAP_TABLE_DAR_PATH_ENV: "OPEN_CAP_TABLE_DAR_PATH";
|
|
7
11
|
/**
|
|
8
12
|
* Npm `exports` subpath for the raw DAR file (for tools that need `require.resolve` / bundler parity).
|
|
9
13
|
*
|
|
10
14
|
* @see package.json `exports["./opencaptable.dar"]`
|
|
11
15
|
*/
|
|
12
16
|
export declare const OPEN_CAP_TABLE_DAR_EXPORT_SUBPATH: "./opencaptable.dar";
|
|
17
|
+
export interface ResolveOpenCapTableDarPathOptions {
|
|
18
|
+
/**
|
|
19
|
+
* Root of the consuming repository (e.g. SDK or app checkout). The parent directory should contain
|
|
20
|
+
* `open-captable-protocol-daml` when using the default sibling layout.
|
|
21
|
+
*/
|
|
22
|
+
siblingSearchFrom?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Custom DAR path: absolute, or relative to `siblingSearchFrom` (required when relative). Use when the daml checkout
|
|
25
|
+
* is not at the default sibling path.
|
|
26
|
+
*/
|
|
27
|
+
siblingDarPath?: string;
|
|
28
|
+
}
|
|
13
29
|
/**
|
|
14
|
-
*
|
|
30
|
+
* Absolute path to the OpenCapTable DAR inside this npm package (`published-dars/OpenCapTable.dar`).
|
|
15
31
|
*
|
|
16
|
-
* @throws If the file is missing (corrupt install or
|
|
32
|
+
* @throws If the file is missing (corrupt install, or git checkout without `npm run codegen` / staging).
|
|
17
33
|
*/
|
|
18
34
|
export declare function getOpenCapTableDarPath(): string;
|
|
35
|
+
/**
|
|
36
|
+
* Resolve the OpenCapTable DAR for local tooling and tests. Resolution order:
|
|
37
|
+
*
|
|
38
|
+
* 1. **`OPEN_CAP_TABLE_DAR_PATH`** (if set and the file exists).
|
|
39
|
+
* 2. Packaged DAR via {@link getOpenCapTableDarPath}.
|
|
40
|
+
* 3. **`siblingDarPath`** when it resolves to an existing file (absolute, or relative to `siblingSearchFrom`).
|
|
41
|
+
* 4. Default sibling checkout: `{siblingSearchFrom}/../open-captable-protocol-daml/published-dars/OpenCapTable.dar`.
|
|
42
|
+
*
|
|
43
|
+
* On failure after step 2, the thrown error sets **`cause`** to the packaged-DAR error when it was an `Error`.
|
|
44
|
+
*/
|
|
45
|
+
export declare function resolveOpenCapTableDarPath(options?: ResolveOpenCapTableDarPathOptions): string;
|
|
19
46
|
//# sourceMappingURL=openCapTableDarPath.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openCapTableDarPath.d.ts","sourceRoot":"","sources":["../scripts/npm-published-lib/openCapTableDarPath.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"openCapTableDarPath.d.ts","sourceRoot":"","sources":["../scripts/npm-published-lib/openCapTableDarPath.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,uFAAuF;AACvF,eAAO,MAAM,2BAA2B,EAAG,yBAAkC,CAAC;AAE9E;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,EAAG,oBAA6B,CAAC;AAa/E,MAAM,WAAW,iCAAiC;IAChD;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAqCD;;;;GAIG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAS/C;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,CAAC,EAAE,iCAAiC,GAAG,MAAM,CAmD9F"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* OpenCapTable DAR path helpers. Published as `@fairmint/open-captable-protocol-daml-js/openCapTableDarPath` (and
|
|
4
|
+
* re-exported from the package root).
|
|
4
5
|
*
|
|
5
|
-
*
|
|
6
|
-
* `
|
|
6
|
+
* @remarks
|
|
7
|
+
* User-facing documentation for `OPEN_CAP_TABLE_DAR_PATH`, monorepo layout, and options lives in this repository’s
|
|
8
|
+
* **GitHub Wiki** — not in markdown files inside the repo.
|
|
7
9
|
*/
|
|
8
10
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
11
|
if (k2 === undefined) k2 = k;
|
|
@@ -39,10 +41,13 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
39
41
|
};
|
|
40
42
|
})();
|
|
41
43
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
-
exports.OPEN_CAP_TABLE_DAR_EXPORT_SUBPATH = void 0;
|
|
44
|
+
exports.OPEN_CAP_TABLE_DAR_EXPORT_SUBPATH = exports.OPEN_CAP_TABLE_DAR_PATH_ENV = void 0;
|
|
43
45
|
exports.getOpenCapTableDarPath = getOpenCapTableDarPath;
|
|
46
|
+
exports.resolveOpenCapTableDarPath = resolveOpenCapTableDarPath;
|
|
44
47
|
const fs = __importStar(require("fs"));
|
|
45
48
|
const path = __importStar(require("path"));
|
|
49
|
+
/** Env var: absolute or cwd-relative path to a `.dar` file; checked first when set. */
|
|
50
|
+
exports.OPEN_CAP_TABLE_DAR_PATH_ENV = 'OPEN_CAP_TABLE_DAR_PATH';
|
|
46
51
|
/**
|
|
47
52
|
* Npm `exports` subpath for the raw DAR file (for tools that need `require.resolve` / bundler parity).
|
|
48
53
|
*
|
|
@@ -50,9 +55,49 @@ const path = __importStar(require("path"));
|
|
|
50
55
|
*/
|
|
51
56
|
exports.OPEN_CAP_TABLE_DAR_EXPORT_SUBPATH = './opencaptable.dar';
|
|
52
57
|
/**
|
|
53
|
-
*
|
|
58
|
+
* From a dependent repo root: sibling `open-captable-protocol-daml` staged DAR
|
|
59
|
+
* (`../open-captable-protocol-daml/published-dars/OpenCapTable.dar`).
|
|
60
|
+
*/
|
|
61
|
+
const DEFAULT_SIBLING_DAR_SEGMENTS = [
|
|
62
|
+
'..',
|
|
63
|
+
'open-captable-protocol-daml',
|
|
64
|
+
'published-dars',
|
|
65
|
+
'OpenCapTable.dar',
|
|
66
|
+
];
|
|
67
|
+
function readEnvDarPath() {
|
|
68
|
+
const raw = process.env[exports.OPEN_CAP_TABLE_DAR_PATH_ENV]?.trim();
|
|
69
|
+
if (!raw) {
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
const resolved = path.isAbsolute(raw) ? raw : path.resolve(process.cwd(), raw);
|
|
73
|
+
if (!fs.existsSync(resolved)) {
|
|
74
|
+
throw new Error(`${exports.OPEN_CAP_TABLE_DAR_PATH_ENV} points to a missing file: ${resolved} (raw: ${JSON.stringify(raw)})`);
|
|
75
|
+
}
|
|
76
|
+
return resolved;
|
|
77
|
+
}
|
|
78
|
+
function resolveCustomSiblingDar(options) {
|
|
79
|
+
const custom = options.siblingDarPath?.trim();
|
|
80
|
+
if (!custom) {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
if (path.isAbsolute(custom)) {
|
|
84
|
+
return fs.existsSync(custom) ? custom : null;
|
|
85
|
+
}
|
|
86
|
+
const from = options.siblingSearchFrom?.trim();
|
|
87
|
+
if (!from) {
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
const joined = path.resolve(from, custom);
|
|
91
|
+
return fs.existsSync(joined) ? joined : null;
|
|
92
|
+
}
|
|
93
|
+
function defaultSiblingDar(siblingSearchFrom) {
|
|
94
|
+
const dar = path.join(siblingSearchFrom, ...DEFAULT_SIBLING_DAR_SEGMENTS);
|
|
95
|
+
return fs.existsSync(dar) ? dar : null;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Absolute path to the OpenCapTable DAR inside this npm package (`published-dars/OpenCapTable.dar`).
|
|
54
99
|
*
|
|
55
|
-
* @throws If the file is missing (corrupt install or
|
|
100
|
+
* @throws If the file is missing (corrupt install, or git checkout without `npm run codegen` / staging).
|
|
56
101
|
*/
|
|
57
102
|
function getOpenCapTableDarPath() {
|
|
58
103
|
const darPath = path.join(__dirname, '..', 'published-dars', 'OpenCapTable.dar');
|
|
@@ -62,4 +107,59 @@ function getOpenCapTableDarPath() {
|
|
|
62
107
|
}
|
|
63
108
|
return darPath;
|
|
64
109
|
}
|
|
110
|
+
/**
|
|
111
|
+
* Resolve the OpenCapTable DAR for local tooling and tests. Resolution order:
|
|
112
|
+
*
|
|
113
|
+
* 1. **`OPEN_CAP_TABLE_DAR_PATH`** (if set and the file exists).
|
|
114
|
+
* 2. Packaged DAR via {@link getOpenCapTableDarPath}.
|
|
115
|
+
* 3. **`siblingDarPath`** when it resolves to an existing file (absolute, or relative to `siblingSearchFrom`).
|
|
116
|
+
* 4. Default sibling checkout: `{siblingSearchFrom}/../open-captable-protocol-daml/published-dars/OpenCapTable.dar`.
|
|
117
|
+
*
|
|
118
|
+
* On failure after step 2, the thrown error sets **`cause`** to the packaged-DAR error when it was an `Error`.
|
|
119
|
+
*/
|
|
120
|
+
function resolveOpenCapTableDarPath(options) {
|
|
121
|
+
const opts = options ?? {};
|
|
122
|
+
const customRaw = opts.siblingDarPath?.trim();
|
|
123
|
+
if (customRaw && !path.isAbsolute(customRaw) && !opts.siblingSearchFrom?.trim()) {
|
|
124
|
+
throw new Error('resolveOpenCapTableDarPath: siblingDarPath is relative; set siblingSearchFrom to the dependent repository root.');
|
|
125
|
+
}
|
|
126
|
+
const envPath = readEnvDarPath();
|
|
127
|
+
if (envPath) {
|
|
128
|
+
return envPath;
|
|
129
|
+
}
|
|
130
|
+
try {
|
|
131
|
+
return getOpenCapTableDarPath();
|
|
132
|
+
}
|
|
133
|
+
catch (packagedCause) {
|
|
134
|
+
const custom = resolveCustomSiblingDar(opts);
|
|
135
|
+
if (custom) {
|
|
136
|
+
return custom;
|
|
137
|
+
}
|
|
138
|
+
const from = opts.siblingSearchFrom?.trim();
|
|
139
|
+
if (from) {
|
|
140
|
+
const siblingDar = defaultSiblingDar(from);
|
|
141
|
+
if (siblingDar) {
|
|
142
|
+
return siblingDar;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
const base = packagedCause instanceof Error ? packagedCause.message : String(packagedCause);
|
|
146
|
+
const hints = [];
|
|
147
|
+
if (opts.siblingDarPath?.trim()) {
|
|
148
|
+
hints.push('siblingDarPath did not resolve to an existing file.');
|
|
149
|
+
}
|
|
150
|
+
if (from) {
|
|
151
|
+
hints.push('No DAR at ../open-captable-protocol-daml/published-dars/OpenCapTable.dar.');
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
hints.push('Tip: set OPEN_CAP_TABLE_DAR_PATH, or pass siblingSearchFrom / siblingDarPath for monorepo dev (see GitHub Wiki).');
|
|
155
|
+
}
|
|
156
|
+
const msg = [base, hints.length ? ` ${hints.join(' ')}` : ''].join('');
|
|
157
|
+
if (packagedCause instanceof Error) {
|
|
158
|
+
const err = new Error(msg);
|
|
159
|
+
err.cause = packagedCause;
|
|
160
|
+
throw err;
|
|
161
|
+
}
|
|
162
|
+
throw new Error(msg);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
65
165
|
//# sourceMappingURL=openCapTableDarPath.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openCapTableDarPath.js","sourceRoot":"","sources":["../scripts/npm-published-lib/openCapTableDarPath.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"openCapTableDarPath.js","sourceRoot":"","sources":["../scripts/npm-published-lib/openCapTableDarPath.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+EH,wDASC;AAYD,gEAmDC;AArJD,uCAAyB;AACzB,2CAA6B;AAE7B,uFAAuF;AAC1E,QAAA,2BAA2B,GAAG,yBAAkC,CAAC;AAE9E;;;;GAIG;AACU,QAAA,iCAAiC,GAAG,oBAA6B,CAAC;AAE/E;;;GAGG;AACH,MAAM,4BAA4B,GAAG;IACnC,IAAI;IACJ,6BAA6B;IAC7B,gBAAgB;IAChB,kBAAkB;CACV,CAAC;AAeX,SAAS,cAAc;IACrB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,mCAA2B,CAAC,EAAE,IAAI,EAAE,CAAC;IAC7D,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;IAC/E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CACb,GAAG,mCAA2B,8BAA8B,QAAQ,UAAU,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CACrG,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,uBAAuB,CAAC,OAA0C;IACzE,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/C,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAC/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1C,OAAO,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/C,CAAC;AAED,SAAS,iBAAiB,CAAC,iBAAyB;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,4BAA4B,CAAC,CAAC;IAC1E,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB;IACpC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;IACjF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,iCAAiC,OAAO,IAAI;YAC1C,yGAAyG,CAC5G,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,0BAA0B,CAAC,OAA2C;IACpF,MAAM,IAAI,GAAG,OAAO,IAAI,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;IAC9C,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE,EAAE,CAAC;QAChF,MAAM,IAAI,KAAK,CACb,iHAAiH,CAClH,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,CAAC;QACH,OAAO,sBAAsB,EAAE,CAAC;IAClC,CAAC;IAAC,OAAO,aAAa,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,UAAU,CAAC;YACpB,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,aAAa,YAAY,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC5F,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACT,KAAK,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QAC1F,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CACR,kHAAkH,CACnH,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvE,IAAI,aAAa,YAAY,KAAK,EAAE,CAAC;YACnC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,GAAG,CAA6B,CAAC;YACvD,GAAG,CAAC,KAAK,GAAG,aAAa,CAAC;YAC1B,MAAM,GAAG,CAAC;QACZ,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC"}
|