@decaf-ts/for-fabric 0.12.1 → 0.12.4

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.
@@ -84,7 +84,9 @@ const compileCommand = new commander_1.Command()
84
84
  const log = logger.for("compile-contract");
85
85
  try {
86
86
  if (npmrc) {
87
- npmrcContent = JSON.parse(fs_1.default.readFileSync(path_1.default.join(process.cwd(), ".npmrc"), "utf-8"));
87
+ npmrcContent = fs_1.default
88
+ .readFileSync(path_1.default.join(process.cwd(), ".npmrc"), "utf-8")
89
+ .toString();
88
90
  const replaced = npmrcContent.replace(/\$\{([^}]+)\}/g, (_, varName) => {
89
91
  const value = process.env[varName];
90
92
  if (value === undefined) {
@@ -200,8 +202,8 @@ const compileCommand = new commander_1.Command()
200
202
  ? `${(0, logging_1.toPascalCase)(name)}.js`
201
203
  : `${input}/index.js`;
202
204
  fs_1.default.writeFileSync(path_1.default.join(output, "package.json"), JSON.stringify(contractPackage));
203
- if (npmrc)
204
- fs_1.default.writeFileSync(path_1.default.join(output, ".npmrc"), npmrc);
205
+ if (npmrc && npmrcContent)
206
+ fs_1.default.writeFileSync(path_1.default.join(output, ".npmrc"), npmrcContent);
205
207
  log.info(`Installing and shrinkwrapping dependencies`);
206
208
  (0, child_process_1.execSync)(`npm install`, { cwd: output });
207
209
  (0, child_process_1.execSync)(`npm shrinkwrap`, { cwd: output });
@@ -501,5 +503,5 @@ fabricCmd.addCommand(extractCollections);
501
503
  function fabric() {
502
504
  return fabricCmd;
503
505
  }
504
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGktbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQztBQUNwQixPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7QUFDeEIsT0FBTyxFQUFVLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUN4QyxPQUFPLE9BQU8sTUFBTSx3QkFBd0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixvQkFBb0IsRUFDcEIsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsWUFBWSxHQUNiLGtDQUF5QjtBQUMxQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkQsT0FBTyxFQUNMLGVBQWUsRUFDZiwwQkFBMEIsRUFDMUIsZUFBZSxFQUNmLGVBQWUsRUFDZixlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLDRCQUE0QixHQUM3Qix1QkFBb0I7QUFDckIscUNBQTRCO0FBQzVCLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1QixPQUFPLEVBQ0wsa0JBQWtCLElBQUksYUFBYSxFQUVuQyxnQkFBZ0IsRUFDaEIseUJBQXlCLEdBQzFCLHNDQUFtQztBQUdwQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXJDLFNBQVMsdUJBQXVCO0lBQzlCLE9BQU87UUFDTCxJQUFJLEVBQUUsNEJBQTRCO1FB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LENBQ1YsbUVBQW1FLENBQ3BFLENBQUM7QUFFSixTQUFTLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ3JDLFNBQVMsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDckMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUNsQyxTQUFTLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ3JDLFNBQVMsQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQztBQUN4QyxTQUFTLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFFekMsTUFBTSxDQUFDLE9BQU8sVUFBVSxNQUFNO0lBQzVCLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tYW5kIH0gZnJvbSBcImNvbW1hbmRlclwiO1xuaW1wb3J0IHsgTG9nZ2luZywgdG9QYXNjYWxDYXNlIH0gZnJvbSBcIkBkZWNhZi10cy9sb2dnaW5nXCI7XG5pbXBvcnQgeyBleGVjU3luYyB9IGZyb20gXCJjaGlsZF9wcm9jZXNzXCI7XG5pbXBvcnQgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgUGx1Z2luLCByb2xsdXAgfSBmcm9tIFwicm9sbHVwXCI7XG5pbXBvcnQgcmVwbGFjZSBmcm9tIFwiQHJvbGx1cC9wbHVnaW4tcmVwbGFjZVwiO1xuaW1wb3J0IHsgSW50ZXJuYWxFcnJvciwgU2VyaWFsaXphdGlvbkVycm9yIH0gZnJvbSBcIkBkZWNhZi10cy9kYi1kZWNvcmF0b3JzXCI7XG5pbXBvcnQge1xuICBnZW5lcmF0ZU1vZGVsRGVzaWduRG9jcyxcbiAgZ2VuZXJhdGVNb2RlbEluZGV4ZXMsXG4gIHJlYWRNb2RlbEZpbGUsXG4gIHJlYWRNb2RlbEZvbGRlcnMsXG4gIHdyaXRlRGVzaWduRG9jcyxcbiAgd3JpdGVJbmRleGVzLFxufSBmcm9tIFwiLi9jbGllbnQvaW5kZXhlc1wiO1xuaW1wb3J0IHsgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQge1xuICBhcHByb3ZlQ29udHJhY3QsXG4gIGVuc3VyZUluZnJhc3RydWN0dXJlQm9vdGVkLFxuICBpbnN0YWxsQ29udHJhY3QsXG4gIHBhY2thZ2VDb250cmFjdCxcbiAgY29tbWl0Q2hhaW5jb2RlLFxuICBnZXRDb250cmFjdFN0YXJ0Q29tbWFuZCxcbiAgY29tcGlsZVdpdGhUc2NvbmZpZ092ZXJyaWRlcyxcbn0gZnJvbSBcIi4vY2xpLXV0aWxzXCI7XG5pbXBvcnQgXCIuL3NoYXJlZC9vdmVycmlkZXNcIjtcbmltcG9ydCB0cyBmcm9tIFwidHlwZXNjcmlwdFwiO1xuaW1wb3J0IHtcbiAgZXh0cmFjdENvbGxlY3Rpb25zIGFzIGV4Q29sbGVjdGlvbnMsXG4gIFByaXZhdGVDb2xsZWN0aW9uLFxuICB3cml0ZUNvbGxlY3Rpb25zLFxuICB3cml0ZUNvbGxlY3Rpb25EZXNpZ25Eb2NzLFxufSBmcm9tIFwiLi9jbGllbnQvY29sbGVjdGlvbnMvaW5kZXhcIjtcbmltcG9ydCB7IENvdWNoREJEZXNpZ25Eb2MsIENyZWF0ZUluZGV4UmVxdWVzdCB9IGZyb20gXCJAZGVjYWYtdHMvZm9yLWNvdWNoZGJcIjtcblxuY29uc3QgbG9nZ2VyID0gTG9nZ2luZy5mb3IoXCJmYWJyaWNcIik7XG5cbmZ1bmN0aW9uIHJlc29sdmVCdW5kbGVkSnNJbXBvcnRzKCk6IFBsdWdpbiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogXCJyZXNvbHZlLWJ1bmRsZWQtanMtaW1wb3J0c1wiLFxuICAgIHJlc29sdmVJZChzb3VyY2UsIGltcG9ydGVyKSB7XG4gICAgICBpZiAoIWltcG9ydGVyIHx8ICFzb3VyY2Uuc3RhcnRzV2l0aChcIi5cIikpIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlc29sdmVkUGF0aCA9IHBhdGgucmVzb2x2ZShwYXRoLmRpcm5hbWUoaW1wb3J0ZXIpLCBzb3VyY2UpO1xuICAgICAgY29uc3QgY2FuZGlkYXRlcyA9IFtcbiAgICAgICAgcmVzb2x2ZWRQYXRoLFxuICAgICAgICBgJHtyZXNvbHZlZFBhdGh9LmpzYCxcbiAgICAgICAgcGF0aC5qb2luKHJlc29sdmVkUGF0aCwgXCJpbmRleC5qc1wiKSxcbiAgICAgIF07XG5cbiAgICAgIGZvciAoY29uc3QgY2FuZGlkYXRlIG9mIGNhbmRpZGF0ZXMpIHtcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmMoY2FuZGlkYXRlKSAmJiBmcy5zdGF0U3luYyhjYW5kaWRhdGUpLmlzRmlsZSgpKSB7XG4gICAgICAgICAgcmV0dXJuIGNhbmRpZGF0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9LFxuICB9O1xufVxuXG5jb25zdCBjb21waWxlQ29tbWFuZCA9IG5ldyBDb21tYW5kKClcbiAgLm5hbWUoXCJjb21waWxlLWNvbnRyYWN0XCIpXG4gIC5kZXNjcmlwdGlvbihcIkNyZWF0ZXMgYSBnbG9iYWwgY29udHJhY3RcIilcbiAgLm9wdGlvbihcIi0tZGV2XCIsIFwiY29tcGlsZXMgY29udHJhY3RzIHdpdGhvdXQgbWluaWZpY2F0aW9uXCIsIGZhbHNlKVxuICAub3B0aW9uKFwiLS1kZWJ1Z1wiLCBcIm1ha2VzIGF0dGFjaGluZyBkZWJ1Z2dlciBwb3NzaWJsZVwiLCBmYWxzZSlcbiAgLm9wdGlvbihcbiAgICBcIi0tY2NhYXNcIixcbiAgICBcIkFqdXN0cyB0aGUgcGFja2FnZSBjb21tYW5kcyB0byBiZSBkZXBsb3llZCBhcyBjY2Fhc1wiLFxuICAgIGZhbHNlXG4gIClcbiAgLm9wdGlvbihcIi0tbmFtZSA8U3RyaW5nPlwiLCBcImNvbnRyYWN0IG5hbWVcIiwgXCJnbG9iYWwtY29udHJhY3RcIilcbiAgLm9wdGlvbihcIi0tYnVuZGxlXCIsIFwiQnVuZGxlcyB3aXRoIHJvbGx1cCBpbnN0ZWFkIG9mIHVzaW5nIHRzY1wiLCBmYWxzZSlcbiAgLm9wdGlvbihcbiAgICBcIi0tdHMtY29uZmlnLWZpbGUgPHN0cmluZz5cIixcbiAgICBcInJlbGF0aXZlIHBhdGggdG8gdGhlIHRzIGNvbmZpZyBmaWxlIGJhc2VkIG9uIGN3ZCBvciBhYnNvbHV0ZSBwYXRoXCIsXG4gICAgXCIuL3RzY29uZmlnLmpzb25cIlxuICApXG4gIC5vcHRpb24oXG4gICAgXCItLWRlc2NyaXB0aW9uIDxTdHJpbmc+XCIsXG4gICAgXCJjb250cmFjdCBkZXNjcmlwdGlvblwiLFxuICAgIFwiR2xvYmFsIGNvbnRyYWN0IGltcGxlbWVudGF0aW9uXCJcbiAgKVxuICAub3B0aW9uKFwiLS1zdHJpcC1jb250cmFjdC1uYW1lXCIsIFwic3RyaXAgY29udHJhY3QgbmFtZSBmcm9tIG91dHB1dFwiLCBmYWxzZSlcbiAgLm9wdGlvbihcIi0taW5wdXQgPFN0cmluZz5cIiwgXCJpbnB1dCBmb2xkZXIgZm9yIGNvbnRyYWN0c1wiLCBcImxpYi9jb250cmFjdHNcIilcbiAgLm9wdGlvbihcIi0tb3V0cHV0IDxTdHJpbmc+XCIsIFwib3V0cHV0IGZvbGRlciBmb3IgY29udHJhY3RzXCIsIFwiLi9jb250cmFjdHNcIilcbiAgLm9wdGlvbihcIi0tc291cmNlbWFwc1wiLCBcImluY2x1ZGVzIHNvdXJjZW1hcHMgaW4gdGhlIGNvbXBpbGVkIG91dHB1dFwiLCBmYWxzZSlcbiAgLm9wdGlvbihcIi0tbnBtcmNcIiwgXCJpbmNsdWRlcyAubnBtcmMgaW4gdGhlIGNvbXBpbGVkIG91dHB1dFwiLCBmYWxzZSlcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgbGV0IG5wbXJjQ29udGVudCA9IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHZlcnNpb24gPSBwa2cudmVyc2lvbjtcblxuICAgIGxldCB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgICBkZXYsXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgICBkZWJ1ZyxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICAgIG5hbWUsXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgICBkZXNjcmlwdGlvbixcbiAgICAgIG91dHB1dCxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICAgIGlucHV0LFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgICAgc3RyaXBDb250cmFjdE5hbWUsXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgICBjY2FhcyxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICAgIGJ1bmRsZSxcblxuICAgICAgdHNDb25maWdGaWxlLFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgICAgc291cmNlbWFwcyxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICAgIG5wbXJjLFxuICAgIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGxvZyA9IGxvZ2dlci5mb3IoXCJjb21waWxlLWNvbnRyYWN0XCIpO1xuICAgIHRyeSB7XG4gICAgICBpZiAobnBtcmMpIHtcbiAgICAgICAgbnBtcmNDb250ZW50ID0gSlNPTi5wYXJzZShcbiAgICAgICAgICBmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIFwiLm5wbXJjXCIpLCBcInV0Zi04XCIpXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3QgcmVwbGFjZWQgPSBucG1yY0NvbnRlbnQucmVwbGFjZShcbiAgICAgICAgICAvXFwkXFx7KFtefV0rKVxcfS9nLFxuICAgICAgICAgIChfOiBhbnksIHZhck5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwcm9jZXNzLmVudlt2YXJOYW1lXTtcblxuICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICAgIGBXYXJuaW5nOiBFbnZpcm9ubWVudCB2YXJpYWJsZSBcIiR7dmFyTmFtZX1cIiBpcyBub3Qgc2V0YFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICByZXR1cm4gXCJcIjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcblxuICAgICAgICBucG1yY0NvbnRlbnQgPSByZXBsYWNlZDtcbiAgICAgIH1cbiAgICB9IGNhdGNoIHtcbiAgICAgIGxvZy5pbmZvKGBObyAubnBtcmMgZmlsZSBmb3VuZCwgc2tpcHBpbmcgY29weWluZyAubnBtcmMgdG8gb3V0cHV0YCk7XG4gICAgfVxuXG4gICAgbG9nLmRlYnVnKFxuICAgICAgYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YFxuICAgICk7XG5cbiAgICB0c0NvbmZpZ0ZpbGUgPSBwYXRoLmlzQWJzb2x1dGUodHNDb25maWdGaWxlKVxuICAgICAgPyB0c0NvbmZpZ0ZpbGVcbiAgICAgIDogcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIHRzQ29uZmlnRmlsZSk7XG5cbiAgICBvdXRwdXQgPSBzdHJpcENvbnRyYWN0TmFtZSA/IG91dHB1dCA6IHBhdGguam9pbihvdXRwdXQsIG5hbWUpO1xuICAgIGxvZy5pbmZvKGBEZWxldGluZyBleGlzdGluZyBvdXRwdXQgZm9sZGVyIChpZiBleGlzdHMpIHVuZGVyICR7b3V0cHV0fWApO1xuICAgIGV4ZWNTeW5jKGBybSAtcmYgJHtvdXRwdXR9YCk7XG4gICAgaWYgKGJ1bmRsZSkge1xuICAgICAgbG9nLmluZm8oYGJ1bmRsaW5nIGNvbnRyYWN0IGZyb20gJHtpbnB1dH1gKTtcbiAgICAgIGNvbnN0IHRlbXBCdW5kbGVEaXIgPSBmcy5ta2R0ZW1wU3luYyhcbiAgICAgICAgcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIFwiLmNvbnRyYWN0LWJ1bmRsZS1cIilcbiAgICAgICk7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBpbnB1dEVudHJ5ID0gcGF0aC5yZXNvbHZlKHByb2Nlc3MuY3dkKCksIGlucHV0LCBcImluZGV4LnRzXCIpO1xuICAgICAgICBjb25zdCBjb25maWdGaWxlID0gdHMucmVhZENvbmZpZ0ZpbGUodHNDb25maWdGaWxlLCB0cy5zeXMucmVhZEZpbGUpO1xuICAgICAgICBpZiAoY29uZmlnRmlsZS5lcnJvcikge1xuICAgICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICAgICAgdHMuZmxhdHRlbkRpYWdub3N0aWNNZXNzYWdlVGV4dChjb25maWdGaWxlLmVycm9yLm1lc3NhZ2VUZXh0LCBcIlxcblwiKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJzZWRDb25maWcgPSB0cy5wYXJzZUpzb25Db25maWdGaWxlQ29udGVudChcbiAgICAgICAgICBjb25maWdGaWxlLmNvbmZpZyxcbiAgICAgICAgICB0cy5zeXMsXG4gICAgICAgICAgcGF0aC5kaXJuYW1lKHRzQ29uZmlnRmlsZSksXG4gICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgIHRzQ29uZmlnRmlsZVxuICAgICAgICApO1xuICAgICAgICBpZiAocGFyc2VkQ29uZmlnLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgICAgIHBhcnNlZENvbmZpZy5lcnJvcnNcbiAgICAgICAgICAgICAgLm1hcCgoZXJyb3IpID0+XG4gICAgICAgICAgICAgICAgdHMuZmxhdHRlbkRpYWdub3N0aWNNZXNzYWdlVGV4dChlcnJvci5tZXNzYWdlVGV4dCwgXCJcXG5cIilcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAuam9pbihcIlxcblwiKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0ZW1wQ29tcGlsZXJPcHRpb25zOiB0cy5Db21waWxlck9wdGlvbnMgPSB7XG4gICAgICAgICAgLi4ucGFyc2VkQ29uZmlnLm9wdGlvbnMsXG4gICAgICAgICAgb3V0RGlyOiB0ZW1wQnVuZGxlRGlyLFxuICAgICAgICAgIG1vZHVsZTogdHMuTW9kdWxlS2luZC5FU05leHQsXG4gICAgICAgICAgZGVjbGFyYXRpb246IGZhbHNlLFxuICAgICAgICAgIHNvdXJjZU1hcDogZmFsc2UsXG4gICAgICAgICAgaW5saW5lU291cmNlczogZmFsc2UsXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGJ1bmRsZWRFbnRyeVBvaW50ID0gdHNcbiAgICAgICAgICAuZ2V0T3V0cHV0RmlsZU5hbWVzKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAuLi5wYXJzZWRDb25maWcsXG4gICAgICAgICAgICAgIG9wdGlvbnM6IHRlbXBDb21waWxlck9wdGlvbnMsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaW5wdXRFbnRyeSxcbiAgICAgICAgICAgICF0cy5zeXMudXNlQ2FzZVNlbnNpdGl2ZUZpbGVOYW1lc1xuICAgICAgICAgIClcbiAgICAgICAgICAuZmluZCgoZmlsZU5hbWUpID0+IGZpbGVOYW1lLmVuZHNXaXRoKFwiLmpzXCIpKTtcblxuICAgICAgICBpZiAoIWJ1bmRsZWRFbnRyeVBvaW50KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgICAgICBgRmFpbGVkIHRvIGRldGVybWluZSB0aGUgZW1pdHRlZCBidW5kbGUgZW50cnkgZm9yICR7aW5wdXRFbnRyeX1gXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbXBpbGVXaXRoVHNjb25maWdPdmVycmlkZXModHNDb25maWdGaWxlLCB0ZW1wQ29tcGlsZXJPcHRpb25zKTtcbiAgICAgICAgY29uc3QgYnVuZGxlZENvbnRyYWN0ID0gYXdhaXQgcm9sbHVwKHtcbiAgICAgICAgICBpbnB1dDogYnVuZGxlZEVudHJ5UG9pbnQsXG4gICAgICAgICAgcGx1Z2luczogW1xuICAgICAgICAgICAgcmVzb2x2ZUJ1bmRsZWRKc0ltcG9ydHMoKSxcbiAgICAgICAgICAgIHJlcGxhY2Uoe1xuICAgICAgICAgICAgICBwcmV2ZW50QXNzaWdubWVudDogdHJ1ZSxcbiAgICAgICAgICAgICAgZGVsaW1pdGVyczogW1wiXCIsIFwiXCJdLFxuICAgICAgICAgICAgICB2YWx1ZXM6IHsgXCIjI1ZFUlNJT04jI1wiOiB2ZXJzaW9uLCBcIiMjUEFDS0FHRSMjXCI6IHBrZy5uYW1lIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgbG9nLmluZm8oXG4gICAgICAgICAgYHdpdGhpbmcgY29udHJhY3QgdG8gJHtvdXRwdXR9IHdpdGggbmFtZSAke3RvUGFzY2FsQ2FzZShuYW1lKX0uanNgXG4gICAgICAgICk7XG4gICAgICAgIGF3YWl0IGJ1bmRsZWRDb250cmFjdC53cml0ZSh7XG4gICAgICAgICAgZmlsZTogYCR7b3V0cHV0fS8ke3RvUGFzY2FsQ2FzZShuYW1lKX0uanNgLFxuICAgICAgICAgIGZvcm1hdDogXCJ1bWRcIixcbiAgICAgICAgICBuYW1lOiBgJHt0b1Bhc2NhbENhc2UobmFtZSl9LmpzYCxcbiAgICAgICAgICBzb3VyY2VtYXA6IHNvdXJjZW1hcHMgPyBcImlubGluZVwiIDogZmFsc2UsXG4gICAgICAgICAgc291cmNlbWFwUGF0aFRyYW5zZm9ybTogKHJlbGF0aXZlU291cmNlUGF0aCwgc291cmNlbWFwUGF0aCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYWJzb2x1dGVTb3VyY2VQYXRoID0gcGF0aC5yZXNvbHZlKFxuICAgICAgICAgICAgICBwYXRoLmRpcm5hbWUoc291cmNlbWFwUGF0aCksXG4gICAgICAgICAgICAgIHJlbGF0aXZlU291cmNlUGF0aFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKGFic29sdXRlU291cmNlUGF0aC5zdGFydHNXaXRoKHRlbXBCdW5kbGVEaXIpKSB7XG4gICAgICAgICAgICAgIHJldHVybiBwYXRoLnBvc2l4LmpvaW4oXG4gICAgICAgICAgICAgICAgXCIuYnVuZGxlXCIsXG4gICAgICAgICAgICAgICAgcGF0aFxuICAgICAgICAgICAgICAgICAgLnJlbGF0aXZlKHRlbXBCdW5kbGVEaXIsIGFic29sdXRlU291cmNlUGF0aClcbiAgICAgICAgICAgICAgICAgIC5zcGxpdChwYXRoLnNlcClcbiAgICAgICAgICAgICAgICAgIC5qb2luKFwiL1wiKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gcmVsYXRpdmVTb3VyY2VQYXRoO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBhd2FpdCBidW5kbGVkQ29udHJhY3QuY2xvc2UoKTtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIGZzLnJtU3luYyh0ZW1wQnVuZGxlRGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSwgZm9yY2U6IHRydWUgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbXBpbGVXaXRoVHNjb25maWdPdmVycmlkZXModHNDb25maWdGaWxlLCB7XG4gICAgICAgIG91dERpcjogb3V0cHV0LFxuICAgICAgICBtb2R1bGU6IHRzLk1vZHVsZUtpbmQuRVNOZXh0LFxuICAgICAgICBkZWNsYXJhdGlvbjogZmFsc2UsXG4gICAgICAgIHNvdXJjZU1hcDogc291cmNlbWFwcyxcbiAgICAgICAgaW5saW5lU291cmNlczogc291cmNlbWFwcyxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHNjcmlwdHMgPSB7XG4gICAgICBzdGFydDogZ2V0Q29udHJhY3RTdGFydENvbW1hbmQoZGVidWcsIGNjYWFzKSxcbiAgICAgIFwic3RhcnQ6ZGV2XCI6IFwiZmFicmljLWNoYWluY29kZS1ub2RlIHN0YXJ0IC0tdGxzLmVuYWJsZWQgZmFsc2VcIixcbiAgICAgIFwic3RhcnQ6d2F0Y2hcIjogJ25vZGVtb24gLS1leGVjIFwibnBtIHJ1biBzdGFydDpkZXZcIicsXG4gICAgICBidWlsZDogJ2VjaG8gXCJObyBuZWVkIHRvIGJ1aWxkIHRoZSBjaGFpbmNvZGVcIicsXG4gICAgICBsaW50OiBcImVzbGludCAuIC0tZml4IC0tZXh0IC5qc1wiLFxuICAgIH07XG5cbiAgICBjb25zdCBjb250cmFjdFBhY2thZ2UgPSBwa2c7XG5cbiAgICBjb250cmFjdFBhY2thZ2UubmFtZSA9IG5hbWU7XG4gICAgY29udHJhY3RQYWNrYWdlLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb247XG4gICAgY29udHJhY3RQYWNrYWdlLnNjcmlwdHMgPSBzY3JpcHRzO1xuXG4gICAgZGVsZXRlIGNvbnRyYWN0UGFja2FnZS50eXBlO1xuICAgIGRlbGV0ZSBjb250cmFjdFBhY2thZ2UudHlwZXM7XG4gICAgZGVsZXRlIGNvbnRyYWN0UGFja2FnZS5leHBvcnRzO1xuICAgIGNvbnRyYWN0UGFja2FnZS5tYWluID0gYnVuZGxlXG4gICAgICA/IGAke3RvUGFzY2FsQ2FzZShuYW1lKX0uanNgXG4gICAgICA6IGAke2lucHV0fS9pbmRleC5qc2A7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKG91dHB1dCwgXCJwYWNrYWdlLmpzb25cIiksXG4gICAgICBKU09OLnN0cmluZ2lmeShjb250cmFjdFBhY2thZ2UpXG4gICAgKTtcblxuICAgIGlmIChucG1yYykgZnMud3JpdGVGaWxlU3luYyhwYXRoLmpvaW4ob3V0cHV0LCBcIi5ucG1yY1wiKSwgbnBtcmMpO1xuXG4gICAgbG9nLmluZm8oYEluc3RhbGxpbmcgYW5kIHNocmlua3dyYXBwaW5nIGRlcGVuZGVuY2llc2ApO1xuICAgIGV4ZWNTeW5jKGBucG0gaW5zdGFsbGAsIHsgY3dkOiBvdXRwdXQgfSk7XG4gICAgZXhlY1N5bmMoYG5wbSBzaHJpbmt3cmFwYCwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBleGVjU3luYyhcInJtIC1yZiBub2RlX21vZHVsZXNcIiwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBsb2cuaW5mbyhgZGVsZXRpbmcgdGVtcCBmb2xkZXJzYCk7XG4gICAgZXhlY1N5bmMoYHJtIC1yZiAuL2xpYiAmJiBybSAtcmYgLi9kaXN0YCwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBsb2cuaW5mbyhcbiAgICAgIGBDb250cmFjdCAke25hbWV9IGNvbXBpbGVkIHN1Y2Nlc3NmdWxseSEgaW4gJHtwYXRoLnJlc29sdmUob3V0cHV0KX1gXG4gICAgKTtcbiAgICBpZiAoZGV2KSB7XG4gICAgICBsb2cuaW5mbyhgZGV2IG1vZGUgZW5hYmxlZC4gaW5zdGFsbGluZyBkZXBlbmRlbmNpZXMgZm9yIGRlYnVnZ2luZ2ApO1xuICAgICAgZXhlY1N5bmMoYG5wbSBpbnN0YWxsYCwge1xuICAgICAgICBjd2Q6IG91dHB1dCxcbiAgICAgICAgZW52OiB7IC4uLnByb2Nlc3MuZW52LCBOT0RFX0VOVjogXCJwcm9kdWN0aW9uXCIgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG5cbmNvbnN0IGV4dHJhY3RJbmRleGVzID0gbmV3IENvbW1hbmQoKVxuICAuY29tbWFuZChcImV4dHJhY3QtaW5kZXhlc1wiKVxuICAub3B0aW9uKFwiLS1maWxlIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZpbGVcIilcbiAgLm9wdGlvbihcIi0tZm9sZGVyIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZvbGRlclwiKVxuICAub3B0aW9uKFwiLS1vdXREaXIgPFN0cmluZz5cIiwgXCJ0aGUgb3V0ZGlyLiBzaG91bGQgbWF0Y2ggeW91ciBjb250cmFjdCBmb2xkZXJcIilcbiAgLmRlc2NyaXB0aW9uKFxuICAgIFwiQ3JlYXRlcyBhIHRoZSBKU09OIGluZGV4IGZpbGVzIHRvIGJlIHN1Ym1pdHRlZCB0byBhbG9uZyB3aXRoIHRoZSBjb250cmFjdFwiXG4gIClcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImV4dHJhY3QtaW5kZXhlc1wiKTtcbiAgICBsb2cuZGVidWcoXG4gICAgICBgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gXG4gICAgKTtcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBsZXQgeyBmaWxlLCBmb2xkZXIsIG91dERpciB9ID0gb3B0aW9ucztcblxuICAgIGNvbnN0IG1vZGVsczogYW55W10gPSBbXTtcbiAgICBpZiAoZmlsZSkge1xuICAgICAgbW9kZWxzLnB1c2goLi4ucmVhZE1vZGVsRmlsZShmaWxlKSk7XG4gICAgfVxuXG4gICAgaWYgKGZvbGRlcikge1xuICAgICAgbG9nLmluZm8oYExvYWRpbmcgbW9kZWxzIGZyb20gJHtmb2xkZXJ9Li4uYCk7XG4gICAgICBtb2RlbHMucHVzaCguLi4oYXdhaXQgcmVhZE1vZGVsRm9sZGVycyhmb2xkZXIpKSk7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdDogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGNvbnN0IGRlc2lnbkRvY3M6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcblxuICAgIGlmICghZmlsZSAmJiAhZm9sZGVyKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoYE11c3QgcGFzcyBhIGZpbGUgb3IgYSBmb2xkZXJgKTtcblxuICAgIGZvciAoY29uc3QgbSBvZiBtb2RlbHMpIHtcbiAgICAgIGxvZy52ZXJib3NlKGBFeHRyYWN0aW5nIGluZGV4ZXMgZm9yIHRhYmxlICR7TW9kZWwudGFibGVOYW1lKG0pfWApO1xuICAgICAgY29uc3QgaW5kZXhlcyA9IGdlbmVyYXRlTW9kZWxJbmRleGVzKG0pO1xuICAgICAgaW5kZXhlcy5mb3JFYWNoKChpbmRleCkgPT4ge1xuICAgICAgICBpZiAoaW5kZXgubmFtZSkge1xuICAgICAgICAgIHJlc3VsdFtpbmRleC5uYW1lXSA9IGluZGV4O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGdlbmVyYXRlTW9kZWxEZXNpZ25Eb2NzKG0sIGRlc2lnbkRvY3MpO1xuICAgIH1cbiAgICBjb25zdCBpbmRleGVzVG9Xcml0ZSA9IE9iamVjdC52YWx1ZXMocmVzdWx0KTtcbiAgICBjb25zdCBkb2NzVG9Xcml0ZSA9IE9iamVjdC52YWx1ZXMoZGVzaWduRG9jcyk7XG4gICAgbG9nLnZlcmJvc2UoYEZvdW5kICR7aW5kZXhlc1RvV3JpdGUubGVuZ3RofSBpbmRleGVzIHRvIGNyZWF0ZWApO1xuICAgIGxvZy52ZXJib3NlKGBGb3VuZCAke2RvY3NUb1dyaXRlLmxlbmd0aH0gZGVzaWduIGRvY3MgdG8gY3JlYXRlYCk7XG4gICAgbG9nLmRlYnVnKGBJbmRleGVzOiAke0pTT04uc3RyaW5naWZ5KHJlc3VsdCl9YCk7XG4gICAgbG9nLmRlYnVnKGBEZXNpZ25Eb2NzOiAke0pTT04uc3RyaW5naWZ5KGRlc2lnbkRvY3MpfWApO1xuICAgIHdyaXRlSW5kZXhlcyhpbmRleGVzVG9Xcml0ZSwgb3V0RGlyKTtcbiAgICB3cml0ZURlc2lnbkRvY3MoZG9jc1RvV3JpdGUsIG91dERpcik7XG4gIH0pO1xuXG5jb25zdCBleHRyYWN0Q29sbGVjdGlvbnMgPSBuZXcgQ29tbWFuZCgpXG4gIC5jb21tYW5kKFwiZXh0cmFjdC1jb2xsZWN0aW9uc1wiKVxuICAub3B0aW9uKFwiLS1maWxlIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZpbGVcIilcbiAgLm9wdGlvbihcIi0tZm9sZGVyIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZvbGRlclwiKVxuICAub3B0aW9uKFwiLS1vdXREaXIgPFN0cmluZz5cIiwgXCJ0aGUgb3V0ZGlyLiBzaG91bGQgbWF0Y2ggeW91ciBjb250cmFjdCBmb2xkZXJcIilcbiAgLm9wdGlvbihcIi0tbXNwSWRzIDxTdHJpbmc+XCIsIFwic2luZ2xlIG1zcElkIG9yIHN0cmluZ2lmaWVkIGFycmF5XCIpXG4gIC5vcHRpb24oXCItLW1haW5Nc3BJZCA8U3RyaW5nPlwiLCBcInNpbmdsZSBtc3BJZFwiKVxuICAub3B0aW9uKFxuICAgIFwiLS1vdmVycmlkZXMgW1N0cmluZ11cIixcbiAgICBcInN0cmluZ2lmaWVkIG92ZXJyaWRlIG9iamVjdCB7cmVxdWlyZWRQZWVyQ291bnQ6IG51bWJlciwgbWF4UGVlckNvdW50OiBudW1iZXIsIGJsb2NrVG9MaXZlOiBudW1iZXIsIG1lbWJlck9ubHlSZWFkOiBudW1iZXIsIG1lbWJlck9ubHlXcml0ZTogbnVtYmVyLCBlbmRvcnNlbWVudFBvbGljeTogIHt9fVwiXG4gIClcbiAgLmRlc2NyaXB0aW9uKFxuICAgIFwiQ3JlYXRlcyBhIHRoZSBKU09OIGluZGV4IGZpbGVzIHRvIGJlIHN1Ym1pdHRlZCB0byBhbG9uZyB3aXRoIHRoZSBjb250cmFjdFwiXG4gIClcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImV4dHJhY3QtY29sbGVjdGlvbnNcIik7XG4gICAgbG9nLmRlYnVnKFxuICAgICAgYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YFxuICAgICk7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgbGV0IHsgZmlsZSwgZm9sZGVyLCBvdXREaXIsIG1zcElkcywgbWFpbk1zcElkIH0gPSBvcHRpb25zO1xuXG4gICAgdHJ5IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIG1zcElkcyA9IG1zcElkcyA/IEpTT04ucGFyc2UobXNwSWRzKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICAgfSBjYXRjaCAoZTogdW5rbm93bikge1xuICAgICAgICAvLyAgZG8gbm90aGluZ1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGU6IHVua25vd24pIHtcbiAgICAgIHRocm93IG5ldyBTZXJpYWxpemF0aW9uRXJyb3IoYFVuYWJsZSB0byBleHRyYWN0IG1zcGlkczogICR7ZX1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBtb2RlbHM6IGFueVtdID0gW107XG4gICAgaWYgKGZpbGUpIHtcbiAgICAgIG1vZGVscy5wdXNoKC4uLnJlYWRNb2RlbEZpbGUoZmlsZSkpO1xuICAgIH1cblxuICAgIGlmIChmb2xkZXIpIHtcbiAgICAgIGxvZy5pbmZvKGBMb2FkaW5nIG1vZGVscyBmcm9tICR7Zm9sZGVyfS4uLmApO1xuICAgICAgbW9kZWxzLnB1c2goLi4uKGF3YWl0IHJlYWRNb2RlbEZvbGRlcnMoZm9sZGVyKSkpO1xuICAgIH1cblxuICAgIGlmICghZmlsZSAmJiAhZm9sZGVyKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoYE11c3QgcGFzcyBhIGZpbGUgb3IgYSBmb2xkZXJgKTtcblxuICAgIGNvbnN0IGluamVjdGFibGVNb2RlbHMgPSBtb2RlbHMuZmlsdGVyKFxuICAgICAgKG1vZGVsKSA9PlxuICAgICAgICBNb2RlbC5pc1NoYXJlZChtb2RlbCkgfHxcbiAgICAgICAgTW9kZWwuaXNQcml2YXRlKG1vZGVsKSB8fFxuICAgICAgICAhIU1vZGVsLm1pcnJvcmVkQXQobW9kZWwpXG4gICAgKTtcbiAgICBpZiAoIWluamVjdGFibGVNb2RlbHMubGVuZ3RoKSB7XG4gICAgICBsb2cuaW5mbyhcbiAgICAgICAgYE5vIHNoYXJlZCwgcHJpdmF0ZSwgb3IgbWlycm9yZWQgbW9kZWxzIGZvdW5kIHRvIGV4dHJhY3QgY29sbGVjdGlvbnNgXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGFzeW5jIGZ1bmN0aW9uIGdldENvbHMobXNwSWRzTGlzdD86IHN0cmluZ1tdKSB7XG4gICAgICBjb25zdCBjb2xzOiB7XG4gICAgICAgIGluZGV4ZXM6IENyZWF0ZUluZGV4UmVxdWVzdFtdO1xuICAgICAgICBkZXNpZ25Eb2NzOiBDb3VjaERCRGVzaWduRG9jW107XG4gICAgICAgIG1pcnJvcj86IFByaXZhdGVDb2xsZWN0aW9uO1xuICAgICAgICBjb2xsZWN0aW9uczogUHJpdmF0ZUNvbGxlY3Rpb25bXTtcbiAgICAgIH1bXSA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICBpbmplY3RhYmxlTW9kZWxzLm1hcChhc3luYyAoY2xhenopID0+IHtcbiAgICAgICAgICBjb25zdCB0YWJsZU5hbWUgPSBNb2RlbC50YWJsZU5hbWUoY2xhenopO1xuICAgICAgICAgIGNvbnN0IG1pcnJvck1ldGEgPSBNb2RlbC5taXJyb3JlZEF0KGNsYXp6KTtcblxuICAgICAgICAgIGNvbnNvbGUubG9nKHRhYmxlTmFtZSk7XG4gICAgICAgICAgY29uc3QgY29sbGVjdGlvbnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICAgICAgICBmb3IgKGNvbnN0IG1zcCBvZiBtc3BJZHNMaXN0IHx8IG1zcElkcyB8fCBbXSkge1xuICAgICAgICAgICAgY29sbGVjdGlvbnNbbXNwXSA9IGF3YWl0IGV4Q29sbGVjdGlvbnMoXG4gICAgICAgICAgICAgIGNsYXp6LFxuICAgICAgICAgICAgICBbbXNwLCBtYWluTXNwSWRdLFxuICAgICAgICAgICAgICB7fSxcbiAgICAgICAgICAgICAgLy8ge1xuICAgICAgICAgICAgICAvLyAgIHNoYXJlZENvbHM6IE9iamVjdC5hc3NpZ24oe30sIG92ZXJyaWRlcy5zaGFyZWRDb2xzKSxcbiAgICAgICAgICAgICAgLy8gICBwcml2YXRlQ29sczogT2JqZWN0LmFzc2lnbih7fSwgb3ZlcnJpZGVzLnByaXZhdGVDb2xzKSxcbiAgICAgICAgICAgICAgLy8gfSxcbiAgICAgICAgICAgICAgISFtaXJyb3JNZXRhXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxldCBtaXJyb3JDb2xsZWN0aW9uOiBQcml2YXRlQ29sbGVjdGlvbiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICAgICAgICAgIGlmIChtaXJyb3JNZXRhKSB7XG4gICAgICAgICAgICBjb2xsZWN0aW9uc1ttYWluTXNwSWRdID0gY29sbGVjdGlvbnNbbWFpbk1zcElkXSB8fCB7fTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGNvbGxlY3Rpb25zKS5mb3JFYWNoKChtc3A6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICBjb2xsZWN0aW9uc1ttYWluTXNwSWRdLnByaXZhdGVzID0gY29sbGVjdGlvbnNbXG4gICAgICAgICAgICAgICAgbXNwXG4gICAgICAgICAgICAgIF0ucHJpdmF0ZXM/LmZpbHRlcigocDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHAubmFtZSAhPT0gKG1pcnJvck1ldGEucmVzb2x2ZXIgYXMgc3RyaW5nKSkgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgbWlycm9yQ29sbGVjdGlvbiA9IHAgYXMgYW55O1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBwcml2YXRlc0NvdW50ID0gT2JqZWN0LnZhbHVlcyhjb2xsZWN0aW9ucylcbiAgICAgICAgICAgIC5tYXAoKGMpID0+IGMucHJpdmF0ZXMpXG4gICAgICAgICAgICAuZmxhdCgpLmxlbmd0aDtcbiAgICAgICAgICBpZiAocHJpdmF0ZXNDb3VudClcbiAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgIC5pbmZvKGBGb3VuZCAke3ByaXZhdGVzQ291bnR9IHByaXZhdGUgY29sbGVjdGlvbnMgdG8gY3JlYXRlYCk7XG4gICAgICAgICAgY29uc3Qgc2hhcmVkQ291bnQgPSBPYmplY3QudmFsdWVzKGNvbGxlY3Rpb25zKVxuICAgICAgICAgICAgLm1hcCgoYykgPT4gYy5zaGFyZWQpXG4gICAgICAgICAgICAuZmxhdCgpLmxlbmd0aDtcblxuICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgLmZvcihNb2RlbC50YWJsZU5hbWUoY2xhenopKVxuICAgICAgICAgICAgLmluZm8oYEZvdW5kICR7c2hhcmVkQ291bnR9IHNoYXJlZCBjb2xsZWN0aW9ucyB0byBjcmVhdGVgKTtcbiAgICAgICAgICBpZiAobWlycm9yQ29sbGVjdGlvbilcbiAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgIC5pbmZvKFxuICAgICAgICAgICAgICAgIGBGb3VuZCBvbmUgbWlycm9yIGNvbGxlY3Rpb24gJHttaXJyb3JNZXRhPy5yZXNvbHZlciBhcyBzdHJpbmd9YFxuICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgY29uc3QgY29sTGlzdCA9IE9iamVjdC52YWx1ZXMoY29sbGVjdGlvbnMpXG4gICAgICAgICAgICAubWFwKChjKSA9PiBbLi4uKGMucHJpdmF0ZXMgfHwgW10pLCAuLi4oYy5zaGFyZWQgfHwgW10pXSlcbiAgICAgICAgICAgIC5mbGF0KCk7XG4gICAgICAgICAgbGV0IGluZGV4ZXM6IENyZWF0ZUluZGV4UmVxdWVzdFtdID0gW107XG4gICAgICAgICAgbGV0IGRlc2lnbkRvY3M6IENvdWNoREJEZXNpZ25Eb2NbXSA9IFtdO1xuICAgICAgICAgIGlmIChjb2xMaXN0Lmxlbmd0aCkge1xuICAgICAgICAgICAgbG9nXG4gICAgICAgICAgICAgIC5mb3IoTW9kZWwudGFibGVOYW1lKGNsYXp6KSlcbiAgICAgICAgICAgICAgLnZlcmJvc2UoYGdlbmVyYXRpbmcgaW5kZXhlcyBmb3IgY29sbGVjdGlvbnNgKTtcbiAgICAgICAgICAgIGluZGV4ZXMgPSBnZW5lcmF0ZU1vZGVsSW5kZXhlcyhjbGF6eik7XG4gICAgICAgICAgICBsb2dcbiAgICAgICAgICAgICAgLmZvcihNb2RlbC50YWJsZU5hbWUoY2xhenopKVxuICAgICAgICAgICAgICAuaW5mbyhgZm91bmQgJHtpbmRleGVzLmxlbmd0aH0gaW5kZXhlc2ApO1xuICAgICAgICAgICAgZGVzaWduRG9jcyA9IGdlbmVyYXRlTW9kZWxEZXNpZ25Eb2NzKGNsYXp6KTtcbiAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgIC5pbmZvKGBmb3VuZCAke2Rlc2lnbkRvY3MubGVuZ3RofSBkZXNpZ24gZG9jc2ApO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaW5kZXhlcyxcbiAgICAgICAgICAgIGRlc2lnbkRvY3MsXG4gICAgICAgICAgICBjb2xsZWN0aW9uczogY29sTGlzdCxcbiAgICAgICAgICAgIG1pcnJvcjogbWlycm9yQ29sbGVjdGlvbixcbiAgICAgICAgICB9O1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICAgIHJldHVybiBjb2xzO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbHMgPSBhd2FpdCBnZXRDb2xzKCk7XG4gICAgY29uc3Qgb25seU1pcnJvciA9IGF3YWl0IGdldENvbHMoW21haW5Nc3BJZF0pO1xuXG4gICAgY29uc3QgY29sbGVjdGlvbnNUbyA9IFtcbiAgICAgIC4uLm9ubHlNaXJyb3IuZmlsdGVyKChjKSA9PiBjLm1pcnJvcikubWFwKChjKSA9PiBjLm1pcnJvciksXG4gICAgICAuLi5jb2xzLm1hcCgoYykgPT4gYy5jb2xsZWN0aW9ucykuZmxhdCgpLFxuICAgICAgLi4uY29scy5maWx0ZXIoKGMpID0+IGMubWlycm9yKS5tYXAoKGMpID0+IGMubWlycm9yKSxcbiAgICBdIGFzIFByaXZhdGVDb2xsZWN0aW9uW107XG5cbiAgICBjb25zdCB1bmlxdWVCeUNvbGxlY3Rpb24gPSBbXG4gICAgICAuLi5uZXcgTWFwKFxuICAgICAgICBjb2xsZWN0aW9uc1RvLm1hcCgoaXRlbTogUHJpdmF0ZUNvbGxlY3Rpb24pID0+IFtpdGVtLm5hbWUsIGl0ZW1dKVxuICAgICAgKS52YWx1ZXMoKSxcbiAgICBdO1xuXG4gICAgaWYgKHVuaXF1ZUJ5Q29sbGVjdGlvbi5sZW5ndGgpIHtcbiAgICAgIHdyaXRlQ29sbGVjdGlvbnModW5pcXVlQnlDb2xsZWN0aW9uLCBvdXREaXIpO1xuICAgICAgY29uc3QgbWV0YUNvbGxlY3Rpb25zQ29uZmlnID0gcGF0aC5qb2luKFxuICAgICAgICBvdXREaXIsXG4gICAgICAgIFwiTUVUQS1JTkZcIixcbiAgICAgICAgXCJjb2xsZWN0aW9uc19jb25maWcuanNvblwiXG4gICAgICApO1xuICAgICAgY29uc3QgY29udHJhY3RDb2xsZWN0aW9uc0NvbmZpZyA9IHBhdGguam9pbihcbiAgICAgICAgb3V0RGlyLFxuICAgICAgICBcImNvbGxlY3Rpb25zX2NvbmZpZy5qc29uXCJcbiAgICAgICk7XG4gICAgICBmcy5jb3B5RmlsZVN5bmMobWV0YUNvbGxlY3Rpb25zQ29uZmlnLCBjb250cmFjdENvbGxlY3Rpb25zQ29uZmlnKTtcbiAgICAgIGxvZy5pbmZvKFxuICAgICAgICBgU3RvcmVkICR7Y29sbGVjdGlvbnNUby5sZW5ndGh9IGNvbGxlY3Rpb25zIHRvICR7bWV0YUNvbGxlY3Rpb25zQ29uZmlnfWBcbiAgICAgICk7XG4gICAgICBsb2cuaW5mbyhcbiAgICAgICAgYENvcGllZCBjb2xsZWN0aW9uc19jb25maWcgdG8gJHtjb250cmFjdENvbGxlY3Rpb25zQ29uZmlnfSBhbG9uZ3NpZGUgdGhlIHBhY2thZ2UuanNvbmBcbiAgICAgICk7XG5cbiAgICAgIGNvbHMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICBjb25zdCB7IGluZGV4ZXMsIGRlc2lnbkRvY3MsIGNvbGxlY3Rpb25zLCBtaXJyb3IgfSA9IGM7XG4gICAgICAgIGNvbnN0IHRvSW5kZXg6IFByaXZhdGVDb2xsZWN0aW9uW10gPSBbLi4uY29sbGVjdGlvbnMsIG1pcnJvcl0uZmlsdGVyKFxuICAgICAgICAgIEJvb2xlYW5cbiAgICAgICAgKSBhcyBQcml2YXRlQ29sbGVjdGlvbltdO1xuICAgICAgICB0b0luZGV4LmZvckVhY2goKGkpID0+IHtcbiAgICAgICAgICB3cml0ZUluZGV4ZXMoaW5kZXhlcywgb3V0RGlyLCBpLm5hbWUpO1xuICAgICAgICAgIHdyaXRlQ29sbGVjdGlvbkRlc2lnbkRvY3MoZGVzaWduRG9jcyB8fCBbXSwgb3V0RGlyLCBpLm5hbWUpO1xuICAgICAgICAgIGxvZy5pbmZvKFxuICAgICAgICAgICAgYFN0b3JlZCAke2luZGV4ZXM/Lmxlbmd0aCB8fCAwfSBpbmRleGVzIGFuZCAke2Rlc2lnbkRvY3M/Lmxlbmd0aCB8fCAwfSBkZXNpZ24gZG9jcyB0byBjb2xsZWN0aW9uICR7aS5uYW1lfWBcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG5cbmNvbnN0IGVuc3VyZUluZnJhID0gbmV3IENvbW1hbmQoKVxuICAubmFtZShcImF3YWl0LWluZnJhXCIpXG4gIC5kZXNjcmlwdGlvbihcIndhaXRzIGZvciB0aGUgaW5mcmFzdHJ1Y3R1cmUgdG8gYmUgdXAgYW5kIHJ1bm5pbmdcIilcbiAgLm9wdGlvbihcbiAgICBcIi0tY29udGFpbmVyIDxTdHJpbmc+XCIsXG4gICAgXCJkb2NrZXIgY29udGFpbmVyIG5hbWUgdG8gdGVzdCAodXN1YWxseSBsYXN0IHBlZXIpXCIsXG4gICAgXCJib290LW9yZy1jLXBlZXItMFwiXG4gIClcbiAgLm9wdGlvbihcIi0tdGltZW91dCA8U3RyaW5nPlwiLCBcInRpbWVvdXQgYmV0d2VlbiB0ZXN0cyBpbiBtaWxsaXNlY29uZHNcIiwgXCI1MDAwXCIpXG4gIC5vcHRpb24oXCItLWF0dGVtcHRzIDxTdHJpbmc+XCIsIFwibnVtYmVyIG9mIGF0dGVtcHRzIGJlZm9yZSBnaXZpbmcgdXBcIiwgXCIxMFwiKVxuICAuYWN0aW9uKGFzeW5jIChvcHRpb25zOiBhbnkpID0+IHtcbiAgICBjb25zdCBwa2cgPSBKU09OLnBhcnNlKFxuICAgICAgZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKSwgXCJ1dGYtOFwiKVxuICAgICk7XG5cbiAgICBjb25zdCB2ZXJzaW9uID0gcGtnLnZlcnNpb247XG5cbiAgICBjb25zdCBsb2cgPSBsb2dnZXIuZm9yKFwiYXdhaXQtaW5mcmFcIik7XG4gICAgbG9nLmRlYnVnKFxuICAgICAgYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YFxuICAgICk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGxldCB7IGNvbnRhaW5lciwgdGltZW91dCwgYXR0ZW1wdHMgfSA9IG9wdGlvbnM7XG4gICAgdGltZW91dCA9IHBhcnNlSW50KHRpbWVvdXQpIHx8IDUwMDA7XG4gICAgYXR0ZW1wdHMgPSBwYXJzZUludChhdHRlbXB0cykgfHwgMTA7XG5cbiAgICBhd2FpdCBlbnN1cmVJbmZyYXN0cnVjdHVyZUJvb3RlZChcImJvb3Qtb3JnLWMtcGVlci0wXCIsIHRpbWVvdXQsIGF0dGVtcHRzKTtcblxuICAgIGxvZy5pbmZvKFxuICAgICAgYEluZnJhc3RydWN0dXJlIGJvb3RlZCBzdWNjZXNzZnVsbHkgKGFjY29yZGluZyB0byBjb250YWluZXIgJHtjb250YWluZXJ9KSFgXG4gICAgKTtcbiAgfSk7XG5cbmNvbnN0IGRlcGxveUNvbnRyYWN0ID0gbmV3IENvbW1hbmQoKVxuICAubmFtZShcImRlcGxveS1jb250cmFjdFwiKVxuICAuZGVzY3JpcHRpb24oXCJkZXBsb3lzIHRoZSBzZWxlY3RlZCBjb250cmFjdFwiKVxuICAub3B0aW9uKFwiLS1uYW1lIDxTdHJpbmc+XCIsIFwiQ29udHJhY3QgTmFtZSAoYW5kIGZvbGRlcilcIilcbiAgLm9wdGlvbihcIi0taW5wdXQgPFN0cmluZz5cIiwgXCJpbnB1dCBmb2xkZXJcIilcbiAgLm9wdGlvbihcbiAgICBcIi0tY29sbGVjdGlvbnMtY29uZmlnIDxTdHJpbmc+XCIsXG4gICAgXCJwYXRoIHRvIGNvbGxlY3Rpb25zX2NvbmZpZy5qc29uIHRvIGNvbmZpZ3VyZSBwcml2YXRlIGNvbGxlY3Rpb25zXCJcbiAgKVxuICAub3B0aW9uKFxuICAgIFwiLS1pbmNyZW1lbnRWZXJzaW9uIDxTdHJpbmc+XCIsXG4gICAgXCIodHJ1ZSB8IGZhbHNlKSBpZiBzaG91bGQgdXNlIHZlcnNpb24gb3Igc2VxdWVuY2UgdG8gdXBkYXRlIGNvbnRyYWN0c1wiLFxuICAgIGZhbHNlXG4gIClcbiAgLm9wdGlvbihcbiAgICBcIi0tdHJhY2tlckZvbGRlciA8U3RyaW5nPlwiLFxuICAgIFwiY29udHJhY3QgdmVyc2lvbiB0cmFja2VyIGZvbGRlciAoc2hvdWxkIGJlIGRlbGV0ZWQgb24gaW5mcmFzdHJ1Y3R1cmU6ZG93bilcIixcbiAgICBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJ0ZXN0c1wiLCBcImludGVncmF0aW9uXCIsIFwiY2hhaW5jb2RlVHJhY2tlcnNcIilcbiAgKVxuICAub3B0aW9uKFxuICAgIFwiLS1wZWVycyA8U3RyaW5nPlwiLFxuICAgIFwiY29tbWEgc2VwYXJhdGVkIHBlZXIgaWRzXCIsXG4gICAgXCJvcmctYS1wZWVyLTAsb3JnLWItcGVlci0wLG9yZy1jLXBlZXItMFwiXG4gIClcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImRlcGxveS1jb250cmFjdFwiKTtcbiAgICBsb2cuZGVidWcoXG4gICAgICBgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gXG4gICAgKTtcblxuICAgIGNvbnN0IHtcbiAgICAgIG5hbWUsXG4gICAgICBpbnB1dCxcbiAgICAgIHBlZXJzLFxuICAgICAgdHJhY2tlckZvbGRlcixcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIGluY3JlbWVudFZlcnNpb24sXG4gICAgICBjb2xsZWN0aW9uc0NvbmZpZyxcbiAgICB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBwZWVySWRzID0gcGVlcnMuc3BsaXQoXCIsXCIpO1xuXG4gICAgY29uc3QgY291bnRQYXRoID0gcGF0aC5yZXNvbHZlKHBhdGguam9pbih0cmFja2VyRm9sZGVyLCBgJHtuYW1lfS5jb3VudGApKTtcblxuICAgIGxldCBzZXF1ZW5jZTogbnVtYmVyO1xuXG4gICAgdHJ5IHtcbiAgICAgIHNlcXVlbmNlID0gcGFyc2VJbnQoZnMucmVhZEZpbGVTeW5jKGNvdW50UGF0aCkudG9TdHJpbmcoXCJ1dGYtOFwiKSk7XG4gICAgICBpZiAoaXNOYU4oc2VxdWVuY2UpKSBzZXF1ZW5jZSA9IDE7XG4gICAgICBlbHNlIHNlcXVlbmNlICs9IDE7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgfSBjYXRjaCAoZTogdW5rbm93bikge1xuICAgICAgc2VxdWVuY2UgPSAxO1xuICAgIH1cbiAgICAvL1xuICAgIC8vIGlmIChpbmNyZW1lbnRWZXJzaW9uKSB7XG4gICAgLy8gICB2ZXJzaW9uID0gdmVyc2lvbiArIGAtJHtzZXF1ZW5jZX1gO1xuICAgIC8vICAgLy8gc2VxdWVuY2UgPSAxO1xuICAgIC8vIH1cblxuICAgIHRyeSB7XG4gICAgICBmb3IgKGNvbnN0IHBlZXIgb2YgcGVlcklkcykge1xuICAgICAgICBwYWNrYWdlQ29udHJhY3QocGVlciwgaW5wdXQsIG5hbWUsIHZlcnNpb24pO1xuICAgICAgICBpbnN0YWxsQ29udHJhY3QocGVlciwgbmFtZSk7XG4gICAgICAgIGFwcHJvdmVDb250cmFjdChcbiAgICAgICAgICBwZWVyLFxuICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgcGVlciA9PT0gXCJvcmctYS1wZWVyLTBcIlxuICAgICAgICAgICAgPyBcInRscy1jYS1jZXJ0LnBlbVwiXG4gICAgICAgICAgICA6IFwib3JkZXJlci10bHMtY2EtY2VydC5wZW1cIixcbiAgICAgICAgICBzZXF1ZW5jZSxcbiAgICAgICAgICB2ZXJzaW9uLFxuICAgICAgICAgIGNvbGxlY3Rpb25zQ29uZmlnXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBmcy53cml0ZUZpbGVTeW5jKGNvdW50UGF0aCwgc2VxdWVuY2UudG9TdHJpbmcoKSk7XG4gICAgfSBjYXRjaCAoZXJyOiBhbnkpIHtcbiAgICAgIGxvZy5lcnJvcihcIkVycm9yIGRlcGxveWluZyBjb250cmFjdDpcIiwgZXJyKTtcbiAgICB9XG4gICAgY29tbWl0Q2hhaW5jb2RlKG5hbWUsIHNlcXVlbmNlLCB2ZXJzaW9uLCBjb2xsZWN0aW9uc0NvbmZpZyk7XG4gIH0pO1xuXG5jb25zdCBnZXRDcnlwdG9NYXRlcmlhbCA9IG5ldyBDb21tYW5kKClcbiAgLm5hbWUoXCJnZXQtY3J5cHRvLW1hdGVyaWFsXCIpXG4gIC5kZXNjcmlwdGlvbihcImNvcGllcyB0aGUgY3J5cHRvIG1hdGVyaWFsIHRvIHRoZSBzZWxlY3RlZCBmb2xkZXJcIilcbiAgLm9wdGlvbihcIi0tZm9sZGVyIDxTdHJpbmc+XCIsIFwib3V0cHV0IGZvbGRlclwiLCBcImRvY2tlci9kb2NrZXItZGF0YVwiKVxuICAub3B0aW9uKFwiLS1vcmcgW1N0cmluZ11cIiwgXCJ0aGUgb3JnL3BlZXIgdG8gZXh0cmFjdCBmcm9tXCIsIFwib3JnLWFcIilcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImdldC1jcnlwdG8tbWF0ZXJpYWxcIik7XG4gICAgbG9nLmRlYnVnKFxuICAgICAgYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YFxuICAgICk7XG4gICAgY29uc3QgeyBmb2xkZXIsIG9yZyB9ID0gb3B0aW9ucztcbiAgICBleGVjU3luYyhgZG9ja2VyIGNwICR7b3JnfTovd2VhdmVyL2NsaWVudC8uICR7Zm9sZGVyfWAsIHtcbiAgICAgIGN3ZDogcHJvY2Vzcy5jd2QoKSxcbiAgICB9KTtcbiAgfSk7XG5cbmNvbnN0IGZhYnJpY0NtZCA9IG5ldyBDb21tYW5kKClcbiAgLm5hbWUoXCJmb3ItZmFicmljXCIpXG4gIC5jb21tYW5kKFwiZmFicmljXCIpXG4gIC5kZXNjcmlwdGlvbihcbiAgICBcImV4cG9zZXMgc2V2ZXJhbCBjb21tYW5kcyB0byBoZWxwIG1hbmFnZSB0aGUgZmFicmljIGluZnJhc3RydWN0dXJlXCJcbiAgKTtcblxuZmFicmljQ21kLmFkZENvbW1hbmQoY29tcGlsZUNvbW1hbmQpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZXh0cmFjdEluZGV4ZXMpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZW5zdXJlSW5mcmEpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZGVwbG95Q29udHJhY3QpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZ2V0Q3J5cHRvTWF0ZXJpYWwpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZXh0cmFjdENvbGxlY3Rpb25zKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZmFicmljKCkge1xuICByZXR1cm4gZmFicmljQ21kO1xufVxuIl19
505
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNsaS1tb2R1bGUuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUE4ZUEseUJBRUM7QUFoZkQseUNBQW9DO0FBQ3BDLCtDQUEwRDtBQUMxRCxpREFBeUM7QUFDekMsNENBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QixtQ0FBZ0M7QUFDaEMsNEVBQTZDO0FBQzdDLDJEQUE0RTtBQUM1RSx3REFBMko7QUFDM0oseUVBQXVEO0FBQ3ZELGlEQUF3TDtBQUN4TCx1Q0FBcUM7QUFDckMsNERBQTRCO0FBQzVCLDREQUFrSTtBQUNsSSxNQUFNLE1BQU0sR0FBRyxpQkFBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNyQyxTQUFTLHVCQUF1QjtJQUM1QixPQUFPO1FBQ0gsSUFBSSxFQUFFLDRCQUE0QjtRQUNsQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVE7WUFDdEIsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDdkMsT0FBTyxJQUFJLENBQUM7WUFDaEIsQ0FBQztZQUNELE1BQU0sWUFBWSxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsY0FBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNsRSxNQUFNLFVBQVUsR0FBRztnQkFDZixZQUFZO2dCQUNaLEdBQUcsWUFBWSxLQUFLO2dCQUNwQixjQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUM7YUFDdEMsQ0FBQztZQUNGLEtBQUssTUFBTSxTQUFTLElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ2pDLElBQUksWUFBRSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxZQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7b0JBQzlELE9BQU8sU0FBUyxDQUFDO2dCQUNyQixDQUFDO1lBQ0wsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7S0FDSixDQUFDO0FBQ04sQ0FBQztBQUNELE1BQU0sY0FBYyxHQUFHLElBQUksbUJBQU8sRUFBRTtLQUMvQixJQUFJLENBQUMsa0JBQWtCLENBQUM7S0FDeEIsV0FBVyxDQUFDLDJCQUEyQixDQUFDO0tBQ3hDLE1BQU0sQ0FBQyxPQUFPLEVBQUUseUNBQXlDLEVBQUUsS0FBSyxDQUFDO0tBQ2pFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsbUNBQW1DLEVBQUUsS0FBSyxDQUFDO0tBQzdELE1BQU0sQ0FBQyxTQUFTLEVBQUUscURBQXFELEVBQUUsS0FBSyxDQUFDO0tBQy9FLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLENBQUM7S0FDN0QsTUFBTSxDQUFDLFVBQVUsRUFBRSwwQ0FBMEMsRUFBRSxLQUFLLENBQUM7S0FDckUsTUFBTSxDQUFDLDJCQUEyQixFQUFFLG1FQUFtRSxFQUFFLGlCQUFpQixDQUFDO0tBQzNILE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxnQ0FBZ0MsQ0FBQztLQUMxRixNQUFNLENBQUMsdUJBQXVCLEVBQUUsaUNBQWlDLEVBQUUsS0FBSyxDQUFDO0tBQ3pFLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSw0QkFBNEIsRUFBRSxlQUFlLENBQUM7S0FDekUsTUFBTSxDQUFDLG1CQUFtQixFQUFFLDZCQUE2QixFQUFFLGFBQWEsQ0FBQztLQUN6RSxNQUFNLENBQUMsY0FBYyxFQUFFLDRDQUE0QyxFQUFFLEtBQUssQ0FBQztLQUMzRSxNQUFNLENBQUMsU0FBUyxFQUFFLHdDQUF3QyxFQUFFLEtBQUssQ0FBQztLQUNsRSxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQzFCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBRSxDQUFDLFlBQVksQ0FBQyxjQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxjQUFjLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzNGLElBQUksWUFBWSxHQUFHLFNBQVMsQ0FBQztJQUM3QixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDO0lBQzVCLElBQUk7SUFDSix3Q0FBd0M7SUFDeEMsR0FBRztJQUNILHdDQUF3QztJQUN4QyxLQUFLO0lBQ0wsd0NBQXdDO0lBQ3hDLElBQUk7SUFDSix3Q0FBd0M7SUFDeEMsV0FBVyxFQUFFLE1BQU07SUFDbkIsd0NBQXdDO0lBQ3hDLEtBQUs7SUFDTCx3Q0FBd0M7SUFDeEMsaUJBQWlCO0lBQ2pCLHdDQUF3QztJQUN4QyxLQUFLO0lBQ0wsd0NBQXdDO0lBQ3hDLE1BQU0sRUFBRSxZQUFZO0lBQ3BCLHdDQUF3QztJQUN4QyxVQUFVO0lBQ1Ysd0NBQXdDO0lBQ3hDLEtBQUssR0FBRyxHQUFHLE9BQU8sQ0FBQztJQUNuQixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDM0MsSUFBSSxDQUFDO1FBQ0QsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNSLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQUUsQ0FBQyxZQUFZLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsUUFBUSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUN4RixNQUFNLFFBQVEsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFO2dCQUNuRSxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNuQyxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztvQkFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxrQ0FBa0MsT0FBTyxjQUFjLENBQUMsQ0FBQztvQkFDdEUsT0FBTyxFQUFFLENBQUM7Z0JBQ2QsQ0FBQztnQkFDRCxPQUFPLEtBQUssQ0FBQztZQUNqQixDQUFDLENBQUMsQ0FBQztZQUNILFlBQVksR0FBRyxRQUFRLENBQUM7UUFDNUIsQ0FBQztJQUNMLENBQUM7SUFDRCxNQUFNLENBQUM7UUFDSCxHQUFHLENBQUMsSUFBSSxDQUFDLHlEQUF5RCxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUNELEdBQUcsQ0FBQyxLQUFLLENBQUMseUJBQXlCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksWUFBWSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2pHLFlBQVksR0FBRyxjQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQztRQUN4QyxDQUFDLENBQUMsWUFBWTtRQUNkLENBQUMsQ0FBQyxjQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUM3QyxNQUFNLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUQsR0FBRyxDQUFDLElBQUksQ0FBQyxxREFBcUQsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN4RSxJQUFBLHdCQUFRLEVBQUMsVUFBVSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzdCLElBQUksTUFBTSxFQUFFLENBQUM7UUFDVCxHQUFHLENBQUMsSUFBSSxDQUFDLDBCQUEwQixLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLE1BQU0sYUFBYSxHQUFHLFlBQUUsQ0FBQyxXQUFXLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQztZQUNELE1BQU0sVUFBVSxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQztZQUNsRSxNQUFNLFVBQVUsR0FBRyxvQkFBRSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsb0JBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEUsSUFBSSxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ25CLE1BQU0sSUFBSSw2QkFBYSxDQUFDLG9CQUFFLENBQUMsNEJBQTRCLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUNqRyxDQUFDO1lBQ0QsTUFBTSxZQUFZLEdBQUcsb0JBQUUsQ0FBQywwQkFBMEIsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLG9CQUFFLENBQUMsR0FBRyxFQUFFLGNBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsU0FBUyxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBQ25JLElBQUksWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDN0IsTUFBTSxJQUFJLDZCQUFhLENBQUMsWUFBWSxDQUFDLE1BQU07cUJBQ3RDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsb0JBQUUsQ0FBQyw0QkFBNEIsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO3FCQUN4RSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUNyQixDQUFDO1lBQ0QsTUFBTSxtQkFBbUIsR0FBRztnQkFDeEIsR0FBRyxZQUFZLENBQUMsT0FBTztnQkFDdkIsTUFBTSxFQUFFLGFBQWE7Z0JBQ3JCLE1BQU0sRUFBRSxvQkFBRSxDQUFDLFVBQVUsQ0FBQyxNQUFNO2dCQUM1QixXQUFXLEVBQUUsS0FBSztnQkFDbEIsU0FBUyxFQUFFLEtBQUs7Z0JBQ2hCLGFBQWEsRUFBRSxLQUFLO2FBQ3ZCLENBQUM7WUFDRixNQUFNLGlCQUFpQixHQUFHLG9CQUFFO2lCQUN2QixrQkFBa0IsQ0FBQztnQkFDcEIsR0FBRyxZQUFZO2dCQUNmLE9BQU8sRUFBRSxtQkFBbUI7YUFDL0IsRUFBRSxVQUFVLEVBQUUsQ0FBQyxvQkFBRSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQztpQkFDNUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3JCLE1BQU0sSUFBSSw2QkFBYSxDQUFDLG9EQUFvRCxVQUFVLEVBQUUsQ0FBQyxDQUFDO1lBQzlGLENBQUM7WUFDRCxJQUFBLDJDQUE0QixFQUFDLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1lBQ2hFLE1BQU0sZUFBZSxHQUFHLE1BQU0sSUFBQSxlQUFNLEVBQUM7Z0JBQ2pDLEtBQUssRUFBRSxpQkFBaUI7Z0JBQ3hCLE9BQU8sRUFBRTtvQkFDTCx1QkFBdUIsRUFBRTtvQkFDekIsSUFBQSx3QkFBTyxFQUFDO3dCQUNKLGlCQUFpQixFQUFFLElBQUk7d0JBQ3ZCLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7d0JBQ3BCLE1BQU0sRUFBRSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQUcsQ0FBQyxJQUFJLEVBQUU7cUJBQzlELENBQUM7aUJBQ0w7YUFDSixDQUFDLENBQUM7WUFDSCxHQUFHLENBQUMsSUFBSSxDQUFDLHVCQUF1QixNQUFNLGNBQWMsSUFBQSxzQkFBWSxFQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3RSxNQUFNLGVBQWUsQ0FBQyxLQUFLLENBQUM7Z0JBQ3hCLElBQUksRUFBRSxHQUFHLE1BQU0sSUFBSSxJQUFBLHNCQUFZLEVBQUMsSUFBSSxDQUFDLEtBQUs7Z0JBQzFDLE1BQU0sRUFBRSxLQUFLO2dCQUNiLElBQUksRUFBRSxHQUFHLElBQUEsc0JBQVksRUFBQyxJQUFJLENBQUMsS0FBSztnQkFDaEMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLO2dCQUN4QyxzQkFBc0IsRUFBRSxDQUFDLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxFQUFFO29CQUMxRCxNQUFNLGtCQUFrQixHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsY0FBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO29CQUN6RixJQUFJLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO3dCQUMvQyxPQUFPLGNBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxjQUFJOzZCQUNqQyxRQUFRLENBQUMsYUFBYSxFQUFFLGtCQUFrQixDQUFDOzZCQUMzQyxLQUFLLENBQUMsY0FBSSxDQUFDLEdBQUcsQ0FBQzs2QkFDZixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztvQkFDcEIsQ0FBQztvQkFDRCxPQUFPLGtCQUFrQixDQUFDO2dCQUM5QixDQUFDO2FBQ0osQ0FBQyxDQUFDO1lBQ0gsTUFBTSxlQUFlLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbEMsQ0FBQztnQkFDTyxDQUFDO1lBQ0wsWUFBRSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQy9ELENBQUM7SUFDTCxDQUFDO1NBQ0ksQ0FBQztRQUNGLElBQUEsMkNBQTRCLEVBQUMsWUFBWSxFQUFFO1lBQ3ZDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsTUFBTSxFQUFFLG9CQUFFLENBQUMsVUFBVSxDQUFDLE1BQU07WUFDNUIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsU0FBUyxFQUFFLFVBQVU7WUFDckIsYUFBYSxFQUFFLFVBQVU7U0FDNUIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNELE1BQU0sT0FBTyxHQUFHO1FBQ1osS0FBSyxFQUFFLElBQUEsc0NBQXVCLEVBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztRQUM1QyxXQUFXLEVBQUUsaURBQWlEO1FBQzlELGFBQWEsRUFBRSxvQ0FBb0M7UUFDbkQsS0FBSyxFQUFFLHVDQUF1QztRQUM5QyxJQUFJLEVBQUUsMEJBQTBCO0tBQ25DLENBQUM7SUFDRixNQUFNLGVBQWUsR0FBRyxHQUFHLENBQUM7SUFDNUIsZUFBZSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDNUIsZUFBZSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDMUMsZUFBZSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDbEMsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDO0lBQzVCLE9BQU8sZUFBZSxDQUFDLEtBQUssQ0FBQztJQUM3QixPQUFPLGVBQWUsQ0FBQyxPQUFPLENBQUM7SUFDL0IsZUFBZSxDQUFDLElBQUksR0FBRyxNQUFNO1FBQ3pCLENBQUMsQ0FBQyxHQUFHLElBQUEsc0JBQVksRUFBQyxJQUFJLENBQUMsS0FBSztRQUM1QixDQUFDLENBQUMsR0FBRyxLQUFLLFdBQVcsQ0FBQztJQUMxQixZQUFFLENBQUMsYUFBYSxDQUFDLGNBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUNyRixJQUFJLEtBQUs7UUFDTCxZQUFFLENBQUMsYUFBYSxDQUFDLGNBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pELEdBQUcsQ0FBQyxJQUFJLENBQUMsNENBQTRDLENBQUMsQ0FBQztJQUN2RCxJQUFBLHdCQUFRLEVBQUMsYUFBYSxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDekMsSUFBQSx3QkFBUSxFQUFDLGdCQUFnQixFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDNUMsSUFBQSx3QkFBUSxFQUFDLHFCQUFxQixFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDakQsR0FBRyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQ2xDLElBQUEsd0JBQVEsRUFBQywrQkFBK0IsRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzNELEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLDhCQUE4QixjQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvRSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ04sR0FBRyxDQUFDLElBQUksQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO1FBQ3BFLElBQUEsd0JBQVEsRUFBQyxhQUFhLEVBQUU7WUFDcEIsR0FBRyxFQUFFLE1BQU07WUFDWCxHQUFHLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRTtTQUNsRCxDQUFDLENBQUM7SUFDUCxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDSCxNQUFNLGNBQWMsR0FBRyxJQUFJLG1CQUFPLEVBQUU7S0FDL0IsT0FBTyxDQUFDLGlCQUFpQixDQUFDO0tBQzFCLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQztLQUMzQyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLENBQUM7S0FDL0MsTUFBTSxDQUFDLG1CQUFtQixFQUFFLCtDQUErQyxDQUFDO0tBQzVFLFdBQVcsQ0FBQywyRUFBMkUsQ0FBQztLQUN4RixNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQzFCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBRSxDQUFDLFlBQVksQ0FBQyxjQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxjQUFjLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzNGLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUM7SUFDNUIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzFDLEdBQUcsQ0FBQyxLQUFLLENBQUMseUJBQXlCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksWUFBWSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2pHLHdDQUF3QztJQUN4QyxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUM7SUFDdkMsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQ2xCLElBQUksSUFBSSxFQUFFLENBQUM7UUFDUCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBQSx3QkFBYSxFQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUNELElBQUksTUFBTSxFQUFFLENBQUM7UUFDVCxHQUFHLENBQUMsSUFBSSxDQUFDLHVCQUF1QixNQUFNLEtBQUssQ0FBQyxDQUFDO1FBQzdDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sSUFBQSwyQkFBZ0IsRUFBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUNELE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNsQixNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDdEIsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU07UUFDaEIsTUFBTSxJQUFJLDZCQUFhLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUM1RCxLQUFLLE1BQU0sQ0FBQyxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQ3JCLEdBQUcsQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLDRCQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRSxNQUFNLE9BQU8sR0FBRyxJQUFBLCtCQUFvQixFQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN0QixJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDYixNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUMvQixDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFBLGtDQUF1QixFQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBQ0QsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxjQUFjLENBQUMsTUFBTSxvQkFBb0IsQ0FBQyxDQUFDO0lBQ2hFLEdBQUcsQ0FBQyxPQUFPLENBQUMsU0FBUyxXQUFXLENBQUMsTUFBTSx3QkFBd0IsQ0FBQyxDQUFDO0lBQ2pFLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoRCxHQUFHLENBQUMsS0FBSyxDQUFDLGVBQWUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDdkQsSUFBQSx1QkFBWSxFQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNyQyxJQUFBLDBCQUFlLEVBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ3pDLENBQUMsQ0FBQyxDQUFDO0FBQ0gsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLG1CQUFPLEVBQUU7S0FDbkMsT0FBTyxDQUFDLHFCQUFxQixDQUFDO0tBQzlCLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQztLQUMzQyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLENBQUM7S0FDL0MsTUFBTSxDQUFDLG1CQUFtQixFQUFFLCtDQUErQyxDQUFDO0tBQzVFLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRSxtQ0FBbUMsQ0FBQztLQUNoRSxNQUFNLENBQUMsc0JBQXNCLEVBQUUsY0FBYyxDQUFDO0tBQzlDLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRSw2S0FBNkssQ0FBQztLQUM3TSxXQUFXLENBQUMsMkVBQTJFLENBQUM7S0FDeEYsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtJQUMxQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQUUsQ0FBQyxZQUFZLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsY0FBYyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMzRixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDO0lBQzVCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUM5QyxHQUFHLENBQUMsS0FBSyxDQUFDLHlCQUF5QixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLFlBQVksT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNqRyx3Q0FBd0M7SUFDeEMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxPQUFPLENBQUM7SUFDMUQsSUFBSSxDQUFDO1FBQ0QsSUFBSSxDQUFDO1lBQ0QsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ2pELDZEQUE2RDtRQUNqRSxDQUFDO1FBQ0QsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNQLGNBQWM7UUFDbEIsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1AsTUFBTSxJQUFJLGtDQUFrQixDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFDRCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7SUFDbEIsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNQLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFBLHdCQUFhLEVBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBQ0QsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUNULEdBQUcsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLE1BQU0sS0FBSyxDQUFDLENBQUM7UUFDN0MsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxJQUFBLDJCQUFnQixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU07UUFDaEIsTUFBTSxJQUFJLDZCQUFhLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUM1RCxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLDRCQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUNuRSw0QkFBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7UUFDdEIsQ0FBQyxDQUFDLDRCQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDL0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzNCLEdBQUcsQ0FBQyxJQUFJLENBQUMscUVBQXFFLENBQUMsQ0FBQztRQUNoRixPQUFPO0lBQ1gsQ0FBQztJQUNELEtBQUssVUFBVSxPQUFPLENBQUMsVUFBVTtRQUM3QixNQUFNLElBQUksR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUNoRSxNQUFNLFNBQVMsR0FBRyw0QkFBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN6QyxNQUFNLFVBQVUsR0FBRyw0QkFBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3ZCLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztZQUN2QixLQUFLLE1BQU0sR0FBRyxJQUFJLFVBQVUsSUFBSSxNQUFNLElBQUksRUFBRSxFQUFFLENBQUM7Z0JBQzNDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLElBQUEsNkJBQWEsRUFBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDLEVBQUUsRUFBRTtnQkFDbEUsSUFBSTtnQkFDSix5REFBeUQ7Z0JBQ3pELDJEQUEyRDtnQkFDM0QsS0FBSztnQkFDTCxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDbEIsQ0FBQztZQUNELElBQUksZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO1lBQ2pDLElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ2IsV0FBVyxDQUFDLFNBQVMsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3RELE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7b0JBQ3JDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTt3QkFDdEUsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxRQUFROzRCQUM5QixPQUFPLElBQUksQ0FBQzt3QkFDaEIsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO3dCQUNyQixPQUFPLEtBQUssQ0FBQztvQkFDakIsQ0FBQyxDQUFDLENBQUM7Z0JBQ1AsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDO1lBQ0QsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUM7aUJBQzNDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztpQkFDdEIsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDO1lBQ25CLElBQUksYUFBYTtnQkFDYixHQUFHO3FCQUNFLEdBQUcsQ0FBQyw0QkFBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDM0IsSUFBSSxDQUFDLFNBQVMsYUFBYSxnQ0FBZ0MsQ0FBQyxDQUFDO1lBQ3RFLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO2lCQUN6QyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7aUJBQ3BCLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUNuQixHQUFHO2lCQUNFLEdBQUcsQ0FBQyw0QkFBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDM0IsSUFBSSxDQUFDLFNBQVMsV0FBVywrQkFBK0IsQ0FBQyxDQUFDO1lBQy9ELElBQUksZ0JBQWdCO2dCQUNoQixHQUFHO3FCQUNFLEdBQUcsQ0FBQyw0QkFBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDM0IsSUFBSSxDQUFDLCtCQUErQixVQUFVLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUNyRSxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztpQkFDckMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7aUJBQ3hELElBQUksRUFBRSxDQUFDO1lBQ1osSUFBSSxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ2pCLElBQUksVUFBVSxHQUFHLEVBQUUsQ0FBQztZQUNwQixJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDakIsR0FBRztxQkFDRSxHQUFHLENBQUMsNEJBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7cUJBQzNCLE9BQU8sQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO2dCQUNuRCxPQUFPLEdBQUcsSUFBQSwrQkFBb0IsRUFBQyxLQUFLLENBQUMsQ0FBQztnQkFDdEMsR0FBRztxQkFDRSxHQUFHLENBQUMsNEJBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7cUJBQzNCLElBQUksQ0FBQyxTQUFTLE9BQU8sQ0FBQyxNQUFNLFVBQVUsQ0FBQyxDQUFDO2dCQUM3QyxVQUFVLEdBQUcsSUFBQSxrQ0FBdUIsRUFBQyxLQUFLLENBQUMsQ0FBQztnQkFDNUMsR0FBRztxQkFDRSxHQUFHLENBQUMsNEJBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7cUJBQzNCLElBQUksQ0FBQyxTQUFTLFVBQVUsQ0FBQyxNQUFNLGNBQWMsQ0FBQyxDQUFDO1lBQ3hELENBQUM7WUFDRCxPQUFPO2dCQUNILE9BQU87Z0JBQ1AsVUFBVTtnQkFDVixXQUFXLEVBQUUsT0FBTztnQkFDcEIsTUFBTSxFQUFFLGdCQUFnQjthQUMzQixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNKLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLE9BQU8sRUFBRSxDQUFDO0lBQzdCLE1BQU0sVUFBVSxHQUFHLE1BQU0sT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUM5QyxNQUFNLGFBQWEsR0FBRztRQUNsQixHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDMUQsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxFQUFFO1FBQ3hDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztLQUN2RCxDQUFDO0lBQ0YsTUFBTSxrQkFBa0IsR0FBRztRQUN2QixHQUFHLElBQUksR0FBRyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFO0tBQ3RFLENBQUM7SUFDRixJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzVCLElBQUEsMkJBQWdCLEVBQUMsa0JBQWtCLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDN0MsTUFBTSxxQkFBcUIsR0FBRyxjQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUseUJBQXlCLENBQUMsQ0FBQztRQUN2RixNQUFNLHlCQUF5QixHQUFHLGNBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLHlCQUF5QixDQUFDLENBQUM7UUFDL0UsWUFBRSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDO1FBQ2xFLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxhQUFhLENBQUMsTUFBTSxtQkFBbUIscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO1FBQ25GLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLHlCQUF5Qiw2QkFBNkIsQ0FBQyxDQUFDO1FBQ2pHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNmLE1BQU0sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDdkQsTUFBTSxPQUFPLEdBQUcsQ0FBQyxHQUFHLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDekQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNsQixJQUFBLHVCQUFZLEVBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3RDLElBQUEsb0NBQXlCLEVBQUMsVUFBVSxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1RCxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixVQUFVLEVBQUUsTUFBTSxJQUFJLENBQUMsOEJBQThCLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzFILENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDSCxNQUFNLFdBQVcsR0FBRyxJQUFJLG1CQUFPLEVBQUU7S0FDNUIsSUFBSSxDQUFDLGFBQWEsQ0FBQztLQUNuQixXQUFXLENBQUMsbURBQW1ELENBQUM7S0FDaEUsTUFBTSxDQUFDLHNCQUFzQixFQUFFLG1EQUFtRCxFQUFFLG1CQUFtQixDQUFDO0tBQ3hHLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSx1Q0FBdUMsRUFBRSxNQUFNLENBQUM7S0FDN0UsTUFBTSxDQUFDLHFCQUFxQixFQUFFLHFDQUFxQyxFQUFFLElBQUksQ0FBQztLQUMxRSxNQUFNLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO0lBQzFCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBRSxDQUFDLFlBQVksQ0FBQyxjQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxjQUFjLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzNGLE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUM7SUFDNUIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN0QyxHQUFHLENBQUMsS0FBSyxDQUFDLHlCQUF5QixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLFlBQVksT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNqRyx3Q0FBd0M7SUFDeEMsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBQy9DLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDO0lBQ3BDLFFBQVEsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BDLE1BQU0sSUFBQSx5Q0FBMEIsRUFBQyxtQkFBbUIsRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDekUsR0FBRyxDQUFDLElBQUksQ0FBQyw4REFBOEQsU0FBUyxJQUFJLENBQUMsQ0FBQztBQUMxRixDQUFDLENBQUMsQ0FBQztBQUNILE1BQU0sY0FBYyxHQUFHLElBQUksbUJBQU8sRUFBRTtLQUMvQixJQUFJLENBQUMsaUJBQWlCLENBQUM7S0FDdkIsV0FBVyxDQUFDLCtCQUErQixDQUFDO0tBQzVDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSw0QkFBNEIsQ0FBQztLQUN2RCxNQUFNLENBQUMsa0JBQWtCLEVBQUUsY0FBYyxDQUFDO0tBQzFDLE1BQU0sQ0FBQywrQkFBK0IsRUFBRSxrRUFBa0UsQ0FBQztLQUMzRyxNQUFNLENBQUMsNkJBQTZCLEVBQUUsc0VBQXNFLEVBQUUsS0FBSyxDQUFDO0tBQ3BILE1BQU0sQ0FBQywwQkFBMEIsRUFBRSw0RUFBNEUsRUFBRSxjQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixDQUFDLENBQUM7S0FDdkwsTUFBTSxDQUFDLGtCQUFrQixFQUFFLDBCQUEwQixFQUFFLHdDQUF3QyxDQUFDO0tBQ2hHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7SUFDMUIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFFLENBQUMsWUFBWSxDQUFDLGNBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLGNBQWMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDM0YsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQztJQUM1QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDMUMsR0FBRyxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxZQUFZLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDakcsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLGFBQWE7SUFDekMsNkRBQTZEO0lBQzdELGdCQUFnQixFQUFFLGlCQUFpQixHQUFHLEdBQUcsT0FBTyxDQUFDO0lBQ2pELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakMsTUFBTSxTQUFTLEdBQUcsY0FBSSxDQUFDLE9BQU8sQ0FBQyxjQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQztJQUMxRSxJQUFJLFFBQVEsQ0FBQztJQUNiLElBQUksQ0FBQztRQUNELFFBQVEsR0FBRyxRQUFRLENBQUMsWUFBRSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNsRSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDZixRQUFRLEdBQUcsQ0FBQyxDQUFDOztZQUViLFFBQVEsSUFBSSxDQUFDLENBQUM7UUFDbEIsNkRBQTZEO0lBQ2pFLENBQUM7SUFDRCxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1AsUUFBUSxHQUFHLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBQ0QsRUFBRTtJQUNGLDBCQUEwQjtJQUMxQix3Q0FBd0M7SUFDeEMscUJBQXFCO0lBQ3JCLElBQUk7SUFDSixJQUFJLENBQUM7UUFDRCxLQUFLLE1BQU0sSUFBSSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ3pCLElBQUEsOEJBQWUsRUFBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztZQUM1QyxJQUFBLDhCQUFlLEVBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzVCLElBQUEsOEJBQWUsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksS0FBSyxjQUFjO2dCQUMvQyxDQUFDLENBQUMsaUJBQWlCO2dCQUNuQixDQUFDLENBQUMseUJBQXlCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQzNFLENBQUM7UUFDRCxZQUFFLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNULEdBQUcsQ0FBQyxLQUFLLENBQUMsMkJBQTJCLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUNELElBQUEsOEJBQWUsRUFBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBQ2hFLENBQUMsQ0FBQyxDQUFDO0FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLG1CQUFPLEVBQUU7S0FDbEMsSUFBSSxDQUFDLHFCQUFxQixDQUFDO0tBQzNCLFdBQVcsQ0FBQyxtREFBbUQsQ0FBQztLQUNoRSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixDQUFDO0tBQ2xFLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSw4QkFBOEIsRUFBRSxPQUFPLENBQUM7S0FDakUsTUFBTSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtJQUMxQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQUUsQ0FBQyxZQUFZLENBQUMsY0FBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEVBQUUsY0FBYyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUMzRixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDO0lBQzVCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUM5QyxHQUFHLENBQUMsS0FBSyxDQUFDLHlCQUF5QixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLFlBQVksT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNqRyxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLE9BQU8sQ0FBQztJQUNoQyxJQUFBLHdCQUFRLEVBQUMsYUFBYSxHQUFHLHFCQUFxQixNQUFNLEVBQUUsRUFBRTtRQUNwRCxHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRTtLQUNyQixDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMsQ0FBQztBQUNILE1BQU0sU0FBUyxHQUFHLElBQUksbUJBQU8sRUFBRTtLQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDO0tBQ2xCLE9BQU8sQ0FBQyxRQUFRLENBQUM7S0FDakIsV0FBVyxDQUFDLG1FQUFtRSxDQUFDLENBQUM7QUFDdEYsU0FBUyxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNyQyxTQUFTLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQ3JDLFNBQVMsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDbEMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNyQyxTQUFTLENBQUMsVUFBVSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDeEMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0FBQ3pDLFNBQXdCLE1BQU07SUFDMUIsT0FBTyxTQUFTLENBQUM7QUFDckIsQ0FBQztBQUNELDh6MERBQTh6MEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tYW5kIH0gZnJvbSBcImNvbW1hbmRlclwiO1xuaW1wb3J0IHsgTG9nZ2luZywgdG9QYXNjYWxDYXNlIH0gZnJvbSBcIkBkZWNhZi10cy9sb2dnaW5nXCI7XG5pbXBvcnQgeyBleGVjU3luYyB9IGZyb20gXCJjaGlsZF9wcm9jZXNzXCI7XG5pbXBvcnQgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgcm9sbHVwIH0gZnJvbSBcInJvbGx1cFwiO1xuaW1wb3J0IHJlcGxhY2UgZnJvbSBcIkByb2xsdXAvcGx1Z2luLXJlcGxhY2VcIjtcbmltcG9ydCB7IEludGVybmFsRXJyb3IsIFNlcmlhbGl6YXRpb25FcnJvciB9IGZyb20gXCJAZGVjYWYtdHMvZGItZGVjb3JhdG9yc1wiO1xuaW1wb3J0IHsgZ2VuZXJhdGVNb2RlbERlc2lnbkRvY3MsIGdlbmVyYXRlTW9kZWxJbmRleGVzLCByZWFkTW9kZWxGaWxlLCByZWFkTW9kZWxGb2xkZXJzLCB3cml0ZURlc2lnbkRvY3MsIHdyaXRlSW5kZXhlcywgfSBmcm9tIFwiLi9jbGllbnQvaW5kZXhlcy9pbmRleC5qc1wiO1xuaW1wb3J0IHsgTW9kZWwgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBhcHByb3ZlQ29udHJhY3QsIGVuc3VyZUluZnJhc3RydWN0dXJlQm9vdGVkLCBpbnN0YWxsQ29udHJhY3QsIHBhY2thZ2VDb250cmFjdCwgY29tbWl0Q2hhaW5jb2RlLCBnZXRDb250cmFjdFN0YXJ0Q29tbWFuZCwgY29tcGlsZVdpdGhUc2NvbmZpZ092ZXJyaWRlcywgfSBmcm9tIFwiLi9jbGktdXRpbHMuanNcIjtcbmltcG9ydCBcIi4vc2hhcmVkL292ZXJyaWRlcy9pbmRleC5qc1wiO1xuaW1wb3J0IHRzIGZyb20gXCJ0eXBlc2NyaXB0XCI7XG5pbXBvcnQgeyBleHRyYWN0Q29sbGVjdGlvbnMgYXMgZXhDb2xsZWN0aW9ucywgd3JpdGVDb2xsZWN0aW9ucywgd3JpdGVDb2xsZWN0aW9uRGVzaWduRG9jcywgfSBmcm9tIFwiLi9jbGllbnQvY29sbGVjdGlvbnMvaW5kZXguanNcIjtcbmNvbnN0IGxvZ2dlciA9IExvZ2dpbmcuZm9yKFwiZmFicmljXCIpO1xuZnVuY3Rpb24gcmVzb2x2ZUJ1bmRsZWRKc0ltcG9ydHMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogXCJyZXNvbHZlLWJ1bmRsZWQtanMtaW1wb3J0c1wiLFxuICAgICAgICByZXNvbHZlSWQoc291cmNlLCBpbXBvcnRlcikge1xuICAgICAgICAgICAgaWYgKCFpbXBvcnRlciB8fCAhc291cmNlLnN0YXJ0c1dpdGgoXCIuXCIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCByZXNvbHZlZFBhdGggPSBwYXRoLnJlc29sdmUocGF0aC5kaXJuYW1lKGltcG9ydGVyKSwgc291cmNlKTtcbiAgICAgICAgICAgIGNvbnN0IGNhbmRpZGF0ZXMgPSBbXG4gICAgICAgICAgICAgICAgcmVzb2x2ZWRQYXRoLFxuICAgICAgICAgICAgICAgIGAke3Jlc29sdmVkUGF0aH0uanNgLFxuICAgICAgICAgICAgICAgIHBhdGguam9pbihyZXNvbHZlZFBhdGgsIFwiaW5kZXguanNcIiksXG4gICAgICAgICAgICBdO1xuICAgICAgICAgICAgZm9yIChjb25zdCBjYW5kaWRhdGUgb2YgY2FuZGlkYXRlcykge1xuICAgICAgICAgICAgICAgIGlmIChmcy5leGlzdHNTeW5jKGNhbmRpZGF0ZSkgJiYgZnMuc3RhdFN5bmMoY2FuZGlkYXRlKS5pc0ZpbGUoKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2FuZGlkYXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9LFxuICAgIH07XG59XG5jb25zdCBjb21waWxlQ29tbWFuZCA9IG5ldyBDb21tYW5kKClcbiAgICAubmFtZShcImNvbXBpbGUtY29udHJhY3RcIilcbiAgICAuZGVzY3JpcHRpb24oXCJDcmVhdGVzIGEgZ2xvYmFsIGNvbnRyYWN0XCIpXG4gICAgLm9wdGlvbihcIi0tZGV2XCIsIFwiY29tcGlsZXMgY29udHJhY3RzIHdpdGhvdXQgbWluaWZpY2F0aW9uXCIsIGZhbHNlKVxuICAgIC5vcHRpb24oXCItLWRlYnVnXCIsIFwibWFrZXMgYXR0YWNoaW5nIGRlYnVnZ2VyIHBvc3NpYmxlXCIsIGZhbHNlKVxuICAgIC5vcHRpb24oXCItLWNjYWFzXCIsIFwiQWp1c3RzIHRoZSBwYWNrYWdlIGNvbW1hbmRzIHRvIGJlIGRlcGxveWVkIGFzIGNjYWFzXCIsIGZhbHNlKVxuICAgIC5vcHRpb24oXCItLW5hbWUgPFN0cmluZz5cIiwgXCJjb250cmFjdCBuYW1lXCIsIFwiZ2xvYmFsLWNvbnRyYWN0XCIpXG4gICAgLm9wdGlvbihcIi0tYnVuZGxlXCIsIFwiQnVuZGxlcyB3aXRoIHJvbGx1cCBpbnN0ZWFkIG9mIHVzaW5nIHRzY1wiLCBmYWxzZSlcbiAgICAub3B0aW9uKFwiLS10cy1jb25maWctZmlsZSA8c3RyaW5nPlwiLCBcInJlbGF0aXZlIHBhdGggdG8gdGhlIHRzIGNvbmZpZyBmaWxlIGJhc2VkIG9uIGN3ZCBvciBhYnNvbHV0ZSBwYXRoXCIsIFwiLi90c2NvbmZpZy5qc29uXCIpXG4gICAgLm9wdGlvbihcIi0tZGVzY3JpcHRpb24gPFN0cmluZz5cIiwgXCJjb250cmFjdCBkZXNjcmlwdGlvblwiLCBcIkdsb2JhbCBjb250cmFjdCBpbXBsZW1lbnRhdGlvblwiKVxuICAgIC5vcHRpb24oXCItLXN0cmlwLWNvbnRyYWN0LW5hbWVcIiwgXCJzdHJpcCBjb250cmFjdCBuYW1lIGZyb20gb3V0cHV0XCIsIGZhbHNlKVxuICAgIC5vcHRpb24oXCItLWlucHV0IDxTdHJpbmc+XCIsIFwiaW5wdXQgZm9sZGVyIGZvciBjb250cmFjdHNcIiwgXCJsaWIvY29udHJhY3RzXCIpXG4gICAgLm9wdGlvbihcIi0tb3V0cHV0IDxTdHJpbmc+XCIsIFwib3V0cHV0IGZvbGRlciBmb3IgY29udHJhY3RzXCIsIFwiLi9jb250cmFjdHNcIilcbiAgICAub3B0aW9uKFwiLS1zb3VyY2VtYXBzXCIsIFwiaW5jbHVkZXMgc291cmNlbWFwcyBpbiB0aGUgY29tcGlsZWQgb3V0cHV0XCIsIGZhbHNlKVxuICAgIC5vcHRpb24oXCItLW5wbXJjXCIsIFwiaW5jbHVkZXMgLm5wbXJjIGluIHRoZSBjb21waWxlZCBvdXRwdXRcIiwgZmFsc2UpXG4gICAgLmFjdGlvbihhc3luYyAob3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IHBrZyA9IEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKSwgXCJ1dGYtOFwiKSk7XG4gICAgbGV0IG5wbXJjQ29udGVudCA9IHVuZGVmaW5lZDtcbiAgICBjb25zdCB2ZXJzaW9uID0gcGtnLnZlcnNpb247XG4gICAgbGV0IHsgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGRldiwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGRlYnVnLCBcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgbmFtZSwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGRlc2NyaXB0aW9uLCBvdXRwdXQsIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBpbnB1dCwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIHN0cmlwQ29udHJhY3ROYW1lLCBcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgY2NhYXMsIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBidW5kbGUsIHRzQ29uZmlnRmlsZSwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIHNvdXJjZW1hcHMsIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBucG1yYywgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImNvbXBpbGUtY29udHJhY3RcIik7XG4gICAgdHJ5IHtcbiAgICAgICAgaWYgKG5wbXJjKSB7XG4gICAgICAgICAgICBucG1yY0NvbnRlbnQgPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCIubnBtcmNcIiksIFwidXRmLThcIikpO1xuICAgICAgICAgICAgY29uc3QgcmVwbGFjZWQgPSBucG1yY0NvbnRlbnQucmVwbGFjZSgvXFwkXFx7KFtefV0rKVxcfS9nLCAoXywgdmFyTmFtZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcHJvY2Vzcy5lbnZbdmFyTmFtZV07XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKGBXYXJuaW5nOiBFbnZpcm9ubWVudCB2YXJpYWJsZSBcIiR7dmFyTmFtZX1cIiBpcyBub3Qgc2V0YCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcIlwiO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIG5wbXJjQ29udGVudCA9IHJlcGxhY2VkO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNhdGNoIHtcbiAgICAgICAgbG9nLmluZm8oYE5vIC5ucG1yYyBmaWxlIGZvdW5kLCBza2lwcGluZyBjb3B5aW5nIC5ucG1yYyB0byBvdXRwdXRgKTtcbiAgICB9XG4gICAgbG9nLmRlYnVnKGBydW5uaW5nIHdpdGggb3B0aW9uczogJHtKU09OLnN0cmluZ2lmeShvcHRpb25zKX0gZm9yICR7cGtnLm5hbWV9IHZlcnNpb24gJHt2ZXJzaW9ufWApO1xuICAgIHRzQ29uZmlnRmlsZSA9IHBhdGguaXNBYnNvbHV0ZSh0c0NvbmZpZ0ZpbGUpXG4gICAgICAgID8gdHNDb25maWdGaWxlXG4gICAgICAgIDogcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIHRzQ29uZmlnRmlsZSk7XG4gICAgb3V0cHV0ID0gc3RyaXBDb250cmFjdE5hbWUgPyBvdXRwdXQgOiBwYXRoLmpvaW4ob3V0cHV0LCBuYW1lKTtcbiAgICBsb2cuaW5mbyhgRGVsZXRpbmcgZXhpc3Rpbmcgb3V0cHV0IGZvbGRlciAoaWYgZXhpc3RzKSB1bmRlciAke291dHB1dH1gKTtcbiAgICBleGVjU3luYyhgcm0gLXJmICR7b3V0cHV0fWApO1xuICAgIGlmIChidW5kbGUpIHtcbiAgICAgICAgbG9nLmluZm8oYGJ1bmRsaW5nIGNvbnRyYWN0IGZyb20gJHtpbnB1dH1gKTtcbiAgICAgICAgY29uc3QgdGVtcEJ1bmRsZURpciA9IGZzLm1rZHRlbXBTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcIi5jb250cmFjdC1idW5kbGUtXCIpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0RW50cnkgPSBwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgaW5wdXQsIFwiaW5kZXgudHNcIik7XG4gICAgICAgICAgICBjb25zdCBjb25maWdGaWxlID0gdHMucmVhZENvbmZpZ0ZpbGUodHNDb25maWdGaWxlLCB0cy5zeXMucmVhZEZpbGUpO1xuICAgICAgICAgICAgaWYgKGNvbmZpZ0ZpbGUuZXJyb3IpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcih0cy5mbGF0dGVuRGlhZ25vc3RpY01lc3NhZ2VUZXh0KGNvbmZpZ0ZpbGUuZXJyb3IubWVzc2FnZVRleHQsIFwiXFxuXCIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZENvbmZpZyA9IHRzLnBhcnNlSnNvbkNvbmZpZ0ZpbGVDb250ZW50KGNvbmZpZ0ZpbGUuY29uZmlnLCB0cy5zeXMsIHBhdGguZGlybmFtZSh0c0NvbmZpZ0ZpbGUpLCB1bmRlZmluZWQsIHRzQ29uZmlnRmlsZSk7XG4gICAgICAgICAgICBpZiAocGFyc2VkQ29uZmlnLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihwYXJzZWRDb25maWcuZXJyb3JzXG4gICAgICAgICAgICAgICAgICAgIC5tYXAoKGVycm9yKSA9PiB0cy5mbGF0dGVuRGlhZ25vc3RpY01lc3NhZ2VUZXh0KGVycm9yLm1lc3NhZ2VUZXh0LCBcIlxcblwiKSlcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCJcXG5cIikpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdGVtcENvbXBpbGVyT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAuLi5wYXJzZWRDb25maWcub3B0aW9ucyxcbiAgICAgICAgICAgICAgICBvdXREaXI6IHRlbXBCdW5kbGVEaXIsXG4gICAgICAgICAgICAgICAgbW9kdWxlOiB0cy5Nb2R1bGVLaW5kLkVTTmV4dCxcbiAgICAgICAgICAgICAgICBkZWNsYXJhdGlvbjogZmFsc2UsXG4gICAgICAgICAgICAgICAgc291cmNlTWFwOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbmxpbmVTb3VyY2VzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25zdCBidW5kbGVkRW50cnlQb2ludCA9IHRzXG4gICAgICAgICAgICAgICAgLmdldE91dHB1dEZpbGVOYW1lcyh7XG4gICAgICAgICAgICAgICAgLi4ucGFyc2VkQ29uZmlnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IHRlbXBDb21waWxlck9wdGlvbnMsXG4gICAgICAgICAgICB9LCBpbnB1dEVudHJ5LCAhdHMuc3lzLnVzZUNhc2VTZW5zaXRpdmVGaWxlTmFtZXMpXG4gICAgICAgICAgICAgICAgLmZpbmQoKGZpbGVOYW1lKSA9PiBmaWxlTmFtZS5lbmRzV2l0aChcIi5qc1wiKSk7XG4gICAgICAgICAgICBpZiAoIWJ1bmRsZWRFbnRyeVBvaW50KSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoYEZhaWxlZCB0byBkZXRlcm1pbmUgdGhlIGVtaXR0ZWQgYnVuZGxlIGVudHJ5IGZvciAke2lucHV0RW50cnl9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb21waWxlV2l0aFRzY29uZmlnT3ZlcnJpZGVzKHRzQ29uZmlnRmlsZSwgdGVtcENvbXBpbGVyT3B0aW9ucyk7XG4gICAgICAgICAgICBjb25zdCBidW5kbGVkQ29udHJhY3QgPSBhd2FpdCByb2xsdXAoe1xuICAgICAgICAgICAgICAgIGlucHV0OiBidW5kbGVkRW50cnlQb2ludCxcbiAgICAgICAgICAgICAgICBwbHVnaW5zOiBbXG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmVCdW5kbGVkSnNJbXBvcnRzKCksXG4gICAgICAgICAgICAgICAgICAgIHJlcGxhY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJldmVudEFzc2lnbm1lbnQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWxpbWl0ZXJzOiBbXCJcIiwgXCJcIl0sXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IHsgXCIjI1ZFUlNJT04jI1wiOiB2ZXJzaW9uLCBcIiMjUEFDS0FHRSMjXCI6IHBrZy5uYW1lIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGxvZy5pbmZvKGB3aXRoaW5nIGNvbnRyYWN0IHRvICR7b3V0cHV0fSB3aXRoIG5hbWUgJHt0b1Bhc2NhbENhc2UobmFtZSl9LmpzYCk7XG4gICAgICAgICAgICBhd2FpdCBidW5kbGVkQ29udHJhY3Qud3JpdGUoe1xuICAgICAgICAgICAgICAgIGZpbGU6IGAke291dHB1dH0vJHt0b1Bhc2NhbENhc2UobmFtZSl9LmpzYCxcbiAgICAgICAgICAgICAgICBmb3JtYXQ6IFwidW1kXCIsXG4gICAgICAgICAgICAgICAgbmFtZTogYCR7dG9QYXNjYWxDYXNlKG5hbWUpfS5qc2AsXG4gICAgICAgICAgICAgICAgc291cmNlbWFwOiBzb3VyY2VtYXBzID8gXCJpbmxpbmVcIiA6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHNvdXJjZW1hcFBhdGhUcmFuc2Zvcm06IChyZWxhdGl2ZVNvdXJjZVBhdGgsIHNvdXJjZW1hcFBhdGgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYWJzb2x1dGVTb3VyY2VQYXRoID0gcGF0aC5yZXNvbHZlKHBhdGguZGlybmFtZShzb3VyY2VtYXBQYXRoKSwgcmVsYXRpdmVTb3VyY2VQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGFic29sdXRlU291cmNlUGF0aC5zdGFydHNXaXRoKHRlbXBCdW5kbGVEaXIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcGF0aC5wb3NpeC5qb2luKFwiLmJ1bmRsZVwiLCBwYXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlbGF0aXZlKHRlbXBCdW5kbGVEaXIsIGFic29sdXRlU291cmNlUGF0aClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BsaXQocGF0aC5zZXApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCIvXCIpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVsYXRpdmVTb3VyY2VQYXRoO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGF3YWl0IGJ1bmRsZWRDb250cmFjdC5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgZnMucm1TeW5jKHRlbXBCdW5kbGVEaXIsIHsgcmVjdXJzaXZlOiB0cnVlLCBmb3JjZTogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29tcGlsZVdpdGhUc2NvbmZpZ092ZXJyaWRlcyh0c0NvbmZpZ0ZpbGUsIHtcbiAgICAgICAgICAgIG91dERpcjogb3V0cHV0LFxuICAgICAgICAgICAgbW9kdWxlOiB0cy5Nb2R1bGVLaW5kLkVTTmV4dCxcbiAgICAgICAgICAgIGRlY2xhcmF0aW9uOiBmYWxzZSxcbiAgICAgICAgICAgIHNvdXJjZU1hcDogc291cmNlbWFwcyxcbiAgICAgICAgICAgIGlubGluZVNvdXJjZXM6IHNvdXJjZW1hcHMsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBzY3JpcHRzID0ge1xuICAgICAgICBzdGFydDogZ2V0Q29udHJhY3RTdGFydENvbW1hbmQoZGVidWcsIGNjYWFzKSxcbiAgICAgICAgXCJzdGFydDpkZXZcIjogXCJmYWJyaWMtY2hhaW5jb2RlLW5vZGUgc3RhcnQgLS10bHMuZW5hYmxlZCBmYWxzZVwiLFxuICAgICAgICBcInN0YXJ0OndhdGNoXCI6ICdub2RlbW9uIC0tZXhlYyBcIm5wbSBydW4gc3RhcnQ6ZGV2XCInLFxuICAgICAgICBidWlsZDogJ2VjaG8gXCJObyBuZWVkIHRvIGJ1aWxkIHRoZSBjaGFpbmNvZGVcIicsXG4gICAgICAgIGxpbnQ6IFwiZXNsaW50IC4gLS1maXggLS1leHQgLmpzXCIsXG4gICAgfTtcbiAgICBjb25zdCBjb250cmFjdFBhY2thZ2UgPSBwa2c7XG4gICAgY29udHJhY3RQYWNrYWdlLm5hbWUgPSBuYW1lO1xuICAgIGNvbnRyYWN0UGFja2FnZS5kZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uO1xuICAgIGNvbnRyYWN0UGFja2FnZS5zY3JpcHRzID0gc2NyaXB0cztcbiAgICBkZWxldGUgY29udHJhY3RQYWNrYWdlLnR5cGU7XG4gICAgZGVsZXRlIGNvbnRyYWN0UGFja2FnZS50eXBlcztcbiAgICBkZWxldGUgY29udHJhY3RQYWNrYWdlLmV4cG9ydHM7XG4gICAgY29udHJhY3RQYWNrYWdlLm1haW4gPSBidW5kbGVcbiAgICAgICAgPyBgJHt0b1Bhc2NhbENhc2UobmFtZSl9LmpzYFxuICAgICAgICA6IGAke2lucHV0fS9pbmRleC5qc2A7XG4gICAgZnMud3JpdGVGaWxlU3luYyhwYXRoLmpvaW4ob3V0cHV0LCBcInBhY2thZ2UuanNvblwiKSwgSlNPTi5zdHJpbmdpZnkoY29udHJhY3RQYWNrYWdlKSk7XG4gICAgaWYgKG5wbXJjKVxuICAgICAgICBmcy53cml0ZUZpbGVTeW5jKHBhdGguam9pbihvdXRwdXQsIFwiLm5wbXJjXCIpLCBucG1yYyk7XG4gICAgbG9nLmluZm8oYEluc3RhbGxpbmcgYW5kIHNocmlua3dyYXBwaW5nIGRlcGVuZGVuY2llc2ApO1xuICAgIGV4ZWNTeW5jKGBucG0gaW5zdGFsbGAsIHsgY3dkOiBvdXRwdXQgfSk7XG4gICAgZXhlY1N5bmMoYG5wbSBzaHJpbmt3cmFwYCwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBleGVjU3luYyhcInJtIC1yZiBub2RlX21vZHVsZXNcIiwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBsb2cuaW5mbyhgZGVsZXRpbmcgdGVtcCBmb2xkZXJzYCk7XG4gICAgZXhlY1N5bmMoYHJtIC1yZiAuL2xpYiAmJiBybSAtcmYgLi9kaXN0YCwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBsb2cuaW5mbyhgQ29udHJhY3QgJHtuYW1lfSBjb21waWxlZCBzdWNjZXNzZnVsbHkhIGluICR7cGF0aC5yZXNvbHZlKG91dHB1dCl9YCk7XG4gICAgaWYgKGRldikge1xuICAgICAgICBsb2cuaW5mbyhgZGV2IG1vZGUgZW5hYmxlZC4gaW5zdGFsbGluZyBkZXBlbmRlbmNpZXMgZm9yIGRlYnVnZ2luZ2ApO1xuICAgICAgICBleGVjU3luYyhgbnBtIGluc3RhbGxgLCB7XG4gICAgICAgICAgICBjd2Q6IG91dHB1dCxcbiAgICAgICAgICAgIGVudjogeyAuLi5wcm9jZXNzLmVudiwgTk9ERV9FTlY6IFwicHJvZHVjdGlvblwiIH0sXG4gICAgICAgIH0pO1xuICAgIH1cbn0pO1xuY29uc3QgZXh0cmFjdEluZGV4ZXMgPSBuZXcgQ29tbWFuZCgpXG4gICAgLmNvbW1hbmQoXCJleHRyYWN0LWluZGV4ZXNcIilcbiAgICAub3B0aW9uKFwiLS1maWxlIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZpbGVcIilcbiAgICAub3B0aW9uKFwiLS1mb2xkZXIgW1N0cmluZ11cIiwgXCJ0aGUgbW9kZWwgZm9sZGVyXCIpXG4gICAgLm9wdGlvbihcIi0tb3V0RGlyIDxTdHJpbmc+XCIsIFwidGhlIG91dGRpci4gc2hvdWxkIG1hdGNoIHlvdXIgY29udHJhY3QgZm9sZGVyXCIpXG4gICAgLmRlc2NyaXB0aW9uKFwiQ3JlYXRlcyBhIHRoZSBKU09OIGluZGV4IGZpbGVzIHRvIGJlIHN1Ym1pdHRlZCB0byBhbG9uZyB3aXRoIHRoZSBjb250cmFjdFwiKVxuICAgIC5hY3Rpb24oYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBwa2cgPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIikpO1xuICAgIGNvbnN0IHZlcnNpb24gPSBwa2cudmVyc2lvbjtcbiAgICBjb25zdCBsb2cgPSBsb2dnZXIuZm9yKFwiZXh0cmFjdC1pbmRleGVzXCIpO1xuICAgIGxvZy5kZWJ1ZyhgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgbGV0IHsgZmlsZSwgZm9sZGVyLCBvdXREaXIgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgbW9kZWxzID0gW107XG4gICAgaWYgKGZpbGUpIHtcbiAgICAgICAgbW9kZWxzLnB1c2goLi4ucmVhZE1vZGVsRmlsZShmaWxlKSk7XG4gICAgfVxuICAgIGlmIChmb2xkZXIpIHtcbiAgICAgICAgbG9nLmluZm8oYExvYWRpbmcgbW9kZWxzIGZyb20gJHtmb2xkZXJ9Li4uYCk7XG4gICAgICAgIG1vZGVscy5wdXNoKC4uLihhd2FpdCByZWFkTW9kZWxGb2xkZXJzKGZvbGRlcikpKTtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0ge307XG4gICAgY29uc3QgZGVzaWduRG9jcyA9IHt9O1xuICAgIGlmICghZmlsZSAmJiAhZm9sZGVyKVxuICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihgTXVzdCBwYXNzIGEgZmlsZSBvciBhIGZvbGRlcmApO1xuICAgIGZvciAoY29uc3QgbSBvZiBtb2RlbHMpIHtcbiAgICAgICAgbG9nLnZlcmJvc2UoYEV4dHJhY3RpbmcgaW5kZXhlcyBmb3IgdGFibGUgJHtNb2RlbC50YWJsZU5hbWUobSl9YCk7XG4gICAgICAgIGNvbnN0IGluZGV4ZXMgPSBnZW5lcmF0ZU1vZGVsSW5kZXhlcyhtKTtcbiAgICAgICAgaW5kZXhlcy5mb3JFYWNoKChpbmRleCkgPT4ge1xuICAgICAgICAgICAgaWYgKGluZGV4Lm5hbWUpIHtcbiAgICAgICAgICAgICAgICByZXN1bHRbaW5kZXgubmFtZV0gPSBpbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGdlbmVyYXRlTW9kZWxEZXNpZ25Eb2NzKG0sIGRlc2lnbkRvY3MpO1xuICAgIH1cbiAgICBjb25zdCBpbmRleGVzVG9Xcml0ZSA9IE9iamVjdC52YWx1ZXMocmVzdWx0KTtcbiAgICBjb25zdCBkb2NzVG9Xcml0ZSA9IE9iamVjdC52YWx1ZXMoZGVzaWduRG9jcyk7XG4gICAgbG9nLnZlcmJvc2UoYEZvdW5kICR7aW5kZXhlc1RvV3JpdGUubGVuZ3RofSBpbmRleGVzIHRvIGNyZWF0ZWApO1xuICAgIGxvZy52ZXJib3NlKGBGb3VuZCAke2RvY3NUb1dyaXRlLmxlbmd0aH0gZGVzaWduIGRvY3MgdG8gY3JlYXRlYCk7XG4gICAgbG9nLmRlYnVnKGBJbmRleGVzOiAke0pTT04uc3RyaW5naWZ5KHJlc3VsdCl9YCk7XG4gICAgbG9nLmRlYnVnKGBEZXNpZ25Eb2NzOiAke0pTT04uc3RyaW5naWZ5KGRlc2lnbkRvY3MpfWApO1xuICAgIHdyaXRlSW5kZXhlcyhpbmRleGVzVG9Xcml0ZSwgb3V0RGlyKTtcbiAgICB3cml0ZURlc2lnbkRvY3MoZG9jc1RvV3JpdGUsIG91dERpcik7XG59KTtcbmNvbnN0IGV4dHJhY3RDb2xsZWN0aW9ucyA9IG5ldyBDb21tYW5kKClcbiAgICAuY29tbWFuZChcImV4dHJhY3QtY29sbGVjdGlvbnNcIilcbiAgICAub3B0aW9uKFwiLS1maWxlIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZpbGVcIilcbiAgICAub3B0aW9uKFwiLS1mb2xkZXIgW1N0cmluZ11cIiwgXCJ0aGUgbW9kZWwgZm9sZGVyXCIpXG4gICAgLm9wdGlvbihcIi0tb3V0RGlyIDxTdHJpbmc+XCIsIFwidGhlIG91dGRpci4gc2hvdWxkIG1hdGNoIHlvdXIgY29udHJhY3QgZm9sZGVyXCIpXG4gICAgLm9wdGlvbihcIi0tbXNwSWRzIDxTdHJpbmc+XCIsIFwic2luZ2xlIG1zcElkIG9yIHN0cmluZ2lmaWVkIGFycmF5XCIpXG4gICAgLm9wdGlvbihcIi0tbWFpbk1zcElkIDxTdHJpbmc+XCIsIFwic2luZ2xlIG1zcElkXCIpXG4gICAgLm9wdGlvbihcIi0tb3ZlcnJpZGVzIFtTdHJpbmddXCIsIFwic3RyaW5naWZpZWQgb3ZlcnJpZGUgb2JqZWN0IHtyZXF1aXJlZFBlZXJDb3VudDogbnVtYmVyLCBtYXhQZWVyQ291bnQ6IG51bWJlciwgYmxvY2tUb0xpdmU6IG51bWJlciwgbWVtYmVyT25seVJlYWQ6IG51bWJlciwgbWVtYmVyT25seVdyaXRlOiBudW1iZXIsIGVuZG9yc2VtZW50UG9saWN5OiAge319XCIpXG4gICAgLmRlc2NyaXB0aW9uKFwiQ3JlYXRlcyBhIHRoZSBKU09OIGluZGV4IGZpbGVzIHRvIGJlIHN1Ym1pdHRlZCB0byBhbG9uZyB3aXRoIHRoZSBjb250cmFjdFwiKVxuICAgIC5hY3Rpb24oYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBwa2cgPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIikpO1xuICAgIGNvbnN0IHZlcnNpb24gPSBwa2cudmVyc2lvbjtcbiAgICBjb25zdCBsb2cgPSBsb2dnZXIuZm9yKFwiZXh0cmFjdC1jb2xsZWN0aW9uc1wiKTtcbiAgICBsb2cuZGVidWcoYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YCk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGxldCB7IGZpbGUsIGZvbGRlciwgb3V0RGlyLCBtc3BJZHMsIG1haW5Nc3BJZCB9ID0gb3B0aW9ucztcbiAgICB0cnkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgbXNwSWRzID0gbXNwSWRzID8gSlNPTi5wYXJzZShtc3BJZHMpIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChlKSB7XG4gICAgICAgICAgICAvLyAgZG8gbm90aGluZ1xuICAgICAgICB9XG4gICAgfVxuICAgIGNhdGNoIChlKSB7XG4gICAgICAgIHRocm93IG5ldyBTZXJpYWxpemF0aW9uRXJyb3IoYFVuYWJsZSB0byBleHRyYWN0IG1zcGlkczogICR7ZX1gKTtcbiAgICB9XG4gICAgY29uc3QgbW9kZWxzID0gW107XG4gICAgaWYgKGZpbGUpIHtcbiAgICAgICAgbW9kZWxzLnB1c2goLi4ucmVhZE1vZGVsRmlsZShmaWxlKSk7XG4gICAgfVxuICAgIGlmIChmb2xkZXIpIHtcbiAgICAgICAgbG9nLmluZm8oYExvYWRpbmcgbW9kZWxzIGZyb20gJHtmb2xkZXJ9Li4uYCk7XG4gICAgICAgIG1vZGVscy5wdXNoKC4uLihhd2FpdCByZWFkTW9kZWxGb2xkZXJzKGZvbGRlcikpKTtcbiAgICB9XG4gICAgaWYgKCFmaWxlICYmICFmb2xkZXIpXG4gICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBNdXN0IHBhc3MgYSBmaWxlIG9yIGEgZm9sZGVyYCk7XG4gICAgY29uc3QgaW5qZWN0YWJsZU1vZGVscyA9IG1vZGVscy5maWx0ZXIoKG1vZGVsKSA9PiBNb2RlbC5pc1NoYXJlZChtb2RlbCkgfHxcbiAgICAgICAgTW9kZWwuaXNQcml2YXRlKG1vZGVsKSB8fFxuICAgICAgICAhIU1vZGVsLm1pcnJvcmVkQXQobW9kZWwpKTtcbiAgICBpZiAoIWluamVjdGFibGVNb2RlbHMubGVuZ3RoKSB7XG4gICAgICAgIGxvZy5pbmZvKGBObyBzaGFyZWQsIHByaXZhdGUsIG9yIG1pcnJvcmVkIG1vZGVscyBmb3VuZCB0byBleHRyYWN0IGNvbGxlY3Rpb25zYCk7XG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gICAgYXN5bmMgZnVuY3Rpb24gZ2V0Q29scyhtc3BJZHNMaXN0KSB7XG4gICAgICAgIGNvbnN0IGNvbHMgPSBhd2FpdCBQcm9taXNlLmFsbChpbmplY3RhYmxlTW9kZWxzLm1hcChhc3luYyAoY2xhenopID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRhYmxlTmFtZSA9IE1vZGVsLnRhYmxlTmFtZShjbGF6eik7XG4gICAgICAgICAgICBjb25zdCBtaXJyb3JNZXRhID0gTW9kZWwubWlycm9yZWRBdChjbGF6eik7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyh0YWJsZU5hbWUpO1xuICAgICAgICAgICAgY29uc3QgY29sbGVjdGlvbnMgPSB7fTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgbXNwIG9mIG1zcElkc0xpc3QgfHwgbXNwSWRzIHx8IFtdKSB7XG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbnNbbXNwXSA9IGF3YWl0IGV4Q29sbGVjdGlvbnMoY2xhenosIFttc3AsIG1haW5Nc3BJZF0sIHt9LCBcbiAgICAgICAgICAgICAgICAvLyB7XG4gICAgICAgICAgICAgICAgLy8gICBzaGFyZWRDb2xzOiBPYmplY3QuYXNzaWduKHt9LCBvdmVycmlkZXMuc2hhcmVkQ29scyksXG4gICAgICAgICAgICAgICAgLy8gICBwcml2YXRlQ29sczogT2JqZWN0LmFzc2lnbih7fSwgb3ZlcnJpZGVzLnByaXZhdGVDb2xzKSxcbiAgICAgICAgICAgICAgICAvLyB9LFxuICAgICAgICAgICAgICAgICEhbWlycm9yTWV0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsZXQgbWlycm9yQ29sbGVjdGlvbiA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGlmIChtaXJyb3JNZXRhKSB7XG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbnNbbWFpbk1zcElkXSA9IGNvbGxlY3Rpb25zW21haW5Nc3BJZF0gfHwge307XG4gICAgICAgICAgICAgICAgT2JqZWN0LmtleXMoY29sbGVjdGlvbnMpLmZvckVhY2goKG1zcCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uc1ttYWluTXNwSWRdLnByaXZhdGVzID0gY29sbGVjdGlvbnNbbXNwXS5wcml2YXRlcz8uZmlsdGVyKChwKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocC5uYW1lICE9PSBtaXJyb3JNZXRhLnJlc29sdmVyKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWlycm9yQ29sbGVjdGlvbiA9IHA7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcHJpdmF0ZXNDb3VudCA9IE9iamVjdC52YWx1ZXMoY29sbGVjdGlvbnMpXG4gICAgICAgICAgICAgICAgLm1hcCgoYykgPT4gYy5wcml2YXRlcylcbiAgICAgICAgICAgICAgICAuZmxhdCgpLmxlbmd0aDtcbiAgICAgICAgICAgIGlmIChwcml2YXRlc0NvdW50KVxuICAgICAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgICAgICAgIC5pbmZvKGBGb3VuZCAke3ByaXZhdGVzQ291bnR9IHByaXZhdGUgY29sbGVjdGlvbnMgdG8gY3JlYXRlYCk7XG4gICAgICAgICAgICBjb25zdCBzaGFyZWRDb3VudCA9IE9iamVjdC52YWx1ZXMoY29sbGVjdGlvbnMpXG4gICAgICAgICAgICAgICAgLm1hcCgoYykgPT4gYy5zaGFyZWQpXG4gICAgICAgICAgICAgICAgLmZsYXQoKS5sZW5ndGg7XG4gICAgICAgICAgICBsb2dcbiAgICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgICAgLmluZm8oYEZvdW5kICR7c2hhcmVkQ291bnR9IHNoYXJlZCBjb2xsZWN0aW9ucyB0byBjcmVhdGVgKTtcbiAgICAgICAgICAgIGlmIChtaXJyb3JDb2xsZWN0aW9uKVxuICAgICAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgICAgICAgIC5pbmZvKGBGb3VuZCBvbmUgbWlycm9yIGNvbGxlY3Rpb24gJHttaXJyb3JNZXRhPy5yZXNvbHZlcn1gKTtcbiAgICAgICAgICAgIGNvbnN0IGNvbExpc3QgPSBPYmplY3QudmFsdWVzKGNvbGxlY3Rpb25zKVxuICAgICAgICAgICAgICAgIC5tYXAoKGMpID0+IFsuLi4oYy5wcml2YXRlcyB8fCBbXSksIC4uLihjLnNoYXJlZCB8fCBbXSldKVxuICAgICAgICAgICAgICAgIC5mbGF0KCk7XG4gICAgICAgICAgICBsZXQgaW5kZXhlcyA9IFtdO1xuICAgICAgICAgICAgbGV0IGRlc2lnbkRvY3MgPSBbXTtcbiAgICAgICAgICAgIGlmIChjb2xMaXN0Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgICAgICAgIC52ZXJib3NlKGBnZW5lcmF0aW5nIGluZGV4ZXMgZm9yIGNvbGxlY3Rpb25zYCk7XG4gICAgICAgICAgICAgICAgaW5kZXhlcyA9IGdlbmVyYXRlTW9kZWxJbmRleGVzKGNsYXp6KTtcbiAgICAgICAgICAgICAgICBsb2dcbiAgICAgICAgICAgICAgICAgICAgLmZvcihNb2RlbC50YWJsZU5hbWUoY2xhenopKVxuICAgICAgICAgICAgICAgICAgICAuaW5mbyhgZm91bmQgJHtpbmRleGVzLmxlbmd0aH0gaW5kZXhlc2ApO1xuICAgICAgICAgICAgICAgIGRlc2lnbkRvY3MgPSBnZW5lcmF0ZU1vZGVsRGVzaWduRG9jcyhjbGF6eik7XG4gICAgICAgICAgICAgICAgbG9nXG4gICAgICAgICAgICAgICAgICAgIC5mb3IoTW9kZWwudGFibGVOYW1lKGNsYXp6KSlcbiAgICAgICAgICAgICAgICAgICAgLmluZm8oYGZvdW5kICR7ZGVzaWduRG9jcy5sZW5ndGh9IGRlc2lnbiBkb2NzYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGluZGV4ZXMsXG4gICAgICAgICAgICAgICAgZGVzaWduRG9jcyxcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uczogY29sTGlzdCxcbiAgICAgICAgICAgICAgICBtaXJyb3I6IG1pcnJvckNvbGxlY3Rpb24sXG4gICAgICAgICAgICB9O1xuICAgICAgICB9KSk7XG4gICAgICAgIHJldHVybiBjb2xzO1xuICAgIH1cbiAgICBjb25zdCBjb2xzID0gYXdhaXQgZ2V0Q29scygpO1xuICAgIGNvbnN0IG9ubHlNaXJyb3IgPSBhd2FpdCBnZXRDb2xzKFttYWluTXNwSWRdKTtcbiAgICBjb25zdCBjb2xsZWN0aW9uc1RvID0gW1xuICAgICAgICAuLi5vbmx5TWlycm9yLmZpbHRlcigoYykgPT4gYy5taXJyb3IpLm1hcCgoYykgPT4gYy5taXJyb3IpLFxuICAgICAgICAuLi5jb2xzLm1hcCgoYykgPT4gYy5jb2xsZWN0aW9ucykuZmxhdCgpLFxuICAgICAgICAuLi5jb2xzLmZpbHRlcigoYykgPT4gYy5taXJyb3IpLm1hcCgoYykgPT4gYy5taXJyb3IpLFxuICAgIF07XG4gICAgY29uc3QgdW5pcXVlQnlDb2xsZWN0aW9uID0gW1xuICAgICAgICAuLi5uZXcgTWFwKGNvbGxlY3Rpb25zVG8ubWFwKChpdGVtKSA9PiBbaXRlbS5uYW1lLCBpdGVtXSkpLnZhbHVlcygpLFxuICAgIF07XG4gICAgaWYgKHVuaXF1ZUJ5Q29sbGVjdGlvbi5sZW5ndGgpIHtcbiAgICAgICAgd3JpdGVDb2xsZWN0aW9ucyh1bmlxdWVCeUNvbGxlY3Rpb24sIG91dERpcik7XG4gICAgICAgIGNvbnN0IG1ldGFDb2xsZWN0aW9uc0NvbmZpZyA9IHBhdGguam9pbihvdXREaXIsIFwiTUVUQS1JTkZcIiwgXCJjb2xsZWN0aW9uc19jb25maWcuanNvblwiKTtcbiAgICAgICAgY29uc3QgY29udHJhY3RDb2xsZWN0aW9uc0NvbmZpZyA9IHBhdGguam9pbihvdXREaXIsIFwiY29sbGVjdGlvbnNfY29uZmlnLmpzb25cIik7XG4gICAgICAgIGZzLmNvcHlGaWxlU3luYyhtZXRhQ29sbGVjdGlvbnNDb25maWcsIGNvbnRyYWN0Q29sbGVjdGlvbnNDb25maWcpO1xuICAgICAgICBsb2cuaW5mbyhgU3RvcmVkICR7Y29sbGVjdGlvbnNUby5sZW5ndGh9IGNvbGxlY3Rpb25zIHRvICR7bWV0YUNvbGxlY3Rpb25zQ29uZmlnfWApO1xuICAgICAgICBsb2cuaW5mbyhgQ29waWVkIGNvbGxlY3Rpb25zX2NvbmZpZyB0byAke2NvbnRyYWN0Q29sbGVjdGlvbnNDb25maWd9IGFsb25nc2lkZSB0aGUgcGFja2FnZS5qc29uYCk7XG4gICAgICAgIGNvbHMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICAgICAgY29uc3QgeyBpbmRleGVzLCBkZXNpZ25Eb2NzLCBjb2xsZWN0aW9ucywgbWlycm9yIH0gPSBjO1xuICAgICAgICAgICAgY29uc3QgdG9JbmRleCA9IFsuLi5jb2xsZWN0aW9ucywgbWlycm9yXS5maWx0ZXIoQm9vbGVhbik7XG4gICAgICAgICAgICB0b0luZGV4LmZvckVhY2goKGkpID0+IHtcbiAgICAgICAgICAgICAgICB3cml0ZUluZGV4ZXMoaW5kZXhlcywgb3V0RGlyLCBpLm5hbWUpO1xuICAgICAgICAgICAgICAgIHdyaXRlQ29sbGVjdGlvbkRlc2lnbkRvY3MoZGVzaWduRG9jcyB8fCBbXSwgb3V0RGlyLCBpLm5hbWUpO1xuICAgICAgICAgICAgICAgIGxvZy5pbmZvKGBTdG9yZWQgJHtpbmRleGVzPy5sZW5ndGggfHwgMH0gaW5kZXhlcyBhbmQgJHtkZXNpZ25Eb2NzPy5sZW5ndGggfHwgMH0gZGVzaWduIGRvY3MgdG8gY29sbGVjdGlvbiAke2kubmFtZX1gKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG59KTtcbmNvbnN0IGVuc3VyZUluZnJhID0gbmV3IENvbW1hbmQoKVxuICAgIC5uYW1lKFwiYXdhaXQtaW5mcmFcIilcbiAgICAuZGVzY3JpcHRpb24oXCJ3YWl0cyBmb3IgdGhlIGluZnJhc3RydWN0dXJlIHRvIGJlIHVwIGFuZCBydW5uaW5nXCIpXG4gICAgLm9wdGlvbihcIi0tY29udGFpbmVyIDxTdHJpbmc+XCIsIFwiZG9ja2VyIGNvbnRhaW5lciBuYW1lIHRvIHRlc3QgKHVzdWFsbHkgbGFzdCBwZWVyKVwiLCBcImJvb3Qtb3JnLWMtcGVlci0wXCIpXG4gICAgLm9wdGlvbihcIi0tdGltZW91dCA8U3RyaW5nPlwiLCBcInRpbWVvdXQgYmV0d2VlbiB0ZXN0cyBpbiBtaWxsaXNlY29uZHNcIiwgXCI1MDAwXCIpXG4gICAgLm9wdGlvbihcIi0tYXR0ZW1wdHMgPFN0cmluZz5cIiwgXCJudW1iZXIgb2YgYXR0ZW1wdHMgYmVmb3JlIGdpdmluZyB1cFwiLCBcIjEwXCIpXG4gICAgLmFjdGlvbihhc3luYyAob3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IHBrZyA9IEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKSwgXCJ1dGYtOFwiKSk7XG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuICAgIGNvbnN0IGxvZyA9IGxvZ2dlci5mb3IoXCJhd2FpdC1pbmZyYVwiKTtcbiAgICBsb2cuZGVidWcoYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YCk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGxldCB7IGNvbnRhaW5lciwgdGltZW91dCwgYXR0ZW1wdHMgfSA9IG9wdGlvbnM7XG4gICAgdGltZW91dCA9IHBhcnNlSW50KHRpbWVvdXQpIHx8IDUwMDA7XG4gICAgYXR0ZW1wdHMgPSBwYXJzZUludChhdHRlbXB0cykgfHwgMTA7XG4gICAgYXdhaXQgZW5zdXJlSW5mcmFzdHJ1Y3R1cmVCb290ZWQoXCJib290LW9yZy1jLXBlZXItMFwiLCB0aW1lb3V0LCBhdHRlbXB0cyk7XG4gICAgbG9nLmluZm8oYEluZnJhc3RydWN0dXJlIGJvb3RlZCBzdWNjZXNzZnVsbHkgKGFjY29yZGluZyB0byBjb250YWluZXIgJHtjb250YWluZXJ9KSFgKTtcbn0pO1xuY29uc3QgZGVwbG95Q29udHJhY3QgPSBuZXcgQ29tbWFuZCgpXG4gICAgLm5hbWUoXCJkZXBsb3ktY29udHJhY3RcIilcbiAgICAuZGVzY3JpcHRpb24oXCJkZXBsb3lzIHRoZSBzZWxlY3RlZCBjb250cmFjdFwiKVxuICAgIC5vcHRpb24oXCItLW5hbWUgPFN0cmluZz5cIiwgXCJDb250cmFjdCBOYW1lIChhbmQgZm9sZGVyKVwiKVxuICAgIC5vcHRpb24oXCItLWlucHV0IDxTdHJpbmc+XCIsIFwiaW5wdXQgZm9sZGVyXCIpXG4gICAgLm9wdGlvbihcIi0tY29sbGVjdGlvbnMtY29uZmlnIDxTdHJpbmc+XCIsIFwicGF0aCB0byBjb2xsZWN0aW9uc19jb25maWcuanNvbiB0byBjb25maWd1cmUgcHJpdmF0ZSBjb2xsZWN0aW9uc1wiKVxuICAgIC5vcHRpb24oXCItLWluY3JlbWVudFZlcnNpb24gPFN0cmluZz5cIiwgXCIodHJ1ZSB8IGZhbHNlKSBpZiBzaG91bGQgdXNlIHZlcnNpb24gb3Igc2VxdWVuY2UgdG8gdXBkYXRlIGNvbnRyYWN0c1wiLCBmYWxzZSlcbiAgICAub3B0aW9uKFwiLS10cmFja2VyRm9sZGVyIDxTdHJpbmc+XCIsIFwiY29udHJhY3QgdmVyc2lvbiB0cmFja2VyIGZvbGRlciAoc2hvdWxkIGJlIGRlbGV0ZWQgb24gaW5mcmFzdHJ1Y3R1cmU6ZG93bilcIiwgcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIFwidGVzdHNcIiwgXCJpbnRlZ3JhdGlvblwiLCBcImNoYWluY29kZVRyYWNrZXJzXCIpKVxuICAgIC5vcHRpb24oXCItLXBlZXJzIDxTdHJpbmc+XCIsIFwiY29tbWEgc2VwYXJhdGVkIHBlZXIgaWRzXCIsIFwib3JnLWEtcGVlci0wLG9yZy1iLXBlZXItMCxvcmctYy1wZWVyLTBcIilcbiAgICAuYWN0aW9uKGFzeW5jIChvcHRpb25zKSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIFwicGFja2FnZS5qc29uXCIpLCBcInV0Zi04XCIpKTtcbiAgICBjb25zdCB2ZXJzaW9uID0gcGtnLnZlcnNpb247XG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImRlcGxveS1jb250cmFjdFwiKTtcbiAgICBsb2cuZGVidWcoYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YCk7XG4gICAgY29uc3QgeyBuYW1lLCBpbnB1dCwgcGVlcnMsIHRyYWNrZXJGb2xkZXIsIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBpbmNyZW1lbnRWZXJzaW9uLCBjb2xsZWN0aW9uc0NvbmZpZywgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgcGVlcklkcyA9IHBlZXJzLnNwbGl0KFwiLFwiKTtcbiAgICBjb25zdCBjb3VudFBhdGggPSBwYXRoLnJlc29sdmUocGF0aC5qb2luKHRyYWNrZXJGb2xkZXIsIGAke25hbWV9LmNvdW50YCkpO1xuICAgIGxldCBzZXF1ZW5jZTtcbiAgICB0cnkge1xuICAgICAgICBzZXF1ZW5jZSA9IHBhcnNlSW50KGZzLnJlYWRGaWxlU3luYyhjb3VudFBhdGgpLnRvU3RyaW5nKFwidXRmLThcIikpO1xuICAgICAgICBpZiAoaXNOYU4oc2VxdWVuY2UpKVxuICAgICAgICAgICAgc2VxdWVuY2UgPSAxO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBzZXF1ZW5jZSArPSAxO1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgfVxuICAgIGNhdGNoIChlKSB7XG4gICAgICAgIHNlcXVlbmNlID0gMTtcbiAgICB9XG4gICAgLy9cbiAgICAvLyBpZiAoaW5jcmVtZW50VmVyc2lvbikge1xuICAgIC8vICAgdmVyc2lvbiA9IHZlcnNpb24gKyBgLSR7c2VxdWVuY2V9YDtcbiAgICAvLyAgIC8vIHNlcXVlbmNlID0gMTtcbiAgICAvLyB9XG4gICAgdHJ5IHtcbiAgICAgICAgZm9yIChjb25zdCBwZWVyIG9mIHBlZXJJZHMpIHtcbiAgICAgICAgICAgIHBhY2thZ2VDb250cmFjdChwZWVyLCBpbnB1dCwgbmFtZSwgdmVyc2lvbik7XG4gICAgICAgICAgICBpbnN0YWxsQ29udHJhY3QocGVlciwgbmFtZSk7XG4gICAgICAgICAgICBhcHByb3ZlQ29udHJhY3QocGVlciwgbmFtZSwgcGVlciA9PT0gXCJvcmctYS1wZWVyLTBcIlxuICAgICAgICAgICAgICAgID8gXCJ0bHMtY2EtY2VydC5wZW1cIlxuICAgICAgICAgICAgICAgIDogXCJvcmRlcmVyLXRscy1jYS1jZXJ0LnBlbVwiLCBzZXF1ZW5jZSwgdmVyc2lvbiwgY29sbGVjdGlvbnNDb25maWcpO1xuICAgICAgICB9XG4gICAgICAgIGZzLndyaXRlRmlsZVN5bmMoY291bnRQYXRoLCBzZXF1ZW5jZS50b1N0cmluZygpKTtcbiAgICB9XG4gICAgY2F0Y2ggKGVycikge1xuICAgICAgICBsb2cuZXJyb3IoXCJFcnJvciBkZXBsb3lpbmcgY29udHJhY3Q6XCIsIGVycik7XG4gICAgfVxuICAgIGNvbW1pdENoYWluY29kZShuYW1lLCBzZXF1ZW5jZSwgdmVyc2lvbiwgY29sbGVjdGlvbnNDb25maWcpO1xufSk7XG5jb25zdCBnZXRDcnlwdG9NYXRlcmlhbCA9IG5ldyBDb21tYW5kKClcbiAgICAubmFtZShcImdldC1jcnlwdG8tbWF0ZXJpYWxcIilcbiAgICAuZGVzY3JpcHRpb24oXCJjb3BpZXMgdGhlIGNyeXB0byBtYXRlcmlhbCB0byB0aGUgc2VsZWN0ZWQgZm9sZGVyXCIpXG4gICAgLm9wdGlvbihcIi0tZm9sZGVyIDxTdHJpbmc+XCIsIFwib3V0cHV0IGZvbGRlclwiLCBcImRvY2tlci9kb2NrZXItZGF0YVwiKVxuICAgIC5vcHRpb24oXCItLW9yZyBbU3RyaW5nXVwiLCBcInRoZSBvcmcvcGVlciB0byBleHRyYWN0IGZyb21cIiwgXCJvcmctYVwiKVxuICAgIC5hY3Rpb24oYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBwa2cgPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIikpO1xuICAgIGNvbnN0IHZlcnNpb24gPSBwa2cudmVyc2lvbjtcbiAgICBjb25zdCBsb2cgPSBsb2dnZXIuZm9yKFwiZ2V0LWNyeXB0by1tYXRlcmlhbFwiKTtcbiAgICBsb2cuZGVidWcoYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YCk7XG4gICAgY29uc3QgeyBmb2xkZXIsIG9yZyB9ID0gb3B0aW9ucztcbiAgICBleGVjU3luYyhgZG9ja2VyIGNwICR7b3JnfTovd2VhdmVyL2NsaWVudC8uICR7Zm9sZGVyfWAsIHtcbiAgICAgICAgY3dkOiBwcm9jZXNzLmN3ZCgpLFxuICAgIH0pO1xufSk7XG5jb25zdCBmYWJyaWNDbWQgPSBuZXcgQ29tbWFuZCgpXG4gICAgLm5hbWUoXCJmb3ItZmFicmljXCIpXG4gICAgLmNvbW1hbmQoXCJmYWJyaWNcIilcbiAgICAuZGVzY3JpcHRpb24oXCJleHBvc2VzIHNldmVyYWwgY29tbWFuZHMgdG8gaGVscCBtYW5hZ2UgdGhlIGZhYnJpYyBpbmZyYXN0cnVjdHVyZVwiKTtcbmZhYnJpY0NtZC5hZGRDb21tYW5kKGNvbXBpbGVDb21tYW5kKTtcbmZhYnJpY0NtZC5hZGRDb21tYW5kKGV4dHJhY3RJbmRleGVzKTtcbmZhYnJpY0NtZC5hZGRDb21tYW5kKGVuc3VyZUluZnJhKTtcbmZhYnJpY0NtZC5hZGRDb21tYW5kKGRlcGxveUNvbnRyYWN0KTtcbmZhYnJpY0NtZC5hZGRDb21tYW5kKGdldENyeXB0b01hdGVyaWFsKTtcbmZhYnJpY0NtZC5hZGRDb21tYW5kKGV4dHJhY3RDb2xsZWN0aW9ucyk7XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBmYWJyaWMoKSB7XG4gICAgcmV0dXJuIGZhYnJpY0NtZDtcbn1cbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVkyeHBMVzF2WkhWc1pTNXFjeUlzSW5OdmRYSmpaVkp2YjNRaU9pSWlMQ0p6YjNWeVkyVnpJanBiSWk0dUx5NHVMM055WXk5amJHa3RiVzlrZFd4bExuUnpJbDBzSW01aGJXVnpJanBiWFN3aWJXRndjR2x1WjNNaU9pSkJRVUZCTEU5QlFVOHNSVUZCUlN4UFFVRlBMRVZCUVVVc1RVRkJUU3hYUVVGWExFTkJRVU03UVVGRGNFTXNUMEZCVHl4RlFVRkZMRTlCUVU4c1JVRkJSU3haUVVGWkxFVkJRVVVzVFVGQlRTeHRRa0ZCYlVJc1EwRkJRenRCUVVNeFJDeFBRVUZQTEVWQlFVVXNVVUZCVVN4RlFVRkZMRTFCUVUwc1pVRkJaU3hEUVVGRE8wRkJRM3BETEU5QlFVOHNSVUZCUlN4TlFVRk5MRWxCUVVrc1EwRkJRenRCUVVOd1FpeFBRVUZQTEVsQlFVa3NUVUZCVFN4TlFVRk5MRU5CUVVNN1FVRkRlRUlzVDBGQlR5eEZRVUZWTEUxQlFVMHNSVUZCUlN4TlFVRk5MRkZCUVZFc1EwRkJRenRCUVVONFF5eFBRVUZQTEU5QlFVOHNUVUZCVFN4M1FrRkJkMElzUTBGQlF6dEJRVU0zUXl4UFFVRlBMRVZCUVVVc1lVRkJZU3hGUVVGRkxHdENRVUZyUWl4RlFVRkZMRTFCUVUwc2VVSkJRWGxDTEVOQlFVTTdRVUZETlVVc1QwRkJUeXhGUVVOTUxIVkNRVUYxUWl4RlFVTjJRaXh2UWtGQmIwSXNSVUZEY0VJc1lVRkJZU3hGUVVOaUxHZENRVUZuUWl4RlFVTm9RaXhsUVVGbExFVkJRMllzV1VGQldTeEhRVU5pTEd0RFFVRjVRanRCUVVNeFFpeFBRVUZQTEVWQlFVVXNTMEZCU3l4RlFVRkZMRTFCUVUwc1owTkJRV2RETEVOQlFVTTdRVUZEZGtRc1QwRkJUeXhGUVVOTUxHVkJRV1VzUlVGRFppd3dRa0ZCTUVJc1JVRkRNVUlzWlVGQlpTeEZRVU5tTEdWQlFXVXNSVUZEWml4bFFVRmxMRVZCUTJZc2RVSkJRWFZDTEVWQlEzWkNMRFJDUVVFMFFpeEhRVU0zUWl4MVFrRkJiMEk3UVVGRGNrSXNjVU5CUVRSQ08wRkJRelZDTEU5QlFVOHNSVUZCUlN4TlFVRk5MRmxCUVZrc1EwRkJRenRCUVVNMVFpeFBRVUZQTEVWQlEwd3NhMEpCUVd0Q0xFbEJRVWtzWVVGQllTeEZRVVZ1UXl4blFrRkJaMElzUlVGRGFFSXNlVUpCUVhsQ0xFZEJRekZDTEhORFFVRnRRenRCUVVkd1F5eE5RVUZOTEUxQlFVMHNSMEZCUnl4UFFVRlBMRU5CUVVNc1IwRkJSeXhEUVVGRExGRkJRVkVzUTBGQlF5eERRVUZETzBGQlJYSkRMRk5CUVZNc2RVSkJRWFZDTzBsQlF6bENMRTlCUVU4N1VVRkRUQ3hKUVVGSkxFVkJRVVVzTkVKQlFUUkNPMUZCUTJ4RExGTkJRVk1zUTBGQlF5eE5RVUZOTEVWQlFVVXNVVUZCVVR0WlFVTjRRaXhKUVVGSkxFTkJRVU1zVVVGQlVTeEpRVUZKTEVOQlFVTXNUVUZCVFN4RFFVRkRMRlZCUVZVc1EwRkJReXhIUVVGSExFTkJRVU1zUlVGQlJTeERRVUZETzJkQ1FVTjZReXhQUVVGUExFbEJRVWtzUTBGQlF6dFpRVU5rTEVOQlFVTTdXVUZGUkN4TlFVRk5MRmxCUVZrc1IwRkJSeXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1VVRkJVU3hEUVVGRExFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTTdXVUZEYkVVc1RVRkJUU3hWUVVGVkxFZEJRVWM3WjBKQlEycENMRmxCUVZrN1owSkJRMW9zUjBGQlJ5eFpRVUZaTEV0QlFVczdaMEpCUTNCQ0xFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNXVUZCV1N4RlFVRkZMRlZCUVZVc1EwRkJRenRoUVVOd1F5eERRVUZETzFsQlJVWXNTMEZCU3l4TlFVRk5MRk5CUVZNc1NVRkJTU3hWUVVGVkxFVkJRVVVzUTBGQlF6dG5Ra0ZEYmtNc1NVRkJTU3hGUVVGRkxFTkJRVU1zVlVGQlZTeERRVUZETEZOQlFWTXNRMEZCUXl4SlFVRkpMRVZCUVVVc1EwRkJReXhSUVVGUkxFTkJRVU1zVTBGQlV5eERRVUZETEVOQlFVTXNUVUZCVFN4RlFVRkZMRVZCUVVVc1EwRkJRenR2UWtGRGFFVXNUMEZCVHl4VFFVRlRMRU5CUVVNN1owSkJRMjVDTEVOQlFVTTdXVUZEU0N4RFFVRkRPMWxCUlVRc1QwRkJUeXhKUVVGSkxFTkJRVU03VVVGRFpDeERRVUZETzB0QlEwWXNRMEZCUXp0QlFVTktMRU5CUVVNN1FVRkZSQ3hOUVVGTkxHTkJRV01zUjBGQlJ5eEpRVUZKTEU5QlFVOHNSVUZCUlR0TFFVTnFReXhKUVVGSkxFTkJRVU1zYTBKQlFXdENMRU5CUVVNN1MwRkRlRUlzVjBGQlZ5eERRVUZETERKQ1FVRXlRaXhEUVVGRE8wdEJRM2hETEUxQlFVMHNRMEZCUXl4UFFVRlBMRVZCUVVVc2VVTkJRWGxETEVWQlFVVXNTMEZCU3l4RFFVRkRPMHRCUTJwRkxFMUJRVTBzUTBGQlF5eFRRVUZUTEVWQlFVVXNiVU5CUVcxRExFVkJRVVVzUzBGQlN5eERRVUZETzB0QlF6ZEVMRTFCUVUwc1EwRkRUQ3hUUVVGVExFVkJRMVFzY1VSQlFYRkVMRVZCUTNKRUxFdEJRVXNzUTBGRFRqdExRVU5CTEUxQlFVMHNRMEZCUXl4cFFrRkJhVUlzUlVGQlJTeGxRVUZsTEVWQlFVVXNhVUpCUVdsQ0xFTkJRVU03UzBGRE4wUXNUVUZCVFN4RFFVRkRMRlZCUVZVc1JVRkJSU3d3UTBGQk1FTXNSVUZCUlN4TFFVRkxMRU5CUVVNN1MwRkRja1VzVFVGQlRTeERRVU5NTERKQ1FVRXlRaXhGUVVNelFpeHRSVUZCYlVVc1JVRkRia1VzYVVKQlFXbENMRU5CUTJ4Q08wdEJRMEVzVFVGQlRTeERRVU5NTEhkQ1FVRjNRaXhGUVVONFFpeHpRa0ZCYzBJc1JVRkRkRUlzWjBOQlFXZERMRU5CUTJwRE8wdEJRMEVzVFVGQlRTeERRVUZETEhWQ1FVRjFRaXhGUVVGRkxHbERRVUZwUXl4RlFVRkZMRXRCUVVzc1EwRkJRenRMUVVONlJTeE5RVUZOTEVOQlFVTXNhMEpCUVd0Q0xFVkJRVVVzTkVKQlFUUkNMRVZCUVVVc1pVRkJaU3hEUVVGRE8wdEJRM3BGTEUxQlFVMHNRMEZCUXl4dFFrRkJiVUlzUlVGQlJTdzJRa0ZCTmtJc1JVRkJSU3hoUVVGaExFTkJRVU03UzBGRGVrVXNUVUZCVFN4RFFVRkRMR05CUVdNc1JVRkJSU3cwUTBGQk5FTXNSVUZCUlN4TFFVRkxMRU5CUVVNN1MwRkRNMFVzVFVGQlRTeERRVUZETEZOQlFWTXNSVUZCUlN4M1EwRkJkME1zUlVGQlJTeExRVUZMTEVOQlFVTTdTMEZEYkVVc1RVRkJUU3hEUVVGRExFdEJRVXNzUlVGQlJTeFBRVUZaTEVWQlFVVXNSVUZCUlR0SlFVTTNRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVTndRaXhGUVVGRkxFTkJRVU1zV1VGQldTeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUlVGQlJTeEZRVUZGTEdOQlFXTXNRMEZCUXl4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVOdVJTeERRVUZETzBsQlJVWXNTVUZCU1N4WlFVRlpMRWRCUVVjc1UwRkJVeXhEUVVGRE8wbEJSVGRDTEUxQlFVMHNUMEZCVHl4SFFVRkhMRWRCUVVjc1EwRkJReXhQUVVGUExFTkJRVU03U1VGRk5VSXNTVUZCU1R0SlFVTkdMSGREUVVGM1F6dEpRVU40UXl4SFFVRkhPMGxCUTBnc2QwTkJRWGRETzBsQlEzaERMRXRCUVVzN1NVRkRUQ3gzUTBGQmQwTTdTVUZEZUVNc1NVRkJTVHRKUVVOS0xIZERRVUYzUXp0SlFVTjRReXhYUVVGWExFVkJRMWdzVFVGQlRUdEpRVU5PTEhkRFFVRjNRenRKUVVONFF5eExRVUZMTzBsQlEwd3NkME5CUVhkRE8wbEJRM2hETEdsQ1FVRnBRanRKUVVOcVFpeDNRMEZCZDBNN1NVRkRlRU1zUzBGQlN6dEpRVU5NTEhkRFFVRjNRenRKUVVONFF5eE5RVUZOTEVWQlJVNHNXVUZCV1R0SlFVTmFMSGREUVVGM1F6dEpRVU40UXl4VlFVRlZPMGxCUTFZc2QwTkJRWGRETzBsQlEzaERMRXRCUVVzc1IwRkRUaXhIUVVGSExFOUJRVThzUTBGQlF6dEpRVU5hTEUxQlFVMHNSMEZCUnl4SFFVRkhMRTFCUVUwc1EwRkJReXhIUVVGSExFTkJRVU1zYTBKQlFXdENMRU5CUVVNc1EwRkJRenRKUVVNelF5eEpRVUZKTEVOQlFVTTdVVUZEU0N4SlFVRkpMRXRCUVVzc1JVRkJSU3hEUVVGRE8xbEJRMVlzV1VGQldTeEhRVUZITEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUTNaQ0xFVkJRVVVzUTBGQlF5eFpRVUZaTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVWQlFVVXNVVUZCVVN4RFFVRkRMRVZCUVVVc1QwRkJUeXhEUVVGRExFTkJRemRFTEVOQlFVTTdXVUZGUml4TlFVRk5MRkZCUVZFc1IwRkJSeXhaUVVGWkxFTkJRVU1zVDBGQlR5eERRVU51UXl4blFrRkJaMElzUlVGRGFFSXNRMEZCUXl4RFFVRk5MRVZCUVVVc1QwRkJaU3hGUVVGRkxFVkJRVVU3WjBKQlF6RkNMRTFCUVUwc1MwRkJTeXhIUVVGSExFOUJRVThzUTBGQlF5eEhRVUZITEVOQlFVTXNUMEZCVHl4RFFVRkRMRU5CUVVNN1owSkJSVzVETEVsQlFVa3NTMEZCU3l4TFFVRkxMRk5CUVZNc1JVRkJSU3hEUVVGRE8yOUNRVU40UWl4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVOV0xHdERRVUZyUXl4UFFVRlBMR05CUVdNc1EwRkRlRVFzUTBGQlF6dHZRa0ZEUml4UFFVRlBMRVZCUVVVc1EwRkJRenRuUWtGRFdpeERRVUZETzJkQ1FVVkVMRTlCUVU4c1MwRkJTeXhEUVVGRE8xbEJRMllzUTBGQlF5eERRVU5HTEVOQlFVTTdXVUZGUml4WlFVRlpMRWRCUVVjc1VVRkJVU3hEUVVGRE8xRkJRekZDTEVOQlFVTTdTVUZEU0N4RFFVRkRPMGxCUVVNc1RVRkJUU3hEUVVGRE8xRkJRMUFzUjBGQlJ5eERRVUZETEVsQlFVa3NRMEZCUXl4NVJFRkJlVVFzUTBGQlF5eERRVUZETzBsQlEzUkZMRU5CUVVNN1NVRkZSQ3hIUVVGSExFTkJRVU1zUzBGQlN5eERRVU5RTEhsQ1FVRjVRaXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEU5QlFVOHNRMEZCUXl4UlFVRlJMRWRCUVVjc1EwRkJReXhKUVVGSkxGbEJRVmtzVDBGQlR5eEZRVUZGTEVOQlEzUkdMRU5CUVVNN1NVRkZSaXhaUVVGWkxFZEJRVWNzU1VGQlNTeERRVUZETEZWQlFWVXNRMEZCUXl4WlFVRlpMRU5CUVVNN1VVRkRNVU1zUTBGQlF5eERRVUZETEZsQlFWazdVVUZEWkN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4RlFVRkZMRVZCUVVVc1dVRkJXU3hEUVVGRExFTkJRVU03U1VGRk0wTXNUVUZCVFN4SFFVRkhMR2xDUVVGcFFpeERRVUZETEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGRE8wbEJRemxFTEVkQlFVY3NRMEZCUXl4SlFVRkpMRU5CUVVNc2NVUkJRWEZFTEUxQlFVMHNSVUZCUlN4RFFVRkRMRU5CUVVNN1NVRkRlRVVzVVVGQlVTeERRVUZETEZWQlFWVXNUVUZCVFN4RlFVRkZMRU5CUVVNc1EwRkJRenRKUVVNM1FpeEpRVUZKTEUxQlFVMHNSVUZCUlN4RFFVRkRPMUZCUTFnc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5d3dRa0ZCTUVJc1MwRkJTeXhGUVVGRkxFTkJRVU1zUTBGQlF6dFJRVU0xUXl4TlFVRk5MR0ZCUVdFc1IwRkJSeXhGUVVGRkxFTkJRVU1zVjBGQlZ5eERRVU5zUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eEhRVUZITEVWQlFVVXNSVUZCUlN4dFFrRkJiVUlzUTBGQlF5eERRVU01UXl4RFFVRkRPMUZCUTBZc1NVRkJTU3hEUVVGRE8xbEJRMGdzVFVGQlRTeFZRVUZWTEVkQlFVY3NTVUZCU1N4RFFVRkRMRTlCUVU4c1EwRkJReXhQUVVGUExFTkJRVU1zUjBGQlJ5eEZRVUZGTEVWQlFVVXNTMEZCU3l4RlFVRkZMRlZCUVZVc1EwRkJReXhEUVVGRE8xbEJRMnhGTEUxQlFVMHNWVUZCVlN4SFFVRkhMRVZCUVVVc1EwRkJReXhqUVVGakxFTkJRVU1zV1VGQldTeEZRVUZGTEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc1VVRkJVU3hEUVVGRExFTkJRVU03V1VGRGNFVXNTVUZCU1N4VlFVRlZMRU5CUVVNc1MwRkJTeXhGUVVGRkxFTkJRVU03WjBKQlEzSkNMRTFCUVUwc1NVRkJTU3hoUVVGaExFTkJRM0pDTEVWQlFVVXNRMEZCUXl3MFFrRkJORUlzUTBGQlF5eFZRVUZWTEVOQlFVTXNTMEZCU3l4RFFVRkRMRmRCUVZjc1JVRkJSU3hKUVVGSkxFTkJRVU1zUTBGRGNFVXNRMEZCUXp0WlFVTktMRU5CUVVNN1dVRkZSQ3hOUVVGTkxGbEJRVmtzUjBGQlJ5eEZRVUZGTEVOQlFVTXNNRUpCUVRCQ0xFTkJRMmhFTEZWQlFWVXNRMEZCUXl4TlFVRk5MRVZCUTJwQ0xFVkJRVVVzUTBGQlF5eEhRVUZITEVWQlEwNHNTVUZCU1N4RFFVRkRMRTlCUVU4c1EwRkJReXhaUVVGWkxFTkJRVU1zUlVGRE1VSXNVMEZCVXl4RlFVTlVMRmxCUVZrc1EwRkRZaXhEUVVGRE8xbEJRMFlzU1VGQlNTeFpRVUZaTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRE8yZENRVU12UWl4TlFVRk5MRWxCUVVrc1lVRkJZU3hEUVVOeVFpeFpRVUZaTEVOQlFVTXNUVUZCVFR0eFFrRkRhRUlzUjBGQlJ5eERRVUZETEVOQlFVTXNTMEZCU3l4RlFVRkZMRVZCUVVVc1EwRkRZaXhGUVVGRkxFTkJRVU1zTkVKQlFUUkNMRU5CUVVNc1MwRkJTeXhEUVVGRExGZEJRVmNzUlVGQlJTeEpRVUZKTEVOQlFVTXNRMEZEZWtRN2NVSkJRMEVzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVTmtMRU5CUVVNN1dVRkRTaXhEUVVGRE8xbEJSVVFzVFVGQlRTeHRRa0ZCYlVJc1IwRkJkVUk3WjBKQlF6bERMRWRCUVVjc1dVRkJXU3hEUVVGRExFOUJRVTg3WjBKQlEzWkNMRTFCUVUwc1JVRkJSU3hoUVVGaE8yZENRVU55UWl4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRExGVkJRVlVzUTBGQlF5eE5RVUZOTzJkQ1FVTTFRaXhYUVVGWExFVkJRVVVzUzBGQlN6dG5Ra0ZEYkVJc1UwRkJVeXhGUVVGRkxFdEJRVXM3WjBKQlEyaENMR0ZCUVdFc1JVRkJSU3hMUVVGTE8yRkJRM0pDTEVOQlFVTTdXVUZEUml4TlFVRk5MR2xDUVVGcFFpeEhRVUZITEVWQlFVVTdhVUpCUTNwQ0xHdENRVUZyUWl4RFFVTnFRanRuUWtGRFJTeEhRVUZITEZsQlFWazdaMEpCUTJZc1QwRkJUeXhGUVVGRkxHMUNRVUZ0UWp0aFFVTTNRaXhGUVVORUxGVkJRVlVzUlVGRFZpeERRVUZETEVWQlFVVXNRMEZCUXl4SFFVRkhMRU5CUVVNc2VVSkJRWGxDTEVOQlEyeERPMmxDUVVOQkxFbEJRVWtzUTBGQlF5eERRVUZETEZGQlFWRXNSVUZCUlN4RlFVRkZMRU5CUVVNc1VVRkJVU3hEUVVGRExGRkJRVkVzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXl4RFFVRkRPMWxCUldoRUxFbEJRVWtzUTBGQlF5eHBRa0ZCYVVJc1JVRkJSU3hEUVVGRE8yZENRVU4yUWl4TlFVRk5MRWxCUVVrc1lVRkJZU3hEUVVOeVFpeHZSRUZCYjBRc1ZVRkJWU3hGUVVGRkxFTkJRMnBGTEVOQlFVTTdXVUZEU2l4RFFVRkRPMWxCUlVRc05FSkJRVFJDTEVOQlFVTXNXVUZCV1N4RlFVRkZMRzFDUVVGdFFpeERRVUZETEVOQlFVTTdXVUZEYUVVc1RVRkJUU3hsUVVGbExFZEJRVWNzVFVGQlRTeE5RVUZOTEVOQlFVTTdaMEpCUTI1RExFdEJRVXNzUlVGQlJTeHBRa0ZCYVVJN1owSkJRM2hDTEU5QlFVOHNSVUZCUlR0dlFrRkRVQ3gxUWtGQmRVSXNSVUZCUlR0dlFrRkRla0lzVDBGQlR5eERRVUZETzNkQ1FVTk9MR2xDUVVGcFFpeEZRVUZGTEVsQlFVazdkMEpCUTNaQ0xGVkJRVlVzUlVGQlJTeERRVUZETEVWQlFVVXNSVUZCUlN4RlFVRkZMRU5CUVVNN2QwSkJRM0JDTEUxQlFVMHNSVUZCUlN4RlFVRkZMR0ZCUVdFc1JVRkJSU3hQUVVGUExFVkJRVVVzWVVGQllTeEZRVUZGTEVkQlFVY3NRMEZCUXl4SlFVRkpMRVZCUVVVN2NVSkJRelZFTEVOQlFVTTdhVUpCUTBnN1lVRkRSaXhEUVVGRExFTkJRVU03V1VGRFNDeEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVTk9MSFZDUVVGMVFpeE5RVUZOTEdOQlFXTXNXVUZCV1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRMjVGTEVOQlFVTTdXVUZEUml4TlFVRk5MR1ZCUVdVc1EwRkJReXhMUVVGTExFTkJRVU03WjBKQlF6RkNMRWxCUVVrc1JVRkJSU3hIUVVGSExFMUJRVTBzU1VGQlNTeFpRVUZaTEVOQlFVTXNTVUZCU1N4RFFVRkRMRXRCUVVzN1owSkJRekZETEUxQlFVMHNSVUZCUlN4TFFVRkxPMmRDUVVOaUxFbEJRVWtzUlVGQlJTeEhRVUZITEZsQlFWa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1MwRkJTenRuUWtGRGFFTXNVMEZCVXl4RlFVRkZMRlZCUVZVc1EwRkJReXhEUVVGRExFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTXNRMEZCUXl4TFFVRkxPMmRDUVVONFF5eHpRa0ZCYzBJc1JVRkJSU3hEUVVGRExHdENRVUZyUWl4RlFVRkZMR0ZCUVdFc1JVRkJSU3hGUVVGRk8yOUNRVU0xUkN4TlFVRk5MR3RDUVVGclFpeEhRVUZITEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUTNKRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNZVUZCWVN4RFFVRkRMRVZCUXpOQ0xHdENRVUZyUWl4RFFVTnVRaXhEUVVGRE8yOUNRVVZHTEVsQlFVa3NhMEpCUVd0Q0xFTkJRVU1zVlVGQlZTeERRVUZETEdGQlFXRXNRMEZCUXl4RlFVRkZMRU5CUVVNN2QwSkJRMnBFTEU5QlFVOHNTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRM0JDTEZOQlFWTXNSVUZEVkN4SlFVRkpPelpDUVVORUxGRkJRVkVzUTBGQlF5eGhRVUZoTEVWQlFVVXNhMEpCUVd0Q0xFTkJRVU03TmtKQlF6TkRMRXRCUVVzc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZET3paQ1FVTm1MRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGRFlpeERRVUZETzI5Q1FVTktMRU5CUVVNN2IwSkJSVVFzVDBGQlR5eHJRa0ZCYTBJc1EwRkJRenRuUWtGRE5VSXNRMEZCUXp0aFFVTkdMRU5CUVVNc1EwRkJRenRaUVVOSUxFMUJRVTBzWlVGQlpTeERRVUZETEV0QlFVc3NSVUZCUlN4RFFVRkRPMUZCUTJoRExFTkJRVU03WjBKQlFWTXNRMEZCUXp0WlFVTlVMRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU1zWVVGQllTeEZRVUZGTEVWQlFVVXNVMEZCVXl4RlFVRkZMRWxCUVVrc1JVRkJSU3hMUVVGTExFVkJRVVVzU1VGQlNTeEZRVUZGTEVOQlFVTXNRMEZCUXp0UlFVTTNSQ3hEUVVGRE8wbEJRMGdzUTBGQlF6dFRRVUZOTEVOQlFVTTdVVUZEVGl3MFFrRkJORUlzUTBGQlF5eFpRVUZaTEVWQlFVVTdXVUZEZWtNc1RVRkJUU3hGUVVGRkxFMUJRVTA3V1VGRFpDeE5RVUZOTEVWQlFVVXNSVUZCUlN4RFFVRkRMRlZCUVZVc1EwRkJReXhOUVVGTk8xbEJRelZDTEZkQlFWY3NSVUZCUlN4TFFVRkxPMWxCUTJ4Q0xGTkJRVk1zUlVGQlJTeFZRVUZWTzFsQlEzSkNMR0ZCUVdFc1JVRkJSU3hWUVVGVk8xTkJRekZDTEVOQlFVTXNRMEZCUXp0SlFVTk1MRU5CUVVNN1NVRkZSQ3hOUVVGTkxFOUJRVThzUjBGQlJ6dFJRVU5rTEV0QlFVc3NSVUZCUlN4MVFrRkJkVUlzUTBGQlF5eExRVUZMTEVWQlFVVXNTMEZCU3l4RFFVRkRPMUZCUXpWRExGZEJRVmNzUlVGQlJTeHBSRUZCYVVRN1VVRkRPVVFzWVVGQllTeEZRVUZGTEc5RFFVRnZRenRSUVVOdVJDeExRVUZMTEVWQlFVVXNkVU5CUVhWRE8xRkJRemxETEVsQlFVa3NSVUZCUlN3d1FrRkJNRUk3UzBGRGFrTXNRMEZCUXp0SlFVVkdMRTFCUVUwc1pVRkJaU3hIUVVGSExFZEJRVWNzUTBGQlF6dEpRVVUxUWl4bFFVRmxMRU5CUVVNc1NVRkJTU3hIUVVGSExFbEJRVWtzUTBGQlF6dEpRVU0xUWl4bFFVRmxMRU5CUVVNc1YwRkJWeXhIUVVGSExGZEJRVmNzUTBGQlF6dEpRVU14UXl4bFFVRmxMRU5CUVVNc1QwRkJUeXhIUVVGSExFOUJRVThzUTBGQlF6dEpRVVZzUXl4UFFVRlBMR1ZCUVdVc1EwRkJReXhKUVVGSkxFTkJRVU03U1VGRE5VSXNUMEZCVHl4bFFVRmxMRU5CUVVNc1MwRkJTeXhEUVVGRE8wbEJRemRDTEU5QlFVOHNaVUZCWlN4RFFVRkRMRTlCUVU4c1EwRkJRenRKUVVNdlFpeGxRVUZsTEVOQlFVTXNTVUZCU1N4SFFVRkhMRTFCUVUwN1VVRkRNMElzUTBGQlF5eERRVUZETEVkQlFVY3NXVUZCV1N4RFFVRkRMRWxCUVVrc1EwRkJReXhMUVVGTE8xRkJRelZDTEVOQlFVTXNRMEZCUXl4SFFVRkhMRXRCUVVzc1YwRkJWeXhEUVVGRE8wbEJSWGhDTEVWQlFVVXNRMEZCUXl4aFFVRmhMRU5CUTJRc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVWQlFVVXNZMEZCWXl4RFFVRkRMRVZCUTJwRExFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTXNaVUZCWlN4RFFVRkRMRU5CUTJoRExFTkJRVU03U1VGRlJpeEpRVUZKTEV0QlFVczdVVUZCUlN4RlFVRkZMRU5CUVVNc1lVRkJZU3hEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUVUZCVFN4RlFVRkZMRkZCUVZFc1EwRkJReXhGUVVGRkxFdEJRVXNzUTBGQlF5eERRVUZETzBsQlJXaEZMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zTkVOQlFUUkRMRU5CUVVNc1EwRkJRenRKUVVOMlJDeFJRVUZSTEVOQlFVTXNZVUZCWVN4RlFVRkZMRVZCUVVVc1IwRkJSeXhGUVVGRkxFMUJRVTBzUlVGQlJTeERRVUZETEVOQlFVTTdTVUZEZWtNc1VVRkJVU3hEUVVGRExHZENRVUZuUWl4RlFVRkZMRVZCUVVVc1IwRkJSeXhGUVVGRkxFMUJRVTBzUlVGQlJTeERRVUZETEVOQlFVTTdTVUZETlVNc1VVRkJVU3hEUVVGRExIRkNRVUZ4UWl4RlFVRkZMRVZCUVVVc1IwRkJSeXhGUVVGRkxFMUJRVTBzUlVGQlJTeERRVUZETEVOQlFVTTdTVUZEYWtRc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGQlF5eDFRa0ZCZFVJc1EwRkJReXhEUVVGRE8wbEJRMnhETEZGQlFWRXNRMEZCUXl3clFrRkJLMElzUlVGQlJTeEZRVUZGTEVkQlFVY3NSVUZCUlN4TlFVRk5MRVZCUVVVc1EwRkJReXhEUVVGRE8wbEJRek5FTEVkQlFVY3NRMEZCUXl4SlFVRkpMRU5CUTA0c1dVRkJXU3hKUVVGSkxEaENRVUU0UWl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFMUJRVTBzUTBGQlF5eEZRVUZGTEVOQlEzSkZMRU5CUVVNN1NVRkRSaXhKUVVGSkxFZEJRVWNzUlVGQlJTeERRVUZETzFGQlExSXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXg1UkVGQmVVUXNRMEZCUXl4RFFVRkRPMUZCUTNCRkxGRkJRVkVzUTBGQlF5eGhRVUZoTEVWQlFVVTdXVUZEZEVJc1IwRkJSeXhGUVVGRkxFMUJRVTA3V1VGRFdDeEhRVUZITEVWQlFVVXNSVUZCUlN4SFFVRkhMRTlCUVU4c1EwRkJReXhIUVVGSExFVkJRVVVzVVVGQlVTeEZRVUZGTEZsQlFWa3NSVUZCUlR0VFFVTm9SQ3hEUVVGRExFTkJRVU03U1VGRFRDeERRVUZETzBGQlEwZ3NRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkZUQ3hOUVVGTkxHTkJRV01zUjBGQlJ5eEpRVUZKTEU5QlFVOHNSVUZCUlR0TFFVTnFReXhQUVVGUExFTkJRVU1zYVVKQlFXbENMRU5CUVVNN1MwRkRNVUlzVFVGQlRTeERRVUZETEdsQ1FVRnBRaXhGUVVGRkxHZENRVUZuUWl4RFFVRkRPMHRCUXpORExFMUJRVTBzUTBGQlF5eHRRa0ZCYlVJc1JVRkJSU3hyUWtGQmEwSXNRMEZCUXp0TFFVTXZReXhOUVVGTkxFTkJRVU1zYlVKQlFXMUNMRVZCUVVVc0swTkJRU3RETEVOQlFVTTdTMEZETlVVc1YwRkJWeXhEUVVOV0xESkZRVUV5UlN4RFFVTTFSVHRMUVVOQkxFMUJRVTBzUTBGQlF5eExRVUZMTEVWQlFVVXNUMEZCV1N4RlFVRkZMRVZCUVVVN1NVRkROMElzVFVGQlRTeEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkRjRUlzUlVGQlJTeERRVUZETEZsQlFWa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eEhRVUZITEVWQlFVVXNSVUZCUlN4alFVRmpMRU5CUVVNc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGRGJrVXNRMEZCUXp0SlFVVkdMRTFCUVUwc1QwRkJUeXhIUVVGSExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTTdTVUZGTlVJc1RVRkJUU3hIUVVGSExFZEJRVWNzVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4cFFrRkJhVUlzUTBGQlF5eERRVUZETzBsQlF6RkRMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRMUFzZVVKQlFYbENMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEZGQlFWRXNSMEZCUnl4RFFVRkRMRWxCUVVrc1dVRkJXU3hQUVVGUExFVkJRVVVzUTBGRGRFWXNRMEZCUXp0SlFVVkdMSGREUVVGM1F6dEpRVU40UXl4SlFVRkpMRVZCUVVVc1NVRkJTU3hGUVVGRkxFMUJRVTBzUlVGQlJTeE5RVUZOTEVWQlFVVXNSMEZCUnl4UFFVRlBMRU5CUVVNN1NVRkZka01zVFVGQlRTeE5RVUZOTEVkQlFWVXNSVUZCUlN4RFFVRkRPMGxCUTNwQ0xFbEJRVWtzU1VGQlNTeEZRVUZGTEVOQlFVTTdVVUZEVkN4TlFVRk5MRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzWVVGQllTeERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRkRU1zUTBGQlF6dEpRVVZFTEVsQlFVa3NUVUZCVFN4RlFVRkZMRU5CUVVNN1VVRkRXQ3hIUVVGSExFTkJRVU1zU1VGQlNTeERRVUZETEhWQ1FVRjFRaXhOUVVGTkxFdEJRVXNzUTBGQlF5eERRVUZETzFGQlF6ZERMRTFCUVUwc1EwRkJReXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEUxQlFVMHNaMEpCUVdkQ0xFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RFFVRkRPMGxCUTI1RUxFTkJRVU03U1VGRFJDeE5RVUZOTEUxQlFVMHNSMEZCZDBJc1JVRkJSU3hEUVVGRE8wbEJRM1pETEUxQlFVMHNWVUZCVlN4SFFVRjNRaXhGUVVGRkxFTkJRVU03U1VGRk0wTXNTVUZCU1N4RFFVRkRMRWxCUVVrc1NVRkJTU3hEUVVGRExFMUJRVTA3VVVGRGJFSXNUVUZCVFN4SlFVRkpMR0ZCUVdFc1EwRkJReXc0UWtGQk9FSXNRMEZCUXl4RFFVRkRPMGxCUlRGRUxFdEJRVXNzVFVGQlRTeERRVUZETEVsQlFVa3NUVUZCVFN4RlFVRkZMRU5CUVVNN1VVRkRka0lzUjBGQlJ5eERRVUZETEU5QlFVOHNRMEZCUXl4blEwRkJaME1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU03VVVGRGJFVXNUVUZCVFN4UFFVRlBMRWRCUVVjc2IwSkJRVzlDTEVOQlFVTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1VVRkRlRU1zVDBGQlR5eERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRXRCUVVzc1JVRkJSU3hGUVVGRk8xbEJRM2hDTEVsQlFVa3NTMEZCU3l4RFFVRkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8yZENRVU5tTEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1NVRkJTU3hEUVVGRExFZEJRVWNzUzBGQlN5eERRVUZETzFsQlF6ZENMRU5CUVVNN1VVRkRTQ3hEUVVGRExFTkJRVU1zUTBGQlF6dFJRVU5JTEhWQ1FVRjFRaXhEUVVGRExFTkJRVU1zUlVGQlJTeFZRVUZWTEVOQlFVTXNRMEZCUXp0SlFVTjZReXhEUVVGRE8wbEJRMFFzVFVGQlRTeGpRVUZqTEVkQlFVY3NUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dEpRVU0zUXl4TlFVRk5MRmRCUVZjc1IwRkJSeXhOUVVGTkxFTkJRVU1zVFVGQlRTeERRVUZETEZWQlFWVXNRMEZCUXl4RFFVRkRPMGxCUXpsRExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTXNVMEZCVXl4alFVRmpMRU5CUVVNc1RVRkJUU3h2UWtGQmIwSXNRMEZCUXl4RFFVRkRPMGxCUTJoRkxFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTXNVMEZCVXl4WFFVRlhMRU5CUVVNc1RVRkJUU3gzUWtGQmQwSXNRMEZCUXl4RFFVRkRPMGxCUTJwRkxFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlFVTXNXVUZCV1N4SlFVRkpMRU5CUVVNc1UwRkJVeXhEUVVGRExFMUJRVTBzUTBGQlF5eEZRVUZGTEVOQlFVTXNRMEZCUXp0SlFVTm9SQ3hIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEdWQlFXVXNTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJReXhWUVVGVkxFTkJRVU1zUlVGQlJTeERRVUZETEVOQlFVTTdTVUZEZGtRc1dVRkJXU3hEUVVGRExHTkJRV01zUlVGQlJTeE5RVUZOTEVOQlFVTXNRMEZCUXp0SlFVTnlReXhsUVVGbExFTkJRVU1zVjBGQlZ5eEZRVUZGTEUxQlFVMHNRMEZCUXl4RFFVRkRPMEZCUTNaRExFTkJRVU1zUTBGQlF5eERRVUZETzBGQlJVd3NUVUZCVFN4clFrRkJhMElzUjBGQlJ5eEpRVUZKTEU5QlFVOHNSVUZCUlR0TFFVTnlReXhQUVVGUExFTkJRVU1zY1VKQlFYRkNMRU5CUVVNN1MwRkRPVUlzVFVGQlRTeERRVUZETEdsQ1FVRnBRaXhGUVVGRkxHZENRVUZuUWl4RFFVRkRPMHRCUXpORExFMUJRVTBzUTBGQlF5eHRRa0ZCYlVJc1JVRkJSU3hyUWtGQmEwSXNRMEZCUXp0TFFVTXZReXhOUVVGTkxFTkJRVU1zYlVKQlFXMUNMRVZCUVVVc0swTkJRU3RETEVOQlFVTTdTMEZETlVVc1RVRkJUU3hEUVVGRExHMUNRVUZ0UWl4RlFVRkZMRzFEUVVGdFF5eERRVUZETzB0QlEyaEZMRTFCUVUwc1EwRkJReXh6UWtGQmMwSXNSVUZCUlN4alFVRmpMRU5CUVVNN1MwRkRPVU1zVFVGQlRTeERRVU5NTEhOQ1FVRnpRaXhGUVVOMFFpdzJTMEZCTmtzc1EwRkRPVXM3UzBGRFFTeFhRVUZYTEVOQlExWXNNa1ZCUVRKRkxFTkJRelZGTzB0QlEwRXNUVUZCVFN4RFFVRkRMRXRCUVVzc1JVRkJSU3hQUVVGWkxFVkJRVVVzUlVGQlJUdEpRVU0zUWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVU53UWl4RlFVRkZMRU5CUVVNc1dVRkJXU3hEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWRCUVVjc1JVRkJSU3hGUVVGRkxHTkJRV01zUTBGQlF5eEZRVUZGTEU5QlFVOHNRMEZCUXl4RFFVTnVSU3hEUVVGRE8wbEJSVVlzVFVGQlRTeFBRVUZQTEVkQlFVY3NSMEZCUnl4RFFVRkRMRTlCUVU4c1EwRkJRenRKUVVVMVFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExIRkNRVUZ4UWl4RFFVRkRMRU5CUVVNN1NVRkRPVU1zUjBGQlJ5eERRVUZETEV0QlFVc3NRMEZEVUN4NVFrRkJlVUlzU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1VVRkJVU3hIUVVGSExFTkJRVU1zU1VGQlNTeFpRVUZaTEU5QlFVOHNSVUZCUlN4RFFVTjBSaXhEUVVGRE8wbEJSVVlzZDBOQlFYZERPMGxCUTNoRExFbEJRVWtzUlVGQlJTeEpRVUZKTEVWQlFVVXNUVUZCVFN4RlFVRkZMRTFCUVUwc1JVRkJSU3hOUVVGTkxFVkJRVVVzVTBGQlV5eEZRVUZGTEVkQlFVY3NUMEZCVHl4RFFVRkRPMGxCUlRGRUxFbEJRVWtzUTBGQlF6dFJRVU5JTEVsQlFVa3NRMEZCUXp0WlFVTklMRTFCUVUwc1IwRkJSeXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4TFFVRkxMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF5eERRVUZETEZOQlFWTXNRMEZCUXp0WlFVTnFSQ3cyUkVGQk5rUTdVVUZETDBRc1EwRkJRenRSUVVGRExFOUJRVThzUTBGQlZTeEZRVUZGTEVOQlFVTTdXVUZEY0VJc1kwRkJZenRSUVVOb1FpeERRVUZETzBsQlEwZ3NRMEZCUXp0SlFVRkRMRTlCUVU4c1EwRkJWU3hGUVVGRkxFTkJRVU03VVVGRGNFSXNUVUZCVFN4SlFVRkpMR3RDUVVGclFpeERRVUZETERoQ1FVRTRRaXhEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETzBsQlEyeEZMRU5CUVVNN1NVRkZSQ3hOUVVGTkxFMUJRVTBzUjBGQlZTeEZRVUZGTEVOQlFVTTdTVUZEZWtJc1NVRkJTU3hKUVVGSkxFVkJRVVVzUTBGQlF6dFJRVU5VTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhoUVVGaExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjBReXhEUVVGRE8wbEJSVVFzU1VGQlNTeE5RVUZOTEVWQlFVVXNRMEZCUXp0UlFVTllMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zZFVKQlFYVkNMRTFCUVUwc1MwRkJTeXhEUVVGRExFTkJRVU03VVVGRE4wTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zVFVGQlRTeG5Ra0ZCWjBJc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEYmtRc1EwRkJRenRKUVVWRUxFbEJRVWtzUTBGQlF5eEpRVUZKTEVsQlFVa3NRMEZCUXl4TlFVRk5PMUZCUTJ4Q0xFMUJRVTBzU1VGQlNTeGhRVUZoTEVOQlFVTXNPRUpCUVRoQ0xFTkJRVU1zUTBGQlF6dEpRVVV4UkN4TlFVRk5MR2RDUVVGblFpeEhRVUZITEUxQlFVMHNRMEZCUXl4TlFVRk5MRU5CUTNCRExFTkJRVU1zUzBGQlN5eEZRVUZGTEVWQlFVVXNRMEZEVWl4TFFVRkxMRU5CUVVNc1VVRkJVU3hEUVVGRExFdEJRVXNzUTBGQlF6dFJRVU55UWl4TFFVRkxMRU5CUVVNc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF6dFJRVU4wUWl4RFFVRkRMRU5CUVVNc1MwRkJTeXhEUVVGRExGVkJRVlVzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZETlVJc1EwRkJRenRKUVVOR0xFbEJRVWtzUTBGQlF5eG5Ra0ZCWjBJc1EwRkJReXhOUVVGTkxFVkJRVVVzUTBGQlF6dFJRVU0zUWl4SFFVRkhMRU5CUVVNc1NVRkJTU3hEUVVOT0xIRkZRVUZ4UlN4RFFVTjBSU3hEUVVGRE8xRkJRMFlzVDBGQlR6dEpRVU5VTEVOQlFVTTdTVUZGUkN4TFFVRkxMRlZCUVZVc1QwRkJUeXhEUVVGRExGVkJRWEZDTzFGQlF6RkRMRTFCUVUwc1NVRkJTU3hIUVV0S0xFMUJRVTBzVDBGQlR5eERRVUZETEVkQlFVY3NRMEZEY2tJc1owSkJRV2RDTEVOQlFVTXNSMEZCUnl4RFFVRkRMRXRCUVVzc1JVRkJSU3hMUVVGTExFVkJRVVVzUlVGQlJUdFpRVU51UXl4TlFVRk5MRk5CUVZNc1IwRkJSeXhMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMWxCUTNwRExFMUJRVTBzVlVGQlZTeEhRVUZITEV0QlFVc3NRMEZCUXl4VlFVRlZMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03V1VGRk0wTXNUMEZCVHl4RFFVRkRMRWRCUVVjc1EwRkJReXhUUVVGVExFTkJRVU1zUTBGQlF6dFpRVU4yUWl4TlFVRk5MRmRCUVZjc1IwRkJkMElzUlVGQlJTeERRVUZETzFsQlF6VkRMRXRCUVVzc1RVRkJUU3hIUVVGSExFbEJRVWtzVlVGQlZTeEpRVUZKTEUxQlFVMHNTVUZCU1N4RlFVRkZMRVZCUVVVc1EwRkJRenRuUWtGRE4wTXNWMEZCVnl4RFFVRkRMRWRCUVVjc1EwRkJReXhIUVVGSExFMUJRVTBzWVVGQllTeERRVU53UXl4TFFVRkxMRVZCUTB3c1EwRkJReXhIUVVGSExFVkJRVVVzVTBGQlV5eERRVUZETEVWQlEyaENMRVZCUVVVN1owSkJRMFlzU1VGQlNUdG5Ra0ZEU2l4NVJFRkJlVVE3WjBKQlEzcEVMREpFUVVFeVJEdG5Ra0ZETTBRc1MwRkJTenRuUWtGRFRDeERRVUZETEVOQlFVTXNWVUZCVlN4RFFVTmlMRU5CUVVNN1dVRkRTaXhEUVVGRE8xbEJSVVFzU1VGQlNTeG5Ra0ZCWjBJc1IwRkJhME1zVTBGQlV5eERRVUZETzFsQlJXaEZMRWxCUVVrc1ZVRkJWU3hGUVVGRkxFTkJRVU03WjBKQlEyWXNWMEZCVnl4RFFVRkRMRk5CUVZNc1EwRkJReXhIUVVGSExGZEJRVmNzUTBGQlF5eFRRVUZUTEVOQlFVTXNTVUZCU1N4RlFVRkZMRU5CUVVNN1owSkJRM1JFTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1YwRkJWeXhEUVVGRExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNSMEZCVnl4RlFVRkZMRVZCUVVVN2IwSkJReTlETEZkQlFWY3NRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJReXhSUVVGUkxFZEJRVWNzVjBGQlZ5eERRVU16UXl4SFFVRkhMRU5CUTBvc1EwRkJReXhSUVVGUkxFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCVFN4RlFVRkZMRVZCUVVVN2QwSkJRelZDTEVsQlFVa3NRMEZCUXl4RFFVRkRMRWxCUVVrc1MwRkJUU3hWUVVGVkxFTkJRVU1zVVVGQmJVSTdORUpCUVVVc1QwRkJUeXhKUVVGSkxFTkJRVU03ZDBKQlF6VkVMR2RDUVVGblFpeEhRVUZITEVOQlFWRXNRMEZCUXp0M1FrRkROVUlzVDBGQlR5eExRVUZMTEVOQlFVTTdiMEpCUTJZc1EwRkJReXhEUVVGRExFTkJRVU03WjBKQlEwd3NRMEZCUXl4RFFVRkRMRU5CUVVNN1dVRkRUQ3hEUVVGRE8xbEJSVVFzVFVGQlRTeGhRVUZoTEVkQlFVY3NUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhYUVVGWExFTkJRVU03YVVKQlF6ZERMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRkZCUVZFc1EwRkJRenRwUWtGRGRFSXNTVUZCU1N4RlFVRkZMRU5CUVVNc1RVRkJUU3hEUVVGRE8xbEJRMnBDTEVsQlFVa3NZVUZCWVR0blFrRkRaaXhIUVVGSE8zRkNRVU5CTEVkQlFVY3NRMEZCUXl4TFFVRkxMRU5CUVVNc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzNGQ1FVTXpRaXhKUVVGSkxFTkJRVU1zVTBGQlV5eGhRVUZoTEdkRFFVRm5ReXhEUVVGRExFTkJRVU03V1VGRGJFVXNUVUZCVFN4WFFVRlhMRWRCUVVjc1RVRkJUU3hEUVVGRExFMUJRVTBzUTBGQlF5eFhRVUZYTEVOQlFVTTdhVUpCUXpORExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRExFMUJRVTBzUTBGQlF6dHBRa0ZEY0VJc1NVRkJTU3hGUVVGRkxFTkJRVU1zVFVGQlRTeERRVUZETzFsQlJXcENMRWRCUVVjN2FVSkJRMEVzUjBGQlJ5eERRVUZETEV0QlFVc3NRMEZCUXl4VFFVRlRMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03YVVKQlF6TkNMRWxCUVVrc1EwRkJReXhUUVVGVExGZEJRVmNzSzBKQlFTdENMRU5CUVVNc1EwRkJRenRaUVVNM1JDeEpRVUZKTEdkQ1FVRm5RanRuUWtGRGJFSXNSMEZCUnp0eFFrRkRRU3hIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenR4UWtGRE0wSXNTVUZCU1N4RFFVTklMQ3RDUVVFclFpeFZRVUZWTEVWQlFVVXNVVUZCYTBJc1JVRkJSU3hEUVVOb1JTeERRVUZETzFsQlJVNHNUVUZCVFN4UFFVRlBMRWRCUVVjc1RVRkJUU3hEUVVGRExFMUJRVTBzUTBGQlF5eFhRVUZYTEVOQlFVTTdhVUpCUTNaRExFZEJRVWNzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEZGQlFWRXNTVUZCU1N4RlFVRkZMRU5CUVVNc1JVRkJSU3hIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNTVUZCU1N4RlFVRkZMRU5CUVVNc1EwRkJReXhEUVVGRE8ybENRVU40UkN4SlFVRkpMRVZCUVVVc1EwRkJRenRaUVVOV0xFbEJRVWtzVDBGQlR5eEhRVUY1UWl4RlFVRkZMRU5CUVVNN1dVRkRka01zU1VGQlNTeFZRVUZWTEVkQlFYVkNMRVZCUVVVc1EwRkJRenRaUVVONFF5eEpRVUZKTEU5QlFVOHNRMEZCUXl4TlFVRk5MRVZCUVVVc1EwRkJRenRuUWtGRGJrSXNSMEZCUnp0eFFrRkRRU3hIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenR4UWtGRE0wSXNUMEZCVHl4RFFVRkRMRzlEUVVGdlF5eERRVUZETEVOQlFVTTdaMEpCUTJwRUxFOUJRVThzUjBGQlJ5eHZRa0ZCYjBJc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dG5Ra0ZEZEVNc1IwRkJSenR4UWtGRFFTeEhRVUZITEVOQlFVTXNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkJReXhMUVVGTExFTkJRVU1zUTBGQlF6dHhRa0ZETTBJc1NVRkJTU3hEUVVGRExGTkJRVk1zVDBGQlR5eERRVUZETEUxQlFVMHNWVUZCVlN4RFFVRkRMRU5CUVVNN1owSkJRek5ETEZWQlFWVXNSMEZCUnl4MVFrRkJkVUlzUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0blFrRkROVU1zUjBGQlJ6dHhRa0ZEUVN4SFFVRkhMRU5CUVVNc1MwRkJTeXhEUVVGRExGTkJRVk1zUTBGQlF5eExRVUZMTEVOQlFVTXNRMEZCUXp0eFFrRkRNMElzU1VGQlNTeERRVUZETEZOQlFWTXNWVUZCVlN4RFFVRkRMRTFCUVUwc1kwRkJZeXhEUVVGRExFTkJRVU03V1VGRGNFUXNRMEZCUXp0WlFVTkVMRTlCUVU4N1owSkJRMHdzVDBGQlR6dG5Ra0ZEVUN4VlFVRlZPMmRDUVVOV0xGZEJRVmNzUlVGQlJTeFBRVUZQTzJkQ1FVTndRaXhOUVVGTkxFVkJRVVVzWjBKQlFXZENPMkZCUTNwQ0xFTkJRVU03VVVGRFNpeERRVUZETEVOQlFVTXNRMEZEU0N4RFFVRkRPMUZCUTBZc1QwRkJUeXhKUVVGSkxFTkJRVU03U1VGRFpDeERRVUZETzBsQlJVUXNUVUZCVFN4SlFVRkpMRWRCUVVjc1RVRkJUU3hQUVVGUExFVkJRVVVzUTBGQlF6dEpRVU0zUWl4TlFVRk5MRlZCUVZVc1IwRkJSeXhOUVVGTkxFOUJRVThzUTBGQlF5eERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkZPVU1zVFVGQlRTeGhRVUZoTEVkQlFVYzdVVUZEY0VJc1IwRkJSeXhWUVVGVkxFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNUVUZCVFN4RFFVRkRPMUZCUXpGRUxFZEJRVWNzU1VGQlNTeERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEZkQlFWY3NRMEZCUXl4RFFVRkRMRWxCUVVrc1JVRkJSVHRSUVVONFF5eEhRVUZITEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJTeERRVUZETEVOQlFVTXNRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhIUVVGSExFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU03UzBGRE9VSXNRMEZCUXp0SlFVVjZRaXhOUVVGTkxHdENRVUZyUWl4SFFVRkhPMUZCUTNwQ0xFZEJRVWNzU1VGQlNTeEhRVUZITEVOQlExSXNZVUZCWVN4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFbEJRWFZDTEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUlVGQlJTeEpRVUZKTEVOQlFVTXNRMEZCUXl4RFFVTnNSU3hEUVVGRExFMUJRVTBzUlVGQlJUdExRVU5ZTEVOQlFVTTdTVUZGUml4SlFVRkpMR3RDUVVGclFpeERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRPMUZCUXpsQ0xHZENRVUZuUWl4RFFVRkRMR3RDUVVGclFpeEZRVUZGTEUxQlFVMHNRMEZCUXl4RFFVRkRPMUZCUXpkRExFMUJRVTBzY1VKQlFYRkNMRWRCUVVjc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGRGNrTXNUVUZCVFN4RlFVTk9MRlZCUVZVc1JVRkRWaXg1UWtGQmVVSXNRMEZETVVJc1EwRkJRenRSUVVOR0xFMUJRVTBzZVVKQlFYbENMRWRCUVVjc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGRGVrTXNUVUZCVFN4RlFVTk9MSGxDUVVGNVFpeERRVU14UWl4RFFVRkRPMUZCUTBZc1JVRkJSU3hEUVVGRExGbEJRVmtzUTBGQlF5eHhRa0ZCY1VJc1JVRkJSU3g1UWtGQmVVSXNRMEZCUXl4RFFVRkRPMUZCUTJ4RkxFZEJRVWNzUTBGQlF5eEpRVUZKTEVOQlEwNHNWVUZCVlN4aFFVRmhMRU5CUVVNc1RVRkJUU3h0UWtGQmJVSXNjVUpCUVhGQ0xFVkJRVVVzUTBGRGVrVXNRMEZCUXp0UlFVTkdMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRMDRzWjBOQlFXZERMSGxDUVVGNVFpdzJRa0ZCTmtJc1EwRkRka1lzUTBGQlF6dFJRVVZHTEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1EwRkJReXhEUVVGRExFVkJRVVVzUlVGQlJUdFpRVU5xUWl4TlFVRk5MRVZCUVVVc1QwRkJUeXhGUVVGRkxGVkJRVlVzUlVGQlJTeFhRVUZYTEVWQlFVVXNUVUZCVFN4RlFVRkZMRWRCUVVjc1EwRkJReXhEUVVGRE8xbEJRM1pFTEUxQlFVMHNUMEZCVHl4SFFVRjNRaXhEUVVGRExFZEJRVWNzVjBGQlZ5eEZRVUZGTEUxQlFVMHNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkRiRVVzVDBGQlR5eERRVU5sTEVOQlFVTTdXVUZEZWtJc1QwRkJUeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZETEVOQlFVTXNSVUZCUlN4RlFVRkZPMmRDUVVOd1FpeFpRVUZaTEVOQlFVTXNUMEZCVHl4RlFVRkZMRTFCUVUwc1JVRkJSU3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTTdaMEpCUTNSRExIbENRVUY1UWl4RFFVRkRMRlZCUVZVc1NVRkJTU3hGUVVGRkxFVkJRVVVzVFVGQlRTeEZRVUZGTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1EwRkJRenRuUWtGRE5VUXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkRUaXhWUVVGVkxFOUJRVThzUlVGQlJTeE5RVUZOTEVsQlFVa3NRMEZCUXl4blFrRkJaMElzVlVGQlZTeEZRVUZGTEUxQlFVMHNTVUZCU1N4RFFVRkRMRGhDUVVFNFFpeERRVUZETEVOQlFVTXNTVUZCU1N4RlFVRkZMRU5CUXpWSExFTkJRVU03V1VGRFNpeERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTk1MRU5CUVVNc1EwRkJReXhEUVVGRE8wbEJRMHdzUTBGQlF6dEJRVU5JTEVOQlFVTXNRMEZCUXl4RFFVRkRPMEZCUlV3c1RVRkJUU3hYUVVGWExFZEJRVWNzU1VGQlNTeFBRVUZQTEVWQlFVVTdTMEZET1VJc1NVRkJTU3hEUVVGRExHRkJRV0VzUTBGQlF6dExRVU51UWl4WFFVRlhMRU5CUVVNc2JVUkJRVzFFTEVOQlFVTTdTMEZEYUVVc1RVRkJUU3hEUVVOTUxITkNRVUZ6UWl4RlFVTjBRaXh0UkVGQmJVUXNSVUZEYmtRc2JVSkJRVzFDTEVOQlEzQkNPMHRCUTBFc1RVRkJUU3hEUVVGRExHOUNRVUZ2UWl4RlFVRkZMSFZEUVVGMVF5eEZRVUZGTEUxQlFVMHNRMEZCUXp0TFFVTTNSU3hOUVVGTkxFTkJRVU1zY1VKQlFYRkNMRVZCUVVVc2NVTkJRWEZETEVWQlFVVXNTVUZCU1N4RFFVRkRPMHRCUXpGRkxFMUJRVTBzUTBGQlF5eExRVUZMTEVWQlFVVXNUMEZCV1N4RlFVRkZMRVZCUVVVN1NVRkROMElzVFVGQlRTeEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkRjRUlzUlVGQlJTeERRVUZETEZsQlFWa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eEhRVUZITEVWQlFVVXNSVUZCUlN4alFVRmpMRU5CUVVNc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGRGJrVXNRMEZCUXp0SlFVVkdMRTFCUVUwc1QwRkJUeXhIUVVGSExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTTdTVUZGTlVJc1RVRkJUU3hIUVVGSExFZEJRVWNzVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4aFFVRmhMRU5CUVVNc1EwRkJRenRKUVVOMFF5eEhRVUZITEVOQlFVTXNTMEZCU3l4RFFVTlFMSGxDUVVGNVFpeEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMRTlCUVU4c1EwRkJReXhSUVVGUkxFZEJRVWNzUTBGQlF5eEpRVUZKTEZsQlFWa3NUMEZCVHl4RlFVRkZMRU5CUTNSR0xFTkJRVU03U1VGRFJpeDNRMEZCZDBNN1NVRkRlRU1zU1VGQlNTeEZRVUZGTEZOQlFWTXNSVUZCUlN4UFFVRlBMRVZCUVVVc1VVRkJVU3hGUVVGRkxFZEJRVWNzVDBGQlR5eERRVUZETzBsQlF5OURMRTlCUVU4c1IwRkJSeXhSUVVGUkxFTkJRVU1zVDBGQlR5eERRVUZETEVsQlFVa3NTVUZCU1N4RFFVRkRPMGxCUTNCRExGRkJRVkVzUjBGQlJ5eFJRVUZSTEVOQlFVTXNVVUZCVVN4RFFVRkRMRWxCUVVrc1JVRkJSU3hEUVVGRE8wbEJSWEJETEUxQlFVMHNNRUpCUVRCQ0xFTkJRVU1zYlVKQlFXMUNMRVZCUVVVc1QwRkJUeXhGUVVGRkxGRkJRVkVzUTBGQlF5eERRVUZETzBsQlJYcEZMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRMDRzT0VSQlFUaEVMRk5CUVZNc1NVRkJTU3hEUVVNMVJTeERRVUZETzBGQlEwb3NRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkZUQ3hOUVVGTkxHTkJRV01zUjBGQlJ5eEpRVUZKTEU5QlFVOHNSVUZCUlR0TFFVTnFReXhKUVVGSkxFTkJRVU1zYVVKQlFXbENMRU5CUVVNN1MwRkRka0lzVjBGQlZ5eERRVUZETEN0Q1FVRXJRaXhEUVVGRE8wdEJRelZETEUxQlFVMHNRMEZCUXl4cFFrRkJhVUlzUlVGQlJTdzBRa0ZCTkVJc1EwRkJRenRMUVVOMlJDeE5RVUZOTEVOQlFVTXNhMEpCUVd0Q0xFVkJRVVVzWTBGQll5eERRVUZETzB0QlF6RkRMRTFCUVUwc1EwRkRUQ3dyUWtGQkswSXNSVUZETDBJc2EwVkJRV3RGTEVOQlEyNUZPMHRCUTBFc1RVRkJUU3hEUVVOTUxEWkNRVUUyUWl4RlFVTTNRaXh6UlVGQmMwVXNSVUZEZEVVc1MwRkJTeXhEUVVOT08wdEJRMEVzVFVGQlRTeERRVU5NTERCQ1FVRXdRaXhGUVVNeFFpdzBSVUZCTkVVc1JVRkROVVVzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhGUVVGRkxFVkJRVVVzVDBGQlR5eEZRVUZGTEdGQlFXRXNSVUZCUlN4dFFrRkJiVUlzUTBGQlF5eERRVU4wUlR0TFFVTkJMRTFCUVUwc1EwRkRUQ3hyUWtGQmEwSXNSVUZEYkVJc01FSkJRVEJDTEVWQlF6RkNMSGREUVVGM1F5eERRVU42UXp0TFFVTkJMRTFCUVUwc1EwRkJReXhMUVVGTExFVkJRVVVzVDBGQldTeEZRVUZGTEVWQlFVVTdTVUZETjBJc1RVRkJUU3hIUVVGSExFZEJRVWNzU1VGQlNTeERRVUZETEV0QlFVc3NRMEZEY0VJc1JVRkJSU3hEUVVGRExGbEJRVmtzUTBGQlF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4RFFVRkRMRTlCUVU4c1EwRkJReXhIUVVGSExFVkJRVVVzUlVGQlJTeGpRVUZqTEVOQlFVTXNSVUZCUlN4UFFVRlBMRU5CUVVNc1EwRkRia1VzUTBGQlF6dEpRVVZHTEUxQlFVMHNUMEZCVHl4SFFVRkhMRWRCUVVjc1EwRkJReXhQUVVGUExFTkJRVU03U1VGRk5VSXNUVUZCVFN4SFFVRkhMRWRCUVVjc1RVRkJUU3hEUVVGRExFZEJRVWNzUTBGQlF5eHBRa0ZCYVVJc1EwRkJReXhEUVVGRE8wbEJRekZETEVkQlFVY3NRMEZCUXl4TFFVRkxMRU5CUTFBc2VVSkJRWGxDTEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1QwRkJUeXhEUVVGRExGRkJRVkVzUjBGQlJ5eERRVUZETEVsQlFVa3NXVUZCV1N4UFFVRlBMRVZCUVVVc1EwRkRkRVlzUTBGQlF6dEpRVVZHTEUxQlFVMHNSVUZEU2l4SlFVRkpMRVZCUTBvc1MwRkJTeXhGUVVOTUxFdEJRVXNzUlVGRFRDeGhRVUZoTzBsQlEySXNOa1JCUVRaRU8wbEJRemRFTEdkQ1FVRm5RaXhGUVVOb1FpeHBRa0ZCYVVJc1IwRkRiRUlzUjBGQlJ5eFBRVUZQTEVOQlFVTTdTVUZEV2l4TlFVRk5MRTlCUVU4c1IwRkJSeXhMUVVGTExFTkJRVU1zUzBGQlN5eERRVUZETEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUldwRExFMUJRVTBzVTBGQlV5eEhRVUZITEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eGhRVUZoTEVWQlFVVXNSMEZCUnl4SlFVRkpMRkZCUVZFc1EwRkJReXhEUVVGRExFTkJRVU03U1VGRk1VVXNTVUZCU1N4UlFVRm5RaXhEUVVGRE8wbEJSWEpDTEVsQlFVa3NRMEZCUXp0UlFVTklMRkZCUVZFc1IwRkJSeXhSUVVGUkxFTkJRVU1zUlVGQlJTeERRVUZETEZsQlFWa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1EwRkJReXhSUVVGUkxFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTnNSU3hKUVVGSkxFdEJRVXNzUTBGQlF5eFJRVUZSTEVOQlFVTTdXVUZCUlN4UlFVRlJMRWRCUVVjc1EwRkJReXhEUVVGRE96dFpRVU0zUWl4UlFVRlJMRWxCUVVrc1EwRkJReXhEUVVGRE8xRkJRMjVDTERaRVFVRTJSRHRKUVVNdlJDeERRVUZETzBsQlFVTXNUMEZCVHl4RFFVRlZMRVZCUVVVc1EwRkJRenRSUVVOd1FpeFJRVUZSTEVkQlFVY3NRMEZCUXl4RFFVRkRPMGxCUTJZc1EwRkJRenRKUVVORUxFVkJRVVU3U1VGRFJpd3dRa0ZCTUVJN1NVRkRNVUlzZDBOQlFYZERPMGxCUTNoRExIRkNRVUZ4UWp0SlFVTnlRaXhKUVVGSk8wbEJSVW9zU1VGQlNTeERRVUZETzFGQlEwZ3NTMEZCU3l4TlFVRk5MRWxCUVVrc1NVRkJTU3hQUVVGUExFVkJRVVVzUTBGQlF6dFpRVU16UWl4bFFVRmxMRU5CUVVNc1NVRkJTU3hGUVVGRkxFdEJRVXNzUlVGQlJTeEpRVUZKTEVWQlFVVXNUMEZCVHl4RFFVRkRMRU5CUVVNN1dVRkROVU1zWlVGQlpTeERRVUZETEVsQlFVa3NSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkJRenRaUVVNMVFpeGxRVUZsTEVOQlEySXNTVUZCU1N4RlFVTktMRWxCUVVrc1JVRkRTaXhKUVVGSkxFdEJRVXNzWTBGQll6dG5Ra0ZEY2tJc1EwRkJReXhEUVVGRExHbENRVUZwUWp0blFrRkRia0lzUTBGQlF5eERRVUZETEhsQ1FVRjVRaXhGUVVNM1FpeFJRVUZSTEVWQlExSXNUMEZCVHl4RlFVTlFMR2xDUVVGcFFpeERRVU5zUWl4RFFVRkRPMUZCUTBvc1EwRkJRenRSUVVORUxFVkJRVVVzUTBGQlF5eGhRVUZoTEVOQlFVTXNVMEZCVXl4RlFVRkZMRkZCUVZFc1EwRkJReXhSUVVGUkxFVkJRVVVzUTBGQlF5eERRVUZETzBsQlEyNUVMRU5CUVVNN1NVRkJReXhQUVVGUExFZEJRVkVzUlVGQlJTeERRVUZETzFGQlEyeENMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRVU1zTWtKQlFUSkNMRVZCUVVVc1IwRkJSeXhEUVVGRExFTkJRVU03U1VGRE9VTXNRMEZCUXp0SlFVTkVMR1ZCUVdVc1EwRkJReXhKUVVGSkxFVkJRVVVzVVVGQlVTeEZRVUZGTEU5QlFVOHNSVUZCUlN4cFFrRkJhVUlzUTBGQlF5eERRVUZETzBGQlF6bEVMRU5CUVVNc1EwRkJReXhEUVVGRE8wRkJSVXdzVFVGQlRTeHBRa0ZCYVVJc1IwRkJSeXhKUVVGSkxFOUJRVThzUlVGQlJUdExRVU53UXl4SlFVRkpMRU5CUVVNc2NVSkJRWEZDTEVOQlFVTTdTMEZETTBJc1YwRkJWeXhEUVVGRExHMUVRVUZ0UkN4RFFVRkRPMHRCUTJoRkxFMUJRVTBzUTBGQlF5eHRRa0ZCYlVJc1JVRkJSU3hsUVVGbExFVkJRVVVzYjBKQlFXOUNMRU5CUVVNN1MwRkRiRVVzVFVGQlRTeERRVUZETEdkQ1FVRm5RaXhGUVVGRkxEaENRVUU0UWl4RlFVRkZMRTlCUVU4c1EwRkJRenRMUVVOcVJTeE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRTlCUVZrc1JVRkJSU3hGUVVGRk8wbEJRemRDTEUxQlFVMHNSMEZCUnl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRM0JDTEVWQlFVVXNRMEZCUXl4WlFVRlpMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4RlFVRkZMRVZCUVVVc1kwRkJZeXhEUVVGRExFVkJRVVVzVDBGQlR5eERRVUZETEVOQlEyNUZMRU5CUVVNN1NVRkZSaXhOUVVGTkxFOUJRVThzUjBGQlJ5eEhRVUZITEVOQlFVTXNUMEZCVHl4RFFVRkRPMGxCUlRWQ0xFMUJRVTBzUjBGQlJ5eEhRVUZITEUxQlFVMHNRMEZCUXl4SFFVRkhMRU5CUVVNc2NVSkJRWEZDTEVOQlFVTXNRMEZCUXp0SlFVTTVReXhIUVVGSExFTkJRVU1zUzBGQlN5eERRVU5RTEhsQ1FVRjVRaXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEU5QlFVOHNRMEZCUXl4UlFVRlJMRWRCUVVjc1EwRkJReXhKUVVGSkxGbEJRVmtzVDBGQlR5eEZRVUZGTEVOQlEzUkdMRU5CUVVNN1NVRkRSaXhOUVVGTkxFVkJRVVVzVFVGQlRTeEZRVUZGTEVkQlFVY3NSVUZCUlN4SFFVRkhMRTlCUVU4c1EwRkJRenRKUVVOb1F5eFJRVUZSTEVOQlFVTXNZVUZCWVN4SFFVRkhMSEZDUVVGeFFpeE5RVUZOTEVWQlFVVXNSVUZCUlR0UlFVTjBSQ3hIUVVGSExFVkJRVVVzVDBGQlR5eERRVUZETEVkQlFVY3NSVUZCUlR0TFFVTnVRaXhEUVVGRExFTkJRVU03UVVGRFRDeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVVk1MRTFCUVUwc1UwRkJVeXhIUVVGSExFbEJRVWtzVDBGQlR5eEZRVUZGTzB0QlF6VkNMRWxCUVVrc1EwRkJReXhaUVVGWkxFTkJRVU03UzBGRGJFSXNUMEZCVHl4RFFVRkRMRkZCUVZFc1EwRkJRenRMUVVOcVFpeFhRVUZYTEVOQlExWXNiVVZCUVcxRkxFTkJRM0JGTEVOQlFVTTdRVUZGU2l4VFFVRlRMRU5CUVVNc1ZVRkJWU3hEUVVGRExHTkJRV01zUTBGQlF5eERRVUZETzBGQlEzSkRMRk5CUVZNc1EwRkJReXhWUVVGVkxFTkJRVU1zWTBGQll5eERRVUZETEVOQlFVTTdRVUZEY2tNc1UwRkJVeXhEUVVGRExGVkJRVlVzUTBGQlF5eFhRVUZYTEVOQlFVTXNRMEZCUXp0QlFVTnNReXhUUVVGVExFTkJRVU1zVlVGQlZTeERRVUZETEdOQlFXTXNRMEZCUXl4RFFVRkRPMEZCUTNKRExGTkJRVk1zUTBGQlF5eFZRVUZWTEVOQlFVTXNhVUpCUVdsQ0xFTkJRVU1zUTBGQlF6dEJRVU40UXl4VFFVRlRMRU5CUVVNc1ZVRkJWU3hEUVVGRExHdENRVUZyUWl4RFFVRkRMRU5CUVVNN1FVRkZla01zVFVGQlRTeERRVUZETEU5QlFVOHNWVUZCVlN4TlFVRk5PMGxCUXpWQ0xFOUJRVThzVTBGQlV5eERRVUZETzBGQlEyNUNMRU5CUVVNaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SnBiWEJ2Y25RZ2V5QkRiMjF0WVc1a0lIMGdabkp2YlNCY0ltTnZiVzFoYm1SbGNsd2lPMXh1YVcxd2IzSjBJSHNnVEc5bloybHVaeXdnZEc5UVlYTmpZV3hEWVhObElIMGdabkp2YlNCY0lrQmtaV05oWmkxMGN5OXNiMmRuYVc1blhDSTdYRzVwYlhCdmNuUWdleUJsZUdWalUzbHVZeUI5SUdaeWIyMGdYQ0pqYUdsc1pGOXdjbTlqWlhOelhDSTdYRzVwYlhCdmNuUWdabk1nWm5KdmJTQmNJbVp6WENJN1hHNXBiWEJ2Y25RZ2NHRjBhQ0JtY205dElGd2ljR0YwYUZ3aU8xeHVhVzF3YjNKMElIc2dVR3gxWjJsdUxDQnliMnhzZFhBZ2ZTQm1jbTl0SUZ3aWNtOXNiSFZ3WENJN1hHNXBiWEJ2Y25RZ2NtVndiR0ZqWlNCbWNtOXRJRndpUUhKdmJHeDFjQzl3YkhWbmFXNHRjbVZ3YkdGalpWd2lPMXh1YVcxd2IzSjBJSHNnU1c1MFpYSnVZV3hGY25KdmNpd2dVMlZ5YVdGc2FYcGhkR2x2YmtWeWNtOXlJSDBnWm5KdmJTQmNJa0JrWldOaFppMTBjeTlrWWkxa1pXTnZjbUYwYjNKelhDSTdYRzVwYlhCdmNuUWdlMXh1SUNCblpXNWxjbUYwWlUxdlpHVnNSR1Z6YVdkdVJHOWpjeXhjYmlBZ1oyVnVaWEpoZEdWTmIyUmxiRWx1WkdWNFpYTXNYRzRnSUhKbFlXUk5iMlJsYkVacGJHVXNYRzRnSUhKbFlXUk5iMlJsYkVadmJHUmxjbk1zWEc0Z0lIZHlhWFJsUkdWemFXZHVSRzlqY3l4Y2JpQWdkM0pwZEdWSmJtUmxlR1Z6TEZ4dWZTQm1jbTl0SUZ3aUxpOWpiR2xsYm5RdmFXNWtaWGhsYzF3aU8xeHVhVzF3YjNKMElIc2dUVzlrWld3Z2ZTQm1jbTl0SUZ3aVFHUmxZMkZtTFhSekwyUmxZMjl5WVhSdmNpMTJZV3hwWkdGMGFXOXVYQ0k3WEc1cGJYQnZjblFnZTF4dUlDQmhjSEJ5YjNabFEyOXVkSEpoWTNRc1hHNGdJR1Z1YzNWeVpVbHVabkpoYzNSeWRXTjBkWEpsUW05dmRHVmtMRnh1SUNCcGJuTjBZV3hzUTI5dWRISmhZM1FzWEc0Z0lIQmhZMnRoWjJWRGIyNTBjbUZqZEN4Y2JpQWdZMjl0YldsMFEyaGhhVzVqYjJSbExGeHVJQ0JuWlhSRGIyNTBjbUZqZEZOMFlYSjBRMjl0YldGdVpDeGNiaUFnWTI5dGNHbHNaVmRwZEdoVWMyTnZibVpwWjA5MlpYSnlhV1JsY3l4Y2JuMGdabkp2YlNCY0lpNHZZMnhwTFhWMGFXeHpYQ0k3WEc1cGJYQnZjblFnWENJdUwzTm9ZWEpsWkM5dmRtVnljbWxrWlhOY0lqdGNibWx0Y0c5eWRDQjBjeUJtY205dElGd2lkSGx3WlhOamNtbHdkRndpTzF4dWFXMXdiM0owSUh0Y2JpQWdaWGgwY21GamRFTnZiR3hsWTNScGIyNXpJR0Z6SUdWNFEyOXNiR1ZqZEdsdmJuTXNYRzRnSUZCeWFYWmhkR1ZEYjJ4c1pXTjBhVzl1TEZ4dUlDQjNjbWwwWlVOdmJHeGxZM1JwYjI1ekxGeHVJQ0IzY21sMFpVTnZiR3hsWTNScGIyNUVaWE5wWjI1RWIyTnpMRnh1ZlNCbWNtOXRJRndpTGk5amJHbGxiblF2WTI5c2JHVmpkR2x2Ym5NdmFXNWtaWGhjSWp0Y2JtbHRjRzl5ZENCN0lFTnZkV05vUkVKRVpYTnBaMjVFYjJNc0lFTnlaV0YwWlVsdVpHVjRVbVZ4ZFdWemRDQjlJR1p5YjIwZ1hDSkFaR1ZqWVdZdGRITXZabTl5TFdOdmRXTm9aR0pjSWp0Y2JseHVZMjl1YzNRZ2JHOW5aMlZ5SUQwZ1RHOW5aMmx1Wnk1bWIzSW9YQ0ptWVdKeWFXTmNJaWs3WEc1Y2JtWjFibU4wYVc5dUlISmxjMjlzZG1WQ2RXNWtiR1ZrU25OSmJYQnZjblJ6S0NrNklGQnNkV2RwYmlCN1hHNGdJSEpsZEhWeWJpQjdYRzRnSUNBZ2JtRnRaVG9nWENKeVpYTnZiSFpsTFdKMWJtUnNaV1F0YW5NdGFXMXdiM0owYzF3aUxGeHVJQ0FnSUhKbGMyOXNkbVZKWkNoemIzVnlZMlVzSUdsdGNHOXlkR1Z5S1NCN1hHNGdJQ0FnSUNCcFppQW9JV2x0Y0c5eWRHVnlJSHg4SUNGemIzVnlZMlV1YzNSaGNuUnpWMmwwYUNoY0lpNWNJaWtwSUh0Y2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUc1MWJHdzdYRzRnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJR052Ym5OMElISmxjMjlzZG1Wa1VHRjBhQ0E5SUhCaGRHZ3VjbVZ6YjJ4MlpTaHdZWFJvTG1ScGNtNWhiV1VvYVcxd2IzSjBaWElwTENCemIzVnlZMlVwTzF4dUlDQWdJQ0FnWTI5dWMzUWdZMkZ1Wkdsa1lYUmxjeUE5SUZ0Y2JpQWdJQ0FnSUNBZ2NtVnpiMngyWldSUVlYUm9MRnh1SUNBZ0lDQWdJQ0JnSkh0eVpYTnZiSFpsWkZCaGRHaDlMbXB6WUN4Y2JpQWdJQ0FnSUNBZ2NHRjBhQzVxYjJsdUtISmxjMjlzZG1Wa1VHRjBhQ3dnWENKcGJtUmxlQzVxYzF3aUtTeGNiaUFnSUNBZ0lGMDdYRzVjYmlBZ0lDQWdJR1p2Y2lBb1kyOXVjM1FnWTJGdVpHbGtZWFJsSUc5bUlHTmhibVJwWkdGMFpYTXBJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tHWnpMbVY0YVhOMGMxTjVibU1vWTJGdVpHbGtZWFJsS1NBbUppQm1jeTV6ZEdGMFUzbHVZeWhqWVc1a2FXUmhkR1VwTG1selJtbHNaU2dwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlHTmhibVJwWkdGMFpUdGNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0J5WlhSMWNtNGdiblZzYkR0Y2JpQWdJQ0I5TEZ4dUlDQjlPMXh1ZlZ4dVhHNWpiMjV6ZENCamIyMXdhV3hsUTI5dGJXRnVaQ0E5SUc1bGR5QkRiMjF0WVc1a0tDbGNiaUFnTG01aGJXVW9YQ0pqYjIxd2FXeGxMV052Ym5SeVlXTjBYQ0lwWEc0Z0lDNWtaWE5qY21sd2RHbHZiaWhjSWtOeVpXRjBaWE1nWVNCbmJHOWlZV3dnWTI5dWRISmhZM1JjSWlsY2JpQWdMbTl3ZEdsdmJpaGNJaTB0WkdWMlhDSXNJRndpWTI5dGNHbHNaWE1nWTI5dWRISmhZM1J6SUhkcGRHaHZkWFFnYldsdWFXWnBZMkYwYVc5dVhDSXNJR1poYkhObEtWeHVJQ0F1YjNCMGFXOXVLRndpTFMxa1pXSjFaMXdpTENCY0ltMWhhMlZ6SUdGMGRHRmphR2x1WnlCa1pXSjFaMmRsY2lCd2IzTnphV0pzWlZ3aUxDQm1ZV3h6WlNsY2JpQWdMbTl3ZEdsdmJpaGNiaUFnSUNCY0lpMHRZMk5oWVhOY0lpeGNiaUFnSUNCY0lrRnFkWE4wY3lCMGFHVWdjR0ZqYTJGblpTQmpiMjF0WVc1a2N5QjBieUJpWlNCa1pYQnNiM2xsWkNCaGN5QmpZMkZoYzF3aUxGeHVJQ0FnSUdaaGJITmxYRzRnSUNsY2JpQWdMbTl3ZEdsdmJpaGNJaTB0Ym1GdFpTQThVM1J5YVc1blBsd2lMQ0JjSW1OdmJuUnlZV04wSUc1aGJXVmNJaXdnWENKbmJHOWlZV3d0WTI5dWRISmhZM1JjSWlsY2JpQWdMbTl3ZEdsdmJpaGNJaTB0WW5WdVpHeGxYQ0lzSUZ3aVFuVnVaR3hsY3lCM2FYUm9JSEp2Ykd4MWNDQnBibk4wWldGa0lHOW1JSFZ6YVc1bklIUnpZMXdpTENCbVlXeHpaU2xjYmlBZ0xtOXdkR2x2YmloY2JpQWdJQ0JjSWkwdGRITXRZMjl1Wm1sbkxXWnBiR1VnUEhOMGNtbHVaejVjSWl4Y2JpQWdJQ0JjSW5KbGJHRjBhWFpsSUhCaGRHZ2dkRzhnZEdobElIUnpJR052Ym1acFp5Qm1hV3hsSUdKaGMyVmtJRzl1SUdOM1pDQnZjaUJoWW5OdmJIVjBaU0J3WVhSb1hDSXNYRzRnSUNBZ1hDSXVMM1J6WTI5dVptbG5MbXB6YjI1Y0lseHVJQ0FwWEc0Z0lDNXZjSFJwYjI0b1hHNGdJQ0FnWENJdExXUmxjMk55YVhCMGFXOXVJRHhUZEhKcGJtYytYQ0lzWEc0Z0lDQWdYQ0pqYjI1MGNtRmpkQ0JrWlhOamNtbHdkR2x2Ymx3aUxGeHVJQ0FnSUZ3aVIyeHZZbUZzSUdOdmJuUnlZV04wSUdsdGNHeGxiV1Z1ZEdGMGFXOXVYQ0pjYmlBZ0tWeHVJQ0F1YjNCMGFXOXVLRndpTFMxemRISnBjQzFqYjI1MGNtRmpkQzF1WVcxbFhDSXNJRndpYzNSeWFYQWdZMjl1ZEhKaFkzUWdibUZ0WlNCbWNtOXRJRzkxZEhCMWRGd2lMQ0JtWVd4elpTbGNiaUFnTG05d2RHbHZiaWhjSWkwdGFXNXdkWFFnUEZOMGNtbHVaejVjSWl3Z1hDSnBibkIxZENCbWIyeGtaWElnWm05eUlHTnZiblJ5WVdOMGMxd2lMQ0JjSW14cFlpOWpiMjUwY21GamRITmNJaWxjYmlBZ0xtOXdkR2x2YmloY0lpMHRiM1YwY0hWMElEeFRkSEpwYm1jK1hDSXNJRndpYjNWMGNIVjBJR1p2YkdSbGNpQm1iM0lnWTI5dWRISmhZM1J6WENJc0lGd2lMaTlqYjI1MGNtRmpkSE5jSWlsY2JpQWdMbTl3ZEdsdmJpaGNJaTB0YzI5MWNtTmxiV0Z3YzF3aUxDQmNJbWx1WTJ4MVpHVnpJSE52ZFhKalpXMWhjSE1nYVc0Z2RHaGxJR052YlhCcGJHVmtJRzkxZEhCMWRGd2lMQ0JtWVd4elpTbGNiaUFnTG05d2RHbHZiaWhjSWkwdGJuQnRjbU5jSWl3Z1hDSnBibU5zZFdSbGN5QXVibkJ0Y21NZ2FXNGdkR2hsSUdOdmJYQnBiR1ZrSUc5MWRIQjFkRndpTENCbVlXeHpaU2xjYmlBZ0xtRmpkR2x2YmloaGMzbHVZeUFvYjNCMGFXOXVjem9nWVc1NUtTQTlQaUI3WEc0Z0lDQWdZMjl1YzNRZ2NHdG5JRDBnU2xOUFRpNXdZWEp6WlNoY2JpQWdJQ0FnSUdaekxuSmxZV1JHYVd4bFUzbHVZeWh3WVhSb0xtcHZhVzRvY0hKdlkyVnpjeTVqZDJRb0tTd2dYQ0p3WVdOcllXZGxMbXB6YjI1Y0lpa3NJRndpZFhSbUxUaGNJaWxjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdiR1YwSUc1d2JYSmpRMjl1ZEdWdWRDQTlJSFZ1WkdWbWFXNWxaRHRjYmx4dUlDQWdJR052Ym5OMElIWmxjbk5wYjI0Z1BTQndhMmN1ZG1WeWMybHZianRjYmx4dUlDQWdJR3hsZENCN1hHNGdJQ0FnSUNBdkx5QmxjMnhwYm5RdFpHbHpZV0pzWlMxdVpYaDBMV3hwYm1VZ2NISmxabVZ5TFdOdmJuTjBYRzRnSUNBZ0lDQmtaWFlzWEc0Z0lDQWdJQ0F2THlCbGMyeHBiblF0WkdsellXSnNaUzF1WlhoMExXeHBibVVnY0hKbFptVnlMV052Ym5OMFhHNGdJQ0FnSUNCa1pXSjFaeXhjYmlBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0J3Y21WbVpYSXRZMjl1YzNSY2JpQWdJQ0FnSUc1aGJXVXNYRzRnSUNBZ0lDQXZMeUJsYzJ4cGJuUXRaR2x6WVdKc1pTMXVaWGgwTFd4cGJtVWdjSEpsWm1WeUxXTnZibk4wWEc0Z0lDQWdJQ0JrWlhOamNtbHdkR2x2Yml4Y2JpQWdJQ0FnSUc5MWRIQjFkQ3hjYmlBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0J3Y21WbVpYSXRZMjl1YzNSY2JpQWdJQ0FnSUdsdWNIVjBMRnh1SUNBZ0lDQWdMeThnWlhOc2FXNTBMV1JwYzJGaWJHVXRibVY0ZEMxc2FXNWxJSEJ5WldabGNpMWpiMjV6ZEZ4dUlDQWdJQ0FnYzNSeWFYQkRiMjUwY21GamRFNWhiV1VzWEc0Z0lDQWdJQ0F2THlCbGMyeHBiblF0WkdsellXSnNaUzF1WlhoMExXeHBibVVnY0hKbFptVnlMV052Ym5OMFhHNGdJQ0FnSUNCalkyRmhjeXhjYmlBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0J3Y21WbVpYSXRZMjl1YzNSY2JpQWdJQ0FnSUdKMWJtUnNaU3hjYmx4dUlDQWdJQ0FnZEhORGIyNW1hV2RHYVd4bExGeHVJQ0FnSUNBZ0x5OGdaWE5zYVc1MExXUnBjMkZpYkdVdGJtVjRkQzFzYVc1bElIQnlaV1psY2kxamIyNXpkRnh1SUNBZ0lDQWdjMjkxY21ObGJXRndjeXhjYmlBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0J3Y21WbVpYSXRZMjl1YzNSY2JpQWdJQ0FnSUc1d2JYSmpMRnh1SUNBZ0lIMGdQU0J2Y0hScGIyNXpPMXh1SUNBZ0lHTnZibk4wSUd4dlp5QTlJR3h2WjJkbGNpNW1iM0lvWENKamIyMXdhV3hsTFdOdmJuUnlZV04wWENJcE8xeHVJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQnBaaUFvYm5CdGNtTXBJSHRjYmlBZ0lDQWdJQ0FnYm5CdGNtTkRiMjUwWlc1MElEMGdTbE5QVGk1d1lYSnpaU2hjYmlBZ0lDQWdJQ0FnSUNCbWN5NXlaV0ZrUm1sc1pWTjVibU1vY0dGMGFDNXFiMmx1S0hCeWIyTmxjM011WTNka0tDa3NJRndpTG01d2JYSmpYQ0lwTENCY0luVjBaaTA0WENJcFhHNGdJQ0FnSUNBZ0lDazdYRzVjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdjbVZ3YkdGalpXUWdQU0J1Y0cxeVkwTnZiblJsYm5RdWNtVndiR0ZqWlNoY2JpQWdJQ0FnSUNBZ0lDQXZYRndrWEZ4N0tGdGVmVjByS1Z4Y2ZTOW5MRnh1SUNBZ0lDQWdJQ0FnSUNoZk9pQmhibmtzSUhaaGNrNWhiV1U2SUhOMGNtbHVaeWtnUFQ0Z2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdkbUZzZFdVZ1BTQndjbTlqWlhOekxtVnVkbHQyWVhKT1lXMWxYVHRjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0haaGJIVmxJRDA5UFNCMWJtUmxabWx1WldRcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ1kyOXVjMjlzWlM1M1lYSnVLRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR0JYWVhKdWFXNW5PaUJGYm5acGNtOXViV1Z1ZENCMllYSnBZV0pzWlNCY0lpUjdkbUZ5VG1GdFpYMWNJaUJwY3lCdWIzUWdjMlYwWUZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdYQ0pjSWp0Y2JpQWdJQ0FnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlIWmhiSFZsTzF4dUlDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdLVHRjYmx4dUlDQWdJQ0FnSUNCdWNHMXlZME52Ym5SbGJuUWdQU0J5WlhCc1lXTmxaRHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlJR05oZEdOb0lIdGNiaUFnSUNBZ0lHeHZaeTVwYm1adktHQk9ieUF1Ym5CdGNtTWdabWxzWlNCbWIzVnVaQ3dnYzJ0cGNIQnBibWNnWTI5d2VXbHVaeUF1Ym5CdGNtTWdkRzhnYjNWMGNIVjBZQ2s3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdiRzluTG1SbFluVm5LRnh1SUNBZ0lDQWdZSEoxYm01cGJtY2dkMmwwYUNCdmNIUnBiMjV6T2lBa2UwcFRUMDR1YzNSeWFXNW5hV1o1S0c5d2RHbHZibk1wZlNCbWIzSWdKSHR3YTJjdWJtRnRaWDBnZG1WeWMybHZiaUFrZTNabGNuTnBiMjU5WUZ4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0IwYzBOdmJtWnBaMFpwYkdVZ1BTQndZWFJvTG1selFXSnpiMngxZEdVb2RITkRiMjVtYVdkR2FXeGxLVnh1SUNBZ0lDQWdQeUIwYzBOdmJtWnBaMFpwYkdWY2JpQWdJQ0FnSURvZ2NHRjBhQzVxYjJsdUtIQnliMk5sYzNNdVkzZGtLQ2tzSUhSelEyOXVabWxuUm1sc1pTazdYRzVjYmlBZ0lDQnZkWFJ3ZFhRZ1BTQnpkSEpwY0VOdmJuUnlZV04wVG1GdFpTQS9JRzkxZEhCMWRDQTZJSEJoZEdndWFtOXBiaWh2ZFhSd2RYUXNJRzVoYldVcE8xeHVJQ0FnSUd4dlp5NXBibVp2S0dCRVpXeGxkR2x1WnlCbGVHbHpkR2x1WnlCdmRYUndkWFFnWm05c1pHVnlJQ2hwWmlCbGVHbHpkSE1wSUhWdVpHVnlJQ1I3YjNWMGNIVjBmV0FwTzF4dUlDQWdJR1Y0WldOVGVXNWpLR0J5YlNBdGNtWWdKSHR2ZFhSd2RYUjlZQ2s3WEc0Z0lDQWdhV1lnS0dKMWJtUnNaU2tnZTF4dUlDQWdJQ0FnYkc5bkxtbHVabThvWUdKMWJtUnNhVzVuSUdOdmJuUnlZV04wSUdaeWIyMGdKSHRwYm5CMWRIMWdLVHRjYmlBZ0lDQWdJR052Ym5OMElIUmxiWEJDZFc1a2JHVkVhWElnUFNCbWN5NXRhMlIwWlcxd1UzbHVZeWhjYmlBZ0lDQWdJQ0FnY0dGMGFDNXFiMmx1S0hCeWIyTmxjM011WTNka0tDa3NJRndpTG1OdmJuUnlZV04wTFdKMWJtUnNaUzFjSWlsY2JpQWdJQ0FnSUNrN1hHNGdJQ0FnSUNCMGNua2dlMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQnBibkIxZEVWdWRISjVJRDBnY0dGMGFDNXlaWE52YkhabEtIQnliMk5sYzNNdVkzZGtLQ2tzSUdsdWNIVjBMQ0JjSW1sdVpHVjRMblJ6WENJcE8xeHVJQ0FnSUNBZ0lDQmpiMjV6ZENCamIyNW1hV2RHYVd4bElEMGdkSE11Y21WaFpFTnZibVpwWjBacGJHVW9kSE5EYjI1bWFXZEdhV3hsTENCMGN5NXplWE11Y21WaFpFWnBiR1VwTzF4dUlDQWdJQ0FnSUNCcFppQW9ZMjl1Wm1sblJtbHNaUzVsY25KdmNpa2dlMXh1SUNBZ0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCSmJuUmxjbTVoYkVWeWNtOXlLRnh1SUNBZ0lDQWdJQ0FnSUNBZ2RITXVabXhoZEhSbGJrUnBZV2R1YjNOMGFXTk5aWE56WVdkbFZHVjRkQ2hqYjI1bWFXZEdhV3hsTG1WeWNtOXlMbTFsYzNOaFoyVlVaWGgwTENCY0lseGNibHdpS1Z4dUlDQWdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNCamIyNXpkQ0J3WVhKelpXUkRiMjVtYVdjZ1BTQjBjeTV3WVhKelpVcHpiMjVEYjI1bWFXZEdhV3hsUTI5dWRHVnVkQ2hjYmlBZ0lDQWdJQ0FnSUNCamIyNW1hV2RHYVd4bExtTnZibVpwWnl4Y2JpQWdJQ0FnSUNBZ0lDQjBjeTV6ZVhNc1hHNGdJQ0FnSUNBZ0lDQWdjR0YwYUM1a2FYSnVZVzFsS0hSelEyOXVabWxuUm1sc1pTa3NYRzRnSUNBZ0lDQWdJQ0FnZFc1a1pXWnBibVZrTEZ4dUlDQWdJQ0FnSUNBZ0lIUnpRMjl1Wm1sblJtbHNaVnh1SUNBZ0lDQWdJQ0FwTzF4dUlDQWdJQ0FnSUNCcFppQW9jR0Z5YzJWa1EyOXVabWxuTG1WeWNtOXljeTVzWlc1bmRHZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCMGFISnZkeUJ1WlhjZ1NXNTBaWEp1WVd4RmNuSnZjaWhjYmlBZ0lDQWdJQ0FnSUNBZ0lIQmhjbk5sWkVOdmJtWnBaeTVsY25KdmNuTmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0xtMWhjQ2dvWlhKeWIzSXBJRDArWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEhNdVpteGhkSFJsYmtScFlXZHViM04wYVdOTlpYTnpZV2RsVkdWNGRDaGxjbkp2Y2k1dFpYTnpZV2RsVkdWNGRDd2dYQ0pjWEc1Y0lpbGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0tWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBdWFtOXBiaWhjSWx4Y2Jsd2lLVnh1SUNBZ0lDQWdJQ0FnSUNrN1hHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0JqYjI1emRDQjBaVzF3UTI5dGNHbHNaWEpQY0hScGIyNXpPaUIwY3k1RGIyMXdhV3hsY2s5d2RHbHZibk1nUFNCN1hHNGdJQ0FnSUNBZ0lDQWdMaTR1Y0dGeWMyVmtRMjl1Wm1sbkxtOXdkR2x2Ym5Nc1hHNGdJQ0FnSUNBZ0lDQWdiM1YwUkdseU9pQjBaVzF3UW5WdVpHeGxSR2x5TEZ4dUlDQWdJQ0FnSUNBZ0lHMXZaSFZzWlRvZ2RITXVUVzlrZFd4bFMybHVaQzVGVTA1bGVIUXNYRzRnSUNBZ0lDQWdJQ0FnWkdWamJHRnlZWFJwYjI0NklHWmhiSE5sTEZ4dUlDQWdJQ0FnSUNBZ0lITnZkWEpqWlUxaGNEb2dabUZzYzJVc1hHNGdJQ0FnSUNBZ0lDQWdhVzVzYVc1bFUyOTFjbU5sY3pvZ1ptRnNjMlVzWEc0Z0lDQWdJQ0FnSUgwN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUdKMWJtUnNaV1JGYm5SeWVWQnZhVzUwSUQwZ2RITmNiaUFnSUNBZ0lDQWdJQ0F1WjJWMFQzVjBjSFYwUm1sc1pVNWhiV1Z6S0Z4dUlDQWdJQ0FnSUNBZ0lDQWdlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQXVMaTV3WVhKelpXUkRiMjVtYVdjc1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUc5d2RHbHZibk02SUhSbGJYQkRiMjF3YVd4bGNrOXdkR2x2Ym5Nc1hHNGdJQ0FnSUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdhVzV3ZFhSRmJuUnllU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDRjBjeTV6ZVhNdWRYTmxRMkZ6WlZObGJuTnBkR2wyWlVacGJHVk9ZVzFsYzF4dUlDQWdJQ0FnSUNBZ0lDbGNiaUFnSUNBZ0lDQWdJQ0F1Wm1sdVpDZ29abWxzWlU1aGJXVXBJRDArSUdacGJHVk9ZVzFsTG1WdVpITlhhWFJvS0Z3aUxtcHpYQ0lwS1R0Y2JseHVJQ0FnSUNBZ0lDQnBaaUFvSVdKMWJtUnNaV1JGYm5SeWVWQnZhVzUwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRWx1ZEdWeWJtRnNSWEp5YjNJb1hHNGdJQ0FnSUNBZ0lDQWdJQ0JnUm1GcGJHVmtJSFJ2SUdSbGRHVnliV2x1WlNCMGFHVWdaVzFwZEhSbFpDQmlkVzVrYkdVZ1pXNTBjbmtnWm05eUlDUjdhVzV3ZFhSRmJuUnllWDFnWEc0Z0lDQWdJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUdOdmJYQnBiR1ZYYVhSb1ZITmpiMjVtYVdkUGRtVnljbWxrWlhNb2RITkRiMjVtYVdkR2FXeGxMQ0IwWlcxd1EyOXRjR2xzWlhKUGNIUnBiMjV6S1R0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnWW5WdVpHeGxaRU52Ym5SeVlXTjBJRDBnWVhkaGFYUWdjbTlzYkhWd0tIdGNiaUFnSUNBZ0lDQWdJQ0JwYm5CMWREb2dZblZ1Wkd4bFpFVnVkSEo1VUc5cGJuUXNYRzRnSUNBZ0lDQWdJQ0FnY0d4MVoybHVjem9nVzF4dUlDQWdJQ0FnSUNBZ0lDQWdjbVZ6YjJ4MlpVSjFibVJzWldSS2MwbHRjRzl5ZEhNb0tTeGNiaUFnSUNBZ0lDQWdJQ0FnSUhKbGNHeGhZMlVvZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J3Y21WMlpXNTBRWE56YVdkdWJXVnVkRG9nZEhKMVpTeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ1pHVnNhVzFwZEdWeWN6b2dXMXdpWENJc0lGd2lYQ0pkTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0IyWVd4MVpYTTZJSHNnWENJakkxWkZVbE5KVDA0akkxd2lPaUIyWlhKemFXOXVMQ0JjSWlNalVFRkRTMEZIUlNNalhDSTZJSEJyWnk1dVlXMWxJSDBzWEc0Z0lDQWdJQ0FnSUNBZ0lDQjlLU3hjYmlBZ0lDQWdJQ0FnSUNCZExGeHVJQ0FnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJQ0FnYkc5bkxtbHVabThvWEc0Z0lDQWdJQ0FnSUNBZ1lIZHBkR2hwYm1jZ1kyOXVkSEpoWTNRZ2RHOGdKSHR2ZFhSd2RYUjlJSGRwZEdnZ2JtRnRaU0FrZTNSdlVHRnpZMkZzUTJGelpTaHVZVzFsS1gwdWFuTmdYRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0FnSUdGM1lXbDBJR0oxYm1Sc1pXUkRiMjUwY21GamRDNTNjbWwwWlNoN1hHNGdJQ0FnSUNBZ0lDQWdabWxzWlRvZ1lDUjdiM1YwY0hWMGZTOGtlM1J2VUdGelkyRnNRMkZ6WlNodVlXMWxLWDB1YW5OZ0xGeHVJQ0FnSUNBZ0lDQWdJR1p2Y20xaGREb2dYQ0oxYldSY0lpeGNiaUFnSUNBZ0lDQWdJQ0J1WVcxbE9pQmdKSHQwYjFCaGMyTmhiRU5oYzJVb2JtRnRaU2w5TG1wellDeGNiaUFnSUNBZ0lDQWdJQ0J6YjNWeVkyVnRZWEE2SUhOdmRYSmpaVzFoY0hNZ1B5QmNJbWx1YkdsdVpWd2lJRG9nWm1Gc2MyVXNYRzRnSUNBZ0lDQWdJQ0FnYzI5MWNtTmxiV0Z3VUdGMGFGUnlZVzV6Wm05eWJUb2dLSEpsYkdGMGFYWmxVMjkxY21ObFVHRjBhQ3dnYzI5MWNtTmxiV0Z3VUdGMGFDa2dQVDRnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1lXSnpiMngxZEdWVGIzVnlZMlZRWVhSb0lEMGdjR0YwYUM1eVpYTnZiSFpsS0Z4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J3WVhSb0xtUnBjbTVoYldVb2MyOTFjbU5sYldGd1VHRjBhQ2tzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSEpsYkdGMGFYWmxVMjkxY21ObFVHRjBhRnh1SUNBZ0lDQWdJQ0FnSUNBZ0tUdGNibHh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR0ZpYzI5c2RYUmxVMjkxY21ObFVHRjBhQzV6ZEdGeWRITlhhWFJvS0hSbGJYQkNkVzVrYkdWRWFYSXBLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQndZWFJvTG5CdmMybDRMbXB2YVc0b1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1hDSXVZblZ1Wkd4bFhDSXNYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjR0YwYUZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0xuSmxiR0YwYVhabEtIUmxiWEJDZFc1a2JHVkVhWElzSUdGaWMyOXNkWFJsVTI5MWNtTmxVR0YwYUNsY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDNXpjR3hwZENod1lYUm9Mbk5sY0NsY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDNXFiMmx1S0Z3aUwxd2lLVnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnY21Wc1lYUnBkbVZUYjNWeVkyVlFZWFJvTzF4dUlDQWdJQ0FnSUNBZ0lIMHNYRzRnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnSUNCaGQyRnBkQ0JpZFc1a2JHVmtRMjl1ZEhKaFkzUXVZMnh2YzJVb0tUdGNiaUFnSUNBZ0lIMGdabWx1WVd4c2VTQjdYRzRnSUNBZ0lDQWdJR1p6TG5KdFUzbHVZeWgwWlcxd1FuVnVaR3hsUkdseUxDQjdJSEpsWTNWeWMybDJaVG9nZEhKMVpTd2dabTl5WTJVNklIUnlkV1VnZlNrN1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNCbGJITmxJSHRjYmlBZ0lDQWdJR052YlhCcGJHVlhhWFJvVkhOamIyNW1hV2RQZG1WeWNtbGtaWE1vZEhORGIyNW1hV2RHYVd4bExDQjdYRzRnSUNBZ0lDQWdJRzkxZEVScGNqb2diM1YwY0hWMExGeHVJQ0FnSUNBZ0lDQnRiMlIxYkdVNklIUnpMazF2WkhWc1pVdHBibVF1UlZOT1pYaDBMRnh1SUNBZ0lDQWdJQ0JrWldOc1lYSmhkR2x2YmpvZ1ptRnNjMlVzWEc0Z0lDQWdJQ0FnSUhOdmRYSmpaVTFoY0RvZ2MyOTFjbU5sYldGd2N5eGNiaUFnSUNBZ0lDQWdhVzVzYVc1bFUyOTFjbU5sY3pvZ2MyOTFjbU5sYldGd2N5eGNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lIMWNibHh1SUNBZ0lHTnZibk4wSUhOamNtbHdkSE1nUFNCN1hHNGdJQ0FnSUNCemRHRnlkRG9nWjJWMFEyOXVkSEpoWTNSVGRHRnlkRU52YlcxaGJtUW9aR1ZpZFdjc0lHTmpZV0Z6S1N4Y2JpQWdJQ0FnSUZ3aWMzUmhjblE2WkdWMlhDSTZJRndpWm1GaWNtbGpMV05vWVdsdVkyOWtaUzF1YjJSbElITjBZWEowSUMwdGRHeHpMbVZ1WVdKc1pXUWdabUZzYzJWY0lpeGNiaUFnSUNBZ0lGd2ljM1JoY25RNmQyRjBZMmhjSWpvZ0oyNXZaR1Z0YjI0Z0xTMWxlR1ZqSUZ3aWJuQnRJSEoxYmlCemRHRnlkRHBrWlhaY0lpY3NYRzRnSUNBZ0lDQmlkV2xzWkRvZ0oyVmphRzhnWENKT2J5QnVaV1ZrSUhSdklHSjFhV3hrSUhSb1pTQmphR0ZwYm1OdlpHVmNJaWNzWEc0Z0lDQWdJQ0JzYVc1ME9pQmNJbVZ6YkdsdWRDQXVJQzB0Wm1sNElDMHRaWGgwSUM1cWMxd2lMRnh1SUNBZ0lIMDdYRzVjYmlBZ0lDQmpiMjV6ZENCamIyNTBjbUZqZEZCaFkydGhaMlVnUFNCd2EyYzdYRzVjYmlBZ0lDQmpiMjUwY21GamRGQmhZMnRoWjJVdWJtRnRaU0E5SUc1aGJXVTdYRzRnSUNBZ1kyOXVkSEpoWTNSUVlXTnJZV2RsTG1SbGMyTnlhWEIwYVc5dUlEMGdaR1Z6WTNKcGNIUnBiMjQ3WEc0Z0lDQWdZMjl1ZEhKaFkzUlFZV05yWVdkbExuTmpjbWx3ZEhNZ1BTQnpZM0pwY0hSek8xeHVYRzRnSUNBZ1pHVnNaWFJsSUdOdmJuUnlZV04wVUdGamEyRm5aUzUwZVhCbE8xeHVJQ0FnSUdSbGJHVjBaU0JqYjI1MGNtRmpkRkJoWTJ0aFoyVXVkSGx3WlhNN1hHNGdJQ0FnWkdWc1pYUmxJR052Ym5SeVlXTjBVR0ZqYTJGblpTNWxlSEJ2Y25Sek8xeHVJQ0FnSUdOdmJuUnlZV04wVUdGamEyRm5aUzV0WVdsdUlEMGdZblZ1Wkd4bFhHNGdJQ0FnSUNBL0lHQWtlM1J2VUdGelkyRnNRMkZ6WlNodVlXMWxLWDB1YW5OZ1hHNGdJQ0FnSUNBNklHQWtlMmx1Y0hWMGZTOXBibVJsZUM1cWMyQTdYRzVjYmlBZ0lDQm1jeTUzY21sMFpVWnBiR1ZUZVc1aktGeHVJQ0FnSUNBZ2NHRjBhQzVxYjJsdUtHOTFkSEIxZEN3Z1hDSndZV05yWVdkbExtcHpiMjVjSWlrc1hHNGdJQ0FnSUNCS1UwOU9Mbk4wY21sdVoybG1lU2hqYjI1MGNtRmpkRkJoWTJ0aFoyVXBYRzRnSUNBZ0tUdGNibHh1SUNBZ0lHbG1JQ2h1Y0cxeVl5a2dabk11ZDNKcGRHVkdhV3hsVTNsdVl5aHdZWFJvTG1wdmFXNG9iM1YwY0hWMExDQmNJaTV1Y0cxeVkxd2lLU3dnYm5CdGNtTXBPMXh1WEc0Z0lDQWdiRzluTG1sdVptOG9ZRWx1YzNSaGJHeHBibWNnWVc1a0lITm9jbWx1YTNkeVlYQndhVzVuSUdSbGNHVnVaR1Z1WTJsbGMyQXBPMXh1SUNBZ0lHVjRaV05UZVc1aktHQnVjRzBnYVc1emRHRnNiR0FzSUhzZ1kzZGtPaUJ2ZFhSd2RYUWdmU2s3WEc0Z0lDQWdaWGhsWTFONWJtTW9ZRzV3YlNCemFISnBibXQzY21Gd1lDd2dleUJqZDJRNklHOTFkSEIxZENCOUtUdGNiaUFnSUNCbGVHVmpVM2x1WXloY0luSnRJQzF5WmlCdWIyUmxYMjF2WkhWc1pYTmNJaXdnZXlCamQyUTZJRzkxZEhCMWRDQjlLVHRjYmlBZ0lDQnNiMmN1YVc1bWJ5aGdaR1ZzWlhScGJtY2dkR1Z0Y0NCbWIyeGtaWEp6WUNrN1hHNGdJQ0FnWlhobFkxTjVibU1vWUhKdElDMXlaaUF1TDJ4cFlpQW1KaUJ5YlNBdGNtWWdMaTlrYVhOMFlDd2dleUJqZDJRNklHOTFkSEIxZENCOUtUdGNiaUFnSUNCc2IyY3VhVzVtYnloY2JpQWdJQ0FnSUdCRGIyNTBjbUZqZENBa2UyNWhiV1Y5SUdOdmJYQnBiR1ZrSUhOMVkyTmxjM05tZFd4c2VTRWdhVzRnSkh0d1lYUm9MbkpsYzI5c2RtVW9iM1YwY0hWMEtYMWdYRzRnSUNBZ0tUdGNiaUFnSUNCcFppQW9aR1YyS1NCN1hHNGdJQ0FnSUNCc2IyY3VhVzVtYnloZ1pHVjJJRzF2WkdVZ1pXNWhZbXhsWkM0Z2FXNXpkR0ZzYkdsdVp5QmtaWEJsYm1SbGJtTnBaWE1nWm05eUlHUmxZblZuWjJsdVoyQXBPMXh1SUNBZ0lDQWdaWGhsWTFONWJtTW9ZRzV3YlNCcGJuTjBZV3hzWUN3Z2UxeHVJQ0FnSUNBZ0lDQmpkMlE2SUc5MWRIQjFkQ3hjYmlBZ0lDQWdJQ0FnWlc1Mk9pQjdJQzR1TG5CeWIyTmxjM011Wlc1MkxDQk9UMFJGWDBWT1Zqb2dYQ0p3Y205a2RXTjBhVzl1WENJZ2ZTeGNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lIMWNiaUFnZlNrN1hHNWNibU52Ym5OMElHVjRkSEpoWTNSSmJtUmxlR1Z6SUQwZ2JtVjNJRU52YlcxaGJtUW9LVnh1SUNBdVkyOXRiV0Z1WkNoY0ltVjRkSEpoWTNRdGFXNWtaWGhsYzF3aUtWeHVJQ0F1YjNCMGFXOXVLRndpTFMxbWFXeGxJRnRUZEhKcGJtZGRYQ0lzSUZ3aWRHaGxJRzF2WkdWc0lHWnBiR1ZjSWlsY2JpQWdMbTl3ZEdsdmJpaGNJaTB0Wm05c1pHVnlJRnRUZEhKcGJtZGRYQ0lzSUZ3aWRHaGxJRzF2WkdWc0lHWnZiR1JsY2x3aUtWeHVJQ0F1YjNCMGFXOXVLRndpTFMxdmRYUkVhWElnUEZOMGNtbHVaejVjSWl3Z1hDSjBhR1VnYjNWMFpHbHlMaUJ6YUc5MWJHUWdiV0YwWTJnZ2VXOTFjaUJqYjI1MGNtRmpkQ0JtYjJ4a1pYSmNJaWxjYmlBZ0xtUmxjMk55YVhCMGFXOXVLRnh1SUNBZ0lGd2lRM0psWVhSbGN5QmhJSFJvWlNCS1UwOU9JR2x1WkdWNElHWnBiR1Z6SUhSdklHSmxJSE4xWW0xcGRIUmxaQ0IwYnlCaGJHOXVaeUIzYVhSb0lIUm9aU0JqYjI1MGNtRmpkRndpWEc0Z0lDbGNiaUFnTG1GamRHbHZiaWhoYzNsdVl5QW9iM0IwYVc5dWN6b2dZVzU1S1NBOVBpQjdYRzRnSUNBZ1kyOXVjM1FnY0d0bklEMGdTbE5QVGk1d1lYSnpaU2hjYmlBZ0lDQWdJR1p6TG5KbFlXUkdhV3hsVTNsdVl5aHdZWFJvTG1wdmFXNG9jSEp2WTJWemN5NWpkMlFvS1N3Z1hDSndZV05yWVdkbExtcHpiMjVjSWlrc0lGd2lkWFJtTFRoY0lpbGNiaUFnSUNBcE8xeHVYRzRnSUNBZ1kyOXVjM1FnZG1WeWMybHZiaUE5SUhCclp5NTJaWEp6YVc5dU8xeHVYRzRnSUNBZ1kyOXVjM1FnYkc5bklEMGdiRzluWjJWeUxtWnZjaWhjSW1WNGRISmhZM1F0YVc1a1pYaGxjMXdpS1R0Y2JpQWdJQ0JzYjJjdVpHVmlkV2NvWEc0Z0lDQWdJQ0JnY25WdWJtbHVaeUIzYVhSb0lHOXdkR2x2Ym5NNklDUjdTbE5QVGk1emRISnBibWRwWm5rb2IzQjBhVzl1Y3lsOUlHWnZjaUFrZTNCclp5NXVZVzFsZlNCMlpYSnphVzl1SUNSN2RtVnljMmx2Ym4xZ1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUM4dklHVnpiR2x1ZEMxa2FYTmhZbXhsTFc1bGVIUXRiR2x1WlNCd2NtVm1aWEl0WTI5dWMzUmNiaUFnSUNCc1pYUWdleUJtYVd4bExDQm1iMnhrWlhJc0lHOTFkRVJwY2lCOUlEMGdiM0IwYVc5dWN6dGNibHh1SUNBZ0lHTnZibk4wSUcxdlpHVnNjem9nWVc1NVcxMGdQU0JiWFR0Y2JpQWdJQ0JwWmlBb1ptbHNaU2tnZTF4dUlDQWdJQ0FnYlc5a1pXeHpMbkIxYzJnb0xpNHVjbVZoWkUxdlpHVnNSbWxzWlNobWFXeGxLU2s3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdhV1lnS0dadmJHUmxjaWtnZTF4dUlDQWdJQ0FnYkc5bkxtbHVabThvWUV4dllXUnBibWNnYlc5a1pXeHpJR1p5YjIwZ0pIdG1iMnhrWlhKOUxpNHVZQ2s3WEc0Z0lDQWdJQ0J0YjJSbGJITXVjSFZ6YUNndUxpNG9ZWGRoYVhRZ2NtVmhaRTF2WkdWc1JtOXNaR1Z5Y3lobWIyeGtaWElwS1NrN1hHNGdJQ0FnZlZ4dUlDQWdJR052Ym5OMElISmxjM1ZzZERvZ1VtVmpiM0prUEhOMGNtbHVaeXdnWVc1NVBpQTlJSHQ5TzF4dUlDQWdJR052Ym5OMElHUmxjMmxuYmtSdlkzTTZJRkpsWTI5eVpEeHpkSEpwYm1jc0lHRnVlVDRnUFNCN2ZUdGNibHh1SUNBZ0lHbG1JQ2doWm1sc1pTQW1KaUFoWm05c1pHVnlLVnh1SUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRWx1ZEdWeWJtRnNSWEp5YjNJb1lFMTFjM1FnY0dGemN5QmhJR1pwYkdVZ2IzSWdZU0JtYjJ4a1pYSmdLVHRjYmx4dUlDQWdJR1p2Y2lBb1kyOXVjM1FnYlNCdlppQnRiMlJsYkhNcElIdGNiaUFnSUNBZ0lHeHZaeTUyWlhKaWIzTmxLR0JGZUhSeVlXTjBhVzVuSUdsdVpHVjRaWE1nWm05eUlIUmhZbXhsSUNSN1RXOWtaV3d1ZEdGaWJHVk9ZVzFsS0cwcGZXQXBPMXh1SUNBZ0lDQWdZMjl1YzNRZ2FXNWtaWGhsY3lBOUlHZGxibVZ5WVhSbFRXOWtaV3hKYm1SbGVHVnpLRzBwTzF4dUlDQWdJQ0FnYVc1a1pYaGxjeTVtYjNKRllXTm9LQ2hwYm1SbGVDa2dQVDRnZTF4dUlDQWdJQ0FnSUNCcFppQW9hVzVrWlhndWJtRnRaU2tnZTF4dUlDQWdJQ0FnSUNBZ0lISmxjM1ZzZEZ0cGJtUmxlQzV1WVcxbFhTQTlJR2x1WkdWNE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJR2RsYm1WeVlYUmxUVzlrWld4RVpYTnBaMjVFYjJOektHMHNJR1JsYzJsbmJrUnZZM01wTzF4dUlDQWdJSDFjYmlBZ0lDQmpiMjV6ZENCcGJtUmxlR1Z6Vkc5WGNtbDBaU0E5SUU5aWFtVmpkQzUyWVd4MVpYTW9jbVZ6ZFd4MEtUdGNiaUFnSUNCamIyNXpkQ0JrYjJOelZHOVhjbWwwWlNBOUlFOWlhbVZqZEM1MllXeDFaWE1vWkdWemFXZHVSRzlqY3lrN1hHNGdJQ0FnYkc5bkxuWmxjbUp2YzJVb1lFWnZkVzVrSUNSN2FXNWtaWGhsYzFSdlYzSnBkR1V1YkdWdVozUm9mU0JwYm1SbGVHVnpJSFJ2SUdOeVpXRjBaV0FwTzF4dUlDQWdJR3h2Wnk1MlpYSmliM05sS0dCR2IzVnVaQ0FrZTJSdlkzTlViMWR5YVhSbExteGxibWQwYUgwZ1pHVnphV2R1SUdSdlkzTWdkRzhnWTNKbFlYUmxZQ2s3WEc0Z0lDQWdiRzluTG1SbFluVm5LR0JKYm1SbGVHVnpPaUFrZTBwVFQwNHVjM1J5YVc1bmFXWjVLSEpsYzNWc2RDbDlZQ2s3WEc0Z0lDQWdiRzluTG1SbFluVm5LR0JFWlhOcFoyNUViMk56T2lBa2UwcFRUMDR1YzNSeWFXNW5hV1o1S0dSbGMybG5ia1J2WTNNcGZXQXBPMXh1SUNBZ0lIZHlhWFJsU1c1a1pYaGxjeWhwYm1SbGVHVnpWRzlYY21sMFpTd2diM1YwUkdseUtUdGNiaUFnSUNCM2NtbDBaVVJsYzJsbmJrUnZZM01vWkc5amMxUnZWM0pwZEdVc0lHOTFkRVJwY2lrN1hHNGdJSDBwTzF4dVhHNWpiMjV6ZENCbGVIUnlZV04wUTI5c2JHVmpkR2x2Ym5NZ1BTQnVaWGNnUTI5dGJXRnVaQ2dwWEc0Z0lDNWpiMjF0WVc1a0tGd2laWGgwY21GamRDMWpiMnhzWldOMGFXOXVjMXdpS1Z4dUlDQXViM0IwYVc5dUtGd2lMUzFtYVd4bElGdFRkSEpwYm1kZFhDSXNJRndpZEdobElHMXZaR1ZzSUdacGJHVmNJaWxjYmlBZ0xtOXdkR2x2YmloY0lpMHRabTlzWkdWeUlGdFRkSEpwYm1kZFhDSXNJRndpZEdobElHMXZaR1ZzSUdadmJHUmxjbHdpS1Z4dUlDQXViM0IwYVc5dUtGd2lMUzF2ZFhSRWFYSWdQRk4wY21sdVp6NWNJaXdnWENKMGFHVWdiM1YwWkdseUxpQnphRzkxYkdRZ2JXRjBZMmdnZVc5MWNpQmpiMjUwY21GamRDQm1iMnhrWlhKY0lpbGNiaUFnTG05d2RHbHZiaWhjSWkwdGJYTndTV1J6SUR4VGRISnBibWMrWENJc0lGd2ljMmx1WjJ4bElHMXpjRWxrSUc5eUlITjBjbWx1WjJsbWFXVmtJR0Z5Y21GNVhDSXBYRzRnSUM1dmNIUnBiMjRvWENJdExXMWhhVzVOYzNCSlpDQThVM1J5YVc1blBsd2lMQ0JjSW5OcGJtZHNaU0J0YzNCSlpGd2lLVnh1SUNBdWIzQjBhVzl1S0Z4dUlDQWdJRndpTFMxdmRtVnljbWxrWlhNZ1cxTjBjbWx1WjExY0lpeGNiaUFnSUNCY0luTjBjbWx1WjJsbWFXVmtJRzkyWlhKeWFXUmxJRzlpYW1WamRDQjdjbVZ4ZFdseVpXUlFaV1Z5UTI5MWJuUTZJRzUxYldKbGNpd2diV0Y0VUdWbGNrTnZkVzUwT2lCdWRXMWlaWElzSUdKc2IyTnJWRzlNYVhabE9pQnVkVzFpWlhJc0lHMWxiV0psY2s5dWJIbFNaV0ZrT2lCdWRXMWlaWElzSUcxbGJXSmxjazl1YkhsWGNtbDBaVG9nYm5WdFltVnlMQ0JsYm1SdmNuTmxiV1Z1ZEZCdmJHbGplVG9nSUh0OWZWd2lYRzRnSUNsY2JpQWdMbVJsYzJOeWFYQjBhVzl1S0Z4dUlDQWdJRndpUTNKbFlYUmxjeUJoSUhSb1pTQktVMDlPSUdsdVpHVjRJR1pwYkdWeklIUnZJR0psSUhOMVltMXBkSFJsWkNCMGJ5QmhiRzl1WnlCM2FYUm9JSFJvWlNCamIyNTBjbUZqZEZ3aVhHNGdJQ2xjYmlBZ0xtRmpkR2x2YmloaGMzbHVZeUFvYjNCMGFXOXVjem9nWVc1NUtTQTlQaUI3WEc0Z0lDQWdZMjl1YzNRZ2NHdG5JRDBnU2xOUFRpNXdZWEp6WlNoY2JpQWdJQ0FnSUdaekxuSmxZV1JHYVd4bFUzbHVZeWh3WVhSb0xtcHZhVzRvY0hKdlkyVnpjeTVqZDJRb0tTd2dYQ0p3WVdOcllXZGxMbXB6YjI1Y0lpa3NJRndpZFhSbUxUaGNJaWxjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdZMjl1YzNRZ2RtVnljMmx2YmlBOUlIQnJaeTUyWlhKemFXOXVPMXh1WEc0Z0lDQWdZMjl1YzNRZ2JHOW5JRDBnYkc5bloyVnlMbVp2Y2loY0ltVjRkSEpoWTNRdFkyOXNiR1ZqZEdsdmJuTmNJaWs3WEc0Z0lDQWdiRzluTG1SbFluVm5LRnh1SUNBZ0lDQWdZSEoxYm01cGJtY2dkMmwwYUNCdmNIUnBiMjV6T2lBa2UwcFRUMDR1YzNSeWFXNW5hV1o1S0c5d2RHbHZibk1wZlNCbWIzSWdKSHR3YTJjdWJtRnRaWDBnZG1WeWMybHZiaUFrZTNabGNuTnBiMjU5WUZ4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0F2THlCbGMyeHBiblF0WkdsellXSnNaUzF1WlhoMExXeHBibVVnY0hKbFptVnlMV052Ym5OMFhHNGdJQ0FnYkdWMElIc2dabWxzWlN3Z1ptOXNaR1Z5TENCdmRYUkVhWElzSUcxemNFbGtjeXdnYldGcGJrMXpjRWxrSUgwZ1BTQnZjSFJwYjI1ek8xeHVYRzRnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJSFJ5ZVNCN1hHNGdJQ0FnSUNBZ0lHMXpjRWxrY3lBOUlHMXpjRWxrY3lBL0lFcFRUMDR1Y0dGeWMyVW9iWE53U1dSektTQTZJSFZ1WkdWbWFXNWxaRHRjYmlBZ0lDQWdJQ0FnTHk4Z1pYTnNhVzUwTFdScGMyRmliR1V0Ym1WNGRDMXNhVzVsSUVCMGVYQmxjMk55YVhCMExXVnpiR2x1ZEM5dWJ5MTFiblZ6WldRdGRtRnljMXh1SUNBZ0lDQWdmU0JqWVhSamFDQW9aVG9nZFc1cmJtOTNiaWtnZTF4dUlDQWdJQ0FnSUNBdkx5QWdaRzhnYm05MGFHbHVaMXh1SUNBZ0lDQWdmVnh1SUNBZ0lIMGdZMkYwWTJnZ0tHVTZJSFZ1YTI1dmQyNHBJSHRjYmlBZ0lDQWdJSFJvY205M0lHNWxkeUJUWlhKcFlXeHBlbUYwYVc5dVJYSnliM0lvWUZWdVlXSnNaU0IwYnlCbGVIUnlZV04wSUcxemNHbGtjem9nSUNSN1pYMWdLVHRjYmlBZ0lDQjlYRzVjYmlBZ0lDQmpiMjV6ZENCdGIyUmxiSE02SUdGdWVWdGRJRDBnVzEwN1hHNGdJQ0FnYVdZZ0tHWnBiR1VwSUh0Y2JpQWdJQ0FnSUcxdlpHVnNjeTV3ZFhOb0tDNHVMbkpsWVdSTmIyUmxiRVpwYkdVb1ptbHNaU2twTzF4dUlDQWdJSDFjYmx4dUlDQWdJR2xtSUNobWIyeGtaWElwSUh0Y2JpQWdJQ0FnSUd4dlp5NXBibVp2S0dCTWIyRmthVzVuSUcxdlpHVnNjeUJtY205dElDUjdabTlzWkdWeWZTNHVMbUFwTzF4dUlDQWdJQ0FnYlc5a1pXeHpMbkIxYzJnb0xpNHVLR0YzWVdsMElISmxZV1JOYjJSbGJFWnZiR1JsY25Nb1ptOXNaR1Z5S1NrcE8xeHVJQ0FnSUgxY2JseHVJQ0FnSUdsbUlDZ2habWxzWlNBbUppQWhabTlzWkdWeUtWeHVJQ0FnSUNBZ2RHaHliM2NnYm1WM0lFbHVkR1Z5Ym1Gc1JYSnliM0lvWUUxMWMzUWdjR0Z6Y3lCaElHWnBiR1VnYjNJZ1lTQm1iMnhrWlhKZ0tUdGNibHh1SUNBZ0lHTnZibk4wSUdsdWFtVmpkR0ZpYkdWTmIyUmxiSE1nUFNCdGIyUmxiSE11Wm1sc2RHVnlLRnh1SUNBZ0lDQWdLRzF2WkdWc0tTQTlQbHh1SUNBZ0lDQWdJQ0JOYjJSbGJDNXBjMU5vWVhKbFpDaHRiMlJsYkNrZ2ZIeGNiaUFnSUNBZ0lDQWdUVzlrWld3dWFYTlFjbWwyWVhSbEtHMXZaR1ZzS1NCOGZGeHVJQ0FnSUNBZ0lDQWhJVTF2WkdWc0xtMXBjbkp2Y21Wa1FYUW9iVzlrWld3cFhHNGdJQ0FnS1R0Y2JpQWdJQ0JwWmlBb0lXbHVhbVZqZEdGaWJHVk5iMlJsYkhNdWJHVnVaM1JvS1NCN1hHNGdJQ0FnSUNCc2IyY3VhVzVtYnloY2JpQWdJQ0FnSUNBZ1lFNXZJSE5vWVhKbFpDd2djSEpwZG1GMFpTd2diM0lnYldseWNtOXlaV1FnYlc5a1pXeHpJR1p2ZFc1a0lIUnZJR1Y0ZEhKaFkzUWdZMjlzYkdWamRHbHZibk5nWEc0Z0lDQWdJQ0FwTzF4dUlDQWdJQ0FnY21WMGRYSnVPMXh1SUNBZ0lIMWNibHh1SUNBZ0lHRnplVzVqSUdaMWJtTjBhVzl1SUdkbGRFTnZiSE1vYlhOd1NXUnpUR2x6ZEQ4NklITjBjbWx1WjF0ZEtTQjdYRzRnSUNBZ0lDQmpiMjV6ZENCamIyeHpPaUI3WEc0Z0lDQWdJQ0FnSUdsdVpHVjRaWE02SUVOeVpXRjBaVWx1WkdWNFVtVnhkV1Z6ZEZ0ZE8xeHVJQ0FnSUNBZ0lDQmtaWE5wWjI1RWIyTnpPaUJEYjNWamFFUkNSR1Z6YVdkdVJHOWpXMTA3WEc0Z0lDQWdJQ0FnSUcxcGNuSnZjajg2SUZCeWFYWmhkR1ZEYjJ4c1pXTjBhVzl1TzF4dUlDQWdJQ0FnSUNCamIyeHNaV04wYVc5dWN6b2dVSEpwZG1GMFpVTnZiR3hsWTNScGIyNWJYVHRjYmlBZ0lDQWdJSDFiWFNBOUlHRjNZV2wwSUZCeWIyMXBjMlV1WVd4c0tGeHVJQ0FnSUNBZ0lDQnBibXBsWTNSaFlteGxUVzlrWld4ekxtMWhjQ2hoYzNsdVl5QW9ZMnhoZW5vcElEMCtJSHRjYmlBZ0lDQWdJQ0FnSUNCamIyNXpkQ0IwWVdKc1pVNWhiV1VnUFNCTmIyUmxiQzUwWVdKc1pVNWhiV1VvWTJ4aGVub3BPMXh1SUNBZ0lDQWdJQ0FnSUdOdmJuTjBJRzFwY25KdmNrMWxkR0VnUFNCTmIyUmxiQzV0YVhKeWIzSmxaRUYwS0dOc1lYcDZLVHRjYmx4dUlDQWdJQ0FnSUNBZ0lHTnZibk52YkdVdWJHOW5LSFJoWW14bFRtRnRaU2s3WEc0Z0lDQWdJQ0FnSUNBZ1kyOXVjM1FnWTI5c2JHVmpkR2x2Ym5NNklGSmxZMjl5WkR4emRISnBibWNzSUdGdWVUNGdQU0I3ZlR0Y2JpQWdJQ0FnSUNBZ0lDQm1iM0lnS0dOdmJuTjBJRzF6Y0NCdlppQnRjM0JKWkhOTWFYTjBJSHg4SUcxemNFbGtjeUI4ZkNCYlhTa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ1kyOXNiR1ZqZEdsdmJuTmJiWE53WFNBOUlHRjNZV2wwSUdWNFEyOXNiR1ZqZEdsdmJuTW9YRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHTnNZWHA2TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0JiYlhOd0xDQnRZV2x1VFhOd1NXUmRMRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQjdmU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0F2THlBZ0lITm9ZWEpsWkVOdmJITTZJRTlpYW1WamRDNWhjM05wWjI0b2UzMHNJRzkyWlhKeWFXUmxjeTV6YUdGeVpXUkRiMnh6S1N4Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z0lDQndjbWwyWVhSbFEyOXNjem9nVDJKcVpXTjBMbUZ6YzJsbmJpaDdmU3dnYjNabGNuSnBaR1Z6TG5CeWFYWmhkR1ZEYjJ4ektTeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdmU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJU0Z0YVhKeWIzSk5aWFJoWEc0Z0lDQWdJQ0FnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQWdJR3hsZENCdGFYSnliM0pEYjJ4c1pXTjBhVzl1T2lCUWNtbDJZWFJsUTI5c2JHVmpkR2x2YmlCOElIVnVaR1ZtYVc1bFpDQTlJSFZ1WkdWbWFXNWxaRHRjYmx4dUlDQWdJQ0FnSUNBZ0lHbG1JQ2h0YVhKeWIzSk5aWFJoS1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjJ4c1pXTjBhVzl1YzF0dFlXbHVUWE53U1dSZElEMGdZMjlzYkdWamRHbHZibk5iYldGcGJrMXpjRWxrWFNCOGZDQjdmVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lFOWlhbVZqZEM1clpYbHpLR052Ykd4bFkzUnBiMjV6S1M1bWIzSkZZV05vS0NodGMzQTZJSE4wY21sdVp5a2dQVDRnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0JqYjJ4c1pXTjBhVzl1YzF0dFlXbHVUWE53U1dSZExuQnlhWFpoZEdWeklEMGdZMjlzYkdWamRHbHZibk5iWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYlhOd1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUYwdWNISnBkbUYwWlhNL0xtWnBiSFJsY2lnb2NEb2dZVzU1S1NBOVBpQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhV1lnS0hBdWJtRnRaU0FoUFQwZ0tHMXBjbkp2Y2sxbGRHRXVjbVZ6YjJ4MlpYSWdZWE1nYzNSeWFXNW5LU2tnY21WMGRYSnVJSFJ5ZFdVN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JXbHljbTl5UTI5c2JHVmpkR2x2YmlBOUlIQWdZWE1nWVc1NU8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5YmlCbVlXeHpaVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdmU2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJQ0FnSUNCOVhHNWNiaUFnSUNBZ0lDQWdJQ0JqYjI1emRDQndjbWwyWVhSbGMwTnZkVzUwSUQwZ1QySnFaV04wTG5aaGJIVmxjeWhqYjJ4c1pXTjBhVzl1Y3lsY2JpQWdJQ0FnSUNBZ0lDQWdJQzV0WVhBb0tHTXBJRDArSUdNdWNISnBkbUYwWlhNcFhHNGdJQ0FnSUNBZ0lDQWdJQ0F1Wm14aGRDZ3BMbXhsYm1kMGFEdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb2NISnBkbUYwWlhORGIzVnVkQ2xjYmlBZ0lDQWdJQ0FnSUNBZ0lHeHZaMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQXVabTl5S0UxdlpHVnNMblJoWW14bFRtRnRaU2hqYkdGNmVpa3BYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDNXBibVp2S0dCR2IzVnVaQ0FrZTNCeWFYWmhkR1Z6UTI5MWJuUjlJSEJ5YVhaaGRHVWdZMjlzYkdWamRHbHZibk1nZEc4Z1kzSmxZWFJsWUNrN1hHNGdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ2MyaGhjbVZrUTI5MWJuUWdQU0JQWW1wbFkzUXVkbUZzZFdWektHTnZiR3hsWTNScGIyNXpLVnh1SUNBZ0lDQWdJQ0FnSUNBZ0xtMWhjQ2dvWXlrZ1BUNGdZeTV6YUdGeVpXUXBYRzRnSUNBZ0lDQWdJQ0FnSUNBdVpteGhkQ2dwTG14bGJtZDBhRHRjYmx4dUlDQWdJQ0FnSUNBZ0lHeHZaMXh1SUNBZ0lDQWdJQ0FnSUNBZ0xtWnZjaWhOYjJSbGJDNTBZV0pzWlU1aGJXVW9ZMnhoZW5vcEtWeHVJQ0FnSUNBZ0lDQWdJQ0FnTG1sdVptOG9ZRVp2ZFc1a0lDUjdjMmhoY21Wa1EyOTFiblI5SUhOb1lYSmxaQ0JqYjJ4c1pXTjBhVzl1Y3lCMGJ5QmpjbVZoZEdWZ0tUdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb2JXbHljbTl5UTI5c2JHVmpkR2x2YmlsY2JpQWdJQ0FnSUNBZ0lDQWdJR3h2WjF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0F1Wm05eUtFMXZaR1ZzTG5SaFlteGxUbUZ0WlNoamJHRjZlaWtwWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQzVwYm1adktGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHQkdiM1Z1WkNCdmJtVWdiV2x5Y205eUlHTnZiR3hsWTNScGIyNGdKSHR0YVhKeWIzSk5aWFJoUHk1eVpYTnZiSFpsY2lCaGN5QnpkSEpwYm1kOVlGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBcE8xeHVYRzRnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdZMjlzVEdsemRDQTlJRTlpYW1WamRDNTJZV3gxWlhNb1kyOXNiR1ZqZEdsdmJuTXBYRzRnSUNBZ0lDQWdJQ0FnSUNBdWJXRndLQ2hqS1NBOVBpQmJMaTR1S0dNdWNISnBkbUYwWlhNZ2ZId2dXMTBwTENBdUxpNG9ZeTV6YUdGeVpXUWdmSHdnVzEwcFhTbGNiaUFnSUNBZ0lDQWdJQ0FnSUM1bWJHRjBLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ2JHVjBJR2x1WkdWNFpYTTZJRU55WldGMFpVbHVaR1Y0VW1WeGRXVnpkRnRkSUQwZ1cxMDdYRzRnSUNBZ0lDQWdJQ0FnYkdWMElHUmxjMmxuYmtSdlkzTTZJRU52ZFdOb1JFSkVaWE5wWjI1RWIyTmJYU0E5SUZ0ZE8xeHVJQ0FnSUNBZ0lDQWdJR2xtSUNoamIyeE1hWE4wTG14bGJtZDBhQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdiRzluWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQzVtYjNJb1RXOWtaV3d1ZEdGaWJHVk9ZVzFsS0dOc1lYcDZLU2xjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdMblpsY21KdmMyVW9ZR2RsYm1WeVlYUnBibWNnYVc1a1pYaGxjeUJtYjNJZ1kyOXNiR1ZqZEdsdmJuTmdLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHbHVaR1Y0WlhNZ1BTQm5aVzVsY21GMFpVMXZaR1ZzU1c1a1pYaGxjeWhqYkdGNmVpazdYRzRnSUNBZ0lDQWdJQ0FnSUNCc2IyZGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0xtWnZjaWhOYjJSbGJDNTBZV0pzWlU1aGJXVW9ZMnhoZW5vcEtWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBdWFXNW1ieWhnWm05MWJtUWdKSHRwYm1SbGVHVnpMbXhsYm1kMGFIMGdhVzVrWlhobGMyQXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ1pHVnphV2R1Ukc5amN5QTlJR2RsYm1WeVlYUmxUVzlrWld4RVpYTnBaMjVFYjJOektHTnNZWHA2S1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJR3h2WjF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0F1Wm05eUtFMXZaR1ZzTG5SaFlteGxUbUZ0WlNoamJHRjZlaWtwWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQzVwYm1adktHQm1iM1Z1WkNBa2UyUmxjMmxuYmtSdlkzTXViR1Z1WjNSb2ZTQmtaWE5wWjI0Z1pHOWpjMkFwTzF4dUlDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2FXNWtaWGhsY3l4Y2JpQWdJQ0FnSUNBZ0lDQWdJR1JsYzJsbmJrUnZZM01zWEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMnhzWldOMGFXOXVjem9nWTI5c1RHbHpkQ3hjYmlBZ0lDQWdJQ0FnSUNBZ0lHMXBjbkp2Y2pvZ2JXbHljbTl5UTI5c2JHVmpkR2x2Yml4Y2JpQWdJQ0FnSUNBZ0lDQjlPMXh1SUNBZ0lDQWdJQ0I5S1Z4dUlDQWdJQ0FnS1R0Y2JpQWdJQ0FnSUhKbGRIVnliaUJqYjJ4ek8xeHVJQ0FnSUgxY2JseHVJQ0FnSUdOdmJuTjBJR052YkhNZ1BTQmhkMkZwZENCblpYUkRiMnh6S0NrN1hHNGdJQ0FnWTI5dWMzUWdiMjVzZVUxcGNuSnZjaUE5SUdGM1lXbDBJR2RsZEVOdmJITW9XMjFoYVc1TmMzQkpaRjBwTzF4dVhHNGdJQ0FnWTI5dWMzUWdZMjlzYkdWamRHbHZibk5VYnlBOUlGdGNiaUFnSUNBZ0lDNHVMbTl1YkhsTmFYSnliM0l1Wm1sc2RHVnlLQ2hqS1NBOVBpQmpMbTFwY25KdmNpa3ViV0Z3S0NoaktTQTlQaUJqTG0xcGNuSnZjaWtzWEc0Z0lDQWdJQ0F1TGk1amIyeHpMbTFoY0Nnb1l5a2dQVDRnWXk1amIyeHNaV04wYVc5dWN5a3VabXhoZENncExGeHVJQ0FnSUNBZ0xpNHVZMjlzY3k1bWFXeDBaWElvS0dNcElEMCtJR011YldseWNtOXlLUzV0WVhBb0tHTXBJRDArSUdNdWJXbHljbTl5S1N4Y2JpQWdJQ0JkSUdGeklGQnlhWFpoZEdWRGIyeHNaV04wYVc5dVcxMDdYRzVjYmlBZ0lDQmpiMjV6ZENCMWJtbHhkV1ZDZVVOdmJHeGxZM1JwYjI0Z1BTQmJYRzRnSUNBZ0lDQXVMaTV1WlhjZ1RXRndLRnh1SUNBZ0lDQWdJQ0JqYjJ4c1pXTjBhVzl1YzFSdkxtMWhjQ2dvYVhSbGJUb2dVSEpwZG1GMFpVTnZiR3hsWTNScGIyNHBJRDArSUZ0cGRHVnRMbTVoYldVc0lHbDBaVzFkS1Z4dUlDQWdJQ0FnS1M1MllXeDFaWE1vS1N4Y2JpQWdJQ0JkTzF4dVhHNGdJQ0FnYVdZZ0tIVnVhWEYxWlVKNVEyOXNiR1ZqZEdsdmJpNXNaVzVuZEdncElIdGNiaUFnSUNBZ0lIZHlhWFJsUTI5c2JHVmpkR2x2Ym5Nb2RXNXBjWFZsUW5sRGIyeHNaV04wYVc5dUxDQnZkWFJFYVhJcE8xeHVJQ0FnSUNBZ1kyOXVjM1FnYldWMFlVTnZiR3hsWTNScGIyNXpRMjl1Wm1sbklEMGdjR0YwYUM1cWIybHVLRnh1SUNBZ0lDQWdJQ0J2ZFhSRWFYSXNYRzRnSUNBZ0lDQWdJRndpVFVWVVFTMUpUa1pjSWl4Y2JpQWdJQ0FnSUNBZ1hDSmpiMnhzWldOMGFXOXVjMTlqYjI1bWFXY3Vhbk52Ymx3aVhHNGdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ1kyOXVjM1FnWTI5dWRISmhZM1JEYjJ4c1pXTjBhVzl1YzBOdmJtWnBaeUE5SUhCaGRHZ3VhbTlwYmloY2JpQWdJQ0FnSUNBZ2IzVjBSR2x5TEZ4dUlDQWdJQ0FnSUNCY0ltTnZiR3hsWTNScGIyNXpYMk52Ym1acFp5NXFjMjl1WENKY2JpQWdJQ0FnSUNrN1hHNGdJQ0FnSUNCbWN5NWpiM0I1Um1sc1pWTjVibU1vYldWMFlVTnZiR3hsWTNScGIyNXpRMjl1Wm1sbkxDQmpiMjUwY21GamRFTnZiR3hsWTNScGIyNXpRMjl1Wm1sbktUdGNiaUFnSUNBZ0lHeHZaeTVwYm1adktGeHVJQ0FnSUNBZ0lDQmdVM1J2Y21Wa0lDUjdZMjlzYkdWamRHbHZibk5VYnk1c1pXNW5kR2g5SUdOdmJHeGxZM1JwYjI1eklIUnZJQ1I3YldWMFlVTnZiR3hsWTNScGIyNXpRMjl1Wm1sbmZXQmNiaUFnSUNBZ0lDazdYRzRnSUNBZ0lDQnNiMmN1YVc1bWJ5aGNiaUFnSUNBZ0lDQWdZRU52Y0dsbFpDQmpiMnhzWldOMGFXOXVjMTlqYjI1bWFXY2dkRzhnSkh0amIyNTBjbUZqZEVOdmJHeGxZM1JwYjI1elEyOXVabWxuZlNCaGJHOXVaM05wWkdVZ2RHaGxJSEJoWTJ0aFoyVXVhbk52Ym1CY2JpQWdJQ0FnSUNrN1hHNWNiaUFnSUNBZ0lHTnZiSE11Wm05eVJXRmphQ2dvWXlrZ1BUNGdlMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQjdJR2x1WkdWNFpYTXNJR1JsYzJsbmJrUnZZM01zSUdOdmJHeGxZM1JwYjI1ekxDQnRhWEp5YjNJZ2ZTQTlJR003WEc0Z0lDQWdJQ0FnSUdOdmJuTjBJSFJ2U1c1a1pYZzZJRkJ5YVhaaGRHVkRiMnhzWldOMGFXOXVXMTBnUFNCYkxpNHVZMjlzYkdWamRHbHZibk1zSUcxcGNuSnZjbDB1Wm1sc2RHVnlLRnh1SUNBZ0lDQWdJQ0FnSUVKdmIyeGxZVzVjYmlBZ0lDQWdJQ0FnS1NCaGN5QlFjbWwyWVhSbFEyOXNiR1ZqZEdsdmJsdGRPMXh1SUNBZ0lDQWdJQ0IwYjBsdVpHVjRMbVp2Y2tWaFkyZ29LR2twSUQwK0lIdGNiaUFnSUNBZ0lDQWdJQ0IzY21sMFpVbHVaR1Y0WlhNb2FXNWtaWGhsY3l3Z2IzVjBSR2x5TENCcExtNWhiV1VwTzF4dUlDQWdJQ0FnSUNBZ0lIZHlhWFJsUTI5c2JHVmpkR2x2YmtSbGMybG5ia1J2WTNNb1pHVnphV2R1Ukc5amN5QjhmQ0JiWFN3Z2IzVjBSR2x5TENCcExtNWhiV1VwTzF4dUlDQWdJQ0FnSUNBZ0lHeHZaeTVwYm1adktGeHVJQ0FnSUNBZ0lDQWdJQ0FnWUZOMGIzSmxaQ0FrZTJsdVpHVjRaWE0vTG14bGJtZDBhQ0I4ZkNBd2ZTQnBibVJsZUdWeklHRnVaQ0FrZTJSbGMybG5ia1J2WTNNL0xteGxibWQwYUNCOGZDQXdmU0JrWlhOcFoyNGdaRzlqY3lCMGJ5QmpiMnhzWldOMGFXOXVJQ1I3YVM1dVlXMWxmV0JjYmlBZ0lDQWdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJSDFjYmlBZ2ZTazdYRzVjYm1OdmJuTjBJR1Z1YzNWeVpVbHVabkpoSUQwZ2JtVjNJRU52YlcxaGJtUW9LVnh1SUNBdWJtRnRaU2hjSW1GM1lXbDBMV2x1Wm5KaFhDSXBYRzRnSUM1a1pYTmpjbWx3ZEdsdmJpaGNJbmRoYVhSeklHWnZjaUIwYUdVZ2FXNW1jbUZ6ZEhKMVkzUjFjbVVnZEc4Z1ltVWdkWEFnWVc1a0lISjFibTVwYm1kY0lpbGNiaUFnTG05d2RHbHZiaWhjYmlBZ0lDQmNJaTB0WTI5dWRHRnBibVZ5SUR4VGRISnBibWMrWENJc1hHNGdJQ0FnWENKa2IyTnJaWElnWTI5dWRHRnBibVZ5SUc1aGJXVWdkRzhnZEdWemRDQW9kWE4xWVd4c2VTQnNZWE4wSUhCbFpYSXBYQ0lzWEc0Z0lDQWdYQ0ppYjI5MExXOXlaeTFqTFhCbFpYSXRNRndpWEc0Z0lDbGNiaUFnTG05d2RHbHZiaWhjSWkwdGRHbHRaVzkxZENBOFUzUnlhVzVuUGx3aUxDQmNJblJwYldWdmRYUWdZbVYwZDJWbGJpQjBaWE4wY3lCcGJpQnRhV3hzYVhObFkyOXVaSE5jSWl3Z1hDSTFNREF3WENJcFhHNGdJQzV2Y0hScGIyNG9YQ0l0TFdGMGRHVnRjSFJ6SUR4VGRISnBibWMrWENJc0lGd2liblZ0WW1WeUlHOW1JR0YwZEdWdGNIUnpJR0psWm05eVpTQm5hWFpwYm1jZ2RYQmNJaXdnWENJeE1Gd2lLVnh1SUNBdVlXTjBhVzl1S0dGemVXNWpJQ2h2Y0hScGIyNXpPaUJoYm5rcElEMCtJSHRjYmlBZ0lDQmpiMjV6ZENCd2EyY2dQU0JLVTA5T0xuQmhjbk5sS0Z4dUlDQWdJQ0FnWm5NdWNtVmhaRVpwYkdWVGVXNWpLSEJoZEdndWFtOXBiaWh3Y205alpYTnpMbU4zWkNncExDQmNJbkJoWTJ0aFoyVXVhbk52Ymx3aUtTd2dYQ0oxZEdZdE9Gd2lLVnh1SUNBZ0lDazdYRzVjYmlBZ0lDQmpiMjV6ZENCMlpYSnphVzl1SUQwZ2NHdG5MblpsY25OcGIyNDdYRzVjYmlBZ0lDQmpiMjV6ZENCc2IyY2dQU0JzYjJkblpYSXVabTl5S0Z3aVlYZGhhWFF0YVc1bWNtRmNJaWs3WEc0Z0lDQWdiRzluTG1SbFluVm5LRnh1SUNBZ0lDQWdZSEoxYm01cGJtY2dkMmwwYUNCdmNIUnBiMjV6T2lBa2UwcFRUMDR1YzNSeWFXNW5hV1o1S0c5d2RHbHZibk1wZlNCbWIzSWdKSHR3YTJjdWJtRnRaWDBnZG1WeWMybHZiaUFrZTNabGNuTnBiMjU5WUZ4dUlDQWdJQ2s3WEc0Z0lDQWdMeThnWlhOc2FXNTBMV1JwYzJGaWJHVXRibVY0ZEMxc2FXNWxJSEJ5WldabGNpMWpiMjV6ZEZ4dUlDQWdJR3hsZENCN0lHTnZiblJoYVc1bGNpd2dkR2x0Wlc5MWRDd2dZWFIwWlcxd2RITWdmU0E5SUc5d2RHbHZibk03WEc0Z0lDQWdkR2x0Wlc5MWRDQTlJSEJoY25ObFNXNTBLSFJwYldWdmRYUXBJSHg4SURVd01EQTdYRzRnSUNBZ1lYUjBaVzF3ZEhNZ1BTQndZWEp6WlVsdWRDaGhkSFJsYlhCMGN5a2dmSHdnTVRBN1hHNWNiaUFnSUNCaGQyRnBkQ0JsYm5OMWNtVkpibVp5WVhOMGNuVmpkSFZ5WlVKdmIzUmxaQ2hjSW1KdmIzUXRiM0puTFdNdGNHVmxjaTB3WENJc0lIUnBiV1Z2ZFhRc0lHRjBkR1Z0Y0hSektUdGNibHh1SUNBZ0lHeHZaeTVwYm1adktGeHVJQ0FnSUNBZ1lFbHVabkpoYzNSeWRXTjBkWEpsSUdKdmIzUmxaQ0J6ZFdOalpYTnpablZzYkhrZ0tHRmpZMjl5WkdsdVp5QjBieUJqYjI1MFlXbHVaWElnSkh0amIyNTBZV2x1WlhKOUtTRmdYRzRnSUNBZ0tUdGNiaUFnZlNrN1hHNWNibU52Ym5OMElHUmxjR3h2ZVVOdmJuUnlZV04wSUQwZ2JtVjNJRU52YlcxaGJtUW9LVnh1SUNBdWJtRnRaU2hjSW1SbGNHeHZlUzFqYjI1MGNtRmpkRndpS1Z4dUlDQXVaR1Z6WTNKcGNIUnBiMjRvWENKa1pYQnNiM2x6SUhSb1pTQnpaV3hsWTNSbFpDQmpiMjUwY21GamRGd2lLVnh1SUNBdWIzQjBhVzl1S0Z3aUxTMXVZVzFsSUR4VGRISnBibWMrWENJc0lGd2lRMjl1ZEhKaFkzUWdUbUZ0WlNBb1lXNWtJR1p2YkdSbGNpbGNJaWxjYmlBZ0xtOXdkR2x2YmloY0lpMHRhVzV3ZFhRZ1BGTjBjbWx1Wno1Y0lpd2dYQ0pwYm5CMWRDQm1iMnhrWlhKY0lpbGNiaUFnTG05d2RHbHZiaWhjYmlBZ0lDQmNJaTB0WTI5c2JHVmpkR2x2Ym5NdFkyOXVabWxuSUR4VGRISnBibWMrWENJc1hHNGdJQ0FnWENKd1lYUm9JSFJ2SUdOdmJHeGxZM1JwYjI1elgyTnZibVpwWnk1cWMyOXVJSFJ2SUdOdmJtWnBaM1Z5WlNCd2NtbDJZWFJsSUdOdmJHeGxZM1JwYjI1elhDSmNiaUFnS1Z4dUlDQXViM0IwYVc5dUtGeHVJQ0FnSUZ3aUxTMXBibU55WlcxbGJuUldaWEp6YVc5dUlEeFRkSEpwYm1jK1hDSXNYRzRnSUNBZ1hDSW9kSEoxWlNCOElHWmhiSE5sS1NCcFppQnphRzkxYkdRZ2RYTmxJSFpsY25OcGIyNGdiM0lnYzJWeGRXVnVZMlVnZEc4Z2RYQmtZWFJsSUdOdmJuUnlZV04wYzF3aUxGeHVJQ0FnSUdaaGJITmxYRzRnSUNsY2JpQWdMbTl3ZEdsdmJpaGNiaUFnSUNCY0lpMHRkSEpoWTJ0bGNrWnZiR1JsY2lBOFUzUnlhVzVuUGx3aUxGeHVJQ0FnSUZ3aVkyOXVkSEpoWTNRZ2RtVnljMmx2YmlCMGNtRmphMlZ5SUdadmJHUmxjaUFvYzJodmRXeGtJR0psSUdSbGJHVjBaV1FnYjI0Z2FXNW1jbUZ6ZEhKMVkzUjFjbVU2Wkc5M2JpbGNJaXhjYmlBZ0lDQndZWFJvTG1wdmFXNG9jSEp2WTJWemN5NWpkMlFvS1N3Z1hDSjBaWE4wYzF3aUxDQmNJbWx1ZEdWbmNtRjBhVzl1WENJc0lGd2lZMmhoYVc1amIyUmxWSEpoWTJ0bGNuTmNJaWxjYmlBZ0tWeHVJQ0F1YjNCMGFXOXVLRnh1SUNBZ0lGd2lMUzF3WldWeWN5QThVM1J5YVc1blBsd2lMRnh1SUNBZ0lGd2lZMjl0YldFZ2MyVndZWEpoZEdWa0lIQmxaWElnYVdSelhDSXNYRzRnSUNBZ1hDSnZjbWN0WVMxd1pXVnlMVEFzYjNKbkxXSXRjR1ZsY2kwd0xHOXlaeTFqTFhCbFpYSXRNRndpWEc0Z0lDbGNiaUFnTG1GamRHbHZiaWhoYzNsdVl5QW9iM0IwYVc5dWN6b2dZVzU1S1NBOVBpQjdYRzRnSUNBZ1kyOXVjM1FnY0d0bklEMGdTbE5QVGk1d1lYSnpaU2hjYmlBZ0lDQWdJR1p6TG5KbFlXUkdhV3hsVTNsdVl5aHdZWFJvTG1wdmFXNG9jSEp2WTJWemN5NWpkMlFvS1N3Z1hDSndZV05yWVdkbExtcHpiMjVjSWlrc0lGd2lkWFJtTFRoY0lpbGNiaUFnSUNBcE8xeHVYRzRnSUNBZ1kyOXVjM1FnZG1WeWMybHZiaUE5SUhCclp5NTJaWEp6YVc5dU8xeHVYRzRnSUNBZ1kyOXVjM1FnYkc5bklEMGdiRzluWjJWeUxtWnZjaWhjSW1SbGNHeHZlUzFqYjI1MGNtRmpkRndpS1R0Y2JpQWdJQ0JzYjJjdVpHVmlkV2NvWEc0Z0lDQWdJQ0JnY25WdWJtbHVaeUIzYVhSb0lHOXdkR2x2Ym5NNklDUjdTbE5QVGk1emRISnBibWRwWm5rb2IzQjBhVzl1Y3lsOUlHWnZjaUFrZTNCclp5NXVZVzFsZlNCMlpYSnphVzl1SUNSN2RtVnljMmx2Ym4xZ1hHNGdJQ0FnS1R0Y2JseHVJQ0FnSUdOdmJuTjBJSHRjYmlBZ0lDQWdJRzVoYldVc1hHNGdJQ0FnSUNCcGJuQjFkQ3hjYmlBZ0lDQWdJSEJsWlhKekxGeHVJQ0FnSUNBZ2RISmhZMnRsY2tadmJHUmxjaXhjYmlBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0JBZEhsd1pYTmpjbWx3ZEMxbGMyeHBiblF2Ym04dGRXNTFjMlZrTFhaaGNuTmNiaUFnSUNBZ0lHbHVZM0psYldWdWRGWmxjbk5wYjI0c1hHNGdJQ0FnSUNCamIyeHNaV04wYVc5dWMwTnZibVpwWnl4Y2JpQWdJQ0I5SUQwZ2IzQjBhVzl1Y3p0Y2JpQWdJQ0JqYjI1emRDQndaV1Z5U1dSeklEMGdjR1ZsY25NdWMzQnNhWFFvWENJc1hDSXBPMXh1WEc0Z0lDQWdZMjl1YzNRZ1kyOTFiblJRWVhSb0lEMGdjR0YwYUM1eVpYTnZiSFpsS0hCaGRHZ3VhbTlwYmloMGNtRmphMlZ5Um05c1pHVnlMQ0JnSkh0dVlXMWxmUzVqYjNWdWRHQXBLVHRjYmx4dUlDQWdJR3hsZENCelpYRjFaVzVqWlRvZ2JuVnRZbVZ5TzF4dVhHNGdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lITmxjWFZsYm1ObElEMGdjR0Z5YzJWSmJuUW9abk11Y21WaFpFWnBiR1ZUZVc1aktHTnZkVzUwVUdGMGFDa3VkRzlUZEhKcGJtY29YQ0oxZEdZdE9Gd2lLU2s3WEc0Z0lDQWdJQ0JwWmlBb2FYTk9ZVTRvYzJWeGRXVnVZMlVwS1NCelpYRjFaVzVqWlNBOUlERTdYRzRnSUNBZ0lDQmxiSE5sSUhObGNYVmxibU5sSUNzOUlERTdYRzRnSUNBZ0lDQXZMeUJsYzJ4cGJuUXRaR2x6WVdKc1pTMXVaWGgwTFd4cGJtVWdRSFI1Y0dWelkzSnBjSFF0WlhOc2FXNTBMMjV2TFhWdWRYTmxaQzEyWVhKelhHNGdJQ0FnZlNCallYUmphQ0FvWlRvZ2RXNXJibTkzYmlrZ2UxeHVJQ0FnSUNBZ2MyVnhkV1Z1WTJVZ1BTQXhPMXh1SUNBZ0lIMWNiaUFnSUNBdkwxeHVJQ0FnSUM4dklHbG1JQ2hwYm1OeVpXMWxiblJXWlhKemFXOXVLU0I3WEc0Z0lDQWdMeThnSUNCMlpYSnphVzl1SUQwZ2RtVnljMmx2YmlBcklHQXRKSHR6WlhGMVpXNWpaWDFnTzF4dUlDQWdJQzh2SUNBZ0x5OGdjMlZ4ZFdWdVkyVWdQU0F4TzF4dUlDQWdJQzh2SUgxY2JseHVJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQm1iM0lnS0dOdmJuTjBJSEJsWlhJZ2IyWWdjR1ZsY2tsa2N5a2dlMXh1SUNBZ0lDQWdJQ0J3WVdOcllXZGxRMjl1ZEhKaFkzUW9jR1ZsY2l3Z2FXNXdkWFFzSUc1aGJXVXNJSFpsY25OcGIyNHBPMXh1SUNBZ0lDQWdJQ0JwYm5OMFlXeHNRMjl1ZEhKaFkzUW9jR1ZsY2l3Z2JtRnRaU2s3WEc0Z0lDQWdJQ0FnSUdGd2NISnZkbVZEYjI1MGNtRmpkQ2hjYmlBZ0lDQWdJQ0FnSUNCd1pXVnlMRnh1SUNBZ0lDQWdJQ0FnSUc1aGJXVXNYRzRnSUNBZ0lDQWdJQ0FnY0dWbGNpQTlQVDBnWENKdmNtY3RZUzF3WldWeUxUQmNJbHh1SUNBZ0lDQWdJQ0FnSUNBZ1B5QmNJblJzY3kxallTMWpaWEowTG5CbGJWd2lYRzRnSUNBZ0lDQWdJQ0FnSUNBNklGd2liM0prWlhKbGNpMTBiSE10WTJFdFkyVnlkQzV3WlcxY0lpeGNiaUFnSUNBZ0lDQWdJQ0J6WlhGMVpXNWpaU3hjYmlBZ0lDQWdJQ0FnSUNCMlpYSnphVzl1TEZ4dUlDQWdJQ0FnSUNBZ0lHTnZiR3hsWTNScGIyNXpRMjl1Wm1sblhHNGdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQjlYRzRnSUNBZ0lDQm1jeTUzY21sMFpVWnBiR1ZUZVc1aktHTnZkVzUwVUdGMGFDd2djMlZ4ZFdWdVkyVXVkRzlUZEhKcGJtY29LU2s3WEc0Z0lDQWdmU0JqWVhSamFDQW9aWEp5T2lCaGJua3BJSHRjYmlBZ0lDQWdJR3h2Wnk1bGNuSnZjaWhjSWtWeWNtOXlJR1JsY0d4dmVXbHVaeUJqYjI1MGNtRmpkRHBjSWl3Z1pYSnlLVHRjYmlBZ0lDQjlYRzRnSUNBZ1kyOXRiV2wwUTJoaGFXNWpiMlJsS0c1aGJXVXNJSE5sY1hWbGJtTmxMQ0IyWlhKemFXOXVMQ0JqYjJ4c1pXTjBhVzl1YzBOdmJtWnBaeWs3WEc0Z0lIMHBPMXh1WEc1amIyNXpkQ0JuWlhSRGNubHdkRzlOWVhSbGNtbGhiQ0E5SUc1bGR5QkRiMjF0WVc1a0tDbGNiaUFnTG01aGJXVW9YQ0puWlhRdFkzSjVjSFJ2TFcxaGRHVnlhV0ZzWENJcFhHNGdJQzVrWlhOamNtbHdkR2x2YmloY0ltTnZjR2xsY3lCMGFHVWdZM0o1Y0hSdklHMWhkR1Z5YVdGc0lIUnZJSFJvWlNCelpXeGxZM1JsWkNCbWIyeGtaWEpjSWlsY2JpQWdMbTl3ZEdsdmJpaGNJaTB0Wm05c1pHVnlJRHhUZEhKcGJtYytYQ0lzSUZ3aWIzVjBjSFYwSUdadmJHUmxjbHdpTENCY0ltUnZZMnRsY2k5a2IyTnJaWEl0WkdGMFlWd2lLVnh1SUNBdWIzQjBhVzl1S0Z3aUxTMXZjbWNnVzFOMGNtbHVaMTFjSWl3Z1hDSjBhR1VnYjNKbkwzQmxaWElnZEc4Z1pYaDBjbUZqZENCbWNtOXRYQ0lzSUZ3aWIzSm5MV0ZjSWlsY2JpQWdMbUZqZEdsdmJpaGhjM2x1WXlBb2IzQjBhVzl1Y3pvZ1lXNTVLU0E5UGlCN1hHNGdJQ0FnWTI5dWMzUWdjR3RuSUQwZ1NsTlBUaTV3WVhKelpTaGNiaUFnSUNBZ0lHWnpMbkpsWVdSR2FXeGxVM2x1WXlod1lYUm9MbXB2YVc0b2NISnZZMlZ6Y3k1amQyUW9LU3dnWENKd1lXTnJZV2RsTG1wemIyNWNJaWtzSUZ3aWRYUm1MVGhjSWlsY2JpQWdJQ0FwTzF4dVhHNGdJQ0FnWTI5dWMzUWdkbVZ5YzJsdmJpQTlJSEJyWnk1MlpYSnphVzl1TzF4dVhHNGdJQ0FnWTI5dWMzUWdiRzluSUQwZ2JHOW5aMlZ5TG1admNpaGNJbWRsZEMxamNubHdkRzh0YldGMFpYSnBZV3hjSWlrN1hHNGdJQ0FnYkc5bkxtUmxZblZuS0Z4dUlDQWdJQ0FnWUhKMWJtNXBibWNnZDJsMGFDQnZjSFJwYjI1ek9pQWtlMHBUVDA0dWMzUnlhVzVuYVdaNUtHOXdkR2x2Ym5NcGZTQm1iM0lnSkh0d2EyY3VibUZ0WlgwZ2RtVnljMmx2YmlBa2UzWmxjbk5wYjI1OVlGeHVJQ0FnSUNrN1hHNGdJQ0FnWTI5dWMzUWdleUJtYjJ4a1pYSXNJRzl5WnlCOUlEMGdiM0IwYVc5dWN6dGNiaUFnSUNCbGVHVmpVM2x1WXloZ1pHOWphMlZ5SUdOd0lDUjdiM0puZlRvdmQyVmhkbVZ5TDJOc2FXVnVkQzh1SUNSN1ptOXNaR1Z5ZldBc0lIdGNiaUFnSUNBZ0lHTjNaRG9nY0hKdlkyVnpjeTVqZDJRb0tTeGNiaUFnSUNCOUtUdGNiaUFnZlNrN1hHNWNibU52Ym5OMElHWmhZbkpwWTBOdFpDQTlJRzVsZHlCRGIyMXRZVzVrS0NsY2JpQWdMbTVoYldVb1hDSm1iM0l0Wm1GaWNtbGpYQ0lwWEc0Z0lDNWpiMjF0WVc1a0tGd2labUZpY21salhDSXBYRzRnSUM1a1pYTmpjbWx3ZEdsdmJpaGNiaUFnSUNCY0ltVjRjRzl6WlhNZ2MyVjJaWEpoYkNCamIyMXRZVzVrY3lCMGJ5Qm9aV3h3SUcxaGJtRm5aU0IwYUdVZ1ptRmljbWxqSUdsdVpuSmhjM1J5ZFdOMGRYSmxYQ0pjYmlBZ0tUdGNibHh1Wm1GaWNtbGpRMjFrTG1Ga1pFTnZiVzFoYm1Rb1kyOXRjR2xzWlVOdmJXMWhibVFwTzF4dVptRmljbWxqUTIxa0xtRmtaRU52YlcxaGJtUW9aWGgwY21GamRFbHVaR1Y0WlhNcE8xeHVabUZpY21salEyMWtMbUZrWkVOdmJXMWhibVFvWlc1emRYSmxTVzVtY21FcE8xeHVabUZpY21salEyMWtMbUZrWkVOdmJXMWhibVFvWkdWd2JHOTVRMjl1ZEhKaFkzUXBPMXh1Wm1GaWNtbGpRMjFrTG1Ga1pFTnZiVzFoYm1Rb1oyVjBRM0o1Y0hSdlRXRjBaWEpwWVd3cE8xeHVabUZpY21salEyMWtMbUZrWkVOdmJXMWhibVFvWlhoMGNtRmpkRU52Ykd4bFkzUnBiMjV6S1R0Y2JseHVaWGh3YjNKMElHUmxabUYxYkhRZ1puVnVZM1JwYjI0Z1ptRmljbWxqS0NrZ2UxeHVJQ0J5WlhSMWNtNGdabUZpY21salEyMWtPMXh1ZlZ4dUlsMTkiXX0=
506
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGktbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQztBQUNwQixPQUFPLElBQUksTUFBTSxNQUFNLENBQUM7QUFDeEIsT0FBTyxFQUFVLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUN4QyxPQUFPLE9BQU8sTUFBTSx3QkFBd0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixvQkFBb0IsRUFDcEIsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsWUFBWSxHQUNiLGtDQUF5QjtBQUMxQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdkQsT0FBTyxFQUNMLGVBQWUsRUFDZiwwQkFBMEIsRUFDMUIsZUFBZSxFQUNmLGVBQWUsRUFDZixlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLDRCQUE0QixHQUM3Qix1QkFBb0I7QUFDckIscUNBQTRCO0FBQzVCLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUM1QixPQUFPLEVBQ0wsa0JBQWtCLElBQUksYUFBYSxFQUVuQyxnQkFBZ0IsRUFDaEIseUJBQXlCLEdBQzFCLHNDQUFtQztBQUdwQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBRXJDLFNBQVMsdUJBQXVCO0lBQzlCLE9BQU87UUFDTCxJQUFJLEVBQUUsNEJBQTRCO1FB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QVcsQ0FDVixtRUFBbUUsQ0FDcEUsQ0FBQztBQUVKLFNBQVMsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDckMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztBQUNyQyxTQUFTLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ2xDLFNBQVMsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDckMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBQ3hDLFNBQVMsQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUV6QyxNQUFNLENBQUMsT0FBTyxVQUFVLE1BQU07SUFDNUIsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1hbmQgfSBmcm9tIFwiY29tbWFuZGVyXCI7XG5pbXBvcnQgeyBMb2dnaW5nLCB0b1Bhc2NhbENhc2UgfSBmcm9tIFwiQGRlY2FmLXRzL2xvZ2dpbmdcIjtcbmltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcImNoaWxkX3Byb2Nlc3NcIjtcbmltcG9ydCBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBQbHVnaW4sIHJvbGx1cCB9IGZyb20gXCJyb2xsdXBcIjtcbmltcG9ydCByZXBsYWNlIGZyb20gXCJAcm9sbHVwL3BsdWdpbi1yZXBsYWNlXCI7XG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yLCBTZXJpYWxpemF0aW9uRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7XG4gIGdlbmVyYXRlTW9kZWxEZXNpZ25Eb2NzLFxuICBnZW5lcmF0ZU1vZGVsSW5kZXhlcyxcbiAgcmVhZE1vZGVsRmlsZSxcbiAgcmVhZE1vZGVsRm9sZGVycyxcbiAgd3JpdGVEZXNpZ25Eb2NzLFxuICB3cml0ZUluZGV4ZXMsXG59IGZyb20gXCIuL2NsaWVudC9pbmRleGVzXCI7XG5pbXBvcnQgeyBNb2RlbCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7XG4gIGFwcHJvdmVDb250cmFjdCxcbiAgZW5zdXJlSW5mcmFzdHJ1Y3R1cmVCb290ZWQsXG4gIGluc3RhbGxDb250cmFjdCxcbiAgcGFja2FnZUNvbnRyYWN0LFxuICBjb21taXRDaGFpbmNvZGUsXG4gIGdldENvbnRyYWN0U3RhcnRDb21tYW5kLFxuICBjb21waWxlV2l0aFRzY29uZmlnT3ZlcnJpZGVzLFxufSBmcm9tIFwiLi9jbGktdXRpbHNcIjtcbmltcG9ydCBcIi4vc2hhcmVkL292ZXJyaWRlc1wiO1xuaW1wb3J0IHRzIGZyb20gXCJ0eXBlc2NyaXB0XCI7XG5pbXBvcnQge1xuICBleHRyYWN0Q29sbGVjdGlvbnMgYXMgZXhDb2xsZWN0aW9ucyxcbiAgUHJpdmF0ZUNvbGxlY3Rpb24sXG4gIHdyaXRlQ29sbGVjdGlvbnMsXG4gIHdyaXRlQ29sbGVjdGlvbkRlc2lnbkRvY3MsXG59IGZyb20gXCIuL2NsaWVudC9jb2xsZWN0aW9ucy9pbmRleFwiO1xuaW1wb3J0IHsgQ291Y2hEQkRlc2lnbkRvYywgQ3JlYXRlSW5kZXhSZXF1ZXN0IH0gZnJvbSBcIkBkZWNhZi10cy9mb3ItY291Y2hkYlwiO1xuXG5jb25zdCBsb2dnZXIgPSBMb2dnaW5nLmZvcihcImZhYnJpY1wiKTtcblxuZnVuY3Rpb24gcmVzb2x2ZUJ1bmRsZWRKc0ltcG9ydHMoKTogUGx1Z2luIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOiBcInJlc29sdmUtYnVuZGxlZC1qcy1pbXBvcnRzXCIsXG4gICAgcmVzb2x2ZUlkKHNvdXJjZSwgaW1wb3J0ZXIpIHtcbiAgICAgIGlmICghaW1wb3J0ZXIgfHwgIXNvdXJjZS5zdGFydHNXaXRoKFwiLlwiKSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcmVzb2x2ZWRQYXRoID0gcGF0aC5yZXNvbHZlKHBhdGguZGlybmFtZShpbXBvcnRlciksIHNvdXJjZSk7XG4gICAgICBjb25zdCBjYW5kaWRhdGVzID0gW1xuICAgICAgICByZXNvbHZlZFBhdGgsXG4gICAgICAgIGAke3Jlc29sdmVkUGF0aH0uanNgLFxuICAgICAgICBwYXRoLmpvaW4ocmVzb2x2ZWRQYXRoLCBcImluZGV4LmpzXCIpLFxuICAgICAgXTtcblxuICAgICAgZm9yIChjb25zdCBjYW5kaWRhdGUgb2YgY2FuZGlkYXRlcykge1xuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyhjYW5kaWRhdGUpICYmIGZzLnN0YXRTeW5jKGNhbmRpZGF0ZSkuaXNGaWxlKCkpIHtcbiAgICAgICAgICByZXR1cm4gY2FuZGlkYXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBudWxsO1xuICAgIH0sXG4gIH07XG59XG5cbmNvbnN0IGNvbXBpbGVDb21tYW5kID0gbmV3IENvbW1hbmQoKVxuICAubmFtZShcImNvbXBpbGUtY29udHJhY3RcIilcbiAgLmRlc2NyaXB0aW9uKFwiQ3JlYXRlcyBhIGdsb2JhbCBjb250cmFjdFwiKVxuICAub3B0aW9uKFwiLS1kZXZcIiwgXCJjb21waWxlcyBjb250cmFjdHMgd2l0aG91dCBtaW5pZmljYXRpb25cIiwgZmFsc2UpXG4gIC5vcHRpb24oXCItLWRlYnVnXCIsIFwibWFrZXMgYXR0YWNoaW5nIGRlYnVnZ2VyIHBvc3NpYmxlXCIsIGZhbHNlKVxuICAub3B0aW9uKFxuICAgIFwiLS1jY2Fhc1wiLFxuICAgIFwiQWp1c3RzIHRoZSBwYWNrYWdlIGNvbW1hbmRzIHRvIGJlIGRlcGxveWVkIGFzIGNjYWFzXCIsXG4gICAgZmFsc2VcbiAgKVxuICAub3B0aW9uKFwiLS1uYW1lIDxTdHJpbmc+XCIsIFwiY29udHJhY3QgbmFtZVwiLCBcImdsb2JhbC1jb250cmFjdFwiKVxuICAub3B0aW9uKFwiLS1idW5kbGVcIiwgXCJCdW5kbGVzIHdpdGggcm9sbHVwIGluc3RlYWQgb2YgdXNpbmcgdHNjXCIsIGZhbHNlKVxuICAub3B0aW9uKFxuICAgIFwiLS10cy1jb25maWctZmlsZSA8c3RyaW5nPlwiLFxuICAgIFwicmVsYXRpdmUgcGF0aCB0byB0aGUgdHMgY29uZmlnIGZpbGUgYmFzZWQgb24gY3dkIG9yIGFic29sdXRlIHBhdGhcIixcbiAgICBcIi4vdHNjb25maWcuanNvblwiXG4gIClcbiAgLm9wdGlvbihcbiAgICBcIi0tZGVzY3JpcHRpb24gPFN0cmluZz5cIixcbiAgICBcImNvbnRyYWN0IGRlc2NyaXB0aW9uXCIsXG4gICAgXCJHbG9iYWwgY29udHJhY3QgaW1wbGVtZW50YXRpb25cIlxuICApXG4gIC5vcHRpb24oXCItLXN0cmlwLWNvbnRyYWN0LW5hbWVcIiwgXCJzdHJpcCBjb250cmFjdCBuYW1lIGZyb20gb3V0cHV0XCIsIGZhbHNlKVxuICAub3B0aW9uKFwiLS1pbnB1dCA8U3RyaW5nPlwiLCBcImlucHV0IGZvbGRlciBmb3IgY29udHJhY3RzXCIsIFwibGliL2NvbnRyYWN0c1wiKVxuICAub3B0aW9uKFwiLS1vdXRwdXQgPFN0cmluZz5cIiwgXCJvdXRwdXQgZm9sZGVyIGZvciBjb250cmFjdHNcIiwgXCIuL2NvbnRyYWN0c1wiKVxuICAub3B0aW9uKFwiLS1zb3VyY2VtYXBzXCIsIFwiaW5jbHVkZXMgc291cmNlbWFwcyBpbiB0aGUgY29tcGlsZWQgb3V0cHV0XCIsIGZhbHNlKVxuICAub3B0aW9uKFwiLS1ucG1yY1wiLCBcImluY2x1ZGVzIC5ucG1yYyBpbiB0aGUgY29tcGlsZWQgb3V0cHV0XCIsIGZhbHNlKVxuICAuYWN0aW9uKGFzeW5jIChvcHRpb25zOiBhbnkpID0+IHtcbiAgICBjb25zdCBwa2cgPSBKU09OLnBhcnNlKFxuICAgICAgZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKSwgXCJ1dGYtOFwiKVxuICAgICk7XG5cbiAgICBsZXQgbnBtcmNDb250ZW50ID0gdW5kZWZpbmVkO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgbGV0IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICAgIGRldixcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICAgIGRlYnVnLFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgICAgbmFtZSxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICAgIGRlc2NyaXB0aW9uLFxuICAgICAgb3V0cHV0LFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgICAgaW5wdXQsXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgICBzdHJpcENvbnRyYWN0TmFtZSxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICAgIGNjYWFzLFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgICAgYnVuZGxlLFxuXG4gICAgICB0c0NvbmZpZ0ZpbGUsXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgICBzb3VyY2VtYXBzLFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgICAgbnBtcmMsXG4gICAgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImNvbXBpbGUtY29udHJhY3RcIik7XG4gICAgdHJ5IHtcbiAgICAgIGlmIChucG1yYykge1xuICAgICAgICBucG1yY0NvbnRlbnQgPSBmc1xuICAgICAgICAgIC5yZWFkRmlsZVN5bmMocGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIFwiLm5wbXJjXCIpLCBcInV0Zi04XCIpXG4gICAgICAgICAgLnRvU3RyaW5nKCk7XG5cbiAgICAgICAgY29uc3QgcmVwbGFjZWQgPSBucG1yY0NvbnRlbnQucmVwbGFjZShcbiAgICAgICAgICAvXFwkXFx7KFtefV0rKVxcfS9nLFxuICAgICAgICAgIChfOiBhbnksIHZhck5hbWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwcm9jZXNzLmVudlt2YXJOYW1lXTtcblxuICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICAgIGBXYXJuaW5nOiBFbnZpcm9ubWVudCB2YXJpYWJsZSBcIiR7dmFyTmFtZX1cIiBpcyBub3Qgc2V0YFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICByZXR1cm4gXCJcIjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcblxuICAgICAgICBucG1yY0NvbnRlbnQgPSByZXBsYWNlZDtcbiAgICAgIH1cbiAgICB9IGNhdGNoIHtcbiAgICAgIGxvZy5pbmZvKGBObyAubnBtcmMgZmlsZSBmb3VuZCwgc2tpcHBpbmcgY29weWluZyAubnBtcmMgdG8gb3V0cHV0YCk7XG4gICAgfVxuXG4gICAgbG9nLmRlYnVnKFxuICAgICAgYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YFxuICAgICk7XG5cbiAgICB0c0NvbmZpZ0ZpbGUgPSBwYXRoLmlzQWJzb2x1dGUodHNDb25maWdGaWxlKVxuICAgICAgPyB0c0NvbmZpZ0ZpbGVcbiAgICAgIDogcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIHRzQ29uZmlnRmlsZSk7XG5cbiAgICBvdXRwdXQgPSBzdHJpcENvbnRyYWN0TmFtZSA/IG91dHB1dCA6IHBhdGguam9pbihvdXRwdXQsIG5hbWUpO1xuICAgIGxvZy5pbmZvKGBEZWxldGluZyBleGlzdGluZyBvdXRwdXQgZm9sZGVyIChpZiBleGlzdHMpIHVuZGVyICR7b3V0cHV0fWApO1xuICAgIGV4ZWNTeW5jKGBybSAtcmYgJHtvdXRwdXR9YCk7XG4gICAgaWYgKGJ1bmRsZSkge1xuICAgICAgbG9nLmluZm8oYGJ1bmRsaW5nIGNvbnRyYWN0IGZyb20gJHtpbnB1dH1gKTtcbiAgICAgIGNvbnN0IHRlbXBCdW5kbGVEaXIgPSBmcy5ta2R0ZW1wU3luYyhcbiAgICAgICAgcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIFwiLmNvbnRyYWN0LWJ1bmRsZS1cIilcbiAgICAgICk7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCBpbnB1dEVudHJ5ID0gcGF0aC5yZXNvbHZlKHByb2Nlc3MuY3dkKCksIGlucHV0LCBcImluZGV4LnRzXCIpO1xuICAgICAgICBjb25zdCBjb25maWdGaWxlID0gdHMucmVhZENvbmZpZ0ZpbGUodHNDb25maWdGaWxlLCB0cy5zeXMucmVhZEZpbGUpO1xuICAgICAgICBpZiAoY29uZmlnRmlsZS5lcnJvcikge1xuICAgICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKFxuICAgICAgICAgICAgdHMuZmxhdHRlbkRpYWdub3N0aWNNZXNzYWdlVGV4dChjb25maWdGaWxlLmVycm9yLm1lc3NhZ2VUZXh0LCBcIlxcblwiKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJzZWRDb25maWcgPSB0cy5wYXJzZUpzb25Db25maWdGaWxlQ29udGVudChcbiAgICAgICAgICBjb25maWdGaWxlLmNvbmZpZyxcbiAgICAgICAgICB0cy5zeXMsXG4gICAgICAgICAgcGF0aC5kaXJuYW1lKHRzQ29uZmlnRmlsZSksXG4gICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgIHRzQ29uZmlnRmlsZVxuICAgICAgICApO1xuICAgICAgICBpZiAocGFyc2VkQ29uZmlnLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihcbiAgICAgICAgICAgIHBhcnNlZENvbmZpZy5lcnJvcnNcbiAgICAgICAgICAgICAgLm1hcCgoZXJyb3IpID0+XG4gICAgICAgICAgICAgICAgdHMuZmxhdHRlbkRpYWdub3N0aWNNZXNzYWdlVGV4dChlcnJvci5tZXNzYWdlVGV4dCwgXCJcXG5cIilcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAuam9pbihcIlxcblwiKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0ZW1wQ29tcGlsZXJPcHRpb25zOiB0cy5Db21waWxlck9wdGlvbnMgPSB7XG4gICAgICAgICAgLi4ucGFyc2VkQ29uZmlnLm9wdGlvbnMsXG4gICAgICAgICAgb3V0RGlyOiB0ZW1wQnVuZGxlRGlyLFxuICAgICAgICAgIG1vZHVsZTogdHMuTW9kdWxlS2luZC5FU05leHQsXG4gICAgICAgICAgZGVjbGFyYXRpb246IGZhbHNlLFxuICAgICAgICAgIHNvdXJjZU1hcDogZmFsc2UsXG4gICAgICAgICAgaW5saW5lU291cmNlczogZmFsc2UsXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGJ1bmRsZWRFbnRyeVBvaW50ID0gdHNcbiAgICAgICAgICAuZ2V0T3V0cHV0RmlsZU5hbWVzKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAuLi5wYXJzZWRDb25maWcsXG4gICAgICAgICAgICAgIG9wdGlvbnM6IHRlbXBDb21waWxlck9wdGlvbnMsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaW5wdXRFbnRyeSxcbiAgICAgICAgICAgICF0cy5zeXMudXNlQ2FzZVNlbnNpdGl2ZUZpbGVOYW1lc1xuICAgICAgICAgIClcbiAgICAgICAgICAuZmluZCgoZmlsZU5hbWUpID0+IGZpbGVOYW1lLmVuZHNXaXRoKFwiLmpzXCIpKTtcblxuICAgICAgICBpZiAoIWJ1bmRsZWRFbnRyeVBvaW50KSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoXG4gICAgICAgICAgICBgRmFpbGVkIHRvIGRldGVybWluZSB0aGUgZW1pdHRlZCBidW5kbGUgZW50cnkgZm9yICR7aW5wdXRFbnRyeX1gXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbXBpbGVXaXRoVHNjb25maWdPdmVycmlkZXModHNDb25maWdGaWxlLCB0ZW1wQ29tcGlsZXJPcHRpb25zKTtcbiAgICAgICAgY29uc3QgYnVuZGxlZENvbnRyYWN0ID0gYXdhaXQgcm9sbHVwKHtcbiAgICAgICAgICBpbnB1dDogYnVuZGxlZEVudHJ5UG9pbnQsXG4gICAgICAgICAgcGx1Z2luczogW1xuICAgICAgICAgICAgcmVzb2x2ZUJ1bmRsZWRKc0ltcG9ydHMoKSxcbiAgICAgICAgICAgIHJlcGxhY2Uoe1xuICAgICAgICAgICAgICBwcmV2ZW50QXNzaWdubWVudDogdHJ1ZSxcbiAgICAgICAgICAgICAgZGVsaW1pdGVyczogW1wiXCIsIFwiXCJdLFxuICAgICAgICAgICAgICB2YWx1ZXM6IHsgXCIjI1ZFUlNJT04jI1wiOiB2ZXJzaW9uLCBcIiMjUEFDS0FHRSMjXCI6IHBrZy5uYW1lIH0sXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgICAgbG9nLmluZm8oXG4gICAgICAgICAgYHdpdGhpbmcgY29udHJhY3QgdG8gJHtvdXRwdXR9IHdpdGggbmFtZSAke3RvUGFzY2FsQ2FzZShuYW1lKX0uanNgXG4gICAgICAgICk7XG4gICAgICAgIGF3YWl0IGJ1bmRsZWRDb250cmFjdC53cml0ZSh7XG4gICAgICAgICAgZmlsZTogYCR7b3V0cHV0fS8ke3RvUGFzY2FsQ2FzZShuYW1lKX0uanNgLFxuICAgICAgICAgIGZvcm1hdDogXCJ1bWRcIixcbiAgICAgICAgICBuYW1lOiBgJHt0b1Bhc2NhbENhc2UobmFtZSl9LmpzYCxcbiAgICAgICAgICBzb3VyY2VtYXA6IHNvdXJjZW1hcHMgPyBcImlubGluZVwiIDogZmFsc2UsXG4gICAgICAgICAgc291cmNlbWFwUGF0aFRyYW5zZm9ybTogKHJlbGF0aXZlU291cmNlUGF0aCwgc291cmNlbWFwUGF0aCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYWJzb2x1dGVTb3VyY2VQYXRoID0gcGF0aC5yZXNvbHZlKFxuICAgICAgICAgICAgICBwYXRoLmRpcm5hbWUoc291cmNlbWFwUGF0aCksXG4gICAgICAgICAgICAgIHJlbGF0aXZlU291cmNlUGF0aFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgaWYgKGFic29sdXRlU291cmNlUGF0aC5zdGFydHNXaXRoKHRlbXBCdW5kbGVEaXIpKSB7XG4gICAgICAgICAgICAgIHJldHVybiBwYXRoLnBvc2l4LmpvaW4oXG4gICAgICAgICAgICAgICAgXCIuYnVuZGxlXCIsXG4gICAgICAgICAgICAgICAgcGF0aFxuICAgICAgICAgICAgICAgICAgLnJlbGF0aXZlKHRlbXBCdW5kbGVEaXIsIGFic29sdXRlU291cmNlUGF0aClcbiAgICAgICAgICAgICAgICAgIC5zcGxpdChwYXRoLnNlcClcbiAgICAgICAgICAgICAgICAgIC5qb2luKFwiL1wiKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gcmVsYXRpdmVTb3VyY2VQYXRoO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBhd2FpdCBidW5kbGVkQ29udHJhY3QuY2xvc2UoKTtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIGZzLnJtU3luYyh0ZW1wQnVuZGxlRGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSwgZm9yY2U6IHRydWUgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbXBpbGVXaXRoVHNjb25maWdPdmVycmlkZXModHNDb25maWdGaWxlLCB7XG4gICAgICAgIG91dERpcjogb3V0cHV0LFxuICAgICAgICBtb2R1bGU6IHRzLk1vZHVsZUtpbmQuRVNOZXh0LFxuICAgICAgICBkZWNsYXJhdGlvbjogZmFsc2UsXG4gICAgICAgIHNvdXJjZU1hcDogc291cmNlbWFwcyxcbiAgICAgICAgaW5saW5lU291cmNlczogc291cmNlbWFwcyxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHNjcmlwdHMgPSB7XG4gICAgICBzdGFydDogZ2V0Q29udHJhY3RTdGFydENvbW1hbmQoZGVidWcsIGNjYWFzKSxcbiAgICAgIFwic3RhcnQ6ZGV2XCI6IFwiZmFicmljLWNoYWluY29kZS1ub2RlIHN0YXJ0IC0tdGxzLmVuYWJsZWQgZmFsc2VcIixcbiAgICAgIFwic3RhcnQ6d2F0Y2hcIjogJ25vZGVtb24gLS1leGVjIFwibnBtIHJ1biBzdGFydDpkZXZcIicsXG4gICAgICBidWlsZDogJ2VjaG8gXCJObyBuZWVkIHRvIGJ1aWxkIHRoZSBjaGFpbmNvZGVcIicsXG4gICAgICBsaW50OiBcImVzbGludCAuIC0tZml4IC0tZXh0IC5qc1wiLFxuICAgIH07XG5cbiAgICBjb25zdCBjb250cmFjdFBhY2thZ2UgPSBwa2c7XG5cbiAgICBjb250cmFjdFBhY2thZ2UubmFtZSA9IG5hbWU7XG4gICAgY29udHJhY3RQYWNrYWdlLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb247XG4gICAgY29udHJhY3RQYWNrYWdlLnNjcmlwdHMgPSBzY3JpcHRzO1xuXG4gICAgZGVsZXRlIGNvbnRyYWN0UGFja2FnZS50eXBlO1xuICAgIGRlbGV0ZSBjb250cmFjdFBhY2thZ2UudHlwZXM7XG4gICAgZGVsZXRlIGNvbnRyYWN0UGFja2FnZS5leHBvcnRzO1xuICAgIGNvbnRyYWN0UGFja2FnZS5tYWluID0gYnVuZGxlXG4gICAgICA/IGAke3RvUGFzY2FsQ2FzZShuYW1lKX0uanNgXG4gICAgICA6IGAke2lucHV0fS9pbmRleC5qc2A7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKG91dHB1dCwgXCJwYWNrYWdlLmpzb25cIiksXG4gICAgICBKU09OLnN0cmluZ2lmeShjb250cmFjdFBhY2thZ2UpXG4gICAgKTtcblxuICAgIGlmIChucG1yYyAmJiBucG1yY0NvbnRlbnQpXG4gICAgICBmcy53cml0ZUZpbGVTeW5jKHBhdGguam9pbihvdXRwdXQsIFwiLm5wbXJjXCIpLCBucG1yY0NvbnRlbnQpO1xuXG4gICAgbG9nLmluZm8oYEluc3RhbGxpbmcgYW5kIHNocmlua3dyYXBwaW5nIGRlcGVuZGVuY2llc2ApO1xuICAgIGV4ZWNTeW5jKGBucG0gaW5zdGFsbGAsIHsgY3dkOiBvdXRwdXQgfSk7XG4gICAgZXhlY1N5bmMoYG5wbSBzaHJpbmt3cmFwYCwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBleGVjU3luYyhcInJtIC1yZiBub2RlX21vZHVsZXNcIiwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBsb2cuaW5mbyhgZGVsZXRpbmcgdGVtcCBmb2xkZXJzYCk7XG4gICAgZXhlY1N5bmMoYHJtIC1yZiAuL2xpYiAmJiBybSAtcmYgLi9kaXN0YCwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBsb2cuaW5mbyhcbiAgICAgIGBDb250cmFjdCAke25hbWV9IGNvbXBpbGVkIHN1Y2Nlc3NmdWxseSEgaW4gJHtwYXRoLnJlc29sdmUob3V0cHV0KX1gXG4gICAgKTtcbiAgICBpZiAoZGV2KSB7XG4gICAgICBsb2cuaW5mbyhgZGV2IG1vZGUgZW5hYmxlZC4gaW5zdGFsbGluZyBkZXBlbmRlbmNpZXMgZm9yIGRlYnVnZ2luZ2ApO1xuICAgICAgZXhlY1N5bmMoYG5wbSBpbnN0YWxsYCwge1xuICAgICAgICBjd2Q6IG91dHB1dCxcbiAgICAgICAgZW52OiB7IC4uLnByb2Nlc3MuZW52LCBOT0RFX0VOVjogXCJwcm9kdWN0aW9uXCIgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG5cbmNvbnN0IGV4dHJhY3RJbmRleGVzID0gbmV3IENvbW1hbmQoKVxuICAuY29tbWFuZChcImV4dHJhY3QtaW5kZXhlc1wiKVxuICAub3B0aW9uKFwiLS1maWxlIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZpbGVcIilcbiAgLm9wdGlvbihcIi0tZm9sZGVyIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZvbGRlclwiKVxuICAub3B0aW9uKFwiLS1vdXREaXIgPFN0cmluZz5cIiwgXCJ0aGUgb3V0ZGlyLiBzaG91bGQgbWF0Y2ggeW91ciBjb250cmFjdCBmb2xkZXJcIilcbiAgLmRlc2NyaXB0aW9uKFxuICAgIFwiQ3JlYXRlcyBhIHRoZSBKU09OIGluZGV4IGZpbGVzIHRvIGJlIHN1Ym1pdHRlZCB0byBhbG9uZyB3aXRoIHRoZSBjb250cmFjdFwiXG4gIClcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImV4dHJhY3QtaW5kZXhlc1wiKTtcbiAgICBsb2cuZGVidWcoXG4gICAgICBgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gXG4gICAgKTtcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBsZXQgeyBmaWxlLCBmb2xkZXIsIG91dERpciB9ID0gb3B0aW9ucztcblxuICAgIGNvbnN0IG1vZGVsczogYW55W10gPSBbXTtcbiAgICBpZiAoZmlsZSkge1xuICAgICAgbW9kZWxzLnB1c2goLi4ucmVhZE1vZGVsRmlsZShmaWxlKSk7XG4gICAgfVxuXG4gICAgaWYgKGZvbGRlcikge1xuICAgICAgbG9nLmluZm8oYExvYWRpbmcgbW9kZWxzIGZyb20gJHtmb2xkZXJ9Li4uYCk7XG4gICAgICBtb2RlbHMucHVzaCguLi4oYXdhaXQgcmVhZE1vZGVsRm9sZGVycyhmb2xkZXIpKSk7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdDogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGNvbnN0IGRlc2lnbkRvY3M6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcblxuICAgIGlmICghZmlsZSAmJiAhZm9sZGVyKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoYE11c3QgcGFzcyBhIGZpbGUgb3IgYSBmb2xkZXJgKTtcblxuICAgIGZvciAoY29uc3QgbSBvZiBtb2RlbHMpIHtcbiAgICAgIGxvZy52ZXJib3NlKGBFeHRyYWN0aW5nIGluZGV4ZXMgZm9yIHRhYmxlICR7TW9kZWwudGFibGVOYW1lKG0pfWApO1xuICAgICAgY29uc3QgaW5kZXhlcyA9IGdlbmVyYXRlTW9kZWxJbmRleGVzKG0pO1xuICAgICAgaW5kZXhlcy5mb3JFYWNoKChpbmRleCkgPT4ge1xuICAgICAgICBpZiAoaW5kZXgubmFtZSkge1xuICAgICAgICAgIHJlc3VsdFtpbmRleC5uYW1lXSA9IGluZGV4O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGdlbmVyYXRlTW9kZWxEZXNpZ25Eb2NzKG0sIGRlc2lnbkRvY3MpO1xuICAgIH1cbiAgICBjb25zdCBpbmRleGVzVG9Xcml0ZSA9IE9iamVjdC52YWx1ZXMocmVzdWx0KTtcbiAgICBjb25zdCBkb2NzVG9Xcml0ZSA9IE9iamVjdC52YWx1ZXMoZGVzaWduRG9jcyk7XG4gICAgbG9nLnZlcmJvc2UoYEZvdW5kICR7aW5kZXhlc1RvV3JpdGUubGVuZ3RofSBpbmRleGVzIHRvIGNyZWF0ZWApO1xuICAgIGxvZy52ZXJib3NlKGBGb3VuZCAke2RvY3NUb1dyaXRlLmxlbmd0aH0gZGVzaWduIGRvY3MgdG8gY3JlYXRlYCk7XG4gICAgbG9nLmRlYnVnKGBJbmRleGVzOiAke0pTT04uc3RyaW5naWZ5KHJlc3VsdCl9YCk7XG4gICAgbG9nLmRlYnVnKGBEZXNpZ25Eb2NzOiAke0pTT04uc3RyaW5naWZ5KGRlc2lnbkRvY3MpfWApO1xuICAgIHdyaXRlSW5kZXhlcyhpbmRleGVzVG9Xcml0ZSwgb3V0RGlyKTtcbiAgICB3cml0ZURlc2lnbkRvY3MoZG9jc1RvV3JpdGUsIG91dERpcik7XG4gIH0pO1xuXG5jb25zdCBleHRyYWN0Q29sbGVjdGlvbnMgPSBuZXcgQ29tbWFuZCgpXG4gIC5jb21tYW5kKFwiZXh0cmFjdC1jb2xsZWN0aW9uc1wiKVxuICAub3B0aW9uKFwiLS1maWxlIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZpbGVcIilcbiAgLm9wdGlvbihcIi0tZm9sZGVyIFtTdHJpbmddXCIsIFwidGhlIG1vZGVsIGZvbGRlclwiKVxuICAub3B0aW9uKFwiLS1vdXREaXIgPFN0cmluZz5cIiwgXCJ0aGUgb3V0ZGlyLiBzaG91bGQgbWF0Y2ggeW91ciBjb250cmFjdCBmb2xkZXJcIilcbiAgLm9wdGlvbihcIi0tbXNwSWRzIDxTdHJpbmc+XCIsIFwic2luZ2xlIG1zcElkIG9yIHN0cmluZ2lmaWVkIGFycmF5XCIpXG4gIC5vcHRpb24oXCItLW1haW5Nc3BJZCA8U3RyaW5nPlwiLCBcInNpbmdsZSBtc3BJZFwiKVxuICAub3B0aW9uKFxuICAgIFwiLS1vdmVycmlkZXMgW1N0cmluZ11cIixcbiAgICBcInN0cmluZ2lmaWVkIG92ZXJyaWRlIG9iamVjdCB7cmVxdWlyZWRQZWVyQ291bnQ6IG51bWJlciwgbWF4UGVlckNvdW50OiBudW1iZXIsIGJsb2NrVG9MaXZlOiBudW1iZXIsIG1lbWJlck9ubHlSZWFkOiBudW1iZXIsIG1lbWJlck9ubHlXcml0ZTogbnVtYmVyLCBlbmRvcnNlbWVudFBvbGljeTogIHt9fVwiXG4gIClcbiAgLmRlc2NyaXB0aW9uKFxuICAgIFwiQ3JlYXRlcyBhIHRoZSBKU09OIGluZGV4IGZpbGVzIHRvIGJlIHN1Ym1pdHRlZCB0byBhbG9uZyB3aXRoIHRoZSBjb250cmFjdFwiXG4gIClcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImV4dHJhY3QtY29sbGVjdGlvbnNcIik7XG4gICAgbG9nLmRlYnVnKFxuICAgICAgYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YFxuICAgICk7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgbGV0IHsgZmlsZSwgZm9sZGVyLCBvdXREaXIsIG1zcElkcywgbWFpbk1zcElkIH0gPSBvcHRpb25zO1xuXG4gICAgdHJ5IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIG1zcElkcyA9IG1zcElkcyA/IEpTT04ucGFyc2UobXNwSWRzKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgICAgfSBjYXRjaCAoZTogdW5rbm93bikge1xuICAgICAgICAvLyAgZG8gbm90aGluZ1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGU6IHVua25vd24pIHtcbiAgICAgIHRocm93IG5ldyBTZXJpYWxpemF0aW9uRXJyb3IoYFVuYWJsZSB0byBleHRyYWN0IG1zcGlkczogICR7ZX1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBtb2RlbHM6IGFueVtdID0gW107XG4gICAgaWYgKGZpbGUpIHtcbiAgICAgIG1vZGVscy5wdXNoKC4uLnJlYWRNb2RlbEZpbGUoZmlsZSkpO1xuICAgIH1cblxuICAgIGlmIChmb2xkZXIpIHtcbiAgICAgIGxvZy5pbmZvKGBMb2FkaW5nIG1vZGVscyBmcm9tICR7Zm9sZGVyfS4uLmApO1xuICAgICAgbW9kZWxzLnB1c2goLi4uKGF3YWl0IHJlYWRNb2RlbEZvbGRlcnMoZm9sZGVyKSkpO1xuICAgIH1cblxuICAgIGlmICghZmlsZSAmJiAhZm9sZGVyKVxuICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoYE11c3QgcGFzcyBhIGZpbGUgb3IgYSBmb2xkZXJgKTtcblxuICAgIGNvbnN0IGluamVjdGFibGVNb2RlbHMgPSBtb2RlbHMuZmlsdGVyKFxuICAgICAgKG1vZGVsKSA9PlxuICAgICAgICBNb2RlbC5pc1NoYXJlZChtb2RlbCkgfHxcbiAgICAgICAgTW9kZWwuaXNQcml2YXRlKG1vZGVsKSB8fFxuICAgICAgICAhIU1vZGVsLm1pcnJvcmVkQXQobW9kZWwpXG4gICAgKTtcbiAgICBpZiAoIWluamVjdGFibGVNb2RlbHMubGVuZ3RoKSB7XG4gICAgICBsb2cuaW5mbyhcbiAgICAgICAgYE5vIHNoYXJlZCwgcHJpdmF0ZSwgb3IgbWlycm9yZWQgbW9kZWxzIGZvdW5kIHRvIGV4dHJhY3QgY29sbGVjdGlvbnNgXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGFzeW5jIGZ1bmN0aW9uIGdldENvbHMobXNwSWRzTGlzdD86IHN0cmluZ1tdKSB7XG4gICAgICBjb25zdCBjb2xzOiB7XG4gICAgICAgIGluZGV4ZXM6IENyZWF0ZUluZGV4UmVxdWVzdFtdO1xuICAgICAgICBkZXNpZ25Eb2NzOiBDb3VjaERCRGVzaWduRG9jW107XG4gICAgICAgIG1pcnJvcj86IFByaXZhdGVDb2xsZWN0aW9uO1xuICAgICAgICBjb2xsZWN0aW9uczogUHJpdmF0ZUNvbGxlY3Rpb25bXTtcbiAgICAgIH1bXSA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICBpbmplY3RhYmxlTW9kZWxzLm1hcChhc3luYyAoY2xhenopID0+IHtcbiAgICAgICAgICBjb25zdCB0YWJsZU5hbWUgPSBNb2RlbC50YWJsZU5hbWUoY2xhenopO1xuICAgICAgICAgIGNvbnN0IG1pcnJvck1ldGEgPSBNb2RlbC5taXJyb3JlZEF0KGNsYXp6KTtcblxuICAgICAgICAgIGNvbnNvbGUubG9nKHRhYmxlTmFtZSk7XG4gICAgICAgICAgY29uc3QgY29sbGVjdGlvbnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcbiAgICAgICAgICBmb3IgKGNvbnN0IG1zcCBvZiBtc3BJZHNMaXN0IHx8IG1zcElkcyB8fCBbXSkge1xuICAgICAgICAgICAgY29sbGVjdGlvbnNbbXNwXSA9IGF3YWl0IGV4Q29sbGVjdGlvbnMoXG4gICAgICAgICAgICAgIGNsYXp6LFxuICAgICAgICAgICAgICBbbXNwLCBtYWluTXNwSWRdLFxuICAgICAgICAgICAgICB7fSxcbiAgICAgICAgICAgICAgLy8ge1xuICAgICAgICAgICAgICAvLyAgIHNoYXJlZENvbHM6IE9iamVjdC5hc3NpZ24oe30sIG92ZXJyaWRlcy5zaGFyZWRDb2xzKSxcbiAgICAgICAgICAgICAgLy8gICBwcml2YXRlQ29sczogT2JqZWN0LmFzc2lnbih7fSwgb3ZlcnJpZGVzLnByaXZhdGVDb2xzKSxcbiAgICAgICAgICAgICAgLy8gfSxcbiAgICAgICAgICAgICAgISFtaXJyb3JNZXRhXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxldCBtaXJyb3JDb2xsZWN0aW9uOiBQcml2YXRlQ29sbGVjdGlvbiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICAgICAgICAgIGlmIChtaXJyb3JNZXRhKSB7XG4gICAgICAgICAgICBjb2xsZWN0aW9uc1ttYWluTXNwSWRdID0gY29sbGVjdGlvbnNbbWFpbk1zcElkXSB8fCB7fTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKGNvbGxlY3Rpb25zKS5mb3JFYWNoKChtc3A6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICBjb2xsZWN0aW9uc1ttYWluTXNwSWRdLnByaXZhdGVzID0gY29sbGVjdGlvbnNbXG4gICAgICAgICAgICAgICAgbXNwXG4gICAgICAgICAgICAgIF0ucHJpdmF0ZXM/LmZpbHRlcigocDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHAubmFtZSAhPT0gKG1pcnJvck1ldGEucmVzb2x2ZXIgYXMgc3RyaW5nKSkgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgbWlycm9yQ29sbGVjdGlvbiA9IHAgYXMgYW55O1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBwcml2YXRlc0NvdW50ID0gT2JqZWN0LnZhbHVlcyhjb2xsZWN0aW9ucylcbiAgICAgICAgICAgIC5tYXAoKGMpID0+IGMucHJpdmF0ZXMpXG4gICAgICAgICAgICAuZmxhdCgpLmxlbmd0aDtcbiAgICAgICAgICBpZiAocHJpdmF0ZXNDb3VudClcbiAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgIC5pbmZvKGBGb3VuZCAke3ByaXZhdGVzQ291bnR9IHByaXZhdGUgY29sbGVjdGlvbnMgdG8gY3JlYXRlYCk7XG4gICAgICAgICAgY29uc3Qgc2hhcmVkQ291bnQgPSBPYmplY3QudmFsdWVzKGNvbGxlY3Rpb25zKVxuICAgICAgICAgICAgLm1hcCgoYykgPT4gYy5zaGFyZWQpXG4gICAgICAgICAgICAuZmxhdCgpLmxlbmd0aDtcblxuICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgLmZvcihNb2RlbC50YWJsZU5hbWUoY2xhenopKVxuICAgICAgICAgICAgLmluZm8oYEZvdW5kICR7c2hhcmVkQ291bnR9IHNoYXJlZCBjb2xsZWN0aW9ucyB0byBjcmVhdGVgKTtcbiAgICAgICAgICBpZiAobWlycm9yQ29sbGVjdGlvbilcbiAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgIC5pbmZvKFxuICAgICAgICAgICAgICAgIGBGb3VuZCBvbmUgbWlycm9yIGNvbGxlY3Rpb24gJHttaXJyb3JNZXRhPy5yZXNvbHZlciBhcyBzdHJpbmd9YFxuICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgY29uc3QgY29sTGlzdCA9IE9iamVjdC52YWx1ZXMoY29sbGVjdGlvbnMpXG4gICAgICAgICAgICAubWFwKChjKSA9PiBbLi4uKGMucHJpdmF0ZXMgfHwgW10pLCAuLi4oYy5zaGFyZWQgfHwgW10pXSlcbiAgICAgICAgICAgIC5mbGF0KCk7XG4gICAgICAgICAgbGV0IGluZGV4ZXM6IENyZWF0ZUluZGV4UmVxdWVzdFtdID0gW107XG4gICAgICAgICAgbGV0IGRlc2lnbkRvY3M6IENvdWNoREJEZXNpZ25Eb2NbXSA9IFtdO1xuICAgICAgICAgIGlmIChjb2xMaXN0Lmxlbmd0aCkge1xuICAgICAgICAgICAgbG9nXG4gICAgICAgICAgICAgIC5mb3IoTW9kZWwudGFibGVOYW1lKGNsYXp6KSlcbiAgICAgICAgICAgICAgLnZlcmJvc2UoYGdlbmVyYXRpbmcgaW5kZXhlcyBmb3IgY29sbGVjdGlvbnNgKTtcbiAgICAgICAgICAgIGluZGV4ZXMgPSBnZW5lcmF0ZU1vZGVsSW5kZXhlcyhjbGF6eik7XG4gICAgICAgICAgICBsb2dcbiAgICAgICAgICAgICAgLmZvcihNb2RlbC50YWJsZU5hbWUoY2xhenopKVxuICAgICAgICAgICAgICAuaW5mbyhgZm91bmQgJHtpbmRleGVzLmxlbmd0aH0gaW5kZXhlc2ApO1xuICAgICAgICAgICAgZGVzaWduRG9jcyA9IGdlbmVyYXRlTW9kZWxEZXNpZ25Eb2NzKGNsYXp6KTtcbiAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgIC5pbmZvKGBmb3VuZCAke2Rlc2lnbkRvY3MubGVuZ3RofSBkZXNpZ24gZG9jc2ApO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaW5kZXhlcyxcbiAgICAgICAgICAgIGRlc2lnbkRvY3MsXG4gICAgICAgICAgICBjb2xsZWN0aW9uczogY29sTGlzdCxcbiAgICAgICAgICAgIG1pcnJvcjogbWlycm9yQ29sbGVjdGlvbixcbiAgICAgICAgICB9O1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICAgIHJldHVybiBjb2xzO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbHMgPSBhd2FpdCBnZXRDb2xzKCk7XG4gICAgY29uc3Qgb25seU1pcnJvciA9IGF3YWl0IGdldENvbHMoW21haW5Nc3BJZF0pO1xuXG4gICAgY29uc3QgY29sbGVjdGlvbnNUbyA9IFtcbiAgICAgIC4uLm9ubHlNaXJyb3IuZmlsdGVyKChjKSA9PiBjLm1pcnJvcikubWFwKChjKSA9PiBjLm1pcnJvciksXG4gICAgICAuLi5jb2xzLm1hcCgoYykgPT4gYy5jb2xsZWN0aW9ucykuZmxhdCgpLFxuICAgICAgLi4uY29scy5maWx0ZXIoKGMpID0+IGMubWlycm9yKS5tYXAoKGMpID0+IGMubWlycm9yKSxcbiAgICBdIGFzIFByaXZhdGVDb2xsZWN0aW9uW107XG5cbiAgICBjb25zdCB1bmlxdWVCeUNvbGxlY3Rpb24gPSBbXG4gICAgICAuLi5uZXcgTWFwKFxuICAgICAgICBjb2xsZWN0aW9uc1RvLm1hcCgoaXRlbTogUHJpdmF0ZUNvbGxlY3Rpb24pID0+IFtpdGVtLm5hbWUsIGl0ZW1dKVxuICAgICAgKS52YWx1ZXMoKSxcbiAgICBdO1xuXG4gICAgaWYgKHVuaXF1ZUJ5Q29sbGVjdGlvbi5sZW5ndGgpIHtcbiAgICAgIHdyaXRlQ29sbGVjdGlvbnModW5pcXVlQnlDb2xsZWN0aW9uLCBvdXREaXIpO1xuICAgICAgY29uc3QgbWV0YUNvbGxlY3Rpb25zQ29uZmlnID0gcGF0aC5qb2luKFxuICAgICAgICBvdXREaXIsXG4gICAgICAgIFwiTUVUQS1JTkZcIixcbiAgICAgICAgXCJjb2xsZWN0aW9uc19jb25maWcuanNvblwiXG4gICAgICApO1xuICAgICAgY29uc3QgY29udHJhY3RDb2xsZWN0aW9uc0NvbmZpZyA9IHBhdGguam9pbihcbiAgICAgICAgb3V0RGlyLFxuICAgICAgICBcImNvbGxlY3Rpb25zX2NvbmZpZy5qc29uXCJcbiAgICAgICk7XG4gICAgICBmcy5jb3B5RmlsZVN5bmMobWV0YUNvbGxlY3Rpb25zQ29uZmlnLCBjb250cmFjdENvbGxlY3Rpb25zQ29uZmlnKTtcbiAgICAgIGxvZy5pbmZvKFxuICAgICAgICBgU3RvcmVkICR7Y29sbGVjdGlvbnNUby5sZW5ndGh9IGNvbGxlY3Rpb25zIHRvICR7bWV0YUNvbGxlY3Rpb25zQ29uZmlnfWBcbiAgICAgICk7XG4gICAgICBsb2cuaW5mbyhcbiAgICAgICAgYENvcGllZCBjb2xsZWN0aW9uc19jb25maWcgdG8gJHtjb250cmFjdENvbGxlY3Rpb25zQ29uZmlnfSBhbG9uZ3NpZGUgdGhlIHBhY2thZ2UuanNvbmBcbiAgICAgICk7XG5cbiAgICAgIGNvbHMuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICBjb25zdCB7IGluZGV4ZXMsIGRlc2lnbkRvY3MsIGNvbGxlY3Rpb25zLCBtaXJyb3IgfSA9IGM7XG4gICAgICAgIGNvbnN0IHRvSW5kZXg6IFByaXZhdGVDb2xsZWN0aW9uW10gPSBbLi4uY29sbGVjdGlvbnMsIG1pcnJvcl0uZmlsdGVyKFxuICAgICAgICAgIEJvb2xlYW5cbiAgICAgICAgKSBhcyBQcml2YXRlQ29sbGVjdGlvbltdO1xuICAgICAgICB0b0luZGV4LmZvckVhY2goKGkpID0+IHtcbiAgICAgICAgICB3cml0ZUluZGV4ZXMoaW5kZXhlcywgb3V0RGlyLCBpLm5hbWUpO1xuICAgICAgICAgIHdyaXRlQ29sbGVjdGlvbkRlc2lnbkRvY3MoZGVzaWduRG9jcyB8fCBbXSwgb3V0RGlyLCBpLm5hbWUpO1xuICAgICAgICAgIGxvZy5pbmZvKFxuICAgICAgICAgICAgYFN0b3JlZCAke2luZGV4ZXM/Lmxlbmd0aCB8fCAwfSBpbmRleGVzIGFuZCAke2Rlc2lnbkRvY3M/Lmxlbmd0aCB8fCAwfSBkZXNpZ24gZG9jcyB0byBjb2xsZWN0aW9uICR7aS5uYW1lfWBcbiAgICAgICAgICApO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG5cbmNvbnN0IGVuc3VyZUluZnJhID0gbmV3IENvbW1hbmQoKVxuICAubmFtZShcImF3YWl0LWluZnJhXCIpXG4gIC5kZXNjcmlwdGlvbihcIndhaXRzIGZvciB0aGUgaW5mcmFzdHJ1Y3R1cmUgdG8gYmUgdXAgYW5kIHJ1bm5pbmdcIilcbiAgLm9wdGlvbihcbiAgICBcIi0tY29udGFpbmVyIDxTdHJpbmc+XCIsXG4gICAgXCJkb2NrZXIgY29udGFpbmVyIG5hbWUgdG8gdGVzdCAodXN1YWxseSBsYXN0IHBlZXIpXCIsXG4gICAgXCJib290LW9yZy1jLXBlZXItMFwiXG4gIClcbiAgLm9wdGlvbihcIi0tdGltZW91dCA8U3RyaW5nPlwiLCBcInRpbWVvdXQgYmV0d2VlbiB0ZXN0cyBpbiBtaWxsaXNlY29uZHNcIiwgXCI1MDAwXCIpXG4gIC5vcHRpb24oXCItLWF0dGVtcHRzIDxTdHJpbmc+XCIsIFwibnVtYmVyIG9mIGF0dGVtcHRzIGJlZm9yZSBnaXZpbmcgdXBcIiwgXCIxMFwiKVxuICAuYWN0aW9uKGFzeW5jIChvcHRpb25zOiBhbnkpID0+IHtcbiAgICBjb25zdCBwa2cgPSBKU09OLnBhcnNlKFxuICAgICAgZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKSwgXCJ1dGYtOFwiKVxuICAgICk7XG5cbiAgICBjb25zdCB2ZXJzaW9uID0gcGtnLnZlcnNpb247XG5cbiAgICBjb25zdCBsb2cgPSBsb2dnZXIuZm9yKFwiYXdhaXQtaW5mcmFcIik7XG4gICAgbG9nLmRlYnVnKFxuICAgICAgYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YFxuICAgICk7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGxldCB7IGNvbnRhaW5lciwgdGltZW91dCwgYXR0ZW1wdHMgfSA9IG9wdGlvbnM7XG4gICAgdGltZW91dCA9IHBhcnNlSW50KHRpbWVvdXQpIHx8IDUwMDA7XG4gICAgYXR0ZW1wdHMgPSBwYXJzZUludChhdHRlbXB0cykgfHwgMTA7XG5cbiAgICBhd2FpdCBlbnN1cmVJbmZyYXN0cnVjdHVyZUJvb3RlZChcImJvb3Qtb3JnLWMtcGVlci0wXCIsIHRpbWVvdXQsIGF0dGVtcHRzKTtcblxuICAgIGxvZy5pbmZvKFxuICAgICAgYEluZnJhc3RydWN0dXJlIGJvb3RlZCBzdWNjZXNzZnVsbHkgKGFjY29yZGluZyB0byBjb250YWluZXIgJHtjb250YWluZXJ9KSFgXG4gICAgKTtcbiAgfSk7XG5cbmNvbnN0IGRlcGxveUNvbnRyYWN0ID0gbmV3IENvbW1hbmQoKVxuICAubmFtZShcImRlcGxveS1jb250cmFjdFwiKVxuICAuZGVzY3JpcHRpb24oXCJkZXBsb3lzIHRoZSBzZWxlY3RlZCBjb250cmFjdFwiKVxuICAub3B0aW9uKFwiLS1uYW1lIDxTdHJpbmc+XCIsIFwiQ29udHJhY3QgTmFtZSAoYW5kIGZvbGRlcilcIilcbiAgLm9wdGlvbihcIi0taW5wdXQgPFN0cmluZz5cIiwgXCJpbnB1dCBmb2xkZXJcIilcbiAgLm9wdGlvbihcbiAgICBcIi0tY29sbGVjdGlvbnMtY29uZmlnIDxTdHJpbmc+XCIsXG4gICAgXCJwYXRoIHRvIGNvbGxlY3Rpb25zX2NvbmZpZy5qc29uIHRvIGNvbmZpZ3VyZSBwcml2YXRlIGNvbGxlY3Rpb25zXCJcbiAgKVxuICAub3B0aW9uKFxuICAgIFwiLS1pbmNyZW1lbnRWZXJzaW9uIDxTdHJpbmc+XCIsXG4gICAgXCIodHJ1ZSB8IGZhbHNlKSBpZiBzaG91bGQgdXNlIHZlcnNpb24gb3Igc2VxdWVuY2UgdG8gdXBkYXRlIGNvbnRyYWN0c1wiLFxuICAgIGZhbHNlXG4gIClcbiAgLm9wdGlvbihcbiAgICBcIi0tdHJhY2tlckZvbGRlciA8U3RyaW5nPlwiLFxuICAgIFwiY29udHJhY3QgdmVyc2lvbiB0cmFja2VyIGZvbGRlciAoc2hvdWxkIGJlIGRlbGV0ZWQgb24gaW5mcmFzdHJ1Y3R1cmU6ZG93bilcIixcbiAgICBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJ0ZXN0c1wiLCBcImludGVncmF0aW9uXCIsIFwiY2hhaW5jb2RlVHJhY2tlcnNcIilcbiAgKVxuICAub3B0aW9uKFxuICAgIFwiLS1wZWVycyA8U3RyaW5nPlwiLFxuICAgIFwiY29tbWEgc2VwYXJhdGVkIHBlZXIgaWRzXCIsXG4gICAgXCJvcmctYS1wZWVyLTAsb3JnLWItcGVlci0wLG9yZy1jLXBlZXItMFwiXG4gIClcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImRlcGxveS1jb250cmFjdFwiKTtcbiAgICBsb2cuZGVidWcoXG4gICAgICBgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gXG4gICAgKTtcblxuICAgIGNvbnN0IHtcbiAgICAgIG5hbWUsXG4gICAgICBpbnB1dCxcbiAgICAgIHBlZXJzLFxuICAgICAgdHJhY2tlckZvbGRlcixcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIGluY3JlbWVudFZlcnNpb24sXG4gICAgICBjb2xsZWN0aW9uc0NvbmZpZyxcbiAgICB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBwZWVySWRzID0gcGVlcnMuc3BsaXQoXCIsXCIpO1xuXG4gICAgY29uc3QgY291bnRQYXRoID0gcGF0aC5yZXNvbHZlKHBhdGguam9pbih0cmFja2VyRm9sZGVyLCBgJHtuYW1lfS5jb3VudGApKTtcblxuICAgIGxldCBzZXF1ZW5jZTogbnVtYmVyO1xuXG4gICAgdHJ5IHtcbiAgICAgIHNlcXVlbmNlID0gcGFyc2VJbnQoZnMucmVhZEZpbGVTeW5jKGNvdW50UGF0aCkudG9TdHJpbmcoXCJ1dGYtOFwiKSk7XG4gICAgICBpZiAoaXNOYU4oc2VxdWVuY2UpKSBzZXF1ZW5jZSA9IDE7XG4gICAgICBlbHNlIHNlcXVlbmNlICs9IDE7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgfSBjYXRjaCAoZTogdW5rbm93bikge1xuICAgICAgc2VxdWVuY2UgPSAxO1xuICAgIH1cbiAgICAvL1xuICAgIC8vIGlmIChpbmNyZW1lbnRWZXJzaW9uKSB7XG4gICAgLy8gICB2ZXJzaW9uID0gdmVyc2lvbiArIGAtJHtzZXF1ZW5jZX1gO1xuICAgIC8vICAgLy8gc2VxdWVuY2UgPSAxO1xuICAgIC8vIH1cblxuICAgIHRyeSB7XG4gICAgICBmb3IgKGNvbnN0IHBlZXIgb2YgcGVlcklkcykge1xuICAgICAgICBwYWNrYWdlQ29udHJhY3QocGVlciwgaW5wdXQsIG5hbWUsIHZlcnNpb24pO1xuICAgICAgICBpbnN0YWxsQ29udHJhY3QocGVlciwgbmFtZSk7XG4gICAgICAgIGFwcHJvdmVDb250cmFjdChcbiAgICAgICAgICBwZWVyLFxuICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgcGVlciA9PT0gXCJvcmctYS1wZWVyLTBcIlxuICAgICAgICAgICAgPyBcInRscy1jYS1jZXJ0LnBlbVwiXG4gICAgICAgICAgICA6IFwib3JkZXJlci10bHMtY2EtY2VydC5wZW1cIixcbiAgICAgICAgICBzZXF1ZW5jZSxcbiAgICAgICAgICB2ZXJzaW9uLFxuICAgICAgICAgIGNvbGxlY3Rpb25zQ29uZmlnXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBmcy53cml0ZUZpbGVTeW5jKGNvdW50UGF0aCwgc2VxdWVuY2UudG9TdHJpbmcoKSk7XG4gICAgfSBjYXRjaCAoZXJyOiBhbnkpIHtcbiAgICAgIGxvZy5lcnJvcihcIkVycm9yIGRlcGxveWluZyBjb250cmFjdDpcIiwgZXJyKTtcbiAgICB9XG4gICAgY29tbWl0Q2hhaW5jb2RlKG5hbWUsIHNlcXVlbmNlLCB2ZXJzaW9uLCBjb2xsZWN0aW9uc0NvbmZpZyk7XG4gIH0pO1xuXG5jb25zdCBnZXRDcnlwdG9NYXRlcmlhbCA9IG5ldyBDb21tYW5kKClcbiAgLm5hbWUoXCJnZXQtY3J5cHRvLW1hdGVyaWFsXCIpXG4gIC5kZXNjcmlwdGlvbihcImNvcGllcyB0aGUgY3J5cHRvIG1hdGVyaWFsIHRvIHRoZSBzZWxlY3RlZCBmb2xkZXJcIilcbiAgLm9wdGlvbihcIi0tZm9sZGVyIDxTdHJpbmc+XCIsIFwib3V0cHV0IGZvbGRlclwiLCBcImRvY2tlci9kb2NrZXItZGF0YVwiKVxuICAub3B0aW9uKFwiLS1vcmcgW1N0cmluZ11cIiwgXCJ0aGUgb3JnL3BlZXIgdG8gZXh0cmFjdCBmcm9tXCIsIFwib3JnLWFcIilcbiAgLmFjdGlvbihhc3luYyAob3B0aW9uczogYW55KSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShcbiAgICAgIGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIilcbiAgICApO1xuXG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuXG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImdldC1jcnlwdG8tbWF0ZXJpYWxcIik7XG4gICAgbG9nLmRlYnVnKFxuICAgICAgYHJ1bm5pbmcgd2l0aCBvcHRpb25zOiAke0pTT04uc3RyaW5naWZ5KG9wdGlvbnMpfSBmb3IgJHtwa2cubmFtZX0gdmVyc2lvbiAke3ZlcnNpb259YFxuICAgICk7XG4gICAgY29uc3QgeyBmb2xkZXIsIG9yZyB9ID0gb3B0aW9ucztcbiAgICBleGVjU3luYyhgZG9ja2VyIGNwICR7b3JnfTovd2VhdmVyL2NsaWVudC8uICR7Zm9sZGVyfWAsIHtcbiAgICAgIGN3ZDogcHJvY2Vzcy5jd2QoKSxcbiAgICB9KTtcbiAgfSk7XG5cbmNvbnN0IGZhYnJpY0NtZCA9IG5ldyBDb21tYW5kKClcbiAgLm5hbWUoXCJmb3ItZmFicmljXCIpXG4gIC5jb21tYW5kKFwiZmFicmljXCIpXG4gIC5kZXNjcmlwdGlvbihcbiAgICBcImV4cG9zZXMgc2V2ZXJhbCBjb21tYW5kcyB0byBoZWxwIG1hbmFnZSB0aGUgZmFicmljIGluZnJhc3RydWN0dXJlXCJcbiAgKTtcblxuZmFicmljQ21kLmFkZENvbW1hbmQoY29tcGlsZUNvbW1hbmQpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZXh0cmFjdEluZGV4ZXMpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZW5zdXJlSW5mcmEpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZGVwbG95Q29udHJhY3QpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZ2V0Q3J5cHRvTWF0ZXJpYWwpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZXh0cmFjdENvbGxlY3Rpb25zKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZmFicmljKCkge1xuICByZXR1cm4gZmFicmljQ21kO1xufVxuIl19
507
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNsaS1tb2R1bGUuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFnZkEseUJBRUM7QUFsZkQseUNBQW9DO0FBQ3BDLCtDQUEwRDtBQUMxRCxpREFBeUM7QUFDekMsNENBQW9CO0FBQ3BCLGdEQUF3QjtBQUN4QixtQ0FBZ0M7QUFDaEMsNEVBQTZDO0FBQzdDLDJEQUE0RTtBQUM1RSx3REFBMko7QUFDM0oseUVBQXVEO0FBQ3ZELGlEQUF3TDtBQUN4TCx1Q0FBcUM7QUFDckMsNERBQTRCO0FBQzVCLDREQUFrSTtBQUNsSSxNQUFNLE1BQU0sR0FBRyxpQkFBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNyQyxTQUFTLHVCQUF1QjtJQUM1QixPQUFPO1FBQ0gsSUFBSSxFQUFFLDRCQUE0QjtRQUNsQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVE7WUFDdEIsSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDdkMsT0FBTyxJQUFJLENBQUM7WUFDaEIsQ0FBQztZQUNELE1BQU0sWUFBWSxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsY0FBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNsRSxNQUFNLFVBQVUsR0FBRztnQkFDZixZQUFZO2dCQUNaLEdBQUcsWUFBWSxLQUFLO2dCQUNwQixjQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUM7YUFDdEMsQ0FBQztZQUNGLEtBQUssTUFBTSxTQUFTLElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ2pDLElBQUksWUFBRSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxZQUFFLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUM7b0JBQzlELE9BQU8s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U0FBUyxDQUFDO0FBQ3JCLENBQUM7QUFDRCwwMjBEQUEwMjBEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gXCJjb21tYW5kZXJcIjtcbmltcG9ydCB7IExvZ2dpbmcsIHRvUGFzY2FsQ2FzZSB9IGZyb20gXCJAZGVjYWYtdHMvbG9nZ2luZ1wiO1xuaW1wb3J0IHsgZXhlY1N5bmMgfSBmcm9tIFwiY2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IHJvbGx1cCB9IGZyb20gXCJyb2xsdXBcIjtcbmltcG9ydCByZXBsYWNlIGZyb20gXCJAcm9sbHVwL3BsdWdpbi1yZXBsYWNlXCI7XG5pbXBvcnQgeyBJbnRlcm5hbEVycm9yLCBTZXJpYWxpemF0aW9uRXJyb3IgfSBmcm9tIFwiQGRlY2FmLXRzL2RiLWRlY29yYXRvcnNcIjtcbmltcG9ydCB7IGdlbmVyYXRlTW9kZWxEZXNpZ25Eb2NzLCBnZW5lcmF0ZU1vZGVsSW5kZXhlcywgcmVhZE1vZGVsRmlsZSwgcmVhZE1vZGVsRm9sZGVycywgd3JpdGVEZXNpZ25Eb2NzLCB3cml0ZUluZGV4ZXMsIH0gZnJvbSBcIi4vY2xpZW50L2luZGV4ZXMvaW5kZXguanNcIjtcbmltcG9ydCB7IE1vZGVsIH0gZnJvbSBcIkBkZWNhZi10cy9kZWNvcmF0b3ItdmFsaWRhdGlvblwiO1xuaW1wb3J0IHsgYXBwcm92ZUNvbnRyYWN0LCBlbnN1cmVJbmZyYXN0cnVjdHVyZUJvb3RlZCwgaW5zdGFsbENvbnRyYWN0LCBwYWNrYWdlQ29udHJhY3QsIGNvbW1pdENoYWluY29kZSwgZ2V0Q29udHJhY3RTdGFydENvbW1hbmQsIGNvbXBpbGVXaXRoVHNjb25maWdPdmVycmlkZXMsIH0gZnJvbSBcIi4vY2xpLXV0aWxzLmpzXCI7XG5pbXBvcnQgXCIuL3NoYXJlZC9vdmVycmlkZXMvaW5kZXguanNcIjtcbmltcG9ydCB0cyBmcm9tIFwidHlwZXNjcmlwdFwiO1xuaW1wb3J0IHsgZXh0cmFjdENvbGxlY3Rpb25zIGFzIGV4Q29sbGVjdGlvbnMsIHdyaXRlQ29sbGVjdGlvbnMsIHdyaXRlQ29sbGVjdGlvbkRlc2lnbkRvY3MsIH0gZnJvbSBcIi4vY2xpZW50L2NvbGxlY3Rpb25zL2luZGV4LmpzXCI7XG5jb25zdCBsb2dnZXIgPSBMb2dnaW5nLmZvcihcImZhYnJpY1wiKTtcbmZ1bmN0aW9uIHJlc29sdmVCdW5kbGVkSnNJbXBvcnRzKCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIG5hbWU6IFwicmVzb2x2ZS1idW5kbGVkLWpzLWltcG9ydHNcIixcbiAgICAgICAgcmVzb2x2ZUlkKHNvdXJjZSwgaW1wb3J0ZXIpIHtcbiAgICAgICAgICAgIGlmICghaW1wb3J0ZXIgfHwgIXNvdXJjZS5zdGFydHNXaXRoKFwiLlwiKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgcmVzb2x2ZWRQYXRoID0gcGF0aC5yZXNvbHZlKHBhdGguZGlybmFtZShpbXBvcnRlciksIHNvdXJjZSk7XG4gICAgICAgICAgICBjb25zdCBjYW5kaWRhdGVzID0gW1xuICAgICAgICAgICAgICAgIHJlc29sdmVkUGF0aCxcbiAgICAgICAgICAgICAgICBgJHtyZXNvbHZlZFBhdGh9LmpzYCxcbiAgICAgICAgICAgICAgICBwYXRoLmpvaW4ocmVzb2x2ZWRQYXRoLCBcImluZGV4LmpzXCIpLFxuICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgY2FuZGlkYXRlIG9mIGNhbmRpZGF0ZXMpIHtcbiAgICAgICAgICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyhjYW5kaWRhdGUpICYmIGZzLnN0YXRTeW5jKGNhbmRpZGF0ZSkuaXNGaWxlKCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhbmRpZGF0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfSxcbiAgICB9O1xufVxuY29uc3QgY29tcGlsZUNvbW1hbmQgPSBuZXcgQ29tbWFuZCgpXG4gICAgLm5hbWUoXCJjb21waWxlLWNvbnRyYWN0XCIpXG4gICAgLmRlc2NyaXB0aW9uKFwiQ3JlYXRlcyBhIGdsb2JhbCBjb250cmFjdFwiKVxuICAgIC5vcHRpb24oXCItLWRldlwiLCBcImNvbXBpbGVzIGNvbnRyYWN0cyB3aXRob3V0IG1pbmlmaWNhdGlvblwiLCBmYWxzZSlcbiAgICAub3B0aW9uKFwiLS1kZWJ1Z1wiLCBcIm1ha2VzIGF0dGFjaGluZyBkZWJ1Z2dlciBwb3NzaWJsZVwiLCBmYWxzZSlcbiAgICAub3B0aW9uKFwiLS1jY2Fhc1wiLCBcIkFqdXN0cyB0aGUgcGFja2FnZSBjb21tYW5kcyB0byBiZSBkZXBsb3llZCBhcyBjY2Fhc1wiLCBmYWxzZSlcbiAgICAub3B0aW9uKFwiLS1uYW1lIDxTdHJpbmc+XCIsIFwiY29udHJhY3QgbmFtZVwiLCBcImdsb2JhbC1jb250cmFjdFwiKVxuICAgIC5vcHRpb24oXCItLWJ1bmRsZVwiLCBcIkJ1bmRsZXMgd2l0aCByb2xsdXAgaW5zdGVhZCBvZiB1c2luZyB0c2NcIiwgZmFsc2UpXG4gICAgLm9wdGlvbihcIi0tdHMtY29uZmlnLWZpbGUgPHN0cmluZz5cIiwgXCJyZWxhdGl2ZSBwYXRoIHRvIHRoZSB0cyBjb25maWcgZmlsZSBiYXNlZCBvbiBjd2Qgb3IgYWJzb2x1dGUgcGF0aFwiLCBcIi4vdHNjb25maWcuanNvblwiKVxuICAgIC5vcHRpb24oXCItLWRlc2NyaXB0aW9uIDxTdHJpbmc+XCIsIFwiY29udHJhY3QgZGVzY3JpcHRpb25cIiwgXCJHbG9iYWwgY29udHJhY3QgaW1wbGVtZW50YXRpb25cIilcbiAgICAub3B0aW9uKFwiLS1zdHJpcC1jb250cmFjdC1uYW1lXCIsIFwic3RyaXAgY29udHJhY3QgbmFtZSBmcm9tIG91dHB1dFwiLCBmYWxzZSlcbiAgICAub3B0aW9uKFwiLS1pbnB1dCA8U3RyaW5nPlwiLCBcImlucHV0IGZvbGRlciBmb3IgY29udHJhY3RzXCIsIFwibGliL2NvbnRyYWN0c1wiKVxuICAgIC5vcHRpb24oXCItLW91dHB1dCA8U3RyaW5nPlwiLCBcIm91dHB1dCBmb2xkZXIgZm9yIGNvbnRyYWN0c1wiLCBcIi4vY29udHJhY3RzXCIpXG4gICAgLm9wdGlvbihcIi0tc291cmNlbWFwc1wiLCBcImluY2x1ZGVzIHNvdXJjZW1hcHMgaW4gdGhlIGNvbXBpbGVkIG91dHB1dFwiLCBmYWxzZSlcbiAgICAub3B0aW9uKFwiLS1ucG1yY1wiLCBcImluY2x1ZGVzIC5ucG1yYyBpbiB0aGUgY29tcGlsZWQgb3V0cHV0XCIsIGZhbHNlKVxuICAgIC5hY3Rpb24oYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBwa2cgPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIikpO1xuICAgIGxldCBucG1yY0NvbnRlbnQgPSB1bmRlZmluZWQ7XG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuICAgIGxldCB7IFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBkZXYsIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBkZWJ1ZywgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIG5hbWUsIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBkZXNjcmlwdGlvbiwgb3V0cHV0LCBcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgaW5wdXQsIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBzdHJpcENvbnRyYWN0TmFtZSwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHByZWZlci1jb25zdFxuICAgIGNjYWFzLCBcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgYnVuZGxlLCB0c0NvbmZpZ0ZpbGUsIFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBzb3VyY2VtYXBzLCBcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgbnBtcmMsIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGxvZyA9IGxvZ2dlci5mb3IoXCJjb21waWxlLWNvbnRyYWN0XCIpO1xuICAgIHRyeSB7XG4gICAgICAgIGlmIChucG1yYykge1xuICAgICAgICAgICAgbnBtcmNDb250ZW50ID0gZnNcbiAgICAgICAgICAgICAgICAucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcIi5ucG1yY1wiKSwgXCJ1dGYtOFwiKVxuICAgICAgICAgICAgICAgIC50b1N0cmluZygpO1xuICAgICAgICAgICAgY29uc3QgcmVwbGFjZWQgPSBucG1yY0NvbnRlbnQucmVwbGFjZSgvXFwkXFx7KFtefV0rKVxcfS9nLCAoXywgdmFyTmFtZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcHJvY2Vzcy5lbnZbdmFyTmFtZV07XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKGBXYXJuaW5nOiBFbnZpcm9ubWVudCB2YXJpYWJsZSBcIiR7dmFyTmFtZX1cIiBpcyBub3Qgc2V0YCk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcIlwiO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIG5wbXJjQ29udGVudCA9IHJlcGxhY2VkO1xuICAgICAgICB9XG4gICAgfVxuICAgIGNhdGNoIHtcbiAgICAgICAgbG9nLmluZm8oYE5vIC5ucG1yYyBmaWxlIGZvdW5kLCBza2lwcGluZyBjb3B5aW5nIC5ucG1yYyB0byBvdXRwdXRgKTtcbiAgICB9XG4gICAgbG9nLmRlYnVnKGBydW5uaW5nIHdpdGggb3B0aW9uczogJHtKU09OLnN0cmluZ2lmeShvcHRpb25zKX0gZm9yICR7cGtnLm5hbWV9IHZlcnNpb24gJHt2ZXJzaW9ufWApO1xuICAgIHRzQ29uZmlnRmlsZSA9IHBhdGguaXNBYnNvbHV0ZSh0c0NvbmZpZ0ZpbGUpXG4gICAgICAgID8gdHNDb25maWdGaWxlXG4gICAgICAgIDogcGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIHRzQ29uZmlnRmlsZSk7XG4gICAgb3V0cHV0ID0gc3RyaXBDb250cmFjdE5hbWUgPyBvdXRwdXQgOiBwYXRoLmpvaW4ob3V0cHV0LCBuYW1lKTtcbiAgICBsb2cuaW5mbyhgRGVsZXRpbmcgZXhpc3Rpbmcgb3V0cHV0IGZvbGRlciAoaWYgZXhpc3RzKSB1bmRlciAke291dHB1dH1gKTtcbiAgICBleGVjU3luYyhgcm0gLXJmICR7b3V0cHV0fWApO1xuICAgIGlmIChidW5kbGUpIHtcbiAgICAgICAgbG9nLmluZm8oYGJ1bmRsaW5nIGNvbnRyYWN0IGZyb20gJHtpbnB1dH1gKTtcbiAgICAgICAgY29uc3QgdGVtcEJ1bmRsZURpciA9IGZzLm1rZHRlbXBTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcIi5jb250cmFjdC1idW5kbGUtXCIpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0RW50cnkgPSBwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgaW5wdXQsIFwiaW5kZXgudHNcIik7XG4gICAgICAgICAgICBjb25zdCBjb25maWdGaWxlID0gdHMucmVhZENvbmZpZ0ZpbGUodHNDb25maWdGaWxlLCB0cy5zeXMucmVhZEZpbGUpO1xuICAgICAgICAgICAgaWYgKGNvbmZpZ0ZpbGUuZXJyb3IpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcih0cy5mbGF0dGVuRGlhZ25vc3RpY01lc3NhZ2VUZXh0KGNvbmZpZ0ZpbGUuZXJyb3IubWVzc2FnZVRleHQsIFwiXFxuXCIpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZENvbmZpZyA9IHRzLnBhcnNlSnNvbkNvbmZpZ0ZpbGVDb250ZW50KGNvbmZpZ0ZpbGUuY29uZmlnLCB0cy5zeXMsIHBhdGguZGlybmFtZSh0c0NvbmZpZ0ZpbGUpLCB1bmRlZmluZWQsIHRzQ29uZmlnRmlsZSk7XG4gICAgICAgICAgICBpZiAocGFyc2VkQ29uZmlnLmVycm9ycy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxFcnJvcihwYXJzZWRDb25maWcuZXJyb3JzXG4gICAgICAgICAgICAgICAgICAgIC5tYXAoKGVycm9yKSA9PiB0cy5mbGF0dGVuRGlhZ25vc3RpY01lc3NhZ2VUZXh0KGVycm9yLm1lc3NhZ2VUZXh0LCBcIlxcblwiKSlcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCJcXG5cIikpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdGVtcENvbXBpbGVyT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAuLi5wYXJzZWRDb25maWcub3B0aW9ucyxcbiAgICAgICAgICAgICAgICBvdXREaXI6IHRlbXBCdW5kbGVEaXIsXG4gICAgICAgICAgICAgICAgbW9kdWxlOiB0cy5Nb2R1bGVLaW5kLkVTTmV4dCxcbiAgICAgICAgICAgICAgICBkZWNsYXJhdGlvbjogZmFsc2UsXG4gICAgICAgICAgICAgICAgc291cmNlTWFwOiBmYWxzZSxcbiAgICAgICAgICAgICAgICBpbmxpbmVTb3VyY2VzOiBmYWxzZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBjb25zdCBidW5kbGVkRW50cnlQb2ludCA9IHRzXG4gICAgICAgICAgICAgICAgLmdldE91dHB1dEZpbGVOYW1lcyh7XG4gICAgICAgICAgICAgICAgLi4ucGFyc2VkQ29uZmlnLFxuICAgICAgICAgICAgICAgIG9wdGlvbnM6IHRlbXBDb21waWxlck9wdGlvbnMsXG4gICAgICAgICAgICB9LCBpbnB1dEVudHJ5LCAhdHMuc3lzLnVzZUNhc2VTZW5zaXRpdmVGaWxlTmFtZXMpXG4gICAgICAgICAgICAgICAgLmZpbmQoKGZpbGVOYW1lKSA9PiBmaWxlTmFtZS5lbmRzV2l0aChcIi5qc1wiKSk7XG4gICAgICAgICAgICBpZiAoIWJ1bmRsZWRFbnRyeVBvaW50KSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoYEZhaWxlZCB0byBkZXRlcm1pbmUgdGhlIGVtaXR0ZWQgYnVuZGxlIGVudHJ5IGZvciAke2lucHV0RW50cnl9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb21waWxlV2l0aFRzY29uZmlnT3ZlcnJpZGVzKHRzQ29uZmlnRmlsZSwgdGVtcENvbXBpbGVyT3B0aW9ucyk7XG4gICAgICAgICAgICBjb25zdCBidW5kbGVkQ29udHJhY3QgPSBhd2FpdCByb2xsdXAoe1xuICAgICAgICAgICAgICAgIGlucHV0OiBidW5kbGVkRW50cnlQb2ludCxcbiAgICAgICAgICAgICAgICBwbHVnaW5zOiBbXG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmVCdW5kbGVkSnNJbXBvcnRzKCksXG4gICAgICAgICAgICAgICAgICAgIHJlcGxhY2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJldmVudEFzc2lnbm1lbnQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWxpbWl0ZXJzOiBbXCJcIiwgXCJcIl0sXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IHsgXCIjI1ZFUlNJT04jI1wiOiB2ZXJzaW9uLCBcIiMjUEFDS0FHRSMjXCI6IHBrZy5uYW1lIH0sXG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGxvZy5pbmZvKGB3aXRoaW5nIGNvbnRyYWN0IHRvICR7b3V0cHV0fSB3aXRoIG5hbWUgJHt0b1Bhc2NhbENhc2UobmFtZSl9LmpzYCk7XG4gICAgICAgICAgICBhd2FpdCBidW5kbGVkQ29udHJhY3Qud3JpdGUoe1xuICAgICAgICAgICAgICAgIGZpbGU6IGAke291dHB1dH0vJHt0b1Bhc2NhbENhc2UobmFtZSl9LmpzYCxcbiAgICAgICAgICAgICAgICBmb3JtYXQ6IFwidW1kXCIsXG4gICAgICAgICAgICAgICAgbmFtZTogYCR7dG9QYXNjYWxDYXNlKG5hbWUpfS5qc2AsXG4gICAgICAgICAgICAgICAgc291cmNlbWFwOiBzb3VyY2VtYXBzID8gXCJpbmxpbmVcIiA6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHNvdXJjZW1hcFBhdGhUcmFuc2Zvcm06IChyZWxhdGl2ZVNvdXJjZVBhdGgsIHNvdXJjZW1hcFBhdGgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYWJzb2x1dGVTb3VyY2VQYXRoID0gcGF0aC5yZXNvbHZlKHBhdGguZGlybmFtZShzb3VyY2VtYXBQYXRoKSwgcmVsYXRpdmVTb3VyY2VQYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGFic29sdXRlU291cmNlUGF0aC5zdGFydHNXaXRoKHRlbXBCdW5kbGVEaXIpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcGF0aC5wb3NpeC5qb2luKFwiLmJ1bmRsZVwiLCBwYXRoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlbGF0aXZlKHRlbXBCdW5kbGVEaXIsIGFic29sdXRlU291cmNlUGF0aClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BsaXQocGF0aC5zZXApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCIvXCIpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVsYXRpdmVTb3VyY2VQYXRoO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGF3YWl0IGJ1bmRsZWRDb250cmFjdC5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkge1xuICAgICAgICAgICAgZnMucm1TeW5jKHRlbXBCdW5kbGVEaXIsIHsgcmVjdXJzaXZlOiB0cnVlLCBmb3JjZTogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgICAgY29tcGlsZVdpdGhUc2NvbmZpZ092ZXJyaWRlcyh0c0NvbmZpZ0ZpbGUsIHtcbiAgICAgICAgICAgIG91dERpcjogb3V0cHV0LFxuICAgICAgICAgICAgbW9kdWxlOiB0cy5Nb2R1bGVLaW5kLkVTTmV4dCxcbiAgICAgICAgICAgIGRlY2xhcmF0aW9uOiBmYWxzZSxcbiAgICAgICAgICAgIHNvdXJjZU1hcDogc291cmNlbWFwcyxcbiAgICAgICAgICAgIGlubGluZVNvdXJjZXM6IHNvdXJjZW1hcHMsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBzY3JpcHRzID0ge1xuICAgICAgICBzdGFydDogZ2V0Q29udHJhY3RTdGFydENvbW1hbmQoZGVidWcsIGNjYWFzKSxcbiAgICAgICAgXCJzdGFydDpkZXZcIjogXCJmYWJyaWMtY2hhaW5jb2RlLW5vZGUgc3RhcnQgLS10bHMuZW5hYmxlZCBmYWxzZVwiLFxuICAgICAgICBcInN0YXJ0OndhdGNoXCI6ICdub2RlbW9uIC0tZXhlYyBcIm5wbSBydW4gc3RhcnQ6ZGV2XCInLFxuICAgICAgICBidWlsZDogJ2VjaG8gXCJObyBuZWVkIHRvIGJ1aWxkIHRoZSBjaGFpbmNvZGVcIicsXG4gICAgICAgIGxpbnQ6IFwiZXNsaW50IC4gLS1maXggLS1leHQgLmpzXCIsXG4gICAgfTtcbiAgICBjb25zdCBjb250cmFjdFBhY2thZ2UgPSBwa2c7XG4gICAgY29udHJhY3RQYWNrYWdlLm5hbWUgPSBuYW1lO1xuICAgIGNvbnRyYWN0UGFja2FnZS5kZXNjcmlwdGlvbiA9IGRlc2NyaXB0aW9uO1xuICAgIGNvbnRyYWN0UGFja2FnZS5zY3JpcHRzID0gc2NyaXB0cztcbiAgICBkZWxldGUgY29udHJhY3RQYWNrYWdlLnR5cGU7XG4gICAgZGVsZXRlIGNvbnRyYWN0UGFja2FnZS50eXBlcztcbiAgICBkZWxldGUgY29udHJhY3RQYWNrYWdlLmV4cG9ydHM7XG4gICAgY29udHJhY3RQYWNrYWdlLm1haW4gPSBidW5kbGVcbiAgICAgICAgPyBgJHt0b1Bhc2NhbENhc2UobmFtZSl9LmpzYFxuICAgICAgICA6IGAke2lucHV0fS9pbmRleC5qc2A7XG4gICAgZnMud3JpdGVGaWxlU3luYyhwYXRoLmpvaW4ob3V0cHV0LCBcInBhY2thZ2UuanNvblwiKSwgSlNPTi5zdHJpbmdpZnkoY29udHJhY3RQYWNrYWdlKSk7XG4gICAgaWYgKG5wbXJjICYmIG5wbXJjQ29udGVudClcbiAgICAgICAgZnMud3JpdGVGaWxlU3luYyhwYXRoLmpvaW4ob3V0cHV0LCBcIi5ucG1yY1wiKSwgbnBtcmNDb250ZW50KTtcbiAgICBsb2cuaW5mbyhgSW5zdGFsbGluZyBhbmQgc2hyaW5rd3JhcHBpbmcgZGVwZW5kZW5jaWVzYCk7XG4gICAgZXhlY1N5bmMoYG5wbSBpbnN0YWxsYCwgeyBjd2Q6IG91dHB1dCB9KTtcbiAgICBleGVjU3luYyhgbnBtIHNocmlua3dyYXBgLCB7IGN3ZDogb3V0cHV0IH0pO1xuICAgIGV4ZWNTeW5jKFwicm0gLXJmIG5vZGVfbW9kdWxlc1wiLCB7IGN3ZDogb3V0cHV0IH0pO1xuICAgIGxvZy5pbmZvKGBkZWxldGluZyB0ZW1wIGZvbGRlcnNgKTtcbiAgICBleGVjU3luYyhgcm0gLXJmIC4vbGliICYmIHJtIC1yZiAuL2Rpc3RgLCB7IGN3ZDogb3V0cHV0IH0pO1xuICAgIGxvZy5pbmZvKGBDb250cmFjdCAke25hbWV9IGNvbXBpbGVkIHN1Y2Nlc3NmdWxseSEgaW4gJHtwYXRoLnJlc29sdmUob3V0cHV0KX1gKTtcbiAgICBpZiAoZGV2KSB7XG4gICAgICAgIGxvZy5pbmZvKGBkZXYgbW9kZSBlbmFibGVkLiBpbnN0YWxsaW5nIGRlcGVuZGVuY2llcyBmb3IgZGVidWdnaW5nYCk7XG4gICAgICAgIGV4ZWNTeW5jKGBucG0gaW5zdGFsbGAsIHtcbiAgICAgICAgICAgIGN3ZDogb3V0cHV0LFxuICAgICAgICAgICAgZW52OiB7IC4uLnByb2Nlc3MuZW52LCBOT0RFX0VOVjogXCJwcm9kdWN0aW9uXCIgfSxcbiAgICAgICAgfSk7XG4gICAgfVxufSk7XG5jb25zdCBleHRyYWN0SW5kZXhlcyA9IG5ldyBDb21tYW5kKClcbiAgICAuY29tbWFuZChcImV4dHJhY3QtaW5kZXhlc1wiKVxuICAgIC5vcHRpb24oXCItLWZpbGUgW1N0cmluZ11cIiwgXCJ0aGUgbW9kZWwgZmlsZVwiKVxuICAgIC5vcHRpb24oXCItLWZvbGRlciBbU3RyaW5nXVwiLCBcInRoZSBtb2RlbCBmb2xkZXJcIilcbiAgICAub3B0aW9uKFwiLS1vdXREaXIgPFN0cmluZz5cIiwgXCJ0aGUgb3V0ZGlyLiBzaG91bGQgbWF0Y2ggeW91ciBjb250cmFjdCBmb2xkZXJcIilcbiAgICAuZGVzY3JpcHRpb24oXCJDcmVhdGVzIGEgdGhlIEpTT04gaW5kZXggZmlsZXMgdG8gYmUgc3VibWl0dGVkIHRvIGFsb25nIHdpdGggdGhlIGNvbnRyYWN0XCIpXG4gICAgLmFjdGlvbihhc3luYyAob3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IHBrZyA9IEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKSwgXCJ1dGYtOFwiKSk7XG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuICAgIGNvbnN0IGxvZyA9IGxvZ2dlci5mb3IoXCJleHRyYWN0LWluZGV4ZXNcIik7XG4gICAgbG9nLmRlYnVnKGBydW5uaW5nIHdpdGggb3B0aW9uczogJHtKU09OLnN0cmluZ2lmeShvcHRpb25zKX0gZm9yICR7cGtnLm5hbWV9IHZlcnNpb24gJHt2ZXJzaW9ufWApO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItY29uc3RcbiAgICBsZXQgeyBmaWxlLCBmb2xkZXIsIG91dERpciB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBtb2RlbHMgPSBbXTtcbiAgICBpZiAoZmlsZSkge1xuICAgICAgICBtb2RlbHMucHVzaCguLi5yZWFkTW9kZWxGaWxlKGZpbGUpKTtcbiAgICB9XG4gICAgaWYgKGZvbGRlcikge1xuICAgICAgICBsb2cuaW5mbyhgTG9hZGluZyBtb2RlbHMgZnJvbSAke2ZvbGRlcn0uLi5gKTtcbiAgICAgICAgbW9kZWxzLnB1c2goLi4uKGF3YWl0IHJlYWRNb2RlbEZvbGRlcnMoZm9sZGVyKSkpO1xuICAgIH1cbiAgICBjb25zdCByZXN1bHQgPSB7fTtcbiAgICBjb25zdCBkZXNpZ25Eb2NzID0ge307XG4gICAgaWYgKCFmaWxlICYmICFmb2xkZXIpXG4gICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEVycm9yKGBNdXN0IHBhc3MgYSBmaWxlIG9yIGEgZm9sZGVyYCk7XG4gICAgZm9yIChjb25zdCBtIG9mIG1vZGVscykge1xuICAgICAgICBsb2cudmVyYm9zZShgRXh0cmFjdGluZyBpbmRleGVzIGZvciB0YWJsZSAke01vZGVsLnRhYmxlTmFtZShtKX1gKTtcbiAgICAgICAgY29uc3QgaW5kZXhlcyA9IGdlbmVyYXRlTW9kZWxJbmRleGVzKG0pO1xuICAgICAgICBpbmRleGVzLmZvckVhY2goKGluZGV4KSA9PiB7XG4gICAgICAgICAgICBpZiAoaW5kZXgubmFtZSkge1xuICAgICAgICAgICAgICAgIHJlc3VsdFtpbmRleC5uYW1lXSA9IGluZGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgZ2VuZXJhdGVNb2RlbERlc2lnbkRvY3MobSwgZGVzaWduRG9jcyk7XG4gICAgfVxuICAgIGNvbnN0IGluZGV4ZXNUb1dyaXRlID0gT2JqZWN0LnZhbHVlcyhyZXN1bHQpO1xuICAgIGNvbnN0IGRvY3NUb1dyaXRlID0gT2JqZWN0LnZhbHVlcyhkZXNpZ25Eb2NzKTtcbiAgICBsb2cudmVyYm9zZShgRm91bmQgJHtpbmRleGVzVG9Xcml0ZS5sZW5ndGh9IGluZGV4ZXMgdG8gY3JlYXRlYCk7XG4gICAgbG9nLnZlcmJvc2UoYEZvdW5kICR7ZG9jc1RvV3JpdGUubGVuZ3RofSBkZXNpZ24gZG9jcyB0byBjcmVhdGVgKTtcbiAgICBsb2cuZGVidWcoYEluZGV4ZXM6ICR7SlNPTi5zdHJpbmdpZnkocmVzdWx0KX1gKTtcbiAgICBsb2cuZGVidWcoYERlc2lnbkRvY3M6ICR7SlNPTi5zdHJpbmdpZnkoZGVzaWduRG9jcyl9YCk7XG4gICAgd3JpdGVJbmRleGVzKGluZGV4ZXNUb1dyaXRlLCBvdXREaXIpO1xuICAgIHdyaXRlRGVzaWduRG9jcyhkb2NzVG9Xcml0ZSwgb3V0RGlyKTtcbn0pO1xuY29uc3QgZXh0cmFjdENvbGxlY3Rpb25zID0gbmV3IENvbW1hbmQoKVxuICAgIC5jb21tYW5kKFwiZXh0cmFjdC1jb2xsZWN0aW9uc1wiKVxuICAgIC5vcHRpb24oXCItLWZpbGUgW1N0cmluZ11cIiwgXCJ0aGUgbW9kZWwgZmlsZVwiKVxuICAgIC5vcHRpb24oXCItLWZvbGRlciBbU3RyaW5nXVwiLCBcInRoZSBtb2RlbCBmb2xkZXJcIilcbiAgICAub3B0aW9uKFwiLS1vdXREaXIgPFN0cmluZz5cIiwgXCJ0aGUgb3V0ZGlyLiBzaG91bGQgbWF0Y2ggeW91ciBjb250cmFjdCBmb2xkZXJcIilcbiAgICAub3B0aW9uKFwiLS1tc3BJZHMgPFN0cmluZz5cIiwgXCJzaW5nbGUgbXNwSWQgb3Igc3RyaW5naWZpZWQgYXJyYXlcIilcbiAgICAub3B0aW9uKFwiLS1tYWluTXNwSWQgPFN0cmluZz5cIiwgXCJzaW5nbGUgbXNwSWRcIilcbiAgICAub3B0aW9uKFwiLS1vdmVycmlkZXMgW1N0cmluZ11cIiwgXCJzdHJpbmdpZmllZCBvdmVycmlkZSBvYmplY3Qge3JlcXVpcmVkUGVlckNvdW50OiBudW1iZXIsIG1heFBlZXJDb3VudDogbnVtYmVyLCBibG9ja1RvTGl2ZTogbnVtYmVyLCBtZW1iZXJPbmx5UmVhZDogbnVtYmVyLCBtZW1iZXJPbmx5V3JpdGU6IG51bWJlciwgZW5kb3JzZW1lbnRQb2xpY3k6ICB7fX1cIilcbiAgICAuZGVzY3JpcHRpb24oXCJDcmVhdGVzIGEgdGhlIEpTT04gaW5kZXggZmlsZXMgdG8gYmUgc3VibWl0dGVkIHRvIGFsb25nIHdpdGggdGhlIGNvbnRyYWN0XCIpXG4gICAgLmFjdGlvbihhc3luYyAob3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IHBrZyA9IEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKSwgXCJ1dGYtOFwiKSk7XG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuICAgIGNvbnN0IGxvZyA9IGxvZ2dlci5mb3IoXCJleHRyYWN0LWNvbGxlY3Rpb25zXCIpO1xuICAgIGxvZy5kZWJ1ZyhgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgbGV0IHsgZmlsZSwgZm9sZGVyLCBvdXREaXIsIG1zcElkcywgbWFpbk1zcElkIH0gPSBvcHRpb25zO1xuICAgIHRyeSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBtc3BJZHMgPSBtc3BJZHMgPyBKU09OLnBhcnNlKG1zcElkcykgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIC8vICBkbyBub3RoaW5nXG4gICAgICAgIH1cbiAgICB9XG4gICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IFNlcmlhbGl6YXRpb25FcnJvcihgVW5hYmxlIHRvIGV4dHJhY3QgbXNwaWRzOiAgJHtlfWApO1xuICAgIH1cbiAgICBjb25zdCBtb2RlbHMgPSBbXTtcbiAgICBpZiAoZmlsZSkge1xuICAgICAgICBtb2RlbHMucHVzaCguLi5yZWFkTW9kZWxGaWxlKGZpbGUpKTtcbiAgICB9XG4gICAgaWYgKGZvbGRlcikge1xuICAgICAgICBsb2cuaW5mbyhgTG9hZGluZyBtb2RlbHMgZnJvbSAke2ZvbGRlcn0uLi5gKTtcbiAgICAgICAgbW9kZWxzLnB1c2goLi4uKGF3YWl0IHJlYWRNb2RlbEZvbGRlcnMoZm9sZGVyKSkpO1xuICAgIH1cbiAgICBpZiAoIWZpbGUgJiYgIWZvbGRlcilcbiAgICAgICAgdGhyb3cgbmV3IEludGVybmFsRXJyb3IoYE11c3QgcGFzcyBhIGZpbGUgb3IgYSBmb2xkZXJgKTtcbiAgICBjb25zdCBpbmplY3RhYmxlTW9kZWxzID0gbW9kZWxzLmZpbHRlcigobW9kZWwpID0+IE1vZGVsLmlzU2hhcmVkKG1vZGVsKSB8fFxuICAgICAgICBNb2RlbC5pc1ByaXZhdGUobW9kZWwpIHx8XG4gICAgICAgICEhTW9kZWwubWlycm9yZWRBdChtb2RlbCkpO1xuICAgIGlmICghaW5qZWN0YWJsZU1vZGVscy5sZW5ndGgpIHtcbiAgICAgICAgbG9nLmluZm8oYE5vIHNoYXJlZCwgcHJpdmF0ZSwgb3IgbWlycm9yZWQgbW9kZWxzIGZvdW5kIHRvIGV4dHJhY3QgY29sbGVjdGlvbnNgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBhc3luYyBmdW5jdGlvbiBnZXRDb2xzKG1zcElkc0xpc3QpIHtcbiAgICAgICAgY29uc3QgY29scyA9IGF3YWl0IFByb21pc2UuYWxsKGluamVjdGFibGVNb2RlbHMubWFwKGFzeW5jIChjbGF6eikgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGFibGVOYW1lID0gTW9kZWwudGFibGVOYW1lKGNsYXp6KTtcbiAgICAgICAgICAgIGNvbnN0IG1pcnJvck1ldGEgPSBNb2RlbC5taXJyb3JlZEF0KGNsYXp6KTtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKHRhYmxlTmFtZSk7XG4gICAgICAgICAgICBjb25zdCBjb2xsZWN0aW9ucyA9IHt9O1xuICAgICAgICAgICAgZm9yIChjb25zdCBtc3Agb2YgbXNwSWRzTGlzdCB8fCBtc3BJZHMgfHwgW10pIHtcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uc1ttc3BdID0gYXdhaXQgZXhDb2xsZWN0aW9ucyhjbGF6eiwgW21zcCwgbWFpbk1zcElkXSwge30sIFxuICAgICAgICAgICAgICAgIC8vIHtcbiAgICAgICAgICAgICAgICAvLyAgIHNoYXJlZENvbHM6IE9iamVjdC5hc3NpZ24oe30sIG92ZXJyaWRlcy5zaGFyZWRDb2xzKSxcbiAgICAgICAgICAgICAgICAvLyAgIHByaXZhdGVDb2xzOiBPYmplY3QuYXNzaWduKHt9LCBvdmVycmlkZXMucHJpdmF0ZUNvbHMpLFxuICAgICAgICAgICAgICAgIC8vIH0sXG4gICAgICAgICAgICAgICAgISFtaXJyb3JNZXRhKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxldCBtaXJyb3JDb2xsZWN0aW9uID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgaWYgKG1pcnJvck1ldGEpIHtcbiAgICAgICAgICAgICAgICBjb2xsZWN0aW9uc1ttYWluTXNwSWRdID0gY29sbGVjdGlvbnNbbWFpbk1zcElkXSB8fCB7fTtcbiAgICAgICAgICAgICAgICBPYmplY3Qua2V5cyhjb2xsZWN0aW9ucykuZm9yRWFjaCgobXNwKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25zW21haW5Nc3BJZF0ucHJpdmF0ZXMgPSBjb2xsZWN0aW9uc1ttc3BdLnByaXZhdGVzPy5maWx0ZXIoKHApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwLm5hbWUgIT09IG1pcnJvck1ldGEucmVzb2x2ZXIpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaXJyb3JDb2xsZWN0aW9uID0gcDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBwcml2YXRlc0NvdW50ID0gT2JqZWN0LnZhbHVlcyhjb2xsZWN0aW9ucylcbiAgICAgICAgICAgICAgICAubWFwKChjKSA9PiBjLnByaXZhdGVzKVxuICAgICAgICAgICAgICAgIC5mbGF0KCkubGVuZ3RoO1xuICAgICAgICAgICAgaWYgKHByaXZhdGVzQ291bnQpXG4gICAgICAgICAgICAgICAgbG9nXG4gICAgICAgICAgICAgICAgICAgIC5mb3IoTW9kZWwudGFibGVOYW1lKGNsYXp6KSlcbiAgICAgICAgICAgICAgICAgICAgLmluZm8oYEZvdW5kICR7cHJpdmF0ZXNDb3VudH0gcHJpdmF0ZSBjb2xsZWN0aW9ucyB0byBjcmVhdGVgKTtcbiAgICAgICAgICAgIGNvbnN0IHNoYXJlZENvdW50ID0gT2JqZWN0LnZhbHVlcyhjb2xsZWN0aW9ucylcbiAgICAgICAgICAgICAgICAubWFwKChjKSA9PiBjLnNoYXJlZClcbiAgICAgICAgICAgICAgICAuZmxhdCgpLmxlbmd0aDtcbiAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAgIC5mb3IoTW9kZWwudGFibGVOYW1lKGNsYXp6KSlcbiAgICAgICAgICAgICAgICAuaW5mbyhgRm91bmQgJHtzaGFyZWRDb3VudH0gc2hhcmVkIGNvbGxlY3Rpb25zIHRvIGNyZWF0ZWApO1xuICAgICAgICAgICAgaWYgKG1pcnJvckNvbGxlY3Rpb24pXG4gICAgICAgICAgICAgICAgbG9nXG4gICAgICAgICAgICAgICAgICAgIC5mb3IoTW9kZWwudGFibGVOYW1lKGNsYXp6KSlcbiAgICAgICAgICAgICAgICAgICAgLmluZm8oYEZvdW5kIG9uZSBtaXJyb3IgY29sbGVjdGlvbiAke21pcnJvck1ldGE/LnJlc29sdmVyfWApO1xuICAgICAgICAgICAgY29uc3QgY29sTGlzdCA9IE9iamVjdC52YWx1ZXMoY29sbGVjdGlvbnMpXG4gICAgICAgICAgICAgICAgLm1hcCgoYykgPT4gWy4uLihjLnByaXZhdGVzIHx8IFtdKSwgLi4uKGMuc2hhcmVkIHx8IFtdKV0pXG4gICAgICAgICAgICAgICAgLmZsYXQoKTtcbiAgICAgICAgICAgIGxldCBpbmRleGVzID0gW107XG4gICAgICAgICAgICBsZXQgZGVzaWduRG9jcyA9IFtdO1xuICAgICAgICAgICAgaWYgKGNvbExpc3QubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgbG9nXG4gICAgICAgICAgICAgICAgICAgIC5mb3IoTW9kZWwudGFibGVOYW1lKGNsYXp6KSlcbiAgICAgICAgICAgICAgICAgICAgLnZlcmJvc2UoYGdlbmVyYXRpbmcgaW5kZXhlcyBmb3IgY29sbGVjdGlvbnNgKTtcbiAgICAgICAgICAgICAgICBpbmRleGVzID0gZ2VuZXJhdGVNb2RlbEluZGV4ZXMoY2xhenopO1xuICAgICAgICAgICAgICAgIGxvZ1xuICAgICAgICAgICAgICAgICAgICAuZm9yKE1vZGVsLnRhYmxlTmFtZShjbGF6eikpXG4gICAgICAgICAgICAgICAgICAgIC5pbmZvKGBmb3VuZCAke2luZGV4ZXMubGVuZ3RofSBpbmRleGVzYCk7XG4gICAgICAgICAgICAgICAgZGVzaWduRG9jcyA9IGdlbmVyYXRlTW9kZWxEZXNpZ25Eb2NzKGNsYXp6KTtcbiAgICAgICAgICAgICAgICBsb2dcbiAgICAgICAgICAgICAgICAgICAgLmZvcihNb2RlbC50YWJsZU5hbWUoY2xhenopKVxuICAgICAgICAgICAgICAgICAgICAuaW5mbyhgZm91bmQgJHtkZXNpZ25Eb2NzLmxlbmd0aH0gZGVzaWduIGRvY3NgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgaW5kZXhlcyxcbiAgICAgICAgICAgICAgICBkZXNpZ25Eb2NzLFxuICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25zOiBjb2xMaXN0LFxuICAgICAgICAgICAgICAgIG1pcnJvcjogbWlycm9yQ29sbGVjdGlvbixcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pKTtcbiAgICAgICAgcmV0dXJuIGNvbHM7XG4gICAgfVxuICAgIGNvbnN0IGNvbHMgPSBhd2FpdCBnZXRDb2xzKCk7XG4gICAgY29uc3Qgb25seU1pcnJvciA9IGF3YWl0IGdldENvbHMoW21haW5Nc3BJZF0pO1xuICAgIGNvbnN0IGNvbGxlY3Rpb25zVG8gPSBbXG4gICAgICAgIC4uLm9ubHlNaXJyb3IuZmlsdGVyKChjKSA9PiBjLm1pcnJvcikubWFwKChjKSA9PiBjLm1pcnJvciksXG4gICAgICAgIC4uLmNvbHMubWFwKChjKSA9PiBjLmNvbGxlY3Rpb25zKS5mbGF0KCksXG4gICAgICAgIC4uLmNvbHMuZmlsdGVyKChjKSA9PiBjLm1pcnJvcikubWFwKChjKSA9PiBjLm1pcnJvciksXG4gICAgXTtcbiAgICBjb25zdCB1bmlxdWVCeUNvbGxlY3Rpb24gPSBbXG4gICAgICAgIC4uLm5ldyBNYXAoY29sbGVjdGlvbnNUby5tYXAoKGl0ZW0pID0+IFtpdGVtLm5hbWUsIGl0ZW1dKSkudmFsdWVzKCksXG4gICAgXTtcbiAgICBpZiAodW5pcXVlQnlDb2xsZWN0aW9uLmxlbmd0aCkge1xuICAgICAgICB3cml0ZUNvbGxlY3Rpb25zKHVuaXF1ZUJ5Q29sbGVjdGlvbiwgb3V0RGlyKTtcbiAgICAgICAgY29uc3QgbWV0YUNvbGxlY3Rpb25zQ29uZmlnID0gcGF0aC5qb2luKG91dERpciwgXCJNRVRBLUlORlwiLCBcImNvbGxlY3Rpb25zX2NvbmZpZy5qc29uXCIpO1xuICAgICAgICBjb25zdCBjb250cmFjdENvbGxlY3Rpb25zQ29uZmlnID0gcGF0aC5qb2luKG91dERpciwgXCJjb2xsZWN0aW9uc19jb25maWcuanNvblwiKTtcbiAgICAgICAgZnMuY29weUZpbGVTeW5jKG1ldGFDb2xsZWN0aW9uc0NvbmZpZywgY29udHJhY3RDb2xsZWN0aW9uc0NvbmZpZyk7XG4gICAgICAgIGxvZy5pbmZvKGBTdG9yZWQgJHtjb2xsZWN0aW9uc1RvLmxlbmd0aH0gY29sbGVjdGlvbnMgdG8gJHttZXRhQ29sbGVjdGlvbnNDb25maWd9YCk7XG4gICAgICAgIGxvZy5pbmZvKGBDb3BpZWQgY29sbGVjdGlvbnNfY29uZmlnIHRvICR7Y29udHJhY3RDb2xsZWN0aW9uc0NvbmZpZ30gYWxvbmdzaWRlIHRoZSBwYWNrYWdlLmpzb25gKTtcbiAgICAgICAgY29scy5mb3JFYWNoKChjKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IGluZGV4ZXMsIGRlc2lnbkRvY3MsIGNvbGxlY3Rpb25zLCBtaXJyb3IgfSA9IGM7XG4gICAgICAgICAgICBjb25zdCB0b0luZGV4ID0gWy4uLmNvbGxlY3Rpb25zLCBtaXJyb3JdLmZpbHRlcihCb29sZWFuKTtcbiAgICAgICAgICAgIHRvSW5kZXguZm9yRWFjaCgoaSkgPT4ge1xuICAgICAgICAgICAgICAgIHdyaXRlSW5kZXhlcyhpbmRleGVzLCBvdXREaXIsIGkubmFtZSk7XG4gICAgICAgICAgICAgICAgd3JpdGVDb2xsZWN0aW9uRGVzaWduRG9jcyhkZXNpZ25Eb2NzIHx8IFtdLCBvdXREaXIsIGkubmFtZSk7XG4gICAgICAgICAgICAgICAgbG9nLmluZm8oYFN0b3JlZCAke2luZGV4ZXM/Lmxlbmd0aCB8fCAwfSBpbmRleGVzIGFuZCAke2Rlc2lnbkRvY3M/Lmxlbmd0aCB8fCAwfSBkZXNpZ24gZG9jcyB0byBjb2xsZWN0aW9uICR7aS5uYW1lfWApO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn0pO1xuY29uc3QgZW5zdXJlSW5mcmEgPSBuZXcgQ29tbWFuZCgpXG4gICAgLm5hbWUoXCJhd2FpdC1pbmZyYVwiKVxuICAgIC5kZXNjcmlwdGlvbihcIndhaXRzIGZvciB0aGUgaW5mcmFzdHJ1Y3R1cmUgdG8gYmUgdXAgYW5kIHJ1bm5pbmdcIilcbiAgICAub3B0aW9uKFwiLS1jb250YWluZXIgPFN0cmluZz5cIiwgXCJkb2NrZXIgY29udGFpbmVyIG5hbWUgdG8gdGVzdCAodXN1YWxseSBsYXN0IHBlZXIpXCIsIFwiYm9vdC1vcmctYy1wZWVyLTBcIilcbiAgICAub3B0aW9uKFwiLS10aW1lb3V0IDxTdHJpbmc+XCIsIFwidGltZW91dCBiZXR3ZWVuIHRlc3RzIGluIG1pbGxpc2Vjb25kc1wiLCBcIjUwMDBcIilcbiAgICAub3B0aW9uKFwiLS1hdHRlbXB0cyA8U3RyaW5nPlwiLCBcIm51bWJlciBvZiBhdHRlbXB0cyBiZWZvcmUgZ2l2aW5nIHVwXCIsIFwiMTBcIilcbiAgICAuYWN0aW9uKGFzeW5jIChvcHRpb25zKSA9PiB7XG4gICAgY29uc3QgcGtnID0gSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMocGF0aC5qb2luKHByb2Nlc3MuY3dkKCksIFwicGFja2FnZS5qc29uXCIpLCBcInV0Zi04XCIpKTtcbiAgICBjb25zdCB2ZXJzaW9uID0gcGtnLnZlcnNpb247XG4gICAgY29uc3QgbG9nID0gbG9nZ2VyLmZvcihcImF3YWl0LWluZnJhXCIpO1xuICAgIGxvZy5kZWJ1ZyhgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWNvbnN0XG4gICAgbGV0IHsgY29udGFpbmVyLCB0aW1lb3V0LCBhdHRlbXB0cyB9ID0gb3B0aW9ucztcbiAgICB0aW1lb3V0ID0gcGFyc2VJbnQodGltZW91dCkgfHwgNTAwMDtcbiAgICBhdHRlbXB0cyA9IHBhcnNlSW50KGF0dGVtcHRzKSB8fCAxMDtcbiAgICBhd2FpdCBlbnN1cmVJbmZyYXN0cnVjdHVyZUJvb3RlZChcImJvb3Qtb3JnLWMtcGVlci0wXCIsIHRpbWVvdXQsIGF0dGVtcHRzKTtcbiAgICBsb2cuaW5mbyhgSW5mcmFzdHJ1Y3R1cmUgYm9vdGVkIHN1Y2Nlc3NmdWxseSAoYWNjb3JkaW5nIHRvIGNvbnRhaW5lciAke2NvbnRhaW5lcn0pIWApO1xufSk7XG5jb25zdCBkZXBsb3lDb250cmFjdCA9IG5ldyBDb21tYW5kKClcbiAgICAubmFtZShcImRlcGxveS1jb250cmFjdFwiKVxuICAgIC5kZXNjcmlwdGlvbihcImRlcGxveXMgdGhlIHNlbGVjdGVkIGNvbnRyYWN0XCIpXG4gICAgLm9wdGlvbihcIi0tbmFtZSA8U3RyaW5nPlwiLCBcIkNvbnRyYWN0IE5hbWUgKGFuZCBmb2xkZXIpXCIpXG4gICAgLm9wdGlvbihcIi0taW5wdXQgPFN0cmluZz5cIiwgXCJpbnB1dCBmb2xkZXJcIilcbiAgICAub3B0aW9uKFwiLS1jb2xsZWN0aW9ucy1jb25maWcgPFN0cmluZz5cIiwgXCJwYXRoIHRvIGNvbGxlY3Rpb25zX2NvbmZpZy5qc29uIHRvIGNvbmZpZ3VyZSBwcml2YXRlIGNvbGxlY3Rpb25zXCIpXG4gICAgLm9wdGlvbihcIi0taW5jcmVtZW50VmVyc2lvbiA8U3RyaW5nPlwiLCBcIih0cnVlIHwgZmFsc2UpIGlmIHNob3VsZCB1c2UgdmVyc2lvbiBvciBzZXF1ZW5jZSB0byB1cGRhdGUgY29udHJhY3RzXCIsIGZhbHNlKVxuICAgIC5vcHRpb24oXCItLXRyYWNrZXJGb2xkZXIgPFN0cmluZz5cIiwgXCJjb250cmFjdCB2ZXJzaW9uIHRyYWNrZXIgZm9sZGVyIChzaG91bGQgYmUgZGVsZXRlZCBvbiBpbmZyYXN0cnVjdHVyZTpkb3duKVwiLCBwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJ0ZXN0c1wiLCBcImludGVncmF0aW9uXCIsIFwiY2hhaW5jb2RlVHJhY2tlcnNcIikpXG4gICAgLm9wdGlvbihcIi0tcGVlcnMgPFN0cmluZz5cIiwgXCJjb21tYSBzZXBhcmF0ZWQgcGVlciBpZHNcIiwgXCJvcmctYS1wZWVyLTAsb3JnLWItcGVlci0wLG9yZy1jLXBlZXItMFwiKVxuICAgIC5hY3Rpb24oYXN5bmMgKG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCBwa2cgPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4ocHJvY2Vzcy5jd2QoKSwgXCJwYWNrYWdlLmpzb25cIiksIFwidXRmLThcIikpO1xuICAgIGNvbnN0IHZlcnNpb24gPSBwa2cudmVyc2lvbjtcbiAgICBjb25zdCBsb2cgPSBsb2dnZXIuZm9yKFwiZGVwbG95LWNvbnRyYWN0XCIpO1xuICAgIGxvZy5kZWJ1ZyhgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gKTtcbiAgICBjb25zdCB7IG5hbWUsIGlucHV0LCBwZWVycywgdHJhY2tlckZvbGRlciwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIGluY3JlbWVudFZlcnNpb24sIGNvbGxlY3Rpb25zQ29uZmlnLCB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBwZWVySWRzID0gcGVlcnMuc3BsaXQoXCIsXCIpO1xuICAgIGNvbnN0IGNvdW50UGF0aCA9IHBhdGgucmVzb2x2ZShwYXRoLmpvaW4odHJhY2tlckZvbGRlciwgYCR7bmFtZX0uY291bnRgKSk7XG4gICAgbGV0IHNlcXVlbmNlO1xuICAgIHRyeSB7XG4gICAgICAgIHNlcXVlbmNlID0gcGFyc2VJbnQoZnMucmVhZEZpbGVTeW5jKGNvdW50UGF0aCkudG9TdHJpbmcoXCJ1dGYtOFwiKSk7XG4gICAgICAgIGlmIChpc05hTihzZXF1ZW5jZSkpXG4gICAgICAgICAgICBzZXF1ZW5jZSA9IDE7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICAgIHNlcXVlbmNlICs9IDE7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICB9XG4gICAgY2F0Y2ggKGUpIHtcbiAgICAgICAgc2VxdWVuY2UgPSAxO1xuICAgIH1cbiAgICAvL1xuICAgIC8vIGlmIChpbmNyZW1lbnRWZXJzaW9uKSB7XG4gICAgLy8gICB2ZXJzaW9uID0gdmVyc2lvbiArIGAtJHtzZXF1ZW5jZX1gO1xuICAgIC8vICAgLy8gc2VxdWVuY2UgPSAxO1xuICAgIC8vIH1cbiAgICB0cnkge1xuICAgICAgICBmb3IgKGNvbnN0IHBlZXIgb2YgcGVlcklkcykge1xuICAgICAgICAgICAgcGFja2FnZUNvbnRyYWN0KHBlZXIsIGlucHV0LCBuYW1lLCB2ZXJzaW9uKTtcbiAgICAgICAgICAgIGluc3RhbGxDb250cmFjdChwZWVyLCBuYW1lKTtcbiAgICAgICAgICAgIGFwcHJvdmVDb250cmFjdChwZWVyLCBuYW1lLCBwZWVyID09PSBcIm9yZy1hLXBlZXItMFwiXG4gICAgICAgICAgICAgICAgPyBcInRscy1jYS1jZXJ0LnBlbVwiXG4gICAgICAgICAgICAgICAgOiBcIm9yZGVyZXItdGxzLWNhLWNlcnQucGVtXCIsIHNlcXVlbmNlLCB2ZXJzaW9uLCBjb2xsZWN0aW9uc0NvbmZpZyk7XG4gICAgICAgIH1cbiAgICAgICAgZnMud3JpdGVGaWxlU3luYyhjb3VudFBhdGgsIHNlcXVlbmNlLnRvU3RyaW5nKCkpO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyKSB7XG4gICAgICAgIGxvZy5lcnJvcihcIkVycm9yIGRlcGxveWluZyBjb250cmFjdDpcIiwgZXJyKTtcbiAgICB9XG4gICAgY29tbWl0Q2hhaW5jb2RlKG5hbWUsIHNlcXVlbmNlLCB2ZXJzaW9uLCBjb2xsZWN0aW9uc0NvbmZpZyk7XG59KTtcbmNvbnN0IGdldENyeXB0b01hdGVyaWFsID0gbmV3IENvbW1hbmQoKVxuICAgIC5uYW1lKFwiZ2V0LWNyeXB0by1tYXRlcmlhbFwiKVxuICAgIC5kZXNjcmlwdGlvbihcImNvcGllcyB0aGUgY3J5cHRvIG1hdGVyaWFsIHRvIHRoZSBzZWxlY3RlZCBmb2xkZXJcIilcbiAgICAub3B0aW9uKFwiLS1mb2xkZXIgPFN0cmluZz5cIiwgXCJvdXRwdXQgZm9sZGVyXCIsIFwiZG9ja2VyL2RvY2tlci1kYXRhXCIpXG4gICAgLm9wdGlvbihcIi0tb3JnIFtTdHJpbmddXCIsIFwidGhlIG9yZy9wZWVyIHRvIGV4dHJhY3QgZnJvbVwiLCBcIm9yZy1hXCIpXG4gICAgLmFjdGlvbihhc3luYyAob3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IHBrZyA9IEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCBcInBhY2thZ2UuanNvblwiKSwgXCJ1dGYtOFwiKSk7XG4gICAgY29uc3QgdmVyc2lvbiA9IHBrZy52ZXJzaW9uO1xuICAgIGNvbnN0IGxvZyA9IGxvZ2dlci5mb3IoXCJnZXQtY3J5cHRvLW1hdGVyaWFsXCIpO1xuICAgIGxvZy5kZWJ1ZyhgcnVubmluZyB3aXRoIG9wdGlvbnM6ICR7SlNPTi5zdHJpbmdpZnkob3B0aW9ucyl9IGZvciAke3BrZy5uYW1lfSB2ZXJzaW9uICR7dmVyc2lvbn1gKTtcbiAgICBjb25zdCB7IGZvbGRlciwgb3JnIH0gPSBvcHRpb25zO1xuICAgIGV4ZWNTeW5jKGBkb2NrZXIgY3AgJHtvcmd9Oi93ZWF2ZXIvY2xpZW50Ly4gJHtmb2xkZXJ9YCwge1xuICAgICAgICBjd2Q6IHByb2Nlc3MuY3dkKCksXG4gICAgfSk7XG59KTtcbmNvbnN0IGZhYnJpY0NtZCA9IG5ldyBDb21tYW5kKClcbiAgICAubmFtZShcImZvci1mYWJyaWNcIilcbiAgICAuY29tbWFuZChcImZhYnJpY1wiKVxuICAgIC5kZXNjcmlwdGlvbihcImV4cG9zZXMgc2V2ZXJhbCBjb21tYW5kcyB0byBoZWxwIG1hbmFnZSB0aGUgZmFicmljIGluZnJhc3RydWN0dXJlXCIpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoY29tcGlsZUNvbW1hbmQpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZXh0cmFjdEluZGV4ZXMpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZW5zdXJlSW5mcmEpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZGVwbG95Q29udHJhY3QpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZ2V0Q3J5cHRvTWF0ZXJpYWwpO1xuZmFicmljQ21kLmFkZENvbW1hbmQoZXh0cmFjdENvbGxlY3Rpb25zKTtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGZhYnJpYygpIHtcbiAgICByZXR1cm4gZmFicmljQ21kO1xufVxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pWTJ4cExXMXZaSFZzWlM1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJaTR1THk0dUwzTnlZeTlqYkdrdGJXOWtkV3hsTG5SeklsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lKQlFVRkJMRTlCUVU4c1JVRkJSU3hQUVVGUExFVkJRVVVzVFVGQlRTeFhRVUZYTEVOQlFVTTdRVUZEY0VNc1QwRkJUeXhGUVVGRkxFOUJRVThzUlVGQlJTeFpRVUZaTEVWQlFVVXNUVUZCVFN4dFFrRkJiVUlzUTBGQlF6dEJRVU14UkN4UFFVRlBMRVZCUVVVc1VVRkJVU3hGUVVGRkxFMUJRVTBzWlVGQlpTeERRVUZETzBGQlEzcERMRTlCUVU4c1JVRkJSU3hOUVVGTkxFbEJRVWtzUTBGQlF6dEJRVU53UWl4UFFVRlBMRWxCUVVrc1RVRkJUU3hOUVVGTkxFTkJRVU03UVVGRGVFSXNUMEZCVHl4RlFVRlZMRTFCUVUwc1JVRkJSU3hOUVVGTkxGRkJRVkVzUTBGQlF6dEJRVU40UXl4UFFVRlBMRTlCUVU4c1RVRkJUU3gzUWtGQmQwSXNRMEZCUXp0QlFVTTNReXhQUVVGUExFVkJRVVVzWVVGQllTeEZRVUZGTEd0Q1FVRnJRaXhGUVVGRkxFMUJRVTBzZVVKQlFYbENMRU5CUVVNN1FVRkROVVVzVDBGQlR5eEZRVU5NTEhWQ1FVRjFRaXhGUVVOMlFpeHZRa0ZCYjBJc1JVRkRjRUlzWVVGQllTeEZRVU5pTEdkQ1FVRm5RaXhGUVVOb1FpeGxRVUZsTEVWQlEyWXNXVUZCV1N4SFFVTmlMR3REUVVGNVFqdEJRVU14UWl4UFFVRlBMRVZCUVVVc1MwRkJTeXhGUVVGRkxFMUJRVTBzWjBOQlFXZERMRU5CUVVNN1FVRkRka1FzVDBGQlR5eEZRVU5NTEdWQlFXVXNSVUZEWml3d1FrRkJNRUlzUlVGRE1VSXNaVUZCWlN4RlFVTm1MR1ZCUVdVc1JVRkRaaXhsUVVGbExFVkJRMllzZFVKQlFYVkNMRVZCUTNaQ0xEUkNRVUUwUWl4SFFVTTNRaXgxUWtGQmIwSTdRVUZEY2tJc2NVTkJRVFJDTzBGQlF6VkNMRTlCUVU4c1JVRkJSU3hOUVVGTkxGbEJRVmtzUTBGQlF6dEJRVU0xUWl4UFFVRlBMRVZCUTB3c2EwSkJRV3RDTEVsQlFVa3NZVUZCWVN4RlFVVnVReXhuUWtGQlowSXNSVUZEYUVJc2VVSkJRWGxDTEVkQlF6RkNMSE5EUVVGdFF6dEJRVWR3UXl4TlFVRk5MRTFCUVUwc1IwRkJSeXhQUVVGUExFTkJRVU1zUjBGQlJ5eERRVUZETEZGQlFWRXNRMEZCUXl4RFFVRkRPMEZCUlhKRExGTkJRVk1zZFVKQlFYVkNPMGxCUXpsQ0xFOUJRVTg3VVVGRFRDeEpRVUZKTEVWQlFVVXNORUpCUVRSQ08xRkJRMnhETEZOQlFWTXNRMEZCUXl4TlFVRk5MRVZCUVVVc1VVRkJVVHRaUVVONFFpeEpRVUZKTEVOQlFVTXNVVUZCVVN4SlFVRkpMRU5CUVVNc1RVRkJUU3hEUVVGRExGVkJRVlVzUTBGQlF5eEhRVUZITEVOQlFVTXNSVUZCUlN4RFFVRkRPMmRDUVVONlF5eFBRVUZQTEVsQlFVa3NRMEZCUXp0WlFVTmtMRU5CUVVNN1dVRkZSQ3hOUVVGTkxGbEJRVmtzUjBGQlJ5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRVU1zVVVGQlVTeERRVUZETEVWQlFVVXNUVUZCVFN4RFFVRkRMRU5CUVVNN1dVRkRiRVVzVFVGQlRTeFZRVUZWTEVkQlFVYzdaMEpCUTJwQ0xGbEJRVms3WjBKQlExb3NSMEZCUnl4WlFVRlpMRXRCUVVzN1owSkJRM0JDTEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1dVRkJXU3hGUVVGRkxGVkJRVlVzUTBGQlF6dGhRVU53UXl4RFFVRkRPMWxCUlVZc1MwRkJTeXhOUVVGTkxGTkJRVk1zU1VGQlNTeFZRVUZWTEVWQlFVVXNRMEZCUXp0blFrRkRia01zU1VGQlNTeEZRVUZGTEVOQlFVTXNWVUZCVlN4RFFVRkRMRk5CUVZNc1EwRkJReXhKUVVGSkxFVkJRVVVzUTBGQlF5eFJRVUZSTEVOQlFVTXNVMEZCVXl4RFFVRkRMRU5CUVVNc1RVRkJUU3hGUVVGRkxFVkJRVVVzUTBGQlF6dHZRa0ZEYUVVc1QwRkJUeXhUUVVGVExFTkJRVU03WjBKQlEyNUNMRU5CUVVNN1dVRkRTQ3hEUVVGRE8xbEJSVVFzVDBGQlR5eEpRVUZKTEVOQlFVTTdVVUZEWkN4RFFVRkRPMHRCUTBZc1EwRkJRenRCUVVOS0xFTkJRVU03UVVGRlJDeE5RVUZOTEdOQlFXTXNSMEZCUnl4SlFVRkpMRTlCUVU4c1JVRkJSVHRMUVVOcVF5eEpRVUZKTEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU03UzBGRGVFSXNWMEZCVnl4RFFVRkRMREpDUVVFeVFpeERRVUZETzB0QlEzaERMRTFCUVUwc1EwRkJReXhQUVVGUExFVkJRVVVzZVVOQlFYbERMRVZCUVVVc1MwRkJTeXhEUVVGRE8wdEJRMnBGTEUxQlFVMHNRMEZCUXl4VFFVRlRMRVZCUVVVc2JVTkJRVzFETEVWQlFVVXNTMEZCU3l4RFFVRkRPMHRCUXpkRUxFMUJRVTBzUTBGRFRDeFRRVUZUTEVWQlExUXNjVVJCUVhGRUxFVkJRM0pFTEV0QlFVc3NRMEZEVGp0TFFVTkJMRTFCUVUwc1EwRkJReXhwUWtGQmFVSXNSVUZCUlN4bFFVRmxMRVZCUVVVc2FVSkJRV2xDTEVOQlFVTTdTMEZETjBRc1RVRkJUU3hEUVVGRExGVkJRVlVzUlVGQlJTd3dRMEZCTUVNc1JVRkJSU3hMUVVGTExFTkJRVU03UzBGRGNrVXNUVUZCVFN4RFFVTk1MREpDUVVFeVFpeEZRVU16UWl4dFJVRkJiVVVzUlVGRGJrVXNhVUpCUVdsQ0xFTkJRMnhDTzB0QlEwRXNUVUZCVFN4RFFVTk1MSGRDUVVGM1FpeEZRVU40UWl4elFrRkJjMElzUlVGRGRFSXNaME5CUVdkRExFTkJRMnBETzB0QlEwRXNUVUZCVFN4RFFVRkRMSFZDUVVGMVFpeEZRVUZGTEdsRFFVRnBReXhGUVVGRkxFdEJRVXNzUTBGQlF6dExRVU42UlN4TlFVRk5MRU5CUVVNc2EwSkJRV3RDTEVWQlFVVXNORUpCUVRSQ0xFVkJRVVVzWlVGQlpTeERRVUZETzB0QlEzcEZMRTFCUVUwc1EwRkJReXh0UWtGQmJVSXNSVUZCUlN3MlFrRkJOa0lzUlVGQlJTeGhRVUZoTEVOQlFVTTdTMEZEZWtVc1RVRkJUU3hEUVVGRExHTkJRV01zUlVGQlJTdzBRMEZCTkVNc1JVRkJSU3hMUVVGTExFTkJRVU03UzBGRE0wVXNUVUZCVFN4RFFVRkRMRk5CUVZNc1JVRkJSU3gzUTBGQmQwTXNSVUZCUlN4TFFVRkxMRU5CUVVNN1MwRkRiRVVzVFVGQlRTeERRVUZETEV0QlFVc3NSVUZCUlN4UFFVRlpMRVZCUVVVc1JVRkJSVHRKUVVNM1FpeE5RVUZOTEVkQlFVY3NSMEZCUnl4SlFVRkpMRU5CUVVNc1MwRkJTeXhEUVVOd1FpeEZRVUZGTEVOQlFVTXNXVUZCV1N4RFFVRkRMRWxCUVVrc1EwRkJReXhKUVVGSkxFTkJRVU1zVDBGQlR5eERRVUZETEVkQlFVY3NSVUZCUlN4RlFVRkZMR05CUVdNc1EwRkJReXhGUVVGRkxFOUJRVThzUTBGQlF5eERRVU51UlN4RFFVRkRPMGxCUlVZc1NVRkJTU3haUVVGWkxFZEJRVWNzVTBGQlV5eERRVUZETzBsQlJUZENMRTFCUVUwc1QwRkJUeXhIUVVGSExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTTdTVUZGTlVJc1NVRkJTVHRKUVVOR0xIZERRVUYzUXp0SlFVTjRReXhIUVVGSE8wbEJRMGdzZDBOQlFYZERPMGxCUTNoRExFdEJRVXM3U1VGRFRDeDNRMEZCZDBNN1NVRkRlRU1zU1VGQlNUdEpRVU5LTEhkRFFVRjNRenRKUVVONFF5eFhRVUZYTEVWQlExZ3NUVUZCVFR0SlFVTk9MSGREUVVGM1F6dEpRVU40UXl4TFFVRkxPMGxCUTB3c2QwTkJRWGRETzBsQlEzaERMR2xDUVVGcFFqdEpRVU5xUWl4M1EwRkJkME03U1VGRGVFTXNTMEZCU3p0SlFVTk1MSGREUVVGM1F6dEpRVU40UXl4TlFVRk5MRVZCUlU0c1dVRkJXVHRKUVVOYUxIZERRVUYzUXp0SlFVTjRReXhWUVVGVk8wbEJRMVlzZDBOQlFYZERPMGxCUTNoRExFdEJRVXNzUjBGRFRpeEhRVUZITEU5QlFVOHNRMEZCUXp0SlFVTmFMRTFCUVUwc1IwRkJSeXhIUVVGSExFMUJRVTBzUTBGQlF5eEhRVUZITEVOQlFVTXNhMEpCUVd0Q0xFTkJRVU1zUTBGQlF6dEpRVU16UXl4SlFVRkpMRU5CUVVNN1VVRkRTQ3hKUVVGSkxFdEJRVXNzUlVGQlJTeERRVUZETzFsQlExWXNXVUZCV1N4SFFVRkhMRVZCUVVVN2FVSkJRMlFzV1VGQldTeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUlVGQlJTeEZRVUZGTEZGQlFWRXNRMEZCUXl4RlFVRkZMRTlCUVU4c1EwRkJRenRwUWtGRGVrUXNVVUZCVVN4RlFVRkZMRU5CUVVNN1dVRkZaQ3hOUVVGTkxGRkJRVkVzUjBGQlJ5eFpRVUZaTEVOQlFVTXNUMEZCVHl4RFFVTnVReXhuUWtGQlowSXNSVUZEYUVJc1EwRkJReXhEUVVGTkxFVkJRVVVzVDBGQlpTeEZRVUZGTEVWQlFVVTdaMEpCUXpGQ0xFMUJRVTBzUzBGQlN5eEhRVUZITEU5QlFVOHNRMEZCUXl4SFFVRkhMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU03WjBKQlJXNURMRWxCUVVrc1MwRkJTeXhMUVVGTExGTkJRVk1zUlVGQlJTeERRVUZETzI5Q1FVTjRRaXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVU5XTEd0RFFVRnJReXhQUVVGUExHTkJRV01zUTBGRGVFUXNRMEZCUXp0dlFrRkRSaXhQUVVGUExFVkJRVVVzUTBGQlF6dG5Ra0ZEV2l4RFFVRkRPMmRDUVVWRUxFOUJRVThzUzBGQlN5eERRVUZETzFsQlEyWXNRMEZCUXl4RFFVTkdMRU5CUVVNN1dVRkZSaXhaUVVGWkxFZEJRVWNzVVVGQlVTeERRVUZETzFGQlF6RkNMRU5CUVVNN1NVRkRTQ3hEUVVGRE8wbEJRVU1zVFVGQlRTeERRVUZETzFGQlExQXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXg1UkVGQmVVUXNRMEZCUXl4RFFVRkRPMGxCUTNSRkxFTkJRVU03U1VGRlJDeEhRVUZITEVOQlFVTXNTMEZCU3l4RFFVTlFMSGxDUVVGNVFpeEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMRTlCUVU4c1EwRkJReXhSUVVGUkxFZEJRVWNzUTBGQlF5eEpRVUZKTEZsQlFWa3NUMEZCVHl4RlFVRkZMRU5CUTNSR0xFTkJRVU03U1VGRlJpeFpRVUZaTEVkQlFVY3NTVUZCU1N4RFFVRkRMRlZCUVZVc1EwRkJReXhaUVVGWkxFTkJRVU03VVVGRE1VTXNRMEZCUXl4RFFVRkRMRmxCUVZrN1VVRkRaQ3hEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1IwRkJSeXhGUVVGRkxFVkJRVVVzV1VGQldTeERRVUZETEVOQlFVTTdTVUZGTTBNc1RVRkJUU3hIUVVGSExHbENRVUZwUWl4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1RVRkJUU3hGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETzBsQlF6bEVMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zY1VSQlFYRkVMRTFCUVUwc1JVRkJSU3hEUVVGRExFTkJRVU03U1VGRGVFVXNVVUZCVVN4RFFVRkRMRlZCUVZVc1RVRkJUU3hGUVVGRkxFTkJRVU1zUTBGQlF6dEpRVU0zUWl4SlFVRkpMRTFCUVUwc1JVRkJSU3hEUVVGRE8xRkJRMWdzUjBGQlJ5eERRVUZETEVsQlFVa3NRMEZCUXl3d1FrRkJNRUlzUzBGQlN5eEZRVUZGTEVOQlFVTXNRMEZCUXp0UlFVTTFReXhOUVVGTkxHRkJRV0VzUjBGQlJ5eEZRVUZGTEVOQlFVTXNWMEZCVnl4RFFVTnNReXhKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4SFFVRkhMRVZCUVVVc1JVRkJSU3h0UWtGQmJVSXNRMEZCUXl4RFFVTTVReXhEUVVGRE8xRkJRMFlzU1VGQlNTeERRVUZETzFsQlEwZ3NUVUZCVFN4VlFVRlZMRWRCUVVjc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4RlFVRkZMRVZCUVVVc1MwRkJTeXhGUVVGRkxGVkJRVlVzUTBGQlF5eERRVUZETzFsQlEyeEZMRTFCUVUwc1ZVRkJWU3hIUVVGSExFVkJRVVVzUTBGQlF5eGpRVUZqTEVOQlFVTXNXVUZCV1N4RlFVRkZMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zVVVGQlVTeERRVUZETEVOQlFVTTdXVUZEY0VVc1NVRkJTU3hWUVVGVkxFTkJRVU1zUzBGQlN5eEZRVUZGTEVOQlFVTTdaMEpCUTNKQ0xFMUJRVTBzU1VGQlNTeGhRVUZoTEVOQlEzSkNMRVZCUVVVc1EwRkJReXcwUWtGQk5FSXNRMEZCUXl4VlFVRlZMRU5CUVVNc1MwRkJTeXhEUVVGRExGZEJRVmNzUlVGQlJTeEpRVUZKTEVOQlFVTXNRMEZEY0VVc1EwRkJRenRaUVVOS0xFTkJRVU03V1VGRlJDeE5RVUZOTEZsQlFWa3NSMEZCUnl4RlFVRkZMRU5CUVVNc01FSkJRVEJDTEVOQlEyaEVMRlZCUVZVc1EwRkJReXhOUVVGTkxFVkJRMnBDTEVWQlFVVXNRMEZCUXl4SFFVRkhMRVZCUTA0c1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eFpRVUZaTEVOQlFVTXNSVUZETVVJc1UwRkJVeXhGUVVOVUxGbEJRVmtzUTBGRFlpeERRVUZETzFsQlEwWXNTVUZCU1N4WlFVRlpMRU5CUVVNc1RVRkJUU3hEUVVGRExFMUJRVTBzUlVGQlJTeERRVUZETzJkQ1FVTXZRaXhOUVVGTkxFbEJRVWtzWVVGQllTeERRVU55UWl4WlFVRlpMRU5CUVVNc1RVRkJUVHR4UWtGRGFFSXNSMEZCUnl4RFFVRkRMRU5CUVVNc1MwRkJTeXhGUVVGRkxFVkJRVVVzUTBGRFlpeEZRVUZGTEVOQlFVTXNORUpCUVRSQ0xFTkJRVU1zUzBGQlN5eERRVUZETEZkQlFWY3NSVUZCUlN4SlFVRkpMRU5CUVVNc1EwRkRla1E3Y1VKQlEwRXNTVUZCU1N4RFFVRkRMRWxCUVVrc1EwRkJReXhEUVVOa0xFTkJRVU03V1VGRFNpeERRVUZETzFsQlJVUXNUVUZCVFN4dFFrRkJiVUlzUjBGQmRVSTdaMEpCUXpsRExFZEJRVWNzV1VGQldTeERRVUZETEU5QlFVODdaMEpCUTNaQ0xFMUJRVTBzUlVGQlJTeGhRVUZoTzJkQ1FVTnlRaXhOUVVGTkxFVkJRVVVzUlVGQlJTeERRVUZETEZWQlFWVXNRMEZCUXl4TlFVRk5PMmRDUVVNMVFpeFhRVUZYTEVWQlFVVXNTMEZCU3p0blFrRkRiRUlzVTBGQlV5eEZRVUZGTEV0QlFVczdaMEpCUTJoQ0xHRkJRV0VzUlVGQlJTeExRVUZMTzJGQlEzSkNMRU5CUVVNN1dVRkRSaXhOUVVGTkxHbENRVUZwUWl4SFFVRkhMRVZCUVVVN2FVSkJRM3BDTEd0Q1FVRnJRaXhEUVVOcVFqdG5Ra0ZEUlN4SFFVRkhMRmxCUVZrN1owSkJRMllzVDBGQlR5eEZRVUZGTEcxQ1FVRnRRanRoUVVNM1FpeEZRVU5FTEZWQlFWVXNSVUZEVml4RFFVRkRMRVZCUVVVc1EwRkJReXhIUVVGSExFTkJRVU1zZVVKQlFYbENMRU5CUTJ4RE8ybENRVU5CTEVsQlFVa3NRMEZCUXl4RFFVRkRMRkZCUVZFc1JVRkJSU3hGUVVGRkxFTkJRVU1zVVVGQlVTeERRVUZETEZGQlFWRXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRE8xbEJSV2hFTEVsQlFVa3NRMEZCUXl4cFFrRkJhVUlzUlVGQlJTeERRVUZETzJkQ1FVTjJRaXhOUVVGTkxFbEJRVWtzWVVGQllTeERRVU55UWl4dlJFRkJiMFFzVlVGQlZTeEZRVUZGTEVOQlEycEZMRU5CUVVNN1dVRkRTaXhEUVVGRE8xbEJSVVFzTkVKQlFUUkNMRU5CUVVNc1dVRkJXU3hGUVVGRkxHMUNRVUZ0UWl4RFFVRkRMRU5CUVVNN1dVRkRhRVVzVFVGQlRTeGxRVUZsTEVkQlFVY3NUVUZCVFN4TlFVRk5MRU5CUVVNN1owSkJRMjVETEV0QlFVc3NSVUZCUlN4cFFrRkJhVUk3WjBKQlEzaENMRTlCUVU4c1JVRkJSVHR2UWtGRFVDeDFRa0ZCZFVJc1JVRkJSVHR2UWtGRGVrSXNUMEZCVHl4RFFVRkRPM2RDUVVOT0xHbENRVUZwUWl4RlFVRkZMRWxCUVVrN2QwSkJRM1pDTEZWQlFWVXNSVUZCUlN4RFFVRkRMRVZCUVVVc1JVRkJSU3hGUVVGRkxFTkJRVU03ZDBKQlEzQkNMRTFCUVUwc1JVRkJSU3hGUVVGRkxHRkJRV0VzUlVGQlJTeFBRVUZQTEVWQlFVVXNZVUZCWVN4RlFVRkZMRWRCUVVjc1EwRkJReXhKUVVGSkxFVkJRVVU3Y1VKQlF6VkVMRU5CUVVNN2FVSkJRMGc3WVVGRFJpeERRVUZETEVOQlFVTTdXVUZEU0N4SFFVRkhMRU5CUVVNc1NVRkJTU3hEUVVOT0xIVkNRVUYxUWl4TlFVRk5MR05CUVdNc1dVRkJXU3hEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTEVOQlEyNUZMRU5CUVVNN1dVRkRSaXhOUVVGTkxHVkJRV1VzUTBGQlF5eExRVUZMTEVOQlFVTTdaMEpCUXpGQ0xFbEJRVWtzUlVGQlJTeEhRVUZITEUxQlFVMHNTVUZCU1N4WlFVRlpMRU5CUVVNc1NVRkJTU3hEUVVGRExFdEJRVXM3WjBKQlF6RkRMRTFCUVUwc1JVRkJSU3hMUVVGTE8yZENRVU5pTEVsQlFVa3NSVUZCUlN4SFFVRkhMRmxCUVZrc1EwRkJReXhKUVVGSkxFTkJRVU1zUzBGQlN6dG5Ra0ZEYUVNc1UwRkJVeXhGUVVGRkxGVkJRVlVzUTBGQlF5eERRVUZETEVOQlFVTXNVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJReXhMUVVGTE8yZENRVU40UXl4elFrRkJjMElzUlVGQlJTeERRVUZETEd0Q1FVRnJRaXhGUVVGRkxHRkJRV0VzUlVGQlJTeEZRVUZGTzI5Q1FVTTFSQ3hOUVVGTkxHdENRVUZyUWl4SFFVRkhMRWxCUVVrc1EwRkJReXhQUVVGUExFTkJRM0pETEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1lVRkJZU3hEUVVGRExFVkJRek5DTEd0Q1FVRnJRaXhEUVVOdVFpeERRVUZETzI5Q1FVVkdMRWxCUVVrc2EwSkJRV3RDTEVOQlFVTXNWVUZCVlN4RFFVRkRMR0ZCUVdFc1EwRkJReXhGUVVGRkxFTkJRVU03ZDBKQlEycEVMRTlCUVU4c1NVRkJTU3hEUVVGRExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlEzQkNMRk5CUVZNc1JVRkRWQ3hKUVVGSk96WkNRVU5FTEZGQlFWRXNRMEZCUXl4aFFVRmhMRVZCUVVVc2EwSkJRV3RDTEVOQlFVTTdOa0pCUXpORExFdEJRVXNzUTBGQlF5eEpRVUZKTEVOQlFVTXNSMEZCUnl4RFFVRkRPelpDUVVObUxFbEJRVWtzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZEWWl4RFFVRkRPMjlDUVVOS0xFTkJRVU03YjBKQlJVUXNUMEZCVHl4clFrRkJhMElzUTBGQlF6dG5Ra0ZETlVJc1EwRkJRenRoUVVOR0xFTkJRVU1zUTBGQlF6dFpRVU5JTEUxQlFVMHNaVUZCWlN4RFFVRkRMRXRCUVVzc1JVRkJSU3hEUVVGRE8xRkJRMmhETEVOQlFVTTdaMEpCUVZNc1EwRkJRenRaUVVOVUxFVkJRVVVzUTBGQlF5eE5RVUZOTEVOQlFVTXNZVUZCWVN4RlFVRkZMRVZCUVVVc1UwRkJVeXhGUVVGRkxFbEJRVWtzUlVGQlJTeExRVUZMTEVWQlFVVXNTVUZCU1N4RlFVRkZMRU5CUVVNc1EwRkJRenRSUVVNM1JDeERRVUZETzBsQlEwZ3NRMEZCUXp0VFFVRk5MRU5CUVVNN1VVRkRUaXcwUWtGQk5FSXNRMEZCUXl4WlFVRlpMRVZCUVVVN1dVRkRla01zVFVGQlRTeEZRVUZGTEUxQlFVMDdXVUZEWkN4TlFVRk5MRVZCUVVVc1JVRkJSU3hEUVVGRExGVkJRVlVzUTBGQlF5eE5RVUZOTzFsQlF6VkNMRmRCUVZjc1JVRkJSU3hMUVVGTE8xbEJRMnhDTEZOQlFWTXNSVUZCUlN4VlFVRlZPMWxCUTNKQ0xHRkJRV0VzUlVGQlJTeFZRVUZWTzFOQlF6RkNMRU5CUVVNc1EwRkJRenRKUVVOTUxFTkJRVU03U1VGRlJDeE5RVUZOTEU5QlFVOHNSMEZCUnp0UlFVTmtMRXRCUVVzc1JVRkJSU3gxUWtGQmRVSXNRMEZCUXl4TFFVRkxMRVZCUVVVc1MwRkJTeXhEUVVGRE8xRkJRelZETEZkQlFWY3NSVUZCUlN4cFJFRkJhVVE3VVVGRE9VUXNZVUZCWVN4RlFVRkZMRzlEUVVGdlF6dFJRVU51UkN4TFFVRkxMRVZCUVVVc2RVTkJRWFZETzFGQlF6bERMRWxCUVVrc1JVRkJSU3d3UWtGQk1FSTdTMEZEYWtNc1EwRkJRenRKUVVWR0xFMUJRVTBzWlVGQlpTeEhRVUZITEVkQlFVY3NRMEZCUXp0SlFVVTFRaXhsUVVGbExFTkJRVU1zU1VGQlNTeEhRVUZITEVsQlFVa3NRMEZCUXp0SlFVTTFRaXhsUVVGbExFTkJRVU1zVjBGQlZ5eEhRVUZITEZkQlFWY3NRMEZCUXp0SlFVTXhReXhsUVVGbExFTkJRVU1zVDBGQlR5eEhRVUZITEU5QlFVOHNRMEZCUXp0SlFVVnNReXhQUVVGUExHVkJRV1VzUTBGQlF5eEpRVUZKTEVOQlFVTTdTVUZETlVJc1QwRkJUeXhsUVVGbExFTkJRVU1zUzBGQlN5eERRVUZETzBsQlF6ZENMRTlCUVU4c1pVRkJaU3hEUVVGRExFOUJRVThzUTBGQlF6dEpRVU12UWl4bFFVRmxMRU5CUVVNc1NVRkJTU3hIUVVGSExFMUJRVTA3VVVGRE0wSXNRMEZCUXl4RFFVRkRMRWRCUVVjc1dVRkJXU3hEUVVGRExFbEJRVWtzUTBGQlF5eExRVUZMTzFGQlF6VkNMRU5CUVVNc1EwRkJReXhIUVVGSExFdEJRVXNzVjBGQlZ5eERRVUZETzBsQlJYaENMRVZCUVVVc1EwRkJReXhoUVVGaExFTkJRMlFzU1VGQlNTeERRVUZETEVsQlFVa3NRMEZCUXl4TlFVRk5MRVZCUVVVc1kwRkJZeXhEUVVGRExFVkJRMnBETEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1pVRkJaU3hEUVVGRExFTkJRMmhETEVOQlFVTTdTVUZGUml4SlFVRkpMRXRCUVVzc1NVRkJTU3haUVVGWk8xRkJRM1pDTEVWQlFVVXNRMEZCUXl4aFFVRmhMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eE5RVUZOTEVWQlFVVXNVVUZCVVN4RFFVRkRMRVZCUVVVc1dVRkJXU3hEUVVGRExFTkJRVU03U1VGRk9VUXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXcwUTBGQk5FTXNRMEZCUXl4RFFVRkRPMGxCUTNaRUxGRkJRVkVzUTBGQlF5eGhRVUZoTEVWQlFVVXNSVUZCUlN4SFFVRkhMRVZCUVVVc1RVRkJUU3hGUVVGRkxFTkJRVU1zUTBGQlF6dEpRVU42UXl4UlFVRlJMRU5CUVVNc1owSkJRV2RDTEVWQlFVVXNSVUZCUlN4SFFVRkhMRVZCUVVVc1RVRkJUU3hGUVVGRkxFTkJRVU1zUTBGQlF6dEpRVU0xUXl4UlFVRlJMRU5CUVVNc2NVSkJRWEZDTEVWQlFVVXNSVUZCUlN4SFFVRkhMRVZCUVVVc1RVRkJUU3hGUVVGRkxFTkJRVU1zUTBGQlF6dEpRVU5xUkN4SFFVRkhMRU5CUVVNc1NVRkJTU3hEUVVGRExIVkNRVUYxUWl4RFFVRkRMRU5CUVVNN1NVRkRiRU1zVVVGQlVTeERRVUZETEN0Q1FVRXJRaXhGUVVGRkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEUxQlFVMHNSVUZCUlN4RFFVRkRMRU5CUVVNN1NVRkRNMFFzUjBGQlJ5eERRVUZETEVsQlFVa3NRMEZEVGl4WlFVRlpMRWxCUVVrc09FSkJRVGhDTEVsQlFVa3NRMEZCUXl4UFFVRlBMRU5CUVVNc1RVRkJUU3hEUVVGRExFVkJRVVVzUTBGRGNrVXNRMEZCUXp0SlFVTkdMRWxCUVVrc1IwRkJSeXhGUVVGRkxFTkJRVU03VVVGRFVpeEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVRkRMSGxFUVVGNVJDeERRVUZETEVOQlFVTTdVVUZEY0VVc1VVRkJVU3hEUVVGRExHRkJRV0VzUlVGQlJUdFpRVU4wUWl4SFFVRkhMRVZCUVVVc1RVRkJUVHRaUVVOWUxFZEJRVWNzUlVGQlJTeEZRVUZGTEVkQlFVY3NUMEZCVHl4RFFVRkRMRWRCUVVjc1JVRkJSU3hSUVVGUkxFVkJRVVVzV1VGQldTeEZRVUZGTzFOQlEyaEVMRU5CUVVNc1EwRkJRenRKUVVOTUxFTkJRVU03UVVGRFNDeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVVk1MRTFCUVUwc1kwRkJZeXhIUVVGSExFbEJRVWtzVDBGQlR5eEZRVUZGTzB0QlEycERMRTlCUVU4c1EwRkJReXhwUWtGQmFVSXNRMEZCUXp0TFFVTXhRaXhOUVVGTkxFTkJRVU1zYVVKQlFXbENMRVZCUVVVc1owSkJRV2RDTEVOQlFVTTdTMEZETTBNc1RVRkJUU3hEUVVGRExHMUNRVUZ0UWl4RlFVRkZMR3RDUVVGclFpeERRVUZETzB0QlF5OURMRTFCUVUwc1EwRkJReXh0UWtGQmJVSXNSVUZCUlN3clEwRkJLME1zUTBGQlF6dExRVU0xUlN4WFFVRlhMRU5CUTFZc01rVkJRVEpGTEVOQlF6VkZPMHRCUTBFc1RVRkJUU3hEUVVGRExFdEJRVXNzUlVGQlJTeFBRVUZaTEVWQlFVVXNSVUZCUlR0SlFVTTNRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVTndRaXhGUVVGRkxFTkJRVU1zV1VGQldTeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUlVGQlJTeEZRVUZGTEdOQlFXTXNRMEZCUXl4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVOdVJTeERRVUZETzBsQlJVWXNUVUZCVFN4UFFVRlBMRWRCUVVjc1IwRkJSeXhEUVVGRExFOUJRVThzUTBGQlF6dEpRVVUxUWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETEdsQ1FVRnBRaXhEUVVGRExFTkJRVU03U1VGRE1VTXNSMEZCUnl4RFFVRkRMRXRCUVVzc1EwRkRVQ3g1UWtGQmVVSXNTVUZCU1N4RFFVRkRMRk5CUVZNc1EwRkJReXhQUVVGUExFTkJRVU1zVVVGQlVTeEhRVUZITEVOQlFVTXNTVUZCU1N4WlFVRlpMRTlCUVU4c1JVRkJSU3hEUVVOMFJpeERRVUZETzBsQlJVWXNkME5CUVhkRE8wbEJRM2hETEVsQlFVa3NSVUZCUlN4SlFVRkpMRVZCUVVVc1RVRkJUU3hGUVVGRkxFMUJRVTBzUlVGQlJTeEhRVUZITEU5QlFVOHNRMEZCUXp0SlFVVjJReXhOUVVGTkxFMUJRVTBzUjBGQlZTeEZRVUZGTEVOQlFVTTdTVUZEZWtJc1NVRkJTU3hKUVVGSkxFVkJRVVVzUTBGQlF6dFJRVU5VTEUxQlFVMHNRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhoUVVGaExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVTXNRMEZCUXp0SlFVTjBReXhEUVVGRE8wbEJSVVFzU1VGQlNTeE5RVUZOTEVWQlFVVXNRMEZCUXp0UlFVTllMRWRCUVVjc1EwRkJReXhKUVVGSkxFTkJRVU1zZFVKQlFYVkNMRTFCUVUwc1MwRkJTeXhEUVVGRExFTkJRVU03VVVGRE4wTXNUVUZCVFN4RFFVRkRMRWxCUVVrc1EwRkJReXhIUVVGSExFTkJRVU1zVFVGQlRTeG5Ra0ZCWjBJc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVOQlFVTTdTVUZEYmtRc1EwRkJRenRKUVVORUxFMUJRVTBzVFVGQlRTeEhRVUYzUWl4RlFVRkZMRU5CUVVNN1NVRkRka01zVFVGQlRTeFZRVUZWTEVkQlFYZENMRVZCUVVVc1EwRkJRenRKUVVVelF5eEpRVUZKTEVOQlFVTXNTVUZCU1N4SlFVRkpMRU5CUVVNc1RVRkJUVHRSUVVOc1FpeE5RVUZOTEVsQlFVa3NZVUZCWVN4RFFVRkRMRGhDUVVFNFFpeERRVUZETEVOQlFVTTdTVUZGTVVRc1MwRkJTeXhOUVVGTkxFTkJRVU1zU1VGQlNTeE5RVUZOTEVWQlFVVXNRMEZCUXp0UlFVTjJRaXhIUVVGSExFTkJRVU1zVDBGQlR5eERRVUZETEdkRFFVRm5ReXhMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNc1EwRkJRenRSUVVOc1JTeE5RVUZOTEU5QlFVOHNSMEZCUnl4dlFrRkJiMElzUTBGQlF5eERRVUZETEVOQlFVTXNRMEZCUXp0UlFVTjRReXhQUVVGUExFTkJRVU1zVDBGQlR5eERRVUZETEVOQlFVTXNTMEZCU3l4RlFVRkZMRVZCUVVVN1dVRkRlRUlzU1VGQlNTeExRVUZMTEVOQlFVTXNTVUZCU1N4RlFVRkZMRU5CUVVNN1owSkJRMllzVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4SlFVRkpMRU5CUVVNc1IwRkJSeXhMUVVGTExFTkJRVU03V1VGRE4wSXNRMEZCUXp0UlFVTklMRU5CUVVNc1EwRkJReXhEUVVGRE8xRkJRMGdzZFVKQlFYVkNMRU5CUVVNc1EwRkJReXhGUVVGRkxGVkJRVlVzUTBGQlF5eERRVUZETzBsQlEzcERMRU5CUVVNN1NVRkRSQ3hOUVVGTkxHTkJRV01zUjBGQlJ5eE5RVUZOTEVOQlFVTXNUVUZCVFN4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRE8wbEJRemRETEUxQlFVMHNWMEZCVnl4SFFVRkhMRTFCUVUwc1EwRkJReXhOUVVGTkxFTkJRVU1zVlVGQlZTeERRVUZETEVOQlFVTTdTVUZET1VNc1IwRkJSeXhEUVVGRExFOUJRVThzUTBGQlF5eFRRVUZUTEdOQlFXTXNRMEZCUXl4TlFVRk5MRzlDUVVGdlFpeERRVUZETEVOQlFVTTdTVUZEYUVVc1IwRkJSeXhEUVVGRExFOUJRVThzUTBGQlF5eFRRVUZUTEZkQlFWY3NRMEZCUXl4TlFVRk5MSGRDUVVGM1FpeERRVUZETEVOQlFVTTdTVUZEYWtVc1IwRkJSeXhEUVVGRExFdEJRVXNzUTBGQlF5eFpRVUZaTEVsQlFVa3NRMEZCUXl4VFFVRlRMRU5CUVVNc1RVRkJUU3hEUVVGRExFVkJRVVVzUTBGQlF5eERRVUZETzBsQlEyaEVMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRVU1zWlVGQlpTeEpRVUZKTEVOQlFVTXNVMEZCVXl4RFFVRkRMRlZCUVZVc1EwRkJReXhGUVVGRkxFTkJRVU1zUTBGQlF6dEpRVU4yUkN4WlFVRlpMRU5CUVVNc1kwRkJZeXhGUVVGRkxFMUJRVTBzUTBGQlF5eERRVUZETzBsQlEzSkRMR1ZCUVdVc1EwRkJReXhYUVVGWExFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTTdRVUZEZGtNc1EwRkJReXhEUVVGRExFTkJRVU03UVVGRlRDeE5RVUZOTEd0Q1FVRnJRaXhIUVVGSExFbEJRVWtzVDBGQlR5eEZRVUZGTzB0QlEzSkRMRTlCUVU4c1EwRkJReXh4UWtGQmNVSXNRMEZCUXp0TFFVTTVRaXhOUVVGTkxFTkJRVU1zYVVKQlFXbENMRVZCUVVVc1owSkJRV2RDTEVOQlFVTTdTMEZETTBNc1RVRkJUU3hEUVVGRExHMUNRVUZ0UWl4RlFVRkZMR3RDUVVGclFpeERRVUZETzB0QlF5OURMRTFCUVUwc1EwRkJReXh0UWtGQmJVSXNSVUZCUlN3clEwRkJLME1zUTBGQlF6dExRVU0xUlN4TlFVRk5MRU5CUVVNc2JVSkJRVzFDTEVWQlFVVXNiVU5CUVcxRExFTkJRVU03UzBGRGFFVXNUVUZCVFN4RFFVRkRMSE5DUVVGelFpeEZRVUZGTEdOQlFXTXNRMEZCUXp0TFFVTTVReXhOUVVGTkxFTkJRMHdzYzBKQlFYTkNMRVZCUTNSQ0xEWkxRVUUyU3l4RFFVTTVTenRMUVVOQkxGZEJRVmNzUTBGRFZpd3lSVUZCTWtVc1EwRkROVVU3UzBGRFFTeE5RVUZOTEVOQlFVTXNTMEZCU3l4RlFVRkZMRTlCUVZrc1JVRkJSU3hGUVVGRk8wbEJRemRDTEUxQlFVMHNSMEZCUnl4SFFVRkhMRWxCUVVrc1EwRkJReXhMUVVGTExFTkJRM0JDTEVWQlFVVXNRMEZCUXl4WlFVRlpMRU5CUVVNc1NVRkJTU3hEUVVGRExFbEJRVWtzUTBGQlF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4RlFVRkZMRVZCUVVVc1kwRkJZeXhEUVVGRExFVkJRVVVzVDBGQlR5eERRVUZETEVOQlEyNUZMRU5CUVVNN1NVRkZSaXhOUVVGTkxFOUJRVThzUjBGQlJ5eEhRVUZITEVOQlFVTXNUMEZCVHl4RFFVRkRPMGxCUlRWQ0xFMUJRVTBzUjBGQlJ5eEhRVUZITEUxQlFVMHNRMEZCUXl4SFFVRkhMRU5CUVVNc2NVSkJRWEZDTEVOQlFVTXNRMEZCUXp0SlFVTTVReXhIUVVGSExFTkJRVU1zUzBGQlN5eERRVU5RTEhsQ1FVRjVRaXhKUVVGSkxFTkJRVU1zVTBGQlV5eERRVUZETEU5QlFVOHNRMEZCUXl4UlFVRlJMRWRCUVVjc1EwRkJReXhKUVVGSkxGbEJRVmtzVDBGQlR5eEZRVUZGTEVOQlEzUkdMRU5CUVVNN1NVRkZSaXgzUTBGQmQwTTdTVUZEZUVNc1NVRkJTU3hGUVVGRkxFbEJRVWtzUlVGQlJTeE5RVUZOTEVWQlFVVXNUVUZCVFN4RlFVRkZMRTFCUVUwc1JVRkJSU3hUUVVGVExFVkJRVVVzUjBGQlJ5eFBRVUZQTEVOQlFVTTdTVUZGTVVRc1NVRkJTU3hEUVVGRE8xRkJRMGdzU1VGQlNTeERRVUZETzFsQlEwZ3NUVUZCVFN4SFFVRkhMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4TlFVRk5MRU5CUVVNc1EwRkJReXhEUVVGRExFTkJRVU1zVTBGQlV5eERRVUZETzFsQlEycEVMRFpFUVVFMlJEdFJRVU12UkN4RFFVRkRPMUZCUVVNc1QwRkJUeXhEUVVGVkxFVkJRVVVzUTBGQlF6dFpRVU53UWl4alFVRmpPMUZCUTJoQ0xFTkJRVU03U1VGRFNDeERRVUZETzBsQlFVTXNUMEZCVHl4RFFVRlZMRVZCUVVVc1EwRkJRenRSUVVOd1FpeE5RVUZOTEVsQlFVa3NhMEpCUVd0Q0xFTkJRVU1zT0VKQlFUaENMRU5CUVVNc1JVRkJSU3hEUVVGRExFTkJRVU03U1VGRGJFVXNRMEZCUXp0SlFVVkVMRTFCUVUwc1RVRkJUU3hIUVVGVkxFVkJRVVVzUTBGQlF6dEpRVU42UWl4SlFVRkpMRWxCUVVrc1JVRkJSU3hEUVVGRE8xRkJRMVFzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4SFFVRkhMR0ZCUVdFc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF5eERRVUZETzBsQlEzUkRMRU5CUVVNN1NVRkZSQ3hKUVVGSkxFMUJRVTBzUlVGQlJTeERRVUZETzFGQlExZ3NSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkJReXgxUWtGQmRVSXNUVUZCVFN4TFFVRkxMRU5CUVVNc1EwRkJRenRSUVVNM1F5eE5RVUZOTEVOQlFVTXNTVUZCU1N4RFFVRkRMRWRCUVVjc1EwRkJReXhOUVVGTkxHZENRVUZuUWl4RFFVRkRMRTFCUVUwc1EwRkJReXhEUVVGRExFTkJRVU1zUTBGQlF6dEpRVU51UkN4RFFVRkRPMGxCUlVRc1NVRkJTU3hEUVVGRExFbEJRVWtzU1VGQlNTeERRVUZETEUxQlFVMDdVVUZEYkVJc1RVRkJUU3hKUVVGSkxHRkJRV0VzUTBGQlF5dzRRa0ZCT0VJc1EwRkJReXhEUVVGRE8wbEJSVEZFTEUxQlFVMHNaMEpCUVdkQ0xFZEJRVWNzVFVGQlRTeERRVUZETEUxQlFVMHNRMEZEY0VNc1EwRkJReXhMUVVGTExFVkJRVVVzUlVGQlJTeERRVU5TTEV0QlFVc3NRMEZCUXl4UlFVRlJMRU5CUVVNc1MwRkJTeXhEUVVGRE8xRkJRM0pDTEV0QlFVc3NRMEZCUXl4VFFVRlRMRU5CUVVNc1MwRkJTeXhEUVVGRE8xRkJRM1JDTEVOQlFVTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1ZVRkJWU3hEUVVGRExFdEJRVXNzUTBGQlF5eERRVU0xUWl4RFFVRkRPMGxCUTBZc1NVRkJTU3hEUVVGRExHZENRVUZuUWl4RFFVRkRMRTFCUVUwc1JVRkJSU3hEUVVGRE8xRkJRemRDTEVkQlFVY3NRMEZCUXl4SlFVRkpMRU5CUTA0c2NVVkJRWEZGTEVOQlEzUkZMRU5CUVVNN1VVRkRSaXhQUVVGUE8wbEJRMVFzUTBGQlF6dEpRVVZFTEV0QlFVc3NWVUZCVlN4UFFVRlBMRU5CUVVNc1ZVRkJjVUk3VVVGRE1VTXNUVUZCVFN4SlFVRkpMRWRCUzBvc1RVRkJUU3hQUVVGUExFTkJRVU1zUjBGQlJ5eERRVU55UWl4blFrRkJaMElzUTBGQlF5eEhRVUZITEVOQlFVTXNTMEZCU3l4RlFVRkZMRXRCUVVzc1JVRkJSU3hGUVVGRk8xbEJRMjVETEUxQlFVMHNVMEZCVXl4SFFVRkhMRXRCUVVzc1EwRkJReXhUUVVGVExFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTTdXVUZEZWtNc1RVRkJUU3hWUVVGVkxFZEJRVWNzUzBGQlN5eERRVUZETEZWQlFWVXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRaUVVVelF5eFBRVUZQTEVOQlFVTXNSMEZCUnl4RFFVRkRMRk5CUVZNc1EwRkJReXhEUVVGRE8xbEJRM1pDTEUxQlFVMHNWMEZCVnl4SFFVRjNRaXhGUVVGRkxFTkJRVU03V1VGRE5VTXNTMEZCU3l4TlFVRk5MRWRCUVVjc1NVRkJTU3hWUVVGVkxFbEJRVWtzVFVGQlRTeEpRVUZKTEVWQlFVVXNSVUZCUlN4RFFVRkRPMmRDUVVNM1F5eFhRVUZYTEVOQlFVTXNSMEZCUnl4RFFVRkRMRWRCUVVjc1RVRkJUU3hoUVVGaExFTkJRM0JETEV0QlFVc3NSVUZEVEN4RFFVRkRMRWRCUVVjc1JVRkJSU3hUUVVGVExFTkJRVU1zUlVGRGFFSXNSVUZCUlR0blFrRkRSaXhKUVVGSk8yZENRVU5LTEhsRVFVRjVSRHRuUWtGRGVrUXNNa1JCUVRKRU8yZENRVU16UkN4TFFVRkxPMmRDUVVOTUxFTkJRVU1zUTBGQlF5eFZRVUZWTEVOQlEySXNRMEZCUXp0WlFVTktMRU5CUVVNN1dVRkZSQ3hKUVVGSkxHZENRVUZuUWl4SFFVRnJReXhUUVVGVExFTkJRVU03V1VGRmFFVXNTVUZCU1N4VlFVRlZMRVZCUVVVc1EwRkJRenRuUWtGRFppeFhRVUZYTEVOQlFVTXNVMEZCVXl4RFFVRkRMRWRCUVVjc1YwRkJWeXhEUVVGRExGTkJRVk1zUTBGQlF5eEpRVUZKTEVWQlFVVXNRMEZCUXp0blFrRkRkRVFzVFVGQlRTeERRVUZETEVsQlFVa3NRMEZCUXl4WFFVRlhMRU5CUVVNc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eEhRVUZYTEVWQlFVVXNSVUZCUlR0dlFrRkRMME1zVjBGQlZ5eERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMRkZCUVZFc1IwRkJSeXhYUVVGWExFTkJRek5ETEVkQlFVY3NRMEZEU2l4RFFVRkRMRkZCUVZFc1JVRkJSU3hOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZOTEVWQlFVVXNSVUZCUlR0M1FrRkROVUlzU1VGQlNTeERRVUZETEVOQlFVTXNTVUZCU1N4TFFVRk5MRlZCUVZVc1EwRkJReXhSUVVGdFFqczBRa0ZCUlN4UFFVRlBMRWxCUVVrc1EwRkJRenQzUWtGRE5VUXNaMEpCUVdkQ0xFZEJRVWNzUTBGQlVTeERRVUZETzNkQ1FVTTFRaXhQUVVGUExFdEJRVXNzUTBGQlF6dHZRa0ZEWml4RFFVRkRMRU5CUVVNc1EwRkJRenRuUWtGRFRDeERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTk1MRU5CUVVNN1dVRkZSQ3hOUVVGTkxHRkJRV0VzUjBGQlJ5eE5RVUZOTEVOQlFVTXNUVUZCVFN4RFFVRkRMRmRCUVZjc1EwRkJRenRwUWtGRE4wTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1EwRkJReXhGUVVGRkxFVkJRVVVzUTBGQlF5eERRVUZETEVOQlFVTXNVVUZCVVN4RFFVRkRPMmxDUVVOMFFpeEpRVUZKTEVWQlFVVXNRMEZCUXl4TlFVRk5MRU5CUVVNN1dVRkRha0lzU1VGQlNTeGhRVUZoTzJkQ1FVTm1MRWRCUVVjN2NVSkJRMEVzUjBGQlJ5eERRVUZETEV0QlFVc3NRMEZCUXl4VFFVRlRMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVU03Y1VKQlF6TkNMRWxCUVVrc1EwRkJReXhUUVVGVExHRkJRV0VzWjBOQlFXZERMRU5CUVVNc1EwRkJRenRaUVVOc1JTeE5RVUZOTEZkQlFWY3NSMEZCUnl4TlFVRk5MRU5CUVVNc1RVRkJUU3hEUVVGRExGZEJRVmNzUTBGQlF6dHBRa0ZETTBNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNc1RVRkJUU3hEUVVGRE8ybENRVU53UWl4SlFVRkpMRVZCUVVVc1EwRkJReXhOUVVGTkxFTkJRVU03V1VGRmFrSXNSMEZCUnp0cFFrRkRRU3hIUVVGSExFTkJRVU1zUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJRenRwUWtGRE0wSXNTVUZCU1N4RFFVRkRMRk5CUVZNc1YwRkJWeXdyUWtGQkswSXNRMEZCUXl4RFFVRkRPMWxCUXpkRUxFbEJRVWtzWjBKQlFXZENPMmRDUVVOc1FpeEhRVUZITzNGQ1FVTkJMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPM0ZDUVVNelFpeEpRVUZKTEVOQlEwZ3NLMEpCUVN0Q0xGVkJRVlVzUlVGQlJTeFJRVUZyUWl4RlFVRkZMRU5CUTJoRkxFTkJRVU03V1VGRlRpeE5RVUZOTEU5QlFVOHNSMEZCUnl4TlFVRk5MRU5CUVVNc1RVRkJUU3hEUVVGRExGZEJRVmNzUTBGQlF6dHBRa0ZEZGtNc1IwRkJSeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zVVVGQlVTeEpRVUZKTEVWQlFVVXNRMEZCUXl4RlFVRkZMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zVFVGQlRTeEpRVUZKTEVWQlFVVXNRMEZCUXl4RFFVRkRMRU5CUVVNN2FVSkJRM2hFTEVsQlFVa3NSVUZCUlN4RFFVRkRPMWxCUTFZc1NVRkJTU3hQUVVGUExFZEJRWGxDTEVWQlFVVXNRMEZCUXp0WlFVTjJReXhKUVVGSkxGVkJRVlVzUjBGQmRVSXNSVUZCUlN4RFFVRkRPMWxCUTNoRExFbEJRVWtzVDBGQlR5eERRVUZETEUxQlFVMHNSVUZCUlN4RFFVRkRPMmRDUVVOdVFpeEhRVUZITzNGQ1FVTkJMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPM0ZDUVVNelFpeFBRVUZQTEVOQlFVTXNiME5CUVc5RExFTkJRVU1zUTBGQlF6dG5Ra0ZEYWtRc1QwRkJUeXhIUVVGSExHOUNRVUZ2UWl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8yZENRVU4wUXl4SFFVRkhPM0ZDUVVOQkxFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlFVTXNVMEZCVXl4RFFVRkRMRXRCUVVzc1EwRkJReXhEUVVGRE8zRkNRVU16UWl4SlFVRkpMRU5CUVVNc1UwRkJVeXhQUVVGUExFTkJRVU1zVFVGQlRTeFZRVUZWTEVOQlFVTXNRMEZCUXp0blFrRkRNME1zVlVGQlZTeEhRVUZITEhWQ1FVRjFRaXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzJkQ1FVTTFReXhIUVVGSE8zRkNRVU5CTEVkQlFVY3NRMEZCUXl4TFFVRkxMRU5CUVVNc1UwRkJVeXhEUVVGRExFdEJRVXNzUTBGQlF5eERRVUZETzNGQ1FVTXpRaXhKUVVGSkxFTkJRVU1zVTBGQlV5eFZRVUZWTEVOQlFVTXNUVUZCVFN4alFVRmpMRU5CUVVNc1EwRkJRenRaUVVOd1JDeERRVUZETzFsQlEwUXNUMEZCVHp0blFrRkRUQ3hQUVVGUE8yZENRVU5RTEZWQlFWVTdaMEpCUTFZc1YwRkJWeXhGUVVGRkxFOUJRVTg3WjBKQlEzQkNMRTFCUVUwc1JVRkJSU3huUWtGQlowSTdZVUZEZWtJc1EwRkJRenRSUVVOS0xFTkJRVU1zUTBGQlF5eERRVU5JTEVOQlFVTTdVVUZEUml4UFFVRlBMRWxCUVVrc1EwRkJRenRKUVVOa0xFTkJRVU03U1VGRlJDeE5RVUZOTEVsQlFVa3NSMEZCUnl4TlFVRk5MRTlCUVU4c1JVRkJSU3hEUVVGRE8wbEJRemRDTEUxQlFVMHNWVUZCVlN4SFFVRkhMRTFCUVUwc1QwRkJUeXhEUVVGRExFTkJRVU1zVTBGQlV5eERRVUZETEVOQlFVTXNRMEZCUXp0SlFVVTVReXhOUVVGTkxHRkJRV0VzUjBGQlJ6dFJRVU53UWl4SFFVRkhMRlZCUVZVc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eERRVUZETEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXl4RFFVRkRMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUTBGQlF5eE5RVUZOTEVOQlFVTTdVVUZETVVRc1IwRkJSeXhKUVVGSkxFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFTkJRVU1zVjBGQlZ5eERRVUZETEVOQlFVTXNTVUZCU1N4RlFVRkZPMUZCUTNoRExFZEJRVWNzU1VGQlNTeERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eERRVUZETEUxQlFVMHNRMEZCUXl4RFFVRkRMRWRCUVVjc1EwRkJReXhEUVVGRExFTkJRVU1zUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4RFFVRkRMRTFCUVUwc1EwRkJRenRMUVVNNVFpeERRVUZETzBsQlJYcENMRTFCUVUwc2EwSkJRV3RDTEVkQlFVYzdVVUZEZWtJc1IwRkJSeXhKUVVGSkxFZEJRVWNzUTBGRFVpeGhRVUZoTEVOQlFVTXNSMEZCUnl4RFFVRkRMRU5CUVVNc1NVRkJkVUlzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hGUVVGRkxFbEJRVWtzUTBGQlF5eERRVUZETEVOQlEyeEZMRU5CUVVNc1RVRkJUU3hGUVVGRk8wdEJRMWdzUTBGQlF6dEpRVVZHTEVsQlFVa3NhMEpCUVd0Q0xFTkJRVU1zVFVGQlRTeEZRVUZGTEVOQlFVTTdVVUZET1VJc1owSkJRV2RDTEVOQlFVTXNhMEpCUVd0Q0xFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTTdVVUZETjBNc1RVRkJUU3h4UWtGQmNVSXNSMEZCUnl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVOeVF5eE5RVUZOTEVWQlEwNHNWVUZCVlN4RlFVTldMSGxDUVVGNVFpeERRVU14UWl4RFFVRkRPMUZCUTBZc1RVRkJUU3g1UWtGQmVVSXNSMEZCUnl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVONlF5eE5RVUZOTEVWQlEwNHNlVUpCUVhsQ0xFTkJRekZDTEVOQlFVTTdVVUZEUml4RlFVRkZMRU5CUVVNc1dVRkJXU3hEUVVGRExIRkNRVUZ4UWl4RlFVRkZMSGxDUVVGNVFpeERRVUZETEVOQlFVTTdVVUZEYkVVc1IwRkJSeXhEUVVGRExFbEJRVWtzUTBGRFRpeFZRVUZWTEdGQlFXRXNRMEZCUXl4TlFVRk5MRzFDUVVGdFFpeHhRa0ZCY1VJc1JVRkJSU3hEUVVONlJTeERRVUZETzFGQlEwWXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkRUaXhuUTBGQlowTXNlVUpCUVhsQ0xEWkNRVUUyUWl4RFFVTjJSaXhEUVVGRE8xRkJSVVlzU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4RFFVRkRMRU5CUVVNc1JVRkJSU3hGUVVGRk8xbEJRMnBDTEUxQlFVMHNSVUZCUlN4UFFVRlBMRVZCUVVVc1ZVRkJWU3hGUVVGRkxGZEJRVmNzUlVGQlJTeE5RVUZOTEVWQlFVVXNSMEZCUnl4RFFVRkRMRU5CUVVNN1dVRkRka1FzVFVGQlRTeFBRVUZQTEVkQlFYZENMRU5CUVVNc1IwRkJSeXhYUVVGWExFVkJRVVVzVFVGQlRTeERRVUZETEVOQlFVTXNUVUZCVFN4RFFVTnNSU3hQUVVGUExFTkJRMlVzUTBGQlF6dFpRVU42UWl4UFFVRlBMRU5CUVVNc1QwRkJUeXhEUVVGRExFTkJRVU1zUTBGQlF5eEZRVUZGTEVWQlFVVTdaMEpCUTNCQ0xGbEJRVmtzUTBGQlF5eFBRVUZQTEVWQlFVVXNUVUZCVFN4RlFVRkZMRU5CUVVNc1EwRkJReXhKUVVGSkxFTkJRVU1zUTBGQlF6dG5Ra0ZEZEVNc2VVSkJRWGxDTEVOQlFVTXNWVUZCVlN4SlFVRkpMRVZCUVVVc1JVRkJSU3hOUVVGTkxFVkJRVVVzUTBGQlF5eERRVUZETEVsQlFVa3NRMEZCUXl4RFFVRkRPMmRDUVVNMVJDeEhRVUZITEVOQlFVTXNTVUZCU1N4RFFVTk9MRlZCUVZVc1QwRkJUeXhGUVVGRkxFMUJRVTBzU1VGQlNTeERRVUZETEdkQ1FVRm5RaXhWUVVGVkxFVkJRVVVzVFVGQlRTeEpRVUZKTEVOQlFVTXNPRUpCUVRoQ0xFTkJRVU1zUTBGQlF5eEpRVUZKTEVWQlFVVXNRMEZETlVjc1EwRkJRenRaUVVOS0xFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEwd3NRMEZCUXl4RFFVRkRMRU5CUVVNN1NVRkRUQ3hEUVVGRE8wRkJRMGdzUTBGQlF5eERRVUZETEVOQlFVTTdRVUZGVEN4TlFVRk5MRmRCUVZjc1IwRkJSeXhKUVVGSkxFOUJRVThzUlVGQlJUdExRVU01UWl4SlFVRkpMRU5CUVVNc1lVRkJZU3hEUVVGRE8wdEJRMjVDTEZkQlFWY3NRMEZCUXl4dFJFRkJiVVFzUTBGQlF6dExRVU5vUlN4TlFVRk5MRU5CUTB3c2MwSkJRWE5DTEVWQlEzUkNMRzFFUVVGdFJDeEZRVU51UkN4dFFrRkJiVUlzUTBGRGNFSTdTMEZEUVN4TlFVRk5MRU5CUVVNc2IwSkJRVzlDTEVWQlFVVXNkVU5CUVhWRExFVkJRVVVzVFVGQlRTeERRVUZETzB0QlF6ZEZMRTFCUVUwc1EwRkJReXh4UWtGQmNVSXNSVUZCUlN4eFEwRkJjVU1zUlVGQlJTeEpRVUZKTEVOQlFVTTdTMEZETVVVc1RVRkJUU3hEUVVGRExFdEJRVXNzUlVGQlJTeFBRVUZaTEVWQlFVVXNSVUZCUlR0SlFVTTNRaXhOUVVGTkxFZEJRVWNzUjBGQlJ5eEpRVUZKTEVOQlFVTXNTMEZCU3l4RFFVTndRaXhGUVVGRkxFTkJRVU1zV1VGQldTeERRVUZETEVsQlFVa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1QwRkJUeXhEUVVGRExFZEJRVWNzUlVGQlJTeEZRVUZGTEdOQlFXTXNRMEZCUXl4RlFVRkZMRTlCUVU4c1EwRkJReXhEUVVOdVJTeERRVUZETzBsQlJVWXNUVUZCVFN4UFFVRlBMRWRCUVVjc1IwRkJSeXhEUVVGRExFOUJRVThzUTBGQlF6dEpRVVUxUWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhOUVVGTkxFTkJRVU1zUjBGQlJ5eERRVUZETEdGQlFXRXNRMEZCUXl4RFFVRkRPMGxCUTNSRExFZEJRVWNzUTBGQlF5eExRVUZMTEVOQlExQXNlVUpCUVhsQ0xFbEJRVWtzUTBGQlF5eFRRVUZUTEVOQlFVTXNUMEZCVHl4RFFVRkRMRkZCUVZFc1IwRkJSeXhEUVVGRExFbEJRVWtzV1VGQldTeFBRVUZQTEVWQlFVVXNRMEZEZEVZc1EwRkJRenRKUVVOR0xIZERRVUYzUXp0SlFVTjRReXhKUVVGSkxFVkJRVVVzVTBGQlV5eEZRVUZGTEU5QlFVOHNSVUZCUlN4UlFVRlJMRVZCUVVVc1IwRkJSeXhQUVVGUExFTkJRVU03U1VGREwwTXNUMEZCVHl4SFFVRkhMRkZCUVZFc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeEpRVUZKTEVOQlFVTTdTVUZEY0VNc1VVRkJVU3hIUVVGSExGRkJRVkVzUTBGQlF5eFJRVUZSTEVOQlFVTXNTVUZCU1N4RlFVRkZMRU5CUVVNN1NVRkZjRU1zVFVGQlRTd3dRa0ZCTUVJc1EwRkJReXh0UWtGQmJVSXNSVUZCUlN4UFFVRlBMRVZCUVVVc1VVRkJVU3hEUVVGRExFTkJRVU03U1VGRmVrVXNSMEZCUnl4RFFVRkRMRWxCUVVrc1EwRkRUaXc0UkVGQk9FUXNVMEZCVXl4SlFVRkpMRU5CUXpWRkxFTkJRVU03UVVGRFNpeERRVUZETEVOQlFVTXNRMEZCUXp0QlFVVk1MRTFCUVUwc1kwRkJZeXhIUVVGSExFbEJRVWtzVDBGQlR5eEZRVUZGTzB0QlEycERMRWxCUVVrc1EwRkJReXhwUWtGQmFVSXNRMEZCUXp0TFFVTjJRaXhYUVVGWExFTkJRVU1zSzBKQlFTdENMRU5CUVVNN1MwRkROVU1zVFVGQlRTeERRVUZETEdsQ1FVRnBRaXhGUVVGRkxEUkNRVUUwUWl4RFFVRkRPMHRCUTNaRUxFMUJRVTBzUTBGQlF5eHJRa0ZCYTBJc1JVRkJSU3hqUVVGakxFTkJRVU03UzBGRE1VTXNUVUZCVFN4RFFVTk1MQ3RDUVVFclFpeEZRVU12UWl4clJVRkJhMFVzUTBGRGJrVTdTMEZEUVN4TlFVRk5MRU5CUTB3c05rSkJRVFpDTEVWQlF6ZENMSE5GUVVGelJTeEZRVU4wUlN4TFFVRkxMRU5CUTA0N1MwRkRRU3hOUVVGTkxFTkJRMHdzTUVKQlFUQkNMRVZCUXpGQ0xEUkZRVUUwUlN4RlFVTTFSU3hKUVVGSkxFTkJRVU1zU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4SFFVRkhMRVZCUVVVc1JVRkJSU3hQUVVGUExFVkJRVVVzWVVGQllTeEZRVUZGTEcxQ1FVRnRRaXhEUVVGRExFTkJRM1JGTzB0QlEwRXNUVUZCVFN4RFFVTk1MR3RDUVVGclFpeEZRVU5zUWl3d1FrRkJNRUlzUlVGRE1VSXNkME5CUVhkRExFTkJRM3BETzB0QlEwRXNUVUZCVFN4RFFVRkRMRXRCUVVzc1JVRkJSU3hQUVVGWkxFVkJRVVVzUlVGQlJUdEpRVU0zUWl4TlFVRk5MRWRCUVVjc1IwRkJSeXhKUVVGSkxFTkJRVU1zUzBGQlN5eERRVU53UWl4RlFVRkZMRU5CUVVNc1dVRkJXU3hEUVVGRExFbEJRVWtzUTBGQlF5eEpRVUZKTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWRCUVVjc1JVRkJSU3hGUVVGRkxHTkJRV01zUTBGQlF5eEZRVUZGTEU5QlFVOHNRMEZCUXl4RFFVTnVSU3hEUVVGRE8wbEJSVVlzVFVGQlRTeFBRVUZQTEVkQlFVY3NSMEZCUnl4RFFVRkRMRTlCUVU4c1EwRkJRenRKUVVVMVFpeE5RVUZOTEVkQlFVY3NSMEZCUnl4TlFVRk5MRU5CUVVNc1IwRkJSeXhEUVVGRExHbENRVUZwUWl4RFFVRkRMRU5CUVVNN1NVRkRNVU1zUjBGQlJ5eERRVUZETEV0QlFVc3NRMEZEVUN4NVFrRkJlVUlzU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXl4UFFVRlBMRU5CUVVNc1VVRkJVU3hIUVVGSExFTkJRVU1zU1VGQlNTeFpRVUZaTEU5QlFVOHNSVUZCUlN4RFFVTjBSaXhEUVVGRE8wbEJSVVlzVFVGQlRTeEZRVU5LTEVsQlFVa3NSVUZEU2l4TFFVRkxMRVZCUTB3c1MwRkJTeXhGUVVOTUxHRkJRV0U3U1VGRFlpdzJSRUZCTmtRN1NVRkROMFFzWjBKQlFXZENMRVZCUTJoQ0xHbENRVUZwUWl4SFFVTnNRaXhIUVVGSExFOUJRVThzUTBGQlF6dEpRVU5hTEUxQlFVMHNUMEZCVHl4SFFVRkhMRXRCUVVzc1EwRkJReXhMUVVGTExFTkJRVU1zUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZGYWtNc1RVRkJUU3hUUVVGVExFZEJRVWNzU1VGQlNTeERRVUZETEU5QlFVOHNRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExHRkJRV0VzUlVGQlJTeEhRVUZITEVsQlFVa3NVVUZCVVN4RFFVRkRMRU5CUVVNc1EwRkJRenRKUVVVeFJTeEpRVUZKTEZGQlFXZENMRU5CUVVNN1NVRkZja0lzU1VGQlNTeERRVUZETzFGQlEwZ3NVVUZCVVN4SFFVRkhMRkZCUVZFc1EwRkJReXhGUVVGRkxFTkJRVU1zV1VGQldTeERRVUZETEZOQlFWTXNRMEZCUXl4RFFVRkRMRkZCUVZFc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlF5eERRVUZETzFGQlEyeEZMRWxCUVVrc1MwRkJTeXhEUVVGRExGRkJRVkVzUTBGQlF6dFpRVUZGTEZGQlFWRXNSMEZCUnl4RFFVRkRMRU5CUVVNN08xbEJRemRDTEZGQlFWRXNTVUZCU1N4RFFVRkRMRU5CUVVNN1VVRkRia0lzTmtSQlFUWkVPMGxCUXk5RUxFTkJRVU03U1VGQlF5eFBRVUZQTEVOQlFWVXNSVUZCUlN4RFFVRkRPMUZCUTNCQ0xGRkJRVkVzUjBGQlJ5eERRVUZETEVOQlFVTTdTVUZEWml4RFFVRkRPMGxCUTBRc1JVRkJSVHRKUVVOR0xEQkNRVUV3UWp0SlFVTXhRaXgzUTBGQmQwTTdTVUZEZUVNc2NVSkJRWEZDTzBsQlEzSkNMRWxCUVVrN1NVRkZTaXhKUVVGSkxFTkJRVU03VVVGRFNDeExRVUZMTEUxQlFVMHNTVUZCU1N4SlFVRkpMRTlCUVU4c1JVRkJSU3hEUVVGRE8xbEJRek5DTEdWQlFXVXNRMEZCUXl4SlFVRkpMRVZCUVVVc1MwRkJTeXhGUVVGRkxFbEJRVWtzUlVGQlJTeFBRVUZQTEVOQlFVTXNRMEZCUXp0WlFVTTFReXhsUVVGbExFTkJRVU1zU1VGQlNTeEZRVUZGTEVsQlFVa3NRMEZCUXl4RFFVRkRPMWxCUXpWQ0xHVkJRV1VzUTBGRFlpeEpRVUZKTEVWQlEwb3NTVUZCU1N4RlFVTktMRWxCUVVrc1MwRkJTeXhqUVVGak8yZENRVU55UWl4RFFVRkRMRU5CUVVNc2FVSkJRV2xDTzJkQ1FVTnVRaXhEUVVGRExFTkJRVU1zZVVKQlFYbENMRVZCUXpkQ0xGRkJRVkVzUlVGRFVpeFBRVUZQTEVWQlExQXNhVUpCUVdsQ0xFTkJRMnhDTEVOQlFVTTdVVUZEU2l4RFFVRkRPMUZCUTBRc1JVRkJSU3hEUVVGRExHRkJRV0VzUTBGQlF5eFRRVUZUTEVWQlFVVXNVVUZCVVN4RFFVRkRMRkZCUVZFc1JVRkJSU3hEUVVGRExFTkJRVU03U1VGRGJrUXNRMEZCUXp0SlFVRkRMRTlCUVU4c1IwRkJVU3hGUVVGRkxFTkJRVU03VVVGRGJFSXNSMEZCUnl4RFFVRkRMRXRCUVVzc1EwRkJReXd5UWtGQk1rSXNSVUZCUlN4SFFVRkhMRU5CUVVNc1EwRkJRenRKUVVNNVF5eERRVUZETzBsQlEwUXNaVUZCWlN4RFFVRkRMRWxCUVVrc1JVRkJSU3hSUVVGUkxFVkJRVVVzVDBGQlR5eEZRVUZGTEdsQ1FVRnBRaXhEUVVGRExFTkJRVU03UVVGRE9VUXNRMEZCUXl4RFFVRkRMRU5CUVVNN1FVRkZUQ3hOUVVGTkxHbENRVUZwUWl4SFFVRkhMRWxCUVVrc1QwRkJUeXhGUVVGRk8wdEJRM0JETEVsQlFVa3NRMEZCUXl4eFFrRkJjVUlzUTBGQlF6dExRVU16UWl4WFFVRlhMRU5CUVVNc2JVUkJRVzFFTEVOQlFVTTdTMEZEYUVVc1RVRkJUU3hEUVVGRExHMUNRVUZ0UWl4RlFVRkZMR1ZCUVdVc1JVRkJSU3h2UWtGQmIwSXNRMEZCUXp0TFFVTnNSU3hOUVVGTkxFTkJRVU1zWjBKQlFXZENMRVZCUVVVc09FSkJRVGhDTEVWQlFVVXNUMEZCVHl4RFFVRkRPMHRCUTJwRkxFMUJRVTBzUTBGQlF5eExRVUZMTEVWQlFVVXNUMEZCV1N4RlFVRkZMRVZCUVVVN1NVRkROMElzVFVGQlRTeEhRVUZITEVkQlFVY3NTVUZCU1N4RFFVRkRMRXRCUVVzc1EwRkRjRUlzUlVGQlJTeERRVUZETEZsQlFWa3NRMEZCUXl4SlFVRkpMRU5CUVVNc1NVRkJTU3hEUVVGRExFOUJRVThzUTBGQlF5eEhRVUZITEVWQlFVVXNSVUZCUlN4alFVRmpMRU5CUVVNc1JVRkJSU3hQUVVGUExFTkJRVU1zUTBGRGJrVXNRMEZCUXp0SlFVVkdMRTFCUVUwc1QwRkJUeXhIUVVGSExFZEJRVWNzUTBGQlF5eFBRVUZQTEVOQlFVTTdTVUZGTlVJc1RVRkJUU3hIUVVGSExFZEJRVWNzVFVGQlRTeERRVUZETEVkQlFVY3NRMEZCUXl4eFFrRkJjVUlzUTBGQlF5eERRVUZETzBsQlF6bERMRWRCUVVjc1EwRkJReXhMUVVGTExFTkJRMUFzZVVKQlFYbENMRWxCUVVrc1EwRkJReXhUUVVGVExFTkJRVU1zVDBGQlR5eERRVUZETEZGQlFWRXNSMEZCUnl4RFFVRkRMRWxCUVVrc1dVRkJXU3hQUVVGUExFVkJRVVVzUTBGRGRFWXNRMEZCUXp0SlFVTkdMRTFCUVUwc1JVRkJSU3hOUVVGTkxFVkJRVVVzUjBGQlJ5eEZRVUZGTEVkQlFVY3NUMEZCVHl4RFFVRkRPMGxCUTJoRExGRkJRVkVzUTBGQlF5eGhRVUZoTEVkQlFVY3NjVUpCUVhGQ0xFMUJRVTBzUlVGQlJTeEZRVUZGTzFGQlEzUkVMRWRCUVVjc1JVRkJSU3hQUVVGUExFTkJRVU1zUjBGQlJ5eEZRVUZGTzB0QlEyNUNMRU5CUVVNc1EwRkJRenRCUVVOTUxFTkJRVU1zUTBGQlF5eERRVUZETzBGQlJVd3NUVUZCVFN4VFFVRlRMRWRCUVVjc1NVRkJTU3hQUVVGUExFVkJRVVU3UzBGRE5VSXNTVUZCU1N4RFFVRkRMRmxCUVZrc1EwRkJRenRMUVVOc1FpeFBRVUZQTEVOQlFVTXNVVUZCVVN4RFFVRkRPMHRCUTJwQ0xGZEJRVmNzUTBGRFZpeHRSVUZCYlVVc1EwRkRjRVVzUTBGQlF6dEJRVVZLTEZOQlFWTXNRMEZCUXl4VlFVRlZMRU5CUVVNc1kwRkJZeXhEUVVGRExFTkJRVU03UVVGRGNrTXNVMEZCVXl4RFFVRkRMRlZCUVZVc1EwRkJReXhqUVVGakxFTkJRVU1zUTBGQlF6dEJRVU55UXl4VFFVRlRMRU5CUVVNc1ZVRkJWU3hEUVVGRExGZEJRVmNzUTBGQlF5eERRVUZETzBGQlEyeERMRk5CUVZNc1EwRkJReXhWUVVGVkxFTkJRVU1zWTBGQll5eERRVUZETEVOQlFVTTdRVUZEY2tNc1UwRkJVeXhEUVVGRExGVkJRVlVzUTBGQlF5eHBRa0ZCYVVJc1EwRkJReXhEUVVGRE8wRkJRM2hETEZOQlFWTXNRMEZCUXl4VlFVRlZMRU5CUVVNc2EwSkJRV3RDTEVOQlFVTXNRMEZCUXp0QlFVVjZReXhOUVVGTkxFTkJRVU1zVDBGQlR5eFZRVUZWTEUxQlFVMDdTVUZETlVJc1QwRkJUeXhUUVVGVExFTkJRVU03UVVGRGJrSXNRMEZCUXlJc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltbHRjRzl5ZENCN0lFTnZiVzFoYm1RZ2ZTQm1jbTl0SUZ3aVkyOXRiV0Z1WkdWeVhDSTdYRzVwYlhCdmNuUWdleUJNYjJkbmFXNW5MQ0IwYjFCaGMyTmhiRU5oYzJVZ2ZTQm1jbTl0SUZ3aVFHUmxZMkZtTFhSekwyeHZaMmRwYm1kY0lqdGNibWx0Y0c5eWRDQjdJR1Y0WldOVGVXNWpJSDBnWm5KdmJTQmNJbU5vYVd4a1gzQnliMk5sYzNOY0lqdGNibWx0Y0c5eWRDQm1jeUJtY205dElGd2labk5jSWp0Y2JtbHRjRzl5ZENCd1lYUm9JR1p5YjIwZ1hDSndZWFJvWENJN1hHNXBiWEJ2Y25RZ2V5QlFiSFZuYVc0c0lISnZiR3gxY0NCOUlHWnliMjBnWENKeWIyeHNkWEJjSWp0Y2JtbHRjRzl5ZENCeVpYQnNZV05sSUdaeWIyMGdYQ0pBY205c2JIVndMM0JzZFdkcGJpMXlaWEJzWVdObFhDSTdYRzVwYlhCdmNuUWdleUJKYm5SbGNtNWhiRVZ5Y205eUxDQlRaWEpwWVd4cGVtRjBhVzl1UlhKeWIzSWdmU0JtY205dElGd2lRR1JsWTJGbUxYUnpMMlJpTFdSbFkyOXlZWFJ2Y25OY0lqdGNibWx0Y0c5eWRDQjdYRzRnSUdkbGJtVnlZWFJsVFc5a1pXeEVaWE5wWjI1RWIyTnpMRnh1SUNCblpXNWxjbUYwWlUxdlpHVnNTVzVrWlhobGN5eGNiaUFnY21WaFpFMXZaR1ZzUm1sc1pTeGNiaUFnY21WaFpFMXZaR1ZzUm05c1pHVnljeXhjYmlBZ2QzSnBkR1ZFWlhOcFoyNUViMk56TEZ4dUlDQjNjbWwwWlVsdVpHVjRaWE1zWEc1OUlHWnliMjBnWENJdUwyTnNhV1Z1ZEM5cGJtUmxlR1Z6WENJN1hHNXBiWEJ2Y25RZ2V5Qk5iMlJsYkNCOUlHWnliMjBnWENKQVpHVmpZV1l0ZEhNdlpHVmpiM0poZEc5eUxYWmhiR2xrWVhScGIyNWNJanRjYm1sdGNHOXlkQ0I3WEc0Z0lHRndjSEp2ZG1WRGIyNTBjbUZqZEN4Y2JpQWdaVzV6ZFhKbFNXNW1jbUZ6ZEhKMVkzUjFjbVZDYjI5MFpXUXNYRzRnSUdsdWMzUmhiR3hEYjI1MGNtRmpkQ3hjYmlBZ2NHRmphMkZuWlVOdmJuUnlZV04wTEZ4dUlDQmpiMjF0YVhSRGFHRnBibU52WkdVc1hHNGdJR2RsZEVOdmJuUnlZV04wVTNSaGNuUkRiMjF0WVc1a0xGeHVJQ0JqYjIxd2FXeGxWMmwwYUZSelkyOXVabWxuVDNabGNuSnBaR1Z6TEZ4dWZTQm1jbTl0SUZ3aUxpOWpiR2t0ZFhScGJITmNJanRjYm1sdGNHOXlkQ0JjSWk0dmMyaGhjbVZrTDI5MlpYSnlhV1JsYzF3aU8xeHVhVzF3YjNKMElIUnpJR1p5YjIwZ1hDSjBlWEJsYzJOeWFYQjBYQ0k3WEc1cGJYQnZjblFnZTF4dUlDQmxlSFJ5WVdOMFEyOXNiR1ZqZEdsdmJuTWdZWE1nWlhoRGIyeHNaV04wYVc5dWN5eGNiaUFnVUhKcGRtRjBaVU52Ykd4bFkzUnBiMjRzWEc0Z0lIZHlhWFJsUTI5c2JHVmpkR2x2Ym5Nc1hHNGdJSGR5YVhSbFEyOXNiR1ZqZEdsdmJrUmxjMmxuYmtSdlkzTXNYRzU5SUdaeWIyMGdYQ0l1TDJOc2FXVnVkQzlqYjJ4c1pXTjBhVzl1Y3k5cGJtUmxlRndpTzF4dWFXMXdiM0owSUhzZ1EyOTFZMmhFUWtSbGMybG5ia1J2WXl3Z1EzSmxZWFJsU1c1a1pYaFNaWEYxWlhOMElIMGdabkp2YlNCY0lrQmtaV05oWmkxMGN5OW1iM0l0WTI5MVkyaGtZbHdpTzF4dVhHNWpiMjV6ZENCc2IyZG5aWElnUFNCTWIyZG5hVzVuTG1admNpaGNJbVpoWW5KcFkxd2lLVHRjYmx4dVpuVnVZM1JwYjI0Z2NtVnpiMngyWlVKMWJtUnNaV1JLYzBsdGNHOXlkSE1vS1RvZ1VHeDFaMmx1SUh0Y2JpQWdjbVYwZFhKdUlIdGNiaUFnSUNCdVlXMWxPaUJjSW5KbGMyOXNkbVV0WW5WdVpHeGxaQzFxY3kxcGJYQnZjblJ6WENJc1hHNGdJQ0FnY21WemIyeDJaVWxrS0hOdmRYSmpaU3dnYVcxd2IzSjBaWElwSUh0Y2JpQWdJQ0FnSUdsbUlDZ2hhVzF3YjNKMFpYSWdmSHdnSVhOdmRYSmpaUzV6ZEdGeWRITlhhWFJvS0Z3aUxsd2lLU2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnYm5Wc2JEdGNiaUFnSUNBZ0lIMWNibHh1SUNBZ0lDQWdZMjl1YzNRZ2NtVnpiMngyWldSUVlYUm9JRDBnY0dGMGFDNXlaWE52YkhabEtIQmhkR2d1WkdseWJtRnRaU2hwYlhCdmNuUmxjaWtzSUhOdmRYSmpaU2s3WEc0Z0lDQWdJQ0JqYjI1emRDQmpZVzVrYVdSaGRHVnpJRDBnVzF4dUlDQWdJQ0FnSUNCeVpYTnZiSFpsWkZCaGRHZ3NYRzRnSUNBZ0lDQWdJR0FrZTNKbGMyOXNkbVZrVUdGMGFIMHVhbk5nTEZ4dUlDQWdJQ0FnSUNCd1lYUm9MbXB2YVc0b2NtVnpiMngyWldSUVlYUm9MQ0JjSW1sdVpHVjRMbXB6WENJcExGeHVJQ0FnSUNBZ1hUdGNibHh1SUNBZ0lDQWdabTl5SUNoamIyNXpkQ0JqWVc1a2FXUmhkR1VnYjJZZ1kyRnVaR2xrWVhSbGN5a2dlMXh1SUNBZ0lDQWdJQ0JwWmlBb1puTXVaWGhwYzNSelUzbHVZeWhqWVc1a2FXUmhkR1VwSUNZbUlHWnpMbk4wWVhSVGVXNWpLR05oYm1ScFpHRjBaU2t1YVhOR2FXeGxLQ2twSUh0Y2JpQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z1kyRnVaR2xrWVhSbE8xeHVJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJSEpsZEhWeWJpQnVkV3hzTzF4dUlDQWdJSDBzWEc0Z0lIMDdYRzU5WEc1Y2JtTnZibk4wSUdOdmJYQnBiR1ZEYjIxdFlXNWtJRDBnYm1WM0lFTnZiVzFoYm1Rb0tWeHVJQ0F1Ym1GdFpTaGNJbU52YlhCcGJHVXRZMjl1ZEhKaFkzUmNJaWxjYmlBZ0xtUmxjMk55YVhCMGFXOXVLRndpUTNKbFlYUmxjeUJoSUdkc2IySmhiQ0JqYjI1MGNtRmpkRndpS1Z4dUlDQXViM0IwYVc5dUtGd2lMUzFrWlhaY0lpd2dYQ0pqYjIxd2FXeGxjeUJqYjI1MGNtRmpkSE1nZDJsMGFHOTFkQ0J0YVc1cFptbGpZWFJwYjI1Y0lpd2dabUZzYzJVcFhHNGdJQzV2Y0hScGIyNG9YQ0l0TFdSbFluVm5YQ0lzSUZ3aWJXRnJaWE1nWVhSMFlXTm9hVzVuSUdSbFluVm5aMlZ5SUhCdmMzTnBZbXhsWENJc0lHWmhiSE5sS1Z4dUlDQXViM0IwYVc5dUtGeHVJQ0FnSUZ3aUxTMWpZMkZoYzF3aUxGeHVJQ0FnSUZ3aVFXcDFjM1J6SUhSb1pTQndZV05yWVdkbElHTnZiVzFoYm1SeklIUnZJR0psSUdSbGNHeHZlV1ZrSUdGeklHTmpZV0Z6WENJc1hHNGdJQ0FnWm1Gc2MyVmNiaUFnS1Z4dUlDQXViM0IwYVc5dUtGd2lMUzF1WVcxbElEeFRkSEpwYm1jK1hDSXNJRndpWTI5dWRISmhZM1FnYm1GdFpWd2lMQ0JjSW1kc2IySmhiQzFqYjI1MGNtRmpkRndpS1Z4dUlDQXViM0IwYVc5dUtGd2lMUzFpZFc1a2JHVmNJaXdnWENKQ2RXNWtiR1Z6SUhkcGRHZ2djbTlzYkhWd0lHbHVjM1JsWVdRZ2IyWWdkWE5wYm1jZ2RITmpYQ0lzSUdaaGJITmxLVnh1SUNBdWIzQjBhVzl1S0Z4dUlDQWdJRndpTFMxMGN5MWpiMjVtYVdjdFptbHNaU0E4YzNSeWFXNW5QbHdpTEZ4dUlDQWdJRndpY21Wc1lYUnBkbVVnY0dGMGFDQjBieUIwYUdVZ2RITWdZMjl1Wm1sbklHWnBiR1VnWW1GelpXUWdiMjRnWTNka0lHOXlJR0ZpYzI5c2RYUmxJSEJoZEdoY0lpeGNiaUFnSUNCY0lpNHZkSE5qYjI1bWFXY3Vhbk52Ymx3aVhHNGdJQ2xjYmlBZ0xtOXdkR2x2YmloY2JpQWdJQ0JjSWkwdFpHVnpZM0pwY0hScGIyNGdQRk4wY21sdVp6NWNJaXhjYmlBZ0lDQmNJbU52Ym5SeVlXTjBJR1JsYzJOeWFYQjBhVzl1WENJc1hHNGdJQ0FnWENKSGJHOWlZV3dnWTI5dWRISmhZM1FnYVcxd2JHVnRaVzUwWVhScGIyNWNJbHh1SUNBcFhHNGdJQzV2Y0hScGIyNG9YQ0l0TFhOMGNtbHdMV052Ym5SeVlXTjBMVzVoYldWY0lpd2dYQ0p6ZEhKcGNDQmpiMjUwY21GamRDQnVZVzFsSUdaeWIyMGdiM1YwY0hWMFhDSXNJR1poYkhObEtWeHVJQ0F1YjNCMGFXOXVLRndpTFMxcGJuQjFkQ0E4VTNSeWFXNW5QbHdpTENCY0ltbHVjSFYwSUdadmJHUmxjaUJtYjNJZ1kyOXVkSEpoWTNSelhDSXNJRndpYkdsaUwyTnZiblJ5WVdOMGMxd2lLVnh1SUNBdWIzQjBhVzl1S0Z3aUxTMXZkWFJ3ZFhRZ1BGTjBjbWx1Wno1Y0lpd2dYQ0p2ZFhSd2RYUWdabTlzWkdWeUlHWnZjaUJqYjI1MGNtRmpkSE5jSWl3Z1hDSXVMMk52Ym5SeVlXTjBjMXdpS1Z4dUlDQXViM0IwYVc5dUtGd2lMUzF6YjNWeVkyVnRZWEJ6WENJc0lGd2lhVzVqYkhWa1pYTWdjMjkxY21ObGJXRndjeUJwYmlCMGFHVWdZMjl0Y0dsc1pXUWdiM1YwY0hWMFhDSXNJR1poYkhObEtWeHVJQ0F1YjNCMGFXOXVLRndpTFMxdWNHMXlZMXdpTENCY0ltbHVZMngxWkdWeklDNXVjRzF5WXlCcGJpQjBhR1VnWTI5dGNHbHNaV1FnYjNWMGNIVjBYQ0lzSUdaaGJITmxLVnh1SUNBdVlXTjBhVzl1S0dGemVXNWpJQ2h2Y0hScGIyNXpPaUJoYm5rcElEMCtJSHRjYmlBZ0lDQmpiMjV6ZENCd2EyY2dQU0JLVTA5T0xuQmhjbk5sS0Z4dUlDQWdJQ0FnWm5NdWNtVmhaRVpwYkdWVGVXNWpLSEJoZEdndWFtOXBiaWh3Y205alpYTnpMbU4zWkNncExDQmNJbkJoWTJ0aFoyVXVhbk52Ymx3aUtTd2dYQ0oxZEdZdE9Gd2lLVnh1SUNBZ0lDazdYRzVjYmlBZ0lDQnNaWFFnYm5CdGNtTkRiMjUwWlc1MElEMGdkVzVrWldacGJtVmtPMXh1WEc0Z0lDQWdZMjl1YzNRZ2RtVnljMmx2YmlBOUlIQnJaeTUyWlhKemFXOXVPMXh1WEc0Z0lDQWdiR1YwSUh0Y2JpQWdJQ0FnSUM4dklHVnpiR2x1ZEMxa2FYTmhZbXhsTFc1bGVIUXRiR2x1WlNCd2NtVm1aWEl0WTI5dWMzUmNiaUFnSUNBZ0lHUmxkaXhjYmlBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0J3Y21WbVpYSXRZMjl1YzNSY2JpQWdJQ0FnSUdSbFluVm5MRnh1SUNBZ0lDQWdMeThnWlhOc2FXNTBMV1JwYzJGaWJHVXRibVY0ZEMxc2FXNWxJSEJ5WldabGNpMWpiMjV6ZEZ4dUlDQWdJQ0FnYm1GdFpTeGNiaUFnSUNBZ0lDOHZJR1Z6YkdsdWRDMWthWE5oWW14bExXNWxlSFF0YkdsdVpTQndjbVZtWlhJdFkyOXVjM1JjYmlBZ0lDQWdJR1JsYzJOeWFYQjBhVzl1TEZ4dUlDQWdJQ0FnYjNWMGNIVjBMRnh1SUNBZ0lDQWdMeThnWlhOc2FXNTBMV1JwYzJGaWJHVXRibVY0ZEMxc2FXNWxJSEJ5WldabGNpMWpiMjV6ZEZ4dUlDQWdJQ0FnYVc1d2RYUXNYRzRnSUNBZ0lDQXZMeUJsYzJ4cGJuUXRaR2x6WVdKc1pTMXVaWGgwTFd4cGJtVWdjSEpsWm1WeUxXTnZibk4wWEc0Z0lDQWdJQ0J6ZEhKcGNFTnZiblJ5WVdOMFRtRnRaU3hjYmlBZ0lDQWdJQzh2SUdWemJHbHVkQzFrYVhOaFlteGxMVzVsZUhRdGJHbHVaU0J3Y21WbVpYSXRZMjl1YzNSY2JpQWdJQ0FnSUdOallXRnpMRnh1SUNBZ0lDQWdMeThnWlhOc2FXNTBMV1JwYzJGaWJHVXRibVY0ZEMxc2FXNWxJSEJ5WldabGNpMWpiMjV6ZEZ4dUlDQWdJQ0FnWW5WdVpHeGxMRnh1WEc0Z0lDQWdJQ0IwYzBOdmJtWnBaMFpwYkdVc1hHNGdJQ0FnSUNBdkx5QmxjMnhwYm5RdFpHbHpZV0pzWlMxdVpYaDBMV3hwYm1VZ2NISmxabVZ5TFdOdmJuTjBYRzRnSUNBZ0lDQnpiM1Z5WTJWdFlYQnpMRnh1SUNBZ0lDQWdMeThnWlhOc2FXNTBMV1JwYzJGaWJHVXRibVY0ZEMxc2FXNWxJSEJ5WldabGNpMWpiMjV6ZEZ4dUlDQWdJQ0FnYm5CdGNtTXNYRzRnSUNBZ2ZTQTlJRzl3ZEdsdmJuTTdYRzRnSUNBZ1kyOXVjM1FnYkc5bklEMGdiRzluWjJWeUxtWnZjaWhjSW1OdmJYQnBiR1V0WTI5dWRISmhZM1JjSWlrN1hHNGdJQ0FnZEhKNUlIdGNiaUFnSUNBZ0lHbG1JQ2h1Y0cxeVl5a2dlMXh1SUNBZ0lDQWdJQ0J1Y0cxeVkwTnZiblJsYm5RZ1BTQm1jMXh1SUNBZ0lDQWdJQ0FnSUM1eVpXRmtSbWxzWlZONWJtTW9jR0YwYUM1cWIybHVLSEJ5YjJObGMzTXVZM2RrS0Nrc0lGd2lMbTV3YlhKalhDSXBMQ0JjSW5WMFppMDRYQ0lwWEc0Z0lDQWdJQ0FnSUNBZ0xuUnZVM1J5YVc1bktDazdYRzVjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdjbVZ3YkdGalpXUWdQU0J1Y0cxeVkwTnZiblJsYm5RdWNtVndiR0ZqWlNoY2JpQWdJQ0FnSUNBZ0lDQXZYRndrWEZ4N0tGdGVmVjByS1Z4Y2ZTOW5MRnh1SUNBZ0lDQWdJQ0FnSUNoZk9pQmhibmtzSUhaaGNrNWhiV1U2SUhOMGNtbHVaeWtnUFQ0Z2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdkbUZzZFdVZ1BTQndjbTlqWlhOekxtVnVkbHQyWVhKT1lXMWxYVHRjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0haaGJIVmxJRDA5UFNCMWJtUmxabWx1WldRcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ1kyOXVjMjlzWlM1M1lYSnVLRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR0JYWVhKdWFXNW5PaUJGYm5acGNtOXViV1Z1ZENCMllYSnBZV0pzWlNCY0lpUjdkbUZ5VG1GdFpYMWNJaUJwY3lCdWIzUWdjMlYwWUZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdYQ0pjSWp0Y2JpQWdJQ0FnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlIWmhiSFZsTzF4dUlDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdLVHRjYmx4dUlDQWdJQ0FnSUNCdWNHMXlZME52Ym5SbGJuUWdQU0J5WlhCc1lXTmxaRHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlJR05oZEdOb0lIdGNiaUFnSUNBZ0lHeHZaeTVwYm1adktHQk9ieUF1Ym5CdGNtTWdabWxzWlNCbWIzVnVaQ3dnYzJ0cGNIQnBibWNnWTI5d2VXbHVaeUF1Ym5CdGNtTWdkRzhnYjNWMGNIVjBZQ2s3WEc0Z0lDQWdmVnh1WEc0Z0lDQWdiRzluTG1SbFluVm5LRnh1SUNBZ0lDQWdZSEoxYm01cGJtY2dkMmwwYUNCdmNIUnBiMjV6T2lBa2UwcFRUMDR1YzNSeWFXNW5hV1o1S0c5d2RHbHZibk1wZlNCbWIzSWdKSHR3YTJjdWJtRnRaWDBnZG1WeWMybHZiaUFrZTNabGNuTnBiMjU5WUZ4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0IwYzBOdmJtWnBaMFpwYkdVZ1BTQndZWFJvTG1selFXSnpiMngxZEdVb2RITkRiMjVtYVdkR2FXeGxLVnh1SUNBZ0lDQWdQeUIwYzBOdmJtWnBaMFpwYkdWY2JpQWdJQ0FnSURvZ2NHRjBhQzVxYjJsdUtIQnliMk5sYzNNdVkzZGtLQ2tzSUhSelEyOXVabWxuUm1sc1pTazdYRzVjYmlBZ0lDQnZkWFJ3ZFhRZ1BTQnpkSEpwY0VOdmJuUnlZV04wVG1GdFpTQS9JRzkxZEhCMWRDQTZJSEJoZEdndWFtOXBiaWh2ZFhSd2RYUXNJRzVoYldVcE8xeHVJQ0FnSUd4dlp5NXBibVp2S0dCRVpXeGxkR2x1WnlCbGVHbHpkR2x1WnlCdmRYUndkWFFnWm05c1pHVnlJQ2hwWmlCbGVHbHpkSE1wSUhWdVpHVnlJQ1I3YjNWMGNIVjBmV0FwTzF4dUlDQWdJR1Y0WldOVGVXNWpLR0J5YlNBdGNtWWdKSHR2ZFhSd2RYUjlZQ2s3WEc0Z0lDQWdhV1lnS0dKMWJtUnNaU2tnZTF4dUlDQWdJQ0FnYkc5bkxtbHVabThvWUdKMWJtUnNhVzVuSUdOdmJuUnlZV04wSUdaeWIyMGdKSHRwYm5CMWRIMWdLVHRjYmlBZ0lDQWdJR052Ym5OMElIUmxiWEJDZFc1a2JHVkVhWElnUFNCbWN5NXRhMlIwWlcxd1UzbHVZeWhjYmlBZ0lDQWdJQ0FnY0dGMGFDNXFiMmx1S0hCeWIyTmxjM011WTNka0tDa3NJRndpTG1OdmJuUnlZV04wTFdKMWJtUnNaUzFjSWlsY2JpQWdJQ0FnSUNrN1hHNGdJQ0FnSUNCMGNua2dlMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQnBibkIxZEVWdWRISjVJRDBnY0dGMGFDNXlaWE52YkhabEtIQnliMk5sYzNNdVkzZGtLQ2tzSUdsdWNIVjBMQ0JjSW1sdVpHVjRMblJ6WENJcE8xeHVJQ0FnSUNBZ0lDQmpiMjV6ZENCamIyNW1hV2RHYVd4bElEMGdkSE11Y21WaFpFTnZibVpwWjBacGJHVW9kSE5EYjI1bWFXZEdhV3hsTENCMGN5NXplWE11Y21WaFpFWnBiR1VwTzF4dUlDQWdJQ0FnSUNCcFppQW9ZMjl1Wm1sblJtbHNaUzVsY25KdmNpa2dlMXh1SUNBZ0lDQWdJQ0FnSUhSb2NtOTNJRzVsZHlCSmJuUmxjbTVoYkVWeWNtOXlLRnh1SUNBZ0lDQWdJQ0FnSUNBZ2RITXVabXhoZEhSbGJrUnBZV2R1YjNOMGFXTk5aWE56WVdkbFZHVjRkQ2hqYjI1bWFXZEdhV3hsTG1WeWNtOXlMbTFsYzNOaFoyVlVaWGgwTENCY0lseGNibHdpS1Z4dUlDQWdJQ0FnSUNBZ0lDazdYRzRnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNCamIyNXpkQ0J3WVhKelpXUkRiMjVtYVdjZ1BTQjBjeTV3WVhKelpVcHpiMjVEYjI1bWFXZEdhV3hsUTI5dWRHVnVkQ2hjYmlBZ0lDQWdJQ0FnSUNCamIyNW1hV2RHYVd4bExtTnZibVpwWnl4Y2JpQWdJQ0FnSUNBZ0lDQjBjeTV6ZVhNc1hHNGdJQ0FnSUNBZ0lDQWdjR0YwYUM1a2FYSnVZVzFsS0hSelEyOXVabWxuUm1sc1pTa3NYRzRnSUNBZ0lDQWdJQ0FnZFc1a1pXWnBibVZrTEZ4dUlDQWdJQ0FnSUNBZ0lIUnpRMjl1Wm1sblJtbHNaVnh1SUNBZ0lDQWdJQ0FwTzF4dUlDQWdJQ0FnSUNCcFppQW9jR0Z5YzJWa1EyOXVabWxuTG1WeWNtOXljeTVzWlc1bmRHZ3BJSHRjYmlBZ0lDQWdJQ0FnSUNCMGFISnZkeUJ1WlhjZ1NXNTBaWEp1WVd4RmNuSnZjaWhjYmlBZ0lDQWdJQ0FnSUNBZ0lIQmhjbk5sWkVOdmJtWnBaeTVsY25KdmNuTmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0xtMWhjQ2dvWlhKeWIzSXBJRDArWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZEhNdVpteGhkSFJsYmtScFlXZHViM04wYVdOTlpYTnpZV2RsVkdWNGRDaGxjbkp2Y2k1dFpYTnpZV2RsVkdWNGRDd2dYQ0pjWEc1Y0lpbGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0tWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBdWFtOXBiaWhjSWx4Y2Jsd2lLVnh1SUNBZ0lDQWdJQ0FnSUNrN1hHNGdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0JqYjI1emRDQjBaVzF3UTI5dGNHbHNaWEpQY0hScGIyNXpPaUIwY3k1RGIyMXdhV3hsY2s5d2RHbHZibk1nUFNCN1hHNGdJQ0FnSUNBZ0lDQWdMaTR1Y0dGeWMyVmtRMjl1Wm1sbkxtOXdkR2x2Ym5Nc1hHNGdJQ0FnSUNBZ0lDQWdiM1YwUkdseU9pQjBaVzF3UW5WdVpHeGxSR2x5TEZ4dUlDQWdJQ0FnSUNBZ0lHMXZaSFZzWlRvZ2RITXVUVzlrZFd4bFMybHVaQzVGVTA1bGVIUXNYRzRnSUNBZ0lDQWdJQ0FnWkdWamJHRnlZWFJwYjI0NklHWmhiSE5sTEZ4dUlDQWdJQ0FnSUNBZ0lITnZkWEpqWlUxaGNEb2dabUZzYzJVc1hHNGdJQ0FnSUNBZ0lDQWdhVzVzYVc1bFUyOTFjbU5sY3pvZ1ptRnNjMlVzWEc0Z0lDQWdJQ0FnSUgwN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUdKMWJtUnNaV1JGYm5SeWVWQnZhVzUwSUQwZ2RITmNiaUFnSUNBZ0lDQWdJQ0F1WjJWMFQzVjBjSFYwUm1sc1pVNWhiV1Z6S0Z4dUlDQWdJQ0FnSUNBZ0lDQWdlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQXVMaTV3WVhKelpXUkRiMjVtYVdjc1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUc5d2RHbHZibk02SUhSbGJYQkRiMjF3YVd4bGNrOXdkR2x2Ym5Nc1hHNGdJQ0FnSUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdhVzV3ZFhSRmJuUnllU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDRjBjeTV6ZVhNdWRYTmxRMkZ6WlZObGJuTnBkR2wyWlVacGJHVk9ZVzFsYzF4dUlDQWdJQ0FnSUNBZ0lDbGNiaUFnSUNBZ0lDQWdJQ0F1Wm1sdVpDZ29abWxzWlU1aGJXVXBJRDArSUdacGJHVk9ZVzFsTG1WdVpITlhhWFJvS0Z3aUxtcHpYQ0lwS1R0Y2JseHVJQ0FnSUNBZ0lDQnBaaUFvSVdKMWJtUnNaV1JGYm5SeWVWQnZhVzUwS1NCN1hHNGdJQ0FnSUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRWx1ZEdWeWJtRnNSWEp5YjNJb1hHNGdJQ0FnSUNBZ0lDQWdJQ0JnUm1GcGJHVmtJSFJ2SUdSbGRHVnliV2x1WlNCMGFHVWdaVzFwZEhSbFpDQmlkVzVrYkdVZ1pXNTBjbmtnWm05eUlDUjdhVzV3ZFhSRmJuUnllWDFnWEc0Z0lDQWdJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lDQWdmVnh1WEc0Z0lDQWdJQ0FnSUdOdmJYQnBiR1ZYYVhSb1ZITmpiMjVtYVdkUGRtVnljbWxrWlhNb2RITkRiMjVtYVdkR2FXeGxMQ0IwWlcxd1EyOXRjR2xzWlhKUGNIUnBiMjV6S1R0Y2JpQWdJQ0FnSUNBZ1kyOXVjM1FnWW5WdVpHeGxaRU52Ym5SeVlXTjBJRDBnWVhkaGFYUWdjbTlzYkhWd0tIdGNiaUFnSUNBZ0lDQWdJQ0JwYm5CMWREb2dZblZ1Wkd4bFpFVnVkSEo1VUc5cGJuUXNYRzRnSUNBZ0lDQWdJQ0FnY0d4MVoybHVjem9nVzF4dUlDQWdJQ0FnSUNBZ0lDQWdjbVZ6YjJ4MlpVSjFibVJzWldSS2MwbHRjRzl5ZEhNb0tTeGNiaUFnSUNBZ0lDQWdJQ0FnSUhKbGNHeGhZMlVvZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J3Y21WMlpXNTBRWE56YVdkdWJXVnVkRG9nZEhKMVpTeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ1pHVnNhVzFwZEdWeWN6b2dXMXdpWENJc0lGd2lYQ0pkTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0IyWVd4MVpYTTZJSHNnWENJakkxWkZVbE5KVDA0akkxd2lPaUIyWlhKemFXOXVMQ0JjSWlNalVFRkRTMEZIUlNNalhDSTZJSEJyWnk1dVlXMWxJSDBzWEc0Z0lDQWdJQ0FnSUNBZ0lDQjlLU3hjYmlBZ0lDQWdJQ0FnSUNCZExGeHVJQ0FnSUNBZ0lDQjlLVHRjYmlBZ0lDQWdJQ0FnYkc5bkxtbHVabThvWEc0Z0lDQWdJQ0FnSUNBZ1lIZHBkR2hwYm1jZ1kyOXVkSEpoWTNRZ2RHOGdKSHR2ZFhSd2RYUjlJSGRwZEdnZ2JtRnRaU0FrZTNSdlVHRnpZMkZzUTJGelpTaHVZVzFsS1gwdWFuTmdYRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0FnSUdGM1lXbDBJR0oxYm1Sc1pXUkRiMjUwY21GamRDNTNjbWwwWlNoN1hHNGdJQ0FnSUNBZ0lDQWdabWxzWlRvZ1lDUjdiM1YwY0hWMGZTOGtlM1J2VUdGelkyRnNRMkZ6WlNodVlXMWxLWDB1YW5OZ0xGeHVJQ0FnSUNBZ0lDQWdJR1p2Y20xaGREb2dYQ0oxYldSY0lpeGNiaUFnSUNBZ0lDQWdJQ0J1WVcxbE9pQmdKSHQwYjFCaGMyTmhiRU5oYzJVb2JtRnRaU2w5TG1wellDeGNiaUFnSUNBZ0lDQWdJQ0J6YjNWeVkyVnRZWEE2SUhOdmRYSmpaVzFoY0hNZ1B5QmNJbWx1YkdsdVpWd2lJRG9nWm1Gc2MyVXNYRzRnSUNBZ0lDQWdJQ0FnYzI5MWNtTmxiV0Z3VUdGMGFGUnlZVzV6Wm05eWJUb2dLSEpsYkdGMGFYWmxVMjkxY21ObFVHRjBhQ3dnYzI5MWNtTmxiV0Z3VUdGMGFDa2dQVDRnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1lXSnpiMngxZEdWVGIzVnlZMlZRWVhSb0lEMGdjR0YwYUM1eVpYTnZiSFpsS0Z4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J3WVhSb0xtUnBjbTVoYldVb2MyOTFjbU5sYldGd1VHRjBhQ2tzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSEpsYkdGMGFYWmxVMjkxY21ObFVHRjBhRnh1SUNBZ0lDQWdJQ0FnSUNBZ0tUdGNibHh1SUNBZ0lDQWdJQ0FnSUNBZ2FXWWdLR0ZpYzI5c2RYUmxVMjkxY21ObFVHRjBhQzV6ZEdGeWRITlhhWFJvS0hSbGJYQkNkVzVrYkdWRWFYSXBLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQndZWFJvTG5CdmMybDRMbXB2YVc0b1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1hDSXVZblZ1Wkd4bFhDSXNYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjR0YwYUZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0xuSmxiR0YwYVhabEtIUmxiWEJDZFc1a2JHVkVhWElzSUdGaWMyOXNkWFJsVTI5MWNtTmxVR0YwYUNsY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDNXpjR3hwZENod1lYUm9Mbk5sY0NsY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDNXFiMmx1S0Z3aUwxd2lLVnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnY21Wc1lYUnBkbVZUYjNWeVkyVlFZWFJvTzF4dUlDQWdJQ0FnSUNBZ0lIMHNYRzRnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnSUNCaGQyRnBkQ0JpZFc1a2JHVmtRMjl1ZEhKaFkzUXVZMnh2YzJVb0tUdGNiaUFnSUNBZ0lIMGdabWx1WVd4c2VTQjdYRzRnSUNBZ0lDQWdJR1p6TG5KdFUzbHVZeWgwWlcxd1FuVnVaR3hsUkdseUxDQjdJSEpsWTNWeWMybDJaVG9nZEhKMVpTd2dabTl5WTJVNklIUnlkV1VnZlNrN1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlNCbGJITmxJSHRjYmlBZ0lDQWdJR052YlhCcGJHVlhhWFJvVkhOamIyNW1hV2RQZG1WeWNtbGtaWE1vZEhORGIyNW1hV2RHYVd4bExDQjdYRzRnSUNBZ0lDQWdJRzkxZEVScGNqb2diM1YwY0hWMExGeHVJQ0FnSUNBZ0lDQnRiMlIxYkdVNklIUnpMazF2WkhWc1pVdHBibVF1UlZOT1pYaDBMRnh1SUNBZ0lDQWdJQ0JrWldOc1lYSmhkR2x2YmpvZ1ptRnNjMlVzWEc0Z0lDQWdJQ0FnSUhOdmRYSmpaVTFoY0RvZ2MyOTFjbU5sYldGd2N5eGNiaUFnSUNBZ0lDQWdhVzVzYVc1bFUyOTFjbU5sY3pvZ2MyOTFjbU5sYldGd2N5eGNiaUFnSUNBZ0lIMHBPMXh1SUNBZ0lIMWNibHh1SUNBZ0lHTnZibk4wSUhOamNtbHdkSE1nUFNCN1hHNGdJQ0FnSUNCemRHRnlkRG9nWjJWMFEyOXVkSEpoWTNSVGRHRnlkRU52YlcxaGJtUW9aR1ZpZFdjc0lHTmpZV0Z6S1N4Y2JpQWdJQ0FnSUZ3aWMzUmhjblE2WkdWMlhDSTZJRndpWm1GaWNtbGpMV05vWVdsdVkyOWtaUzF1YjJSbElITjBZWEowSUMwdGRHeHpMbVZ1WVdKc1pXUWdabUZzYzJWY0lpeGNiaUFnSUNBZ0lGd2ljM1JoY25RNmQyRjBZMmhjSWpvZ0oyNXZaR1Z0YjI0Z0xTMWxlR1ZqSUZ3aWJuQnRJSEoxYmlCemRHRnlkRHBrWlhaY0lpY3NYRzRnSUNBZ0lDQmlkV2xzWkRvZ0oyVmphRzhnWENKT2J5QnVaV1ZrSUhSdklHSjFhV3hrSUhSb1pTQmphR0ZwYm1OdlpHVmNJaWNzWEc0Z0lDQWdJQ0JzYVc1ME9pQmNJbVZ6YkdsdWRDQXVJQzB0Wm1sNElDMHRaWGgwSUM1cWMxd2lMRnh1SUNBZ0lIMDdYRzVjYmlBZ0lDQmpiMjV6ZENCamIyNTBjbUZqZEZCaFkydGhaMlVnUFNCd2EyYzdYRzVjYmlBZ0lDQmpiMjUwY21GamRGQmhZMnRoWjJVdWJtRnRaU0E5SUc1aGJXVTdYRzRnSUNBZ1kyOXVkSEpoWTNSUVlXTnJZV2RsTG1SbGMyTnlhWEIwYVc5dUlEMGdaR1Z6WTNKcGNIUnBiMjQ3WEc0Z0lDQWdZMjl1ZEhKaFkzUlFZV05yWVdkbExuTmpjbWx3ZEhNZ1BTQnpZM0pwY0hSek8xeHVYRzRnSUNBZ1pHVnNaWFJsSUdOdmJuUnlZV04wVUdGamEyRm5aUzUwZVhCbE8xeHVJQ0FnSUdSbGJHVjBaU0JqYjI1MGNtRmpkRkJoWTJ0aFoyVXVkSGx3WlhNN1hHNGdJQ0FnWkdWc1pYUmxJR052Ym5SeVlXTjBVR0ZqYTJGblpTNWxlSEJ2Y25Sek8xeHVJQ0FnSUdOdmJuUnlZV04wVUdGamEyRm5aUzV0WVdsdUlEMGdZblZ1Wkd4bFhHNGdJQ0FnSUNBL0lHQWtlM1J2VUdGelkyRnNRMkZ6WlNodVlXMWxLWDB1YW5OZ1hHNGdJQ0FnSUNBNklHQWtlMmx1Y0hWMGZTOXBibVJsZUM1cWMyQTdYRzVjYmlBZ0lDQm1jeTUzY21sMFpVWnBiR1ZUZVc1aktGeHVJQ0FnSUNBZ2NHRjBhQzVxYjJsdUtHOTFkSEIxZEN3Z1hDSndZV05yWVdkbExtcHpiMjVjSWlrc1hHNGdJQ0FnSUNCS1UwOU9Mbk4wY21sdVoybG1lU2hqYjI1MGNtRmpkRkJoWTJ0aFoyVXBYRzRnSUNBZ0tUdGNibHh1SUNBZ0lHbG1JQ2h1Y0cxeVl5QW1KaUJ1Y0cxeVkwTnZiblJsYm5RcFhHNGdJQ0FnSUNCbWN5NTNjbWwwWlVacGJHVlRlVzVqS0hCaGRHZ3VhbTlwYmlodmRYUndkWFFzSUZ3aUxtNXdiWEpqWENJcExDQnVjRzF5WTBOdmJuUmxiblFwTzF4dVhHNGdJQ0FnYkc5bkxtbHVabThvWUVsdWMzUmhiR3hwYm1jZ1lXNWtJSE5vY21sdWEzZHlZWEJ3YVc1bklHUmxjR1Z1WkdWdVkybGxjMkFwTzF4dUlDQWdJR1Y0WldOVGVXNWpLR0J1Y0cwZ2FXNXpkR0ZzYkdBc0lIc2dZM2RrT2lCdmRYUndkWFFnZlNrN1hHNGdJQ0FnWlhobFkxTjVibU1vWUc1d2JTQnphSEpwYm10M2NtRndZQ3dnZXlCamQyUTZJRzkxZEhCMWRDQjlLVHRjYmlBZ0lDQmxlR1ZqVTNsdVl5aGNJbkp0SUMxeVppQnViMlJsWDIxdlpIVnNaWE5jSWl3Z2V5QmpkMlE2SUc5MWRIQjFkQ0I5S1R0Y2JpQWdJQ0JzYjJjdWFXNW1ieWhnWkdWc1pYUnBibWNnZEdWdGNDQm1iMnhrWlhKellDazdYRzRnSUNBZ1pYaGxZMU41Ym1Nb1lISnRJQzF5WmlBdUwyeHBZaUFtSmlCeWJTQXRjbVlnTGk5a2FYTjBZQ3dnZXlCamQyUTZJRzkxZEhCMWRDQjlLVHRjYmlBZ0lDQnNiMmN1YVc1bWJ5aGNiaUFnSUNBZ0lHQkRiMjUwY21GamRDQWtlMjVoYldWOUlHTnZiWEJwYkdWa0lITjFZMk5sYzNObWRXeHNlU0VnYVc0Z0pIdHdZWFJvTG5KbGMyOXNkbVVvYjNWMGNIVjBLWDFnWEc0Z0lDQWdLVHRjYmlBZ0lDQnBaaUFvWkdWMktTQjdYRzRnSUNBZ0lDQnNiMmN1YVc1bWJ5aGdaR1YySUcxdlpHVWdaVzVoWW14bFpDNGdhVzV6ZEdGc2JHbHVaeUJrWlhCbGJtUmxibU5wWlhNZ1ptOXlJR1JsWW5WbloybHVaMkFwTzF4dUlDQWdJQ0FnWlhobFkxTjVibU1vWUc1d2JTQnBibk4wWVd4c1lDd2dlMXh1SUNBZ0lDQWdJQ0JqZDJRNklHOTFkSEIxZEN4Y2JpQWdJQ0FnSUNBZ1pXNTJPaUI3SUM0dUxuQnliMk5sYzNNdVpXNTJMQ0JPVDBSRlgwVk9Wam9nWENKd2NtOWtkV04wYVc5dVhDSWdmU3hjYmlBZ0lDQWdJSDBwTzF4dUlDQWdJSDFjYmlBZ2ZTazdYRzVjYm1OdmJuTjBJR1Y0ZEhKaFkzUkpibVJsZUdWeklEMGdibVYzSUVOdmJXMWhibVFvS1Z4dUlDQXVZMjl0YldGdVpDaGNJbVY0ZEhKaFkzUXRhVzVrWlhobGMxd2lLVnh1SUNBdWIzQjBhVzl1S0Z3aUxTMW1hV3hsSUZ0VGRISnBibWRkWENJc0lGd2lkR2hsSUcxdlpHVnNJR1pwYkdWY0lpbGNiaUFnTG05d2RHbHZiaWhjSWkwdFptOXNaR1Z5SUZ0VGRISnBibWRkWENJc0lGd2lkR2hsSUcxdlpHVnNJR1p2YkdSbGNsd2lLVnh1SUNBdWIzQjBhVzl1S0Z3aUxTMXZkWFJFYVhJZ1BGTjBjbWx1Wno1Y0lpd2dYQ0owYUdVZ2IzVjBaR2x5TGlCemFHOTFiR1FnYldGMFkyZ2dlVzkxY2lCamIyNTBjbUZqZENCbWIyeGtaWEpjSWlsY2JpQWdMbVJsYzJOeWFYQjBhVzl1S0Z4dUlDQWdJRndpUTNKbFlYUmxjeUJoSUhSb1pTQktVMDlPSUdsdVpHVjRJR1pwYkdWeklIUnZJR0psSUhOMVltMXBkSFJsWkNCMGJ5QmhiRzl1WnlCM2FYUm9JSFJvWlNCamIyNTBjbUZqZEZ3aVhHNGdJQ2xjYmlBZ0xtRmpkR2x2YmloaGMzbHVZeUFvYjNCMGFXOXVjem9nWVc1NUtTQTlQaUI3WEc0Z0lDQWdZMjl1YzNRZ2NHdG5JRDBnU2xOUFRpNXdZWEp6WlNoY2JpQWdJQ0FnSUdaekxuSmxZV1JHYVd4bFUzbHVZeWh3WVhSb0xtcHZhVzRvY0hKdlkyVnpjeTVqZDJRb0tTd2dYQ0p3WVdOcllXZGxMbXB6YjI1Y0lpa3NJRndpZFhSbUxUaGNJaWxjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdZMjl1YzNRZ2RtVnljMmx2YmlBOUlIQnJaeTUyWlhKemFXOXVPMXh1WEc0Z0lDQWdZMjl1YzNRZ2JHOW5JRDBnYkc5bloyVnlMbVp2Y2loY0ltVjRkSEpoWTNRdGFXNWtaWGhsYzF3aUtUdGNiaUFnSUNCc2IyY3VaR1ZpZFdjb1hHNGdJQ0FnSUNCZ2NuVnVibWx1WnlCM2FYUm9JRzl3ZEdsdmJuTTZJQ1I3U2xOUFRpNXpkSEpwYm1kcFpua29iM0IwYVc5dWN5bDlJR1p2Y2lBa2UzQnJaeTV1WVcxbGZTQjJaWEp6YVc5dUlDUjdkbVZ5YzJsdmJuMWdYRzRnSUNBZ0tUdGNibHh1SUNBZ0lDOHZJR1Z6YkdsdWRDMWthWE5oWW14bExXNWxlSFF0YkdsdVpTQndjbVZtWlhJdFkyOXVjM1JjYmlBZ0lDQnNaWFFnZXlCbWFXeGxMQ0JtYjJ4a1pYSXNJRzkxZEVScGNpQjlJRDBnYjNCMGFXOXVjenRjYmx4dUlDQWdJR052Ym5OMElHMXZaR1ZzY3pvZ1lXNTVXMTBnUFNCYlhUdGNiaUFnSUNCcFppQW9abWxzWlNrZ2UxeHVJQ0FnSUNBZ2JXOWtaV3h6TG5CMWMyZ29MaTR1Y21WaFpFMXZaR1ZzUm1sc1pTaG1hV3hsS1NrN1hHNGdJQ0FnZlZ4dVhHNGdJQ0FnYVdZZ0tHWnZiR1JsY2lrZ2UxeHVJQ0FnSUNBZ2JHOW5MbWx1Wm04b1lFeHZZV1JwYm1jZ2JXOWtaV3h6SUdaeWIyMGdKSHRtYjJ4a1pYSjlMaTR1WUNrN1hHNGdJQ0FnSUNCdGIyUmxiSE11Y0hWemFDZ3VMaTRvWVhkaGFYUWdjbVZoWkUxdlpHVnNSbTlzWkdWeWN5aG1iMnhrWlhJcEtTazdYRzRnSUNBZ2ZWeHVJQ0FnSUdOdmJuTjBJSEpsYzNWc2REb2dVbVZqYjNKa1BITjBjbWx1Wnl3Z1lXNTVQaUE5SUh0OU8xeHVJQ0FnSUdOdmJuTjBJR1JsYzJsbmJrUnZZM002SUZKbFkyOXlaRHh6ZEhKcGJtY3NJR0Z1ZVQ0Z1BTQjdmVHRjYmx4dUlDQWdJR2xtSUNnaFptbHNaU0FtSmlBaFptOXNaR1Z5S1Z4dUlDQWdJQ0FnZEdoeWIzY2dibVYzSUVsdWRHVnlibUZzUlhKeWIzSW9ZRTExYzNRZ2NHRnpjeUJoSUdacGJHVWdiM0lnWVNCbWIyeGtaWEpnS1R0Y2JseHVJQ0FnSUdadmNpQW9ZMjl1YzNRZ2JTQnZaaUJ0YjJSbGJITXBJSHRjYmlBZ0lDQWdJR3h2Wnk1MlpYSmliM05sS0dCRmVIUnlZV04wYVc1bklHbHVaR1Y0WlhNZ1ptOXlJSFJoWW14bElDUjdUVzlrWld3dWRHRmliR1ZPWVcxbEtHMHBmV0FwTzF4dUlDQWdJQ0FnWTI5dWMzUWdhVzVrWlhobGN5QTlJR2RsYm1WeVlYUmxUVzlrWld4SmJtUmxlR1Z6S0cwcE8xeHVJQ0FnSUNBZ2FXNWtaWGhsY3k1bWIzSkZZV05vS0NocGJtUmxlQ2tnUFQ0Z2UxeHVJQ0FnSUNBZ0lDQnBaaUFvYVc1a1pYZ3VibUZ0WlNrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsYzNWc2RGdHBibVJsZUM1dVlXMWxYU0E5SUdsdVpHVjRPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUdkbGJtVnlZWFJsVFc5a1pXeEVaWE5wWjI1RWIyTnpLRzBzSUdSbGMybG5ia1J2WTNNcE8xeHVJQ0FnSUgxY2JpQWdJQ0JqYjI1emRDQnBibVJsZUdWelZHOVhjbWwwWlNBOUlFOWlhbVZqZEM1MllXeDFaWE1vY21WemRXeDBLVHRjYmlBZ0lDQmpiMjV6ZENCa2IyTnpWRzlYY21sMFpTQTlJRTlpYW1WamRDNTJZV3gxWlhNb1pHVnphV2R1Ukc5amN5azdYRzRnSUNBZ2JHOW5MblpsY21KdmMyVW9ZRVp2ZFc1a0lDUjdhVzVrWlhobGMxUnZWM0pwZEdVdWJHVnVaM1JvZlNCcGJtUmxlR1Z6SUhSdklHTnlaV0YwWldBcE8xeHVJQ0FnSUd4dlp5NTJaWEppYjNObEtHQkdiM1Z1WkNBa2UyUnZZM05VYjFkeWFYUmxMbXhsYm1kMGFIMGdaR1Z6YVdkdUlHUnZZM01nZEc4Z1kzSmxZWFJsWUNrN1hHNGdJQ0FnYkc5bkxtUmxZblZuS0dCSmJtUmxlR1Z6T2lBa2UwcFRUMDR1YzNSeWFXNW5hV1o1S0hKbGMzVnNkQ2w5WUNrN1hHNGdJQ0FnYkc5bkxtUmxZblZuS0dCRVpYTnBaMjVFYjJOek9pQWtlMHBUVDA0dWMzUnlhVzVuYVdaNUtHUmxjMmxuYmtSdlkzTXBmV0FwTzF4dUlDQWdJSGR5YVhSbFNXNWtaWGhsY3locGJtUmxlR1Z6Vkc5WGNtbDBaU3dnYjNWMFJHbHlLVHRjYmlBZ0lDQjNjbWwwWlVSbGMybG5ia1J2WTNNb1pHOWpjMVJ2VjNKcGRHVXNJRzkxZEVScGNpazdYRzRnSUgwcE8xeHVYRzVqYjI1emRDQmxlSFJ5WVdOMFEyOXNiR1ZqZEdsdmJuTWdQU0J1WlhjZ1EyOXRiV0Z1WkNncFhHNGdJQzVqYjIxdFlXNWtLRndpWlhoMGNtRmpkQzFqYjJ4c1pXTjBhVzl1YzF3aUtWeHVJQ0F1YjNCMGFXOXVLRndpTFMxbWFXeGxJRnRUZEhKcGJtZGRYQ0lzSUZ3aWRHaGxJRzF2WkdWc0lHWnBiR1ZjSWlsY2JpQWdMbTl3ZEdsdmJpaGNJaTB0Wm05c1pHVnlJRnRUZEhKcGJtZGRYQ0lzSUZ3aWRHaGxJRzF2WkdWc0lHWnZiR1JsY2x3aUtWeHVJQ0F1YjNCMGFXOXVLRndpTFMxdmRYUkVhWElnUEZOMGNtbHVaejVjSWl3Z1hDSjBhR1VnYjNWMFpHbHlMaUJ6YUc5MWJHUWdiV0YwWTJnZ2VXOTFjaUJqYjI1MGNtRmpkQ0JtYjJ4a1pYSmNJaWxjYmlBZ0xtOXdkR2x2YmloY0lpMHRiWE53U1dSeklEeFRkSEpwYm1jK1hDSXNJRndpYzJsdVoyeGxJRzF6Y0Vsa0lHOXlJSE4wY21sdVoybG1hV1ZrSUdGeWNtRjVYQ0lwWEc0Z0lDNXZjSFJwYjI0b1hDSXRMVzFoYVc1TmMzQkpaQ0E4VTNSeWFXNW5QbHdpTENCY0luTnBibWRzWlNCdGMzQkpaRndpS1Z4dUlDQXViM0IwYVc5dUtGeHVJQ0FnSUZ3aUxTMXZkbVZ5Y21sa1pYTWdXMU4wY21sdVoxMWNJaXhjYmlBZ0lDQmNJbk4wY21sdVoybG1hV1ZrSUc5MlpYSnlhV1JsSUc5aWFtVmpkQ0I3Y21WeGRXbHlaV1JRWldWeVEyOTFiblE2SUc1MWJXSmxjaXdnYldGNFVHVmxja052ZFc1ME9pQnVkVzFpWlhJc0lHSnNiMk5yVkc5TWFYWmxPaUJ1ZFcxaVpYSXNJRzFsYldKbGNrOXViSGxTWldGa09pQnVkVzFpWlhJc0lHMWxiV0psY2s5dWJIbFhjbWwwWlRvZ2JuVnRZbVZ5TENCbGJtUnZjbk5sYldWdWRGQnZiR2xqZVRvZ0lIdDlmVndpWEc0Z0lDbGNiaUFnTG1SbGMyTnlhWEIwYVc5dUtGeHVJQ0FnSUZ3aVEzSmxZWFJsY3lCaElIUm9aU0JLVTA5T0lHbHVaR1Y0SUdacGJHVnpJSFJ2SUdKbElITjFZbTFwZEhSbFpDQjBieUJoYkc5dVp5QjNhWFJvSUhSb1pTQmpiMjUwY21GamRGd2lYRzRnSUNsY2JpQWdMbUZqZEdsdmJpaGhjM2x1WXlBb2IzQjBhVzl1Y3pvZ1lXNTVLU0E5UGlCN1hHNGdJQ0FnWTI5dWMzUWdjR3RuSUQwZ1NsTlBUaTV3WVhKelpTaGNiaUFnSUNBZ0lHWnpMbkpsWVdSR2FXeGxVM2x1WXlod1lYUm9MbXB2YVc0b2NISnZZMlZ6Y3k1amQyUW9LU3dnWENKd1lXTnJZV2RsTG1wemIyNWNJaWtzSUZ3aWRYUm1MVGhjSWlsY2JpQWdJQ0FwTzF4dVhHNGdJQ0FnWTI5dWMzUWdkbVZ5YzJsdmJpQTlJSEJyWnk1MlpYSnphVzl1TzF4dVhHNGdJQ0FnWTI5dWMzUWdiRzluSUQwZ2JHOW5aMlZ5TG1admNpaGNJbVY0ZEhKaFkzUXRZMjlzYkdWamRHbHZibk5jSWlrN1hHNGdJQ0FnYkc5bkxtUmxZblZuS0Z4dUlDQWdJQ0FnWUhKMWJtNXBibWNnZDJsMGFDQnZjSFJwYjI1ek9pQWtlMHBUVDA0dWMzUnlhVzVuYVdaNUtHOXdkR2x2Ym5NcGZTQm1iM0lnSkh0d2EyY3VibUZ0WlgwZ2RtVnljMmx2YmlBa2UzWmxjbk5wYjI1OVlGeHVJQ0FnSUNrN1hHNWNiaUFnSUNBdkx5QmxjMnhwYm5RdFpHbHpZV0pzWlMxdVpYaDBMV3hwYm1VZ2NISmxabVZ5TFdOdmJuTjBYRzRnSUNBZ2JHVjBJSHNnWm1sc1pTd2dabTlzWkdWeUxDQnZkWFJFYVhJc0lHMXpjRWxrY3l3Z2JXRnBiazF6Y0Vsa0lIMGdQU0J2Y0hScGIyNXpPMXh1WEc0Z0lDQWdkSEo1SUh0Y2JpQWdJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQWdJRzF6Y0Vsa2N5QTlJRzF6Y0Vsa2N5QS9JRXBUVDA0dWNHRnljMlVvYlhOd1NXUnpLU0E2SUhWdVpHVm1hVzVsWkR0Y2JpQWdJQ0FnSUNBZ0x5OGdaWE5zYVc1MExXUnBjMkZpYkdVdGJtVjRkQzFzYVc1bElFQjBlWEJsYzJOeWFYQjBMV1Z6YkdsdWRDOXVieTExYm5WelpXUXRkbUZ5YzF4dUlDQWdJQ0FnZlNCallYUmphQ0FvWlRvZ2RXNXJibTkzYmlrZ2UxeHVJQ0FnSUNBZ0lDQXZMeUFnWkc4Z2JtOTBhR2x1WjF4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBnWTJGMFkyZ2dLR1U2SUhWdWEyNXZkMjRwSUh0Y2JpQWdJQ0FnSUhSb2NtOTNJRzVsZHlCVFpYSnBZV3hwZW1GMGFXOXVSWEp5YjNJb1lGVnVZV0pzWlNCMGJ5QmxlSFJ5WVdOMElHMXpjR2xrY3pvZ0lDUjdaWDFnS1R0Y2JpQWdJQ0I5WEc1Y2JpQWdJQ0JqYjI1emRDQnRiMlJsYkhNNklHRnVlVnRkSUQwZ1cxMDdYRzRnSUNBZ2FXWWdLR1pwYkdVcElIdGNiaUFnSUNBZ0lHMXZaR1ZzY3k1d2RYTm9LQzR1TG5KbFlXUk5iMlJsYkVacGJHVW9abWxzWlNrcE8xeHVJQ0FnSUgxY2JseHVJQ0FnSUdsbUlDaG1iMnhrWlhJcElIdGNiaUFnSUNBZ0lHeHZaeTVwYm1adktHQk1iMkZrYVc1bklHMXZaR1ZzY3lCbWNtOXRJQ1I3Wm05c1pHVnlmUzR1TG1BcE8xeHVJQ0FnSUNBZ2JXOWtaV3h6TG5CMWMyZ29MaTR1S0dGM1lXbDBJSEpsWVdSTmIyUmxiRVp2YkdSbGNuTW9abTlzWkdWeUtTa3BPMXh1SUNBZ0lIMWNibHh1SUNBZ0lHbG1JQ2doWm1sc1pTQW1KaUFoWm05c1pHVnlLVnh1SUNBZ0lDQWdkR2h5YjNjZ2JtVjNJRWx1ZEdWeWJtRnNSWEp5YjNJb1lFMTFjM1FnY0dGemN5QmhJR1pwYkdVZ2IzSWdZU0JtYjJ4a1pYSmdLVHRjYmx4dUlDQWdJR052Ym5OMElHbHVhbVZqZEdGaWJHVk5iMlJsYkhNZ1BTQnRiMlJsYkhNdVptbHNkR1Z5S0Z4dUlDQWdJQ0FnS0cxdlpHVnNLU0E5UGx4dUlDQWdJQ0FnSUNCTmIyUmxiQzVwYzFOb1lYSmxaQ2h0YjJSbGJDa2dmSHhjYmlBZ0lDQWdJQ0FnVFc5a1pXd3VhWE5RY21sMllYUmxLRzF2WkdWc0tTQjhmRnh1SUNBZ0lDQWdJQ0FoSVUxdlpHVnNMbTFwY25KdmNtVmtRWFFvYlc5a1pXd3BYRzRnSUNBZ0tUdGNiaUFnSUNCcFppQW9JV2x1YW1WamRHRmliR1ZOYjJSbGJITXViR1Z1WjNSb0tTQjdYRzRnSUNBZ0lDQnNiMmN1YVc1bWJ5aGNiaUFnSUNBZ0lDQWdZRTV2SUhOb1lYSmxaQ3dnY0hKcGRtRjBaU3dnYjNJZ2JXbHljbTl5WldRZ2JXOWtaV3h6SUdadmRXNWtJSFJ2SUdWNGRISmhZM1FnWTI5c2JHVmpkR2x2Ym5OZ1hHNGdJQ0FnSUNBcE8xeHVJQ0FnSUNBZ2NtVjBkWEp1TzF4dUlDQWdJSDFjYmx4dUlDQWdJR0Z6ZVc1aklHWjFibU4wYVc5dUlHZGxkRU52YkhNb2JYTndTV1J6VEdsemREODZJSE4wY21sdVoxdGRLU0I3WEc0Z0lDQWdJQ0JqYjI1emRDQmpiMnh6T2lCN1hHNGdJQ0FnSUNBZ0lHbHVaR1Y0WlhNNklFTnlaV0YwWlVsdVpHVjRVbVZ4ZFdWemRGdGRPMXh1SUNBZ0lDQWdJQ0JrWlhOcFoyNUViMk56T2lCRGIzVmphRVJDUkdWemFXZHVSRzlqVzEwN1hHNGdJQ0FnSUNBZ0lHMXBjbkp2Y2o4NklGQnlhWFpoZEdWRGIyeHNaV04wYVc5dU8xeHVJQ0FnSUNBZ0lDQmpiMnhzWldOMGFXOXVjem9nVUhKcGRtRjBaVU52Ykd4bFkzUnBiMjViWFR0Y2JpQWdJQ0FnSUgxYlhTQTlJR0YzWVdsMElGQnliMjFwYzJVdVlXeHNLRnh1SUNBZ0lDQWdJQ0JwYm1wbFkzUmhZbXhsVFc5a1pXeHpMbTFoY0NoaGMzbHVZeUFvWTJ4aGVub3BJRDArSUh0Y2JpQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCMFlXSnNaVTVoYldVZ1BTQk5iMlJsYkM1MFlXSnNaVTVoYldVb1kyeGhlbm9wTzF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUcxcGNuSnZjazFsZEdFZ1BTQk5iMlJsYkM1dGFYSnliM0psWkVGMEtHTnNZWHA2S1R0Y2JseHVJQ0FnSUNBZ0lDQWdJR052Ym5OdmJHVXViRzluS0hSaFlteGxUbUZ0WlNrN1hHNGdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1kyOXNiR1ZqZEdsdmJuTTZJRkpsWTI5eVpEeHpkSEpwYm1jc0lHRnVlVDRnUFNCN2ZUdGNiaUFnSUNBZ0lDQWdJQ0JtYjNJZ0tHTnZibk4wSUcxemNDQnZaaUJ0YzNCSlpITk1hWE4wSUh4OElHMXpjRWxrY3lCOGZDQmJYU2tnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdZMjlzYkdWamRHbHZibk5iYlhOd1hTQTlJR0YzWVdsMElHVjRRMjlzYkdWamRHbHZibk1vWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJR05zWVhwNkxGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNCYmJYTndMQ0J0WVdsdVRYTndTV1JkTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0I3ZlN4Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnTHk4Z2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBdkx5QWdJSE5vWVhKbFpFTnZiSE02SUU5aWFtVmpkQzVoYzNOcFoyNG9lMzBzSUc5MlpYSnlhV1JsY3k1emFHRnlaV1JEYjJ4ektTeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdJQ0J3Y21sMllYUmxRMjlzY3pvZ1QySnFaV04wTG1GemMybG5iaWg3ZlN3Z2IzWmxjbkpwWkdWekxuQnlhWFpoZEdWRGIyeHpLU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnZlN4Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSVNGdGFYSnliM0pOWlhSaFhHNGdJQ0FnSUNBZ0lDQWdJQ0FwTzF4dUlDQWdJQ0FnSUNBZ0lIMWNibHh1SUNBZ0lDQWdJQ0FnSUd4bGRDQnRhWEp5YjNKRGIyeHNaV04wYVc5dU9pQlFjbWwyWVhSbFEyOXNiR1ZqZEdsdmJpQjhJSFZ1WkdWbWFXNWxaQ0E5SUhWdVpHVm1hVzVsWkR0Y2JseHVJQ0FnSUNBZ0lDQWdJR2xtSUNodGFYSnliM0pOWlhSaEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCamIyeHNaV04wYVc5dWMxdHRZV2x1VFhOd1NXUmRJRDBnWTI5c2JHVmpkR2x2Ym5OYmJXRnBiazF6Y0Vsa1hTQjhmQ0I3ZlR0Y2JpQWdJQ0FnSUNBZ0lDQWdJRTlpYW1WamRDNXJaWGx6S0dOdmJHeGxZM1JwYjI1ektTNW1iM0pGWVdOb0tDaHRjM0E2SUhOMGNtbHVaeWtnUFQ0Z2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNCamIyeHNaV04wYVc5dWMxdHRZV2x1VFhOd1NXUmRMbkJ5YVhaaGRHVnpJRDBnWTI5c2JHVmpkR2x2Ym5OYlhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JYTndYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lGMHVjSEpwZG1GMFpYTS9MbVpwYkhSbGNpZ29jRG9nWVc1NUtTQTlQaUI3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tIQXVibUZ0WlNBaFBUMGdLRzFwY25KdmNrMWxkR0V1Y21WemIyeDJaWElnWVhNZ2MzUnlhVzVuS1NrZ2NtVjBkWEp1SUhSeWRXVTdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiV2x5Y205eVEyOXNiR1ZqZEdsdmJpQTlJSEFnWVhNZ1lXNTVPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJpQm1ZV3h6WlR0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUNBZ0lDQjlYRzVjYmlBZ0lDQWdJQ0FnSUNCamIyNXpkQ0J3Y21sMllYUmxjME52ZFc1MElEMGdUMkpxWldOMExuWmhiSFZsY3loamIyeHNaV04wYVc5dWN5bGNiaUFnSUNBZ0lDQWdJQ0FnSUM1dFlYQW9LR01wSUQwK0lHTXVjSEpwZG1GMFpYTXBYRzRnSUNBZ0lDQWdJQ0FnSUNBdVpteGhkQ2dwTG14bGJtZDBhRHRjYmlBZ0lDQWdJQ0FnSUNCcFppQW9jSEpwZG1GMFpYTkRiM1Z1ZENsY2JpQWdJQ0FnSUNBZ0lDQWdJR3h2WjF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0F1Wm05eUtFMXZaR1ZzTG5SaFlteGxUbUZ0WlNoamJHRjZlaWtwWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQzVwYm1adktHQkdiM1Z1WkNBa2UzQnlhWFpoZEdWelEyOTFiblI5SUhCeWFYWmhkR1VnWTI5c2JHVmpkR2x2Ym5NZ2RHOGdZM0psWVhSbFlDazdYRzRnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdjMmhoY21Wa1EyOTFiblFnUFNCUFltcGxZM1F1ZG1Gc2RXVnpLR052Ykd4bFkzUnBiMjV6S1Z4dUlDQWdJQ0FnSUNBZ0lDQWdMbTFoY0Nnb1l5a2dQVDRnWXk1emFHRnlaV1FwWEc0Z0lDQWdJQ0FnSUNBZ0lDQXVabXhoZENncExteGxibWQwYUR0Y2JseHVJQ0FnSUNBZ0lDQWdJR3h2WjF4dUlDQWdJQ0FnSUNBZ0lDQWdMbVp2Y2loTmIyUmxiQzUwWVdKc1pVNWhiV1VvWTJ4aGVub3BLVnh1SUNBZ0lDQWdJQ0FnSUNBZ0xtbHVabThvWUVadmRXNWtJQ1I3YzJoaGNtVmtRMjkxYm5SOUlITm9ZWEpsWkNCamIyeHNaV04wYVc5dWN5QjBieUJqY21WaGRHVmdLVHRjYmlBZ0lDQWdJQ0FnSUNCcFppQW9iV2x5Y205eVEyOXNiR1ZqZEdsdmJpbGNiaUFnSUNBZ0lDQWdJQ0FnSUd4dloxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBdVptOXlLRTF2WkdWc0xuUmhZbXhsVG1GdFpTaGpiR0Y2ZWlrcFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUM1cGJtWnZLRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR0JHYjNWdVpDQnZibVVnYldseWNtOXlJR052Ykd4bFkzUnBiMjRnSkh0dGFYSnliM0pOWlhSaFB5NXlaWE52YkhabGNpQmhjeUJ6ZEhKcGJtZDlZRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQXBPMXh1WEc0Z0lDQWdJQ0FnSUNBZ1kyOXVjM1FnWTI5c1RHbHpkQ0E5SUU5aWFtVmpkQzUyWVd4MVpYTW9ZMjlzYkdWamRHbHZibk1wWEc0Z0lDQWdJQ0FnSUNBZ0lDQXViV0Z3S0NoaktTQTlQaUJiTGk0dUtHTXVjSEpwZG1GMFpYTWdmSHdnVzEwcExDQXVMaTRvWXk1emFHRnlaV1FnZkh3Z1cxMHBYU2xjYmlBZ0lDQWdJQ0FnSUNBZ0lDNW1iR0YwS0NrN1hHNGdJQ0FnSUNBZ0lDQWdiR1YwSUdsdVpHVjRaWE02SUVOeVpXRjBaVWx1WkdWNFVtVnhkV1Z6ZEZ0ZElEMGdXMTA3WEc0Z0lDQWdJQ0FnSUNBZ2JHVjBJR1JsYzJsbmJrUnZZM002SUVOdmRXTm9SRUpFWlhOcFoyNUViMk5iWFNBOUlGdGRPMXh1SUNBZ0lDQWdJQ0FnSUdsbUlDaGpiMnhNYVhOMExteGxibWQwYUNrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnYkc5blhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUM1bWIzSW9UVzlrWld3dWRHRmliR1ZPWVcxbEtHTnNZWHA2S1NsY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnTG5abGNtSnZjMlVvWUdkbGJtVnlZWFJwYm1jZ2FXNWtaWGhsY3lCbWIzSWdZMjlzYkdWamRHbHZibk5nS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJR2x1WkdWNFpYTWdQU0JuWlc1bGNtRjBaVTF2WkdWc1NXNWtaWGhsY3loamJHRjZlaWs3WEc0Z0lDQWdJQ0FnSUNBZ0lDQnNiMmRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdMbVp2Y2loTmIyUmxiQzUwWVdKc1pVNWhiV1VvWTJ4aGVub3BLVnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQXVhVzVtYnloZ1ptOTFibVFnSkh0cGJtUmxlR1Z6TG14bGJtZDBhSDBnYVc1a1pYaGxjMkFwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdaR1Z6YVdkdVJHOWpjeUE5SUdkbGJtVnlZWFJsVFc5a1pXeEVaWE5wWjI1RWIyTnpLR05zWVhwNktUdGNiaUFnSUNBZ0lDQWdJQ0FnSUd4dloxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBdVptOXlLRTF2WkdWc0xuUmhZbXhsVG1GdFpTaGpiR0Y2ZWlrcFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUM1cGJtWnZLR0JtYjNWdVpDQWtlMlJsYzJsbmJrUnZZM011YkdWdVozUm9mU0JrWlhOcFoyNGdaRzlqYzJBcE8xeHVJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnSUNCeVpYUjFjbTRnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdhVzVrWlhobGN5eGNiaUFnSUNBZ0lDQWdJQ0FnSUdSbGMybG5ia1J2WTNNc1hHNGdJQ0FnSUNBZ0lDQWdJQ0JqYjJ4c1pXTjBhVzl1Y3pvZ1kyOXNUR2x6ZEN4Y2JpQWdJQ0FnSUNBZ0lDQWdJRzFwY25KdmNqb2diV2x5Y205eVEyOXNiR1ZqZEdsdmJpeGNiaUFnSUNBZ0lDQWdJQ0I5TzF4dUlDQWdJQ0FnSUNCOUtWeHVJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lISmxkSFZ5YmlCamIyeHpPMXh1SUNBZ0lIMWNibHh1SUNBZ0lHTnZibk4wSUdOdmJITWdQU0JoZDJGcGRDQm5aWFJEYjJ4ektDazdYRzRnSUNBZ1kyOXVjM1FnYjI1c2VVMXBjbkp2Y2lBOUlHRjNZV2wwSUdkbGRFTnZiSE1vVzIxaGFXNU5jM0JKWkYwcE8xeHVYRzRnSUNBZ1kyOXVjM1FnWTI5c2JHVmpkR2x2Ym5OVWJ5QTlJRnRjYmlBZ0lDQWdJQzR1TG05dWJIbE5hWEp5YjNJdVptbHNkR1Z5S0NoaktTQTlQaUJqTG0xcGNuSnZjaWt1YldGd0tDaGpLU0E5UGlCakxtMXBjbkp2Y2lrc1hHNGdJQ0FnSUNBdUxpNWpiMnh6TG0xaGNDZ29ZeWtnUFQ0Z1l5NWpiMnhzWldOMGFXOXVjeWt1Wm14aGRDZ3BMRnh1SUNBZ0lDQWdMaTR1WTI5c2N5NW1hV3gwWlhJb0tHTXBJRDArSUdNdWJXbHljbTl5S1M1dFlYQW9LR01wSUQwK0lHTXViV2x5Y205eUtTeGNiaUFnSUNCZElHRnpJRkJ5YVhaaGRHVkRiMnhzWldOMGFXOXVXMTA3WEc1Y2JpQWdJQ0JqYjI1emRDQjFibWx4ZFdWQ2VVTnZiR3hsWTNScGIyNGdQU0JiWEc0Z0lDQWdJQ0F1TGk1dVpYY2dUV0Z3S0Z4dUlDQWdJQ0FnSUNCamIyeHNaV04wYVc5dWMxUnZMbTFoY0Nnb2FYUmxiVG9nVUhKcGRtRjBaVU52Ykd4bFkzUnBiMjRwSUQwK0lGdHBkR1Z0TG01aGJXVXNJR2wwWlcxZEtWeHVJQ0FnSUNBZ0tTNTJZV3gxWlhNb0tTeGNiaUFnSUNCZE8xeHVYRzRnSUNBZ2FXWWdLSFZ1YVhGMVpVSjVRMjlzYkdWamRHbHZiaTVzWlc1bmRHZ3BJSHRjYmlBZ0lDQWdJSGR5YVhSbFEyOXNiR1ZqZEdsdmJuTW9kVzVwY1hWbFFubERiMnhzWldOMGFXOXVMQ0J2ZFhSRWFYSXBPMXh1SUNBZ0lDQWdZMjl1YzNRZ2JXVjBZVU52Ykd4bFkzUnBiMjV6UTI5dVptbG5JRDBnY0dGMGFDNXFiMmx1S0Z4dUlDQWdJQ0FnSUNCdmRYUkVhWElzWEc0Z0lDQWdJQ0FnSUZ3aVRVVlVRUzFKVGtaY0lpeGNiaUFnSUNBZ0lDQWdYQ0pqYjJ4c1pXTjBhVzl1YzE5amIyNW1hV2N1YW5OdmJsd2lYRzRnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdZMjl1YzNRZ1kyOXVkSEpoWTNSRGIyeHNaV04wYVc5dWMwTnZibVpwWnlBOUlIQmhkR2d1YW05cGJpaGNiaUFnSUNBZ0lDQWdiM1YwUkdseUxGeHVJQ0FnSUNBZ0lDQmNJbU52Ykd4bFkzUnBiMjV6WDJOdmJtWnBaeTVxYzI5dVhDSmNiaUFnSUNBZ0lDazdYRzRnSUNBZ0lDQm1jeTVqYjNCNVJtbHNaVk41Ym1Nb2JXVjBZVU52Ykd4bFkzUnBiMjV6UTI5dVptbG5MQ0JqYjI1MGNtRmpkRU52Ykd4bFkzUnBiMjV6UTI5dVptbG5LVHRjYmlBZ0lDQWdJR3h2Wnk1cGJtWnZLRnh1SUNBZ0lDQWdJQ0JnVTNSdmNtVmtJQ1I3WTI5c2JHVmpkR2x2Ym5OVWJ5NXNaVzVuZEdoOUlHTnZiR3hsWTNScGIyNXpJSFJ2SUNSN2JXVjBZVU52Ykd4bFkzUnBiMjV6UTI5dVptbG5mV0JjYmlBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0JzYjJjdWFXNW1ieWhjYmlBZ0lDQWdJQ0FnWUVOdmNHbGxaQ0JqYjJ4c1pXTjBhVzl1YzE5amIyNW1hV2NnZEc4Z0pIdGpiMjUwY21GamRFTnZiR3hsWTNScGIyNXpRMjl1Wm1sbmZTQmhiRzl1WjNOcFpHVWdkR2hsSUhCaFkydGhaMlV1YW5OdmJtQmNiaUFnSUNBZ0lDazdYRzVjYmlBZ0lDQWdJR052YkhNdVptOXlSV0ZqYUNnb1l5a2dQVDRnZTF4dUlDQWdJQ0FnSUNCamIyNXpkQ0I3SUdsdVpHVjRaWE1zSUdSbGMybG5ia1J2WTNNc0lHTnZiR3hsWTNScGIyNXpMQ0J0YVhKeWIzSWdmU0E5SUdNN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUhSdlNXNWtaWGc2SUZCeWFYWmhkR1ZEYjJ4c1pXTjBhVzl1VzEwZ1BTQmJMaTR1WTI5c2JHVmpkR2x2Ym5Nc0lHMXBjbkp2Y2wwdVptbHNkR1Z5S0Z4dUlDQWdJQ0FnSUNBZ0lFSnZiMnhsWVc1Y2JpQWdJQ0FnSUNBZ0tTQmhjeUJRY21sMllYUmxRMjlzYkdWamRHbHZibHRkTzF4dUlDQWdJQ0FnSUNCMGIwbHVaR1Y0TG1admNrVmhZMmdvS0drcElEMCtJSHRjYmlBZ0lDQWdJQ0FnSUNCM2NtbDBaVWx1WkdWNFpYTW9hVzVrWlhobGN5d2diM1YwUkdseUxDQnBMbTVoYldVcE8xeHVJQ0FnSUNBZ0lDQWdJSGR5YVhSbFEyOXNiR1ZqZEdsdmJrUmxjMmxuYmtSdlkzTW9aR1Z6YVdkdVJHOWpjeUI4ZkNCYlhTd2diM1YwUkdseUxDQnBMbTVoYldVcE8xeHVJQ0FnSUNBZ0lDQWdJR3h2Wnk1cGJtWnZLRnh1SUNBZ0lDQWdJQ0FnSUNBZ1lGTjBiM0psWkNBa2UybHVaR1Y0WlhNL0xteGxibWQwYUNCOGZDQXdmU0JwYm1SbGVHVnpJR0Z1WkNBa2UyUmxjMmxuYmtSdlkzTS9MbXhsYm1kMGFDQjhmQ0F3ZlNCa1pYTnBaMjRnWkc5amN5QjBieUJqYjJ4c1pXTjBhVzl1SUNSN2FTNXVZVzFsZldCY2JpQWdJQ0FnSUNBZ0lDQXBPMXh1SUNBZ0lDQWdJQ0I5S1R0Y2JpQWdJQ0FnSUgwcE8xeHVJQ0FnSUgxY2JpQWdmU2s3WEc1Y2JtTnZibk4wSUdWdWMzVnlaVWx1Wm5KaElEMGdibVYzSUVOdmJXMWhibVFvS1Z4dUlDQXVibUZ0WlNoY0ltRjNZV2wwTFdsdVpuSmhYQ0lwWEc0Z0lDNWtaWE5qY21sd2RHbHZiaWhjSW5kaGFYUnpJR1p2Y2lCMGFHVWdhVzVtY21GemRISjFZM1IxY21VZ2RHOGdZbVVnZFhBZ1lXNWtJSEoxYm01cGJtZGNJaWxjYmlBZ0xtOXdkR2x2YmloY2JpQWdJQ0JjSWkwdFkyOXVkR0ZwYm1WeUlEeFRkSEpwYm1jK1hDSXNYRzRnSUNBZ1hDSmtiMk5yWlhJZ1kyOXVkR0ZwYm1WeUlHNWhiV1VnZEc4Z2RHVnpkQ0FvZFhOMVlXeHNlU0JzWVhOMElIQmxaWElwWENJc1hHNGdJQ0FnWENKaWIyOTBMVzl5WnkxakxYQmxaWEl0TUZ3aVhHNGdJQ2xjYmlBZ0xtOXdkR2x2YmloY0lpMHRkR2x0Wlc5MWRDQThVM1J5YVc1blBsd2lMQ0JjSW5ScGJXVnZkWFFnWW1WMGQyVmxiaUIwWlhOMGN5QnBiaUJ0YVd4c2FYTmxZMjl1WkhOY0lpd2dYQ0kxTURBd1hDSXBYRzRnSUM1dmNIUnBiMjRvWENJdExXRjBkR1Z0Y0hSeklEeFRkSEpwYm1jK1hDSXNJRndpYm5WdFltVnlJRzltSUdGMGRHVnRjSFJ6SUdKbFptOXlaU0JuYVhacGJtY2dkWEJjSWl3Z1hDSXhNRndpS1Z4dUlDQXVZV04wYVc5dUtHRnplVzVqSUNodmNIUnBiMjV6T2lCaGJua3BJRDArSUh0Y2JpQWdJQ0JqYjI1emRDQndhMmNnUFNCS1UwOU9MbkJoY25ObEtGeHVJQ0FnSUNBZ1puTXVjbVZoWkVacGJHVlRlVzVqS0hCaGRHZ3VhbTlwYmlod2NtOWpaWE56TG1OM1pDZ3BMQ0JjSW5CaFkydGhaMlV1YW5OdmJsd2lLU3dnWENKMWRHWXRPRndpS1Z4dUlDQWdJQ2s3WEc1Y2JpQWdJQ0JqYjI1emRDQjJaWEp6YVc5dUlEMGdjR3RuTG5abGNuTnBiMjQ3WEc1Y2JpQWdJQ0JqYjI1emRDQnNiMmNnUFNCc2IyZG5aWEl1Wm05eUtGd2lZWGRoYVhRdGFXNW1jbUZjSWlrN1hHNGdJQ0FnYkc5bkxtUmxZblZuS0Z4dUlDQWdJQ0FnWUhKMWJtNXBibWNnZDJsMGFDQnZjSFJwYjI1ek9pQWtlMHBUVDA0dWMzUnlhVzVuYVdaNUtHOXdkR2x2Ym5NcGZTQm1iM0lnSkh0d2EyY3VibUZ0WlgwZ2RtVnljMmx2YmlBa2UzWmxjbk5wYjI1OVlGeHVJQ0FnSUNrN1hHNGdJQ0FnTHk4Z1pYTnNhVzUwTFdScGMyRmliR1V0Ym1WNGRDMXNhVzVsSUhCeVpXWmxjaTFqYjI1emRGeHVJQ0FnSUd4bGRDQjdJR052Ym5SaGFXNWxjaXdnZEdsdFpXOTFkQ3dnWVhSMFpXMXdkSE1nZlNBOUlHOXdkR2x2Ym5NN1hHNGdJQ0FnZEdsdFpXOTFkQ0E5SUhCaGNuTmxTVzUwS0hScGJXVnZkWFFwSUh4OElEVXdNREE3WEc0Z0lDQWdZWFIwWlcxd2RITWdQU0J3WVhKelpVbHVkQ2hoZEhSbGJYQjBjeWtnZkh3Z01UQTdYRzVjYmlBZ0lDQmhkMkZwZENCbGJuTjFjbVZKYm1aeVlYTjBjblZqZEhWeVpVSnZiM1JsWkNoY0ltSnZiM1F0YjNKbkxXTXRjR1ZsY2kwd1hDSXNJSFJwYldWdmRYUXNJR0YwZEdWdGNIUnpLVHRjYmx4dUlDQWdJR3h2Wnk1cGJtWnZLRnh1SUNBZ0lDQWdZRWx1Wm5KaGMzUnlkV04wZFhKbElHSnZiM1JsWkNCemRXTmpaWE56Wm5Wc2JIa2dLR0ZqWTI5eVpHbHVaeUIwYnlCamIyNTBZV2x1WlhJZ0pIdGpiMjUwWVdsdVpYSjlLU0ZnWEc0Z0lDQWdLVHRjYmlBZ2ZTazdYRzVjYm1OdmJuTjBJR1JsY0d4dmVVTnZiblJ5WVdOMElEMGdibVYzSUVOdmJXMWhibVFvS1Z4dUlDQXVibUZ0WlNoY0ltUmxjR3h2ZVMxamIyNTBjbUZqZEZ3aUtWeHVJQ0F1WkdWelkzSnBjSFJwYjI0b1hDSmtaWEJzYjNseklIUm9aU0J6Wld4bFkzUmxaQ0JqYjI1MGNtRmpkRndpS1Z4dUlDQXViM0IwYVc5dUtGd2lMUzF1WVcxbElEeFRkSEpwYm1jK1hDSXNJRndpUTI5dWRISmhZM1FnVG1GdFpTQW9ZVzVrSUdadmJHUmxjaWxjSWlsY2JpQWdMbTl3ZEdsdmJpaGNJaTB0YVc1d2RYUWdQRk4wY21sdVp6NWNJaXdnWENKcGJuQjFkQ0JtYjJ4a1pYSmNJaWxjYmlBZ0xtOXdkR2x2YmloY2JpQWdJQ0JjSWkwdFkyOXNiR1ZqZEdsdmJuTXRZMjl1Wm1sbklEeFRkSEpwYm1jK1hDSXNYRzRnSUNBZ1hDSndZWFJvSUhSdklHTnZiR3hsWTNScGIyNXpYMk52Ym1acFp5NXFjMjl1SUhSdklHTnZibVpwWjNWeVpTQndjbWwyWVhSbElHTnZiR3hsWTNScGIyNXpYQ0pjYmlBZ0tWeHVJQ0F1YjNCMGFXOXVLRnh1SUNBZ0lGd2lMUzFwYm1OeVpXMWxiblJXWlhKemFXOXVJRHhUZEhKcGJtYytYQ0lzWEc0Z0lDQWdYQ0lvZEhKMVpTQjhJR1poYkhObEtTQnBaaUJ6YUc5MWJHUWdkWE5sSUhabGNuTnBiMjRnYjNJZ2MyVnhkV1Z1WTJVZ2RHOGdkWEJrWVhSbElHTnZiblJ5WVdOMGMxd2lMRnh1SUNBZ0lHWmhiSE5sWEc0Z0lDbGNiaUFnTG05d2RHbHZiaWhjYmlBZ0lDQmNJaTB0ZEhKaFkydGxja1p2YkdSbGNpQThVM1J5YVc1blBsd2lMRnh1SUNBZ0lGd2lZMjl1ZEhKaFkzUWdkbVZ5YzJsdmJpQjBjbUZqYTJWeUlHWnZiR1JsY2lBb2MyaHZkV3hrSUdKbElHUmxiR1YwWldRZ2IyNGdhVzVtY21GemRISjFZM1IxY21VNlpHOTNiaWxjSWl4Y2JpQWdJQ0J3WVhSb0xtcHZhVzRvY0hKdlkyVnpjeTVqZDJRb0tTd2dYQ0owWlhOMGMxd2lMQ0JjSW1sdWRHVm5jbUYwYVc5dVhDSXNJRndpWTJoaGFXNWpiMlJsVkhKaFkydGxjbk5jSWlsY2JpQWdLVnh1SUNBdWIzQjBhVzl1S0Z4dUlDQWdJRndpTFMxd1pXVnljeUE4VTNSeWFXNW5QbHdpTEZ4dUlDQWdJRndpWTI5dGJXRWdjMlZ3WVhKaGRHVmtJSEJsWlhJZ2FXUnpYQ0lzWEc0Z0lDQWdYQ0p2Y21jdFlTMXdaV1Z5TFRBc2IzSm5MV0l0Y0dWbGNpMHdMRzl5WnkxakxYQmxaWEl0TUZ3aVhHNGdJQ2xjYmlBZ0xtRmpkR2x2YmloaGMzbHVZeUFvYjNCMGFXOXVjem9nWVc1NUtTQTlQaUI3WEc0Z0lDQWdZMjl1YzNRZ2NHdG5JRDBnU2xOUFRpNXdZWEp6WlNoY2JpQWdJQ0FnSUdaekxuSmxZV1JHYVd4bFUzbHVZeWh3WVhSb0xtcHZhVzRvY0hKdlkyVnpjeTVqZDJRb0tTd2dYQ0p3WVdOcllXZGxMbXB6YjI1Y0lpa3NJRndpZFhSbUxUaGNJaWxjYmlBZ0lDQXBPMXh1WEc0Z0lDQWdZMjl1YzNRZ2RtVnljMmx2YmlBOUlIQnJaeTUyWlhKemFXOXVPMXh1WEc0Z0lDQWdZMjl1YzNRZ2JHOW5JRDBnYkc5bloyVnlMbVp2Y2loY0ltUmxjR3h2ZVMxamIyNTBjbUZqZEZ3aUtUdGNiaUFnSUNCc2IyY3VaR1ZpZFdjb1hHNGdJQ0FnSUNCZ2NuVnVibWx1WnlCM2FYUm9JRzl3ZEdsdmJuTTZJQ1I3U2xOUFRpNXpkSEpwYm1kcFpua29iM0IwYVc5dWN5bDlJR1p2Y2lBa2UzQnJaeTV1WVcxbGZTQjJaWEp6YVc5dUlDUjdkbVZ5YzJsdmJuMWdYRzRnSUNBZ0tUdGNibHh1SUNBZ0lHTnZibk4wSUh0Y2JpQWdJQ0FnSUc1aGJXVXNYRzRnSUNBZ0lDQnBibkIxZEN4Y2JpQWdJQ0FnSUhCbFpYSnpMRnh1SUNBZ0lDQWdkSEpoWTJ0bGNrWnZiR1JsY2l4Y2JpQWdJQ0FnSUM4dklHVnpiR2x1ZEMxa2FYTmhZbXhsTFc1bGVIUXRiR2x1WlNCQWRIbHdaWE5qY21sd2RDMWxjMnhwYm5RdmJtOHRkVzUxYzJWa0xYWmhjbk5jYmlBZ0lDQWdJR2x1WTNKbGJXVnVkRlpsY25OcGIyNHNYRzRnSUNBZ0lDQmpiMnhzWldOMGFXOXVjME52Ym1acFp5eGNiaUFnSUNCOUlEMGdiM0IwYVc5dWN6dGNiaUFnSUNCamIyNXpkQ0J3WldWeVNXUnpJRDBnY0dWbGNuTXVjM0JzYVhRb1hDSXNYQ0lwTzF4dVhHNGdJQ0FnWTI5dWMzUWdZMjkxYm5SUVlYUm9JRDBnY0dGMGFDNXlaWE52YkhabEtIQmhkR2d1YW05cGJpaDBjbUZqYTJWeVJtOXNaR1Z5TENCZ0pIdHVZVzFsZlM1amIzVnVkR0FwS1R0Y2JseHVJQ0FnSUd4bGRDQnpaWEYxWlc1alpUb2diblZ0WW1WeU8xeHVYRzRnSUNBZ2RISjVJSHRjYmlBZ0lDQWdJSE5sY1hWbGJtTmxJRDBnY0dGeWMyVkpiblFvWm5NdWNtVmhaRVpwYkdWVGVXNWpLR052ZFc1MFVHRjBhQ2t1ZEc5VGRISnBibWNvWENKMWRHWXRPRndpS1NrN1hHNGdJQ0FnSUNCcFppQW9hWE5PWVU0b2MyVnhkV1Z1WTJVcEtTQnpaWEYxWlc1alpTQTlJREU3WEc0Z0lDQWdJQ0JsYkhObElITmxjWFZsYm1ObElDczlJREU3WEc0Z0lDQWdJQ0F2THlCbGMyeHBiblF0WkdsellXSnNaUzF1WlhoMExXeHBibVVnUUhSNWNHVnpZM0pwY0hRdFpYTnNhVzUwTDI1dkxYVnVkWE5sWkMxMllYSnpYRzRnSUNBZ2ZTQmpZWFJqYUNBb1pUb2dkVzVyYm05M2Jpa2dlMXh1SUNBZ0lDQWdjMlZ4ZFdWdVkyVWdQU0F4TzF4dUlDQWdJSDFjYmlBZ0lDQXZMMXh1SUNBZ0lDOHZJR2xtSUNocGJtTnlaVzFsYm5SV1pYSnphVzl1S1NCN1hHNGdJQ0FnTHk4Z0lDQjJaWEp6YVc5dUlEMGdkbVZ5YzJsdmJpQXJJR0F0Skh0elpYRjFaVzVqWlgxZ08xeHVJQ0FnSUM4dklDQWdMeThnYzJWeGRXVnVZMlVnUFNBeE8xeHVJQ0FnSUM4dklIMWNibHh1SUNBZ0lIUnllU0I3WEc0Z0lDQWdJQ0JtYjNJZ0tHTnZibk4wSUhCbFpYSWdiMllnY0dWbGNrbGtjeWtnZTF4dUlDQWdJQ0FnSUNCd1lXTnJZV2RsUTI5dWRISmhZM1FvY0dWbGNpd2dhVzV3ZFhRc0lHNWhiV1VzSUhabGNuTnBiMjRwTzF4dUlDQWdJQ0FnSUNCcGJuTjBZV3hzUTI5dWRISmhZM1FvY0dWbGNpd2dibUZ0WlNrN1hHNGdJQ0FnSUNBZ0lHRndjSEp2ZG1WRGIyNTBjbUZqZENoY2JpQWdJQ0FnSUNBZ0lDQndaV1Z5TEZ4dUlDQWdJQ0FnSUNBZ0lHNWhiV1VzWEc0Z0lDQWdJQ0FnSUNBZ2NHVmxjaUE5UFQwZ1hDSnZjbWN0WVMxd1pXVnlMVEJjSWx4dUlDQWdJQ0FnSUNBZ0lDQWdQeUJjSW5Sc2N5MWpZUzFqWlhKMExuQmxiVndpWEc0Z0lDQWdJQ0FnSUNBZ0lDQTZJRndpYjNKa1pYSmxjaTEwYkhNdFkyRXRZMlZ5ZEM1d1pXMWNJaXhjYmlBZ0lDQWdJQ0FnSUNCelpYRjFaVzVqWlN4Y2JpQWdJQ0FnSUNBZ0lDQjJaWEp6YVc5dUxGeHVJQ0FnSUNBZ0lDQWdJR052Ykd4bFkzUnBiMjV6UTI5dVptbG5YRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0I5WEc0Z0lDQWdJQ0JtY3k1M2NtbDBaVVpwYkdWVGVXNWpLR052ZFc1MFVHRjBhQ3dnYzJWeGRXVnVZMlV1ZEc5VGRISnBibWNvS1NrN1hHNGdJQ0FnZlNCallYUmphQ0FvWlhKeU9pQmhibmtwSUh0Y2JpQWdJQ0FnSUd4dlp5NWxjbkp2Y2loY0lrVnljbTl5SUdSbGNHeHZlV2x1WnlCamIyNTBjbUZqZERwY0lpd2daWEp5S1R0Y2JpQWdJQ0I5WEc0Z0lDQWdZMjl0YldsMFEyaGhhVzVqYjJSbEtHNWhiV1VzSUhObGNYVmxibU5sTENCMlpYSnphVzl1TENCamIyeHNaV04wYVc5dWMwTnZibVpwWnlrN1hHNGdJSDBwTzF4dVhHNWpiMjV6ZENCblpYUkRjbmx3ZEc5TllYUmxjbWxoYkNBOUlHNWxkeUJEYjIxdFlXNWtLQ2xjYmlBZ0xtNWhiV1VvWENKblpYUXRZM0o1Y0hSdkxXMWhkR1Z5YVdGc1hDSXBYRzRnSUM1a1pYTmpjbWx3ZEdsdmJpaGNJbU52Y0dsbGN5QjBhR1VnWTNKNWNIUnZJRzFoZEdWeWFXRnNJSFJ2SUhSb1pTQnpaV3hsWTNSbFpDQm1iMnhrWlhKY0lpbGNiaUFnTG05d2RHbHZiaWhjSWkwdFptOXNaR1Z5SUR4VGRISnBibWMrWENJc0lGd2liM1YwY0hWMElHWnZiR1JsY2x3aUxDQmNJbVJ2WTJ0bGNpOWtiMk5yWlhJdFpHRjBZVndpS1Z4dUlDQXViM0IwYVc5dUtGd2lMUzF2Y21jZ1cxTjBjbWx1WjExY0lpd2dYQ0owYUdVZ2IzSm5MM0JsWlhJZ2RHOGdaWGgwY21GamRDQm1jbTl0WENJc0lGd2liM0puTFdGY0lpbGNiaUFnTG1GamRHbHZiaWhoYzNsdVl5QW9iM0IwYVc5dWN6b2dZVzU1S1NBOVBpQjdYRzRnSUNBZ1kyOXVjM1FnY0d0bklEMGdTbE5QVGk1d1lYSnpaU2hjYmlBZ0lDQWdJR1p6TG5KbFlXUkdhV3hsVTNsdVl5aHdZWFJvTG1wdmFXNG9jSEp2WTJWemN5NWpkMlFvS1N3Z1hDSndZV05yWVdkbExtcHpiMjVjSWlrc0lGd2lkWFJtTFRoY0lpbGNiaUFnSUNBcE8xeHVYRzRnSUNBZ1kyOXVjM1FnZG1WeWMybHZiaUE5SUhCclp5NTJaWEp6YVc5dU8xeHVYRzRnSUNBZ1kyOXVjM1FnYkc5bklEMGdiRzluWjJWeUxtWnZjaWhjSW1kbGRDMWpjbmx3ZEc4dGJXRjBaWEpwWVd4Y0lpazdYRzRnSUNBZ2JHOW5MbVJsWW5WbktGeHVJQ0FnSUNBZ1lISjFibTVwYm1jZ2QybDBhQ0J2Y0hScGIyNXpPaUFrZTBwVFQwNHVjM1J5YVc1bmFXWjVLRzl3ZEdsdmJuTXBmU0JtYjNJZ0pIdHdhMmN1Ym1GdFpYMGdkbVZ5YzJsdmJpQWtlM1psY25OcGIyNTlZRnh1SUNBZ0lDazdYRzRnSUNBZ1kyOXVjM1FnZXlCbWIyeGtaWElzSUc5eVp5QjlJRDBnYjNCMGFXOXVjenRjYmlBZ0lDQmxlR1ZqVTNsdVl5aGdaRzlqYTJWeUlHTndJQ1I3YjNKbmZUb3ZkMlZoZG1WeUwyTnNhV1Z1ZEM4dUlDUjdabTlzWkdWeWZXQXNJSHRjYmlBZ0lDQWdJR04zWkRvZ2NISnZZMlZ6Y3k1amQyUW9LU3hjYmlBZ0lDQjlLVHRjYmlBZ2ZTazdYRzVjYm1OdmJuTjBJR1poWW5KcFkwTnRaQ0E5SUc1bGR5QkRiMjF0WVc1a0tDbGNiaUFnTG01aGJXVW9YQ0ptYjNJdFptRmljbWxqWENJcFhHNGdJQzVqYjIxdFlXNWtLRndpWm1GaWNtbGpYQ0lwWEc0Z0lDNWtaWE5qY21sd2RHbHZiaWhjYmlBZ0lDQmNJbVY0Y0c5elpYTWdjMlYyWlhKaGJDQmpiMjF0WVc1a2N5QjBieUJvWld4d0lHMWhibUZuWlNCMGFHVWdabUZpY21saklHbHVabkpoYzNSeWRXTjBkWEpsWENKY2JpQWdLVHRjYmx4dVptRmljbWxqUTIxa0xtRmtaRU52YlcxaGJtUW9ZMjl0Y0dsc1pVTnZiVzFoYm1RcE8xeHVabUZpY21salEyMWtMbUZrWkVOdmJXMWhibVFvWlhoMGNtRmpkRWx1WkdWNFpYTXBPMXh1Wm1GaWNtbGpRMjFrTG1Ga1pFTnZiVzFoYm1Rb1pXNXpkWEpsU1c1bWNtRXBPMXh1Wm1GaWNtbGpRMjFrTG1Ga1pFTnZiVzFoYm1Rb1pHVndiRzk1UTI5dWRISmhZM1FwTzF4dVptRmljbWxqUTIxa0xtRmtaRU52YlcxaGJtUW9aMlYwUTNKNWNIUnZUV0YwWlhKcFlXd3BPMXh1Wm1GaWNtbGpRMjFrTG1Ga1pFTnZiVzFoYm1Rb1pYaDBjbUZqZEVOdmJHeGxZM1JwYjI1ektUdGNibHh1Wlhod2IzSjBJR1JsWm1GMWJIUWdablZ1WTNScGIyNGdabUZpY21saktDa2dlMXh1SUNCeVpYUjFjbTRnWm1GaWNtbGpRMjFrTzF4dWZWeHVJbDE5Il19