@git.zone/cli 6.8.0 → 6.9.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.
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/mod_release/helpers.npmartifact.d.ts +5 -4
- package/dist_ts/mod_release/helpers.npmartifact.js +36 -9
- package/dist_ts/mod_release/helpers.releasepublication.d.ts +2 -1
- package/dist_ts/mod_release/helpers.releasepublication.js +5 -3
- package/dist_ts/mod_release/index.d.ts +2 -0
- package/dist_ts/mod_release/index.js +13 -7
- package/package.json +2 -2
- package/readme.md +15 -1
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/mod_release/helpers.npmartifact.ts +58 -12
- package/ts/mod_release/helpers.releasepublication.ts +6 -0
- package/ts/mod_release/index.ts +18 -5
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@git.zone/cli',
|
|
6
|
-
version: '6.
|
|
6
|
+
version: '6.9.0',
|
|
7
7
|
description: 'A comprehensive CLI tool for enhancing and managing local development workflows with gitzone utilities, focusing on project setup, version control, code formatting, and template management.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxlQUFlO0lBQ3JCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLFdBQVcsRUFBRSwrTEFBK0w7Q0FDN00sQ0FBQSJ9
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as plugins from "./mod.plugins.js";
|
|
2
2
|
import { type IReleaseArtifact } from "./classes.releasejournal.js";
|
|
3
|
-
declare const supportedPnpmVersions: readonly ["11.25.0", "12.1.0", "12.2.1", "12.3.4"];
|
|
3
|
+
declare const supportedPnpmVersions: readonly ["11.25.0", "12.1.0", "12.2.1", "12.3.0", "12.3.4"];
|
|
4
4
|
export declare function assertNpmPackageName(value: unknown): asserts value is string;
|
|
5
5
|
export interface IPnpmReleaseCapability {
|
|
6
|
-
version: (typeof supportedPnpmVersions)[number];
|
|
6
|
+
readonly version: (typeof supportedPnpmVersions)[number];
|
|
7
7
|
}
|
|
8
|
+
export declare const buildQualifiedPnpmArgs: (capabilityArg: IPnpmReleaseCapability | undefined, argsArg: readonly string[]) => string[];
|
|
8
9
|
export type TNpmArtifactProbeStatus = "absent" | "exact" | "conflict" | "inconclusive";
|
|
9
10
|
export interface INpmArtifactProbeResult {
|
|
10
11
|
status: TNpmArtifactProbeStatus;
|
|
@@ -23,10 +24,10 @@ export declare const assertNoLegacyNpmPublisher: (cwdArg: string) => Promise<voi
|
|
|
23
24
|
export declare const normalizeNpmRegistryUrl: (valueArg: string) => string;
|
|
24
25
|
export declare const hashReleaseDestination: (valueArg: string) => string;
|
|
25
26
|
export declare const calculateNpmArtifact: (artifactPathArg: string, packageNameArg: string, versionArg: string) => Promise<IReleaseArtifact>;
|
|
26
|
-
export declare const packNpmArtifact: (smartshellArg: plugins.smartshell.Smartshell, cwdArg: string, destinationDirectoryArg: string, expectedVersionArg: string, fileArg?: string) => Promise<IReleaseArtifact>;
|
|
27
|
+
export declare const packNpmArtifact: (smartshellArg: plugins.smartshell.Smartshell, cwdArg: string, destinationDirectoryArg: string, expectedVersionArg: string, capabilityArg: IPnpmReleaseCapability | undefined, fileArg?: string) => Promise<IReleaseArtifact>;
|
|
27
28
|
export declare const verifyStoredNpmArtifact: (artifactPathArg: string, expectedArtifactArg: IReleaseArtifact) => Promise<void>;
|
|
28
29
|
export declare const buildPnpmPublishArgs: (artifactPathArg: string, registryArg: string) => string[];
|
|
29
|
-
export declare const publishNpmArtifact: (smartshellArg: plugins.smartshell.Smartshell, cwdArg: string, artifactPathArg: string, registryArg: string) => Promise<{
|
|
30
|
+
export declare const publishNpmArtifact: (smartshellArg: plugins.smartshell.Smartshell, cwdArg: string, artifactPathArg: string, registryArg: string, capabilityArg: IPnpmReleaseCapability | undefined) => Promise<{
|
|
30
31
|
exitCode: number;
|
|
31
32
|
output: string;
|
|
32
33
|
}>;
|
|
@@ -5,6 +5,7 @@ const supportedPnpmVersions = [
|
|
|
5
5
|
"11.25.0",
|
|
6
6
|
"12.1.0",
|
|
7
7
|
"12.2.1",
|
|
8
|
+
"12.3.0",
|
|
8
9
|
"12.3.4",
|
|
9
10
|
];
|
|
10
11
|
const pnpmHelpRequirements = {
|
|
@@ -45,6 +46,19 @@ const pnpmHelpRequirements = {
|
|
|
45
46
|
"[possible values: public, restricted]",
|
|
46
47
|
],
|
|
47
48
|
},
|
|
49
|
+
"12.3.0": {
|
|
50
|
+
pack: ["Usage: pnpm pack [OPTIONS]", "--out <OUT>", "--json"],
|
|
51
|
+
publish: [
|
|
52
|
+
"Usage: pnpm publish [OPTIONS] [PACKAGE]",
|
|
53
|
+
"Tarball or directory to publish",
|
|
54
|
+
"--no-git-checks",
|
|
55
|
+
"--ignore-scripts",
|
|
56
|
+
"--json",
|
|
57
|
+
"--tag <TAG>",
|
|
58
|
+
"--access <ACCESS>",
|
|
59
|
+
"[possible values: public, restricted]",
|
|
60
|
+
],
|
|
61
|
+
},
|
|
48
62
|
"12.3.4": {
|
|
49
63
|
pack: ["Usage: pnpm pack [OPTIONS]", "--out <OUT>", "--json"],
|
|
50
64
|
publish: [
|
|
@@ -69,6 +83,13 @@ export function assertNpmPackageName(value) {
|
|
|
69
83
|
throw new Error("Invalid release package name.");
|
|
70
84
|
}
|
|
71
85
|
}
|
|
86
|
+
export const buildQualifiedPnpmArgs = (capabilityArg, argsArg) => {
|
|
87
|
+
if (!capabilityArg ||
|
|
88
|
+
!supportedPnpmVersions.includes(capabilityArg.version)) {
|
|
89
|
+
throw new Error("npm release commands require a qualified pnpm invocation.");
|
|
90
|
+
}
|
|
91
|
+
return ["with", capabilityArg.version, ...argsArg];
|
|
92
|
+
};
|
|
72
93
|
const readPackageIdentity = async (cwdArg) => {
|
|
73
94
|
let packageJson;
|
|
74
95
|
try {
|
|
@@ -111,17 +132,18 @@ export const assertPnpmReleaseCapability = async (smartshellArg, cwdArg) => {
|
|
|
111
132
|
throw new Error(`Exact release packaging requires a verified pnpm version (${supportedPnpmVersions.join(", ")}); resolved ${version || "unknown"}.`);
|
|
112
133
|
}
|
|
113
134
|
const requirements = pnpmHelpRequirements[supportedVersion];
|
|
114
|
-
const
|
|
135
|
+
const capability = Object.freeze({ version: supportedVersion });
|
|
136
|
+
const packHelp = await smartshellArg.execSpawn("pnpm", buildQualifiedPnpmArgs(capability, ["pack", "--help"]), {
|
|
115
137
|
cwd: cwdArg,
|
|
116
138
|
silent: true,
|
|
117
139
|
timeout: capabilityCommandTimeoutMs,
|
|
118
140
|
timeoutKillGraceMs: 5_000,
|
|
119
141
|
});
|
|
120
142
|
if (packHelp.exitCode !== 0) {
|
|
121
|
-
throw new Error("Unable to inspect pnpm pack capabilities.");
|
|
143
|
+
throw new Error("Unable to inspect the selected pnpm pack capabilities. Exact release commands require standalone pnpm with support; Corepack launchers are unsupported.");
|
|
122
144
|
}
|
|
123
145
|
requireHelpFragments(packHelp.combinedOutput, requirements.pack, "pack");
|
|
124
|
-
const publishHelp = await smartshellArg.execSpawn("pnpm", ["publish", "--help"], {
|
|
146
|
+
const publishHelp = await smartshellArg.execSpawn("pnpm", buildQualifiedPnpmArgs(capability, ["publish", "--help"]), {
|
|
125
147
|
cwd: cwdArg,
|
|
126
148
|
silent: true,
|
|
127
149
|
timeout: capabilityCommandTimeoutMs,
|
|
@@ -131,7 +153,7 @@ export const assertPnpmReleaseCapability = async (smartshellArg, cwdArg) => {
|
|
|
131
153
|
throw new Error("Unable to inspect pnpm publish capabilities.");
|
|
132
154
|
}
|
|
133
155
|
requireHelpFragments(publishHelp.combinedOutput, requirements.publish, "publish");
|
|
134
|
-
return
|
|
156
|
+
return capability;
|
|
135
157
|
};
|
|
136
158
|
/**
|
|
137
159
|
* Development documents must never reach a published tarball.
|
|
@@ -255,7 +277,7 @@ const syncFile = async (filePathArg) => {
|
|
|
255
277
|
await handle.close();
|
|
256
278
|
}
|
|
257
279
|
};
|
|
258
|
-
export const packNpmArtifact = async (smartshellArg, cwdArg, destinationDirectoryArg, expectedVersionArg, fileArg = releaseArtifactFileName) => {
|
|
280
|
+
export const packNpmArtifact = async (smartshellArg, cwdArg, destinationDirectoryArg, expectedVersionArg, capabilityArg, fileArg = releaseArtifactFileName) => {
|
|
259
281
|
if (fileArg !== releaseArtifactFileName &&
|
|
260
282
|
!/^package\.[0-9a-f]{64}\.tgz$/.test(fileArg)) {
|
|
261
283
|
throw new Error("Invalid release artifact filename.");
|
|
@@ -265,7 +287,12 @@ export const packNpmArtifact = async (smartshellArg, cwdArg, destinationDirector
|
|
|
265
287
|
throw new Error(`package.json version ${identity.version} does not match release ${expectedVersionArg}.`);
|
|
266
288
|
}
|
|
267
289
|
const artifactPath = plugins.path.join(destinationDirectoryArg, fileArg);
|
|
268
|
-
const result = await smartshellArg.execSpawn("pnpm",
|
|
290
|
+
const result = await smartshellArg.execSpawn("pnpm", buildQualifiedPnpmArgs(capabilityArg, [
|
|
291
|
+
"pack",
|
|
292
|
+
"--out",
|
|
293
|
+
artifactPath,
|
|
294
|
+
"--json",
|
|
295
|
+
]), {
|
|
269
296
|
cwd: cwdArg,
|
|
270
297
|
timeout: packCommandTimeoutMs,
|
|
271
298
|
timeoutKillGraceMs: 5_000,
|
|
@@ -321,8 +348,8 @@ export const buildPnpmPublishArgs = (artifactPathArg, registryArg) => [
|
|
|
321
348
|
"--ignore-scripts",
|
|
322
349
|
"--json",
|
|
323
350
|
];
|
|
324
|
-
export const publishNpmArtifact = async (smartshellArg, cwdArg, artifactPathArg, registryArg) => {
|
|
325
|
-
const result = await smartshellArg.execSpawn("pnpm", buildPnpmPublishArgs(artifactPathArg, registryArg), {
|
|
351
|
+
export const publishNpmArtifact = async (smartshellArg, cwdArg, artifactPathArg, registryArg, capabilityArg) => {
|
|
352
|
+
const result = await smartshellArg.execSpawn("pnpm", buildQualifiedPnpmArgs(capabilityArg, buildPnpmPublishArgs(artifactPathArg, registryArg)), {
|
|
326
353
|
cwd: cwdArg,
|
|
327
354
|
timeout: publishCommandTimeoutMs,
|
|
328
355
|
timeoutKillGraceMs: 5_000,
|
|
@@ -478,4 +505,4 @@ export const waitForAnonymousNpmArtifact = async (registryArg, artifactArg, tagA
|
|
|
478
505
|
}
|
|
479
506
|
return lastResult;
|
|
480
507
|
};
|
|
481
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5ucG1hcnRpZmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RzL21vZF9yZWxlYXNlL2hlbHBlcnMubnBtYXJ0aWZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQ0wsdUJBQXVCLEdBRXhCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFcEYsTUFBTSxxQkFBcUIsR0FBRztJQUM1QixTQUFTO0lBQ1QsUUFBUTtJQUNSLFFBQVE7SUFDUixRQUFRO0NBQ0EsQ0FBQztBQUNYLE1BQU0sb0JBQW9CLEdBQUc7SUFDM0IsU0FBUyxFQUFFO1FBQ1QsSUFBSSxFQUFFLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQztRQUNoQyxPQUFPLEVBQUU7WUFDUCwyQkFBMkI7WUFDM0IsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixRQUFRO1lBQ1IsYUFBYTtZQUNiLDhCQUE4QjtTQUMvQjtLQUNGO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsSUFBSSxFQUFFLENBQUMsNEJBQTRCLEVBQUUsYUFBYSxFQUFFLFFBQVEsQ0FBQztRQUM3RCxPQUFPLEVBQUU7WUFDUCx5Q0FBeUM7WUFDekMsaUNBQWlDO1lBQ2pDLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsUUFBUTtZQUNSLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsdUNBQXVDO1NBQ3hDO0tBQ0Y7SUFDRCxRQUFRLEVBQUU7UUFDUixJQUFJLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDO1FBQzdELE9BQU8sRUFBRTtZQUNQLHlDQUF5QztZQUN6QyxpQ0FBaUM7WUFDakMsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixRQUFRO1lBQ1IsYUFBYTtZQUNiLG1CQUFtQjtZQUNuQix1Q0FBdUM7U0FDeEM7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
|
|
508
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5ucG1hcnRpZmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3RzL21vZF9yZWxlYXNlL2hlbHBlcnMubnBtYXJ0aWZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQztBQUM1QyxPQUFPLEVBQ0wsdUJBQXVCLEdBRXhCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFcEYsTUFBTSxxQkFBcUIsR0FBRztJQUM1QixTQUFTO0lBQ1QsUUFBUTtJQUNSLFFBQVE7SUFDUixRQUFRO0lBQ1IsUUFBUTtDQUNBLENBQUM7QUFDWCxNQUFNLG9CQUFvQixHQUFHO0lBQzNCLFNBQVMsRUFBRTtRQUNULElBQUksRUFBRSxDQUFDLGNBQWMsRUFBRSxRQUFRLENBQUM7UUFDaEMsT0FBTyxFQUFFO1lBQ1AsMkJBQTJCO1lBQzNCLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsUUFBUTtZQUNSLGFBQWE7WUFDYiw4QkFBOEI7U0FDL0I7S0FDRjtJQUNELFFBQVEsRUFBRTtRQUNSLElBQUksRUFBRSxDQUFDLDRCQUE0QixFQUFFLGFBQWEsRUFBRSxRQUFRLENBQUM7UUFDN0QsT0FBTyxFQUFFO1lBQ1AseUNBQXlDO1lBQ3pDLGlDQUFpQztZQUNqQyxpQkFBaUI7WUFDakIsa0JBQWtCO1lBQ2xCLFFBQVE7WUFDUixhQUFhO1lBQ2IsbUJBQW1CO1lBQ25CLHVDQUF1QztTQUN4QztLQUNGO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsSUFBSSxFQUFFLENBQUMsNEJBQTRCLEVBQUUsYUFBYSxFQUFFLFFBQVEsQ0FBQztRQUM3RCxPQUFPLEVBQUU7WUFDUCx5Q0FBeUM7WUFDekMsaUNBQWlDO1lBQ2pDLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsUUFBUTtZQUNSLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsdUNBQXVDO1NBQ3hDO0tBQ0Y7SUFDRCxRQUFRLEVBQUU7UUFDUixJQUFJLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDO1FBQzdELE9BQU8sRUFBRTtZQUNQLHlDQUF5QztZQUN6QyxpQ0FBaUM7WUFDakMsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixRQUFRO1lBQ1IsYUFBYTtZQUNiLG1CQUFtQjtZQUNuQix1Q0FBdUM7U0FDeEM7S0FDRjtJQUNELFFBQVEsRUFBRTtRQUNSLElBQUksRUFBRSxDQUFDLDRCQUE0QixFQUFFLGFBQWEsRUFBRSxRQUFRLENBQUM7UUFDN0QsT0FBTyxFQUFFO1lBQ1AseUNBQXlDO1lBQ3pDLGlDQUFpQztZQUNqQyxpQkFBaUI7WUFDakIsa0JBQWtCO1lBQ2xCLFFBQVE7WUFDUixhQUFhO1lBQ2IsbUJBQW1CO1lBQ25CLHVDQUF1QztTQUN4QztLQUNGO0NBQ08sQ0FBQztBQUNYLE1BQU0sNEJBQTRCLEdBQUcsQ0FBQyxHQUFHLElBQUksR0FBRyxJQUFJLENBQUM7QUFDckQsTUFBTSwwQkFBMEIsR0FBRyxNQUFNLENBQUM7QUFDMUMsTUFBTSxvQkFBb0IsR0FBRyxFQUFFLEdBQUcsTUFBTSxDQUFDO0FBQ3pDLE1BQU0sdUJBQXVCLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztBQUMzQyxNQUFNLGdCQUFnQixHQUNwQix3RUFBd0UsQ0FBQztBQUUzRSxNQUFNLFVBQVUsb0JBQW9CLENBQUMsS0FBYztJQUNqRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQy9ELE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUNuRCxDQUFDO0FBQ0gsQ0FBQztBQU1ELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLENBQ3BDLGFBQWlELEVBQ2pELE9BQTBCLEVBQ2hCLEVBQUU7SUFDWixJQUNFLENBQUMsYUFBYTtRQUNkLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFDdEQsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQ2IsMkRBQTJELENBQzVELENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTyxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsT0FBTyxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7QUFDckQsQ0FBQyxDQUFDO0FBd0JGLE1BQU0sbUJBQW1CLEdBQUcsS0FBSyxFQUMvQixNQUFjLEVBQ3FDLEVBQUU7SUFDckQsSUFBSSxXQUFvQixDQUFDO0lBQ3pCLElBQUksQ0FBQztRQUNILFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUN0QixNQUFNLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUN2QixPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLEVBQ3pDLE1BQU0sQ0FDUCxDQUNGLENBQUM7SUFDSixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELEVBQUU7WUFDeEUsS0FBSyxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsSUFDRSxPQUFPLFdBQVcsS0FBSyxRQUFRO1FBQy9CLFdBQVcsS0FBSyxJQUFJO1FBQ3BCLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQzFCLE9BQVEsV0FBa0MsQ0FBQyxJQUFJLEtBQUssUUFBUTtRQUM1RCxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBRSxXQUFnQyxDQUFDLElBQUksQ0FBQztRQUM5RCxPQUFRLFdBQXFDLENBQUMsT0FBTyxLQUFLLFFBQVEsRUFDbEUsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBQ0QsT0FBTztRQUNMLFdBQVcsRUFBRyxXQUFnQyxDQUFDLElBQUk7UUFDbkQsT0FBTyxFQUFHLFdBQW1DLENBQUMsT0FBTztLQUN0RCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxvQkFBb0IsR0FBRyxDQUMzQixTQUFpQixFQUNqQixZQUErQixFQUMvQixVQUFrQixFQUNaLEVBQUU7SUFDUixNQUFNLE9BQU8sR0FBRyxZQUFZLENBQUMsTUFBTSxDQUNqQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUNsRCxDQUFDO0lBQ0YsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQ2IsUUFBUSxVQUFVLG9EQUFvRCxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQzVGLENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsS0FBSyxFQUM5QyxhQUE0QyxFQUM1QyxNQUFjLEVBQ21CLEVBQUU7SUFDbkMsTUFBTSxhQUFhLEdBQUcsTUFBTSxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFO1FBQ3pFLEdBQUcsRUFBRSxNQUFNO1FBQ1gsTUFBTSxFQUFFLElBQUk7UUFDWixPQUFPLEVBQUUsMEJBQTBCO1FBQ25DLGtCQUFrQixFQUFFLEtBQUs7S0FDMUIsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QyxNQUFNLGdCQUFnQixHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FDakQsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLFlBQVksS0FBSyxPQUFPLENBQzNDLENBQUM7SUFDRixJQUFJLGFBQWEsQ0FBQyxRQUFRLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN0RCxNQUFNLElBQUksS0FBSyxDQUNiLDZEQUE2RCxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsT0FBTyxJQUFJLFNBQVMsR0FBRyxDQUNwSSxDQUFDO0lBQ0osQ0FBQztJQUNELE1BQU0sWUFBWSxHQUFHLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDNUQsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7SUFFaEUsTUFBTSxRQUFRLEdBQUcsTUFBTSxhQUFhLENBQUMsU0FBUyxDQUM1QyxNQUFNLEVBQ04sc0JBQXNCLENBQUMsVUFBVSxFQUFFLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQ3REO1FBQ0UsR0FBRyxFQUFFLE1BQU07UUFDWCxNQUFNLEVBQUUsSUFBSTtRQUNaLE9BQU8sRUFBRSwwQkFBMEI7UUFDbkMsa0JBQWtCLEVBQUUsS0FBSztLQUMxQixDQUNGLENBQUM7SUFDRixJQUFJLFFBQVEsQ0FBQyxRQUFRLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FDYix5SkFBeUosQ0FDMUosQ0FBQztJQUNKLENBQUM7SUFDRCxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFFekUsTUFBTSxXQUFXLEdBQUcsTUFBTSxhQUFhLENBQUMsU0FBUyxDQUMvQyxNQUFNLEVBQ04sc0JBQXNCLENBQUMsVUFBVSxFQUFFLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQ3pEO1FBQ0UsR0FBRyxFQUFFLE1BQU07UUFDWCxNQUFNLEVBQUUsSUFBSTtRQUNaLE9BQU8sRUFBRSwwQkFBMEI7UUFDbkMsa0JBQWtCLEVBQUUsS0FBSztLQUMxQixDQUNGLENBQUM7SUFDRixJQUFJLFdBQVcsQ0FBQyxRQUFRLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFDRCxvQkFBb0IsQ0FDbEIsV0FBVyxDQUFDLGNBQWMsRUFDMUIsWUFBWSxDQUFDLE9BQU8sRUFDcEIsU0FBUyxDQUNWLENBQUM7SUFDRixPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sMkJBQTJCLEdBQUc7SUFDbEMsMEJBQTBCO0lBQzFCLDJCQUEyQjtJQUMzQixhQUFhO0lBQ2IsY0FBYztJQUNkLG1CQUFtQjtDQUNYLENBQUM7QUFFWCxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBRyxDQUMvQyxZQUErQixFQUNyQixFQUFFO0lBQ1osTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUNwQyxLQUFLLE1BQU0sUUFBUSxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BDLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLENBQUMsUUFBUTtZQUFFLFNBQVM7UUFDeEQsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNyRSwwRUFBMEU7UUFDMUUsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUFFLFNBQVM7UUFDdkMsSUFDRSwyQkFBMkIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUM5QyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUM1QixFQUNELENBQUM7WUFDRCxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVCLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDL0IsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsQ0FDbkQsWUFBK0IsRUFDekIsRUFBRTtJQUNSLE1BQU0sU0FBUyxHQUFHLGlDQUFpQyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2xFLElBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMzQixPQUFPO0lBQ1QsQ0FBQztJQUNELE1BQU0sSUFBSSxLQUFLLENBQ2Isd0RBQXdELFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7UUFDOUUscUZBQXFGO1FBQ3JGLDBGQUEwRjtRQUMxRiwwRkFBMEY7UUFDMUYsK0VBQStFLENBQ2xGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLDBCQUEwQixHQUFHO0lBQ2pDLG9DQUFvQztJQUNwQyxnQkFBZ0I7Q0FDUixDQUFDO0FBRVgsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsS0FBSyxFQUM3QyxNQUFjLEVBQ0MsRUFBRTtJQUNqQixLQUFLLE1BQU0sWUFBWSxJQUFJLDBCQUEwQixFQUFFLENBQUM7UUFDdEQsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ3pELElBQUksT0FBZSxDQUFDO1FBQ3BCLElBQUksQ0FBQztZQUNILE9BQU8sR0FBRyxNQUFNLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUssS0FBK0IsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ3ZELFNBQVM7WUFDWCxDQUFDO1lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FDYixxQkFBcUIsWUFBWSw4QkFBOEIsRUFDL0Q7Z0JBQ0UsS0FBSyxFQUFFLEtBQUs7YUFDYixDQUNGLENBQUM7UUFDSixDQUFDO1FBQ0QsTUFBTSxhQUFhLEdBQUcsT0FBTzthQUMxQixLQUFLLENBQUMsSUFBSSxDQUFDO2FBQ1gsTUFBTSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2QsSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUNwRCxNQUFNLElBQUksS0FBSyxDQUNiLEdBQUcsWUFBWSx3REFBd0Q7Z0JBQ3JFLDhHQUE4RyxDQUNqSCxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLFFBQWdCLEVBQVUsRUFBRTtJQUNsRSxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQ3JELE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBQ0QsSUFBSSxHQUFRLENBQUM7SUFDYixJQUFJLENBQUM7UUFDSCxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUNELElBQ0UsQ0FBQyxHQUFHLENBQUMsUUFBUSxLQUFLLFFBQVEsSUFBSSxHQUFHLENBQUMsUUFBUSxLQUFLLE9BQU8sQ0FBQztRQUN2RCxHQUFHLENBQUMsUUFBUTtRQUNaLEdBQUcsQ0FBQyxRQUFRO1FBQ1osR0FBRyxDQUFDLE1BQU07UUFDVixHQUFHLENBQUMsSUFBSSxFQUNSLENBQUM7UUFDRCxNQUFNLElBQUksS0FBSyxDQUNiLHdGQUF3RixDQUN6RixDQUFDO0lBQ0osQ0FBQztJQUNELE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsRCxPQUFPLEdBQUcsR0FBRyxDQUFDLE1BQU0sR0FBRyxRQUFRLEVBQUUsQ0FBQztBQUNwQyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLFFBQWdCLEVBQVUsRUFBRTtJQUNqRSxzQ0FBc0MsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNqRCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDNUUsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsS0FBSyxFQUN2QyxlQUF1QixFQUN2QixjQUFzQixFQUN0QixVQUFrQixFQUNTLEVBQUU7SUFDN0IsTUFBTSxJQUFJLEdBQUcsTUFBTSxPQUFPLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNyRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQzlELE1BQU0sSUFBSSxLQUFLLENBQUMsd0RBQXdELENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBQ0QsTUFBTSxLQUFLLEdBQUcsTUFBTSxPQUFPLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN6RCxPQUFPO1FBQ0wsSUFBSSxFQUFFLGFBQWE7UUFDbkIsSUFBSSxFQUFFLHVCQUF1QjtRQUM3QixXQUFXLEVBQUUsY0FBYztRQUMzQixPQUFPLEVBQUUsVUFBVTtRQUNuQixJQUFJLEVBQUUsS0FBSyxDQUFDLFVBQVU7UUFDdEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ25FLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUN2RSxTQUFTLEVBQUUsVUFBVSxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFO0tBQzFGLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLFFBQVEsR0FBRyxLQUFLLEVBQUUsV0FBbUIsRUFBaUIsRUFBRTtJQUM1RCxNQUFNLE1BQU0sR0FBRyxNQUFNLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN2RCxJQUFJLENBQUM7UUFDSCxNQUFNLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDO1lBQVMsQ0FBQztRQUNULE1BQU0sTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZCLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsS0FBSyxFQUNsQyxhQUE0QyxFQUM1QyxNQUFjLEVBQ2QsdUJBQStCLEVBQy9CLGtCQUEwQixFQUMxQixhQUFpRCxFQUNqRCxVQUFrQix1QkFBdUIsRUFDZCxFQUFFO0lBQzdCLElBQ0UsT0FBTyxLQUFLLHVCQUF1QjtRQUNuQyxDQUFDLDhCQUE4QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFDN0MsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuRCxJQUFJLFFBQVEsQ0FBQyxPQUFPLEtBQUssa0JBQWtCLEVBQUUsQ0FBQztRQUM1QyxNQUFNLElBQUksS0FBSyxDQUNiLHdCQUF3QixRQUFRLENBQUMsT0FBTywyQkFBMkIsa0JBQWtCLEdBQUcsQ0FDekYsQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6RSxNQUFNLE1BQU0sR0FBRyxNQUFNLGFBQWEsQ0FBQyxTQUFTLENBQzFDLE1BQU0sRUFDTixzQkFBc0IsQ0FBQyxhQUFhLEVBQUU7UUFDcEMsTUFBTTtRQUNOLE9BQU87UUFDUCxZQUFZO1FBQ1osUUFBUTtLQUNULENBQUMsRUFDRjtRQUNFLEdBQUcsRUFBRSxNQUFNO1FBQ1gsT0FBTyxFQUFFLG9CQUFvQjtRQUM3QixrQkFBa0IsRUFBRSxLQUFLO0tBQzFCLENBQ0YsQ0FBQztJQUNGLElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMxQixNQUFNLElBQUksS0FBSyxDQUNiLDZEQUE2RCxDQUM5RCxDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksTUFBZSxDQUFDO0lBQ3BCLElBQUksQ0FBQztRQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDakIsV0FBVyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUM1RCxDQUFDO0lBQ0osQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLElBQUksS0FBSyxDQUFDLG9EQUFvRCxFQUFFO1lBQ3BFLEtBQUssRUFBRSxLQUFLO1NBQ2IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELElBQ0UsT0FBTyxNQUFNLEtBQUssUUFBUTtRQUMxQixNQUFNLEtBQUssSUFBSTtRQUNmLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO1FBQ3BCLE1BQTZCLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxXQUFXO1FBQzNELE1BQWdDLENBQUMsT0FBTyxLQUFLLFFBQVEsQ0FBQyxPQUFPLEVBQzlELENBQUM7UUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUNELE1BQU0sYUFBYSxHQUFJLE1BQThCLENBQUMsS0FBSyxDQUFDO0lBQzVELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7UUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FDYiw0RkFBNEYsQ0FDN0YsQ0FBQztJQUNKLENBQUM7SUFDRCxxQ0FBcUMsQ0FDbkMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQzdCLE9BQU8sUUFBUSxLQUFLLFFBQVE7UUFDMUIsQ0FBQyxDQUFDLFFBQVE7UUFDVixDQUFDLENBQUMsTUFBTSxDQUFFLFFBQStCLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUN6RCxDQUNGLENBQUM7SUFDRixNQUFNLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM3QixNQUFNLFFBQVEsR0FBRyxNQUFNLG9CQUFvQixDQUN6QyxZQUFZLEVBQ1osUUFBUSxDQUFDLFdBQVcsRUFDcEIsUUFBUSxDQUFDLE9BQU8sQ0FDakIsQ0FBQztJQUNGLE9BQU8sRUFBRSxHQUFHLFFBQVEsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUM7QUFDeEMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsS0FBSyxFQUMxQyxlQUF1QixFQUN2QixtQkFBcUMsRUFDdEIsRUFBRTtJQUNqQixNQUFNLE1BQU0sR0FBRyxNQUFNLG9CQUFvQixDQUN2QyxlQUFlLEVBQ2YsbUJBQW1CLENBQUMsV0FBVyxFQUMvQixtQkFBbUIsQ0FBQyxPQUFPLENBQzVCLENBQUM7SUFDRixJQUNFLE1BQU0sQ0FBQyxJQUFJLEtBQUssbUJBQW1CLENBQUMsSUFBSTtRQUN4QyxNQUFNLENBQUMsSUFBSSxLQUFLLG1CQUFtQixDQUFDLElBQUk7UUFDeEMsTUFBTSxDQUFDLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxNQUFNO1FBQzVDLE1BQU0sQ0FBQyxTQUFTLEtBQUssbUJBQW1CLENBQUMsU0FBUyxFQUNsRCxDQUFDO1FBQ0QsTUFBTSxJQUFJLEtBQUssQ0FDYixxRUFBcUUsQ0FDdEUsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxlQUF1QixFQUN2QixXQUFtQixFQUNULEVBQUUsQ0FBQztJQUNiLFNBQVM7SUFDVCxlQUFlO0lBQ2YsY0FBYyx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsRUFBRTtJQUNwRCxpQkFBaUI7SUFDakIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsUUFBUTtDQUNULENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLEVBQ3JDLGFBQTRDLEVBQzVDLE1BQWMsRUFDZCxlQUF1QixFQUN2QixXQUFtQixFQUNuQixhQUFpRCxFQUNGLEVBQUU7SUFDakQsTUFBTSxNQUFNLEdBQUcsTUFBTSxhQUFhLENBQUMsU0FBUyxDQUMxQyxNQUFNLEVBQ04sc0JBQXNCLENBQ3BCLGFBQWEsRUFDYixvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsV0FBVyxDQUFDLENBQ25ELEVBQ0Q7UUFDRSxHQUFHLEVBQUUsTUFBTTtRQUNYLE9BQU8sRUFBRSx1QkFBdUI7UUFDaEMsa0JBQWtCLEVBQUUsS0FBSztLQUMxQixDQUNGLENBQUM7SUFDRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztBQUN0RSxDQUFDLENBQUM7QUFFRixNQUFNLFFBQVEsR0FBRyxDQUFDLFVBQW9DLEVBQWdCLEVBQUUsQ0FDdEUsVUFBVSxDQUFDLG1CQUFtQixJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUM7QUFFckQsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLEVBQ2pDLE1BQVcsRUFDWCxTQUFpQixFQUNqQixVQUFvQyxFQUNqQixFQUFFO0lBQ3JCLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDO0lBQ2pELE9BQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtRQUNsQyxNQUFNLEVBQUUsS0FBSztRQUNiLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUU7UUFDOUIsUUFBUSxFQUFFLFFBQVE7UUFDbEIsTUFBTSxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0tBQ3ZDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxXQUFxQixFQUFRLEVBQUU7SUFDekQsSUFBSSxXQUFXLENBQUMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNqRCxLQUFLLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixrRkFBa0Y7QUFDbEYsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsS0FBSyxFQUN6QyxXQUFtQixFQUNuQixjQUFzQixFQUN0QixVQUFrQixFQUNsQixhQUF1QyxFQUFFLEVBQzFCLEVBQUU7SUFDakIsTUFBTSxRQUFRLEdBQUcsdUJBQXVCLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsb0JBQW9CLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDckMsTUFBTSxRQUFRLEdBQUcsTUFBTSxxQkFBcUIsQ0FDMUMsSUFBSSxHQUFHLENBQ0wsR0FBRyxRQUFRLElBQUksa0JBQWtCLENBQUMsY0FBYyxDQUFDLElBQUksa0JBQWtCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FDdEYsRUFDRCxrQkFBa0IsRUFDbEIsVUFBVSxDQUNYLENBQUM7SUFDRixrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3QixJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7UUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FDYixnQkFBZ0IsY0FBYyxJQUFJLFVBQVUsc0JBQXNCLFFBQVEsVUFBVSxRQUFRLENBQUMsTUFBTSxJQUFJLENBQ3hHLENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxtQkFBbUIsR0FBRyxLQUFLLEVBQy9CLFdBQXFCLEVBQ3JCLGNBQXNCLEVBQ3RCLFVBQWtCLEVBQ0QsRUFBRTtJQUNuQixNQUFNLGFBQWEsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2hFLElBQ0UsYUFBYTtRQUNiLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxjQUFjLENBQUMsRUFDeEUsQ0FBQztRQUNELGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxVQUFVLHFDQUFxQyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUNELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLFVBQVUsd0JBQXdCLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBQ0QsTUFBTSxNQUFNLEdBQWlCLEVBQUUsQ0FBQztJQUNoQyxJQUFJLElBQUksR0FBRyxDQUFDLENBQUM7SUFDYixNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQzVDLElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNyQixJQUFJLENBQUM7UUFDSCxPQUFPLElBQUksRUFBRSxDQUFDO1lBQ1osTUFBTSxJQUFJLEdBQUcsTUFBTSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDakMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2QsUUFBUSxHQUFHLElBQUksQ0FBQztnQkFDaEIsTUFBTTtZQUNSLENBQUM7WUFDRCxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7WUFDOUIsSUFBSSxJQUFJLEdBQUcsY0FBYyxFQUFFLENBQUM7Z0JBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxVQUFVLHFDQUFxQyxDQUFDLENBQUM7WUFDdEUsQ0FBQztZQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO1lBQVMsQ0FBQztRQUNULElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNkLEtBQUssTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsRUFDL0MsSUFBSSxDQUNMLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLHVCQUF1QixHQUFHLEtBQUssRUFDbkMsV0FBcUIsRUFDSCxFQUFFLENBQ3BCLElBQUksQ0FBQyxLQUFLLENBQ1IsQ0FDRSxNQUFNLG1CQUFtQixDQUN2QixXQUFXLEVBQ1gsNEJBQTRCLEVBQzVCLG1CQUFtQixDQUNwQixDQUNGLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUNuQixDQUFDO0FBRUosTUFBTSxjQUFjLEdBQUcsQ0FDckIsV0FBbUIsRUFDbkIsY0FBc0IsRUFDdEIsVUFBbUIsRUFDZCxFQUFFO0lBQ1AsTUFBTSxjQUFjLEdBQUcsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDMUQsT0FBTyxJQUFJLEdBQUcsQ0FDWixVQUFVO1FBQ1IsQ0FBQyxDQUFDLEdBQUcsdUJBQXVCLENBQUMsV0FBVyxDQUFDLElBQUksY0FBYyxJQUFJLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxFQUFFO1FBQy9GLENBQUMsQ0FBQyxHQUFHLHVCQUF1QixDQUFDLFdBQVcsQ0FBQyxJQUFJLGNBQWMsRUFBRSxDQUNoRSxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsS0FBSyxFQUM1QyxXQUFtQixFQUNuQixXQUE2QixFQUM3QixNQUFNLEdBQUcsUUFBUSxFQUNqQixhQUF1QyxFQUFFLEVBQ1AsRUFBRTtJQUNwQyxNQUFNLFFBQVEsR0FBRyx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN0RCxJQUFJLENBQUM7UUFDSCxNQUFNLGVBQWUsR0FBRyxNQUFNLHFCQUFxQixDQUNqRCxjQUFjLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUN0RSxrQkFBa0IsRUFDbEIsVUFBVSxDQUNYLENBQUM7UUFDRixJQUFJLGVBQWUsQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDbkMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQzlDLENBQUM7UUFDRCxJQUFJLGVBQWUsQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDbkMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLENBQUM7UUFDL0QsQ0FBQztRQUNELE1BQU0sUUFBUSxHQUFHLENBQUMsTUFBTSx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsQ0FJL0QsQ0FBQztRQUNGLElBQ0UsUUFBUSxDQUFDLElBQUksS0FBSyxXQUFXLENBQUMsV0FBVztZQUN6QyxRQUFRLENBQUMsT0FBTyxLQUFLLFdBQVcsQ0FBQyxPQUFPO1lBQ3hDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsU0FBUyxLQUFLLFdBQVcsQ0FBQyxTQUFTO1lBQ2xELFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxLQUFLLFdBQVcsQ0FBQyxJQUFJO1lBQzFDLE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxPQUFPLEtBQUssUUFBUSxFQUMxQyxDQUFDO1lBQ0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLENBQUM7UUFDM0QsQ0FBQztRQUVELE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEMsSUFDRSxVQUFVLENBQUMsTUFBTSxLQUFLLFdBQVcsQ0FBQyxNQUFNO1lBQ3hDLENBQUMsVUFBVSxDQUFDLFFBQVEsS0FBSyxRQUFRLElBQUksVUFBVSxDQUFDLFFBQVEsS0FBSyxPQUFPLENBQUM7WUFDckUsVUFBVSxDQUFDLFFBQVE7WUFDbkIsVUFBVSxDQUFDLFFBQVE7WUFDbkIsVUFBVSxDQUFDLE1BQU07WUFDakIsVUFBVSxDQUFDLElBQUksRUFDZixDQUFDO1lBQ0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLENBQUM7UUFDM0QsQ0FBQztRQUNELE1BQU0sZUFBZSxHQUFHLE1BQU0scUJBQXFCLENBQ2pELFVBQVUsRUFDViwwQkFBMEIsRUFDMUIsVUFBVSxDQUNYLENBQUM7UUFDRixJQUFJLGVBQWUsQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDbkMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLENBQUM7UUFDL0QsQ0FBQztRQUNELE1BQU0sS0FBSyxHQUFHLE1BQU0sbUJBQW1CLENBQ3JDLGVBQWUsRUFDZixXQUFXLENBQUMsSUFBSSxFQUNoQixrQkFBa0IsQ0FDbkIsQ0FBQztRQUNGLElBQ0UsS0FBSyxDQUFDLFVBQVUsS0FBSyxXQUFXLENBQUMsSUFBSTtZQUNyQyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztnQkFDM0QsV0FBVyxDQUFDLElBQUk7WUFDbEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7Z0JBQzdELFdBQVcsQ0FBQyxNQUFNO1lBQ3BCLFVBQVUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDNUUsV0FBVyxDQUFDLFNBQVMsRUFDdkIsQ0FBQztZQUNELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxDQUFDO1FBQzFELENBQUM7UUFFRCxNQUFNLGVBQWUsR0FBRyxNQUFNLHFCQUFxQixDQUNqRCxjQUFjLENBQUMsUUFBUSxFQUFFLFdBQVcsQ0FBQyxXQUFXLENBQUMsRUFDakQsa0JBQWtCLEVBQ2xCLFVBQVUsQ0FDWCxDQUFDO1FBQ0YsSUFBSSxlQUFlLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQ25DLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxDQUFDO1lBQ3BDLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRSxDQUFDO1FBQy9ELENBQUM7UUFDRCxNQUFNLGVBQWUsR0FBRyxDQUFDLE1BQU0sdUJBQXVCLENBQ3BELGVBQWUsQ0FDaEIsQ0FFQSxDQUFDO1FBQ0YsSUFBSSxlQUFlLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDO1FBQzFELENBQUM7UUFDRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDNUMsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsQ0FBQztJQUMzRCxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsS0FBSyxFQUM5QyxXQUFtQixFQUNuQixXQUE2QixFQUM3QixNQUFNLEdBQUcsUUFBUSxFQUNqQixhQUF1QyxFQUFFLEVBQ1AsRUFBRTtJQUNwQyxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQztJQUMzQyxNQUFNLE9BQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQztJQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDcEQsTUFBTSxJQUFJLEtBQUssQ0FDYiw0REFBNEQsQ0FDN0QsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFJLFVBQVUsR0FBNEI7UUFDeEMsTUFBTSxFQUFFLGNBQWM7UUFDdEIsSUFBSSxFQUFFLGVBQWU7S0FDdEIsQ0FBQztJQUNGLEtBQUssSUFBSSxPQUFPLEdBQUcsQ0FBQyxFQUFFLE9BQU8sR0FBRyxRQUFRLEVBQUUsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3ZELFVBQVUsR0FBRyxNQUFNLHlCQUF5QixDQUMxQyxXQUFXLEVBQ1gsV0FBVyxFQUNYLE1BQU0sRUFDTixVQUFVLENBQ1gsQ0FBQztRQUNGLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxPQUFPLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUN0RSxPQUFPLFVBQVUsQ0FBQztRQUNwQixDQUFDO1FBQ0QsSUFBSSxPQUFPLEdBQUcsQ0FBQyxHQUFHLFFBQVEsRUFBRSxDQUFDO1lBQzNCLE1BQU0sT0FBTyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDLENBQUMifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as plugins from "./mod.plugins.js";
|
|
2
2
|
import { ReleaseJournalStore, type TReleaseJournal } from "./classes.releasejournal.js";
|
|
3
|
-
import { type INpmArtifactProbeOptions } from "./helpers.npmartifact.js";
|
|
3
|
+
import { type IPnpmReleaseCapability, type INpmArtifactProbeOptions } from "./helpers.npmartifact.js";
|
|
4
4
|
import { type ITsdockerReleaseClient } from "./helpers.tsdockerprotocol.js";
|
|
5
5
|
export interface IBuildReleaseGitPushArgsOptions {
|
|
6
6
|
destination: string;
|
|
@@ -13,6 +13,7 @@ export interface IBuildReleaseGitPushArgsOptions {
|
|
|
13
13
|
}
|
|
14
14
|
export declare function buildReleaseGitPushArgs(optionsArg: IBuildReleaseGitPushArgsOptions): string[];
|
|
15
15
|
export interface IReleasePublicationOptions {
|
|
16
|
+
pnpmCapability?: IPnpmReleaseCapability;
|
|
16
17
|
smartshell: plugins.smartshell.Smartshell;
|
|
17
18
|
cwd: string;
|
|
18
19
|
store: ReleaseJournalStore;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as plugins from "./mod.plugins.js";
|
|
2
2
|
import { ReleaseJournalStore, createReleaseAttempt, createReleaseDockerPromotions, finalizeJournalCompletion, getReleaseDockerPromotionContext, getReleaseArtifacts, getReleaseNpmArtifact, } from "./classes.releasejournal.js";
|
|
3
|
-
import { probeAnonymousNpmArtifact, publishNpmArtifact, verifyStoredNpmArtifact, waitForAnonymousNpmArtifact, } from "./helpers.npmartifact.js";
|
|
3
|
+
import { probeAnonymousNpmArtifact, publishNpmArtifact, verifyStoredNpmArtifact, waitForAnonymousNpmArtifact, buildQualifiedPnpmArgs, } from "./helpers.npmartifact.js";
|
|
4
4
|
import { isAbsentGitOid, releaseGitEnv } from "./helpers.releasebranch.js";
|
|
5
5
|
import { TsdockerReleaseCommandError, TsdockerReleaseRequestCleanupError, assertReleaseCleanupResult, assertReleaseProbeResult, assertReleasePromotionResult, assertReleaseQualificationResult, classifyReleasePromotionEvidence, } from "./helpers.tsdockerprotocol.js";
|
|
6
6
|
const gitProbeTimeoutMs = 60_000;
|
|
@@ -319,8 +319,10 @@ const executeNpmRegistry = async (optionsArg, journalArg, registryArg, packageNa
|
|
|
319
319
|
const artifact = getReleaseNpmArtifact(journal, packageNameArg);
|
|
320
320
|
const artifactPath = optionsArg.store.getArtifactPath(journal.release.version, artifact.file);
|
|
321
321
|
await verifyStoredNpmArtifact(artifactPath, artifact);
|
|
322
|
+
// Reject a missing invocation before claiming a potentially publishing target.
|
|
323
|
+
buildQualifiedPnpmArgs(optionsArg.pnpmCapability, []);
|
|
322
324
|
journal = await claimTarget(optionsArg.store, journal, selector);
|
|
323
|
-
const publishResult = await publishNpmArtifact(optionsArg.smartshell, optionsArg.cwd, artifactPath, registryArg);
|
|
325
|
+
const publishResult = await publishNpmArtifact(optionsArg.smartshell, optionsArg.cwd, artifactPath, registryArg, optionsArg.pnpmCapability);
|
|
324
326
|
probe = await probeNpm(journal, registryArg, optionsArg, !deferVerificationArg, packageNameArg);
|
|
325
327
|
if (probe.status === "exact") {
|
|
326
328
|
return finishPublishingTarget(optionsArg.store, journal, selector, "verified", null);
|
|
@@ -722,4 +724,4 @@ export const executeReleasePublication = async (optionsArg) => {
|
|
|
722
724
|
}
|
|
723
725
|
return journal;
|
|
724
726
|
};
|
|
725
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5yZWxlYXNlcHVibGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9tb2RfcmVsZWFzZS9oZWxwZXJzLnJlbGVhc2VwdWJsaWNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLDZCQUE2QixFQUM3Qix5QkFBeUIsRUFDekIsZ0NBQWdDLEVBQ2hDLG1CQUFtQixFQUNuQixxQkFBcUIsR0FNdEIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsMkJBQTJCLEdBRzVCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRSxPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLGtDQUFrQyxFQUNsQywwQkFBMEIsRUFDMUIsd0JBQXdCLEVBQ3hCLDRCQUE0QixFQUM1QixnQ0FBZ0MsRUFDaEMsZ0NBQWdDLEdBSWpDLE1BQU0sK0JBQStCLENBQUM7QUFFdkMsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUM7QUFDakMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDO0FBWXBDLE1BQU0sVUFBVSx1QkFBdUIsQ0FDckMsVUFBMkM7SUFFM0MsTUFBTSxRQUFRLEdBQWEsRUFBRSxDQUFDO0lBQzlCLElBQUksVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzFCLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFDRCxJQUFJLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN4QixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcs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
|
|
727
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5yZWxlYXNlcHVibGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9tb2RfcmVsZWFzZS9oZWxwZXJzLnJlbGVhc2VwdWJsaWNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsb0JBQW9CLEVBQ3BCLDZCQUE2QixFQUM3Qix5QkFBeUIsRUFDekIsZ0NBQWdDLEVBQ2hDLG1CQUFtQixFQUNuQixxQkFBcUIsR0FNdEIsTUFBTSw2QkFBNkIsQ0FBQztBQUNyQyxPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsMkJBQTJCLEVBQzNCLHNCQUFzQixHQUl2QixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0UsT0FBTyxFQUNMLDJCQUEyQixFQUMzQixrQ0FBa0MsRUFDbEMsMEJBQTBCLEVBQzFCLHdCQUF3QixFQUN4Qiw0QkFBNEIsRUFDNUIsZ0NBQWdDLEVBQ2hDLGdDQUFnQyxHQUlqQyxNQUFNLCtCQUErQixDQUFDO0FBRXZDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDO0FBQ2pDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztBQVlwQyxNQUFNLFVBQVUsdUJBQXVCLENBQ3JDLFVBQTJDO0lBRTNDLE1BQU0sUUFBUSxHQUFhLEVBQUUsQ0FBQztJQUM5QixJQUFJLFVBQVUsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMxQixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDLE9BQU8sa0JBQWtCLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBQ0QsSUFBSSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDeEIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLGVBQWUsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUNELE1BQU0sSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFLGtCQUFrQixDQUFDLENBQUM7SUFDMUMsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLFVBQVUsSUFBSSxVQUFVLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM5RCxJQUFJLENBQUMsSUFBSSxDQUNQLHNDQUFzQyxVQUFVLENBQUMscUJBQXFCLEVBQUUsQ0FDekUsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQztJQUMvQyxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUE0QkQsTUFBTSxlQUFlLEdBQUcsQ0FDdEIsVUFBMkIsRUFDM0IsV0FBbUMsRUFDYixFQUFFO0lBQ3hCLElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQztRQUMvQixPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxzQkFBc0IsRUFBRSxDQUFDO1FBQ2hELElBQUksVUFBVSxDQUFDLGFBQWEsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLHdEQUF3RCxDQUFDLENBQUM7UUFDNUUsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUM7SUFDekMsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFDLElBQUksVUFBVSxDQUFDLGFBQWEsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7UUFDdEUsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7SUFDbkMsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxrQkFBa0IsRUFBRSxDQUFDO1FBQzVDLElBQUksVUFBVSxDQUFDLGFBQWEsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLHFEQUFxRCxDQUFDLENBQUM7UUFDekUsQ0FBQztRQUNELE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDakQsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLFdBQVcsQ0FDdkUsQ0FBQztRQUNGLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNmLE1BQU0sSUFBSSxLQUFLLENBQ2IscURBQXFELFdBQVcsQ0FBQyxXQUFXLEdBQUcsQ0FDaEYsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBQ0QsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUM3QyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQ2QsV0FBVyxDQUFDLFFBQVEsS0FBSyxXQUFXLENBQUMsUUFBUTtRQUM3QyxXQUFXLENBQUMsV0FBVyxLQUFLLFdBQVcsQ0FBQyxXQUFXLENBQ3RELENBQUM7SUFDRixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDZCxNQUFNLElBQUksS0FBSyxDQUNiLGlEQUFpRCxXQUFXLENBQUMsUUFBUSxHQUFHLENBQ3pFLENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxZQUFZLEdBQUcsS0FBSyxFQUN4QixRQUE2QixFQUM3QixVQUEyQixFQUMzQixXQUFtQyxFQUNuQyxnQkFBNkQsRUFDN0Qsb0JBQW1DLEVBQ25DLFNBQW9ELEVBQzFCLEVBQUU7SUFDNUIsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQztRQUNwRCxDQUFDLENBQUMsZ0JBQWdCO1FBQ2xCLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDdkIsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUN0QixVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFDMUIsVUFBVSxDQUFDLFFBQVEsRUFDbkIsQ0FBQyxVQUFVLEVBQUUsRUFBRTtRQUNiLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDM0MsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxDQUFDLEtBQUssb0JBQW9CLEVBQUUsQ0FBQztZQUMxRCxNQUFNLElBQUksS0FBSyxDQUNiLHdEQUF3RCxDQUN6RCxDQUFDO1FBQ0osQ0FBQztRQUNELFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQixPQUFPLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQy9DLENBQUMsQ0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQUcsS0FBSyxFQUN2QixRQUE2QixFQUM3QixVQUEyQixFQUMzQixXQUFtQyxFQUNULEVBQUUsQ0FDNUIsWUFBWSxDQUNWLFFBQVEsRUFDUixVQUFVLEVBQ1YsV0FBVyxFQUNYLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxFQUNyQixJQUFJLEVBQ0osQ0FBQyxTQUFTLEVBQUUsRUFBRTtJQUNaLFNBQVMsQ0FBQyxLQUFLLEdBQUcsWUFBWSxDQUFDO0lBQy9CLFNBQVMsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDO0lBQ3hCLFNBQVMsQ0FBQyxPQUFPLEdBQUcsb0JBQW9CLEVBQUUsQ0FBQztJQUMzQyxTQUFTLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztBQUN6QixDQUFDLENBQ0YsQ0FBQztBQUVKLE1BQU0sc0JBQXNCLEdBQUcsS0FBSyxFQUNsQyxRQUE2QixFQUM3QixVQUEyQixFQUMzQixXQUFtQyxFQUNuQyxRQUE0QyxFQUM1QyxRQUFrQyxFQUNSLEVBQUU7SUFDNUIsTUFBTSxTQUFTLEdBQUcsZUFBZSxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQ3ZFLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsbURBQW1ELENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBQ0QsT0FBTyxZQUFZLENBQ2pCLFFBQVEsRUFDUixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixTQUFTLEVBQ1QsQ0FBQyxTQUFTLEVBQUUsRUFBRTtRQUNaLFNBQVMsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO1FBQzNCLFNBQVMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLFNBQVMsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO0lBQzdCLENBQUMsQ0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxtQkFBbUIsR0FBRyxLQUFLLEVBQy9CLFFBQTZCLEVBQzdCLFVBQTJCLEVBQzNCLFdBQW1DLEVBQ25DLGlCQUF3QyxFQUN4QyxRQUE0QyxFQUM1QyxRQUFrQyxFQUNSLEVBQUUsQ0FDNUIsWUFBWSxDQUNWLFFBQVEsRUFDUixVQUFVLEVBQ1YsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixJQUFJLEVBQ0osQ0FBQyxTQUFTLEVBQUUsRUFBRTtJQUNaLFNBQVMsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO0lBQzNCLFNBQVMsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDO0FBQzdCLENBQUMsQ0FDRixDQUFDO0FBRUosTUFBTSx1QkFBdUIsR0FBRyxLQUFLLEVBQ25DLFFBQTZCLEVBQzdCLFVBQTJCLEVBQzNCLFdBQW1DLEVBQ25DLG9CQUF3QyxFQUNkLEVBQUU7SUFDNUIsTUFBTSxNQUFNLEdBQUcsZUFBZSxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUN4RCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztJQUNyQyxJQUFJLENBQUMsU0FBUyxJQUFJLG9CQUFvQixLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3JELE1BQU0sSUFBSSxLQUFLLENBQ2IscURBQXFELFNBQVMsSUFBSSxTQUFTLElBQUk7WUFDN0UscUVBQXFFLFNBQVMsSUFBSSxjQUFjLEdBQUcsQ0FDdEcsQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLHNCQUFzQixDQUMzQixRQUFRLEVBQ1IsVUFBVSxFQUNWLFdBQVcsRUFDWCxRQUFRLEVBQ1IsMkJBQTJCLENBQzVCLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLG9CQUFvQixHQUFHLEtBQUssRUFDaEMsYUFBNEMsRUFDNUMsTUFBYyxFQUNkLGNBQXNCLEVBQ3RCLFVBQTJCLEVBQ0QsRUFBRTtJQUM1QixNQUFNLE1BQU0sR0FBRyxhQUFhLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDckQsTUFBTSxNQUFNLEdBQUcsTUFBTSxhQUFhLENBQUMsU0FBUyxDQUMxQyxLQUFLLEVBQ0wsQ0FBQyxXQUFXLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEVBQ3hFO1FBQ0UsR0FBRyxFQUFFLE1BQU07UUFDWCxHQUFHLEVBQUUsYUFBYTtRQUNsQixNQUFNLEVBQUUsSUFBSTtRQUNaLE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsa0JBQWtCLEVBQUUsS0FBSztLQUMxQixDQUNGLENBQUM7SUFDRixJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDMUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7SUFDdkMsS0FBSyxNQUFNLElBQUksSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsc0NBQXNDLENBQUMsQ0FBQztRQUN4RSxJQUFJLEtBQUs7WUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBQ0QsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sS0FBSyxDQUFDLENBQUM7SUFDOUMsSUFDRSxPQUFPLEtBQUssVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPO1FBQ3RDLE1BQU0sS0FBSyxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU07UUFDcEMsWUFBWSxLQUFLLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUMzQyxDQUFDO1FBQ0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBQ0QsSUFDRSxDQUFDLE9BQU8sS0FBSyxVQUFVLENBQUMsR0FBRyxDQUFDLHFCQUFxQjtRQUMvQyxDQUFDLE9BQU8sS0FBSyxTQUFTO1lBQ3BCLFVBQVUsQ0FBQyxHQUFHLENBQUMscUJBQXFCLEtBQUssSUFBSTtZQUM3QyxjQUFjLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7UUFDMUQsTUFBTSxLQUFLLFNBQVM7UUFDcEIsWUFBWSxLQUFLLFNBQVMsRUFDMUIsQ0FBQztRQUNELE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUNELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLENBQUM7QUFDaEMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQzVCLFVBQXNDLEVBQ3RDLFVBQTJCLEVBQ0QsRUFBRTtJQUM1QixNQUFNLFFBQVEsR0FBMkIsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDekQsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN2QyxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBQ0QsTUFBTSxxQkFBcUIsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDO0lBQ25FLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNsRCxNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELElBQUksT0FBTyxHQUFHLFVBQVUsQ0FBQztJQUN6QixJQUFJLEtBQUssR0FBRyxNQUFNLG9CQUFvQixDQUNwQyxVQUFVLENBQUMsVUFBVSxFQUNyQixVQUFVLENBQUMsR0FBRyxFQUNkLFVBQVUsQ0FBQyxPQUFPLEVBQ2xCLE9BQU8sQ0FDUixDQUFDO0lBQ0YsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNyQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDN0IsTUFBTSxVQUFVLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqRSxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO1FBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLE1BQU0sbUJBQW1CLENBQ3ZCLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsQ0FBQyxVQUFVLENBQUMsRUFDWixVQUFVLEVBQ1Ysc0JBQXNCLENBQ3ZCLENBQUM7WUFDRixNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQ2Isb0VBQW9FLENBQ3JFLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxZQUFZLEVBQUUsQ0FBQztRQUN2QyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDN0IsT0FBTyxHQUFHLE1BQU0sc0JBQXNCLENBQ3BDLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsVUFBVSxFQUNWLElBQUksQ0FDTCxDQUFDO1lBQ0YsTUFBTSxVQUFVLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqRSxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO1FBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLE1BQU0sc0JBQXNCLENBQzFCLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsVUFBVSxFQUNWLHNCQUFzQixDQUN2QixDQUFDO1lBQ0YsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQ3hFLENBQUM7UUFDRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssY0FBYyxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1FBQ25FLENBQUM7UUFDRCxPQUFPLEdBQUcsTUFBTSx1QkFBdUIsQ0FDckMsVUFBVSxDQUFDLEtBQUssRUFDaEIsT0FBTyxFQUNQLFFBQVEsRUFDUixVQUFVLENBQUMsaUJBQWlCLENBQzdCLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNyQyxNQUFNLElBQUksS0FBSyxDQUNiLG9FQUFvRSxDQUNyRSxDQUFDO0lBQ0osQ0FBQztJQUNELEtBQUssR0FBRyxNQUFNLG9CQUFvQixDQUNoQyxVQUFVLENBQUMsVUFBVSxFQUNyQixVQUFVLENBQUMsR0FBRyxFQUNkLFVBQVUsQ0FBQyxPQUFPLEVBQ2xCLE9BQU8sQ0FDUixDQUFDO0lBQ0YsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQzdCLE9BQU8sR0FBRyxNQUFNLG1CQUFtQixDQUNqQyxVQUFVLENBQUMsS0FBSyxFQUNoQixPQUFPLEVBQ1AsUUFBUSxFQUNSLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxFQUNyQixVQUFVLEVBQ1YsSUFBSSxDQUNMLENBQUM7UUFDRixNQUFNLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pFLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDaEMsTUFBTSxtQkFBbUIsQ0FDdkIsVUFBVSxDQUFDLEtBQUssRUFDaEIsT0FBTyxFQUNQLFFBQVEsRUFDUixDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsRUFDckIsVUFBVSxFQUNWLHNCQUFzQixDQUN2QixDQUFDO1FBQ0YsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssY0FBYyxFQUFFLENBQUM7UUFDcEMsTUFBTSxtQkFBbUIsQ0FDdkIsVUFBVSxDQUFDLEtBQUssRUFDaEIsT0FBTyxFQUNQLFFBQVEsRUFDUixDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsRUFDckIsUUFBUSxFQUNSLDJCQUEyQixDQUM1QixDQUFDO1FBQ0YsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxNQUFNLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQy9ELE9BQU8sR0FBRyxNQUFNLFdBQVcsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNqRSxNQUFNLFVBQVUsR0FBRyxNQUFNLFVBQVUsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUN0RCxLQUFLLEVBQ0wsdUJBQXVCLENBQUM7UUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxPQUFPO1FBQy9CLFVBQVUsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU87UUFDbkMsVUFBVSxFQUFFLElBQUk7UUFDaEIsUUFBUSxFQUFFLElBQUk7UUFDZCxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPO1FBQ2hDLE1BQU0sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU07UUFDOUIscUJBQXFCO0tBQ3RCLENBQUMsRUFDRjtRQUNFLEdBQUcsRUFBRSxVQUFVLENBQUMsR0FBRztRQUNuQixHQUFHLEVBQUUsYUFBYTtRQUNsQixPQUFPLEVBQUUsZ0JBQWdCO1FBQ3pCLGtCQUFrQixFQUFFLEtBQUs7S0FDMUIsQ0FDRixDQUFDO0lBQ0YsS0FBSyxHQUFHLE1BQU0sb0JBQW9CLENBQ2hDLFVBQVUsQ0FBQyxVQUFVLEVBQ3JCLFVBQVUsQ0FBQyxHQUFHLEVBQ2QsVUFBVSxDQUFDLE9BQU8sRUFDbEIsT0FBTyxDQUNSLENBQUM7SUFDRixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7UUFDN0IsT0FBTyxHQUFHLE1BQU0sc0JBQXNCLENBQ3BDLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsVUFBVSxFQUNWLElBQUksQ0FDTCxDQUFDO1FBQ0YsTUFBTSxVQUFVLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNqRSxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sc0JBQXNCLENBQzFCLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsVUFBVSxFQUNWLHNCQUFzQixDQUN2QixDQUFDO1FBQ0YsTUFBTSxJQUFJLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFDRCxNQUFNLHNCQUFzQixDQUMxQixVQUFVLENBQUMsS0FBSyxFQUNoQixPQUFPLEVBQ1AsUUFBUSxFQUNSLFFBQVEsRUFDUixVQUFVLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUMzRSxDQUFDO0lBQ0YsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO0FBQzdFLENBQUMsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUFHLEtBQUssRUFDcEIsVUFBMkIsRUFDM0IsV0FBbUIsRUFDbkIsVUFBc0MsRUFDdEMsT0FBTyxHQUFHLEtBQUssRUFDZixjQUF1QixFQUNXLEVBQUU7SUFDcEMsTUFBTSxRQUFRLEdBQUcscUJBQXFCLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQ25FLE9BQU8sT0FBTztRQUNaLENBQUMsQ0FBQywyQkFBMkIsQ0FDekIsV0FBVyxFQUNYLFFBQVEsRUFDUixVQUFVLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFDbEIsVUFBVSxDQUFDLGVBQWUsQ0FDM0I7UUFDSCxDQUFDLENBQUMseUJBQXlCLENBQ3ZCLFdBQVcsRUFDWCxRQUFRLEVBQ1IsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQ2xCLFVBQVUsQ0FBQyxlQUFlLENBQzNCLENBQUM7QUFDUixDQUFDLENBQUM7QUFFRixNQUFNLG1CQUFtQixHQUFHLEtBQUssRUFDL0IsVUFBc0MsRUFDdEMsVUFBMkIsRUFDM0IsV0FBbUMsRUFDbkMsaUJBQXdDLEVBQ3hDLFFBQWlDLEVBQ1AsRUFBRTtJQUM1QixNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsTUFBTSxLQUFLLFVBQVUsQ0FBQztJQUNoRCxPQUFPLG1CQUFtQixDQUN4QixVQUFVLENBQUMsS0FBSyxFQUNoQixVQUFVLEVBQ1YsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixRQUFRLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUNoQyxRQUFRLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FDN0QsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsS0FBSyxFQUM5QixVQUFzQyxFQUN0QyxVQUEyQixFQUMzQixXQUFtQixFQUNuQixjQUF1QixFQUN2QixvQkFBb0IsR0FBRyxLQUFLLEVBQ0YsRUFBRTtJQUM1QixNQUFNLFFBQVEsR0FBMkI7UUFDdkMsSUFBSSxFQUFFLEtBQUs7UUFDWCxRQUFRLEVBQUUsV0FBVztRQUNyQixXQUFXLEVBQUUsY0FBYztLQUM1QixDQUFDO0lBQ0YsSUFBSSxPQUFPLEdBQUcsVUFBVSxDQUFDO0lBQ3pCLElBQUksTUFBTSxHQUFHLGVBQWUsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEQsSUFBSSxLQUFLLEdBQUcsTUFBTSxRQUFRLENBQ3hCLE9BQU8sRUFDUCxXQUFXLEVBQ1gsVUFBVSxFQUNWLEtBQUssRUFDTCxjQUFjLENBQ2YsQ0FBQztJQUVGLElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNoQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDN0IsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUNELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUNoQyxNQUFNLG1CQUFtQixDQUN2QixVQUFVLENBQUMsS0FBSyxFQUNoQixPQUFPLEVBQ1AsUUFBUSxFQUNSLENBQUMsVUFBVSxDQUFDLEVBQ1osVUFBVSxFQUNWLG1CQUFtQixDQUNwQixDQUFDO1lBQ0YsTUFBTSxJQUFJLEtBQUssQ0FDYiw2Q0FBNkMsV0FBVyxFQUFFLENBQzNELENBQUM7UUFDSixDQUFDO1FBQ0QsTUFBTSxJQUFJLEtBQUssQ0FDYixrRUFBa0UsV0FBVyxFQUFFLENBQ2hGLENBQUM7SUFDSixDQUFDO0lBQ0QsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLFlBQVksRUFBRSxDQUFDO1FBQ2xDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUM3QixPQUFPLHNCQUFzQixDQUMzQixVQUFVLENBQUMsS0FBSyxFQUNoQixPQUFPLEVBQ1AsUUFBUSxFQUNSLFVBQVUsRUFDVixJQUFJLENBQ0wsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssVUFBVSxFQUFFLENBQUM7WUFDaEMsTUFBTSxzQkFBc0IsQ0FDMUIsVUFBVSxDQUFDLEtBQUssRUFDaEIsT0FBTyxFQUNQLFFBQVEsRUFDUixVQUFVLEVBQ1YsbUJBQW1CLENBQ3BCLENBQUM7WUFDRixNQUFNLElBQUksS0FBSyxDQUNiLDRDQUE0QyxXQUFXLEVBQUUsQ0FDMUQsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssY0FBYyxFQUFFLENBQUM7WUFDcEMsTUFBTSxJQUFJLEtBQUssQ0FDYiw2Q0FBNkMsV0FBVyxFQUFFLENBQzNELENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTyxHQUFHLE1BQU0sdUJBQXVCLENBQ3JDLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsVUFBVSxDQUFDLGlCQUFpQixDQUM3QixDQUFDO1FBQ0YsTUFBTSxHQUFHLGVBQWUsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUNELElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCwyRUFBMkU7SUFDM0UsMkVBQTJFO0lBQzNFLDRFQUE0RTtJQUM1RSxhQUFhO0lBQ2IsSUFDRSxPQUFPLENBQUMsYUFBYSxLQUFLLENBQUM7UUFDM0IsTUFBTSxDQUFDLEtBQUssS0FBSyxRQUFRO1FBQ3pCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQztRQUNuQixNQUFNLENBQUMsS0FBSyxLQUFLLDJCQUEyQjtRQUM1QyxLQUFLLENBQUMsTUFBTSxLQUFLLE9BQU87UUFDeEIsS0FBSyxDQUFDLE1BQU0sS0FBSyxVQUFVLEVBQzNCLENBQUM7UUFDRCxJQUFJLG9CQUFvQjtZQUFFLE9BQU8sT0FBTyxDQUFDO1FBQ3pDLE9BQU8sQ0FBQyxHQUFHLENBQ1QsaUNBQWlDLGNBQWMsT0FBTyxXQUFXLEVBQUUsQ0FDcEUsQ0FBQztRQUNGLEtBQUssR0FBRyxNQUFNLFFBQVEsQ0FDcEIsT0FBTyxFQUNQLFdBQVcsRUFDWDtZQUNFLEdBQUcsVUFBVTtZQUNiLGVBQWUsRUFBRTtnQkFDZixRQUFRLEVBQUUsRUFBRTtnQkFDWixPQUFPLEVBQUUsTUFBTTtnQkFDZixHQUFHLFVBQVUsQ0FBQyxlQUFlO2FBQzlCO1NBQ0YsRUFDRCxJQUFJLEVBQ0osY0FBYyxDQUNmLENBQUM7UUFDRixNQUFNLFVBQVUsQ0FBQyxzQkFBc0IsQ0FDckMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEtBQUssVUFBVTtZQUM5QixDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPO1lBQ3pCLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQixJQUFJLFNBQVMsQ0FDbkQsQ0FBQztRQUNGLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUM3QixPQUFPLG1CQUFtQixDQUN4QixVQUFVLENBQUMsS0FBSyxFQUNoQixPQUFPLEVBQ1AsUUFBUSxFQUNSLENBQUMsUUFBUSxDQUFDLEVBQ1YsVUFBVSxFQUNWLElBQUksQ0FDTCxDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sbUJBQW1CLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RSxNQUFNLElBQUksS0FBSyxDQUNiLDJDQUEyQyxjQUFjLE9BQU8sV0FBVyxFQUFFLENBQzlFLENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxHQUFHLE1BQU0sUUFBUSxDQUNwQixPQUFPLEVBQ1AsV0FBVyxFQUNYLFVBQVUsRUFDVixLQUFLLEVBQ0wsY0FBYyxDQUNmLENBQUM7SUFDRixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7UUFDN0IsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3RFLE1BQU0sbUJBQW1CLENBQ3ZCLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLEVBQ3JCLFVBQVUsRUFDVixtQkFBbUIsQ0FDcEIsQ0FBQztZQUNGLE1BQU0sSUFBSSxLQUFLLENBQUMsc0NBQXNDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQztRQUNELE9BQU8sbUJBQW1CLENBQ3hCLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLEVBQ3JCLFVBQVUsRUFDVixJQUFJLENBQ0wsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDOUIsSUFDRSxPQUFPLENBQUMsYUFBYSxLQUFLLENBQUM7WUFDM0IsTUFBTSxDQUFDLEtBQUssS0FBSyxRQUFRO1lBQ3pCLEtBQUssQ0FBQyxNQUFNLEtBQUssY0FBYyxFQUMvQixDQUFDO1lBQ0QscUVBQXFFO1lBQ3JFLG1FQUFtRTtZQUNuRSxNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzVFLENBQUM7UUFDRCxNQUFNLG1CQUFtQixDQUN2QixVQUFVLEVBQ1YsT0FBTyxFQUNQLFFBQVEsRUFDUixDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsRUFDckIsS0FBSyxDQUNOLENBQUM7UUFDRixNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxNQUFNLFFBQVEsR0FBRyxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDaEUsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQ25ELE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUN2QixRQUFRLENBQUMsSUFBSSxDQUNkLENBQUM7SUFDRixNQUFNLHVCQUF1QixDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN0RCwrRUFBK0U7SUFDL0Usc0JBQXNCLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxPQUFPLEdBQUcsTUFBTSxXQUFXLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDakUsTUFBTSxhQUFhLEdBQUcsTUFBTSxrQkFBa0IsQ0FDNUMsVUFBVSxDQUFDLFVBQVUsRUFDckIsVUFBVSxDQUFDLEdBQUcsRUFDZCxZQUFZLEVBQ1osV0FBVyxFQUNYLFVBQVUsQ0FBQyxjQUFjLENBQzFCLENBQUM7SUFDRixLQUFLLEdBQUcsTUFBTSxRQUFRLENBQ3BCLE9BQU8sRUFDUCxXQUFXLEVBQ1gsVUFBVSxFQUNWLENBQUMsb0JBQW9CLEVBQ3JCLGNBQWMsQ0FDZixDQUFDO0lBQ0YsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLE9BQU8sRUFBRSxDQUFDO1FBQzdCLE9BQU8sc0JBQXNCLENBQzNCLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsVUFBVSxFQUNWLElBQUksQ0FDTCxDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNoQyxNQUFNLHNCQUFzQixDQUMxQixVQUFVLENBQUMsS0FBSyxFQUNoQixPQUFPLEVBQ1AsUUFBUSxFQUNSLFVBQVUsRUFDVixtQkFBbUIsQ0FDcEIsQ0FBQztRQUNGLE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUNELE9BQU8sR0FBRyxNQUFNLHNCQUFzQixDQUNwQyxVQUFVLENBQUMsS0FBSyxFQUNoQixPQUFPLEVBQ1AsUUFBUSxFQUNSLFFBQVEsRUFDUixhQUFhLENBQUMsUUFBUSxLQUFLLENBQUM7UUFDMUIsQ0FBQyxDQUFDLDJCQUEyQjtRQUM3QixDQUFDLENBQUMsZ0JBQWdCLENBQ3JCLENBQUM7SUFDRixJQUFJLG9CQUFvQixJQUFJLGFBQWEsQ0FBQyxRQUFRLEtBQUssQ0FBQztRQUFFLE9BQU8sT0FBTyxDQUFDO0lBQ3pFLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLFdBQVcsRUFBRSxDQUFDLENBQUM7QUFDM0UsQ0FBQyxDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcsQ0FDdEIsVUFBc0MsRUFDZCxFQUFFO0lBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekIsTUFBTSxJQUFJLEtBQUssQ0FDYixzRkFBc0YsQ0FDdkYsQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUM7QUFDN0IsQ0FBQyxDQUFDO0FBRUYsTUFBTSx5QkFBeUIsR0FBRyxDQUNoQyxVQUFzQyxFQUN0QyxVQUE2QixFQUNyQixFQUFFLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBRTlFLE1BQU0sMkJBQTJCLEdBQUcsQ0FDbEMsU0FBK0IsRUFDL0Isb0JBQXdDLEVBQ2hDLEVBQUU7SUFDVixNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztJQUN4QyxJQUFJLENBQUMsU0FBUyxJQUFJLG9CQUFvQixLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3JELE1BQU0sSUFBSSxLQUFLLENBQ2IscURBQXFELFNBQVMsSUFBSSxTQUFTLElBQUk7WUFDN0UscUVBQXFFLFNBQVMsSUFBSSxjQUFjLEdBQUcsQ0FDdEcsQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDLENBQUM7QUFFRixNQUFNLDZCQUE2QixHQUFHLEtBQUssRUFDekMsVUFBc0MsRUFDdEMsVUFBNkIsRUFDN0IsU0FBK0IsRUFDZCxFQUFFO0lBQ25CLE1BQU0sU0FBUyxHQUFHLDJCQUEyQixDQUMzQyxTQUFTLEVBQ1QsVUFBVSxDQUFDLGlCQUFpQixDQUM3QixDQUFDO0lBQ0YsTUFBTSxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUMsbUJBQW1CLENBQ25ELHlCQUF5QixDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsRUFDakQsQ0FBQyxTQUFTLENBQUMsQ0FDWixDQUFDO0lBQ0YsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBRUYsTUFBTSw0QkFBNEIsR0FBRyxLQUFLLEVBQ3hDLFVBQXNDLEVBQ3RDLFVBQTZCLEVBQzdCLFVBQWtCLEVBQ2xCLFFBQWlCLEVBQ2pCLGVBQXlDLEVBQzdCLEVBQUU7SUFDZCxJQUFJLENBQUMsQ0FBQyxRQUFRLFlBQVksa0NBQWtDLENBQUMsRUFBRSxDQUFDO1FBQzlELE1BQU0sUUFBUSxDQUFDO0lBQ2pCLENBQUM7SUFDRCxJQUFJLENBQUM7UUFDSCxNQUFNLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxtQkFBbUIsQ0FDbkQseUJBQXlCLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxFQUNqRCxDQUFDLFVBQVUsQ0FBQyxDQUNiLENBQUM7SUFDSixDQUFDO0lBQUMsT0FBTyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFCLFFBQVEsQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUM3QyxNQUFNLFFBQVEsQ0FBQztJQUNqQixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ2xDLE9BQU8sZUFBZSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3hDLE1BQU0sUUFBUSxDQUFDLFlBQVksQ0FBQztJQUM5QixDQUFDO0lBQ0QsTUFBTSxRQUFRLENBQUM7QUFDakIsQ0FBQyxDQUFDO0FBRUYsTUFBTSx5QkFBeUIsR0FBRyxLQUFLLEVBQ3JDLFVBQXNDLEVBQ3RDLFVBQTZCLEVBQzdCLFNBQWlFLEVBQ2pFLFFBQWlDLEVBQ2pDLFFBQWtDLEVBQ04sRUFBRTtJQUM5QixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQzlELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMseURBQXlELENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBQ0QsT0FBTyxDQUFDLE1BQU0sVUFBVSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ3JDLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUMxQixVQUFVLENBQUMsUUFBUSxFQUNuQixDQUFDLFVBQVUsRUFBRSxFQUFFO1FBQ2IsSUFBSSxVQUFVLENBQUMsYUFBYSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztRQUNyRSxDQUFDO1FBQ0QsTUFBTSxhQUFhLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUM7UUFDdEQsSUFDRSxhQUFhLENBQUMsS0FBSyxLQUFLLFlBQVk7WUFDcEMsYUFBYSxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssU0FBUyxFQUN2QyxDQUFDO1lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1FBQzFFLENBQUM7UUFDRCxhQUFhLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztRQUMvQixhQUFhLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUM3QixhQUFhLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztRQUMvQixhQUFhLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQztRQUNqQyxJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ2QsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsNkJBQTZCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUUsQ0FBQztRQUNELE9BQU8seUJBQXlCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDL0MsQ0FBQyxDQUNGLENBQXNCLENBQUM7QUFDMUIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxtQkFBbUIsR0FBRyxLQUFLLEVBQy9CLFVBQXNDLEVBQ3RDLFVBQTZCLEVBQzdCLFNBQTJELEVBQy9CLEVBQUU7SUFDOUIsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztJQUN4RCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDZixNQUFNLElBQUksS0FBSyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELE9BQU8sQ0FBQyxNQUFNLFVBQVUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNyQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFDMUIsVUFBVSxDQUFDLFFBQVEsRUFDbkIsQ0FBQyxVQUFVLEVBQUUsRUFBRTtRQUNiLElBQUksVUFBVSxDQUFDLGFBQWEsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7UUFDL0QsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzFDLElBQUksT0FBTyxDQUFDLEtBQUssS0FBSyxZQUFZLElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDeEUsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO1FBQ3BFLENBQUM7UUFDRCxPQUFPLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQztRQUMzQixPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUN2QixPQUFPLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNyQixPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQztRQUMzQixPQUFPLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQy9DLENBQUMsQ0FDRixDQUFzQixDQUFDO0FBQzFCLENBQUMsQ0FBQztBQUVGLE1BQU0sdUJBQXVCLEdBQUcsS0FBSyxFQUNuQyxVQUFzQyxFQUN0QyxVQUE2QixFQUNELEVBQUU7SUFDOUIsTUFBTSxNQUFNLEdBQUcsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNDLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDdEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxtREFBbUQsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFDRCxJQUFJLE1BQXdELENBQUM7SUFDN0QsSUFBSSxDQUFDO1FBQ0gsTUFBTSxHQUFHLE1BQU0sTUFBTSxDQUFDLE9BQU8sQ0FDM0IsVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQ3pCLHlCQUF5QixDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsRUFDakQsT0FBTyxDQUNSLENBQUM7SUFDSixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sR0FBRyxNQUFNLDRCQUE0QixDQUN6QyxVQUFVLEVBQ1YsVUFBVSxFQUNWLE9BQU8sRUFDUCxLQUFLLEVBQ0wsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUNYLDBCQUEwQixDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUNsRSxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU8sbUJBQW1CLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUM3RCxDQUFDLENBQUM7QUFFRixNQUFNLG9CQUFvQixHQUFHLEtBQUssRUFDaEMsVUFBc0MsRUFDdEMsVUFBNkIsRUFDRCxFQUFFO0lBQzlCLElBQUksT0FBTyxHQUFHLFVBQVUsQ0FBQztJQUN6QixJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssS0FBSyxVQUFVO1FBQUUsT0FBTyxPQUFPLENBQUM7SUFDaEUsTUFBTSxxQkFBcUIsR0FDekIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxLQUFLLFVBQVU7UUFDakQsT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxLQUFLLHNCQUFzQjtRQUM3RCxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBQ3pDLE1BQU0sa0JBQWtCLEdBQ3RCLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDO1FBQ3BDLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FDN0IsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxLQUFLLEtBQUssVUFBVSxDQUNwRCxDQUFDO0lBQ0osSUFBSSxDQUFDLHFCQUFxQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUNsRCxNQUFNLElBQUksS0FBSyxDQUNiLDZGQUE2RixDQUM5RixDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxLQUFLLFlBQVksRUFBRSxDQUFDO1FBQ2xELE1BQU0sNkJBQTZCLENBQ2pDLFVBQVUsRUFDVixPQUFPLEVBQ1AsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQ3ZCLENBQUM7UUFDRixPQUFPLEdBQUcsQ0FBQyxNQUFNLHNCQUFzQixDQUNyQyxVQUFVLENBQUMsS0FBSyxFQUNoQixPQUFPLEVBQ1AsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsRUFDMUIsUUFBUSxFQUNSLDJCQUEyQixDQUM1QixDQUFzQixDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNoRCxNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUNELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzNCLE1BQU0sVUFBVSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUNELE9BQU8sR0FBRyxDQUFDLE1BQU0sV0FBVyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFO1FBQ3RELElBQUksRUFBRSxnQkFBZ0I7S0FDdkIsQ0FBQyxDQUFzQixDQUFDO0lBQ3pCLE9BQU8sdUJBQXVCLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3RELENBQUMsQ0FBQztBQUVGLE1BQU0seUNBQXlDLEdBQUcsS0FBSyxFQUNyRCxVQUFzQyxFQUN0QyxVQUE2QixFQUNkLEVBQUU7SUFDakIsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztJQUM1RCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDYixNQUFNLElBQUksS0FBSyxDQUFDLHlEQUF5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUNELE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMzQyxJQUFJLENBQUM7UUFDSCxNQUFNLE1BQU0sQ0FBQyxPQUFPLENBQ2xCLFVBQVUsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUN6Qix5QkFBeUIsQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFDLEVBQ2pELE9BQU8sQ0FDUixDQUFDO0lBQ0osQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLDRCQUE0QixDQUNoQyxVQUFVLEVBQ1YsVUFBVSxFQUNWLE9BQU8sRUFDUCxLQUFLLEVBQ0wsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUNYLDBCQUEwQixDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUNsRSxDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sNkJBQTZCLEdBQUcsS0FBSyxFQUN6QyxVQUFzQyxFQUN0QyxVQUE2QixFQUM3Qix3Q0FBaUQsRUFDckIsRUFBRTtJQUM5QixNQUFNLE1BQU0sR0FBRyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0MsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztJQUM1RCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDYixNQUFNLElBQUksS0FBSyxDQUFDLHlEQUF5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUNELElBQUksTUFBOEQsQ0FBQztJQUNuRSxJQUFJLENBQUM7UUFDSCxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsT0FBTyxDQUMzQixVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFDekIseUJBQXlCLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxFQUNqRCxPQUFPLENBQ1IsQ0FBQztJQUNKLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDO1lBQ0gsTUFBTSxHQUFHLE1BQU0sNEJBQTRCLENBQ3pDLFVBQVUsRUFDVixVQUFVLEVBQ1YsT0FBTyxFQUNQLEtBQUssRUFDTCxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ1gsZ0NBQWdDLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQ3hFLENBQUM7UUFDSixDQUFDO1FBQUMsT0FBTyxZQUFZLEVBQUUsQ0FBQztZQUN0QixJQUNFLFlBQVksWUFBWSwyQkFBMkI7Z0JBQ25ELFlBQVksQ0FBQyxJQUFJLEtBQUssNkJBQTZCLEVBQ25ELENBQUM7Z0JBQ0QsT0FBTyx5QkFBeUIsQ0FDOUIsVUFBVSxFQUNWLFVBQVUsRUFDVixJQUFJLEVBQ0osVUFBVSxFQUNWLHNCQUFzQixDQUN2QixDQUFDO1lBQ0osQ0FBQztZQUNELElBQ0Usd0NBQXdDO2dCQUN4QyxZQUFZLFlBQVksMkJBQTJCO2dCQUNuRCxZQUFZLENBQUMsSUFBSSxLQUFLLG1CQUFtQixFQUN6QyxDQUFDO2dCQUNELE1BQU0seUNBQXlDLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO2dCQUN4RSxJQUFJLE9BQU8sR0FBRyxDQUFDLE1BQU0sc0JBQXNCLENBQ3pDLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLFVBQVUsRUFDVixFQUFFLElBQUksRUFBRSxzQkFBc0IsRUFBRSxFQUNoQyxRQUFRLEVBQ1IsMkJBQTJCLENBQzVCLENBQXNCLENBQUM7Z0JBQ3hCLE9BQU8sR0FBRyxDQUFDLE1BQU0sV0FBVyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFO29CQUN0RCxJQUFJLEVBQUUsc0JBQXNCO2lCQUM3QixDQUFDLENBQXNCLENBQUM7Z0JBQ3pCLE9BQU8sNkJBQTZCLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNuRSxDQUFDO1lBQ0QsTUFBTSxZQUFZLENBQUM7UUFDckIsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLHlCQUF5QixDQUM5QixVQUFVLEVBQ1YsVUFBVSxFQUNWLE1BQU0sRUFDTixVQUFVLEVBQ1YsSUFBSSxDQUNMLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLDBCQUEwQixHQUFHLEtBQUssRUFDdEMsVUFBc0MsRUFDdEMsVUFBNkIsRUFDRCxFQUFFO0lBQzlCLElBQUksT0FBTyxHQUFHLFVBQVUsQ0FBQztJQUN6QixJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUN0RCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ0QsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEtBQUssVUFBVSxFQUFFLENBQUM7UUFDdEQsTUFBTSxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDaEQsTUFBTSxJQUFJLEtBQUssQ0FDYiw2SEFBNkgsQ0FDOUgsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQUssS0FBSyxZQUFZLEVBQUUsQ0FBQztRQUN4RCxNQUFNLDZCQUE2QixDQUNqQyxVQUFVLEVBQ1YsT0FBTyxFQUNQLE9BQU8sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUM3QixDQUFDO1FBQ0YsT0FBTyxHQUFHLENBQUMsTUFBTSxzQkFBc0IsQ0FDckMsVUFBVSxDQUFDLEtBQUssRUFDaEIsT0FBTyxFQUNQLEVBQUUsSUFBSSxFQUFFLHNCQUFzQixFQUFFLEVBQ2hDLFFBQVEsRUFDUiwyQkFBMkIsQ0FDNUIsQ0FBc0IsQ0FBQztJQUMxQixDQUFDO0lBQ0QsTUFBTSxVQUFVLENBQUMsc0JBQXNCLENBQ3JDLE9BQU8sQ0FBQyxHQUFHLENBQUMscUJBQXFCLElBQUksU0FBUyxDQUMvQyxDQUFDO0lBQ0YsT0FBTyxHQUFHLENBQUMsTUFBTSxXQUFXLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUU7UUFDdEQsSUFBSSxFQUFFLHNCQUFzQjtLQUM3QixDQUFDLENBQXNCLENBQUM7SUFDekIsT0FBTyxHQUFHLE1BQU0sNkJBQTZCLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN6RSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUN0RCxNQUFNLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNoRCxNQUFNLElBQUksS0FBSyxDQUNiLDZIQUE2SCxDQUM5SCxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMsQ0FBQztBQUVGLE1BQU0scUJBQXFCLEdBQUcsS0FBSyxFQUNqQyxVQUFzQyxFQUN0QyxVQUE2QixFQUM3QixjQUFzQixFQUN0QixpQkFBd0MsRUFDeEMsb0JBQW1DLEVBQ25DLFFBQTRDLEVBQzVDLFFBQWtDLEVBQ2xDLFdBQXVDLEVBQ1gsRUFBRSxDQUM5QixDQUFDLE1BQU0sVUFBVSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQzlCLFVBQVUsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUMxQixVQUFVLENBQUMsUUFBUSxFQUNuQixDQUFDLFVBQVUsRUFBRSxFQUFFO0lBQ2IsSUFBSSxVQUFVLENBQUMsYUFBYSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBQ0QsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUNqRCxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsS0FBSyxjQUFjLENBQzlELENBQUM7SUFDRixJQUNFLENBQUMsU0FBUztRQUNWLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7UUFDNUMsQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUMsS0FBSyxvQkFBb0IsRUFDeEQsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBQ0QsU0FBUyxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7SUFDM0IsU0FBUyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFDekIsU0FBUyxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7SUFDM0IsSUFBSSxXQUFXO1FBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEQsT0FBTyx5QkFBeUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUMvQyxDQUFDLENBQ0YsQ0FBc0IsQ0FBQztBQUUxQixNQUFNLG9CQUFvQixHQUFHLEtBQUssRUFDaEMsVUFBc0MsRUFDdEMsVUFBNkIsRUFDN0IsY0FBc0IsRUFDdEIsVUFBbUIsRUFDVyxFQUFFO0lBQ2hDLE1BQU0sT0FBTyxHQUFHLGdDQUFnQyxDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUM3RSxJQUFJLENBQUM7UUFDSCxPQUFPLE1BQU0sZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssQ0FDNUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQ3pCLE9BQU8sRUFDUCxVQUFVO1lBQ1IsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUM7WUFDbkQsQ0FBQyxDQUFDLFNBQVMsRUFDYixVQUFVLENBQ1gsQ0FBQztJQUNKLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLFVBQVU7WUFBRSxNQUFNLEtBQUssQ0FBQztRQUM3QixPQUFPLDRCQUE0QixDQUNqQyxVQUFVLEVBQ1YsVUFBVSxFQUNWLFVBQVUsRUFDVixLQUFLLEVBQ0wsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUNYLHdCQUF3QixDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FDekUsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLHNCQUFzQixHQUFHLEtBQUssRUFDbEMsVUFBc0MsRUFDdEMsVUFBNkIsRUFDN0IsY0FBc0IsRUFDTSxFQUFFO0lBQzlCLElBQUksT0FBTyxHQUFHLFVBQVUsQ0FBQztJQUN6QixJQUFJLFNBQVMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQzVDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxLQUFLLGNBQWMsQ0FDOUQsQ0FBQztJQUNGLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLGNBQWMsb0JBQW9CLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBQ0QsSUFBSSxTQUFTLENBQUMsS0FBSyxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLGNBQWMsa0JBQWtCLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsSUFBSSxTQUFTLENBQUMsS0FBSyxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ25DLE1BQU0sS0FBSyxHQUFHLE1BQU0sb0JBQW9CLENBQ3RDLFVBQVUsRUFDVixPQUFPLEVBQ1AsY0FBYyxDQUNmLENBQUM7UUFDRixNQUFNLGNBQWMsR0FBRyxnQ0FBZ0MsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvRCxJQUFJLGNBQWMsS0FBSyxPQUFPO1lBQUUsT0FBTyxPQUFPLENBQUM7UUFDL0MsSUFBSSxjQUFjLEtBQUssY0FBYyxFQUFFLENBQUM7WUFDdEMsTUFBTSxJQUFJLEtBQUssQ0FDYixzRUFBc0UsY0FBYyxFQUFFLENBQ3ZGLENBQUM7UUFDSixDQUFDO1FBQ0QsTUFBTSxxQkFBcUIsQ0FDekIsVUFBVSxFQUNWLE9BQU8sRUFDUCxjQUFjLEVBQ2QsQ0FBQyxVQUFVLENBQUMsRUFDWixJQUFJLEVBQ0osVUFBVSxFQUNWLHNCQUFzQixFQUN0QixLQUFLLENBQ04sQ0FBQztRQUNGLE1BQU0sSUFBSSxLQUFLLENBQ2IsaURBQWlELGNBQWMsRUFBRSxDQUNsRSxDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksMEJBQTBCLEdBQUcsS0FBSyxDQUFDO0lBQ3ZDLElBQUksU0FBUyxDQUFDLEtBQUssS0FBSyxZQUFZLEVBQUUsQ0FBQztRQUNyQyxNQUFNLDZCQUE2QixDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDcEUsMEJBQTBCLEdBQUcsSUFBSSxDQUFDO0lBQ3BDLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxVQUFVLENBQUMsc0JBQXNCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNqRSxPQUFPLEdBQUcsQ0FBQyxNQUFNLFdBQVcsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRTtZQUN0RCxJQUFJLEVBQUUsa0JBQWtCO1lBQ3hCLFdBQVcsRUFBRSxjQUFjO1NBQzVCLENBQUMsQ0FBc0IsQ0FBQztRQUN6QixTQUFTLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN4QyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsS0FBSyxjQUFjLENBQzdELENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxTQUFTLEdBQUcsU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDdEMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFDRCxJQUFJLEtBQTBCLENBQUM7SUFDL0IsSUFBSSxDQUFDO1FBQ0gsS0FBSyxHQUFHLE1BQU0sb0JBQW9CLENBQ2hDLFVBQVUsRUFDVixPQUFPLEVBQ1AsY0FBYyxFQUNkLFNBQVMsQ0FDVixDQUFDO0lBQ0osQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLEtBQUssQ0FBQztJQUNkLENBQUM7SUFDRCxJQUFJLGNBQWMsR0FBRyxnQ0FBZ0MsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3RCxJQUFJLGNBQWMsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUMvQixPQUFPLHFCQUFxQixDQUMxQixVQUFVLEVBQ1YsT0FBTyxFQUNQLGNBQWMsRUFDZCxDQUFDLFlBQVksQ0FBQyxFQUNkLFNBQVMsRUFDVCxVQUFVLEVBQ1YsSUFBSSxFQUNKLEtBQUssQ0FDTixDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksY0FBYyxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ2xDLE1BQU0scUJBQXFCLENBQ3pCLFVBQVUsRUFDVixPQUFPLEVBQ1AsY0FBYyxFQUNkLENBQUMsWUFBWSxDQUFDLEVBQ2QsU0FBUyxFQUNULFVBQVUsRUFDVixzQkFBc0IsRUFDdEIsS0FBSyxDQUNOLENBQUM7UUFDRixNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFDRCxJQUFJLGNBQWMsS0FBSyxjQUFjLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztZQUNoQyxNQUFNLHFCQUFxQixDQUN6QixVQUFVLEVBQ1YsT0FBTyxFQUNQLGNBQWMsRUFDZCxDQUFDLFlBQVksQ0FBQyxFQUNkLFNBQVMsRUFDVCxRQUFRLEVBQ1IsMkJBQTJCLENBQzVCLENBQUM7UUFDSixDQUFDO1FBQ0QsTUFBTSxJQUFJLEtBQUssQ0FDYiwyQ0FBMkMsY0FBYyxFQUFFLENBQzVELENBQUM7SUFDSixDQUFDO0lBQ0QsSUFBSSwwQkFBMEIsRUFBRSxDQUFDO1FBQy9CLE9BQU8sR0FBRyxDQUFDLE1BQU0sc0JBQXNCLENBQ3JDLFVBQVUsQ0FBQyxLQUFLLEVBQ2hCLE9BQU8sRUFDUCxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLEVBQ3pELFFBQVEsRUFDUiwyQkFBMkIsQ0FDNUIsQ0FBc0IsQ0FBQztRQUN4QixTQUFTLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUN4QyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLFdBQVcsS0FBSyxjQUFjLENBQzdELENBQUM7UUFDSCxNQUFNLFVBQVUsQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pFLE9BQU8sR0FBRyxDQUFDLE1BQU0sV0FBVyxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFO1lBQ3RELElBQUksRUFBRSxrQkFBa0I7WUFDeEIsV0FBVyxFQUFFLGNBQWM7U0FDNUIsQ0FBQyxDQUFzQixDQUFDO1FBQ3pCLFNBQVMsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3hDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxLQUFLLGNBQWMsQ0FDN0QsQ0FBQztRQUNILFNBQVMsR0FBRyxTQUFTLENBQUMsT0FBUSxDQUFDLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsTUFBTSxPQUFPLEdBQUcsZ0NBQWdDLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzFFLElBQUksTUFBaUMsQ0FBQztJQUN0QyxJQUFJLENBQUM7UUFDSCxNQUFNLEdBQUcsTUFBTSxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUNoRCxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFDdEIsT0FBTyxFQUNQLHlCQUF5QixDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsRUFDOUMsU0FBUyxDQUNWLENBQUM7SUFDSixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLElBQUksWUFBWSxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLEtBQUssWUFBWSxrQ0FBa0MsRUFBRSxDQUFDO1lBQ3hELElBQUksQ0FBQztnQkFDSCxNQUFNLEdBQUcsTUFBTSw0QkFBNEIsQ0FDekMsVUFBVSxFQUNWLE9BQU8sRUFDUCxTQUFTLEVBQ1QsS0FBSyxFQUNMLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FDWCw0QkFBNEIsQ0FDMUIsUUFBUSxFQUNSLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUN0QixPQUFPLENBQ1IsQ0FDSixDQUFDO2dCQUNGLFlBQVksR0FBRyxTQUFTLENBQUM7WUFDM0IsQ0FBQztZQUFDLE9BQU8sY0FBYyxFQUFFLENBQUM7Z0JBQ3hCLFlBQVksR0FBRyxjQUFjLENBQUM7WUFDaEMsQ0FBQztRQUNILENBQUM7UUFDRCxJQUNFLFlBQVksWUFBWSxrQ0FBa0M7WUFDMUQsWUFBWSxDQUFDLGdCQUFnQixLQUFLLFNBQVMsRUFDM0MsQ0FBQztZQUNELE1BQU0sWUFBWSxDQUFDO1FBQ3JCLENBQUM7UUFDRCxJQUFJLFlBQVksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMvQixjQUFjLEdBQUcsZ0NBQWdDLENBQUMsTUFBTyxDQUFDLENBQUM7UUFDN0QsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUM7Z0JBQ0gsTUFBTSxjQUFjLEdBQUcsTUFBTSxvQkFBb0IsQ0FDL0MsVUFBVSxFQUNWLE9BQU8sRUFDUCxjQUFjLEVBQ2QsU0FBUyxDQUNWLENBQUM7Z0JBQ0YsTUFBTSxVQUFVLEdBQUcsZ0NBQWdDLENBQUMsY0FBYyxDQUFDLENBQUM7Z0JBQ3BFLElBQUksVUFBVSxLQUFLLE9BQU8sRUFBRSxDQUFDO29CQUMzQixPQUFPLHFCQUFxQixDQUMxQixVQUFVLEVBQ1YsT0FBTyxFQUNQLGNBQWMsRUFDZCxDQUFDLFlBQVksQ0FBQyxFQUNkLFNBQVMsRUFDVCxVQUFVLEVBQ1YsSUFBSSxFQUNKLGNBQWMsQ0FDZixDQUFDO2dCQUNKLENBQUM7Z0JBQ0QsSUFBSSxVQUFVLEtBQUssVUFBVSxFQUFFLENBQUM7b0JBQzlCLE1BQU0scUJBQXFCLENBQ3pCLFVBQVUsRUFDVixPQUFPLEVBQ1AsY0FBYyxFQUNkLENBQUMsWUFBWSxDQUFDLEVBQ2QsU0FBUyxFQUNULFVBQVUsRUFDVixzQkFBc0IsRUFDdEIsY0FBYyxDQUNmLENBQUM7Z0JBQ0osQ0FBQztZQUNILENBQUM7WUFBQyxNQUFNLENBQUM7Z0JBQ1AsaUZBQWlGO1lBQ25GLENBQUM7WUFDRCxNQUFNLFlBQVksQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWMsR0FBRyxnQ0FBZ0MsQ0FBQyxNQUFPLENBQUMsQ0FBQztJQUMzRCxJQUFJLGNBQWMsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUMvQixPQUFPLHFCQUFxQixDQUMxQixVQUFVLEVBQ1YsT0FBTyxFQUNQLGNBQWMsRUFDZCxDQUFDLFlBQVksQ0FBQyxFQUNkLFNBQVMsRUFDVCxVQUFVLEVBQ1YsSUFBSSxFQUNKLE1BQU8sQ0FDUixDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksY0FBYyxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQ2xDLE1BQU0scUJBQXFCLENBQ3pCLFVBQVUsRUFDVixPQUFPLEVBQ1AsY0FBYyxFQUNkLENBQUMsWUFBWSxDQUFDLEVBQ2QsU0FBUyxFQUNULFVBQVUsRUFDVixzQkFBc0IsRUFDdEIsTUFBTyxDQUNSLENBQUM7UUFDRixNQUFNLElBQUksS0FBSyxDQUFDLGdDQUFnQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFDRCxNQUFNLElBQUksS0FBSyxDQUNiLDZDQUE2QyxjQUFjLEVBQUUsQ0FDOUQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLEtBQUssRUFDNUMsVUFBc0MsRUFDWixFQUFFO0lBQzVCLElBQUksT0FBTyxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUM7SUFDakMsdUVBQXVFO0lBQ3ZFLEtBQUssTUFBTSxRQUFRLElBQUksbUJBQW1CLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNwRCxNQUFNLHVCQUF1QixDQUMzQixVQUFVLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQ3hFLFFBQVEsQ0FDVCxDQUFDO0lBQ0osQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLGFBQWEsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNoQyxPQUFPLEdBQUcsTUFBTSwwQkFBMEIsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDaEUsSUFDRSxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssWUFBWTtZQUM3QyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEtBQUssUUFBUSxFQUN6QyxDQUFDO1lBQ0QsT0FBTyxHQUFHLE1BQU0sb0JBQW9CLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzVELENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3RELE1BQU0scUJBQXFCLEdBQ3pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxLQUFLLFVBQVU7UUFDOUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTztRQUN6QixDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsSUFBSSxTQUFTLENBQUM7SUFDckQsS0FBSyxNQUFNLFFBQVEsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzlDLE1BQU0sVUFBVSxDQUFDLHNCQUFzQixDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDL0QsT0FBTyxHQUFHLE1BQU0sa0JBQWtCLENBQ2hDLFVBQVUsRUFDVixPQUFPLEVBQ1AsUUFBUSxDQUFDLFFBQVEsRUFDakIsUUFBUSxDQUFDLFdBQVcsRUFDcEIsT0FBTyxDQUFDLGFBQWEsS0FBSyxDQUFDLENBQzVCLENBQUM7SUFDSixDQUFDO0lBQ0QsMEVBQTBFO0lBQzFFLHdFQUF3RTtJQUN4RSxJQUFJLE9BQU8sQ0FBQyxhQUFhLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDaEMsS0FBSyxNQUFNLFFBQVEsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzlDLElBQ0UsUUFBUSxDQUFDLEtBQUssS0FBSyxRQUFRO2dCQUMzQixRQUFRLENBQUMsS0FBSyxLQUFLLDJCQUEyQjtnQkFFOUMsU0FBUztZQUNYLE1BQU0sVUFBVSxDQUFDLHNCQUFzQixDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFDL0QsT0FBTyxHQUFHLE1BQU0sa0JBQWtCLENBQ2hDLFVBQVUsRUFDVixPQUFPLEVBQ1AsUUFBUSxDQUFDLFFBQVEsRUFDakIsUUFBUSxDQUFDLFdBQVcsQ0FDckIsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBQ0QsSUFDRSxPQUFPLENBQUMsYUFBYSxLQUFLLENBQUM7UUFDM0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxLQUFLLFVBQVUsRUFDM0MsQ0FBQztRQUNELEtBQUssTUFBTSxTQUFTLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNsRCxPQUFPLEdBQUcsTUFBTSxzQkFBc0IsQ0FDcEMsVUFBVSxFQUNWLE9BQU8sRUFDUCxTQUFTLENBQUMsV0FBVyxDQUN0QixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sR0FBRyxNQUFNLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDIn0=
|
|
@@ -2,10 +2,12 @@ import * as plugins from "./mod.plugins.js";
|
|
|
2
2
|
import type { ICliMode } from "../helpers.climode.js";
|
|
3
3
|
import { type IResolvedReleaseWorkflow } from "../helpers.workflow.js";
|
|
4
4
|
import { ReleaseJournalStore, type TReleaseJournal } from "./classes.releasejournal.js";
|
|
5
|
+
import { type IPnpmReleaseCapability } from "./helpers.npmartifact.js";
|
|
5
6
|
import { type ITsdockerReleaseClient, type IReleaseQualificationRequest } from "./helpers.tsdockerprotocol.js";
|
|
6
7
|
export { buildReleaseGitPushArgs } from "./helpers.releasepublication.js";
|
|
7
8
|
export declare const run: (argvArg: any) => Promise<void>;
|
|
8
9
|
interface ICreateReleaseJournalOptions {
|
|
10
|
+
pnpmCapability?: IPnpmReleaseCapability;
|
|
9
11
|
smartshell: plugins.smartshell.Smartshell;
|
|
10
12
|
workflow: IResolvedReleaseWorkflow;
|
|
11
13
|
releaseCwd: string;
|
|
@@ -81,7 +81,7 @@ const runInternal = async (argvArg) => {
|
|
|
81
81
|
const preflightTsdocker = workflow.targets.includes("docker")
|
|
82
82
|
? new TsdockerReleaseClient(smartshellInstance, branchContext.sourceCwd)
|
|
83
83
|
: undefined;
|
|
84
|
-
await assertFreshReleaseCapabilities(smartshellInstance, workflow, branchContext.sourceCwd, branchContext.pushUrl, preflightTsdocker);
|
|
84
|
+
const pnpmCapability = await assertFreshReleaseCapabilities(smartshellInstance, workflow, branchContext.sourceCwd, branchContext.pushUrl, preflightTsdocker);
|
|
85
85
|
const pending = await readPendingChangelog(plugins.path.join(branchContext.sourceCwd, workflow.changelogFile), workflow.changelogPendingSection);
|
|
86
86
|
if (pending.isEmpty && !argvArg["allow-empty"] && !argvArg.allowEmpty) {
|
|
87
87
|
throw new Error("No pending changelog entries. Nothing to release.");
|
|
@@ -142,6 +142,7 @@ const runInternal = async (argvArg) => {
|
|
|
142
142
|
? createDockerQualificationRequest(workflow, releaseCwd, newVersion, releaseRefs.mainOid)
|
|
143
143
|
: undefined;
|
|
144
144
|
const journalContext = await createReleaseJournal({
|
|
145
|
+
pnpmCapability,
|
|
145
146
|
smartshell: smartshellInstance,
|
|
146
147
|
workflow,
|
|
147
148
|
releaseCwd,
|
|
@@ -154,6 +155,7 @@ const runInternal = async (argvArg) => {
|
|
|
154
155
|
ensurePublicationState,
|
|
155
156
|
});
|
|
156
157
|
const finalJournal = await executeReleasePublication({
|
|
158
|
+
pnpmCapability,
|
|
157
159
|
smartshell: smartshellInstance,
|
|
158
160
|
cwd: releaseCwd,
|
|
159
161
|
store: journalContext.store,
|
|
@@ -179,7 +181,7 @@ const assertFreshReleaseCapabilities = async (smartshellArg, workflowArg, cwdArg
|
|
|
179
181
|
await assertNoLegacyNpmPublisher(cwdArg);
|
|
180
182
|
}
|
|
181
183
|
if (workflowArg.targets.includes("npm")) {
|
|
182
|
-
|
|
184
|
+
return assertPnpmReleaseCapability(smartshellArg, cwdArg);
|
|
183
185
|
}
|
|
184
186
|
};
|
|
185
187
|
const assertReleaseConfiguration = (workflowArg, mergeRequestedArg) => {
|
|
@@ -270,7 +272,7 @@ export const createReleaseJournal = async (optionsArg) => {
|
|
|
270
272
|
throw new Error("tspublish package plan changed during preparation.");
|
|
271
273
|
}
|
|
272
274
|
for (const module of prepared) {
|
|
273
|
-
const packed = await packNpmArtifact(optionsArg.smartshell, module.directory, temporaryDirectory, optionsArg.version, releasePackageArtifactFile(module.name));
|
|
275
|
+
const packed = await packNpmArtifact(optionsArg.smartshell, module.directory, temporaryDirectory, optionsArg.version, optionsArg.pnpmCapability, releasePackageArtifactFile(module.name));
|
|
274
276
|
if (packed.packageName !== module.name)
|
|
275
277
|
throw new Error("Prepared package identity changed during packing.");
|
|
276
278
|
packages.push({ folder: module.folder, artifact: packed });
|
|
@@ -278,7 +280,7 @@ export const createReleaseJournal = async (optionsArg) => {
|
|
|
278
280
|
await plugins.fs.rm(outputDirectory, { recursive: true, force: true });
|
|
279
281
|
}
|
|
280
282
|
else {
|
|
281
|
-
artifact = await packNpmArtifact(optionsArg.smartshell, npmSourceCwd, temporaryDirectory, optionsArg.version);
|
|
283
|
+
artifact = await packNpmArtifact(optionsArg.smartshell, npmSourceCwd, temporaryDirectory, optionsArg.version, optionsArg.pnpmCapability);
|
|
282
284
|
}
|
|
283
285
|
await verifyCleanTree(optionsArg.smartshell, npmSourceCwd, "npm pack lifecycle scripts changed the release worktree. Aborting release.");
|
|
284
286
|
await optionsArg.ensurePublicationState();
|
|
@@ -455,7 +457,7 @@ const runReleaseRecover = async (argvArg, mode) => {
|
|
|
455
457
|
console.log(`Recover existing ${packageName}@${version}\ncommit: ${refs.mainOid}\ntag object: ${refs.tagOid}\nGit destination: ${branch.gitRemote}\nnpm registries: ${workflow.npmRegistries.join(", ")}\nBuild and pack an isolated checkout, install its journal, then publish configured targets.`);
|
|
456
458
|
if (argvArg.plan)
|
|
457
459
|
return;
|
|
458
|
-
await assertFreshReleaseCapabilities(shell, workflow, paths.cwd, branch.pushUrl);
|
|
460
|
+
const pnpmCapability = await assertFreshReleaseCapabilities(shell, workflow, paths.cwd, branch.pushUrl);
|
|
459
461
|
if (!mode.yes) {
|
|
460
462
|
if (!mode.interactive)
|
|
461
463
|
throw new Error("Release recovery requires an interactive terminal or -y.");
|
|
@@ -473,6 +475,7 @@ const runReleaseRecover = async (argvArg, mode) => {
|
|
|
473
475
|
await assertRecoveryUnpublished(options, packageName);
|
|
474
476
|
};
|
|
475
477
|
const context = await withReleasePreparationRecovery(options, ensureUnpublished, async (checkout, ensureCheckout) => createReleaseJournal({
|
|
478
|
+
pnpmCapability,
|
|
476
479
|
smartshell: shell,
|
|
477
480
|
workflow,
|
|
478
481
|
releaseCwd: paths.cwd,
|
|
@@ -487,6 +490,7 @@ const runReleaseRecover = async (argvArg, mode) => {
|
|
|
487
490
|
},
|
|
488
491
|
}));
|
|
489
492
|
const result = await executeReleasePublication({
|
|
493
|
+
pnpmCapability,
|
|
490
494
|
smartshell: shell,
|
|
491
495
|
cwd: paths.cwd,
|
|
492
496
|
store: context.store,
|
|
@@ -575,8 +579,9 @@ const runReleaseResume = async (argvArg, modeArg) => {
|
|
|
575
579
|
await tsdocker.assertCapabilities();
|
|
576
580
|
await tsdocker.validate(journal.docker.request);
|
|
577
581
|
}
|
|
582
|
+
let pnpmCapability;
|
|
578
583
|
if (getReleaseArtifacts(journal).length) {
|
|
579
|
-
await assertPnpmReleaseCapability(smartshellInstance, paths.cwd);
|
|
584
|
+
pnpmCapability = await assertPnpmReleaseCapability(smartshellInstance, paths.cwd);
|
|
580
585
|
await assertNoLegacyNpmPublisher(paths.cwd);
|
|
581
586
|
for (const artifact of getReleaseArtifacts(journal)) {
|
|
582
587
|
await verifyStoredNpmArtifact(store.getArtifactPath(version, artifact.file), artifact);
|
|
@@ -620,6 +625,7 @@ const runReleaseResume = async (argvArg, modeArg) => {
|
|
|
620
625
|
await revalidateReleasePublicationState(smartshellInstance, branchContext, journal.release.mainOid, expectedRemoteMainOidArg);
|
|
621
626
|
};
|
|
622
627
|
const finalJournal = await executeReleasePublication({
|
|
628
|
+
pnpmCapability,
|
|
623
629
|
smartshell: smartshellInstance,
|
|
624
630
|
cwd: paths.cwd,
|
|
625
631
|
store,
|
|
@@ -965,4 +971,4 @@ export function showHelp(mode) {
|
|
|
965
971
|
console.log(" --recover-attempt Recover one exact 32-character hexadecimal attempt ID after proving its publisher stopped");
|
|
966
972
|
console.log("");
|
|
967
973
|
}
|
|
968
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9tb2RfcmVsZWFzZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxLQUFLLE1BQU0sYUFBYSxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFDTCwyQkFBMkIsRUFDM0Isb0JBQW9CLEVBQ3BCLG9CQUFvQixHQUNyQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFDTCxpQ0FBaUMsRUFDakMsc0JBQXNCLEVBQ3RCLGlDQUFpQyxHQUdsQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sS0FBSyxhQUFhLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixzQkFBc0IsRUFDdEIseUJBQXlCLEVBQ3pCLCtCQUErQixFQUMvQixpQ0FBaUMsRUFDakMsYUFBYSxFQUNiLHVCQUF1QixHQUV4QixNQUFNLDRCQUE0QixDQUFDO0FBQ3BDLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsaUNBQWlDLEVBQ2pDLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsNkJBQTZCLEVBQzdCLHVCQUF1QixFQUN2Qix5QkFBeUIsRUFDekIsbUJBQW1CLEVBQ25CLDBCQUEwQixHQU0zQixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIsMkJBQTJCLEVBQzNCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsZUFBZSxFQUNmLHVCQUF1QixHQUN4QixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVFLE9B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
|
|
974
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9tb2RfcmVsZWFzZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxLQUFLLE1BQU0sYUFBYSxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sRUFDTCwyQkFBMkIsRUFDM0Isb0JBQW9CLEVBQ3BCLG9CQUFvQixHQUNyQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFDTCxpQ0FBaUMsRUFDakMsc0JBQXNCLEVBQ3RCLGlDQUFpQyxHQUdsQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sS0FBSyxhQUFhLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixzQkFBc0IsRUFDdEIseUJBQXlCLEVBQ3pCLCtCQUErQixFQUMvQixpQ0FBaUMsRUFDakMsYUFBYSxFQUNiLHVCQUF1QixHQUV4QixNQUFNLDRCQUE0QixDQUFDO0FBQ3BDLE9BQU8sRUFDTCxtQkFBbUIsRUFDbkIsaUNBQWlDLEVBQ2pDLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsNkJBQTZCLEVBQzdCLHVCQUF1QixFQUN2Qix5QkFBeUIsRUFDekIsbUJBQW1CLEVBQ25CLDBCQUEwQixHQU0zQixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIsMkJBQTJCLEVBQzNCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsZUFBZSxFQUNmLHVCQUF1QixHQUV4QixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzVFLE9B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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@git.zone/cli",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "6.
|
|
4
|
+
"version": "6.9.0",
|
|
5
5
|
"description": "A comprehensive CLI tool for enhancing and managing local development workflows with gitzone utilities, focusing on project setup, version control, code formatting, and template management.",
|
|
6
6
|
"main": "dist_ts/index.js",
|
|
7
7
|
"typings": "dist_ts/index.d.ts",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"@git.zone/tsbuild": "^4.4.2",
|
|
43
43
|
"@git.zone/tspack": "1.3.0",
|
|
44
44
|
"@git.zone/tsrun": "^2.0.6",
|
|
45
|
-
"@git.zone/tstest": "
|
|
45
|
+
"@git.zone/tstest": "6.0.0",
|
|
46
46
|
"@types/node": "26.4.1"
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
package/readme.md
CHANGED
|
@@ -206,7 +206,21 @@ Release flags:
|
|
|
206
206
|
|
|
207
207
|
### Exact artifacts and release journals
|
|
208
208
|
|
|
209
|
-
Journal schema 1 supports Git and public npm publication. Schema 2 adds Docker qualification, promotion, and cleanup evidence without changing the storage path or schema-1 parsing and resume behavior. Fresh and resumed npm publication requires a qualified exact `pnpm` version: `11.25.0`, `12.1.0`, `12.2.1`, or `12.3.4`. GitZone checks that version's pack/publish command contract; other versions and missing required capabilities fail before publication. Registries must be unique canonical credential-free HTTP(S) URLs, and `release.targets.npm.accessLevel` must be `public` so verification does not depend on publisher credentials.
|
|
209
|
+
Journal schema 1 supports Git and public npm publication. Schema 2 adds Docker qualification, promotion, and cleanup evidence without changing the storage path or schema-1 parsing and resume behavior. Fresh and resumed npm publication requires a qualified exact `pnpm` version: `11.25.0`, `12.1.0`, `12.2.1`, `12.3.0`, or `12.3.4`. GitZone checks that version's pack/publish command contract; other versions and missing required capabilities fail before publication. Registries must be unique canonical credential-free HTTP(S) URLs, and `release.targets.npm.accessLevel` must be `public` so verification does not depend on publisher credentials.
|
|
210
|
+
|
|
211
|
+
GitZone keeps the selected pnpm version for help checks, packing, and publication
|
|
212
|
+
through `pnpm with <version>`, including release recovery and resume. This avoids
|
|
213
|
+
mixing a launcher's help output with a project-selected package-manager version.
|
|
214
|
+
Use a standalone pnpm installation; Corepack launchers cannot run `pnpm with`.
|
|
215
|
+
The normal release-age policy also applies when pnpm provisions that version.
|
|
216
|
+
|
|
217
|
+
The pnpm release tests keep deterministic contracts for every supported version
|
|
218
|
+
and qualify actual packaging and script-free tarball publication with the active
|
|
219
|
+
version. Run `testUnit` with each maturity-eligible standalone version and a matching
|
|
220
|
+
project pin in an isolated checkout. For a focused matrix, invoke the project-local
|
|
221
|
+
`tstest` on `test.pnpmrelease.node.ts` from a disposable directory whose
|
|
222
|
+
`package.json` pins that row. Do not wrap these invocations in another `pnpm with`:
|
|
223
|
+
pnpm rejects nested use. Keep the normal release-age policy for every row.
|
|
210
224
|
|
|
211
225
|
For a repository's first release, run from clean local `main` against an empty
|
|
212
226
|
remote. GitZone verifies that no remote refs exist, records Git's zero object ID
|
package/ts/00_commitinfo_data.ts
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@git.zone/cli',
|
|
6
|
-
version: '6.
|
|
6
|
+
version: '6.9.0',
|
|
7
7
|
description: 'A comprehensive CLI tool for enhancing and managing local development workflows with gitzone utilities, focusing on project setup, version control, code formatting, and template management.'
|
|
8
8
|
}
|
|
@@ -9,6 +9,7 @@ const supportedPnpmVersions = [
|
|
|
9
9
|
"11.25.0",
|
|
10
10
|
"12.1.0",
|
|
11
11
|
"12.2.1",
|
|
12
|
+
"12.3.0",
|
|
12
13
|
"12.3.4",
|
|
13
14
|
] as const;
|
|
14
15
|
const pnpmHelpRequirements = {
|
|
@@ -49,6 +50,19 @@ const pnpmHelpRequirements = {
|
|
|
49
50
|
"[possible values: public, restricted]",
|
|
50
51
|
],
|
|
51
52
|
},
|
|
53
|
+
"12.3.0": {
|
|
54
|
+
pack: ["Usage: pnpm pack [OPTIONS]", "--out <OUT>", "--json"],
|
|
55
|
+
publish: [
|
|
56
|
+
"Usage: pnpm publish [OPTIONS] [PACKAGE]",
|
|
57
|
+
"Tarball or directory to publish",
|
|
58
|
+
"--no-git-checks",
|
|
59
|
+
"--ignore-scripts",
|
|
60
|
+
"--json",
|
|
61
|
+
"--tag <TAG>",
|
|
62
|
+
"--access <ACCESS>",
|
|
63
|
+
"[possible values: public, restricted]",
|
|
64
|
+
],
|
|
65
|
+
},
|
|
52
66
|
"12.3.4": {
|
|
53
67
|
pack: ["Usage: pnpm pack [OPTIONS]", "--out <OUT>", "--json"],
|
|
54
68
|
publish: [
|
|
@@ -77,9 +91,24 @@ export function assertNpmPackageName(value: unknown): asserts value is string {
|
|
|
77
91
|
}
|
|
78
92
|
|
|
79
93
|
export interface IPnpmReleaseCapability {
|
|
80
|
-
version: (typeof supportedPnpmVersions)[number];
|
|
94
|
+
readonly version: (typeof supportedPnpmVersions)[number];
|
|
81
95
|
}
|
|
82
96
|
|
|
97
|
+
export const buildQualifiedPnpmArgs = (
|
|
98
|
+
capabilityArg: IPnpmReleaseCapability | undefined,
|
|
99
|
+
argsArg: readonly string[],
|
|
100
|
+
): string[] => {
|
|
101
|
+
if (
|
|
102
|
+
!capabilityArg ||
|
|
103
|
+
!supportedPnpmVersions.includes(capabilityArg.version)
|
|
104
|
+
) {
|
|
105
|
+
throw new Error(
|
|
106
|
+
"npm release commands require a qualified pnpm invocation.",
|
|
107
|
+
);
|
|
108
|
+
}
|
|
109
|
+
return ["with", capabilityArg.version, ...argsArg];
|
|
110
|
+
};
|
|
111
|
+
|
|
83
112
|
export type TNpmArtifactProbeStatus =
|
|
84
113
|
"absent" | "exact" | "conflict" | "inconclusive";
|
|
85
114
|
|
|
@@ -169,21 +198,28 @@ export const assertPnpmReleaseCapability = async (
|
|
|
169
198
|
);
|
|
170
199
|
}
|
|
171
200
|
const requirements = pnpmHelpRequirements[supportedVersion];
|
|
201
|
+
const capability = Object.freeze({ version: supportedVersion });
|
|
172
202
|
|
|
173
|
-
const packHelp = await smartshellArg.execSpawn(
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
203
|
+
const packHelp = await smartshellArg.execSpawn(
|
|
204
|
+
"pnpm",
|
|
205
|
+
buildQualifiedPnpmArgs(capability, ["pack", "--help"]),
|
|
206
|
+
{
|
|
207
|
+
cwd: cwdArg,
|
|
208
|
+
silent: true,
|
|
209
|
+
timeout: capabilityCommandTimeoutMs,
|
|
210
|
+
timeoutKillGraceMs: 5_000,
|
|
211
|
+
},
|
|
212
|
+
);
|
|
179
213
|
if (packHelp.exitCode !== 0) {
|
|
180
|
-
throw new Error(
|
|
214
|
+
throw new Error(
|
|
215
|
+
"Unable to inspect the selected pnpm pack capabilities. Exact release commands require standalone pnpm with support; Corepack launchers are unsupported.",
|
|
216
|
+
);
|
|
181
217
|
}
|
|
182
218
|
requireHelpFragments(packHelp.combinedOutput, requirements.pack, "pack");
|
|
183
219
|
|
|
184
220
|
const publishHelp = await smartshellArg.execSpawn(
|
|
185
221
|
"pnpm",
|
|
186
|
-
["publish", "--help"],
|
|
222
|
+
buildQualifiedPnpmArgs(capability, ["publish", "--help"]),
|
|
187
223
|
{
|
|
188
224
|
cwd: cwdArg,
|
|
189
225
|
silent: true,
|
|
@@ -199,7 +235,7 @@ export const assertPnpmReleaseCapability = async (
|
|
|
199
235
|
requirements.publish,
|
|
200
236
|
"publish",
|
|
201
237
|
);
|
|
202
|
-
return
|
|
238
|
+
return capability;
|
|
203
239
|
};
|
|
204
240
|
|
|
205
241
|
/**
|
|
@@ -358,6 +394,7 @@ export const packNpmArtifact = async (
|
|
|
358
394
|
cwdArg: string,
|
|
359
395
|
destinationDirectoryArg: string,
|
|
360
396
|
expectedVersionArg: string,
|
|
397
|
+
capabilityArg: IPnpmReleaseCapability | undefined,
|
|
361
398
|
fileArg: string = releaseArtifactFileName,
|
|
362
399
|
): Promise<IReleaseArtifact> => {
|
|
363
400
|
if (
|
|
@@ -375,7 +412,12 @@ export const packNpmArtifact = async (
|
|
|
375
412
|
const artifactPath = plugins.path.join(destinationDirectoryArg, fileArg);
|
|
376
413
|
const result = await smartshellArg.execSpawn(
|
|
377
414
|
"pnpm",
|
|
378
|
-
|
|
415
|
+
buildQualifiedPnpmArgs(capabilityArg, [
|
|
416
|
+
"pack",
|
|
417
|
+
"--out",
|
|
418
|
+
artifactPath,
|
|
419
|
+
"--json",
|
|
420
|
+
]),
|
|
379
421
|
{
|
|
380
422
|
cwd: cwdArg,
|
|
381
423
|
timeout: packCommandTimeoutMs,
|
|
@@ -470,10 +512,14 @@ export const publishNpmArtifact = async (
|
|
|
470
512
|
cwdArg: string,
|
|
471
513
|
artifactPathArg: string,
|
|
472
514
|
registryArg: string,
|
|
515
|
+
capabilityArg: IPnpmReleaseCapability | undefined,
|
|
473
516
|
): Promise<{ exitCode: number; output: string }> => {
|
|
474
517
|
const result = await smartshellArg.execSpawn(
|
|
475
518
|
"pnpm",
|
|
476
|
-
|
|
519
|
+
buildQualifiedPnpmArgs(
|
|
520
|
+
capabilityArg,
|
|
521
|
+
buildPnpmPublishArgs(artifactPathArg, registryArg),
|
|
522
|
+
),
|
|
477
523
|
{
|
|
478
524
|
cwd: cwdArg,
|
|
479
525
|
timeout: publishCommandTimeoutMs,
|
|
@@ -18,6 +18,8 @@ import {
|
|
|
18
18
|
publishNpmArtifact,
|
|
19
19
|
verifyStoredNpmArtifact,
|
|
20
20
|
waitForAnonymousNpmArtifact,
|
|
21
|
+
buildQualifiedPnpmArgs,
|
|
22
|
+
type IPnpmReleaseCapability,
|
|
21
23
|
type INpmArtifactProbeOptions,
|
|
22
24
|
type INpmArtifactProbeResult,
|
|
23
25
|
} from "./helpers.npmartifact.js";
|
|
@@ -85,6 +87,7 @@ interface IGitProbeResult {
|
|
|
85
87
|
}
|
|
86
88
|
|
|
87
89
|
export interface IReleasePublicationOptions {
|
|
90
|
+
pnpmCapability?: IPnpmReleaseCapability;
|
|
88
91
|
smartshell: plugins.smartshell.Smartshell;
|
|
89
92
|
cwd: string;
|
|
90
93
|
store: ReleaseJournalStore;
|
|
@@ -713,12 +716,15 @@ const executeNpmRegistry = async (
|
|
|
713
716
|
artifact.file,
|
|
714
717
|
);
|
|
715
718
|
await verifyStoredNpmArtifact(artifactPath, artifact);
|
|
719
|
+
// Reject a missing invocation before claiming a potentially publishing target.
|
|
720
|
+
buildQualifiedPnpmArgs(optionsArg.pnpmCapability, []);
|
|
716
721
|
journal = await claimTarget(optionsArg.store, journal, selector);
|
|
717
722
|
const publishResult = await publishNpmArtifact(
|
|
718
723
|
optionsArg.smartshell,
|
|
719
724
|
optionsArg.cwd,
|
|
720
725
|
artifactPath,
|
|
721
726
|
registryArg,
|
|
727
|
+
optionsArg.pnpmCapability,
|
|
722
728
|
);
|
|
723
729
|
probe = await probeNpm(
|
|
724
730
|
journal,
|
package/ts/mod_release/index.ts
CHANGED
|
@@ -49,6 +49,7 @@ import {
|
|
|
49
49
|
normalizeNpmRegistryUrl,
|
|
50
50
|
packNpmArtifact,
|
|
51
51
|
verifyStoredNpmArtifact,
|
|
52
|
+
type IPnpmReleaseCapability,
|
|
52
53
|
} from "./helpers.npmartifact.js";
|
|
53
54
|
import { executeReleasePublication } from "./helpers.releasepublication.js";
|
|
54
55
|
import {
|
|
@@ -143,7 +144,7 @@ const runInternal = async (argvArg: any): Promise<void> => {
|
|
|
143
144
|
const preflightTsdocker = workflow.targets.includes("docker")
|
|
144
145
|
? new TsdockerReleaseClient(smartshellInstance, branchContext.sourceCwd)
|
|
145
146
|
: undefined;
|
|
146
|
-
await assertFreshReleaseCapabilities(
|
|
147
|
+
const pnpmCapability = await assertFreshReleaseCapabilities(
|
|
147
148
|
smartshellInstance,
|
|
148
149
|
workflow,
|
|
149
150
|
branchContext.sourceCwd,
|
|
@@ -293,6 +294,7 @@ const runInternal = async (argvArg: any): Promise<void> => {
|
|
|
293
294
|
)
|
|
294
295
|
: undefined;
|
|
295
296
|
const journalContext = await createReleaseJournal({
|
|
297
|
+
pnpmCapability,
|
|
296
298
|
smartshell: smartshellInstance,
|
|
297
299
|
workflow,
|
|
298
300
|
releaseCwd,
|
|
@@ -305,6 +307,7 @@ const runInternal = async (argvArg: any): Promise<void> => {
|
|
|
305
307
|
ensurePublicationState,
|
|
306
308
|
});
|
|
307
309
|
const finalJournal = await executeReleasePublication({
|
|
310
|
+
pnpmCapability,
|
|
308
311
|
smartshell: smartshellInstance,
|
|
309
312
|
cwd: releaseCwd,
|
|
310
313
|
store: journalContext.store,
|
|
@@ -322,7 +325,7 @@ const assertFreshReleaseCapabilities = async (
|
|
|
322
325
|
cwdArg: string,
|
|
323
326
|
pushUrlArg?: string,
|
|
324
327
|
tsdockerArg?: ITsdockerReleaseClient,
|
|
325
|
-
): Promise<
|
|
328
|
+
): Promise<IPnpmReleaseCapability | undefined> => {
|
|
326
329
|
if (workflowArg.targets.includes("docker")) {
|
|
327
330
|
if (!tsdockerArg) {
|
|
328
331
|
throw new Error("Docker release target requires project-local tSDocker.");
|
|
@@ -341,7 +344,7 @@ const assertFreshReleaseCapabilities = async (
|
|
|
341
344
|
await assertNoLegacyNpmPublisher(cwdArg);
|
|
342
345
|
}
|
|
343
346
|
if (workflowArg.targets.includes("npm")) {
|
|
344
|
-
|
|
347
|
+
return assertPnpmReleaseCapability(smartshellArg, cwdArg);
|
|
345
348
|
}
|
|
346
349
|
};
|
|
347
350
|
|
|
@@ -408,6 +411,7 @@ const assertReleaseConfiguration = (
|
|
|
408
411
|
};
|
|
409
412
|
|
|
410
413
|
interface ICreateReleaseJournalOptions {
|
|
414
|
+
pnpmCapability?: IPnpmReleaseCapability;
|
|
411
415
|
smartshell: plugins.smartshell.Smartshell;
|
|
412
416
|
workflow: IResolvedReleaseWorkflow;
|
|
413
417
|
releaseCwd: string;
|
|
@@ -509,6 +513,7 @@ export const createReleaseJournal = async (
|
|
|
509
513
|
module.directory,
|
|
510
514
|
temporaryDirectory,
|
|
511
515
|
optionsArg.version,
|
|
516
|
+
optionsArg.pnpmCapability,
|
|
512
517
|
releasePackageArtifactFile(module.name),
|
|
513
518
|
);
|
|
514
519
|
if (packed.packageName !== module.name)
|
|
@@ -524,6 +529,7 @@ export const createReleaseJournal = async (
|
|
|
524
529
|
npmSourceCwd,
|
|
525
530
|
temporaryDirectory,
|
|
526
531
|
optionsArg.version,
|
|
532
|
+
optionsArg.pnpmCapability,
|
|
527
533
|
);
|
|
528
534
|
}
|
|
529
535
|
await verifyCleanTree(
|
|
@@ -745,7 +751,7 @@ const runReleaseRecover = async (
|
|
|
745
751
|
`Recover existing ${packageName}@${version}\ncommit: ${refs.mainOid}\ntag object: ${refs.tagOid}\nGit destination: ${branch.gitRemote}\nnpm registries: ${workflow.npmRegistries.join(", ")}\nBuild and pack an isolated checkout, install its journal, then publish configured targets.`,
|
|
746
752
|
);
|
|
747
753
|
if (argvArg.plan) return;
|
|
748
|
-
await assertFreshReleaseCapabilities(
|
|
754
|
+
const pnpmCapability = await assertFreshReleaseCapabilities(
|
|
749
755
|
shell,
|
|
750
756
|
workflow,
|
|
751
757
|
paths.cwd,
|
|
@@ -784,6 +790,7 @@ const runReleaseRecover = async (
|
|
|
784
790
|
ensureUnpublished,
|
|
785
791
|
async (checkout, ensureCheckout) =>
|
|
786
792
|
createReleaseJournal({
|
|
793
|
+
pnpmCapability,
|
|
787
794
|
smartshell: shell,
|
|
788
795
|
workflow,
|
|
789
796
|
releaseCwd: paths.cwd,
|
|
@@ -799,6 +806,7 @@ const runReleaseRecover = async (
|
|
|
799
806
|
}),
|
|
800
807
|
);
|
|
801
808
|
const result = await executeReleasePublication({
|
|
809
|
+
pnpmCapability,
|
|
802
810
|
smartshell: shell,
|
|
803
811
|
cwd: paths.cwd,
|
|
804
812
|
store: context.store,
|
|
@@ -913,8 +921,12 @@ const runReleaseResume = async (
|
|
|
913
921
|
await tsdocker.assertCapabilities();
|
|
914
922
|
await tsdocker.validate(journal.docker.request);
|
|
915
923
|
}
|
|
924
|
+
let pnpmCapability: IPnpmReleaseCapability | undefined;
|
|
916
925
|
if (getReleaseArtifacts(journal).length) {
|
|
917
|
-
await assertPnpmReleaseCapability(
|
|
926
|
+
pnpmCapability = await assertPnpmReleaseCapability(
|
|
927
|
+
smartshellInstance,
|
|
928
|
+
paths.cwd,
|
|
929
|
+
);
|
|
918
930
|
await assertNoLegacyNpmPublisher(paths.cwd);
|
|
919
931
|
for (const artifact of getReleaseArtifacts(journal)) {
|
|
920
932
|
await verifyStoredNpmArtifact(
|
|
@@ -984,6 +996,7 @@ const runReleaseResume = async (
|
|
|
984
996
|
);
|
|
985
997
|
};
|
|
986
998
|
const finalJournal = await executeReleasePublication({
|
|
999
|
+
pnpmCapability,
|
|
987
1000
|
smartshell: smartshellInstance,
|
|
988
1001
|
cwd: paths.cwd,
|
|
989
1002
|
store,
|