promptfoo 0.104.0 → 0.104.2
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/package.json +13 -13
- package/dist/src/app/assets/index-BOYExNVs.js +882 -0
- package/dist/src/app/assets/index-D_f6kGCb.css +1 -0
- package/dist/src/app/assets/{index.es-q4VBMGZc.js → index.es-BSfrneXx.js} +1 -1
- package/dist/src/app/assets/{sync-YtFnZSQQ.js → sync-Cq1ANNrp.js} +1 -1
- package/dist/src/app/index.html +2 -2
- package/dist/src/assertions/llmRubric.d.ts.map +1 -1
- package/dist/src/assertions/llmRubric.js +2 -5
- package/dist/src/assertions/llmRubric.js.map +1 -1
- package/dist/src/cache.d.ts +1 -0
- package/dist/src/cache.d.ts.map +1 -1
- package/dist/src/cache.js +15 -2
- package/dist/src/cache.js.map +1 -1
- package/dist/src/commands/auth.d.ts.map +1 -1
- package/dist/src/commands/auth.js +12 -4
- package/dist/src/commands/auth.js.map +1 -1
- package/dist/src/commands/config.d.ts.map +1 -1
- package/dist/src/commands/config.js +11 -0
- package/dist/src/commands/config.js.map +1 -1
- package/dist/src/commands/eval.js +1 -1
- package/dist/src/commands/eval.js.map +1 -1
- package/dist/src/commands/generate/dataset.js +2 -2
- package/dist/src/commands/generate/dataset.js.map +1 -1
- package/dist/src/database/tables.d.ts +106 -48
- package/dist/src/database/tables.d.ts.map +1 -1
- package/dist/src/envars.d.ts +4 -2
- package/dist/src/envars.d.ts.map +1 -1
- package/dist/src/envars.js.map +1 -1
- package/dist/src/esm.d.ts.map +1 -1
- package/dist/src/esm.js +5 -5
- package/dist/src/esm.js.map +1 -1
- package/dist/src/evaluator.d.ts.map +1 -1
- package/dist/src/evaluator.js +5 -5
- package/dist/src/evaluator.js.map +1 -1
- package/dist/src/globalConfig/accounts.d.ts.map +1 -1
- package/dist/src/globalConfig/accounts.js +4 -4
- package/dist/src/globalConfig/accounts.js.map +1 -1
- package/dist/src/golang/wrapper.go +21 -4
- package/dist/src/guardrails.d.ts +23 -0
- package/dist/src/guardrails.d.ts.map +1 -0
- package/dist/src/guardrails.js +41 -0
- package/dist/src/guardrails.js.map +1 -0
- package/dist/src/index.d.ts +7 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +6 -3
- package/dist/src/index.js.map +1 -1
- package/dist/src/integrations/huggingfaceDatasets.d.ts +5 -0
- package/dist/src/integrations/huggingfaceDatasets.d.ts.map +1 -1
- package/dist/src/integrations/huggingfaceDatasets.js +9 -1
- package/dist/src/integrations/huggingfaceDatasets.js.map +1 -1
- package/dist/src/matchers.d.ts +2 -2
- package/dist/src/matchers.d.ts.map +1 -1
- package/dist/src/matchers.js +18 -4
- package/dist/src/matchers.js.map +1 -1
- package/dist/src/models/eval.d.ts +4 -2
- package/dist/src/models/eval.d.ts.map +1 -1
- package/dist/src/models/eval.js +23 -15
- package/dist/src/models/eval.js.map +1 -1
- package/dist/src/providers/alibaba.js +2 -2
- package/dist/src/providers/alibaba.js.map +1 -1
- package/dist/src/providers/anthropic.d.ts +8 -7
- package/dist/src/providers/anthropic.d.ts.map +1 -1
- package/dist/src/providers/anthropic.js +5 -2
- package/dist/src/providers/anthropic.js.map +1 -1
- package/dist/src/providers/bedrock.d.ts +11 -1
- package/dist/src/providers/bedrock.d.ts.map +1 -1
- package/dist/src/providers/bedrock.js +15 -7
- package/dist/src/providers/bedrock.js.map +1 -1
- package/dist/src/providers/golangCompletion.d.ts.map +1 -1
- package/dist/src/providers/golangCompletion.js +5 -2
- package/dist/src/providers/golangCompletion.js.map +1 -1
- package/dist/src/providers/groq.d.ts +1 -0
- package/dist/src/providers/groq.d.ts.map +1 -1
- package/dist/src/providers/huggingface.d.ts +1 -0
- package/dist/src/providers/huggingface.d.ts.map +1 -1
- package/dist/src/providers/huggingface.js +8 -7
- package/dist/src/providers/huggingface.js.map +1 -1
- package/dist/src/providers/openai/chat.d.ts.map +1 -1
- package/dist/src/providers/openai/chat.js +7 -2
- package/dist/src/providers/openai/chat.js.map +1 -1
- package/dist/src/providers/openai/types.d.ts +2 -0
- package/dist/src/providers/openai/types.d.ts.map +1 -1
- package/dist/src/providers.d.ts.map +1 -1
- package/dist/src/providers.js +12 -0
- package/dist/src/providers.js.map +1 -1
- package/dist/src/redteam/commands/generate.d.ts.map +1 -1
- package/dist/src/redteam/commands/generate.js +3 -1
- package/dist/src/redteam/commands/generate.js.map +1 -1
- package/dist/src/redteam/commands/run.d.ts.map +1 -1
- package/dist/src/redteam/commands/run.js +1 -0
- package/dist/src/redteam/commands/run.js.map +1 -1
- package/dist/src/redteam/graders.d.ts.map +1 -1
- package/dist/src/redteam/graders.js +3 -0
- package/dist/src/redteam/graders.js.map +1 -1
- package/dist/src/redteam/index.d.ts +1 -1
- package/dist/src/redteam/index.d.ts.map +1 -1
- package/dist/src/redteam/index.js +6 -2
- package/dist/src/redteam/index.js.map +1 -1
- package/dist/src/redteam/plugins/harmful/common.d.ts.map +1 -1
- package/dist/src/redteam/plugins/harmful/common.js +1 -3
- package/dist/src/redteam/plugins/harmful/common.js.map +1 -1
- package/dist/src/redteam/shared.d.ts.map +1 -1
- package/dist/src/redteam/shared.js +3 -1
- package/dist/src/redteam/shared.js.map +1 -1
- package/dist/src/redteam/sharedFrontend.d.ts.map +1 -1
- package/dist/src/redteam/sharedFrontend.js +1 -0
- package/dist/src/redteam/sharedFrontend.js.map +1 -1
- package/dist/src/redteam/types.d.ts +6 -0
- package/dist/src/redteam/types.d.ts.map +1 -1
- package/dist/src/redteam/util.d.ts +6 -0
- package/dist/src/redteam/util.d.ts.map +1 -1
- package/dist/src/redteam/util.js +108 -76
- package/dist/src/redteam/util.js.map +1 -1
- package/dist/src/server/routes/eval.js +1 -1
- package/dist/src/server/server.js +2 -2
- package/dist/src/server/server.js.map +1 -1
- package/dist/src/{testCases.d.ts → testCase/synthesis.d.ts} +2 -6
- package/dist/src/testCase/synthesis.d.ts.map +1 -0
- package/dist/src/testCase/synthesis.js +185 -0
- package/dist/src/testCase/synthesis.js.map +1 -0
- package/dist/src/types/index.d.ts +1347 -941
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +7 -1
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/util/config/load.d.ts.map +1 -1
- package/dist/src/util/config/load.js +6 -6
- package/dist/src/util/config/load.js.map +1 -1
- package/dist/src/util/file.node.d.ts +17 -0
- package/dist/src/util/file.node.d.ts.map +1 -0
- package/dist/src/util/file.node.js +59 -0
- package/dist/src/util/file.node.js.map +1 -0
- package/dist/src/util/index.d.ts +4 -4
- package/dist/src/util/index.d.ts.map +1 -1
- package/dist/src/util/index.js +0 -1
- package/dist/src/util/index.js.map +1 -1
- package/dist/src/util/json.d.ts +1 -0
- package/dist/src/util/json.d.ts.map +1 -1
- package/dist/src/util/json.js +67 -5
- package/dist/src/util/json.js.map +1 -1
- package/dist/src/util/testCaseReader.d.ts +33 -0
- package/dist/src/util/testCaseReader.d.ts.map +1 -0
- package/dist/src/util/testCaseReader.js +355 -0
- package/dist/src/util/testCaseReader.js.map +1 -0
- package/dist/src/util/transform.d.ts.map +1 -1
- package/dist/src/util/transform.js +24 -4
- package/dist/src/util/transform.js.map +1 -1
- package/dist/src/validators/providers.d.ts +36 -36
- package/dist/src/validators/redteam.d.ts +35 -14
- package/dist/src/validators/redteam.d.ts.map +1 -1
- package/dist/src/validators/redteam.js +25 -17
- package/dist/src/validators/redteam.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +13 -13
- package/dist/src/app/assets/index-4rSGjSvP.css +0 -1
- package/dist/src/app/assets/index-BZ5J3ZKi.js +0 -882
- package/dist/src/testCases.d.ts.map +0 -1
- package/dist/src/testCases.js +0 -434
- package/dist/src/testCases.js.map +0 -1
package/dist/src/esm.js
CHANGED
|
@@ -39,8 +39,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.getDirectory = getDirectory;
|
|
40
40
|
exports.importModule = importModule;
|
|
41
41
|
const node_url_1 = require("node:url");
|
|
42
|
-
const path = __importStar(require("path"));
|
|
43
42
|
const logger_1 = __importDefault(require("./logger"));
|
|
43
|
+
const file_node_1 = require("./util/file.node");
|
|
44
44
|
// esm-specific crap that needs to get mocked out in tests
|
|
45
45
|
//import path from 'path';
|
|
46
46
|
//import { fileURLToPath } from 'url';
|
|
@@ -53,14 +53,14 @@ function getDirectory() {
|
|
|
53
53
|
return __dirname;
|
|
54
54
|
}
|
|
55
55
|
async function importModule(modulePath, functionName) {
|
|
56
|
-
logger_1.default.debug(`Attempting to import module: ${JSON.stringify({ resolvedPath:
|
|
56
|
+
logger_1.default.debug(`Attempting to import module: ${JSON.stringify({ resolvedPath: (0, file_node_1.safeResolve)(modulePath), moduleId: modulePath })}`);
|
|
57
57
|
try {
|
|
58
58
|
if (modulePath.endsWith('.ts') || modulePath.endsWith('.mjs')) {
|
|
59
59
|
logger_1.default.debug('TypeScript/ESM module detected, importing tsx/cjs');
|
|
60
60
|
// @ts-ignore: It actually works
|
|
61
61
|
await Promise.resolve().then(() => __importStar(require('tsx/cjs')));
|
|
62
62
|
}
|
|
63
|
-
const resolvedPath = (0, node_url_1.pathToFileURL)(
|
|
63
|
+
const resolvedPath = (0, node_url_1.pathToFileURL)((0, file_node_1.safeResolve)(modulePath));
|
|
64
64
|
logger_1.default.debug(`Attempting ESM import from: ${resolvedPath.toString()}`);
|
|
65
65
|
const importedModule = await Promise.resolve(`${resolvedPath.toString()}`).then(s => __importStar(require(s)));
|
|
66
66
|
const mod = importedModule?.default?.default || importedModule?.default || importedModule;
|
|
@@ -77,9 +77,9 @@ async function importModule(modulePath, functionName) {
|
|
|
77
77
|
logger_1.default.debug('Attempting CommonJS require fallback...');
|
|
78
78
|
try {
|
|
79
79
|
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
80
|
-
const importedModule = require(
|
|
80
|
+
const importedModule = require((0, file_node_1.safeResolve)(modulePath));
|
|
81
81
|
const mod = importedModule?.default?.default || importedModule?.default || importedModule;
|
|
82
|
-
logger_1.default.debug(`Successfully required module: ${JSON.stringify({ resolvedPath:
|
|
82
|
+
logger_1.default.debug(`Successfully required module: ${JSON.stringify({ resolvedPath: (0, file_node_1.safeResolve)(modulePath), moduleId: modulePath })}`);
|
|
83
83
|
if (functionName) {
|
|
84
84
|
logger_1.default.debug(`Returning named export: ${functionName}`);
|
|
85
85
|
return mod[functionName];
|
package/dist/src/esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"esm.js","sourceRoot":"","sources":["../../src/esm.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,oCAOC;AAED,
|
|
1
|
+
{"version":3,"file":"esm.js","sourceRoot":"","sources":["../../src/esm.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,oCAOC;AAED,oCA6CC;AA/DD,uCAAyC;AACzC,sDAA8B;AAC9B,gDAA+C;AAE/C,0DAA0D;AAE1D,0BAA0B;AAC1B,sCAAsC;AAEtC,SAAgB,YAAY;IAC1B;;;;KAIC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAEM,KAAK,UAAU,YAAY,CAAC,UAAkB,EAAE,YAAqB;IAC1E,gBAAM,CAAC,KAAK,CACV,gCAAgC,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,IAAA,uBAAW,EAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE,CAClH,CAAC;IAEF,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9D,gBAAM,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;YAClE,gCAAgC;YAChC,wDAAa,SAAS,GAAC,CAAC;QAC1B,CAAC;QAED,MAAM,YAAY,GAAG,IAAA,wBAAa,EAAC,IAAA,uBAAW,EAAC,UAAU,CAAC,CAAC,CAAC;QAC5D,gBAAM,CAAC,KAAK,CAAC,+BAA+B,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACvE,MAAM,cAAc,GAAG,yBAAa,YAAY,CAAC,QAAQ,EAAE,uCAAC,CAAC;QAC7D,MAAM,GAAG,GAAG,cAAc,EAAE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,OAAO,IAAI,cAAc,CAAC;QAC1F,gBAAM,CAAC,KAAK,CACV,iCAAiC,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE,CAC1F,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,gBAAM,CAAC,KAAK,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;YACxD,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,wDAAwD;QACxD,gBAAM,CAAC,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;QAC1C,gBAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACxD,IAAI,CAAC;YACH,iEAAiE;YACjE,MAAM,cAAc,GAAG,OAAO,CAAC,IAAA,uBAAW,EAAC,UAAU,CAAC,CAAC,CAAC;YACxD,MAAM,GAAG,GAAG,cAAc,EAAE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,OAAO,IAAI,cAAc,CAAC;YAC1F,gBAAM,CAAC,KAAK,CACV,iCAAiC,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,IAAA,uBAAW,EAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,EAAE,CACnH,CAAC;YACF,IAAI,YAAY,EAAE,CAAC;gBACjB,gBAAM,CAAC,KAAK,CAAC,2BAA2B,YAAY,EAAE,CAAC,CAAC;gBACxD,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC;YAC3B,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,gBAAM,CAAC,KAAK,CAAC,iCAAiC,UAAU,EAAE,CAAC,CAAC;YAC5D,MAAM,UAAU,CAAC;QACnB,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluator.d.ts","sourceRoot":"","sources":["../../src/evaluator.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AAMtC,OAAO,KAAK,EAAoC,UAAU,EAAQ,MAAM,SAAS,CAAC;AAClF,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,cAAc,EAEnB,KAAK,MAAM,EAGX,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,SAAS,CAAC;AAOjB,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,OAAO,CAM7F;AAED,wBAAgB,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC,CAapD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,OAAO,CAAC,EAC5B,QAAQ,EACR,MAAM,EAAE,aAAa;AACrB,IAAI,EACJ,KAAK,EACL,eAAe,EAAE,OAAO,EACxB,eAAe,EACf,OAAO,EACP,SAAS,EACT,aAAa,EAAE,EAAE;AACjB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,WAAW,GACZ,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CA4O5C;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,GAAG,CAAC,GAC5C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,CAqClC;
|
|
1
|
+
{"version":3,"file":"evaluator.d.ts","sourceRoot":"","sources":["../../src/evaluator.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AAMtC,OAAO,KAAK,EAAoC,UAAU,EAAQ,MAAM,SAAS,CAAC;AAClF,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,cAAc,EAEnB,KAAK,MAAM,EAGX,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,SAAS,CAAC;AAOjB,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,OAAO,CAM7F;AAED,wBAAgB,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC,CAapD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,OAAO,CAAC,EAC5B,QAAQ,EACR,MAAM,EAAE,aAAa;AACrB,IAAI,EACJ,KAAK,EACL,eAAe,EAAE,OAAO,EACxB,eAAe,EACf,OAAO,EACP,SAAS,EACT,aAAa,EAAE,EAAE;AACjB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,WAAW,GACZ,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CA4O5C;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,GAAG,CAAC,GAC5C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,CAqClC;AAmsBD,wBAAgB,QAAQ,CACtB,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,IAAI,EAChB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAGf"}
|
package/dist/src/evaluator.js
CHANGED
|
@@ -668,9 +668,6 @@ class Evaluator {
|
|
|
668
668
|
}
|
|
669
669
|
}
|
|
670
670
|
numComplete++;
|
|
671
|
-
if (options.progressCallback) {
|
|
672
|
-
options.progressCallback(this.evalRecord.results.length, runEvalOptions.length, index, evalStep);
|
|
673
|
-
}
|
|
674
671
|
try {
|
|
675
672
|
await this.evalRecord.addResult(row);
|
|
676
673
|
}
|
|
@@ -745,6 +742,9 @@ class Evaluator {
|
|
|
745
742
|
test: evalStep.test,
|
|
746
743
|
result: row,
|
|
747
744
|
});
|
|
745
|
+
if (options.progressCallback) {
|
|
746
|
+
options.progressCallback(this.evalRecord.resultsCount, runEvalOptions.length, index, evalStep, metrics);
|
|
747
|
+
}
|
|
748
748
|
}
|
|
749
749
|
};
|
|
750
750
|
// Set up main progress bars
|
|
@@ -752,9 +752,9 @@ class Evaluator {
|
|
|
752
752
|
let multiProgressBars = [];
|
|
753
753
|
const originalProgressCallback = this.options.progressCallback;
|
|
754
754
|
const isWebUI = Boolean(cliState_1.default.webUI);
|
|
755
|
-
this.options.progressCallback = (completed, total, index, evalStep) => {
|
|
755
|
+
this.options.progressCallback = (completed, total, index, evalStep, metrics) => {
|
|
756
756
|
if (originalProgressCallback) {
|
|
757
|
-
originalProgressCallback(completed, total, index, evalStep);
|
|
757
|
+
originalProgressCallback(completed, total, index, evalStep, metrics);
|
|
758
758
|
}
|
|
759
759
|
if (isWebUI) {
|
|
760
760
|
const provider = evalStep.provider.label || evalStep.provider.id();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../src/evaluator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DA,0CAMC;AAED,sCAaC;AAoBD,0BA0PC;AAED,0DAuCC;AAisBD,4BAOC;AAhlCD,kDAA0B;AAC1B,kDAA0B;AAE1B,mCAAoC;AACpC,+BAAgC;AAChC,2CAA6B;AAC7B,wDAAgC;AAEhC,6CAAkE;AAClE,mCAAmD;AACnD,0DAAkC;AAClC,8CAAqD;AACrD,qCAAuD;AACvD,yDAAoE;AACpE,sDAA8B;AAE9B,4CAAuD;AACvD,qDAAoE;AAEpE,+CAAgD;AAChD,4DAAoC;AAEpC,mCAYiB;AACjB,iEAAkE;AAClE,iEAAyC;AACzC,sCAAgD;AAChD,sCAAoC;AACpC,gDAAwF;AAE3E,QAAA,uBAAuB,GAAG,CAAC,CAAC;AAEzC;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,eAAe,CAAC,MAAc,EAAE,cAAoC;IAClF,OAAO,CACL,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;QAC9B,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;QACrC,cAAc,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC,CACrF,CAAC;AACJ,CAAC;AAED,SAAgB,aAAa;IAC3B,OAAO;QACL,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,UAAU,EAAE,CAAC;QACb,MAAM,EAAE,CAAC;QACT,WAAW,EAAE,CAAC;QACd,iBAAiB,EAAE;YACjB,SAAS,EAAE,CAAC;YACZ,kBAAkB,EAAE,CAAC;YACrB,kBAAkB,EAAE,CAAC;SACtB;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,OAAO,CAAC,EAC5B,QAAQ,EACR,MAAM,EAAE,aAAa;AACrB,IAAI,EACJ,KAAK,EACL,eAAe,EAAE,OAAO,EACxB,eAAe,EACf,OAAO,EACP,SAAS,EACT,aAAa,EAAE,EAAE;AACjB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,WAAW,GACI;IACf,+DAA+D;IAC/D,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;IAEjC,QAAQ,CAAC,KAAK,KAAd,QAAQ,CAAC,KAAK,GAAK,KAAK,IAAI,IAAA,kBAAS,EAAC,oBAAoB,EAAE,CAAC,CAAC,EAAC;IAC/D,IAAA,mBAAS,EACP,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAClC,oCAAoC,QAAQ,CAAC,KAAK,EAAE,CACrD,CAAC;IAEF,4CAA4C;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IAC7B,MAAM,eAAe,GAAG,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,EAAE,EAAE,IAAI,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACpJ,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC9D,IACE,CAAC,IAAA,mBAAU,EAAC,oCAAoC,CAAC;QACjD,CAAC,IAAI,CAAC,OAAO,EAAE,sBAAsB;QACrC,gBAAgB,EAChB,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,aAAa,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IAC9D,CAAC;IAED,gDAAgD;IAChD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/B,oBAAoB;IACpB,MAAM,cAAc,GAAG,MAAM,IAAA,+BAAY,EAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3E,IAAI,YAAY,GAAG,SAAS,CAAC;IAC7B,IAAI,CAAC;QACH,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IAEV,MAAM,KAAK,GAAG;QACZ,QAAQ,EAAE;YACR,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE;YACjB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB;QACD,MAAM,EAAE;YACN,GAAG,EAAE,cAAc;YACnB,KAAK,EAAE,WAAW;YAClB,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB;QACD,IAAI;KACL,CAAC;IACF,eAAe;IACf,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,QAAQ,GAAqB;YAC/B,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,EAAE;YACd,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,KAAK;SACd,CAAC;QAEF,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;QACxC,CAAC;aAAM,IACL,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ;YACjC,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,UAAU;YACtC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,+BAA+B,EACtD,CAAC;YACD,OAAO,MAAO,IAAI,CAAC,QAAuC,CAAC,cAAc,CACvE,QAAQ,EACR,IAAI,EACJ,QAAQ,IAAI,EAAE,EACd,WAAW,CACZ,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,MAAM,CAAE,IAAI,CAAC,QAAwB,IAAI,QAAQ,CAAC,CAAC,OAAO,CACnE,cAAc,EACd;gBACE,kBAAkB;gBAClB,IAAI;gBAEJ,uGAAuG;gBACvG,MAAM;gBACN,OAAO;gBACP,gBAAgB,EAAE,QAAQ;gBAC1B,IAAI;gBAEJ,mGAAmG;gBACnG,MAAM,EAAE,gBAAwB;gBAChC,cAAc,EAAd,sBAAc;gBACd,QAAQ,EAAR,gBAAQ;aACT,EACD;gBACE,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC;aACnE,CACF,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;QAEhC,IAAI,qBAAqB,GAAG,SAAS,CAAC;QACtC,IAAI,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACtD,0DAA0D;YAC1D,qBAAqB,GAAG,OAAO,EAAE,OAAO,IAAI,OAAO,CAAC;QACtD,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,aAAa,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;YACtE,aAAa,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC;gBAClC,MAAM,EAAE,YAAY,IAAI,cAAc;gBACtC,KAAK,EAAE,qBAAqB,IAAI,YAAY,IAAI,cAAc;gBAC9D,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,EAAE;aAC9B,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YAC3C,gBAAM,CAAC,KAAK,CAAC,gBAAgB,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;YACjD,MAAM,IAAA,YAAK,EAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,GAAG,GAAmB;YAC1B,GAAG,KAAK;YACR,QAAQ;YACR,OAAO,EAAE,KAAK;YACd,aAAa,EAAE,2BAAmB,CAAC,IAAI;YACvC,KAAK,EAAE,CAAC;YACR,WAAW,EAAE,EAAE;YACf,SAAS;YACT,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,SAAS;YACT,OAAO;YACP,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE;YACzB,UAAU,EAAE,aAAa,EAAE;SAC5B,CAAC;QAEF,IAAA,mBAAS,EAAC,GAAG,CAAC,UAAU,EAAE,uDAAuD,CAAC,CAAC;QAEnF,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACnB,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC7B,CAAC;aAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACrE,wFAAwF;YACxF,IAAI,SAAS,EAAE,CAAC;gBACd,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;gBACpB,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;gBACd,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC;YAC1B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,6DAA6D;YAC7D,MAAM,iBAAiB,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAa;gBAC3B,QAAQ,CAAC,SAAS,EAAE,iCAAiC;gBACrD,oEAAoE;gBACpE,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;aACpE;iBACE,IAAI,EAAE;iBACN,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;YACrD,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;gBAC3B,iBAAiB,CAAC,MAAM,GAAG,MAAM,IAAA,qBAAS,EAAC,CAAC,EAAE,iBAAiB,CAAC,MAAM,EAAE;oBACtE,IAAI;oBACJ,MAAM;iBACP,CAAC,CAAC;YACL,CAAC;YAED,IAAA,mBAAS,EAAC,iBAAiB,CAAC,MAAM,IAAI,IAAI,EAAE,oCAAoC,CAAC,CAAC;YAClF,MAAM,WAAW,GAAG,MAAM,IAAA,0BAAa,EAAC;gBACtC,MAAM,EAAE,cAAc;gBACtB,QAAQ;gBACR,gBAAgB,EAAE,iBAAiB;gBACnC,IAAI;gBACJ,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;aACnD,CAAC,CAAC;YAEH,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBACtB,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC;gBAC/B,GAAG,CAAC,aAAa,GAAG,2BAAmB,CAAC,MAAM,CAAC;YACjD,CAAC;YACD,GAAG,CAAC,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC;YAC/B,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;YAC9B,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC,WAAW,IAAI,EAAE,CAAC;YAChD,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;gBAC3B,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,WAAW,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC;gBAC1D,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;gBAC5D,GAAG,CAAC,UAAU,CAAC,UAAU,IAAI,WAAW,CAAC,UAAU,CAAC,UAAU,IAAI,CAAC,CAAC;gBACpE,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;gBAC5D,GAAG,CAAC,UAAU,CAAC,WAAW,IAAI,WAAW,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC;gBACtE,IAAI,WAAW,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;oBAC7C,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAU;wBACzC,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,IAAI,CAAC,CAAC;oBAC1D,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAmB;wBAClD,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,IAAI,CAAC,CAAC;oBACnE,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAmB;wBAClD,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,IAAI,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC;YACD,GAAG,CAAC,QAAQ,GAAG,iBAAiB,CAAC;YACjC,GAAG,CAAC,aAAa,GAAG,WAAW,CAAC;QAClC,CAAC;QAED,2BAA2B;QAC3B,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACxB,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC;YACvD,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;YACzD,GAAG,CAAC,UAAU,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,IAAI,CAAC,CAAC;YACjE,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;YACzD,GAAG,CAAC,UAAU,CAAC,WAAW,IAAI,QAAQ,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC;YACnE,IAAI,QAAQ,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;gBAC1C,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAU;oBACzC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,IAAI,CAAC,CAAC;gBACvD,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAmB;oBAClD,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,IAAI,CAAC,CAAC;gBAChE,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAmB;oBAClD,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,IAAI,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,aAAa,IAAI,GAAG,CAAC,QAAQ,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC;YACrE,8CAA8C;YAC9C,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9D,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL;gBACE,GAAG,KAAK;gBACR,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,GAAI,GAAa,CAAC,KAAK;gBAClD,OAAO,EAAE,KAAK;gBACd,aAAa,EAAE,2BAAmB,CAAC,KAAK;gBACxC,KAAK,EAAE,CAAC;gBACR,WAAW,EAAE,EAAE;gBACf,SAAS;gBACT,SAAS;gBACT,OAAO;gBACP,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE;aAC1B;SACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,uBAAuB,CACrC,IAA6C;IAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,YAAY,GAAqC,CAAC,EAAE,CAAC,CAAC;IAE5D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,MAAM,GAAU,EAAE,CAAC;QAEvB,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACnD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;YACrE,MAAM,SAAS,GAAG,IAAA,eAAQ,EAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;YAC7D,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;YAC3D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,YAAY,YAAY,EAAE,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,gDAAgD;QAChD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;YACjE,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,CAAC;QAED,MAAM,eAAe,GAA0B,EAAE,CAAC;QAElD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,WAAW,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QACxB,YAAY,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,SAAS;IAQb,YAAY,SAAoB,EAAE,UAAgB,EAAE,OAAwB;QAC1E,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG;YACX,SAAS,EAAE,CAAC;YACZ,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,CAAC;YACT,UAAU,EAAE,aAAa,EAAE;SAC5B,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QAEpB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;YAC5D,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAClE,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC;gBAChD,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;gBAChC,CAAC,CAAC,EAAE,CAAC;QAET,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,6BAAe,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAEpC,MAAM,UAAU,GAAG,GAAG,EAAE;YACtB,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;QACH,CAAC,CAAC;QAEF,iCAAiC;QACjC,UAAU,EAAE,CAAC;QAEb,MAAM,OAAO,GAAsB,EAAE,CAAC;QACtC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QACzC,MAAM,2BAA2B,GAAG,IAAI,GAAG,EAAU,CAAC;QAEtD,MAAM,IAAA,mCAAgB,EAAC,SAAS,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAEhF,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;YAChC,iDAAiD;YACjD,gBAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;YAC/C,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,6BAAe,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAC1F,IAAI,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAC;YAC1D,CAAC;YAED,gBAAM,CAAC,IAAI,CAAC,eAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAC9C,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;gBAChC,gBAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;gBACxE,gBAAM,CAAC,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;gBACzB,gBAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;gBAExE,wCAAwC;gBACxC,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBAC5B,MAAM,EAAE,GAAG,kBAAQ,CAAC,eAAe,CAAC;wBAClC,KAAK,EAAE,OAAO,CAAC,KAAK;wBACpB,MAAM,EAAE,OAAO,CAAC,MAAM;qBACvB,CAAC,CAAC;oBACH,EAAE,CAAC,QAAQ,CACT,GAAG,eAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,UAAU,EAC3D,KAAK,EAAE,MAAM,EAAE,EAAE;wBACf,EAAE,CAAC,KAAK,EAAE,CAAC;wBACX,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;4BACzC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;4BACvD,QAAQ,EAAE,CAAC;wBACb,CAAC;6BAAM,CAAC;4BACN,gBAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;wBACvC,CAAC;wBACD,OAAO,CAAC,IAAI,CAAC,CAAC;oBAChB,CAAC,CACF,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACjB,gBAAM,CAAC,IAAI,CAAC,eAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;gBACzD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO,IAAI,CAAC,UAAU,CAAC;YACzB,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,oGAAoG;QACpG,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YAC3C,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACvC,kFAAkF;gBAClF,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACpD,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,iBAAiB,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;oBACzE,SAAS;gBACX,CAAC;gBACD,MAAM,eAAe,GAAG;oBACtB,GAAG,MAAM;oBACT,EAAE,EAAE,IAAA,6BAAoB,EAAC,MAAM,CAAC;oBAChC,QAAQ,EAAE,WAAW;oBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,OAAO,EAAE;wBACP,KAAK,EAAE,CAAC;wBACR,aAAa,EAAE,CAAC;wBAChB,aAAa,EAAE,CAAC;wBAChB,cAAc,EAAE,CAAC;wBACjB,eAAe,EAAE,CAAC;wBAClB,eAAe,EAAE,CAAC;wBAClB,cAAc,EAAE,CAAC;wBACjB,UAAU,EAAE;4BACV,KAAK,EAAE,CAAC;4BACR,MAAM,EAAE,CAAC;4BACT,UAAU,EAAE,CAAC;4BACb,MAAM,EAAE,CAAC;4BACT,WAAW,EAAE,CAAC;yBACf;wBACD,WAAW,EAAE,EAAE;wBACf,gBAAgB,EAAE,EAAE;wBACpB,IAAI,EAAE,CAAC;qBACR;iBACF,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,uCAAuC;QACvC,IAAI,KAAK,GACP,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAC3C,CAAC,CAAC,SAAS,CAAC,KAAK;YACjB,CAAC,CAAC,SAAS,CAAC,SAAS;gBACnB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE;oBACE,8DAA8D;qBAC/D;iBACF,CAAC;QAEV,mCAAmC;QACnC,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,mBAAS,CAAC,iBAAiB,CAAC,cAAc,EAAE;gBAC1C,OAAO,EAAE,WAAW;aACrB,CAAC,CAAC;YACH,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;gBAC3C,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACnC,yCAAyC;oBACzC,MAAM,aAAa,GAAG,CACpB,QAAQ,CAAC,KAAK,IAAI;wBAChB;wBACE,8DAA8D;yBAC/D;qBACF,CACF,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBACb,OAAO;4BACL,GAAG,SAAS,CAAC,WAAW;4BACxB,GAAG,IAAI;4BACP,GAAG,IAAI;4BACP,IAAI,EAAE;gCACJ,GAAG,SAAS,CAAC,WAAW,EAAE,IAAI;gCAC9B,GAAG,IAAI,CAAC,IAAI;gCACZ,GAAG,IAAI,CAAC,IAAI;6BACb;4BACD,OAAO,EAAE;gCACP,GAAG,SAAS,CAAC,WAAW,EAAE,OAAO;gCACjC,GAAG,IAAI,CAAC,OAAO;6BAChB;4BACD,MAAM,EAAE;gCACN,iFAAiF;gCACjF,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;gCACtB,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;6BACvB;4BACD,QAAQ,EAAE;gCACR,GAAG,SAAS,CAAC,WAAW,EAAE,QAAQ;gCAClC,GAAG,IAAI,CAAC,QAAQ;gCAChB,GAAG,IAAI,CAAC,QAAQ;6BACjB;yBACF,CAAC;oBACJ,CAAC,CAAC,CAAC;oBACH,8BAA8B;oBAC9B,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAA,uCAA2B,EAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAE9C,eAAe;QACf,MAAM,QAAQ,GAAgB,IAAI,GAAG,EAAE,CAAC;QACxC,MAAM,0BAA0B,GAAW,EAAE,CAAC;QAC9C,MAAM,qBAAqB,GAAG,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC;QAC7E,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC7B,QAAQ,CAAC,IAAI,GAAG,EAAE,GAAG,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,CAAC;YACtE,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAClB,MAAM,yBAAyB,GAAS,EAAE,CAAC;gBAC3C,MAAM,+BAA+B,GAAG,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;gBACxE,MAAM,cAAc,GAAG,+BAA+B,IAAI,qBAAqB,CAAC;gBAChF,IAAI,cAAc,EAAE,CAAC;oBACnB,MAAM,gBAAgB,GAAqB;wBACzC,MAAM,EAAE,EAAE;wBACV,IAAI,EAAE,IAAA,mBAAU,GAAE;qBACnB,CAAC;oBACF,MAAM,eAAe,GAAS,MAAM,IAAA,qBAAS,EAC3C,cAAc,EACd,QAAQ,CAAC,IAAI,EACb,gBAAgB,EAChB,IAAI,EACJ,8BAAkB,CAAC,IAAI,CACxB,CAAC;oBACF,IAAA,mBAAS,EACP,OAAO,eAAe,KAAK,QAAQ,EACnC,kDAAkD,CACnD,CAAC;oBACF,QAAQ,CAAC,IAAI,GAAG,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,GAAG,eAAe,EAAE,CAAC;gBAC3D,CAAC;gBACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBACjD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACtB,yBAAyB,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC9D,CAAC;gBACD,0BAA0B,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,oBAAoB;QACpB,MAAM,cAAc,GAAqB,EAAE,CAAC;QAC5C,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,WAAW,GAAG,OAAO,CAAC,cAAc,IAAI,+BAAuB,CAAC;QACpE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;YAClD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAA,mBAAS,EACP,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,IAAI,EAAE,CAAC,EAClD,oDAAoD,KAAK,GAAG,CAAC,EAAE,CAChE,CAAC;YACF,IAAA,mBAAS,EACP,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,EACpC,iDAAiD,KAAK,GAAG,CAAC,EAAE,CAC7D,CAAC;YACF,4BAA4B;YAC5B,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;YACzF,QAAQ,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,IAAI,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC;YAC5E,QAAQ,CAAC,OAAO,GAAG,EAAE,GAAG,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC9E,QAAQ,CAAC,QAAQ,GAAG,EAAE,GAAG,SAAS,CAAC,WAAW,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACjF,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI,SAAS,CAAC,WAAW,EAAE,QAAQ,CAAC;YAEzE,MAAM,eAAe,GACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;YAC3E,MAAM,cAAc,GAClB,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,IAAI,EAAE,CAAC;YAE3E,0BAA0B;YAC1B,MAAM,eAAe,GACnB,IAAA,mBAAU,EAAC,iCAAiC,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,mBAAmB;gBACnF,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACjB,CAAC,CAAC,uBAAuB,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAEnD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;YAC3C,KAAK,IAAI,WAAW,GAAG,CAAC,EAAE,WAAW,GAAG,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC;gBACjE,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;oBACnC,IAAI,SAAS,GAAG,CAAC,CAAC;oBAClB,oGAAoG;oBACpG,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;wBAC3C,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;4BACvC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;4BACpD,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,iBAAiB,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;gCACzE,SAAS;4BACX,CAAC;4BACD,cAAc,CAAC,IAAI,CAAC;gCAClB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;gCACzB,QAAQ;gCACR,MAAM,EAAE;oCACN,GAAG,MAAM;oCACT,GAAG,EAAE,eAAe,GAAG,MAAM,CAAC,GAAG,GAAG,cAAc;iCACnD;gCACD,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE;gCACtD,eAAe,EAAE,SAAS,CAAC,eAAe;gCAC1C,OAAO;gCACP,SAAS;gCACT,WAAW;gCACX,eAAe,EAAE,OAAO;gCACxB,aAAa,EAAE,IAAI,CAAC,aAAa;gCACjC,SAAS,EAAE,IAAI,CAAC,SAAS;gCACzB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,IAAI;gCACzC,QAAQ,EAAE,cAAc;gCACxB,WAAW;6BACZ,CAAC,CAAC;4BACH,SAAS,EAAE,CAAC;wBACd,CAAC;oBACH,CAAC;oBACD,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC;QACH,CAAC;QACD,2BAA2B;QAE3B,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC;YAC9E,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YACtE,IAAI,gBAAgB,EAAE,CAAC;gBACrB,gBAAM,CAAC,IAAI,CACT,wCAAwC,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,oBAAoB,CACxF,CAAC;gBACF,WAAW,GAAG,CAAC,CAAC;YAClB,CAAC;iBAAM,IAAI,iBAAiB,EAAE,CAAC;gBAC7B,gBAAM,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;gBACvE,WAAW,GAAG,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,MAAM,eAAe,GAAG,KAAK,EAAE,QAAwB,EAAE,KAAsB,EAAE,EAAE;YACjF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACnD,CAAC;YAED,MAAM,IAAA,mCAAgB,EAAC,SAAS,CAAC,UAAU,EAAE,YAAY,EAAE;gBACzD,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;YACrC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,kBAAkB;gBAClB,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBAChB,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;gBACzB,CAAC;qBAAM,IAAI,GAAG,CAAC,aAAa,KAAK,2BAAmB,CAAC,KAAK,EAAE,CAAC;oBAC3D,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACxB,CAAC;gBAED,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;oBACnB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC;oBACzD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;oBAC3D,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,UAAU,IAAI,CAAC,CAAC;oBACnE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;oBAC3D,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,IAAI,GAAG,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC;oBACrE,IAAI,GAAG,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;wBACrC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAU;4BAChD,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,SAAS,IAAI,CAAC,CAAC;wBAClD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAmB;4BACzD,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,IAAI,CAAC,CAAC;wBAC3D,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAmB;4BACzD,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,kBAAkB,IAAI,CAAC,CAAC;oBAC7D,CAAC;gBACH,CAAC;gBAED,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC;oBAChE,2BAA2B,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC/C,CAAC;gBACD,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;oBAChD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChB,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAClC,CAAC;gBACH,CAAC;gBAED,WAAW,EAAE,CAAC;gBACd,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;oBAC7B,OAAO,CAAC,gBAAgB,CACtB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAC9B,cAAc,CAAC,MAAM,EACrB,KAAK,EACL,QAAQ,CACT,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACvC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,gBAAM,CAAC,KAAK,CAAC,wBAAwB,KAAK,IAAI,IAAA,wBAAiB,EAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1E,CAAC;gBAED,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;oBACtC,MAAM,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC1B,CAAC;gBAED,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;gBAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;gBAC3C,IAAA,mBAAS,EAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;gBACxD,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC;gBAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC3D,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;oBACnE,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC3E,CAAC;gBAED,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;oBAC7B,MAAM,IAAI,GAAG,wDAAa,QAAQ,GAAC,CAAC,CAAC,kBAAkB;oBACvD,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;wBAC9C,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;4BACnD,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBACvC,CAAC;wBACD,IAAI,CAAC;4BACH,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;gCACvC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;4BACjF,CAAC;iCAAM,CAAC;gCACN,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;gCACxE,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;4BACpD,CAAC;wBACH,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,gBAAM,CAAC,KAAK,CACV,sCAAsC,MAAM,CAAC,IAAI,MAAO,KAAe,CAAC,OAAO,EAAE,CAClF,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,aAAa,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7C,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;oBACjB,IAAI,GAAG,CAAC,aAAa,KAAK,2BAAmB,CAAC,KAAK,EAAE,CAAC;wBACpD,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC;oBAC9B,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;oBAC7B,CAAC;gBACH,CAAC;gBACD,OAAO,CAAC,eAAe;oBACrB,GAAG,CAAC,aAAa,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;gBACzE,OAAO,CAAC,eAAe;oBACrB,GAAG,CAAC,aAAa,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC;gBAC1E,OAAO,CAAC,cAAc,IAAI,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC;gBAC7C,OAAO,CAAC,UAAU,CAAC,MAAM;oBACvB,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;gBAC7E,OAAO,CAAC,UAAU,CAAC,UAAU;oBAC3B,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,IAAI,CAAC,CAAC,CAAC;gBACrF,OAAO,CAAC,UAAU,CAAC,MAAM;oBACvB,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;gBAC7E,OAAO,CAAC,UAAU,CAAC,KAAK;oBACtB,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;gBAC3E,OAAO,CAAC,UAAU,CAAC,WAAW;oBAC5B,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,IAAI,CAAC,CAAC,CAAC;gBACvF,OAAO,CAAC,UAAU,CAAC,iBAAiB,GAAG;oBACrC,SAAS,EACP,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,SAAS,IAAI,CAAC,CAAC;wBACtD,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,SAAS,IAAI,CAAC,CAAC;oBAC/D,kBAAkB,EAChB,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,kBAAkB,IAAI,CAAC,CAAC;wBAC/D,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,kBAAkB,IAAI,CAAC,CAAC;oBACxE,kBAAkB,EAChB,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,kBAAkB,IAAI,CAAC,CAAC;wBAC/D,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,kBAAkB,IAAI,CAAC,CAAC;iBACzE,CAAC;gBACF,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;gBAE9B,MAAM,IAAA,mCAAgB,EAAC,SAAS,CAAC,UAAU,EAAE,WAAW,EAAE;oBACxD,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,MAAM,EAAE,GAAG;iBACZ,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QAEF,4BAA4B;QAC5B,IAAI,QAA8B,CAAC;QACnC,IAAI,iBAAiB,GAAgB,EAAE,CAAC;QACxC,MAAM,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC/D,MAAM,OAAO,GAAG,OAAO,CAAC,kBAAQ,CAAC,KAAK,CAAC,CAAC;QAExC,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACpE,IAAI,wBAAwB,EAAE,CAAC;gBAC7B,wBAAwB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC9D,CAAC;YAED,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACnE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;qBAClD,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;qBAC5B,IAAI,CAAC,GAAG,CAAC;qBACT,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;qBACZ,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACvB,gBAAM,CAAC,IAAI,CAAC,IAAI,WAAW,IAAI,KAAK,aAAa,QAAQ,eAAe,IAAI,EAAE,CAAC,CAAC;YAClF,CAAC;iBAAM,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBAChC,MAAM,WAAW,GAAG,KAAK,GAAG,WAAW,CAAC;gBACxC,MAAM,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBACnD,WAAW,CAAC,SAAS,CAAC;oBACpB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE;oBAC3D,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;oBAC5D,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;yBAC3C,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;yBAC5B,IAAI,CAAC,GAAG,CAAC;yBACT,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;yBACZ,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;iBACvB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,gBAAM,CAAC,KAAK,CAAC,SAAS,KAAK,GAAG,CAAC,cAAc,WAAW,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,eAAe,GAAG,KAAK,EAAE,WAA6B,EAAE,EAAE;YAC9D,kDAAkD;YAClD,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO;YACT,CAAC;YAED,MAAM,WAAW,GAAG,wDAAa,cAAc,GAAC,CAAC;YACjD,QAAQ,GAAG,IAAI,WAAW,CAAC,QAAQ,CACjC;gBACE,MAAM,EACJ,sFAAsF;gBACxF,UAAU,EAAE,IAAI;aACjB,EACD,WAAW,CAAC,OAAO,CAAC,cAAc,CACnC,CAAC;YACF,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;YACpE,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC;YACxD,iBAAiB,GAAG,EAAE,CAAC;YACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;gBAC5E,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;oBACnB,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,EAAE;wBACjD,QAAQ,EAAE,EAAE;wBACZ,MAAM,EAAE,EAAE;wBACV,IAAI,EAAE,EAAE;qBACT,CAAC,CAAC;oBACH,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QAEF,gBAAgB;QAChB,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YACjC,MAAM,eAAe,CAAC,cAAc,CAAC,CAAC;QACxC,CAAC;QAED,8CAA8C;QAC9C,MAAM,oBAAoB,GAAqB,EAAE,CAAC;QAClD,MAAM,wBAAwB,GAAqB,EAAE,CAAC;QAEtD,KAAK,MAAM,UAAU,IAAI,cAAc,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;gBACzC,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAED,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,+BAA+B;YAC/B,gBAAM,CAAC,IAAI,CAAC,WAAW,oBAAoB,CAAC,MAAM,wBAAwB,CAAC,CAAC;YAC5E,KAAK,MAAM,QAAQ,IAAI,oBAAoB,EAAE,CAAC;gBAC5C,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACnE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;yBAClD,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;yBAC5B,IAAI,CAAC,GAAG,CAAC;yBACT,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;yBACZ,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;oBACvB,gBAAM,CAAC,IAAI,CACT,IAAI,WAAW,IAAI,oBAAoB,CAAC,MAAM,aAAa,QAAQ,eAAe,IAAI,EAAE,CACzF,CAAC;gBACJ,CAAC;gBACD,MAAM,eAAe,CAAC,QAAQ,EAAE,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAED,kCAAkC;QAClC,gBAAM,CAAC,IAAI,CACT,WAAW,wBAAwB,CAAC,MAAM,sCAAsC,WAAW,aAAa,CACzG,CAAC;QACF,MAAM,eAAK,CAAC,cAAc,CAAC,wBAAwB,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC1F,UAAU,EAAE,CAAC;YACb,MAAM,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,qDAAqD;QACrD,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,IAAI,CAAC;QAE1D,IAAI,WAAW,CAAC;QAChB,IAAI,gBAAgB,GAAG,CAAC,IAAI,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;YACjD,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,EAAE;gBACjD,QAAQ,EAAE,kCAAkC;gBAC5C,MAAM,EAAE,EAAE;gBACV,IAAI,EAAE,EAAE;aACT,CAAC,CAAC;QACL,CAAC;QACD,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,KAAK,MAAM,OAAO,IAAI,2BAA2B,EAAE,CAAC;YAClD,YAAY,EAAE,CAAC;YAEf,IAAI,OAAO,EAAE,CAAC;gBACZ,gBAAM,CAAC,IAAI,CAAC,mCAAmC,YAAY,OAAO,gBAAgB,KAAK,CAAC,CAAC;YAC3F,CAAC;YAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS;gBAChD,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,OAAO,CAAC;gBACtD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;YACjE,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,gBAAM,CAAC,IAAI,CAAC,+CAA+C,OAAO,EAAE,CAAC,CAAC;gBACtE,SAAS;YACX,CAAC;YAED,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAChE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CACnB,CAAC;YACf,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;gBACtE,MAAM,cAAc,GAAG,MAAM,IAAA,gCAAmB,EAC9C,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,EAC5B,gBAAgB,EAChB,OAAO,CACR,CAAC;gBACF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;oBAC7D,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBACvC,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;oBAC5C,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;wBACzB,MAAM,CAAC,aAAa,CAAC,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,UAAU,IAAI;4BACnE,KAAK,EAAE,CAAC;4BACR,MAAM,EAAE,CAAC;4BACT,UAAU,EAAE,CAAC;yBACd,CAAC;wBACF,MAAM,CAAC,aAAa,CAAC,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,UAAU,IAAI;4BACnE,KAAK,EAAE,CAAC;4BACR,MAAM,EAAE,CAAC;4BACT,UAAU,EAAE,CAAC;yBACd,CAAC;wBACF,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK;4BACnC,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;wBACxF,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM;4BACpC,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;gCAC7C,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;wBAC1C,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU;4BACxC,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,IAAI,CAAC,CAAC;gCACjD,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,IAAI,CAAC,CAAC,CAAC;wBAC9C,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI;4BACxC,MAAM,CAAC,aAAa,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC;wBAClD,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;4BACxB,6CAA6C;4BAC7C,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;4BACnD,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;wBAClE,CAAC;wBACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;4BAC3C,MAAM,CAAC,aAAa,CAAC,gBAAgB,GAAG,EAAE,CAAC;wBAC7C,CAAC;wBACD,MAAM,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC5D,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,aAAa,GAAG,aAAa,CAAC;oBACvC,CAAC;oBACD,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;wBAC9B,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;oBACtB,CAAC;gBACH,CAAC;gBACD,IAAI,WAAW,EAAE,CAAC;oBAChB,WAAW,CAAC,SAAS,CAAC;wBACpB,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;qBACvE,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,CAAC,OAAO,EAAE,CAAC;oBACpB,gBAAM,CAAC,KAAK,CAAC,4BAA4B,YAAY,OAAO,gBAAgB,WAAW,CAAC,CAAC;gBAC3F,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAE1C,YAAY;QACZ,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,EAAE,CAAC;QAClB,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,WAAW,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC;QAED,MAAM,IAAA,mCAAgB,EAAC,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE;YACvD,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO;YAChC,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,mBAAS,CAAC,MAAM,CAAC,UAAU,EAAE;YAC3B,UAAU,EAAE,OAAO,CAAC,MAAM;YAC1B,QAAQ,EAAE,OAAO,CAAC,MAAM,CACtB,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CACT,GAAG;gBACH,CAAC,CAAC,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC;gBAC/B,CAAC,CAAC,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC;gBAC/B,CAAC,CAAC,CAAC,OAAO,EAAE,cAAc,IAAI,CAAC,CAAC,EAClC,CAAC,CACF;YACD,OAAO,EAAE,QAAQ,CAAC,IAAI;YACtB,YAAY,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM;YACxC,SAAS,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC;YAC9B,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAC1B,IAAI,GAAG,CACL,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC5B,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrD,CAAC,CAAC,CACH,CACF,CAAC,IAAI,EAAE;YACR,cAAc,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE;YACjD,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;YAC7C,EAAE,EAAE,IAAA,aAAI,GAAE;YACV,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,aAAa,IAAI,CAAC,CAAC,OAAO,CAAC,aAAa,GAAG,CAAC,CAC/D;YACD,qFAAqF;YACrF,yCAAyC;SAC1C,CAAC,CAAC;QAEH,4DAA4D;QAC5D,IAAA,yBAAgB,GAAE,CAAC;QAEnB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;CACF;AAED,SAAgB,QAAQ,CACtB,SAAoB,EACpB,UAAgB,EAChB,OAAwB;IAExB,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACzD,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;AACvB,CAAC"}
|
|
1
|
+
{"version":3,"file":"evaluator.js","sourceRoot":"","sources":["../../src/evaluator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../../src/globalConfig/accounts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../../src/globalConfig/accounts.ts"],"names":[],"mappings":"AASA,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAG5C;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,QAGzC;AAED,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAEzC;AAED,wBAAsB,wBAAwB,kBAgB7C;AAED,wBAAsB,sBAAsB,kBAyB3C"}
|
|
@@ -9,6 +9,7 @@ exports.getAuthor = getAuthor;
|
|
|
9
9
|
exports.promptForEmailUnverified = promptForEmailUnverified;
|
|
10
10
|
exports.checkEmailStatusOrExit = checkEmailStatusOrExit;
|
|
11
11
|
const input_1 = __importDefault(require("@inquirer/input"));
|
|
12
|
+
const zod_1 = require("zod");
|
|
12
13
|
const envars_1 = require("../envars");
|
|
13
14
|
const fetch_1 = require("../fetch");
|
|
14
15
|
const logger_1 = __importDefault(require("../logger"));
|
|
@@ -28,13 +29,12 @@ function getAuthor() {
|
|
|
28
29
|
async function promptForEmailUnverified() {
|
|
29
30
|
let email = (0, envars_1.isCI)() ? 'ci-placeholder@promptfoo.dev' : getUserEmail();
|
|
30
31
|
if (!email) {
|
|
32
|
+
const emailSchema = zod_1.z.string().email('Please enter a valid email address');
|
|
31
33
|
email = await (0, input_1.default)({
|
|
32
34
|
message: 'Redteam evals require email verification. Please enter your work email:',
|
|
33
35
|
validate: (input) => {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
return true;
|
|
36
|
+
const result = emailSchema.safeParse(input);
|
|
37
|
+
return result.success || result.error.errors[0].message;
|
|
38
38
|
},
|
|
39
39
|
});
|
|
40
40
|
setUserEmail(email);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../src/globalConfig/accounts.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../src/globalConfig/accounts.ts"],"names":[],"mappings":";;;;;AASA,oCAGC;AAED,oCAGC;AAED,8BAEC;AAED,4DAgBC;AAED,wDAyBC;AAlED,4DAAoC;AACpC,6BAAwB;AAExB,sCAA+C;AAC/C,oCAA4C;AAC5C,uDAA+B;AAC/B,6DAAqC;AACrC,iDAA4E;AAE5E,SAAgB,YAAY;IAC1B,MAAM,YAAY,GAAG,IAAA,+BAAgB,GAAE,CAAC;IACxC,OAAO,YAAY,EAAE,OAAO,EAAE,KAAK,IAAI,IAAI,CAAC;AAC9C,CAAC;AAED,SAAgB,YAAY,CAAC,KAAa;IACxC,MAAM,MAAM,GAA0B,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;IAC7D,IAAA,uCAAwB,EAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAED,SAAgB,SAAS;IACvB,OAAO,IAAA,qBAAY,EAAC,kBAAkB,CAAC,IAAI,YAAY,EAAE,IAAI,IAAI,CAAC;AACpE,CAAC;AAEM,KAAK,UAAU,wBAAwB;IAC5C,IAAI,KAAK,GAAG,IAAA,aAAI,GAAE,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;IACrE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,WAAW,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC3E,KAAK,GAAG,MAAM,IAAA,eAAK,EAAC;YAClB,OAAO,EAAE,yEAAyE;YAClF,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBAC1B,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC5C,OAAO,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1D,CAAC;SACF,CAAC,CAAC;QACH,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IACD,MAAM,mBAAS,CAAC,WAAW,CAAC,KAAK,EAAE;QACjC,MAAM,EAAE,0BAA0B;KACnC,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,sBAAsB;IAC1C,MAAM,KAAK,GAAG,IAAA,aAAI,GAAE,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;IACvE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,gBAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAA,wBAAgB,EACjC,oDAAoD,KAAK,EAAE,EAC3D,SAAS,EACT,GAAG,CACJ,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAG9B,CAAC;QACF,IAAI,IAAI,EAAE,MAAM,KAAK,gBAAgB,EAAE,CAAC;YACtC,gBAAM,CAAC,KAAK,CACV,sHAAsH,CACvH,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,gBAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;AACH,CAAC"}
|
|
@@ -7,14 +7,24 @@ import (
|
|
|
7
7
|
"reflect"
|
|
8
8
|
)
|
|
9
9
|
|
|
10
|
+
// Function type definitions for the API functions
|
|
11
|
+
type ApiFunc func(string, map[string]interface{}, map[string]interface{}) (map[string]interface{}, error)
|
|
12
|
+
|
|
13
|
+
// Variable to hold the function implementation, allowing it to be replaced in tests
|
|
14
|
+
var CallApi = defaultCallApi
|
|
15
|
+
|
|
16
|
+
// Default implementation that will be replaced by the actual provider
|
|
17
|
+
func defaultCallApi(prompt string, options map[string]interface{}, ctx map[string]interface{}) (map[string]interface{}, error) {
|
|
18
|
+
return nil, fmt.Errorf("CallApi not implemented")
|
|
19
|
+
}
|
|
20
|
+
|
|
10
21
|
func main() {
|
|
11
22
|
if len(os.Args) != 4 {
|
|
12
23
|
fmt.Println("Usage: golang_wrapper <script_path> <function_name> <json_args>")
|
|
13
24
|
os.Exit(1)
|
|
14
25
|
}
|
|
15
26
|
|
|
16
|
-
|
|
17
|
-
// functionName := os.Args[2]
|
|
27
|
+
functionName := os.Args[2]
|
|
18
28
|
jsonArgs := os.Args[3]
|
|
19
29
|
|
|
20
30
|
// Parse the JSON arguments
|
|
@@ -25,8 +35,15 @@ func main() {
|
|
|
25
35
|
os.Exit(1)
|
|
26
36
|
}
|
|
27
37
|
|
|
28
|
-
// Get the function
|
|
29
|
-
f := reflect.ValueOf(
|
|
38
|
+
// Get the function by name using reflection
|
|
39
|
+
f := reflect.ValueOf(nil)
|
|
40
|
+
switch functionName {
|
|
41
|
+
case "call_api", "CallApi":
|
|
42
|
+
f = reflect.ValueOf(CallApi)
|
|
43
|
+
default:
|
|
44
|
+
fmt.Printf("Unknown function: %s\n", functionName)
|
|
45
|
+
os.Exit(1)
|
|
46
|
+
}
|
|
30
47
|
|
|
31
48
|
// Call the function
|
|
32
49
|
result := f.Call([]reflect.Value{
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface GuardResult {
|
|
2
|
+
model: string;
|
|
3
|
+
results: Array<{
|
|
4
|
+
categories: Record<string, boolean>;
|
|
5
|
+
category_scores: Record<string, number>;
|
|
6
|
+
flagged: boolean;
|
|
7
|
+
payload?: {
|
|
8
|
+
pii?: Array<{
|
|
9
|
+
entity_type: string;
|
|
10
|
+
start: number;
|
|
11
|
+
end: number;
|
|
12
|
+
pii: string;
|
|
13
|
+
}>;
|
|
14
|
+
};
|
|
15
|
+
}>;
|
|
16
|
+
}
|
|
17
|
+
declare const guardrails: {
|
|
18
|
+
guard(input: string): Promise<GuardResult>;
|
|
19
|
+
pii(input: string): Promise<GuardResult>;
|
|
20
|
+
harm(input: string): Promise<GuardResult>;
|
|
21
|
+
};
|
|
22
|
+
export default guardrails;
|
|
23
|
+
//# sourceMappingURL=guardrails.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guardrails.d.ts","sourceRoot":"","sources":["../../src/guardrails.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,KAAK,CAAC;QACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACxC,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE;YACR,GAAG,CAAC,EAAE,KAAK,CAAC;gBACV,WAAW,EAAE,MAAM,CAAC;gBACpB,KAAK,EAAE,MAAM,CAAC;gBACd,GAAG,EAAE,MAAM,CAAC;gBACZ,GAAG,EAAE,MAAM,CAAC;aACb,CAAC,CAAC;SACJ,CAAC;KACH,CAAC,CAAC;CACJ;AA4BD,QAAA,MAAM,UAAU;iBACK,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;eAI/B,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;gBAI5B,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;CAGhD,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const cache_1 = require("./cache");
|
|
7
|
+
const constants_1 = require("./constants");
|
|
8
|
+
const logger_1 = __importDefault(require("./logger"));
|
|
9
|
+
const API_BASE_URL = `${constants_1.SHARE_API_BASE_URL}/v1`;
|
|
10
|
+
async function makeRequest(endpoint, input) {
|
|
11
|
+
try {
|
|
12
|
+
const response = await (0, cache_1.fetchWithCache)(`${API_BASE_URL}${endpoint}`, {
|
|
13
|
+
method: 'POST',
|
|
14
|
+
headers: {
|
|
15
|
+
'Content-Type': 'application/json',
|
|
16
|
+
},
|
|
17
|
+
body: JSON.stringify({ input }),
|
|
18
|
+
}, undefined, 'json');
|
|
19
|
+
if (!response.data) {
|
|
20
|
+
throw new Error('No data returned from API');
|
|
21
|
+
}
|
|
22
|
+
return response.data;
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
logger_1.default.error(`Guardrails API error: ${error}`);
|
|
26
|
+
throw error;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const guardrails = {
|
|
30
|
+
async guard(input) {
|
|
31
|
+
return makeRequest('/guard', input);
|
|
32
|
+
},
|
|
33
|
+
async pii(input) {
|
|
34
|
+
return makeRequest('/pii', input);
|
|
35
|
+
},
|
|
36
|
+
async harm(input) {
|
|
37
|
+
return makeRequest('/harm', input);
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
exports.default = guardrails;
|
|
41
|
+
//# sourceMappingURL=guardrails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guardrails.js","sourceRoot":"","sources":["../../src/guardrails.ts"],"names":[],"mappings":";;;;;AAAA,mCAAyC;AACzC,2CAAiD;AACjD,sDAA8B;AAE9B,MAAM,YAAY,GAAG,GAAG,8BAAkB,KAAK,CAAC;AAmBhD,KAAK,UAAU,WAAW,CAAC,QAAgB,EAAE,KAAa;IACxD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,sBAAc,EACnC,GAAG,YAAY,GAAG,QAAQ,EAAE,EAC5B;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;SAChC,EACD,SAAS,EACT,MAAM,CACP,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,QAAQ,CAAC,IAAmB,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAM,CAAC,KAAK,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;QAC/C,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,GAAG;IACjB,KAAK,CAAC,KAAK,CAAC,KAAa;QACvB,OAAO,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAa;QACrB,OAAO,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAa;QACtB,OAAO,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;CACF,CAAC;AAEF,kBAAe,UAAU,CAAC"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import assertions from './assertions';
|
|
2
2
|
import * as cache from './cache';
|
|
3
|
+
import guardrails from './guardrails';
|
|
3
4
|
import Eval from './models/eval';
|
|
4
5
|
import providers, { loadApiProvider } from './providers';
|
|
5
6
|
import { extractEntities } from './redteam/extraction/entities';
|
|
@@ -22,7 +23,7 @@ declare const redteam: {
|
|
|
22
23
|
Grader: typeof RedteamGraderBase;
|
|
23
24
|
};
|
|
24
25
|
};
|
|
25
|
-
export { assertions, cache, evaluate, providers, redteam };
|
|
26
|
+
export { assertions, cache, evaluate, providers, redteam, guardrails };
|
|
26
27
|
declare const _default: {
|
|
27
28
|
assertions: {
|
|
28
29
|
runAssertion: typeof import("./assertions").runAssertion;
|
|
@@ -114,6 +115,11 @@ declare const _default: {
|
|
|
114
115
|
Grader: typeof RedteamGraderBase;
|
|
115
116
|
};
|
|
116
117
|
};
|
|
118
|
+
guardrails: {
|
|
119
|
+
guard(input: string): Promise<import("./guardrails").GuardResult>;
|
|
120
|
+
pii(input: string): Promise<import("./guardrails").GuardResult>;
|
|
121
|
+
harm(input: string): Promise<import("./guardrails").GuardResult>;
|
|
122
|
+
};
|
|
117
123
|
};
|
|
118
124
|
export default _default;
|
|
119
125
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,UAAU,MAAM,cAAc,CAAC;AAGtC,OAAO,IAAI,MAAM,eAAe,CAAC;AAEjC,OAAO,SAAS,EAAE,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAGpE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG9E,OAAO,KAAK,EACV,eAAe,EAEf,iBAAiB,EAIlB,MAAM,SAAS,CAAC;AAMjB,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,iBAAe,QAAQ,CAAC,SAAS,EAAE,iBAAiB,EAAE,OAAO,GAAE,eAAoB,iBA0HlF;AAED,QAAA,MAAM,OAAO;;;;;;;;;;;;CAYZ,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEvE,wBAOE"}
|
package/dist/src/index.js
CHANGED
|
@@ -39,13 +39,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
39
39
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
40
|
};
|
|
41
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
-
exports.redteam = exports.providers = exports.cache = exports.assertions = exports.generateTable = void 0;
|
|
42
|
+
exports.guardrails = exports.redteam = exports.providers = exports.cache = exports.assertions = exports.generateTable = void 0;
|
|
43
43
|
exports.evaluate = evaluate;
|
|
44
44
|
const assertions_1 = __importDefault(require("./assertions"));
|
|
45
45
|
exports.assertions = assertions_1.default;
|
|
46
46
|
const cache = __importStar(require("./cache"));
|
|
47
47
|
exports.cache = cache;
|
|
48
48
|
const evaluator_1 = require("./evaluator");
|
|
49
|
+
const guardrails_1 = __importDefault(require("./guardrails"));
|
|
50
|
+
exports.guardrails = guardrails_1.default;
|
|
49
51
|
const logger_1 = __importDefault(require("./logger"));
|
|
50
52
|
const migrate_1 = require("./migrate");
|
|
51
53
|
const eval_1 = __importDefault(require("./models/eval"));
|
|
@@ -60,9 +62,9 @@ const plugins_1 = require("./redteam/plugins");
|
|
|
60
62
|
const base_1 = require("./redteam/plugins/base");
|
|
61
63
|
const strategies_1 = require("./redteam/strategies");
|
|
62
64
|
const telemetry_1 = __importDefault(require("./telemetry"));
|
|
63
|
-
const testCases_1 = require("./testCases");
|
|
64
65
|
const util_1 = require("./util");
|
|
65
66
|
const invariant_1 = __importDefault(require("./util/invariant"));
|
|
67
|
+
const testCaseReader_1 = require("./util/testCaseReader");
|
|
66
68
|
const prompts_2 = require("./validators/prompts");
|
|
67
69
|
__exportStar(require("./types"), exports);
|
|
68
70
|
var table_1 = require("./table");
|
|
@@ -77,7 +79,7 @@ async function evaluate(testSuite, options = {}) {
|
|
|
77
79
|
providers: await (0, providers_2.loadApiProviders)(testSuite.providers, {
|
|
78
80
|
env: testSuite.env,
|
|
79
81
|
}),
|
|
80
|
-
tests: await (0,
|
|
82
|
+
tests: await (0, testCaseReader_1.readTests)(testSuite.tests),
|
|
81
83
|
nunjucksFilters: await (0, util_1.readFilters)(testSuite.nunjucksFilters || {}),
|
|
82
84
|
// Full prompts expected (not filepaths)
|
|
83
85
|
prompts: (await Promise.all(testSuite.prompts.map(async (promptInput) => {
|
|
@@ -194,5 +196,6 @@ exports.default = {
|
|
|
194
196
|
evaluate,
|
|
195
197
|
providers: providers_1.default,
|
|
196
198
|
redteam,
|
|
199
|
+
guardrails: guardrails_1.default,
|
|
197
200
|
};
|
|
198
201
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
1
|
import type { TestCase } from '../types';
|
|
2
|
+
export declare function parseDatasetPath(path: string): {
|
|
3
|
+
owner: string;
|
|
4
|
+
repo: string;
|
|
5
|
+
queryParams: URLSearchParams;
|
|
6
|
+
};
|
|
2
7
|
export declare function fetchHuggingFaceDataset(datasetPath: string, limit?: number): Promise<TestCase[]>;
|
|
3
8
|
//# sourceMappingURL=huggingfaceDatasets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"huggingfaceDatasets.d.ts","sourceRoot":"","sources":["../../../src/integrations/huggingfaceDatasets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"huggingfaceDatasets.d.ts","sourceRoot":"","sources":["../../../src/integrations/huggingfaceDatasets.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAiBzC,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,eAAe,CAAC;CAC9B,CAwBA;AAED,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,QAAQ,EAAE,CAAC,CAoFrB"}
|
|
@@ -3,8 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.parseDatasetPath = parseDatasetPath;
|
|
6
7
|
exports.fetchHuggingFaceDataset = fetchHuggingFaceDataset;
|
|
7
8
|
const dedent_1 = __importDefault(require("dedent"));
|
|
9
|
+
const envars_1 = require("../envars");
|
|
8
10
|
const fetch_1 = require("../fetch");
|
|
9
11
|
const logger_1 = __importDefault(require("../logger"));
|
|
10
12
|
function parseDatasetPath(path) {
|
|
@@ -44,7 +46,13 @@ async function fetchHuggingFaceDataset(datasetPath, limit) {
|
|
|
44
46
|
requestParams.set('length', Math.min(pageSize, userLimit ? userLimit - offset : pageSize).toString());
|
|
45
47
|
const url = `${baseUrl}?dataset=${encodeURIComponent(`${owner}/${repo}`)}&${requestParams.toString()}`;
|
|
46
48
|
logger_1.default.debug(`[Huggingface Dataset] Fetching page from ${url}`);
|
|
47
|
-
const
|
|
49
|
+
const hfToken = (0, envars_1.getEnvString)('HF_TOKEN') || (0, envars_1.getEnvString)('HF_API_TOKEN');
|
|
50
|
+
const headers = {};
|
|
51
|
+
if (hfToken) {
|
|
52
|
+
logger_1.default.debug('[Huggingface Dataset] Using token for authentication');
|
|
53
|
+
headers.Authorization = `Bearer ${hfToken}`;
|
|
54
|
+
}
|
|
55
|
+
const response = await (0, fetch_1.fetchWithProxy)(url, { headers });
|
|
48
56
|
if (!response.ok) {
|
|
49
57
|
const error = `[Huggingface Dataset] Failed to fetch dataset: ${response.statusText}.\nFetched ${url}`;
|
|
50
58
|
logger_1.default.error(error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"huggingfaceDatasets.js","sourceRoot":"","sources":["../../../src/integrations/huggingfaceDatasets.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"huggingfaceDatasets.js","sourceRoot":"","sources":["../../../src/integrations/huggingfaceDatasets.ts"],"names":[],"mappings":"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"}
|
package/dist/src/matchers.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ApiProvider, GradingConfig, GradingResult, ProviderType } from './types';
|
|
1
|
+
import type { ApiProvider, Assertion, GradingConfig, GradingResult, ProviderType } from './types';
|
|
2
2
|
export declare function getGradingProvider(type: ProviderType, provider: GradingConfig['provider'], defaultProvider: ApiProvider | null): Promise<ApiProvider | null>;
|
|
3
3
|
export declare function getAndCheckProvider(type: ProviderType, provider: GradingConfig['provider'], defaultProvider: ApiProvider | null, checkName: string): Promise<ApiProvider>;
|
|
4
4
|
export declare function matchesSimilarity(expected: string, output: string, threshold: number, inverse?: boolean, grading?: GradingConfig): Promise<Omit<GradingResult, 'assertion'>>;
|
|
@@ -12,7 +12,7 @@ export declare function matchesSimilarity(expected: string, output: string, thre
|
|
|
12
12
|
*/
|
|
13
13
|
export declare function matchesClassification(expected: string | undefined, output: string, threshold: number, grading?: GradingConfig): Promise<Omit<GradingResult, 'assertion'>>;
|
|
14
14
|
export declare function renderLlmRubricPrompt(rubric: string, llmOutput: string, grading?: GradingConfig, vars?: Record<string, string | object>): Promise<string>;
|
|
15
|
-
export declare function matchesLlmRubric(rubric: string, llmOutput: string, grading?: GradingConfig, vars?: Record<string, string | object
|
|
15
|
+
export declare function matchesLlmRubric(rubric: string, llmOutput: string, grading?: GradingConfig, vars?: Record<string, string | object>, assertion?: Assertion | null): Promise<GradingResult>;
|
|
16
16
|
export declare function matchesFactuality(input: string, expected: string, output: string, grading?: GradingConfig, vars?: Record<string, string | object>): Promise<Omit<GradingResult, 'assertion'>>;
|
|
17
17
|
export declare function matchesClosedQa(input: string, expected: string, output: string, grading?: GradingConfig, vars?: Record<string, string | object>): Promise<Omit<GradingResult, 'assertion'>>;
|
|
18
18
|
export declare function matchesGEval(criteria: string, input: string, output: string, threshold: number, grading?: GradingConfig): Promise<Omit<GradingResult, 'assertion'>>;
|