promptfoo 0.34.1 → 0.35.1

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.
Files changed (106) hide show
  1. package/dist/package.json +4 -2
  2. package/dist/src/assertions.d.ts +5 -4
  3. package/dist/src/assertions.d.ts.map +1 -1
  4. package/dist/src/assertions.js +41 -8
  5. package/dist/src/assertions.js.map +1 -1
  6. package/dist/src/evaluator.d.ts.map +1 -1
  7. package/dist/src/evaluator.js +1 -0
  8. package/dist/src/evaluator.js.map +1 -1
  9. package/dist/src/main.js +21 -0
  10. package/dist/src/main.js.map +1 -1
  11. package/dist/src/matchers.d.ts +1 -0
  12. package/dist/src/matchers.d.ts.map +1 -1
  13. package/dist/src/matchers.js +23 -10
  14. package/dist/src/matchers.js.map +1 -1
  15. package/dist/src/onboarding.d.ts +1 -1
  16. package/dist/src/onboarding.d.ts.map +1 -1
  17. package/dist/src/onboarding.js +1 -0
  18. package/dist/src/onboarding.js.map +1 -1
  19. package/dist/src/providers/azureopenai.d.ts +13 -7
  20. package/dist/src/providers/azureopenai.d.ts.map +1 -1
  21. package/dist/src/providers/azureopenai.js +63 -13
  22. package/dist/src/providers/azureopenai.js.map +1 -1
  23. package/dist/src/providers/bedrock.d.ts +3 -7
  24. package/dist/src/providers/bedrock.d.ts.map +1 -1
  25. package/dist/src/providers/bedrock.js +38 -12
  26. package/dist/src/providers/bedrock.js.map +1 -1
  27. package/dist/src/providers/openai.d.ts +1 -0
  28. package/dist/src/providers/openai.d.ts.map +1 -1
  29. package/dist/src/providers/openai.js +3 -1
  30. package/dist/src/providers/openai.js.map +1 -1
  31. package/dist/src/providers.d.ts.map +1 -1
  32. package/dist/src/providers.js +6 -0
  33. package/dist/src/providers.js.map +1 -1
  34. package/dist/src/tableOutput.html +5 -3
  35. package/dist/src/telemetry.d.ts +1 -1
  36. package/dist/src/telemetry.d.ts.map +1 -1
  37. package/dist/src/testCases.d.ts.map +1 -1
  38. package/dist/src/testCases.js +12 -3
  39. package/dist/src/testCases.js.map +1 -1
  40. package/dist/src/types.d.ts +6 -3
  41. package/dist/src/types.d.ts.map +1 -1
  42. package/dist/src/util.d.ts +4 -1
  43. package/dist/src/util.d.ts.map +1 -1
  44. package/dist/src/util.js +76 -25
  45. package/dist/src/util.js.map +1 -1
  46. package/dist/src/web/nextui/404/index.html +1 -1
  47. package/dist/src/web/nextui/404.html +1 -1
  48. package/dist/src/web/nextui/_next/static/chunks/{886-0c6a1912422ba9af.js → 237-aa412c3c913a56dd.js} +5 -5
  49. package/dist/src/web/nextui/_next/static/chunks/376-a39927cc33e4fa4c.js +8 -0
  50. package/dist/src/web/nextui/_next/static/chunks/396-fbb80808f0f5faf9.js +1 -0
  51. package/dist/src/web/nextui/_next/static/chunks/683-31836dfcc9c45e50.js +44 -0
  52. package/dist/src/web/nextui/_next/static/chunks/729-aa603ea2d6bdca0a.js +1 -0
  53. package/dist/src/web/nextui/_next/static/chunks/82-ca0360e473d81167.js +7 -0
  54. package/dist/src/web/nextui/_next/static/chunks/app/auth/login/{page-243a9a9416838fed.js → page-1c10570a7e431039.js} +1 -1
  55. package/dist/src/web/nextui/_next/static/chunks/app/auth/signup/{page-c9adb9aad0d75e4e.js → page-57f3e1b961ec3eac.js} +1 -1
  56. package/dist/src/web/nextui/_next/static/chunks/app/datasets/{page-0750a95d07f81867.js → page-44ab188f3b846712.js} +1 -1
  57. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/not-found-366629541fd598e9.js +1 -0
  58. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/{page-8571bc66ffa4f037.js → page-7fff0bfff35032c6.js} +1 -1
  59. package/dist/src/web/nextui/_next/static/chunks/app/eval/page-e0eccb898774840e.js +1 -0
  60. package/dist/src/web/nextui/_next/static/chunks/app/{layout-f33cbd85e88e2d17.js → layout-ba6ec844d4da825e.js} +1 -1
  61. package/dist/src/web/nextui/_next/static/chunks/app/{page-3d77d57947154b0c.js → page-ceb22f8e1a2af9dc.js} +1 -1
  62. package/dist/src/web/nextui/_next/static/chunks/app/prompts/{page-aad981eba15320e5.js → page-0bf3409d6a6bfa22.js} +1 -1
  63. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-af09a6c20748a4ee.js +1 -0
  64. package/dist/src/web/nextui/_next/static/chunks/{main-app-a18517c2b68322ff.js → main-app-581ccf0003955b21.js} +1 -1
  65. package/dist/src/web/nextui/_next/static/chunks/webpack-ca74e230adf25371.js +1 -0
  66. package/dist/src/web/nextui/_next/static/css/{47ee2c14c17ee975.css → 50ba86fc4d789db8.css} +1 -1
  67. package/dist/src/web/nextui/_next/static/css/{8c7fcf68df21e7e6.css → 5cdfd82118ad2424.css} +1 -1
  68. package/dist/src/web/nextui/_next/static/css/{fbdc70c454098755.css → 97987f58984b220b.css} +1 -1
  69. package/dist/src/web/nextui/auth/login/index.html +1 -1
  70. package/dist/src/web/nextui/auth/login/index.txt +6 -6
  71. package/dist/src/web/nextui/auth/signup/index.html +1 -1
  72. package/dist/src/web/nextui/auth/signup/index.txt +6 -6
  73. package/dist/src/web/nextui/datasets/index.html +1 -1
  74. package/dist/src/web/nextui/datasets/index.txt +6 -6
  75. package/dist/src/web/nextui/eval/index.html +1 -1
  76. package/dist/src/web/nextui/eval/index.txt +8 -8
  77. package/dist/src/web/nextui/index.html +1 -1
  78. package/dist/src/web/nextui/index.txt +5 -5
  79. package/dist/src/web/nextui/prompts/index.html +1 -1
  80. package/dist/src/web/nextui/prompts/index.txt +6 -6
  81. package/dist/src/web/nextui/setup/index.html +2 -2
  82. package/dist/src/web/nextui/setup/index.txt +7 -7
  83. package/dist/src/web/server.d.ts.map +1 -1
  84. package/dist/src/web/server.js +11 -2
  85. package/dist/src/web/server.js.map +1 -1
  86. package/package.json +4 -2
  87. package/dist/src/web/nextui/_next/static/chunks/396-ddebcf106bb56e13.js +0 -1
  88. package/dist/src/web/nextui/_next/static/chunks/440-d53e95152985d2c9.js +0 -44
  89. package/dist/src/web/nextui/_next/static/chunks/729-98e547dcb2d392cc.js +0 -1
  90. package/dist/src/web/nextui/_next/static/chunks/82-ffdebabf7ccab1b7.js +0 -7
  91. package/dist/src/web/nextui/_next/static/chunks/896-f2519aac9087ba0a.js +0 -8
  92. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/not-found-14c00147c1eba0de.js +0 -1
  93. package/dist/src/web/nextui/_next/static/chunks/app/eval/page-3b208fe2a2800a3e.js +0 -1
  94. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-4bc19fb7fd534921.js +0 -1
  95. package/dist/src/web/nextui/_next/static/chunks/webpack-d493d89689f7b43b.js +0 -1
  96. /package/dist/src/web/nextui/_next/static/{VpwZ6hpHRmu4JDi-ZyG1a → ASnrNbV9r4Fouf8Mm1iNx}/_buildManifest.js +0 -0
  97. /package/dist/src/web/nextui/_next/static/{VpwZ6hpHRmu4JDi-ZyG1a → ASnrNbV9r4Fouf8Mm1iNx}/_ssgManifest.js +0 -0
  98. /package/dist/src/web/nextui/_next/static/chunks/{21-8a2c661f5df627d6.js → 21-b6c126c8ac7d9c5e.js} +0 -0
  99. /package/dist/src/web/nextui/_next/static/chunks/{293-f7537306415679fd.js → 293-fa7b9b02f62ab5d8.js} +0 -0
  100. /package/dist/src/web/nextui/_next/static/chunks/{420-2e5cd10f16aeaa4f.js → 420-c4133cd89d8c5e4b.js} +0 -0
  101. /package/dist/src/web/nextui/_next/static/chunks/{548-46c7c1d35ca1bc02.js → 548-ffb8dd99ad3940cb.js} +0 -0
  102. /package/dist/src/web/nextui/_next/static/chunks/{596-297f7ff4a0436e87.js → 596-f3a131b7c336dd5d.js} +0 -0
  103. /package/dist/src/web/nextui/_next/static/chunks/{756-1adee6171fcb68fb.js → 756-93541769f62c0652.js} +0 -0
  104. /package/dist/src/web/nextui/_next/static/chunks/{808-90426be34a5d9784.js → 808-b64f39fb5aa81c36.js} +0 -0
  105. /package/dist/src/web/nextui/_next/static/chunks/{975-380318b3b26ba688.js → 975-41f6ad20b4031b30.js} +0 -0
  106. /package/dist/src/web/nextui/_next/static/chunks/{fd9d1056-fba4b53a2f01213b.js → fd9d1056-a95b789c94c05ff6.js} +0 -0
package/dist/src/util.js CHANGED
@@ -220,15 +220,32 @@ async function readConfigs(configPaths) {
220
220
  tests.push(...config.tests);
221
221
  }
222
222
  });
223
- const prompts = [];
224
- const seenPrompts = new Set();
225
- configs.forEach((config) => {
223
+ const configsAreStringOrArray = configs.every((config) => typeof config.prompts === 'string' || Array.isArray(config.prompts));
224
+ const configsAreObjects = configs.every((config) => typeof config.prompts === 'object');
225
+ let prompts = configsAreStringOrArray ? [] : {};
226
+ const makeAbsolute = (configPath, relativePath) => {
227
+ if (relativePath.startsWith('file://')) {
228
+ relativePath =
229
+ 'file://' + path.resolve(path.dirname(configPath), relativePath.slice('file://'.length));
230
+ }
231
+ return relativePath;
232
+ };
233
+ configs.forEach((config, idx) => {
226
234
  if (typeof config.prompts === 'string') {
235
+ (0, tiny_invariant_1.default)(Array.isArray(prompts), 'Cannot mix string and map-type prompts');
236
+ config.prompts = makeAbsolute(configPaths[idx], config.prompts);
227
237
  prompts.push(config.prompts);
228
238
  }
229
- else {
239
+ else if (Array.isArray(config.prompts)) {
240
+ (0, tiny_invariant_1.default)(Array.isArray(prompts), 'Cannot mix configs with map and array-type prompts');
241
+ config.prompts = config.prompts.map((prompt) => makeAbsolute(configPaths[idx], prompt));
230
242
  prompts.push(...config.prompts);
231
243
  }
244
+ else {
245
+ // Object format such as { 'prompts/prompt1.txt': 'foo', 'prompts/prompt2.txt': 'bar' }
246
+ (0, tiny_invariant_1.default)(typeof prompts === 'object', 'Cannot mix configs with map and array-type prompts');
247
+ prompts = { ...prompts, ...config.prompts };
248
+ }
232
249
  });
233
250
  // Combine all configs into a single UnifiedConfig
234
251
  const combinedConfig = {
@@ -263,7 +280,21 @@ function writeMultipleOutputs(outputPaths, results, config, shareableUrl) {
263
280
  exports.writeMultipleOutputs = writeMultipleOutputs;
264
281
  function writeOutput(outputPath, results, config, shareableUrl) {
265
282
  const outputExtension = outputPath.split('.').pop()?.toLowerCase();
266
- const outputToSimpleString = (output) => `${output.pass ? '[PASS]' : '[FAIL]'} (${output.score.toFixed(2)}) ${output.text}`;
283
+ const outputToSimpleString = (output) => {
284
+ const passFailText = output.pass ? '[PASS]' : '[FAIL]';
285
+ const namedScoresText = Object.entries(output.namedScores)
286
+ .map(([name, value]) => `${name}: ${value.toFixed(2)}`)
287
+ .join(', ');
288
+ const scoreText = namedScoresText.length > 0
289
+ ? `(${output.score.toFixed(2)}, ${namedScoresText})`
290
+ : `(${output.score.toFixed(2)})`;
291
+ const gradingResultText = output.gradingResult ? `Reason: ${output.gradingResult.reason}` : '';
292
+ return `${passFailText} ${scoreText}
293
+
294
+ ${output.text}
295
+
296
+ ${gradingResultText}`.trim();
297
+ };
267
298
  // Ensure the directory exists
268
299
  const outputDir = path.dirname(outputPath);
269
300
  if (!fs.existsSync(outputDir)) {
@@ -271,8 +302,8 @@ function writeOutput(outputPath, results, config, shareableUrl) {
271
302
  }
272
303
  if (outputExtension === 'csv') {
273
304
  const csvOutput = (0, sync_1.stringify)([
274
- [...results.table.head.prompts, ...results.table.head.vars],
275
- ...results.table.body.map((row) => [...row.outputs.map(outputToSimpleString), ...row.vars]),
305
+ [...results.table.head.vars, ...results.table.head.prompts.map((prompt) => prompt.display)],
306
+ ...results.table.body.map((row) => [...row.vars, ...row.outputs.map(outputToSimpleString)]),
276
307
  ]);
277
308
  fs.writeFileSync(outputPath, csvOutput);
278
309
  }
@@ -285,10 +316,11 @@ function writeOutput(outputPath, results, config, shareableUrl) {
285
316
  else if (outputExtension === 'html') {
286
317
  const template = fs.readFileSync(`${(0, esm_1.getDirectory)()}/tableOutput.html`, 'utf-8');
287
318
  const table = [
288
- [...results.table.head.prompts, ...results.table.head.vars],
289
- ...results.table.body.map((row) => [...row.outputs.map(outputToSimpleString), ...row.vars]),
319
+ [...results.table.head.vars, ...results.table.head.prompts.map((prompt) => prompt.display)],
320
+ ...results.table.body.map((row) => [...row.vars, ...row.outputs.map(outputToSimpleString)]),
290
321
  ];
291
322
  const htmlOutput = getNunjucksEngine().renderString(template, {
323
+ config,
292
324
  table,
293
325
  results: results.results,
294
326
  });
@@ -341,6 +373,7 @@ function writeLatestResults(results, config) {
341
373
  }
342
374
  }
343
375
  exports.writeLatestResults = writeLatestResults;
376
+ const resultsCache = {};
344
377
  function listPreviousResults() {
345
378
  const directory = path.join(getConfigDirectoryPath(), 'output');
346
379
  const files = fs.readdirSync(directory);
@@ -350,14 +383,29 @@ function listPreviousResults() {
350
383
  const statB = fs.statSync(path.join(directory, b));
351
384
  return statA.birthtime.getTime() - statB.birthtime.getTime(); // sort in ascending order
352
385
  });
353
- return sortedFiles;
386
+ return sortedFiles.map((fileName) => {
387
+ if (!resultsCache[fileName]) {
388
+ try {
389
+ const fileContents = fs.readFileSync(path.join(directory, fileName), 'utf8');
390
+ const data = js_yaml_1.default.load(fileContents);
391
+ resultsCache[fileName] = data;
392
+ }
393
+ catch (error) {
394
+ logger_1.default.warn(`Failed to read results from ${fileName}:\n${error}`);
395
+ }
396
+ }
397
+ return {
398
+ fileName,
399
+ description: resultsCache[fileName]?.config.description,
400
+ };
401
+ });
354
402
  }
355
403
  exports.listPreviousResults = listPreviousResults;
356
404
  const RESULT_HISTORY_LENGTH = parseInt(process.env.RESULT_HISTORY_LENGTH || '', 10) || 100;
357
405
  function cleanupOldResults(remaining = RESULT_HISTORY_LENGTH) {
358
406
  const sortedFiles = listPreviousResults();
359
407
  for (let i = 0; i < sortedFiles.length - remaining; i++) {
360
- fs.unlinkSync(path.join(getConfigDirectoryPath(), 'output', sortedFiles[i]));
408
+ fs.unlinkSync(path.join(getConfigDirectoryPath(), 'output', sortedFiles[i].fileName));
361
409
  }
362
410
  }
363
411
  exports.cleanupOldResults = cleanupOldResults;
@@ -410,7 +458,7 @@ function updateResult(filename, newTable) {
410
458
  fs.writeFileSync(resultsPath, JSON.stringify(evalData, null, 2));
411
459
  logger_1.default.info(`Updated results in ${resultsPath}`);
412
460
  const results = listPreviousResults();
413
- if (filename === results[results.length - 1]) {
461
+ if (filename === results[results.length - 1].fileName) {
414
462
  // Overwite latest.json too
415
463
  fs.copyFileSync(resultsPath, getLatestResultsPath());
416
464
  }
@@ -449,8 +497,9 @@ exports.getPrompts = getPrompts;
449
497
  function getPromptsWithPredicate(predicate) {
450
498
  const resultsFiles = listPreviousResults();
451
499
  const groupedPrompts = {};
452
- for (const filePath of resultsFiles) {
453
- const file = readResult(filePath);
500
+ for (const fileMeta of resultsFiles) {
501
+ const { fileName } = fileMeta;
502
+ const file = readResult(fileName);
454
503
  if (!file) {
455
504
  continue;
456
505
  }
@@ -465,7 +514,7 @@ function getPromptsWithPredicate(predicate) {
465
514
  groupedPrompts[promptId].count += 1;
466
515
  groupedPrompts[promptId].evals.push({
467
516
  id: evalId,
468
- filePath,
517
+ filePath: fileName,
469
518
  datasetId,
470
519
  metrics: prompt.metrics,
471
520
  });
@@ -477,11 +526,11 @@ function getPromptsWithPredicate(predicate) {
477
526
  prompt,
478
527
  recentEvalDate: new Date(createdAt),
479
528
  recentEvalId: evalId,
480
- recentEvalFilepath: filePath,
529
+ recentEvalFilepath: fileName,
481
530
  evals: [
482
531
  {
483
532
  id: evalId,
484
- filePath,
533
+ filePath: fileName,
485
534
  datasetId,
486
535
  metrics: prompt.metrics,
487
536
  },
@@ -501,8 +550,9 @@ exports.getTestCases = getTestCases;
501
550
  function getTestCasesWithPredicate(predicate) {
502
551
  const resultsFiles = listPreviousResults();
503
552
  const groupedTestCases = {};
504
- for (const filePath of resultsFiles) {
505
- const file = readResult(filePath);
553
+ for (const fileMeta of resultsFiles) {
554
+ const { fileName } = fileMeta;
555
+ const file = readResult(fileName);
506
556
  if (!file) {
507
557
  continue;
508
558
  }
@@ -518,7 +568,7 @@ function getTestCasesWithPredicate(predicate) {
518
568
  id: sha256(prompt.raw),
519
569
  prompt,
520
570
  evalId,
521
- evalFilepath: filePath,
571
+ evalFilepath: fileName,
522
572
  }));
523
573
  const promptsById = {};
524
574
  for (const prompt of groupedTestCases[datasetId].prompts.concat(newPrompts)) {
@@ -533,7 +583,7 @@ function getTestCasesWithPredicate(predicate) {
533
583
  id: (0, crypto_1.createHash)('sha256').update(prompt.raw).digest('hex'),
534
584
  prompt,
535
585
  evalId,
536
- evalFilepath: filePath,
586
+ evalFilepath: fileName,
537
587
  }));
538
588
  const promptsById = {};
539
589
  for (const prompt of newPrompts) {
@@ -547,7 +597,7 @@ function getTestCasesWithPredicate(predicate) {
547
597
  testCases,
548
598
  recentEvalDate: new Date(createdAt),
549
599
  recentEvalId: evalId,
550
- recentEvalFilepath: filePath,
600
+ recentEvalFilepath: fileName,
551
601
  prompts: Object.values(promptsById),
552
602
  };
553
603
  }
@@ -593,8 +643,9 @@ exports.getEvalFromHash = getEvalFromHash;
593
643
  function getEvalsWithPredicate(predicate) {
594
644
  const ret = [];
595
645
  const resultsFiles = listPreviousResults();
596
- for (const filePath of resultsFiles) {
597
- const file = readResult(filePath);
646
+ for (const fileMeta of resultsFiles) {
647
+ const { fileName } = fileMeta;
648
+ const file = readResult(fileName);
598
649
  if (!file) {
599
650
  continue;
600
651
  }
@@ -603,7 +654,7 @@ function getEvalsWithPredicate(predicate) {
603
654
  const evalId = sha256(JSON.stringify(result.config));
604
655
  ret.push({
605
656
  id: evalId,
606
- filePath,
657
+ filePath: fileName,
607
658
  date: createdAt,
608
659
  config: result.config,
609
660
  results: result.results,
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-d493d89689f7b43b.js" defer=""></script><script src="/_next/static/chunks/framework-8883d1e9be70c3da.js" defer=""></script><script src="/_next/static/chunks/main-b81070c77c77982d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-52924524f99094ab.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js" defer=""></script><script src="/_next/static/VpwZ6hpHRmu4JDi-ZyG1a/_buildManifest.js" defer=""></script><script src="/_next/static/VpwZ6hpHRmu4JDi-ZyG1a/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"VpwZ6hpHRmu4JDi-ZyG1a","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-ca74e230adf25371.js" defer=""></script><script src="/_next/static/chunks/framework-8883d1e9be70c3da.js" defer=""></script><script src="/_next/static/chunks/main-b81070c77c77982d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-52924524f99094ab.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js" defer=""></script><script src="/_next/static/ASnrNbV9r4Fouf8Mm1iNx/_buildManifest.js" defer=""></script><script src="/_next/static/ASnrNbV9r4Fouf8Mm1iNx/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"ASnrNbV9r4Fouf8Mm1iNx","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-d493d89689f7b43b.js" defer=""></script><script src="/_next/static/chunks/framework-8883d1e9be70c3da.js" defer=""></script><script src="/_next/static/chunks/main-b81070c77c77982d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-52924524f99094ab.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js" defer=""></script><script src="/_next/static/VpwZ6hpHRmu4JDi-ZyG1a/_buildManifest.js" defer=""></script><script src="/_next/static/VpwZ6hpHRmu4JDi-ZyG1a/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"VpwZ6hpHRmu4JDi-ZyG1a","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-ca74e230adf25371.js" defer=""></script><script src="/_next/static/chunks/framework-8883d1e9be70c3da.js" defer=""></script><script src="/_next/static/chunks/main-b81070c77c77982d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-52924524f99094ab.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js" defer=""></script><script src="/_next/static/ASnrNbV9r4Fouf8Mm1iNx/_buildManifest.js" defer=""></script><script src="/_next/static/ASnrNbV9r4Fouf8Mm1iNx/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"ASnrNbV9r4Fouf8Mm1iNx","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>