semantifold 0.6.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/README.md +8 -4
  2. package/build/index.d.ts +8 -8
  3. package/build/index.d.ts.map +1 -1
  4. package/build/index.js +6 -6
  5. package/build/src/backends/android.js +2 -2
  6. package/build/src/backends/dart.d.ts +19 -0
  7. package/build/src/backends/dart.d.ts.map +1 -1
  8. package/build/src/backends/dart.js +28 -16
  9. package/build/src/backends/flutter.d.ts +51 -0
  10. package/build/src/backends/flutter.d.ts.map +1 -0
  11. package/build/src/backends/flutter.js +1362 -0
  12. package/build/src/backends/identifiers.js +5 -5
  13. package/build/src/backends/program.d.ts +4 -4
  14. package/build/src/backends/program.d.ts.map +1 -1
  15. package/build/src/backends/program.js +4 -4
  16. package/build/src/backends/shared.d.ts +7 -0
  17. package/build/src/backends/shared.d.ts.map +1 -1
  18. package/build/src/backends/shared.js +11 -6
  19. package/build/src/language-registry.d.ts.map +1 -1
  20. package/build/src/language-registry.js +11 -1
  21. package/build/src/semantic/types.d.ts +152 -2
  22. package/build/src/semantic/types.d.ts.map +1 -1
  23. package/build/src/semantic/types.js +38 -2
  24. package/docs/android.md +6 -2
  25. package/docs/architecture.md +2 -0
  26. package/docs/flutter.md +47 -0
  27. package/docs/goals.md +1 -1
  28. package/docs/language-support.md +9 -2
  29. package/docs/source-maps.md +2 -0
  30. package/docs/testing.md +22 -1
  31. package/docs/watch-build-pipeline.md +154 -0
  32. package/index.js +5 -5
  33. package/package.json +1 -1
  34. package/src/backends/android.js +1 -1
  35. package/src/backends/dart.js +28 -15
  36. package/src/backends/flutter.js +1465 -0
  37. package/src/backends/identifiers.js +4 -4
  38. package/src/backends/program.js +3 -3
  39. package/src/backends/shared.js +12 -8
  40. package/src/language-registry.js +10 -0
  41. package/src/semantic/types.js +40 -1
@@ -1,6 +1,6 @@
1
1
  // @ts-check
2
2
  import { unsupportedCapability } from "../diagnostic.js";
3
- /** @type {Record<Exclude<import("../semantic/types.js").BackendLanguage, "ios">, RegExp>} */
3
+ /** @type {Record<Exclude<import("../semantic/types.js").BackendLanguage, "ios" | "flutter">, RegExp>} */
4
4
  const identifierPatterns = {
5
5
  android: /^(?:_|\p{L})(?:_|\p{L}|\p{Nd})*$/u,
6
6
  dart: /^(?:_|\p{L})(?:_|\p{L}|\p{Nd})*$/u,
@@ -20,7 +20,7 @@ const identifierPatterns = {
20
20
  typescript: /^[A-Za-z_$][A-Za-z0-9_$]*$/u,
21
21
  wasm: /^(?:[$_]|\p{XID_Start})(?:[$_]|\p{XID_Continue})*$/u
22
22
  };
23
- /** @type {Record<Exclude<import("../semantic/types.js").BackendLanguage, "ios">, Set<string>>} */
23
+ /** @type {Record<Exclude<import("../semantic/types.js").BackendLanguage, "ios" | "flutter">, Set<string>>} */
24
24
  const reservedWords = {
25
25
  android: new Set([
26
26
  "as", "break", "class", "continue", "do", "else", "false", "for", "fun", "if", "in", "interface", "is", "null",
@@ -230,7 +230,7 @@ export function validateTargetIdentifier(language, name, role, location) {
230
230
  if (typeof name != "string")
231
231
  unsupportedCapability(language, `${role} identifier`, location);
232
232
  const reservedName = language == "php" ? name.toLowerCase() : name;
233
- const syntaxLanguage = language == "ios" ? "swift" : language;
233
+ const syntaxLanguage = language == "ios" ? "swift" : language == "flutter" ? "dart" : language;
234
234
  if (!identifierPatterns[syntaxLanguage].test(name) || reservedWords[syntaxLanguage].has(reservedName) ||
235
235
  language == "python" && name.normalize("NFKC") != name ||
236
236
  language == "c" && !isCIdentifier(name) ||
@@ -284,7 +284,7 @@ export function validateTargetTypeIdentifier(language, name, location) {
284
284
  unsupportedCapability(language, `record type identifier '${String(name)}'`, location);
285
285
  }
286
286
  const reservedName = language == "php" ? name.toLowerCase() : name;
287
- const syntaxLanguage = language == "ios" ? "swift" : language;
287
+ const syntaxLanguage = language == "ios" ? "swift" : language == "flutter" ? "dart" : language;
288
288
  if (reservedWords[syntaxLanguage].has(reservedName) || reservedTypeNames[language]?.has(reservedName)) {
289
289
  unsupportedCapability(language, `record type identifier '${name}'`, location);
290
290
  }
@@ -340,4 +340,4 @@ export function isDartIdentifier(name) {
340
340
  return identifierPatterns.dart.test(name) && !reservedWords.dart.has(name) &&
341
341
  !name.startsWith("_semantifold") && name.normalize("NFC") == name;
342
342
  }
343
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpZmllcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFja2VuZHMvaWRlbnRpZmllcnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGtCQUFrQixDQUFBO0FBRXRELDZGQUE2RjtBQUM3RixNQUFNLGtCQUFrQixHQUFHO0lBQ3pCLE9BQU8sRUFBRSxtQ0FBbUM7SUFDNUMsSUFBSSxFQUFFLG1DQUFtQztJQUN6QyxNQUFNLEVBQUUsbUNBQW1DO0lBQzNDLEtBQUssRUFBRSwrQ0FBK0M7SUFDdEQsSUFBSSxFQUFFLDJCQUEyQjtJQUNqQyxHQUFHLEVBQUUsMkJBQTJCO0lBQ2hDLEdBQUcsRUFBRSwwQkFBMEI7SUFDL0IsQ0FBQyxFQUFFLDBCQUEwQjtJQUM3QixNQUFNLEVBQUUsMkJBQTJCO0lBQ25DLEVBQUUsRUFBRSwyQkFBMkI7SUFDL0IsSUFBSSxFQUFFLDZCQUE2QjtJQUNuQyxVQUFVLEVBQUUsNkJBQTZCO0lBQ3pDLEdBQUcsRUFBRSwyQkFBMkI7SUFDaEMsTUFBTSxFQUFFLCtDQUErQztJQUN2RCxJQUFJLEVBQUUsd0JBQXdCO0lBQzlCLFVBQVUsRUFBRSw2QkFBNkI7SUFDekMsSUFBSSxFQUFFLHFEQUFxRDtDQUM1RCxDQUFBO0FBRUQsa0dBQWtHO0FBQ2xHLE1BQU0sYUFBYSxHQUFHO0lBQ3BCLE9BQU8sRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUNmLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNO1FBQzlHLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxL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LFdBQVcsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUztRQUNuRyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVTtRQUMxRyxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUTtRQUNwRyxTQUFTLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRO1FBQzFHLGVBQWUsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNO1FBQzVHLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFFBQVE7UUFDdEcsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUztRQUN6RyxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVE7S0FDN0QsQ0FBQztJQUNGLE1BQU0sRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUNkLFdBQVcsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUk7UUFDdEcsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPO1FBQ3RELElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTO1FBQ3BHLFVBQVUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsUUFBUTtRQUN6SCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU07UUFDeEcsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTTtRQUM1RyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUk7UUFDMUcsVUFBVSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLFVBQVU7UUFDakgsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRO1FBQ2hILFlBQVksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTztRQUMvRyxXQUFXLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTTtRQUM1RyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPO0tBQ2xDLENBQUM7SUFDRixFQUFFLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDVixHQUFHLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU07UUFDdEcsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEtBQUs7UUFDckcsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLO0tBQzFCLENBQUM7SUFDRixJQUFJLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDWixHQUFHLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVU7UUFDNUcsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxLQUFLO1FBQzVHLE1BQU0sRUFBRSxJQUFJ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Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxJQUFJO0lBQ3JDLE9BQU8sa0JBQWtCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUM7UUFDaEgsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0FBQ3BDLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUFDLElBQUk7SUFDbkMsT0FBTyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ3hFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQTtBQUNyRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5cbmltcG9ydCB7dW5zdXBwb3J0ZWRDYXBhYmlsaXR5fSBmcm9tIFwiLi4vZGlhZ25vc3RpYy5qc1wiXG5cbi8qKiBAdHlwZSB7UmVjb3JkPEV4Y2x1ZGU8aW1wb3J0KFwiLi4vc2VtYW50aWMvdHlwZXMuanNcIikuQmFja2VuZExhbmd1YWdlLCBcImlvc1wiPiwgUmVnRXhwPn0gKi9cbmNvbnN0IGlkZW50aWZpZXJQYXR0ZXJucyA9IHtcbiAgYW5kcm9pZDogL14oPzpffFxccHtMfSkoPzpffFxccHtMfXxcXHB7TmR9KSokL3UsXG4gIGRhcnQ6IC9eKD86X3xcXHB7TH0pKD86X3xcXHB7TH18XFxwe05kfSkqJC91LFxuICBrb3RsaW46IC9eKD86X3xcXHB7TH0pKD86X3xcXHB7TH18XFxwe05kfSkqJC91LFxuICBzd2lmdDogL14oPzpffFxccHtYSURfU3RhcnR9KSg/Ol98XFxwe1hJRF9Db250aW51ZX0pKiQvdSxcbiAgcnVzdDogL15bQS1aYS16X11bQS1aYS16MC05X10qJC91LFxuICB6aWc6IC9eW0EtWmEtel9dW0EtWmEtejAtOV9dKiQvdSxcbiAgY3BwOiAvXltBLVphLXpdW0EtWmEtejAtOV9dKiQvdSxcbiAgYzogL15bQS1aYS16XVtBLVphLXowLTlfXSokL3UsXG4gIGNzaGFycDogL15bQS1aYS16X11bQS1aYS16MC05X10qJC91LFxuICBnbzogL15bQS1aYS16X11bQS1aYS16MC05X10qJC91LFxuICBqYXZhOiAvXltBLVphLXpfJF1bQS1aYS16MC05XyRdKiQvdSxcbiAgamF2YXNjcmlwdDogL15bQS1aYS16XyRdW0EtWmEtejAtOV8kXSokL3UsXG4gIHBocDogL15bQS1aYS16X11bQS1aYS16MC05X10qJC91LFxuICBweXRob246IC9eKD86X3xcXHB7WElEX1N0YXJ0fSkoPzpffFxccHtYSURfQ29udGludWV9KSokL3UsXG4gIHJ1Ynk6IC9eW2Etel9dW0EtWmEtejAtOV9dKiQvdSxcbiAgdHlwZXNjcmlwdDogL15bQS1aYS16XyRdW0EtWmEtejAtOV8kXSokL3UsXG4gIHdhc206IC9eKD86WyRfXXxcXHB7WElEX1N0YXJ0fSkoPzpbJF9dfFxccHtYSURfQ29udGludWV9KSokL3Vcbn1cblxuLyoqIEB0eXBlIHtSZWNvcmQ8RXhjbHVkZTxpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5CYWNrZW5kTGFuZ3VhZ2UsIFwiaW9zXCI+LCBTZXQ8c3RyaW5nPj59ICovXG5jb25zdCByZXNlcnZlZFdvcmRzID0ge1xuICBhbmRyb2lkOiBuZXcgU2V0KFtcbiAgICBcImFzXCIsIFwiYnJlYWtcIiwgXCJjbGFzc1wiLCBcImNvbnRpbnVlXCIsIFwiZG9cIiwgXCJlbHNlXCIsIFwiZmFsc2VcIiwgXCJmb3JcIiwgXCJmdW5cIiwgXCJpZlwiLCBcImluXCIsIFwiaW50ZXJmYWNlXCIsIFwiaXNcIiwgXCJudWxsXCIsXG4gICAgXCJvYmplY3RcIiwgXCJwYWNrYWdlXCIsIFwicmV0dXJuXCIsIFwic3VwZXJcIiwgXCJ0aGlzXCIsIFwidGhyb3dcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidHlwZWFsaWFzXCIsIFwidHlwZW9mXCIsIFwidmFsXCIsIFwidmFyXCIsIFwid2hlblwiLFxuICAgIFwid2hpbGVcIiwgXCJfXCIsIFwibWFpblwiLCBcInByaW50bG5cIiwgXCJMb25nXCIsIFwiQm9vbGVhblwiLCBcIlN0cmluZ1wiLCBcIk1hdGhcIiwgXCJBcml0aG1ldGljRXhjZXB0aW9uXCJcbiAgXSksXG4gIGRhcnQ6IG5ldyBTZXQoW1xuICAgIFwiRnVuY3Rpb25cIiwgXCJOZXZlclwiLCBcIk9iamVjdFwiLCBcIlJhbmdlRXJyb3JcIiwgXCJTdHJpbmdcIiwgXCJhYnN0cmFjdFwiLCBcImFzXCIsIFwiYXNzZXJ0XCIsIFwiYXN5bmNcIiwgXCJhd2FpdFwiLCBcImJhc2VcIixcbiAgICBcImJvb2xcIiwgXCJicmVha1wiLCBcImNhc2VcIiwgXCJjYXRjaFwiLCBcImNsYXNzXCIsIFwiY29uc3RcIiwgXCJjb250aW51ZVwiLCBcImNvdmFyaWFudFwiLCBcImRlZmF1bHRcIiwgXCJkZWZlcnJlZFwiLCBcImRvXCIsXG4gICAgXCJkb3VibGVcIiwgXCJkeW5hbWljXCIsIFwiZWxzZVwiLCBcImVudW1cIiwgXCJleHBvcnRcIiwgXCJleHRlbmRzXCIsIFwiZXh0ZW5zaW9uXCIsIFwiZXh0ZXJuYWxcIiwgXCJmYWN0b3J5XCIsIFwiZmFsc2VcIiwgXCJmaW5hbFwiLFxuICAgIFwiZmluYWxseVwiLCBcImZvclwiLCBcImdldFwiLCBcImhpZGVcIiwgXCJpZlwiLCBcImltcGxlbWVudHNcIiwgXCJpbXBvcnRcIiwgXCJpblwiLCBcImludFwiLCBcImludGVyZmFjZVwiLCBcImlzXCIsIFwibGF0ZVwiLCBcImxpYnJhcnlcIixcbiAgICBcIm1haW5cIiwgXCJtaXhpblwiLCBcIm5hdGl2ZVwiLCBcIm5ld1wiLCBcIm51bGxcIiwgXCJudW1cIiwgXCJvZlwiLCBcIm9uXCIsIFwib3BlcmF0b3JcIiwgXCJwYXJ0XCIsIFwicHJpbnRcIiwgXCJyZXF1aXJlZFwiLCBcInJldGhyb3dcIixcbiAgICBcInJldHVyblwiLCBcInNlYWxlZFwiLCBcInNldFwiLCBcInNob3dcIiwgXCJzdGF0aWNcIiwgXCJzdXBlclwiLCBcInN3aXRjaFwiLCBcInN5bmNcIiwgXCJ0aGlzXCIsIFwidGhyb3dcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidHlwZWRlZlwiLFxuICAgIFwidmFyXCIsIFwidm9pZFwiLCBcIndoZW5cIiwgXCJ3aGlsZVwiLCBcIndpdGhcIiwgXCJ5aWVsZFwiLCBcIkJpZ0ludFwiLCBcIl9cIlxuICBdKSxcbiAga290bGluOiBuZXcgU2V0KFtcbiAgICBcImFzXCIsIFwiYnJlYWtcIiwgXCJjbGFzc1wiLCBcImNvbnRpbnVlXCIsIFwiZG9cIiwgXCJlbHNlXCIsIFwiZmFsc2VcIiwgXCJmb3JcIiwgXCJmdW5cIiwgXCJpZlwiLCBcImluXCIsIFwiaW50ZXJmYWNlXCIsIFwiaXNcIiwgXCJudWxsXCIsXG4gICAgXCJvYmplY3RcIiwgXCJwYWNrYWdlXCIsIFwicmV0dXJuXCIsIFwic3VwZXJcIiwgXCJ0aGlzXCIsIFwidGhyb3dcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidHlwZWFsaWFzXCIsIFwidHlwZW9mXCIsIFwidmFsXCIsIFwidmFyXCIsIFwid2hlblwiLFxuICAgIFwid2hpbGVcIiwgXCJfXCIsIFwibWFpblwiLCBcInByaW50bG5cIiwgXCJMb25nXCIsIFwiQm9vbGVhblwiLCBcIlN0cmluZ1wiLCBcIk1hdGhcIiwgXCJBcml0aG1ldGljRXhjZXB0aW9uXCJcbiAgXSksXG4gIHN3aWZ0OiBuZXcgU2V0KFtcbiAgICBcIkFueVwiLCBcIlNlbGZcIiwgXCJUeXBlXCIsIFwiUHJvdG9jb2xcIiwgXCJhY3RvclwiLCBcImFueVwiLCBcImFzXCIsIFwiYXNzb2NpYXRlZHR5cGVcIiwgXCJhc3NvY2lhdGl2aXR5XCIsIFwiYXN5bmNcIiwgXCJhd2FpdFwiLCBcImJvcnJvd2luZ1wiLFxuICAgIFwiYnJlYWtcIiwgXCJjYXNlXCIsIFwiY2F0Y2hcIiwgXCJjbGFzc1wiLCBcImNvbnN1bWVcIiwgXCJjb25zdW1pbmdcIiwgXCJjb250aW51ZVwiLCBcImNvbnZlbmllbmNlXCIsIFwiY29weVwiLCBcImRlZmF1bHRcIiwgXCJkZWZlclwiLCBcImRlaW5pdFwiLFxuICAgIFwiZGlkU2V0XCIsIFwiZGlzdHJpYnV0ZWRcIiwgXCJkb1wiLCBcImR5bmFtaWNcIiwgXCJlbHNlXCIsIFwiZW51bVwiLCBcImV4dGVuc2lvblwiLCBcImZhbGx0aHJvdWdoXCIsIFwiZmFsc2VcIiwgXCJmaWxlcHJpdmF0ZVwiLCBcImZpbmFsXCIsIFwiZm9yXCIsXG4gICAgXCJmdW5jXCIsIFwiZ2V0XCIsIFwiZ3VhcmRcIiwgXCJpZlwiLCBcImltcG9ydFwiLCBcImluXCIsIFwiaW5kaXJlY3RcIiwgXCJpbmZpeFwiLCBcImluaXRcIiwgXCJpbm91dFwiLCBcImludGVybmFsXCIsIFwiaXNcIiwgXCJpc29sYXRlZFwiLCBcImxhenlcIixcbiAgICBcImxldFwiLCBcIm1hY3JvXCIsIFwibXV0YXRpbmdcIiwgXCJuaWxcIiwgXCJub25pc29sYXRlZFwiLCBcIm5vbm11dGF0aW5nXCIsIFwib3BlblwiLCBcIm9wZXJhdG9yXCIsIFwib3B0aW9uYWxcIiwgXCJvdmVycmlkZVwiLCBcInBhY2thZ2VcIixcbiAgICBcInBvc3RmaXhcIiwgXCJwcmVjZWRlbmNlXCIsIFwicHJlY2VkZW5jZWdyb3VwXCIsIFwicHJlZml4XCIsIFwicHJpdmF0ZVwiLCBcInByb3RvY29sXCIsIFwicHVibGljXCIsIFwicmVwZWF0XCIsIFwicmVxdWlyZWRcIiwgXCJyZXRocm93c1wiLCBcInJldHVyblwiLFxuICAgIFwic2FmZVwiLCBcInNlbGZcIiwgXCJzZW5kaW5nXCIsIFwic2V0XCIsIFwic29tZVwiLCBcInN0YXRpY1wiLCBcInN0cnVjdFwiLCBcInN1YnNjcmlwdFwiLCBcInN1cGVyXCIsIFwic3dpdGNoXCIsIFwidGhyb3dzXCIsIFwidHJ1ZVwiLCBcInRyeVwiLFxuICAgIFwidHlwZWFsaWFzXCIsIFwidW5vd25lZFwiLCBcInVuc2FmZVwiLCBcInZhclwiLCBcIndlYWtcIiwgXCJ3aGVyZVwiLCBcIndoaWxlXCIsIFwid2lsbFNldFwiLCBcInlpZWxkXCIsIFwiX1wiLCBcIkJvb2xcIiwgXCJJbnRcIiwgXCJJbnQ2NFwiLCBcIlN0cmluZ1wiLFxuICAgIFwiU3dpZnRcIiwgXCJtYWluXCIsIFwicHJpbnRcIlxuICBdKSxcbiAgcnVzdDogbmV3IFNldChbXG4gICAgXCJhc1wiLCBcImFzeW5jXCIsIFwiYXdhaXRcIiwgXCJicmVha1wiLCBcImNvbnN0XCIsIFwiY29udGludWVcIiwgXCJjcmF0ZVwiLCBcImR5blwiLCBcImVsc2VcIiwgXCJlbnVtXCIsIFwiZXh0ZXJuXCIsIFwiZmFsc2VcIiwgXCJmblwiLCBcImZvclwiLCBcImlmXCIsIFwiaW1wbFwiLCBcImluXCIsXG4gICAgXCJsZXRcIiwgXCJsb29wXCIsIFwibWF0Y2hcIiwgXCJtb2RcIiwgXCJtb3ZlXCIsIFwibXV0XCIsIFwicHViXCIsIFwicmVmXCIsIFwicmV0dXJuXCIsIFwic2VsZlwiLCBcIlNlbGZcIiwgXCJzdGF0aWNcIiwgXCJzdHJ1Y3RcIiwgXCJzdXBlclwiLCBcInRyYWl0XCIsIFwidHJ1ZVwiLCBcInR5cGVcIixcbiAgICBcInVuc2FmZVwiLCBcInVzZVwiLCBcIndoZXJlXCIsIFwid2hpbGVcIiwgXCJhYnN0cmFjdFwiLCBcImJlY29tZVwiLCBcImJveFwiLCBcImRvXCIsIFwiZmluYWxcIiwgXCJtYWNyb1wiLCBcIm92ZXJyaWRlXCIsIFwicHJpdlwiLCBcInR5cGVvZlwiLCBcInVuc2l6ZWRcIiwgXCJ2aXJ0dWFsXCIsXG4gICAgXCJ5aWVsZFwiLCBcInRyeVwiLCBcInVuaW9uXCIsIFwiX1wiLCBcIm1haW5cIiwgXCJTdHJpbmdcIiwgXCJzdGRcIiwgXCJpNjRcIiwgXCJib29sXCJcbiAgXSksXG4gIHppZzogbmV3IFNldChbXG4gICAgXCJhZGRyc3BhY2VcIiwgXCJhbGlnblwiLCBcImFsbG93emVyb1wiLCBcImFuZFwiLCBcImFueWVycm9yXCIsIFwiYW55ZnJhbWVcIiwgXCJhbnlvcGFxdWVcIiwgXCJhbnl0eXBlXCIsIFwiYXNtXCIsIFwiYXN5bmNcIiwgXCJhd2FpdFwiLCBcImJyZWFrXCIsIFwiY2FsbGNvbnZcIixcbiAgICBcImNhdGNoXCIsIFwiY29tcHRpbWVcIiwgXCJjb25zdFwiLCBcImNvbnRpbnVlXCIsIFwiZGVmZXJcIiwgXCJlbHNlXCIsIFwiZW51bVwiLCBcImVycmRlZmVyXCIsIFwiZXJyb3JcIiwgXCJleHBvcnRcIiwgXCJleHRlcm5cIiwgXCJmYWxzZVwiLFxuICAgIFwiZm5cIiwgXCJmb3JcIiwgXCJpZlwiLCBcImlubGluZVwiLCBcImxpbmtzZWN0aW9uXCIsIFwibm9hbGlhc1wiLCBcIm5vaW5saW5lXCIsIFwibm9zdXNwZW5kXCIsIFwibnVsbFwiLCBcIm9wYXF1ZVwiLCBcIm9yXCIsIFwib3JlbHNlXCIsXG4gICAgXCJwYWNrZWRcIiwgXCJwdWJcIiwgXCJyZXN1bWVcIiwgXCJyZXR1cm5cIiwgXCJzdHJ1Y3RcIiwgXCJzdXNwZW5kXCIsIFwic3dpdGNoXCIsIFwidGVzdFwiLCBcInRocmVhZGxvY2FsXCIsIFwidHJ1ZVwiLCBcInRyeVwiLCBcInVuaW9uXCIsXG4gICAgXCJ1bnJlYWNoYWJsZVwiLCBcInVzaW5nbmFtZXNwYWNlXCIsIFwidmFyXCIsIFwidm9sYXRpbGVcIiwgXCJ3aGlsZVwiLCBcIl9cIiwgXCJtYWluXCIsIFwic3RkXCIsIFwiYm9vbFwiLCBcImNfY2hhclwiLCBcImNfaW50XCIsIFwiY19sb25nXCIsXG4gICAgXCJjX2xvbmdkb3VibGVcIiwgXCJjX2xvbmdsb25nXCIsIFwiY19zaG9ydFwiLCBcImNfdWludFwiLCBcImNfdWxvbmdcIiwgXCJjX3Vsb25nbG9uZ1wiLCBcImNfdXNob3J0XCIsIFwiY29tcHRpbWVfZmxvYXRcIixcbiAgICBcImNvbXB0aW1lX2ludFwiLCBcImYxNlwiLCBcImYzMlwiLCBcImY2NFwiLCBcImY4MFwiLCBcImYxMjhcIiwgXCJpc2l6ZVwiLCBcIm5vcmV0dXJuXCIsIFwidHlwZVwiLCBcInVuZGVmaW5lZFwiLCBcInVzaXplXCIsIFwidm9pZFwiLFxuICAgIFwic2VtYW50aWZvbGRfYXJlbmFcIiwgXCJzZW1hbnRpZm9sZF9mYWlsXCIsIFwic2VtYW50aWZvbGRfaW50ZWdlcl9hZGRcIiwgXCJzZW1hbnRpZm9sZF9pbnRlZ2VyX3N1YnRyYWN0XCIsXG4gICAgXCJzZW1hbnRpZm9sZF9pbnRlZ2VyX211bHRpcGx5XCIsIFwic2VtYW50aWZvbGRfaW50ZWdlcl9uZWdhdGVcIiwgXCJzZW1hbnRpZm9sZF9zdHJpbmdfY29uY2F0XCIsIFwic2VtYW50aWZvbGRfc3RyaW5nX2VxdWFsXCIsXG4gICAgXCJzZW1hbnRpZm9sZF9zdHJpbmdfbm90X2VxdWFsXCIsIFwic2VtYW50aWZvbGRfcHJpbnRfaW50ZWdlclwiLCBcInNlbWFudGlmb2xkX3ByaW50X2Jvb2xlYW5cIiwgXCJzZW1hbnRpZm9sZF9wcmludF9zdHJpbmdcIlxuICBdKSxcbiAgY3BwOiBuZXcgU2V0KFtcbiAgICBcImFsaWduYXNcIiwgXCJhbGlnbm9mXCIsIFwiYW5kXCIsIFwiYW5kX2VxXCIsIFwiYXNtXCIsIFwiYXV0b1wiLCBcImJpdGFuZFwiLCBcImJpdG9yXCIsIFwiYm9vbFwiLCBcImJyZWFrXCIsIFwiY2FzZVwiLCBcImNhdGNoXCIsIFwiY2hhclwiLCBcImNoYXI4X3RcIiwgXCJjaGFyMTZfdFwiLCBcImNoYXIzMl90XCIsIFwiY2xhc3NcIiwgXCJjb21wbFwiLCBcImNvbmNlcHRcIiwgXCJjb25zdFwiLCBcImNvbnN0ZXZhbFwiLCBcImNvbnN0ZXhwclwiLCBcImNvbnN0aW5pdFwiLCBcImNvbnN0X2Nhc3RcIiwgXCJjb250aW51ZVwiLCBcImNvX2F3YWl0XCIsIFwiY29fcmV0dXJuXCIsIFwiY29feWllbGRcIiwgXCJkZWNsdHlwZVwiLCBcImRlZmF1bHRcIiwgXCJkZWxldGVcIiwgXCJkb1wiLCBcImRvdWJsZVwiLCBcImR5bmFtaWNfY2FzdFwiLCBcImVsc2VcIiwgXCJlbnVtXCIsIFwiZXhwbGljaXRcIiwgXCJleHBvcnRcIiwgXCJleHRlcm5cIiwgXCJmYWxzZVwiLCBcImZsb2F0XCIsIFwiZm9yXCIsIFwiZnJpZW5kXCIsIFwiZ290b1wiLCBcImlmXCIsIFwiaW5saW5lXCIsIFwiaW50XCIsIFwibG9uZ1wiLCBcIm11dGFibGVcIiwgXCJuYW1lc3BhY2VcIiwgXCJuZXdcIiwgXCJub2V4Y2VwdFwiLCBcIm5vdFwiLCBcIm5vdF9lcVwiLCBcIm51bGxwdHJcIiwgXCJvcGVyYXRvclwiLCBcIm9yXCIsIFwib3JfZXFcIiwgXCJwcml2YXRlXCIsIFwicHJvdGVjdGVkXCIsIFwicHVibGljXCIsIFwicmVnaXN0ZXJcIiwgXCJyZWludGVycHJldF9jYXN0XCIsIFwicmVxdWlyZXNcIiwgXCJyZXR1cm5cIiwgXCJzaG9ydFwiLCBcInNpZ25lZFwiLCBcInNpemVvZlwiLCBcInN0YXRpY1wiLCBcInN0YXRpY19hc3NlcnRcIiwgXCJzdGF0aWNfY2FzdFwiLCBcInN0cnVjdFwiLCBcInN3aXRjaFwiLCBcInRlbXBsYXRlXCIsIFwidGhpc1wiLCBcInRocmVhZF9sb2NhbFwiLCBcInRocm93XCIsIFwidHJ1ZVwiLCBcInRyeVwiLCBcInR5cGVkZWZcIiwgXCJ0eXBlaWRcIiwgXCJ0eXBlbmFtZVwiLCBcInVuaW9uXCIsIFwidW5zaWduZWRcIiwgXCJ1c2luZ1wiLCBcInZpcnR1YWxcIiwgXCJ2b2lkXCIsIFwidm9sYXRpbGVcIiwgXCJ3Y2hhcl90XCIsIFwid2hpbGVcIiwgXCJ4b3JcIiwgXCJ4b3JfZXFcIiwgXCJzdGRcIiwgXCJzdHJpbmdcIiwgXCJudW1lcmljX2xpbWl0c1wiLFxuICAgIC8vIFRoZSBxdWFsaWZpZWQgbGlic3RkYysrIDxzdHJpbmc+IGluY2x1ZGUgY2hhaW4gYWxzbyBleHBvc2VzIHRoZXNlIGdsb2JhbCBuYW1lcy5cbiAgICBcIldFT0ZcIiwgXCJ3aW50X3RcIlxuICBdKSxcbiAgYzogbmV3IFNldChbXG4gICAgXCJhdXRvXCIsIFwiYnJlYWtcIiwgXCJjYXNlXCIsIFwiY2hhclwiLCBcImNvbnN0XCIsIFwiY29udGludWVcIiwgXCJkZWZhdWx0XCIsIFwiZG9cIiwgXCJkb3VibGVcIiwgXCJlbHNlXCIsIFwiZW51bVwiLCBcImV4dGVyblwiLFxuICAgIFwiZmxvYXRcIiwgXCJmb3JcIiwgXCJnb3RvXCIsIFwiaWZcIiwgXCJpbmxpbmVcIiwgXCJpbnRcIiwgXCJsb25nXCIsIFwicmVnaXN0ZXJcIiwgXCJyZXN0cmljdFwiLCBcInJldHVyblwiLCBcInNob3J0XCIsIFwic2lnbmVkXCIsXG4gICAgXCJzaXplb2ZcIiwgXCJzdGF0aWNcIiwgXCJzdHJ1Y3RcIiwgXCJzd2l0Y2hcIiwgXCJ0eXBlZGVmXCIsIFwidW5pb25cIiwgXCJ1bnNpZ25lZFwiLCBcInZvaWRcIiwgXCJ2b2xhdGlsZVwiLCBcIndoaWxlXCIsXG4gICAgXCJib29sXCIsIFwidHJ1ZVwiLCBcImZhbHNlXCIsIFwiVFJVRVwiLCBcIkZBTFNFXCIsIFwiaW50NjRfdFwiLCBcInVpbnQ2NF90XCIsIFwic2l6ZV90XCIsIFwicHRyZGlmZl90XCIsIFwibWFpblwiLCBcIk5VTExcIiwgXCJJTlQ2NF9DXCIsIFwiVUlOVDY0X0NcIixcbiAgICBcIklOVDY0X01JTlwiLCBcIklOVDY0X01BWFwiLCBcIlBUUkRJRkZfTUFYXCIsIFwiQ0hBUl9CSVRcIiwgXCJzdGRpblwiLCBcInN0ZG91dFwiLCBcInN0ZGVyclwiLCBcIm1hbGxvY1wiLCBcImZyZWVcIiwgXCJleGl0XCIsXG4gICAgXCJmd3JpdGVcIiwgXCJmZmx1c2hcIiwgXCJtZW1jcHlcIiwgXCJtZW1jbXBcIiwgXCJGSUxFXCIsIFwiZnBvc190XCIsIFwiZGl2X3RcIiwgXCJsZGl2X3RcIiwgXCJsbGRpdl90XCIsIFwid2NoYXJfdFwiLCBcIm1heF9hbGlnbl90XCIsXG4gICAgXCJvZmZzZXRvZlwiLCBcImFsaWduYXNcIiwgXCJhbGlnbm9mXCIsIFwibm9yZXR1cm5cIiwgXCJ0cnVlXCIsIFwiZmFsc2VcIiwgXCJhc3NlcnRcIiwgXCJzdGF0aWNfYXNzZXJ0XCIsIFwiZXJybm9cIixcbiAgICBcIkVPRlwiLCBcIkJVRlNJWlwiLCBcIkZPUEVOX01BWFwiLCBcIkZJTEVOQU1FX01BWFwiLCBcIkxfdG1wbmFtXCIsIFwiU0VFS19DVVJcIiwgXCJTRUVLX0VORFwiLCBcIlNFRUtfU0VUXCIsIFwiVE1QX01BWFwiLFxuICAgIFwiRVhJVF9GQUlMVVJFXCIsIFwiRVhJVF9TVUNDRVNTXCIsIFwiTUJfQ1VSX01BWFwiLCBcIk1CX0xFTl9NQVhcIiwgXCJSQU5EX01BWFwiLFxuICAgIFwicmVtb3ZlXCIsIFwicmVuYW1lXCIsIFwidG1wZmlsZVwiLCBcInRtcG5hbVwiLCBcImZjbG9zZVwiLCBcImZvcGVuXCIsIFwiZnJlb3BlblwiLCBcInNldGJ1ZlwiLCBcInNldHZidWZcIixcbiAgICBcImZwcmludGZcIiwgXCJmc2NhbmZcIiwgXCJwcmludGZcIiwgXCJzY2FuZlwiLCBcInNucHJpbnRmXCIsIFwic3ByaW50ZlwiLCBcInNzY2FuZlwiLCBcInZmcHJpbnRmXCIsIFwidmZzY2FuZlwiLCBcInZwcmludGZcIixcbiAgICBcInZzY2FuZlwiLCBcInZzbnByaW50ZlwiLCBcInZzcHJpbnRmXCIsIFwidnNzY2FuZlwiLCBcImZnZXRjXCIsIFwiZmdldHNcIiwgXCJmcHV0Y1wiLCBcImZwdXRzXCIsIFwiZ2V0Y1wiLCBcImdldGNoYXJcIixcbiAgICBcInB1dGNcIiwgXCJwdXRjaGFyXCIsIFwicHV0c1wiLCBcInVuZ2V0Y1wiLCBcImZyZWFkXCIsIFwiZmdldHBvc1wiLCBcImZzZWVrXCIsIFwiZnNldHBvc1wiLCBcImZ0ZWxsXCIsIFwicmV3aW5kXCIsIFwiY2xlYXJlcnJcIixcbiAgICBcImZlb2ZcIiwgXCJmZXJyb3JcIiwgXCJwZXJyb3JcIiwgXCJhdG9mXCIsIFwiYXRvaVwiLCBcImF0b2xcIiwgXCJhdG9sbFwiLCBcInN0cnRvZFwiLCBcInN0cnRvZlwiLCBcInN0cnRvbGRcIiwgXCJzdHJ0b2xcIixcbiAgICBcInN0cnRvbGxcIiwgXCJzdHJ0b3VsXCIsIFwic3RydG91bGxcIiwgXCJyYW5kXCIsIFwic3JhbmRcIiwgXCJhbGlnbmVkX2FsbG9jXCIsIFwiY2FsbG9jXCIsIFwicmVhbGxvY1wiLCBcImFib3J0XCIsIFwiYXRleGl0XCIsXG4gICAgXCJhdF9xdWlja19leGl0XCIsIFwicXVpY2tfZXhpdFwiLCBcImdldGVudlwiLCBcInN5c3RlbVwiLCBcImJzZWFyY2hcIiwgXCJxc29ydFwiLCBcImFic1wiLCBcImxhYnNcIiwgXCJsbGFic1wiLCBcImRpdlwiLCBcImxkaXZcIixcbiAgICBcImxsZGl2XCIsIFwibWJsZW5cIiwgXCJtYnRvd2NcIiwgXCJ3Y3RvbWJcIiwgXCJtYnN0b3djc1wiLCBcIndjc3RvbWJzXCIsIFwibWVtbW92ZVwiLCBcInN0cmNweVwiLCBcInN0cm5jcHlcIiwgXCJzdHJjYXRcIixcbiAgICBcInN0cm5jYXRcIiwgXCJzdHJjbXBcIiwgXCJzdHJjb2xsXCIsIFwic3RybmNtcFwiLCBcInN0cnhmcm1cIiwgXCJtZW1jaHJcIiwgXCJzdHJjaHJcIiwgXCJzdHJjc3BuXCIsIFwic3RycGJya1wiLCBcInN0cnJjaHJcIixcbiAgICBcInN0cnNwblwiLCBcInN0cnN0clwiLCBcInN0cnRva1wiLCBcIm1lbXNldFwiLCBcInN0cmVycm9yXCIsIFwic3RybGVuXCJcbiAgXSksXG4gIGNzaGFycDogbmV3IFNldChbXG4gICAgXCJfX2FyZ2xpc3RcIiwgXCJfX21ha2VyZWZcIiwgXCJfX3JlZnR5cGVcIiwgXCJfX3JlZnZhbHVlXCIsIFwiYWJzdHJhY3RcIiwgXCJhZGRcIiwgXCJhbGlhc1wiLCBcImFsbG93c1wiLCBcImFuZFwiLCBcImFzXCIsXG4gICAgXCJhc2NlbmRpbmdcIiwgXCJhc3luY1wiLCBcImF3YWl0XCIsIFwiYmFzZVwiLCBcImJvb2xcIiwgXCJicmVha1wiLFxuICAgIFwiYnlcIiwgXCJieXRlXCIsIFwiY2FzZVwiLCBcImNhdGNoXCIsIFwiY2hhclwiLCBcImNoZWNrZWRcIiwgXCJjbGFzc1wiLCBcImNvbnN0XCIsIFwiY29udGludWVcIiwgXCJkZWNpbWFsXCIsIFwiZGVmYXVsdFwiLFxuICAgIFwiZGVsZWdhdGVcIiwgXCJkZXNjZW5kaW5nXCIsIFwiZG9cIiwgXCJkb3VibGVcIiwgXCJkeW5hbWljXCIsIFwiZWxzZVwiLCBcImVudW1cIiwgXCJlcXVhbHNcIiwgXCJldmVudFwiLCBcImV4cGxpY2l0XCIsIFwiZXh0ZW5zaW9uXCIsIFwiZXh0ZXJuXCIsXG4gICAgXCJmYWxzZVwiLCBcImZpZWxkXCIsIFwiZmlsZVwiLCBcImZpbmFsbHlcIiwgXCJmaXhlZFwiLCBcImZsb2F0XCIsIFwiZm9yXCIsIFwiZm9yZWFjaFwiLCBcImZyb21cIiwgXCJnZXRcIiwgXCJnbG9iYWxcIiwgXCJnb3RvXCIsXG4gICAgXCJncm91cFwiLCBcImlmXCIsIFwiaW1wbGljaXRcIiwgXCJpblwiLCBcImluaXRcIiwgXCJpbnRcIiwgXCJpbnRlcmZhY2VcIiwgXCJpbnRlcm5hbFwiLCBcImludG9cIiwgXCJpc1wiLCBcImpvaW5cIiwgXCJsZXRcIiwgXCJsb2NrXCIsXG4gICAgXCJsb25nXCIsIFwibWFuYWdlZFwiLCBcIm5hbWVvZlwiLCBcIm5hbWVzcGFjZVwiLCBcIm5ld1wiLCBcIm5pbnRcIiwgXCJub3RcIiwgXCJub3RudWxsXCIsIFwibnVsbFwiLCBcIm51aW50XCIsIFwib2JqZWN0XCIsIFwib25cIixcbiAgICBcIm9wZXJhdG9yXCIsIFwib3JcIiwgXCJvcmRlcmJ5XCIsIFwib3V0XCIsIFwib3ZlcnJpZGVcIiwgXCJwYXJhbXNcIiwgXCJwYXJ0aWFsXCIsIFwicHJpdmF0ZVwiLCBcInByb3RlY3RlZFwiLCBcInB1YmxpY1wiLCBcInJlYWRvbmx5XCIsXG4gICAgXCJyZWNvcmRcIiwgXCJyZWZcIiwgXCJyZW1vdmVcIiwgXCJyZXF1aXJlZFwiLCBcInJldHVyblwiLCBcInNieXRlXCIsIFwic2NvcGVkXCIsIFwic2VhbGVkXCIsIFwic2VsZWN0XCIsIFwic2V0XCIsIFwic2hvcnRcIiwgXCJzaXplb2ZcIixcbiAgICBcInN0YWNrYWxsb2NcIiwgXCJzdGF0aWNcIiwgXCJzdHJpbmdcIiwgXCJzdHJ1Y3RcIiwgXCJzd2l0Y2hcIiwgXCJ0aGlzXCIsIFwidGhyb3dcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidHlwZW9mXCIsIFwidWludFwiLCBcInVsb25nXCIsXG4gICAgXCJ1bmNoZWNrZWRcIiwgXCJ1bm1hbmFnZWRcIiwgXCJ1bnNhZmVcIiwgXCJ1c2hvcnRcIiwgXCJ1c2luZ1wiLCBcInZhbHVlXCIsIFwidmFyXCIsIFwidmlydHVhbFwiLCBcInZvaWRcIiwgXCJ2b2xhdGlsZVwiLCBcIndoZW5cIixcbiAgICBcIndoZXJlXCIsIFwid2hpbGVcIiwgXCJ3aXRoXCIsIFwieWllbGRcIlxuICBdKSxcbiAgZ286IG5ldyBTZXQoW1xuICAgIFwiX1wiLCBcImJyZWFrXCIsIFwiZGVmYXVsdFwiLCBcImZ1bmNcIiwgXCJpbnRlcmZhY2VcIiwgXCJzZWxlY3RcIiwgXCJjYXNlXCIsIFwiZGVmZXJcIiwgXCJnb1wiLCBcIm1hcFwiLCBcInN0cnVjdFwiLCBcImNoYW5cIixcbiAgICBcImVsc2VcIiwgXCJnb3RvXCIsIFwicGFja2FnZVwiLCBcInN3aXRjaFwiLCBcImNvbnN0XCIsIFwiZmFsbHRocm91Z2hcIiwgXCJpZlwiLCBcInJhbmdlXCIsIFwidHlwZVwiLCBcImNvbnRpbnVlXCIsIFwiZm9yXCIsXG4gICAgXCJpbXBvcnRcIiwgXCJyZXR1cm5cIiwgXCJ2YXJcIlxuICBdKSxcbiAgamF2YTogbmV3IFNldChbXG4gICAgXCJfXCIsIFwiYWJzdHJhY3RcIiwgXCJhc3NlcnRcIiwgXCJib29sZWFuXCIsIFwiYnJlYWtcIiwgXCJieXRlXCIsIFwiY2FzZVwiLCBcImNhdGNoXCIsIFwiY2hhclwiLCBcImNsYXNzXCIsIFwiY29uc3RcIiwgXCJjb250aW51ZVwiLFxuICAgIFwiZGVmYXVsdFwiLCBcImRvXCIsIFwiZG91YmxlXCIsIFwiZWxzZVwiLCBcImVudW1cIiwgXCJleHBvcnRzXCIsIFwiZXh0ZW5kc1wiLCBcImZhbHNlXCIsIFwiZmluYWxcIiwgXCJmaW5hbGx5XCIsIFwiZmxvYXRcIiwgXCJmb3JcIixcbiAgICBcImdvdG9cIiwgXCJpZlwiLCBcImltcGxlbWVudHNcIiwgXCJpbXBvcnRcIiwgXCJpbnN0YW5jZW9mXCIsIFwiaW50XCIsIFwiaW50ZXJmYWNlXCIsIFwibG9uZ1wiLCBcIm1vZHVsZVwiLCBcIm5hdGl2ZVwiLCBcIm5ld1wiLFxuICAgIFwibm9uLXNlYWxlZFwiLCBcIm51bGxcIiwgXCJvcGVuXCIsIFwib3BlbnNcIiwgXCJwYWNrYWdlXCIsIFwicGVybWl0c1wiLCBcInByaXZhdGVcIiwgXCJwcm90ZWN0ZWRcIiwgXCJwcm92aWRlc1wiLCBcInB1YmxpY1wiLFxuICAgIFwicmVjb3JkXCIsIFwicmVxdWlyZXNcIiwgXCJyZXR1cm5cIiwgXCJzZWFsZWRcIiwgXCJzaG9ydFwiLCBcInN0YXRpY1wiLCBcInN0cmljdGZwXCIsIFwic3VwZXJcIiwgXCJzd2l0Y2hcIiwgXCJzeW5jaHJvbml6ZWRcIixcbiAgICBcInRoaXNcIiwgXCJ0aHJvd1wiLCBcInRocm93c1wiLCBcInRvXCIsIFwidHJhbnNpZW50XCIsIFwidHJhbnNpdGl2ZVwiLCBcInRydWVcIiwgXCJ0cnlcIiwgXCJ1c2VzXCIsIFwidmFyXCIsIFwidm9pZFwiLCBcInZvbGF0aWxlXCIsXG4gICAgXCJ3aGVuXCIsIFwid2hpbGVcIiwgXCJ3aXRoXCIsIFwieWllbGRcIlxuICBdKSxcbiAgamF2YXNjcmlwdDogbmV3IFNldChbXG4gICAgXCJhd2FpdFwiLCBcImJyZWFrXCIsIFwiY2FzZVwiLCBcImNhdGNoXCIsIFwiY2xhc3NcIiwgXCJjb25zdFwiLCBcImNvbnRpbnVlXCIsIFwiZGVidWdnZXJcIiwgXCJkZWZhdWx0XCIsIFwiZGVsZXRlXCIsIFwiZG9cIiwgXCJlbHNlXCIsXG4gICAgXCJlbnVtXCIsIFwiZXhwb3J0XCIsIFwiZXh0ZW5kc1wiLCBcImZhbHNlXCIsIFwiZmluYWxseVwiLCBcImZvclwiLCBcImZ1bmN0aW9uXCIsIFwiaWZcIiwgXCJpbXBsZW1lbnRzXCIsIFwiaW1wb3J0XCIsIFwiaW5cIixcbiAgICBcImluc3RhbmNlb2ZcIiwgXCJpbnRlcmZhY2VcIiwgXCJsZXRcIiwgXCJuZXdcIiwgXCJudWxsXCIsIFwicGFja2FnZVwiLCBcInByaXZhdGVcIiwgXCJwcm90ZWN0ZWRcIiwgXCJwdWJsaWNcIiwgXCJyZXR1cm5cIiwgXCJzdGF0aWNcIixcbiAgICBcInN1cGVyXCIsIFwic3dpdGNoXCIsIFwidGhpc1wiLCBcInRocm93XCIsIFwidHJ1ZVwiLCBcInRyeVwiLCBcInR5cGVvZlwiLCBcInZhclwiLCBcInZvaWRcIiwgXCJ3aGlsZVwiLCBcIndpdGhcIiwgXCJ5aWVsZFwiXG4gIF0pLFxuICBwaHA6IG5ldyBTZXQoW1xuICAgIFwiX19oYWx0X2NvbXBpbGVyXCIsIFwiYWJzdHJhY3RcIiwgXCJhbmRcIiwgXCJhcnJheVwiLCBcImFzXCIsIFwiYnJlYWtcIiwgXCJjYWxsYWJsZVwiLCBcImNhc2VcIiwgXCJjYXRjaFwiLCBcImNsYXNzXCIsIFwiY2xvbmVcIixcbiAgICBcImNvbnN0XCIsIFwiY29udGludWVcIiwgXCJkZWNsYXJlXCIsIFwiZGVmYXVsdFwiLCBcImRpZVwiLCBcImRvXCIsIFwiZWNob1wiLCBcImVsc2VcIiwgXCJlbHNlaWZcIiwgXCJlbXB0eVwiLCBcImVuZGRlY2xhcmVcIixcbiAgICBcImVuZGZvclwiLCBcImVuZGZvcmVhY2hcIiwgXCJlbmRpZlwiLCBcImVuZHN3aXRjaFwiLCBcImVuZHdoaWxlXCIsIFwiZW51bVwiLCBcImV2YWxcIiwgXCJleGl0XCIsIFwiZXh0ZW5kc1wiLCBcImZhbHNlXCIsIFwiZmluYWxcIixcbiAgICBcImZpbmFsbHlcIiwgXCJmblwiLCBcImZvclwiLCBcImZvcmVhY2hcIiwgXCJmcm9tXCIsIFwiZnVuY3Rpb25cIiwgXCJnbG9iYWxcIiwgXCJnb3RvXCIsIFwiaWZcIiwgXCJpbXBsZW1lbnRzXCIsIFwiaW5jbHVkZVwiLFxuICAgIFwiaW5jbHVkZV9vbmNlXCIsIFwiaW5zdGFuY2VvZlwiLCBcImluc3RlYWRvZlwiLCBcImludGVyZmFjZVwiLCBcImlzc2V0XCIsIFwiaXRlcmFibGVcIiwgXCJsaXN0XCIsIFwibWF0Y2hcIiwgXCJtaXhlZFwiLCBcIm5hbWVzcGFjZVwiLFxuICAgIFwibmV2ZXJcIiwgXCJuZXdcIiwgXCJudWxsXCIsIFwib2JqZWN0XCIsIFwib3JcIiwgXCJwYXJlbnRcIiwgXCJwcmludFwiLCBcInByaXZhdGVcIiwgXCJwcm90ZWN0ZWRcIiwgXCJwdWJsaWNcIiwgXCJyZWFkb25seVwiLCBcInJlcXVpcmVcIixcbiAgICBcInJlcXVpcmVfb25jZVwiLCBcInJldHVyblwiLCBcInNlbGZcIiwgXCJzdGF0aWNcIiwgXCJzd2l0Y2hcIiwgXCJ0aHJvd1wiLCBcInRyYWl0XCIsIFwidHJ1ZVwiLCBcInRyeVwiLCBcInVuc2V0XCIsIFwidXNlXCIsIFwidmFyXCIsXG4gICAgXCJ2b2lkXCIsIFwid2hpbGVcIiwgXCJ4b3JcIiwgXCJ5aWVsZFwiXG4gIF0pLFxuICBweXRob246IG5ldyBTZXQoW1xuICAgIFwiRmFsc2VcIiwgXCJOb25lXCIsIFwiVHJ1ZVwiLCBcImFuZFwiLCBcImFzXCIsIFwiYXNzZXJ0XCIsIFwiYXN5bmNcIiwgXCJhd2FpdFwiLCBcImJvb2xcIiwgXCJicmVha1wiLCBcImNhc2VcIiwgXCJjbGFzc1wiLFxuICAgIFwiY29udGludWVcIiwgXCJkZWZcIiwgXCJkZWxcIiwgXCJlbGlmXCIsIFwiZWxzZVwiLCBcImV4Y2VwdFwiLCBcImV4ZWNcIiwgXCJmaW5hbGx5XCIsIFwiZm9yXCIsIFwiZnJvbVwiLCBcImdsb2JhbFwiLCBcImlmXCIsXG4gICAgXCJpbXBvcnRcIiwgXCJpblwiLCBcImludFwiLCBcImlzXCIsIFwibGFtYmRhXCIsIFwibWF0Y2hcIiwgXCJub25sb2NhbFwiLCBcIm5vdFwiLCBcIm9yXCIsIFwicGFzc1wiLCBcInByaW50XCIsXG4gICAgXCJyYWlzZVwiLCBcInJldHVyblwiLCBcInN0clwiLCBcInRyeVwiLCBcInR5cGVcIiwgXCJ3aGlsZVwiLCBcIndpdGhcIiwgXCJ5aWVsZFwiLCBcIl9cIiwgXCJfX2RlYnVnX19cIlxuICBdKSxcbiAgcnVieTogbmV3IFNldChbXG4gICAgXCJCRUdJTlwiLCBcIkVORFwiLCBcIl9fRU5DT0RJTkdfX1wiLCBcIl9fRU5EX19cIiwgXCJfX0ZJTEVfX1wiLCBcIl9fTElORV9fXCIsIFwiYWxpYXNcIiwgXCJhbmRcIiwgXCJiZWdpblwiLCBcImJyZWFrXCIsIFwiY2FzZVwiLFxuICAgIFwiY2xhc3NcIiwgXCJkZWZcIiwgXCJkZWZpbmVkP1wiLCBcImRvXCIsIFwiZWxzZVwiLCBcImVsc2lmXCIsIFwiZW5kXCIsIFwiZW5zdXJlXCIsIFwiZmFsc2VcIiwgXCJmb3JcIiwgXCJpZlwiLCBcImluXCIsIFwibW9kdWxlXCIsXG4gICAgXCJuZXh0XCIsIFwibmlsXCIsIFwibm90XCIsIFwib3JcIiwgXCJyZWRvXCIsIFwicmVzY3VlXCIsIFwicmV0cnlcIiwgXCJyZXR1cm5cIiwgXCJzZWxmXCIsIFwic3VwZXJcIiwgXCJ0aGVuXCIsIFwidHJ1ZVwiLCBcInVuZGVmXCIsXG4gICAgXCJ1bmxlc3NcIiwgXCJ1bnRpbFwiLCBcIndoZW5cIiwgXCJ3aGlsZVwiLCBcInlpZWxkXCJcbiAgXSksXG4gIHR5cGVzY3JpcHQ6IG5ldyBTZXQoW1xuICAgIFwiYWJzdHJhY3RcIiwgXCJhbnlcIiwgXCJhc1wiLCBcImFzc2VydHNcIiwgXCJhc3luY1wiLCBcImF3YWl0XCIsIFwiYm9vbGVhblwiLCBcImJyZWFrXCIsIFwiY2FzZVwiLCBcImNhdGNoXCIsIFwiY2xhc3NcIiwgXCJjb25zdFwiLFxuICAgIFwiY29uc3RydWN0b3JcIiwgXCJjb250aW51ZVwiLCBcImRlYnVnZ2VyXCIsIFwiZGVjbGFyZVwiLCBcImRlZmF1bHRcIiwgXCJkZWxldGVcIiwgXCJkb1wiLCBcImVsc2VcIiwgXCJlbnVtXCIsIFwiZXhwb3J0XCIsIFwiZXh0ZW5kc1wiLFxuICAgIFwiZmFsc2VcIiwgXCJmaW5hbGx5XCIsIFwiZm9yXCIsIFwiZnJvbVwiLCBcImZ1bmN0aW9uXCIsIFwiZ2V0XCIsIFwiaWZcIiwgXCJpbXBsZW1lbnRzXCIsIFwiaW1wb3J0XCIsIFwiaW5cIiwgXCJpbmZlclwiLCBcImluc3RhbmNlb2ZcIixcbiAgICBcImludGVyZmFjZVwiLCBcImlzXCIsIFwia2V5b2ZcIiwgXCJsZXRcIiwgXCJtb2R1bGVcIiwgXCJuYW1lc3BhY2VcIiwgXCJuZXZlclwiLCBcIm5ld1wiLCBcIm51bGxcIiwgXCJudW1iZXJcIiwgXCJvYmplY3RcIiwgXCJvZlwiLFxuICAgIFwib3ZlcnJpZGVcIiwgXCJwYWNrYWdlXCIsIFwicHJpdmF0ZVwiLCBcInByb3RlY3RlZFwiLCBcInB1YmxpY1wiLCBcInJlYWRvbmx5XCIsIFwicmVxdWlyZVwiLCBcInJldHVyblwiLCBcInNhdGlzZmllc1wiLCBcInNldFwiLFxuICAgIFwic3RhdGljXCIsIFwic3RyaW5nXCIsIFwic3VwZXJcIiwgXCJzd2l0Y2hcIiwgXCJzeW1ib2xcIiwgXCJ0aGlzXCIsIFwidGhyb3dcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidHlwZVwiLCBcInR5cGVvZlwiLCBcInVuZGVmaW5lZFwiLFxuICAgIFwidW5pcXVlXCIsIFwidW5rbm93blwiLCBcInVzaW5nXCIsIFwidmFyXCIsIFwidm9pZFwiLCBcIndoaWxlXCIsIFwid2l0aFwiLCBcInlpZWxkXCJcbiAgXSksXG4gIHdhc206IG5ldyBTZXQoKVxufVxuXG5jb25zdCBwaHBJbnZhbGlkUGFyYW1ldGVyQmluZGluZ3MgPSBuZXcgU2V0KFtcbiAgXCJHTE9CQUxTXCIsIFwiX0NPT0tJRVwiLCBcIl9FTlZcIiwgXCJfRklMRVNcIiwgXCJfR0VUXCIsIFwiX1BPU1RcIiwgXCJfUkVRVUVTVFwiLCBcIl9TRVJWRVJcIiwgXCJfU0VTU0lPTlwiLCBcInRoaXNcIlxuXSlcbmNvbnN0IHBocEludmFsaWRBc3NpZ25lZEJpbmRpbmdzID0gbmV3IFNldChbXCJHTE9CQUxTXCIsIFwidGhpc1wiXSlcblxuLyoqIEB0eXBlIHtSZWFkb25seTxQYXJ0aWFsPFJlY29yZDxpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5CYWNrZW5kTGFuZ3VhZ2UsIFNldDxzdHJpbmc+Pj4+fSAqL1xuY29uc3QgcmVzZXJ2ZWRUeXBlTmFtZXMgPSBPYmplY3QuZnJlZXplKHtcbiAgamF2YTogbmV3IFNldChbXCJCb29sZWFuXCIsIFwiSW50ZWdlclwiLCBcIk1haW5cIiwgXCJNYXRoXCIsIFwiT2JqZWN0XCIsIFwiU3RyaW5nXCIsIFwiU3lzdGVtXCJdKSxcbiAgamF2YXNjcmlwdDogbmV3IFNldChbXCJBcnJheVwiLCBcIkJvb2xlYW5cIiwgXCJNYXBcIiwgXCJNYXRoXCIsIFwiTnVtYmVyXCIsIFwiT2JqZWN0XCIsIFwiUmVmbGVjdFwiLCBcIlN0cmluZ1wiXSksXG4gIHBocDogbmV3IFNldChbXG4gICAgXCJhZGRyZXNzaW5mb1wiLCBcImFsbG93ZHluYW1pY3Byb3BlcnRpZXNcIiwgXCJhcHBlbmRpdGVyYXRvclwiLCBcImFyZ3VtZW50Y291bnRlcnJvclwiLCBcImFyaXRobWV0aWNlcnJvclwiLCBcImFycmF5YWNjZXNzXCIsXG4gICAgXCJhcnJheWl0ZXJhdG9yXCIsIFwiYXJyYXlvYmplY3RcIiwgXCJhc3NlcnRpb25lcnJvclwiLCBcImF0dHJpYnV0ZVwiLCBcImJhY2tlZGVudW1cIiwgXCJiYWRmdW5jdGlvbmNhbGxleGNlcHRpb25cIixcbiAgICBcImJhZG1ldGhvZGNhbGxleGNlcHRpb25cIiwgXCJjYWNoaW5naXRlcmF0b3JcIixcbiAgICBcImNhbGxiYWNrZmlsdGVyaXRlcmF0b3JcIiwgXCJjbG9zZWRnZW5lcmF0b3JleGNlcHRpb25cIiwgXCJjbG9zdXJlXCIsIFwiY29tcGlsZWVycm9yXCIsIFwiY291bnRhYmxlXCIsIFwiZGF0ZWVycm9yXCIsIFwiZGF0ZWV4Y2VwdGlvblwiLFxuICAgIFwiZGF0ZWludGVydmFsXCIsIFwiZGF0ZWludmFsaWRvcGVyYXRpb25leGNlcHRpb25cIiwgXCJkYXRlaW52YWxpZHRpbWV6b25lZXhjZXB0aW9uXCIsIFwiZGF0ZW1hbGZvcm1lZGludGVydmFsc3RyaW5nZXhjZXB0aW9uXCIsXG4gICAgXCJkYXRlbWFsZm9ybWVkcGVyaW9kc3RyaW5nZXhjZXB0aW9uXCIsIFwiZGF0ZW1hbGZvcm1lZHN0cmluZ2V4Y2VwdGlvblwiLCBcImRhdGVvYmplY3RlcnJvclwiLCBcImRhdGVwZXJpb2RcIiwgXCJkYXRlcmFuZ2VlcnJvclwiLFxuICAgIFwiZGF0ZXRpbWVcIiwgXCJkYXRldGltZWltbXV0YWJsZVwiLCBcImRhdGV0aW1laW50ZXJmYWNlXCIsIFwiZGF0ZXRpbWV6b25lXCIsIFwiZGVmbGF0ZWNvbnRleHRcIiwgXCJkZWxheWVkdGFyZ2V0dmFsaWRhdGlvblwiLFxuICAgIFwiZGVwcmVjYXRlZFwiLCBcImRpcmVjdG9yeVwiLCBcImRpcmVjdG9yeWl0ZXJhdG9yXCIsIFwiZGl2aXNpb25ieXplcm9lcnJvclwiLCBcImRvbWFpbmV4Y2VwdGlvblwiLCBcImVtcHR5aXRlcmF0b3JcIiwgXCJlcnJvclwiLFxuICAgIFwiZXJyb3JleGNlcHRpb25cIiwgXCJleGNlcHRpb25cIiwgXCJmZmlcIiwgXCJmaWJlclwiLCBcImZpYmVyZXJyb3JcIiwgXCJmaWxlc3lzdGVtaXRlcmF0b3JcIiwgXCJmaWx0ZXJpdGVyYXRvclwiLCBcImZpbmZvXCIsIFwiZ2VuZXJhdG9yXCIsXG4gICAgXCJnbG9iaXRlcmF0b3JcIiwgXCJoYXNoY29udGV4dFwiLCBcImluZmluaXRlaXRlcmF0b3JcIiwgXCJpbmZsYXRlY29udGV4dFwiLCBcImludGVybmFsaXRlcmF0b3JcIiwgXCJpbnZhbGlkYXJndW1lbnRleGNlcHRpb25cIixcbiAgICBcIml0ZXJhdG9yXCIsIFwiaXRlcmF0b3JhZ2dyZWdhdGVcIiwgXCJpdGVyYXRvcml0ZXJhdG9yXCIsIFwianNvbmV4Y2VwdGlvblwiLCBcImpzb25zZXJpYWxpemFibGVcIiwgXCJsZW5ndGhleGNlcHRpb25cIixcbiAgICBcImxpYnhtbGVycm9yXCIsIFwibGltaXRpdGVyYXRvclwiLCBcImxvZ2ljZXhjZXB0aW9uXCIsIFwibXVsdGlwbGVpdGVyYXRvclwiLCBcIm5vZGlzY2FyZFwiLCBcIm5vcmV3aW5kaXRlcmF0b3JcIixcbiAgICBcIm9wZW5zc2xhc3ltbWV0cmlja2V5XCIsIFwib3BlbnNzbGNlcnRpZmljYXRlXCIsIFwib3BlbnNzbGNlcnRpZmljYXRlc2lnbmluZ3JlcXVlc3RcIixcbiAgICBcIm91dG9mYm91bmRzZXhjZXB0aW9uXCIsIFwib3V0b2ZyYW5nZWV4Y2VwdGlvblwiLCBcIm91dGVyaXRlcmF0b3JcIiwgXCJvdmVyZmxvd2V4Y2VwdGlvblwiLCBcIm92ZXJyaWRlXCIsIFwicGFyZW50aXRlcmF0b3JcIixcbiAgICBcInBhcnNlZXJyb3JcIiwgXCJwZG9cIiwgXCJwZG9leGNlcHRpb25cIiwgXCJwZG9yb3dcIiwgXCJwZG9zdGF0ZW1lbnRcIiwgXCJwaGFyXCIsIFwicGhhcmRhdGFcIiwgXCJwaGFyZXhjZXB0aW9uXCIsIFwicGhhcmZpbGVpbmZvXCIsXG4gICAgXCJwaHBfdXNlcl9maWx0ZXJcIiwgXCJwaHB0b2tlblwiLCBcInByb3BlcnR5aG9va3R5cGVcIiwgXCJyYW5nZWV4Y2VwdGlvblwiLCBcInJlY3Vyc2l2ZWFycmF5aXRlcmF0b3JcIiwgXCJyZWN1cnNpdmVjYWNoaW5naXRlcmF0b3JcIixcbiAgICBcInJlY3Vyc2l2ZWNhbGxiYWNrZmlsdGVyaXRlcmF0b3JcIixcbiAgICBcInJlY3Vyc2l2ZWRpcmVjdG9yeWl0ZXJhdG9yXCIsIFwicmVjdXJzaXZlZmlsdGVyaXRlcmF0b3JcIiwgXCJyZWN1cnNpdmVpdGVyYXRvclwiLCBcInJlY3Vyc2l2ZWl0ZXJhdG9yaXRlcmF0b3JcIixcbiAgICBcInJlY3Vyc2l2ZXJlZ2V4aXRlcmF0b3JcIiwgXCJyZWN1cnNpdmV0cmVlaXRlcmF0b3JcIiwgXCJyZWZsZWN0aW9uXCIsIFwicmVmbGVjdGlvbmF0dHJpYnV0ZVwiLCBcInJlZmxlY3Rpb25jbGFzc1wiLFxuICAgIFwicmVmbGVjdGlvbmNsYXNzY29uc3RhbnRcIiwgXCJyZWZsZWN0aW9uY29uc3RhbnRcIiwgXCJyZWZsZWN0aW9uZW51bVwiLCBcInJlZmxlY3Rpb25lbnVtYmFja2VkY2FzZVwiLCBcInJlZmxlY3Rpb25lbnVtdW5pdGNhc2VcIixcbiAgICBcInJlZmxlY3Rpb25leGNlcHRpb25cIiwgXCJyZWZsZWN0aW9uZXh0ZW5zaW9uXCIsIFwicmVmbGVjdGlvbmZpYmVyXCIsIFwicmVmbGVjdGlvbmZ1bmN0aW9uXCIsIFwicmVmbGVjdGlvbmZ1bmN0aW9uYWJzdHJhY3RcIixcbiAgICBcInJlZmxlY3Rpb25nZW5lcmF0b3JcIiwgXCJyZWZsZWN0aW9uaW50ZXJzZWN0aW9udHlwZVwiLCBcInJlZmxlY3Rpb25tZXRob2RcIiwgXCJyZWZsZWN0aW9ubmFtZWR0eXBlXCIsIFwicmVmbGVjdGlvbm9iamVjdFwiLFxuICAgIFwicmVmbGVjdGlvbnBhcmFtZXRlclwiLCBcInJlZmxlY3Rpb25wcm9wZXJ0eVwiLCBcInJlZmxlY3Rpb25yZWZlcmVuY2VcIiwgXCJyZWZsZWN0aW9udHlwZVwiLCBcInJlZmxlY3Rpb251bmlvbnR5cGVcIixcbiAgICBcInJlZmxlY3Rpb256ZW5kZXh0ZW5zaW9uXCIsIFwicmVmbGVjdG9yXCIsIFwicmVnZXhpdGVyYXRvclwiLCBcInJlcXVlc3RwYXJzZWJvZHlleGNlcHRpb25cIiwgXCJyZXR1cm50eXBld2lsbGNoYW5nZVwiLFxuICAgIFwicm91bmRpbmdtb2RlXCIsIFwicnVudGltZWV4Y2VwdGlvblwiLCBcInNlZWthYmxlaXRlcmF0b3JcIiwgXCJzZW5zaXRpdmVwYXJhbWV0ZXJcIiwgXCJzZW5zaXRpdmVwYXJhbWV0ZXJ2YWx1ZVwiLCBcInNlcmlhbGl6YWJsZVwiLFxuICAgIFwic2Vzc2lvbmhhbmRsZXJcIiwgXCJzZXNzaW9uaGFuZGxlcmludGVyZmFjZVwiLCBcInNlc3Npb25pZGludGVyZmFjZVwiLCBcInNlc3Npb251cGRhdGV0aW1lc3RhbXBoYW5kbGVyaW50ZXJmYWNlXCIsIFwic2htb3BcIixcbiAgICBcInNvY2tldFwiLCBcInNvZGl1bWV4Y2VwdGlvblwiLCBcInNwbGRvdWJseWxpbmtlZGxpc3RcIiwgXCJzcGxmaWxlaW5mb1wiLFxuICAgIFwic3BsZmlsZW9iamVjdFwiLCBcInNwbGZpeGVkYXJyYXlcIiwgXCJzcGxoZWFwXCIsIFwic3BsbWF4aGVhcFwiLCBcInNwbG1pbmhlYXBcIiwgXCJzcGxvYmplY3RzdG9yYWdlXCIsIFwic3Bsb2JzZXJ2ZXJcIixcbiAgICBcInNwbHByaW9yaXR5cXVldWVcIiwgXCJzcGxxdWV1ZVwiLCBcInNwbHN0YWNrXCIsIFwic3Bsc3ViamVjdFwiLCBcInNwbHRlbXBmaWxlb2JqZWN0XCIsIFwic3RkY2xhc3NcIiwgXCJzdHJlYW1idWNrZXRcIiwgXCJzdHJpbmdhYmxlXCIsXG4gICAgXCJzeXN2bWVzc2FnZXF1ZXVlXCIsIFwic3lzdnNlbWFwaG9yZVwiLCBcInN5c3ZzaGFyZWRtZW1vcnlcIiwgXCJ0aHJvd2FibGVcIiwgXCJ0cmF2ZXJzYWJsZVwiLCBcInR5cGVlcnJvclwiLCBcInVuZGVyZmxvd2V4Y2VwdGlvblwiLFxuICAgIFwidW5leHBlY3RlZHZhbHVlZXhjZXB0aW9uXCIsIFwidW5oYW5kbGVkbWF0Y2hlcnJvclwiLCBcInVuaXRlbnVtXCIsIFwidmFsdWVlcnJvclwiLCBcIndlYWttYXBcIiwgXCJ3ZWFrcmVmZXJlbmNlXCJcbiAgXSksXG4gIHJ1Ynk6IG5ldyBTZXQoW1xuICAgIFwiQXJndW1lbnRFcnJvclwiLCBcIkFycmF5XCIsIFwiQmFzaWNPYmplY3RcIiwgXCJCaW5kaW5nXCIsIFwiQ2xhc3NcIiwgXCJDbG9zZWRRdWV1ZUVycm9yXCIsIFwiQ29tcGFyYWJsZVwiLCBcIkNvbXBsZXhcIiwgXCJEYXRhXCIsIFwiRGlyXCIsXG4gICAgXCJFbmNvZGluZ1wiLCBcIkVuY29kaW5nRXJyb3JcIiwgXCJFbnVtZXJhYmxlXCIsIFwiRW51bWVyYXRvclwiLCBcIkVPRkVycm9yXCIsIFwiRXJybm9cIiwgXCJFeGNlcHRpb25cIiwgXCJGYWxzZUNsYXNzXCIsIFwiRmliZXJcIixcbiAgICBcIkZpYmVyRXJyb3JcIiwgXCJGaWxlXCIsIFwiRmlsZVRlc3RcIiwgXCJGbG9hdFwiLCBcIkZyb3plbkVycm9yXCIsIFwiR0NcIiwgXCJIYXNoXCIsIFwiSU9cIiwgXCJJT0Vycm9yXCIsIFwiSW5kZXhFcnJvclwiLCBcIkludGVnZXJcIixcbiAgICBcIkludGVycnVwdFwiLCBcIktlcm5lbFwiLCBcIktleUVycm9yXCIsIFwiTG9hZEVycm9yXCIsIFwiTG9jYWxKdW1wRXJyb3JcIiwgXCJNYXJzaGFsXCIsIFwiTWF0Y2hEYXRhXCIsIFwiTWF0aFwiLCBcIk1ldGhvZFwiLCBcIk1vZHVsZVwiLFxuICAgIFwiTXV0ZXhcIiwgXCJOYW1lRXJyb3JcIiwgXCJOaWxDbGFzc1wiLCBcIk5vTWVtb3J5RXJyb3JcIiwgXCJOb01ldGhvZEVycm9yXCIsIFwiTm90SW1wbGVtZW50ZWRFcnJvclwiLCBcIk51bWVyaWNcIiwgXCJPYmplY3RcIixcbiAgICBcIk9iamVjdFNwYWNlXCIsIFwiUHJvY1wiLCBcIlByb2Nlc3NcIiwgXCJRdWV1ZVwiLCBcIlJhY3RvclwiLCBcIlJhbmRvbVwiLCBcIlJhbmdlXCIsIFwiUmF0aW9uYWxcIiwgXCJSZWdleHBcIiwgXCJSZWdleHBFcnJvclwiLCBcIlJ1YnlWTVwiLFxuICAgIFwiUnVudGltZUVycm9yXCIsIFwiU2NyaXB0RXJyb3JcIiwgXCJTZWN1cml0eUVycm9yXCIsIFwiU2lnbmFsXCIsIFwiU2lnbmFsRXhjZXB0aW9uXCIsIFwiU2l6ZWRRdWV1ZVwiLCBcIlN0YW5kYXJkRXJyb3JcIiwgXCJTdG9wSXRlcmF0aW9uXCIsXG4gICAgXCJTdHJpbmdcIiwgXCJTdHJ1Y3RcIiwgXCJTeW1ib2xcIiwgXCJTeW50YXhFcnJvclwiLCBcIlN5c3RlbUNhbGxFcnJvclwiLCBcIlN5c3RlbUV4aXRcIiwgXCJTeXN0ZW1TdGFja0Vycm9yXCIsIFwiVGhyZWFkXCIsIFwiVGhyZWFkRXJyb3JcIixcbiAgICBcIlRocmVhZEdyb3VwXCIsIFwiVGltZVwiLCBcIlRyYWNlUG9pbnRcIiwgXCJUcnVlQ2xhc3NcIiwgXCJUeXBlRXJyb3JcIiwgXCJVbmJvdW5kTWV0aG9kXCIsIFwiVW5jYXVnaHRUaHJvd0Vycm9yXCIsIFwiV2FybmluZ1wiLFxuICAgIFwiWmVyb0RpdmlzaW9uRXJyb3JcIlxuICBdKSxcbiAgdHlwZXNjcmlwdDogbmV3IFNldChbXCJBcnJheVwiLCBcIkJvb2xlYW5cIiwgXCJNYXBcIiwgXCJNYXRoXCIsIFwiTnVtYmVyXCIsIFwiT2JqZWN0XCIsIFwiUmVhZG9ubHlBcnJheVwiLCBcIlJlYWRvbmx5TWFwXCIsIFwiUmVmbGVjdFwiLCBcIlN0cmluZ1wiXSlcbn0pXG5cbi8qKlxuICogVmFsaWRhdGVzIGFuIGlkZW50aWZpZXIgYWdhaW5zdCB0aGUgdGFyZ2V0IGJhY2tlbmQncyBkZWxpYmVyYXRlbHkgbmFycm93IGxleGljYWwgY29udHJhY3QuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4uL3NlbWFudGljL3R5cGVzLmpzXCIpLkJhY2tlbmRMYW5ndWFnZX0gbGFuZ3VhZ2UgLSBUYXJnZXQgbGFuZ3VhZ2UuXG4gKiBAcGFyYW0ge3Vua25vd259IG5hbWUgLSBDYW5kaWRhdGUgc2VtYW50aWMgaWRlbnRpZmllci5cbiAqIEBwYXJhbSB7c3RyaW5nfSByb2xlIC0gSWRlbnRpZmllciByb2xlIGZvciBkaWFnbm9zdGljcy5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IGxvY2F0aW9uIC0gT3JpZ2luYXRpbmcgbG9jYXRpb24uXG4gKiBAcmV0dXJucyB7dm9pZH1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlVGFyZ2V0SWRlbnRpZmllcihsYW5ndWFnZSwgbmFtZSwgcm9sZSwgbG9jYXRpb24pIHtcbiAgaWYgKHR5cGVvZiBuYW1lICE9IFwic3RyaW5nXCIpIHVuc3VwcG9ydGVkQ2FwYWJpbGl0eShsYW5ndWFnZSwgYCR7cm9sZX0gaWRlbnRpZmllcmAsIGxvY2F0aW9uKVxuXG4gIGNvbnN0IHJlc2VydmVkTmFtZSA9IGxhbmd1YWdlID09IFwicGhwXCIgPyBuYW1lLnRvTG93ZXJDYXNlKCkgOiBuYW1lXG4gIGNvbnN0IHN5bnRheExhbmd1YWdlID0gbGFuZ3VhZ2UgPT0gXCJpb3NcIiA/IFwic3dpZnRcIiA6IGxhbmd1YWdlXG5cbiAgaWYgKCFpZGVudGlmaWVyUGF0dGVybnNbc3ludGF4TGFuZ3VhZ2VdLnRlc3QobmFtZSkgfHwgcmVzZXJ2ZWRXb3Jkc1tzeW50YXhMYW5ndWFnZV0uaGFzKHJlc2VydmVkTmFtZSkgfHxcbiAgICBsYW5ndWFnZSA9PSBcInB5dGhvblwiICYmIG5hbWUubm9ybWFsaXplKFwiTkZLQ1wiKSAhPSBuYW1lIHx8XG4gICAgbGFuZ3VhZ2UgPT0gXCJjXCIgJiYgIWlzQ0lkZW50aWZpZXIobmFtZSkgfHxcbiAgICBsYW5ndWFnZSA9PSBcInJ1c3RcIiAmJiAhaXNSdXN0SWRlbnRpZmllcihuYW1lKSB8fFxuICAgIGxhbmd1YWdlID09IFwiemlnXCIgJiYgIWlzWmlnSWRlbnRpZmllcihuYW1lKSB8fFxuICAgIGxhbmd1YWdlID09IFwiY3BwXCIgJiYgIWlzQ3BwSWRlbnRpZmllcihuYW1lKSB8fFxuICAgIGxhbmd1YWdlID09IFwiZGFydFwiICYmICFpc0RhcnRJZGVudGlmaWVyKG5hbWUpIHx8XG4gICAgbGFuZ3VhZ2UgPT0gXCJzd2lmdFwiICYmICghaXNTd2lmdElkZW50aWZpZXIobmFtZSkgfHwgbmFtZS5ub3JtYWxpemUoXCJORkNcIikgIT0gbmFtZSkgfHxcbiAgICBsYW5ndWFnZSA9PSBcImtvdGxpblwiICYmICghaXNLb3RsaW5JZGVudGlmaWVyKG5hbWUpIHx8IG5hbWUubm9ybWFsaXplKFwiTkZDXCIpICE9IG5hbWUpKSB7XG4gICAgdW5zdXBwb3J0ZWRDYXBhYmlsaXR5KGxhbmd1YWdlLCBgJHtyb2xlfSBpZGVudGlmaWVyICcke25hbWV9J2AsIGxvY2F0aW9uKVxuICB9XG59XG5cbi8qKlxuICogUHJvdGVjdHMgdGhlIGV4YWN0IEMgaGVhZGVyIGVudmlyb25tZW50IGFuZCBpbXBsZW1lbnRhdGlvbi1yZXNlcnZlZCBuYW1lc3BhY2UgaW4gZWl0aGVyIGRpcmVjdGlvbi5cbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gQ2FsbGVyIGlkZW50aWZpZXIuXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgc3BlbGxpbmcgaXMgc2FmZSBpbiB0aGUgY2Fub25pY2FsIHRyYW5zbGF0aW9uIHVuaXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0NJZGVudGlmaWVyKG5hbWUpIHtcbiAgcmV0dXJuIGlkZW50aWZpZXJQYXR0ZXJucy5jLnRlc3QobmFtZSkgJiYgIXJlc2VydmVkV29yZHMuYy5oYXMobmFtZSkgJiZcbiAgICAhL14oPzpzZW1hbnRpZm9sZF98U0VNQU5USUZPTERffFNlbWFudGlmb2xkfGF0b21pY198SU5UWzAtOV9BLVpdfFVJTlRbMC05X0EtWl18SU5UTUFYX3xVSU5UTUFYX3xTSVpFX3xQVFJESUZGX3xTSUdfQVRPTUlDX3xXQ0hBUl98V0lOVF98Q0hBUl98U0NIQVJffFVDSEFSX3xTSFJUX3xVU0hSVF98TE9OR198VUxPTkdffExMT05HX3xVTExPTkdfKS91LnRlc3QobmFtZSkgJiZcbiAgICAhL14oPzp1P2ludCg/Ojh8MTZ8MzJ8NjR8bWF4fHB0cnxfbGVhc3RbMC05XSt8X2Zhc3RbMC05XSspX3QpJC91LnRlc3QobmFtZSlcbn1cblxuLyoqXG4gKiBWYWxpZGF0ZXMgYSBiaW5kaW5nIGlkZW50aWZpZXIgYWdhaW5zdCB0YXJnZXQgcmVzdHJpY3Rpb25zIGJleW9uZCBnZW5lcmFsIGlkZW50aWZpZXIgc3ludGF4LlxuICogQHBhcmFtIHtpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5CYWNrZW5kTGFuZ3VhZ2V9IGxhbmd1YWdlIC0gVGFyZ2V0IGxhbmd1YWdlLlxuICogQHBhcmFtIHt1bmtub3dufSBuYW1lIC0gQ2FuZGlkYXRlIHNlbWFudGljIGlkZW50aWZpZXIuXG4gKiBAcGFyYW0ge3N0cmluZ30gcm9sZSAtIEJpbmRpbmcgcm9sZSBmb3IgZGlhZ25vc3RpY3MuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4uL3NlbWFudGljL3R5cGVzLmpzXCIpLlNvdXJjZUxvY2F0aW9uIHwgdW5kZWZpbmVkfSBsb2NhdGlvbiAtIE9yaWdpbmF0aW5nIGxvY2F0aW9uLlxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVRhcmdldEJpbmRpbmdJZGVudGlmaWVyKGxhbmd1YWdlLCBuYW1lLCByb2xlLCBsb2NhdGlvbikge1xuICB2YWxpZGF0ZVRhcmdldElkZW50aWZpZXIobGFuZ3VhZ2UsIG5hbWUsIHJvbGUsIGxvY2F0aW9uKVxuXG4gIGNvbnN0IGludmFsaWRUeXBlU2NyaXB0QmluZGluZyA9IGxhbmd1YWdlID09IFwidHlwZXNjcmlwdFwiICYmIChuYW1lID09IFwiYXJndW1lbnRzXCIgfHwgbmFtZSA9PSBcImV2YWxcIilcbiAgY29uc3QgaW52YWxpZFBocFZhcmlhYmxlID0gbGFuZ3VhZ2UgPT0gXCJwaHBcIiAmJiB0eXBlb2YgbmFtZSA9PSBcInN0cmluZ1wiICYmXG4gICAgKChyb2xlID09IFwicGFyYW1ldGVyXCIgJiYgcGhwSW52YWxpZFBhcmFtZXRlckJpbmRpbmdzLmhhcyhuYW1lKSkgfHxcbiAgICAgICgocm9sZSA9PSBcImxvY2FsXCIgfHwgcm9sZSA9PSBcImFzc2lnbm1lbnQgdGFyZ2V0XCIgfHwgcm9sZSA9PSBcImNhdGNoIGJpbmRpbmdcIikgJiYgcGhwSW52YWxpZEFzc2lnbmVkQmluZGluZ3MuaGFzKG5hbWUpKSlcbiAgY29uc3QgaW52YWxpZFJ1YnlCaW5kaW5nID0gbGFuZ3VhZ2UgPT0gXCJydWJ5XCIgJiYgdHlwZW9mIG5hbWUgPT0gXCJzdHJpbmdcIiAmJiAvXl9bMS05XSQvdS50ZXN0KG5hbWUpXG5cbiAgaWYgKGludmFsaWRUeXBlU2NyaXB0QmluZGluZyB8fCBpbnZhbGlkUGhwVmFyaWFibGUgfHwgaW52YWxpZFJ1YnlCaW5kaW5nKSB7XG4gICAgdW5zdXBwb3J0ZWRDYXBhYmlsaXR5KGxhbmd1YWdlLCBgJHtyb2xlfSBpZGVudGlmaWVyICcke25hbWV9J2AsIGxvY2F0aW9uKVxuICB9XG59XG5cbi8qKlxuICogVmFsaWRhdGVzIGEgbm9taW5hbCByZWNvcmQvdHlwZSBkZWNsYXJhdGlvbiBuYW1lIGZvciB0aGUgb3JpZ2luYWwtZml2ZSB0YXJnZXRzLlxuICogQHBhcmFtIHtpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5CYWNrZW5kTGFuZ3VhZ2V9IGxhbmd1YWdlIC0gQmFja2VuZCBsYW5ndWFnZS5cbiAqIEBwYXJhbSB7dW5rbm93bn0gbmFtZSAtIENhbmRpZGF0ZSB0eXBlIG5hbWUuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4uL3NlbWFudGljL3R5cGVzLmpzXCIpLlNvdXJjZUxvY2F0aW9uIHwgdW5kZWZpbmVkfSBsb2NhdGlvbiAtIERlY2xhcmF0aW9uIGxvY2F0aW9uLlxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVRhcmdldFR5cGVJZGVudGlmaWVyKGxhbmd1YWdlLCBuYW1lLCBsb2NhdGlvbikge1xuICBpZiAodHlwZW9mIG5hbWUgIT0gXCJzdHJpbmdcIiB8fCAhL15bQS1aXVtBLVphLXowLTlfXSokL3UudGVzdChuYW1lKSkge1xuICAgIHVuc3VwcG9ydGVkQ2FwYWJpbGl0eShsYW5ndWFnZSwgYHJlY29yZCB0eXBlIGlkZW50aWZpZXIgJyR7U3RyaW5nKG5hbWUpfSdgLCBsb2NhdGlvbilcbiAgfVxuICBjb25zdCByZXNlcnZlZE5hbWUgPSBsYW5ndWFnZSA9PSBcInBocFwiID8gbmFtZS50b0xvd2VyQ2FzZSgpIDogbmFtZVxuICBjb25zdCBzeW50YXhMYW5ndWFnZSA9IGxhbmd1YWdlID09IFwiaW9zXCIgPyBcInN3aWZ0XCIgOiBsYW5ndWFnZVxuXG4gIGlmIChyZXNlcnZlZFdvcmRzW3N5bnRheExhbmd1YWdlXS5oYXMocmVzZXJ2ZWROYW1lKSB8fCByZXNlcnZlZFR5cGVOYW1lc1tsYW5ndWFnZV0/LmhhcyhyZXNlcnZlZE5hbWUpKSB7XG4gICAgdW5zdXBwb3J0ZWRDYXBhYmlsaXR5KGxhbmd1YWdlLCBgcmVjb3JkIHR5cGUgaWRlbnRpZmllciAnJHtuYW1lfSdgLCBsb2NhdGlvbilcbiAgfVxufVxuXG4vKipcbiAqIFByb3RlY3RzIEMrKyBrZXl3b3JkcywgdGhlIGFjdHVhbCBpbmNsdWRlZCBDIGxpYnJhcnkgbmFtZXMvbWFjcm9zIGFuZCB0aGUgc2NhZmZvbGQgbmFtZXNwYWNlLlxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBDYWxsZXIgc2NhbGFyIGJpbmRpbmcgb3IgZnVuY3Rpb24gbmFtZS5cbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIGEgY2Fub25pY2FsIEMrKzIwIHRyYW5zbGF0aW9uIHVuaXQgY2FuIHJlcHJlc2VudCB0aGUgbmFtZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQ3BwSWRlbnRpZmllcihuYW1lKSB7XG4gIHJldHVybiBpc0NJZGVudGlmaWVyKG5hbWUpICYmICFuYW1lLmluY2x1ZGVzKFwiX19cIikgJiYgIXJlc2VydmVkV29yZHMuY3BwLmhhcyhuYW1lKVxufVxuXG4vKipcbiAqIFByb3RlY3RzIHRoZSBlZGl0aW9uLTIwMjEgc2NhbGFyLCBlbnRyeSBhbmQgZXhhY3QgaGVscGVyIGVudmlyb25tZW50IGluIGJvdGggZGlyZWN0aW9ucy5cbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gQ2FsbGVyLW93bmVkIGZ1bmN0aW9uIG9yIGJpbmRpbmcgbmFtZS5cbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIG9yZGluYXJ5IFJ1c3Qgc3ludGF4IGNhbiByZXByZXNlbnQgdGhlIG5hbWUgc2FmZWx5LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNSdXN0SWRlbnRpZmllcihuYW1lKSB7XG4gIHJldHVybiBpZGVudGlmaWVyUGF0dGVybnMucnVzdC50ZXN0KG5hbWUpICYmICFyZXNlcnZlZFdvcmRzLnJ1c3QuaGFzKG5hbWUpICYmICFuYW1lLnN0YXJ0c1dpdGgoXCJzZW1hbnRpZm9sZF9cIilcbn1cblxuLyoqXG4gKiBQcm90ZWN0cyBaaWcga2V5d29yZHMsIHNjYWxhciBuYW1lcywgZW50cnkgcGx1bWJpbmcsIGJ1aWx0aW5zLCBhbmQgdGhlIHN1cHBvcnQgbmFtZXNwYWNlLlxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBDYWxsZXItb3duZWQgZnVuY3Rpb24gb3IgYmluZGluZyBuYW1lLlxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgb3JkaW5hcnkgdW5xdW90ZWQgWmlnIHN5bnRheCBjYW4gcHJlc2VydmUgdGhlIG5hbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ppZ0lkZW50aWZpZXIobmFtZSkge1xuICByZXR1cm4gaWRlbnRpZmllclBhdHRlcm5zLnppZy50ZXN0KG5hbWUpICYmICFyZXNlcnZlZFdvcmRzLnppZy5oYXMobmFtZSkgJiYgIS9eW2l1XVswLTldKyQvdS50ZXN0KG5hbWUpICYmXG4gICAgIW5hbWUuc3RhcnRzV2l0aChcInNlbWFudGlmb2xkX1wiKVxufVxuXG4vKipcbiAqIFByb3RlY3RzIFN3aWZ0IGtleXdvcmRzLCBzY2FsYXIgbmFtZXMsIGVudHJ5IHBsdW1iaW5nLCBhbmQgdGFyZ2V0LW9ubHkgaGVscGVyIG5hbWVzLlxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBDYWxsZXItb3duZWQgZnVuY3Rpb24gb3IgYmluZGluZyBuYW1lLlxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgb3JkaW5hcnkgdW5lc2NhcGVkIFN3aWZ0IHN5bnRheCBjYW4gcHJlc2VydmUgdGhlIG5hbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1N3aWZ0SWRlbnRpZmllcihuYW1lKSB7XG4gIHJldHVybiBpZGVudGlmaWVyUGF0dGVybnMuc3dpZnQudGVzdChuYW1lKSAmJiAhcmVzZXJ2ZWRXb3Jkcy5zd2lmdC5oYXMobmFtZSkgJiYgIW5hbWUuc3RhcnRzV2l0aChcInNlbWFudGlmb2xkX1wiKVxufVxuXG4vKipcbiAqIFByb3RlY3RzIEtvdGxpbiBrZXl3b3JkcywgSlZNIHNjYWxhci9zY2FmZm9sZCBuYW1lcywgYW5kIHRhcmdldC1vbmx5IGhlbHBlciBuYW1lcy5cbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gQ2FsbGVyLW93bmVkIGZ1bmN0aW9uIG9yIGJpbmRpbmcgbmFtZS5cbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIG9yZGluYXJ5IHVuZXNjYXBlZCBLb3RsaW4gc3ludGF4IGNhbiBwcmVzZXJ2ZSB0aGUgbmFtZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzS290bGluSWRlbnRpZmllcihuYW1lKSB7XG4gIHJldHVybiBpZGVudGlmaWVyUGF0dGVybnMua290bGluLnRlc3QobmFtZSkgJiYgIXJlc2VydmVkV29yZHMua290bGluLmhhcyhuYW1lKSAmJiAhbmFtZS5zdGFydHNXaXRoKFwic2VtYW50aWZvbGRfXCIpICYmXG4gICAgIW5hbWUuc3RhcnRzV2l0aChcIlNFTUFOVElGT0xEX1wiKVxufVxuXG4vKipcbiAqIFByb3RlY3RzIERhcnQga2V5d29yZHMsIFZNIHNjYWxhci9zY2FmZm9sZCBuYW1lcywgYW5kIGNvbXBpbGVyLW93bmVkIGhlbHBlcnMuXG4gKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIENhbGxlci1vd25lZCBmdW5jdGlvbiBvciBiaW5kaW5nIG5hbWUuXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciBvcmRpbmFyeSBEYXJ0IHN5bnRheCBjYW4gcHJlc2VydmUgdGhlIG5hbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0RhcnRJZGVudGlmaWVyKG5hbWUpIHtcbiAgcmV0dXJuIGlkZW50aWZpZXJQYXR0ZXJucy5kYXJ0LnRlc3QobmFtZSkgJiYgIXJlc2VydmVkV29yZHMuZGFydC5oYXMobmFtZSkgJiZcbiAgICAhbmFtZS5zdGFydHNXaXRoKFwiX3NlbWFudGlmb2xkXCIpICYmIG5hbWUubm9ybWFsaXplKFwiTkZDXCIpID09IG5hbWVcbn1cbiJdfQ==
343
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpZmllcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFja2VuZHMvaWRlbnRpZmllcnMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGtCQUFrQixDQUFBO0FBRXRELHlHQUF5RztBQUN6RyxNQUFNLGtCQUFrQixHQUFHO0lBQ3pCLE9BQU8sRUFBRSxtQ0FBbUM7SUFDNUMsSUFBSSxFQUFFLG1DQUFtQztJQUN6QyxNQUFNLEVBQUUsbUNBQW1DO0lBQzNDLEtBQUssRUFBRSwrQ0FBK0M7SUFDdEQsSUFBSSxFQUFFLDJCQUEyQjtJQUNqQyxHQUFHLEVBQUUsMkJBQTJCO0lBQ2hDLEdBQUcsRUFBRSwwQkFBMEI7SUFDL0IsQ0FBQyxFQUFFLDBCQUEwQjtJQUM3QixNQUFNLEVBQUUsMkJBQTJCO0lBQ25DLEVBQUUsRUFBRSwyQkFBMkI7SUFDL0IsSUFBSSxFQUFFLDZCQUE2QjtJQUNuQyxVQUFVLEVBQUUsNkJBQTZCO0lBQ3pDLEdBQUcsRUFBRSwyQkFBMkI7SUFDaEMsTUFBTSxFQUFFLCtDQUErQztJQUN2RCxJQUFJLEVBQUUsd0JBQXdCO0lBQzlCLFVBQVUsRUFBRSw2QkFBNkI7SUFDekMsSUFBSSxFQUFFLHFEQUFxRDtDQUM1RCxDQUFBO0FBRUQsOEdBQThHO0FBQzlHLE1BQU0sYUFBYSxHQUFHO0lBQ3BCLE9BQU8sRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUNmLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNO1FBQzlHLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxL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LFdBQVcsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUztRQUNuRyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVTtRQUMxRyxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsUUFBUTtRQUNwRyxTQUFTLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRO1FBQzFHLGVBQWUsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNO1FBQzVHLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFFBQVE7UUFDdEcsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUztRQUN6RyxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVE7S0FDN0QsQ0FBQztJQUNGLE1BQU0sRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUNkLFdBQVcsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUk7UUFDdEcsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPO1FBQ3RELElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTO1FBQ3BHLFVBQVUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsUUFBUTtRQUN6SCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU07UUFDeEcsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTTtRQUM1RyxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUk7UUFDMUcsVUFBVSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLFVBQVU7UUFDakgsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRO1FBQ2hILFlBQVksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTztRQUMvRyxXQUFXLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTTtRQUM1RyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPO0tBQ2xDLENBQUM7SUFDRixFQUFFLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDVixHQUFHLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU07UUFDdEcsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEtBQUs7UUFDckcsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLO0tBQzFCLENBQUM7SUFDRixJQUFJLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDWixHQUFHLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVU7UUFDNUcsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxLQUFLO1FBQzVHLE1BQU0sRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLO1FBQ3pHLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLFFBQVE7UUFDekcsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsY0FBYztRQUMxRyxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFVBQVU7UUFDNUcsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTztLQUNqQyxDQUFDO0lBQ0YsVUFBVSxFQUFFLElBQUksR0FBRyxDQUFDO1FBQ2xCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTTtRQUM5RyxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsSUFBSTtRQUN0RyxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUTtRQUNoSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU87S0FDckcsQ0FBQztJQUNGLEdBQUcsRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUNYLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU87UUFDM0csT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFlBQVk7UUFDdkcsUUFBUSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU87UUFDN0csU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFNBQVM7UUFDdEcsY0FBYyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVztRQUNsSCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFNBQVM7UUFDbEgsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLO1FBQzVHLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU87S0FDaEMsQ0FBQztJQUNGLE1BQU0sRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUNkLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTztRQUNsRyxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUk7UUFDcEcsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE9BQU87UUFDeEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsV0FBVztLQUNwRixDQUFDO0lBQ0YsSUFBSSxFQUFFLElBQUksR0FBRyxDQUFDO1FBQ1osT0FBTyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU07UUFDM0csT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUTtRQUN4RyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPO1FBQ3pHLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPO0tBQzVDLENBQUM7SUFDRixVQUFVLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDbEIsVUFBVSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPO1FBQzNHLGFBQWEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxTQUFTO1FBQ2hILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsWUFBWTtRQUMvRyxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLElBQUk7UUFDMUcsVUFBVSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsS0FBSztRQUM1RyxRQUFRLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFdBQVc7UUFDOUcsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU87S0FDdEUsQ0FBQztJQUNGLElBQUksRUFBRSxJQUFJLEdBQUcsRUFBRTtDQUNoQixDQUFBO0FBRUQsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLEdBQUcsQ0FBQztJQUMxQyxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNO0NBQ25HLENBQUMsQ0FBQTtBQUNGLE1BQU0sMEJBQTBCLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQTtBQUUvRCxxR0FBcUc7QUFDckcsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQ3RDLElBQUksRUFBRSxJQUFJLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ25GLFVBQVUsRUFBRSxJQUFJLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNqRyxHQUFHLEVBQUUsSUFBSSxHQUFHLENBQUM7UUFDWCxhQUFhLEVBQUUsd0JBQXdCLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsaUJBQWlCLEVBQUUsYUFBYTtRQUNqSCxlQUFlLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsMEJBQTBCO1FBQ3ZHLHdCQUF3QixFQUFFLGlCQUFpQjtRQUMzQyx3QkFBd0IsRUFBRSwwQkFBMEIsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsZUFBZTtRQUMxSCxjQUFjLEVBQUUsK0JBQStCLEVBQUUsOEJBQThCLEVBQUUsc0NBQXNDO1FBQ3ZILG9DQUFvQyxFQUFFLDhCQUE4QixFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxnQkFBZ0I7UUFDdkgsVUFBVSxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUI7UUFDakgsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsT0FBTztRQUNsSCxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLFdBQVc7UUFDekgsY0FBYyxFQUFFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSwwQkFBMEI7UUFDbkgsVUFBVSxFQUFFLG1CQUFtQixFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUI7UUFDM0csYUFBYSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsa0JBQWtCO1FBQ3JHLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLGtDQUFrQztRQUNoRixzQkFBc0IsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLGdCQUFnQjtRQUNqSCxZQUFZLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLGNBQWM7UUFDbEgsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLHdCQUF3QixFQUFFLDBCQUEwQjtRQUN6SCxpQ0FBaUM7UUFDakMsNEJBQTRCLEVBQUUseUJBQXlCLEVBQUUsbUJBQW1CLEVBQUUsMkJBQTJCO1FBQ3pHLHdCQUF3QixFQUFFLHVCQUF1QixFQUFFLFlBQVksRUFBRSxxQkFBcUIsRUFBRSxpQkFBaUI7UUFDekcseUJBQXlCLEVBQUUsb0JBQW9CLEVBQUUsZ0JBQWdCLEVBQUUsMEJBQTBCLEVBQUUsd0JBQXdCO1FBQ3ZILHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLGlCQUFpQixFQUFFLG9CQUFvQixFQUFFLDRCQUE0QjtRQUNuSCxxQkFBcUIsRUFBRSw0QkFBNEIsRUFBRSxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxrQkFBa0I7UUFDbEgscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUscUJBQXFCO1FBQzNHLHlCQUF5QixFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsMkJBQTJCLEVBQUUsc0JBQXNCO1FBQzVHLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxvQkFBb0IsRUFBRSx5QkFBeUIsRUFBRSxjQUFjO1FBQ3ZILGdCQUFnQixFQUFFLHlCQUF5QixFQUFFLG9CQUFvQixFQUFFLHdDQUF3QyxFQUFFLE9BQU87UUFDcEgsUUFBUSxFQUFFLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLGFBQWE7UUFDakUsZUFBZSxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxhQUFhO1FBQzFHLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsWUFBWTtRQUN2SCxrQkFBa0IsRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsb0JBQW9CO1FBQ3RILDBCQUEwQixFQUFFLHFCQUFxQixFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLGVBQWU7S0FDeEcsQ0FBQztJQUNGLElBQUksRUFBRSxJQUFJLEdBQUcsQ0FBQztRQUNaLGVBQWUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSztRQUN2SCxVQUFVLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLE9BQU87UUFDaEgsWUFBWSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFNBQVM7UUFDaEgsV0FBVyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRO1FBQ3BILE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUsU0FBUyxFQUFFLFFBQVE7UUFDOUcsYUFBYSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLFFBQVE7UUFDckgsY0FBYyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsZUFBZTtRQUMzSCxRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxhQUFhO1FBQ3pILGFBQWEsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLFNBQVM7UUFDL0csbUJBQW1CO0tBQ3BCLENBQUM7SUFDRixVQUFVLEVBQUUsSUFBSSxHQUFHLENBQUMsQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztDQUNsSSxDQUFDLENBQUE7QUFFRjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVE7SUFDckUsSUFBSSxPQUFPLElBQUksSUFBSSxRQUFRO1FBQUUscUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsSUFBSSxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFFNUYsTUFBTSxZQUFZLEdBQUcsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDbEUsTUFBTSxjQUFjLEdBQUcsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQTtJQUU5RixJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDO1FBQ25HLFFBQVEsSUFBSSxRQUFRLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJO1FBQ3RELFFBQVEsSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1FBQ3ZDLFFBQVEsSUFBSSxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7UUFDN0MsUUFBUSxJQUFJLEtBQUssSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7UUFDM0MsUUFBUSxJQUFJLEtBQUssSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUM7UUFDM0MsUUFBUSxJQUFJLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUM3QyxRQUFRLElBQUksT0FBTyxJQUFJLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQztRQUNsRixRQUFRLElBQUksUUFBUSxJQUFJLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDdkYscUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsSUFBSSxnQkFBZ0IsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDM0UsQ0FBQztBQUNILENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxJQUFJO0lBQ2hDLE9BQU8sa0JBQWtCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztRQUNsRSxDQUFDLHNNQUFzTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDbE4sQ0FBQywrREFBK0QsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDL0UsQ0FBQztBQUVEOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsK0JBQStCLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUTtJQUM1RSx3QkFBd0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUV4RCxNQUFNLHdCQUF3QixHQUFHLFFBQVEsSUFBSSxZQUFZLElBQUksQ0FBQyxJQUFJLElBQUksV0FBVyxJQUFJLElBQUksSUFBSSxNQUFNLENBQUMsQ0FBQTtJQUNwRyxNQUFNLGtCQUFrQixHQUFHLFFBQVEsSUFBSSxLQUFLLElBQUksT0FBTyxJQUFJLElBQUksUUFBUTtRQUNyRSxDQUFDLENBQUMsSUFBSSxJQUFJLFdBQVcsSUFBSSwyQkFBMkIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0QsQ0FBQyxDQUFDLElBQUksSUFBSSxPQUFPLElBQUksSUFBSSxJQUFJLG1CQUFtQixJQUFJLElBQUksSUFBSSxlQUFlLENBQUMsSUFBSSwwQkFBMEIsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQzFILE1BQU0sa0JBQWtCLEdBQUcsUUFBUSxJQUFJLE1BQU0sSUFBSSxPQUFPLElBQUksSUFBSSxRQUFRLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUVsRyxJQUFJLHdCQUF3QixJQUFJLGtCQUFrQixJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDekUscUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsSUFBSSxnQkFBZ0IsSUFBSSxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDM0UsQ0FBQztBQUNILENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsNEJBQTRCLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRO0lBQ25FLElBQUksT0FBTyxJQUFJLElBQUksUUFBUSxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDbkUscUJBQXFCLENBQUMsUUFBUSxFQUFFLDJCQUEyQixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUN2RixDQUFDO0lBQ0QsTUFBTSxZQUFZLEdBQUcsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUE7SUFDbEUsTUFBTSxjQUFjLEdBQUcsUUFBUSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQTtJQUU5RixJQUFJLGFBQWEsQ0FBQyxjQUFjLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLElBQUksaUJBQWlCLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7UUFDdEcscUJBQXFCLENBQUMsUUFBUSxFQUFFLDJCQUEyQixJQUFJLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQTtJQUMvRSxDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQUFDLElBQUk7SUFDbEMsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDcEYsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBSTtJQUNuQyxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUE7QUFDaEgsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQUFDLElBQUk7SUFDbEMsT0FBTyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUNyRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUE7QUFDcEMsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsSUFBSTtJQUNwQyxPQUFPLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUE7QUFDbEgsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsSUFBSTtJQUNyQyxPQUFPLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDO1FBQ2hILENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQTtBQUNwQyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxJQUFJO0lBQ25DLE9BQU8sa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztRQUN4RSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUE7QUFDckUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQge3Vuc3VwcG9ydGVkQ2FwYWJpbGl0eX0gZnJvbSBcIi4uL2RpYWdub3N0aWMuanNcIlxuXG4vKiogQHR5cGUge1JlY29yZDxFeGNsdWRlPGltcG9ydChcIi4uL3NlbWFudGljL3R5cGVzLmpzXCIpLkJhY2tlbmRMYW5ndWFnZSwgXCJpb3NcIiB8IFwiZmx1dHRlclwiPiwgUmVnRXhwPn0gKi9cbmNvbnN0IGlkZW50aWZpZXJQYXR0ZXJucyA9IHtcbiAgYW5kcm9pZDogL14oPzpffFxccHtMfSkoPzpffFxccHtMfXxcXHB7TmR9KSokL3UsXG4gIGRhcnQ6IC9eKD86X3xcXHB7TH0pKD86X3xcXHB7TH18XFxwe05kfSkqJC91LFxuICBrb3RsaW46IC9eKD86X3xcXHB7TH0pKD86X3xcXHB7TH18XFxwe05kfSkqJC91LFxuICBzd2lmdDogL14oPzpffFxccHtYSURfU3RhcnR9KSg/Ol98XFxwe1hJRF9Db250aW51ZX0pKiQvdSxcbiAgcnVzdDogL15bQS1aYS16X11bQS1aYS16MC05X10qJC91LFxuICB6aWc6IC9eW0EtWmEtel9dW0EtWmEtejAtOV9dKiQvdSxcbiAgY3BwOiAvXltBLVphLXpdW0EtWmEtejAtOV9dKiQvdSxcbiAgYzogL15bQS1aYS16XVtBLVphLXowLTlfXSokL3UsXG4gIGNzaGFycDogL15bQS1aYS16X11bQS1aYS16MC05X10qJC91LFxuICBnbzogL15bQS1aYS16X11bQS1aYS16MC05X10qJC91LFxuICBqYXZhOiAvXltBLVphLXpfJF1bQS1aYS16MC05XyRdKiQvdSxcbiAgamF2YXNjcmlwdDogL15bQS1aYS16XyRdW0EtWmEtejAtOV8kXSokL3UsXG4gIHBocDogL15bQS1aYS16X11bQS1aYS16MC05X10qJC91LFxuICBweXRob246IC9eKD86X3xcXHB7WElEX1N0YXJ0fSkoPzpffFxccHtYSURfQ29udGludWV9KSokL3UsXG4gIHJ1Ynk6IC9eW2Etel9dW0EtWmEtejAtOV9dKiQvdSxcbiAgdHlwZXNjcmlwdDogL15bQS1aYS16XyRdW0EtWmEtejAtOV8kXSokL3UsXG4gIHdhc206IC9eKD86WyRfXXxcXHB7WElEX1N0YXJ0fSkoPzpbJF9dfFxccHtYSURfQ29udGludWV9KSokL3Vcbn1cblxuLyoqIEB0eXBlIHtSZWNvcmQ8RXhjbHVkZTxpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5CYWNrZW5kTGFuZ3VhZ2UsIFwiaW9zXCIgfCBcImZsdXR0ZXJcIj4sIFNldDxzdHJpbmc+Pn0gKi9cbmNvbnN0IHJlc2VydmVkV29yZHMgPSB7XG4gIGFuZHJvaWQ6IG5ldyBTZXQoW1xuICAgIFwiYXNcIiwgXCJicmVha1wiLCBcImNsYXNzXCIsIFwiY29udGludWVcIiwgXCJkb1wiLCBcImVsc2VcIiwgXCJmYWxzZVwiLCBcImZvclwiLCBcImZ1blwiLCBcImlmXCIsIFwiaW5cIiwgXCJpbnRlcmZhY2VcIiwgXCJpc1wiLCBcIm51bGxcIixcbiAgICBcIm9iamVjdFwiLCBcInBhY2thZ2VcIiwgXCJyZXR1cm5cIiwgXCJzdXBlclwiLCBcInRoaXNcIiwgXCJ0aHJvd1wiLCBcInRydWVcIiwgXCJ0cnlcIiwgXCJ0eXBlYWxpYXNcIiwgXCJ0eXBlb2ZcIiwgXCJ2YWxcIiwgXCJ2YXJcIiwgXCJ3aGVuXCIsXG4gICAgXCJ3aGlsZVwiLCBcIl9cIiwgXCJtYWluXCIsIFwicHJpbnRsblwiLCBcIkxvbmdcIiwgXCJCb29sZWFuXCIsIFwiU3RyaW5nXCIsIFwiTWF0aFwiLCBcIkFyaXRobWV0aWNFeGNlcHRpb25cIlxuICBdKSxcbiAgZGFydDogbmV3IFNldChbXG4gICAgXCJGdW5jdGlvblwiLCBcIk5ldmVyXCIsIFwiT2JqZWN0XCIsIFwiUmFuZ2VFcnJvclwiLCBcIlN0cmluZ1wiLCBcImFic3RyYWN0XCIsIFwiYXNcIiwgXCJhc3NlcnRcIiwgXCJhc3luY1wiLCBcImF3YWl0XCIsIFwiYmFzZVwiLFxuICAgIFwiYm9vbFwiLCBcImJyZWFrXCIsIFwiY2FzZVwiLCBcImNhdGNoXCIsIFwiY2xhc3NcIiwgXCJjb25zdFwiLCBcImNvbnRpbnVlXCIsIFwiY292YXJpYW50XCIsIFwiZGVmYXVsdFwiLCBcImRlZmVycmVkXCIsIFwiZG9cIixcbiAgICBcImRvdWJsZVwiLCBcImR5bmFtaWNcIiwgXCJlbHNlXCIsIFwiZW51bVwiLCBcImV4cG9ydFwiLCBcImV4dGVuZHNcIiwgXCJleHRlbnNpb25cIiwgXCJleHRlcm5hbFwiLCBcImZhY3RvcnlcIiwgXCJmYWxzZVwiLCBcImZpbmFsXCIsXG4gICAgXCJmaW5hbGx5XCIsIFwiZm9yXCIsIFwiZ2V0XCIsIFwiaGlkZVwiLCBcImlmXCIsIFwiaW1wbGVtZW50c1wiLCBcImltcG9ydFwiLCBcImluXCIsIFwiaW50XCIsIFwiaW50ZXJmYWNlXCIsIFwiaXNcIiwgXCJsYXRlXCIsIFwibGlicmFyeVwiLFxuICAgIFwibWFpblwiLCBcIm1peGluXCIsIFwibmF0aXZlXCIsIFwibmV3XCIsIFwibnVsbFwiLCBcIm51bVwiLCBcIm9mXCIsIFwib25cIiwgXCJvcGVyYXRvclwiLCBcInBhcnRcIiwgXCJwcmludFwiLCBcInJlcXVpcmVkXCIsIFwicmV0aHJvd1wiLFxuICAgIFwicmV0dXJuXCIsIFwic2VhbGVkXCIsIFwic2V0XCIsIFwic2hvd1wiLCBcInN0YXRpY1wiLCBcInN1cGVyXCIsIFwic3dpdGNoXCIsIFwic3luY1wiLCBcInRoaXNcIiwgXCJ0aHJvd1wiLCBcInRydWVcIiwgXCJ0cnlcIiwgXCJ0eXBlZGVmXCIsXG4gICAgXCJ2YXJcIiwgXCJ2b2lkXCIsIFwid2hlblwiLCBcIndoaWxlXCIsIFwid2l0aFwiLCBcInlpZWxkXCIsIFwiQmlnSW50XCIsIFwiX1wiXG4gIF0pLFxuICBrb3RsaW46IG5ldyBTZXQoW1xuICAgIFwiYXNcIiwgXCJicmVha1wiLCBcImNsYXNzXCIsIFwiY29udGludWVcIiwgXCJkb1wiLCBcImVsc2VcIiwgXCJmYWxzZVwiLCBcImZvclwiLCBcImZ1blwiLCBcImlmXCIsIFwiaW5cIiwgXCJpbnRlcmZhY2VcIiwgXCJpc1wiLCBcIm51bGxcIixcbiAgICBcIm9iamVjdFwiLCBcInBhY2thZ2VcIiwgXCJyZXR1cm5cIiwgXCJzdXBlclwiLCBcInRoaXNcIiwgXCJ0aHJvd1wiLCBcInRydWVcIiwgXCJ0cnlcIiwgXCJ0eXBlYWxpYXNcIiwgXCJ0eXBlb2ZcIiwgXCJ2YWxcIiwgXCJ2YXJcIiwgXCJ3aGVuXCIsXG4gICAgXCJ3aGlsZVwiLCBcIl9cIiwgXCJtYWluXCIsIFwicHJpbnRsblwiLCBcIkxvbmdcIiwgXCJCb29sZWFuXCIsIFwiU3RyaW5nXCIsIFwiTWF0aFwiLCBcIkFyaXRobWV0aWNFeGNlcHRpb25cIlxuICBdKSxcbiAgc3dpZnQ6IG5ldyBTZXQoW1xuICAgIFwiQW55XCIsIFwiU2VsZlwiLCBcIlR5cGVcIiwgXCJQcm90b2NvbFwiLCBcImFjdG9yXCIsIFwiYW55XCIsIFwiYXNcIiwgXCJhc3NvY2lhdGVkdHlwZVwiLCBcImFzc29jaWF0aXZpdHlcIiwgXCJhc3luY1wiLCBcImF3YWl0XCIsIFwiYm9ycm93aW5nXCIsXG4gICAgXCJicmVha1wiLCBcImNhc2VcIiwgXCJjYXRjaFwiLCBcImNsYXNzXCIsIFwiY29uc3VtZVwiLCBcImNvbnN1bWluZ1wiLCBcImNvbnRpbnVlXCIsIFwiY29udmVuaWVuY2VcIiwgXCJjb3B5XCIsIFwiZGVmYXVsdFwiLCBcImRlZmVyXCIsIFwiZGVpbml0XCIsXG4gICAgXCJkaWRTZXRcIiwgXCJkaXN0cmlidXRlZFwiLCBcImRvXCIsIFwiZHluYW1pY1wiLCBcImVsc2VcIiwgXCJlbnVtXCIsIFwiZXh0ZW5zaW9uXCIsIFwiZmFsbHRocm91Z2hcIiwgXCJmYWxzZVwiLCBcImZpbGVwcml2YXRlXCIsIFwiZmluYWxcIiwgXCJmb3JcIixcbiAgICBcImZ1bmNcIiwgXCJnZXRcIiwgXCJndWFyZFwiLCBcImlmXCIsIFwiaW1wb3J0XCIsIFwiaW5cIiwgXCJpbmRpcmVjdFwiLCBcImluZml4XCIsIFwiaW5pdFwiLCBcImlub3V0XCIsIFwiaW50ZXJuYWxcIiwgXCJpc1wiLCBcImlzb2xhdGVkXCIsIFwibGF6eVwiLFxuICAgIFwibGV0XCIsIFwibWFjcm9cIiwgXCJtdXRhdGluZ1wiLCBcIm5pbFwiLCBcIm5vbmlzb2xhdGVkXCIsIFwibm9ubXV0YXRpbmdcIiwgXCJvcGVuXCIsIFwib3BlcmF0b3JcIiwgXCJvcHRpb25hbFwiLCBcIm92ZXJyaWRlXCIsIFwicGFja2FnZVwiLFxuICAgIFwicG9zdGZpeFwiLCBcInByZWNlZGVuY2VcIiwgXCJwcmVjZWRlbmNlZ3JvdXBcIiwgXCJwcmVmaXhcIiwgXCJwcml2YXRlXCIsIFwicHJvdG9jb2xcIiwgXCJwdWJsaWNcIiwgXCJyZXBlYXRcIiwgXCJyZXF1aXJlZFwiLCBcInJldGhyb3dzXCIsIFwicmV0dXJuXCIsXG4gICAgXCJzYWZlXCIsIFwic2VsZlwiLCBcInNlbmRpbmdcIiwgXCJzZXRcIiwgXCJzb21lXCIsIFwic3RhdGljXCIsIFwic3RydWN0XCIsIFwic3Vic2NyaXB0XCIsIFwic3VwZXJcIiwgXCJzd2l0Y2hcIiwgXCJ0aHJvd3NcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsXG4gICAgXCJ0eXBlYWxpYXNcIiwgXCJ1bm93bmVkXCIsIFwidW5zYWZlXCIsIFwidmFyXCIsIFwid2Vha1wiLCBcIndoZXJlXCIsIFwid2hpbGVcIiwgXCJ3aWxsU2V0XCIsIFwieWllbGRcIiwgXCJfXCIsIFwiQm9vbFwiLCBcIkludFwiLCBcIkludDY0XCIsIFwiU3RyaW5nXCIsXG4gICAgXCJTd2lmdFwiLCBcIm1haW5cIiwgXCJwcmludFwiXG4gIF0pLFxuICBydXN0OiBuZXcgU2V0KFtcbiAgICBcImFzXCIsIFwiYXN5bmNcIiwgXCJhd2FpdFwiLCBcImJyZWFrXCIsIFwiY29uc3RcIiwgXCJjb250aW51ZVwiLCBcImNyYXRlXCIsIFwiZHluXCIsIFwiZWxzZVwiLCBcImVudW1cIiwgXCJleHRlcm5cIiwgXCJmYWxzZVwiLCBcImZuXCIsIFwiZm9yXCIsIFwiaWZcIiwgXCJpbXBsXCIsIFwiaW5cIixcbiAgICBcImxldFwiLCBcImxvb3BcIiwgXCJtYXRjaFwiLCBcIm1vZFwiLCBcIm1vdmVcIiwgXCJtdXRcIiwgXCJwdWJcIiwgXCJyZWZcIiwgXCJyZXR1cm5cIiwgXCJzZWxmXCIsIFwiU2VsZlwiLCBcInN0YXRpY1wiLCBcInN0cnVjdFwiLCBcInN1cGVyXCIsIFwidHJhaXRcIiwgXCJ0cnVlXCIsIFwidHlwZVwiLFxuICAgIFwidW5zYWZlXCIsIFwidXNlXCIsIFwid2hlcmVcIiwgXCJ3aGlsZVwiLCBcImFic3RyYWN0XCIsIFwiYmVjb21lXCIsIFwiYm94XCIsIFwiZG9cIiwgXCJmaW5hbFwiLCBcIm1hY3JvXCIsIFwib3ZlcnJpZGVcIiwgXCJwcml2XCIsIFwidHlwZW9mXCIsIFwidW5zaXplZFwiLCBcInZpcnR1YWxcIixcbiAgICBcInlpZWxkXCIsIFwidHJ5XCIsIFwidW5pb25cIiwgXCJfXCIsIFwibWFpblwiLCBcIlN0cmluZ1wiLCBcInN0ZFwiLCBcImk2NFwiLCBcImJvb2xcIlxuICBdKSxcbiAgemlnOiBuZXcgU2V0KFtcbiAgICBcImFkZHJzcGFjZVwiLCBcImFsaWduXCIsIFwiYWxsb3d6ZXJvXCIsIFwiYW5kXCIsIFwiYW55ZXJyb3JcIiwgXCJhbnlmcmFtZVwiLCBcImFueW9wYXF1ZVwiLCBcImFueXR5cGVcIiwgXCJhc21cIiwgXCJhc3luY1wiLCBcImF3YWl0XCIsIFwiYnJlYWtcIiwgXCJjYWxsY29udlwiLFxuICAgIFwiY2F0Y2hcIiwgXCJjb21wdGltZVwiLCBcImNvbnN0XCIsIFwiY29udGludWVcIiwgXCJkZWZlclwiLCBcImVsc2VcIiwgXCJlbnVtXCIsIFwiZXJyZGVmZXJcIiwgXCJlcnJvclwiLCBcImV4cG9ydFwiLCBcImV4dGVyblwiLCBcImZhbHNlXCIsXG4gICAgXCJmblwiLCBcImZvclwiLCBcImlmXCIsIFwiaW5saW5lXCIsIFwibGlua3NlY3Rpb25cIiwgXCJub2FsaWFzXCIsIFwibm9pbmxpbmVcIiwgXCJub3N1c3BlbmRcIiwgXCJudWxsXCIsIFwib3BhcXVlXCIsIFwib3JcIiwgXCJvcmVsc2VcIixcbiAgICBcInBhY2tlZFwiLCBcInB1YlwiLCBcInJlc3VtZVwiLCBcInJldHVyblwiLCBcInN0cnVjdFwiLCBcInN1c3BlbmRcIiwgXCJzd2l0Y2hcIiwgXCJ0ZXN0XCIsIFwidGhyZWFkbG9jYWxcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidW5pb25cIixcbiAgICBcInVucmVhY2hhYmxlXCIsIFwidXNpbmduYW1lc3BhY2VcIiwgXCJ2YXJcIiwgXCJ2b2xhdGlsZVwiLCBcIndoaWxlXCIsIFwiX1wiLCBcIm1haW5cIiwgXCJzdGRcIiwgXCJib29sXCIsIFwiY19jaGFyXCIsIFwiY19pbnRcIiwgXCJjX2xvbmdcIixcbiAgICBcImNfbG9uZ2RvdWJsZVwiLCBcImNfbG9uZ2xvbmdcIiwgXCJjX3Nob3J0XCIsIFwiY191aW50XCIsIFwiY191bG9uZ1wiLCBcImNfdWxvbmdsb25nXCIsIFwiY191c2hvcnRcIiwgXCJjb21wdGltZV9mbG9hdFwiLFxuICAgIFwiY29tcHRpbWVfaW50XCIsIFwiZjE2XCIsIFwiZjMyXCIsIFwiZjY0XCIsIFwiZjgwXCIsIFwiZjEyOFwiLCBcImlzaXplXCIsIFwibm9yZXR1cm5cIiwgXCJ0eXBlXCIsIFwidW5kZWZpbmVkXCIsIFwidXNpemVcIiwgXCJ2b2lkXCIsXG4gICAgXCJzZW1hbnRpZm9sZF9hcmVuYVwiLCBcInNlbWFudGlmb2xkX2ZhaWxcIiwgXCJzZW1hbnRpZm9sZF9pbnRlZ2VyX2FkZFwiLCBcInNlbWFudGlmb2xkX2ludGVnZXJfc3VidHJhY3RcIixcbiAgICBcInNlbWFudGlmb2xkX2ludGVnZXJfbXVsdGlwbHlcIiwgXCJzZW1hbnRpZm9sZF9pbnRlZ2VyX25lZ2F0ZVwiLCBcInNlbWFudGlmb2xkX3N0cmluZ19jb25jYXRcIiwgXCJzZW1hbnRpZm9sZF9zdHJpbmdfZXF1YWxcIixcbiAgICBcInNlbWFudGlmb2xkX3N0cmluZ19ub3RfZXF1YWxcIiwgXCJzZW1hbnRpZm9sZF9wcmludF9pbnRlZ2VyXCIsIFwic2VtYW50aWZvbGRfcHJpbnRfYm9vbGVhblwiLCBcInNlbWFudGlmb2xkX3ByaW50X3N0cmluZ1wiXG4gIF0pLFxuICBjcHA6IG5ldyBTZXQoW1xuICAgIFwiYWxpZ25hc1wiLCBcImFsaWdub2ZcIiwgXCJhbmRcIiwgXCJhbmRfZXFcIiwgXCJhc21cIiwgXCJhdXRvXCIsIFwiYml0YW5kXCIsIFwiYml0b3JcIiwgXCJib29sXCIsIFwiYnJlYWtcIiwgXCJjYXNlXCIsIFwiY2F0Y2hcIiwgXCJjaGFyXCIsIFwiY2hhcjhfdFwiLCBcImNoYXIxNl90XCIsIFwiY2hhcjMyX3RcIiwgXCJjbGFzc1wiLCBcImNvbXBsXCIsIFwiY29uY2VwdFwiLCBcImNvbnN0XCIsIFwiY29uc3RldmFsXCIsIFwiY29uc3RleHByXCIsIFwiY29uc3Rpbml0XCIsIFwiY29uc3RfY2FzdFwiLCBcImNvbnRpbnVlXCIsIFwiY29fYXdhaXRcIiwgXCJjb19yZXR1cm5cIiwgXCJjb195aWVsZFwiLCBcImRlY2x0eXBlXCIsIFwiZGVmYXVsdFwiLCBcImRlbGV0ZVwiLCBcImRvXCIsIFwiZG91YmxlXCIsIFwiZHluYW1pY19jYXN0XCIsIFwiZWxzZVwiLCBcImVudW1cIiwgXCJleHBsaWNpdFwiLCBcImV4cG9ydFwiLCBcImV4dGVyblwiLCBcImZhbHNlXCIsIFwiZmxvYXRcIiwgXCJmb3JcIiwgXCJmcmllbmRcIiwgXCJnb3RvXCIsIFwiaWZcIiwgXCJpbmxpbmVcIiwgXCJpbnRcIiwgXCJsb25nXCIsIFwibXV0YWJsZVwiLCBcIm5hbWVzcGFjZVwiLCBcIm5ld1wiLCBcIm5vZXhjZXB0XCIsIFwibm90XCIsIFwibm90X2VxXCIsIFwibnVsbHB0clwiLCBcIm9wZXJhdG9yXCIsIFwib3JcIiwgXCJvcl9lcVwiLCBcInByaXZhdGVcIiwgXCJwcm90ZWN0ZWRcIiwgXCJwdWJsaWNcIiwgXCJyZWdpc3RlclwiLCBcInJlaW50ZXJwcmV0X2Nhc3RcIiwgXCJyZXF1aXJlc1wiLCBcInJldHVyblwiLCBcInNob3J0XCIsIFwic2lnbmVkXCIsIFwic2l6ZW9mXCIsIFwic3RhdGljXCIsIFwic3RhdGljX2Fzc2VydFwiLCBcInN0YXRpY19jYXN0XCIsIFwic3RydWN0XCIsIFwic3dpdGNoXCIsIFwidGVtcGxhdGVcIiwgXCJ0aGlzXCIsIFwidGhyZWFkX2xvY2FsXCIsIFwidGhyb3dcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidHlwZWRlZlwiLCBcInR5cGVpZFwiLCBcInR5cGVuYW1lXCIsIFwidW5pb25cIiwgXCJ1bnNpZ25lZFwiLCBcInVzaW5nXCIsIFwidmlydHVhbFwiLCBcInZvaWRcIiwgXCJ2b2xhdGlsZVwiLCBcIndjaGFyX3RcIiwgXCJ3aGlsZVwiLCBcInhvclwiLCBcInhvcl9lcVwiLCBcInN0ZFwiLCBcInN0cmluZ1wiLCBcIm51bWVyaWNfbGltaXRzXCIsXG4gICAgLy8gVGhlIHF1YWxpZmllZCBsaWJzdGRjKysgPHN0cmluZz4gaW5jbHVkZSBjaGFpbiBhbHNvIGV4cG9zZXMgdGhlc2UgZ2xvYmFsIG5hbWVzLlxuICAgIFwiV0VPRlwiLCBcIndpbnRfdFwiXG4gIF0pLFxuICBjOiBuZXcgU2V0KFtcbiAgICBcImF1dG9cIiwgXCJicmVha1wiLCBcImNhc2VcIiwgXCJjaGFyXCIsIFwiY29uc3RcIiwgXCJjb250aW51ZVwiLCBcImRlZmF1bHRcIiwgXCJkb1wiLCBcImRvdWJsZVwiLCBcImVsc2VcIiwgXCJlbnVtXCIsIFwiZXh0ZXJuXCIsXG4gICAgXCJmbG9hdFwiLCBcImZvclwiLCBcImdvdG9cIiwgXCJpZlwiLCBcImlubGluZVwiLCBcImludFwiLCBcImxvbmdcIiwgXCJyZWdpc3RlclwiLCBcInJlc3RyaWN0XCIsIFwicmV0dXJuXCIsIFwic2hvcnRcIiwgXCJzaWduZWRcIixcbiAgICBcInNpemVvZlwiLCBcInN0YXRpY1wiLCBcInN0cnVjdFwiLCBcInN3aXRjaFwiLCBcInR5cGVkZWZcIiwgXCJ1bmlvblwiLCBcInVuc2lnbmVkXCIsIFwidm9pZFwiLCBcInZvbGF0aWxlXCIsIFwid2hpbGVcIixcbiAgICBcImJvb2xcIiwgXCJ0cnVlXCIsIFwiZmFsc2VcIiwgXCJUUlVFXCIsIFwiRkFMU0VcIiwgXCJpbnQ2NF90XCIsIFwidWludDY0X3RcIiwgXCJzaXplX3RcIiwgXCJwdHJkaWZmX3RcIiwgXCJtYWluXCIsIFwiTlVMTFwiLCBcIklOVDY0X0NcIiwgXCJVSU5UNjRfQ1wiLFxuICAgIFwiSU5UNjRfTUlOXCIsIFwiSU5UNjRfTUFYXCIsIFwiUFRSRElGRl9NQVhcIiwgXCJDSEFSX0JJVFwiLCBcInN0ZGluXCIsIFwic3Rkb3V0XCIsIFwic3RkZXJyXCIsIFwibWFsbG9jXCIsIFwiZnJlZVwiLCBcImV4aXRcIixcbiAgICBcImZ3cml0ZVwiLCBcImZmbHVzaFwiLCBcIm1lbWNweVwiLCBcIm1lbWNtcFwiLCBcIkZJTEVcIiwgXCJmcG9zX3RcIiwgXCJkaXZfdFwiLCBcImxkaXZfdFwiLCBcImxsZGl2X3RcIiwgXCJ3Y2hhcl90XCIsIFwibWF4X2FsaWduX3RcIixcbiAgICBcIm9mZnNldG9mXCIsIFwiYWxpZ25hc1wiLCBcImFsaWdub2ZcIiwgXCJub3JldHVyblwiLCBcInRydWVcIiwgXCJmYWxzZVwiLCBcImFzc2VydFwiLCBcInN0YXRpY19hc3NlcnRcIiwgXCJlcnJub1wiLFxuICAgIFwiRU9GXCIsIFwiQlVGU0laXCIsIFwiRk9QRU5fTUFYXCIsIFwiRklMRU5BTUVfTUFYXCIsIFwiTF90bXBuYW1cIiwgXCJTRUVLX0NVUlwiLCBcIlNFRUtfRU5EXCIsIFwiU0VFS19TRVRcIiwgXCJUTVBfTUFYXCIsXG4gICAgXCJFWElUX0ZBSUxVUkVcIiwgXCJFWElUX1NVQ0NFU1NcIiwgXCJNQl9DVVJfTUFYXCIsIFwiTUJfTEVOX01BWFwiLCBcIlJBTkRfTUFYXCIsXG4gICAgXCJyZW1vdmVcIiwgXCJyZW5hbWVcIiwgXCJ0bXBmaWxlXCIsIFwidG1wbmFtXCIsIFwiZmNsb3NlXCIsIFwiZm9wZW5cIiwgXCJmcmVvcGVuXCIsIFwic2V0YnVmXCIsIFwic2V0dmJ1ZlwiLFxuICAgIFwiZnByaW50ZlwiLCBcImZzY2FuZlwiLCBcInByaW50ZlwiLCBcInNjYW5mXCIsIFwic25wcmludGZcIiwgXCJzcHJpbnRmXCIsIFwic3NjYW5mXCIsIFwidmZwcmludGZcIiwgXCJ2ZnNjYW5mXCIsIFwidnByaW50ZlwiLFxuICAgIFwidnNjYW5mXCIsIFwidnNucHJpbnRmXCIsIFwidnNwcmludGZcIiwgXCJ2c3NjYW5mXCIsIFwiZmdldGNcIiwgXCJmZ2V0c1wiLCBcImZwdXRjXCIsIFwiZnB1dHNcIiwgXCJnZXRjXCIsIFwiZ2V0Y2hhclwiLFxuICAgIFwicHV0Y1wiLCBcInB1dGNoYXJcIiwgXCJwdXRzXCIsIFwidW5nZXRjXCIsIFwiZnJlYWRcIiwgXCJmZ2V0cG9zXCIsIFwiZnNlZWtcIiwgXCJmc2V0cG9zXCIsIFwiZnRlbGxcIiwgXCJyZXdpbmRcIiwgXCJjbGVhcmVyclwiLFxuICAgIFwiZmVvZlwiLCBcImZlcnJvclwiLCBcInBlcnJvclwiLCBcImF0b2ZcIiwgXCJhdG9pXCIsIFwiYXRvbFwiLCBcImF0b2xsXCIsIFwic3RydG9kXCIsIFwic3RydG9mXCIsIFwic3RydG9sZFwiLCBcInN0cnRvbFwiLFxuICAgIFwic3RydG9sbFwiLCBcInN0cnRvdWxcIiwgXCJzdHJ0b3VsbFwiLCBcInJhbmRcIiwgXCJzcmFuZFwiLCBcImFsaWduZWRfYWxsb2NcIiwgXCJjYWxsb2NcIiwgXCJyZWFsbG9jXCIsIFwiYWJvcnRcIiwgXCJhdGV4aXRcIixcbiAgICBcImF0X3F1aWNrX2V4aXRcIiwgXCJxdWlja19leGl0XCIsIFwiZ2V0ZW52XCIsIFwic3lzdGVtXCIsIFwiYnNlYXJjaFwiLCBcInFzb3J0XCIsIFwiYWJzXCIsIFwibGFic1wiLCBcImxsYWJzXCIsIFwiZGl2XCIsIFwibGRpdlwiLFxuICAgIFwibGxkaXZcIiwgXCJtYmxlblwiLCBcIm1idG93Y1wiLCBcIndjdG9tYlwiLCBcIm1ic3Rvd2NzXCIsIFwid2NzdG9tYnNcIiwgXCJtZW1tb3ZlXCIsIFwic3RyY3B5XCIsIFwic3RybmNweVwiLCBcInN0cmNhdFwiLFxuICAgIFwic3RybmNhdFwiLCBcInN0cmNtcFwiLCBcInN0cmNvbGxcIiwgXCJzdHJuY21wXCIsIFwic3RyeGZybVwiLCBcIm1lbWNoclwiLCBcInN0cmNoclwiLCBcInN0cmNzcG5cIiwgXCJzdHJwYnJrXCIsIFwic3RycmNoclwiLFxuICAgIFwic3Ryc3BuXCIsIFwic3Ryc3RyXCIsIFwic3RydG9rXCIsIFwibWVtc2V0XCIsIFwic3RyZXJyb3JcIiwgXCJzdHJsZW5cIlxuICBdKSxcbiAgY3NoYXJwOiBuZXcgU2V0KFtcbiAgICBcIl9fYXJnbGlzdFwiLCBcIl9fbWFrZXJlZlwiLCBcIl9fcmVmdHlwZVwiLCBcIl9fcmVmdmFsdWVcIiwgXCJhYnN0cmFjdFwiLCBcImFkZFwiLCBcImFsaWFzXCIsIFwiYWxsb3dzXCIsIFwiYW5kXCIsIFwiYXNcIixcbiAgICBcImFzY2VuZGluZ1wiLCBcImFzeW5jXCIsIFwiYXdhaXRcIiwgXCJiYXNlXCIsIFwiYm9vbFwiLCBcImJyZWFrXCIsXG4gICAgXCJieVwiLCBcImJ5dGVcIiwgXCJjYXNlXCIsIFwiY2F0Y2hcIiwgXCJjaGFyXCIsIFwiY2hlY2tlZFwiLCBcImNsYXNzXCIsIFwiY29uc3RcIiwgXCJjb250aW51ZVwiLCBcImRlY2ltYWxcIiwgXCJkZWZhdWx0XCIsXG4gICAgXCJkZWxlZ2F0ZVwiLCBcImRlc2NlbmRpbmdcIiwgXCJkb1wiLCBcImRvdWJsZVwiLCBcImR5bmFtaWNcIiwgXCJlbHNlXCIsIFwiZW51bVwiLCBcImVxdWFsc1wiLCBcImV2ZW50XCIsIFwiZXhwbGljaXRcIiwgXCJleHRlbnNpb25cIiwgXCJleHRlcm5cIixcbiAgICBcImZhbHNlXCIsIFwiZmllbGRcIiwgXCJmaWxlXCIsIFwiZmluYWxseVwiLCBcImZpeGVkXCIsIFwiZmxvYXRcIiwgXCJmb3JcIiwgXCJmb3JlYWNoXCIsIFwiZnJvbVwiLCBcImdldFwiLCBcImdsb2JhbFwiLCBcImdvdG9cIixcbiAgICBcImdyb3VwXCIsIFwiaWZcIiwgXCJpbXBsaWNpdFwiLCBcImluXCIsIFwiaW5pdFwiLCBcImludFwiLCBcImludGVyZmFjZVwiLCBcImludGVybmFsXCIsIFwiaW50b1wiLCBcImlzXCIsIFwiam9pblwiLCBcImxldFwiLCBcImxvY2tcIixcbiAgICBcImxvbmdcIiwgXCJtYW5hZ2VkXCIsIFwibmFtZW9mXCIsIFwibmFtZXNwYWNlXCIsIFwibmV3XCIsIFwibmludFwiLCBcIm5vdFwiLCBcIm5vdG51bGxcIiwgXCJudWxsXCIsIFwibnVpbnRcIiwgXCJvYmplY3RcIiwgXCJvblwiLFxuICAgIFwib3BlcmF0b3JcIiwgXCJvclwiLCBcIm9yZGVyYnlcIiwgXCJvdXRcIiwgXCJvdmVycmlkZVwiLCBcInBhcmFtc1wiLCBcInBhcnRpYWxcIiwgXCJwcml2YXRlXCIsIFwicHJvdGVjdGVkXCIsIFwicHVibGljXCIsIFwicmVhZG9ubHlcIixcbiAgICBcInJlY29yZFwiLCBcInJlZlwiLCBcInJlbW92ZVwiLCBcInJlcXVpcmVkXCIsIFwicmV0dXJuXCIsIFwic2J5dGVcIiwgXCJzY29wZWRcIiwgXCJzZWFsZWRcIiwgXCJzZWxlY3RcIiwgXCJzZXRcIiwgXCJzaG9ydFwiLCBcInNpemVvZlwiLFxuICAgIFwic3RhY2thbGxvY1wiLCBcInN0YXRpY1wiLCBcInN0cmluZ1wiLCBcInN0cnVjdFwiLCBcInN3aXRjaFwiLCBcInRoaXNcIiwgXCJ0aHJvd1wiLCBcInRydWVcIiwgXCJ0cnlcIiwgXCJ0eXBlb2ZcIiwgXCJ1aW50XCIsIFwidWxvbmdcIixcbiAgICBcInVuY2hlY2tlZFwiLCBcInVubWFuYWdlZFwiLCBcInVuc2FmZVwiLCBcInVzaG9ydFwiLCBcInVzaW5nXCIsIFwidmFsdWVcIiwgXCJ2YXJcIiwgXCJ2aXJ0dWFsXCIsIFwidm9pZFwiLCBcInZvbGF0aWxlXCIsIFwid2hlblwiLFxuICAgIFwid2hlcmVcIiwgXCJ3aGlsZVwiLCBcIndpdGhcIiwgXCJ5aWVsZFwiXG4gIF0pLFxuICBnbzogbmV3IFNldChbXG4gICAgXCJfXCIsIFwiYnJlYWtcIiwgXCJkZWZhdWx0XCIsIFwiZnVuY1wiLCBcImludGVyZmFjZVwiLCBcInNlbGVjdFwiLCBcImNhc2VcIiwgXCJkZWZlclwiLCBcImdvXCIsIFwibWFwXCIsIFwic3RydWN0XCIsIFwiY2hhblwiLFxuICAgIFwiZWxzZVwiLCBcImdvdG9cIiwgXCJwYWNrYWdlXCIsIFwic3dpdGNoXCIsIFwiY29uc3RcIiwgXCJmYWxsdGhyb3VnaFwiLCBcImlmXCIsIFwicmFuZ2VcIiwgXCJ0eXBlXCIsIFwiY29udGludWVcIiwgXCJmb3JcIixcbiAgICBcImltcG9ydFwiLCBcInJldHVyblwiLCBcInZhclwiXG4gIF0pLFxuICBqYXZhOiBuZXcgU2V0KFtcbiAgICBcIl9cIiwgXCJhYnN0cmFjdFwiLCBcImFzc2VydFwiLCBcImJvb2xlYW5cIiwgXCJicmVha1wiLCBcImJ5dGVcIiwgXCJjYXNlXCIsIFwiY2F0Y2hcIiwgXCJjaGFyXCIsIFwiY2xhc3NcIiwgXCJjb25zdFwiLCBcImNvbnRpbnVlXCIsXG4gICAgXCJkZWZhdWx0XCIsIFwiZG9cIiwgXCJkb3VibGVcIiwgXCJlbHNlXCIsIFwiZW51bVwiLCBcImV4cG9ydHNcIiwgXCJleHRlbmRzXCIsIFwiZmFsc2VcIiwgXCJmaW5hbFwiLCBcImZpbmFsbHlcIiwgXCJmbG9hdFwiLCBcImZvclwiLFxuICAgIFwiZ290b1wiLCBcImlmXCIsIFwiaW1wbGVtZW50c1wiLCBcImltcG9ydFwiLCBcImluc3RhbmNlb2ZcIiwgXCJpbnRcIiwgXCJpbnRlcmZhY2VcIiwgXCJsb25nXCIsIFwibW9kdWxlXCIsIFwibmF0aXZlXCIsIFwibmV3XCIsXG4gICAgXCJub24tc2VhbGVkXCIsIFwibnVsbFwiLCBcIm9wZW5cIiwgXCJvcGVuc1wiLCBcInBhY2thZ2VcIiwgXCJwZXJtaXRzXCIsIFwicHJpdmF0ZVwiLCBcInByb3RlY3RlZFwiLCBcInByb3ZpZGVzXCIsIFwicHVibGljXCIsXG4gICAgXCJyZWNvcmRcIiwgXCJyZXF1aXJlc1wiLCBcInJldHVyblwiLCBcInNlYWxlZFwiLCBcInNob3J0XCIsIFwic3RhdGljXCIsIFwic3RyaWN0ZnBcIiwgXCJzdXBlclwiLCBcInN3aXRjaFwiLCBcInN5bmNocm9uaXplZFwiLFxuICAgIFwidGhpc1wiLCBcInRocm93XCIsIFwidGhyb3dzXCIsIFwidG9cIiwgXCJ0cmFuc2llbnRcIiwgXCJ0cmFuc2l0aXZlXCIsIFwidHJ1ZVwiLCBcInRyeVwiLCBcInVzZXNcIiwgXCJ2YXJcIiwgXCJ2b2lkXCIsIFwidm9sYXRpbGVcIixcbiAgICBcIndoZW5cIiwgXCJ3aGlsZVwiLCBcIndpdGhcIiwgXCJ5aWVsZFwiXG4gIF0pLFxuICBqYXZhc2NyaXB0OiBuZXcgU2V0KFtcbiAgICBcImF3YWl0XCIsIFwiYnJlYWtcIiwgXCJjYXNlXCIsIFwiY2F0Y2hcIiwgXCJjbGFzc1wiLCBcImNvbnN0XCIsIFwiY29udGludWVcIiwgXCJkZWJ1Z2dlclwiLCBcImRlZmF1bHRcIiwgXCJkZWxldGVcIiwgXCJkb1wiLCBcImVsc2VcIixcbiAgICBcImVudW1cIiwgXCJleHBvcnRcIiwgXCJleHRlbmRzXCIsIFwiZmFsc2VcIiwgXCJmaW5hbGx5XCIsIFwiZm9yXCIsIFwiZnVuY3Rpb25cIiwgXCJpZlwiLCBcImltcGxlbWVudHNcIiwgXCJpbXBvcnRcIiwgXCJpblwiLFxuICAgIFwiaW5zdGFuY2VvZlwiLCBcImludGVyZmFjZVwiLCBcImxldFwiLCBcIm5ld1wiLCBcIm51bGxcIiwgXCJwYWNrYWdlXCIsIFwicHJpdmF0ZVwiLCBcInByb3RlY3RlZFwiLCBcInB1YmxpY1wiLCBcInJldHVyblwiLCBcInN0YXRpY1wiLFxuICAgIFwic3VwZXJcIiwgXCJzd2l0Y2hcIiwgXCJ0aGlzXCIsIFwidGhyb3dcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidHlwZW9mXCIsIFwidmFyXCIsIFwidm9pZFwiLCBcIndoaWxlXCIsIFwid2l0aFwiLCBcInlpZWxkXCJcbiAgXSksXG4gIHBocDogbmV3IFNldChbXG4gICAgXCJfX2hhbHRfY29tcGlsZXJcIiwgXCJhYnN0cmFjdFwiLCBcImFuZFwiLCBcImFycmF5XCIsIFwiYXNcIiwgXCJicmVha1wiLCBcImNhbGxhYmxlXCIsIFwiY2FzZVwiLCBcImNhdGNoXCIsIFwiY2xhc3NcIiwgXCJjbG9uZVwiLFxuICAgIFwiY29uc3RcIiwgXCJjb250aW51ZVwiLCBcImRlY2xhcmVcIiwgXCJkZWZhdWx0XCIsIFwiZGllXCIsIFwiZG9cIiwgXCJlY2hvXCIsIFwiZWxzZVwiLCBcImVsc2VpZlwiLCBcImVtcHR5XCIsIFwiZW5kZGVjbGFyZVwiLFxuICAgIFwiZW5kZm9yXCIsIFwiZW5kZm9yZWFjaFwiLCBcImVuZGlmXCIsIFwiZW5kc3dpdGNoXCIsIFwiZW5kd2hpbGVcIiwgXCJlbnVtXCIsIFwiZXZhbFwiLCBcImV4aXRcIiwgXCJleHRlbmRzXCIsIFwiZmFsc2VcIiwgXCJmaW5hbFwiLFxuICAgIFwiZmluYWxseVwiLCBcImZuXCIsIFwiZm9yXCIsIFwiZm9yZWFjaFwiLCBcImZyb21cIiwgXCJmdW5jdGlvblwiLCBcImdsb2JhbFwiLCBcImdvdG9cIiwgXCJpZlwiLCBcImltcGxlbWVudHNcIiwgXCJpbmNsdWRlXCIsXG4gICAgXCJpbmNsdWRlX29uY2VcIiwgXCJpbnN0YW5jZW9mXCIsIFwiaW5zdGVhZG9mXCIsIFwiaW50ZXJmYWNlXCIsIFwiaXNzZXRcIiwgXCJpdGVyYWJsZVwiLCBcImxpc3RcIiwgXCJtYXRjaFwiLCBcIm1peGVkXCIsIFwibmFtZXNwYWNlXCIsXG4gICAgXCJuZXZlclwiLCBcIm5ld1wiLCBcIm51bGxcIiwgXCJvYmplY3RcIiwgXCJvclwiLCBcInBhcmVudFwiLCBcInByaW50XCIsIFwicHJpdmF0ZVwiLCBcInByb3RlY3RlZFwiLCBcInB1YmxpY1wiLCBcInJlYWRvbmx5XCIsIFwicmVxdWlyZVwiLFxuICAgIFwicmVxdWlyZV9vbmNlXCIsIFwicmV0dXJuXCIsIFwic2VsZlwiLCBcInN0YXRpY1wiLCBcInN3aXRjaFwiLCBcInRocm93XCIsIFwidHJhaXRcIiwgXCJ0cnVlXCIsIFwidHJ5XCIsIFwidW5zZXRcIiwgXCJ1c2VcIiwgXCJ2YXJcIixcbiAgICBcInZvaWRcIiwgXCJ3aGlsZVwiLCBcInhvclwiLCBcInlpZWxkXCJcbiAgXSksXG4gIHB5dGhvbjogbmV3IFNldChbXG4gICAgXCJGYWxzZVwiLCBcIk5vbmVcIiwgXCJUcnVlXCIsIFwiYW5kXCIsIFwiYXNcIiwgXCJhc3NlcnRcIiwgXCJhc3luY1wiLCBcImF3YWl0XCIsIFwiYm9vbFwiLCBcImJyZWFrXCIsIFwiY2FzZVwiLCBcImNsYXNzXCIsXG4gICAgXCJjb250aW51ZVwiLCBcImRlZlwiLCBcImRlbFwiLCBcImVsaWZcIiwgXCJlbHNlXCIsIFwiZXhjZXB0XCIsIFwiZXhlY1wiLCBcImZpbmFsbHlcIiwgXCJmb3JcIiwgXCJmcm9tXCIsIFwiZ2xvYmFsXCIsIFwiaWZcIixcbiAgICBcImltcG9ydFwiLCBcImluXCIsIFwiaW50XCIsIFwiaXNcIiwgXCJsYW1iZGFcIiwgXCJtYXRjaFwiLCBcIm5vbmxvY2FsXCIsIFwibm90XCIsIFwib3JcIiwgXCJwYXNzXCIsIFwicHJpbnRcIixcbiAgICBcInJhaXNlXCIsIFwicmV0dXJuXCIsIFwic3RyXCIsIFwidHJ5XCIsIFwidHlwZVwiLCBcIndoaWxlXCIsIFwid2l0aFwiLCBcInlpZWxkXCIsIFwiX1wiLCBcIl9fZGVidWdfX1wiXG4gIF0pLFxuICBydWJ5OiBuZXcgU2V0KFtcbiAgICBcIkJFR0lOXCIsIFwiRU5EXCIsIFwiX19FTkNPRElOR19fXCIsIFwiX19FTkRfX1wiLCBcIl9fRklMRV9fXCIsIFwiX19MSU5FX19cIiwgXCJhbGlhc1wiLCBcImFuZFwiLCBcImJlZ2luXCIsIFwiYnJlYWtcIiwgXCJjYXNlXCIsXG4gICAgXCJjbGFzc1wiLCBcImRlZlwiLCBcImRlZmluZWQ/XCIsIFwiZG9cIiwgXCJlbHNlXCIsIFwiZWxzaWZcIiwgXCJlbmRcIiwgXCJlbnN1cmVcIiwgXCJmYWxzZVwiLCBcImZvclwiLCBcImlmXCIsIFwiaW5cIiwgXCJtb2R1bGVcIixcbiAgICBcIm5leHRcIiwgXCJuaWxcIiwgXCJub3RcIiwgXCJvclwiLCBcInJlZG9cIiwgXCJyZXNjdWVcIiwgXCJyZXRyeVwiLCBcInJldHVyblwiLCBcInNlbGZcIiwgXCJzdXBlclwiLCBcInRoZW5cIiwgXCJ0cnVlXCIsIFwidW5kZWZcIixcbiAgICBcInVubGVzc1wiLCBcInVudGlsXCIsIFwid2hlblwiLCBcIndoaWxlXCIsIFwieWllbGRcIlxuICBdKSxcbiAgdHlwZXNjcmlwdDogbmV3IFNldChbXG4gICAgXCJhYnN0cmFjdFwiLCBcImFueVwiLCBcImFzXCIsIFwiYXNzZXJ0c1wiLCBcImFzeW5jXCIsIFwiYXdhaXRcIiwgXCJib29sZWFuXCIsIFwiYnJlYWtcIiwgXCJjYXNlXCIsIFwiY2F0Y2hcIiwgXCJjbGFzc1wiLCBcImNvbnN0XCIsXG4gICAgXCJjb25zdHJ1Y3RvclwiLCBcImNvbnRpbnVlXCIsIFwiZGVidWdnZXJcIiwgXCJkZWNsYXJlXCIsIFwiZGVmYXVsdFwiLCBcImRlbGV0ZVwiLCBcImRvXCIsIFwiZWxzZVwiLCBcImVudW1cIiwgXCJleHBvcnRcIiwgXCJleHRlbmRzXCIsXG4gICAgXCJmYWxzZVwiLCBcImZpbmFsbHlcIiwgXCJmb3JcIiwgXCJmcm9tXCIsIFwiZnVuY3Rpb25cIiwgXCJnZXRcIiwgXCJpZlwiLCBcImltcGxlbWVudHNcIiwgXCJpbXBvcnRcIiwgXCJpblwiLCBcImluZmVyXCIsIFwiaW5zdGFuY2VvZlwiLFxuICAgIFwiaW50ZXJmYWNlXCIsIFwiaXNcIiwgXCJrZXlvZlwiLCBcImxldFwiLCBcIm1vZHVsZVwiLCBcIm5hbWVzcGFjZVwiLCBcIm5ldmVyXCIsIFwibmV3XCIsIFwibnVsbFwiLCBcIm51bWJlclwiLCBcIm9iamVjdFwiLCBcIm9mXCIsXG4gICAgXCJvdmVycmlkZVwiLCBcInBhY2thZ2VcIiwgXCJwcml2YXRlXCIsIFwicHJvdGVjdGVkXCIsIFwicHVibGljXCIsIFwicmVhZG9ubHlcIiwgXCJyZXF1aXJlXCIsIFwicmV0dXJuXCIsIFwic2F0aXNmaWVzXCIsIFwic2V0XCIsXG4gICAgXCJzdGF0aWNcIiwgXCJzdHJpbmdcIiwgXCJzdXBlclwiLCBcInN3aXRjaFwiLCBcInN5bWJvbFwiLCBcInRoaXNcIiwgXCJ0aHJvd1wiLCBcInRydWVcIiwgXCJ0cnlcIiwgXCJ0eXBlXCIsIFwidHlwZW9mXCIsIFwidW5kZWZpbmVkXCIsXG4gICAgXCJ1bmlxdWVcIiwgXCJ1bmtub3duXCIsIFwidXNpbmdcIiwgXCJ2YXJcIiwgXCJ2b2lkXCIsIFwid2hpbGVcIiwgXCJ3aXRoXCIsIFwieWllbGRcIlxuICBdKSxcbiAgd2FzbTogbmV3IFNldCgpXG59XG5cbmNvbnN0IHBocEludmFsaWRQYXJhbWV0ZXJCaW5kaW5ncyA9IG5ldyBTZXQoW1xuICBcIkdMT0JBTFNcIiwgXCJfQ09PS0lFXCIsIFwiX0VOVlwiLCBcIl9GSUxFU1wiLCBcIl9HRVRcIiwgXCJfUE9TVFwiLCBcIl9SRVFVRVNUXCIsIFwiX1NFUlZFUlwiLCBcIl9TRVNTSU9OXCIsIFwidGhpc1wiXG5dKVxuY29uc3QgcGhwSW52YWxpZEFzc2lnbmVkQmluZGluZ3MgPSBuZXcgU2V0KFtcIkdMT0JBTFNcIiwgXCJ0aGlzXCJdKVxuXG4vKiogQHR5cGUge1JlYWRvbmx5PFBhcnRpYWw8UmVjb3JkPGltcG9ydChcIi4uL3NlbWFudGljL3R5cGVzLmpzXCIpLkJhY2tlbmRMYW5ndWFnZSwgU2V0PHN0cmluZz4+Pj59ICovXG5jb25zdCByZXNlcnZlZFR5cGVOYW1lcyA9IE9iamVjdC5mcmVlemUoe1xuICBqYXZhOiBuZXcgU2V0KFtcIkJvb2xlYW5cIiwgXCJJbnRlZ2VyXCIsIFwiTWFpblwiLCBcIk1hdGhcIiwgXCJPYmplY3RcIiwgXCJTdHJpbmdcIiwgXCJTeXN0ZW1cIl0pLFxuICBqYXZhc2NyaXB0OiBuZXcgU2V0KFtcIkFycmF5XCIsIFwiQm9vbGVhblwiLCBcIk1hcFwiLCBcIk1hdGhcIiwgXCJOdW1iZXJcIiwgXCJPYmplY3RcIiwgXCJSZWZsZWN0XCIsIFwiU3RyaW5nXCJdKSxcbiAgcGhwOiBuZXcgU2V0KFtcbiAgICBcImFkZHJlc3NpbmZvXCIsIFwiYWxsb3dkeW5hbWljcHJvcGVydGllc1wiLCBcImFwcGVuZGl0ZXJhdG9yXCIsIFwiYXJndW1lbnRjb3VudGVycm9yXCIsIFwiYXJpdGhtZXRpY2Vycm9yXCIsIFwiYXJyYXlhY2Nlc3NcIixcbiAgICBcImFycmF5aXRlcmF0b3JcIiwgXCJhcnJheW9iamVjdFwiLCBcImFzc2VydGlvbmVycm9yXCIsIFwiYXR0cmlidXRlXCIsIFwiYmFja2VkZW51bVwiLCBcImJhZGZ1bmN0aW9uY2FsbGV4Y2VwdGlvblwiLFxuICAgIFwiYmFkbWV0aG9kY2FsbGV4Y2VwdGlvblwiLCBcImNhY2hpbmdpdGVyYXRvclwiLFxuICAgIFwiY2FsbGJhY2tmaWx0ZXJpdGVyYXRvclwiLCBcImNsb3NlZGdlbmVyYXRvcmV4Y2VwdGlvblwiLCBcImNsb3N1cmVcIiwgXCJjb21waWxlZXJyb3JcIiwgXCJjb3VudGFibGVcIiwgXCJkYXRlZXJyb3JcIiwgXCJkYXRlZXhjZXB0aW9uXCIsXG4gICAgXCJkYXRlaW50ZXJ2YWxcIiwgXCJkYXRlaW52YWxpZG9wZXJhdGlvbmV4Y2VwdGlvblwiLCBcImRhdGVpbnZhbGlkdGltZXpvbmVleGNlcHRpb25cIiwgXCJkYXRlbWFsZm9ybWVkaW50ZXJ2YWxzdHJpbmdleGNlcHRpb25cIixcbiAgICBcImRhdGVtYWxmb3JtZWRwZXJpb2RzdHJpbmdleGNlcHRpb25cIiwgXCJkYXRlbWFsZm9ybWVkc3RyaW5nZXhjZXB0aW9uXCIsIFwiZGF0ZW9iamVjdGVycm9yXCIsIFwiZGF0ZXBlcmlvZFwiLCBcImRhdGVyYW5nZWVycm9yXCIsXG4gICAgXCJkYXRldGltZVwiLCBcImRhdGV0aW1laW1tdXRhYmxlXCIsIFwiZGF0ZXRpbWVpbnRlcmZhY2VcIiwgXCJkYXRldGltZXpvbmVcIiwgXCJkZWZsYXRlY29udGV4dFwiLCBcImRlbGF5ZWR0YXJnZXR2YWxpZGF0aW9uXCIsXG4gICAgXCJkZXByZWNhdGVkXCIsIFwiZGlyZWN0b3J5XCIsIFwiZGlyZWN0b3J5aXRlcmF0b3JcIiwgXCJkaXZpc2lvbmJ5emVyb2Vycm9yXCIsIFwiZG9tYWluZXhjZXB0aW9uXCIsIFwiZW1wdHlpdGVyYXRvclwiLCBcImVycm9yXCIsXG4gICAgXCJlcnJvcmV4Y2VwdGlvblwiLCBcImV4Y2VwdGlvblwiLCBcImZmaVwiLCBcImZpYmVyXCIsIFwiZmliZXJlcnJvclwiLCBcImZpbGVzeXN0ZW1pdGVyYXRvclwiLCBcImZpbHRlcml0ZXJhdG9yXCIsIFwiZmluZm9cIiwgXCJnZW5lcmF0b3JcIixcbiAgICBcImdsb2JpdGVyYXRvclwiLCBcImhhc2hjb250ZXh0XCIsIFwiaW5maW5pdGVpdGVyYXRvclwiLCBcImluZmxhdGVjb250ZXh0XCIsIFwiaW50ZXJuYWxpdGVyYXRvclwiLCBcImludmFsaWRhcmd1bWVudGV4Y2VwdGlvblwiLFxuICAgIFwiaXRlcmF0b3JcIiwgXCJpdGVyYXRvcmFnZ3JlZ2F0ZVwiLCBcIml0ZXJhdG9yaXRlcmF0b3JcIiwgXCJqc29uZXhjZXB0aW9uXCIsIFwianNvbnNlcmlhbGl6YWJsZVwiLCBcImxlbmd0aGV4Y2VwdGlvblwiLFxuICAgIFwibGlieG1sZXJyb3JcIiwgXCJsaW1pdGl0ZXJhdG9yXCIsIFwibG9naWNleGNlcHRpb25cIiwgXCJtdWx0aXBsZWl0ZXJhdG9yXCIsIFwibm9kaXNjYXJkXCIsIFwibm9yZXdpbmRpdGVyYXRvclwiLFxuICAgIFwib3BlbnNzbGFzeW1tZXRyaWNrZXlcIiwgXCJvcGVuc3NsY2VydGlmaWNhdGVcIiwgXCJvcGVuc3NsY2VydGlmaWNhdGVzaWduaW5ncmVxdWVzdFwiLFxuICAgIFwib3V0b2Zib3VuZHNleGNlcHRpb25cIiwgXCJvdXRvZnJhbmdlZXhjZXB0aW9uXCIsIFwib3V0ZXJpdGVyYXRvclwiLCBcIm92ZXJmbG93ZXhjZXB0aW9uXCIsIFwib3ZlcnJpZGVcIiwgXCJwYXJlbnRpdGVyYXRvclwiLFxuICAgIFwicGFyc2VlcnJvclwiLCBcInBkb1wiLCBcInBkb2V4Y2VwdGlvblwiLCBcInBkb3Jvd1wiLCBcInBkb3N0YXRlbWVudFwiLCBcInBoYXJcIiwgXCJwaGFyZGF0YVwiLCBcInBoYXJleGNlcHRpb25cIiwgXCJwaGFyZmlsZWluZm9cIixcbiAgICBcInBocF91c2VyX2ZpbHRlclwiLCBcInBocHRva2VuXCIsIFwicHJvcGVydHlob29rdHlwZVwiLCBcInJhbmdlZXhjZXB0aW9uXCIsIFwicmVjdXJzaXZlYXJyYXlpdGVyYXRvclwiLCBcInJlY3Vyc2l2ZWNhY2hpbmdpdGVyYXRvclwiLFxuICAgIFwicmVjdXJzaXZlY2FsbGJhY2tmaWx0ZXJpdGVyYXRvclwiLFxuICAgIFwicmVjdXJzaXZlZGlyZWN0b3J5aXRlcmF0b3JcIiwgXCJyZWN1cnNpdmVmaWx0ZXJpdGVyYXRvclwiLCBcInJlY3Vyc2l2ZWl0ZXJhdG9yXCIsIFwicmVjdXJzaXZlaXRlcmF0b3JpdGVyYXRvclwiLFxuICAgIFwicmVjdXJzaXZlcmVnZXhpdGVyYXRvclwiLCBcInJlY3Vyc2l2ZXRyZWVpdGVyYXRvclwiLCBcInJlZmxlY3Rpb25cIiwgXCJyZWZsZWN0aW9uYXR0cmlidXRlXCIsIFwicmVmbGVjdGlvbmNsYXNzXCIsXG4gICAgXCJyZWZsZWN0aW9uY2xhc3Njb25zdGFudFwiLCBcInJlZmxlY3Rpb25jb25zdGFudFwiLCBcInJlZmxlY3Rpb25lbnVtXCIsIFwicmVmbGVjdGlvbmVudW1iYWNrZWRjYXNlXCIsIFwicmVmbGVjdGlvbmVudW11bml0Y2FzZVwiLFxuICAgIFwicmVmbGVjdGlvbmV4Y2VwdGlvblwiLCBcInJlZmxlY3Rpb25leHRlbnNpb25cIiwgXCJyZWZsZWN0aW9uZmliZXJcIiwgXCJyZWZsZWN0aW9uZnVuY3Rpb25cIiwgXCJyZWZsZWN0aW9uZnVuY3Rpb25hYnN0cmFjdFwiLFxuICAgIFwicmVmbGVjdGlvbmdlbmVyYXRvclwiLCBcInJlZmxlY3Rpb25pbnRlcnNlY3Rpb250eXBlXCIsIFwicmVmbGVjdGlvbm1ldGhvZFwiLCBcInJlZmxlY3Rpb25uYW1lZHR5cGVcIiwgXCJyZWZsZWN0aW9ub2JqZWN0XCIsXG4gICAgXCJyZWZsZWN0aW9ucGFyYW1ldGVyXCIsIFwicmVmbGVjdGlvbnByb3BlcnR5XCIsIFwicmVmbGVjdGlvbnJlZmVyZW5jZVwiLCBcInJlZmxlY3Rpb250eXBlXCIsIFwicmVmbGVjdGlvbnVuaW9udHlwZVwiLFxuICAgIFwicmVmbGVjdGlvbnplbmRleHRlbnNpb25cIiwgXCJyZWZsZWN0b3JcIiwgXCJyZWdleGl0ZXJhdG9yXCIsIFwicmVxdWVzdHBhcnNlYm9keWV4Y2VwdGlvblwiLCBcInJldHVybnR5cGV3aWxsY2hhbmdlXCIsXG4gICAgXCJyb3VuZGluZ21vZGVcIiwgXCJydW50aW1lZXhjZXB0aW9uXCIsIFwic2Vla2FibGVpdGVyYXRvclwiLCBcInNlbnNpdGl2ZXBhcmFtZXRlclwiLCBcInNlbnNpdGl2ZXBhcmFtZXRlcnZhbHVlXCIsIFwic2VyaWFsaXphYmxlXCIsXG4gICAgXCJzZXNzaW9uaGFuZGxlclwiLCBcInNlc3Npb25oYW5kbGVyaW50ZXJmYWNlXCIsIFwic2Vzc2lvbmlkaW50ZXJmYWNlXCIsIFwic2Vzc2lvbnVwZGF0ZXRpbWVzdGFtcGhhbmRsZXJpbnRlcmZhY2VcIiwgXCJzaG1vcFwiLFxuICAgIFwic29ja2V0XCIsIFwic29kaXVtZXhjZXB0aW9uXCIsIFwic3BsZG91Ymx5bGlua2VkbGlzdFwiLCBcInNwbGZpbGVpbmZvXCIsXG4gICAgXCJzcGxmaWxlb2JqZWN0XCIsIFwic3BsZml4ZWRhcnJheVwiLCBcInNwbGhlYXBcIiwgXCJzcGxtYXhoZWFwXCIsIFwic3BsbWluaGVhcFwiLCBcInNwbG9iamVjdHN0b3JhZ2VcIiwgXCJzcGxvYnNlcnZlclwiLFxuICAgIFwic3BscHJpb3JpdHlxdWV1ZVwiLCBcInNwbHF1ZXVlXCIsIFwic3Bsc3RhY2tcIiwgXCJzcGxzdWJqZWN0XCIsIFwic3BsdGVtcGZpbGVvYmplY3RcIiwgXCJzdGRjbGFzc1wiLCBcInN0cmVhbWJ1Y2tldFwiLCBcInN0cmluZ2FibGVcIixcbiAgICBcInN5c3ZtZXNzYWdlcXVldWVcIiwgXCJzeXN2c2VtYXBob3JlXCIsIFwic3lzdnNoYXJlZG1lbW9yeVwiLCBcInRocm93YWJsZVwiLCBcInRyYXZlcnNhYmxlXCIsIFwidHlwZWVycm9yXCIsIFwidW5kZXJmbG93ZXhjZXB0aW9uXCIsXG4gICAgXCJ1bmV4cGVjdGVkdmFsdWVleGNlcHRpb25cIiwgXCJ1bmhhbmRsZWRtYXRjaGVycm9yXCIsIFwidW5pdGVudW1cIiwgXCJ2YWx1ZWVycm9yXCIsIFwid2Vha21hcFwiLCBcIndlYWtyZWZlcmVuY2VcIlxuICBdKSxcbiAgcnVieTogbmV3IFNldChbXG4gICAgXCJBcmd1bWVudEVycm9yXCIsIFwiQXJyYXlcIiwgXCJCYXNpY09iamVjdFwiLCBcIkJpbmRpbmdcIiwgXCJDbGFzc1wiLCBcIkNsb3NlZFF1ZXVlRXJyb3JcIiwgXCJDb21wYXJhYmxlXCIsIFwiQ29tcGxleFwiLCBcIkRhdGFcIiwgXCJEaXJcIixcbiAgICBcIkVuY29kaW5nXCIsIFwiRW5jb2RpbmdFcnJvclwiLCBcIkVudW1lcmFibGVcIiwgXCJFbnVtZXJhdG9yXCIsIFwiRU9GRXJyb3JcIiwgXCJFcnJub1wiLCBcIkV4Y2VwdGlvblwiLCBcIkZhbHNlQ2xhc3NcIiwgXCJGaWJlclwiLFxuICAgIFwiRmliZXJFcnJvclwiLCBcIkZpbGVcIiwgXCJGaWxlVGVzdFwiLCBcIkZsb2F0XCIsIFwiRnJvemVuRXJyb3JcIiwgXCJHQ1wiLCBcIkhhc2hcIiwgXCJJT1wiLCBcIklPRXJyb3JcIiwgXCJJbmRleEVycm9yXCIsIFwiSW50ZWdlclwiLFxuICAgIFwiSW50ZXJydXB0XCIsIFwiS2VybmVsXCIsIFwiS2V5RXJyb3JcIiwgXCJMb2FkRXJyb3JcIiwgXCJMb2NhbEp1bXBFcnJvclwiLCBcIk1hcnNoYWxcIiwgXCJNYXRjaERhdGFcIiwgXCJNYXRoXCIsIFwiTWV0aG9kXCIsIFwiTW9kdWxlXCIsXG4gICAgXCJNdXRleFwiLCBcIk5hbWVFcnJvclwiLCBcIk5pbENsYXNzXCIsIFwiTm9NZW1vcnlFcnJvclwiLCBcIk5vTWV0aG9kRXJyb3JcIiwgXCJOb3RJbXBsZW1lbnRlZEVycm9yXCIsIFwiTnVtZXJpY1wiLCBcIk9iamVjdFwiLFxuICAgIFwiT2JqZWN0U3BhY2VcIiwgXCJQcm9jXCIsIFwiUHJvY2Vzc1wiLCBcIlF1ZXVlXCIsIFwiUmFjdG9yXCIsIFwiUmFuZG9tXCIsIFwiUmFuZ2VcIiwgXCJSYXRpb25hbFwiLCBcIlJlZ2V4cFwiLCBcIlJlZ2V4cEVycm9yXCIsIFwiUnVieVZNXCIsXG4gICAgXCJSdW50aW1lRXJyb3JcIiwgXCJTY3JpcHRFcnJvclwiLCBcIlNlY3VyaXR5RXJyb3JcIiwgXCJTaWduYWxcIiwgXCJTaWduYWxFeGNlcHRpb25cIiwgXCJTaXplZFF1ZXVlXCIsIFwiU3RhbmRhcmRFcnJvclwiLCBcIlN0b3BJdGVyYXRpb25cIixcbiAgICBcIlN0cmluZ1wiLCBcIlN0cnVjdFwiLCBcIlN5bWJvbFwiLCBcIlN5bnRheEVycm9yXCIsIFwiU3lzdGVtQ2FsbEVycm9yXCIsIFwiU3lzdGVtRXhpdFwiLCBcIlN5c3RlbVN0YWNrRXJyb3JcIiwgXCJUaHJlYWRcIiwgXCJUaHJlYWRFcnJvclwiLFxuICAgIFwiVGhyZWFkR3JvdXBcIiwgXCJUaW1lXCIsIFwiVHJhY2VQb2ludFwiLCBcIlRydWVDbGFzc1wiLCBcIlR5cGVFcnJvclwiLCBcIlVuYm91bmRNZXRob2RcIiwgXCJVbmNhdWdodFRocm93RXJyb3JcIiwgXCJXYXJuaW5nXCIsXG4gICAgXCJaZXJvRGl2aXNpb25FcnJvclwiXG4gIF0pLFxuICB0eXBlc2NyaXB0OiBuZXcgU2V0KFtcIkFycmF5XCIsIFwiQm9vbGVhblwiLCBcIk1hcFwiLCBcIk1hdGhcIiwgXCJOdW1iZXJcIiwgXCJPYmplY3RcIiwgXCJSZWFkb25seUFycmF5XCIsIFwiUmVhZG9ubHlNYXBcIiwgXCJSZWZsZWN0XCIsIFwiU3RyaW5nXCJdKVxufSlcblxuLyoqXG4gKiBWYWxpZGF0ZXMgYW4gaWRlbnRpZmllciBhZ2FpbnN0IHRoZSB0YXJnZXQgYmFja2VuZCdzIGRlbGliZXJhdGVseSBuYXJyb3cgbGV4aWNhbCBjb250cmFjdC5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vc2VtYW50aWMvdHlwZXMuanNcIikuQmFja2VuZExhbmd1YWdlfSBsYW5ndWFnZSAtIFRhcmdldCBsYW5ndWFnZS5cbiAqIEBwYXJhbSB7dW5rbm93bn0gbmFtZSAtIENhbmRpZGF0ZSBzZW1hbnRpYyBpZGVudGlmaWVyLlxuICogQHBhcmFtIHtzdHJpbmd9IHJvbGUgLSBJZGVudGlmaWVyIHJvbGUgZm9yIGRpYWdub3N0aWNzLlxuICogQHBhcmFtIHtpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5Tb3VyY2VMb2NhdGlvbiB8IHVuZGVmaW5lZH0gbG9jYXRpb24gLSBPcmlnaW5hdGluZyBsb2NhdGlvbi5cbiAqIEByZXR1cm5zIHt2b2lkfVxuICovXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUYXJnZXRJZGVudGlmaWVyKGxhbmd1YWdlLCBuYW1lLCByb2xlLCBsb2NhdGlvbikge1xuICBpZiAodHlwZW9mIG5hbWUgIT0gXCJzdHJpbmdcIikgdW5zdXBwb3J0ZWRDYXBhYmlsaXR5KGxhbmd1YWdlLCBgJHtyb2xlfSBpZGVudGlmaWVyYCwgbG9jYXRpb24pXG5cbiAgY29uc3QgcmVzZXJ2ZWROYW1lID0gbGFuZ3VhZ2UgPT0gXCJwaHBcIiA/IG5hbWUudG9Mb3dlckNhc2UoKSA6IG5hbWVcbiAgY29uc3Qgc3ludGF4TGFuZ3VhZ2UgPSBsYW5ndWFnZSA9PSBcImlvc1wiID8gXCJzd2lmdFwiIDogbGFuZ3VhZ2UgPT0gXCJmbHV0dGVyXCIgPyBcImRhcnRcIiA6IGxhbmd1YWdlXG5cbiAgaWYgKCFpZGVudGlmaWVyUGF0dGVybnNbc3ludGF4TGFuZ3VhZ2VdLnRlc3QobmFtZSkgfHwgcmVzZXJ2ZWRXb3Jkc1tzeW50YXhMYW5ndWFnZV0uaGFzKHJlc2VydmVkTmFtZSkgfHxcbiAgICBsYW5ndWFnZSA9PSBcInB5dGhvblwiICYmIG5hbWUubm9ybWFsaXplKFwiTkZLQ1wiKSAhPSBuYW1lIHx8XG4gICAgbGFuZ3VhZ2UgPT0gXCJjXCIgJiYgIWlzQ0lkZW50aWZpZXIobmFtZSkgfHxcbiAgICBsYW5ndWFnZSA9PSBcInJ1c3RcIiAmJiAhaXNSdXN0SWRlbnRpZmllcihuYW1lKSB8fFxuICAgIGxhbmd1YWdlID09IFwiemlnXCIgJiYgIWlzWmlnSWRlbnRpZmllcihuYW1lKSB8fFxuICAgIGxhbmd1YWdlID09IFwiY3BwXCIgJiYgIWlzQ3BwSWRlbnRpZmllcihuYW1lKSB8fFxuICAgIGxhbmd1YWdlID09IFwiZGFydFwiICYmICFpc0RhcnRJZGVudGlmaWVyKG5hbWUpIHx8XG4gICAgbGFuZ3VhZ2UgPT0gXCJzd2lmdFwiICYmICghaXNTd2lmdElkZW50aWZpZXIobmFtZSkgfHwgbmFtZS5ub3JtYWxpemUoXCJORkNcIikgIT0gbmFtZSkgfHxcbiAgICBsYW5ndWFnZSA9PSBcImtvdGxpblwiICYmICghaXNLb3RsaW5JZGVudGlmaWVyKG5hbWUpIHx8IG5hbWUubm9ybWFsaXplKFwiTkZDXCIpICE9IG5hbWUpKSB7XG4gICAgdW5zdXBwb3J0ZWRDYXBhYmlsaXR5KGxhbmd1YWdlLCBgJHtyb2xlfSBpZGVudGlmaWVyICcke25hbWV9J2AsIGxvY2F0aW9uKVxuICB9XG59XG5cbi8qKlxuICogUHJvdGVjdHMgdGhlIGV4YWN0IEMgaGVhZGVyIGVudmlyb25tZW50IGFuZCBpbXBsZW1lbnRhdGlvbi1yZXNlcnZlZCBuYW1lc3BhY2UgaW4gZWl0aGVyIGRpcmVjdGlvbi5cbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gQ2FsbGVyIGlkZW50aWZpZXIuXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciB0aGUgc3BlbGxpbmcgaXMgc2FmZSBpbiB0aGUgY2Fub25pY2FsIHRyYW5zbGF0aW9uIHVuaXQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0NJZGVudGlmaWVyKG5hbWUpIHtcbiAgcmV0dXJuIGlkZW50aWZpZXJQYXR0ZXJucy5jLnRlc3QobmFtZSkgJiYgIXJlc2VydmVkV29yZHMuYy5oYXMobmFtZSkgJiZcbiAgICAhL14oPzpzZW1hbnRpZm9sZF98U0VNQU5USUZPTERffFNlbWFudGlmb2xkfGF0b21pY198SU5UWzAtOV9BLVpdfFVJTlRbMC05X0EtWl18SU5UTUFYX3xVSU5UTUFYX3xTSVpFX3xQVFJESUZGX3xTSUdfQVRPTUlDX3xXQ0hBUl98V0lOVF98Q0hBUl98U0NIQVJffFVDSEFSX3xTSFJUX3xVU0hSVF98TE9OR198VUxPTkdffExMT05HX3xVTExPTkdfKS91LnRlc3QobmFtZSkgJiZcbiAgICAhL14oPzp1P2ludCg/Ojh8MTZ8MzJ8NjR8bWF4fHB0cnxfbGVhc3RbMC05XSt8X2Zhc3RbMC05XSspX3QpJC91LnRlc3QobmFtZSlcbn1cblxuLyoqXG4gKiBWYWxpZGF0ZXMgYSBiaW5kaW5nIGlkZW50aWZpZXIgYWdhaW5zdCB0YXJnZXQgcmVzdHJpY3Rpb25zIGJleW9uZCBnZW5lcmFsIGlkZW50aWZpZXIgc3ludGF4LlxuICogQHBhcmFtIHtpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5CYWNrZW5kTGFuZ3VhZ2V9IGxhbmd1YWdlIC0gVGFyZ2V0IGxhbmd1YWdlLlxuICogQHBhcmFtIHt1bmtub3dufSBuYW1lIC0gQ2FuZGlkYXRlIHNlbWFudGljIGlkZW50aWZpZXIuXG4gKiBAcGFyYW0ge3N0cmluZ30gcm9sZSAtIEJpbmRpbmcgcm9sZSBmb3IgZGlhZ25vc3RpY3MuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4uL3NlbWFudGljL3R5cGVzLmpzXCIpLlNvdXJjZUxvY2F0aW9uIHwgdW5kZWZpbmVkfSBsb2NhdGlvbiAtIE9yaWdpbmF0aW5nIGxvY2F0aW9uLlxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVRhcmdldEJpbmRpbmdJZGVudGlmaWVyKGxhbmd1YWdlLCBuYW1lLCByb2xlLCBsb2NhdGlvbikge1xuICB2YWxpZGF0ZVRhcmdldElkZW50aWZpZXIobGFuZ3VhZ2UsIG5hbWUsIHJvbGUsIGxvY2F0aW9uKVxuXG4gIGNvbnN0IGludmFsaWRUeXBlU2NyaXB0QmluZGluZyA9IGxhbmd1YWdlID09IFwidHlwZXNjcmlwdFwiICYmIChuYW1lID09IFwiYXJndW1lbnRzXCIgfHwgbmFtZSA9PSBcImV2YWxcIilcbiAgY29uc3QgaW52YWxpZFBocFZhcmlhYmxlID0gbGFuZ3VhZ2UgPT0gXCJwaHBcIiAmJiB0eXBlb2YgbmFtZSA9PSBcInN0cmluZ1wiICYmXG4gICAgKChyb2xlID09IFwicGFyYW1ldGVyXCIgJiYgcGhwSW52YWxpZFBhcmFtZXRlckJpbmRpbmdzLmhhcyhuYW1lKSkgfHxcbiAgICAgICgocm9sZSA9PSBcImxvY2FsXCIgfHwgcm9sZSA9PSBcImFzc2lnbm1lbnQgdGFyZ2V0XCIgfHwgcm9sZSA9PSBcImNhdGNoIGJpbmRpbmdcIikgJiYgcGhwSW52YWxpZEFzc2lnbmVkQmluZGluZ3MuaGFzKG5hbWUpKSlcbiAgY29uc3QgaW52YWxpZFJ1YnlCaW5kaW5nID0gbGFuZ3VhZ2UgPT0gXCJydWJ5XCIgJiYgdHlwZW9mIG5hbWUgPT0gXCJzdHJpbmdcIiAmJiAvXl9bMS05XSQvdS50ZXN0KG5hbWUpXG5cbiAgaWYgKGludmFsaWRUeXBlU2NyaXB0QmluZGluZyB8fCBpbnZhbGlkUGhwVmFyaWFibGUgfHwgaW52YWxpZFJ1YnlCaW5kaW5nKSB7XG4gICAgdW5zdXBwb3J0ZWRDYXBhYmlsaXR5KGxhbmd1YWdlLCBgJHtyb2xlfSBpZGVudGlmaWVyICcke25hbWV9J2AsIGxvY2F0aW9uKVxuICB9XG59XG5cbi8qKlxuICogVmFsaWRhdGVzIGEgbm9taW5hbCByZWNvcmQvdHlwZSBkZWNsYXJhdGlvbiBuYW1lIGZvciB0aGUgb3JpZ2luYWwtZml2ZSB0YXJnZXRzLlxuICogQHBhcmFtIHtpbXBvcnQoXCIuLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5CYWNrZW5kTGFuZ3VhZ2V9IGxhbmd1YWdlIC0gQmFja2VuZCBsYW5ndWFnZS5cbiAqIEBwYXJhbSB7dW5rbm93bn0gbmFtZSAtIENhbmRpZGF0ZSB0eXBlIG5hbWUuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4uL3NlbWFudGljL3R5cGVzLmpzXCIpLlNvdXJjZUxvY2F0aW9uIHwgdW5kZWZpbmVkfSBsb2NhdGlvbiAtIERlY2xhcmF0aW9uIGxvY2F0aW9uLlxuICogQHJldHVybnMge3ZvaWR9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVRhcmdldFR5cGVJZGVudGlmaWVyKGxhbmd1YWdlLCBuYW1lLCBsb2NhdGlvbikge1xuICBpZiAodHlwZW9mIG5hbWUgIT0gXCJzdHJpbmdcIiB8fCAhL15bQS1aXVtBLVphLXowLTlfXSokL3UudGVzdChuYW1lKSkge1xuICAgIHVuc3VwcG9ydGVkQ2FwYWJpbGl0eShsYW5ndWFnZSwgYHJlY29yZCB0eXBlIGlkZW50aWZpZXIgJyR7U3RyaW5nKG5hbWUpfSdgLCBsb2NhdGlvbilcbiAgfVxuICBjb25zdCByZXNlcnZlZE5hbWUgPSBsYW5ndWFnZSA9PSBcInBocFwiID8gbmFtZS50b0xvd2VyQ2FzZSgpIDogbmFtZVxuICBjb25zdCBzeW50YXhMYW5ndWFnZSA9IGxhbmd1YWdlID09IFwiaW9zXCIgPyBcInN3aWZ0XCIgOiBsYW5ndWFnZSA9PSBcImZsdXR0ZXJcIiA/IFwiZGFydFwiIDogbGFuZ3VhZ2VcblxuICBpZiAocmVzZXJ2ZWRXb3Jkc1tzeW50YXhMYW5ndWFnZV0uaGFzKHJlc2VydmVkTmFtZSkgfHwgcmVzZXJ2ZWRUeXBlTmFtZXNbbGFuZ3VhZ2VdPy5oYXMocmVzZXJ2ZWROYW1lKSkge1xuICAgIHVuc3VwcG9ydGVkQ2FwYWJpbGl0eShsYW5ndWFnZSwgYHJlY29yZCB0eXBlIGlkZW50aWZpZXIgJyR7bmFtZX0nYCwgbG9jYXRpb24pXG4gIH1cbn1cblxuLyoqXG4gKiBQcm90ZWN0cyBDKysga2V5d29yZHMsIHRoZSBhY3R1YWwgaW5jbHVkZWQgQyBsaWJyYXJ5IG5hbWVzL21hY3JvcyBhbmQgdGhlIHNjYWZmb2xkIG5hbWVzcGFjZS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gQ2FsbGVyIHNjYWxhciBiaW5kaW5nIG9yIGZ1bmN0aW9uIG5hbWUuXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciBhIGNhbm9uaWNhbCBDKysyMCB0cmFuc2xhdGlvbiB1bml0IGNhbiByZXByZXNlbnQgdGhlIG5hbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0NwcElkZW50aWZpZXIobmFtZSkge1xuICByZXR1cm4gaXNDSWRlbnRpZmllcihuYW1lKSAmJiAhbmFtZS5pbmNsdWRlcyhcIl9fXCIpICYmICFyZXNlcnZlZFdvcmRzLmNwcC5oYXMobmFtZSlcbn1cblxuLyoqXG4gKiBQcm90ZWN0cyB0aGUgZWRpdGlvbi0yMDIxIHNjYWxhciwgZW50cnkgYW5kIGV4YWN0IGhlbHBlciBlbnZpcm9ubWVudCBpbiBib3RoIGRpcmVjdGlvbnMuXG4gKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIENhbGxlci1vd25lZCBmdW5jdGlvbiBvciBiaW5kaW5nIG5hbWUuXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciBvcmRpbmFyeSBSdXN0IHN5bnRheCBjYW4gcmVwcmVzZW50IHRoZSBuYW1lIHNhZmVseS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzUnVzdElkZW50aWZpZXIobmFtZSkge1xuICByZXR1cm4gaWRlbnRpZmllclBhdHRlcm5zLnJ1c3QudGVzdChuYW1lKSAmJiAhcmVzZXJ2ZWRXb3Jkcy5ydXN0LmhhcyhuYW1lKSAmJiAhbmFtZS5zdGFydHNXaXRoKFwic2VtYW50aWZvbGRfXCIpXG59XG5cbi8qKlxuICogUHJvdGVjdHMgWmlnIGtleXdvcmRzLCBzY2FsYXIgbmFtZXMsIGVudHJ5IHBsdW1iaW5nLCBidWlsdGlucywgYW5kIHRoZSBzdXBwb3J0IG5hbWVzcGFjZS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gQ2FsbGVyLW93bmVkIGZ1bmN0aW9uIG9yIGJpbmRpbmcgbmFtZS5cbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIG9yZGluYXJ5IHVucXVvdGVkIFppZyBzeW50YXggY2FuIHByZXNlcnZlIHRoZSBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNaaWdJZGVudGlmaWVyKG5hbWUpIHtcbiAgcmV0dXJuIGlkZW50aWZpZXJQYXR0ZXJucy56aWcudGVzdChuYW1lKSAmJiAhcmVzZXJ2ZWRXb3Jkcy56aWcuaGFzKG5hbWUpICYmICEvXltpdV1bMC05XSskL3UudGVzdChuYW1lKSAmJlxuICAgICFuYW1lLnN0YXJ0c1dpdGgoXCJzZW1hbnRpZm9sZF9cIilcbn1cblxuLyoqXG4gKiBQcm90ZWN0cyBTd2lmdCBrZXl3b3Jkcywgc2NhbGFyIG5hbWVzLCBlbnRyeSBwbHVtYmluZywgYW5kIHRhcmdldC1vbmx5IGhlbHBlciBuYW1lcy5cbiAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIC0gQ2FsbGVyLW93bmVkIGZ1bmN0aW9uIG9yIGJpbmRpbmcgbmFtZS5cbiAqIEByZXR1cm5zIHtib29sZWFufSBXaGV0aGVyIG9yZGluYXJ5IHVuZXNjYXBlZCBTd2lmdCBzeW50YXggY2FuIHByZXNlcnZlIHRoZSBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNTd2lmdElkZW50aWZpZXIobmFtZSkge1xuICByZXR1cm4gaWRlbnRpZmllclBhdHRlcm5zLnN3aWZ0LnRlc3QobmFtZSkgJiYgIXJlc2VydmVkV29yZHMuc3dpZnQuaGFzKG5hbWUpICYmICFuYW1lLnN0YXJ0c1dpdGgoXCJzZW1hbnRpZm9sZF9cIilcbn1cblxuLyoqXG4gKiBQcm90ZWN0cyBLb3RsaW4ga2V5d29yZHMsIEpWTSBzY2FsYXIvc2NhZmZvbGQgbmFtZXMsIGFuZCB0YXJnZXQtb25seSBoZWxwZXIgbmFtZXMuXG4gKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAtIENhbGxlci1vd25lZCBmdW5jdGlvbiBvciBiaW5kaW5nIG5hbWUuXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gV2hldGhlciBvcmRpbmFyeSB1bmVzY2FwZWQgS290bGluIHN5bnRheCBjYW4gcHJlc2VydmUgdGhlIG5hbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0tvdGxpbklkZW50aWZpZXIobmFtZSkge1xuICByZXR1cm4gaWRlbnRpZmllclBhdHRlcm5zLmtvdGxpbi50ZXN0KG5hbWUpICYmICFyZXNlcnZlZFdvcmRzLmtvdGxpbi5oYXMobmFtZSkgJiYgIW5hbWUuc3RhcnRzV2l0aChcInNlbWFudGlmb2xkX1wiKSAmJlxuICAgICFuYW1lLnN0YXJ0c1dpdGgoXCJTRU1BTlRJRk9MRF9cIilcbn1cblxuLyoqXG4gKiBQcm90ZWN0cyBEYXJ0IGtleXdvcmRzLCBWTSBzY2FsYXIvc2NhZmZvbGQgbmFtZXMsIGFuZCBjb21waWxlci1vd25lZCBoZWxwZXJzLlxuICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgLSBDYWxsZXItb3duZWQgZnVuY3Rpb24gb3IgYmluZGluZyBuYW1lLlxuICogQHJldHVybnMge2Jvb2xlYW59IFdoZXRoZXIgb3JkaW5hcnkgRGFydCBzeW50YXggY2FuIHByZXNlcnZlIHRoZSBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNEYXJ0SWRlbnRpZmllcihuYW1lKSB7XG4gIHJldHVybiBpZGVudGlmaWVyUGF0dGVybnMuZGFydC50ZXN0KG5hbWUpICYmICFyZXNlcnZlZFdvcmRzLmRhcnQuaGFzKG5hbWUpICYmXG4gICAgIW5hbWUuc3RhcnRzV2l0aChcIl9zZW1hbnRpZm9sZFwiKSAmJiBuYW1lLm5vcm1hbGl6ZShcIk5GQ1wiKSA9PSBuYW1lXG59XG4iXX0=
@@ -27,8 +27,8 @@ export declare function preflightSemanticProgram({ backendLanguage, diagnosticLa
27
27
  * @param {import("../semantic/types.js").BackendLanguage} input.language - Registered program target.
28
28
  * @param {import("../semantic/types.js").SemanticProgram} input.program - Complete semantic program.
29
29
  * @param {"text" | "application"} [input.role] - Explicit artifact role; omitted preserves text generation.
30
- * @param {import("../semantic/types.js").IosApplicationConfigurationInput | import("../semantic/types.js").AndroidApplicationConfigurationInput} [input.configuration] - Application configuration.
31
- * @param {import("../semantic/types.js").IosApplicationAssetInput[] | import("../semantic/types.js").AndroidApplicationInputFile[]} [input.assets] - Exact caller assets.
30
+ * @param {import("../semantic/types.js").IosApplicationConfigurationInput | import("../semantic/types.js").AndroidApplicationConfigurationInput | import("../semantic/types.js").FlutterApplicationConfigurationInput} [input.configuration] - Application configuration.
31
+ * @param {import("../semantic/types.js").IosApplicationAssetInput[] | import("../semantic/types.js").AndroidApplicationInputFile[] | import("../semantic/types.js").FlutterApplicationAssetInput[]} [input.assets] - Exact caller assets.
32
32
  * @param {import("../semantic/types.js").AndroidApplicationInputFile[]} [input.resources] - Exact Android caller resources.
33
33
  * @returns {import("../semantic/types.js").GeneratedArtifactSet} Transactionally validated artifact set.
34
34
  */
@@ -36,8 +36,8 @@ export declare function generateProgramArtifacts(input: {
36
36
  language: import("../semantic/types.js").BackendLanguage;
37
37
  program: import("../semantic/types.js").SemanticProgram;
38
38
  role?: "text" | "application";
39
- configuration?: import("../semantic/types.js").IosApplicationConfigurationInput | import("../semantic/types.js").AndroidApplicationConfigurationInput;
40
- assets?: import("../semantic/types.js").IosApplicationAssetInput[] | import("../semantic/types.js").AndroidApplicationInputFile[];
39
+ configuration?: import("../semantic/types.js").IosApplicationConfigurationInput | import("../semantic/types.js").AndroidApplicationConfigurationInput | import("../semantic/types.js").FlutterApplicationConfigurationInput;
40
+ assets?: import("../semantic/types.js").IosApplicationAssetInput[] | import("../semantic/types.js").AndroidApplicationInputFile[] | import("../semantic/types.js").FlutterApplicationAssetInput[];
41
41
  resources?: import("../semantic/types.js").AndroidApplicationInputFile[];
42
42
  }): import("../semantic/types.js").GeneratedArtifactSet;
43
43
  export type StdlibProgramLinking = {
@@ -1 +1 @@
1
- {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../../src/backends/program.js"],"names":[],"mappings":"AA2BA;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,EAAC,eAAe,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAC,EANhH;IAA+D,eAAe,EAAtE,OAAO,sBAAsB,EAAE,gBAAgB,CACvD;IAA8D,kBAAkB,EAAxE,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA8D,OAAO,EAA7D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA+E,eAAe,AAA9F,CACA,EADQ,QAAQ,CAAC,GAAG,CAAC,OAAO,sBAAsB,EAAE,gBAAgB,CAAC,CAAC,CACtE;CAEgH,GAFtG;IAAC,OAAO,EAAE,OAAO,sBAAsB,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,sBAAsB,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,sBAAsB,EAAE,gBAAgB,CAAA;KAAC,EAAE,CAAA;CAAC,CA4B3O;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAR3C;IAA8D,QAAQ,EAA9D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA8D,OAAO,EAA7D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAAuC,IAAI,AAA3C,CACA,EADQ,MAAM,GAAG,aAAa,CAC9B;IAAsJ,aAAa,AAAnK,CACA,EADQ,OAAO,sBAAsB,EAAE,gCAAgC,GAAG,OAAO,sBAAsB,EAAE,oCAAoC,CAC7I;IAAyI,MAAM,AAA/I,CACA,EADQ,OAAO,sBAAsB,EAAE,wBAAwB,EAAE,GAAG,OAAO,sBAAsB,EAAE,2BAA2B,EAAE,CAChI;IAA6E,SAAS,AAAtF,CACA,EADQ,OAAO,sBAAsB,EAAE,2BAA2B,EAAE,CACpE;CAE2C,GAFjC,OAAO,sBAAsB,EAAE,oBAAoB,CAqH/D;AAGE,YAAS,oBAAoB,GAC7B;;;;IAAuE,WAAW,EAAvE,OAAO,0BAA0B,EAAE,uBAAuB,CACrE;;;;IAA+E,OAAO,EAA3E,GAAG,CAAC,MAAM,EAAE,OAAO,wBAAwB,EAAE,oBAAoB,CAAC,CAC7E;;;;IAAuC,cAAc,EAA1C,wBAAwB,EAAE,CACrC;;;;IAAoD,sBAAsB,EAA/D,GAAG,CAAC,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAClD;;;;IAAkC,uBAAuB,EAA9C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAChC;;;;IAAkC,qBAAqB,EAA5C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAChC;;;;IAA0B,aAAa,EAA5B,MAAM,GAAG,IAAI,CAC1B;CAAA,CAAA;AAGE,YAAS,wBAAwB,GACjC;;;;IAAmB,MAAM,EAAd,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA"}
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../../src/backends/program.js"],"names":[],"mappings":"AA2BA;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,EAAC,eAAe,EAAE,kBAAkB,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAC,EANhH;IAA+D,eAAe,EAAtE,OAAO,sBAAsB,EAAE,gBAAgB,CACvD;IAA8D,kBAAkB,EAAxE,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA8D,OAAO,EAA7D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA+E,eAAe,AAA9F,CACA,EADQ,QAAQ,CAAC,GAAG,CAAC,OAAO,sBAAsB,EAAE,gBAAgB,CAAC,CAAC,CACtE;CAEgH,GAFtG;IAAC,OAAO,EAAE,OAAO,sBAAsB,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,sBAAsB,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,sBAAsB,EAAE,gBAAgB,CAAA;KAAC,EAAE,CAAA;CAAC,CA4B3O;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAR3C;IAA8D,QAAQ,EAA9D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAA8D,OAAO,EAA7D,OAAO,sBAAsB,EAAE,eAAe,CACtD;IAAuC,IAAI,AAA3C,CACA,EADQ,MAAM,GAAG,aAAa,CAC9B;IAA4N,aAAa,AAAzO,CACA,EADQ,OAAO,sBAAsB,EAAE,gCAAgC,GAAG,OAAO,sBAAsB,EAAE,oCAAoC,GAAG,OAAO,sBAAsB,EAAE,oCAAoC,CACnN;IAAyM,MAAM,AAA/M,CACA,EADQ,OAAO,sBAAsB,EAAE,wBAAwB,EAAE,GAAG,OAAO,sBAAsB,EAAE,2BAA2B,EAAE,GAAG,OAAO,sBAAsB,EAAE,4BAA4B,EAAE,CAChM;IAA6E,SAAS,AAAtF,CACA,EADQ,OAAO,sBAAsB,EAAE,2BAA2B,EAAE,CACpE;CAE2C,GAFjC,OAAO,sBAAsB,EAAE,oBAAoB,CAqH/D;AAGE,YAAS,oBAAoB,GAC7B;;;;IAAuE,WAAW,EAAvE,OAAO,0BAA0B,EAAE,uBAAuB,CACrE;;;;IAA+E,OAAO,EAA3E,GAAG,CAAC,MAAM,EAAE,OAAO,wBAAwB,EAAE,oBAAoB,CAAC,CAC7E;;;;IAAuC,cAAc,EAA1C,wBAAwB,EAAE,CACrC;;;;IAAoD,sBAAsB,EAA/D,GAAG,CAAC,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAClD;;;;IAAkC,uBAAuB,EAA9C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAChC;;;;IAAkC,qBAAqB,EAA5C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAChC;;;;IAA0B,aAAa,EAA5B,MAAM,GAAG,IAAI,CAC1B;CAAA,CAAA;AAGE,YAAS,wBAAwB,GACjC;;;;IAAmB,MAAM,EAAd,MAAM,CACjB;;;;IAAmB,SAAS,EAAjB,MAAM,CACnB;CAAA,CAAA"}