@getopenpay/openpay-js 0.5.13 → 0.5.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ExportResult-B-YLKMaU.js → ExportResult-BacsqwKA.js} +1 -1
- package/dist/{Resource-BZeevyoh.js → Resource-Ds5bbQ3b.js} +4 -4
- package/dist/SimpleSpanProcessor-0bSccE1S.js +910 -0
- package/dist/_commonjsHelpers-CdLE1o9f.js +30 -0
- package/dist/detect-resources-UwRkF4Xd.js +862 -0
- package/dist/{diag-api-CHLb_Weo.js → diag-api-CMlZXyyv.js} +2 -2
- package/dist/index-1jECpTsg.js +147 -0
- package/dist/index-BZEpD-f0.js +6718 -0
- package/dist/index-BhZy-TW3.js +430 -0
- package/dist/index-BmKZeOoc.js +1619 -0
- package/dist/index-CDdbDQxQ.js +6 -0
- package/dist/index-CWTkU3J-.js +18 -0
- package/dist/index-DFO-DCsT.js +127 -0
- package/dist/index-DsxDp11a.js +28 -0
- package/dist/index-JNJd_YS1.js +1012 -0
- package/dist/index-j7i6AeZa.js +7005 -0
- package/dist/index.d.ts +29 -4
- package/dist/index.es.js +2 -2
- package/dist/index.umd.js +45 -45
- package/dist/lifecycle-D1BdEbZs.js +119 -0
- package/dist/{metrics-api-ClKmMX3Y.js → metrics-api-C9pRFfr-.js} +2 -2
- package/dist/sdk-info-ChuKu8zW.js +285 -0
- package/dist/suppress-tracing-B94rObkn.js +17 -0
- package/dist/url-CdPstDG9.js +798 -0
- package/dist/utils--M6ihaNw.js +101 -0
- package/dist/utils-De78ey-v.js +12 -0
- package/dist/utils-VJ-0MC7c.js +270 -0
- package/package.json +4 -4
- package/dist/SimpleSpanProcessor-CwJD-GjM.js +0 -957
- package/dist/_commonjsHelpers-f76XedMs.js +0 -25
- package/dist/detect-resources-BatabDmW.js +0 -854
- package/dist/index-ByaN1AdQ.js +0 -6685
- package/dist/index-CU4AI3HW.js +0 -52
- package/dist/index-Cb34s3AM.js +0 -1599
- package/dist/index-CmtkHZgE.js +0 -330
- package/dist/index-CtZ-xuHu.js +0 -7041
- package/dist/index-D5OCmVN-.js +0 -19
- package/dist/index-DLJd6nUV.js +0 -150
- package/dist/index-DjekHBls.js +0 -431
- package/dist/index-DoKHV9rR.js +0 -130
- package/dist/index-_ZTp3kCj.js +0 -830
- package/dist/lifecycle-BjQ-7GLm.js +0 -119
- package/dist/sdk-info-DYuuxEVK.js +0 -484
- package/dist/url-BAeEv8aD.js +0 -797
- package/dist/utils--qqdHZ_b.js +0 -142
- package/dist/utils-Bf8wDuNo.js +0 -381
- package/dist/utils-CX5YT7yI.js +0 -14
|
@@ -16,4 +16,4 @@ export {
|
|
|
16
16
|
a as E,
|
|
17
17
|
A as h
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiRXhwb3J0UmVzdWx0LSF+
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiRXhwb3J0UmVzdWx0LSF+ezAwaX1+LmpzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKlxuICogQ29weXJpZ2h0IFRoZSBPcGVuVGVsZW1ldHJ5IEF1dGhvcnNcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuZnVuY3Rpb24gaW50VmFsdWUoY2hhckNvZGUpIHtcbiAgICAvLyAwLTlcbiAgICBpZiAoY2hhckNvZGUgPj0gNDggJiYgY2hhckNvZGUgPD0gNTcpIHtcbiAgICAgICAgcmV0dXJuIGNoYXJDb2RlIC0gNDg7XG4gICAgfVxuICAgIC8vIGEtZlxuICAgIGlmIChjaGFyQ29kZSA+PSA5NyAmJiBjaGFyQ29kZSA8PSAxMDIpIHtcbiAgICAgICAgcmV0dXJuIGNoYXJDb2RlIC0gODc7XG4gICAgfVxuICAgIC8vIEEtRlxuICAgIHJldHVybiBjaGFyQ29kZSAtIDU1O1xufVxuZnVuY3Rpb24gaGV4VG9CaW5hcnkoaGV4U3RyKSB7XG4gICAgdmFyIGJ1ZiA9IG5ldyBVaW50OEFycmF5KGhleFN0ci5sZW5ndGggLyAyKTtcbiAgICB2YXIgb2Zmc2V0ID0gMDtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IGhleFN0ci5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgICB2YXIgaGkgPSBpbnRWYWx1ZShoZXhTdHIuY2hhckNvZGVBdChpKSk7XG4gICAgICAgIHZhciBsbyA9IGludFZhbHVlKGhleFN0ci5jaGFyQ29kZUF0KGkgKyAxKSk7XG4gICAgICAgIGJ1ZltvZmZzZXQrK10gPSAoaGkgPDwgNCkgfCBsbztcbiAgICB9XG4gICAgcmV0dXJuIGJ1Zjtcbn1cblxuLypcbiAqIENvcHlyaWdodCBUaGUgT3BlblRlbGVtZXRyeSBBdXRob3JzXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbnZhciBFeHBvcnRSZXN1bHRDb2RlO1xuKGZ1bmN0aW9uIChFeHBvcnRSZXN1bHRDb2RlKSB7XG4gICAgRXhwb3J0UmVzdWx0Q29kZVtFeHBvcnRSZXN1bHRDb2RlW1wiU1VDQ0VTU1wiXSA9IDBdID0gXCJTVUNDRVNTXCI7XG4gICAgRXhwb3J0UmVzdWx0Q29kZVtFeHBvcnRSZXN1bHRDb2RlW1wiRkFJTEVEXCJdID0gMV0gPSBcIkZBSUxFRFwiO1xufSkoRXhwb3J0UmVzdWx0Q29kZSB8fCAoRXhwb3J0UmVzdWx0Q29kZSA9IHt9KSk7XG5cbmV4cG9ydCB7IEV4cG9ydFJlc3VsdENvZGUgYXMgRSwgaGV4VG9CaW5hcnkgYXMgaCB9OyJdLAogICJtYXBwaW5ncyI6ICJBQWVBLFNBQVNBLEVBQVNDLEdBQVU7QUFFeEIsU0FBSUEsS0FBWSxNQUFNQSxLQUFZLEtBQ3ZCQSxJQUFXLEtBR2xCQSxLQUFZLE1BQU1BLEtBQVksTUFDdkJBLElBQVcsS0FHZkEsSUFBVztBQUN0QjtBQUNBLFNBQVNDLEVBQVlDLEdBQVE7QUFHekIsV0FGSUMsSUFBTSxJQUFJLFdBQVdELEVBQU8sU0FBUyxDQUFDLEdBQ3RDRSxJQUFTLEdBQ0pDLElBQUksR0FBR0EsSUFBSUgsRUFBTyxRQUFRRyxLQUFLLEdBQUc7QUFDdkMsUUFBSUMsSUFBS1AsRUFBU0csRUFBTyxXQUFXRyxDQUFDLENBQUMsR0FDbENFLElBQUtSLEVBQVNHLEVBQU8sV0FBV0csSUFBSSxDQUFDLENBQUM7QUFDMUMsSUFBQUYsRUFBSUMsR0FBUSxJQUFLRSxLQUFNLElBQUtDO0FBQUEsRUFDaEM7QUFDQSxTQUFPSjtBQUNYO0FBaUJBLElBQUlLO0FBQUEsQ0FDSCxTQUFVQSxHQUFrQjtBQUN6QixFQUFBQSxFQUFpQkEsRUFBaUIsVUFBYSxDQUFDLElBQUksV0FDcERBLEVBQWlCQSxFQUFpQixTQUFZLENBQUMsSUFBSTtBQUN2RCxHQUFHQSxNQUFxQkEsSUFBbUIsQ0FBQyxFQUFFOyIsCiAgIm5hbWVzIjogWyJpbnRWYWx1ZSIsICJjaGFyQ29kZSIsICJoZXhUb0JpbmFyeSIsICJoZXhTdHIiLCAiYnVmIiwgIm9mZnNldCIsICJpIiwgImhpIiwgImxvIiwgIkV4cG9ydFJlc3VsdENvZGUiXQp9Cg==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { d as _ } from "./diag-api-
|
|
2
|
-
import { S as A, a as
|
|
1
|
+
import { d as _ } from "./diag-api-CMlZXyyv.js";
|
|
2
|
+
import { S as A, a as d, b as y, c as h, d as v } from "./sdk-info-ChuKu8zW.js";
|
|
3
3
|
function E() {
|
|
4
4
|
return "unknown_service";
|
|
5
5
|
}
|
|
@@ -117,7 +117,7 @@ var f = function() {
|
|
|
117
117
|
function() {
|
|
118
118
|
function u(n, e) {
|
|
119
119
|
var s = this, i;
|
|
120
|
-
this._attributes = n, this.asyncAttributesPending = e != null, this._syncAttributes = (i = this._attributes) !== null && i !== void 0 ? i : {}, this._asyncAttributesPromise = e
|
|
120
|
+
this._attributes = n, this.asyncAttributesPending = e != null, this._syncAttributes = (i = this._attributes) !== null && i !== void 0 ? i : {}, this._asyncAttributesPromise = e?.then(function(t) {
|
|
121
121
|
return s._attributes = Object.assign({}, s._attributes, t), s.asyncAttributesPending = !1, t;
|
|
122
122
|
}, function(t) {
|
|
123
123
|
return _.debug("a resource's async attributes promise rejected: %s", t), s.asyncAttributesPending = !1, {};
|
|
@@ -173,4 +173,4 @@ export {
|
|
|
173
173
|
R,
|
|
174
174
|
E as d
|
|
175
175
|
};
|
|
176
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiUmVzb3VyY2UtIX57MDBhfX4uanMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7IGQgYXMgZGlhZyB9IGZyb20gJy4vZGlhZy1hcGktIX57MDA1fX4uanMnO1xuaW1wb3J0IHsgUyBhcyBTRU1SRVNBVFRSU19TRVJWSUNFX05BTUUsIGEgYXMgU0VNUkVTQVRUUlNfVEVMRU1FVFJZX1NES19MQU5HVUFHRSwgYiBhcyBTREtfSU5GTywgYyBhcyBTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX05BTUUsIGQgYXMgU0VNUkVTQVRUUlNfVEVMRU1FVFJZX1NES19WRVJTSU9OIH0gZnJvbSAnLi9zZGstaW5mby0hfnswMGJ9fi5qcyc7XG5cbi8qXG4gKiBDb3B5cmlnaHQgVGhlIE9wZW5UZWxlbWV0cnkgQXV0aG9yc1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5mdW5jdGlvbiBkZWZhdWx0U2VydmljZU5hbWUoKSB7XG4gICAgcmV0dXJuICd1bmtub3duX3NlcnZpY2UnO1xufVxuXG4vKlxuICogQ29weXJpZ2h0IFRoZSBPcGVuVGVsZW1ldHJ5IEF1dGhvcnNcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xudmFyIF9fYXNzaWduID0gKHVuZGVmaW5lZCAmJiB1bmRlZmluZWQuX19hc3NpZ24pIHx8IGZ1bmN0aW9uICgpIHtcbiAgICBfX2Fzc2lnbiA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24odCkge1xuICAgICAgICBmb3IgKHZhciBzLCBpID0gMSwgbiA9IGFyZ3VtZW50cy5sZW5ndGg7IGkgPCBuOyBpKyspIHtcbiAgICAgICAgICAgIHMgPSBhcmd1bWVudHNbaV07XG4gICAgICAgICAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkpXG4gICAgICAgICAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHQ7XG4gICAgfTtcbiAgICByZXR1cm4gX19hc3NpZ24uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbn07XG52YXIgX19hd2FpdGVyID0gKHVuZGVmaW5lZCAmJiB1bmRlZmluZWQuX19hd2FpdGVyKSB8fCBmdW5jdGlvbiAodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XG4gICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgICB9KTtcbn07XG52YXIgX19nZW5lcmF0b3IgPSAodW5kZWZpbmVkICYmIHVuZGVmaW5lZC5fX2dlbmVyYXRvcikgfHwgZnVuY3Rpb24gKHRoaXNBcmcsIGJvZHkpIHtcbiAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgeyBpZiAodFswXSAmIDEpIHRocm93IHRbMV07IHJldHVybiB0WzFdOyB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnO1xuICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCBcInRocm93XCI6IHZlcmIoMSksIFwicmV0dXJuXCI6IHZlcmIoMikgfSwgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0pLCBnO1xuICAgIGZ1bmN0aW9uIHZlcmIobikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHN0ZXAoW24sIHZdKTsgfTsgfVxuICAgIGZ1bmN0aW9uIHN0ZXAob3ApIHtcbiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuXCIpO1xuICAgICAgICB3aGlsZSAoXykgdHJ5IHtcbiAgICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbXCJyZXR1cm5cIl0gOiBvcFswXSA/IHlbXCJ0aHJvd1wiXSB8fCAoKHQgPSB5W1wicmV0dXJuXCJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDtcbiAgICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTtcbiAgICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHtcbiAgICAgICAgICAgICAgICBjYXNlIDA6IGNhc2UgMTogdCA9IG9wOyBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIDQ6IF8ubGFiZWwrKzsgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9O1xuICAgICAgICAgICAgICAgIGNhc2UgNTogXy5sYWJlbCsrOyB5ID0gb3BbMV07IG9wID0gWzBdOyBjb250aW51ZTtcbiAgICAgICAgICAgICAgICBjYXNlIDc6IG9wID0gXy5vcHMucG9wKCk7IF8udHJ5cy5wb3AoKTsgY29udGludWU7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsgXyA9IDA7IGNvbnRpbnVlOyB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgKG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSkgeyBfLmxhYmVsID0gb3BbMV07IGJyZWFrOyB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgeyBfLmxhYmVsID0gdFsxXTsgdCA9IG9wOyBicmVhazsgfVxuICAgICAgICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgeyBfLmxhYmVsID0gdFsyXTsgXy5vcHMucHVzaChvcCk7IGJyZWFrOyB9XG4gICAgICAgICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTtcbiAgICAgICAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOyBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pO1xuICAgICAgICB9IGNhdGNoIChlKSB7IG9wID0gWzYsIGVdOyB5ID0gMDsgfSBmaW5hbGx5IHsgZiA9IHQgPSAwOyB9XG4gICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOyByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9O1xuICAgIH1cbn07XG52YXIgX19yZWFkID0gKHVuZGVmaW5lZCAmJiB1bmRlZmluZWQuX19yZWFkKSB8fCBmdW5jdGlvbiAobywgbikge1xuICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9bU3ltYm9sLml0ZXJhdG9yXTtcbiAgICBpZiAoIW0pIHJldHVybiBvO1xuICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlO1xuICAgIHRyeSB7XG4gICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyb3IpIHsgZSA9IHsgZXJyb3I6IGVycm9yIH07IH1cbiAgICBmaW5hbGx5IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpW1wicmV0dXJuXCJdKSkgbS5jYWxsKGkpO1xuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkgeyBpZiAoZSkgdGhyb3cgZS5lcnJvcjsgfVxuICAgIH1cbiAgICByZXR1cm4gYXI7XG59O1xuLyoqXG4gKiBBIFJlc291cmNlIGRlc2NyaWJlcyB0aGUgZW50aXR5IGZvciB3aGljaCBhIHNpZ25hbHMgKG1ldHJpY3Mgb3IgdHJhY2UpIGFyZVxuICogY29sbGVjdGVkLlxuICovXG52YXIgUmVzb3VyY2UgPSAvKiogQGNsYXNzICovIChmdW5jdGlvbiAoKSB7XG4gICAgZnVuY3Rpb24gUmVzb3VyY2UoXG4gICAgLyoqXG4gICAgICogQSBkaWN0aW9uYXJ5IG9mIGF0dHJpYnV0ZXMgd2l0aCBzdHJpbmcga2V5cyBhbmQgdmFsdWVzIHRoYXQgcHJvdmlkZVxuICAgICAqIGluZm9ybWF0aW9uIGFib3V0IHRoZSBlbnRpdHkgYXMgbnVtYmVycywgc3RyaW5ncyBvciBib29sZWFuc1xuICAgICAqIFRPRE86IENvbnNpZGVyIHRvIGFkZCBjaGVjay92YWxpZGF0aW9uIG9uIGF0dHJpYnV0ZXMuXG4gICAgICovXG4gICAgYXR0cmlidXRlcywgYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZSkge1xuICAgICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHRoaXMuX2F0dHJpYnV0ZXMgPSBhdHRyaWJ1dGVzO1xuICAgICAgICB0aGlzLmFzeW5jQXR0cmlidXRlc1BlbmRpbmcgPSBhc3luY0F0dHJpYnV0ZXNQcm9taXNlICE9IG51bGw7XG4gICAgICAgIHRoaXMuX3N5bmNBdHRyaWJ1dGVzID0gKF9hID0gdGhpcy5fYXR0cmlidXRlcykgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDoge307XG4gICAgICAgIHRoaXMuX2FzeW5jQXR0cmlidXRlc1Byb21pc2UgPSBhc3luY0F0dHJpYnV0ZXNQcm9taXNlID09PSBudWxsIHx8IGFzeW5jQXR0cmlidXRlc1Byb21pc2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFzeW5jQXR0cmlidXRlc1Byb21pc2UudGhlbihmdW5jdGlvbiAoYXN5bmNBdHRyaWJ1dGVzKSB7XG4gICAgICAgICAgICBfdGhpcy5fYXR0cmlidXRlcyA9IE9iamVjdC5hc3NpZ24oe30sIF90aGlzLl9hdHRyaWJ1dGVzLCBhc3luY0F0dHJpYnV0ZXMpO1xuICAgICAgICAgICAgX3RoaXMuYXN5bmNBdHRyaWJ1dGVzUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgcmV0dXJuIGFzeW5jQXR0cmlidXRlcztcbiAgICAgICAgfSwgZnVuY3Rpb24gKGVycikge1xuICAgICAgICAgICAgZGlhZy5kZWJ1ZyhcImEgcmVzb3VyY2UncyBhc3luYyBhdHRyaWJ1dGVzIHByb21pc2UgcmVqZWN0ZWQ6ICVzXCIsIGVycik7XG4gICAgICAgICAgICBfdGhpcy5hc3luY0F0dHJpYnV0ZXNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFuIGVtcHR5IFJlc291cmNlXG4gICAgICovXG4gICAgUmVzb3VyY2UuZW1wdHkgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZXNvdXJjZS5FTVBUWTtcbiAgICB9O1xuICAgIC8qKlxuICAgICAqIFJldHVybnMgYSBSZXNvdXJjZSB0aGF0IGlkZW50aWZpZXMgdGhlIFNESyBpbiB1c2UuXG4gICAgICovXG4gICAgUmVzb3VyY2UuZGVmYXVsdCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICByZXR1cm4gbmV3IFJlc291cmNlKChfYSA9IHt9LFxuICAgICAgICAgICAgX2FbU0VNUkVTQVRUUlNfU0VSVklDRV9OQU1FXSA9IGRlZmF1bHRTZXJ2aWNlTmFtZSgpLFxuICAgICAgICAgICAgX2FbU0VNUkVTQVRUUlNfVEVMRU1FVFJZX1NES19MQU5HVUFHRV0gPSBTREtfSU5GT1tTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX0xBTkdVQUdFXSxcbiAgICAgICAgICAgIF9hW1NFTVJFU0FUVFJTX1RFTEVNRVRSWV9TREtfTkFNRV0gPSBTREtfSU5GT1tTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX05BTUVdLFxuICAgICAgICAgICAgX2FbU0VNUkVTQVRUUlNfVEVMRU1FVFJZX1NES19WRVJTSU9OXSA9IFNES19JTkZPW1NFTVJFU0FUVFJTX1RFTEVNRVRSWV9TREtfVkVSU0lPTl0sXG4gICAgICAgICAgICBfYSkpO1xuICAgIH07XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFJlc291cmNlLnByb3RvdHlwZSwgXCJhdHRyaWJ1dGVzXCIsIHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBpZiAodGhpcy5hc3luY0F0dHJpYnV0ZXNQZW5kaW5nKSB7XG4gICAgICAgICAgICAgICAgZGlhZy5lcnJvcignQWNjZXNzaW5nIHJlc291cmNlIGF0dHJpYnV0ZXMgYmVmb3JlIGFzeW5jIGF0dHJpYnV0ZXMgc2V0dGxlZCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX2F0dHJpYnV0ZXMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHt9O1xuICAgICAgICB9LFxuICAgICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIHByb21pc2UgdGhhdCB3aWxsIG5ldmVyIGJlIHJlamVjdGVkLiBSZXNvbHZlcyB3aGVuIGFsbCBhc3luYyBhdHRyaWJ1dGVzIGhhdmUgZmluaXNoZWQgYmVpbmcgYWRkZWQgdG9cbiAgICAgKiB0aGlzIFJlc291cmNlJ3MgYXR0cmlidXRlcy4gVGhpcyBpcyB1c2VmdWwgaW4gZXhwb3J0ZXJzIHRvIGJsb2NrIHVudGlsIHJlc291cmNlIGRldGVjdGlvblxuICAgICAqIGhhcyBmaW5pc2hlZC5cbiAgICAgKi9cbiAgICBSZXNvdXJjZS5wcm90b3R5cGUud2FpdEZvckFzeW5jQXR0cmlidXRlcyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uIChfYSkge1xuICAgICAgICAgICAgICAgIHN3aXRjaCAoX2EubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmFzeW5jQXR0cmlidXRlc1BlbmRpbmcpIHJldHVybiBbMyAvKmJyZWFrKi8sIDJdO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFs0IC8qeWllbGQqLywgdGhpcy5fYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZV07XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgICAgICAgICAgICAgIF9hLnNlbnQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9hLmxhYmVsID0gMjtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAyOiByZXR1cm4gWzIgLypyZXR1cm4qL107XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH07XG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIG5ldywgbWVyZ2VkIHtAbGluayBSZXNvdXJjZX0gYnkgbWVyZ2luZyB0aGUgY3VycmVudCBSZXNvdXJjZVxuICAgICAqIHdpdGggdGhlIG90aGVyIFJlc291cmNlLiBJbiBjYXNlIG9mIGEgY29sbGlzaW9uLCBvdGhlciBSZXNvdXJjZSB0YWtlc1xuICAgICAqIHByZWNlZGVuY2UuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3RoZXIgdGhlIFJlc291cmNlIHRoYXQgd2lsbCBiZSBtZXJnZWQgd2l0aCB0aGlzLlxuICAgICAqIEByZXR1cm5zIHRoZSBuZXdseSBtZXJnZWQgUmVzb3VyY2UuXG4gICAgICovXG4gICAgUmVzb3VyY2UucHJvdG90eXBlLm1lcmdlID0gZnVuY3Rpb24gKG90aGVyKSB7XG4gICAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgaWYgKCFvdGhlcilcbiAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICAvLyBTcGFuQXR0cmlidXRlcyBmcm9tIG90aGVyIHJlc291cmNlIG92ZXJ3cml0ZSBhdHRyaWJ1dGVzIGZyb20gdGhpcyByZXNvdXJjZS5cbiAgICAgICAgdmFyIG1lcmdlZFN5bmNBdHRyaWJ1dGVzID0gX19hc3NpZ24oX19hc3NpZ24oe30sIHRoaXMuX3N5bmNBdHRyaWJ1dGVzKSwgKChfYSA9IG90aGVyLl9zeW5jQXR0cmlidXRlcykgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogb3RoZXIuYXR0cmlidXRlcykpO1xuICAgICAgICBpZiAoIXRoaXMuX2FzeW5jQXR0cmlidXRlc1Byb21pc2UgJiZcbiAgICAgICAgICAgICFvdGhlci5fYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZSkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBSZXNvdXJjZShtZXJnZWRTeW5jQXR0cmlidXRlcyk7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIG1lcmdlZEF0dHJpYnV0ZXNQcm9taXNlID0gUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgdGhpcy5fYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZSxcbiAgICAgICAgICAgIG90aGVyLl9hc3luY0F0dHJpYnV0ZXNQcm9taXNlLFxuICAgICAgICBdKS50aGVuKGZ1bmN0aW9uIChfYSkge1xuICAgICAgICAgICAgdmFyIF9iO1xuICAgICAgICAgICAgdmFyIF9jID0gX19yZWFkKF9hLCAyKSwgdGhpc0FzeW5jQXR0cmlidXRlcyA9IF9jWzBdLCBvdGhlckFzeW5jQXR0cmlidXRlcyA9IF9jWzFdO1xuICAgICAgICAgICAgcmV0dXJuIF9fYXNzaWduKF9fYXNzaWduKF9fYXNzaWduKF9fYXNzaWduKHt9LCBfdGhpcy5fc3luY0F0dHJpYnV0ZXMpLCB0aGlzQXN5bmNBdHRyaWJ1dGVzKSwgKChfYiA9IG90aGVyLl9zeW5jQXR0cmlidXRlcykgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogb3RoZXIuYXR0cmlidXRlcykpLCBvdGhlckFzeW5jQXR0cmlidXRlcyk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gbmV3IFJlc291cmNlKG1lcmdlZFN5bmNBdHRyaWJ1dGVzLCBtZXJnZWRBdHRyaWJ1dGVzUHJvbWlzZSk7XG4gICAgfTtcbiAgICBSZXNvdXJjZS5FTVBUWSA9IG5ldyBSZXNvdXJjZSh7fSk7XG4gICAgcmV0dXJuIFJlc291cmNlO1xufSgpKTtcblxuZXhwb3J0IHsgUmVzb3VyY2UgYXMgUiwgZGVmYXVsdFNlcnZpY2VOYW1lIGFzIGQgfTsiXSwKICAibWFwcGluZ3MiOiAiQUFBQSxTQUFTLEtBQUtBLFNBQVk7QUFDMUIsU0FBUyxLQUFLQyxHQUEwQixLQUFLQyxHQUFvQyxLQUFLQyxHQUFVLEtBQUtDLEdBQWdDLEtBQUtDLFNBQXlDO0FBaUJuTCxTQUFTQyxJQUFxQjtBQUMxQixTQUFPO0FBQ1g7QUFpQkEsSUFBSUMsSUFBZ0QsV0FBWTtBQUM1RCxTQUFBQSxJQUFXLE9BQU8sVUFBVSxTQUFTQyxHQUFHO0FBQ3BDLGFBQVNDLEdBQUdDLElBQUksR0FBR0MsSUFBSSxVQUFVLFFBQVFELElBQUlDLEdBQUdELEtBQUs7QUFDakQsTUFBQUQsSUFBSSxVQUFVQyxDQUFDO0FBQ2YsZUFBU0UsS0FBS0gsRUFBRyxDQUFJLE9BQU8sVUFBVSxlQUFlLEtBQUtBLEdBQUdHLENBQUMsTUFDMURKLEVBQUVJLENBQUMsSUFBSUgsRUFBRUcsQ0FBQztBQUFBLElBQ2xCO0FBQ0EsV0FBT0o7QUFBQSxFQUNYLEdBQ09ELEVBQVMsTUFBTSxNQUFNLFNBQVM7QUFDekMsR0FDSU0sSUFBa0QsU0FBVUMsR0FBU0MsR0FBWUMsR0FBR0MsR0FBVztBQUMvRixXQUFTQyxFQUFNQyxHQUFPO0FBQUUsV0FBT0EsYUFBaUJILElBQUlHLElBQVEsSUFBSUgsRUFBRSxTQUFVSSxHQUFTO0FBQUUsTUFBQUEsRUFBUUQsQ0FBSztBQUFBLElBQUcsQ0FBQztBQUFBLEVBQUc7QUFDM0csU0FBTyxLQUFLSCxNQUFNQSxJQUFJLFVBQVUsU0FBVUksR0FBU0MsR0FBUTtBQUN2RCxhQUFTQyxFQUFVSCxHQUFPO0FBQUUsVUFBSTtBQUFFLFFBQUFJLEVBQUtOLEVBQVUsS0FBS0UsQ0FBSyxDQUFDO0FBQUEsTUFBRyxTQUFTSyxHQUFHO0FBQUUsUUFBQUgsRUFBT0csQ0FBQztBQUFBLE1BQUc7QUFBQSxJQUFFO0FBQzFGLGFBQVNDLEVBQVNOLEdBQU87QUFBRSxVQUFJO0FBQUUsUUFBQUksRUFB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QUksQ0FBQyxHQUFHUSxJQUFzQkQsRUFBRyxDQUFDLEdBQUdFLElBQXVCRixFQUFHLENBQUM7QUFDaEYsZUFBTzlDLEVBQVNBLEVBQVNBLEVBQVNBLEVBQVMsQ0FBQyxHQUFHc0MsRUFBTSxlQUFlLEdBQUdTLENBQW1CLElBQUtGLElBQUtILEVBQU0scUJBQXFCLFFBQVFHLE1BQU8sU0FBU0EsSUFBS0gsRUFBTSxVQUFXLEdBQUdNLENBQW9CO0FBQUEsTUFDeE0sQ0FBQztBQUNELGFBQU8sSUFBSWIsRUFBU1EsR0FBc0JDLENBQXVCO0FBQUEsSUFDckUsR0FDQVQsRUFBUyxRQUFRLElBQUlBLEVBQVMsQ0FBQyxDQUFDLEdBQ3pCQTtBQUFBLEVBQ1gsRUFBRTtBQUFBOyIsCiAgIm5hbWVzIjogWyJkaWFnIiwgIlNFTVJFU0FUVFJTX1NFUlZJQ0VfTkFNRSIsICJTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX0xBTkdVQUdFIiwgIlNES19JTkZPIiwgIlNFTVJFU0FUVFJTX1RFTEVNRVRSWV9TREtfTkFNRSIsICJTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX1ZFUlNJT04iLCAiZGVmYXVsdFNlcnZpY2VOYW1lIiwgIl9fYXNzaWduIiwgInQiLCAicyIsICJpIiwgIm4iLCAicCIsICJfX2F3YWl0ZXIiLCAidGhpc0FyZyIsICJfYXJndW1lbnRzIiwgIlAiLCAiZ2VuZXJhdG9yIiwgImFkb3B0IiwgInZhbHVlIiwgInJlc29sdmUiLCAicmVqZWN0IiwgImZ1bGZpbGxlZCIsICJzdGVwIiwgImUiLCAicmVqZWN0ZWQiLCAicmVzdWx0IiwgIl9fZ2VuZXJhdG9yIiwgImJvZHkiLCAiXyIsICJmIiwgInkiLCAiZyIsICJ2ZXJiIiwgInYiLCAib3AiLCAiX19yZWFkIiwgIm8iLCAibSIsICJyIiwgImFyIiwgImVycm9yIiwgIlJlc291cmNlIiwgImF0dHJpYnV0ZXMiLCAiYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZSIsICJfdGhpcyIsICJfYSIsICJhc3luY0F0dHJpYnV0ZXMiLCAiZXJyIiwgIm90aGVyIiwgIm1lcmdlZFN5bmNBdHRyaWJ1dGVzIiwgIm1lcmdlZEF0dHJpYnV0ZXNQcm9taXNlIiwgIl9iIiwgIl9jIiwgInRoaXNBc3luY0F0dHJpYnV0ZXMiLCAib3RoZXJBc3luY0F0dHJpYnV0ZXMiXQp9Cg==
|
|
176
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiUmVzb3VyY2UtIX57MDAyfX4uanMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7IGQgYXMgZGlhZyB9IGZyb20gJy4vZGlhZy1hcGktIX57MDA4fX4uanMnO1xuaW1wb3J0IHsgUyBhcyBTRU1SRVNBVFRSU19TRVJWSUNFX05BTUUsIGEgYXMgU0RLX0lORk8sIGIgYXMgU0VNUkVTQVRUUlNfVEVMRU1FVFJZX1NES19MQU5HVUFHRSwgYyBhcyBTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX05BTUUsIGQgYXMgU0VNUkVTQVRUUlNfVEVMRU1FVFJZX1NES19WRVJTSU9OIH0gZnJvbSAnLi9zZGstaW5mby0hfnswMGh9fi5qcyc7XG5cbi8qXG4gKiBDb3B5cmlnaHQgVGhlIE9wZW5UZWxlbWV0cnkgQXV0aG9yc1xuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5mdW5jdGlvbiBkZWZhdWx0U2VydmljZU5hbWUoKSB7XG4gICAgcmV0dXJuICd1bmtub3duX3NlcnZpY2UnO1xufVxuXG4vKlxuICogQ29weXJpZ2h0IFRoZSBPcGVuVGVsZW1ldHJ5IEF1dGhvcnNcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xudmFyIF9fYXNzaWduID0gKHVuZGVmaW5lZCAmJiB1bmRlZmluZWQuX19hc3NpZ24pIHx8IGZ1bmN0aW9uICgpIHtcbiAgICBfX2Fzc2lnbiA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24odCkge1xuICAgICAgICBmb3IgKHZhciBzLCBpID0gMSwgbiA9IGFyZ3VtZW50cy5sZW5ndGg7IGkgPCBuOyBpKyspIHtcbiAgICAgICAgICAgIHMgPSBhcmd1bWVudHNbaV07XG4gICAgICAgICAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkpXG4gICAgICAgICAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHQ7XG4gICAgfTtcbiAgICByZXR1cm4gX19hc3NpZ24uYXBwbHkodGhpcywgYXJndW1lbnRzKTtcbn07XG52YXIgX19hd2FpdGVyID0gKHVuZGVmaW5lZCAmJiB1bmRlZmluZWQuX19hd2FpdGVyKSB8fCBmdW5jdGlvbiAodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XG4gICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgICB9KTtcbn07XG52YXIgX19nZW5lcmF0b3IgPSAodW5kZWZpbmVkICYmIHVuZGVmaW5lZC5fX2dlbmVyYXRvcikgfHwgZnVuY3Rpb24gKHRoaXNBcmcsIGJvZHkpIHtcbiAgICB2YXIgXyA9IHsgbGFiZWw6IDAsIHNlbnQ6IGZ1bmN0aW9uKCkgeyBpZiAodFswXSAmIDEpIHRocm93IHRbMV07IHJldHVybiB0WzFdOyB9LCB0cnlzOiBbXSwgb3BzOiBbXSB9LCBmLCB5LCB0LCBnO1xuICAgIHJldHVybiBnID0geyBuZXh0OiB2ZXJiKDApLCBcInRocm93XCI6IHZlcmIoMSksIFwicmV0dXJuXCI6IHZlcmIoMikgfSwgdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIChnW1N5bWJvbC5pdGVyYXRvcl0gPSBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0pLCBnO1xuICAgIGZ1bmN0aW9uIHZlcmIobikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHN0ZXAoW24sIHZdKTsgfTsgfVxuICAgIGZ1bmN0aW9uIHN0ZXAob3ApIHtcbiAgICAgICAgaWYgKGYpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuXCIpO1xuICAgICAgICB3aGlsZSAoXykgdHJ5IHtcbiAgICAgICAgICAgIGlmIChmID0gMSwgeSAmJiAodCA9IG9wWzBdICYgMiA/IHlbXCJyZXR1cm5cIl0gOiBvcFswXSA/IHlbXCJ0aHJvd1wiXSB8fCAoKHQgPSB5W1wicmV0dXJuXCJdKSAmJiB0LmNhbGwoeSksIDApIDogeS5uZXh0KSAmJiAhKHQgPSB0LmNhbGwoeSwgb3BbMV0pKS5kb25lKSByZXR1cm4gdDtcbiAgICAgICAgICAgIGlmICh5ID0gMCwgdCkgb3AgPSBbb3BbMF0gJiAyLCB0LnZhbHVlXTtcbiAgICAgICAgICAgIHN3aXRjaCAob3BbMF0pIHtcbiAgICAgICAgICAgICAgICBjYXNlIDA6IGNhc2UgMTogdCA9IG9wOyBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIDQ6IF8ubGFiZWwrKzsgcmV0dXJuIHsgdmFsdWU6IG9wWzFdLCBkb25lOiBmYWxzZSB9O1xuICAgICAgICAgICAgICAgIGNhc2UgNTogXy5sYWJlbCsrOyB5ID0gb3BbMV07IG9wID0gWzBdOyBjb250aW51ZTtcbiAgICAgICAgICAgICAgICBjYXNlIDc6IG9wID0gXy5vcHMucG9wKCk7IF8udHJ5cy5wb3AoKTsgY29udGludWU7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgaWYgKCEodCA9IF8udHJ5cywgdCA9IHQubGVuZ3RoID4gMCAmJiB0W3QubGVuZ3RoIC0gMV0pICYmIChvcFswXSA9PT0gNiB8fCBvcFswXSA9PT0gMikpIHsgXyA9IDA7IGNvbnRpbnVlOyB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgKG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSkgeyBfLmxhYmVsID0gb3BbMV07IGJyZWFrOyB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gNiAmJiBfLmxhYmVsIDwgdFsxXSkgeyBfLmxhYmVsID0gdFsxXTsgdCA9IG9wOyBicmVhazsgfVxuICAgICAgICAgICAgICAgICAgICBpZiAodCAmJiBfLmxhYmVsIDwgdFsyXSkgeyBfLmxhYmVsID0gdFsyXTsgXy5vcHMucHVzaChvcCk7IGJyZWFrOyB9XG4gICAgICAgICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTtcbiAgICAgICAgICAgICAgICAgICAgXy50cnlzLnBvcCgpOyBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pO1xuICAgICAgICB9IGNhdGNoIChlKSB7IG9wID0gWzYsIGVdOyB5ID0gMDsgfSBmaW5hbGx5IHsgZiA9IHQgPSAwOyB9XG4gICAgICAgIGlmIChvcFswXSAmIDUpIHRocm93IG9wWzFdOyByZXR1cm4geyB2YWx1ZTogb3BbMF0gPyBvcFsxXSA6IHZvaWQgMCwgZG9uZTogdHJ1ZSB9O1xuICAgIH1cbn07XG52YXIgX19yZWFkID0gKHVuZGVmaW5lZCAmJiB1bmRlZmluZWQuX19yZWFkKSB8fCBmdW5jdGlvbiAobywgbikge1xuICAgIHZhciBtID0gdHlwZW9mIFN5bWJvbCA9PT0gXCJmdW5jdGlvblwiICYmIG9bU3ltYm9sLml0ZXJhdG9yXTtcbiAgICBpZiAoIW0pIHJldHVybiBvO1xuICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlO1xuICAgIHRyeSB7XG4gICAgICAgIHdoaWxlICgobiA9PT0gdm9pZCAwIHx8IG4tLSA+IDApICYmICEociA9IGkubmV4dCgpKS5kb25lKSBhci5wdXNoKHIudmFsdWUpO1xuICAgIH1cbiAgICBjYXRjaCAoZXJyb3IpIHsgZSA9IHsgZXJyb3I6IGVycm9yIH07IH1cbiAgICBmaW5hbGx5IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlmIChyICYmICFyLmRvbmUgJiYgKG0gPSBpW1wicmV0dXJuXCJdKSkgbS5jYWxsKGkpO1xuICAgICAgICB9XG4gICAgICAgIGZpbmFsbHkgeyBpZiAoZSkgdGhyb3cgZS5lcnJvcjsgfVxuICAgIH1cbiAgICByZXR1cm4gYXI7XG59O1xuLyoqXG4gKiBBIFJlc291cmNlIGRlc2NyaWJlcyB0aGUgZW50aXR5IGZvciB3aGljaCBhIHNpZ25hbHMgKG1ldHJpY3Mgb3IgdHJhY2UpIGFyZVxuICogY29sbGVjdGVkLlxuICovXG52YXIgUmVzb3VyY2UgPSAvKiogQGNsYXNzICovIChmdW5jdGlvbiAoKSB7XG4gICAgZnVuY3Rpb24gUmVzb3VyY2UoXG4gICAgLyoqXG4gICAgICogQSBkaWN0aW9uYXJ5IG9mIGF0dHJpYnV0ZXMgd2l0aCBzdHJpbmcga2V5cyBhbmQgdmFsdWVzIHRoYXQgcHJvdmlkZVxuICAgICAqIGluZm9ybWF0aW9uIGFib3V0IHRoZSBlbnRpdHkgYXMgbnVtYmVycywgc3RyaW5ncyBvciBib29sZWFuc1xuICAgICAqIFRPRE86IENvbnNpZGVyIHRvIGFkZCBjaGVjay92YWxpZGF0aW9uIG9uIGF0dHJpYnV0ZXMuXG4gICAgICovXG4gICAgYXR0cmlidXRlcywgYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZSkge1xuICAgICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHRoaXMuX2F0dHJpYnV0ZXMgPSBhdHRyaWJ1dGVzO1xuICAgICAgICB0aGlzLmFzeW5jQXR0cmlidXRlc1BlbmRpbmcgPSBhc3luY0F0dHJpYnV0ZXNQcm9taXNlICE9IG51bGw7XG4gICAgICAgIHRoaXMuX3N5bmNBdHRyaWJ1dGVzID0gKF9hID0gdGhpcy5fYXR0cmlidXRlcykgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDoge307XG4gICAgICAgIHRoaXMuX2FzeW5jQXR0cmlidXRlc1Byb21pc2UgPSBhc3luY0F0dHJpYnV0ZXNQcm9taXNlID09PSBudWxsIHx8IGFzeW5jQXR0cmlidXRlc1Byb21pc2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFzeW5jQXR0cmlidXRlc1Byb21pc2UudGhlbihmdW5jdGlvbiAoYXN5bmNBdHRyaWJ1dGVzKSB7XG4gICAgICAgICAgICBfdGhpcy5fYXR0cmlidXRlcyA9IE9iamVjdC5hc3NpZ24oe30sIF90aGlzLl9hdHRyaWJ1dGVzLCBhc3luY0F0dHJpYnV0ZXMpO1xuICAgICAgICAgICAgX3RoaXMuYXN5bmNBdHRyaWJ1dGVzUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgcmV0dXJuIGFzeW5jQXR0cmlidXRlcztcbiAgICAgICAgfSwgZnVuY3Rpb24gKGVycikge1xuICAgICAgICAgICAgZGlhZy5kZWJ1ZyhcImEgcmVzb3VyY2UncyBhc3luYyBhdHRyaWJ1dGVzIHByb21pc2UgcmVqZWN0ZWQ6ICVzXCIsIGVycik7XG4gICAgICAgICAgICBfdGhpcy5hc3luY0F0dHJpYnV0ZXNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgICAgICByZXR1cm4ge307XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFuIGVtcHR5IFJlc291cmNlXG4gICAgICovXG4gICAgUmVzb3VyY2UuZW1wdHkgPSBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBSZXNvdXJjZS5FTVBUWTtcbiAgICB9O1xuICAgIC8qKlxuICAgICAqIFJldHVybnMgYSBSZXNvdXJjZSB0aGF0IGlkZW50aWZpZXMgdGhlIFNESyBpbiB1c2UuXG4gICAgICovXG4gICAgUmVzb3VyY2UuZGVmYXVsdCA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICByZXR1cm4gbmV3IFJlc291cmNlKChfYSA9IHt9LFxuICAgICAgICAgICAgX2FbU0VNUkVTQVRUUlNfU0VSVklDRV9OQU1FXSA9IGRlZmF1bHRTZXJ2aWNlTmFtZSgpLFxuICAgICAgICAgICAgX2FbU0VNUkVTQVRUUlNfVEVMRU1FVFJZX1NES19MQU5HVUFHRV0gPSBTREtfSU5GT1tTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX0xBTkdVQUdFXSxcbiAgICAgICAgICAgIF9hW1NFTVJFU0FUVFJTX1RFTEVNRVRSWV9TREtfTkFNRV0gPSBTREtfSU5GT1tTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX05BTUVdLFxuICAgICAgICAgICAgX2FbU0VNUkVTQVRUUlNfVEVMRU1FVFJZX1NES19WRVJTSU9OXSA9IFNES19JTkZPW1NFTVJFU0FUVFJTX1RFTEVNRVRSWV9TREtfVkVSU0lPTl0sXG4gICAgICAgICAgICBfYSkpO1xuICAgIH07XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFJlc291cmNlLnByb3RvdHlwZSwgXCJhdHRyaWJ1dGVzXCIsIHtcbiAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICBpZiAodGhpcy5hc3luY0F0dHJpYnV0ZXNQZW5kaW5nKSB7XG4gICAgICAgICAgICAgICAgZGlhZy5lcnJvcignQWNjZXNzaW5nIHJlc291cmNlIGF0dHJpYnV0ZXMgYmVmb3JlIGFzeW5jIGF0dHJpYnV0ZXMgc2V0dGxlZCcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIChfYSA9IHRoaXMuX2F0dHJpYnV0ZXMpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IHt9O1xuICAgICAgICB9LFxuICAgICAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlXG4gICAgfSk7XG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIHByb21pc2UgdGhhdCB3aWxsIG5ldmVyIGJlIHJlamVjdGVkLiBSZXNvbHZlcyB3aGVuIGFsbCBhc3luYyBhdHRyaWJ1dGVzIGhhdmUgZmluaXNoZWQgYmVpbmcgYWRkZWQgdG9cbiAgICAgKiB0aGlzIFJlc291cmNlJ3MgYXR0cmlidXRlcy4gVGhpcyBpcyB1c2VmdWwgaW4gZXhwb3J0ZXJzIHRvIGJsb2NrIHVudGlsIHJlc291cmNlIGRldGVjdGlvblxuICAgICAqIGhhcyBmaW5pc2hlZC5cbiAgICAgKi9cbiAgICBSZXNvdXJjZS5wcm90b3R5cGUud2FpdEZvckFzeW5jQXR0cmlidXRlcyA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgcmV0dXJuIF9fYXdhaXRlcih0aGlzLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgcmV0dXJuIF9fZ2VuZXJhdG9yKHRoaXMsIGZ1bmN0aW9uIChfYSkge1xuICAgICAgICAgICAgICAgIHN3aXRjaCAoX2EubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAwOlxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmFzeW5jQXR0cmlidXRlc1BlbmRpbmcpIHJldHVybiBbMyAvKmJyZWFrKi8sIDJdO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFs0IC8qeWllbGQqLywgdGhpcy5fYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZV07XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgMTpcbiAgICAgICAgICAgICAgICAgICAgICAgIF9hLnNlbnQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIF9hLmxhYmVsID0gMjtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAyOiByZXR1cm4gWzIgLypyZXR1cm4qL107XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH07XG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhIG5ldywgbWVyZ2VkIHtAbGluayBSZXNvdXJjZX0gYnkgbWVyZ2luZyB0aGUgY3VycmVudCBSZXNvdXJjZVxuICAgICAqIHdpdGggdGhlIG90aGVyIFJlc291cmNlLiBJbiBjYXNlIG9mIGEgY29sbGlzaW9uLCBvdGhlciBSZXNvdXJjZSB0YWtlc1xuICAgICAqIHByZWNlZGVuY2UuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3RoZXIgdGhlIFJlc291cmNlIHRoYXQgd2lsbCBiZSBtZXJnZWQgd2l0aCB0aGlzLlxuICAgICAqIEByZXR1cm5zIHRoZSBuZXdseSBtZXJnZWQgUmVzb3VyY2UuXG4gICAgICovXG4gICAgUmVzb3VyY2UucHJvdG90eXBlLm1lcmdlID0gZnVuY3Rpb24gKG90aGVyKSB7XG4gICAgICAgIHZhciBfdGhpcyA9IHRoaXM7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgaWYgKCFvdGhlcilcbiAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICAvLyBTcGFuQXR0cmlidXRlcyBmcm9tIG90aGVyIHJlc291cmNlIG92ZXJ3cml0ZSBhdHRyaWJ1dGVzIGZyb20gdGhpcyByZXNvdXJjZS5cbiAgICAgICAgdmFyIG1lcmdlZFN5bmNBdHRyaWJ1dGVzID0gX19hc3NpZ24oX19hc3NpZ24oe30sIHRoaXMuX3N5bmNBdHRyaWJ1dGVzKSwgKChfYSA9IG90aGVyLl9zeW5jQXR0cmlidXRlcykgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogb3RoZXIuYXR0cmlidXRlcykpO1xuICAgICAgICBpZiAoIXRoaXMuX2FzeW5jQXR0cmlidXRlc1Byb21pc2UgJiZcbiAgICAgICAgICAgICFvdGhlci5fYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZSkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBSZXNvdXJjZShtZXJnZWRTeW5jQXR0cmlidXRlcyk7XG4gICAgICAgIH1cbiAgICAgICAgdmFyIG1lcmdlZEF0dHJpYnV0ZXNQcm9taXNlID0gUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgdGhpcy5fYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZSxcbiAgICAgICAgICAgIG90aGVyLl9hc3luY0F0dHJpYnV0ZXNQcm9taXNlLFxuICAgICAgICBdKS50aGVuKGZ1bmN0aW9uIChfYSkge1xuICAgICAgICAgICAgdmFyIF9iO1xuICAgICAgICAgICAgdmFyIF9jID0gX19yZWFkKF9hLCAyKSwgdGhpc0FzeW5jQXR0cmlidXRlcyA9IF9jWzBdLCBvdGhlckFzeW5jQXR0cmlidXRlcyA9IF9jWzFdO1xuICAgICAgICAgICAgcmV0dXJuIF9fYXNzaWduKF9fYXNzaWduKF9fYXNzaWduKF9fYXNzaWduKHt9LCBfdGhpcy5fc3luY0F0dHJpYnV0ZXMpLCB0aGlzQXN5bmNBdHRyaWJ1dGVzKSwgKChfYiA9IG90aGVyLl9zeW5jQXR0cmlidXRlcykgIT09IG51bGwgJiYgX2IgIT09IHZvaWQgMCA/IF9iIDogb3RoZXIuYXR0cmlidXRlcykpLCBvdGhlckFzeW5jQXR0cmlidXRlcyk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gbmV3IFJlc291cmNlKG1lcmdlZFN5bmNBdHRyaWJ1dGVzLCBtZXJnZWRBdHRyaWJ1dGVzUHJvbWlzZSk7XG4gICAgfTtcbiAgICBSZXNvdXJjZS5FTVBUWSA9IG5ldyBSZXNvdXJjZSh7fSk7XG4gICAgcmV0dXJuIFJlc291cmNlO1xufSgpKTtcblxuZXhwb3J0IHsgUmVzb3VyY2UgYXMgUiwgZGVmYXVsdFNlcnZpY2VOYW1lIGFzIGQgfTsiXSwKICAibWFwcGluZ3MiOiAiQUFBQSxTQUFTLEtBQUtBLFNBQVk7QUFDMUIsU0FBUyxLQUFLQyxHQUEwQixLQUFLQyxHQUFVLEtBQUtDLEdBQW9DLEtBQUtDLEdBQWdDLEtBQUtDLFNBQXlDO0FBaUJuTCxTQUFTQyxJQUFxQjtBQUMxQixTQUFPO0FBQ1g7QUFpQkEsSUFBSUMsSUFBZ0QsV0FBWTtBQUM1RCxTQUFBQSxJQUFXLE9BQU8sVUFBVSxTQUFTQyxHQUFHO0FBQ3BDLGFBQVNDLEdBQUdDLElBQUksR0FBR0MsSUFBSSxVQUFVLFFBQVFELElBQUlDLEdBQUdELEtBQUs7QUFDakQsTUFBQUQsSUFBSSxVQUFVQyxDQUFDO0FBQ2YsZUFBU0UsS0FBS0gsRUFBRyxDQUFJLE9BQU8sVUFBVSxlQUFlLEtBQUtBLEdBQUdHLENBQUMsTUFDMURKLEVBQUVJLENBQUMsSUFBSUgsRUFBRUcsQ0FBQztBQUFBLElBQ2xCO0FBQ0EsV0FBT0o7QUFBQSxFQUNYLEdBQ09ELEVBQVMsTUFBTSxNQUFNLFNBQVM7QUFDekMsR0FDSU0sSUFBa0QsU0FBVUMsR0FBU0MsR0FBWUMsR0FBR0MsR0FBVztBQUMvRixXQUFTQyxFQUFNQyxHQUFPO0FBQUUsV0FBT0EsYUFBaUJILElBQUlHLElBQVEsSUFBSUgsRUFBRSxTQUFVSSxHQUFTO0FBQUUsTUFBQUEsRUFBUUQsQ0FBSztBQUFBLElBQUcsQ0FBQztBQUFBLEVBQUc7QUFDM0csU0FBTyxLQUFLSCxNQUFNQSxJQUFJLFVBQVUsU0FBVUksR0FBU0MsR0FBUTtBQUN2RCxhQUFTQyxFQUFVSCxHQUFPO0FBQUUsVUFBSTtBQUFFLFFBQUFJLEVBQUtOLEVBQVUsS0FBS0UsQ0FBSyxDQUFDO0FBQUEsTUFBRyxTQUFTSyxHQUFHO0FBQUUsUUFBQUgsRUFBT0csQ0FBQztBQUFBLE1BQUc7QUFBQSxJQUFFO0FBQzFGLGFBQVNDLEVBQVNOLEdBQU87QUFBRSxVQUFJO0FBQUUsUUFBQUksRUFB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QkQsRUFBRyxDQUFDLEdBQUdFLElBQXVCRixFQUFHLENBQUM7QUFDaEYsZUFBTzlDLEVBQVNBLEVBQVNBLEVBQVNBLEVBQVMsQ0FBQyxHQUFHc0MsRUFBTSxlQUFlLEdBQUdTLENBQW1CLElBQUtGLElBQUtILEVBQU0scUJBQXFCLFFBQVFHLE1BQU8sU0FBU0EsSUFBS0gsRUFBTSxVQUFXLEdBQUdNLENBQW9CO0FBQUEsTUFDeE0sQ0FBQztBQUNELGFBQU8sSUFBSWIsRUFBU1EsR0FBc0JDLENBQXVCO0FBQUEsSUFDckUsR0FDQVQsRUFBUyxRQUFRLElBQUlBLEVBQVMsQ0FBQyxDQUFDLEdBQ3pCQTtBQUFBLEVBQ1gsRUFBRTtBQUFBOyIsCiAgIm5hbWVzIjogWyJkaWFnIiwgIlNFTVJFU0FUVFJTX1NFUlZJQ0VfTkFNRSIsICJTREtfSU5GTyIsICJTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX0xBTkdVQUdFIiwgIlNFTVJFU0FUVFJTX1RFTEVNRVRSWV9TREtfTkFNRSIsICJTRU1SRVNBVFRSU19URUxFTUVUUllfU0RLX1ZFUlNJT04iLCAiZGVmYXVsdFNlcnZpY2VOYW1lIiwgIl9fYXNzaWduIiwgInQiLCAicyIsICJpIiwgIm4iLCAicCIsICJfX2F3YWl0ZXIiLCAidGhpc0FyZyIsICJfYXJndW1lbnRzIiwgIlAiLCAiZ2VuZXJhdG9yIiwgImFkb3B0IiwgInZhbHVlIiwgInJlc29sdmUiLCAicmVqZWN0IiwgImZ1bGZpbGxlZCIsICJzdGVwIiwgImUiLCAicmVqZWN0ZWQiLCAicmVzdWx0IiwgIl9fZ2VuZXJhdG9yIiwgImJvZHkiLCAiXyIsICJmIiwgInkiLCAiZyIsICJ2ZXJiIiwgInYiLCAib3AiLCAiX19yZWFkIiwgIm8iLCAibSIsICJyIiwgImFyIiwgImVycm9yIiwgIlJlc291cmNlIiwgImF0dHJpYnV0ZXMiLCAiYXN5bmNBdHRyaWJ1dGVzUHJvbWlzZSIsICJfdGhpcyIsICJfYSIsICJhc3luY0F0dHJpYnV0ZXMiLCAiZXJyIiwgIm90aGVyIiwgIm1lcmdlZFN5bmNBdHRyaWJ1dGVzIiwgIm1lcmdlZEF0dHJpYnV0ZXNQcm9taXNlIiwgIl9iIiwgIl9jIiwgInRoaXNBc3luY0F0dHJpYnV0ZXMiLCAib3RoZXJBc3luY0F0dHJpYnV0ZXMiXQp9Cg==
|