Socket
Socket
Sign inDemoInstall

@progress/kendo-popup-common

Package Overview
Dependencies
Maintainers
1
Versions
56
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@progress/kendo-popup-common - npm Package Compare versions

Comparing version 1.6.0-dev.201805230752 to 1.6.0

2

dist/npm/main.js

@@ -500,2 +500,2 @@ 'use strict';

//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2VfZGV2ZWxvcC9zcmMvYWxpZ24tcG9pbnQuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlX2RldmVsb3Avc3JjL2FsaWduLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9hZGQtc2Nyb2xsLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9hcHBseS1sb2NhdGlvbi1vZmZzZXQuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlX2RldmVsb3Avc3JjL293bmVyLWRvY3VtZW50LmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy93aW5kb3cuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlX2RldmVsb3Avc3JjL2RvY3VtZW50LmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9zY3JvbGxiYXItd2lkdGguanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlX2RldmVsb3Avc3JjL3dpbmRvdy12aWV3cG9ydC5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2VfZGV2ZWxvcC9zcmMvYm91bmRpbmctb2Zmc2V0LmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9vZmZzZXQtcGFyZW50LmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9pcy1ib2R5LW9mZnNldC5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2VfZGV2ZWxvcC9zcmMvb2Zmc2V0LmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9wYXJlbnRzLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9zY3JvbGwtcG9zaXRpb24uanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlX2RldmVsb3Avc3JjL2VsZW1lbnQtc2Nyb2xsLXBvc2l0aW9uLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9wYXJlbnQtc2Nyb2xsLXBvc2l0aW9uLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9wb3NpdGlvbi5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2VfZGV2ZWxvcC9zcmMvb2Zmc2V0LXBhcmVudC1zY3JvbGwtcG9zaXRpb24uanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlX2RldmVsb3Avc3JjL3Bvc2l0aW9uLXdpdGgtc2Nyb2xsLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9yZW1vdmUtc2Nyb2xsLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9jb2xsaXNpb24uanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlX2RldmVsb3Avc3JjL3Jlc3RyaWN0LXRvLXZpZXcuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlX2RldmVsb3Avc3JjL3NpYmxpbmdzLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZV9kZXZlbG9wL3NyYy9zaWJsaW5nLWNvbnRhaW5lci5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCB7XG4gICAgXCJib3R0b21cIjogXCJib3R0b21cIixcbiAgICBcImNlbnRlclwiOiBcImNlbnRlclwiLFxuICAgIFwibWlkZGxlXCI6IFwibWlkZGxlXCIsXG4gICAgXCJsZWZ0XCI6IFwibGVmdFwiLFxuICAgIFwicmlnaHRcIjogXCJyaWdodFwiLFxuICAgIFwidG9wXCI6IFwidG9wXCJcbn07XG4iLCJpbXBvcnQgcG9pbnQgZnJvbSAnLi9hbGlnbi1wb2ludCc7XG5cbmNvbnN0IGFsaWduID0gKG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCB7IGFuY2hvclJlY3QsIGFuY2hvckFsaWduLCBlbGVtZW50UmVjdCwgZWxlbWVudEFsaWduLCBtYXJnaW4gPSB7fSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBhbmNob3JIb3Jpem9udGFsID0gYW5jaG9yQWxpZ24uaG9yaXpvbnRhbDtcbiAgICBjb25zdCBhbmNob3JWZXJ0aWNhbCA9IGFuY2hvckFsaWduLnZlcnRpY2FsO1xuICAgIGNvbnN0IGVsZW1lbnRIb3Jpem9udGFsID0gZWxlbWVudEFsaWduLmhvcml6b250YWw7XG4gICAgY29uc3QgZWxlbWVudFZlcnRpY2FsID0gZWxlbWVudEFsaWduLnZlcnRpY2FsO1xuXG4gICAgbGV0IGhvcml6b250YWxNYXJnaW4gPSBtYXJnaW4uaG9yaXpvbnRhbCB8fCAwO1xuICAgIGxldCB2ZXJ0aWNhbE1hcmdpbiA9IG1hcmdpbi52ZXJ0aWNhbCB8fCAwO1xuXG4gICAgbGV0IHRvcCA9IGFuY2hvclJlY3QudG9wO1xuICAgIGxldCBsZWZ0ID0gYW5jaG9yUmVjdC5sZWZ0O1xuXG4gICAgaWYgKGFuY2hvclZlcnRpY2FsID09PSBwb2ludC5ib3R0b20pIHtcbiAgICAgICAgdG9wICs9IGFuY2hvclJlY3QuaGVpZ2h0O1xuICAgIH1cblxuICAgIGlmIChhbmNob3JWZXJ0aWNhbCA9PT0gcG9pbnQuY2VudGVyIHx8IGFuY2hvclZlcnRpY2FsID09PSBwb2ludC5taWRkbGUpIHtcbiAgICAgICAgdG9wICs9IE1hdGgucm91bmQoYW5jaG9yUmVjdC5oZWlnaHQgLyAyKTtcbiAgICB9XG5cbiAgICBpZiAoZWxlbWVudFZlcnRpY2FsID09PSBwb2ludC5ib3R0b20pIHtcbiAgICAgICAgdG9wIC09IGVsZW1lbnRSZWN0LmhlaWdodDtcbiAgICAgICAgdmVydGljYWxNYXJnaW4gKj0gLTE7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnRWZXJ0aWNhbCA9PT0gcG9pbnQuY2VudGVyIHx8IGVsZW1lbnRWZXJ0aWNhbCA9PT0gcG9pbnQubWlkZGxlKSB7XG4gICAgICAgIHRvcCAtPSBNYXRoLnJvdW5kKGVsZW1lbnRSZWN0LmhlaWdodCAvIDIpO1xuICAgICAgICB2ZXJ0aWNhbE1hcmdpbiAqPSAtMTtcbiAgICB9XG5cbiAgICBpZiAoYW5jaG9ySG9yaXpvbnRhbCA9PT0gcG9pbnQucmlnaHQpIHtcbiAgICAgICAgbGVmdCArPSBhbmNob3JSZWN0LndpZHRoO1xuICAgIH1cblxuICAgIGlmIChhbmNob3JIb3Jpem9udGFsID09PSBwb2ludC5jZW50ZXIgfHwgYW5jaG9ySG9yaXpvbnRhbCA9PT0gcG9pbnQubWlkZGxlKSB7XG4gICAgICAgIGxlZnQgKz0gTWF0aC5yb3VuZChhbmNob3JSZWN0LndpZHRoIC8gMik7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnRIb3Jpem9udGFsID09PSBwb2ludC5yaWdodCkge1xuICAgICAgICBsZWZ0IC09IGVsZW1lbnRSZWN0LndpZHRoO1xuICAgICAgICBob3Jpem9udGFsTWFyZ2luICo9IC0xO1xuICAgIH1cblxuICAgIGlmIChlbGVtZW50SG9yaXpvbnRhbCA9PT0gcG9pbnQuY2VudGVyIHx8IGVsZW1lbnRIb3Jpem9udGFsID09PSBwb2ludC5taWRkbGUpIHtcbiAgICAgICAgbGVmdCAtPSBNYXRoLnJvdW5kKGVsZW1lbnRSZWN0LndpZHRoIC8gMik7XG4gICAgICAgIGhvcml6b250YWxNYXJnaW4gKj0gLTE7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgdG9wOiB0b3AgKyB2ZXJ0aWNhbE1hcmdpbixcbiAgICAgICAgbGVmdDogbGVmdCArIGhvcml6b250YWxNYXJnaW5cbiAgICB9O1xufTtcblxuZXhwb3J0IGRlZmF1bHQgYWxpZ247XG4iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBhZGRTY3JvbGwocmVjdCwgc2Nyb2xsKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdG9wOiByZWN0LnRvcCArIHNjcm9sbC55LFxuICAgICAgICBsZWZ0OiByZWN0LmxlZnQgKyBzY3JvbGwueCxcbiAgICAgICAgaGVpZ2h0OiByZWN0LmhlaWdodCxcbiAgICAgICAgd2lkdGg6IHJlY3Qud2lkdGhcbiAgICB9O1xufVxuIiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gYXBwbHlMb2NhdGlvbk9mZnNldChyZWN0LCBsb2NhdGlvbiwgaXNPZmZzZXRCb2R5KSB7XG4gICAgbGV0IHsgdG9wLCBsZWZ0IH0gPSByZWN0O1xuXG4gICAgaWYgKGlzT2Zmc2V0Qm9keSkge1xuICAgICAgICBsZWZ0ID0gMDtcbiAgICAgICAgdG9wID0gMDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB0b3A6IHRvcCArIGxvY2F0aW9uLnRvcCxcbiAgICAgICAgbGVmdDogbGVmdCArIGxvY2F0aW9uLmxlZnQsXG4gICAgICAgIGhlaWdodDogcmVjdC5oZWlnaHQsXG4gICAgICAgIHdpZHRoOiByZWN0LndpZHRoXG4gICAgfTtcbn1cbiIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG93bmVyRG9jdW1lbnQoZWxlbWVudCkge1xuICAgIHJldHVybiBlbGVtZW50Lm93bmVyRG9jdW1lbnQgfHwgZWxlbWVudC5kb2N1bWVudCB8fCBlbGVtZW50O1xufVxuIiwiaW1wb3J0IG93bmVyRG9jdW1lbnQgZnJvbSAnLi9vd25lci1kb2N1bWVudCc7XG5cbmNvbnN0IGdldFdpbmRvdyA9IChlbGVtZW50KSA9PiBvd25lckRvY3VtZW50KGVsZW1lbnQpLmRlZmF1bHRWaWV3O1xuXG5leHBvcnQgZGVmYXVsdCBnZXRXaW5kb3c7XG4iLCJpbXBvcnQgb3duZXJEb2N1bWVudCBmcm9tICcuL293bmVyLWRvY3VtZW50JztcblxuY29uc3QgZ2V0RG9jdW1lbnQgPSAoZWxlbWVudCkgPT4gb3duZXJEb2N1bWVudChlbGVtZW50KS5kb2N1bWVudEVsZW1lbnQ7XG5cbmV4cG9ydCBkZWZhdWx0IGdldERvY3VtZW50O1xuIiwibGV0IGNhY2hlZFdpZHRoID0gMDtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gc2Nyb2xsYmFyV2lkdGgoKSB7XG4gICAgaWYgKCFjYWNoZWRXaWR0aCAmJiB0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGNvbnN0IGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7XG5cbiAgICAgICAgZGl2LnN0eWxlLmNzc1RleHQgPSBcIm92ZXJmbG93OnNjcm9sbDtvdmVyZmxvdy14OmhpZGRlbjt6b29tOjE7Y2xlYXI6Ym90aDtkaXNwbGF5OmJsb2NrXCI7XG4gICAgICAgIGRpdi5pbm5lckhUTUwgPSBcIiZuYnNwO1wiO1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRpdik7XG5cbiAgICAgICAgY2FjaGVkV2lkdGggPSBkaXYub2Zmc2V0V2lkdGggLSBkaXYuc2Nyb2xsV2lkdGg7XG5cbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkaXYpO1xuICAgIH1cblxuICAgIHJldHVybiBjYWNoZWRXaWR0aDtcbn1cbiIsImltcG9ydCB3bmQgZnJvbSAnLi93aW5kb3cnO1xuaW1wb3J0IGdldERvY3VtZW50IGZyb20gJy4vZG9jdW1lbnQnO1xuaW1wb3J0IHNjcm9sbGJhcldpZHRoIGZyb20gJy4vc2Nyb2xsYmFyLXdpZHRoJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2luZG93Vmlld3BvcnQoZWxlbWVudCkge1xuICAgIGNvbnN0IHdpbiA9IHduZChlbGVtZW50KTtcbiAgICBjb25zdCBkb2N1bWVudCA9IGdldERvY3VtZW50KGVsZW1lbnQpO1xuICAgIGNvbnN0IHJlc3VsdCA9IHtcbiAgICAgICAgaGVpZ2h0OiB3aW4uaW5uZXJIZWlnaHQsXG4gICAgICAgIHdpZHRoOiB3aW4uaW5uZXJXaWR0aFxuICAgIH07XG5cbiAgICBpZiAoZG9jdW1lbnQuc2Nyb2xsSGVpZ2h0IC0gZG9jdW1lbnQuY2xpZW50SGVpZ2h0ID4gMCkge1xuICAgICAgICByZXN1bHQud2lkdGggLT0gc2Nyb2xsYmFyV2lkdGgoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuIiwiaW1wb3J0IHdpbmRvd1ZpZXdwb3J0IGZyb20gJy4vd2luZG93LXZpZXdwb3J0JztcblxuY29uc3QgYm91bmRpbmdPZmZzZXQgPSAoZWxlbWVudCkgPT4ge1xuICAgIGlmICghZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QpIHtcbiAgICAgICAgY29uc3Qgdmlld3BvcnQgPSB3aW5kb3dWaWV3cG9ydChlbGVtZW50KTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGJvdHRvbTogdmlld3BvcnQuaGVpZ2h0LFxuICAgICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICAgIHJpZ2h0OiB2aWV3cG9ydC53aWR0aCxcbiAgICAgICAgICAgIHRvcDogMFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGNvbnN0IHsgYm90dG9tLCBsZWZ0LCByaWdodCwgdG9wIH0gPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgYm90dG9tLFxuICAgICAgICBsZWZ0LFxuICAgICAgICByaWdodCxcbiAgICAgICAgdG9wXG4gICAgfTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGJvdW5kaW5nT2Zmc2V0O1xuIiwiaW1wb3J0IGRvY3VtZW50RWxlbWVudCBmcm9tICcuL2RvY3VtZW50JztcblxuY29uc3Qgb2Zmc2V0UGFyZW50ID0gKGVsZW1lbnQpID0+IHtcbiAgICBsZXQgb2Zmc2V0UGFyZW50ID0gZWxlbWVudC5vZmZzZXRQYXJlbnQ7XG5cbiAgICB3aGlsZSAob2Zmc2V0UGFyZW50ICYmIG9mZnNldFBhcmVudC5zdHlsZS5wb3NpdGlvbiA9PT0gXCJzdGF0aWNcIikge1xuICAgICAgICBvZmZzZXRQYXJlbnQgPSBvZmZzZXRQYXJlbnQub2Zmc2V0UGFyZW50O1xuICAgIH1cblxuICAgIHJldHVybiBvZmZzZXRQYXJlbnQgfHwgZG9jdW1lbnRFbGVtZW50KGVsZW1lbnQpO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgb2Zmc2V0UGFyZW50O1xuIiwiaW1wb3J0IG9mZnNldFBhcmVudCBmcm9tICcuL29mZnNldC1wYXJlbnQnO1xuXG5jb25zdCBpc0JvZHlPZmZzZXQgPSAoZWxlbWVudCkgPT4gKG9mZnNldFBhcmVudChlbGVtZW50KSA9PT0gZWxlbWVudC5vd25lckRvY3VtZW50LmJvZHkpO1xuXG5leHBvcnQgZGVmYXVsdCBpc0JvZHlPZmZzZXQ7XG4iLCJjb25zdCByZWN0T2ZIaWRkZW5FbGVtZW50ID0gKGVsZW1lbnQpID0+IHtcbiAgICBjb25zdCB7IGRpc3BsYXksIGxlZnQsIHBvc2l0aW9uIH0gPSBlbGVtZW50LnN0eWxlO1xuXG4gICAgZWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJyc7XG4gICAgZWxlbWVudC5zdHlsZS5sZWZ0ID0gJy0xMDAwMHB4JztcbiAgICBlbGVtZW50LnN0eWxlLnBvc2l0aW9uID0gJ2Fic29sdXRlJztcblxuICAgIGNvbnN0IHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgZWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gZGlzcGxheTtcbiAgICBlbGVtZW50LnN0eWxlLmxlZnQgPSBsZWZ0O1xuICAgIGVsZW1lbnQuc3R5bGUucG9zaXRpb24gPSBwb3NpdGlvbjtcblxuICAgIHJldHVybiByZWN0O1xufTtcblxuY29uc3Qgb2Zmc2V0ID0gKGVsZW1lbnQpID0+IHtcbiAgICBsZXQgcmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgbGV0IHsgbGVmdCwgdG9wIH0gPSByZWN0O1xuXG4gICAgaWYgKCFyZWN0LmhlaWdodCAmJiAhcmVjdC53aWR0aCkge1xuICAgICAgICByZWN0ID0gcmVjdE9mSGlkZGVuRWxlbWVudChlbGVtZW50KTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB0b3A6IHRvcCxcbiAgICAgICAgbGVmdDogbGVmdCxcbiAgICAgICAgaGVpZ2h0OiByZWN0LmhlaWdodCxcbiAgICAgICAgd2lkdGg6IHJlY3Qud2lkdGhcbiAgICB9O1xufTtcblxuZXhwb3J0IGRlZmF1bHQgb2Zmc2V0O1xuIiwiZXhwb3J0IGRlZmF1bHQgKGVsZW1lbnQsIHVudGlsKSA9PiB7XG4gICAgY29uc3QgcmVzdWx0ID0gW107XG4gICAgbGV0IG5leHQgPSBlbGVtZW50LnBhcmVudE5vZGU7XG5cbiAgICB3aGlsZSAobmV4dCkge1xuICAgICAgICByZXN1bHQucHVzaChuZXh0KTtcblxuICAgICAgICBpZiAobmV4dCA9PT0gdW50aWwpIHsgYnJlYWs7IH1cblxuICAgICAgICBuZXh0ID0gbmV4dC5wYXJlbnROb2RlO1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG59O1xuIiwiaW1wb3J0IGRvY0VsZW1lbnQgZnJvbSAnLi9kb2N1bWVudCc7XG5pbXBvcnQgd25kIGZyb20gJy4vd2luZG93JztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gc2Nyb2xsUG9zaXRpb24oZWxlbWVudCkge1xuICAgIGNvbnN0IGRvY3VtZW50RWxlbWVudCA9IGRvY0VsZW1lbnQoZWxlbWVudCk7XG4gICAgY29uc3Qgd2luID0gd25kKGVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgeDogd2luLnBhZ2VYT2Zmc2V0IHx8IGRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0IHx8IDAsXG4gICAgICAgIHk6IHdpbi5wYWdlWU9mZnNldCB8fCBkb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIHx8IDBcbiAgICB9O1xufVxuIiwiaW1wb3J0IHNjcm9sbFBvc2l0aW9uIGZyb20gJy4vc2Nyb2xsLXBvc2l0aW9uJztcblxuZXhwb3J0IGRlZmF1bHQgKGVsZW1lbnQpID0+IHtcbiAgICBpZiAoZWxlbWVudCA9PT0gKGVsZW1lbnQub3duZXJEb2N1bWVudCB8fCB7fSkuYm9keSkge1xuICAgICAgICByZXR1cm4gc2Nyb2xsUG9zaXRpb24oZWxlbWVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgeDogZWxlbWVudC5zY3JvbGxMZWZ0LFxuICAgICAgICB5OiBlbGVtZW50LnNjcm9sbFRvcFxuICAgIH07XG59O1xuIiwiaW1wb3J0IG9mZnNldFBhcmVudCBmcm9tICcuL29mZnNldC1wYXJlbnQnO1xuaW1wb3J0IGVsZW1lbnRTY3JvbGxQb3NpdGlvbiBmcm9tICcuL2VsZW1lbnQtc2Nyb2xsLXBvc2l0aW9uJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcGFyZW50U2Nyb2xsUG9zaXRpb24oZWxlbWVudCkge1xuICAgIGNvbnN0IHBhcmVudCA9IG9mZnNldFBhcmVudChlbGVtZW50KTtcblxuICAgIHJldHVybiBwYXJlbnQgPyBlbGVtZW50U2Nyb2xsUG9zaXRpb24ocGFyZW50KSA6IHsgeDogMCwgeTogMCB9O1xufVxuIiwiaW1wb3J0IG9mZnNldFBhcmVudCBmcm9tICcuL29mZnNldC1wYXJlbnQnO1xuaW1wb3J0IG9mZnNldFJlY3QgZnJvbSAnLi9vZmZzZXQnO1xuaW1wb3J0IHduZCBmcm9tICcuL3dpbmRvdyc7XG5cbmNvbnN0IHBvc2l0aW9uID0gKGVsZW1lbnQsIHBhcmVudCkgPT4ge1xuICAgIGNvbnN0IHdpbiA9IHduZChlbGVtZW50KTtcbiAgICBjb25zdCBlbGVtZW50U3R5bGVzID0gd2luLmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gICAgY29uc3Qgb2Zmc2V0ID0gb2Zmc2V0UmVjdChlbGVtZW50KTtcbiAgICBjb25zdCBwYXJlbnRFbGVtZW50ID0gcGFyZW50IHx8IG9mZnNldFBhcmVudChlbGVtZW50KTtcblxuICAgIGNvbnN0IG93bmVyRG9jdW1lbnQgPSBlbGVtZW50Lm93bmVyRG9jdW1lbnQ7XG4gICAgY29uc3QgdXNlUmVsYXRpdmUgPSBwYXJlbnRFbGVtZW50ICE9PSBvd25lckRvY3VtZW50LmJvZHkgJiYgcGFyZW50RWxlbWVudCAhPT0gb3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG5cbiAgICBsZXQgcGFyZW50T2Zmc2V0ID0geyB0b3A6IDAsIGxlZnQ6IDAgfTtcblxuICAgIGlmIChlbGVtZW50U3R5bGVzLnBvc2l0aW9uICE9PSBcImZpeGVkXCIgJiYgdXNlUmVsYXRpdmUpIHtcbiAgICAgICAgY29uc3QgcGFyZW50U3R5bGVzID0gd2luLmdldENvbXB1dGVkU3R5bGUocGFyZW50RWxlbWVudCk7XG5cbiAgICAgICAgcGFyZW50T2Zmc2V0ID0gb2Zmc2V0UmVjdChwYXJlbnRFbGVtZW50KTtcbiAgICAgICAgcGFyZW50T2Zmc2V0LnRvcCArPSBwYXJzZUludChwYXJlbnRTdHlsZXMuYm9yZGVyVG9wV2lkdGgsIDEwKTtcbiAgICAgICAgcGFyZW50T2Zmc2V0LmxlZnQgKz0gcGFyc2VJbnQocGFyZW50U3R5bGVzLmJvcmRlckxlZnRXaWR0aCwgMTApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIHRvcDogb2Zmc2V0LnRvcCAtIHBhcmVudE9mZnNldC50b3AsXG4gICAgICAgIGxlZnQ6IG9mZnNldC5sZWZ0IC0gcGFyZW50T2Zmc2V0LmxlZnQsXG4gICAgICAgIGhlaWdodDogb2Zmc2V0LmhlaWdodCxcbiAgICAgICAgd2lkdGg6IG9mZnNldC53aWR0aFxuICAgIH07XG59O1xuXG5leHBvcnQgZGVmYXVsdCBwb3NpdGlvbjtcbiIsImltcG9ydCBlbGVtZW50U2Nyb2xsUG9zaXRpb24gZnJvbSAnLi9lbGVtZW50LXNjcm9sbC1wb3NpdGlvbic7XG5pbXBvcnQgcGFyZW50U2Nyb2xsUG9zaXRpb24gZnJvbSAnLi9wYXJlbnQtc2Nyb2xsLXBvc2l0aW9uJztcblxuZXhwb3J0IGRlZmF1bHQgKG9mZnNldFBhcmVudEVsZW1lbnQsIGVsZW1lbnQpID0+ICggLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1hcnJvdy1jb25kaXRpb25cbiAgICBvZmZzZXRQYXJlbnRFbGVtZW50ID8gZWxlbWVudFNjcm9sbFBvc2l0aW9uKG9mZnNldFBhcmVudEVsZW1lbnQpIDogcGFyZW50U2Nyb2xsUG9zaXRpb24oZWxlbWVudClcbik7XG4iLCJpbXBvcnQgb2Zmc2V0UGFyZW50U2Nyb2xsUG9zaXRpb24gZnJvbSAnLi9vZmZzZXQtcGFyZW50LXNjcm9sbC1wb3NpdGlvbic7XG5pbXBvcnQgb2Zmc2V0UGFyZW50IGZyb20gJy4vb2Zmc2V0LXBhcmVudCc7XG5pbXBvcnQgcG9zaXRpb24gZnJvbSAnLi9wb3NpdGlvbic7XG5cbmV4cG9ydCBkZWZhdWx0IChlbGVtZW50LCBwYXJlbnQpID0+IHtcbiAgICBjb25zdCBvZmZzZXRQYXJlbnRFbGVtZW50ID0gcGFyZW50ID8gb2Zmc2V0UGFyZW50KHBhcmVudCkgOiBudWxsO1xuICAgIGNvbnN0IHsgdG9wLCBsZWZ0LCBoZWlnaHQsIHdpZHRoIH0gPSBwb3NpdGlvbihlbGVtZW50LCBvZmZzZXRQYXJlbnRFbGVtZW50KTtcbiAgICBjb25zdCB7IHgsIHkgfSA9IG9mZnNldFBhcmVudFNjcm9sbFBvc2l0aW9uKG9mZnNldFBhcmVudEVsZW1lbnQsIGVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgdG9wOiB0b3AgKyB5LFxuICAgICAgICBsZWZ0OiBsZWZ0ICsgeCxcbiAgICAgICAgaGVpZ2h0OiBoZWlnaHQsXG4gICAgICAgIHdpZHRoOiB3aWR0aFxuICAgIH07XG59O1xuIiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gcmVtb3ZlU2Nyb2xsKHJlY3QsIHNjcm9sbCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIHRvcDogcmVjdC50b3AgLSBzY3JvbGwueSxcbiAgICAgICAgbGVmdDogcmVjdC5sZWZ0IC0gc2Nyb2xsLngsXG4gICAgICAgIGhlaWdodDogcmVjdC5oZWlnaHQsXG4gICAgICAgIHdpZHRoOiByZWN0LndpZHRoXG4gICAgfTtcbn1cbiIsImV4cG9ydCBkZWZhdWx0IHtcbiAgICBcImZpdFwiOiBcImZpdFwiLFxuICAgIFwiZmxpcFwiOiBcImZsaXBcIlxufTtcbiIsImltcG9ydCBhbGlnblBvaW50IGZyb20gJy4vYWxpZ24tcG9pbnQnO1xuaW1wb3J0IGNvbGxpc2lvbiBmcm9tICcuL2NvbGxpc2lvbic7XG5cbmNvbnN0IGZpdCA9IGZ1bmN0aW9uKHBvc2l0aW9uLCBzaXplLCB2aWV3UG9ydFNpemUpIHtcbiAgICBsZXQgb3V0cHV0ID0gMDtcblxuICAgIGlmIChwb3NpdGlvbiArIHNpemUgPiB2aWV3UG9ydFNpemUpIHtcbiAgICAgICAgb3V0cHV0ID0gdmlld1BvcnRTaXplIC0gKHBvc2l0aW9uICsgc2l6ZSk7XG4gICAgfVxuXG4gICAgaWYgKHBvc2l0aW9uIDwgMCkge1xuICAgICAgICBvdXRwdXQgPSAtcG9zaXRpb247XG4gICAgfVxuXG4gICAgcmV0dXJuIG91dHB1dDtcbn07XG5cbmNvbnN0IGZsaXAgPSBmdW5jdGlvbih7IG9mZnNldCwgc2l6ZSwgYW5jaG9yU2l6ZSwgdmlld1BvcnRTaXplLCBhbmNob3JBbGlnblBvaW50LCBlbGVtZW50QWxpZ25Qb2ludCwgbWFyZ2luIH0pIHtcbiAgICBsZXQgb3V0cHV0ID0gMDtcblxuICAgIGNvbnN0IGlzUG9zaXRpb25DZW50ZXJlZCA9IGVsZW1lbnRBbGlnblBvaW50ID09PSBhbGlnblBvaW50LmNlbnRlciB8fCBlbGVtZW50QWxpZ25Qb2ludCA9PT0gYWxpZ25Qb2ludC5taWRkbGU7XG4gICAgY29uc3QgaXNPcmlnaW5DZW50ZXJlZCA9IGFuY2hvckFsaWduUG9pbnQgPT09IGFsaWduUG9pbnQuY2VudGVyIHx8IGFuY2hvckFsaWduUG9pbnQgPT09IGFsaWduUG9pbnQubWlkZGxlO1xuICAgIGNvbnN0IG1hcmdpblRvQWRkID0gMiAqIG1hcmdpbjsgLy8yeCB0byBrZWVwIG1hcmdpbiBhZnRlciBmbGlwXG5cbiAgICBpZiAoZWxlbWVudEFsaWduUG9pbnQgIT09IGFuY2hvckFsaWduUG9pbnQgJiYgIWlzUG9zaXRpb25DZW50ZXJlZCAmJiAhaXNPcmlnaW5DZW50ZXJlZCkge1xuICAgICAgICBjb25zdCBpc0JlZm9yZUFuY2hvciA9IGFuY2hvckFsaWduUG9pbnQgPT09IGFsaWduUG9pbnQudG9wIHx8IGFuY2hvckFsaWduUG9pbnQgPT09IGFsaWduUG9pbnQubGVmdDtcbiAgICAgICAgaWYgKG9mZnNldCA8IDAgJiYgaXNCZWZvcmVBbmNob3IpIHtcbiAgICAgICAgICAgIG91dHB1dCA9IHNpemUgKyBhbmNob3JTaXplICsgbWFyZ2luVG9BZGQ7XG4gICAgICAgICAgICBpZiAob2Zmc2V0ICsgb3V0cHV0ICsgc2l6ZSA+IHZpZXdQb3J0U2l6ZSkge1xuICAgICAgICAgICAgICAgIG91dHB1dCA9IDA7IC8vc2tpcCBmbGlwXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAob2Zmc2V0ID49IDAgJiYgIWlzQmVmb3JlQW5jaG9yKSB7XG4gICAgICAgICAgICBpZiAob2Zmc2V0ICsgc2l6ZSA+IHZpZXdQb3J0U2l6ZSkge1xuICAgICAgICAgICAgICAgIG91dHB1dCArPSAtKGFuY2hvclNpemUgKyBzaXplICsgbWFyZ2luVG9BZGQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAob2Zmc2V0ICsgb3V0cHV0IDwgMCkge1xuICAgICAgICAgICAgICAgIG91dHB1dCA9IDA7IC8vc2tpcCBmbGlwXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gb3V0cHV0O1xufTtcblxuY29uc3QgcmVzdHJpY3RUb1ZpZXcgPSAob3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IHsgYW5jaG9yUmVjdCwgYW5jaG9yQWxpZ24sIGVsZW1lbnRSZWN0LCBlbGVtZW50QWxpZ24sIGNvbGxpc2lvbnMsIHZpZXdQb3J0LCBtYXJnaW4gPSB7fSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCB7IHRvcDogZWxlbWVudFRvcCwgbGVmdDogZWxlbWVudExlZnQsIGhlaWdodDogZWxlbWVudEhlaWdodCwgd2lkdGg6IGVsZW1lbnRXaWR0aCB9ID0gZWxlbWVudFJlY3Q7XG4gICAgY29uc3QgeyBoZWlnaHQ6IHZpZXdQb3J0SGVpZ2h0LCB3aWR0aDogdmlld1BvcnRXaWR0aCB9ID0gdmlld1BvcnQ7XG4gICAgY29uc3QgaG9yaXpvbnRhbE1hcmdpbiA9IG1hcmdpbi5ob3Jpem9udGFsIHx8IDA7XG4gICAgY29uc3QgdmVydGljYWxNYXJnaW4gPSBtYXJnaW4udmVydGljYWwgfHwgMDtcblxuICAgIGxldCBsZWZ0ID0gMDtcbiAgICBsZXQgdG9wID0gMDtcblxuICAgIGNvbnN0IGlzSG9yaXpvbnRhbEZsaXAgPSBjb2xsaXNpb25zLmhvcml6b250YWwgPT09IGNvbGxpc2lvbi5mbGlwO1xuICAgIGNvbnN0IGlzVmVydGljYWxGbGlwID0gY29sbGlzaW9ucy52ZXJ0aWNhbCA9PT0gY29sbGlzaW9uLmZsaXA7XG5cbiAgICBpZiAoY29sbGlzaW9ucy52ZXJ0aWNhbCA9PT0gY29sbGlzaW9uLmZpdCkge1xuICAgICAgICB0b3AgKz0gZml0KGVsZW1lbnRUb3AsIGVsZW1lbnRIZWlnaHQsIHZpZXdQb3J0SGVpZ2h0KTtcbiAgICB9XG5cbiAgICBpZiAoY29sbGlzaW9ucy5ob3Jpem9udGFsID09PSBjb2xsaXNpb24uZml0KSB7XG4gICAgICAgIGxlZnQgKz0gZml0KGVsZW1lbnRMZWZ0LCBlbGVtZW50V2lkdGgsIHZpZXdQb3J0V2lkdGgpO1xuICAgIH1cblxuICAgIGlmIChpc1ZlcnRpY2FsRmxpcCkge1xuICAgICAgICB0b3AgKz0gZmxpcCh7XG4gICAgICAgICAgICBtYXJnaW46IHZlcnRpY2FsTWFyZ2luLFxuICAgICAgICAgICAgb2Zmc2V0OiBlbGVtZW50VG9wLFxuICAgICAgICAgICAgc2l6ZTogZWxlbWVudEhlaWdodCxcbiAgICAgICAgICAgIGFuY2hvclNpemU6IGFuY2hvclJlY3QuaGVpZ2h0LFxuICAgICAgICAgICAgdmlld1BvcnRTaXplOiB2aWV3UG9ydEhlaWdodCxcbiAgICAgICAgICAgIGFuY2hvckFsaWduUG9pbnQ6IGFuY2hvckFsaWduLnZlcnRpY2FsLFxuICAgICAgICAgICAgZWxlbWVudEFsaWduUG9pbnQ6IGVsZW1lbnRBbGlnbi52ZXJ0aWNhbFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAoaXNIb3Jpem9udGFsRmxpcCkge1xuICAgICAgICBsZWZ0ICs9IGZsaXAoe1xuICAgICAgICAgICAgbWFyZ2luOiBob3Jpem9udGFsTWFyZ2luLFxuICAgICAgICAgICAgb2Zmc2V0OiBlbGVtZW50TGVmdCxcbiAgICAgICAgICAgIHNpemU6IGVsZW1lbnRXaWR0aCxcbiAgICAgICAgICAgIGFuY2hvclNpemU6IGFuY2hvclJlY3Qud2lkdGgsXG4gICAgICAgICAgICB2aWV3UG9ydFNpemU6IHZpZXdQb3J0V2lkdGgsXG4gICAgICAgICAgICBhbmNob3JBbGlnblBvaW50OiBhbmNob3JBbGlnbi5ob3Jpem9udGFsLFxuICAgICAgICAgICAgZWxlbWVudEFsaWduUG9pbnQ6IGVsZW1lbnRBbGlnbi5ob3Jpem9udGFsXG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBjb25zdCBmbGlwcGVkSG9yaXpvbnRhbCA9IGlzSG9yaXpvbnRhbEZsaXAgJiYgbGVmdCAhPT0gMDtcbiAgICBjb25zdCBmbGlwcGVkVmVydGljYWwgPSBpc1ZlcnRpY2FsRmxpcCAmJiB0b3AgIT09IDA7XG5cbiAgICByZXR1cm4ge1xuICAgICAgICBmbGlwcGVkOiBmbGlwcGVkSG9yaXpvbnRhbCB8fCBmbGlwcGVkVmVydGljYWwsXG4gICAgICAgIGZsaXA6IHtcbiAgICAgICAgICAgIGhvcml6b250YWw6IGZsaXBwZWRIb3Jpem9udGFsLFxuICAgICAgICAgICAgdmVydGljYWw6IGZsaXBwZWRWZXJ0aWNhbFxuICAgICAgICB9LFxuICAgICAgICBvZmZzZXQ6IHtcbiAgICAgICAgICAgIGxlZnQ6IGxlZnQsXG4gICAgICAgICAgICB0b3A6IHRvcFxuICAgICAgICB9XG4gICAgfTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IHJlc3RyaWN0VG9WaWV3O1xuIiwiZXhwb3J0IGRlZmF1bHQgKGVsZW1lbnQpID0+IHtcbiAgICBjb25zdCByZXN1bHQgPSBbXTtcblxuICAgIGxldCBzaWJsaW5nID0gZWxlbWVudC5wYXJlbnROb2RlLmZpcnN0RWxlbWVudENoaWxkO1xuXG4gICAgd2hpbGUgKHNpYmxpbmcpIHtcbiAgICAgICAgaWYgKHNpYmxpbmcgIT09IGVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHNpYmxpbmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2libGluZyA9IHNpYmxpbmcubmV4dEVsZW1lbnRTaWJsaW5nO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xufTtcbiIsIi8qIGVzbGludC1kaXNhYmxlIG5vLWxvb3AtZnVuYyAqL1xuXG5pbXBvcnQgcGFyZW50cyBmcm9tICcuL3BhcmVudHMnO1xuaW1wb3J0IHNpYmxpbmdzIGZyb20gJy4vc2libGluZ3MnO1xuXG5leHBvcnQgZGVmYXVsdCAoYW5jaG9yLCBjb250YWluZXIpID0+IHtcbiAgICBjb25zdCBwYXJlbnRFbGVtZW50cyA9IHBhcmVudHMoYW5jaG9yKTtcbiAgICBsZXQgY29udGFpbmVyRWxlbWVudCA9IGNvbnRhaW5lcjtcbiAgICBsZXQgc2libGluZ0VsZW1lbnRzO1xuICAgIGxldCByZXN1bHQ7XG5cbiAgICB3aGlsZSAoY29udGFpbmVyRWxlbWVudCkge1xuICAgICAgICBzaWJsaW5nRWxlbWVudHMgPSBzaWJsaW5ncyhjb250YWluZXJFbGVtZW50KTtcblxuICAgICAgICByZXN1bHQgPSBwYXJlbnRFbGVtZW50cy5yZWR1Y2UoXG4gICAgICAgICAgICAobGlzdCwgcCkgPT4gbGlzdC5jb25jYXQoc2libGluZ0VsZW1lbnRzLmZpbHRlcihzID0+IHMgPT09IHApKSxcbiAgICAgICAgICAgIFtdXG4gICAgICAgIClbMF07XG5cbiAgICAgICAgaWYgKHJlc3VsdCkgeyBicmVhazsgfVxuXG4gICAgICAgIGNvbnRhaW5lckVsZW1lbnQgPSBjb250YWluZXJFbGVtZW50LnBhcmVudEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn07XG5cbiJdLCJuYW1lcyI6WyJjb25zdCIsImxldCIsInBvaW50Iiwid25kIiwiZG9jdW1lbnRFbGVtZW50IiwiZG9jRWxlbWVudCIsIm9mZnNldCIsIm9mZnNldFJlY3QiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxpQkFBZTtJQUNYLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE1BQU0sRUFBRSxNQUFNO0lBQ2QsT0FBTyxFQUFFLE9BQU87SUFDaEIsS0FBSyxFQUFFLEtBQUs7Q0FDZixDQUFDOztB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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjpudWxsLCJzb3VyY2VzIjpbIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL2FsaWduLXBvaW50LmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZS9zcmMvYWxpZ24uanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlL3NyYy9hZGQtc2Nyb2xsLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZS9zcmMvYXBwbHktbG9jYXRpb24tb2Zmc2V0LmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZS9zcmMvb3duZXItZG9jdW1lbnQuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlL3NyYy93aW5kb3cuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlL3NyYy9kb2N1bWVudC5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL3Njcm9sbGJhci13aWR0aC5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL3dpbmRvdy12aWV3cG9ydC5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL2JvdW5kaW5nLW9mZnNldC5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL29mZnNldC1wYXJlbnQuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlL3NyYy9pcy1ib2R5LW9mZnNldC5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL29mZnNldC5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL3BhcmVudHMuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlL3NyYy9zY3JvbGwtcG9zaXRpb24uanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlL3NyYy9lbGVtZW50LXNjcm9sbC1wb3NpdGlvbi5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL3BhcmVudC1zY3JvbGwtcG9zaXRpb24uanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlL3NyYy9wb3NpdGlvbi5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL29mZnNldC1wYXJlbnQtc2Nyb2xsLXBvc2l0aW9uLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZS9zcmMvcG9zaXRpb24td2l0aC1zY3JvbGwuanMiLCIvdXNyL2xvY2FsL2plbmtpbnMvd29ya3NwYWNlL2tlbmRvLXBvcHVwLWNvbW1vbl9yZWxlYXNlL3NyYy9yZW1vdmUtc2Nyb2xsLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZS9zcmMvY29sbGlzaW9uLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZS9zcmMvcmVzdHJpY3QtdG8tdmlldy5qcyIsIi91c3IvbG9jYWwvamVua2lucy93b3Jrc3BhY2Uva2VuZG8tcG9wdXAtY29tbW9uX3JlbGVhc2Uvc3JjL3NpYmxpbmdzLmpzIiwiL3Vzci9sb2NhbC9qZW5raW5zL3dvcmtzcGFjZS9rZW5kby1wb3B1cC1jb21tb25fcmVsZWFzZS9zcmMvc2libGluZy1jb250YWluZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQge1xuICAgIFwiYm90dG9tXCI6IFwiYm90dG9tXCIsXG4gICAgXCJjZW50ZXJcIjogXCJjZW50ZXJcIixcbiAgICBcIm1pZGRsZVwiOiBcIm1pZGRsZVwiLFxuICAgIFwibGVmdFwiOiBcImxlZnRcIixcbiAgICBcInJpZ2h0XCI6IFwicmlnaHRcIixcbiAgICBcInRvcFwiOiBcInRvcFwiXG59O1xuIiwiaW1wb3J0IHBvaW50IGZyb20gJy4vYWxpZ24tcG9pbnQnO1xuXG5jb25zdCBhbGlnbiA9IChvcHRpb25zKSA9PiB7XG4gICAgY29uc3QgeyBhbmNob3JSZWN0LCBhbmNob3JBbGlnbiwgZWxlbWVudFJlY3QsIGVsZW1lbnRBbGlnbiwgbWFyZ2luID0ge30gfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgYW5jaG9ySG9yaXpvbnRhbCA9IGFuY2hvckFsaWduLmhvcml6b250YWw7XG4gICAgY29uc3QgYW5jaG9yVmVydGljYWwgPSBhbmNob3JBbGlnbi52ZXJ0aWNhbDtcbiAgICBjb25zdCBlbGVtZW50SG9yaXpvbnRhbCA9IGVsZW1lbnRBbGlnbi5ob3Jpem9udGFsO1xuICAgIGNvbnN0IGVsZW1lbnRWZXJ0aWNhbCA9IGVsZW1lbnRBbGlnbi52ZXJ0aWNhbDtcblxuICAgIGxldCBob3Jpem9udGFsTWFyZ2luID0gbWFyZ2luLmhvcml6b250YWwgfHwgMDtcbiAgICBsZXQgdmVydGljYWxNYXJnaW4gPSBtYXJnaW4udmVydGljYWwgfHwgMDtcblxuICAgIGxldCB0b3AgPSBhbmNob3JSZWN0LnRvcDtcbiAgICBsZXQgbGVmdCA9IGFuY2hvclJlY3QubGVmdDtcblxuICAgIGlmIChhbmNob3JWZXJ0aWNhbCA9PT0gcG9pbnQuYm90dG9tKSB7XG4gICAgICAgIHRvcCArPSBhbmNob3JSZWN0LmhlaWdodDtcbiAgICB9XG5cbiAgICBpZiAoYW5jaG9yVmVydGljYWwgPT09IHBvaW50LmNlbnRlciB8fCBhbmNob3JWZXJ0aWNhbCA9PT0gcG9pbnQubWlkZGxlKSB7XG4gICAgICAgIHRvcCArPSBNYXRoLnJvdW5kKGFuY2hvclJlY3QuaGVpZ2h0IC8gMik7XG4gICAgfVxuXG4gICAgaWYgKGVsZW1lbnRWZXJ0aWNhbCA9PT0gcG9pbnQuYm90dG9tKSB7XG4gICAgICAgIHRvcCAtPSBlbGVtZW50UmVjdC5oZWlnaHQ7XG4gICAgICAgIHZlcnRpY2FsTWFyZ2luICo9IC0xO1xuICAgIH1cblxuICAgIGlmIChlbGVtZW50VmVydGljYWwgPT09IHBvaW50LmNlbnRlciB8fCBlbGVtZW50VmVydGljYWwgPT09IHBvaW50Lm1pZGRsZSkge1xuICAgICAgICB0b3AgLT0gTWF0aC5yb3VuZChlbGVtZW50UmVjdC5oZWlnaHQgLyAyKTtcbiAgICAgICAgdmVydGljYWxNYXJnaW4gKj0gLTE7XG4gICAgfVxuXG4gICAgaWYgKGFuY2hvckhvcml6b250YWwgPT09IHBvaW50LnJpZ2h0KSB7XG4gICAgICAgIGxlZnQgKz0gYW5jaG9yUmVjdC53aWR0aDtcbiAgICB9XG5cbiAgICBpZiAoYW5jaG9ySG9yaXpvbnRhbCA9PT0gcG9pbnQuY2VudGVyIHx8IGFuY2hvckhvcml6b250YWwgPT09IHBvaW50Lm1pZGRsZSkge1xuICAgICAgICBsZWZ0ICs9IE1hdGgucm91bmQoYW5jaG9yUmVjdC53aWR0aCAvIDIpO1xuICAgIH1cblxuICAgIGlmIChlbGVtZW50SG9yaXpvbnRhbCA9PT0gcG9pbnQucmlnaHQpIHtcbiAgICAgICAgbGVmdCAtPSBlbGVtZW50UmVjdC53aWR0aDtcbiAgICAgICAgaG9yaXpvbnRhbE1hcmdpbiAqPSAtMTtcbiAgICB9XG5cbiAgICBpZiAoZWxlbWVudEhvcml6b250YWwgPT09IHBvaW50LmNlbnRlciB8fCBlbGVtZW50SG9yaXpvbnRhbCA9PT0gcG9pbnQubWlkZGxlKSB7XG4gICAgICAgIGxlZnQgLT0gTWF0aC5yb3VuZChlbGVtZW50UmVjdC53aWR0aCAvIDIpO1xuICAgICAgICBob3Jpem9udGFsTWFyZ2luICo9IC0xO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIHRvcDogdG9wICsgdmVydGljYWxNYXJnaW4sXG4gICAgICAgIGxlZnQ6IGxlZnQgKyBob3Jpem9udGFsTWFyZ2luXG4gICAgfTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGFsaWduO1xuIiwiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gYWRkU2Nyb2xsKHJlY3QsIHNjcm9sbCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIHRvcDogcmVjdC50b3AgKyBzY3JvbGwueSxcbiAgICAgICAgbGVmdDogcmVjdC5sZWZ0ICsgc2Nyb2xsLngsXG4gICAgICAgIGhlaWdodDogcmVjdC5oZWlnaHQsXG4gICAgICAgIHdpZHRoOiByZWN0LndpZHRoXG4gICAgfTtcbn1cbiIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFwcGx5TG9jYXRpb25PZmZzZXQocmVjdCwgbG9jYXRpb24sIGlzT2Zmc2V0Qm9keSkge1xuICAgIGxldCB7IHRvcCwgbGVmdCB9ID0gcmVjdDtcblxuICAgIGlmIChpc09mZnNldEJvZHkpIHtcbiAgICAgICAgbGVmdCA9IDA7XG4gICAgICAgIHRvcCA9IDA7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgdG9wOiB0b3AgKyBsb2NhdGlvbi50b3AsXG4gICAgICAgIGxlZnQ6IGxlZnQgKyBsb2NhdGlvbi5sZWZ0LFxuICAgICAgICBoZWlnaHQ6IHJlY3QuaGVpZ2h0LFxuICAgICAgICB3aWR0aDogcmVjdC53aWR0aFxuICAgIH07XG59XG4iLCJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBvd25lckRvY3VtZW50KGVsZW1lbnQpIHtcbiAgICByZXR1cm4gZWxlbWVudC5vd25lckRvY3VtZW50IHx8IGVsZW1lbnQuZG9jdW1lbnQgfHwgZWxlbWVudDtcbn1cbiIsImltcG9ydCBvd25lckRvY3VtZW50IGZyb20gJy4vb3duZXItZG9jdW1lbnQnO1xuXG5jb25zdCBnZXRXaW5kb3cgPSAoZWxlbWVudCkgPT4gb3duZXJEb2N1bWVudChlbGVtZW50KS5kZWZhdWx0VmlldztcblxuZXhwb3J0IGRlZmF1bHQgZ2V0V2luZG93O1xuIiwiaW1wb3J0IG93bmVyRG9jdW1lbnQgZnJvbSAnLi9vd25lci1kb2N1bWVudCc7XG5cbmNvbnN0IGdldERvY3VtZW50ID0gKGVsZW1lbnQpID0+IG93bmVyRG9jdW1lbnQoZWxlbWVudCkuZG9jdW1lbnRFbGVtZW50O1xuXG5leHBvcnQgZGVmYXVsdCBnZXREb2N1bWVudDtcbiIsImxldCBjYWNoZWRXaWR0aCA9IDA7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHNjcm9sbGJhcldpZHRoKCkge1xuICAgIGlmICghY2FjaGVkV2lkdGggJiYgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICBjb25zdCBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xuXG4gICAgICAgIGRpdi5zdHlsZS5jc3NUZXh0ID0gXCJvdmVyZmxvdzpzY3JvbGw7b3ZlcmZsb3cteDpoaWRkZW47em9vbToxO2NsZWFyOmJvdGg7ZGlzcGxheTpibG9ja1wiO1xuICAgICAgICBkaXYuaW5uZXJIVE1MID0gXCImbmJzcDtcIjtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXYpO1xuXG4gICAgICAgIGNhY2hlZFdpZHRoID0gZGl2Lm9mZnNldFdpZHRoIC0gZGl2LnNjcm9sbFdpZHRoO1xuXG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZGl2KTtcbiAgICB9XG5cbiAgICByZXR1cm4gY2FjaGVkV2lkdGg7XG59XG4iLCJpbXBvcnQgd25kIGZyb20gJy4vd2luZG93JztcbmltcG9ydCBnZXREb2N1bWVudCBmcm9tICcuL2RvY3VtZW50JztcbmltcG9ydCBzY3JvbGxiYXJXaWR0aCBmcm9tICcuL3Njcm9sbGJhci13aWR0aCc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHdpbmRvd1ZpZXdwb3J0KGVsZW1lbnQpIHtcbiAgICBjb25zdCB3aW4gPSB3bmQoZWxlbWVudCk7XG4gICAgY29uc3QgZG9jdW1lbnQgPSBnZXREb2N1bWVudChlbGVtZW50KTtcbiAgICBjb25zdCByZXN1bHQgPSB7XG4gICAgICAgIGhlaWdodDogd2luLmlubmVySGVpZ2h0LFxuICAgICAgICB3aWR0aDogd2luLmlubmVyV2lkdGhcbiAgICB9O1xuXG4gICAgaWYgKGRvY3VtZW50LnNjcm9sbEhlaWdodCAtIGRvY3VtZW50LmNsaWVudEhlaWdodCA+IDApIHtcbiAgICAgICAgcmVzdWx0LndpZHRoIC09IHNjcm9sbGJhcldpZHRoKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cbiIsImltcG9ydCB3aW5kb3dWaWV3cG9ydCBmcm9tICcuL3dpbmRvdy12aWV3cG9ydCc7XG5cbmNvbnN0IGJvdW5kaW5nT2Zmc2V0ID0gKGVsZW1lbnQpID0+IHtcbiAgICBpZiAoIWVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KSB7XG4gICAgICAgIGNvbnN0IHZpZXdwb3J0ID0gd2luZG93Vmlld3BvcnQoZWxlbWVudCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBib3R0b206IHZpZXdwb3J0LmhlaWdodCxcbiAgICAgICAgICAgIGxlZnQ6IDAsXG4gICAgICAgICAgICByaWdodDogdmlld3BvcnQud2lkdGgsXG4gICAgICAgICAgICB0b3A6IDBcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdCB7IGJvdHRvbSwgbGVmdCwgcmlnaHQsIHRvcCB9ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIHJldHVybiB7XG4gICAgICAgIGJvdHRvbSxcbiAgICAgICAgbGVmdCxcbiAgICAgICAgcmlnaHQsXG4gICAgICAgIHRvcFxuICAgIH07XG59O1xuXG5leHBvcnQgZGVmYXVsdCBib3VuZGluZ09mZnNldDtcbiIsImltcG9ydCBkb2N1bWVudEVsZW1lbnQgZnJvbSAnLi9kb2N1bWVudCc7XG5cbmNvbnN0IG9mZnNldFBhcmVudCA9IChlbGVtZW50KSA9PiB7XG4gICAgbGV0IG9mZnNldFBhcmVudCA9IGVsZW1lbnQub2Zmc2V0UGFyZW50O1xuXG4gICAgd2hpbGUgKG9mZnNldFBhcmVudCAmJiBvZmZzZXRQYXJlbnQuc3R5bGUucG9zaXRpb24gPT09IFwic3RhdGljXCIpIHtcbiAgICAgICAgb2Zmc2V0UGFyZW50ID0gb2Zmc2V0UGFyZW50Lm9mZnNldFBhcmVudDtcbiAgICB9XG5cbiAgICByZXR1cm4gb2Zmc2V0UGFyZW50IHx8IGRvY3VtZW50RWxlbWVudChlbGVtZW50KTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IG9mZnNldFBhcmVudDtcbiIsImltcG9ydCBvZmZzZXRQYXJlbnQgZnJvbSAnLi9vZmZzZXQtcGFyZW50JztcblxuY29uc3QgaXNCb2R5T2Zmc2V0ID0gKGVsZW1lbnQpID0+IChvZmZzZXRQYXJlbnQoZWxlbWVudCkgPT09IGVsZW1lbnQub3duZXJEb2N1bWVudC5ib2R5KTtcblxuZXhwb3J0IGRlZmF1bHQgaXNCb2R5T2Zmc2V0O1xuIiwiY29uc3QgcmVjdE9mSGlkZGVuRWxlbWVudCA9IChlbGVtZW50KSA9PiB7XG4gICAgY29uc3QgeyBkaXNwbGF5LCBsZWZ0LCBwb3NpdGlvbiB9ID0gZWxlbWVudC5zdHlsZTtcblxuICAgIGVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICcnO1xuICAgIGVsZW1lbnQuc3R5bGUubGVmdCA9ICctMTAwMDBweCc7XG4gICAgZWxlbWVudC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG5cbiAgICBjb25zdCByZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICAgIGVsZW1lbnQuc3R5bGUuZGlzcGxheSA9IGRpc3BsYXk7XG4gICAgZWxlbWVudC5zdHlsZS5sZWZ0ID0gbGVmdDtcbiAgICBlbGVtZW50LnN0eWxlLnBvc2l0aW9uID0gcG9zaXRpb247XG5cbiAgICByZXR1cm4gcmVjdDtcbn07XG5cbmNvbnN0IG9mZnNldCA9IChlbGVtZW50KSA9PiB7XG4gICAgbGV0IHJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGxldCB7IGxlZnQsIHRvcCB9ID0gcmVjdDtcblxuICAgIGlmICghcmVjdC5oZWlnaHQgJiYgIXJlY3Qud2lkdGgpIHtcbiAgICAgICAgcmVjdCA9IHJlY3RPZkhpZGRlbkVsZW1lbnQoZWxlbWVudCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgdG9wOiB0b3AsXG4gICAgICAgIGxlZnQ6IGxlZnQsXG4gICAgICAgIGhlaWdodDogcmVjdC5oZWlnaHQsXG4gICAgICAgIHdpZHRoOiByZWN0LndpZHRoXG4gICAgfTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IG9mZnNldDtcbiIsImV4cG9ydCBkZWZhdWx0IChlbGVtZW50LCB1bnRpbCkgPT4ge1xuICAgIGNvbnN0IHJlc3VsdCA9IFtdO1xuICAgIGxldCBuZXh0ID0gZWxlbWVudC5wYXJlbnROb2RlO1xuXG4gICAgd2hpbGUgKG5leHQpIHtcbiAgICAgICAgcmVzdWx0LnB1c2gobmV4dCk7XG5cbiAgICAgICAgaWYgKG5leHQgPT09IHVudGlsKSB7IGJyZWFrOyB9XG5cbiAgICAgICAgbmV4dCA9IG5leHQucGFyZW50Tm9kZTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufTtcbiIsImltcG9ydCBkb2NFbGVtZW50IGZyb20gJy4vZG9jdW1lbnQnO1xuaW1wb3J0IHduZCBmcm9tICcuL3dpbmRvdyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHNjcm9sbFBvc2l0aW9uKGVsZW1lbnQpIHtcbiAgICBjb25zdCBkb2N1bWVudEVsZW1lbnQgPSBkb2NFbGVtZW50KGVsZW1lbnQpO1xuICAgIGNvbnN0IHdpbiA9IHduZChlbGVtZW50KTtcblxuICAgIHJldHVybiB7XG4gICAgICAgIHg6IHdpbi5wYWdlWE9mZnNldCB8fCBkb2N1bWVudEVsZW1lbnQuc2Nyb2xsTGVmdCB8fCAwLFxuICAgICAgICB5OiB3aW4ucGFnZVlPZmZzZXQgfHwgZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcCB8fCAwXG4gICAgfTtcbn1cbiIsImltcG9ydCBzY3JvbGxQb3NpdGlvbiBmcm9tICcuL3Njcm9sbC1wb3NpdGlvbic7XG5cbmV4cG9ydCBkZWZhdWx0IChlbGVtZW50KSA9PiB7XG4gICAgaWYgKGVsZW1lbnQgPT09IChlbGVtZW50Lm93bmVyRG9jdW1lbnQgfHwge30pLmJvZHkpIHtcbiAgICAgICAgcmV0dXJuIHNjcm9sbFBvc2l0aW9uKGVsZW1lbnQpO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAgIHg6IGVsZW1lbnQuc2Nyb2xsTGVmdCxcbiAgICAgICAgeTogZWxlbWVudC5zY3JvbGxUb3BcbiAgICB9O1xufTtcbiIsImltcG9ydCBvZmZzZXRQYXJlbnQgZnJvbSAnLi9vZmZzZXQtcGFyZW50JztcbmltcG9ydCBlbGVtZW50U2Nyb2xsUG9zaXRpb24gZnJvbSAnLi9lbGVtZW50LXNjcm9sbC1wb3NpdGlvbic7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHBhcmVudFNjcm9sbFBvc2l0aW9uKGVsZW1lbnQpIHtcbiAgICBjb25zdCBwYXJlbnQgPSBvZmZzZXRQYXJlbnQoZWxlbWVudCk7XG5cbiAgICByZXR1cm4gcGFyZW50ID8gZWxlbWVudFNjcm9sbFBvc2l0aW9uKHBhcmVudCkgOiB7IHg6IDAsIHk6IDAgfTtcbn1cbiIsImltcG9ydCBvZmZzZXRQYXJlbnQgZnJvbSAnLi9vZmZzZXQtcGFyZW50JztcbmltcG9ydCBvZmZzZXRSZWN0IGZyb20gJy4vb2Zmc2V0JztcbmltcG9ydCB3bmQgZnJvbSAnLi93aW5kb3cnO1xuXG5jb25zdCBwb3NpdGlvbiA9IChlbGVtZW50LCBwYXJlbnQpID0+IHtcbiAgICBjb25zdCB3aW4gPSB3bmQoZWxlbWVudCk7XG4gICAgY29uc3QgZWxlbWVudFN0eWxlcyA9IHdpbi5nZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpO1xuICAgIGNvbnN0IG9mZnNldCA9IG9mZnNldFJlY3QoZWxlbWVudCk7XG4gICAgY29uc3QgcGFyZW50RWxlbWVudCA9IHBhcmVudCB8fCBvZmZzZXRQYXJlbnQoZWxlbWVudCk7XG5cbiAgICBjb25zdCBvd25lckRvY3VtZW50ID0gZWxlbWVudC5vd25lckRvY3VtZW50O1xuICAgIGNvbnN0IHVzZVJlbGF0aXZlID0gcGFyZW50RWxlbWVudCAhPT0gb3duZXJEb2N1bWVudC5ib2R5ICYmIHBhcmVudEVsZW1lbnQgIT09IG93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuXG4gICAgbGV0IHBhcmVudE9mZnNldCA9IHsgdG9wOiAwLCBsZWZ0OiAwIH07XG5cbiAgICBpZiAoZWxlbWVudFN0eWxlcy5wb3NpdGlvbiAhPT0gXCJmaXhlZFwiICYmIHVzZVJlbGF0aXZlKSB7XG4gICAgICAgIGNvbnN0IHBhcmVudFN0eWxlcyA9IHdpbi5nZXRDb21wdXRlZFN0eWxlKHBhcmVudEVsZW1lbnQpO1xuXG4gICAgICAgIHBhcmVudE9mZnNldCA9IG9mZnNldFJlY3QocGFyZW50RWxlbWVudCk7XG4gICAgICAgIHBhcmVudE9mZnNldC50b3AgKz0gcGFyc2VJbnQocGFyZW50U3R5bGVzLmJvcmRlclRvcFdpZHRoLCAxMCk7XG4gICAgICAgIHBhcmVudE9mZnNldC5sZWZ0ICs9IHBhcnNlSW50KHBhcmVudFN0eWxlcy5ib3JkZXJMZWZ0V2lkdGgsIDEwKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB0b3A6IG9mZnNldC50b3AgLSBwYXJlbnRPZmZzZXQudG9wLFxuICAgICAgICBsZWZ0OiBvZmZzZXQubGVmdCAtIHBhcmVudE9mZnNldC5sZWZ0LFxuICAgICAgICBoZWlnaHQ6IG9mZnNldC5oZWlnaHQsXG4gICAgICAgIHdpZHRoOiBvZmZzZXQud2lkdGhcbiAgICB9O1xufTtcblxuZXhwb3J0IGRlZmF1bHQgcG9zaXRpb247XG4iLCJpbXBvcnQgZWxlbWVudFNjcm9sbFBvc2l0aW9uIGZyb20gJy4vZWxlbWVudC1zY3JvbGwtcG9zaXRpb24nO1xuaW1wb3J0IHBhcmVudFNjcm9sbFBvc2l0aW9uIGZyb20gJy4vcGFyZW50LXNjcm9sbC1wb3NpdGlvbic7XG5cbmV4cG9ydCBkZWZhdWx0IChvZmZzZXRQYXJlbnRFbGVtZW50LCBlbGVtZW50KSA9PiAoIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tYXJyb3ctY29uZGl0aW9uXG4gICAgb2Zmc2V0UGFyZW50RWxlbWVudCA/IGVsZW1lbnRTY3JvbGxQb3NpdGlvbihvZmZzZXRQYXJlbnRFbGVtZW50KSA6IHBhcmVudFNjcm9sbFBvc2l0aW9uKGVsZW1lbnQpXG4pO1xuIiwiaW1wb3J0IG9mZnNldFBhcmVudFNjcm9sbFBvc2l0aW9uIGZyb20gJy4vb2Zmc2V0LXBhcmVudC1zY3JvbGwtcG9zaXRpb24nO1xuaW1wb3J0IG9mZnNldFBhcmVudCBmcm9tICcuL29mZnNldC1wYXJlbnQnO1xuaW1wb3J0IHBvc2l0aW9uIGZyb20gJy4vcG9zaXRpb24nO1xuXG5leHBvcnQgZGVmYXVsdCAoZWxlbWVudCwgcGFyZW50KSA9PiB7XG4gICAgY29uc3Qgb2Zmc2V0UGFyZW50RWxlbWVudCA9IHBhcmVudCA/IG9mZnNldFBhcmVudChwYXJlbnQpIDogbnVsbDtcbiAgICBjb25zdCB7IHRvcCwgbGVmdCwgaGVpZ2h0LCB3aWR0aCB9ID0gcG9zaXRpb24oZWxlbWVudCwgb2Zmc2V0UGFyZW50RWxlbWVudCk7XG4gICAgY29uc3QgeyB4LCB5IH0gPSBvZmZzZXRQYXJlbnRTY3JvbGxQb3NpdGlvbihvZmZzZXRQYXJlbnRFbGVtZW50LCBlbGVtZW50KTtcblxuICAgIHJldHVybiB7XG4gICAgICAgIHRvcDogdG9wICsgeSxcbiAgICAgICAgbGVmdDogbGVmdCArIHgsXG4gICAgICAgIGhlaWdodDogaGVpZ2h0LFxuICAgICAgICB3aWR0aDogd2lkdGhcbiAgICB9O1xufTtcbiIsImV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHJlbW92ZVNjcm9sbChyZWN0LCBzY3JvbGwpIHtcbiAgICByZXR1cm4ge1xuICAgICAgICB0b3A6IHJlY3QudG9wIC0gc2Nyb2xsLnksXG4gICAgICAgIGxlZnQ6IHJlY3QubGVmdCAtIHNjcm9sbC54LFxuICAgICAgICBoZWlnaHQ6IHJlY3QuaGVpZ2h0LFxuICAgICAgICB3aWR0aDogcmVjdC53aWR0aFxuICAgIH07XG59XG4iLCJleHBvcnQgZGVmYXVsdCB7XG4gICAgXCJmaXRcIjogXCJmaXRcIixcbiAgICBcImZsaXBcIjogXCJmbGlwXCJcbn07XG4iLCJpbXBvcnQgYWxpZ25Qb2ludCBmcm9tICcuL2FsaWduLXBvaW50JztcbmltcG9ydCBjb2xsaXNpb24gZnJvbSAnLi9jb2xsaXNpb24nO1xuXG5jb25zdCBmaXQgPSBmdW5jdGlvbihwb3NpdGlvbiwgc2l6ZSwgdmlld1BvcnRTaXplKSB7XG4gICAgbGV0IG91dHB1dCA9IDA7XG5cbiAgICBpZiAocG9zaXRpb24gKyBzaXplID4gdmlld1BvcnRTaXplKSB7XG4gICAgICAgIG91dHB1dCA9IHZpZXdQb3J0U2l6ZSAtIChwb3NpdGlvbiArIHNpemUpO1xuICAgIH1cblxuICAgIGlmIChwb3NpdGlvbiA8IDApIHtcbiAgICAgICAgb3V0cHV0ID0gLXBvc2l0aW9uO1xuICAgIH1cblxuICAgIHJldHVybiBvdXRwdXQ7XG59O1xuXG5jb25zdCBmbGlwID0gZnVuY3Rpb24oeyBvZmZzZXQsIHNpemUsIGFuY2hvclNpemUsIHZpZXdQb3J0U2l6ZSwgYW5jaG9yQWxpZ25Qb2ludCwgZWxlbWVudEFsaWduUG9pbnQsIG1hcmdpbiB9KSB7XG4gICAgbGV0IG91dHB1dCA9IDA7XG5cbiAgICBjb25zdCBpc1Bvc2l0aW9uQ2VudGVyZWQgPSBlbGVtZW50QWxpZ25Qb2ludCA9PT0gYWxpZ25Qb2ludC5jZW50ZXIgfHwgZWxlbWVudEFsaWduUG9pbnQgPT09IGFsaWduUG9pbnQubWlkZGxlO1xuICAgIGNvbnN0IGlzT3JpZ2luQ2VudGVyZWQgPSBhbmNob3JBbGlnblBvaW50ID09PSBhbGlnblBvaW50LmNlbnRlciB8fCBhbmNob3JBbGlnblBvaW50ID09PSBhbGlnblBvaW50Lm1pZGRsZTtcbiAgICBjb25zdCBtYXJnaW5Ub0FkZCA9IDIgKiBtYXJnaW47IC8vMnggdG8ga2VlcCBtYXJnaW4gYWZ0ZXIgZmxpcFxuXG4gICAgaWYgKGVsZW1lbnRBbGlnblBvaW50ICE9PSBhbmNob3JBbGlnblBvaW50ICYmICFpc1Bvc2l0aW9uQ2VudGVyZWQgJiYgIWlzT3JpZ2luQ2VudGVyZWQpIHtcbiAgICAgICAgY29uc3QgaXNCZWZvcmVBbmNob3IgPSBhbmNob3JBbGlnblBvaW50ID09PSBhbGlnblBvaW50LnRvcCB8fCBhbmNob3JBbGlnblBvaW50ID09PSBhbGlnblBvaW50LmxlZnQ7XG4gICAgICAgIGlmIChvZmZzZXQgPCAwICYmIGlzQmVmb3JlQW5jaG9yKSB7XG4gICAgICAgICAgICBvdXRwdXQgPSBzaXplICsgYW5jaG9yU2l6ZSArIG1hcmdpblRvQWRkO1xuICAgICAgICAgICAgaWYgKG9mZnNldCArIG91dHB1dCArIHNpemUgPiB2aWV3UG9ydFNpemUpIHtcbiAgICAgICAgICAgICAgICBvdXRwdXQgPSAwOyAvL3NraXAgZmxpcFxuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKG9mZnNldCA+PSAwICYmICFpc0JlZm9yZUFuY2hvcikge1xuICAgICAgICAgICAgaWYgKG9mZnNldCArIHNpemUgPiB2aWV3UG9ydFNpemUpIHtcbiAgICAgICAgICAgICAgICBvdXRwdXQgKz0gLShhbmNob3JTaXplICsgc2l6ZSArIG1hcmdpblRvQWRkKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9mZnNldCArIG91dHB1dCA8IDApIHtcbiAgICAgICAgICAgICAgICBvdXRwdXQgPSAwOyAvL3NraXAgZmxpcFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG91dHB1dDtcbn07XG5cbmNvbnN0IHJlc3RyaWN0VG9WaWV3ID0gKG9wdGlvbnMpID0+IHtcbiAgICBjb25zdCB7IGFuY2hvclJlY3QsIGFuY2hvckFsaWduLCBlbGVtZW50UmVjdCwgZWxlbWVudEFsaWduLCBjb2xsaXNpb25zLCB2aWV3UG9ydCwgbWFyZ2luID0ge30gfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgeyB0b3A6IGVsZW1lbnRUb3AsIGxlZnQ6IGVsZW1lbnRMZWZ0LCBoZWlnaHQ6IGVsZW1lbnRIZWlnaHQsIHdpZHRoOiBlbGVtZW50V2lkdGggfSA9IGVsZW1lbnRSZWN0O1xuICAgIGNvbnN0IHsgaGVpZ2h0OiB2aWV3UG9ydEhlaWdodCwgd2lkdGg6IHZpZXdQb3J0V2lkdGggfSA9IHZpZXdQb3J0O1xuICAgIGNvbnN0IGhvcml6b250YWxNYXJnaW4gPSBtYXJnaW4uaG9yaXpvbnRhbCB8fCAwO1xuICAgIGNvbnN0IHZlcnRpY2FsTWFyZ2luID0gbWFyZ2luLnZlcnRpY2FsIHx8IDA7XG5cbiAgICBsZXQgbGVmdCA9IDA7XG4gICAgbGV0IHRvcCA9IDA7XG5cbiAgICBjb25zdCBpc0hvcml6b250YWxGbGlwID0gY29sbGlzaW9ucy5ob3Jpem9udGFsID09PSBjb2xsaXNpb24uZmxpcDtcbiAgICBjb25zdCBpc1ZlcnRpY2FsRmxpcCA9IGNvbGxpc2lvbnMudmVydGljYWwgPT09IGNvbGxpc2lvbi5mbGlwO1xuXG4gICAgaWYgKGNvbGxpc2lvbnMudmVydGljYWwgPT09IGNvbGxpc2lvbi5maXQpIHtcbiAgICAgICAgdG9wICs9IGZpdChlbGVtZW50VG9wLCBlbGVtZW50SGVpZ2h0LCB2aWV3UG9ydEhlaWdodCk7XG4gICAgfVxuXG4gICAgaWYgKGNvbGxpc2lvbnMuaG9yaXpvbnRhbCA9PT0gY29sbGlzaW9uLmZpdCkge1xuICAgICAgICBsZWZ0ICs9IGZpdChlbGVtZW50TGVmdCwgZWxlbWVudFdpZHRoLCB2aWV3UG9ydFdpZHRoKTtcbiAgICB9XG5cbiAgICBpZiAoaXNWZXJ0aWNhbEZsaXApIHtcbiAgICAgICAgdG9wICs9IGZsaXAoe1xuICAgICAgICAgICAgbWFyZ2luOiB2ZXJ0aWNhbE1hcmdpbixcbiAgICAgICAgICAgIG9mZnNldDogZWxlbWVudFRvcCxcbiAgICAgICAgICAgIHNpemU6IGVsZW1lbnRIZWlnaHQsXG4gICAgICAgICAgICBhbmNob3JTaXplOiBhbmNob3JSZWN0LmhlaWdodCxcbiAgICAgICAgICAgIHZpZXdQb3J0U2l6ZTogdmlld1BvcnRIZWlnaHQsXG4gICAgICAgICAgICBhbmNob3JBbGlnblBvaW50OiBhbmNob3JBbGlnbi52ZXJ0aWNhbCxcbiAgICAgICAgICAgIGVsZW1lbnRBbGlnblBvaW50OiBlbGVtZW50QWxpZ24udmVydGljYWxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKGlzSG9yaXpvbnRhbEZsaXApIHtcbiAgICAgICAgbGVmdCArPSBmbGlwKHtcbiAgICAgICAgICAgIG1hcmdpbjogaG9yaXpvbnRhbE1hcmdpbixcbiAgICAgICAgICAgIG9mZnNldDogZWxlbWVudExlZnQsXG4gICAgICAgICAgICBzaXplOiBlbGVtZW50V2lkdGgsXG4gICAgICAgICAgICBhbmNob3JTaXplOiBhbmNob3JSZWN0LndpZHRoLFxuICAgICAgICAgICAgdmlld1BvcnRTaXplOiB2aWV3UG9ydFdpZHRoLFxuICAgICAgICAgICAgYW5jaG9yQWxpZ25Qb2ludDogYW5jaG9yQWxpZ24uaG9yaXpvbnRhbCxcbiAgICAgICAgICAgIGVsZW1lbnRBbGlnblBvaW50OiBlbGVtZW50QWxpZ24uaG9yaXpvbnRhbFxuICAgICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgZmxpcHBlZEhvcml6b250YWwgPSBpc0hvcml6b250YWxGbGlwICYmIGxlZnQgIT09IDA7XG4gICAgY29uc3QgZmxpcHBlZFZlcnRpY2FsID0gaXNWZXJ0aWNhbEZsaXAgJiYgdG9wICE9PSAwO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgZmxpcHBlZDogZmxpcHBlZEhvcml6b250YWwgfHwgZmxpcHBlZFZlcnRpY2FsLFxuICAgICAgICBmbGlwOiB7XG4gICAgICAgICAgICBob3Jpem9udGFsOiBmbGlwcGVkSG9yaXpvbnRhbCxcbiAgICAgICAgICAgIHZlcnRpY2FsOiBmbGlwcGVkVmVydGljYWxcbiAgICAgICAgfSxcbiAgICAgICAgb2Zmc2V0OiB7XG4gICAgICAgICAgICBsZWZ0OiBsZWZ0LFxuICAgICAgICAgICAgdG9wOiB0b3BcbiAgICAgICAgfVxuICAgIH07XG59O1xuXG5leHBvcnQgZGVmYXVsdCByZXN0cmljdFRvVmlldztcbiIsImV4cG9ydCBkZWZhdWx0IChlbGVtZW50KSA9PiB7XG4gICAgY29uc3QgcmVzdWx0ID0gW107XG5cbiAgICBsZXQgc2libGluZyA9IGVsZW1lbnQucGFyZW50Tm9kZS5maXJzdEVsZW1lbnRDaGlsZDtcblxuICAgIHdoaWxlIChzaWJsaW5nKSB7XG4gICAgICAgIGlmIChzaWJsaW5nICE9PSBlbGVtZW50KSB7XG4gICAgICAgICAgICByZXN1bHQucHVzaChzaWJsaW5nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNpYmxpbmcgPSBzaWJsaW5nLm5leHRFbGVtZW50U2libGluZztcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn07XG4iLCIvKiBlc2xpbnQtZGlzYWJsZSBuby1sb29wLWZ1bmMgKi9cblxuaW1wb3J0IHBhcmVudHMgZnJvbSAnLi9wYXJlbnRzJztcbmltcG9ydCBzaWJsaW5ncyBmcm9tICcuL3NpYmxpbmdzJztcblxuZXhwb3J0IGRlZmF1bHQgKGFuY2hvciwgY29udGFpbmVyKSA9PiB7XG4gICAgY29uc3QgcGFyZW50RWxlbWVudHMgPSBwYXJlbnRzKGFuY2hvcik7XG4gICAgbGV0IGNvbnRhaW5lckVsZW1lbnQgPSBjb250YWluZXI7XG4gICAgbGV0IHNpYmxpbmdFbGVtZW50cztcbiAgICBsZXQgcmVzdWx0O1xuXG4gICAgd2hpbGUgKGNvbnRhaW5lckVsZW1lbnQpIHtcbiAgICAgICAgc2libGluZ0VsZW1lbnRzID0gc2libGluZ3MoY29udGFpbmVyRWxlbWVudCk7XG5cbiAgICAgICAgcmVzdWx0ID0gcGFyZW50RWxlbWVudHMucmVkdWNlKFxuICAgICAgICAgICAgKGxpc3QsIHApID0+IGxpc3QuY29uY2F0KHNpYmxpbmdFbGVtZW50cy5maWx0ZXIocyA9PiBzID09PSBwKSksXG4gICAgICAgICAgICBbXVxuICAgICAgICApWzBdO1xuXG4gICAgICAgIGlmIChyZXN1bHQpIHsgYnJlYWs7IH1cblxuICAgICAgICBjb250YWluZXJFbGVtZW50ID0gY29udGFpbmVyRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG59O1xuXG4iXSwibmFtZXMiOlsiY29uc3QiLCJsZXQiLCJwb2ludCIsInduZCIsImRvY3VtZW50RWxlbWVudCIsImRvY0VsZW1lbnQiLCJvZmZzZXQiLCJvZmZzZXRSZWN0Il0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsaUJBQWU7SUFDWCxRQUFRLEVBQUUsUUFBUTtJQUNsQixRQUFRLEVBQUUsUUFBUTtJQUNsQixRQUFRLEVBQUUsUUFBUTtJQUNsQixNQUFNLEVBQUUsTUFBTTtJQUNkLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLEtBQUssRUFBRSxLQUFLO0NBQ2YsQ0FBQzs7QUNMRkEsSUFBTSxLQUFLLEdBQUcsVUFBQyxPQUFPLEVBQUU7SUFDcEIsSUFBUSxVQUFVO0lBQUUsSUFBQSxXQUFXO0lBQUUsSUFBQSxXQUFXO0lBQUUsSUFBQSxZQUFZO0lBQVcsK0RBQUEsRUFBRSxDQUFqRTtJQUNOQSxJQUFNLGdCQUFnQixHQUFHLFdBQVcsQ0FBQyxVQUFVLENBQUM7SUFDaERBLElBQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQyxRQUFRLENB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

@@ -6,3 +6,3 @@ {

"license": "Apache-2.0",
"version": "1.6.0-dev.201805230752",
"version": "1.6.0",
"main": "dist/npm/main.js",

@@ -9,0 +9,0 @@ "module": "dist/es/main.js",

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