@aerokit/sdk 12.45.0 → 12.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -76,7 +76,7 @@ class Query {
76
76
  return JSON.parse(resultset);
77
77
  }
78
78
  if (arr.every(
79
- (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date
79
+ (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date || Array.isArray(v)
80
80
  )) {
81
81
  const resultset = DatabaseFacade.query(
82
82
  sql,
@@ -109,4 +109,4 @@ class Query {
109
109
  if (typeof module !== "undefined") {
110
110
  module.exports = Query;
111
111
  }
112
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3F1ZXJ5LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEFQSSBRdWVyeVxuICpcbiAqL1xuXG5jb25zdCBEYXRhYmFzZUZhY2FkZSA9IEphdmEudHlwZShcbiAgXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YWJhc2VGYWNhZGVcIixcbik7XG5cbi8qKlxuICogSW50ZXJmYWNlIHVzZWQgdG8gd3JhcCBjb21wbGV4IG9yIHNwZWNpZmljIHZhbHVlcyBmb3Igbm9uLW5hbWVkIHF1ZXJpZXMuXG4gKi9cbmV4cG9ydCB0eXBlIFR5cGVkUXVlcnlQYXJhbWV0ZXIgPSB7XG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHVua25vd247XG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbmluZyBhIHBhcmFtZXRlciBmb3IgYSBuYW1lZCBxdWVyeSAodXNpbmcgcGxhY2Vob2xkZXJzIGxpa2UgOnBhcmFtTmFtZSkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmFtZWRRdWVyeVBhcmFtZXRlciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuICByZWFkb25seSB2YWx1ZTogYW55O1xufVxuXG4vKipcbiAqIEludGVyZmFjZSB0byBzcGVjaWZ5IGZvcm1hdHRpbmcgb3B0aW9ucyBmb3IgdGhlIHF1ZXJ5IHJlc3VsdCBzZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWF0dGluZ1BhcmFtZXRlciB7XG4gIHJlYWRvbmx5IGRhdGVGb3JtYXQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBzdGF0aWMgbWV0aG9kcyBmb3IgZXhlY3V0aW5nIHBhcmFtZXRlcml6ZWQgU1FMIFNFTEVDVCBzdGF0ZW1lbnRzLlxuICovXG5leHBvcnQgY2xhc3MgUXVlcnkge1xuICAvKipcbiAgICogRXhlY3V0ZXMgYSBzdGFuZGFyZCBTUUwgcXVlcnkgd2l0aCBwb3NpdGlvbmFsIHBhcmFtZXRlcnMuIFBhcmFtZXRlcnMgYXJyYXkgc3VwcG9ydHMgcHJpbWl0aXZlcyBlLmcuIGBbMSwgJ0pvaG4nLCAzNC41Nl1gIG9yIG9iamVjdHMgaW4gZm9ybWF0IGVpdGhlciBgeyd0eXBlJzonW0RBVEFfVFlQRV0nLCAndmFsdWUnOltWQUxVRV19YCBvciBgeyduYW1lJzonW3N0cmluZ10nLCAndHlwZSc6J1tEQVRBX1RZUEVdJywgJ3ZhbHVlJzpbVkFMVUVdfWAgZS5nLiBgW3sndHlwZSc6J0NIQVInLCAndmFsdWUnOidJU0JOMTkyMDIzMjMzMjInfV1gIG9yIGBbeyduYW1lJzogJ29yZGVyX251bWJlcicsICd0eXBlJzonQ0hBUicsICd2YWx1ZSc6J0lTQk4xOTIwMjMyMzMyMid9XWBcbiAgICpcbiAgICogQHBhcmFtIHNxbCBUaGUgU1FMIHF1ZXJ5IHRvIGV4ZWN1dGUuXG4gICAqIEBwYXJhbSBwYXJhbWV0ZXJzIEFuIG9wdGlvbmFsIGFycmF5IG9mIHZhbHVlcyAocHJpbWl0aXZlcywgVHlwZWRRdWVyeVBhcmFtZXRlciBvciBOYW1lZFF1ZXJ5UGFyYW1ldGVyIG9iamVjdHMpIHRvIHJlcGxhY2UgJz8nIG9yIDpwYXJhbU5hbWUgcGxhY2Vob2xkZXJzLlxuICAgKiBAcGFyYW0gZGF0YXNvdXJjZU5hbWUgVGhlIG5hbWUgb2YgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gdG8gdXNlIChvcHRpb25hbCkuXG4gICAqIEBwYXJhbSBmb3JtYXR0aW5nIE9wdGlvbmFsIGZvcm1hdHRpbmcgcGFyYW1ldGVycyBmb3IgdGhlIHJlc3VsdCBzZXQgKGUuZy4sIGRhdGUgZm9ybWF0KS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVjb3JkcyByZXByZXNlbnRpbmcgdGhlIHF1ZXJ5IHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGV4ZWN1dGUoXG4gICAgc3FsOiBzdHJpbmcsXG4gICAgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkUXVlcnlQYXJhbWV0ZXIgfCBOYW1lZFF1ZXJ5UGFyYW1ldGVyKVtdIHwgc3RyaW5nLFxuICAgIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nLFxuICAgIGZvcm1hdHRpbmc/OiBGb3JtYXR0aW5nUGFyYW1ldGVyLFxuICApOiBhbnlbXSB7XG4gICAgY29uc3QgZm9ybWF0dGluZ0pzb24gPSBmb3JtYXR0aW5nID8gSlNPTi5zdHJpbmdpZnkoZm9ybWF0dGluZykgOiB1bmRlZmluZWQ7XG5cbiAgICBsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXG4gICAgaWYgKHBhcmFtZXRlcnMgPT0gbnVsbCkge1xuICAgICAgYXJyID0gW107XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcnNlZCkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnB1dCBwYXJhbWV0ZXIgc3RyaW5nIG11c3QgcmVwcmVzZW50IGEgSlNPTiBhcnJheVwiKTtcbiAgICAgICAgfVxuICAgICAgICBhcnIgPSBwYXJzZWQ7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJhbWV0ZXJzKSkge1xuICAgICAgYXJyID0gcGFyYW1ldGVycztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUGFyYW1ldGVycyBtdXN0IGJlIGVpdGhlciBhbiBhcnJheSBvciBhIEpTT04gc3RyaW5nXCIpO1xuICAgIH1cblxuICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG4gICAgICBjb25zdCByZXN1bHRzZXQgPSBEYXRhYmFzZUZhY2FkZS5xdWVyeShzcWwsIG51bGwsIGRhdGFzb3VyY2VOYW1lLCBmb3JtYXR0aW5nSnNvbik7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG4gICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJuYW1lXCIgaW4gZmlyc3QgJiYgXCJ0eXBlXCIgaW4gZmlyc3QpIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5TmFtZWQoXG4gICAgICAgIHNxbCxcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoYXJyKSxcbiAgICAgICAgZGF0YXNvdXJjZU5hbWVcbiAgICAgICk7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICAgIH1cblxuICAgIC8vIFR5cGVkUXVlcnlQYXJhbWV0ZXIgKGhhcyB0eXBlLCBubyBuYW1lKVxuICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJ0eXBlXCIgaW4gZmlyc3QgJiYgIShcIm5hbWVcIiBpbiBmaXJzdCkpIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5KFxuICAgICAgICBzcWwsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KGFyciksXG4gICAgICAgIGRhdGFzb3VyY2VOYW1lLFxuICAgICAgICBmb3JtYXR0aW5nSnNvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHNldCk7XG4gICAgfVxuXG4gICAgLy8gUHJpbWl0aXZlIGFycmF5XG4gICAgaWYgKFxuICAgICAgYXJyLmV2ZXJ5KFxuICAgICAgICAodikgPT5cbiAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIiB8fFxuICAgICAgICAgIHR5cGVvZiB2ID09PSBcIm51bWJlclwiIHx8XG4gICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG4gICAgICAgICAgdiBpbnN0YW5jZW9mIERhdGVcbiAgICAgIClcbiAgICApIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5KFxuICAgICAgICBzcWwsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KGFyciksXG4gICAgICAgIGRhdGFzb3VyY2VOYW1lLFxuICAgICAgICBmb3JtYXR0aW5nSnNvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHNldCk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgcGFyYW1ldGVyIGZvcm1hdDogXCIgKyBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKSk7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyBhIFNRTCBxdWVyeSB3aXRoIG5hbWVkIHBhcmFtZXRlcnMgKGUuZy4sIFwiOm5hbWVcIiwgXCI6aWRcIikuXG4gICAqXG4gICAqIEBwYXJhbSBzcWwgVGhlIFNRTCBxdWVyeSB0byBleGVjdXRlLlxuICAgKiBAcGFyYW0gcGFyYW1ldGVycyBBbiBvcHRpb25hbCBhcnJheSBvZiBOYW1lZFF1ZXJ5UGFyYW1ldGVyIG9iamVjdHMuXG4gICAqIEBwYXJhbSBkYXRhc291cmNlTmFtZSBUaGUgbmFtZSBvZiB0aGUgZGF0YWJhc2UgY29ubmVjdGlvbiB0byB1c2UgKG9wdGlvbmFsKS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVjb3JkcyByZXByZXNlbnRpbmcgdGhlIHF1ZXJ5IHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGV4ZWN1dGVOYW1lZChcbiAgICBzcWw6IHN0cmluZyxcbiAgICBwYXJhbWV0ZXJzPzogTmFtZWRRdWVyeVBhcmFtZXRlcltdLFxuICAgIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nLFxuICApOiBhbnlbXSB7XG4gICAgLy8gU2VyaWFsaXplIHRoZSBhcnJheSBvZiBuYW1lZCBwYXJhbWV0ZXJzIGZvciB0aGUgSmF2YSBmYWNhZGVcbiAgICBjb25zdCBwYXJhbXNKc29uID0gcGFyYW1ldGVycyA/IEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpIDogdW5kZWZpbmVkO1xuXG4gICAgLy8gVGhlIERhdGFiYXNlRmFjYWRlIHJldHVybnMgYSBKU09OIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgcmVzdWx0IHNldFxuICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5TmFtZWQoXG4gICAgICBzcWwsXG4gICAgICBwYXJhbXNKc29uLFxuICAgICAgZGF0YXNvdXJjZU5hbWUsXG4gICAgKTtcblxuICAgIC8vIFBhcnNlIHRoZSBKU09OIHN0cmluZyBiYWNrIGludG8gYSBKYXZhU2NyaXB0IGFycmF5IG9mIG9iamVjdHNcbiAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICB9XG59XG5cbi8vIEB0cy1pZ25vcmVcbmlmICh0eXBlb2YgbW9kdWxlICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgbW9kdWxlLmV4cG9ydHMgPSBRdWVyeTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBLE1BQU0saUJBQWlCLEtBQUs7QUFBQSxFQUMxQjtBQUNGO0FBNkJPLE1BQU0sTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVWpCLE9BQWMsUUFDWixLQUNBLFlBQ0EsZ0JBQ0EsWUFDTztBQUNQLFVBQU0saUJBQWlCLGFBQWEsS0FBSyxVQUFVLFVBQVUsSUFBSTtBQUVqRSxRQUFJLE1BQWEsQ0FBQztBQUVsQixRQUFJLGNBQWMsTUFBTTtBQUN0QixZQUFNLENBQUM7QUFBQSxJQUNULFdBQVcsT0FBTyxlQUFlLFVBQVU7QUFDekMsVUFBSTtBQUNGLGNBQU0sU0FBUyxLQUFLLE1BQU0sVUFBVTtBQUNwQyxZQUFJLENBQUMsTUFBTSxRQUFRLE1BQU0sR0FBRztBQUMxQixnQkFBTSxJQUFJLE1BQU0sb0RBQW9EO0FBQUEsUUFDdEU7QUFDQSxjQUFNO0FBQUEsTUFDUixTQUFTLEdBQUc7QUFDVixjQUFNLElBQUksTUFBTSw4QkFBOEIsQ0FBQztBQUFBLE1BQ2pEO0FBQUEsSUFDRixXQUFXLE1BQU0sUUFBUSxVQUFVLEdBQUc7QUFDcEMsWUFBTTtBQUFBLElBQ1IsT0FBTztBQUNMLFlBQU0sSUFBSSxNQUFNLHFEQUFxRDtBQUFBLElBQ3ZFO0FBRUEsUUFBSSxJQUFJLFdBQVcsR0FBRztBQUNwQixZQUFNLFlBQVksZUFBZSxNQUFNLEtBQUssTUFBTSxnQkFBZ0IsY0FBYztBQUNoRixhQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsSUFDN0I7QUFFQSxVQUFNLFFBQVEsSUFBSSxDQUFDO0FBR25CLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsVUFBVSxPQUFPO0FBQzVFLFlBQU0sWUFBWSxlQUFlO0FBQUEsUUFDL0I7QUFBQSxRQUNBLEtBQUssVUFBVSxHQUFHO0FBQUEsUUFDbEI7QUFBQSxNQUNGO0FBQ0EsYUFBTyxLQUFLLE1BQU0sU0FBUztBQUFBLElBQzdCO0FBR0EsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxFQUFFLFVBQVUsUUFBUTtBQUMvRSxZQUFNLFlBQVksZUFBZTtBQUFBLFFBQy9CO0FBQUEsUUFDQSxLQUFLLFVBQVUsR0FBRztBQUFBLFFBQ2xCO0FBQUEsUUFDQTtBQUFBLE1BQ0Y7QUFDQSxhQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsSUFDN0I7QUFHQSxRQUNFLElBQUk7QUFBQSxNQUNGLENBQUMsTUFDQyxPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sYUFDYixhQUFhO0FBQUEsSUFDakIsR0FDQTtBQUNBLFlBQU0sWUFBWSxlQUFlO0FBQUEsUUFDL0I7QUFBQSxRQUNBLEtBQUssVUFBVSxHQUFHO0FBQUEsUUFDbEI7QUFBQSxRQUNBO0FBQUEsTUFDRjtBQUNBLGFBQU8sS0FBSyxNQUFNLFNBQVM7QUFBQSxJQUM3QjtBQUVBLFVBQU0sSUFBSSxNQUFNLG1DQUFtQyxLQUFLLFVBQVUsVUFBVSxDQUFDO0FBQUEsRUFDL0U7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFXQSxPQUFjLGFBQ1osS0FDQSxZQUNBLGdCQUNPO0FBRVAsVUFBTSxhQUFhLGFBQWEsS0FBSyxVQUFVLFVBQVUsSUFBSTtBQUc3RCxVQUFNLFlBQVksZUFBZTtBQUFBLE1BQy9CO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxJQUNGO0FBR0EsV0FBTyxLQUFLLE1BQU0sU0FBUztBQUFBLEVBQzdCO0FBQ0Y7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWpDLFNBQU8sVUFBVTtBQUNuQjsiLAogICJuYW1lcyI6IFtdCn0K
112
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3F1ZXJ5LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEFQSSBRdWVyeVxuICpcbiAqL1xuXG5jb25zdCBEYXRhYmFzZUZhY2FkZSA9IEphdmEudHlwZShcbiAgXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YWJhc2VGYWNhZGVcIixcbik7XG5cbi8qKlxuICogSW50ZXJmYWNlIHVzZWQgdG8gd3JhcCBjb21wbGV4IG9yIHNwZWNpZmljIHZhbHVlcyBmb3Igbm9uLW5hbWVkIHF1ZXJpZXMuXG4gKi9cbmV4cG9ydCB0eXBlIFR5cGVkUXVlcnlQYXJhbWV0ZXIgPSB7XG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHVua25vd247XG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbmluZyBhIHBhcmFtZXRlciBmb3IgYSBuYW1lZCBxdWVyeSAodXNpbmcgcGxhY2Vob2xkZXJzIGxpa2UgOnBhcmFtTmFtZSkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmFtZWRRdWVyeVBhcmFtZXRlciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuICByZWFkb25seSB2YWx1ZTogYW55O1xufVxuXG4vKipcbiAqIEludGVyZmFjZSB0byBzcGVjaWZ5IGZvcm1hdHRpbmcgb3B0aW9ucyBmb3IgdGhlIHF1ZXJ5IHJlc3VsdCBzZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWF0dGluZ1BhcmFtZXRlciB7XG4gIHJlYWRvbmx5IGRhdGVGb3JtYXQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBzdGF0aWMgbWV0aG9kcyBmb3IgZXhlY3V0aW5nIHBhcmFtZXRlcml6ZWQgU1FMIFNFTEVDVCBzdGF0ZW1lbnRzLlxuICovXG5leHBvcnQgY2xhc3MgUXVlcnkge1xuICAvKipcbiAgICogRXhlY3V0ZXMgYSBzdGFuZGFyZCBTUUwgcXVlcnkgd2l0aCBwb3NpdGlvbmFsIHBhcmFtZXRlcnMuIFBhcmFtZXRlcnMgYXJyYXkgc3VwcG9ydHMgcHJpbWl0aXZlcyBlLmcuIGBbMSwgJ0pvaG4nLCAzNC41Nl1gIG9yIG9iamVjdHMgaW4gZm9ybWF0IGVpdGhlciBgeyd0eXBlJzonW0RBVEFfVFlQRV0nLCAndmFsdWUnOltWQUxVRV19YCBvciBgeyduYW1lJzonW3N0cmluZ10nLCAndHlwZSc6J1tEQVRBX1RZUEVdJywgJ3ZhbHVlJzpbVkFMVUVdfWAgZS5nLiBgW3sndHlwZSc6J0NIQVInLCAndmFsdWUnOidJU0JOMTkyMDIzMjMzMjInfV1gIG9yIGBbeyduYW1lJzogJ29yZGVyX251bWJlcicsICd0eXBlJzonQ0hBUicsICd2YWx1ZSc6J0lTQk4xOTIwMjMyMzMyMid9XWBcbiAgICpcbiAgICogQHBhcmFtIHNxbCBUaGUgU1FMIHF1ZXJ5IHRvIGV4ZWN1dGUuXG4gICAqIEBwYXJhbSBwYXJhbWV0ZXJzIEFuIG9wdGlvbmFsIGFycmF5IG9mIHZhbHVlcyAocHJpbWl0aXZlcywgVHlwZWRRdWVyeVBhcmFtZXRlciBvciBOYW1lZFF1ZXJ5UGFyYW1ldGVyIG9iamVjdHMpIHRvIHJlcGxhY2UgJz8nIG9yIDpwYXJhbU5hbWUgcGxhY2Vob2xkZXJzLlxuICAgKiBAcGFyYW0gZGF0YXNvdXJjZU5hbWUgVGhlIG5hbWUgb2YgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gdG8gdXNlIChvcHRpb25hbCkuXG4gICAqIEBwYXJhbSBmb3JtYXR0aW5nIE9wdGlvbmFsIGZvcm1hdHRpbmcgcGFyYW1ldGVycyBmb3IgdGhlIHJlc3VsdCBzZXQgKGUuZy4sIGRhdGUgZm9ybWF0KS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVjb3JkcyByZXByZXNlbnRpbmcgdGhlIHF1ZXJ5IHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGV4ZWN1dGUoXG4gICAgc3FsOiBzdHJpbmcsXG4gICAgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkUXVlcnlQYXJhbWV0ZXIgfCBOYW1lZFF1ZXJ5UGFyYW1ldGVyKVtdIHwgc3RyaW5nLFxuICAgIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nLFxuICAgIGZvcm1hdHRpbmc/OiBGb3JtYXR0aW5nUGFyYW1ldGVyLFxuICApOiBhbnlbXSB7XG4gICAgY29uc3QgZm9ybWF0dGluZ0pzb24gPSBmb3JtYXR0aW5nID8gSlNPTi5zdHJpbmdpZnkoZm9ybWF0dGluZykgOiB1bmRlZmluZWQ7XG5cbiAgICBsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXG4gICAgaWYgKHBhcmFtZXRlcnMgPT0gbnVsbCkge1xuICAgICAgYXJyID0gW107XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcnNlZCkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnB1dCBwYXJhbWV0ZXIgc3RyaW5nIG11c3QgcmVwcmVzZW50IGEgSlNPTiBhcnJheVwiKTtcbiAgICAgICAgfVxuICAgICAgICBhcnIgPSBwYXJzZWQ7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJhbWV0ZXJzKSkge1xuICAgICAgYXJyID0gcGFyYW1ldGVycztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUGFyYW1ldGVycyBtdXN0IGJlIGVpdGhlciBhbiBhcnJheSBvciBhIEpTT04gc3RyaW5nXCIpO1xuICAgIH1cblxuICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG4gICAgICBjb25zdCByZXN1bHRzZXQgPSBEYXRhYmFzZUZhY2FkZS5xdWVyeShzcWwsIG51bGwsIGRhdGFzb3VyY2VOYW1lLCBmb3JtYXR0aW5nSnNvbik7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG4gICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJuYW1lXCIgaW4gZmlyc3QgJiYgXCJ0eXBlXCIgaW4gZmlyc3QpIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5TmFtZWQoXG4gICAgICAgIHNxbCxcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoYXJyKSxcbiAgICAgICAgZGF0YXNvdXJjZU5hbWVcbiAgICAgICk7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICAgIH1cblxuICAgIC8vIFR5cGVkUXVlcnlQYXJhbWV0ZXIgKGhhcyB0eXBlLCBubyBuYW1lKVxuICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJ0eXBlXCIgaW4gZmlyc3QgJiYgIShcIm5hbWVcIiBpbiBmaXJzdCkpIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5KFxuICAgICAgICBzcWwsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KGFyciksXG4gICAgICAgIGRhdGFzb3VyY2VOYW1lLFxuICAgICAgICBmb3JtYXR0aW5nSnNvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHNldCk7XG4gICAgfVxuXG4gICAgLy8gUHJpbWl0aXZlIGFycmF5XG4gICAgaWYgKFxuICAgICAgYXJyLmV2ZXJ5KFxuICAgICAgICAodikgPT5cbiAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIiB8fFxuICAgICAgICAgIHR5cGVvZiB2ID09PSBcIm51bWJlclwiIHx8XG4gICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG4gICAgICAgICAgdiBpbnN0YW5jZW9mIERhdGUgfHxcblx0XHQgIEFycmF5LmlzQXJyYXkodilcbiAgICAgIClcbiAgICApIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5KFxuICAgICAgICBzcWwsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KGFyciksXG4gICAgICAgIGRhdGFzb3VyY2VOYW1lLFxuICAgICAgICBmb3JtYXR0aW5nSnNvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHNldCk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgcGFyYW1ldGVyIGZvcm1hdDogXCIgKyBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKSk7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyBhIFNRTCBxdWVyeSB3aXRoIG5hbWVkIHBhcmFtZXRlcnMgKGUuZy4sIFwiOm5hbWVcIiwgXCI6aWRcIikuXG4gICAqXG4gICAqIEBwYXJhbSBzcWwgVGhlIFNRTCBxdWVyeSB0byBleGVjdXRlLlxuICAgKiBAcGFyYW0gcGFyYW1ldGVycyBBbiBvcHRpb25hbCBhcnJheSBvZiBOYW1lZFF1ZXJ5UGFyYW1ldGVyIG9iamVjdHMuXG4gICAqIEBwYXJhbSBkYXRhc291cmNlTmFtZSBUaGUgbmFtZSBvZiB0aGUgZGF0YWJhc2UgY29ubmVjdGlvbiB0byB1c2UgKG9wdGlvbmFsKS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVjb3JkcyByZXByZXNlbnRpbmcgdGhlIHF1ZXJ5IHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGV4ZWN1dGVOYW1lZChcbiAgICBzcWw6IHN0cmluZyxcbiAgICBwYXJhbWV0ZXJzPzogTmFtZWRRdWVyeVBhcmFtZXRlcltdLFxuICAgIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nLFxuICApOiBhbnlbXSB7XG4gICAgLy8gU2VyaWFsaXplIHRoZSBhcnJheSBvZiBuYW1lZCBwYXJhbWV0ZXJzIGZvciB0aGUgSmF2YSBmYWNhZGVcbiAgICBjb25zdCBwYXJhbXNKc29uID0gcGFyYW1ldGVycyA/IEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpIDogdW5kZWZpbmVkO1xuXG4gICAgLy8gVGhlIERhdGFiYXNlRmFjYWRlIHJldHVybnMgYSBKU09OIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgcmVzdWx0IHNldFxuICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5TmFtZWQoXG4gICAgICBzcWwsXG4gICAgICBwYXJhbXNKc29uLFxuICAgICAgZGF0YXNvdXJjZU5hbWUsXG4gICAgKTtcblxuICAgIC8vIFBhcnNlIHRoZSBKU09OIHN0cmluZyBiYWNrIGludG8gYSBKYXZhU2NyaXB0IGFycmF5IG9mIG9iamVjdHNcbiAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICB9XG59XG5cbi8vIEB0cy1pZ25vcmVcbmlmICh0eXBlb2YgbW9kdWxlICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgbW9kdWxlLmV4cG9ydHMgPSBRdWVyeTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBLE1BQU0saUJBQWlCLEtBQUs7QUFBQSxFQUMxQjtBQUNGO0FBNkJPLE1BQU0sTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVWpCLE9BQWMsUUFDWixLQUNBLFlBQ0EsZ0JBQ0EsWUFDTztBQUNQLFVBQU0saUJBQWlCLGFBQWEsS0FBSyxVQUFVLFVBQVUsSUFBSTtBQUVqRSxRQUFJLE1BQWEsQ0FBQztBQUVsQixRQUFJLGNBQWMsTUFBTTtBQUN0QixZQUFNLENBQUM7QUFBQSxJQUNULFdBQVcsT0FBTyxlQUFlLFVBQVU7QUFDekMsVUFBSTtBQUNGLGNBQU0sU0FBUyxLQUFLLE1BQU0sVUFBVTtBQUNwQyxZQUFJLENBQUMsTUFBTSxRQUFRLE1BQU0sR0FBRztBQUMxQixnQkFBTSxJQUFJLE1BQU0sb0RBQW9EO0FBQUEsUUFDdEU7QUFDQSxjQUFNO0FBQUEsTUFDUixTQUFTLEdBQUc7QUFDVixjQUFNLElBQUksTUFBTSw4QkFBOEIsQ0FBQztBQUFBLE1BQ2pEO0FBQUEsSUFDRixXQUFXLE1BQU0sUUFBUSxVQUFVLEdBQUc7QUFDcEMsWUFBTTtBQUFBLElBQ1IsT0FBTztBQUNMLFlBQU0sSUFBSSxNQUFNLHFEQUFxRDtBQUFBLElBQ3ZFO0FBRUEsUUFBSSxJQUFJLFdBQVcsR0FBRztBQUNwQixZQUFNLFlBQVksZUFBZSxNQUFNLEtBQUssTUFBTSxnQkFBZ0IsY0FBYztBQUNoRixhQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsSUFDN0I7QUFFQSxVQUFNLFFBQVEsSUFBSSxDQUFDO0FBR25CLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsVUFBVSxPQUFPO0FBQzVFLFlBQU0sWUFBWSxlQUFlO0FBQUEsUUFDL0I7QUFBQSxRQUNBLEtBQUssVUFBVSxHQUFHO0FBQUEsUUFDbEI7QUFBQSxNQUNGO0FBQ0EsYUFBTyxLQUFLLE1BQU0sU0FBUztBQUFBLElBQzdCO0FBR0EsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxFQUFFLFVBQVUsUUFBUTtBQUMvRSxZQUFNLFlBQVksZUFBZTtBQUFBLFFBQy9CO0FBQUEsUUFDQSxLQUFLLFVBQVUsR0FBRztBQUFBLFFBQ2xCO0FBQUEsUUFDQTtBQUFBLE1BQ0Y7QUFDQSxhQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsSUFDN0I7QUFHQSxRQUNFLElBQUk7QUFBQSxNQUNGLENBQUMsTUFDQyxPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sYUFDYixhQUFhLFFBQ25CLE1BQU0sUUFBUSxDQUFDO0FBQUEsSUFDYixHQUNBO0FBQ0EsWUFBTSxZQUFZLGVBQWU7QUFBQSxRQUMvQjtBQUFBLFFBQ0EsS0FBSyxVQUFVLEdBQUc7QUFBQSxRQUNsQjtBQUFBLFFBQ0E7QUFBQSxNQUNGO0FBQ0EsYUFBTyxLQUFLLE1BQU0sU0FBUztBQUFBLElBQzdCO0FBRUEsVUFBTSxJQUFJLE1BQU0sbUNBQW1DLEtBQUssVUFBVSxVQUFVLENBQUM7QUFBQSxFQUMvRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVdBLE9BQWMsYUFDWixLQUNBLFlBQ0EsZ0JBQ087QUFFUCxVQUFNLGFBQWEsYUFBYSxLQUFLLFVBQVUsVUFBVSxJQUFJO0FBRzdELFVBQU0sWUFBWSxlQUFlO0FBQUEsTUFDL0I7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLElBQ0Y7QUFHQSxXQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsRUFDN0I7QUFDRjtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFakMsU0FBTyxVQUFVO0FBQ25COyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -160,7 +160,7 @@ class Store {
160
160
  return JSON.parse(result);
161
161
  }
162
162
  if (arr.every(
163
- (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date
163
+ (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date || Array.isArray(v)
164
164
  )) {
165
165
  const result = DataStoreFacade.query(query, JSON.stringify(arr), limit, offset);
166
166
  return JSON.parse(result);
@@ -205,7 +205,7 @@ class Store {
205
205
  return JSON.parse(result);
206
206
  }
207
207
  if (arr.every(
208
- (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date
208
+ (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date || Array.isArray(v)
209
209
  )) {
210
210
  const result = DataStoreFacade.queryNative(query, JSON.stringify(arr), limit, offset);
211
211
  return JSON.parse(result);
@@ -241,4 +241,4 @@ class Store {
241
241
  if (typeof module !== "undefined") {
242
242
  module.exports = Store;
243
243
  }
244
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3N0b3JlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBEYXRhU3RvcmVGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YVN0b3JlRmFjYWRlXCIpO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGF2YWlsYWJsZSBjb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgcXVlcnkgY29uZGl0aW9ucy5cbiAqL1xuZXhwb3J0IGVudW0gT3BlcmF0b3Ige1xuXHRFUSA9IFwiPVwiLCAvLyBFcXVhbHNcblx0TkUgPSBcIjw+XCIsIC8vIE5vdCBFcXVhbHNcblx0R1QgPSBcIj5cIiwgLy8gR3JlYXRlciBUaGFuXG5cdExUID0gXCI8XCIsIC8vIExlc3MgVGhhblxuXHRHRSA9IFwiPj1cIiwgLy8gR3JlYXRlciBUaGFuIG9yIEVxdWFsc1xuXHRMRSA9IFwiPD1cIiwgLy8gTGVzcyBUaGFuIG9yIEVxdWFsc1xuXHRMSUtFID0gXCJMSUtFXCIsIC8vIFNRTCBMSUtFIG9wZXJhdG9yXG5cdEJFVFdFRU4gPSBcIkJFVFdFRU5cIiwgLy8gU1FMIEJFVFdFRU4gb3BlcmF0b3IgKHJlcXVpcmVzIHR3byB2YWx1ZXMpXG5cdElOID0gXCJJTlwiIC8vIFNRTCBJTiBvcGVyYXRvciAocmVxdWlyZXMgYSBMaXN0IG9yIEFycmF5IG9mIHZhbHVlcylcbn1cblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBkaXJlY3Rpb24gZm9yIHNvcnRpbmcuXG4gKi9cbmV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XG5cdEFTQyA9IFwiQVNDXCIsIC8vIEFzY2VuZGluZ1xuXHRERVNDID0gXCJERVNDXCIgLy8gRGVzY2VuZGluZ1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzaW5nbGUgY29uZGl0aW9uIGZvciBmaWx0ZXJpbmcgZGF0YS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25kaXRpb24ge1xuXHRwcm9wZXJ0eU5hbWU6IHN0cmluZyxcblx0b3BlcmF0b3I6IE9wZXJhdG9yLFxuXHR2YWx1ZTogYW55IHwgYW55W11cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2luZ2xlIHNvcnRpbmcgaW5zdHJ1Y3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU29ydCB7XG5cdHByb3BlcnR5TmFtZTogc3RyaW5nLFxuXHRkaXJlY3Rpb246IERpcmVjdGlvblxufVxuXG4vKipcbiAqIERlZmluZXMgb3B0aW9uYWwgcGFyYW1ldGVycyBmb3IgbGlzdCBhbmQgY291bnQgb3BlcmF0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcblx0Y29uZGl0aW9ucz86IENvbmRpdGlvbltdLFxuXHRzb3J0cz86IFNvcnRbXSxcblx0bGltaXQ/OiBudW1iZXIsXG5cdG9mZnNldD86IG51bWJlcixcblx0bGFuZ3VhZ2U/OiBzdHJpbmdcbn1cblxuaW1wb3J0IHsgVHlwZWRRdWVyeVBhcmFtZXRlciwgTmFtZWRRdWVyeVBhcmFtZXRlciB9IGZyb20gJy4vcXVlcnknO1xuXG4vKipcbiAqIEZhY2FkZSBjbGFzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgdW5kZXJseWluZyBEaXJpZ2libGUgRGF0YSBTdG9yZS5cbiAqIEFsbCBtZXRob2RzIHNlcmlhbGl6ZS9kZXNlcmlhbGl6ZSBKYXZhU2NyaXB0IG9iamVjdHMgdG8vZnJvbSBKU09OIHN0cmluZ3NcbiAqIGJlZm9yZSBpbnRlcmFjdGluZyB3aXRoIHRoZSBuYXRpdmUgSmF2YSBmYWNhZGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdG9yZSB7XG5cblx0LyoqXG5cdCAqIFNhdmVzIGEgbmV3IGVudHJ5IHRvIHRoZSBkYXRhIHN0b3JlLlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBlbnRyeSBUaGUgSmF2YVNjcmlwdCBvYmplY3QgdG8gc2F2ZS5cblx0ICogQHJldHVybnMgVGhlIElEIG9mIHRoZSBuZXdseSBjcmVhdGVkIGVudHJ5IChzdHJpbmcgb3IgbnVtYmVyKS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgc2F2ZShuYW1lOiBzdHJpbmcsIGVudHJ5OiBhbnkpOiBzdHJpbmcgfCBudW1iZXIge1xuXHRcdHJldHVybiBEYXRhU3RvcmVGYWNhZGUuc2F2ZShuYW1lLCBKU09OLnN0cmluZ2lmeShlbnRyeSkpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogSW5zZXJ0cyBhIG5ldyBlbnRyeSBvciB1cGRhdGVzIGFuIGV4aXN0aW5nIG9uZSBpZiB0aGUgSUQgaXMgcHJlc2VudC5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gZW50cnkgVGhlIEphdmFTY3JpcHQgb2JqZWN0IHRvIGluc2VydC91cGRhdGUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHVwc2VydChuYW1lOiBzdHJpbmcsIGVudHJ5OiBhbnkpOiB2b2lkIHtcblx0XHREYXRhU3RvcmVGYWNhZGUudXBzZXJ0KG5hbWUsIEpTT04uc3RyaW5naWZ5KGVudHJ5KSk7XG5cdH1cblx0XG5cdC8qKlxuXHQgKiBVcGRhdGVzIGFuIGV4aXN0aW5nIGVudHJ5LlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBlbnRyeSBUaGUgSmF2YVNjcmlwdCBvYmplY3Qgd2l0aCB0aGUgSUQgYW5kIHVwZGF0ZWQgZGF0YS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgdXBkYXRlKG5hbWU6IHN0cmluZywgZW50cnk6IGFueSk6IHZvaWQge1xuXHRcdERhdGFTdG9yZUZhY2FkZS51cGRhdGUobmFtZSwgSlNPTi5zdHJpbmdpZnkoZW50cnkpKTtcblx0fVxuXHRcblx0LyoqXG5cdCAqIExpc3RzIGVudHJpZXMgYmFzZWQgb24gb3B0aW9uYWwgZmlsdGVyaW5nLCBzb3J0aW5nLCBhbmQgcGFnaW5hdGlvbiBvcHRpb25zLlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbmFsIHtAbGluayBPcHRpb25zfSBmb3IgcXVlcnkgZXhlY3V0aW9uLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBKYXZhU2NyaXB0IG9iamVjdHMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGxpc3QobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT3B0aW9ucyk6IGFueVtdIHtcblx0XHRjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUubGlzdChuYW1lLCBvcHRpb25zID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgOiBudWxsKTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogQ291bnRzIHRoZSBudW1iZXIgb2YgZW50cmllcyBiYXNlZCBvbiBvcHRpb25hbCBmaWx0ZXJpbmcgb3B0aW9ucy5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25hbCB7QGxpbmsgT3B0aW9uc30gZm9yIHF1ZXJ5IGV4ZWN1dGlvbi5cblx0ICogQHJldHVybnMgVGhlIGNvdW50IG9mIG1hdGNoaW5nIGVudHJpZXMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGNvdW50KG5hbWU6IHN0cmluZywgb3B0aW9ucz86IE9wdGlvbnMpOiBudW1iZXIge1xuXHRcdGNvbnN0IG9wdGlvbnNTdHJpbmcgPSBvcHRpb25zID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgOiBudWxsO1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5jb3VudChuYW1lLCBvcHRpb25zU3RyaW5nKTtcblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyBhIHNpbmdsZSBlbnRyeSBieSBpdHMgSUQuXG5cdCAqIEBwYXJhbSBuYW1lIFRoZSBlbnRpdHkvdGFibGUgbmFtZS5cblx0ICogQHBhcmFtIGlkIFRoZSBJRCBvZiB0aGUgZW50cnkuXG5cdCAqIEByZXR1cm5zIFRoZSBlbnRyeSBvYmplY3QsIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldChuYW1lOiBzdHJpbmcsIGlkOiBhbnkpOiBhbnkgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5nZXQobmFtZSwgaWQpO1xuXHRcdC8vIEFzc3VtaW5nIHRoZSBuYXRpdmUgQVBJIHJldHVybnMgbnVsbC91bmRlZmluZWQgb3IgYW4gZW1wdHkgSlNPTiBzdHJpbmcgaWYgbm90IGZvdW5kLCBcblx0XHQvLyBvdGhlcndpc2UgSlNPTi5wYXJzZSBoYW5kbGVzIHRoZSBjb252ZXJzaW9uLlxuXHRcdGlmIChyZXN1bHQgPT09IG51bGwgfHwgcmVzdWx0ID09PSB1bmRlZmluZWQgfHwgcmVzdWx0ID09PSBcIlwiKSB7XG5cdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHRcdH1cblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9O1xuXG5cdC8qKlxuXHQgKiBEZWxldGVzIGFuIGVudHJ5IGJ5IGl0cyBJRC5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gaWQgVGhlIElEIG9mIHRoZSBlbnRyeSB0byByZW1vdmUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHJlbW92ZShuYW1lOiBzdHJpbmcsIGlkOiBhbnkpOiB2b2lkIHtcblx0XHREYXRhU3RvcmVGYWNhZGUuZGVsZXRlRW50cnkobmFtZSwgaWQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogRmluZHMgZW50cmllcyBtYXRjaGluZyBhbiBleGFtcGxlIG9iamVjdCAocXVlcnktYnktZXhhbXBsZSkuXG5cdCAqIEBwYXJhbSBuYW1lIFRoZSBlbnRpdHkvdGFibGUgbmFtZS5cblx0ICogQHBhcmFtIGV4YW1wbGUgQW4gb2JqZWN0IGNvbnRhaW5pbmcgcHJvcGVydGllcyB0byBtYXRjaC5cblx0ICogQHBhcmFtIGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuXHQgKiBAcGFyYW0gb2Zmc2V0IE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIG1hdGNoaW5nIEphdmFTY3JpcHQgb2JqZWN0cy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZmluZChuYW1lOiBzdHJpbmcsIGV4YW1wbGU6IGFueSwgbGltaXQ6IG51bWJlciA9IDEwMCwgb2Zmc2V0OiBudW1iZXIgPSAwKTogYW55W10ge1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5maW5kKG5hbWUsIEpTT04uc3RyaW5naWZ5KGV4YW1wbGUpLCBsaW1pdCwgb2Zmc2V0KTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogUXVlcmllcyBhbGwgZW50cmllcyBmb3IgYSBnaXZlbiBzY3JpcHQgd2l0aCBwYWdpbmF0aW9uLlxuXHQgKiBAcGFyYW0gcXVlcnkgVGhlIHF1ZXJ5IHNjcmlwdC5cblx0ICogQHBhcmFtIGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuXHQgKiBAcGFyYW0gb2Zmc2V0IE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIEphdmFTY3JpcHQgb2JqZWN0cy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgcXVlcnkocXVlcnk6IHN0cmluZywgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkUXVlcnlQYXJhbWV0ZXIgfCBOYW1lZFF1ZXJ5UGFyYW1ldGVyKVtdLCBsaW1pdDogbnVtYmVyID0gMTAwLCBvZmZzZXQ6IG51bWJlciA9IDApOiBhbnlbXSB7XG5cdFx0bGV0IGFycjogYW55W10gPSBbXTtcblx0ICAgIGlmIChwYXJhbWV0ZXJzID09IG51bGwpIHtcblx0ICAgICAgYXJyID0gW107XG5cdCAgICB9IGVsc2UgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzID09PSBcInN0cmluZ1wiKSB7XG5cdCAgICAgIHRyeSB7XG5cdCAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcblx0ICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGFyc2VkKSkge1xuXHQgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW5wdXQgcGFyYW1ldGVyIHN0cmluZyBtdXN0IHJlcHJlc2VudCBhIEpTT04gYXJyYXlcIik7XG5cdCAgICAgICAgfVxuXHQgICAgICAgIGFyciA9IHBhcnNlZDtcblx0ICAgICAgfSBjYXRjaCAoZSkge1xuXHQgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuXHQgICAgICB9XG5cdCAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVycykpIHtcblx0ICAgICAgYXJyID0gcGFyYW1ldGVycztcblx0ICAgIH0gZWxzZSB7XG5cdCAgICAgIHRocm93IG5ldyBFcnJvcihcIlBhcmFtZXRlcnMgbXVzdCBiZSBlaXRoZXIgYW4gYXJyYXkgb3IgYSBKU09OIHN0cmluZ1wiKTtcblx0ICAgIH1cblxuXHQgICAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeShxdWVyeSwgbnVsbCwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICBjb25zdCBmaXJzdCA9IGFyclswXTtcblxuXHQgICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5TmFtZWQocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gVHlwZWRRdWVyeVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnkocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gUHJpbWl0aXZlIGFycmF5XG5cdCAgICBpZiAoXG5cdCAgICAgIGFyci5ldmVyeShcblx0ICAgICAgICAodikgPT5cblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcInN0cmluZ1wiIHx8XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJudW1iZXJcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG5cdCAgICAgICAgICB2IGluc3RhbmNlb2YgRGF0ZVxuXHQgICAgICApXG5cdCAgICApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeShxdWVyeSwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbnN1cHBvcnRlZCBwYXJhbWV0ZXIgZm9ybWF0OiBcIiArIEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpKTtcblx0fVxuXHRcblx0LyoqXG5cdCAqIFF1ZXJpZXMgYWxsIGVudHJpZXMgZm9yIGEgZ2l2ZW4gZW50aXR5IG5hbWUgd2l0aG91dCBwYWdpbmF0aW9uLlxuXHQgKiBAcGFyYW0gcXVlcnkgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBhbGwgSmF2YVNjcmlwdCBvYmplY3RzLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBxdWVyeU5hdGl2ZShxdWVyeTogc3RyaW5nLCBwYXJhbWV0ZXJzPzogKHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBEYXRlIHwgVHlwZWRRdWVyeVBhcmFtZXRlciB8IE5hbWVkUXVlcnlQYXJhbWV0ZXIpW10sIGxpbWl0OiBudW1iZXIgPSAxMDAsIG9mZnNldDogbnVtYmVyID0gMCk6IGFueVtdIHtcblx0XHRsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXHRcdGlmIChwYXJhbWV0ZXJzID09IG51bGwpIHtcblx0ICAgICAgYXJyID0gW107XG5cdCAgICB9IGVsc2UgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzID09PSBcInN0cmluZ1wiKSB7XG5cdCAgICAgIHRyeSB7XG5cdCAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcblx0ICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGFyc2VkKSkge1xuXHQgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW5wdXQgcGFyYW1ldGVyIHN0cmluZyBtdXN0IHJlcHJlc2VudCBhIEpTT04gYXJyYXlcIik7XG5cdCAgICAgICAgfVxuXHQgICAgICAgIGFyciA9IHBhcnNlZDtcblx0ICAgICAgfSBjYXRjaCAoZSkge1xuXHQgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuXHQgICAgICB9XG5cdCAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVycykpIHtcblx0ICAgICAgYXJyID0gcGFyYW1ldGVycztcblx0ICAgIH0gZWxzZSB7XG5cdCAgICAgIHRocm93IG5ldyBFcnJvcihcIlBhcmFtZXRlcnMgbXVzdCBiZSBlaXRoZXIgYW4gYXJyYXkgb3IgYSBKU09OIHN0cmluZ1wiKTtcblx0ICAgIH1cblxuXHQgICAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeU5hdGl2ZShxdWVyeSwgbnVsbCwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICBjb25zdCBmaXJzdCA9IGFyclswXTtcblxuXHQgICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5TmF0aXZlTmFtZWQocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gVHlwZWRRdWVyeVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnlOYXRpdmUocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gUHJpbWl0aXZlIGFycmF5XG5cdCAgICBpZiAoXG5cdCAgICAgIGFyci5ldmVyeShcblx0ICAgICAgICAodikgPT5cblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcInN0cmluZ1wiIHx8XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJudW1iZXJcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG5cdCAgICAgICAgICB2IGluc3RhbmNlb2YgRGF0ZVxuXHQgICAgICApXG5cdCAgICApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeU5hdGl2ZShxdWVyeSwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbnN1cHBvcnRlZCBwYXJhbWV0ZXIgZm9ybWF0OiBcIiArIEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpKTtcblx0fVxuXHRcblx0Ly8gLS0tIE1ldGFkYXRhIEdldHRlcnMgLS0tXG5cblx0LyoqXG5cdCAqIEdldHMgdGhlIG5hbWUgb2YgdGhlIGVudGl0eSBhc3NvY2lhdGVkIHdpdGggdGhlIHN0b3JlIG5hbWUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldEVudGl0eU5hbWUobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gRGF0YVN0b3JlRmFjYWRlLmdldEVudGl0eU5hbWUobmFtZSk7XG5cdH1cblx0XG5cdC8qKlxuXHQgKiBHZXRzIHRoZSB1bmRlcmx5aW5nIGRhdGFiYXNlIHRhYmxlIG5hbWUgZm9yIHRoZSBlbnRpdHkuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldFRhYmxlTmFtZShuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdHJldHVybiBEYXRhU3RvcmVGYWNhZGUuZ2V0VGFibGVOYW1lKG5hbWUpO1xuXHR9XG5cdFx0XG5cdC8qKlxuXHQgKiBHZXRzIHRoZSBwcm9wZXJ0eSBuYW1lIHVzZWQgYXMgdGhlIElEIGZpZWxkIGluIHRoZSBlbnRpdHkgb2JqZWN0LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRJZE5hbWUobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gRGF0YVN0b3JlRmFjYWRlLmdldElkTmFtZShuYW1lKTtcblx0fVxuXHRcdFx0XG5cdC8qKlxuXHQgKiBHZXRzIHRoZSB1bmRlcmx5aW5nIGRhdGFiYXNlIGNvbHVtbiBuYW1lIHVzZWQgZm9yIHRoZSBJRCBmaWVsZC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZ2V0SWRDb2x1bW4obmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gRGF0YVN0b3JlRmFjYWRlLmdldElkQ29sdW1uKG5hbWUpO1xuXHR9XG5cbn1cblxuLy8gQHRzLWlnbm9yZVxuaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnKSB7XG5cdC8vIEB0cy1pZ25vcmVcblx0bW9kdWxlLmV4cG9ydHMgPSBTdG9yZTtcbn0iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsTUFBTSxrQkFBa0IsS0FBSyxLQUFLLHlEQUF5RDtBQUtwRixJQUFLLFdBQUwsa0JBQUtBLGNBQUw7QUFDTixFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFVBQU87QUFDUCxFQUFBQSxVQUFBLGFBQVU7QUFDVixFQUFBQSxVQUFBLFFBQUs7QUFUTSxTQUFBQTtBQUFBLEdBQUE7QUFlTCxJQUFLLFlBQUwsa0JBQUtDLGVBQUw7QUFDTixFQUFBQSxXQUFBLFNBQU07QUFDTixFQUFBQSxXQUFBLFVBQU87QUFGSSxT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QUEsSUFDRixXQUFXLE1BQU0sUUFBUSxVQUFVLEdBQUc7QUFDcEMsWUFBTTtBQUFBLElBQ1IsT0FBTztBQUNMLFlBQU0sSUFBSSxNQUFNLHFEQUFxRDtBQUFBLElBQ3ZFO0FBRUEsUUFBSSxJQUFJLFdBQVcsR0FBRztBQUN2QixZQUFNLFNBQVMsZ0JBQWdCLFlBQVksT0FBTyxNQUFNLE9BQU8sTUFBTTtBQUNyRSxhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFFQSxVQUFNLFFBQVEsSUFBSSxDQUFDO0FBR25CLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsVUFBVSxPQUFPO0FBQy9FLFlBQU0sU0FBUyxnQkFBZ0IsaUJBQWlCLE9BQU8sS0FBSyxVQUFVLEdBQUcsR0FBRyxPQUFPLE1BQU07QUFDekYsYUFBTyxLQUFLLE1BQU0sTUFBTTtBQUFBLElBQ3ZCO0FBR0EsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxFQUFFLFVBQVUsUUFBUTtBQUNsRixZQUFNLFNBQVMsZ0JBQWdCLFlBQVksT0FBTyxLQUFLLFVBQVUsR0FBRyxHQUFHLE9BQU8sTUFBTTtBQUNwRixhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFHQSxRQUNFLElBQUk7QUFBQSxNQUNGLENBQUMsTUFDQyxPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sYUFDYixhQUFhO0FBQUEsSUFDakIsR0FDQTtBQUNILFlBQU0sU0FBUyxnQkFBZ0IsWUFBWSxPQUFPLEtBQUssVUFBVSxHQUFHLEdBQUcsT0FBTyxNQUFNO0FBQ3BGLGFBQU8sS0FBSyxNQUFNLE1BQU07QUFBQSxJQUN2QjtBQUVBLFVBQU0sSUFBSSxNQUFNLG1DQUFtQyxLQUFLLFVBQVUsVUFBVSxDQUFDO0FBQUEsRUFDakY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsT0FBYyxjQUFjLE1BQXNCO0FBQ2pELFdBQU8sZ0JBQWdCLGNBQWMsSUFBSTtBQUFBLEVBQzFDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQSxPQUFjLGFBQWEsTUFBc0I7QUFDaEQsV0FBTyxnQkFBZ0IsYUFBYSxJQUFJO0FBQUEsRUFDekM7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBLE9BQWMsVUFBVSxNQUFzQjtBQUM3QyxXQUFPLGdCQUFnQixVQUFVLElBQUk7QUFBQSxFQUN0QztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0EsT0FBYyxZQUFZLE1BQXNCO0FBQy9DLFdBQU8sZ0JBQWdCLFlBQVksSUFBSTtBQUFBLEVBQ3hDO0FBRUQ7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWxDLFNBQU8sVUFBVTtBQUNsQjsiLAogICJuYW1lcyI6IFsiT3BlcmF0b3IiLCAiRGlyZWN0aW9uIl0KfQo=
244
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3N0b3JlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBEYXRhU3RvcmVGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YVN0b3JlRmFjYWRlXCIpO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGF2YWlsYWJsZSBjb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgcXVlcnkgY29uZGl0aW9ucy5cbiAqL1xuZXhwb3J0IGVudW0gT3BlcmF0b3Ige1xuXHRFUSA9IFwiPVwiLCAvLyBFcXVhbHNcblx0TkUgPSBcIjw+XCIsIC8vIE5vdCBFcXVhbHNcblx0R1QgPSBcIj5cIiwgLy8gR3JlYXRlciBUaGFuXG5cdExUID0gXCI8XCIsIC8vIExlc3MgVGhhblxuXHRHRSA9IFwiPj1cIiwgLy8gR3JlYXRlciBUaGFuIG9yIEVxdWFsc1xuXHRMRSA9IFwiPD1cIiwgLy8gTGVzcyBUaGFuIG9yIEVxdWFsc1xuXHRMSUtFID0gXCJMSUtFXCIsIC8vIFNRTCBMSUtFIG9wZXJhdG9yXG5cdEJFVFdFRU4gPSBcIkJFVFdFRU5cIiwgLy8gU1FMIEJFVFdFRU4gb3BlcmF0b3IgKHJlcXVpcmVzIHR3byB2YWx1ZXMpXG5cdElOID0gXCJJTlwiIC8vIFNRTCBJTiBvcGVyYXRvciAocmVxdWlyZXMgYSBMaXN0IG9yIEFycmF5IG9mIHZhbHVlcylcbn1cblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBkaXJlY3Rpb24gZm9yIHNvcnRpbmcuXG4gKi9cbmV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XG5cdEFTQyA9IFwiQVNDXCIsIC8vIEFzY2VuZGluZ1xuXHRERVNDID0gXCJERVNDXCIgLy8gRGVzY2VuZGluZ1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzaW5nbGUgY29uZGl0aW9uIGZvciBmaWx0ZXJpbmcgZGF0YS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25kaXRpb24ge1xuXHRwcm9wZXJ0eU5hbWU6IHN0cmluZyxcblx0b3BlcmF0b3I6IE9wZXJhdG9yLFxuXHR2YWx1ZTogYW55IHwgYW55W11cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2luZ2xlIHNvcnRpbmcgaW5zdHJ1Y3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU29ydCB7XG5cdHByb3BlcnR5TmFtZTogc3RyaW5nLFxuXHRkaXJlY3Rpb246IERpcmVjdGlvblxufVxuXG4vKipcbiAqIERlZmluZXMgb3B0aW9uYWwgcGFyYW1ldGVycyBmb3IgbGlzdCBhbmQgY291bnQgb3BlcmF0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcblx0Y29uZGl0aW9ucz86IENvbmRpdGlvbltdLFxuXHRzb3J0cz86IFNvcnRbXSxcblx0bGltaXQ/OiBudW1iZXIsXG5cdG9mZnNldD86IG51bWJlcixcblx0bGFuZ3VhZ2U/OiBzdHJpbmdcbn1cblxuaW1wb3J0IHsgVHlwZWRRdWVyeVBhcmFtZXRlciwgTmFtZWRRdWVyeVBhcmFtZXRlciB9IGZyb20gJy4vcXVlcnknO1xuXG4vKipcbiAqIEZhY2FkZSBjbGFzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgdW5kZXJseWluZyBEaXJpZ2libGUgRGF0YSBTdG9yZS5cbiAqIEFsbCBtZXRob2RzIHNlcmlhbGl6ZS9kZXNlcmlhbGl6ZSBKYXZhU2NyaXB0IG9iamVjdHMgdG8vZnJvbSBKU09OIHN0cmluZ3NcbiAqIGJlZm9yZSBpbnRlcmFjdGluZyB3aXRoIHRoZSBuYXRpdmUgSmF2YSBmYWNhZGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdG9yZSB7XG5cblx0LyoqXG5cdCAqIFNhdmVzIGEgbmV3IGVudHJ5IHRvIHRoZSBkYXRhIHN0b3JlLlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBlbnRyeSBUaGUgSmF2YVNjcmlwdCBvYmplY3QgdG8gc2F2ZS5cblx0ICogQHJldHVybnMgVGhlIElEIG9mIHRoZSBuZXdseSBjcmVhdGVkIGVudHJ5IChzdHJpbmcgb3IgbnVtYmVyKS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgc2F2ZShuYW1lOiBzdHJpbmcsIGVudHJ5OiBhbnkpOiBzdHJpbmcgfCBudW1iZXIge1xuXHRcdHJldHVybiBEYXRhU3RvcmVGYWNhZGUuc2F2ZShuYW1lLCBKU09OLnN0cmluZ2lmeShlbnRyeSkpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogSW5zZXJ0cyBhIG5ldyBlbnRyeSBvciB1cGRhdGVzIGFuIGV4aXN0aW5nIG9uZSBpZiB0aGUgSUQgaXMgcHJlc2VudC5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gZW50cnkgVGhlIEphdmFTY3JpcHQgb2JqZWN0IHRvIGluc2VydC91cGRhdGUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHVwc2VydChuYW1lOiBzdHJpbmcsIGVudHJ5OiBhbnkpOiB2b2lkIHtcblx0XHREYXRhU3RvcmVGYWNhZGUudXBzZXJ0KG5hbWUsIEpTT04uc3RyaW5naWZ5KGVudHJ5KSk7XG5cdH1cblx0XG5cdC8qKlxuXHQgKiBVcGRhdGVzIGFuIGV4aXN0aW5nIGVudHJ5LlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBlbnRyeSBUaGUgSmF2YVNjcmlwdCBvYmplY3Qgd2l0aCB0aGUgSUQgYW5kIHVwZGF0ZWQgZGF0YS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgdXBkYXRlKG5hbWU6IHN0cmluZywgZW50cnk6IGFueSk6IHZvaWQge1xuXHRcdERhdGFTdG9yZUZhY2FkZS51cGRhdGUobmFtZSwgSlNPTi5zdHJpbmdpZnkoZW50cnkpKTtcblx0fVxuXHRcblx0LyoqXG5cdCAqIExpc3RzIGVudHJpZXMgYmFzZWQgb24gb3B0aW9uYWwgZmlsdGVyaW5nLCBzb3J0aW5nLCBhbmQgcGFnaW5hdGlvbiBvcHRpb25zLlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbmFsIHtAbGluayBPcHRpb25zfSBmb3IgcXVlcnkgZXhlY3V0aW9uLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBKYXZhU2NyaXB0IG9iamVjdHMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGxpc3QobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT3B0aW9ucyk6IGFueVtdIHtcblx0XHRjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUubGlzdChuYW1lLCBvcHRpb25zID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgOiBudWxsKTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogQ291bnRzIHRoZSBudW1iZXIgb2YgZW50cmllcyBiYXNlZCBvbiBvcHRpb25hbCBmaWx0ZXJpbmcgb3B0aW9ucy5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25hbCB7QGxpbmsgT3B0aW9uc30gZm9yIHF1ZXJ5IGV4ZWN1dGlvbi5cblx0ICogQHJldHVybnMgVGhlIGNvdW50IG9mIG1hdGNoaW5nIGVudHJpZXMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGNvdW50KG5hbWU6IHN0cmluZywgb3B0aW9ucz86IE9wdGlvbnMpOiBudW1iZXIge1xuXHRcdGNvbnN0IG9wdGlvbnNTdHJpbmcgPSBvcHRpb25zID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgOiBudWxsO1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5jb3VudChuYW1lLCBvcHRpb25zU3RyaW5nKTtcblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyBhIHNpbmdsZSBlbnRyeSBieSBpdHMgSUQuXG5cdCAqIEBwYXJhbSBuYW1lIFRoZSBlbnRpdHkvdGFibGUgbmFtZS5cblx0ICogQHBhcmFtIGlkIFRoZSBJRCBvZiB0aGUgZW50cnkuXG5cdCAqIEByZXR1cm5zIFRoZSBlbnRyeSBvYmplY3QsIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldChuYW1lOiBzdHJpbmcsIGlkOiBhbnkpOiBhbnkgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5nZXQobmFtZSwgaWQpO1xuXHRcdC8vIEFzc3VtaW5nIHRoZSBuYXRpdmUgQVBJIHJldHVybnMgbnVsbC91bmRlZmluZWQgb3IgYW4gZW1wdHkgSlNPTiBzdHJpbmcgaWYgbm90IGZvdW5kLCBcblx0XHQvLyBvdGhlcndpc2UgSlNPTi5wYXJzZSBoYW5kbGVzIHRoZSBjb252ZXJzaW9uLlxuXHRcdGlmIChyZXN1bHQgPT09IG51bGwgfHwgcmVzdWx0ID09PSB1bmRlZmluZWQgfHwgcmVzdWx0ID09PSBcIlwiKSB7XG5cdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHRcdH1cblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9O1xuXG5cdC8qKlxuXHQgKiBEZWxldGVzIGFuIGVudHJ5IGJ5IGl0cyBJRC5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gaWQgVGhlIElEIG9mIHRoZSBlbnRyeSB0byByZW1vdmUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHJlbW92ZShuYW1lOiBzdHJpbmcsIGlkOiBhbnkpOiB2b2lkIHtcblx0XHREYXRhU3RvcmVGYWNhZGUuZGVsZXRlRW50cnkobmFtZSwgaWQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogRmluZHMgZW50cmllcyBtYXRjaGluZyBhbiBleGFtcGxlIG9iamVjdCAocXVlcnktYnktZXhhbXBsZSkuXG5cdCAqIEBwYXJhbSBuYW1lIFRoZSBlbnRpdHkvdGFibGUgbmFtZS5cblx0ICogQHBhcmFtIGV4YW1wbGUgQW4gb2JqZWN0IGNvbnRhaW5pbmcgcHJvcGVydGllcyB0byBtYXRjaC5cblx0ICogQHBhcmFtIGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuXHQgKiBAcGFyYW0gb2Zmc2V0IE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIG1hdGNoaW5nIEphdmFTY3JpcHQgb2JqZWN0cy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZmluZChuYW1lOiBzdHJpbmcsIGV4YW1wbGU6IGFueSwgbGltaXQ6IG51bWJlciA9IDEwMCwgb2Zmc2V0OiBudW1iZXIgPSAwKTogYW55W10ge1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5maW5kKG5hbWUsIEpTT04uc3RyaW5naWZ5KGV4YW1wbGUpLCBsaW1pdCwgb2Zmc2V0KTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogUXVlcmllcyBhbGwgZW50cmllcyBmb3IgYSBnaXZlbiBzY3JpcHQgd2l0aCBwYWdpbmF0aW9uLlxuXHQgKiBAcGFyYW0gcXVlcnkgVGhlIHF1ZXJ5IHNjcmlwdC5cblx0ICogQHBhcmFtIGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuXHQgKiBAcGFyYW0gb2Zmc2V0IE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIEphdmFTY3JpcHQgb2JqZWN0cy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgcXVlcnkocXVlcnk6IHN0cmluZywgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkUXVlcnlQYXJhbWV0ZXIgfCBOYW1lZFF1ZXJ5UGFyYW1ldGVyKVtdLCBsaW1pdDogbnVtYmVyID0gMTAwLCBvZmZzZXQ6IG51bWJlciA9IDApOiBhbnlbXSB7XG5cdFx0bGV0IGFycjogYW55W10gPSBbXTtcblx0ICAgIGlmIChwYXJhbWV0ZXJzID09IG51bGwpIHtcblx0ICAgICAgYXJyID0gW107XG5cdCAgICB9IGVsc2UgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzID09PSBcInN0cmluZ1wiKSB7XG5cdCAgICAgIHRyeSB7XG5cdCAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcblx0ICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGFyc2VkKSkge1xuXHQgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW5wdXQgcGFyYW1ldGVyIHN0cmluZyBtdXN0IHJlcHJlc2VudCBhIEpTT04gYXJyYXlcIik7XG5cdCAgICAgICAgfVxuXHQgICAgICAgIGFyciA9IHBhcnNlZDtcblx0ICAgICAgfSBjYXRjaCAoZSkge1xuXHQgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuXHQgICAgICB9XG5cdCAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVycykpIHtcblx0ICAgICAgYXJyID0gcGFyYW1ldGVycztcblx0ICAgIH0gZWxzZSB7XG5cdCAgICAgIHRocm93IG5ldyBFcnJvcihcIlBhcmFtZXRlcnMgbXVzdCBiZSBlaXRoZXIgYW4gYXJyYXkgb3IgYSBKU09OIHN0cmluZ1wiKTtcblx0ICAgIH1cblxuXHQgICAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeShxdWVyeSwgbnVsbCwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICBjb25zdCBmaXJzdCA9IGFyclswXTtcblxuXHQgICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5TmFtZWQocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gVHlwZWRRdWVyeVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnkocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gUHJpbWl0aXZlIGFycmF5XG5cdCAgICBpZiAoXG5cdCAgICAgIGFyci5ldmVyeShcblx0ICAgICAgICAodikgPT5cblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcInN0cmluZ1wiIHx8XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJudW1iZXJcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG5cdCAgICAgICAgICB2IGluc3RhbmNlb2YgRGF0ZVx0fHxcblx0XHQgIFx0ICBBcnJheS5pc0FycmF5KHYpXG5cdCAgICAgIClcblx0ICAgICkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5KHF1ZXJ5LCBKU09OLnN0cmluZ2lmeShhcnIpLCBsaW1pdCwgb2Zmc2V0KTtcblx0XHQgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdCk7XG5cdCAgICB9XG5cblx0ICAgIHRocm93IG5ldyBFcnJvcihcIlVuc3VwcG9ydGVkIHBhcmFtZXRlciBmb3JtYXQ6IFwiICsgSlNPTi5zdHJpbmdpZnkocGFyYW1ldGVycykpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogUXVlcmllcyBhbGwgZW50cmllcyBmb3IgYSBnaXZlbiBlbnRpdHkgbmFtZSB3aXRob3V0IHBhZ2luYXRpb24uXG5cdCAqIEBwYXJhbSBxdWVyeSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIGFsbCBKYXZhU2NyaXB0IG9iamVjdHMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHF1ZXJ5TmF0aXZlKHF1ZXJ5OiBzdHJpbmcsIHBhcmFtZXRlcnM/OiAoc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IERhdGUgfCBUeXBlZFF1ZXJ5UGFyYW1ldGVyIHwgTmFtZWRRdWVyeVBhcmFtZXRlcilbXSwgbGltaXQ6IG51bWJlciA9IDEwMCwgb2Zmc2V0OiBudW1iZXIgPSAwKTogYW55W10ge1xuXHRcdGxldCBhcnI6IGFueVtdID0gW107XG5cdFx0aWYgKHBhcmFtZXRlcnMgPT0gbnVsbCkge1xuXHQgICAgICBhcnIgPSBbXTtcblx0ICAgIH0gZWxzZSBpZiAodHlwZW9mIHBhcmFtZXRlcnMgPT09IFwic3RyaW5nXCIpIHtcblx0ICAgICAgdHJ5IHtcblx0ICAgICAgICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKHBhcmFtZXRlcnMpO1xuXHQgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShwYXJzZWQpKSB7XG5cdCAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnB1dCBwYXJhbWV0ZXIgc3RyaW5nIG11c3QgcmVwcmVzZW50IGEgSlNPTiBhcnJheVwiKTtcblx0ICAgICAgICB9XG5cdCAgICAgICAgYXJyID0gcGFyc2VkO1xuXHQgICAgICB9IGNhdGNoIChlKSB7XG5cdCAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBKU09OIHBhcmFtZXRlcnM6IFwiICsgZSk7XG5cdCAgICAgIH1cblx0ICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJhbWV0ZXJzKSkge1xuXHQgICAgICBhcnIgPSBwYXJhbWV0ZXJzO1xuXHQgICAgfSBlbHNlIHtcblx0ICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUGFyYW1ldGVycyBtdXN0IGJlIGVpdGhlciBhbiBhcnJheSBvciBhIEpTT04gc3RyaW5nXCIpO1xuXHQgICAgfVxuXG5cdCAgICBpZiAoYXJyLmxlbmd0aCA9PT0gMCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5TmF0aXZlKHF1ZXJ5LCBudWxsLCBsaW1pdCwgb2Zmc2V0KTtcblx0XHQgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdCk7XG5cdCAgICB9XG5cblx0ICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG5cdCAgICAvLyBOYW1lZFF1ZXJ5UGFyYW1ldGVyIChoYXMgbmFtZSArIHR5cGUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwibmFtZVwiIGluIGZpcnN0ICYmIFwidHlwZVwiIGluIGZpcnN0KSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnlOYXRpdmVOYW1lZChxdWVyeSwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICAvLyBUeXBlZFF1ZXJ5UGFyYW1ldGVyIChoYXMgdHlwZSwgbm8gbmFtZSlcblx0ICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJ0eXBlXCIgaW4gZmlyc3QgJiYgIShcIm5hbWVcIiBpbiBmaXJzdCkpIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeU5hdGl2ZShxdWVyeSwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICAvLyBQcmltaXRpdmUgYXJyYXlcblx0ICAgIGlmIChcblx0ICAgICAgYXJyLmV2ZXJ5KFxuXHQgICAgICAgICh2KSA9PlxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwic3RyaW5nXCIgfHxcblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcIm51bWJlclwiIHx8XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJib29sZWFuXCIgfHxcblx0ICAgICAgICAgIHYgaW5zdGFuY2VvZiBEYXRlIHx8XG5cdFx0XHQgIEFycmF5LmlzQXJyYXkodilcblx0ICAgICAgKVxuXHQgICAgKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnlOYXRpdmUocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgcGFyYW1ldGVyIGZvcm1hdDogXCIgKyBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKSk7XG5cdH1cblx0XG5cdC8vIC0tLSBNZXRhZGF0YSBHZXR0ZXJzIC0tLVxuXG5cdC8qKlxuXHQgKiBHZXRzIHRoZSBuYW1lIG9mIHRoZSBlbnRpdHkgYXNzb2NpYXRlZCB3aXRoIHRoZSBzdG9yZSBuYW1lLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRFbnRpdHlOYW1lKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIERhdGFTdG9yZUZhY2FkZS5nZXRFbnRpdHlOYW1lKG5hbWUpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogR2V0cyB0aGUgdW5kZXJseWluZyBkYXRhYmFzZSB0YWJsZSBuYW1lIGZvciB0aGUgZW50aXR5LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRUYWJsZU5hbWUobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gRGF0YVN0b3JlRmFjYWRlLmdldFRhYmxlTmFtZShuYW1lKTtcblx0fVxuXHRcdFxuXHQvKipcblx0ICogR2V0cyB0aGUgcHJvcGVydHkgbmFtZSB1c2VkIGFzIHRoZSBJRCBmaWVsZCBpbiB0aGUgZW50aXR5IG9iamVjdC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZ2V0SWROYW1lKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIERhdGFTdG9yZUZhY2FkZS5nZXRJZE5hbWUobmFtZSk7XG5cdH1cblx0XHRcdFxuXHQvKipcblx0ICogR2V0cyB0aGUgdW5kZXJseWluZyBkYXRhYmFzZSBjb2x1bW4gbmFtZSB1c2VkIGZvciB0aGUgSUQgZmllbGQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldElkQ29sdW1uKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIERhdGFTdG9yZUZhY2FkZS5nZXRJZENvbHVtbihuYW1lKTtcblx0fVxuXG59XG5cbi8vIEB0cy1pZ25vcmVcbmlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJykge1xuXHQvLyBAdHMtaWdub3JlXG5cdG1vZHVsZS5leHBvcnRzID0gU3RvcmU7XG59Il0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLE1BQU0sa0JBQWtCLEtBQUssS0FBSyx5REFBeUQ7QUFLcEYsSUFBSyxXQUFMLGtCQUFLQSxjQUFMO0FBQ04sRUFBQUEsVUFBQSxRQUFLO0FBQ0wsRUFBQUEsVUFBQSxRQUFLO0FBQ0wsRUFBQUEsVUFBQSxRQUFLO0FBQ0wsRUFBQUEsVUFBQSxRQUFLO0FBQ0wsRUFBQUEsVUFBQSxRQUFLO0FBQ0wsRUFBQUEsVUFBQSxRQUFLO0FBQ0wsRUFBQUEsVUFBQSxVQUFPO0FBQ1AsRUFBQUEsVUFBQSxhQUFVO0FBQ1YsRUFBQUEsVUFBQSxRQUFLO0FBVE0sU0FBQUE7QUFBQSxHQUFBO0FBZUwsSUFBSyxZQUFM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UUFDdEU7QUFDQSxjQUFNO0FBQUEsTUFDUixTQUFTLEdBQUc7QUFDVixjQUFNLElBQUksTUFBTSw4QkFBOEIsQ0FBQztBQUFBLE1BQ2pEO0FBQUEsSUFDRixXQUFXLE1BQU0sUUFBUSxVQUFVLEdBQUc7QUFDcEMsWUFBTTtBQUFBLElBQ1IsT0FBTztBQUNMLFlBQU0sSUFBSSxNQUFNLHFEQUFxRDtBQUFBLElBQ3ZFO0FBRUEsUUFBSSxJQUFJLFdBQVcsR0FBRztBQUN2QixZQUFNLFNBQVMsZ0JBQWdCLFlBQVksT0FBTyxNQUFNLE9BQU8sTUFBTTtBQUNyRSxhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFFQSxVQUFNLFFBQVEsSUFBSSxDQUFDO0FBR25CLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsVUFBVSxPQUFPO0FBQy9FLFlBQU0sU0FBUyxnQkFBZ0IsaUJBQWlCLE9BQU8sS0FBSyxVQUFVLEdBQUcsR0FBRyxPQUFPLE1BQU07QUFDekYsYUFBTyxLQUFLLE1BQU0sTUFBTTtBQUFBLElBQ3ZCO0FBR0EsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxFQUFFLFVBQVUsUUFBUTtBQUNsRixZQUFNLFNBQVMsZ0JBQWdCLFlBQVksT0FBTyxLQUFLLFVBQVUsR0FBRyxHQUFHLE9BQU8sTUFBTTtBQUNwRixhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFHQSxRQUNFLElBQUk7QUFBQSxNQUNGLENBQUMsTUFDQyxPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sYUFDYixhQUFhLFFBQ25CLE1BQU0sUUFBUSxDQUFDO0FBQUEsSUFDYixHQUNBO0FBQ0gsWUFBTSxTQUFTLGdCQUFnQixZQUFZLE9BQU8sS0FBSyxVQUFVLEdBQUcsR0FBRyxPQUFPLE1BQU07QUFDcEYsYUFBTyxLQUFLLE1BQU0sTUFBTTtBQUFBLElBQ3ZCO0FBRUEsVUFBTSxJQUFJLE1BQU0sbUNBQW1DLEtBQUssVUFBVSxVQUFVLENBQUM7QUFBQSxFQUNqRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLGNBQWMsTUFBc0I7QUFDakQsV0FBTyxnQkFBZ0IsY0FBYyxJQUFJO0FBQUEsRUFDMUM7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBLE9BQWMsYUFBYSxNQUFzQjtBQUNoRCxXQUFPLGdCQUFnQixhQUFhLElBQUk7QUFBQSxFQUN6QztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0EsT0FBYyxVQUFVLE1BQXNCO0FBQzdDLFdBQU8sZ0JBQWdCLFVBQVUsSUFBSTtBQUFBLEVBQ3RDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQSxPQUFjLFlBQVksTUFBc0I7QUFDL0MsV0FBTyxnQkFBZ0IsWUFBWSxJQUFJO0FBQUEsRUFDeEM7QUFFRDtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFbEMsU0FBTyxVQUFVO0FBQ2xCOyIsCiAgIm5hbWVzIjogWyJPcGVyYXRvciIsICJEaXJlY3Rpb24iXQp9Cg==
@@ -63,7 +63,7 @@ class Update {
63
63
  return result;
64
64
  }
65
65
  if (arr.every(
66
- (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date
66
+ (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date || Array.isArray(v)
67
67
  )) {
68
68
  const result = DatabaseFacade.update(sql, JSON.stringify(arr), datasourceName);
69
69
  return result;
@@ -74,4 +74,4 @@ class Update {
74
74
  if (typeof module !== "undefined") {
75
75
  module.exports = Update;
76
76
  }
77
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3VwZGF0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgRGF0YWJhc2VGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YWJhc2VGYWNhZGVcIik7XG5cbi8qKlxuICogSW50ZXJmYWNlIHVzZWQgZm9yIGNvbXBsZXggcGFyYW1ldGVyIHR5cGVzIGlmIG5lZWRlZCwgb3RoZXJ3aXNlIHByaW1pdGl2ZSB0eXBlcyBhcmUgdXNlZCBkaXJlY3RseS5cbiAqL1xuZXhwb3J0IHR5cGUgVHlwZWRVcGRhdGVQYXJhbWV0ZXIgPSB7XG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHVua25vd247XG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbmluZyBhIHBhcmFtZXRlciBmb3IgYSBuYW1lZCB1cGRhdGUgcXVlcnkgKHVzaW5nIHBsYWNlaG9sZGVycyBsaWtlIDpwYXJhbU5hbWUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hbWVkVXBkYXRlUGFyYW1ldGVyIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZhbHVlOiBhbnk7XG59XG5cblxuLyoqXG4gKiBGYWNhZGUgY2xhc3MgZm9yIGV4ZWN1dGluZyBTUUwgVVBEQVRFLCBJTlNFUlQsIGFuZCBERUxFVEUgc3RhdGVtZW50cy5cbiAqIFBhcmFtZXRlcnMgYXJyYXkgc3VwcG9ydHMgcHJpbWl0aXZlcyBlLmcuIGBbMSwgJ0pvaG4nLCAzNC41Nl1gIG9yIG9iamVjdHMgaW4gZm9ybWF0IGVpdGhlciBgeyd0eXBlJzonW0RBVEFfVFlQRV0nLCAndmFsdWUnOltWQUxVRV19YCBvciBgeyduYW1lJzonW3N0cmluZ10nLCAndHlwZSc6J1tEQVRBX1RZUEVdJywgJ3ZhbHVlJzpbVkFMVUVdfWAgZS5nLiBgW3sndHlwZSc6J0NIQVInLCAndmFsdWUnOidJU0JOMTkyMDIzMjMzMjInfV1gIG9yIGBbeyduYW1lJzogJ29yZGVyX251bWJlcicsICd0eXBlJzonQ0hBUicsICd2YWx1ZSc6J0lTQk4xOTIwMjMyMzMyMid9XWBcbiAqL1xuZXhwb3J0IGNsYXNzIFVwZGF0ZSB7XG5cblx0LyoqXG5cdCAqIEV4ZWN1dGVzIGEgcGFyYW1ldGVyaXplZCBTUUwgdXBkYXRlIHN0YXRlbWVudCAoSU5TRVJULCBVUERBVEUsIG9yIERFTEVURSkuXG5cdCAqXG5cdCAqIEBwYXJhbSBzcWwgVGhlIFNRTCBxdWVyeSB0byBleGVjdXRlLlxuXHQgKiBAcGFyYW0gcGFyYW1ldGVycyBBbiBvcHRpb25hbCBhcnJheSBvZiB2YWx1ZXMgKHByaW1pdGl2ZXMsIFR5cGVkUXVlcnlQYXJhbWV0ZXIgb3IgTmFtZWRRdWVyeVBhcmFtZXRlciBvYmplY3RzKSB0byByZXBsYWNlICc/JyBvciA6cGFyYW1OYW1lIHBsYWNlaG9sZGVycy5cblx0ICogQHBhcmFtIGRhdGFzb3VyY2VOYW1lIFRoZSBuYW1lIG9mIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uIHRvIHVzZSAob3B0aW9uYWwpLlxuXHQgKiBAcmV0dXJucyBUaGUgbnVtYmVyIG9mIHJvd3MgYWZmZWN0ZWQgYnkgdGhlIHN0YXRlbWVudC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZXhlY3V0ZShzcWw6IHN0cmluZywgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkVXBkYXRlUGFyYW1ldGVyIHwgTmFtZWRVcGRhdGVQYXJhbWV0ZXIpW10sIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nKTogbnVtYmVyIHtcblx0XHRsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXG5cdCAgICBpZiAocGFyYW1ldGVycyA9PSBudWxsKSB7XG5cdCAgICAgIGFyciA9IFtdO1xuXHQgICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gXCJzdHJpbmdcIikge1xuXHQgICAgICB0cnkge1xuXHQgICAgICAgIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UocGFyYW1ldGVycyk7XG5cdCAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcnNlZCkpIHtcblx0ICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIklucHV0IHBhcmFtZXRlciBzdHJpbmcgbXVzdCByZXByZXNlbnQgYSBKU09OIGFycmF5XCIpO1xuXHQgICAgICAgIH1cblx0ICAgICAgICBhcnIgPSBwYXJzZWQ7XG5cdCAgICAgIH0gY2F0Y2ggKGUpIHtcblx0ICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIEpTT04gcGFyYW1ldGVyczogXCIgKyBlKTtcblx0ICAgICAgfVxuXHQgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnMpKSB7XG5cdCAgICAgIGFyciA9IHBhcmFtZXRlcnM7XG5cdCAgICB9IGVsc2Uge1xuXHQgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJQYXJhbWV0ZXJzIG11c3QgYmUgZWl0aGVyIGFuIGFycmF5IG9yIGEgSlNPTiBzdHJpbmdcIik7XG5cdCAgICB9XG5cblx0ICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBudWxsLCBkYXRhc291cmNlTmFtZSk7XG5cdCAgICAgIHJldHVybiByZXN1bHQ7XG5cdCAgICB9XG5cblx0ICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG5cdCAgICAvLyBOYW1lZFVwZGF0ZVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YWJhc2VGYWNhZGUudXBkYXRlTmFtZWQoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdFx0ICByZXR1cm4gcmVzdWx0O1xuXHQgICAgfVxuXG5cdCAgICAvLyBUeXBlZFVwZGF0ZVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdCAgICAgIHJldHVybiByZXN1bHQ7XG5cdCAgICB9XG5cblx0ICAgIC8vIFByaW1pdGl2ZSBhcnJheVxuXHQgICAgaWYgKFxuXHQgICAgICBhcnIuZXZlcnkoXG5cdCAgICAgICAgKHYpID0+XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwibnVtYmVyXCIgfHxcblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcImJvb2xlYW5cIiB8fFxuXHQgICAgICAgICAgdiBpbnN0YW5jZW9mIERhdGVcblx0ICAgICAgKVxuXHQgICAgKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdFx0ICByZXR1cm4gcmVzdWx0O1xuXHQgICAgfVxuXG5cdCAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbnN1cHBvcnRlZCBwYXJhbWV0ZXIgZm9ybWF0OiBcIiArIEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpKTtcblx0fVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFVwZGF0ZTtcbn0iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxNQUFNLGlCQUFpQixLQUFLLEtBQUssd0RBQXdEO0FBd0JsRixNQUFNLE9BQU87QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFVbkIsT0FBYyxRQUFRLEtBQWEsWUFBaUcsZ0JBQWlDO0FBQ3BLLFFBQUksTUFBYSxDQUFDO0FBRWYsUUFBSSxjQUFjLE1BQU07QUFDdEIsWUFBTSxDQUFDO0FBQUEsSUFDVCxXQUFXLE9BQU8sZUFBZSxVQUFVO0FBQ3pDLFVBQUk7QUFDRixjQUFNLFNBQVMsS0FBSyxNQUFNLFVBQVU7QUFDcEMsWUFBSSxDQUFDLE1BQU0sUUFBUSxNQUFNLEdBQUc7QUFDMUIsZ0JBQU0sSUFBSSxNQUFNLG9EQUFvRDtBQUFBLFFBQ3RFO0FBQ0EsY0FBTTtBQUFBLE1BQ1IsU0FBUyxHQUFHO0FBQ1YsY0FBTSxJQUFJLE1BQU0sOEJBQThCLENBQUM7QUFBQSxNQUNqRDtBQUFBLElBQ0YsV0FBVyxNQUFNLFFBQVEsVUFBVSxHQUFHO0FBQ3BDLFlBQU07QUFBQSxJQUNSLE9BQU87QUFDTCxZQUFNLElBQUksTUFBTSxxREFBcUQ7QUFBQSxJQUN2RTtBQUVBLFFBQUksSUFBSSxXQUFXLEdBQUc7QUFDdkIsWUFBTSxTQUFTLGVBQWUsT0FBTyxLQUFLLE1BQU0sY0FBYztBQUMzRCxhQUFPO0FBQUEsSUFDVDtBQUVBLFVBQU0sUUFBUSxJQUFJLENBQUM7QUFHbkIsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxVQUFVLE9BQU87QUFDL0UsWUFBTSxTQUFTLGVBQWUsWUFBWSxLQUFLLEtBQUssVUFBVSxHQUFHLEdBQUcsY0FBYztBQUNsRixhQUFPO0FBQUEsSUFDTjtBQUdBLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsRUFBRSxVQUFVLFFBQVE7QUFDbEYsWUFBTSxTQUFTLGVBQWUsT0FBTyxLQUFLLEtBQUssVUFBVSxHQUFHLEdBQUcsY0FBYztBQUMxRSxhQUFPO0FBQUEsSUFDVDtBQUdBLFFBQ0UsSUFBSTtBQUFBLE1BQ0YsQ0FBQyxNQUNDLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxhQUNiLGFBQWE7QUFBQSxJQUNqQixHQUNBO0FBQ0gsWUFBTSxTQUFTLGVBQWUsT0FBTyxLQUFLLEtBQUssVUFBVSxHQUFHLEdBQUcsY0FBYztBQUM3RSxhQUFPO0FBQUEsSUFDTjtBQUVBLFVBQU0sSUFBSSxNQUFNLG1DQUFtQyxLQUFLLFVBQVUsVUFBVSxDQUFDO0FBQUEsRUFDakY7QUFDRDtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFbEMsU0FBTyxVQUFVO0FBQ2xCOyIsCiAgIm5hbWVzIjogW10KfQo=
77
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3VwZGF0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgRGF0YWJhc2VGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YWJhc2VGYWNhZGVcIik7XG5cbi8qKlxuICogSW50ZXJmYWNlIHVzZWQgZm9yIGNvbXBsZXggcGFyYW1ldGVyIHR5cGVzIGlmIG5lZWRlZCwgb3RoZXJ3aXNlIHByaW1pdGl2ZSB0eXBlcyBhcmUgdXNlZCBkaXJlY3RseS5cbiAqL1xuZXhwb3J0IHR5cGUgVHlwZWRVcGRhdGVQYXJhbWV0ZXIgPSB7XG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHVua25vd247XG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbmluZyBhIHBhcmFtZXRlciBmb3IgYSBuYW1lZCB1cGRhdGUgcXVlcnkgKHVzaW5nIHBsYWNlaG9sZGVycyBsaWtlIDpwYXJhbU5hbWUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hbWVkVXBkYXRlUGFyYW1ldGVyIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZhbHVlOiBhbnk7XG59XG5cblxuLyoqXG4gKiBGYWNhZGUgY2xhc3MgZm9yIGV4ZWN1dGluZyBTUUwgVVBEQVRFLCBJTlNFUlQsIGFuZCBERUxFVEUgc3RhdGVtZW50cy5cbiAqIFBhcmFtZXRlcnMgYXJyYXkgc3VwcG9ydHMgcHJpbWl0aXZlcyBlLmcuIGBbMSwgJ0pvaG4nLCAzNC41Nl1gIG9yIG9iamVjdHMgaW4gZm9ybWF0IGVpdGhlciBgeyd0eXBlJzonW0RBVEFfVFlQRV0nLCAndmFsdWUnOltWQUxVRV19YCBvciBgeyduYW1lJzonW3N0cmluZ10nLCAndHlwZSc6J1tEQVRBX1RZUEVdJywgJ3ZhbHVlJzpbVkFMVUVdfWAgZS5nLiBgW3sndHlwZSc6J0NIQVInLCAndmFsdWUnOidJU0JOMTkyMDIzMjMzMjInfV1gIG9yIGBbeyduYW1lJzogJ29yZGVyX251bWJlcicsICd0eXBlJzonQ0hBUicsICd2YWx1ZSc6J0lTQk4xOTIwMjMyMzMyMid9XWBcbiAqL1xuZXhwb3J0IGNsYXNzIFVwZGF0ZSB7XG5cblx0LyoqXG5cdCAqIEV4ZWN1dGVzIGEgcGFyYW1ldGVyaXplZCBTUUwgdXBkYXRlIHN0YXRlbWVudCAoSU5TRVJULCBVUERBVEUsIG9yIERFTEVURSkuXG5cdCAqXG5cdCAqIEBwYXJhbSBzcWwgVGhlIFNRTCBxdWVyeSB0byBleGVjdXRlLlxuXHQgKiBAcGFyYW0gcGFyYW1ldGVycyBBbiBvcHRpb25hbCBhcnJheSBvZiB2YWx1ZXMgKHByaW1pdGl2ZXMsIFR5cGVkUXVlcnlQYXJhbWV0ZXIgb3IgTmFtZWRRdWVyeVBhcmFtZXRlciBvYmplY3RzKSB0byByZXBsYWNlICc/JyBvciA6cGFyYW1OYW1lIHBsYWNlaG9sZGVycy5cblx0ICogQHBhcmFtIGRhdGFzb3VyY2VOYW1lIFRoZSBuYW1lIG9mIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uIHRvIHVzZSAob3B0aW9uYWwpLlxuXHQgKiBAcmV0dXJucyBUaGUgbnVtYmVyIG9mIHJvd3MgYWZmZWN0ZWQgYnkgdGhlIHN0YXRlbWVudC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZXhlY3V0ZShzcWw6IHN0cmluZywgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkVXBkYXRlUGFyYW1ldGVyIHwgTmFtZWRVcGRhdGVQYXJhbWV0ZXIpW10sIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nKTogbnVtYmVyIHtcblx0XHRsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXG5cdCAgICBpZiAocGFyYW1ldGVycyA9PSBudWxsKSB7XG5cdCAgICAgIGFyciA9IFtdO1xuXHQgICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gXCJzdHJpbmdcIikge1xuXHQgICAgICB0cnkge1xuXHQgICAgICAgIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UocGFyYW1ldGVycyk7XG5cdCAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcnNlZCkpIHtcblx0ICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIklucHV0IHBhcmFtZXRlciBzdHJpbmcgbXVzdCByZXByZXNlbnQgYSBKU09OIGFycmF5XCIpO1xuXHQgICAgICAgIH1cblx0ICAgICAgICBhcnIgPSBwYXJzZWQ7XG5cdCAgICAgIH0gY2F0Y2ggKGUpIHtcblx0ICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIEpTT04gcGFyYW1ldGVyczogXCIgKyBlKTtcblx0ICAgICAgfVxuXHQgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnMpKSB7XG5cdCAgICAgIGFyciA9IHBhcmFtZXRlcnM7XG5cdCAgICB9IGVsc2Uge1xuXHQgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJQYXJhbWV0ZXJzIG11c3QgYmUgZWl0aGVyIGFuIGFycmF5IG9yIGEgSlNPTiBzdHJpbmdcIik7XG5cdCAgICB9XG5cblx0ICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBudWxsLCBkYXRhc291cmNlTmFtZSk7XG5cdCAgICAgIHJldHVybiByZXN1bHQ7XG5cdCAgICB9XG5cblx0ICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG5cdCAgICAvLyBOYW1lZFVwZGF0ZVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YWJhc2VGYWNhZGUudXBkYXRlTmFtZWQoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdFx0ICByZXR1cm4gcmVzdWx0O1xuXHQgICAgfVxuXG5cdCAgICAvLyBUeXBlZFVwZGF0ZVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdCAgICAgIHJldHVybiByZXN1bHQ7XG5cdCAgICB9XG5cblx0ICAgIC8vIFByaW1pdGl2ZSBhcnJheVxuXHQgICAgaWYgKFxuXHQgICAgICBhcnIuZXZlcnkoXG5cdCAgICAgICAgKHYpID0+XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwibnVtYmVyXCIgfHxcblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcImJvb2xlYW5cIiB8fFxuXHQgICAgICAgICAgdiBpbnN0YW5jZW9mIERhdGVcdFx0XHQgIHx8XG5cdFx0XHQgIFx0ICBBcnJheS5pc0FycmF5KHYpXG5cdCAgICAgIClcblx0ICAgICkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YWJhc2VGYWNhZGUudXBkYXRlKHNxbCwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgZGF0YXNvdXJjZU5hbWUpO1xuXHRcdCAgcmV0dXJuIHJlc3VsdDtcblx0ICAgIH1cblxuXHQgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgcGFyYW1ldGVyIGZvcm1hdDogXCIgKyBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKSk7XG5cdH1cbn1cblxuLy8gQHRzLWlnbm9yZVxuaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnKSB7XG5cdC8vIEB0cy1pZ25vcmVcblx0bW9kdWxlLmV4cG9ydHMgPSBVcGRhdGU7XG59Il0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsTUFBTSxpQkFBaUIsS0FBSyxLQUFLLHdEQUF3RDtBQXdCbEYsTUFBTSxPQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVW5CLE9BQWMsUUFBUSxLQUFhLFlBQWlHLGdCQUFpQztBQUNwSyxRQUFJLE1BQWEsQ0FBQztBQUVmLFFBQUksY0FBYyxNQUFNO0FBQ3RCLFlBQU0sQ0FBQztBQUFBLElBQ1QsV0FBVyxPQUFPLGVBQWUsVUFBVTtBQUN6QyxVQUFJO0FBQ0YsY0FBTSxTQUFTLEtBQUssTUFBTSxVQUFVO0FBQ3BDLFlBQUksQ0FBQyxNQUFNLFFBQVEsTUFBTSxHQUFHO0FBQzFCLGdCQUFNLElBQUksTUFBTSxvREFBb0Q7QUFBQSxRQUN0RTtBQUNBLGNBQU07QUFBQSxNQUNSLFNBQVMsR0FBRztBQUNWLGNBQU0sSUFBSSxNQUFNLDhCQUE4QixDQUFDO0FBQUEsTUFDakQ7QUFBQSxJQUNGLFdBQVcsTUFBTSxRQUFRLFVBQVUsR0FBRztBQUNwQyxZQUFNO0FBQUEsSUFDUixPQUFPO0FBQ0wsWUFBTSxJQUFJLE1BQU0scURBQXFEO0FBQUEsSUFDdkU7QUFFQSxRQUFJLElBQUksV0FBVyxHQUFHO0FBQ3ZCLFlBQU0sU0FBUyxlQUFlLE9BQU8sS0FBSyxNQUFNLGNBQWM7QUFDM0QsYUFBTztBQUFBLElBQ1Q7QUFFQSxVQUFNLFFBQVEsSUFBSSxDQUFDO0FBR25CLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsVUFBVSxPQUFPO0FBQy9FLFlBQU0sU0FBUyxlQUFlLFlBQVksS0FBSyxLQUFLLFVBQVUsR0FBRyxHQUFHLGNBQWM7QUFDbEYsYUFBTztBQUFBLElBQ047QUFHQSxRQUFJLFNBQVMsT0FBTyxVQUFVLFlBQVksVUFBVSxTQUFTLEVBQUUsVUFBVSxRQUFRO0FBQ2xGLFlBQU0sU0FBUyxlQUFlLE9BQU8sS0FBSyxLQUFLLFVBQVUsR0FBRyxHQUFHLGNBQWM7QUFDMUUsYUFBTztBQUFBLElBQ1Q7QUFHQSxRQUNFLElBQUk7QUFBQSxNQUNGLENBQUMsTUFDQyxPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sYUFDYixhQUFhLFFBQ2hCLE1BQU0sUUFBUSxDQUFDO0FBQUEsSUFDaEIsR0FDQTtBQUNILFlBQU0sU0FBUyxlQUFlLE9BQU8sS0FBSyxLQUFLLFVBQVUsR0FBRyxHQUFHLGNBQWM7QUFDN0UsYUFBTztBQUFBLElBQ047QUFFQSxVQUFNLElBQUksTUFBTSxtQ0FBbUMsS0FBSyxVQUFVLFVBQVUsQ0FBQztBQUFBLEVBQ2pGO0FBQ0Q7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWxDLFNBQU8sVUFBVTtBQUNsQjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -54,7 +54,7 @@ class Query {
54
54
  return JSON.parse(resultset);
55
55
  }
56
56
  if (arr.every(
57
- (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date
57
+ (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date || Array.isArray(v)
58
58
  )) {
59
59
  const resultset = DatabaseFacade.query(
60
60
  sql,
@@ -90,4 +90,4 @@ if (typeof module !== "undefined") {
90
90
  export {
91
91
  Query
92
92
  };
93
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3F1ZXJ5LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEFQSSBRdWVyeVxuICpcbiAqL1xuXG5jb25zdCBEYXRhYmFzZUZhY2FkZSA9IEphdmEudHlwZShcbiAgXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YWJhc2VGYWNhZGVcIixcbik7XG5cbi8qKlxuICogSW50ZXJmYWNlIHVzZWQgdG8gd3JhcCBjb21wbGV4IG9yIHNwZWNpZmljIHZhbHVlcyBmb3Igbm9uLW5hbWVkIHF1ZXJpZXMuXG4gKi9cbmV4cG9ydCB0eXBlIFR5cGVkUXVlcnlQYXJhbWV0ZXIgPSB7XG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHVua25vd247XG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbmluZyBhIHBhcmFtZXRlciBmb3IgYSBuYW1lZCBxdWVyeSAodXNpbmcgcGxhY2Vob2xkZXJzIGxpa2UgOnBhcmFtTmFtZSkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmFtZWRRdWVyeVBhcmFtZXRlciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuICByZWFkb25seSB2YWx1ZTogYW55O1xufVxuXG4vKipcbiAqIEludGVyZmFjZSB0byBzcGVjaWZ5IGZvcm1hdHRpbmcgb3B0aW9ucyBmb3IgdGhlIHF1ZXJ5IHJlc3VsdCBzZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWF0dGluZ1BhcmFtZXRlciB7XG4gIHJlYWRvbmx5IGRhdGVGb3JtYXQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBzdGF0aWMgbWV0aG9kcyBmb3IgZXhlY3V0aW5nIHBhcmFtZXRlcml6ZWQgU1FMIFNFTEVDVCBzdGF0ZW1lbnRzLlxuICovXG5leHBvcnQgY2xhc3MgUXVlcnkge1xuICAvKipcbiAgICogRXhlY3V0ZXMgYSBzdGFuZGFyZCBTUUwgcXVlcnkgd2l0aCBwb3NpdGlvbmFsIHBhcmFtZXRlcnMuIFBhcmFtZXRlcnMgYXJyYXkgc3VwcG9ydHMgcHJpbWl0aXZlcyBlLmcuIGBbMSwgJ0pvaG4nLCAzNC41Nl1gIG9yIG9iamVjdHMgaW4gZm9ybWF0IGVpdGhlciBgeyd0eXBlJzonW0RBVEFfVFlQRV0nLCAndmFsdWUnOltWQUxVRV19YCBvciBgeyduYW1lJzonW3N0cmluZ10nLCAndHlwZSc6J1tEQVRBX1RZUEVdJywgJ3ZhbHVlJzpbVkFMVUVdfWAgZS5nLiBgW3sndHlwZSc6J0NIQVInLCAndmFsdWUnOidJU0JOMTkyMDIzMjMzMjInfV1gIG9yIGBbeyduYW1lJzogJ29yZGVyX251bWJlcicsICd0eXBlJzonQ0hBUicsICd2YWx1ZSc6J0lTQk4xOTIwMjMyMzMyMid9XWBcbiAgICpcbiAgICogQHBhcmFtIHNxbCBUaGUgU1FMIHF1ZXJ5IHRvIGV4ZWN1dGUuXG4gICAqIEBwYXJhbSBwYXJhbWV0ZXJzIEFuIG9wdGlvbmFsIGFycmF5IG9mIHZhbHVlcyAocHJpbWl0aXZlcywgVHlwZWRRdWVyeVBhcmFtZXRlciBvciBOYW1lZFF1ZXJ5UGFyYW1ldGVyIG9iamVjdHMpIHRvIHJlcGxhY2UgJz8nIG9yIDpwYXJhbU5hbWUgcGxhY2Vob2xkZXJzLlxuICAgKiBAcGFyYW0gZGF0YXNvdXJjZU5hbWUgVGhlIG5hbWUgb2YgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gdG8gdXNlIChvcHRpb25hbCkuXG4gICAqIEBwYXJhbSBmb3JtYXR0aW5nIE9wdGlvbmFsIGZvcm1hdHRpbmcgcGFyYW1ldGVycyBmb3IgdGhlIHJlc3VsdCBzZXQgKGUuZy4sIGRhdGUgZm9ybWF0KS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVjb3JkcyByZXByZXNlbnRpbmcgdGhlIHF1ZXJ5IHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGV4ZWN1dGUoXG4gICAgc3FsOiBzdHJpbmcsXG4gICAgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkUXVlcnlQYXJhbWV0ZXIgfCBOYW1lZFF1ZXJ5UGFyYW1ldGVyKVtdIHwgc3RyaW5nLFxuICAgIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nLFxuICAgIGZvcm1hdHRpbmc/OiBGb3JtYXR0aW5nUGFyYW1ldGVyLFxuICApOiBhbnlbXSB7XG4gICAgY29uc3QgZm9ybWF0dGluZ0pzb24gPSBmb3JtYXR0aW5nID8gSlNPTi5zdHJpbmdpZnkoZm9ybWF0dGluZykgOiB1bmRlZmluZWQ7XG5cbiAgICBsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXG4gICAgaWYgKHBhcmFtZXRlcnMgPT0gbnVsbCkge1xuICAgICAgYXJyID0gW107XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcnNlZCkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnB1dCBwYXJhbWV0ZXIgc3RyaW5nIG11c3QgcmVwcmVzZW50IGEgSlNPTiBhcnJheVwiKTtcbiAgICAgICAgfVxuICAgICAgICBhcnIgPSBwYXJzZWQ7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJhbWV0ZXJzKSkge1xuICAgICAgYXJyID0gcGFyYW1ldGVycztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUGFyYW1ldGVycyBtdXN0IGJlIGVpdGhlciBhbiBhcnJheSBvciBhIEpTT04gc3RyaW5nXCIpO1xuICAgIH1cblxuICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG4gICAgICBjb25zdCByZXN1bHRzZXQgPSBEYXRhYmFzZUZhY2FkZS5xdWVyeShzcWwsIG51bGwsIGRhdGFzb3VyY2VOYW1lLCBmb3JtYXR0aW5nSnNvbik7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG4gICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJuYW1lXCIgaW4gZmlyc3QgJiYgXCJ0eXBlXCIgaW4gZmlyc3QpIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5TmFtZWQoXG4gICAgICAgIHNxbCxcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoYXJyKSxcbiAgICAgICAgZGF0YXNvdXJjZU5hbWVcbiAgICAgICk7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICAgIH1cblxuICAgIC8vIFR5cGVkUXVlcnlQYXJhbWV0ZXIgKGhhcyB0eXBlLCBubyBuYW1lKVxuICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJ0eXBlXCIgaW4gZmlyc3QgJiYgIShcIm5hbWVcIiBpbiBmaXJzdCkpIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5KFxuICAgICAgICBzcWwsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KGFyciksXG4gICAgICAgIGRhdGFzb3VyY2VOYW1lLFxuICAgICAgICBmb3JtYXR0aW5nSnNvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHNldCk7XG4gICAgfVxuXG4gICAgLy8gUHJpbWl0aXZlIGFycmF5XG4gICAgaWYgKFxuICAgICAgYXJyLmV2ZXJ5KFxuICAgICAgICAodikgPT5cbiAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIiB8fFxuICAgICAgICAgIHR5cGVvZiB2ID09PSBcIm51bWJlclwiIHx8XG4gICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG4gICAgICAgICAgdiBpbnN0YW5jZW9mIERhdGVcbiAgICAgIClcbiAgICApIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5KFxuICAgICAgICBzcWwsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KGFyciksXG4gICAgICAgIGRhdGFzb3VyY2VOYW1lLFxuICAgICAgICBmb3JtYXR0aW5nSnNvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHNldCk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgcGFyYW1ldGVyIGZvcm1hdDogXCIgKyBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKSk7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyBhIFNRTCBxdWVyeSB3aXRoIG5hbWVkIHBhcmFtZXRlcnMgKGUuZy4sIFwiOm5hbWVcIiwgXCI6aWRcIikuXG4gICAqXG4gICAqIEBwYXJhbSBzcWwgVGhlIFNRTCBxdWVyeSB0byBleGVjdXRlLlxuICAgKiBAcGFyYW0gcGFyYW1ldGVycyBBbiBvcHRpb25hbCBhcnJheSBvZiBOYW1lZFF1ZXJ5UGFyYW1ldGVyIG9iamVjdHMuXG4gICAqIEBwYXJhbSBkYXRhc291cmNlTmFtZSBUaGUgbmFtZSBvZiB0aGUgZGF0YWJhc2UgY29ubmVjdGlvbiB0byB1c2UgKG9wdGlvbmFsKS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVjb3JkcyByZXByZXNlbnRpbmcgdGhlIHF1ZXJ5IHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGV4ZWN1dGVOYW1lZChcbiAgICBzcWw6IHN0cmluZyxcbiAgICBwYXJhbWV0ZXJzPzogTmFtZWRRdWVyeVBhcmFtZXRlcltdLFxuICAgIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nLFxuICApOiBhbnlbXSB7XG4gICAgLy8gU2VyaWFsaXplIHRoZSBhcnJheSBvZiBuYW1lZCBwYXJhbWV0ZXJzIGZvciB0aGUgSmF2YSBmYWNhZGVcbiAgICBjb25zdCBwYXJhbXNKc29uID0gcGFyYW1ldGVycyA/IEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpIDogdW5kZWZpbmVkO1xuXG4gICAgLy8gVGhlIERhdGFiYXNlRmFjYWRlIHJldHVybnMgYSBKU09OIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgcmVzdWx0IHNldFxuICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5TmFtZWQoXG4gICAgICBzcWwsXG4gICAgICBwYXJhbXNKc29uLFxuICAgICAgZGF0YXNvdXJjZU5hbWUsXG4gICAgKTtcblxuICAgIC8vIFBhcnNlIHRoZSBKU09OIHN0cmluZyBiYWNrIGludG8gYSBKYXZhU2NyaXB0IGFycmF5IG9mIG9iamVjdHNcbiAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICB9XG59XG5cbi8vIEB0cy1pZ25vcmVcbmlmICh0eXBlb2YgbW9kdWxlICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgbW9kdWxlLmV4cG9ydHMgPSBRdWVyeTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUtBLE1BQU0saUJBQWlCLEtBQUs7QUFBQSxFQUMxQjtBQUNGO0FBNkJPLE1BQU0sTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVWpCLE9BQWMsUUFDWixLQUNBLFlBQ0EsZ0JBQ0EsWUFDTztBQUNQLFVBQU0saUJBQWlCLGFBQWEsS0FBSyxVQUFVLFVBQVUsSUFBSTtBQUVqRSxRQUFJLE1BQWEsQ0FBQztBQUVsQixRQUFJLGNBQWMsTUFBTTtBQUN0QixZQUFNLENBQUM7QUFBQSxJQUNULFdBQVcsT0FBTyxlQUFlLFVBQVU7QUFDekMsVUFBSTtBQUNGLGNBQU0sU0FBUyxLQUFLLE1BQU0sVUFBVTtBQUNwQyxZQUFJLENBQUMsTUFBTSxRQUFRLE1BQU0sR0FBRztBQUMxQixnQkFBTSxJQUFJLE1BQU0sb0RBQW9EO0FBQUEsUUFDdEU7QUFDQSxjQUFNO0FBQUEsTUFDUixTQUFTLEdBQUc7QUFDVixjQUFNLElBQUksTUFBTSw4QkFBOEIsQ0FBQztBQUFBLE1BQ2pEO0FBQUEsSUFDRixXQUFXLE1BQU0sUUFBUSxVQUFVLEdBQUc7QUFDcEMsWUFBTTtBQUFBLElBQ1IsT0FBTztBQUNMLFlBQU0sSUFBSSxNQUFNLHFEQUFxRDtBQUFBLElBQ3ZFO0FBRUEsUUFBSSxJQUFJLFdBQVcsR0FBRztBQUNwQixZQUFNLFlBQVksZUFBZSxNQUFNLEtBQUssTUFBTSxnQkFBZ0IsY0FBYztBQUNoRixhQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsSUFDN0I7QUFFQSxVQUFNLFFBQVEsSUFBSSxDQUFDO0FBR25CLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsVUFBVSxPQUFPO0FBQzVFLFlBQU0sWUFBWSxlQUFlO0FBQUEsUUFDL0I7QUFBQSxRQUNBLEtBQUssVUFBVSxHQUFHO0FBQUEsUUFDbEI7QUFBQSxNQUNGO0FBQ0EsYUFBTyxLQUFLLE1BQU0sU0FBUztBQUFBLElBQzdCO0FBR0EsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxFQUFFLFVBQVUsUUFBUTtBQUMvRSxZQUFNLFlBQVksZUFBZTtBQUFBLFFBQy9CO0FBQUEsUUFDQSxLQUFLLFVBQVUsR0FBRztBQUFBLFFBQ2xCO0FBQUEsUUFDQTtBQUFBLE1BQ0Y7QUFDQSxhQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsSUFDN0I7QUFHQSxRQUNFLElBQUk7QUFBQSxNQUNGLENBQUMsTUFDQyxPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sYUFDYixhQUFhO0FBQUEsSUFDakIsR0FDQTtBQUNBLFlBQU0sWUFBWSxlQUFlO0FBQUEsUUFDL0I7QUFBQSxRQUNBLEtBQUssVUFBVSxHQUFHO0FBQUEsUUFDbEI7QUFBQSxRQUNBO0FBQUEsTUFDRjtBQUNBLGFBQU8sS0FBSyxNQUFNLFNBQVM7QUFBQSxJQUM3QjtBQUVBLFVBQU0sSUFBSSxNQUFNLG1DQUFtQyxLQUFLLFVBQVUsVUFBVSxDQUFDO0FBQUEsRUFDL0U7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFXQSxPQUFjLGFBQ1osS0FDQSxZQUNBLGdCQUNPO0FBRVAsVUFBTSxhQUFhLGFBQWEsS0FBSyxVQUFVLFVBQVUsSUFBSTtBQUc3RCxVQUFNLFlBQVksZUFBZTtBQUFBLE1BQy9CO0FBQUEsTUFDQTtBQUFBLE1BQ0E7QUFBQSxJQUNGO0FBR0EsV0FBTyxLQUFLLE1BQU0sU0FBUztBQUFBLEVBQzdCO0FBQ0Y7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWpDLFNBQU8sVUFBVTtBQUNuQjsiLAogICJuYW1lcyI6IFtdCn0K
93
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3F1ZXJ5LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEFQSSBRdWVyeVxuICpcbiAqL1xuXG5jb25zdCBEYXRhYmFzZUZhY2FkZSA9IEphdmEudHlwZShcbiAgXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YWJhc2VGYWNhZGVcIixcbik7XG5cbi8qKlxuICogSW50ZXJmYWNlIHVzZWQgdG8gd3JhcCBjb21wbGV4IG9yIHNwZWNpZmljIHZhbHVlcyBmb3Igbm9uLW5hbWVkIHF1ZXJpZXMuXG4gKi9cbmV4cG9ydCB0eXBlIFR5cGVkUXVlcnlQYXJhbWV0ZXIgPSB7XG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHVua25vd247XG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbmluZyBhIHBhcmFtZXRlciBmb3IgYSBuYW1lZCBxdWVyeSAodXNpbmcgcGxhY2Vob2xkZXJzIGxpa2UgOnBhcmFtTmFtZSkuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTmFtZWRRdWVyeVBhcmFtZXRlciB7XG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuICByZWFkb25seSB2YWx1ZTogYW55O1xufVxuXG4vKipcbiAqIEludGVyZmFjZSB0byBzcGVjaWZ5IGZvcm1hdHRpbmcgb3B0aW9ucyBmb3IgdGhlIHF1ZXJ5IHJlc3VsdCBzZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWF0dGluZ1BhcmFtZXRlciB7XG4gIHJlYWRvbmx5IGRhdGVGb3JtYXQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBzdGF0aWMgbWV0aG9kcyBmb3IgZXhlY3V0aW5nIHBhcmFtZXRlcml6ZWQgU1FMIFNFTEVDVCBzdGF0ZW1lbnRzLlxuICovXG5leHBvcnQgY2xhc3MgUXVlcnkge1xuICAvKipcbiAgICogRXhlY3V0ZXMgYSBzdGFuZGFyZCBTUUwgcXVlcnkgd2l0aCBwb3NpdGlvbmFsIHBhcmFtZXRlcnMuIFBhcmFtZXRlcnMgYXJyYXkgc3VwcG9ydHMgcHJpbWl0aXZlcyBlLmcuIGBbMSwgJ0pvaG4nLCAzNC41Nl1gIG9yIG9iamVjdHMgaW4gZm9ybWF0IGVpdGhlciBgeyd0eXBlJzonW0RBVEFfVFlQRV0nLCAndmFsdWUnOltWQUxVRV19YCBvciBgeyduYW1lJzonW3N0cmluZ10nLCAndHlwZSc6J1tEQVRBX1RZUEVdJywgJ3ZhbHVlJzpbVkFMVUVdfWAgZS5nLiBgW3sndHlwZSc6J0NIQVInLCAndmFsdWUnOidJU0JOMTkyMDIzMjMzMjInfV1gIG9yIGBbeyduYW1lJzogJ29yZGVyX251bWJlcicsICd0eXBlJzonQ0hBUicsICd2YWx1ZSc6J0lTQk4xOTIwMjMyMzMyMid9XWBcbiAgICpcbiAgICogQHBhcmFtIHNxbCBUaGUgU1FMIHF1ZXJ5IHRvIGV4ZWN1dGUuXG4gICAqIEBwYXJhbSBwYXJhbWV0ZXJzIEFuIG9wdGlvbmFsIGFycmF5IG9mIHZhbHVlcyAocHJpbWl0aXZlcywgVHlwZWRRdWVyeVBhcmFtZXRlciBvciBOYW1lZFF1ZXJ5UGFyYW1ldGVyIG9iamVjdHMpIHRvIHJlcGxhY2UgJz8nIG9yIDpwYXJhbU5hbWUgcGxhY2Vob2xkZXJzLlxuICAgKiBAcGFyYW0gZGF0YXNvdXJjZU5hbWUgVGhlIG5hbWUgb2YgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gdG8gdXNlIChvcHRpb25hbCkuXG4gICAqIEBwYXJhbSBmb3JtYXR0aW5nIE9wdGlvbmFsIGZvcm1hdHRpbmcgcGFyYW1ldGVycyBmb3IgdGhlIHJlc3VsdCBzZXQgKGUuZy4sIGRhdGUgZm9ybWF0KS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVjb3JkcyByZXByZXNlbnRpbmcgdGhlIHF1ZXJ5IHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGV4ZWN1dGUoXG4gICAgc3FsOiBzdHJpbmcsXG4gICAgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkUXVlcnlQYXJhbWV0ZXIgfCBOYW1lZFF1ZXJ5UGFyYW1ldGVyKVtdIHwgc3RyaW5nLFxuICAgIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nLFxuICAgIGZvcm1hdHRpbmc/OiBGb3JtYXR0aW5nUGFyYW1ldGVyLFxuICApOiBhbnlbXSB7XG4gICAgY29uc3QgZm9ybWF0dGluZ0pzb24gPSBmb3JtYXR0aW5nID8gSlNPTi5zdHJpbmdpZnkoZm9ybWF0dGluZykgOiB1bmRlZmluZWQ7XG5cbiAgICBsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXG4gICAgaWYgKHBhcmFtZXRlcnMgPT0gbnVsbCkge1xuICAgICAgYXJyID0gW107XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcnNlZCkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnB1dCBwYXJhbWV0ZXIgc3RyaW5nIG11c3QgcmVwcmVzZW50IGEgSlNPTiBhcnJheVwiKTtcbiAgICAgICAgfVxuICAgICAgICBhcnIgPSBwYXJzZWQ7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJhbWV0ZXJzKSkge1xuICAgICAgYXJyID0gcGFyYW1ldGVycztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUGFyYW1ldGVycyBtdXN0IGJlIGVpdGhlciBhbiBhcnJheSBvciBhIEpTT04gc3RyaW5nXCIpO1xuICAgIH1cblxuICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG4gICAgICBjb25zdCByZXN1bHRzZXQgPSBEYXRhYmFzZUZhY2FkZS5xdWVyeShzcWwsIG51bGwsIGRhdGFzb3VyY2VOYW1lLCBmb3JtYXR0aW5nSnNvbik7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG4gICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJuYW1lXCIgaW4gZmlyc3QgJiYgXCJ0eXBlXCIgaW4gZmlyc3QpIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5TmFtZWQoXG4gICAgICAgIHNxbCxcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoYXJyKSxcbiAgICAgICAgZGF0YXNvdXJjZU5hbWVcbiAgICAgICk7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICAgIH1cblxuICAgIC8vIFR5cGVkUXVlcnlQYXJhbWV0ZXIgKGhhcyB0eXBlLCBubyBuYW1lKVxuICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJ0eXBlXCIgaW4gZmlyc3QgJiYgIShcIm5hbWVcIiBpbiBmaXJzdCkpIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5KFxuICAgICAgICBzcWwsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KGFyciksXG4gICAgICAgIGRhdGFzb3VyY2VOYW1lLFxuICAgICAgICBmb3JtYXR0aW5nSnNvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHNldCk7XG4gICAgfVxuXG4gICAgLy8gUHJpbWl0aXZlIGFycmF5XG4gICAgaWYgKFxuICAgICAgYXJyLmV2ZXJ5KFxuICAgICAgICAodikgPT5cbiAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIiB8fFxuICAgICAgICAgIHR5cGVvZiB2ID09PSBcIm51bWJlclwiIHx8XG4gICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG4gICAgICAgICAgdiBpbnN0YW5jZW9mIERhdGUgfHxcblx0XHQgIEFycmF5LmlzQXJyYXkodilcbiAgICAgIClcbiAgICApIHtcbiAgICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5KFxuICAgICAgICBzcWwsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KGFyciksXG4gICAgICAgIGRhdGFzb3VyY2VOYW1lLFxuICAgICAgICBmb3JtYXR0aW5nSnNvblxuICAgICAgKTtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdHNldCk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgcGFyYW1ldGVyIGZvcm1hdDogXCIgKyBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKSk7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyBhIFNRTCBxdWVyeSB3aXRoIG5hbWVkIHBhcmFtZXRlcnMgKGUuZy4sIFwiOm5hbWVcIiwgXCI6aWRcIikuXG4gICAqXG4gICAqIEBwYXJhbSBzcWwgVGhlIFNRTCBxdWVyeSB0byBleGVjdXRlLlxuICAgKiBAcGFyYW0gcGFyYW1ldGVycyBBbiBvcHRpb25hbCBhcnJheSBvZiBOYW1lZFF1ZXJ5UGFyYW1ldGVyIG9iamVjdHMuXG4gICAqIEBwYXJhbSBkYXRhc291cmNlTmFtZSBUaGUgbmFtZSBvZiB0aGUgZGF0YWJhc2UgY29ubmVjdGlvbiB0byB1c2UgKG9wdGlvbmFsKS5cbiAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgcmVjb3JkcyByZXByZXNlbnRpbmcgdGhlIHF1ZXJ5IHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGV4ZWN1dGVOYW1lZChcbiAgICBzcWw6IHN0cmluZyxcbiAgICBwYXJhbWV0ZXJzPzogTmFtZWRRdWVyeVBhcmFtZXRlcltdLFxuICAgIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nLFxuICApOiBhbnlbXSB7XG4gICAgLy8gU2VyaWFsaXplIHRoZSBhcnJheSBvZiBuYW1lZCBwYXJhbWV0ZXJzIGZvciB0aGUgSmF2YSBmYWNhZGVcbiAgICBjb25zdCBwYXJhbXNKc29uID0gcGFyYW1ldGVycyA/IEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpIDogdW5kZWZpbmVkO1xuXG4gICAgLy8gVGhlIERhdGFiYXNlRmFjYWRlIHJldHVybnMgYSBKU09OIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgcmVzdWx0IHNldFxuICAgIGNvbnN0IHJlc3VsdHNldCA9IERhdGFiYXNlRmFjYWRlLnF1ZXJ5TmFtZWQoXG4gICAgICBzcWwsXG4gICAgICBwYXJhbXNKc29uLFxuICAgICAgZGF0YXNvdXJjZU5hbWUsXG4gICAgKTtcblxuICAgIC8vIFBhcnNlIHRoZSBKU09OIHN0cmluZyBiYWNrIGludG8gYSBKYXZhU2NyaXB0IGFycmF5IG9mIG9iamVjdHNcbiAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHRzZXQpO1xuICB9XG59XG5cbi8vIEB0cy1pZ25vcmVcbmlmICh0eXBlb2YgbW9kdWxlICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgbW9kdWxlLmV4cG9ydHMgPSBRdWVyeTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUtBLE1BQU0saUJBQWlCLEtBQUs7QUFBQSxFQUMxQjtBQUNGO0FBNkJPLE1BQU0sTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVWpCLE9BQWMsUUFDWixLQUNBLFlBQ0EsZ0JBQ0EsWUFDTztBQUNQLFVBQU0saUJBQWlCLGFBQWEsS0FBSyxVQUFVLFVBQVUsSUFBSTtBQUVqRSxRQUFJLE1BQWEsQ0FBQztBQUVsQixRQUFJLGNBQWMsTUFBTTtBQUN0QixZQUFNLENBQUM7QUFBQSxJQUNULFdBQVcsT0FBTyxlQUFlLFVBQVU7QUFDekMsVUFBSTtBQUNGLGNBQU0sU0FBUyxLQUFLLE1BQU0sVUFBVTtBQUNwQyxZQUFJLENBQUMsTUFBTSxRQUFRLE1BQU0sR0FBRztBQUMxQixnQkFBTSxJQUFJLE1BQU0sb0RBQW9EO0FBQUEsUUFDdEU7QUFDQSxjQUFNO0FBQUEsTUFDUixTQUFTLEdBQUc7QUFDVixjQUFNLElBQUksTUFBTSw4QkFBOEIsQ0FBQztBQUFBLE1BQ2pEO0FBQUEsSUFDRixXQUFXLE1BQU0sUUFBUSxVQUFVLEdBQUc7QUFDcEMsWUFBTTtBQUFBLElBQ1IsT0FBTztBQUNMLFlBQU0sSUFBSSxNQUFNLHFEQUFxRDtBQUFBLElBQ3ZFO0FBRUEsUUFBSSxJQUFJLFdBQVcsR0FBRztBQUNwQixZQUFNLFlBQVksZUFBZSxNQUFNLEtBQUssTUFBTSxnQkFBZ0IsY0FBYztBQUNoRixhQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsSUFDN0I7QUFFQSxVQUFNLFFBQVEsSUFBSSxDQUFDO0FBR25CLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsVUFBVSxPQUFPO0FBQzVFLFlBQU0sWUFBWSxlQUFlO0FBQUEsUUFDL0I7QUFBQSxRQUNBLEtBQUssVUFBVSxHQUFHO0FBQUEsUUFDbEI7QUFBQSxNQUNGO0FBQ0EsYUFBTyxLQUFLLE1BQU0sU0FBUztBQUFBLElBQzdCO0FBR0EsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxFQUFFLFVBQVUsUUFBUTtBQUMvRSxZQUFNLFlBQVksZUFBZTtBQUFBLFFBQy9CO0FBQUEsUUFDQSxLQUFLLFVBQVUsR0FBRztBQUFBLFFBQ2xCO0FBQUEsUUFDQTtBQUFBLE1BQ0Y7QUFDQSxhQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsSUFDN0I7QUFHQSxRQUNFLElBQUk7QUFBQSxNQUNGLENBQUMsTUFDQyxPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sYUFDYixhQUFhLFFBQ25CLE1BQU0sUUFBUSxDQUFDO0FBQUEsSUFDYixHQUNBO0FBQ0EsWUFBTSxZQUFZLGVBQWU7QUFBQSxRQUMvQjtBQUFBLFFBQ0EsS0FBSyxVQUFVLEdBQUc7QUFBQSxRQUNsQjtBQUFBLFFBQ0E7QUFBQSxNQUNGO0FBQ0EsYUFBTyxLQUFLLE1BQU0sU0FBUztBQUFBLElBQzdCO0FBRUEsVUFBTSxJQUFJLE1BQU0sbUNBQW1DLEtBQUssVUFBVSxVQUFVLENBQUM7QUFBQSxFQUMvRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVdBLE9BQWMsYUFDWixLQUNBLFlBQ0EsZ0JBQ087QUFFUCxVQUFNLGFBQWEsYUFBYSxLQUFLLFVBQVUsVUFBVSxJQUFJO0FBRzdELFVBQU0sWUFBWSxlQUFlO0FBQUEsTUFDL0I7QUFBQSxNQUNBO0FBQUEsTUFDQTtBQUFBLElBQ0Y7QUFHQSxXQUFPLEtBQUssTUFBTSxTQUFTO0FBQUEsRUFDN0I7QUFDRjtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFakMsU0FBTyxVQUFVO0FBQ25COyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -136,7 +136,7 @@ class Store {
136
136
  return JSON.parse(result);
137
137
  }
138
138
  if (arr.every(
139
- (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date
139
+ (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date || Array.isArray(v)
140
140
  )) {
141
141
  const result = DataStoreFacade.query(query, JSON.stringify(arr), limit, offset);
142
142
  return JSON.parse(result);
@@ -181,7 +181,7 @@ class Store {
181
181
  return JSON.parse(result);
182
182
  }
183
183
  if (arr.every(
184
- (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date
184
+ (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date || Array.isArray(v)
185
185
  )) {
186
186
  const result = DataStoreFacade.queryNative(query, JSON.stringify(arr), limit, offset);
187
187
  return JSON.parse(result);
@@ -222,4 +222,4 @@ export {
222
222
  Operator,
223
223
  Store
224
224
  };
225
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3N0b3JlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBEYXRhU3RvcmVGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YVN0b3JlRmFjYWRlXCIpO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGF2YWlsYWJsZSBjb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgcXVlcnkgY29uZGl0aW9ucy5cbiAqL1xuZXhwb3J0IGVudW0gT3BlcmF0b3Ige1xuXHRFUSA9IFwiPVwiLCAvLyBFcXVhbHNcblx0TkUgPSBcIjw+XCIsIC8vIE5vdCBFcXVhbHNcblx0R1QgPSBcIj5cIiwgLy8gR3JlYXRlciBUaGFuXG5cdExUID0gXCI8XCIsIC8vIExlc3MgVGhhblxuXHRHRSA9IFwiPj1cIiwgLy8gR3JlYXRlciBUaGFuIG9yIEVxdWFsc1xuXHRMRSA9IFwiPD1cIiwgLy8gTGVzcyBUaGFuIG9yIEVxdWFsc1xuXHRMSUtFID0gXCJMSUtFXCIsIC8vIFNRTCBMSUtFIG9wZXJhdG9yXG5cdEJFVFdFRU4gPSBcIkJFVFdFRU5cIiwgLy8gU1FMIEJFVFdFRU4gb3BlcmF0b3IgKHJlcXVpcmVzIHR3byB2YWx1ZXMpXG5cdElOID0gXCJJTlwiIC8vIFNRTCBJTiBvcGVyYXRvciAocmVxdWlyZXMgYSBMaXN0IG9yIEFycmF5IG9mIHZhbHVlcylcbn1cblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBkaXJlY3Rpb24gZm9yIHNvcnRpbmcuXG4gKi9cbmV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XG5cdEFTQyA9IFwiQVNDXCIsIC8vIEFzY2VuZGluZ1xuXHRERVNDID0gXCJERVNDXCIgLy8gRGVzY2VuZGluZ1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzaW5nbGUgY29uZGl0aW9uIGZvciBmaWx0ZXJpbmcgZGF0YS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25kaXRpb24ge1xuXHRwcm9wZXJ0eU5hbWU6IHN0cmluZyxcblx0b3BlcmF0b3I6IE9wZXJhdG9yLFxuXHR2YWx1ZTogYW55IHwgYW55W11cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2luZ2xlIHNvcnRpbmcgaW5zdHJ1Y3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU29ydCB7XG5cdHByb3BlcnR5TmFtZTogc3RyaW5nLFxuXHRkaXJlY3Rpb246IERpcmVjdGlvblxufVxuXG4vKipcbiAqIERlZmluZXMgb3B0aW9uYWwgcGFyYW1ldGVycyBmb3IgbGlzdCBhbmQgY291bnQgb3BlcmF0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcblx0Y29uZGl0aW9ucz86IENvbmRpdGlvbltdLFxuXHRzb3J0cz86IFNvcnRbXSxcblx0bGltaXQ/OiBudW1iZXIsXG5cdG9mZnNldD86IG51bWJlcixcblx0bGFuZ3VhZ2U/OiBzdHJpbmdcbn1cblxuaW1wb3J0IHsgVHlwZWRRdWVyeVBhcmFtZXRlciwgTmFtZWRRdWVyeVBhcmFtZXRlciB9IGZyb20gJy4vcXVlcnknO1xuXG4vKipcbiAqIEZhY2FkZSBjbGFzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgdW5kZXJseWluZyBEaXJpZ2libGUgRGF0YSBTdG9yZS5cbiAqIEFsbCBtZXRob2RzIHNlcmlhbGl6ZS9kZXNlcmlhbGl6ZSBKYXZhU2NyaXB0IG9iamVjdHMgdG8vZnJvbSBKU09OIHN0cmluZ3NcbiAqIGJlZm9yZSBpbnRlcmFjdGluZyB3aXRoIHRoZSBuYXRpdmUgSmF2YSBmYWNhZGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdG9yZSB7XG5cblx0LyoqXG5cdCAqIFNhdmVzIGEgbmV3IGVudHJ5IHRvIHRoZSBkYXRhIHN0b3JlLlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBlbnRyeSBUaGUgSmF2YVNjcmlwdCBvYmplY3QgdG8gc2F2ZS5cblx0ICogQHJldHVybnMgVGhlIElEIG9mIHRoZSBuZXdseSBjcmVhdGVkIGVudHJ5IChzdHJpbmcgb3IgbnVtYmVyKS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgc2F2ZShuYW1lOiBzdHJpbmcsIGVudHJ5OiBhbnkpOiBzdHJpbmcgfCBudW1iZXIge1xuXHRcdHJldHVybiBEYXRhU3RvcmVGYWNhZGUuc2F2ZShuYW1lLCBKU09OLnN0cmluZ2lmeShlbnRyeSkpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogSW5zZXJ0cyBhIG5ldyBlbnRyeSBvciB1cGRhdGVzIGFuIGV4aXN0aW5nIG9uZSBpZiB0aGUgSUQgaXMgcHJlc2VudC5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gZW50cnkgVGhlIEphdmFTY3JpcHQgb2JqZWN0IHRvIGluc2VydC91cGRhdGUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHVwc2VydChuYW1lOiBzdHJpbmcsIGVudHJ5OiBhbnkpOiB2b2lkIHtcblx0XHREYXRhU3RvcmVGYWNhZGUudXBzZXJ0KG5hbWUsIEpTT04uc3RyaW5naWZ5KGVudHJ5KSk7XG5cdH1cblx0XG5cdC8qKlxuXHQgKiBVcGRhdGVzIGFuIGV4aXN0aW5nIGVudHJ5LlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBlbnRyeSBUaGUgSmF2YVNjcmlwdCBvYmplY3Qgd2l0aCB0aGUgSUQgYW5kIHVwZGF0ZWQgZGF0YS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgdXBkYXRlKG5hbWU6IHN0cmluZywgZW50cnk6IGFueSk6IHZvaWQge1xuXHRcdERhdGFTdG9yZUZhY2FkZS51cGRhdGUobmFtZSwgSlNPTi5zdHJpbmdpZnkoZW50cnkpKTtcblx0fVxuXHRcblx0LyoqXG5cdCAqIExpc3RzIGVudHJpZXMgYmFzZWQgb24gb3B0aW9uYWwgZmlsdGVyaW5nLCBzb3J0aW5nLCBhbmQgcGFnaW5hdGlvbiBvcHRpb25zLlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbmFsIHtAbGluayBPcHRpb25zfSBmb3IgcXVlcnkgZXhlY3V0aW9uLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBKYXZhU2NyaXB0IG9iamVjdHMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGxpc3QobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT3B0aW9ucyk6IGFueVtdIHtcblx0XHRjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUubGlzdChuYW1lLCBvcHRpb25zID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgOiBudWxsKTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogQ291bnRzIHRoZSBudW1iZXIgb2YgZW50cmllcyBiYXNlZCBvbiBvcHRpb25hbCBmaWx0ZXJpbmcgb3B0aW9ucy5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25hbCB7QGxpbmsgT3B0aW9uc30gZm9yIHF1ZXJ5IGV4ZWN1dGlvbi5cblx0ICogQHJldHVybnMgVGhlIGNvdW50IG9mIG1hdGNoaW5nIGVudHJpZXMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGNvdW50KG5hbWU6IHN0cmluZywgb3B0aW9ucz86IE9wdGlvbnMpOiBudW1iZXIge1xuXHRcdGNvbnN0IG9wdGlvbnNTdHJpbmcgPSBvcHRpb25zID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgOiBudWxsO1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5jb3VudChuYW1lLCBvcHRpb25zU3RyaW5nKTtcblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyBhIHNpbmdsZSBlbnRyeSBieSBpdHMgSUQuXG5cdCAqIEBwYXJhbSBuYW1lIFRoZSBlbnRpdHkvdGFibGUgbmFtZS5cblx0ICogQHBhcmFtIGlkIFRoZSBJRCBvZiB0aGUgZW50cnkuXG5cdCAqIEByZXR1cm5zIFRoZSBlbnRyeSBvYmplY3QsIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldChuYW1lOiBzdHJpbmcsIGlkOiBhbnkpOiBhbnkgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5nZXQobmFtZSwgaWQpO1xuXHRcdC8vIEFzc3VtaW5nIHRoZSBuYXRpdmUgQVBJIHJldHVybnMgbnVsbC91bmRlZmluZWQgb3IgYW4gZW1wdHkgSlNPTiBzdHJpbmcgaWYgbm90IGZvdW5kLCBcblx0XHQvLyBvdGhlcndpc2UgSlNPTi5wYXJzZSBoYW5kbGVzIHRoZSBjb252ZXJzaW9uLlxuXHRcdGlmIChyZXN1bHQgPT09IG51bGwgfHwgcmVzdWx0ID09PSB1bmRlZmluZWQgfHwgcmVzdWx0ID09PSBcIlwiKSB7XG5cdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHRcdH1cblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9O1xuXG5cdC8qKlxuXHQgKiBEZWxldGVzIGFuIGVudHJ5IGJ5IGl0cyBJRC5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gaWQgVGhlIElEIG9mIHRoZSBlbnRyeSB0byByZW1vdmUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHJlbW92ZShuYW1lOiBzdHJpbmcsIGlkOiBhbnkpOiB2b2lkIHtcblx0XHREYXRhU3RvcmVGYWNhZGUuZGVsZXRlRW50cnkobmFtZSwgaWQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogRmluZHMgZW50cmllcyBtYXRjaGluZyBhbiBleGFtcGxlIG9iamVjdCAocXVlcnktYnktZXhhbXBsZSkuXG5cdCAqIEBwYXJhbSBuYW1lIFRoZSBlbnRpdHkvdGFibGUgbmFtZS5cblx0ICogQHBhcmFtIGV4YW1wbGUgQW4gb2JqZWN0IGNvbnRhaW5pbmcgcHJvcGVydGllcyB0byBtYXRjaC5cblx0ICogQHBhcmFtIGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuXHQgKiBAcGFyYW0gb2Zmc2V0IE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIG1hdGNoaW5nIEphdmFTY3JpcHQgb2JqZWN0cy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZmluZChuYW1lOiBzdHJpbmcsIGV4YW1wbGU6IGFueSwgbGltaXQ6IG51bWJlciA9IDEwMCwgb2Zmc2V0OiBudW1iZXIgPSAwKTogYW55W10ge1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5maW5kKG5hbWUsIEpTT04uc3RyaW5naWZ5KGV4YW1wbGUpLCBsaW1pdCwgb2Zmc2V0KTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogUXVlcmllcyBhbGwgZW50cmllcyBmb3IgYSBnaXZlbiBzY3JpcHQgd2l0aCBwYWdpbmF0aW9uLlxuXHQgKiBAcGFyYW0gcXVlcnkgVGhlIHF1ZXJ5IHNjcmlwdC5cblx0ICogQHBhcmFtIGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuXHQgKiBAcGFyYW0gb2Zmc2V0IE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIEphdmFTY3JpcHQgb2JqZWN0cy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgcXVlcnkocXVlcnk6IHN0cmluZywgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkUXVlcnlQYXJhbWV0ZXIgfCBOYW1lZFF1ZXJ5UGFyYW1ldGVyKVtdLCBsaW1pdDogbnVtYmVyID0gMTAwLCBvZmZzZXQ6IG51bWJlciA9IDApOiBhbnlbXSB7XG5cdFx0bGV0IGFycjogYW55W10gPSBbXTtcblx0ICAgIGlmIChwYXJhbWV0ZXJzID09IG51bGwpIHtcblx0ICAgICAgYXJyID0gW107XG5cdCAgICB9IGVsc2UgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzID09PSBcInN0cmluZ1wiKSB7XG5cdCAgICAgIHRyeSB7XG5cdCAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcblx0ICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGFyc2VkKSkge1xuXHQgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW5wdXQgcGFyYW1ldGVyIHN0cmluZyBtdXN0IHJlcHJlc2VudCBhIEpTT04gYXJyYXlcIik7XG5cdCAgICAgICAgfVxuXHQgICAgICAgIGFyciA9IHBhcnNlZDtcblx0ICAgICAgfSBjYXRjaCAoZSkge1xuXHQgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuXHQgICAgICB9XG5cdCAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVycykpIHtcblx0ICAgICAgYXJyID0gcGFyYW1ldGVycztcblx0ICAgIH0gZWxzZSB7XG5cdCAgICAgIHRocm93IG5ldyBFcnJvcihcIlBhcmFtZXRlcnMgbXVzdCBiZSBlaXRoZXIgYW4gYXJyYXkgb3IgYSBKU09OIHN0cmluZ1wiKTtcblx0ICAgIH1cblxuXHQgICAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeShxdWVyeSwgbnVsbCwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICBjb25zdCBmaXJzdCA9IGFyclswXTtcblxuXHQgICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5TmFtZWQocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gVHlwZWRRdWVyeVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnkocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gUHJpbWl0aXZlIGFycmF5XG5cdCAgICBpZiAoXG5cdCAgICAgIGFyci5ldmVyeShcblx0ICAgICAgICAodikgPT5cblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcInN0cmluZ1wiIHx8XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJudW1iZXJcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG5cdCAgICAgICAgICB2IGluc3RhbmNlb2YgRGF0ZVxuXHQgICAgICApXG5cdCAgICApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeShxdWVyeSwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbnN1cHBvcnRlZCBwYXJhbWV0ZXIgZm9ybWF0OiBcIiArIEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpKTtcblx0fVxuXHRcblx0LyoqXG5cdCAqIFF1ZXJpZXMgYWxsIGVudHJpZXMgZm9yIGEgZ2l2ZW4gZW50aXR5IG5hbWUgd2l0aG91dCBwYWdpbmF0aW9uLlxuXHQgKiBAcGFyYW0gcXVlcnkgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBhbGwgSmF2YVNjcmlwdCBvYmplY3RzLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBxdWVyeU5hdGl2ZShxdWVyeTogc3RyaW5nLCBwYXJhbWV0ZXJzPzogKHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBEYXRlIHwgVHlwZWRRdWVyeVBhcmFtZXRlciB8IE5hbWVkUXVlcnlQYXJhbWV0ZXIpW10sIGxpbWl0OiBudW1iZXIgPSAxMDAsIG9mZnNldDogbnVtYmVyID0gMCk6IGFueVtdIHtcblx0XHRsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXHRcdGlmIChwYXJhbWV0ZXJzID09IG51bGwpIHtcblx0ICAgICAgYXJyID0gW107XG5cdCAgICB9IGVsc2UgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzID09PSBcInN0cmluZ1wiKSB7XG5cdCAgICAgIHRyeSB7XG5cdCAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcblx0ICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGFyc2VkKSkge1xuXHQgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW5wdXQgcGFyYW1ldGVyIHN0cmluZyBtdXN0IHJlcHJlc2VudCBhIEpTT04gYXJyYXlcIik7XG5cdCAgICAgICAgfVxuXHQgICAgICAgIGFyciA9IHBhcnNlZDtcblx0ICAgICAgfSBjYXRjaCAoZSkge1xuXHQgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuXHQgICAgICB9XG5cdCAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVycykpIHtcblx0ICAgICAgYXJyID0gcGFyYW1ldGVycztcblx0ICAgIH0gZWxzZSB7XG5cdCAgICAgIHRocm93IG5ldyBFcnJvcihcIlBhcmFtZXRlcnMgbXVzdCBiZSBlaXRoZXIgYW4gYXJyYXkgb3IgYSBKU09OIHN0cmluZ1wiKTtcblx0ICAgIH1cblxuXHQgICAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeU5hdGl2ZShxdWVyeSwgbnVsbCwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICBjb25zdCBmaXJzdCA9IGFyclswXTtcblxuXHQgICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5TmF0aXZlTmFtZWQocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gVHlwZWRRdWVyeVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnlOYXRpdmUocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gUHJpbWl0aXZlIGFycmF5XG5cdCAgICBpZiAoXG5cdCAgICAgIGFyci5ldmVyeShcblx0ICAgICAgICAodikgPT5cblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcInN0cmluZ1wiIHx8XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJudW1iZXJcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG5cdCAgICAgICAgICB2IGluc3RhbmNlb2YgRGF0ZVxuXHQgICAgICApXG5cdCAgICApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeU5hdGl2ZShxdWVyeSwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbnN1cHBvcnRlZCBwYXJhbWV0ZXIgZm9ybWF0OiBcIiArIEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpKTtcblx0fVxuXHRcblx0Ly8gLS0tIE1ldGFkYXRhIEdldHRlcnMgLS0tXG5cblx0LyoqXG5cdCAqIEdldHMgdGhlIG5hbWUgb2YgdGhlIGVudGl0eSBhc3NvY2lhdGVkIHdpdGggdGhlIHN0b3JlIG5hbWUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldEVudGl0eU5hbWUobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gRGF0YVN0b3JlRmFjYWRlLmdldEVudGl0eU5hbWUobmFtZSk7XG5cdH1cblx0XG5cdC8qKlxuXHQgKiBHZXRzIHRoZSB1bmRlcmx5aW5nIGRhdGFiYXNlIHRhYmxlIG5hbWUgZm9yIHRoZSBlbnRpdHkuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldFRhYmxlTmFtZShuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdHJldHVybiBEYXRhU3RvcmVGYWNhZGUuZ2V0VGFibGVOYW1lKG5hbWUpO1xuXHR9XG5cdFx0XG5cdC8qKlxuXHQgKiBHZXRzIHRoZSBwcm9wZXJ0eSBuYW1lIHVzZWQgYXMgdGhlIElEIGZpZWxkIGluIHRoZSBlbnRpdHkgb2JqZWN0LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRJZE5hbWUobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gRGF0YVN0b3JlRmFjYWRlLmdldElkTmFtZShuYW1lKTtcblx0fVxuXHRcdFx0XG5cdC8qKlxuXHQgKiBHZXRzIHRoZSB1bmRlcmx5aW5nIGRhdGFiYXNlIGNvbHVtbiBuYW1lIHVzZWQgZm9yIHRoZSBJRCBmaWVsZC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZ2V0SWRDb2x1bW4obmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gRGF0YVN0b3JlRmFjYWRlLmdldElkQ29sdW1uKG5hbWUpO1xuXHR9XG5cbn1cblxuLy8gQHRzLWlnbm9yZVxuaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnKSB7XG5cdC8vIEB0cy1pZ25vcmVcblx0bW9kdWxlLmV4cG9ydHMgPSBTdG9yZTtcbn0iXSwKICAibWFwcGluZ3MiOiAiQUFBQSxNQUFNLGtCQUFrQixLQUFLLEtBQUsseURBQXlEO0FBS3BGLElBQUssV0FBTCxrQkFBS0EsY0FBTDtBQUNOLEVBQUFBLFVBQUEsUUFBSztBQUNMLEVBQUFBLFVBQUEsUUFBSztBQUNMLEVBQUFBLFVBQUEsUUFBSztBQUNMLEVBQUFBLFVBQUEsUUFBSztBQUNMLEVBQUFBLFVBQUEsUUFBSztBQUNMLEVBQUFBLFVBQUEsUUFBSztBQUNMLEVBQUFBLFVBQUEsVUFBTztBQUNQLEVBQUFBLFVBQUEsYUFBVTtBQUNWLEVBQUFBLFVBQUEsUUFBSztBQVRNLFNBQUFBO0FBQUEsR0FBQTtBQWVMLElBQUssWUFBTCxrQkFBS0MsZUFBTDtBQUNOLEVBQUFBLFdBQUEsU0FBTTtBQUNOLEVBQUFBLFdBQUEsVUFBTztBQUZJLFNBQUFBO0FBQUEsR0FBQTtBQXdDTCxNQUFNLE1BQU07QUFBQTtBQUFBO0FBQUE7QUFBQTtB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UixPQUFPO0FBQ0wsWUFBTSxJQUFJLE1BQU0scURBQXFEO0FBQUEsSUFDdkU7QUFFQSxRQUFJLElBQUksV0FBVyxHQUFHO0FBQ3ZCLFlBQU0sU0FBUyxnQkFBZ0IsWUFBWSxPQUFPLE1BQU0sT0FBTyxNQUFNO0FBQ3JFLGFBQU8sS0FBSyxNQUFNLE1BQU07QUFBQSxJQUN2QjtBQUVBLFVBQU0sUUFBUSxJQUFJLENBQUM7QUFHbkIsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxVQUFVLE9BQU87QUFDL0UsWUFBTSxTQUFTLGdCQUFnQixpQkFBaUIsT0FBTyxLQUFLLFVBQVUsR0FBRyxHQUFHLE9BQU8sTUFBTTtBQUN6RixhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFHQSxRQUFJLFNBQVMsT0FBTyxVQUFVLFlBQVksVUFBVSxTQUFTLEVBQUUsVUFBVSxRQUFRO0FBQ2xGLFlBQU0sU0FBUyxnQkFBZ0IsWUFBWSxPQUFPLEtBQUssVUFBVSxHQUFHLEdBQUcsT0FBTyxNQUFNO0FBQ3BGLGFBQU8sS0FBSyxNQUFNLE1BQU07QUFBQSxJQUN2QjtBQUdBLFFBQ0UsSUFBSTtBQUFBLE1BQ0YsQ0FBQyxNQUNDLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxhQUNiLGFBQWE7QUFBQSxJQUNqQixHQUNBO0FBQ0gsWUFBTSxTQUFTLGdCQUFnQixZQUFZLE9BQU8sS0FBSyxVQUFVLEdBQUcsR0FBRyxPQUFPLE1BQU07QUFDcEYsYUFBTyxLQUFLLE1BQU0sTUFBTTtBQUFBLElBQ3ZCO0FBRUEsVUFBTSxJQUFJLE1BQU0sbUNBQW1DLEtBQUssVUFBVSxVQUFVLENBQUM7QUFBQSxFQUNqRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLGNBQWMsTUFBc0I7QUFDakQsV0FBTyxnQkFBZ0IsY0FBYyxJQUFJO0FBQUEsRUFDMUM7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBLE9BQWMsYUFBYSxNQUFzQjtBQUNoRCxXQUFPLGdCQUFnQixhQUFhLElBQUk7QUFBQSxFQUN6QztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0EsT0FBYyxVQUFVLE1BQXNCO0FBQzdDLFdBQU8sZ0JBQWdCLFVBQVUsSUFBSTtBQUFBLEVBQ3RDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQSxPQUFjLFlBQVksTUFBc0I7QUFDL0MsV0FBTyxnQkFBZ0IsWUFBWSxJQUFJO0FBQUEsRUFDeEM7QUFFRDtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFbEMsU0FBTyxVQUFVO0FBQ2xCOyIsCiAgIm5hbWVzIjogWyJPcGVyYXRvciIsICJEaXJlY3Rpb24iXQp9Cg==
225
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3N0b3JlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBEYXRhU3RvcmVGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YVN0b3JlRmFjYWRlXCIpO1xuXG4vKipcbiAqIERlZmluZXMgdGhlIGF2YWlsYWJsZSBjb21wYXJpc29uIG9wZXJhdG9ycyBmb3IgcXVlcnkgY29uZGl0aW9ucy5cbiAqL1xuZXhwb3J0IGVudW0gT3BlcmF0b3Ige1xuXHRFUSA9IFwiPVwiLCAvLyBFcXVhbHNcblx0TkUgPSBcIjw+XCIsIC8vIE5vdCBFcXVhbHNcblx0R1QgPSBcIj5cIiwgLy8gR3JlYXRlciBUaGFuXG5cdExUID0gXCI8XCIsIC8vIExlc3MgVGhhblxuXHRHRSA9IFwiPj1cIiwgLy8gR3JlYXRlciBUaGFuIG9yIEVxdWFsc1xuXHRMRSA9IFwiPD1cIiwgLy8gTGVzcyBUaGFuIG9yIEVxdWFsc1xuXHRMSUtFID0gXCJMSUtFXCIsIC8vIFNRTCBMSUtFIG9wZXJhdG9yXG5cdEJFVFdFRU4gPSBcIkJFVFdFRU5cIiwgLy8gU1FMIEJFVFdFRU4gb3BlcmF0b3IgKHJlcXVpcmVzIHR3byB2YWx1ZXMpXG5cdElOID0gXCJJTlwiIC8vIFNRTCBJTiBvcGVyYXRvciAocmVxdWlyZXMgYSBMaXN0IG9yIEFycmF5IG9mIHZhbHVlcylcbn1cblxuLyoqXG4gKiBEZWZpbmVzIHRoZSBkaXJlY3Rpb24gZm9yIHNvcnRpbmcuXG4gKi9cbmV4cG9ydCBlbnVtIERpcmVjdGlvbiB7XG5cdEFTQyA9IFwiQVNDXCIsIC8vIEFzY2VuZGluZ1xuXHRERVNDID0gXCJERVNDXCIgLy8gRGVzY2VuZGluZ1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzaW5nbGUgY29uZGl0aW9uIGZvciBmaWx0ZXJpbmcgZGF0YS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25kaXRpb24ge1xuXHRwcm9wZXJ0eU5hbWU6IHN0cmluZyxcblx0b3BlcmF0b3I6IE9wZXJhdG9yLFxuXHR2YWx1ZTogYW55IHwgYW55W11cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2luZ2xlIHNvcnRpbmcgaW5zdHJ1Y3Rpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU29ydCB7XG5cdHByb3BlcnR5TmFtZTogc3RyaW5nLFxuXHRkaXJlY3Rpb246IERpcmVjdGlvblxufVxuXG4vKipcbiAqIERlZmluZXMgb3B0aW9uYWwgcGFyYW1ldGVycyBmb3IgbGlzdCBhbmQgY291bnQgb3BlcmF0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zIHtcblx0Y29uZGl0aW9ucz86IENvbmRpdGlvbltdLFxuXHRzb3J0cz86IFNvcnRbXSxcblx0bGltaXQ/OiBudW1iZXIsXG5cdG9mZnNldD86IG51bWJlcixcblx0bGFuZ3VhZ2U/OiBzdHJpbmdcbn1cblxuaW1wb3J0IHsgVHlwZWRRdWVyeVBhcmFtZXRlciwgTmFtZWRRdWVyeVBhcmFtZXRlciB9IGZyb20gJy4vcXVlcnknO1xuXG4vKipcbiAqIEZhY2FkZSBjbGFzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgdW5kZXJseWluZyBEaXJpZ2libGUgRGF0YSBTdG9yZS5cbiAqIEFsbCBtZXRob2RzIHNlcmlhbGl6ZS9kZXNlcmlhbGl6ZSBKYXZhU2NyaXB0IG9iamVjdHMgdG8vZnJvbSBKU09OIHN0cmluZ3NcbiAqIGJlZm9yZSBpbnRlcmFjdGluZyB3aXRoIHRoZSBuYXRpdmUgSmF2YSBmYWNhZGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdG9yZSB7XG5cblx0LyoqXG5cdCAqIFNhdmVzIGEgbmV3IGVudHJ5IHRvIHRoZSBkYXRhIHN0b3JlLlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBlbnRyeSBUaGUgSmF2YVNjcmlwdCBvYmplY3QgdG8gc2F2ZS5cblx0ICogQHJldHVybnMgVGhlIElEIG9mIHRoZSBuZXdseSBjcmVhdGVkIGVudHJ5IChzdHJpbmcgb3IgbnVtYmVyKS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgc2F2ZShuYW1lOiBzdHJpbmcsIGVudHJ5OiBhbnkpOiBzdHJpbmcgfCBudW1iZXIge1xuXHRcdHJldHVybiBEYXRhU3RvcmVGYWNhZGUuc2F2ZShuYW1lLCBKU09OLnN0cmluZ2lmeShlbnRyeSkpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogSW5zZXJ0cyBhIG5ldyBlbnRyeSBvciB1cGRhdGVzIGFuIGV4aXN0aW5nIG9uZSBpZiB0aGUgSUQgaXMgcHJlc2VudC5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gZW50cnkgVGhlIEphdmFTY3JpcHQgb2JqZWN0IHRvIGluc2VydC91cGRhdGUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHVwc2VydChuYW1lOiBzdHJpbmcsIGVudHJ5OiBhbnkpOiB2b2lkIHtcblx0XHREYXRhU3RvcmVGYWNhZGUudXBzZXJ0KG5hbWUsIEpTT04uc3RyaW5naWZ5KGVudHJ5KSk7XG5cdH1cblx0XG5cdC8qKlxuXHQgKiBVcGRhdGVzIGFuIGV4aXN0aW5nIGVudHJ5LlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBlbnRyeSBUaGUgSmF2YVNjcmlwdCBvYmplY3Qgd2l0aCB0aGUgSUQgYW5kIHVwZGF0ZWQgZGF0YS5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgdXBkYXRlKG5hbWU6IHN0cmluZywgZW50cnk6IGFueSk6IHZvaWQge1xuXHRcdERhdGFTdG9yZUZhY2FkZS51cGRhdGUobmFtZSwgSlNPTi5zdHJpbmdpZnkoZW50cnkpKTtcblx0fVxuXHRcblx0LyoqXG5cdCAqIExpc3RzIGVudHJpZXMgYmFzZWQgb24gb3B0aW9uYWwgZmlsdGVyaW5nLCBzb3J0aW5nLCBhbmQgcGFnaW5hdGlvbiBvcHRpb25zLlxuXHQgKiBAcGFyYW0gbmFtZSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEBwYXJhbSBvcHRpb25zIE9wdGlvbmFsIHtAbGluayBPcHRpb25zfSBmb3IgcXVlcnkgZXhlY3V0aW9uLlxuXHQgKiBAcmV0dXJucyBBbiBhcnJheSBvZiBKYXZhU2NyaXB0IG9iamVjdHMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGxpc3QobmFtZTogc3RyaW5nLCBvcHRpb25zPzogT3B0aW9ucyk6IGFueVtdIHtcblx0XHRjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUubGlzdChuYW1lLCBvcHRpb25zID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgOiBudWxsKTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogQ291bnRzIHRoZSBudW1iZXIgb2YgZW50cmllcyBiYXNlZCBvbiBvcHRpb25hbCBmaWx0ZXJpbmcgb3B0aW9ucy5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gb3B0aW9ucyBPcHRpb25hbCB7QGxpbmsgT3B0aW9uc30gZm9yIHF1ZXJ5IGV4ZWN1dGlvbi5cblx0ICogQHJldHVybnMgVGhlIGNvdW50IG9mIG1hdGNoaW5nIGVudHJpZXMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGNvdW50KG5hbWU6IHN0cmluZywgb3B0aW9ucz86IE9wdGlvbnMpOiBudW1iZXIge1xuXHRcdGNvbnN0IG9wdGlvbnNTdHJpbmcgPSBvcHRpb25zID8gSlNPTi5zdHJpbmdpZnkob3B0aW9ucykgOiBudWxsO1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5jb3VudChuYW1lLCBvcHRpb25zU3RyaW5nKTtcblx0XHRyZXR1cm4gcmVzdWx0O1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyBhIHNpbmdsZSBlbnRyeSBieSBpdHMgSUQuXG5cdCAqIEBwYXJhbSBuYW1lIFRoZSBlbnRpdHkvdGFibGUgbmFtZS5cblx0ICogQHBhcmFtIGlkIFRoZSBJRCBvZiB0aGUgZW50cnkuXG5cdCAqIEByZXR1cm5zIFRoZSBlbnRyeSBvYmplY3QsIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldChuYW1lOiBzdHJpbmcsIGlkOiBhbnkpOiBhbnkgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5nZXQobmFtZSwgaWQpO1xuXHRcdC8vIEFzc3VtaW5nIHRoZSBuYXRpdmUgQVBJIHJldHVybnMgbnVsbC91bmRlZmluZWQgb3IgYW4gZW1wdHkgSlNPTiBzdHJpbmcgaWYgbm90IGZvdW5kLCBcblx0XHQvLyBvdGhlcndpc2UgSlNPTi5wYXJzZSBoYW5kbGVzIHRoZSBjb252ZXJzaW9uLlxuXHRcdGlmIChyZXN1bHQgPT09IG51bGwgfHwgcmVzdWx0ID09PSB1bmRlZmluZWQgfHwgcmVzdWx0ID09PSBcIlwiKSB7XG5cdFx0XHRyZXR1cm4gdW5kZWZpbmVkO1xuXHRcdH1cblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9O1xuXG5cdC8qKlxuXHQgKiBEZWxldGVzIGFuIGVudHJ5IGJ5IGl0cyBJRC5cblx0ICogQHBhcmFtIG5hbWUgVGhlIGVudGl0eS90YWJsZSBuYW1lLlxuXHQgKiBAcGFyYW0gaWQgVGhlIElEIG9mIHRoZSBlbnRyeSB0byByZW1vdmUuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHJlbW92ZShuYW1lOiBzdHJpbmcsIGlkOiBhbnkpOiB2b2lkIHtcblx0XHREYXRhU3RvcmVGYWNhZGUuZGVsZXRlRW50cnkobmFtZSwgaWQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogRmluZHMgZW50cmllcyBtYXRjaGluZyBhbiBleGFtcGxlIG9iamVjdCAocXVlcnktYnktZXhhbXBsZSkuXG5cdCAqIEBwYXJhbSBuYW1lIFRoZSBlbnRpdHkvdGFibGUgbmFtZS5cblx0ICogQHBhcmFtIGV4YW1wbGUgQW4gb2JqZWN0IGNvbnRhaW5pbmcgcHJvcGVydGllcyB0byBtYXRjaC5cblx0ICogQHBhcmFtIGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuXHQgKiBAcGFyYW0gb2Zmc2V0IE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIG1hdGNoaW5nIEphdmFTY3JpcHQgb2JqZWN0cy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZmluZChuYW1lOiBzdHJpbmcsIGV4YW1wbGU6IGFueSwgbGltaXQ6IG51bWJlciA9IDEwMCwgb2Zmc2V0OiBudW1iZXIgPSAwKTogYW55W10ge1xuXHRcdGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5maW5kKG5hbWUsIEpTT04uc3RyaW5naWZ5KGV4YW1wbGUpLCBsaW1pdCwgb2Zmc2V0KTtcblx0XHRyZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogUXVlcmllcyBhbGwgZW50cmllcyBmb3IgYSBnaXZlbiBzY3JpcHQgd2l0aCBwYWdpbmF0aW9uLlxuXHQgKiBAcGFyYW0gcXVlcnkgVGhlIHF1ZXJ5IHNjcmlwdC5cblx0ICogQHBhcmFtIGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuLlxuXHQgKiBAcGFyYW0gb2Zmc2V0IE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIEphdmFTY3JpcHQgb2JqZWN0cy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgcXVlcnkocXVlcnk6IHN0cmluZywgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkUXVlcnlQYXJhbWV0ZXIgfCBOYW1lZFF1ZXJ5UGFyYW1ldGVyKVtdLCBsaW1pdDogbnVtYmVyID0gMTAwLCBvZmZzZXQ6IG51bWJlciA9IDApOiBhbnlbXSB7XG5cdFx0bGV0IGFycjogYW55W10gPSBbXTtcblx0ICAgIGlmIChwYXJhbWV0ZXJzID09IG51bGwpIHtcblx0ICAgICAgYXJyID0gW107XG5cdCAgICB9IGVsc2UgaWYgKHR5cGVvZiBwYXJhbWV0ZXJzID09PSBcInN0cmluZ1wiKSB7XG5cdCAgICAgIHRyeSB7XG5cdCAgICAgICAgY29uc3QgcGFyc2VkID0gSlNPTi5wYXJzZShwYXJhbWV0ZXJzKTtcblx0ICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGFyc2VkKSkge1xuXHQgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW5wdXQgcGFyYW1ldGVyIHN0cmluZyBtdXN0IHJlcHJlc2VudCBhIEpTT04gYXJyYXlcIik7XG5cdCAgICAgICAgfVxuXHQgICAgICAgIGFyciA9IHBhcnNlZDtcblx0ICAgICAgfSBjYXRjaCAoZSkge1xuXHQgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgSlNPTiBwYXJhbWV0ZXJzOiBcIiArIGUpO1xuXHQgICAgICB9XG5cdCAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkocGFyYW1ldGVycykpIHtcblx0ICAgICAgYXJyID0gcGFyYW1ldGVycztcblx0ICAgIH0gZWxzZSB7XG5cdCAgICAgIHRocm93IG5ldyBFcnJvcihcIlBhcmFtZXRlcnMgbXVzdCBiZSBlaXRoZXIgYW4gYXJyYXkgb3IgYSBKU09OIHN0cmluZ1wiKTtcblx0ICAgIH1cblxuXHQgICAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeShxdWVyeSwgbnVsbCwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICBjb25zdCBmaXJzdCA9IGFyclswXTtcblxuXHQgICAgLy8gTmFtZWRRdWVyeVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5TmFtZWQocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gVHlwZWRRdWVyeVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnkocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgLy8gUHJpbWl0aXZlIGFycmF5XG5cdCAgICBpZiAoXG5cdCAgICAgIGFyci5ldmVyeShcblx0ICAgICAgICAodikgPT5cblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcInN0cmluZ1wiIHx8XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJudW1iZXJcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwiYm9vbGVhblwiIHx8XG5cdCAgICAgICAgICB2IGluc3RhbmNlb2YgRGF0ZVx0fHxcblx0XHQgIFx0ICBBcnJheS5pc0FycmF5KHYpXG5cdCAgICAgIClcblx0ICAgICkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5KHF1ZXJ5LCBKU09OLnN0cmluZ2lmeShhcnIpLCBsaW1pdCwgb2Zmc2V0KTtcblx0XHQgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdCk7XG5cdCAgICB9XG5cblx0ICAgIHRocm93IG5ldyBFcnJvcihcIlVuc3VwcG9ydGVkIHBhcmFtZXRlciBmb3JtYXQ6IFwiICsgSlNPTi5zdHJpbmdpZnkocGFyYW1ldGVycykpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogUXVlcmllcyBhbGwgZW50cmllcyBmb3IgYSBnaXZlbiBlbnRpdHkgbmFtZSB3aXRob3V0IHBhZ2luYXRpb24uXG5cdCAqIEBwYXJhbSBxdWVyeSBUaGUgZW50aXR5L3RhYmxlIG5hbWUuXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIGFsbCBKYXZhU2NyaXB0IG9iamVjdHMuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIHF1ZXJ5TmF0aXZlKHF1ZXJ5OiBzdHJpbmcsIHBhcmFtZXRlcnM/OiAoc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IERhdGUgfCBUeXBlZFF1ZXJ5UGFyYW1ldGVyIHwgTmFtZWRRdWVyeVBhcmFtZXRlcilbXSwgbGltaXQ6IG51bWJlciA9IDEwMCwgb2Zmc2V0OiBudW1iZXIgPSAwKTogYW55W10ge1xuXHRcdGxldCBhcnI6IGFueVtdID0gW107XG5cdFx0aWYgKHBhcmFtZXRlcnMgPT0gbnVsbCkge1xuXHQgICAgICBhcnIgPSBbXTtcblx0ICAgIH0gZWxzZSBpZiAodHlwZW9mIHBhcmFtZXRlcnMgPT09IFwic3RyaW5nXCIpIHtcblx0ICAgICAgdHJ5IHtcblx0ICAgICAgICBjb25zdCBwYXJzZWQgPSBKU09OLnBhcnNlKHBhcmFtZXRlcnMpO1xuXHQgICAgICAgIGlmICghQXJyYXkuaXNBcnJheShwYXJzZWQpKSB7XG5cdCAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnB1dCBwYXJhbWV0ZXIgc3RyaW5nIG11c3QgcmVwcmVzZW50IGEgSlNPTiBhcnJheVwiKTtcblx0ICAgICAgICB9XG5cdCAgICAgICAgYXJyID0gcGFyc2VkO1xuXHQgICAgICB9IGNhdGNoIChlKSB7XG5cdCAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBKU09OIHBhcmFtZXRlcnM6IFwiICsgZSk7XG5cdCAgICAgIH1cblx0ICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwYXJhbWV0ZXJzKSkge1xuXHQgICAgICBhcnIgPSBwYXJhbWV0ZXJzO1xuXHQgICAgfSBlbHNlIHtcblx0ICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUGFyYW1ldGVycyBtdXN0IGJlIGVpdGhlciBhbiBhcnJheSBvciBhIEpTT04gc3RyaW5nXCIpO1xuXHQgICAgfVxuXG5cdCAgICBpZiAoYXJyLmxlbmd0aCA9PT0gMCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YVN0b3JlRmFjYWRlLnF1ZXJ5TmF0aXZlKHF1ZXJ5LCBudWxsLCBsaW1pdCwgb2Zmc2V0KTtcblx0XHQgIHJldHVybiBKU09OLnBhcnNlKHJlc3VsdCk7XG5cdCAgICB9XG5cblx0ICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG5cdCAgICAvLyBOYW1lZFF1ZXJ5UGFyYW1ldGVyIChoYXMgbmFtZSArIHR5cGUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwibmFtZVwiIGluIGZpcnN0ICYmIFwidHlwZVwiIGluIGZpcnN0KSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnlOYXRpdmVOYW1lZChxdWVyeSwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICAvLyBUeXBlZFF1ZXJ5UGFyYW1ldGVyIChoYXMgdHlwZSwgbm8gbmFtZSlcblx0ICAgIGlmIChmaXJzdCAmJiB0eXBlb2YgZmlyc3QgPT09IFwib2JqZWN0XCIgJiYgXCJ0eXBlXCIgaW4gZmlyc3QgJiYgIShcIm5hbWVcIiBpbiBmaXJzdCkpIHtcblx0XHQgIGNvbnN0IHJlc3VsdCA9IERhdGFTdG9yZUZhY2FkZS5xdWVyeU5hdGl2ZShxdWVyeSwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgbGltaXQsIG9mZnNldCk7XG5cdFx0ICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuXHQgICAgfVxuXG5cdCAgICAvLyBQcmltaXRpdmUgYXJyYXlcblx0ICAgIGlmIChcblx0ICAgICAgYXJyLmV2ZXJ5KFxuXHQgICAgICAgICh2KSA9PlxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwic3RyaW5nXCIgfHxcblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcIm51bWJlclwiIHx8XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJib29sZWFuXCIgfHxcblx0ICAgICAgICAgIHYgaW5zdGFuY2VvZiBEYXRlIHx8XG5cdFx0XHQgIEFycmF5LmlzQXJyYXkodilcblx0ICAgICAgKVxuXHQgICAgKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhU3RvcmVGYWNhZGUucXVlcnlOYXRpdmUocXVlcnksIEpTT04uc3RyaW5naWZ5KGFyciksIGxpbWl0LCBvZmZzZXQpO1xuXHRcdCAgcmV0dXJuIEpTT04ucGFyc2UocmVzdWx0KTtcblx0ICAgIH1cblxuXHQgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgcGFyYW1ldGVyIGZvcm1hdDogXCIgKyBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKSk7XG5cdH1cblx0XG5cdC8vIC0tLSBNZXRhZGF0YSBHZXR0ZXJzIC0tLVxuXG5cdC8qKlxuXHQgKiBHZXRzIHRoZSBuYW1lIG9mIHRoZSBlbnRpdHkgYXNzb2NpYXRlZCB3aXRoIHRoZSBzdG9yZSBuYW1lLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRFbnRpdHlOYW1lKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIERhdGFTdG9yZUZhY2FkZS5nZXRFbnRpdHlOYW1lKG5hbWUpO1xuXHR9XG5cdFxuXHQvKipcblx0ICogR2V0cyB0aGUgdW5kZXJseWluZyBkYXRhYmFzZSB0YWJsZSBuYW1lIGZvciB0aGUgZW50aXR5LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRUYWJsZU5hbWUobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gRGF0YVN0b3JlRmFjYWRlLmdldFRhYmxlTmFtZShuYW1lKTtcblx0fVxuXHRcdFxuXHQvKipcblx0ICogR2V0cyB0aGUgcHJvcGVydHkgbmFtZSB1c2VkIGFzIHRoZSBJRCBmaWVsZCBpbiB0aGUgZW50aXR5IG9iamVjdC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZ2V0SWROYW1lKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIERhdGFTdG9yZUZhY2FkZS5nZXRJZE5hbWUobmFtZSk7XG5cdH1cblx0XHRcdFxuXHQvKipcblx0ICogR2V0cyB0aGUgdW5kZXJseWluZyBkYXRhYmFzZSBjb2x1bW4gbmFtZSB1c2VkIGZvciB0aGUgSUQgZmllbGQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldElkQ29sdW1uKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIERhdGFTdG9yZUZhY2FkZS5nZXRJZENvbHVtbihuYW1lKTtcblx0fVxuXG59XG5cbi8vIEB0cy1pZ25vcmVcbmlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJykge1xuXHQvLyBAdHMtaWdub3JlXG5cdG1vZHVsZS5leHBvcnRzID0gU3RvcmU7XG59Il0sCiAgIm1hcHBpbmdzIjogIkFBQUEsTUFBTSxrQkFBa0IsS0FBSyxLQUFLLHlEQUF5RDtBQUtwRixJQUFLLFdBQUwsa0JBQUtBLGNBQUw7QUFDTixFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFFBQUs7QUFDTCxFQUFBQSxVQUFBLFVBQU87QUFDUCxFQUFBQSxVQUFBLGFBQVU7QUFDVixFQUFBQSxVQUFBLFFBQUs7QUFUTSxTQUFBQTtBQUFBLEdBQUE7QUFlTCxJQUFLLFlBQUwsa0JBQUtDLGVBQUw7QUFDTixFQUFBQSxXQUFBLFNBQU07QUFDTixFQUFBQSxXQUFBLFVBQU87QUFGSSxTQUFBQTtBQUFBLEdBQUE7QUF3Q0wsTUFBTSxNQUFNO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRbEIsT0FBYyxLQUFLLE1BQWMsT0FBNkI7QUFDN0QsV0FBTyxnQkFBZ0IsS0FBSyxNQUFNLEtBQUssVUFBVSxLQUFLLENBQUM7QUFBQSxFQUN4RDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsT0FBTyxNQUFjLE9BQWtCO0FBQ3BELG9CQUFnQixPQUFPLE1BQU0sS0FBSyxVQUFVLEtBQUssQ0FBQztBQUFBLEVBQ25EO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsT0FBYyxPQUFPLE1BQWMsT0FBa0I7QUFDcEQsb0JBQWdCLE9BQU8sTUFBTSxLQUFLLFVBQVUsS0FBSyxDQUFDO0FBQUEsRUFDbkQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWMsS0FBSyxNQUFjLFNBQTBCO0FBQzFELFVBQU0sU0FBUyxnQkFBZ0IsS0FBSyxNQUFNLFVBQVUsS0FBSyxVQUFVLE9BQU8sSUFBSSxJQUFJO0FBQ2xGLFdBQU8sS0FBSyxNQUFNLE1BQU07QUFBQSxFQUN6QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUUEsT0FBYyxNQUFNLE1BQWMsU0FBMkI7QUFDNUQsVUFBTSxnQkFBZ0IsVUFBVSxLQUFLLFVBQVUsT0FBTyxJQUFJO0FBQzFELFVBQU0sU0FBUyxnQkFBZ0IsTUFBTSxNQUFNLGFBQWE7QUFDeEQsV0FBTztBQUFBLEVBQ1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWMsSUFBSSxNQUFjLElBQTBCO0FBQ3pELFVBQU0sU0FBUyxnQkFBZ0IsSUFBSSxNQUFNLEVBQUU7QUFHM0MsUUFBSSxXQUFXLFFBQVEsV0FBVyxVQUFhLFdBQVcsSUFBSTtBQUM3RCxhQUFPO0FBQUEsSUFDUjtBQUNBLFdBQU8sS0FBSyxNQUFNLE1BQU07QUFBQSxFQUN6QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsT0FBTyxNQUFjLElBQWU7QUFDakQsb0JBQWdCLFlBQVksTUFBTSxFQUFFO0FBQUEsRUFDckM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFVQSxPQUFjLEtBQUssTUFBYyxTQUFjLFFBQWdCLEtBQUssU0FBaUIsR0FBVTtBQUM5RixVQUFNLFNBQVMsZ0JBQWdCLEtBQUssTUFBTSxLQUFLLFVBQVUsT0FBTyxHQUFHLE9BQU8sTUFBTTtBQUNoRixXQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsRUFDekI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU0EsT0FBYyxNQUFNLE9BQWUsWUFBK0YsUUFBZ0IsS0FBSyxTQUFpQixHQUFVO0FBQ2pMLFFBQUksTUFBYSxDQUFDO0FBQ2YsUUFBSSxjQUFjLE1BQU07QUFDdEIsWUFBTSxDQUFDO0FBQUEsSUFDVCxXQUFXLE9BQU8sZUFBZSxVQUFVO0FBQ3pDLFVBQUk7QUFDRixjQUFNLFNBQVMsS0FBSyxNQUFNLFVBQVU7QUFDcEMsWUFBSSxDQUFDLE1BQU0sUUFBUSxNQUFNLEdBQUc7QUFDMUIsZ0JBQU0sSUFBSSxNQUFNLG9EQUFvRDtBQUFBLFFBQ3RFO0FBQ0EsY0FBTTtBQUFBLE1BQ1IsU0FBUyxHQUFHO0FBQ1YsY0FBTSxJQUFJLE1BQU0sOEJBQThCLENBQUM7QUFBQSxNQUNqRDtBQUFBLElBQ0YsV0FBVyxNQUFNLFFBQVEsVUFBVSxHQUFHO0FBQ3BDLFlBQU07QUFBQSxJQUNSLE9BQU87QUFDTCxZQUFNLElBQUksTUFBTSxxREFBcUQ7QUFBQSxJQUN2RTtBQUVBLFFBQUksSUFBSSxXQUFXLEdBQUc7QUFDdkIsWUFBTSxTQUFTLGdCQUFnQixNQUFNLE9BQU8sTUFBTSxPQUFPLE1BQU07QUFDL0QsYUFBTyxLQUFLLE1BQU0sTUFBTTtBQUFBLElBQ3ZCO0FBRUEsVUFBTSxRQUFRLElBQUksQ0FBQztBQUduQixRQUFJLFNBQVMsT0FBTyxVQUFVLFlBQVksVUFBVSxTQUFTLFVBQVUsT0FBTztBQUMvRSxZQUFNLFNBQVMsZ0JBQWdCLFdBQVcsT0FBTyxLQUFLLFVBQVUsR0FBRyxHQUFHLE9BQU8sTUFBTTtBQUNuRixhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFHQSxRQUFJLFNBQVMsT0FBTyxVQUFVLFlBQVksVUFBVSxTQUFTLEVBQUUsVUFBVSxRQUFRO0FBQ2xGLFlBQU0sU0FBUyxnQkFBZ0IsTUFBTSxPQUFPLEtBQUssVUFBVSxHQUFHLEdBQUcsT0FBTyxNQUFNO0FBQzlFLGFBQU8sS0FBSyxNQUFNLE1BQU07QUFBQSxJQUN2QjtBQUdBLFFBQ0UsSUFBSTtBQUFBLE1BQ0YsQ0FBQyxNQUNDLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxhQUNiLGFBQWEsUUFDakIsTUFBTSxRQUFRLENBQUM7QUFBQSxJQUNmLEdBQ0E7QUFDSCxZQUFNLFNBQVMsZ0JBQWdCLE1BQU0sT0FBTyxLQUFLLFVBQVUsR0FBRyxHQUFHLE9BQU8sTUFBTTtBQUM5RSxhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFFQSxVQUFNLElBQUksTUFBTSxtQ0FBbUMsS0FBSyxVQUFVLFVBQVUsQ0FBQztBQUFBLEVBQ2pGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsT0FBYyxZQUFZLE9BQWUsWUFBK0YsUUFBZ0IsS0FBSyxTQUFpQixHQUFVO0FBQ3ZMLFFBQUksTUFBYSxDQUFDO0FBQ2xCLFFBQUksY0FBYyxNQUFNO0FBQ25CLFlBQU0sQ0FBQztBQUFBLElBQ1QsV0FBVyxPQUFPLGVBQWUsVUFBVTtBQUN6QyxVQUFJO0FBQ0YsY0FBTSxTQUFTLEtBQUssTUFBTSxVQUFVO0FBQ3BDLFlBQUksQ0FBQyxNQUFNLFFBQVEsTUFBTSxHQUFHO0FBQzFCLGdCQUFNLElBQUksTUFBTSxvREFBb0Q7QUFBQSxRQUN0RTtBQUNBLGNBQU07QUFBQSxNQUNSLFNBQVMsR0FBRztBQUNWLGNBQU0sSUFBSSxNQUFNLDhCQUE4QixDQUFDO0FBQUEsTUFDakQ7QUFBQSxJQUNGLFdBQVcsTUFBTSxRQUFRLFVBQVUsR0FBRztBQUNwQyxZQUFNO0FBQUEsSUFDUixPQUFPO0FBQ0wsWUFBTSxJQUFJLE1BQU0scURBQXFEO0FBQUEsSUFDdkU7QUFFQSxRQUFJLElBQUksV0FBVyxHQUFHO0FBQ3ZCLFlBQU0sU0FBUyxnQkFBZ0IsWUFBWSxPQUFPLE1BQU0sT0FBTyxNQUFNO0FBQ3JFLGFBQU8sS0FBSyxNQUFNLE1BQU07QUFBQSxJQUN2QjtBQUVBLFVBQU0sUUFBUSxJQUFJLENBQUM7QUFHbkIsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxVQUFVLE9BQU87QUFDL0UsWUFBTSxTQUFTLGdCQUFnQixpQkFBaUIsT0FBTyxLQUFLLFVBQVUsR0FBRyxHQUFHLE9BQU8sTUFBTTtBQUN6RixhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFHQSxRQUFJLFNBQVMsT0FBTyxVQUFVLFlBQVksVUFBVSxTQUFTLEVBQUUsVUFBVSxRQUFRO0FBQ2xGLFlBQU0sU0FBUyxnQkFBZ0IsWUFBWSxPQUFPLEtBQUssVUFBVSxHQUFHLEdBQUcsT0FBTyxNQUFNO0FBQ3BGLGFBQU8sS0FBSyxNQUFNLE1BQU07QUFBQSxJQUN2QjtBQUdBLFFBQ0UsSUFBSTtBQUFBLE1BQ0YsQ0FBQyxNQUNDLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxhQUNiLGFBQWEsUUFDbkIsTUFBTSxRQUFRLENBQUM7QUFBQSxJQUNiLEdBQ0E7QUFDSCxZQUFNLFNBQVMsZ0JBQWdCLFlBQVksT0FBTyxLQUFLLFVBQVUsR0FBRyxHQUFHLE9BQU8sTUFBTTtBQUNwRixhQUFPLEtBQUssTUFBTSxNQUFNO0FBQUEsSUFDdkI7QUFFQSxVQUFNLElBQUksTUFBTSxtQ0FBbUMsS0FBSyxVQUFVLFVBQVUsQ0FBQztBQUFBLEVBQ2pGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsY0FBYyxNQUFzQjtBQUNqRCxXQUFPLGdCQUFnQixjQUFjLElBQUk7QUFBQSxFQUMxQztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0EsT0FBYyxhQUFhLE1BQXNCO0FBQ2hELFdBQU8sZ0JBQWdCLGFBQWEsSUFBSTtBQUFBLEVBQ3pDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQSxPQUFjLFVBQVUsTUFBc0I7QUFDN0MsV0FBTyxnQkFBZ0IsVUFBVSxJQUFJO0FBQUEsRUFDdEM7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBLE9BQWMsWUFBWSxNQUFzQjtBQUMvQyxXQUFPLGdCQUFnQixZQUFZLElBQUk7QUFBQSxFQUN4QztBQUVEO0FBR0EsSUFBSSxPQUFPLFdBQVcsYUFBYTtBQUVsQyxTQUFPLFVBQVU7QUFDbEI7IiwKICAibmFtZXMiOiBbIk9wZXJhdG9yIiwgIkRpcmVjdGlvbiJdCn0K
@@ -41,7 +41,7 @@ class Update {
41
41
  return result;
42
42
  }
43
43
  if (arr.every(
44
- (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date
44
+ (v) => typeof v === "string" || typeof v === "number" || typeof v === "boolean" || v instanceof Date || Array.isArray(v)
45
45
  )) {
46
46
  const result = DatabaseFacade.update(sql, JSON.stringify(arr), datasourceName);
47
47
  return result;
@@ -55,4 +55,4 @@ if (typeof module !== "undefined") {
55
55
  export {
56
56
  Update
57
57
  };
58
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3VwZGF0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgRGF0YWJhc2VGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YWJhc2VGYWNhZGVcIik7XG5cbi8qKlxuICogSW50ZXJmYWNlIHVzZWQgZm9yIGNvbXBsZXggcGFyYW1ldGVyIHR5cGVzIGlmIG5lZWRlZCwgb3RoZXJ3aXNlIHByaW1pdGl2ZSB0eXBlcyBhcmUgdXNlZCBkaXJlY3RseS5cbiAqL1xuZXhwb3J0IHR5cGUgVHlwZWRVcGRhdGVQYXJhbWV0ZXIgPSB7XG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHVua25vd247XG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbmluZyBhIHBhcmFtZXRlciBmb3IgYSBuYW1lZCB1cGRhdGUgcXVlcnkgKHVzaW5nIHBsYWNlaG9sZGVycyBsaWtlIDpwYXJhbU5hbWUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hbWVkVXBkYXRlUGFyYW1ldGVyIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZhbHVlOiBhbnk7XG59XG5cblxuLyoqXG4gKiBGYWNhZGUgY2xhc3MgZm9yIGV4ZWN1dGluZyBTUUwgVVBEQVRFLCBJTlNFUlQsIGFuZCBERUxFVEUgc3RhdGVtZW50cy5cbiAqIFBhcmFtZXRlcnMgYXJyYXkgc3VwcG9ydHMgcHJpbWl0aXZlcyBlLmcuIGBbMSwgJ0pvaG4nLCAzNC41Nl1gIG9yIG9iamVjdHMgaW4gZm9ybWF0IGVpdGhlciBgeyd0eXBlJzonW0RBVEFfVFlQRV0nLCAndmFsdWUnOltWQUxVRV19YCBvciBgeyduYW1lJzonW3N0cmluZ10nLCAndHlwZSc6J1tEQVRBX1RZUEVdJywgJ3ZhbHVlJzpbVkFMVUVdfWAgZS5nLiBgW3sndHlwZSc6J0NIQVInLCAndmFsdWUnOidJU0JOMTkyMDIzMjMzMjInfV1gIG9yIGBbeyduYW1lJzogJ29yZGVyX251bWJlcicsICd0eXBlJzonQ0hBUicsICd2YWx1ZSc6J0lTQk4xOTIwMjMyMzMyMid9XWBcbiAqL1xuZXhwb3J0IGNsYXNzIFVwZGF0ZSB7XG5cblx0LyoqXG5cdCAqIEV4ZWN1dGVzIGEgcGFyYW1ldGVyaXplZCBTUUwgdXBkYXRlIHN0YXRlbWVudCAoSU5TRVJULCBVUERBVEUsIG9yIERFTEVURSkuXG5cdCAqXG5cdCAqIEBwYXJhbSBzcWwgVGhlIFNRTCBxdWVyeSB0byBleGVjdXRlLlxuXHQgKiBAcGFyYW0gcGFyYW1ldGVycyBBbiBvcHRpb25hbCBhcnJheSBvZiB2YWx1ZXMgKHByaW1pdGl2ZXMsIFR5cGVkUXVlcnlQYXJhbWV0ZXIgb3IgTmFtZWRRdWVyeVBhcmFtZXRlciBvYmplY3RzKSB0byByZXBsYWNlICc/JyBvciA6cGFyYW1OYW1lIHBsYWNlaG9sZGVycy5cblx0ICogQHBhcmFtIGRhdGFzb3VyY2VOYW1lIFRoZSBuYW1lIG9mIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uIHRvIHVzZSAob3B0aW9uYWwpLlxuXHQgKiBAcmV0dXJucyBUaGUgbnVtYmVyIG9mIHJvd3MgYWZmZWN0ZWQgYnkgdGhlIHN0YXRlbWVudC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZXhlY3V0ZShzcWw6IHN0cmluZywgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkVXBkYXRlUGFyYW1ldGVyIHwgTmFtZWRVcGRhdGVQYXJhbWV0ZXIpW10sIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nKTogbnVtYmVyIHtcblx0XHRsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXG5cdCAgICBpZiAocGFyYW1ldGVycyA9PSBudWxsKSB7XG5cdCAgICAgIGFyciA9IFtdO1xuXHQgICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gXCJzdHJpbmdcIikge1xuXHQgICAgICB0cnkge1xuXHQgICAgICAgIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UocGFyYW1ldGVycyk7XG5cdCAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcnNlZCkpIHtcblx0ICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIklucHV0IHBhcmFtZXRlciBzdHJpbmcgbXVzdCByZXByZXNlbnQgYSBKU09OIGFycmF5XCIpO1xuXHQgICAgICAgIH1cblx0ICAgICAgICBhcnIgPSBwYXJzZWQ7XG5cdCAgICAgIH0gY2F0Y2ggKGUpIHtcblx0ICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIEpTT04gcGFyYW1ldGVyczogXCIgKyBlKTtcblx0ICAgICAgfVxuXHQgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnMpKSB7XG5cdCAgICAgIGFyciA9IHBhcmFtZXRlcnM7XG5cdCAgICB9IGVsc2Uge1xuXHQgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJQYXJhbWV0ZXJzIG11c3QgYmUgZWl0aGVyIGFuIGFycmF5IG9yIGEgSlNPTiBzdHJpbmdcIik7XG5cdCAgICB9XG5cblx0ICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBudWxsLCBkYXRhc291cmNlTmFtZSk7XG5cdCAgICAgIHJldHVybiByZXN1bHQ7XG5cdCAgICB9XG5cblx0ICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG5cdCAgICAvLyBOYW1lZFVwZGF0ZVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YWJhc2VGYWNhZGUudXBkYXRlTmFtZWQoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdFx0ICByZXR1cm4gcmVzdWx0O1xuXHQgICAgfVxuXG5cdCAgICAvLyBUeXBlZFVwZGF0ZVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdCAgICAgIHJldHVybiByZXN1bHQ7XG5cdCAgICB9XG5cblx0ICAgIC8vIFByaW1pdGl2ZSBhcnJheVxuXHQgICAgaWYgKFxuXHQgICAgICBhcnIuZXZlcnkoXG5cdCAgICAgICAgKHYpID0+XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwibnVtYmVyXCIgfHxcblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcImJvb2xlYW5cIiB8fFxuXHQgICAgICAgICAgdiBpbnN0YW5jZW9mIERhdGVcblx0ICAgICAgKVxuXHQgICAgKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdFx0ICByZXR1cm4gcmVzdWx0O1xuXHQgICAgfVxuXG5cdCAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbnN1cHBvcnRlZCBwYXJhbWV0ZXIgZm9ybWF0OiBcIiArIEpTT04uc3RyaW5naWZ5KHBhcmFtZXRlcnMpKTtcblx0fVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFVwZGF0ZTtcbn0iXSwKICAibWFwcGluZ3MiOiAiQUFBQSxNQUFNLGlCQUFpQixLQUFLLEtBQUssd0RBQXdEO0FBd0JsRixNQUFNLE9BQU87QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFVbkIsT0FBYyxRQUFRLEtBQWEsWUFBaUcsZ0JBQWlDO0FBQ3BLLFFBQUksTUFBYSxDQUFDO0FBRWYsUUFBSSxjQUFjLE1BQU07QUFDdEIsWUFBTSxDQUFDO0FBQUEsSUFDVCxXQUFXLE9BQU8sZUFBZSxVQUFVO0FBQ3pDLFVBQUk7QUFDRixjQUFNLFNBQVMsS0FBSyxNQUFNLFVBQVU7QUFDcEMsWUFBSSxDQUFDLE1BQU0sUUFBUSxNQUFNLEdBQUc7QUFDMUIsZ0JBQU0sSUFBSSxNQUFNLG9EQUFvRDtBQUFBLFFBQ3RFO0FBQ0EsY0FBTTtBQUFBLE1BQ1IsU0FBUyxHQUFHO0FBQ1YsY0FBTSxJQUFJLE1BQU0sOEJBQThCLENBQUM7QUFBQSxNQUNqRDtBQUFBLElBQ0YsV0FBVyxNQUFNLFFBQVEsVUFBVSxHQUFHO0FBQ3BDLFlBQU07QUFBQSxJQUNSLE9BQU87QUFDTCxZQUFNLElBQUksTUFBTSxxREFBcUQ7QUFBQSxJQUN2RTtBQUVBLFFBQUksSUFBSSxXQUFXLEdBQUc7QUFDdkIsWUFBTSxTQUFTLGVBQWUsT0FBTyxLQUFLLE1BQU0sY0FBYztBQUMzRCxhQUFPO0FBQUEsSUFDVDtBQUVBLFVBQU0sUUFBUSxJQUFJLENBQUM7QUFHbkIsUUFBSSxTQUFTLE9BQU8sVUFBVSxZQUFZLFVBQVUsU0FBUyxVQUFVLE9BQU87QUFDL0UsWUFBTSxTQUFTLGVBQWUsWUFBWSxLQUFLLEtBQUssVUFBVSxHQUFHLEdBQUcsY0FBYztBQUNsRixhQUFPO0FBQUEsSUFDTjtBQUdBLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsRUFBRSxVQUFVLFFBQVE7QUFDbEYsWUFBTSxTQUFTLGVBQWUsT0FBTyxLQUFLLEtBQUssVUFBVSxHQUFHLEdBQUcsY0FBYztBQUMxRSxhQUFPO0FBQUEsSUFDVDtBQUdBLFFBQ0UsSUFBSTtBQUFBLE1BQ0YsQ0FBQyxNQUNDLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxZQUNiLE9BQU8sTUFBTSxhQUNiLGFBQWE7QUFBQSxJQUNqQixHQUNBO0FBQ0gsWUFBTSxTQUFTLGVBQWUsT0FBTyxLQUFLLEtBQUssVUFBVSxHQUFHLEdBQUcsY0FBYztBQUM3RSxhQUFPO0FBQUEsSUFDTjtBQUVBLFVBQU0sSUFBSSxNQUFNLG1DQUFtQyxLQUFLLFVBQVUsVUFBVSxDQUFDO0FBQUEsRUFDakY7QUFDRDtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFbEMsU0FBTyxVQUFVO0FBQ2xCOyIsCiAgIm5hbWVzIjogW10KfQo=
58
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RiL3VwZGF0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgRGF0YWJhc2VGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkuZGIuRGF0YWJhc2VGYWNhZGVcIik7XG5cbi8qKlxuICogSW50ZXJmYWNlIHVzZWQgZm9yIGNvbXBsZXggcGFyYW1ldGVyIHR5cGVzIGlmIG5lZWRlZCwgb3RoZXJ3aXNlIHByaW1pdGl2ZSB0eXBlcyBhcmUgdXNlZCBkaXJlY3RseS5cbiAqL1xuZXhwb3J0IHR5cGUgVHlwZWRVcGRhdGVQYXJhbWV0ZXIgPSB7XG4gIHJlYWRvbmx5IHR5cGU6IHN0cmluZztcbiAgcmVhZG9ubHkgdmFsdWU6IHVua25vd247XG59O1xuXG4vKipcbiAqIEludGVyZmFjZSBkZWZpbmluZyBhIHBhcmFtZXRlciBmb3IgYSBuYW1lZCB1cGRhdGUgcXVlcnkgKHVzaW5nIHBsYWNlaG9sZGVycyBsaWtlIDpwYXJhbU5hbWUpLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hbWVkVXBkYXRlUGFyYW1ldGVyIHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZhbHVlOiBhbnk7XG59XG5cblxuLyoqXG4gKiBGYWNhZGUgY2xhc3MgZm9yIGV4ZWN1dGluZyBTUUwgVVBEQVRFLCBJTlNFUlQsIGFuZCBERUxFVEUgc3RhdGVtZW50cy5cbiAqIFBhcmFtZXRlcnMgYXJyYXkgc3VwcG9ydHMgcHJpbWl0aXZlcyBlLmcuIGBbMSwgJ0pvaG4nLCAzNC41Nl1gIG9yIG9iamVjdHMgaW4gZm9ybWF0IGVpdGhlciBgeyd0eXBlJzonW0RBVEFfVFlQRV0nLCAndmFsdWUnOltWQUxVRV19YCBvciBgeyduYW1lJzonW3N0cmluZ10nLCAndHlwZSc6J1tEQVRBX1RZUEVdJywgJ3ZhbHVlJzpbVkFMVUVdfWAgZS5nLiBgW3sndHlwZSc6J0NIQVInLCAndmFsdWUnOidJU0JOMTkyMDIzMjMzMjInfV1gIG9yIGBbeyduYW1lJzogJ29yZGVyX251bWJlcicsICd0eXBlJzonQ0hBUicsICd2YWx1ZSc6J0lTQk4xOTIwMjMyMzMyMid9XWBcbiAqL1xuZXhwb3J0IGNsYXNzIFVwZGF0ZSB7XG5cblx0LyoqXG5cdCAqIEV4ZWN1dGVzIGEgcGFyYW1ldGVyaXplZCBTUUwgdXBkYXRlIHN0YXRlbWVudCAoSU5TRVJULCBVUERBVEUsIG9yIERFTEVURSkuXG5cdCAqXG5cdCAqIEBwYXJhbSBzcWwgVGhlIFNRTCBxdWVyeSB0byBleGVjdXRlLlxuXHQgKiBAcGFyYW0gcGFyYW1ldGVycyBBbiBvcHRpb25hbCBhcnJheSBvZiB2YWx1ZXMgKHByaW1pdGl2ZXMsIFR5cGVkUXVlcnlQYXJhbWV0ZXIgb3IgTmFtZWRRdWVyeVBhcmFtZXRlciBvYmplY3RzKSB0byByZXBsYWNlICc/JyBvciA6cGFyYW1OYW1lIHBsYWNlaG9sZGVycy5cblx0ICogQHBhcmFtIGRhdGFzb3VyY2VOYW1lIFRoZSBuYW1lIG9mIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uIHRvIHVzZSAob3B0aW9uYWwpLlxuXHQgKiBAcmV0dXJucyBUaGUgbnVtYmVyIG9mIHJvd3MgYWZmZWN0ZWQgYnkgdGhlIHN0YXRlbWVudC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZXhlY3V0ZShzcWw6IHN0cmluZywgcGFyYW1ldGVycz86IChzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IFR5cGVkVXBkYXRlUGFyYW1ldGVyIHwgTmFtZWRVcGRhdGVQYXJhbWV0ZXIpW10sIGRhdGFzb3VyY2VOYW1lPzogc3RyaW5nKTogbnVtYmVyIHtcblx0XHRsZXQgYXJyOiBhbnlbXSA9IFtdO1xuXG5cdCAgICBpZiAocGFyYW1ldGVycyA9PSBudWxsKSB7XG5cdCAgICAgIGFyciA9IFtdO1xuXHQgICAgfSBlbHNlIGlmICh0eXBlb2YgcGFyYW1ldGVycyA9PT0gXCJzdHJpbmdcIikge1xuXHQgICAgICB0cnkge1xuXHQgICAgICAgIGNvbnN0IHBhcnNlZCA9IEpTT04ucGFyc2UocGFyYW1ldGVycyk7XG5cdCAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHBhcnNlZCkpIHtcblx0ICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIklucHV0IHBhcmFtZXRlciBzdHJpbmcgbXVzdCByZXByZXNlbnQgYSBKU09OIGFycmF5XCIpO1xuXHQgICAgICAgIH1cblx0ICAgICAgICBhcnIgPSBwYXJzZWQ7XG5cdCAgICAgIH0gY2F0Y2ggKGUpIHtcblx0ICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnZhbGlkIEpTT04gcGFyYW1ldGVyczogXCIgKyBlKTtcblx0ICAgICAgfVxuXHQgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHBhcmFtZXRlcnMpKSB7XG5cdCAgICAgIGFyciA9IHBhcmFtZXRlcnM7XG5cdCAgICB9IGVsc2Uge1xuXHQgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJQYXJhbWV0ZXJzIG11c3QgYmUgZWl0aGVyIGFuIGFycmF5IG9yIGEgSlNPTiBzdHJpbmdcIik7XG5cdCAgICB9XG5cblx0ICAgIGlmIChhcnIubGVuZ3RoID09PSAwKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBudWxsLCBkYXRhc291cmNlTmFtZSk7XG5cdCAgICAgIHJldHVybiByZXN1bHQ7XG5cdCAgICB9XG5cblx0ICAgIGNvbnN0IGZpcnN0ID0gYXJyWzBdO1xuXG5cdCAgICAvLyBOYW1lZFVwZGF0ZVBhcmFtZXRlciAoaGFzIG5hbWUgKyB0eXBlKVxuXHQgICAgaWYgKGZpcnN0ICYmIHR5cGVvZiBmaXJzdCA9PT0gXCJvYmplY3RcIiAmJiBcIm5hbWVcIiBpbiBmaXJzdCAmJiBcInR5cGVcIiBpbiBmaXJzdCkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YWJhc2VGYWNhZGUudXBkYXRlTmFtZWQoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdFx0ICByZXR1cm4gcmVzdWx0O1xuXHQgICAgfVxuXG5cdCAgICAvLyBUeXBlZFVwZGF0ZVBhcmFtZXRlciAoaGFzIHR5cGUsIG5vIG5hbWUpXG5cdCAgICBpZiAoZmlyc3QgJiYgdHlwZW9mIGZpcnN0ID09PSBcIm9iamVjdFwiICYmIFwidHlwZVwiIGluIGZpcnN0ICYmICEoXCJuYW1lXCIgaW4gZmlyc3QpKSB7XG5cdFx0ICBjb25zdCByZXN1bHQgPSBEYXRhYmFzZUZhY2FkZS51cGRhdGUoc3FsLCBKU09OLnN0cmluZ2lmeShhcnIpLCBkYXRhc291cmNlTmFtZSk7XG5cdCAgICAgIHJldHVybiByZXN1bHQ7XG5cdCAgICB9XG5cblx0ICAgIC8vIFByaW1pdGl2ZSBhcnJheVxuXHQgICAgaWYgKFxuXHQgICAgICBhcnIuZXZlcnkoXG5cdCAgICAgICAgKHYpID0+XG5cdCAgICAgICAgICB0eXBlb2YgdiA9PT0gXCJzdHJpbmdcIiB8fFxuXHQgICAgICAgICAgdHlwZW9mIHYgPT09IFwibnVtYmVyXCIgfHxcblx0ICAgICAgICAgIHR5cGVvZiB2ID09PSBcImJvb2xlYW5cIiB8fFxuXHQgICAgICAgICAgdiBpbnN0YW5jZW9mIERhdGVcdFx0XHQgIHx8XG5cdFx0XHQgIFx0ICBBcnJheS5pc0FycmF5KHYpXG5cdCAgICAgIClcblx0ICAgICkge1xuXHRcdCAgY29uc3QgcmVzdWx0ID0gRGF0YWJhc2VGYWNhZGUudXBkYXRlKHNxbCwgSlNPTi5zdHJpbmdpZnkoYXJyKSwgZGF0YXNvdXJjZU5hbWUpO1xuXHRcdCAgcmV0dXJuIHJlc3VsdDtcblx0ICAgIH1cblxuXHQgICAgdGhyb3cgbmV3IEVycm9yKFwiVW5zdXBwb3J0ZWQgcGFyYW1ldGVyIGZvcm1hdDogXCIgKyBKU09OLnN0cmluZ2lmeShwYXJhbWV0ZXJzKSk7XG5cdH1cbn1cblxuLy8gQHRzLWlnbm9yZVxuaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnKSB7XG5cdC8vIEB0cy1pZ25vcmVcblx0bW9kdWxlLmV4cG9ydHMgPSBVcGRhdGU7XG59Il0sCiAgIm1hcHBpbmdzIjogIkFBQUEsTUFBTSxpQkFBaUIsS0FBSyxLQUFLLHdEQUF3RDtBQXdCbEYsTUFBTSxPQUFPO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVW5CLE9BQWMsUUFBUSxLQUFhLFlBQWlHLGdCQUFpQztBQUNwSyxRQUFJLE1BQWEsQ0FBQztBQUVmLFFBQUksY0FBYyxNQUFNO0FBQ3RCLFlBQU0sQ0FBQztBQUFBLElBQ1QsV0FBVyxPQUFPLGVBQWUsVUFBVTtBQUN6QyxVQUFJO0FBQ0YsY0FBTSxTQUFTLEtBQUssTUFBTSxVQUFVO0FBQ3BDLFlBQUksQ0FBQyxNQUFNLFFBQVEsTUFBTSxHQUFHO0FBQzFCLGdCQUFNLElBQUksTUFBTSxvREFBb0Q7QUFBQSxRQUN0RTtBQUNBLGNBQU07QUFBQSxNQUNSLFNBQVMsR0FBRztBQUNWLGNBQU0sSUFBSSxNQUFNLDhCQUE4QixDQUFDO0FBQUEsTUFDakQ7QUFBQSxJQUNGLFdBQVcsTUFBTSxRQUFRLFVBQVUsR0FBRztBQUNwQyxZQUFNO0FBQUEsSUFDUixPQUFPO0FBQ0wsWUFBTSxJQUFJLE1BQU0scURBQXFEO0FBQUEsSUFDdkU7QUFFQSxRQUFJLElBQUksV0FBVyxHQUFHO0FBQ3ZCLFlBQU0sU0FBUyxlQUFlLE9BQU8sS0FBSyxNQUFNLGNBQWM7QUFDM0QsYUFBTztBQUFBLElBQ1Q7QUFFQSxVQUFNLFFBQVEsSUFBSSxDQUFDO0FBR25CLFFBQUksU0FBUyxPQUFPLFVBQVUsWUFBWSxVQUFVLFNBQVMsVUFBVSxPQUFPO0FBQy9FLFlBQU0sU0FBUyxlQUFlLFlBQVksS0FBSyxLQUFLLFVBQVUsR0FBRyxHQUFHLGNBQWM7QUFDbEYsYUFBTztBQUFBLElBQ047QUFHQSxRQUFJLFNBQVMsT0FBTyxVQUFVLFlBQVksVUFBVSxTQUFTLEVBQUUsVUFBVSxRQUFRO0FBQ2xGLFlBQU0sU0FBUyxlQUFlLE9BQU8sS0FBSyxLQUFLLFVBQVUsR0FBRyxHQUFHLGNBQWM7QUFDMUUsYUFBTztBQUFBLElBQ1Q7QUFHQSxRQUNFLElBQUk7QUFBQSxNQUNGLENBQUMsTUFDQyxPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sWUFDYixPQUFPLE1BQU0sYUFDYixhQUFhLFFBQ2hCLE1BQU0sUUFBUSxDQUFDO0FBQUEsSUFDaEIsR0FDQTtBQUNILFlBQU0sU0FBUyxlQUFlLE9BQU8sS0FBSyxLQUFLLFVBQVUsR0FBRyxHQUFHLGNBQWM7QUFDN0UsYUFBTztBQUFBLElBQ047QUFFQSxVQUFNLElBQUksTUFBTSxtQ0FBbUMsS0FBSyxVQUFVLFVBQVUsQ0FBQztBQUFBLEVBQ2pGO0FBQ0Q7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWxDLFNBQU8sVUFBVTtBQUNsQjsiLAogICJuYW1lcyI6IFtdCn0K
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aerokit/sdk",
3
- "version": "12.45.0",
3
+ "version": "12.47.0",
4
4
  "description": "Unified TypeScript SDK for modern cloud platforms.",
5
5
  "scripts": {
6
6
  "clean": "rm -rf dist",