Socket
Socket
Sign inDemoInstall

@adastradev/aws-api-gateway-client

Package Overview
Dependencies
Maintainers
27
Versions
42
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@adastradev/aws-api-gateway-client - npm Package Compare versions

Comparing version 1.0.2 to 1.0.3

12

dist/lib/apiGatewayCore/sigV4Client.js

@@ -257,3 +257,5 @@ "use strict";

timeout: timeout,
data: body
data: body,
method: verb,
url: url
};

@@ -286,9 +288,5 @@

});
return client.request({
method: verb
});
return client.request(signedRequest);
}
signedRequest.method = verb;
signedRequest.url = url;
return (0, _axios["default"])(signedRequest);

@@ -302,2 +300,2 @@ };

exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvYXBpR2F0ZXdheUNvcmUvc2lnVjRDbGllbnQuanMiXSwibmFtZXMiOlsic2lnVjRDbGllbnRGYWN0b3J5IiwibmV3Q2xpZW50IiwiY29uZmlnIiwiQVdTX1NIQV8yNTYiLCJBV1M0X1JFUVVFU1QiLCJBV1M0IiwiWF9BTVpfREFURSIsIlhfQU1aX1NFQ1VSSVRZX1RPS0VOIiwiSE9TVCIsIkFVVEhPUklaQVRJT04iLCJoYXNoIiwidmFsdWUiLCJoZXhFbmNvZGUiLCJ0b1N0cmluZyIsImVuY0hleCIsImhtYWMiLCJzZWNyZXQiLCJhc0J5dGVzIiwiYnVpbGRDYW5vbmljYWxSZXF1ZXN0IiwibWV0aG9kIiwicGF0aCIsInF1ZXJ5UGFyYW1zIiwiaGVhZGVycyIsInBheWxvYWQiLCJidWlsZENhbm9uaWNhbFVyaSIsImJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmciLCJidWlsZENhbm9uaWNhbEhlYWRlcnMiLCJidWlsZENhbm9uaWNhbFNpZ25lZEhlYWRlcnMiLCJoYXNoQ2Fub25pY2FsUmVxdWVzdCIsInJlcXVlc3QiLCJ1cmkiLCJlbmNvZGVVUkkiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwic29ydGVkUXVlcnlQYXJhbXMiLCJwcm9wZXJ0eSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInB1c2giLCJzb3J0IiwiY2Fub25pY2FsUXVlcnlTdHJpbmciLCJpIiwiZml4ZWRFbmNvZGVVUklDb21wb25lbnQiLCJzdWJzdHIiLCJzdHIiLCJlbmNvZGVVUklDb21wb25lbnQiLCJyZXBsYWNlIiwiYyIsImNoYXJDb2RlQXQiLCJjYW5vbmljYWxIZWFkZXJzIiwic29ydGVkS2V5cyIsInRvTG93ZXJDYXNlIiwiam9pbiIsImJ1aWxkU3RyaW5nVG9TaWduIiwiZGF0ZXRpbWUiLCJjcmVkZW50aWFsU2NvcGUiLCJoYXNoZWRDYW5vbmljYWxSZXF1ZXN0IiwiYnVpbGRDcmVkZW50aWFsU2NvcGUiLCJyZWdpb24iLCJzZXJ2aWNlIiwiY2FsY3VsYXRlU2lnbmluZ0tleSIsInNlY3JldEtleSIsImNhbGN1bGF0ZVNpZ25hdHVyZSIsImtleSIsInN0cmluZ1RvU2lnbiIsImJ1aWxkQXV0aG9yaXphdGlvbkhlYWRlciIsImFjY2Vzc0tleSIsInNpZ25hdHVyZSIsImF3c1NpZ1Y0Q2xpZW50IiwidW5kZWZpbmVkIiwidXRpbHMiLCJhc3NlcnREZWZpbmVkIiwic2Vzc2lvblRva2VuIiwic2VydmljZU5hbWUiLCJlbmRwb2ludCIsInJldHJpZXMiLCJyZXRyeUNvbmRpdGlvbiIsInJldHJ5RGVsYXkiLCJob3N0IiwibWFrZVJlcXVlc3QiLCJ2ZXJiIiwiY29weSIsInRpbWVvdXQiLCJkZWZhdWx0Q29udGVudFR5cGUiLCJkZWZhdWx0QWNjZXB0VHlwZSIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiRGF0ZSIsImdldFRpbWUiLCJzeXN0ZW1DbG9ja09mZnNldCIsInRvSVNPU3RyaW5nIiwicGFyc2VyIiwidXJsUGFyc2VyIiwicGFyc2UiLCJob3N0bmFtZSIsImNhbm9uaWNhbFJlcXVlc3QiLCJzaWduaW5nS2V5IiwidXJsIiwicXVlcnlTdHJpbmciLCJzaWduZWRSZXF1ZXN0IiwiZGF0YSIsImJhc2VVUkwiLCJjbGllbnQiLCJheGlvcyIsImNyZWF0ZSIsImF4aW9zUmV0cnkiLCJleHBvbmVudGlhbERlbGF5IiwicGFyc2VJbnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQWVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQXJCQTs7Ozs7Ozs7Ozs7Ozs7QUF1QkEsSUFBTUEsa0JBQWtCLEdBQUcsRUFBM0I7O0FBQ0FBLGtCQUFrQixDQUFDQyxTQUFuQixHQUErQixVQUFTQyxNQUFULEVBQWlCO0FBQzlDLE1BQUlDLFdBQVcsR0FBRyxrQkFBbEI7QUFDQSxNQUFJQyxZQUFZLEdBQUcsY0FBbkI7QUFDQSxNQUFJQyxJQUFJLEdBQUcsTUFBWDtBQUNBLE1BQUlDLFVBQVUsR0FBRyxZQUFqQjtB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NUIsUUFBQUEsT0FBTyxFQUFFM0UsTUFBTSxDQUFDMkUsT0FEQztBQUVqQkMsUUFBQUEsY0FBYyxFQUFFNUUsTUFBTSxDQUFDNEUsY0FGTjtBQUdqQkMsUUFBQUEsVUFBVSxFQUFWQTtBQUhpQixPQUFuQjtBQUtBLGFBQU8wQixNQUFNLENBQUM1RSxPQUFQLENBQWU7QUFBQ1YsUUFBQUEsTUFBTSxFQUFFK0Q7QUFBVCxPQUFmLENBQVA7QUFDRDs7QUFDRG9CLElBQUFBLGFBQWEsQ0FBQ25GLE1BQWQsR0FBdUIrRCxJQUF2QjtBQUNBb0IsSUFBQUEsYUFBYSxDQUFDRixHQUFkLEdBQW9CQSxHQUFwQjtBQUNBLFdBQU8sdUJBQU1FLGFBQU4sQ0FBUDtBQUNELEdBdkhEOztBQXlIQSxTQUFPaEMsY0FBUDtBQUNELENBalFEOztlQW1RZXRFLGtCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDEwLTIwMTYgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpLlxuICogWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogQSBjb3B5IG9mIHRoZSBMaWNlbnNlIGlzIGxvY2F0ZWQgYXRcbiAqXG4gKiAgaHR0cDovL2F3cy5hbWF6b24uY29tL2FwYWNoZTIuMFxuICpcbiAqIG9yIGluIHRoZSBcImxpY2Vuc2VcIiBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZFxuICogb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyXG4gKiBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZ1xuICogcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgYXhpb3NSZXRyeSBmcm9tICdheGlvcy1yZXRyeSc7XG5pbXBvcnQgU0hBMjU2IGZyb20gJ2NyeXB0by1qcy9zaGEyNTYnO1xuaW1wb3J0IGVuY0hleCBmcm9tICdjcnlwdG8tanMvZW5jLWhleCc7XG5pbXBvcnQgSG1hY1NIQTI1NiBmcm9tICdjcnlwdG8tanMvaG1hYy1zaGEyNTYnO1xuaW1wb3J0IHVybFBhcnNlciBmcm9tICd1cmwnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBzaWdWNENsaWVudEZhY3RvcnkgPSB7fTtcbnNpZ1Y0Q2xpZW50RmFjdG9yeS5uZXdDbGllbnQgPSBmdW5jdGlvbihjb25maWcpIHtcbiAgbGV0IEFXU19TSEFfMjU2ID0gJ0FXUzQtSE1BQy1TSEEyNTYnO1xuICBsZXQgQVdTNF9SRVFVRVNUID0gJ2F3czRfcmVxdWVzdCc7XG4gIGxldCBBV1M0ID0gJ0FXUzQnO1xuICBsZXQgWF9BTVpfREFURSA9ICd4LWFtei1kYXRlJztcbiAgbGV0IFhfQU1aX1NFQ1VSSVRZX1RPS0VOID0gJ3gtYW16LXNlY3VyaXR5LXRva2VuJztcbiAgbGV0IEhPU1QgPSAnaG9zdCc7XG4gIGxldCBBVVRIT1JJWkFUSU9OID0gJ0F1dGhvcml6YXRpb24nO1xuXG4gIGZ1bmN0aW9uIGhhc2godmFsdWUpIHtcbiAgICByZXR1cm4gU0hBMjU2KHZhbHVlKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICB9XG5cbiAgZnVuY3Rpb24gaGV4RW5jb2RlKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKGVuY0hleCk7XG4gIH1cblxuICBmdW5jdGlvbiBobWFjKHNlY3JldCwgdmFsdWUpIHtcbiAgICByZXR1cm4gSG1hY1NIQTI1Nih2YWx1ZSwgc2VjcmV0LCB7YXNCeXRlczogdHJ1ZX0pOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lXG4gIH1cblxuICBmdW5jdGlvbiBidWlsZENhbm9uaWNhbFJlcXVlc3QobWV0aG9kLCBwYXRoLCBxdWVyeVBhcmFtcywgaGVhZGVycywgcGF5bG9hZCkge1xuICAgIHJldHVybiBtZXRob2QgKyAnXFxuJyArXG4gICAgICBidWlsZENhbm9uaWNhbFVyaShwYXRoKSArICdcXG4nICtcbiAgICAgIGJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmcocXVlcnlQYXJhbXMpICsgJ1xcbicgK1xuICAgICAgYnVpbGRDYW5vbmljYWxIZWFkZXJzKGhlYWRlcnMpICsgJ1xcbicgK1xuICAgICAgYnVpbGRDYW5vbmljYWxTaWduZWRIZWFkZXJzKGhlYWRlcnMpICsgJ1xcbicgK1xuICAgICAgaGV4RW5jb2RlKGhhc2gocGF5bG9hZCkpO1xuICB9XG5cbiAgZnVuY3Rpb24gaGFzaENhbm9uaWNhbFJlcXVlc3QocmVxdWVzdCkge1xuICAgIHJldHVybiBoZXhFbmNvZGUoaGFzaChyZXF1ZXN0KSk7XG4gIH1cblxuICBmdW5jdGlvbiBidWlsZENhbm9uaWNhbFVyaSh1cmkpIHtcbiAgICByZXR1cm4gZW5jb2RlVVJJKHVyaSk7XG4gIH1cblxuICBmdW5jdGlvbiBidWlsZENhbm9uaWNhbFF1ZXJ5U3RyaW5nKHF1ZXJ5UGFyYW1zKSB7XG4gICAgaWYgKE9iamVjdC5rZXlzKHF1ZXJ5UGFyYW1zKS5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgbGV0IHNvcnRlZFF1ZXJ5UGFyYW1zID0gW107XG4gICAgZm9yIChsZXQgcHJvcGVydHkgaW4gcXVlcnlQYXJhbXMpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocXVlcnlQYXJhbXMsIHByb3BlcnR5KSkge1xuICAgICAgICBzb3J0ZWRRdWVyeVBhcmFtcy5wdXNoKHByb3BlcnR5KTtcbiAgICAgIH1cbiAgICB9XG4gICAgc29ydGVkUXVlcnlQYXJhbXMuc29ydCgpO1xuXG4gICAgbGV0IGNhbm9uaWNhbFF1ZXJ5U3RyaW5nID0gJyc7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzb3J0ZWRRdWVyeVBhcmFtcy5sZW5ndGg7IGkrKykge1xuICAgICAgY2Fub25pY2FsUXVlcnlTdHJpbmcgKz0gc29ydGVkUXVlcnlQYXJhbXNbaV1cbiAgICAgICAgKyAnPScgKyBmaXhlZEVuY29kZVVSSUNvbXBvbmVudChxdWVyeVBhcmFtc1tzb3J0ZWRRdWVyeVBhcmFtc1tpXV0pICsgJyYnO1xuICAgIH1cbiAgICByZXR1cm4gY2Fub25pY2FsUXVlcnlTdHJpbmcuc3Vic3RyKDAsIGNhbm9uaWNhbFF1ZXJ5U3RyaW5nLmxlbmd0aCAtIDEpO1xuICB9XG5cbiAgZnVuY3Rpb24gZml4ZWRFbmNvZGVVUklDb21wb25lbnQoc3RyKSB7XG4gICAgcmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChzdHIpLnJlcGxhY2UoL1shJygpKl0vZywgZnVuY3Rpb24oYykge1xuICAgICAgcmV0dXJuICclJyArIGMuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNik7XG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiBidWlsZENhbm9uaWNhbEhlYWRlcnMoaGVhZGVycykge1xuICAgIGxldCBjYW5vbmljYWxIZWFkZXJzID0gJyc7XG4gICAgbGV0IHNvcnRlZEtleXMgPSBbXTtcbiAgICBmb3IgKGxldCBwcm9wZXJ0eSBpbiBoZWFkZXJzKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGhlYWRlcnMsIHByb3BlcnR5KSkge1xuICAgICAgICBzb3J0ZWRLZXlzLnB1c2gocHJvcGVydHkpO1xuICAgICAgfVxuICAgIH1cbiAgICBzb3J0ZWRLZXlzLnNvcnQoKTtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc29ydGVkS2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgY2Fub25pY2FsSGVhZGVycyArPSBzb3J0ZWRLZXlzW2ldLnRvTG93ZXJDYXNlKCkgKyAnOicgKyBoZWFkZXJzW3NvcnRlZEtleXNbaV1dICsgJ1xcbic7XG4gICAgfVxuICAgIHJldHVybiBjYW5vbmljYWxIZWFkZXJzO1xuICB9XG5cbiAgZnVuY3Rpb24gYnVpbGRDYW5vbmljYWxTaWduZWRIZWFkZXJzKGhlYWRlcnMpIHtcbiAgICBsZXQgc29ydGVkS2V5cyA9IFtdO1xuICAgIGZvciAobGV0IHByb3BlcnR5IGluIGhlYWRlcnMpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaGVhZGVycywgcHJvcGVydHkpKSB7XG4gICAgICAgIHNvcnRlZEtleXMucHVzaChwcm9wZXJ0eS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgc29ydGVkS2V5cy5zb3J0KCk7XG5cbiAgICByZXR1cm4gc29ydGVkS2V5cy5qb2luKCc7Jyk7XG4gIH1cblxuICBmdW5jdGlvbiBidWlsZFN0cmluZ1RvU2lnbihkYXRldGltZSwgY3JlZGVudGlhbFNjb3BlLCBoYXNoZWRDYW5vbmljYWxSZXF1ZXN0KSB7XG4gICAgcmV0dXJuIEFXU19TSEFfMjU2ICsgJ1xcbicgK1xuICAgICAgZGF0ZXRpbWUgKyAnXFxuJyArXG4gICAgICBjcmVkZW50aWFsU2NvcGUgKyAnXFxuJyArXG4gICAgICBoYXNoZWRDYW5vbmljYWxSZXF1ZXN0O1xuICB9XG5cbiAgZnVuY3Rpb24gYnVpbGRDcmVkZW50aWFsU2NvcGUoZGF0ZXRpbWUsIHJlZ2lvbiwgc2VydmljZSkge1xuICAgIHJldHVybiBkYXRldGltZS5zdWJzdHIoMCwgOCkgKyAnLycgKyByZWdpb24gKyAnLycgKyBzZXJ2aWNlICsgJy8nICsgQVdTNF9SRVFVRVNUO1xuICB9XG5cbiAgZnVuY3Rpb24gY2FsY3VsYXRlU2lnbmluZ0tleShzZWNyZXRLZXksIGRhdGV0aW1lLCByZWdpb24sIHNlcnZpY2UpIHtcbiAgICByZXR1cm4gaG1hYyhobWFjKGhtYWMoXG4gICAgICBobWFjKEFXUzQgKyBzZWNyZXRLZXksIGRhdGV0aW1lLnN1YnN0cigwLCA4KSksXG4gICAgICByZWdpb25cbiAgICApLCBzZXJ2aWNlKSwgQVdTNF9SRVFVRVNUKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGNhbGN1bGF0ZVNpZ25hdHVyZShrZXksIHN0cmluZ1RvU2lnbikge1xuICAgIHJldHVybiBoZXhFbmNvZGUoaG1hYyhrZXksIHN0cmluZ1RvU2lnbikpO1xuICB9XG5cbiAgZnVuY3Rpb24gYnVpbGRBdXRob3JpemF0aW9uSGVhZGVyKGFjY2Vzc0tleSwgY3JlZGVudGlhbFNjb3BlLCBoZWFkZXJzLCBzaWduYXR1cmUpIHtcbiAgICByZXR1cm4gQVdTX1NIQV8yNTYgKyAnIENyZWRlbnRpYWw9JyArIGFjY2Vzc0tleSArICcvJyArIGNyZWRlbnRpYWxTY29wZVxuICAgICAgKyAnLCBTaWduZWRIZWFkZXJzPScgKyBidWlsZENhbm9uaWNhbFNpZ25lZEhlYWRlcnMoaGVhZGVycykgKyAnLCBTaWduYXR1cmU9JyArIHNpZ25hdHVyZTtcbiAgfVxuXG4gIGxldCBhd3NTaWdWNENsaWVudCA9IHsgfTtcbiAgaWYgKGNvbmZpZy5hY2Nlc3NLZXkgPT09IHVuZGVmaW5lZCB8fCBjb25maWcuc2VjcmV0S2V5ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gYXdzU2lnVjRDbGllbnQ7XG4gIH1cbiAgYXdzU2lnVjRDbGllbnQuYWNjZXNzS2V5ID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChjb25maWcuYWNjZXNzS2V5LCAnYWNjZXNzS2V5Jyk7XG4gIGF3c1NpZ1Y0Q2xpZW50LnNlY3JldEtleSA9IHV0aWxzLmFzc2VydERlZmluZWQoY29uZmlnLnNlY3JldEtleSwgJ3NlY3JldEtleScpO1xuICBhd3NTaWdWNENsaWVudC5zZXNzaW9uVG9rZW4gPSBjb25maWcuc2Vzc2lvblRva2VuO1xuICBhd3NTaWdWNENsaWVudC5zZXJ2aWNlTmFtZSA9IHV0aWxzLmFzc2VydERlZmluZWQoY29uZmlnLnNlcnZpY2VOYW1lLCAnc2VydmljZU5hbWUnKTtcbiAgYXdzU2lnVjRDbGllbnQucmVnaW9uID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChjb25maWcucmVnaW9uLCAncmVnaW9uJyk7XG4gIGF3c1NpZ1Y0Q2xpZW50LmVuZHBvaW50ID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChjb25maWcuZW5kcG9pbnQsICdlbmRwb2ludCcpO1xuICBhd3NTaWdWNENsaWVudC5yZXRyaWVzID0gY29uZmlnLnJldHJpZXM7XG4gIGF3c1NpZ1Y0Q2xpZW50LnJldHJ5Q29uZGl0aW9uID0gY29uZmlnLnJldHJ5Q29uZGl0aW9uO1xuICBhd3NTaWdWNENsaWVudC5yZXRyeURlbGF5ID0gY29uZmlnLnJldHJ5RGVsYXk7XG4gIGF3c1NpZ1Y0Q2xpZW50Lmhvc3QgPSBjb25maWcuaG9zdDtcblxuICBhd3NTaWdWNENsaWVudC5tYWtlUmVxdWVzdCA9IGZ1bmN0aW9uKHJlcXVlc3QpIHtcbiAgICBsZXQgdmVyYiA9IHV0aWxzLmFzc2VydERlZmluZWQocmVxdWVzdC52ZXJiLCAndmVyYicpO1xuICAgIGxldCBwYXRoID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChyZXF1ZXN0LnBhdGgsICdwYXRoJyk7XG4gICAgbGV0IHF1ZXJ5UGFyYW1zID0gdXRpbHMuY29weShyZXF1ZXN0LnF1ZXJ5UGFyYW1zKTtcbiAgICBsZXQgdGltZW91dCA9IHV0aWxzLmNvcHkocmVxdWVzdC50aW1lb3V0KTtcblxuICAgIGlmIChxdWVyeVBhcmFtcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBxdWVyeVBhcmFtcyA9IHt9O1xuICAgIH1cblxuICAgIGlmICh0aW1lb3V0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRpbWVvdXQgPSAwO1xuICAgIH1cbiAgICBsZXQgaGVhZGVycyA9IHV0aWxzLmNvcHkocmVxdWVzdC5oZWFkZXJzKTtcbiAgICBpZiAoaGVhZGVycyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBoZWFkZXJzID0ge307XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIHVzZXIgaGFzIG5vdCBzcGVjaWZpZWQgYW4gb3ZlcnJpZGUgZm9yIENvbnRlbnQgdHlwZSB0aGUgdXNlIGRlZmF1bHRcbiAgICBpZiAoaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSBjb25maWcuZGVmYXVsdENvbnRlbnRUeXBlO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSB1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGFuIG92ZXJyaWRlIGZvciBBY2NlcHQgdHlwZSB0aGUgdXNlIGRlZmF1bHRcbiAgICBpZiAoaGVhZGVyc1snQWNjZXB0J10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgaGVhZGVyc1snQWNjZXB0J10gPSBjb25maWcuZGVmYXVsdEFjY2VwdFR5cGU7XG4gICAgfVxuXG4gICAgbGV0IGJvZHkgPSB1dGlscy5jb3B5KHJlcXVlc3QuYm9keSk7XG5cbiAgICAvLyBzdHJpbmdpZnkgcmVxdWVzdCBib2R5IGlmIGNvbnRlbnQgdHlwZSBpcyBKU09OXG4gICAgaWYgKGJvZHkgJiYgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gJiYgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPT09ICdhcHBsaWNhdGlvbi9qc29uJykge1xuICAgICAgYm9keSA9IEpTT04uc3RyaW5naWZ5KGJvZHkpO1xuICAgIH1cblxuICAgIC8vIElmIHRoZXJlIGlzIG5vIGJvZHkgcmVtb3ZlIHRoZSBjb250ZW50LXR5cGUgaGVhZGVyIHNvIGl0IGlzIG5vdCBpbmNsdWRlZCBpbiBTaWdWNCBjYWxjdWxhdGlvblxuICAgIGlmIChib2R5ID09PSAnJyB8fCBib2R5ID09PSB1bmRlZmluZWQgfHwgYm9keSA9PT0gbnVsbCkge1xuICAgICAgZGVsZXRlIGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddO1xuICAgIH1cblxuICAgIGxldCBkYXRldGltZSA9IG5ldyBEYXRlKG5ldyBEYXRlKCkuZ2V0VGltZSgpICsgY29uZmlnLnN5c3RlbUNsb2NrT2Zmc2V0KS50b0lTT1N0cmluZygpXG4gICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoL1xcLlxcZHszfVokLywgJ1onKS5yZXBsYWNlKC9bOi1dfFxcLlxcZHszfS9nLCAnJyk7XG4gICAgaGVhZGVyc1tYX0FNWl9EQVRFXSA9IGRhdGV0aW1lO1xuXG4gICAgaWYgKGF3c1NpZ1Y0Q2xpZW50Lmhvc3QpIHtcbiAgICAgIGhlYWRlcnNbSE9TVF0gPSBhd3NTaWdWNENsaWVudC5ob3N0O1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgcGFyc2VyID0gdXJsUGFyc2VyLnBhcnNlKGF3c1NpZ1Y0Q2xpZW50LmVuZHBvaW50KTtcbiAgICAgIGhlYWRlcnNbSE9TVF0gPSBwYXJzZXIuaG9zdG5hbWU7XG4gICAgfVxuXG4gICAgbGV0IGNhbm9uaWNhbFJlcXVlc3QgPSBidWlsZENhbm9uaWNhbFJlcXVlc3QodmVyYiwgcGF0aCwgcXVlcnlQYXJhbXMsIGhlYWRlcnMsIGJvZHkpO1xuICAgIGxldCBoYXNoZWRDYW5vbmljYWxSZXF1ZXN0ID0gaGFzaENhbm9uaWNhbFJlcXVlc3QoY2Fub25pY2FsUmVxdWVzdCk7XG4gICAgbGV0IGNyZWRlbnRpYWxTY29wZSA9IGJ1aWxkQ3JlZGVudGlhbFNjb3BlKFxuICAgICAgZGF0ZXRpbWUsXG4gICAgICBhd3NTaWdWNENsaWVudC5yZWdpb24sXG4gICAgICBhd3NTaWdWNENsaWVudC5zZXJ2aWNlTmFtZVxuICAgICk7XG4gICAgbGV0IHN0cmluZ1RvU2lnbiA9IGJ1aWxkU3RyaW5nVG9TaWduKGRhdGV0aW1lLCBjcmVkZW50aWFsU2NvcGUsIGhhc2hlZENhbm9uaWNhbFJlcXVlc3QpO1xuICAgIGxldCBzaWduaW5nS2V5ID0gY2FsY3VsYXRlU2lnbmluZ0tleShcbiAgICAgIGF3c1NpZ1Y0Q2xpZW50LnNlY3JldEtleSxcbiAgICAgIGRhdGV0aW1lLFxuICAgICAgYXdzU2lnVjRDbGllbnQucmVnaW9uLFxuICAgICAgYXdzU2lnVjRDbGllbnQuc2VydmljZU5hbWVcbiAgICApO1xuICAgIGxldCBzaWduYXR1cmUgPSBjYWxjdWxhdGVTaWduYXR1cmUoc2lnbmluZ0tleSwgc3RyaW5nVG9TaWduKTtcbiAgICBoZWFkZXJzW0FVVEhPUklaQVRJT05dID0gYnVpbGRBdXRob3JpemF0aW9uSGVhZGVyKFxuICAgICAgYXdzU2lnVjRDbGllbnQuYWNjZXNzS2V5LFxuICAgICAgY3JlZGVudGlhbFNjb3BlLFxuICAgICAgaGVhZGVycyxcbiAgICAgIHNpZ25hdHVyZVxuICAgICk7XG4gICAgaWYgKGF3c1NpZ1Y0Q2xpZW50LnNlc3Npb25Ub2tlbiAhPT0gdW5kZWZpbmVkICYmIGF3c1NpZ1Y0Q2xpZW50LnNlc3Npb25Ub2tlbiAhPT0gJycpIHtcbiAgICAgIGhlYWRlcnNbWF9BTVpfU0VDVVJJVFlfVE9LRU5dID0gYXdzU2lnVjRDbGllbnQuc2Vzc2lvblRva2VuO1xuICAgIH1cbiAgICBkZWxldGUgaGVhZGVyc1tIT1NUXTtcblxuICAgIGxldCB1cmwgPSBjb25maWcuZW5kcG9pbnQgKyBwYXRoO1xuICAgIGxldCBxdWVyeVN0cmluZyA9IGJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmcocXVlcnlQYXJhbXMpO1xuICAgIGlmIChxdWVyeVN0cmluZyAhPT0gJycpIHtcbiAgICAgIHVybCArPSAnPycgKyBxdWVyeVN0cmluZztcbiAgICB9XG5cbiAgICAvLyBOZWVkIHRvIHJlLWF0dGFjaCBDb250ZW50LVR5cGUgaWYgaXQgaXMgbm90IHNwZWNpZmllZCBhdCB0aGlzIHBvaW50XG4gICAgaWYgKGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID0gY29uZmlnLmRlZmF1bHRDb250ZW50VHlwZTtcbiAgICB9XG5cbiAgICBsZXQgc2lnbmVkUmVxdWVzdCA9IHtcbiAgICAgIGhlYWRlcnM6IGhlYWRlcnMsXG4gICAgICB0aW1lb3V0OiB0aW1lb3V0LFxuICAgICAgZGF0YTogYm9keVxuICAgIH07XG4gICAgaWYgKGNvbmZpZy5yZXRyaWVzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHNpZ25lZFJlcXVlc3QuYmFzZVVSTCA9IHVybDtcbiAgICAgIGxldCBjbGllbnQgPSBheGlvcy5jcmVhdGUoc2lnbmVkUmVxdWVzdCk7XG5cbiAgICAgIC8vIEFsbG93IHVzZXIgY29uZmlndXJhYmxlIGRlbGF5LCBvciBidWlsdC1pbiBleHBvbmVudGlhbCBkZWxheVxuICAgICAgbGV0IHJldHJ5RGVsYXkgPSBmdW5jdGlvbigpIHtcbiByZXR1cm4gMDtcbn07XG4gICAgICBpZiAoY29uZmlnLnJldHJ5RGVsYXkgPT09ICdleHBvbmVudGlhbCcpIHtcbiAgICAgICAgcmV0cnlEZWxheSA9IGF4aW9zUmV0cnkuZXhwb25lbnRpYWxEZWxheTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGNvbmZpZy5yZXRyeURlbGF5ID09PSAnbnVtYmVyJykge1xuICAgICAgICByZXRyeURlbGF5ID0gKCkgPT4gcGFyc2VJbnQoY29uZmlnLnJldHJ5RGVsYXkpO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgY29uZmlnLnJldHJ5RGVsYXkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0cnlEZWxheSA9IGNvbmZpZy5yZXRyeURlbGF5O1xuICAgICAgfVxuXG4gICAgICBheGlvc1JldHJ5KGNsaWVudCwge1xuICAgICAgICByZXRyaWVzOiBjb25maWcucmV0cmllcyxcbiAgICAgICAgcmV0cnlDb25kaXRpb246IGNvbmZpZy5yZXRyeUNvbmRpdGlvbixcbiAgICAgICAgcmV0cnlEZWxheSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGNsaWVudC5yZXF1ZXN0KHttZXRob2Q6IHZlcmJ9KTtcbiAgICB9XG4gICAgc2lnbmVkUmVxdWVzdC5tZXRob2QgPSB2ZXJiO1xuICAgIHNpZ25lZFJlcXVlc3QudXJsID0gdXJsO1xuICAgIHJldHVybiBheGlvcyhzaWduZWRSZXF1ZXN0KTtcbiAgfTtcblxuICByZXR1cm4gYXdzU2lnVjRDbGllbnQ7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBzaWdWNENsaWVudEZhY3Rvcnk7XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvYXBpR2F0ZXdheUNvcmUvc2lnVjRDbGllbnQuanMiXSwibmFtZXMiOlsic2lnVjRDbGllbnRGYWN0b3J5IiwibmV3Q2xpZW50IiwiY29uZmlnIiwiQVdTX1NIQV8yNTYiLCJBV1M0X1JFUVVFU1QiLCJBV1M0IiwiWF9BTVpfREFURSIsIlhfQU1aX1NFQ1VSSVRZX1RPS0VOIiwiSE9TVCIsIkFVVEhPUklaQVRJT04iLCJoYXNoIiwidmFsdWUiLCJoZXhFbmNvZGUiLCJ0b1N0cmluZyIsImVuY0hleCIsImhtYWMiLCJzZWNyZXQiLCJhc0J5dGVzIiwiYnVpbGRDYW5vbmljYWxSZXF1ZXN0IiwibWV0aG9kIiwicGF0aCIsInF1ZXJ5UGFyYW1zIiwiaGVhZGVycyIsInBheWxvYWQiLCJidWlsZENhbm9uaWNhbFVyaSIsImJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmciLCJidWlsZENhbm9uaWNhbEhlYWRlcnMiLCJidWlsZENhbm9uaWNhbFNpZ25lZEhlYWRlcnMiLCJoYXNoQ2Fub25pY2FsUmVxdWVzdCIsInJlcXVlc3QiLCJ1cmkiLCJlbmNvZGVVUkkiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwic29ydGVkUXVlcnlQYXJhbXMiLCJwcm9wZXJ0eSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInB1c2giLCJzb3J0IiwiY2Fub25pY2FsUXVlcnlTdHJpbmciLCJpIiwiZml4ZWRFbmNvZGVVUklDb21wb25lbnQiLCJzdWJzdHIiLCJzdHIiLCJlbmNvZGVVUklDb21wb25lbnQiLCJyZXBsYWNlIiwiYyIsImNoYXJDb2RlQXQiLCJjYW5vbmljYWxIZWFkZXJzIiwic29ydGVkS2V5cyIsInRvTG93ZXJDYXNlIiwiam9pbiIsImJ1aWxkU3RyaW5nVG9TaWduIiwiZGF0ZXRpbWUiLCJjcmVkZW50aWFsU2NvcGUiLCJoYXNoZWRDYW5vbmljYWxSZXF1ZXN0IiwiYnVpbGRDcmVkZW50aWFsU2NvcGUiLCJyZWdpb24iLCJzZXJ2aWNlIiwiY2FsY3VsYXRlU2lnbmluZ0tleSIsInNlY3JldEtleSIsImNhbGN1bGF0ZVNpZ25hdHVyZSIsImtleSIsInN0cmluZ1RvU2lnbiIsImJ1aWxkQXV0aG9yaXphdGlvbkhlYWRlciIsImFjY2Vzc0tleSIsInNpZ25hdHVyZSIsImF3c1NpZ1Y0Q2xpZW50IiwidW5kZWZpbmVkIiwidXRpbHMiLCJhc3NlcnREZWZpbmVkIiwic2Vzc2lvblRva2VuIiwic2VydmljZU5hbWUiLCJlbmRwb2ludCIsInJldHJpZXMiLCJyZXRyeUNvbmRpdGlvbiIsInJldHJ5RGVsYXkiLCJob3N0IiwibWFrZVJlcXVlc3QiLCJ2ZXJiIiwiY29weSIsInRpbWVvdXQiLCJkZWZhdWx0Q29udGVudFR5cGUiLCJkZWZhdWx0QWNjZXB0VHlwZSIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwiRGF0ZSIsImdldFRpbWUiLCJzeXN0ZW1DbG9ja09mZnNldCIsInRvSVNPU3RyaW5nIiwicGFyc2VyIiwidXJsUGFyc2VyIiwicGFyc2UiLCJob3N0bmFtZSIsImNhbm9uaWNhbFJlcXVlc3QiLCJzaWduaW5nS2V5IiwidXJsIiwicXVlcnlTdHJpbmciLCJzaWduZWRSZXF1ZXN0IiwiZGF0YSIsImJhc2VVUkwiLCJjbGllbnQiLCJheGlvcyIsImNyZWF0ZSIsImF4aW9zUmV0cnkiLCJleHBvbmVudGlhbERlbGF5IiwicGFyc2VJbnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQWVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQXJCQTs7Ozs7Ozs7Ozs7Ozs7QUF1QkEsSUFBTUEsa0JBQWtCLEdBQUcsRUFBM0I7O0FBQ0FBLGtCQUFrQixDQUFDQyxTQUFuQixHQUErQixVQUFTQyxNQUFULEVBQWlCO0FBQzlDLE1BQUlDLFdBQVcsR0FBRyxrQkFBbEI7QUFDQSxNQUFJQyxZQUFZLEdBQUcsY0FBbkI7QUFDQSxNQUFJQyxJQUFJLEdBQUcsTUFBWDtBQUNBLE1BQUlDLFVBQVUsR0FBRyxZQUFqQjtBQUNBLE1BQUlDLG9CQUFvQixHQUFHLHNCQUEzQjtBQUNBLE1BQUlDLElBQUksR0FBRyxNQUFYO0FBQ0EsTUFBSUMsYUFBYSxHQUFHLGVBQXBCOztBQUVBLFdBQVNDLElBQVQsQ0FBY0MsS0FBZCxFQUFxQjtBQUNuQixXQUFPLHFCQUFPQSxLQUFQLENBQVAsQ0FEbUIsQ0FDRztBQUN2Qjs7QUFFRCxXQUFTQyxTQUFULENBQW1CRCxLQUFuQixFQUEwQjtBQUN4QixXQUFPQSxLQUFLLENBQUNFLFFBQU4sQ0FBZUMsa0JBQWYsQ0FBUDtBQUNEOztBQUVELFdBQVNDLElBQVQsQ0FBY0MsTUFBZCxFQUFzQkwsS0FBdEIsRUFBNkI7QUFDM0IsV0FBTyx5QkFBV0EsS0FBWCxFQUFrQkssTUFBbEIsRUFBMEI7QUFBQ0MsTUFBQUEsT0FBTyxFQUFFO0FBQVYsS0FBMUIsQ0FBUCxDQUQyQixDQUN3QjtBQUNwRDs7QUFFRCxXQUFTQyxxQkFBVCxDQUErQkMsTUFBL0IsRUFBdUNDLElBQXZDLEVBQTZDQyxXQUE3QyxFQUEwREMsT0FBMUQsRUFBbUVDLE9BQW5FLEVBQTRFO0FBQzFFLFdBQU9KLE1BQU0sR0FBRyxJQUFULEdBQ0xLLGlCQUFpQixDQUFDSixJQUFELENBRFosR0FDcUIsSUFEckIsR0FFTEsseUJBQXlCLENBQUNKLFdBQUQsQ0FGcEIsR0FFb0MsSUFGcEMsR0FHTEsscUJBQXFCLENBQUNKLE9BQUQsQ0FIaEIsR0FHNEIsSUFINUIsR0FJTEssMkJBQTJCLENBQUNMLE9BQUQsQ0FKdEIsR0FJa0MsSUFKbEMsR0FLTFYsU0FBUyxDQUFDRixJQUFJLENBQUNhLE9BQUQsQ0FBTCxDQUxYO0FBTUQ7O0FBRUQsV0FBU0ssb0JBQVQsQ0FBOEJDLE9BQTlCLEVBQXVDO0FBQ3JDLFdBQU9qQixTQUFTLENBQUNGLElBQUksQ0FBQ21CLE9BQUQsQ0FBTCxDQUFoQjtBQUNEOztBQUVELFdBQVNMLGlCQUFULENBQTJCTSxHQUEzQixFQUFnQztBQUM5QixXQUFPQyxTQUFTLENBQUNELEdBQUQsQ0FBaEI7QUFDRDs7QUFFRCxXQUFTTCx5QkFBVCxDQUFtQ0osV0FBbkMsRUFBZ0Q7QUFDOUMsUUFBSVcsTUFBTSxDQUFDQyxJQUFQLENBQVlaLFdBQVosRUFBeUJhLE1BQXpCLEdBQWtDLENBQXRDLEVBQXlDO0FBQ3ZDLGFBQU8sRUFBUDtBQUNEOztBQUVELFFBQUlDLGlCQUFpQixHQUFHLEVBQXhCOztBQUNBLFNBQUssSUFBSUMsUUFBVCxJQUFxQmYsV0FBckIsRUFBa0M7QUFDaEMsVUFBSVcsTUFBTSxDQUFDSyxTQUFQLENBQWlCQyxjQUFqQixDQUFnQ0MsSUFBaEMsQ0FBcUNsQixXQUFyQyxFQUFrRGUsUUFBbEQsQ0FBSixFQUFpRTtBQUMvREQsUUFBQUEsaUJBQWlCLENBQUNLLElBQWxCLENBQXVCSixRQUF2QjtBQUNEO0FBQ0Y7O0FBQ0RELElBQUFBLGlCQUFpQixDQUFDTSxJQUFsQjtBQUVBLFFBQUlDLG9CQUFvQixHQUFHLEVBQTNCOztBQUNBLFNBQUssSUFBSUMsQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBR1IsaUJBQWlCLENBQUNELE1BQXRDLEVBQThDUyxDQUFDLEVBQS9DLEVBQW1EO0FBQ2pERCxNQUFBQSxvQkFBb0IsSUFBSVAsaUJBQWlCLENBQUNRLENBQUQsQ0FBakIsR0FDcEIsR0FEb0IsR0FDZEMsdUJBQXVCLENBQUN2QixXQUFXLENBQUNjLGlCQUFpQixDQUFDUSxDQUFELENBQWxCLENBQVosQ0FEVCxHQUMrQyxHQUR2RTtBQUVEOztBQUNELFdBQU9ELG9CQUFvQixDQUFDRyxNQUFyQixDQUE0QixDQUE1QixFQUErQkgsb0JBQW9CLENBQUNSLE1BQXJCLEdBQThCLENBQTdELENBQVA7QUFDRDs7QUFFRCxXQUFTVSx1QkFBVCxDQUFpQ0UsR0FBakMsRUFBc0M7QUFDcEMsV0FBT0Msa0JBQWtCLENBQUNELEdBQUQsQ0FBbEIsQ0FBd0JFLE9BQXhCLENBQWdDLFVBQWhDLEVBQTRDLFVBQVNDLENBQVQsRUFBWTtBQUM3RCxhQUFPLE1BQU1BLENBQUMsQ0FBQ0MsVUFBRixDQUFhLENBQWIsRUFBZ0JyQyxRQUFoQixDQUF5QixFQUF6QixDQUFiO0FBQ0QsS0FGTSxDQUFQO0FBR0Q7O0FBRUQsV0FBU2EscUJBQVQsQ0FBK0JKLE9BQS9CLEVBQXdDO0FBQ3RDLFFBQUk2QixnQkFBZ0IsR0FBRyxFQUF2QjtBQUNBLFFBQUlDLFVBQVUsR0FBRyxFQUFqQjs7QUFDQSxTQUFLLElBQUloQixRQUFULElBQXFCZCxPQUFyQixFQUE4QjtBQUM1QixVQUFJVSxNQUFNLENBQUNLLFNBQVAsQ0FBaUJDLGNBQWpCLENBQWdDQyxJQUFoQyxDQUFxQ2pCLE9BQXJDLEVBQThDYyxRQUE5QyxDQUFKLEVBQTZEO0FBQzNEZ0IsUUFBQUEsVUFBVSxDQUFDWixJQUFYLENBQWdCSixRQUFoQjtBQUNEO0FBQ0Y7O0FBQ0RnQixJQUFBQSxVQUFVLENBQUNYLElBQVg7O0FBRUEsU0FBSyxJQUFJRSxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHUyxVQUFVLENBQUNsQixNQUEvQixFQUF1Q1MsQ0FBQyxFQUF4QyxFQUE0QztBQUMxQ1EsTUFBQUEsZ0JBQWdCLElBQUlDLFVBQVUsQ0FBQ1QsQ0FBRCxDQUFWLENBQWNVLFdBQWQsS0FBOEIsR0FBOUIsR0FBb0MvQixPQUFPLENBQUM4QixVQUFVLENBQUNULENBQUQsQ0FBWCxDQUEzQyxHQUE2RCxJQUFqRjtBQUNEOztBQUNELFdBQU9RLGdCQUFQO0FBQ0Q7O0FBRUQsV0FBU3hCLDJCQUFULENBQXFDTCxPQUFyQyxFQUE4QztBQUM1QyxRQUFJOEIsVUFBVSxHQUFHLEVBQWpCOztBQUNBLFNBQUssSUFBSWhCLFFBQVQsSUFBcUJkLE9BQXJCLEVBQThCO0FBQzVCLFVBQUlVLE1BQU0sQ0FBQ0ssU0FBUCxDQUFpQkMsY0FBakIsQ0FBZ0NDLElBQWhDLENBQXFDakIsT0FBckMsRUFBOENjLFFBQTlDLENBQUosRUFBNkQ7QUFDM0RnQixRQUFBQSxVQUFVLENBQUNaLElBQVgsQ0FBZ0JKLFFBQVEsQ0FBQ2lCLFdBQVQsRUFBaEI7QUFDRDtBQUNGOztBQUNERCxJQUFBQSxVQUFVLENBQUNYLElBQVg7QUFFQSxXQUFPVyxVQUFVLENBQUNFLElBQVgsQ0FBZ0IsR0FBaEIsQ0FBUDtBQUNEOztBQUVELFdBQVNDLGlCQUFULENBQTJCQyxRQUEzQixFQUFxQ0MsZUFBckMsRUFBc0RDLHNCQUF0RCxFQUE4RTtBQUM1RSxXQUFPdkQsV0FBVyxHQUFHLElBQWQsR0FDTHFELFFBREssR0FDTSxJQUROLEdBRUxDLGVBRkssR0FFYSxJQUZiLEdBR0xDLHNCQUhGO0FBSUQ7O0FBRUQsV0FBU0Msb0JBQVQsQ0FBOEJILFFBQTlCLEVBQXdDSSxNQUF4QyxFQUFnREMsT0FBaEQsRUFBeUQ7QUFDdkQsV0FBT0wsUUFBUSxDQUFDWCxNQUFULENBQWdCLENBQWhCLEVBQW1CLENBQW5CLElBQXdCLEdBQXhCLEdBQThCZSxNQUE5QixHQUF1QyxHQUF2QyxHQUE2Q0MsT0FBN0MsR0FBdUQsR0FBdkQsR0FBNkR6RCxZQUFwRTtBQUNEOztBQUVELFdBQVMwRCxtQkFBVCxDQUE2QkMsU0FBN0IsRUFBd0NQLFFBQXhDLEVBQWtESSxNQUFsRCxFQUEwREMsT0FBMUQsRUFBbUU7QUFDakUsV0FBTzlDLElBQUksQ0FBQ0EsSUFBSSxDQUFDQSxJQUFJLENBQ25CQSxJQUFJLENBQUNWLElBQUksR0FBRzBELFNBQVIsRUFBbUJQLFFBQVEsQ0FBQ1gsTUFBVCxDQUFnQixDQUFoQixFQUFtQixDQUFuQixDQUFuQixDQURlLEVBRW5CZSxNQUZtQixDQUFMLEVBR2JDLE9BSGEsQ0FBTCxFQUdFekQsWUFIRixDQUFYO0FBSUQ7O0FBRUQsV0FBUzRELGtCQUFULENBQTRCQyxHQUE1QixFQUFpQ0MsWUFBakMsRUFBK0M7QUFDN0MsV0FBT3RELFNBQVMsQ0FBQ0csSUFBSSxDQUFDa0QsR0FBRCxFQUFNQyxZQUFOLENBQUwsQ0FBaEI7QUFDRDs7QUFFRCxXQUFTQyx3QkFBVCxDQUFrQ0MsU0FBbEMsRUFBNkNYLGVBQTdDLEVBQThEbkMsT0FBOUQsRUFBdUUrQyxTQUF2RSxFQUFrRjtBQUNoRixXQUFPbEUsV0FBVyxHQUFHLGNBQWQsR0FBK0JpRSxTQUEvQixHQUEyQyxHQUEzQyxHQUFpRFgsZUFBakQsR0FDSCxrQkFERyxHQUNrQjlCLDJCQUEyQixDQUFDTCxPQUFELENBRDdDLEdBQ3lELGNBRHpELEdBQzBFK0MsU0FEakY7QUFFRDs7QUFFRCxNQUFJQyxjQUFjLEdBQUcsRUFBckI7O0FBQ0EsTUFBSXBFLE1BQU0sQ0FBQ2tFLFNBQVAsS0FBcUJHLFNBQXJCLElBQWtDckUsTUFBTSxDQUFDNkQsU0FBUCxLQUFxQlEsU0FBM0QsRUFBc0U7QUFDcEUsV0FBT0QsY0FBUDtBQUNEOztBQUNEQSxFQUFBQSxjQUFjLENBQUNGLFNBQWYsR0FBMkJJLGtCQUFNQyxhQUFOLENBQW9CdkUsTUFBTSxDQUFDa0UsU0FBM0IsRUFBc0MsV0FBdEMsQ0FBM0I7QUFDQUUsRUFBQUEsY0FBYyxDQUFDUCxTQUFmLEdBQTJCUyxrQkFBTUMsYUFBTixDQUFvQnZFLE1BQU0sQ0FBQzZELFNBQTNCLEVBQXNDLFdBQXRDLENBQTNCO0FBQ0FPLEVBQUFBLGNBQWMsQ0FBQ0ksWUFBZixHQUE4QnhFLE1BQU0sQ0FBQ3dFLFlBQXJDO0FBQ0FKLEVBQUFBLGNBQWMsQ0FBQ0ssV0FBZixHQUE2Qkgsa0JBQU1DLGFBQU4sQ0FBb0J2RSxNQUFNLENBQUN5RSxXQUEzQixFQUF3QyxhQUF4QyxDQUE3QjtBQUNBTCxFQUFBQSxjQUFjLENBQUNWLE1BQWYsR0FBd0JZLGtCQUFNQyxhQUFOLENBQW9CdkUsTUFBTSxDQUFDMEQsTUFBM0IsRUFBbUMsUUFBbkMsQ0FBeEI7QUFDQVUsRUFBQUEsY0FBYyxDQUFDTSxRQUFmLEdBQTBCSixrQkFBTUMsYUFBTixDQUFvQnZFLE1BQU0sQ0FBQzBFLFFBQTNCLEVBQXFDLFVBQXJDLENBQTFCO0FBQ0FOLEVBQUFBLGNBQWMsQ0FBQ08sT0FBZixHQUF5QjNFLE1BQU0sQ0FBQzJFLE9BQWhDO0FBQ0FQLEVBQUFBLGNBQWMsQ0FBQ1EsY0FBZixHQUFnQzVFLE1BQU0sQ0FBQzRFLGNBQXZDO0FBQ0FSLEVBQUFBLGNBQWMsQ0FBQ1MsVUFBZixHQUE0QjdFLE1BQU0sQ0FBQzZFLFVBQW5DO0FBQ0FULEVBQUFBLGNBQWMsQ0FBQ1UsSUFBZixHQUFzQjlFLE1BQU0sQ0FBQzhFLElBQTdCOztBQUVBVixFQUFBQSxjQUFjLENBQUNXLFdBQWYsR0FBNkIsVUFBU3BELE9BQVQsRUFBa0I7QUFDN0MsUUFBSXFELElBQUksR0FBR1Ysa0JBQU1DLGFBQU4sQ0FBb0I1QyxPQUFPLENBQUNxRCxJQUE1QixFQUFrQyxNQUFsQyxDQUFYOztBQUNBLFFBQUk5RCxJQUFJLEdBQUdvRCxrQkFBTUMsYUFBTixDQUFvQjVDLE9BQU8sQ0FBQ1QsSUFBNUIsRUFBa0MsTUFBbEMsQ0FBWDs7QUFDQSxRQUFJQyxXQUFXLEdBQUdtRCxrQkFBTVcsSUFBTixDQUFXdEQsT0FBTyxDQUFDUixXQUFuQixDQUFsQjs7QUFDQSxRQUFJK0QsT0FBTyxHQUFHWixrQkFBTVcsSUFBTixDQUFXdEQsT0FBTyxDQUFDdUQsT0FBbkIsQ0FBZDs7QUFFQSxRQUFJL0QsV0FBVyxLQUFLa0QsU0FBcEIsRUFBK0I7QUFDN0JsRCxNQUFBQSxXQUFXLEdBQUcsRUFBZDtBQUNEOztBQUVELFFBQUkrRCxPQUFPLEtBQUtiLFNBQWhCLEVBQTJCO0FBQ3pCYSxNQUFBQSxPQUFPLEdBQUcsQ0FBVjtBQUNEOztBQUNELFFBQUk5RCxPQUFPLEdBQUdrRCxrQkFBTVcsSUFBTixDQUFXdEQsT0FBTyxDQUFDUCxPQUFuQixDQUFkOztBQUNBLFFBQUlBLE9BQU8sS0FBS2lELFNBQWhCLEVBQTJCO0FBQ3pCakQsTUFBQUEsT0FBTyxHQUFHLEVBQVY7QUFDRCxLQWhCNEMsQ0FrQjdDOzs7QUFDQSxRQUFJQSxPQUFPLENBQUMsY0FBRCxDQUFQLEtBQTRCaUQsU0FBaEMsRUFBMkM7QUFDekNqRCxNQUFBQSxPQUFPLENBQUMsY0FBRCxDQUFQLEdBQTBCcEIsTUFBTSxDQUFDbUYsa0JBQWpDO0FBQ0QsS0FyQjRDLENBdUI3Qzs7O0FBQ0EsUUFBSS9ELE9BQU8sQ0FBQyxRQUFELENBQVAsS0FBc0JpRCxTQUExQixFQUFxQztBQUNuQ2pELE1BQUFBLE9BQU8sQ0FBQyxRQUFELENBQVAsR0FBb0JwQixNQUFNLENBQUNvRixpQkFBM0I7QUFDRDs7QUFFRCxRQUFJQyxJQUFJLEdBQUdmLGtCQUFNVyxJQUFOLENBQVd0RCxPQUFPLENBQUMwRCxJQUFuQixDQUFYLENBNUI2QyxDQThCN0M7OztBQUNBLFFBQUlBLElBQUksSUFBSWpFLE9BQU8sQ0FBQyxjQUFELENBQWYsSUFBbUNBLE9BQU8sQ0FBQyxjQUFELENBQVAsS0FBNEIsa0JBQW5FLEVBQXVGO0FBQ3JGaUUsTUFBQUEsSUFBSSxHQUFHQyxJQUFJLENBQUNDLFNBQUwsQ0FBZUYsSUFBZixDQUFQO0FBQ0QsS0FqQzRDLENBbUM3Qzs7O0FBQ0EsUUFBSUEsSUFBSSxLQUFLLEVBQVQsSUFBZUEsSUFBSSxLQUFLaEIsU0FBeEIsSUFBcUNnQixJQUFJLEtBQUssSUFBbEQsRUFBd0Q7QUFDdEQsYUFBT2pFLE9BQU8sQ0FBQyxjQUFELENBQWQ7QUFDRDs7QUFFRCxRQUFJa0MsUUFBUSxHQUFHLElBQUlrQyxJQUFKLENBQVMsSUFBSUEsSUFBSixHQUFXQyxPQUFYLEtBQXVCekYsTUFBTSxDQUFDMEYsaUJBQXZDLEVBQTBEQyxXQUExRCxHQUNDN0MsT0FERCxDQUNTLFdBRFQsRUFDc0IsR0FEdEIsRUFDMkJBLE9BRDNCLENBQ21DLGVBRG5DLEVBQ29ELEVBRHBELENBQWY7QUFFQTFCLElBQUFBLE9BQU8sQ0FBQ2hCLFVBQUQsQ0FBUCxHQUFzQmtELFFBQXRCOztBQUVBLFFBQUljLGNBQWMsQ0FBQ1UsSUFBbkIsRUFBeUI7QUFDdkIxRCxNQUFBQSxPQUFPLENBQUNkLElBQUQsQ0FBUCxHQUFnQjhELGNBQWMsQ0FBQ1UsSUFBL0I7QUFDRCxLQUZELE1BRU87QUFDTCxVQUFJYyxNQUFNLEdBQUdDLGdCQUFVQyxLQUFWLENBQWdCMUIsY0FBYyxDQUFDTSxRQUEvQixDQUFiOztBQUNBdEQsTUFBQUEsT0FBTyxDQUFDZCxJQUFELENBQVAsR0FBZ0JzRixNQUFNLENBQUNHLFFBQXZCO0FBQ0Q7O0FBRUQsUUFBSUMsZ0JBQWdCLEdBQUdoRixxQkFBcUIsQ0FBQ2dFLElBQUQsRUFBTzlELElBQVAsRUFBYUMsV0FBYixFQUEwQkMsT0FBMUIsRUFBbUNpRSxJQUFuQyxDQUE1QztBQUNBLFFBQUk3QixzQkFBc0IsR0FBRzlCLG9CQUFvQixDQUFDc0UsZ0JBQUQsQ0FBakQ7QUFDQSxRQUFJekMsZUFBZSxHQUFHRSxvQkFBb0IsQ0FDeENILFFBRHdDLEVBRXhDYyxjQUFjLENBQUNWLE1BRnlCLEVBR3hDVSxjQUFjLENBQUNLLFdBSHlCLENBQTFDO0FBS0EsUUFBSVQsWUFBWSxHQUFHWCxpQkFBaUIsQ0FBQ0MsUUFBRCxFQUFXQyxlQUFYLEVBQTRCQyxzQkFBNUIsQ0FBcEM7QUFDQSxRQUFJeUMsVUFBVSxHQUFHckMsbUJBQW1CLENBQ2xDUSxjQUFjLENBQUNQLFNBRG1CLEVBRWxDUCxRQUZrQyxFQUdsQ2MsY0FBYyxDQUFDVixNQUhtQixFQUlsQ1UsY0FBYyxDQUFDSyxXQUptQixDQUFwQztBQU1BLFFBQUlOLFNBQVMsR0FBR0wsa0JBQWtCLENBQUNtQyxVQUFELEVBQWFqQyxZQUFiLENBQWxDO0FBQ0E1QyxJQUFBQSxPQUFPLENBQUNiLGFBQUQsQ0FBUCxHQUF5QjBELHdCQUF3QixDQUMvQ0csY0FBYyxDQUFDRixTQURnQyxFQUUvQ1gsZUFGK0MsRUFHL0NuQyxPQUgrQyxFQUkvQytDLFNBSitDLENBQWpEOztBQU1BLFFBQUlDLGNBQWMsQ0FBQ0ksWUFBZixLQUFnQ0gsU0FBaEMsSUFBNkNELGNBQWMsQ0FBQ0ksWUFBZixLQUFnQyxFQUFqRixFQUFxRjtBQUNuRnBELE1BQUFBLE9BQU8sQ0FBQ2Ysb0JBQUQsQ0FBUCxHQUFnQytELGNBQWMsQ0FBQ0ksWUFBL0M7QUFDRDs7QUFDRCxXQUFPcEQsT0FBTyxDQUFDZCxJQUFELENBQWQ7QUFFQSxRQUFJNEYsR0FBRyxHQUFHbEcsTUFBTSxDQUFDMEUsUUFBUCxHQUFrQnhELElBQTVCO0FBQ0EsUUFBSWlGLFdBQVcsR0FBRzVFLHlCQUF5QixDQUFDSixXQUFELENBQTNDOztBQUNBLFFBQUlnRixXQUFXLEtBQUssRUFBcEIsRUFBd0I7QUFDdEJELE1BQUFBLEdBQUcsSUFBSSxNQUFNQyxXQUFiO0FBQ0QsS0FqRjRDLENBbUY3Qzs7O0FBQ0EsUUFBSS9FLE9BQU8sQ0FBQyxjQUFELENBQVAsS0FBNEJpRCxTQUFoQyxFQUEyQztBQUN6Q2pELE1BQUFBLE9BQU8sQ0FBQyxjQUFELENBQVAsR0FBMEJwQixNQUFNLENBQUNtRixrQkFBakM7QUFDRDs7QUFFRCxRQUFJaUIsYUFBYSxHQUFHO0FBQ2xCaEYsTUFBQUEsT0FBTyxFQUFFQSxPQURTO0FBRWxCOEQsTUFBQUEsT0FBTyxFQUFFQSxPQUZTO0FBR2xCbUIsTUFBQUEsSUFBSSxFQUFFaEIsSUFIWTtBQUlsQnBFLE1BQUFBLE1BQU0sRUFBRStELElBSlU7QUFLbEJrQixNQUFBQSxHQUFHLEVBQUhBO0FBTGtCLEtBQXBCOztBQU9BLFFBQUlsRyxNQUFNLENBQUMyRSxPQUFQLEtBQW1CTixTQUF2QixFQUFrQztBQUNoQytCLE1BQUFBLGFBQWEsQ0FBQ0UsT0FBZCxHQUF3QkosR0FBeEI7O0FBQ0EsVUFBSUssTUFBTSxHQUFHQyxrQkFBTUMsTUFBTixDQUFhTCxhQUFiLENBQWIsQ0FGZ0MsQ0FJaEM7OztBQUNBLFVBQUl2QixVQUFVLEdBQUc7QUFBQSxlQUFNLENBQU47QUFBQSxPQUFqQjs7QUFDQSxVQUFJN0UsTUFBTSxDQUFDNkUsVUFBUCxLQUFzQixhQUExQixFQUF5QztBQUN2Q0EsUUFBQUEsVUFBVSxHQUFHNkIsdUJBQVdDLGdCQUF4QjtBQUNELE9BRkQsTUFFTyxJQUFJLE9BQU8zRyxNQUFNLENBQUM2RSxVQUFkLEtBQTZCLFFBQWpDLEVBQTJDO0FBQ2hEQSxRQUFBQSxVQUFVLEdBQUc7QUFBQSxpQkFBTStCLFFBQVEsQ0FBQzVHLE1BQU0sQ0FBQzZFLFVBQVIsQ0FBZDtBQUFBLFNBQWI7QUFDRCxPQUZNLE1BRUEsSUFBSSxPQUFPN0UsTUFBTSxDQUFDNkUsVUFBZCxLQUE2QixVQUFqQyxFQUE2QztBQUNsREEsUUFBQUEsVUFBVSxHQUFHN0UsTUFBTSxDQUFDNkUsVUFBcEI7QUFDRDs7QUFFRCxrQ0FBVzBCLE1BQVgsRUFBbUI7QUFDakI1QixRQUFBQSxPQUFPLEVBQUUzRSxNQUFNLENBQUMyRSxPQURDO0FBRWpCQyxRQUFBQSxjQUFjLEVBQUU1RSxNQUFNLENBQUM0RSxjQUZOO0FBR2pCQyxRQUFBQSxVQUFVLEVBQVZBO0FBSGlCLE9BQW5CO0FBS0EsYUFBTzBCLE1BQU0sQ0FBQzVFLE9BQVAsQ0FBZXlFLGFBQWYsQ0FBUDtBQUNEOztBQUVELFdBQU8sdUJBQU1BLGFBQU4sQ0FBUDtBQUNELEdBdEhEOztBQXdIQSxTQUFPaEMsY0FBUDtBQUNELENBaFFEOztlQWtRZXRFLGtCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDEwLTIwMTYgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpLlxuICogWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogQSBjb3B5IG9mIHRoZSBMaWNlbnNlIGlzIGxvY2F0ZWQgYXRcbiAqXG4gKiAgaHR0cDovL2F3cy5hbWF6b24uY29tL2FwYWNoZTIuMFxuICpcbiAqIG9yIGluIHRoZSBcImxpY2Vuc2VcIiBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZFxuICogb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyXG4gKiBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZ1xuICogcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgYXhpb3NSZXRyeSBmcm9tICdheGlvcy1yZXRyeSc7XG5pbXBvcnQgU0hBMjU2IGZyb20gJ2NyeXB0by1qcy9zaGEyNTYnO1xuaW1wb3J0IGVuY0hleCBmcm9tICdjcnlwdG8tanMvZW5jLWhleCc7XG5pbXBvcnQgSG1hY1NIQTI1NiBmcm9tICdjcnlwdG8tanMvaG1hYy1zaGEyNTYnO1xuaW1wb3J0IHVybFBhcnNlciBmcm9tICd1cmwnO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBzaWdWNENsaWVudEZhY3RvcnkgPSB7fTtcbnNpZ1Y0Q2xpZW50RmFjdG9yeS5uZXdDbGllbnQgPSBmdW5jdGlvbihjb25maWcpIHtcbiAgbGV0IEFXU19TSEFfMjU2ID0gJ0FXUzQtSE1BQy1TSEEyNTYnO1xuICBsZXQgQVdTNF9SRVFVRVNUID0gJ2F3czRfcmVxdWVzdCc7XG4gIGxldCBBV1M0ID0gJ0FXUzQnO1xuICBsZXQgWF9BTVpfREFURSA9ICd4LWFtei1kYXRlJztcbiAgbGV0IFhfQU1aX1NFQ1VSSVRZX1RPS0VOID0gJ3gtYW16LXNlY3VyaXR5LXRva2VuJztcbiAgbGV0IEhPU1QgPSAnaG9zdCc7XG4gIGxldCBBVVRIT1JJWkFUSU9OID0gJ0F1dGhvcml6YXRpb24nO1xuXG4gIGZ1bmN0aW9uIGhhc2godmFsdWUpIHtcbiAgICByZXR1cm4gU0hBMjU2KHZhbHVlKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZVxuICB9XG5cbiAgZnVuY3Rpb24gaGV4RW5jb2RlKHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKGVuY0hleCk7XG4gIH1cblxuICBmdW5jdGlvbiBobWFjKHNlY3JldCwgdmFsdWUpIHtcbiAgICByZXR1cm4gSG1hY1NIQTI1Nih2YWx1ZSwgc2VjcmV0LCB7YXNCeXRlczogdHJ1ZX0pOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lXG4gIH1cblxuICBmdW5jdGlvbiBidWlsZENhbm9uaWNhbFJlcXVlc3QobWV0aG9kLCBwYXRoLCBxdWVyeVBhcmFtcywgaGVhZGVycywgcGF5bG9hZCkge1xuICAgIHJldHVybiBtZXRob2QgKyAnXFxuJyArXG4gICAgICBidWlsZENhbm9uaWNhbFVyaShwYXRoKSArICdcXG4nICtcbiAgICAgIGJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmcocXVlcnlQYXJhbXMpICsgJ1xcbicgK1xuICAgICAgYnVpbGRDYW5vbmljYWxIZWFkZXJzKGhlYWRlcnMpICsgJ1xcbicgK1xuICAgICAgYnVpbGRDYW5vbmljYWxTaWduZWRIZWFkZXJzKGhlYWRlcnMpICsgJ1xcbicgK1xuICAgICAgaGV4RW5jb2RlKGhhc2gocGF5bG9hZCkpO1xuICB9XG5cbiAgZnVuY3Rpb24gaGFzaENhbm9uaWNhbFJlcXVlc3QocmVxdWVzdCkge1xuICAgIHJldHVybiBoZXhFbmNvZGUoaGFzaChyZXF1ZXN0KSk7XG4gIH1cblxuICBmdW5jdGlvbiBidWlsZENhbm9uaWNhbFVyaSh1cmkpIHtcbiAgICByZXR1cm4gZW5jb2RlVVJJKHVyaSk7XG4gIH1cblxuICBmdW5jdGlvbiBidWlsZENhbm9uaWNhbFF1ZXJ5U3RyaW5nKHF1ZXJ5UGFyYW1zKSB7XG4gICAgaWYgKE9iamVjdC5rZXlzKHF1ZXJ5UGFyYW1zKS5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgbGV0IHNvcnRlZFF1ZXJ5UGFyYW1zID0gW107XG4gICAgZm9yIChsZXQgcHJvcGVydHkgaW4gcXVlcnlQYXJhbXMpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocXVlcnlQYXJhbXMsIHByb3BlcnR5KSkge1xuICAgICAgICBzb3J0ZWRRdWVyeVBhcmFtcy5wdXNoKHByb3BlcnR5KTtcbiAgICAgIH1cbiAgICB9XG4gICAgc29ydGVkUXVlcnlQYXJhbXMuc29ydCgpO1xuXG4gICAgbGV0IGNhbm9uaWNhbFF1ZXJ5U3RyaW5nID0gJyc7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzb3J0ZWRRdWVyeVBhcmFtcy5sZW5ndGg7IGkrKykge1xuICAgICAgY2Fub25pY2FsUXVlcnlTdHJpbmcgKz0gc29ydGVkUXVlcnlQYXJhbXNbaV1cbiAgICAgICAgKyAnPScgKyBmaXhlZEVuY29kZVVSSUNvbXBvbmVudChxdWVyeVBhcmFtc1tzb3J0ZWRRdWVyeVBhcmFtc1tpXV0pICsgJyYnO1xuICAgIH1cbiAgICByZXR1cm4gY2Fub25pY2FsUXVlcnlTdHJpbmcuc3Vic3RyKDAsIGNhbm9uaWNhbFF1ZXJ5U3RyaW5nLmxlbmd0aCAtIDEpO1xuICB9XG5cbiAgZnVuY3Rpb24gZml4ZWRFbmNvZGVVUklDb21wb25lbnQoc3RyKSB7XG4gICAgcmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChzdHIpLnJlcGxhY2UoL1shJygpKl0vZywgZnVuY3Rpb24oYykge1xuICAgICAgcmV0dXJuICclJyArIGMuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNik7XG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiBidWlsZENhbm9uaWNhbEhlYWRlcnMoaGVhZGVycykge1xuICAgIGxldCBjYW5vbmljYWxIZWFkZXJzID0gJyc7XG4gICAgbGV0IHNvcnRlZEtleXMgPSBbXTtcbiAgICBmb3IgKGxldCBwcm9wZXJ0eSBpbiBoZWFkZXJzKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGhlYWRlcnMsIHByb3BlcnR5KSkge1xuICAgICAgICBzb3J0ZWRLZXlzLnB1c2gocHJvcGVydHkpO1xuICAgICAgfVxuICAgIH1cbiAgICBzb3J0ZWRLZXlzLnNvcnQoKTtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc29ydGVkS2V5cy5sZW5ndGg7IGkrKykge1xuICAgICAgY2Fub25pY2FsSGVhZGVycyArPSBzb3J0ZWRLZXlzW2ldLnRvTG93ZXJDYXNlKCkgKyAnOicgKyBoZWFkZXJzW3NvcnRlZEtleXNbaV1dICsgJ1xcbic7XG4gICAgfVxuICAgIHJldHVybiBjYW5vbmljYWxIZWFkZXJzO1xuICB9XG5cbiAgZnVuY3Rpb24gYnVpbGRDYW5vbmljYWxTaWduZWRIZWFkZXJzKGhlYWRlcnMpIHtcbiAgICBsZXQgc29ydGVkS2V5cyA9IFtdO1xuICAgIGZvciAobGV0IHByb3BlcnR5IGluIGhlYWRlcnMpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaGVhZGVycywgcHJvcGVydHkpKSB7XG4gICAgICAgIHNvcnRlZEtleXMucHVzaChwcm9wZXJ0eS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgc29ydGVkS2V5cy5zb3J0KCk7XG5cbiAgICByZXR1cm4gc29ydGVkS2V5cy5qb2luKCc7Jyk7XG4gIH1cblxuICBmdW5jdGlvbiBidWlsZFN0cmluZ1RvU2lnbihkYXRldGltZSwgY3JlZGVudGlhbFNjb3BlLCBoYXNoZWRDYW5vbmljYWxSZXF1ZXN0KSB7XG4gICAgcmV0dXJuIEFXU19TSEFfMjU2ICsgJ1xcbicgK1xuICAgICAgZGF0ZXRpbWUgKyAnXFxuJyArXG4gICAgICBjcmVkZW50aWFsU2NvcGUgKyAnXFxuJyArXG4gICAgICBoYXNoZWRDYW5vbmljYWxSZXF1ZXN0O1xuICB9XG5cbiAgZnVuY3Rpb24gYnVpbGRDcmVkZW50aWFsU2NvcGUoZGF0ZXRpbWUsIHJlZ2lvbiwgc2VydmljZSkge1xuICAgIHJldHVybiBkYXRldGltZS5zdWJzdHIoMCwgOCkgKyAnLycgKyByZWdpb24gKyAnLycgKyBzZXJ2aWNlICsgJy8nICsgQVdTNF9SRVFVRVNUO1xuICB9XG5cbiAgZnVuY3Rpb24gY2FsY3VsYXRlU2lnbmluZ0tleShzZWNyZXRLZXksIGRhdGV0aW1lLCByZWdpb24sIHNlcnZpY2UpIHtcbiAgICByZXR1cm4gaG1hYyhobWFjKGhtYWMoXG4gICAgICBobWFjKEFXUzQgKyBzZWNyZXRLZXksIGRhdGV0aW1lLnN1YnN0cigwLCA4KSksXG4gICAgICByZWdpb25cbiAgICApLCBzZXJ2aWNlKSwgQVdTNF9SRVFVRVNUKTtcbiAgfVxuXG4gIGZ1bmN0aW9uIGNhbGN1bGF0ZVNpZ25hdHVyZShrZXksIHN0cmluZ1RvU2lnbikge1xuICAgIHJldHVybiBoZXhFbmNvZGUoaG1hYyhrZXksIHN0cmluZ1RvU2lnbikpO1xuICB9XG5cbiAgZnVuY3Rpb24gYnVpbGRBdXRob3JpemF0aW9uSGVhZGVyKGFjY2Vzc0tleSwgY3JlZGVudGlhbFNjb3BlLCBoZWFkZXJzLCBzaWduYXR1cmUpIHtcbiAgICByZXR1cm4gQVdTX1NIQV8yNTYgKyAnIENyZWRlbnRpYWw9JyArIGFjY2Vzc0tleSArICcvJyArIGNyZWRlbnRpYWxTY29wZVxuICAgICAgKyAnLCBTaWduZWRIZWFkZXJzPScgKyBidWlsZENhbm9uaWNhbFNpZ25lZEhlYWRlcnMoaGVhZGVycykgKyAnLCBTaWduYXR1cmU9JyArIHNpZ25hdHVyZTtcbiAgfVxuXG4gIGxldCBhd3NTaWdWNENsaWVudCA9IHsgfTtcbiAgaWYgKGNvbmZpZy5hY2Nlc3NLZXkgPT09IHVuZGVmaW5lZCB8fCBjb25maWcuc2VjcmV0S2V5ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gYXdzU2lnVjRDbGllbnQ7XG4gIH1cbiAgYXdzU2lnVjRDbGllbnQuYWNjZXNzS2V5ID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChjb25maWcuYWNjZXNzS2V5LCAnYWNjZXNzS2V5Jyk7XG4gIGF3c1NpZ1Y0Q2xpZW50LnNlY3JldEtleSA9IHV0aWxzLmFzc2VydERlZmluZWQoY29uZmlnLnNlY3JldEtleSwgJ3NlY3JldEtleScpO1xuICBhd3NTaWdWNENsaWVudC5zZXNzaW9uVG9rZW4gPSBjb25maWcuc2Vzc2lvblRva2VuO1xuICBhd3NTaWdWNENsaWVudC5zZXJ2aWNlTmFtZSA9IHV0aWxzLmFzc2VydERlZmluZWQoY29uZmlnLnNlcnZpY2VOYW1lLCAnc2VydmljZU5hbWUnKTtcbiAgYXdzU2lnVjRDbGllbnQucmVnaW9uID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChjb25maWcucmVnaW9uLCAncmVnaW9uJyk7XG4gIGF3c1NpZ1Y0Q2xpZW50LmVuZHBvaW50ID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChjb25maWcuZW5kcG9pbnQsICdlbmRwb2ludCcpO1xuICBhd3NTaWdWNENsaWVudC5yZXRyaWVzID0gY29uZmlnLnJldHJpZXM7XG4gIGF3c1NpZ1Y0Q2xpZW50LnJldHJ5Q29uZGl0aW9uID0gY29uZmlnLnJldHJ5Q29uZGl0aW9uO1xuICBhd3NTaWdWNENsaWVudC5yZXRyeURlbGF5ID0gY29uZmlnLnJldHJ5RGVsYXk7XG4gIGF3c1NpZ1Y0Q2xpZW50Lmhvc3QgPSBjb25maWcuaG9zdDtcblxuICBhd3NTaWdWNENsaWVudC5tYWtlUmVxdWVzdCA9IGZ1bmN0aW9uKHJlcXVlc3QpIHtcbiAgICBsZXQgdmVyYiA9IHV0aWxzLmFzc2VydERlZmluZWQocmVxdWVzdC52ZXJiLCAndmVyYicpO1xuICAgIGxldCBwYXRoID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChyZXF1ZXN0LnBhdGgsICdwYXRoJyk7XG4gICAgbGV0IHF1ZXJ5UGFyYW1zID0gdXRpbHMuY29weShyZXF1ZXN0LnF1ZXJ5UGFyYW1zKTtcbiAgICBsZXQgdGltZW91dCA9IHV0aWxzLmNvcHkocmVxdWVzdC50aW1lb3V0KTtcblxuICAgIGlmIChxdWVyeVBhcmFtcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBxdWVyeVBhcmFtcyA9IHt9O1xuICAgIH1cblxuICAgIGlmICh0aW1lb3V0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRpbWVvdXQgPSAwO1xuICAgIH1cbiAgICBsZXQgaGVhZGVycyA9IHV0aWxzLmNvcHkocmVxdWVzdC5oZWFkZXJzKTtcbiAgICBpZiAoaGVhZGVycyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBoZWFkZXJzID0ge307XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIHVzZXIgaGFzIG5vdCBzcGVjaWZpZWQgYW4gb3ZlcnJpZGUgZm9yIENvbnRlbnQgdHlwZSB0aGUgdXNlIGRlZmF1bHRcbiAgICBpZiAoaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSBjb25maWcuZGVmYXVsdENvbnRlbnRUeXBlO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSB1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGFuIG92ZXJyaWRlIGZvciBBY2NlcHQgdHlwZSB0aGUgdXNlIGRlZmF1bHRcbiAgICBpZiAoaGVhZGVyc1snQWNjZXB0J10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgaGVhZGVyc1snQWNjZXB0J10gPSBjb25maWcuZGVmYXVsdEFjY2VwdFR5cGU7XG4gICAgfVxuXG4gICAgbGV0IGJvZHkgPSB1dGlscy5jb3B5KHJlcXVlc3QuYm9keSk7XG5cbiAgICAvLyBzdHJpbmdpZnkgcmVxdWVzdCBib2R5IGlmIGNvbnRlbnQgdHlwZSBpcyBKU09OXG4gICAgaWYgKGJvZHkgJiYgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gJiYgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPT09ICdhcHBsaWNhdGlvbi9qc29uJykge1xuICAgICAgYm9keSA9IEpTT04uc3RyaW5naWZ5KGJvZHkpO1xuICAgIH1cblxuICAgIC8vIElmIHRoZXJlIGlzIG5vIGJvZHkgcmVtb3ZlIHRoZSBjb250ZW50LXR5cGUgaGVhZGVyIHNvIGl0IGlzIG5vdCBpbmNsdWRlZCBpbiBTaWdWNCBjYWxjdWxhdGlvblxuICAgIGlmIChib2R5ID09PSAnJyB8fCBib2R5ID09PSB1bmRlZmluZWQgfHwgYm9keSA9PT0gbnVsbCkge1xuICAgICAgZGVsZXRlIGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddO1xuICAgIH1cblxuICAgIGxldCBkYXRldGltZSA9IG5ldyBEYXRlKG5ldyBEYXRlKCkuZ2V0VGltZSgpICsgY29uZmlnLnN5c3RlbUNsb2NrT2Zmc2V0KS50b0lTT1N0cmluZygpXG4gICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoL1xcLlxcZHszfVokLywgJ1onKS5yZXBsYWNlKC9bOi1dfFxcLlxcZHszfS9nLCAnJyk7XG4gICAgaGVhZGVyc1tYX0FNWl9EQVRFXSA9IGRhdGV0aW1lO1xuXG4gICAgaWYgKGF3c1NpZ1Y0Q2xpZW50Lmhvc3QpIHtcbiAgICAgIGhlYWRlcnNbSE9TVF0gPSBhd3NTaWdWNENsaWVudC5ob3N0O1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgcGFyc2VyID0gdXJsUGFyc2VyLnBhcnNlKGF3c1NpZ1Y0Q2xpZW50LmVuZHBvaW50KTtcbiAgICAgIGhlYWRlcnNbSE9TVF0gPSBwYXJzZXIuaG9zdG5hbWU7XG4gICAgfVxuXG4gICAgbGV0IGNhbm9uaWNhbFJlcXVlc3QgPSBidWlsZENhbm9uaWNhbFJlcXVlc3QodmVyYiwgcGF0aCwgcXVlcnlQYXJhbXMsIGhlYWRlcnMsIGJvZHkpO1xuICAgIGxldCBoYXNoZWRDYW5vbmljYWxSZXF1ZXN0ID0gaGFzaENhbm9uaWNhbFJlcXVlc3QoY2Fub25pY2FsUmVxdWVzdCk7XG4gICAgbGV0IGNyZWRlbnRpYWxTY29wZSA9IGJ1aWxkQ3JlZGVudGlhbFNjb3BlKFxuICAgICAgZGF0ZXRpbWUsXG4gICAgICBhd3NTaWdWNENsaWVudC5yZWdpb24sXG4gICAgICBhd3NTaWdWNENsaWVudC5zZXJ2aWNlTmFtZVxuICAgICk7XG4gICAgbGV0IHN0cmluZ1RvU2lnbiA9IGJ1aWxkU3RyaW5nVG9TaWduKGRhdGV0aW1lLCBjcmVkZW50aWFsU2NvcGUsIGhhc2hlZENhbm9uaWNhbFJlcXVlc3QpO1xuICAgIGxldCBzaWduaW5nS2V5ID0gY2FsY3VsYXRlU2lnbmluZ0tleShcbiAgICAgIGF3c1NpZ1Y0Q2xpZW50LnNlY3JldEtleSxcbiAgICAgIGRhdGV0aW1lLFxuICAgICAgYXdzU2lnVjRDbGllbnQucmVnaW9uLFxuICAgICAgYXdzU2lnVjRDbGllbnQuc2VydmljZU5hbWVcbiAgICApO1xuICAgIGxldCBzaWduYXR1cmUgPSBjYWxjdWxhdGVTaWduYXR1cmUoc2lnbmluZ0tleSwgc3RyaW5nVG9TaWduKTtcbiAgICBoZWFkZXJzW0FVVEhPUklaQVRJT05dID0gYnVpbGRBdXRob3JpemF0aW9uSGVhZGVyKFxuICAgICAgYXdzU2lnVjRDbGllbnQuYWNjZXNzS2V5LFxuICAgICAgY3JlZGVudGlhbFNjb3BlLFxuICAgICAgaGVhZGVycyxcbiAgICAgIHNpZ25hdHVyZVxuICAgICk7XG4gICAgaWYgKGF3c1NpZ1Y0Q2xpZW50LnNlc3Npb25Ub2tlbiAhPT0gdW5kZWZpbmVkICYmIGF3c1NpZ1Y0Q2xpZW50LnNlc3Npb25Ub2tlbiAhPT0gJycpIHtcbiAgICAgIGhlYWRlcnNbWF9BTVpfU0VDVVJJVFlfVE9LRU5dID0gYXdzU2lnVjRDbGllbnQuc2Vzc2lvblRva2VuO1xuICAgIH1cbiAgICBkZWxldGUgaGVhZGVyc1tIT1NUXTtcblxuICAgIGxldCB1cmwgPSBjb25maWcuZW5kcG9pbnQgKyBwYXRoO1xuICAgIGxldCBxdWVyeVN0cmluZyA9IGJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmcocXVlcnlQYXJhbXMpO1xuICAgIGlmIChxdWVyeVN0cmluZyAhPT0gJycpIHtcbiAgICAgIHVybCArPSAnPycgKyBxdWVyeVN0cmluZztcbiAgICB9XG5cbiAgICAvLyBOZWVkIHRvIHJlLWF0dGFjaCBDb250ZW50LVR5cGUgaWYgaXQgaXMgbm90IHNwZWNpZmllZCBhdCB0aGlzIHBvaW50XG4gICAgaWYgKGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID0gY29uZmlnLmRlZmF1bHRDb250ZW50VHlwZTtcbiAgICB9XG5cbiAgICBsZXQgc2lnbmVkUmVxdWVzdCA9IHtcbiAgICAgIGhlYWRlcnM6IGhlYWRlcnMsXG4gICAgICB0aW1lb3V0OiB0aW1lb3V0LFxuICAgICAgZGF0YTogYm9keSxcbiAgICAgIG1ldGhvZDogdmVyYixcbiAgICAgIHVybCxcbiAgICB9O1xuICAgIGlmIChjb25maWcucmV0cmllcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBzaWduZWRSZXF1ZXN0LmJhc2VVUkwgPSB1cmw7XG4gICAgICBsZXQgY2xpZW50ID0gYXhpb3MuY3JlYXRlKHNpZ25lZFJlcXVlc3QpO1xuXG4gICAgICAvLyBBbGxvdyB1c2VyIGNvbmZpZ3VyYWJsZSBkZWxheSwgb3IgYnVpbHQtaW4gZXhwb25lbnRpYWwgZGVsYXlcbiAgICAgIGxldCByZXRyeURlbGF5ID0gKCkgPT4gMDtcbiAgICAgIGlmIChjb25maWcucmV0cnlEZWxheSA9PT0gJ2V4cG9uZW50aWFsJykge1xuICAgICAgICByZXRyeURlbGF5ID0gYXhpb3NSZXRyeS5leHBvbmVudGlhbERlbGF5O1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgY29uZmlnLnJldHJ5RGVsYXkgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHJ5RGVsYXkgPSAoKSA9PiBwYXJzZUludChjb25maWcucmV0cnlEZWxheSk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBjb25maWcucmV0cnlEZWxheSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICByZXRyeURlbGF5ID0gY29uZmlnLnJldHJ5RGVsYXk7XG4gICAgICB9XG5cbiAgICAgIGF4aW9zUmV0cnkoY2xpZW50LCB7XG4gICAgICAgIHJldHJpZXM6IGNvbmZpZy5yZXRyaWVzLFxuICAgICAgICByZXRyeUNvbmRpdGlvbjogY29uZmlnLnJldHJ5Q29uZGl0aW9uLFxuICAgICAgICByZXRyeURlbGF5LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gY2xpZW50LnJlcXVlc3Qoc2lnbmVkUmVxdWVzdCk7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBheGlvcyhzaWduZWRSZXF1ZXN0KTtcbiAgfTtcblxuICByZXR1cm4gYXdzU2lnVjRDbGllbnQ7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBzaWdWNENsaWVudEZhY3Rvcnk7XG4iXX0=

@@ -113,3 +113,3 @@ "use strict";

retries: config.retries,
retryCondition: config.retryCondition,
retryCondition: typeof config.retryCondition === 'function' ? config.retryCondition : _axiosRetry["default"].isNetworkOrIdempotentRequestError,
retryDelay: retryDelay

@@ -128,2 +128,2 @@ });

exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvYXBpR2F0ZXdheUNvcmUvc2ltcGxlSHR0cENsaWVudC5qcyJdLCJuYW1lcyI6WyJzaW1wbGVIdHRwQ2xpZW50RmFjdG9yeSIsIm5ld0NsaWVudCIsImNvbmZpZyIsImJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmciLCJxdWVyeVBhcmFtcyIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJjYW5vbmljYWxRdWVyeVN0cmluZyIsInByb3BlcnR5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZW5jb2RlVVJJQ29tcG9uZW50Iiwic3Vic3RyIiwic2ltcGxlSHR0cENsaWVudCIsImVuZHBvaW50IiwidXRpbHMiLCJhc3NlcnREZWZpbmVkIiwibWFrZVJlcXVlc3QiLCJyZXF1ZXN0IiwidmVyYiIsInBhdGgiLCJjb3B5IiwidGltZW91dCIsInVuZGVmaW5lZCIsImhlYWRlcnMiLCJkZWZhdWx0Q29udGVudFR5cGUiLCJkZWZhdWx0QWNjZXB0VHlwZSIsImJvZHkiLCJ1cmwiLCJxdWVyeVN0cmluZyIsInNpbXBsZUh0dHBSZXF1ZXN0IiwiZGF0YSIsIm1ldGhvZCIsInJldHJpZXMiLCJiYXNlVVJMIiwiY2xpZW50IiwiYXhpb3MiLCJjcmVhdGUiLCJyZXRyeURlbGF5IiwiYXhpb3NSZXRyeSIsImV4cG9uZW50aWFsRGVsYXkiLCJwYXJzZUludCIsInJldHJ5Q29uZGl0aW9uIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQWVBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxJQUFNQSx1QkFBdUIsR0FBRyxFQUFoQzs7QUFDQUEsdUJBQXVCLENBQUNDLFNBQXhCLEdBQW9DLFVBQUNDLE1BQUQsRUFBWTtBQUM5QyxXQUFTQyx5QkFBVCxDQUFtQ0MsV0FBbkMsRUFBZ0Q7QUFDOUM7QUFDQSxRQUFJQyxNQUFNLENBQUNDLElBQVAsQ0FBWUYsV0FBWixFQUF5QkcsTUFBekIsR0FBa0MsQ0FBdEMsRUFBeUM7QUFDdkMsYUFBTyxFQUFQO0FBQ0Q7O0FBRUQsUUFBSUMsb0JBQW9CLEdBQUcsRUFBM0I7O0FBQ0EsU0FBSyxJQUFJQyxRQUFULElBQXFCTCxXQUFyQixFQUFrQztBQUNoQyxVQUFJQyxNQUFNLENBQUNLLFNBQVAsQ0FBaUJDLGNBQWpCLENBQWdDQyxJQUFoQyxDQUFxQ1IsV0FBckMsRUFBa0RLLFFBQWxELENBQUosRUFBaUU7QUFDL0RELFFBQUFBLG9CQUFvQixJQUFJSyxrQkFBa0IsQ0FBQ0osUUFBRCxDQUFsQixHQUNwQixHQURvQixHQUNkSSxrQkFBa0IsQ0FBQ1QsV0FBVyxDQUFDSyxRQUFELENBQVosQ0FESixHQUM4QixHQUR0RDtBQUVEO0FBQ0Y7O0FBRUQsV0FBT0Qsb0JBQW9CLENBQUNNLE1BQXJCLENBQTRCLENBQTVCLEVBQStCTixvQkFBb0IsQ0FBQ0QsTUFBckIsR0FBOEIsQ0FBN0QsQ0FBUDtBQUNEOztBQUVELE1BQUlRLGdCQUFnQixHQUFHLEVBQXZCO0FBQ0FBLEVBQUFBLGdCQUFnQixDQUFDQyxRQUFqQixHQUE0QkMsa0JBQU1DLGFBQU4sQ0FBb0JoQixNQUFNLENBQUNjLFFBQTNCLEVBQXFDLFVBQXJDLENBQTVCOztBQUVBRCxFQUFBQSxnQkFBZ0IsQ0FBQ0ksV0FBakIsR0FBK0IsVUFBU0MsT0FBVCxFQUFrQjtBQUMvQyxRQUFJQyxJQUFJLEdBQUdKLGtCQUFNQyxhQUFOLENBQW9CRSxPQUFPLENBQUNDLElBQTVCLEVBQWtDLE1BQWxDLENBQVg7O0FBQ0EsUUFBSUMsSUFBSSxHQUFHTCxrQkFBTUMsYUFBTixDQUFvQkUsT0FBTyxDQUFDRSxJQUE1QixFQUFrQyxNQUFsQyxDQUFYOztBQUNBLFFBQUlsQixXQUFXLEdBQUdhLGtCQUFNTSxJQUFOLENBQVdILE9BQU8sQ0FBQ2hCLFdBQW5CLENBQWxCOztBQUNBLFFBQUlvQixPQUFPLEdBQUdQLGtCQUFNTSxJQUFOLENBQVdILE9BQU8sQ0FBQ0ksT0FBbkIsQ0FBZDs7QUFDQSxRQUFJcEIsV0FBVyxLQUFLcUIsU0FBcEIsRUFBK0I7QUFDN0JyQixNQUFBQSxXQUFXLEdBQUcsRUFBZDtBQUNEOztBQUNELFFBQUlvQixPQUFPLEtBQUtDLFNBQWhCLEVBQTJCO0FBQ3pCRCxNQUFBQSxPQUFPLEdBQUcsQ0FBVjtBQUNEOztBQUNELFFBQUlFLE9BQU8sbUNBQU9ULGtCQUFNTSxJQUFOLENBQVdILE9BQU8sQ0FBQ00sT0FBbkIsQ0FBUCxHQUF1Q3hCLE1BQU0sQ0FBQ3dCLE9BQTlDLENBQVgsQ0FYK0MsQ0FhL0M7OztBQUNBLFFBQUlBLE9BQU8sQ0FBQyxjQUFELENBQVAsS0FBNEJELFNBQWhDLEVBQTJDO0FBQ3pDQyxNQUFBQSxPQUFPLENBQUMsY0FBRCxDQUFQLEdBQTBCeEIsTUFBTSxDQUFDeUIsa0JBQWpDO0FBQ0QsS0FoQjhDLENBa0IvQzs7O0FBQ0EsUUFBSUQsT0FBTyxDQUFDLFFBQUQsQ0FBUCxLQUFzQkQsU0FBMUIsRUFBcUM7QUFDbkNDLE1BQUFBLE9BQU8sQ0FBQyxRQUFELENBQVAsR0FBb0J4QixNQUFNLENBQUMwQixpQkFBM0I7QUFDRDs7QUFFRCxRQUFJQyxJQUFJLEdBQUdaLGtCQUFNTSxJQUFOLENBQVdILE9BQU8sQ0FBQ1MsSUFBbkIsQ0FBWDs7QUFFQSxRQUFJQyxHQUFHLEdBQUc1QixNQUFNLENBQUNjLFFBQVAsR0FBa0JNLElBQTVCO0FBQ0EsUUFBSVMsV0FBVyxHQUFHNUIseUJBQXlCLENBQUNDLFdBQUQsQ0FBM0M7O0FBQ0EsUUFBSTJCLFdBQVcsS0FBSyxFQUFwQixFQUF3QjtBQUN0QkQsTUFBQUEsR0FBRyxJQUFJLE1BQU1DLFdBQWI7QUFDRDs7QUFFRCxRQUFJQyxpQkFBaUIsR0FBRztBQUN0Qk4sTUFBQUEsT0FBTyxFQUFFQSxPQURhO0FBRXRCRixNQUFBQSxPQUFPLEVBQUVBLE9BRmE7QUFHdEJTLE1BQUFBLElBQUksRUFBRUosSUFIZ0I7QUFJdEJLLE1BQUFBLE1BQU0sRUFBRWIsSUFKYztBQUt0QlMsTUFBQUEsR0FBRyxFQUFFQTtBQUxpQixLQUF4Qjs7QUFPQSxRQUFJNUIsTUFBTSxDQUFDaUMsT0FBUCxLQUFtQlYsU0FBdkIsRUFBa0M7QUFDaENPLE1BQUFBLGlCQUFpQixDQUFDSSxPQUFsQixHQUE0Qk4sR0FBNUI7O0FBQ0EsVUFBSU8sTUFBTSxHQUFHQyxrQkFBTUMsTUFBTixDQUFhUCxpQkFBYixDQUFiLENBRmdDLENBSWhDOzs7QUFDQSxVQUFJUSxVQUFVLEdBQUc7QUFBQSxlQUFNLENBQU47QUFBQSxPQUFqQjs7QUFDQSxVQUFJdEMsTUFBTSxDQUFDc0MsVUFBUCxLQUFzQixhQUExQixFQUF5QztBQUN2Q0EsUUFBQUEsVUFBVSxHQUFHQyx1QkFBV0MsZ0JBQXhCO0FBQ0QsT0FGRCxNQUVPLElBQUksT0FBT3hDLE1BQU0sQ0FBQ3NDLFVBQWQsS0FBNkIsUUFBakMsRUFBMkM7QUFDaERBLFFBQUFBLFVBQVUsR0FBRztBQUFBLGlCQUFNRyxRQUFRLENBQUN6QyxNQUFNLENBQUNzQyxVQUFSLENBQWQ7QUFBQSxTQUFiO0FBQ0QsT0FGTSxNQUVBLElBQUksT0FBT3RDLE1BQU0sQ0FBQ3NDLFVBQWQsS0FBNkIsVUFBakMsRUFBNkM7QUFDbERBLFFBQUFBLFVBQVUsR0FBR3RDLE1BQU0sQ0FBQ3NDLFVBQXBCO0FBQ0Q7O0FBRUQsa0NBQVdILE1BQVgsRUFBbUI7QUFDakJGLFFBQUFBLE9BQU8sRUFBRWpDLE1BQU0sQ0FBQ2lDLE9BREM7QUFFakJTLFFBQUFBLGNBQWMsRUFBRTFDLE1BQU0sQ0FBQzBDLGNBRk47QUFHakJKLFFBQUFBLFVBQVUsRUFBVkE7QUFIaUIsT0FBbkI7QUFLQSxhQUFPSCxNQUFNLENBQUNqQixPQUFQLENBQWVZLGlCQUFmLENBQVA7QUFDRDs7QUFDRCxXQUFPLHVCQUFNQSxpQkFBTixDQUFQO0FBQ0QsR0E1REQ7O0FBOERBLFNBQU9qQixnQkFBUDtBQUNELENBcEZEOztlQXNGZWYsdUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTAtMjAxNiBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIikuXG4gKiBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBBIGNvcHkgb2YgdGhlIExpY2Vuc2UgaXMgbG9jYXRlZCBhdFxuICpcbiAqICBodHRwOi8vYXdzLmFtYXpvbi5jb20vYXBhY2hlMi4wXG4gKlxuICogb3IgaW4gdGhlIFwibGljZW5zZVwiIGZpbGUgYWNjb21wYW55aW5nIHRoaXMgZmlsZS4gVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkXG4gKiBvbiBhbiBcIkFTIElTXCIgQkFTSVMsIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXJcbiAqIGV4cHJlc3Mgb3IgaW1wbGllZC4gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nXG4gKiBwZXJtaXNzaW9ucyBhbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCBheGlvc1JldHJ5IGZyb20gJ2F4aW9zLXJldHJ5JztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcblxuY29uc3Qgc2ltcGxlSHR0cENsaWVudEZhY3RvcnkgPSB7fTtcbnNpbXBsZUh0dHBDbGllbnRGYWN0b3J5Lm5ld0NsaWVudCA9IChjb25maWcpID0+IHtcbiAgZnVuY3Rpb24gYnVpbGRDYW5vbmljYWxRdWVyeVN0cmluZyhxdWVyeVBhcmFtcykge1xuICAgIC8vIEJ1aWxkIGEgcHJvcGVybHkgZW5jb2RlZCBxdWVyeSBzdHJpbmcgZnJvbSBhIFF1ZXJ5UGFyYW0gb2JqZWN0XG4gICAgaWYgKE9iamVjdC5rZXlzKHF1ZXJ5UGFyYW1zKS5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgbGV0IGNhbm9uaWNhbFF1ZXJ5U3RyaW5nID0gJyc7XG4gICAgZm9yIChsZXQgcHJvcGVydHkgaW4gcXVlcnlQYXJhbXMpIHtcbiAgICAgIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocXVlcnlQYXJhbXMsIHByb3BlcnR5KSkge1xuICAgICAgICBjYW5vbmljYWxRdWVyeVN0cmluZyArPSBlbmNvZGVVUklDb21wb25lbnQocHJvcGVydHkpXG4gICAgICAgICAgKyAnPScgKyBlbmNvZGVVUklDb21wb25lbnQocXVlcnlQYXJhbXNbcHJvcGVydHldKSArICcmJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY2Fub25pY2FsUXVlcnlTdHJpbmcuc3Vic3RyKDAsIGNhbm9uaWNhbFF1ZXJ5U3RyaW5nLmxlbmd0aCAtIDEpO1xuICB9XG5cbiAgbGV0IHNpbXBsZUh0dHBDbGllbnQgPSB7IH07XG4gIHNpbXBsZUh0dHBDbGllbnQuZW5kcG9pbnQgPSB1dGlscy5hc3NlcnREZWZpbmVkKGNvbmZpZy5lbmRwb2ludCwgJ2VuZHBvaW50Jyk7XG5cbiAgc2ltcGxlSHR0cENsaWVudC5tYWtlUmVxdWVzdCA9IGZ1bmN0aW9uKHJlcXVlc3QpIHtcbiAgICBsZXQgdmVyYiA9IHV0aWxzLmFzc2VydERlZmluZWQocmVxdWVzdC52ZXJiLCAndmVyYicpO1xuICAgIGxldCBwYXRoID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChyZXF1ZXN0LnBhdGgsICdwYXRoJyk7XG4gICAgbGV0IHF1ZXJ5UGFyYW1zID0gdXRpbHMuY29weShyZXF1ZXN0LnF1ZXJ5UGFyYW1zKTtcbiAgICBsZXQgdGltZW91dCA9IHV0aWxzLmNvcHkocmVxdWVzdC50aW1lb3V0KTtcbiAgICBpZiAocXVlcnlQYXJhbXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcXVlcnlQYXJhbXMgPSB7fTtcbiAgICB9XG4gICAgaWYgKHRpbWVvdXQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGltZW91dCA9IDA7XG4gICAgfVxuICAgIGxldCBoZWFkZXJzID0gey4uLnV0aWxzLmNvcHkocmVxdWVzdC5oZWFkZXJzKSwgLi4uY29uZmlnLmhlYWRlcnN9O1xuXG4gICAgLy8gSWYgdGhlIHVzZXIgaGFzIG5vdCBzcGVjaWZpZWQgYW4gb3ZlcnJpZGUgZm9yIENvbnRlbnQgdHlwZSB0aGUgdXNlIGRlZmF1bHRcbiAgICBpZiAoaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgaGVhZGVyc1snQ29udGVudC1UeXBlJ10gPSBjb25maWcuZGVmYXVsdENvbnRlbnRUeXBlO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSB1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGFuIG92ZXJyaWRlIGZvciBBY2NlcHQgdHlwZSB0aGUgdXNlIGRlZmF1bHRcbiAgICBpZiAoaGVhZGVyc1snQWNjZXB0J10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgaGVhZGVyc1snQWNjZXB0J10gPSBjb25maWcuZGVmYXVsdEFjY2VwdFR5cGU7XG4gICAgfVxuXG4gICAgbGV0IGJvZHkgPSB1dGlscy5jb3B5KHJlcXVlc3QuYm9keSk7XG5cbiAgICBsZXQgdXJsID0gY29uZmlnLmVuZHBvaW50ICsgcGF0aDtcbiAgICBsZXQgcXVlcnlTdHJpbmcgPSBidWlsZENhbm9uaWNhbFF1ZXJ5U3RyaW5nKHF1ZXJ5UGFyYW1zKTtcbiAgICBpZiAocXVlcnlTdHJpbmcgIT09ICcnKSB7XG4gICAgICB1cmwgKz0gJz8nICsgcXVlcnlTdHJpbmc7XG4gICAgfVxuXG4gICAgbGV0IHNpbXBsZUh0dHBSZXF1ZXN0ID0ge1xuICAgICAgaGVhZGVyczogaGVhZGVycyxcbiAgICAgIHRpbWVvdXQ6IHRpbWVvdXQsXG4gICAgICBkYXRhOiBib2R5LFxuICAgICAgbWV0aG9kOiB2ZXJiLFxuICAgICAgdXJsOiB1cmwsXG4gICAgfTtcbiAgICBpZiAoY29uZmlnLnJldHJpZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgc2ltcGxlSHR0cFJlcXVlc3QuYmFzZVVSTCA9IHVybDtcbiAgICAgIGxldCBjbGllbnQgPSBheGlvcy5jcmVhdGUoc2ltcGxlSHR0cFJlcXVlc3QpO1xuXG4gICAgICAvLyBBbGxvdyB1c2VyIGNvbmZpZ3VyYWJsZSBkZWxheSwgb3IgYnVpbHQtaW4gZXhwb25lbnRpYWwgZGVsYXlcbiAgICAgIGxldCByZXRyeURlbGF5ID0gKCkgPT4gMDtcbiAgICAgIGlmIChjb25maWcucmV0cnlEZWxheSA9PT0gJ2V4cG9uZW50aWFsJykge1xuICAgICAgICByZXRyeURlbGF5ID0gYXhpb3NSZXRyeS5leHBvbmVudGlhbERlbGF5O1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgY29uZmlnLnJldHJ5RGVsYXkgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHJ5RGVsYXkgPSAoKSA9PiBwYXJzZUludChjb25maWcucmV0cnlEZWxheSk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBjb25maWcucmV0cnlEZWxheSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICByZXRyeURlbGF5ID0gY29uZmlnLnJldHJ5RGVsYXk7XG4gICAgICB9XG5cbiAgICAgIGF4aW9zUmV0cnkoY2xpZW50LCB7XG4gICAgICAgIHJldHJpZXM6IGNvbmZpZy5yZXRyaWVzLFxuICAgICAgICByZXRyeUNvbmRpdGlvbjogY29uZmlnLnJldHJ5Q29uZGl0aW9uLFxuICAgICAgICByZXRyeURlbGF5LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gY2xpZW50LnJlcXVlc3Qoc2ltcGxlSHR0cFJlcXVlc3QpO1xuICAgIH1cbiAgICByZXR1cm4gYXhpb3Moc2ltcGxlSHR0cFJlcXVlc3QpO1xuICB9O1xuXG4gIHJldHVybiBzaW1wbGVIdHRwQ2xpZW50O1xufTtcblxuZXhwb3J0IGRlZmF1bHQgc2ltcGxlSHR0cENsaWVudEZhY3Rvcnk7XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvYXBpR2F0ZXdheUNvcmUvc2ltcGxlSHR0cENsaWVudC5qcyJdLCJuYW1lcyI6WyJzaW1wbGVIdHRwQ2xpZW50RmFjdG9yeSIsIm5ld0NsaWVudCIsImNvbmZpZyIsImJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmciLCJxdWVyeVBhcmFtcyIsIk9iamVjdCIsImtleXMiLCJsZW5ndGgiLCJjYW5vbmljYWxRdWVyeVN0cmluZyIsInByb3BlcnR5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZW5jb2RlVVJJQ29tcG9uZW50Iiwic3Vic3RyIiwic2ltcGxlSHR0cENsaWVudCIsImVuZHBvaW50IiwidXRpbHMiLCJhc3NlcnREZWZpbmVkIiwibWFrZVJlcXVlc3QiLCJyZXF1ZXN0IiwidmVyYiIsInBhdGgiLCJjb3B5IiwidGltZW91dCIsInVuZGVmaW5lZCIsImhlYWRlcnMiLCJkZWZhdWx0Q29udGVudFR5cGUiLCJkZWZhdWx0QWNjZXB0VHlwZSIsImJvZHkiLCJ1cmwiLCJxdWVyeVN0cmluZyIsInNpbXBsZUh0dHBSZXF1ZXN0IiwiZGF0YSIsIm1ldGhvZCIsInJldHJpZXMiLCJiYXNlVVJMIiwiY2xpZW50IiwiYXhpb3MiLCJjcmVhdGUiLCJyZXRyeURlbGF5IiwiYXhpb3NSZXRyeSIsImV4cG9uZW50aWFsRGVsYXkiLCJwYXJzZUludCIsInJldHJ5Q29uZGl0aW9uIiwiaXNOZXR3b3JrT3JJZGVtcG90ZW50UmVxdWVzdEVycm9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQWVBOztBQUNBOztBQUNBOzs7Ozs7QUFFQSxJQUFNQSx1QkFBdUIsR0FBRyxFQUFoQzs7QUFDQUEsdUJBQXVCLENBQUNDLFNBQXhCLEdBQW9DLFVBQUNDLE1BQUQsRUFBWTtBQUM5QyxXQUFTQyx5QkFBVCxDQUFtQ0MsV0FBbkMsRUFBZ0Q7QUFDOUM7QUFDQSxRQUFJQyxNQUFNLENBQUNDLElBQVAsQ0FBWUYsV0FBWixFQUF5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OlsiLypcbiAqIENvcHlyaWdodCAyMDEwLTIwMTYgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpLlxuICogWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogQSBjb3B5IG9mIHRoZSBMaWNlbnNlIGlzIGxvY2F0ZWQgYXRcbiAqXG4gKiAgaHR0cDovL2F3cy5hbWF6b24uY29tL2FwYWNoZTIuMFxuICpcbiAqIG9yIGluIHRoZSBcImxpY2Vuc2VcIiBmaWxlIGFjY29tcGFueWluZyB0aGlzIGZpbGUuIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZFxuICogb24gYW4gXCJBUyBJU1wiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyXG4gKiBleHByZXNzIG9yIGltcGxpZWQuIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZ1xuICogcGVybWlzc2lvbnMgYW5kIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgYXhpb3NSZXRyeSBmcm9tICdheGlvcy1yZXRyeSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IHNpbXBsZUh0dHBDbGllbnRGYWN0b3J5ID0ge307XG5zaW1wbGVIdHRwQ2xpZW50RmFjdG9yeS5uZXdDbGllbnQgPSAoY29uZmlnKSA9PiB7XG4gIGZ1bmN0aW9uIGJ1aWxkQ2Fub25pY2FsUXVlcnlTdHJpbmcocXVlcnlQYXJhbXMpIHtcbiAgICAvLyBCdWlsZCBhIHByb3Blcmx5IGVuY29kZWQgcXVlcnkgc3RyaW5nIGZyb20gYSBRdWVyeVBhcmFtIG9iamVjdFxuICAgIGlmIChPYmplY3Qua2V5cyhxdWVyeVBhcmFtcykubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGxldCBjYW5vbmljYWxRdWVyeVN0cmluZyA9ICcnO1xuICAgIGZvciAobGV0IHByb3BlcnR5IGluIHF1ZXJ5UGFyYW1zKSB7XG4gICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHF1ZXJ5UGFyYW1zLCBwcm9wZXJ0eSkpIHtcbiAgICAgICAgY2Fub25pY2FsUXVlcnlTdHJpbmcgKz0gZW5jb2RlVVJJQ29tcG9uZW50KHByb3BlcnR5KVxuICAgICAgICAgICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5UGFyYW1zW3Byb3BlcnR5XSkgKyAnJic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGNhbm9uaWNhbFF1ZXJ5U3RyaW5nLnN1YnN0cigwLCBjYW5vbmljYWxRdWVyeVN0cmluZy5sZW5ndGggLSAxKTtcbiAgfVxuXG4gIGxldCBzaW1wbGVIdHRwQ2xpZW50ID0geyB9O1xuICBzaW1wbGVIdHRwQ2xpZW50LmVuZHBvaW50ID0gdXRpbHMuYXNzZXJ0RGVmaW5lZChjb25maWcuZW5kcG9pbnQsICdlbmRwb2ludCcpO1xuXG4gIHNpbXBsZUh0dHBDbGllbnQubWFrZVJlcXVlc3QgPSBmdW5jdGlvbihyZXF1ZXN0KSB7XG4gICAgbGV0IHZlcmIgPSB1dGlscy5hc3NlcnREZWZpbmVkKHJlcXVlc3QudmVyYiwgJ3ZlcmInKTtcbiAgICBsZXQgcGF0aCA9IHV0aWxzLmFzc2VydERlZmluZWQocmVxdWVzdC5wYXRoLCAncGF0aCcpO1xuICAgIGxldCBxdWVyeVBhcmFtcyA9IHV0aWxzLmNvcHkocmVxdWVzdC5xdWVyeVBhcmFtcyk7XG4gICAgbGV0IHRpbWVvdXQgPSB1dGlscy5jb3B5KHJlcXVlc3QudGltZW91dCk7XG4gICAgaWYgKHF1ZXJ5UGFyYW1zID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHF1ZXJ5UGFyYW1zID0ge307XG4gICAgfVxuICAgIGlmICh0aW1lb3V0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRpbWVvdXQgPSAwO1xuICAgIH1cbiAgICBsZXQgaGVhZGVycyA9IHsuLi51dGlscy5jb3B5KHJlcXVlc3QuaGVhZGVycyksIC4uLmNvbmZpZy5oZWFkZXJzfTtcblxuICAgIC8vIElmIHRoZSB1c2VyIGhhcyBub3Qgc3BlY2lmaWVkIGFuIG92ZXJyaWRlIGZvciBDb250ZW50IHR5cGUgdGhlIHVzZSBkZWZhdWx0XG4gICAgaWYgKGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGhlYWRlcnNbJ0NvbnRlbnQtVHlwZSddID0gY29uZmlnLmRlZmF1bHRDb250ZW50VHlwZTtcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgdXNlciBoYXMgbm90IHNwZWNpZmllZCBhbiBvdmVycmlkZSBmb3IgQWNjZXB0IHR5cGUgdGhlIHVzZSBkZWZhdWx0XG4gICAgaWYgKGhlYWRlcnNbJ0FjY2VwdCddID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGhlYWRlcnNbJ0FjY2VwdCddID0gY29uZmlnLmRlZmF1bHRBY2NlcHRUeXBlO1xuICAgIH1cblxuICAgIGxldCBib2R5ID0gdXRpbHMuY29weShyZXF1ZXN0LmJvZHkpO1xuXG4gICAgbGV0IHVybCA9IGNvbmZpZy5lbmRwb2ludCArIHBhdGg7XG4gICAgbGV0IHF1ZXJ5U3RyaW5nID0gYnVpbGRDYW5vbmljYWxRdWVyeVN0cmluZyhxdWVyeVBhcmFtcyk7XG4gICAgaWYgKHF1ZXJ5U3RyaW5nICE9PSAnJykge1xuICAgICAgdXJsICs9ICc/JyArIHF1ZXJ5U3RyaW5nO1xuICAgIH1cblxuICAgIGxldCBzaW1wbGVIdHRwUmVxdWVzdCA9IHtcbiAgICAgIGhlYWRlcnM6IGhlYWRlcnMsXG4gICAgICB0aW1lb3V0OiB0aW1lb3V0LFxuICAgICAgZGF0YTogYm9keSxcbiAgICAgIG1ldGhvZDogdmVyYixcbiAgICAgIHVybDogdXJsLFxuICAgIH07XG4gICAgaWYgKGNvbmZpZy5yZXRyaWVzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHNpbXBsZUh0dHBSZXF1ZXN0LmJhc2VVUkwgPSB1cmw7XG4gICAgICBsZXQgY2xpZW50ID0gYXhpb3MuY3JlYXRlKHNpbXBsZUh0dHBSZXF1ZXN0KTtcblxuICAgICAgLy8gQWxsb3cgdXNlciBjb25maWd1cmFibGUgZGVsYXksIG9yIGJ1aWx0LWluIGV4cG9uZW50aWFsIGRlbGF5XG4gICAgICBsZXQgcmV0cnlEZWxheSA9ICgpID0+IDA7XG4gICAgICBpZiAoY29uZmlnLnJldHJ5RGVsYXkgPT09ICdleHBvbmVudGlhbCcpIHtcbiAgICAgICAgcmV0cnlEZWxheSA9IGF4aW9zUmV0cnkuZXhwb25lbnRpYWxEZWxheTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGNvbmZpZy5yZXRyeURlbGF5ID09PSAnbnVtYmVyJykge1xuICAgICAgICByZXRyeURlbGF5ID0gKCkgPT4gcGFyc2VJbnQoY29uZmlnLnJldHJ5RGVsYXkpO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgY29uZmlnLnJldHJ5RGVsYXkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0cnlEZWxheSA9IGNvbmZpZy5yZXRyeURlbGF5O1xuICAgICAgfVxuXG4gICAgICBheGlvc1JldHJ5KGNsaWVudCwge1xuICAgICAgICByZXRyaWVzOiBjb25maWcucmV0cmllcyxcbiAgICAgICAgcmV0cnlDb25kaXRpb246ICh0eXBlb2YgY29uZmlnLnJldHJ5Q29uZGl0aW9uID09PSAnZnVuY3Rpb24nKSA/IGNvbmZpZy5yZXRyeUNvbmRpdGlvbiA6IGF4aW9zUmV0cnkuaXNOZXR3b3JrT3JJZGVtcG90ZW50UmVxdWVzdEVycm9yLFxuICAgICAgICByZXRyeURlbGF5LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gY2xpZW50LnJlcXVlc3Qoc2ltcGxlSHR0cFJlcXVlc3QpO1xuICAgIH1cbiAgICByZXR1cm4gYXhpb3Moc2ltcGxlSHR0cFJlcXVlc3QpO1xuICB9O1xuXG4gIHJldHVybiBzaW1wbGVIdHRwQ2xpZW50O1xufTtcblxuZXhwb3J0IGRlZmF1bHQgc2ltcGxlSHR0cENsaWVudEZhY3Rvcnk7XG4iXX0=
{
"name": "@adastradev/aws-api-gateway-client",
"version": "1.0.2",
"version": "1.0.3",
"description": "A module for AWS API Gateway client",

@@ -5,0 +5,0 @@ "repository": {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc