@kepler.gl/deckgl-layers 3.3.0-alpha.10 → 3.3.0-alpha.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/globe/atmosphere-layer.js +1 -1
- package/dist/cjs/globe/globe-layers.js +1 -1
- package/dist/cjs/globe/globe-stars-layer.js +1 -1
- package/dist/cjs/globe/globe-stars-layer.spec.js +1 -1
- package/dist/cjs/globe/globe-view.js +1 -1
- package/dist/cjs/grid-layer/enhanced-cpu-grid-layer.js +1 -1
- package/dist/cjs/hexagon-layer/enhanced-hexagon-layer.js +1 -1
- package/dist/cjs/raster/webgl/texture/mask.js +5 -2
- package/dist/cjs/wms/wms-layer.js +1 -1
- package/dist/esm/globe/atmosphere-layer.js +1 -1
- package/dist/esm/globe/globe-layers.js +1 -1
- package/dist/esm/globe/globe-stars-layer.js +1 -1
- package/dist/esm/globe/globe-stars-layer.spec.js +1 -1
- package/dist/esm/globe/globe-view.js +1 -1
- package/dist/esm/grid-layer/enhanced-cpu-grid-layer.js +1 -1
- package/dist/esm/hexagon-layer/enhanced-hexagon-layer.js +1 -1
- package/dist/esm/raster/webgl/texture/mask.js +5 -2
- package/dist/esm/wms/wms-layer.js +1 -1
- package/package.json +4 -4
|
@@ -127,4 +127,4 @@ _defineProperty(ScaleEnhancedHexagonLayer, "defaultProps", _objectSpread(_object
|
|
|
127
127
|
}));
|
|
128
128
|
export { ScaleEnhancedHexagonLayer as default };
|
|
129
129
|
ScaleEnhancedHexagonLayer.layerName = 'ScaleEnhancedHexagonLayer';
|
|
130
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJIZXhhZ29uTGF5ZXIiLCJlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlIiwiZW5yaWNoZWRSZW5kZXJMYXllcnMiLCJtYWtlR2xvYmVDZWxsTGF5ZXJDbGFzcyIsInJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydCIsIlRISVJEX1BJIiwiTWF0aCIsIlBJIiwiSGV4YmluVmVydGljZXMiLCJBcnJheSIsImZyb20iLCJsZW5ndGgiLCJfIiwiaSIsImFuZ2xlIiwic2luIiwiY29zIiwiZ2V0SGV4YmluQ2VudHJvaWQiLCJpZCIsInJhZGl1cyIsIkRJU1RfWCIsIkRJU1RfWSIsIlNjYWxlRW5oYW5jZWRIZXhhZ29uTGF5ZXIiLCJfSGV4YWdvbkxheWVyIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NhbGxTdXBlciIsImFyZ3VtZW50cyIsIl9pbmhlcml0cyIsIl9jcmVhdGVDbGFzcyIsImtleSIsInZhbHVlIiwiX29uQWdncmVnYXRpb25VcGRhdGUiLCJfcmVmIiwiY2hhbm5lbCIsInJlbmRlckxheWVycyIsIl91cGRhdGVCaW5PcHRpb25zIiwiX3RoaXMiLCJwcm90b3R5cGUiLCJjYWxsIiwiZ2V0U3ViTGF5ZXJDbGFzcyIsInN1YkxheWVySWQiLCJEZWZhdWx0TGF5ZXJDbGFzcyIsInJlc29sdmVkIiwiX3N1cGVyUHJvcEdldCIsImdldFBpY2tpbmdJbmZvIiwicGFyYW1zIiwiaW5mbyIsIm9iamVjdCIsIl90aGlzJHByb3BzJGNvdmVyYWdlIiwiX2hleE9yaWdpbkNvbW1vbiQiLCJfaGV4T3JpZ2luQ29tbW9uJDIiLCJfcmVmMiIsInN0YXRlIiwicmFkaXVzQ29tbW9uIiwiaGV4T3JpZ2luQ29tbW9uIiwiYWdncmVnYXRvclZpZXdwb3J0IiwiY292ZXJhZ2UiLCJwcm9wcyIsImNvbnNvbGUiLCJlcnJvciIsIl9yZWYzIiwiY29sIiwicm93IiwiY2VudHJvaWQiLCJveCIsIm95IiwiciIsIm91dGxpbmUiLCJ2eCIsInZ5IiwicHVzaCIsInVucHJvamVjdEZsYXQiLCJjZWxsT3V0bGluZSIsIl9kZWZpbmVQcm9wZXJ0eSIsIl9vYmplY3RTcHJlYWQiLCJkZWZhdWx0UHJvcHMiLCJncHVBZ2dyZWdhdGlvbiIsImRlZmF1bHQiLCJsYXllck5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaGV4YWdvbi1sYXllci9lbmhhbmNlZC1oZXhhZ29uLWxheWVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7SGV4YWdvbkxheWVyLCBIZXhhZ29uTGF5ZXJQaWNraW5nSW5mb30gZnJvbSAnQGRlY2suZ2wvYWdncmVnYXRpb24tbGF5ZXJzJztcbmltcG9ydCB7R2V0UGlja2luZ0luZm9QYXJhbXMsIExheWVyLCBQaWNraW5nSW5mbywgVmlld3BvcnR9IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xuaW1wb3J0IHtlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlLCBlbnJpY2hlZFJlbmRlckxheWVyc30gZnJvbSAnLi4vbGF5ZXItdXRpbHMvYWdncmVnYXRpb24tdXRpbHMnO1xuaW1wb3J0IHtcbiAgbWFrZUdsb2JlQ2VsbExheWVyQ2xhc3MsXG4gIHJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydFxufSBmcm9tICcuLi9sYXllci11dGlscy9nbG9iZS1jZWxsLXV0aWxzJztcblxuY29uc3QgVEhJUkRfUEkgPSBNYXRoLlBJIC8gMztcbmNvbnN0IEhleGJpblZlcnRpY2VzID0gQXJyYXkuZnJvbSh7bGVuZ3RoOiA2fSwgKF8sIGkpID0+IHtcbiAgY29uc3QgYW5nbGUgPSBpICogVEhJUkRfUEk7XG4gIHJldHVybiBbTWF0aC5zaW4oYW5nbGUpLCAtTWF0aC5jb3MoYW5nbGUpXTtcbn0pO1xuXG5mdW5jdGlvbiBnZXRIZXhiaW5DZW50cm9pZChpZDogW251bWJlciwgbnVtYmVyXSwgcmFkaXVzOiBudW1iZXIpOiBbbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgRElTVF9YID0gMiAqIE1hdGguc2luKFRISVJEX1BJKTtcbiAgY29uc3QgRElTVF9ZID0gMS41O1xuICByZXR1cm4gWyhpZFswXSArIChpZFsxXSAmIDEpIC8gMikgKiByYWRpdXMgKiBESVNUX1gsIGlkWzFdICogcmFkaXVzICogRElTVF9ZXTtcbn1cblxuaW50ZXJmYWNlIEhleEludGVybmFsU3RhdGUge1xuICByYWRpdXNDb21tb24/OiBudW1iZXI7XG4gIGhleE9yaWdpbkNvbW1vbj86IFtudW1iZXIsIG51bWJlcl07XG4gIGFnZ3JlZ2F0b3JWaWV3cG9ydD86IFZpZXdwb3J0ICYge3VucHJvamVjdEZsYXQoeHk6IG51bWJlcltdKTogbnVtYmVyW119O1xufVxuXG5pbnRlcmZhY2UgSGV4UGlja2luZ09iamVjdCB7XG4gIGNvbDogbnVtYmVyO1xuICByb3c6IG51bWJlcjtcbiAgY2VsbE91dGxpbmU/OiBudW1iZXJbXVtdO1xuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG4vKipcbiAqIEluIGRlY2suZ2wgOSwgSGV4YWdvbkxheWVyIG5hdGl2ZWx5IHN1cHBvcnRzIENQVSBhZ2dyZWdhdGlvbiB2aWEgZ3B1QWdncmVnYXRpb246IGZhbHNlLFxuICogY3VzdG9tIGdldENvbG9yVmFsdWUvZ2V0RWxldmF0aW9uVmFsdWUgYWNjZXNzb3JzLCBwZXJjZW50aWxlIGZpbHRlcmluZywgYW5kIHNjYWxlIHR5cGVzLlxuICpcbiAqIFdlIG92ZXJyaWRlIGdldFBpY2tpbmdJbmZvIHRvIGFkZCBgY2VsbE91dGxpbmVgIOKAlCBhbiBhcnJheSBvZiBbbG5nLCBsYXRdIGNvb3JkaW5hdGVzXG4gKiBjb21wdXRlZCBpbiBjb21tb24gc3BhY2Ugc28gdGhlIG91dGxpbmUgYWxpZ25zIHdpdGggcmVuZGVyZWQgY2VsbHMgYXQgYWxsIGxhdGl0dWRlcy5cbiAqXG4gKiBXZSBhbHNvIG92ZXJyaWRlIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIHRvIHNlbmQgcGVyLWJpbiBhZ2dyZWdhdGVkIHZhbHVlcyB0aHJvdWdoXG4gKiBvblNldENvbG9yRG9tYWluIHNvIHRoZSBsZWdlbmQgY2FuIGNvbXB1dGUgcHJvcGVyIHF1YW50aWxlL2N1c3RvbSBicmVha3MuXG4gKi9cbi8vIEB0cy1leHBlY3QtZXJyb3IgLS0gb3ZlcnJpZGluZyBwcml2YXRlIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIHRvIGVucmljaCB0aGUgb25TZXRDb2xvckRvbWFpbiBjYWxsYmFja1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2NhbGVFbmhhbmNlZEhleGFnb25MYXllciBleHRlbmRzIEhleGFnb25MYXllcjxhbnk+IHtcbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAuLi5IZXhhZ29uTGF5ZXIuZGVmYXVsdFByb3BzLFxuICAgIGdwdUFnZ3JlZ2F0aW9uOiBmYWxzZVxuICB9O1xuXG4gIC8vIEhBQ0s6IGRlY2suZ2wgOSdzIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIGlzIHByaXZhdGUgYW5kIGl0cyBvblNldENvbG9yRG9tYWluXG4gIC8vIGNhbGxiYWNrIG9ubHkgcHJvdmlkZXMgW21pbiwgbWF4XS4gIFRoYXQgaXMgc3VmZmljaWVudCBmb3IgcXVhbnRpemUvbGluZWFyXG4gIC8vIHNjYWxlcyBidXQgZDMuc2NhbGVRdWFudGlsZSBuZWVkcyB0aGUgKmZ1bGwgc29ydGVkIGFycmF5KiBvZiBiaW4gdmFsdWVzIHRvXG4gIC8vIGNvbXB1dGUgY29ycmVjdCBicmVhayBwb2ludHMg4oCUIHdpdGhvdXQgaXQgdGhlIGxlZ2VuZCBsYWJlbHMgYXJlIHdyb25nXG4gIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlKHtjaGFubmVsfToge2NoYW5uZWw6IG51bWJlcn0pIHtcbiAgICBlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlKHRoaXMsIEhleGFnb25MYXllciwgY2hhbm5lbCk7XG4gIH1cblxuICByZW5kZXJMYXllcnMoKSB7XG4gICAgcmV0dXJuIGVucmljaGVkUmVuZGVyTGF5ZXJzKHRoaXMsIEhleGFnb25MYXllcik7XG4gIH1cblxuICAvLyBJbiBnbG9iZSBtb2RlLCBydW4gZGVjay5nbCdzIGJpbi9jb21tb24tc3BhY2Ugc2V0dXAgdW5kZXIgYSBXZWJNZXJjYXRvclZpZXdwb3J0XG4gIC8vIHNvIGJpbm5pbmcgYW5kIHRoZSBjZWxsIHNoYWRlcidzIGZsYXQgY29tbW9uIHNwYWNlIGFyZSBnZW51aW5lIFdlYiBNZXJjYXRvciwgd2hpY2hcbiAgLy8gdGhlIGdsb2JlIGNlbGwgc3ViY2xhc3MgdGhlbiByZW1hcHMgb250byB0aGUgc3BoZXJlIHN1cmZhY2UuIE5vLW9wIGluIDJELzNEIG1vZGUuXG4gIF91cGRhdGVCaW5PcHRpb25zKCkge1xuICAgIHJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydCh0aGlzLCAoKSA9PlxuICAgICAgKEhleGFnb25MYXllci5wcm90b3R5cGUgYXMgYW55KS5fdXBkYXRlQmluT3B0aW9ucy5jYWxsKHRoaXMpXG4gICAgKTtcbiAgfVxuXG4gIC8vIGRlY2suZ2wncyBIZXhhZ29uQ2VsbExheWVyIHBvc2l0aW9ucyBjZWxscyBpbiBmbGF0IGNvbW1vbiBzcGFjZSwgd2hpY2ggbGFuZHNcbiAgLy8gdGhlbSBvbiB0aGUgWFkgcGxhbmUgdGhyb3VnaCB0aGUgZ2xvYmUgY2VudGVyLiBTd2FwIGluIGEgZ2xvYmUtYXdhcmUgc3ViY2xhc3NcbiAgLy8gdGhhdCBjdXJ2ZXMgY2VsbHMgb250byB0aGUgc3BoZXJlIHN1cmZhY2UgKG5vLW9wIGluIDJELzNEIG1vZGUpLlxuICBnZXRTdWJMYXllckNsYXNzPFQgZXh0ZW5kcyBMYXllcj4oc3ViTGF5ZXJJZDogc3RyaW5nLCBEZWZhdWx0TGF5ZXJDbGFzczoge25ldyAoLi4uYXJnczogYW55W10pOiBUfSkge1xuICAgIGNvbnN0IHJlc29sdmVkID0gc3VwZXIuZ2V0U3ViTGF5ZXJDbGFzcyhzdWJMYXllcklkLCBEZWZhdWx0TGF5ZXJDbGFzcyk7XG4gICAgaWYgKHN1YkxheWVySWQgPT09ICdjZWxscycpIHtcbiAgICAgIHJldHVybiBtYWtlR2xvYmVDZWxsTGF5ZXJDbGFzcyhcbiAgICAgICAgcmVzb2x2ZWQgYXMgdW5rbm93biBhcyB7bmV3ICguLi5hcmdzOiBhbnlbXSk6IFR9LFxuICAgICAgICAnaGV4YWdvbidcbiAgICAgICkgYXMgdW5rbm93biBhcyB7XG4gICAgICAgIG5ldyAoLi4uYXJnczogYW55W10pOiBUO1xuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc29sdmVkO1xuICB9XG5cbiAgZ2V0UGlja2luZ0luZm8ocGFyYW1zOiBHZXRQaWNraW5nSW5mb1BhcmFtcyk6IFBpY2tpbmdJbmZvIHtcbiAgICBjb25zdCBpbmZvID0gc3VwZXIuZ2V0UGlja2luZ0luZm8ocGFyYW1zKSBhcyBIZXhhZ29uTGF5ZXJQaWNraW5nSW5mbzxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG4gICAgaWYgKGluZm8ub2JqZWN0KSB7XG4gICAgICBjb25zdCB7cmFkaXVzQ29tbW9uLCBoZXhPcmlnaW5Db21tb24sIGFnZ3JlZ2F0b3JWaWV3cG9ydH0gPSB0aGlzXG4gICAgICAgIC5zdGF0ZSBhcyB1bmtub3duIGFzIEhleEludGVybmFsU3RhdGU7XG4gICAgICBjb25zdCBjb3ZlcmFnZSA9IHRoaXMucHJvcHMuY292ZXJhZ2UgPz8gMTtcbiAgICAgIGlmICghcmFkaXVzQ29tbW9uIHx8ICFhZ2dyZWdhdG9yVmlld3BvcnQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAnU2NhbGVFbmhhbmNlZEhleGFnb25MYXllcjogZXhwZWN0ZWQgaW50ZXJuYWwgc3RhdGUgcHJvcGVydGllcyAnICtcbiAgICAgICAgICAgICcocmFkaXVzQ29tbW9uLCBhZ2dyZWdhdG9yVmlld3BvcnQpIGFyZSBtaXNzaW5nLiAnICtcbiAgICAgICAgICAgICdIb3ZlciBvdXRsaW5lIHdpbGwgbm90IGJlIHNob3duLiBUaGlzIG1heSBpbmRpY2F0ZSBhIGRlY2suZ2wgdmVyc2lvbiBjaGFuZ2UuJ1xuICAgICAgICApO1xuICAgICAgICByZXR1cm4gaW5mbztcbiAgICAgIH1cbiAgICAgIGNvbnN0IHtjb2wsIHJvd30gPSBpbmZvLm9iamVjdCBhcyBIZXhQaWNraW5nT2JqZWN0O1xuICAgICAgaWYgKHR5cGVvZiBjb2wgIT09ICdudW1iZXInIHx8IHR5cGVvZiByb3cgIT09ICdudW1iZXInKSByZXR1cm4gaW5mbztcbiAgICAgIGNvbnN0IGNlbnRyb2lkID0gZ2V0SGV4YmluQ2VudHJvaWQoW2NvbCwgcm93XSwgcmFkaXVzQ29tbW9uKTtcbiAgICAgIGNvbnN0IG94ID0gaGV4T3JpZ2luQ29tbW9uPy5bMF0gPz8gMDtcbiAgICAgIGNvbnN0IG95ID0gaGV4T3JpZ2luQ29tbW9uPy5bMV0gPz8gMDtcbiAgICAgIGNvbnN0IHIgPSByYWRpdXNDb21tb24gKiBjb3ZlcmFnZTtcblxuICAgICAgY29uc3Qgb3V0bGluZTogbnVtYmVyW11bXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCA2OyBpKyspIHtcbiAgICAgICAgY29uc3QgdnggPSBjZW50cm9pZFswXSArIHIgKiBIZXhiaW5WZXJ0aWNlc1tpXVswXSArIG94O1xuICAgICAgICBjb25zdCB2eSA9IGNlbnRyb2lkWzFdICsgciAqIEhleGJpblZlcnRpY2VzW2ldWzFdICsgb3k7XG4gICAgICAgIG91dGxpbmUucHVzaChhZ2dyZWdhdG9yVmlld3BvcnQudW5wcm9qZWN0RmxhdChbdngsIHZ5XSkpO1xuICAgICAgfVxuICAgICAgb3V0bGluZS5wdXNoKG91dGxpbmVbMF0pO1xuICAgICAgKGluZm8ub2JqZWN0IGFzIEhleFBpY2tpbmdPYmplY3QpLmNlbGxPdXRsaW5lID0gb3V0bGluZTtcbiAgICB9XG4gICAgcmV0dXJuIGluZm87XG4gIH1cbn1cblxuU2NhbGVFbmhhbmNlZEhleGFnb25MYXllci5sYXllck5hbWUgPSAnU2NhbGVFbmhhbmNlZEhleGFnb25MYXllcic7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7O0FBRUEsU0FBUUEsWUFBWSxRQUFnQyw2QkFBNkI7QUFFakYsU0FBUUMseUJBQXlCLEVBQUVDLG9CQUFvQixRQUFPLGtDQUFrQztBQUNoRyxTQUNFQyx1QkFBdUIsRUFDdkJDLGlDQUFpQyxRQUM1QixpQ0FBaUM7QUFFeEMsSUFBTUMsUUFBUSxHQUFHQyxJQUFJLENBQUNDLEVBQUUsR0FBRyxDQUFDO0FBQzVCLElBQU1DLGNBQWMsR0FBR0MsS0FBSyxDQUFDQyxJQUFJLENBQUM7RUFBQ0MsTUFBTSxFQUFFO0FBQUMsQ0FBQyxFQUFFLFVBQUNDLENBQUMsRUFBRUMsQ0FBQyxFQUFLO0VBQ3ZELElBQU1DLEtBQUssR0FBR0QsQ0FBQyxHQUFHUixRQUFRO0VBQzFCLE9BQU8sQ0FBQ0MsSUFBSSxDQUFDUyxHQUFHLENBQUNELEtBQUssQ0FBQyxFQUFFLENBQUNSLElBQUksQ0FBQ1UsR0FBRyxDQUFDRixLQUFLLENBQUMsQ0FBQztBQUM1QyxDQUFDLENBQUM7QUFFRixTQUFTRyxpQkFBaUJBLENBQUNDLEVBQW9CLEVBQUVDLE1BQWMsRUFBb0I7RUFDakYsSUFBTUMsTUFBTSxHQUFHLENBQUMsR0FBR2QsSUFBSSxDQUFDUyxHQUFHLENBQUNWLFFBQVEsQ0FBQztFQUNyQyxJQUFNZ0IsTUFBTSxHQUFHLEdBQUc7RUFDbEIsT0FBTyxDQUFDLENBQUNILEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDQSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSUMsTUFBTSxHQUFHQyxNQUFNLEVBQUVGLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBR0MsTUFBTSxHQUFHRSxNQUFNLENBQUM7QUFDL0U7QUFlQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUEsSUFDcUJDLHlCQUF5QiwwQkFBQUMsYUFBQTtFQUFBLFNBQUFELDBCQUFBO0lBQUFFLGVBQUEsT0FBQUYseUJBQUE7SUFBQSxPQUFBRyxVQUFBLE9BQUFILHlCQUFBLEVBQUFJLFNBQUE7RUFBQTtFQUFBQyxTQUFBLENBQUFMLHlCQUFBLEVBQUFDLGFBQUE7RUFBQSxPQUFBSyxZQUFBLENBQUFOLHlCQUFBO0lBQUFPLEdBQUE7SUFBQUMsS0FBQTtJQU01QztJQUNBO0lBQ0E7SUFDQTtJQUNBLFNBQUFDLG9CQUFvQkEsQ0FBQUMsSUFBQSxFQUErQjtNQUFBLElBQTdCQyxPQUFPLEdBQUFELElBQUEsQ0FBUEMsT0FBTztNQUMzQmhDLHlCQUF5QixDQUFDLElBQUksRUFBRUQsWUFBWSxFQUFFaUMsT0FBTyxDQUFDO0lBQ3hEO0VBQUM7SUFBQUosR0FBQTtJQUFBQyxLQUFBLEVBRUQsU0FBQUksWUFBWUEsQ0FBQSxFQUFHO01BQ2IsT0FBT2hDLG9CQUFvQixDQUFDLElBQUksRUFBRUYsWUFBWSxDQUFDO0lBQ2pEOztJQUVBO0lBQ0E7SUFDQTtFQUFBO0lBQUE2QixHQUFBO0lBQUFDLEtBQUEsRUFDQSxTQUFBSyxpQkFBaUJBLENBQUEsRUFBRztNQUFBLElBQUFDLEtBQUE7TUFDbEJoQyxpQ0FBaUMsQ0FBQyxJQUFJLEVBQUU7UUFBQSxPQUNyQ0osWUFBWSxDQUFDcUMsU0FBUyxDQUFTRixpQkFBaUIsQ0FBQ0csSUFBSSxDQUFDRixLQUFJLENBQUM7TUFBQSxDQUM5RCxDQUFDO0lBQ0g7O0lBRUE7SUFDQTtJQUNBO0VBQUE7SUFBQVAsR0FBQTtJQUFBQyxLQUFBLEVBQ0EsU0FBQVMsZ0JBQWdCQSxDQUFrQkMsVUFBa0IsRUFBRUMsaUJBQTRDLEVBQUU7TUFDbEcsSUFBTUMsUUFBUSxHQUFBQyxhQUFBLENBQUFyQix5QkFBQSxnQ0FBMEJrQixVQUFVLEVBQUVDLGlCQUFpQixFQUFDO01BQ3RFLElBQUlELFVBQVUsS0FBSyxPQUFPLEVBQUU7UUFDMUIsT0FBT3JDLHVCQUF1QixDQUM1QnVDLFFBQVEsRUFDUixTQUNGLENBQUM7TUFHSDtNQUNBLE9BQU9BLFFBQVE7SUFDakI7RUFBQztJQUFBYixHQUFBO0lBQUFDLEtBQUEsRUFFRCxTQUFBYyxjQUFjQSxDQUFDQyxNQUE0QixFQUFlO01BQ3hELElBQU1DLElBQUksR0FBQUgsYUFBQSxDQUFBckIseUJBQUEsOEJBQXdCdUIsTUFBTSxFQUFxRDtNQUM3RixJQUFJQyxJQUFJLENBQUNDLE1BQU0sRUFBRTtRQUFBLElBQUFDLG9CQUFBLEVBQUFDLGlCQUFBLEVBQUFDLGtCQUFBO1FBQ2YsSUFBQUMsS0FBQSxHQUE0RCxJQUFJLENBQzdEQyxLQUFLO1VBRERDLFlBQVksR0FBQUYsS0FBQSxDQUFaRSxZQUFZO1VBQUVDLGVBQWUsR0FBQUgsS0FBQSxDQUFmRyxlQUFlO1VBQUVDLGtCQUFrQixHQUFBSixLQUFBLENBQWxCSSxrQkFBa0I7UUFFeEQsSUFBTUMsUUFBUSxJQUFBUixvQkFBQSxHQUFHLElBQUksQ0FBQ1MsS0FBSyxDQUFDRCxRQUFRLGNBQUFSLG9CQUFBLGNBQUFBLG9CQUFBLEdBQUksQ0FBQztRQUN6QyxJQUFJLENBQUNLLFlBQVksSUFBSSxDQUFDRSxrQkFBa0IsRUFBRTtVQUN4Q0csT0FBTyxDQUFDQyxLQUFLLENBQ1gsZ0VBQWdFLEdBQzlELGtEQUFrRCxHQUNsRCw4RUFDSixDQUFDO1VBQ0QsT0FBT2IsSUFBSTtRQUNiO1FBQ0EsSUFBQWMsS0FBQSxHQUFtQmQsSUFBSSxDQUFDQyxNQUFNO1VBQXZCYyxHQUFHLEdBQUFELEtBQUEsQ0FBSEMsR0FBRztVQUFFQyxHQUFHLEdBQUFGLEtBQUEsQ0FBSEUsR0FBRztRQUNmLElBQUksT0FBT0QsR0FBRyxLQUFLLFFBQVEsSUFBSSxPQUFPQyxHQUFHLEtBQUssUUFBUSxFQUFFLE9BQU9oQixJQUFJO1FBQ25FLElBQU1pQixRQUFRLEdBQUc5QyxpQkFBaUIsQ0FBQyxDQUFDNEMsR0FBRyxFQUFFQyxHQUFHLENBQUMsRUFBRVQsWUFBWSxDQUFDO1FBQzVELElBQU1XLEVBQUUsSUFBQWYsaUJBQUEsR0FBR0ssZUFBZSxhQUFmQSxlQUFlLHVCQUFmQSxlQUFlLENBQUcsQ0FBQyxDQUFDLGNBQUFMLGlCQUFBLGNBQUFBLGlCQUFBLEdBQUksQ0FBQztRQUNwQyxJQUFNZ0IsRUFBRSxJQUFBZixrQkFBQSxHQUFHSSxlQUFlLGFBQWZBLGVBQWUsdUJBQWZBLGVBQWUsQ0FBRyxDQUFDLENBQUMsY0FBQUosa0JBQUEsY0FBQUEsa0JBQUEsR0FBSSxDQUFDO1FBQ3BDLElBQU1nQixDQUFDLEdBQUdiLFlBQVksR0FBR0csUUFBUTtRQUVqQyxJQUFNVyxPQUFtQixHQUFHLEVBQUU7UUFDOUIsS0FBSyxJQUFJdEQsQ0FBQyxHQUFHLENBQUMsRUFBRUEsQ0FBQyxHQUFHLENBQUMsRUFBRUEsQ0FBQyxFQUFFLEVBQUU7VUFDMUIsSUFBTXVELEVBQUUsR0FBR0wsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHRyxDQUFDLEdBQUcxRCxjQUFjLENBQUNLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHbUQsRUFBRTtVQUN0RCxJQUFNSyxFQUFFLEdBQUdOLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBR0csQ0FBQyxHQUFHMUQsY0FBYyxDQUFDSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBR29ELEVBQUU7VUFDdERFLE9BQU8sQ0FBQ0csSUFBSSxDQUFDZixrQkFBa0IsQ0FBQ2dCLGFBQWEsQ0FBQyxDQUFDSCxFQUFFLEVBQUVDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDMUQ7UUFDQUYsT0FBTyxDQUFDRyxJQUFJLENBQUNILE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2QnJCLElBQUksQ0FBQ0MsTUFBTSxDQUFzQnlCLFdBQVcsR0FBR0wsT0FBTztNQUN6RDtNQUNBLE9BQU9yQixJQUFJO0lBQ2I7RUFBQztBQUFBLEVBMUVvRDlDLFlBQVk7QUFBQXlFLGVBQUEsQ0FBOUNuRCx5QkFBeUIsa0JBQUFvRCxhQUFBLENBQUFBLGFBQUEsS0FFdkMxRSxZQUFZLENBQUMyRSxZQUFZO0VBQzVCQyxjQUFjLEVBQUU7QUFBSztBQUFBLFNBSEp0RCx5QkFBeUIsSUFBQXVELE9BQUE7QUE2RTlDdkQseUJBQXlCLENBQUN3RCxTQUFTLEdBQUcsMkJBQTJCIiwiaWdub3JlTGlzdCI6W119
|
|
130
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJIZXhhZ29uTGF5ZXIiLCJlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlIiwiZW5yaWNoZWRSZW5kZXJMYXllcnMiLCJtYWtlR2xvYmVDZWxsTGF5ZXJDbGFzcyIsInJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydCIsIlRISVJEX1BJIiwiTWF0aCIsIlBJIiwiSGV4YmluVmVydGljZXMiLCJBcnJheSIsImZyb20iLCJsZW5ndGgiLCJfIiwiaSIsImFuZ2xlIiwic2luIiwiY29zIiwiZ2V0SGV4YmluQ2VudHJvaWQiLCJpZCIsInJhZGl1cyIsIkRJU1RfWCIsIkRJU1RfWSIsIlNjYWxlRW5oYW5jZWRIZXhhZ29uTGF5ZXIiLCJfSGV4YWdvbkxheWVyIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NhbGxTdXBlciIsImFyZ3VtZW50cyIsIl9pbmhlcml0cyIsIl9jcmVhdGVDbGFzcyIsImtleSIsInZhbHVlIiwiX29uQWdncmVnYXRpb25VcGRhdGUiLCJfcmVmIiwiY2hhbm5lbCIsInJlbmRlckxheWVycyIsIl91cGRhdGVCaW5PcHRpb25zIiwiX3RoaXMiLCJwcm90b3R5cGUiLCJjYWxsIiwiZ2V0U3ViTGF5ZXJDbGFzcyIsInN1YkxheWVySWQiLCJEZWZhdWx0TGF5ZXJDbGFzcyIsInJlc29sdmVkIiwiX3N1cGVyUHJvcEdldCIsImdldFBpY2tpbmdJbmZvIiwicGFyYW1zIiwiaW5mbyIsIm9iamVjdCIsIl90aGlzJHByb3BzJGNvdmVyYWdlIiwiX2hleE9yaWdpbkNvbW1vbiQiLCJfaGV4T3JpZ2luQ29tbW9uJDIiLCJfcmVmMiIsInN0YXRlIiwicmFkaXVzQ29tbW9uIiwiaGV4T3JpZ2luQ29tbW9uIiwiYWdncmVnYXRvclZpZXdwb3J0IiwiY292ZXJhZ2UiLCJwcm9wcyIsImNvbnNvbGUiLCJlcnJvciIsIl9yZWYzIiwiY29sIiwicm93IiwiY2VudHJvaWQiLCJveCIsIm95IiwiciIsIm91dGxpbmUiLCJ2eCIsInZ5IiwicHVzaCIsInVucHJvamVjdEZsYXQiLCJjZWxsT3V0bGluZSIsIl9kZWZpbmVQcm9wZXJ0eSIsIl9vYmplY3RTcHJlYWQiLCJkZWZhdWx0UHJvcHMiLCJncHVBZ2dyZWdhdGlvbiIsImRlZmF1bHQiLCJsYXllck5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaGV4YWdvbi1sYXllci9lbmhhbmNlZC1oZXhhZ29uLWxheWVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB7SGV4YWdvbkxheWVyLCBIZXhhZ29uTGF5ZXJQaWNraW5nSW5mb30gZnJvbSAnQGRlY2suZ2wvYWdncmVnYXRpb24tbGF5ZXJzJztcbmltcG9ydCB7R2V0UGlja2luZ0luZm9QYXJhbXMsIExheWVyLCBQaWNraW5nSW5mbywgVmlld3BvcnR9IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xuaW1wb3J0IHtlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlLCBlbnJpY2hlZFJlbmRlckxheWVyc30gZnJvbSAnLi4vbGF5ZXItdXRpbHMvYWdncmVnYXRpb24tdXRpbHMnO1xuaW1wb3J0IHtcbiAgbWFrZUdsb2JlQ2VsbExheWVyQ2xhc3MsXG4gIHJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydFxufSBmcm9tICcuLi9sYXllci11dGlscy9nbG9iZS1jZWxsLXV0aWxzJztcblxuY29uc3QgVEhJUkRfUEkgPSBNYXRoLlBJIC8gMztcbmNvbnN0IEhleGJpblZlcnRpY2VzID0gQXJyYXkuZnJvbSh7bGVuZ3RoOiA2fSwgKF8sIGkpID0+IHtcbiAgY29uc3QgYW5nbGUgPSBpICogVEhJUkRfUEk7XG4gIHJldHVybiBbTWF0aC5zaW4oYW5nbGUpLCAtTWF0aC5jb3MoYW5nbGUpXTtcbn0pO1xuXG5mdW5jdGlvbiBnZXRIZXhiaW5DZW50cm9pZChpZDogW251bWJlciwgbnVtYmVyXSwgcmFkaXVzOiBudW1iZXIpOiBbbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgRElTVF9YID0gMiAqIE1hdGguc2luKFRISVJEX1BJKTtcbiAgY29uc3QgRElTVF9ZID0gMS41O1xuICByZXR1cm4gWyhpZFswXSArIChpZFsxXSAmIDEpIC8gMikgKiByYWRpdXMgKiBESVNUX1gsIGlkWzFdICogcmFkaXVzICogRElTVF9ZXTtcbn1cblxuaW50ZXJmYWNlIEhleEludGVybmFsU3RhdGUge1xuICByYWRpdXNDb21tb24/OiBudW1iZXI7XG4gIGhleE9yaWdpbkNvbW1vbj86IFtudW1iZXIsIG51bWJlcl07XG4gIGFnZ3JlZ2F0b3JWaWV3cG9ydD86IFZpZXdwb3J0ICYge3VucHJvamVjdEZsYXQoeHk6IG51bWJlcltdKTogbnVtYmVyW119O1xufVxuXG5pbnRlcmZhY2UgSGV4UGlja2luZ09iamVjdCB7XG4gIGNvbDogbnVtYmVyO1xuICByb3c6IG51bWJlcjtcbiAgY2VsbE91dGxpbmU/OiBudW1iZXJbXVtdO1xuICBba2V5OiBzdHJpbmddOiB1bmtub3duO1xufVxuXG4vKipcbiAqIEluIGRlY2suZ2wgOSwgSGV4YWdvbkxheWVyIG5hdGl2ZWx5IHN1cHBvcnRzIENQVSBhZ2dyZWdhdGlvbiB2aWEgZ3B1QWdncmVnYXRpb246IGZhbHNlLFxuICogY3VzdG9tIGdldENvbG9yVmFsdWUvZ2V0RWxldmF0aW9uVmFsdWUgYWNjZXNzb3JzLCBwZXJjZW50aWxlIGZpbHRlcmluZywgYW5kIHNjYWxlIHR5cGVzLlxuICpcbiAqIFdlIG92ZXJyaWRlIGdldFBpY2tpbmdJbmZvIHRvIGFkZCBgY2VsbE91dGxpbmVgIOKAlCBhbiBhcnJheSBvZiBbbG5nLCBsYXRdIGNvb3JkaW5hdGVzXG4gKiBjb21wdXRlZCBpbiBjb21tb24gc3BhY2Ugc28gdGhlIG91dGxpbmUgYWxpZ25zIHdpdGggcmVuZGVyZWQgY2VsbHMgYXQgYWxsIGxhdGl0dWRlcy5cbiAqXG4gKiBXZSBhbHNvIG92ZXJyaWRlIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIHRvIHNlbmQgcGVyLWJpbiBhZ2dyZWdhdGVkIHZhbHVlcyB0aHJvdWdoXG4gKiBvblNldENvbG9yRG9tYWluIHNvIHRoZSBsZWdlbmQgY2FuIGNvbXB1dGUgcHJvcGVyIHF1YW50aWxlL2N1c3RvbSBicmVha3MuXG4gKi9cbi8vIEB0cy1leHBlY3QtZXJyb3IgLS0gb3ZlcnJpZGluZyBwcml2YXRlIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIHRvIGVucmljaCB0aGUgb25TZXRDb2xvckRvbWFpbiBjYWxsYmFja1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2NhbGVFbmhhbmNlZEhleGFnb25MYXllciBleHRlbmRzIEhleGFnb25MYXllcjxhbnk+IHtcbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAuLi5IZXhhZ29uTGF5ZXIuZGVmYXVsdFByb3BzLFxuICAgIGdwdUFnZ3JlZ2F0aW9uOiBmYWxzZVxuICB9O1xuXG4gIC8vIEhBQ0s6IGRlY2suZ2wgOSdzIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlIGlzIHByaXZhdGUgYW5kIGl0cyBvblNldENvbG9yRG9tYWluXG4gIC8vIGNhbGxiYWNrIG9ubHkgcHJvdmlkZXMgW21pbiwgbWF4XS4gIFRoYXQgaXMgc3VmZmljaWVudCBmb3IgcXVhbnRpemUvbGluZWFyXG4gIC8vIHNjYWxlcyBidXQgZDMuc2NhbGVRdWFudGlsZSBuZWVkcyB0aGUgKmZ1bGwgc29ydGVkIGFycmF5KiBvZiBiaW4gdmFsdWVzIHRvXG4gIC8vIGNvbXB1dGUgY29ycmVjdCBicmVhayBwb2ludHMg4oCUIHdpdGhvdXQgaXQgdGhlIGxlZ2VuZCBsYWJlbHMgYXJlIHdyb25nXG4gIF9vbkFnZ3JlZ2F0aW9uVXBkYXRlKHtjaGFubmVsfToge2NoYW5uZWw6IG51bWJlcn0pIHtcbiAgICBlbnJpY2hlZEFnZ3JlZ2F0aW9uVXBkYXRlKHRoaXMsIEhleGFnb25MYXllciwgY2hhbm5lbCk7XG4gIH1cblxuICByZW5kZXJMYXllcnMoKSB7XG4gICAgcmV0dXJuIGVucmljaGVkUmVuZGVyTGF5ZXJzKHRoaXMsIEhleGFnb25MYXllcik7XG4gIH1cblxuICAvLyBJbiBnbG9iZSBtb2RlLCBydW4gZGVjay5nbCdzIGJpbi9jb21tb24tc3BhY2Ugc2V0dXAgdW5kZXIgYSBXZWJNZXJjYXRvclZpZXdwb3J0XG4gIC8vIHNvIGJpbm5pbmcgYW5kIHRoZSBjZWxsIHNoYWRlcidzIGZsYXQgY29tbW9uIHNwYWNlIGFyZSBnZW51aW5lIFdlYiBNZXJjYXRvciwgd2hpY2hcbiAgLy8gdGhlIGdsb2JlIGNlbGwgc3ViY2xhc3MgdGhlbiByZW1hcHMgb250byB0aGUgc3BoZXJlIHN1cmZhY2UuIE5vLW9wIGluIDJELzNEIG1vZGUuXG4gIF91cGRhdGVCaW5PcHRpb25zKCkge1xuICAgIHJ1bkJpbk9wdGlvbnNXaXRoTWVyY2F0b3JWaWV3cG9ydCh0aGlzLCAoKSA9PlxuICAgICAgKEhleGFnb25MYXllci5wcm90b3R5cGUgYXMgYW55KS5fdXBkYXRlQmluT3B0aW9ucy5jYWxsKHRoaXMpXG4gICAgKTtcbiAgfVxuXG4gIC8vIGRlY2suZ2wncyBIZXhhZ29uQ2VsbExheWVyIHBvc2l0aW9ucyBjZWxscyBpbiBmbGF0IGNvbW1vbiBzcGFjZSwgd2hpY2ggbGFuZHNcbiAgLy8gdGhlbSBvbiB0aGUgWFkgcGxhbmUgdGhyb3VnaCB0aGUgZ2xvYmUgY2VudGVyLiBTd2FwIGluIGEgZ2xvYmUtYXdhcmUgc3ViY2xhc3NcbiAgLy8gdGhhdCBjdXJ2ZXMgY2VsbHMgb250byB0aGUgc3BoZXJlIHN1cmZhY2UgKG5vLW9wIGluIDJELzNEIG1vZGUpLlxuICBnZXRTdWJMYXllckNsYXNzPFQgZXh0ZW5kcyBMYXllcj4oXG4gICAgc3ViTGF5ZXJJZDogc3RyaW5nLFxuICAgIERlZmF1bHRMYXllckNsYXNzOiB7bmV3ICguLi5hcmdzOiBhbnlbXSk6IFR9XG4gICkge1xuICAgIGNvbnN0IHJlc29sdmVkID0gc3VwZXIuZ2V0U3ViTGF5ZXJDbGFzcyhzdWJMYXllcklkLCBEZWZhdWx0TGF5ZXJDbGFzcyk7XG4gICAgaWYgKHN1YkxheWVySWQgPT09ICdjZWxscycpIHtcbiAgICAgIHJldHVybiBtYWtlR2xvYmVDZWxsTGF5ZXJDbGFzcyhcbiAgICAgICAgcmVzb2x2ZWQgYXMgdW5rbm93biBhcyB7bmV3ICguLi5hcmdzOiBhbnlbXSk6IFR9LFxuICAgICAgICAnaGV4YWdvbidcbiAgICAgICkgYXMgdW5rbm93biBhcyB7XG4gICAgICAgIG5ldyAoLi4uYXJnczogYW55W10pOiBUO1xuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc29sdmVkO1xuICB9XG5cbiAgZ2V0UGlja2luZ0luZm8ocGFyYW1zOiBHZXRQaWNraW5nSW5mb1BhcmFtcyk6IFBpY2tpbmdJbmZvIHtcbiAgICBjb25zdCBpbmZvID0gc3VwZXIuZ2V0UGlja2luZ0luZm8ocGFyYW1zKSBhcyBIZXhhZ29uTGF5ZXJQaWNraW5nSW5mbzxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG4gICAgaWYgKGluZm8ub2JqZWN0KSB7XG4gICAgICBjb25zdCB7cmFkaXVzQ29tbW9uLCBoZXhPcmlnaW5Db21tb24sIGFnZ3JlZ2F0b3JWaWV3cG9ydH0gPSB0aGlzXG4gICAgICAgIC5zdGF0ZSBhcyB1bmtub3duIGFzIEhleEludGVybmFsU3RhdGU7XG4gICAgICBjb25zdCBjb3ZlcmFnZSA9IHRoaXMucHJvcHMuY292ZXJhZ2UgPz8gMTtcbiAgICAgIGlmICghcmFkaXVzQ29tbW9uIHx8ICFhZ2dyZWdhdG9yVmlld3BvcnQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAnU2NhbGVFbmhhbmNlZEhleGFnb25MYXllcjogZXhwZWN0ZWQgaW50ZXJuYWwgc3RhdGUgcHJvcGVydGllcyAnICtcbiAgICAgICAgICAgICcocmFkaXVzQ29tbW9uLCBhZ2dyZWdhdG9yVmlld3BvcnQpIGFyZSBtaXNzaW5nLiAnICtcbiAgICAgICAgICAgICdIb3ZlciBvdXRsaW5lIHdpbGwgbm90IGJlIHNob3duLiBUaGlzIG1heSBpbmRpY2F0ZSBhIGRlY2suZ2wgdmVyc2lvbiBjaGFuZ2UuJ1xuICAgICAgICApO1xuICAgICAgICByZXR1cm4gaW5mbztcbiAgICAgIH1cbiAgICAgIGNvbnN0IHtjb2wsIHJvd30gPSBpbmZvLm9iamVjdCBhcyBIZXhQaWNraW5nT2JqZWN0O1xuICAgICAgaWYgKHR5cGVvZiBjb2wgIT09ICdudW1iZXInIHx8IHR5cGVvZiByb3cgIT09ICdudW1iZXInKSByZXR1cm4gaW5mbztcbiAgICAgIGNvbnN0IGNlbnRyb2lkID0gZ2V0SGV4YmluQ2VudHJvaWQoW2NvbCwgcm93XSwgcmFkaXVzQ29tbW9uKTtcbiAgICAgIGNvbnN0IG94ID0gaGV4T3JpZ2luQ29tbW9uPy5bMF0gPz8gMDtcbiAgICAgIGNvbnN0IG95ID0gaGV4T3JpZ2luQ29tbW9uPy5bMV0gPz8gMDtcbiAgICAgIGNvbnN0IHIgPSByYWRpdXNDb21tb24gKiBjb3ZlcmFnZTtcblxuICAgICAgY29uc3Qgb3V0bGluZTogbnVtYmVyW11bXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCA2OyBpKyspIHtcbiAgICAgICAgY29uc3QgdnggPSBjZW50cm9pZFswXSArIHIgKiBIZXhiaW5WZXJ0aWNlc1tpXVswXSArIG94O1xuICAgICAgICBjb25zdCB2eSA9IGNlbnRyb2lkWzFdICsgciAqIEhleGJpblZlcnRpY2VzW2ldWzFdICsgb3k7XG4gICAgICAgIG91dGxpbmUucHVzaChhZ2dyZWdhdG9yVmlld3BvcnQudW5wcm9qZWN0RmxhdChbdngsIHZ5XSkpO1xuICAgICAgfVxuICAgICAgb3V0bGluZS5wdXNoKG91dGxpbmVbMF0pO1xuICAgICAgKGluZm8ub2JqZWN0IGFzIEhleFBpY2tpbmdPYmplY3QpLmNlbGxPdXRsaW5lID0gb3V0bGluZTtcbiAgICB9XG4gICAgcmV0dXJuIGluZm87XG4gIH1cbn1cblxuU2NhbGVFbmhhbmNlZEhleGFnb25MYXllci5sYXllck5hbWUgPSAnU2NhbGVFbmhhbmNlZEhleGFnb25MYXllcic7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztB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
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
// SPDX-License-Identifier: MIT
|
|
2
2
|
// Copyright contributors to the kepler.gl project
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
// The "no bound" default for keepMin/keepMax. A tile server writes the mask in the band's own
|
|
5
|
+
// data type and marks valid pixels with that type's maximum — 255 for uint8, 65535 for uint16,
|
|
6
|
+
// FLT_MAX for float32 — so a smaller default discards every valid pixel of a float32 mask.
|
|
7
|
+
var inf = 3.4028234663852886e38;
|
|
5
8
|
function getUniforms() {
|
|
6
9
|
var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
7
10
|
var imageMask = opts.imageMask,
|
|
@@ -41,4 +44,4 @@ function makeMaskModule(name, samplerType) {
|
|
|
41
44
|
export var maskFloat = makeMaskModule('mask_image_float', 'sampler2D');
|
|
42
45
|
export var maskUint = makeMaskModule('mask_image_uint', 'usampler2D');
|
|
43
46
|
export var maskInt = makeMaskModule('mask_image_int', 'isampler2D');
|
|
44
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpbmYiLCJnZXRVbmlmb3JtcyIsIm9wdHMiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJpbWFnZU1hc2siLCJtYXNrS2VlcE1pbiIsIm1hc2tLZWVwTWF4IiwiYml0bWFwVGV4dHVyZU1hc2siLCJrZWVwTWluIiwiTnVtYmVyIiwiaXNGaW5pdGUiLCJrZWVwTWF4IiwibWFza1VuaWZvcm1UeXBlcyIsIm1ha2VNYXNrTW9kdWxlIiwibmFtZSIsInNhbXBsZXJUeXBlIiwiYmxvY2tEZWNsIiwiY29uY2F0IiwiZnMxIiwiZnMyIiwidW5pZm9ybVR5cGVzIiwiZGVmaW5lcyIsIlNBTVBMRVJfVFlQRSIsImluamVjdCIsIm1hc2tGbG9hdCIsIm1hc2tVaW50IiwibWFza0ludCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9yYXN0ZXIvd2ViZ2wvdGV4dHVyZS9tYXNrLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCB0eXBlIHtUZXh0dXJlfSBmcm9tICdAbHVtYS5nbC9jb3JlJztcbmltcG9ydCB7R2V0VW5pZm9ybXNPdXRwdXQsIFNoYWRlck1vZHVsZX0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vLyBUaGUgXCJubyBib3VuZFwiIGRlZmF1bHQgZm9yIGtlZXBNaW4va2VlcE1heC4gQSB0aWxlIHNlcnZlciB3cml0ZXMgdGhlIG1hc2sgaW4gdGhlIGJhbmQncyBvd25cbi8vIGRhdGEgdHlwZSBhbmQgbWFya3MgdmFsaWQgcGl4ZWxzIHdpdGggdGhhdCB0eXBlJ3MgbWF4aW11bSDigJQgMjU1IGZvciB1aW50OCwgNjU1MzUgZm9yIHVpbnQxNixcbi8vIEZMVF9NQVggZm9yIGZsb2F0MzIg4oCUIHNvIGEgc21hbGxlciBkZWZhdWx0IGRpc2NhcmRzIGV2ZXJ5IHZhbGlkIHBpeGVsIG9mIGEgZmxvYXQzMiBtYXNrLlxuY29uc3QgaW5mID0gMy40MDI4MjM0NjYzODUyODg2ZTM4O1xuXG5mdW5jdGlvbiBnZXRVbmlmb3JtcyhcbiAgb3B0czoge2ltYWdlTWFzaz86IFRleHR1cmU7IG1hc2tLZWVwTWluPzogbnVtYmVyOyBtYXNrS2VlcE1heD86IG51bWJlcn0gPSB7fVxuKTogR2V0VW5pZm9ybXNPdXRwdXQge1xuICBjb25zdCB7aW1hZ2VNYXNrLCBtYXNrS2VlcE1pbiwgbWFza0tlZXBNYXh9ID0gb3B0cztcbiAgaWYgKCFpbWFnZU1hc2spIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgYml0bWFwVGV4dHVyZU1hc2s6IGltYWdlTWFzayxcbiAgICBrZWVwTWluOiBOdW1iZXIuaXNGaW5pdGUobWFza0tlZXBNaW4pID8gbWFza0tlZXBNaW4gOiAtaW5mLFxuICAgIGtlZXBNYXg6IE51bWJlci5pc0Zpbml0ZShtYXNrS2VlcE1heCkgPyBtYXNrS2VlcE1heCA6IGluZlxuICB9O1xufVxuXG5jb25zdCBtYXNrVW5pZm9ybVR5cGVzID0ge1xuICBrZWVwTWluOiAnZjMyJyxcbiAga2VlcE1heDogJ2YzMidcbn07XG5cbmZ1bmN0aW9uIG1ha2VNYXNrTW9kdWxlKG5hbWU6IHN0cmluZywgc2FtcGxlclR5cGU6IHN0cmluZyk6IFNoYWRlck1vZHVsZSB7XG4gIGNvbnN0IGJsb2NrRGVjbCA9IGBcXFxudW5pZm9ybSAke25hbWV9VW5pZm9ybXMge1xuICBmbG9hdCBrZWVwTWluO1xuICBmbG9hdCBrZWVwTWF4O1xufSAke25hbWV9O1xuYDtcblxuICBjb25zdCBmczEgPSBgXFxcbnVuaWZvcm0gc2FtcGxlcjJEIGJpdG1hcFRleHR1cmVNYXNrO1xuJHtibG9ja0RlY2x9XG5gO1xuXG4gIGNvbnN0IGZzMiA9IGBcXFxucHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7XG5wcmVjaXNpb24gbWVkaXVtcCBpbnQ7XG5wcmVjaXNpb24gbWVkaXVtcCB1c2FtcGxlcjJEO1xuXG4jaWZkZWYgU0FNUExFUl9UWVBFXG4gIHVuaWZvcm0gU0FNUExFUl9UWVBFIGJpdG1hcFRleHR1cmVNYXNrO1xuI2Vsc2VcbiAgdW5pZm9ybSBzYW1wbGVyMkQgYml0bWFwVGV4dHVyZU1hc2s7XG4jZW5kaWZcblxuJHtibG9ja0RlY2x9XG5gO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZSxcbiAgICBmczEsXG4gICAgZnMyLFxuICAgIHVuaWZvcm1UeXBlczogbWFza1VuaWZvcm1UeXBlcyxcbiAgICBnZXRVbmlmb3JtcyxcbiAgICBkZWZpbmVzOiB7XG4gICAgICBTQU1QTEVSX1RZUEU6IHNhbXBsZXJUeXBlXG4gICAgfSxcbiAgICBpbmplY3Q6IHtcbiAgICAgICdmczpERUNLR0xfQ1JFQVRFX0NPTE9SJzogYFxuICAgIGZsb2F0IG1hc2tfdmFsdWUgPSBmbG9hdCh0ZXh0dXJlKGJpdG1hcFRleHR1cmVNYXNrLCBjb29yZCkucik7XG4gICAgaWYgKG1hc2tfdmFsdWUgPCAke25hbWV9LmtlZXBNaW4pIGRpc2NhcmQ7XG4gICAgaWYgKG1hc2tfdmFsdWUgPiAke25hbWV9LmtlZXBNYXgpIGRpc2NhcmQ7XG4gICAgYFxuICAgIH1cbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IG1hc2tGbG9hdDogU2hhZGVyTW9kdWxlID0gbWFrZU1hc2tNb2R1bGUoJ21hc2tfaW1hZ2VfZmxvYXQnLCAnc2FtcGxlcjJEJyk7XG5leHBvcnQgY29uc3QgbWFza1VpbnQ6IFNoYWRlck1vZHVsZSA9IG1ha2VNYXNrTW9kdWxlKCdtYXNrX2ltYWdlX3VpbnQnLCAndXNhbXBsZXIyRCcpO1xuZXhwb3J0IGNvbnN0IG1hc2tJbnQ6IFNoYWRlck1vZHVsZSA9IG1ha2VNYXNrTW9kdWxlKCdtYXNrX2ltYWdlX2ludCcsICdpc2FtcGxlcjJEJyk7XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7O0FBS0E7QUFDQTtBQUNBO0FBQ0EsSUFBTUEsR0FBRyxHQUFHLHFCQUFxQjtBQUVqQyxTQUFTQyxXQUFXQSxDQUFBLEVBRUM7RUFBQSxJQURuQkMsSUFBdUUsR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsQ0FBQyxDQUFDO0VBRTVFLElBQU9HLFNBQVMsR0FBOEJKLElBQUksQ0FBM0NJLFNBQVM7SUFBRUMsV0FBVyxHQUFpQkwsSUFBSSxDQUFoQ0ssV0FBVztJQUFFQyxXQUFXLEdBQUlOLElBQUksQ0FBbkJNLFdBQVc7RUFDMUMsSUFBSSxDQUFDRixTQUFTLEVBQUU7SUFDZCxPQUFPLElBQUk7RUFDYjtFQUVBLE9BQU87SUFDTEcsaUJBQWlCLEVBQUVILFNBQVM7SUFDNUJJLE9BQU8sRUFBRUMsTUFBTSxDQUFDQyxRQUFRLENBQUNMLFdBQVcsQ0FBQyxHQUFHQSxXQUFXLEdBQUcsQ0FBQ1AsR0FBRztJQUMxRGEsT0FBTyxFQUFFRixNQUFNLENBQUNDLFFBQVEsQ0FBQ0osV0FBVyxDQUFDLEdBQUdBLFdBQVcsR0FBR1I7RUFDeEQsQ0FBQztBQUNIO0FBRUEsSUFBTWMsZ0JBQWdCLEdBQUc7RUFDdkJKLE9BQU8sRUFBRSxLQUFLO0VBQ2RHLE9BQU8sRUFBRTtBQUNYLENBQUM7QUFFRCxTQUFTRSxjQUFjQSxDQUFDQyxJQUFZLEVBQUVDLFdBQW1CLEVBQWdCO0VBQ3ZFLElBQU1DLFNBQVMsY0FBQUMsTUFBQSxDQUNQSCxJQUFJLHdEQUFBRyxNQUFBLENBR1ZILElBQUksUUFDUDtFQUVDLElBQU1JLEdBQUcsNENBQUFELE1BQUEsQ0FFVEQsU0FBUyxPQUNWO0VBRUMsSUFBTUcsR0FBRyxrTkFBQUYsTUFBQSxDQVdURCxTQUFTLE9BQ1Y7RUFFQyxPQUFPO0lBQ0xGLElBQUksRUFBSkEsSUFBSTtJQUNKSSxHQUFHLEVBQUhBLEdBQUc7SUFDSEMsR0FBRyxFQUFIQSxHQUFHO0lBQ0hDLFlBQVksRUFBRVIsZ0JBQWdCO0lBQzlCYixXQUFXLEVBQVhBLFdBQVc7SUFDWHNCLE9BQU8sRUFBRTtNQUNQQyxZQUFZLEVBQUVQO0lBQ2hCLENBQUM7SUFDRFEsTUFBTSxFQUFFO01BQ04sd0JBQXdCLGdHQUFBTixNQUFBLENBRVBILElBQUksK0NBQUFHLE1BQUEsQ0FDSkgsSUFBSTtJQUV2QjtFQUNGLENBQUM7QUFDSDtBQUVBLE9BQU8sSUFBTVUsU0FBdUIsR0FBR1gsY0FBYyxDQUFDLGtCQUFrQixFQUFFLFdBQVcsQ0FBQztBQUN0RixPQUFPLElBQU1ZLFFBQXNCLEdBQUdaLGNBQWMsQ0FBQyxpQkFBaUIsRUFBRSxZQUFZLENBQUM7QUFDckYsT0FBTyxJQUFNYSxPQUFxQixHQUFHYixjQUFjLENBQUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -616,4 +616,4 @@ export function WGS84ToPseudoMercator(coord) {
|
|
|
616
616
|
mercator[1] = (mercator[1] / 256 - 1) * HALF_EARTH_CIRCUMFERENCE;
|
|
617
617
|
return mercator;
|
|
618
618
|
}
|
|
619
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJsbmdMYXRUb1dvcmxkIiwiQ29tcG9zaXRlTGF5ZXIiLCJDT09SRElOQVRFX1NZU1RFTSIsIl9kZWVwRXF1YWwiLCJkZWVwRXF1YWwiLCJCaXRtYXBMYXllciIsIkltYWdlU291cmNlIiwiV01TSW1hZ2VTb3VyY2UiLCJDT1ZFUkFHRV9SRUZFVENIX1pPT01fRkFDVE9SIiwiZGVmYXVsdFByb3BzIiwiaWQiLCJkYXRhIiwic2VydmljZVR5cGUiLCJzcnMiLCJsYXllcnMiLCJ0eXBlIiwiY29tcGFyZSIsInZhbHVlIiwib25NZXRhZGF0YUxvYWQiLCJvbk1ldGFkYXRhTG9hZEVycm9yIiwiY29uc29sZSIsImVycm9yIiwib25JbWFnZUxvYWRTdGFydCIsIm9uSW1hZ2VMb2FkIiwib25JbWFnZUxvYWRFcnJvciIsInJlcXVlc3RJZCIsIldNU0xheWVyIiwiX0NvbXBvc2l0ZUxheWVyIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NhbGxTdXBlciIsImFyZ3VtZW50cyIsIl9pbmhlcml0cyIsIl9jcmVhdGVDbGFzcyIsImtleSIsImdldCIsIkJvb2xlYW4iLCJzdGF0ZSIsImxvYWRDb3VudGVyIiwiX3N1cGVyUHJvcEdldCIsInNob3VsZFVwZGF0ZVN0YXRlIiwiaW5pdGlhbGl6ZVN0YXRlIiwiX25leHRSZXF1ZXN0SWQiLCJsYXN0UmVxdWVzdElkIiwiX2xhc3RSZXF1ZXN0Wm9vbSIsInVwZGF0ZVN0YXRlIiwiX3JlZiIsIl90aGlzIiwiY2hhbmdlRmxhZ3MiLCJwcm9wcyIsIm9sZFByb3BzIiwidmlld3BvcnQiLCJjb250ZXh0IiwiZGF0YUNoYW5nZWQiLCJpbWFnZVNvdXJjZSIsIl9jcmVhdGVJbWFnZVNvdXJjZSIsIl9sb2FkTWV0YWRhdGEiLCJkZWJvdW5jZSIsImxvYWRJbWFnZSIsInZpZXdwb3J0Q2hhbmdlZCIsIl9nbCRnZXRDb250ZXh0QXR0cmlidSIsImdsIiwiaXNQcmVzZXJ2aW5nQnVmZmVyIiwiZ2V0Q29udGV4dEF0dHJpYnV0ZXMiLCJjYWxsIiwicHJlc2VydmVEcmF3aW5nQnVmZmVyIiwiZGVib3VuY2VEZWxheSIsInVuZGVmaW5lZCIsInJlbmRlckxheWVycyIsIl90aGlzJHN0YXRlIiwiYm91bmRzIiwiaW1hZ2UiLCJsYXN0UmVxdWVzdFBhcmFtZXRlcnMiLCJfb2JqZWN0U3ByZWFkIiwiZ2V0U3ViTGF5ZXJQcm9wcyIsIl9pbWFnZUNvb3JkaW5hdGVTeXN0ZW0iLCJMTkdMQVQiLCJDQVJURVNJQU4iLCJwaWNrYWJsZSIsIl9nZXRGZWF0dXJlSW5mb1RleHQiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIngiLCJ5IiwiX3RoaXMkc3RhdGUkaW1hZ2VTb3VyIiwiX3RoaXMkc3RhdGUkaW1hZ2VTb3VyMiIsImZlYXR1cmVJbmZvIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImdldEZlYXR1cmVJbmZvVGV4dCIsInF1ZXJ5X2xheWVycyIsImluZm9fZm9ybWF0Iiwic2VudCIsImFicnVwdCIsInN0b3AiLCJfeCIsIl94MiIsImFwcGx5IiwibG9hZE9wdGlvbnMiLCJFcnJvciIsIl9sb2FkTWV0YWRhdGEyIiwiX2NhbGxlZTIiLCJtZXRhZGF0YSIsIl90aGlzJGdldEN1cnJlbnRMYXllciIsIl90aGlzJGdldEN1cnJlbnRMYXllcjIiLCJfY2FsbGVlMiQiLCJfY29udGV4dDIiLCJnZXRNZXRhZGF0YSIsImdldEN1cnJlbnRMYXllciIsInQwIiwiZmluaXNoIiwiX2xvYWRJbWFnZSIsIl9jYWxsZWUzIiwiX3JlYXNvbiIsIl9nbCRnZXRDb250ZXh0QXR0cmlidTIiLCJfdGhpcyRwcm9wcyIsInRyYW5zcGFyZW50Iiwid2lkdGgiLCJoZWlnaHQiLCJtaW5MYXQiLCJtYXhMYXQiLCJyZXF1ZXN0UGFyYW1zIiwiX1dHUzg0VG9Qc2V1ZG9NZXJjYXRvIiwiX1dHUzg0VG9Qc2V1ZG9NZXJjYXRvMiIsIm1pblgiLCJtaW5ZIiwiX1dHUzg0VG9Qc2V1ZG9NZXJjYXRvMyIsIl9XR1M4NFRvUHNldWRvTWVyY2F0bzQiLCJtYXhYIiwibWF4WSIsImlzRXhwb3J0aW5nIiwiX3RoaXMkc3RhdGUkbGFzdFJlcXVlIiwiY3VycmVudFpvb20iLCJsYXN0Wm9vbSIsImlzWm9vbWluZ0luIiwibGFzdEJib3giLCJjdXJyZW50QmJveCIsImZ1bGx5Q29udGFpbmVkIiwiX3RoaXMkZ2V0Q3VycmVudExheWVyMyIsIl90aGlzJGNvbnRleHQkb25FcnJvciIsIl90aGlzJGNvbnRleHQiLCJfdGhpcyRnZXRDdXJyZW50TGF5ZXI0IiwiX2NhbGxlZTMkIiwiX2NvbnRleHQzIiwibGVuZ3RoIiwicmVzb2x1dGlvbiIsImdldEdsb2JlVmlzaWJsZUJvdW5kcyIsImdldEJvdW5kcyIsIk1hdGgiLCJhYnMiLCJiYm94IiwiYm91bmRpbmdCb3giLCJXR1M4NFRvUHNldWRvTWVyY2F0b3IiLCJfc2xpY2VkVG9BcnJheSIsImluRmxpZ2h0UmVxdWVzdFBhcmFtZXRlcnMiLCJfYXJlUmVxdWVzdFBhcmFtc0VxdWFsIiwiX2lzVmlld0NvdmVyZWRCeUxhc3RSZXF1ZXN0Iiwiem9vbSIsImZsb29yIiwiZ2V0UmVxdWVzdElkIiwic2V0TmVlZHNSZWRyYXciLCJnZXRJbWFnZSIsInNldFN0YXRlIiwib25FcnJvciIsIl94MyIsIl94NCIsImZuIiwibXMiLCJjbGVhclRpbWVvdXQiLCJfdGltZW91dElkIiwic2V0VGltZW91dCIsInAiLCJuIiwiY29udGFpbmVkIiwicHJldlNwYW5YIiwibmV4dFNwYW5YIiwicHJldlNwYW5ZIiwibmV4dFNwYW5ZIiwidG9sZXJhbmNlIiwicHJldkJib3giLCJuZXh0QmJveCIsImkiLCJfZGVmaW5lUHJvcGVydHkiLCJkZWZhdWx0IiwiX2xvbmdpdHVkZSIsImNlbnRlckxuZyIsImxvbmdpdHVkZSIsIlNBTVBMRVMiLCJsYXRzIiwibG5nT2Zmc2V0cyIsImoiLCJweCIsInB5IiwiY29vcmQiLCJ1bnByb2plY3QiLCJsbmciLCJsYXQiLCJOdW1iZXIiLCJpc0Zpbml0ZSIsInB1c2giLCJvZmZzZXQiLCJtaW4iLCJtYXgiLCJub3J0aFBvbGVWaXNpYmxlIiwiaXNHbG9iZVN1cmZhY2VQb2ludFZpc2libGUiLCJzb3V0aFBvbGVWaXNpYmxlIiwibWluTG5nIiwibWF4TG5nIiwibGF0UGFkIiwibG5nUGFkIiwicG9pbnQiLCJwcm9qZWN0UG9zaXRpb24iLCJjYW1lcmEiLCJjYW1lcmFQb3NpdGlvbiIsInJQb2ludCIsImh5cG90IiwickNhbSIsImNvc1N1cmZhY2UiLCJjb3NIb3Jpem9uIiwic2NyZWVuIiwicHJvamVjdCIsIkhBTEZfRUFSVEhfQ0lSQ1VNRkVSRU5DRSIsIlBJIiwibWVyY2F0b3IiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvd21zL3dtcy1sYXllci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQge2xuZ0xhdFRvV29ybGR9IGZyb20gJ0BtYXRoLmdsL3dlYi1tZXJjYXRvcic7XG5cbmltcG9ydCB7XG4gIExheWVyLFxuICBDb21wb3NpdGVMYXllcixcbiAgQ29tcG9zaXRlTGF5ZXJQcm9wcyxcbiAgVXBkYXRlUGFyYW1ldGVycyxcbiAgRGVmYXVsdFByb3BzLFxuICBWaWV3cG9ydCxcbiAgQ09PUkRJTkFURV9TWVNURU0sXG4gIF9kZWVwRXF1YWwgYXMgZGVlcEVxdWFsXG59IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xuaW1wb3J0IHtCaXRtYXBMYXllcn0gZnJvbSAnQGRlY2suZ2wvbGF5ZXJzJztcbmltcG9ydCB7SW1hZ2VTb3VyY2UsIFdNU0ltYWdlU291cmNlfSBmcm9tICdAbG9hZGVycy5nbC93bXMnO1xuXG5pbXBvcnQgdHlwZSB7SW1hZ2VTb3VyY2VNZXRhZGF0YX0gZnJvbSAnQGxvYWRlcnMuZ2wvbG9hZGVyLXV0aWxzJztcbmltcG9ydCB0eXBlIHtJbWFnZVR5cGV9IGZyb20gJ0Bsb2FkZXJzLmdsL3dtcyc7XG5cbi8vIFRPRE86IFRoaXMgaXMgYSBtb2RpZmllZCBjb3B5IG9mIFdNU0xheWVyIGZyb20gZGVjay5nbC4gUmVtb3ZlIHRoaXMgb25jZSB3ZSB1cGdyYWRlIGRlY2suZ2wgYW5kIGxvYWRlcnMuZ2wuXG5cbi8qKiBBbGwgcHJvcHMgc3VwcG9ydGVkIGJ5IHRoZSBUaWxlTGF5ZXIgKi9cbmV4cG9ydCB0eXBlIFdNU0xheWVyUHJvcHMgPSBDb21wb3NpdGVMYXllclByb3BzICYgX1dNU0xheWVyUHJvcHM7XG5cbi8qKiBQcm9wcyBhZGRlZCBieSB0aGUgVGlsZUxheWVyICovXG50eXBlIF9XTVNMYXllclByb3BzID0ge1xuICBkYXRhOiBzdHJpbmcgfCBJbWFnZVNvdXJjZTtcbiAgc2VydmljZVR5cGU/OiBzdHJpbmcgfCAnYXV0byc7XG4gIGxheWVycz86IHN0cmluZ1tdO1xuICBzcnM/OiAnRVBTRzo0MzI2JyB8ICdFUFNHOjM4NTcnIHwgJ2F1dG8nO1xuICB0cmFuc3BhcmVudD86IGJvb2xlYW47XG4gIG9uTWV0YWRhdGFMb2FkPzogKG1ldGFkYXRhOiBJbWFnZVNvdXJjZU1ldGFkYXRhKSA9PiB2b2lkO1xuICBvbk1ldGFkYXRhTG9hZEVycm9yPzogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcbiAgb25JbWFnZUxvYWRTdGFydD86IChyZXF1ZXN0SWQ6IHVua25vd24pID0+IHZvaWQ7XG4gIG9uSW1hZ2VMb2FkPzogKHJlcXVlc3RJZDogdW5rbm93bikgPT4gdm9pZDtcbiAgb25JbWFnZUxvYWRFcnJvcj86IChyZXF1ZXN0SWQ6IHVua25vd24sIGVycm9yOiBFcnJvcikgPT4gdm9pZDtcbn07XG5cbi8qKlxuICogSG93IG11Y2ggdGhlIHVzZXIgbWF5IHpvb20gaW4gKHNocmlua2luZyB0aGUgdmlzaWJsZSBzcGFuKSBiZWZvcmUgYSB2aWV3IHRoYXRcbiAqIGlzIHN0aWxsIGNvbnRhaW5lZCBpbiB0aGUgbGFzdCByZXF1ZXN0ZWQgZXh0ZW50IHRyaWdnZXJzIGEgZnJlc2gsIGhpZ2hlclxuICogcmVzb2x1dGlvbiByZXF1ZXN0LiBgMmAgbWVhbnMgdGhlIGNhY2hlZCBpbWFnZSBtYXkgYmUgc3RyZXRjaGVkIHVwIHRvIH4yeFxuICogYmVmb3JlIHJlZmV0Y2hpbmc7IGhpZ2hlciB2YWx1ZXMgbWVhbiBmZXdlciByZXF1ZXN0cyBidXQgYmx1cnJpZXIgem9vbS1pbnMuXG4gKi9cbmNvbnN0IENPVkVSQUdFX1JFRkVUQ0hfWk9PTV9GQUNUT1IgPSAyO1xuXG5jb25zdCBkZWZhdWx0UHJvcHM6IERlZmF1bHRQcm9wczxXTVNMYXllclByb3BzPiA9IHtcbiAgaWQ6ICdpbWFnZXJ5LWxheWVyJyxcbiAgZGF0YTogJycsXG4gIHNlcnZpY2VUeXBlOiAnYXV0bycsXG4gIHNyczogJ2F1dG8nLFxuICBsYXllcnM6IHt0eXBlOiAnYXJyYXknLCBjb21wYXJlOiB0cnVlLCB2YWx1ZTogW119LFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIG9uTWV0YWRhdGFMb2FkOiB7dHlwZTogJ2Z1bmN0aW9uJywgdmFsdWU6ICgpID0+IHt9fSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIG9uTWV0YWRhdGFMb2FkRXJyb3I6IHt0eXBlOiAnZnVuY3Rpb24nLCB2YWx1ZTogY29uc29sZS5lcnJvcn0sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25JbWFnZUxvYWRTdGFydDoge3R5cGU6ICdmdW5jdGlvbicsIHZhbHVlOiAoKSA9PiB7fX0sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25JbWFnZUxvYWQ6IHt0eXBlOiAnZnVuY3Rpb24nLCB2YWx1ZTogKCkgPT4ge319LFxuICBvbkltYWdlTG9hZEVycm9yOiB7XG4gICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICBjb21wYXJlOiBmYWxzZSxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICB2YWx1ZTogKHJlcXVlc3RJZDogdW5rbm93biwgZXJyb3I6IEVycm9yKSA9PiBjb25zb2xlLmVycm9yKGVycm9yLCByZXF1ZXN0SWQpXG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFdNU0xheWVyIGV4dGVuZHMgQ29tcG9zaXRlTGF5ZXI8UmVxdWlyZWQ8X1dNU0xheWVyUHJvcHM+PiB7XG4gIHN0YXRpYyBsYXllck5hbWUgPSAnV01TTGF5ZXInO1xuICBzdGF0aWMgZGVmYXVsdFByb3BzOiBEZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5cbiAgZGVjbGFyZSBzdGF0ZToge1xuICAgIGltYWdlU291cmNlOiBJbWFnZVNvdXJjZTtcbiAgICBpbWFnZTogSW1hZ2VUeXBlO1xuICAgIGJvdW5kczogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XG4gICAgbGFzdFJlcXVlc3RQYXJhbWV0ZXJzOiB7XG4gICAgICAvLyBUT0RPOiByZW1vdmUgYmJveCBvbmNlIGRlY2suZ2wgaXMgdXBncmFkZWQgdG8gXjguMTAgd2l0aCBsb2FkZXJzLmdsIF40XG4gICAgICBiYm94OiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXTtcbiAgICAgIGJvdW5kaW5nQm94OiBbW251bWJlciwgbnVtYmVyXSwgW251bWJlciwgbnVtYmVyXV07XG4gICAgICBsYXllcnM6IHN0cmluZ1tdO1xuICAgICAgc3JzOiAnRVBTRzo0MzI2JyB8ICdFUFNHOjM4NTcnO1xuICAgICAgd2lkdGg6IG51bWJlcjtcbiAgICAgIGhlaWdodDogbnVtYmVyO1xuICAgIH07XG4gICAgaW5GbGlnaHRSZXF1ZXN0UGFyYW1ldGVycz86IHtcbiAgICAgIGJib3g6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdO1xuICAgICAgYm91bmRpbmdCb3g6IFtbbnVtYmVyLCBudW1iZXJdLCBbbnVtYmVyLCBudW1iZXJdXTtcbiAgICAgIGxheWVyczogc3RyaW5nW107XG4gICAgICBzcnM6ICdFUFNHOjQzMjYnIHwgJ0VQU0c6Mzg1Nyc7XG4gICAgICB3aWR0aDogbnVtYmVyO1xuICAgICAgaGVpZ2h0OiBudW1iZXI7XG4gICAgfTtcbiAgICBsYXN0UmVxdWVzdElkOiBudW1iZXI7XG4gICAgX25leHRSZXF1ZXN0SWQ6IG51bWJlcjtcbiAgICAvKiogVE9ETzogQ2hhbmdlIGFueSA9PiBzZXRUaW1lb3V0IHJldHVybiB0eXBlLiBEaWZmZXJlbnQgYmV0d2VlbiBOb2RlIGFuZCBicm93c2VyLi4uICovXG4gICAgX3RpbWVvdXRJZDogYW55O1xuICAgIGxvYWRDb3VudGVyOiBudW1iZXI7XG4gICAgX2xhc3RSZXF1ZXN0Wm9vbTogbnVtYmVyO1xuICB9O1xuXG4gIC8qKiBSZXR1cm5zIHRydWUgaWYgYWxsIGFzeW5jIHJlc291cmNlcyBhcmUgbG9hZGVkICovXG4gIGdldCBpc0xvYWRlZCgpOiBib29sZWFuIHtcbiAgICAvLyBUcmFjayB0aGUgZXhwbGljaXQgbG9hZGluZyBkb25lIGJ5IHRoaXMgbGF5ZXJcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLnN0YXRlKSAmJiB0aGlzLnN0YXRlLmxvYWRDb3VudGVyID09PSAwICYmIHN1cGVyLmlzTG9hZGVkO1xuICB9XG5cbiAgLyoqIExldHMgZGVjay5nbCBrbm93IHRoYXQgd2Ugd2FudCB2aWV3cG9ydCBjaGFuZ2UgZXZlbnRzICovXG4gIG92ZXJyaWRlIHNob3VsZFVwZGF0ZVN0YXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgb3ZlcnJpZGUgaW5pdGlhbGl6ZVN0YXRlKCk6IHZvaWQge1xuICAgIC8vIGludGVudGlvbmFsbHkgZW1wdHksIGluaXRpYWxpemF0aW9uIGlzIGRvbmUgaW4gdXBkYXRlU3RhdGVcbiAgICB0aGlzLnN0YXRlLl9uZXh0UmVxdWVzdElkID0gMDtcbiAgICB0aGlzLnN0YXRlLmxhc3RSZXF1ZXN0SWQgPSAtMTtcbiAgICB0aGlzLnN0YXRlLmxvYWRDb3VudGVyID0gMDtcbiAgICB0aGlzLnN0YXRlLl9sYXN0UmVxdWVzdFpvb20gPSAtMTtcbiAgfVxuXG4gIG92ZXJyaWRlIHVwZGF0ZVN0YXRlKHtjaGFuZ2VGbGFncywgcHJvcHMsIG9sZFByb3BzfTogVXBkYXRlUGFyYW1ldGVyczx0aGlzPik6IHZvaWQge1xuICAgIGNvbnN0IHt2aWV3cG9ydH0gPSB0aGlzLmNvbnRleHQ7XG5cbiAgICAvLyBDaGVjayBpZiBkYXRhIHNvdXJjZSBoYXMgY2hhbmdlZFxuICAgIGlmIChjaGFuZ2VGbGFncy5kYXRhQ2hhbmdlZCB8fCBwcm9wcy5zZXJ2aWNlVHlwZSAhPT0gb2xkUHJvcHMuc2VydmljZVR5cGUpIHtcbiAgICAgIHRoaXMuc3RhdGUuaW1hZ2VTb3VyY2UgPSB0aGlzLl9jcmVhdGVJbWFnZVNvdXJjZShwcm9wcyk7XG5cbiAgICAgIHRoaXMuX2xvYWRNZXRhZGF0YSgpO1xuICAgICAgdGhpcy5kZWJvdW5jZSgoKSA9PiB0aGlzLmxvYWRJbWFnZSh2aWV3cG9ydCwgJ2ltYWdlIHNvdXJjZSBjaGFuZ2VkJyksIDApO1xuICAgIH0gZWxzZSBpZiAoIWRlZXBFcXVhbChwcm9wcy5sYXllcnMsIG9sZFByb3BzLmxheWVycywgMSkpIHtcbiAgICAgIHRoaXMuZGVib3VuY2UoKCkgPT4gdGhpcy5sb2FkSW1hZ2Uodmlld3BvcnQsICdsYXllcnMgY2hhbmdlZCcpLCAwKTtcbiAgICB9IGVsc2UgaWYgKGNoYW5nZUZsYWdzLnZpZXdwb3J0Q2hhbmdlZCkge1xuICAgICAgLy8gQ2hlY2sgaWYgcHJlc2VydmVEcmF3aW5nQnVmZmVyIGlzIGVuYWJsZWQgKGluZGljYXRlcyB2aWRlbyByZWNvcmRpbmcgb3IgaW1hZ2UgZXhwb3J0KVxuICAgICAgLy8gVXNlIG1pbmltYWwgZGVib3VuY2UgKDEwbXMpIGR1cmluZyBleHBvcnQgZm9yIHJlc3BvbnNpdmUgZnJhbWUgY2FwdHVyZVxuICAgICAgLy8gUmVxdWVzdCBkZWR1cGxpY2F0aW9uIGluIGxvYWRJbWFnZSBwcmV2ZW50cyBzcGFtIGZyb20gcmVkdW5kYW50IHZpZXdwb3J0IHVwZGF0ZXNcbiAgICAgIGNvbnN0IGdsID0gdGhpcy5jb250ZXh0LmdsO1xuICAgICAgY29uc3QgaXNQcmVzZXJ2aW5nQnVmZmVyID0gZ2w/LmdldENvbnRleHRBdHRyaWJ1dGVzPy4oKT8ucHJlc2VydmVEcmF3aW5nQnVmZmVyO1xuXG4gICAgICBjb25zdCBkZWJvdW5jZURlbGF5ID0gaXNQcmVzZXJ2aW5nQnVmZmVyID8gMTAgOiB1bmRlZmluZWQ7XG4gICAgICB0aGlzLmRlYm91bmNlKCgpID0+IHRoaXMubG9hZEltYWdlKHZpZXdwb3J0LCAndmlld3BvcnQgY2hhbmdlZCcpLCBkZWJvdW5jZURlbGF5KTtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSByZW5kZXJMYXllcnMoKTogTGF5ZXI8YW55PiB7XG4gICAgY29uc3Qge2JvdW5kcywgaW1hZ2UsIGxhc3RSZXF1ZXN0UGFyYW1ldGVyc30gPSB0aGlzLnN0YXRlO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIGltYWdlICYmXG4gICAgICBuZXcgQml0bWFwTGF5ZXIoe1xuICAgICAgICAuLi50aGlzLmdldFN1YkxheWVyUHJvcHMoe2lkOiAnYml0bWFwJ30pLFxuICAgICAgICBfaW1hZ2VDb29yZGluYXRlU3lzdGVtOlxuICAgICAgICAgIGxhc3RSZXF1ZXN0UGFyYW1ldGVycy5zcnMgPT09ICdFUFNHOjQzMjYnXG4gICAgICAgICAgICA/IENPT1JESU5BVEVfU1lTVEVNLkxOR0xBVFxuICAgICAgICAgICAgOiBDT09SRElOQVRFX1NZU1RFTS5DQVJURVNJQU4sXG4gICAgICAgIGJvdW5kcyxcbiAgICAgICAgaW1hZ2UsXG4gICAgICAgIHBpY2thYmxlOiB0aGlzLnByb3BzLnBpY2thYmxlXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBhc3luYyBnZXRGZWF0dXJlSW5mb1RleHQoeDogbnVtYmVyLCB5OiBudW1iZXIpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICBjb25zdCB7bGFzdFJlcXVlc3RQYXJhbWV0ZXJzfSA9IHRoaXMuc3RhdGU7XG4gICAgaWYgKGxhc3RSZXF1ZXN0UGFyYW1ldGVycykge1xuICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBVbmRvY3VtZW50ZWQgbWV0aG9kXG4gICAgICBjb25zdCBmZWF0dXJlSW5mbyA9IGF3YWl0IHRoaXMuc3RhdGUuaW1hZ2VTb3VyY2UuZ2V0RmVhdHVyZUluZm9UZXh0Py4oe1xuICAgICAgICAuLi5sYXN0UmVxdWVzdFBhcmFtZXRlcnMsXG4gICAgICAgIHF1ZXJ5X2xheWVyczogbGFzdFJlcXVlc3RQYXJhbWV0ZXJzLmxheWVycyxcbiAgICAgICAgeCxcbiAgICAgICAgeSxcbiAgICAgICAgaW5mb19mb3JtYXQ6ICdhcHBsaWNhdGlvbi92bmQub2djLmdtbCdcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGZlYXR1cmVJbmZvO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBfY3JlYXRlSW1hZ2VTb3VyY2UocHJvcHM6IFdNU0xheWVyUHJvcHMpOiBJbWFnZVNvdXJjZSB7XG4gICAgaWYgKHByb3BzLmRhdGEgaW5zdGFuY2VvZiBJbWFnZVNvdXJjZSkge1xuICAgICAgcmV0dXJuIHByb3BzLmRhdGE7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBwcm9wcy5kYXRhID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIG5ldyBXTVNJbWFnZVNvdXJjZShwcm9wcy5kYXRhLCB7XG4gICAgICAgIGxvYWRPcHRpb25zOiBwcm9wcy5sb2FkT3B0aW9uc1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGltYWdlIHNvdXJjZSBpbiBwcm9wcy5kYXRhJyk7XG4gIH1cblxuICAvKiogUnVuIGEgZ2V0TWV0YWRhdGEgb24gdGhlIGltYWdlIHNlcnZpY2UgKi9cbiAgYXN5bmMgX2xvYWRNZXRhZGF0YSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB7aW1hZ2VTb3VyY2V9ID0gdGhpcy5zdGF0ZTtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5sb2FkQ291bnRlcisrO1xuICAgICAgY29uc3QgbWV0YWRhdGEgPSBhd2FpdCBpbWFnZVNvdXJjZS5nZXRNZXRhZGF0YSgpO1xuXG4gICAgICAvLyBJZiBhIHJlcXVlc3QgdGFrZXMgYSBsb25nIHRpbWUsIGl0IG1heSBubyBsb25nZXIgYmUgZXhwZWN0ZWRcbiAgICAgIGlmICh0aGlzLnN0YXRlLmltYWdlU291cmNlID09PSBpbWFnZVNvdXJjZSkge1xuICAgICAgICB0aGlzLmdldEN1cnJlbnRMYXllcigpPy5wcm9wcy5vbk1ldGFkYXRhTG9hZChtZXRhZGF0YSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuZ2V0Q3VycmVudExheWVyKCk/LnByb3BzLm9uTWV0YWRhdGFMb2FkRXJyb3IoZXJyb3IgYXMgRXJyb3IpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLmxvYWRDb3VudGVyLS07XG4gICAgfVxuICB9XG5cbiAgLyoqIExvYWQgYW4gaW1hZ2UgKi9cbiAgYXN5bmMgbG9hZEltYWdlKHZpZXdwb3J0OiBWaWV3cG9ydCwgX3JlYXNvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qge2xheWVycywgc2VydmljZVR5cGUsIHRyYW5zcGFyZW50fSA9IHRoaXMucHJvcHM7XG5cbiAgICAvLyBUT0RPIC0gbW92ZSB0byBJbWFnZVNvdXJjZT9cbiAgICBpZiAoc2VydmljZVR5cGUgPT09ICd3bXMnICYmIGxheWVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBJbiBnbG9iZSBtb2RlIGRlY2sncyBHbG9iZVZpZXdwb3J0LmdldEJvdW5kcygpIG9ubHkgdW5wcm9qZWN0cyA0IGVkZ2VcbiAgICAvLyBtaWRwb2ludHMgYW5kIHRha2VzIHRoZWlyIG1pbi9tYXguIFRoYXQgbWlzc2VzIHRoZSBzY3JlZW4gY29ybmVycywgdGhlXG4gICAgLy8gY3VydmVkIGxpbWIsIGFuZCAobW9zdCBpbXBvcnRhbnRseSkgdGhlIGNhc2Ugd2hlcmUgYSBwb2xlIGlzIGluIHZpZXcgd2hlblxuICAgIC8vIGxvb2tpbmcgZnJvbSBhIGhpZ2ggbGF0aXR1ZGUg4oCUIHdoZXJlIGV2ZXJ5IG1lcmlkaWFuIGFuZCBwYXJ0IG9mIHRoZSBmYXJcbiAgICAvLyBoZW1pc3BoZXJlIGJlY29tZSB2aXNpYmxlLiBDb21wdXRlIGEgZnVsbGVyIHZpc2libGUgYm91bmRpbmcgYm94IGluc3RlYWQgc29cbiAgICAvLyB0aGUgcmVxdWVzdGVkIFdNUyBpbWFnZSBjb3ZlcnMgZXZlcnl0aGluZyBvbiBzY3JlZW4uXG4gICAgY29uc3QgYm91bmRzID0gdmlld3BvcnQucmVzb2x1dGlvblxuICAgICAgPyBnZXRHbG9iZVZpc2libGVCb3VuZHModmlld3BvcnQpXG4gICAgICA6IHZpZXdwb3J0LmdldEJvdW5kcygpO1xuICAgIGNvbnN0IHt3aWR0aCwgaGVpZ2h0fSA9IHZpZXdwb3J0O1xuICAgIFxuICAgIC8vIEVkZ2UgY2FzZTogd2hlbiBib3VuZHMgYXJlIHBlcmZlY3RseSBzeW1tZXRyaWMgYXJvdW5kIDDCsCAoYm90aCBsb25naXR1ZGUgYW5kIGxhdGl0dWRlKSxcbiAgICAvLyBpdCBjYW4gY2F1c2UgcmVuZGVyaW5nIGFydGlmYWN0cyB3aXRoIEVQU0c6NDMyNiBvbiB0aGUgZ2xvYmUuXG4gICAgLy8gQWRkIGFzeW1tZXRyeSB0byBhdm9pZCB0aGlzIGlzc3VlLlxuICAgIGlmICh2aWV3cG9ydC5yZXNvbHV0aW9uICYmIGJvdW5kcykge1xuICAgICAgY29uc3QgbWluTGF0ID0gYm91bmRzWzFdO1xuICAgICAgY29uc3QgbWF4TGF0ID0gYm91bmRzWzNdO1xuICAgICAgLy8gQ2hlY2sgaWYgbGF0aXR1ZGUgYm91bmRzIGFyZSBzeW1tZXRyaWMgYXJvdW5kIDDCsCAod2l0aGluIDAuMcKwIHRvbGVyYW5jZSlcbiAgICAgIGlmIChNYXRoLmFicyhtaW5MYXQgKyBtYXhMYXQpIDwgMC4xICYmIE1hdGguYWJzKG1pbkxhdCkgPiAxKSB7XG4gICAgICAgIGJvdW5kc1szXSArPSAwLjE7XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIGxldCB7c3JzfSA9IHRoaXMucHJvcHM7XG4gICAgaWYgKHNycyA9PT0gJ2F1dG8nKSB7XG4gICAgICAvLyBCaXRtYXBMYXllciBvbmx5IHN1cHBvcnRzIExOR0xBVCBvciBDQVJURVNJQU4gKFdlYi1NZXJjYXRvcilcbiAgICAgIHNycyA9IHZpZXdwb3J0LnJlc29sdXRpb24gPyAnRVBTRzo0MzI2JyA6ICdFUFNHOjM4NTcnO1xuICAgIH1cbiAgICBjb25zdCByZXF1ZXN0UGFyYW1zID0ge1xuICAgICAgd2lkdGgsXG4gICAgICBoZWlnaHQsXG4gICAgICAvLyBUT0RPOiByZW1vdmUgYmJveCBvbmNlIGRlY2suZ2wgaXMgdXBncmFkZWQgdG8gXjguMTAgd2l0aCBsb2FkZXJzLmdsIF40XG4gICAgICBiYm94OiBib3VuZHMsXG4gICAgICBib3VuZGluZ0JveDogW1xuICAgICAgICBbYm91bmRzWzBdLCBib3VuZHNbMV1dLFxuICAgICAgICBbYm91bmRzWzJdLCBib3VuZHNbM11dXG4gICAgICBdIGFzIFtbbnVtYmVyLCBudW1iZXJdLCBbbnVtYmVyLCBudW1iZXJdXSxcbiAgICAgIGxheWVycyxcbiAgICAgIHNycyxcbiAgICAgIHRyYW5zcGFyZW50XG4gICAgfTtcbiAgICBpZiAoc3JzID09PSAnRVBTRzozODU3Jykge1xuICAgICAgY29uc3QgW21pblgsIG1pblldID0gV0dTODRUb1BzZXVkb01lcmNhdG9yKFtib3VuZHNbMF0sIGJvdW5kc1sxXV0pO1xuICAgICAgY29uc3QgW21heFgsIG1heFldID0gV0dTODRUb1BzZXVkb01lcmNhdG9yKFtib3VuZHNbMl0sIGJvdW5kc1szXV0pO1xuICAgICAgcmVxdWVzdFBhcmFtcy5ib3VuZGluZ0JveCA9IFtcbiAgICAgICAgW21pblgsIG1pblldLFxuICAgICAgICBbbWF4WCwgbWF4WV1cbiAgICAgIF07XG4gICAgICAvLyBUT0RPOiByZW1vdmUgYmJveCBvbmNlIGRlY2suZ2wgaXMgdXBncmFkZWQgdG8gXjguMTAgd2l0aCBsb2FkZXJzLmdsIF40XG4gICAgICByZXF1ZXN0UGFyYW1zLmJib3ggPSBbbWluWCwgbWluWSwgbWF4WCwgbWF4WV07XG4gICAgfVxuXG4gICAgLy8gU2tpcCByZXF1ZXN0IGlmIHBhcmFtZXRlcnMgaGF2ZW4ndCBtZWFuaW5nZnVsbHkgY2hhbmdlZCBmcm9tIGFuIGluLWZsaWdodCByZXF1ZXN0XG4gICAgaWYgKFxuICAgICAgdGhpcy5zdGF0ZS5pbkZsaWdodFJlcXVlc3RQYXJhbWV0ZXJzICYmXG4gICAgICB0aGlzLl9hcmVSZXF1ZXN0UGFyYW1zRXF1YWwodGhpcy5zdGF0ZS5pbkZsaWdodFJlcXVlc3RQYXJhbWV0ZXJzLCByZXF1ZXN0UGFyYW1zKVxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFNraXAgcmVxdWVzdCBpZiB0aGUgbmV3IHZpZXcgaXMgYWxyZWFkeSBmdWxseSBjb3ZlcmVkIGJ5IHRoZSBsYXN0IENPTVBMRVRFRCByZXF1ZXN0XG4gICAgLy8gYXQgY29tcGFyYWJsZSByZXNvbHV0aW9uLiBUaGlzIGlzIHZlcnkgY29tbW9uIHdoaWxlIHBhbm5pbmcgKGFuZCBzbWFsbFxuICAgIC8vIHpvb20taW5zKSB3aXRoaW4gYSBsYXJnZXIsIHJlY2VudGx5IGZldGNoZWQgZXh0ZW50IOKAlCBlLmcuIG9uIHRoZSBnbG9iZSBhXG4gICAgLy8gc2luZ2xlIHJlcXVlc3QgY2FuIGNvdmVyIHRoZSB3aG9sZSB2aXNpYmxlIGhlbWlzcGhlcmUsIHNvIHJvdGF0aW5nIGFyb3VuZCBpdFxuICAgIC8vIHNob3VsZG4ndCBoaXQgdGhlIG5ldHdvcmsgYWdhaW4uIFRoZSBleGlzdGluZyBpbWFnZSBpcyBzaW1wbHkgcmVwb3NpdGlvbmVkIGJ5XG4gICAgLy8gdGhlIEJpdG1hcExheWVyLiBXZSBzdGlsbCByZWZldGNoIG9uY2UgdGhlIHVzZXIgem9vbXMgaW4gZW5vdWdoIHRoYXQgdGhlXG4gICAgLy8gY2FjaGVkIGltYWdlIHdvdWxkIGJlIHZpc2libHkgc3RyZXRjaGVkIChzZWUgQ09WRVJBR0VfUkVGRVRDSF9aT09NX0ZBQ1RPUikuXG4gICAgaWYgKFxuICAgICAgdGhpcy5zdGF0ZS5sYXN0UmVxdWVzdFBhcmFtZXRlcnMgJiZcbiAgICAgIHRoaXMuX2lzVmlld0NvdmVyZWRCeUxhc3RSZXF1ZXN0KHRoaXMuc3RhdGUubGFzdFJlcXVlc3RQYXJhbWV0ZXJzLCByZXF1ZXN0UGFyYW1zKVxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIER1cmluZyB2aWRlbyBleHBvcnQsIHRocm90dGxlIHpvb20taW4gcmVxdWVzdHMgdG8gb25seSBmaXJlIG9uIHpvb20gbGV2ZWwgY3Jvc3NpbmdzLlxuICAgIC8vIFRoZSBleGlzdGluZyBpbWFnZSBpcyBzdHJldGNoZWQgYnkgdGhlIEJpdG1hcExheWVyIHVudGlsIHRoZSBuZXh0IGxldmVsIGlzIHJlYWNoZWQuXG4gICAgLy8gSG93ZXZlciwgYWx3YXlzIGFsbG93IHJlcXVlc3RzIGlmIHRoZSBuZXcgdmlldyBpc24ndCBmdWxseSBjb3ZlcmVkIGJ5IHRoZSBsYXN0IGltYWdlLlxuICAgIGNvbnN0IGdsID0gdGhpcy5jb250ZXh0LmdsO1xuICAgIGNvbnN0IGlzRXhwb3J0aW5nID0gZ2w/LmdldENvbnRleHRBdHRyaWJ1dGVzPy4oKT8ucHJlc2VydmVEcmF3aW5nQnVmZmVyO1xuICAgIFxuICAgIGlmIChpc0V4cG9ydGluZyAmJiB0aGlzLnN0YXRlLl9sYXN0UmVxdWVzdFpvb20gPj0gMCkge1xuICAgICAgY29uc3QgY3VycmVudFpvb20gPSB2aWV3cG9ydC56b29tO1xuICAgICAgY29uc3QgbGFzdFpvb20gPSB0aGlzLnN0YXRlLl9sYXN0UmVxdWVzdFpvb207XG4gICAgICBjb25zdCBpc1pvb21pbmdJbiA9IGN1cnJlbnRab29tID4gbGFzdFpvb207XG4gICAgICBcbiAgICAgIC8vIENoZWNrIGlmIHRoZSBuZXcgdmlldyBpcyBmdWxseSBjb3ZlcmVkIGJ5IHRoZSBsYXN0IGxvYWRlZCBpbWFnZVxuICAgICAgY29uc3QgbGFzdEJib3ggPSB0aGlzLnN0YXRlLmxhc3RSZXF1ZXN0UGFyYW1ldGVycz8uYmJveDtcbiAgICAgIGNvbnN0IGN1cnJlbnRCYm94ID0gcmVxdWVzdFBhcmFtcy5iYm94O1xuICAgICAgbGV0IGZ1bGx5Q29udGFpbmVkID0gZmFsc2U7XG4gICAgICBcbiAgICAgIGlmIChsYXN0QmJveCAmJiBjdXJyZW50QmJveCkge1xuICAgICAgICAvLyBOZXcgYmJveCBtdXN0IGJlIGZ1bGx5IGluc2lkZSB0aGUgcHJldmlvdXMgYmJveFxuICAgICAgICBmdWxseUNvbnRhaW5lZCA9IFxuICAgICAgICAgIGN1cnJlbnRCYm94WzBdID49IGxhc3RCYm94WzBdICYmIFxuICAgICAgICAgIGN1cnJlbnRCYm94WzFdID49IGxhc3RCYm94WzFdICYmIFxuICAgICAgICAgIGN1cnJlbnRCYm94WzJdIDw9IGxhc3RCYm94WzJdICYmIFxuICAgICAgICAgIGN1cnJlbnRCYm94WzNdIDw9IGxhc3RCYm94WzNdO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBPbmx5IHRocm90dGxlIGlmOlxuICAgICAgLy8gMS4gWm9vbWluZyBpbiAobm90IHpvb21pbmcgb3V0IG9yIHBhbm5pbmcgYXQgc2FtZSB6b29tKVxuICAgICAgLy8gMi4gU2FtZSB6b29tIGZsb29yIChoYXZlbid0IGNyb3NzZWQgYW4gaW50ZWdlciB6b29tIGxldmVsKVxuICAgICAgLy8gMy4gTmV3IHZpZXcgaXMgZnVsbHkgY29udGFpbmVkIGluIHRoZSBsYXN0IGxvYWRlZCBpbWFnZSAobm8gdW5jb3ZlcmVkIGFyZWFzKVxuICAgICAgaWYgKGlzWm9vbWluZ0luICYmIE1hdGguZmxvb3IoY3VycmVudFpvb20pID09PSBNYXRoLmZsb29yKGxhc3Rab29tKSAmJiBmdWxseUNvbnRhaW5lZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWFyayByZXF1ZXN0IGFzIGluLWZsaWdodCB0byBwcmV2ZW50IGR1cGxpY2F0ZSByZXF1ZXN0c1xuICAgIHRoaXMuc3RhdGUuaW5GbGlnaHRSZXF1ZXN0UGFyYW1ldGVycyA9IHJlcXVlc3RQYXJhbXM7XG5cbiAgICBjb25zdCByZXF1ZXN0SWQgPSB0aGlzLmdldFJlcXVlc3RJZCgpO1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLmxvYWRDb3VudGVyKys7XG4gICAgICAvLyBUcmlnZ2VyIGEgcmVkcmF3IHRvIHVwZGF0ZSB0aGUgVUkgbG9hZGluZyBpbmRpY2F0b3JcbiAgICAgIHRoaXMuc2V0TmVlZHNSZWRyYXcoKTtcbiAgICAgIHRoaXMucHJvcHMub25JbWFnZUxvYWRTdGFydChyZXF1ZXN0SWQpO1xuXG4gICAgICBjb25zdCBpbWFnZSA9IGF3YWl0IHRoaXMuc3RhdGUuaW1hZ2VTb3VyY2UuZ2V0SW1hZ2UocmVxdWVzdFBhcmFtcyk7XG5cbiAgICAgIC8vIElmIGEgcmVxdWVzdCB0YWtlcyBhIGxvbmcgdGltZSwgbGF0ZXIgcmVxdWVzdHMgbWF5IGhhdmUgYWxyZWFkeSBsb2FkZWQuXG4gICAgICBpZiAodGhpcy5zdGF0ZS5sYXN0UmVxdWVzdElkIDwgcmVxdWVzdElkKSB7XG4gICAgICAgIHRoaXMuZ2V0Q3VycmVudExheWVyKCk/LnByb3BzLm9uSW1hZ2VMb2FkKHJlcXVlc3RJZCk7XG4gICAgICAgIC8vIFVwZGF0ZSBsYXN0UmVxdWVzdFBhcmFtZXRlcnMgb25seSBhZnRlciBzdWNjZXNzZnVsIGxvYWRcbiAgICAgICAgLy8gVGhpcyBlbnN1cmVzIGNvdmVyYWdlIGNoZWNrcyBvbmx5IHVzZSBzdWNjZXNzZnVsbHkgbG9hZGVkIGltYWdlc1xuICAgICAgICB0aGlzLnN0YXRlLmxhc3RSZXF1ZXN0UGFyYW1ldGVycyA9IHJlcXVlc3RQYXJhbXM7XG4gICAgICAgIHRoaXMuc3RhdGUuX2xhc3RSZXF1ZXN0Wm9vbSA9IHZpZXdwb3J0Lnpvb207XG4gICAgICAgIC8vIE5vdCB0eXBlIHNhZmUuLi5cbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgaW1hZ2UsXG4gICAgICAgICAgYm91bmRzLFxuICAgICAgICAgIGxhc3RSZXF1ZXN0SWQ6IHJlcXVlc3RJZFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5jb250ZXh0Lm9uRXJyb3I/LihlcnJvciBhcyBFcnJvciwgdGhpcyk7XG4gICAgICB0aGlzLmdldEN1cnJlbnRMYXllcigpPy5wcm9wcy5vbkltYWdlTG9hZEVycm9yKHJlcXVlc3RJZCwgZXJyb3IgYXMgRXJyb3IpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICAvLyBDbGVhciBpbi1mbGlnaHQgbWFya2VyIHdoZW4gcmVxdWVzdCBjb21wbGV0ZXMgKHN1Y2Nlc3Mgb3IgZXJyb3IpXG4gICAgICB0aGlzLnN0YXRlLmluRmxpZ2h0UmVxdWVzdFBhcmFtZXRlcnMgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLnN0YXRlLmxvYWRDb3VudGVyLS07XG4gICAgICAvLyBUcmlnZ2VyIGEgcmVkcmF3IHRvIHVwZGF0ZSB0aGUgVUkgbG9hZGluZyBpbmRpY2F0b3JcbiAgICAgIHRoaXMuc2V0TmVlZHNSZWRyYXcoKTtcbiAgICB9XG4gIH1cblxuICAvLyBIRUxQRVJTXG5cbiAgLyoqIEdsb2JhbCBjb3VudGVyIGZvciBpc3N1aW5nIHVuaXF1ZSByZXF1ZXN0IGlkcyAqL1xuICBwcml2YXRlIGdldFJlcXVlc3RJZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLl9uZXh0UmVxdWVzdElkKys7XG4gIH1cblxuICAvKiogUnVucyBhbiBhY3Rpb24gaW4gdGhlIGZ1dHVyZSwgY2FuY2VscyBpdCBpZiB0aGUgbmV3IGFjdGlvbiBpcyBpc3N1ZWQgYmVmb3JlIGl0IGV4ZWN1dGVzICovXG4gIHByaXZhdGUgZGVib3VuY2UoZm46ICgpID0+IHZvaWQsIG1zID0gNTAwKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuc3RhdGUuX3RpbWVvdXRJZCk7XG4gICAgdGhpcy5zdGF0ZS5fdGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiBmbigpLCBtcyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIHdoZW4gdGhlIGBuZXh0YCB2aWV3IGlzIGZ1bGx5IGluc2lkZSB0aGUgYHByZXZgIChsYXN0IHJlcXVlc3RlZClcbiAgICogZXh0ZW50IEFORCBub3QgbWVhbmluZ2Z1bGx5IGhpZ2hlciByZXNvbHV0aW9uLCBzbyB0aGUgY2FjaGVkIGltYWdlIGFscmVhZHlcbiAgICogY292ZXJzIHRoZSBzY3JlZW4gYW5kIG5vIG5ldyByZXF1ZXN0IGlzIG5lZWRlZC5cbiAgICovXG4gIHByaXZhdGUgX2lzVmlld0NvdmVyZWRCeUxhc3RSZXF1ZXN0KHByZXY6IGFueSwgbmV4dDogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gQ292ZXJhZ2Ugb25seSBtYWtlcyBzZW5zZSB3aXRoaW4gdGhlIHNhbWUgcHJvamVjdGlvbiAvIGRhdGFzZXQgLyBjYW52YXMgc2l6ZS5cbiAgICBpZiAoXG4gICAgICBwcmV2LnNycyAhPT0gbmV4dC5zcnMgfHxcbiAgICAgIHByZXYud2lkdGggIT09IG5leHQud2lkdGggfHxcbiAgICAgIHByZXYuaGVpZ2h0ICE9PSBuZXh0LmhlaWdodCB8fFxuICAgICAgcHJldi50cmFuc3BhcmVudCAhPT0gbmV4dC50cmFuc3BhcmVudCB8fFxuICAgICAgIWRlZXBFcXVhbChwcmV2LmxheWVycywgbmV4dC5sYXllcnMpXG4gICAgKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3QgcCA9IHByZXYuYmJveDtcbiAgICBjb25zdCBuID0gbmV4dC5iYm94O1xuICAgIGlmICghcCB8fCAhbikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIElzIHRoZSBuZXcgYmJveCBmdWxseSBjb250YWluZWQgd2l0aGluIHRoZSBwcmV2aW91c2x5IHJlcXVlc3RlZCBiYm94P1xuICAgIGNvbnN0IGNvbnRhaW5lZCA9IG5bMF0gPj0gcFswXSAmJiBuWzFdID49IHBbMV0gJiYgblsyXSA8PSBwWzJdICYmIG5bM10gPD0gcFszXTtcbiAgICBcbiAgICBpZiAoIWNvbnRhaW5lZCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIEdyb3VuZCByZXNvbHV0aW9uIGlzIHByb3BvcnRpb25hbCB0byBiYm94IHNwYW4gLyBwaXhlbCBjb3VudC4gVGhlIGd1YXJkXG4gICAgLy8gYWJvdmUgYWxyZWFkeSBlbnN1cmVkIHByZXYgYW5kIG5leHQgc2hhcmUgdGhlIHNhbWUgd2lkdGgvaGVpZ2h0LCBzbyBlcXVhbFxuICAgIC8vIHBpeGVsIGNvdW50cyBsZXQgdXMgY29tcGFyZSBzcGFucyBkaXJlY3RseS4gT25seSBza2lwIHdoaWxlIHRoZSBuZXcgdmlld1xuICAgIC8vIGlzbid0IG11Y2ggZmluZXIgdGhhbiB3aGF0IHdlIGFscmVhZHkgZmV0Y2hlZCwgb3RoZXJ3aXNlIHRoZSBjYWNoZWQgaW1hZ2VcbiAgICAvLyB3b3VsZCBsb29rIHN0cmV0Y2hlZC9ibHVycnkuXG4gICAgY29uc3QgcHJldlNwYW5YID0gcFsyXSAtIHBbMF07XG4gICAgY29uc3QgbmV4dFNwYW5YID0gblsyXSAtIG5bMF07XG4gICAgY29uc3QgcHJldlNwYW5ZID0gcFszXSAtIHBbMV07XG4gICAgY29uc3QgbmV4dFNwYW5ZID0gblszXSAtIG5bMV07XG5cbiAgICByZXR1cm4gKFxuICAgICAgbmV4dFNwYW5YID49IHByZXZTcGFuWCAvIENPVkVSQUdFX1JFRkVUQ0hfWk9PTV9GQUNUT1IgJiZcbiAgICAgIG5leHRTcGFuWSA+PSBwcmV2U3BhblkgLyBDT1ZFUkFHRV9SRUZFVENIX1pPT01fRkFDVE9SXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBDb21wYXJlIHJlcXVlc3QgcGFyYW1ldGVycyB0byBkZXRlcm1pbmUgaWYgYSBuZXcgcmVxdWVzdCBpcyBuZWVkZWQgKi9cbiAgcHJpdmF0ZSBfYXJlUmVxdWVzdFBhcmFtc0VxdWFsKHByZXY6IGFueSwgbmV4dDogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gQ29tcGFyZSBkaW1lbnNpb25zXG4gICAgaWYgKHByZXYud2lkdGggIT09IG5leHQud2lkdGggfHwgcHJldi5oZWlnaHQgIT09IG5leHQuaGVpZ2h0KSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gQ29tcGFyZSBTUlNcbiAgICBpZiAocHJldi5zcnMgIT09IG5leHQuc3JzKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gQ29tcGFyZSBsYXllcnNcbiAgICBpZiAoIWRlZXBFcXVhbChwcmV2LmxheWVycywgbmV4dC5sYXllcnMpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gQ29tcGFyZSB0cmFuc3BhcmVudFxuICAgIGlmIChwcmV2LnRyYW5zcGFyZW50ICE9PSBuZXh0LnRyYW5zcGFyZW50KSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gQ29tcGFyZSBib3VuZHMgd2l0aCB0b2xlcmFuY2UgZm9yIGZsb2F0aW5nIHBvaW50IHByZWNpc2lvblxuICAgIGNvbnN0IHRvbGVyYW5jZSA9IDFlLTEwO1xuICAgIGNvbnN0IHByZXZCYm94ID0gcHJldi5iYm94O1xuICAgIGNvbnN0IG5leHRCYm94ID0gbmV4dC5iYm94O1xuXG4gICAgaWYgKHByZXZCYm94ICYmIG5leHRCYm94KSB7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDQ7IGkrKykge1xuICAgICAgICBpZiAoTWF0aC5hYnMocHJldkJib3hbaV0gLSBuZXh0QmJveFtpXSkgPiB0b2xlcmFuY2UpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxufVxuXG4vKipcbiAqIENvbXB1dGUgdGhlIFttaW5MbmcsIG1pbkxhdCwgbWF4TG5nLCBtYXhMYXRdIGJvdW5kaW5nIGJveCBvZiB0aGUgcGFydCBvZiB0aGVcbiAqIGdsb2JlIHRoYXQgaXMgYWN0dWFsbHkgdmlzaWJsZSBvbiBzY3JlZW4uXG4gKlxuICogVW5saWtlIGBHbG9iZVZpZXdwb3J0LmdldEJvdW5kcygpYCAoNCBlZGdlIG1pZHBvaW50cyksIHRoaXMgc2FtcGxlcyBhIGdyaWQgb2ZcbiAqIHNjcmVlbiBwaXhlbHMsIHVucHJvamVjdHMgZWFjaCBvbnRvIHRoZSBzcGhlcmUgKGRlY2suZ2wgY2xhbXBzIHJheXMgdGhhdCBtaXNzXG4gKiB0aGUgZ2xvYmUgdG8gdGhlIHNpbGhvdWV0dGUvbGltYiwgd2hpY2ggaXMgZXhhY3RseSB0aGUgYm91bmRhcnkgd2Ugd2FudCksIGFuZFxuICogdGFrZXMgdGhlIGV4dGVudC4gSXQgYWRkaXRpb25hbGx5IGRldGVjdHMgd2hlbiBhIHBvbGUgaXMgaW4gdmlldzogYXQgYSBwb2xlIGFsbFxuICogbWVyaWRpYW5zIGNvbnZlcmdlLCBzbyB3ZSB3aWRlbiB0aGUgYm94IHRvIHRoZSBmdWxsIGxvbmdpdHVkZSByYW5nZSBhbmQgZXh0ZW5kXG4gKiB0aGUgbGF0aXR1ZGUgdXAgdG8gdGhlIHBvbGUsIHdoaWNoIGlzIHdoYXQgbWFrZXMgdmlld2luZyBmcm9tIG5lYXIgYSBwb2xlXG4gKiAoc2VlaW5nIGFjcm9zcyB0byB0aGUgZmFyIGhlbWlzcGhlcmUpIHdvcmsuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRHbG9iZVZpc2libGVCb3VuZHModmlld3BvcnQ6IFZpZXdwb3J0KTogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl0ge1xuICBjb25zdCB7d2lkdGgsIGhlaWdodH0gPSB2aWV3cG9ydDtcbiAgY29uc3QgY2VudGVyTG5nID0gKHZpZXdwb3J0IGFzIGFueSkubG9uZ2l0dWRlID8/IDA7XG5cbiAgY29uc3QgU0FNUExFUyA9IDg7IC8vIDh4OCBjZWxscyA9PiA5eDkgPSA4MSBzYW1wbGUgcG9pbnRzXG4gIGNvbnN0IGxhdHM6IG51bWJlcltdID0gW107XG4gIC8vIExvbmdpdHVkZXMgdHJhY2tlZCBhcyBzaWduZWQgb2Zmc2V0cyBmcm9tIHRoZSBjZW50ZXIgbG9uZ2l0dWRlLCB1bndyYXBwZWQgdG9cbiAgLy8gKC0xODAsIDE4MF0sIHNvIGFuIGFudGltZXJpZGlhbi1jcm9zc2luZyB2aWV3IHN0YXlzIGEgY29udGlndW91cyByYW5nZS5cbiAgY29uc3QgbG5nT2Zmc2V0czogbnVtYmVyW10gPSBbXTtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8PSBTQU1QTEVTOyBpKyspIHtcbiAgICBmb3IgKGxldCBqID0gMDsgaiA8PSBTQU1QTEVTOyBqKyspIHtcbiAgICAgIGNvbnN0IHB4ID0gKGkgLyBTQU1QTEVTKSAqIHdpZHRoO1xuICAgICAgY29uc3QgcHkgPSAoaiAvIFNBTVBMRVMpICogaGVpZ2h0O1xuICAgICAgY29uc3QgY29vcmQgPSB2aWV3cG9ydC51bnByb2plY3QoW3B4LCBweV0pO1xuICAgICAgY29uc3QgbG5nID0gY29vcmRbMF07XG4gICAgICBjb25zdCBsYXQgPSBjb29yZFsxXTtcbiAgICAgIGlmICghTnVtYmVyLmlzRmluaXRlKGxuZykgfHwgIU51bWJlci5pc0Zpbml0ZShsYXQpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgbGF0cy5wdXNoKGxhdCk7XG4gICAgICAvLyBXcmFwIHRoZSBvZmZzZXQgaW50byAoLTE4MCwgMTgwXS5cbiAgICAgIGNvbnN0IG9mZnNldCA9ICgobG5nIC0gY2VudGVyTG5nICsgNTQwKSAlIDM2MCkgLSAxODA7XG4gICAgICBsbmdPZmZzZXRzLnB1c2gob2Zmc2V0KTtcbiAgICB9XG4gIH1cblxuICAvLyBFeHRyZW1lbHkgZGVnZW5lcmF0ZSB2aWV3cG9ydDogZmFsbCBiYWNrIHRvIGRlY2sncyBkZWZhdWx0LlxuICBpZiAobGF0cy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gdmlld3BvcnQuZ2V0Qm91bmRzKCk7XG4gIH1cblxuICBsZXQgbWluTGF0ID0gTWF0aC5taW4oLi4ubGF0cyk7XG4gIGxldCBtYXhMYXQgPSBNYXRoLm1heCguLi5sYXRzKTtcblxuICBjb25zdCBub3J0aFBvbGVWaXNpYmxlID0gaXNHbG9iZVN1cmZhY2VQb2ludFZpc2libGUodmlld3BvcnQsIDkwKTtcbiAgY29uc3Qgc291dGhQb2xlVmlzaWJsZSA9IGlzR2xvYmVTdXJmYWNlUG9pbnRWaXNpYmxlKHZpZXdwb3J0LCAtOTApO1xuXG4gIGxldCBtaW5Mbmc6IG51bWJlcjtcbiAgbGV0IG1heExuZzogbnVtYmVyO1xuXG4gIGlmIChub3J0aFBvbGVWaXNpYmxlIHx8IHNvdXRoUG9sZVZpc2libGUpIHtcbiAgICAvLyBBIHBvbGUgaXMgb24gc2NyZWVuOiBldmVyeSBtZXJpZGlhbiBpcyB2aXNpYmxlLCBzbyBjb3ZlciBhbGwgbG9uZ2l0dWRlcyBhbmRcbiAgICAvLyBleHRlbmQgbGF0aXR1ZGUgdXAgdG8gdGhlIHZpc2libGUgcG9sZS5cbiAgICBtaW5MbmcgPSAtMTgwO1xuICAgIG1heExuZyA9IDE4MDtcbiAgICBpZiAobm9ydGhQb2xlVmlzaWJsZSkge1xuICAgICAgbWF4TGF0ID0gOTA7XG4gICAgfVxuICAgIGlmIChzb3V0aFBvbGVWaXNpYmxlKSB7XG4gICAgICBtaW5MYXQgPSAtOTA7XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIG1pbkxuZyA9IGNlbnRlckxuZyArIE1hdGgubWluKC4uLmxuZ09mZnNldHMpO1xuICAgIG1heExuZyA9IGNlbnRlckxuZyArIE1hdGgubWF4KC4uLmxuZ09mZnNldHMpO1xuICB9XG5cbiAgLy8gUGFkIHNsaWdodGx5IHNvIHRoZSBkaXNjcmV0ZSBzYW1wbGluZyBkb2Vzbid0IGNsaXAgdGhlIHRydWUgbGltYi5cbiAgY29uc3QgbGF0UGFkID0gTWF0aC5taW4oNSwgKG1heExhdCAtIG1pbkxhdCkgKiAwLjA1ICsgMC41KTtcbiAgbWluTGF0ID0gTWF0aC5tYXgoLTkwLCBtaW5MYXQgLSBsYXRQYWQpO1xuICBtYXhMYXQgPSBNYXRoLm1pbig5MCwgbWF4TGF0ICsgbGF0UGFkKTtcblxuICBpZiAobWF4TG5nIC0gbWluTG5nIDwgMzYwKSB7XG4gICAgY29uc3QgbG5nUGFkID0gTWF0aC5taW4oNSwgKG1heExuZyAtIG1pbkxuZykgKiAwLjA1ICsgMC41KTtcbiAgICBtaW5MbmcgLT0gbG5nUGFkO1xuICAgIG1heExuZyArPSBsbmdQYWQ7XG4gIH1cblxuICAvLyBBIHNpbmdsZSBFUFNHOjQzMjYgcmVjdGFuZ2xlIGNhbid0IGNyb3NzIHRoZSBhbnRpbWVyaWRpYW4sIHNvIGlmIHRoZSB2aXNpYmxlXG4gIC8vIHNwYW4gd3JhcHMgcGFzdCDCsTE4MCAob3IgY292ZXJzIHRoZSB3aG9sZSB3b3JsZCkgcmVxdWVzdCB0aGUgZnVsbCBsb25naXR1ZGVcbiAgLy8gcmFuZ2UuIFRoaXMgb3Zlci1jb3ZlcnMgb25seSBuZWFyIHRoZSBkYXRlbGluZSwgd2hpY2ggaXMgYW4gYWNjZXB0YWJsZVxuICAvLyB0cmFkZS1vZmYgZm9yIGEgdmFsaWQsIGdhcC1mcmVlIHJlcXVlc3QuXG4gIGlmIChtYXhMbmcgLSBtaW5MbmcgPj0gMzYwIHx8IG1pbkxuZyA8IC0xODAgfHwgbWF4TG5nID4gMTgwKSB7XG4gICAgbWluTG5nID0gLTE4MDtcbiAgICBtYXhMbmcgPSAxODA7XG4gIH1cblxuICByZXR1cm4gW21pbkxuZywgbWluTGF0LCBtYXhMbmcsIG1heExhdF07XG59XG5cbi8qKlxuICogV2hldGhlciBhIHBvaW50IG9uIHRoZSBnbG9iZSBzdXJmYWNlIGF0IHRoZSBnaXZlbiBsYXRpdHVkZSAobG9uZ2l0dWRlIGlzXG4gKiBpcnJlbGV2YW50IGF0IHRoZSBwb2xlcykgaXMgYm90aCBmcm9udC1mYWNpbmcgKG5vdCBvY2NsdWRlZCBieSB0aGUgZ2xvYmUpIGFuZFxuICogaW5zaWRlIHRoZSBzY3JlZW4uIFVzZXMgdGhlIHNwaGVyZS1ob3Jpem9uIHRlc3QgaW4gZGVjay5nbCBjb21tb24gc3BhY2U6XG4gKiBhIHN1cmZhY2UgcG9pbnQgaXMgZnJvbnQtZmFjaW5nIHdoZW4gdGhlIGFuZ2xlIGJldHdlZW4gaXRzIG91dHdhcmQgbm9ybWFsIGFuZFxuICogdGhlIGNhbWVyYSBkaXJlY3Rpb24gaXMgd2l0aGluIHRoZSBob3Jpem9uIGhhbGYtYW5nbGUsIGkuZS5cbiAqICAgZG90KG5vcm1hbGl6ZShwb2ludENvbW1vbiksIG5vcm1hbGl6ZShjYW1lcmFQb3NpdGlvbikpID49IHJhZGl1cyAvIGNhbWVyYURpc3RcbiAqL1xuZnVuY3Rpb24gaXNHbG9iZVN1cmZhY2VQb2ludFZpc2libGUodmlld3BvcnQ6IFZpZXdwb3J0LCBsYXQ6IG51bWJlcik6IGJvb2xlYW4ge1xuICBjb25zdCB7d2lkdGgsIGhlaWdodH0gPSB2aWV3cG9ydDtcbiAgY29uc3QgcG9pbnQgPSB2aWV3cG9ydC5wcm9qZWN0UG9zaXRpb24oWzAsIGxhdCwgMF0pO1xuICBjb25zdCBjYW1lcmEgPSB2aWV3cG9ydC5jYW1lcmFQb3NpdGlvbjtcblxuICBjb25zdCByUG9pbnQgPSBNYXRoLmh5cG90KHBvaW50WzBdLCBwb2ludFsxXSwgcG9pbnRbMl0pO1xuICBjb25zdCByQ2FtID0gTWF0aC5oeXBvdChjYW1lcmFbMF0sIGNhbWVyYVsxXSwgY2FtZXJhWzJdKTtcbiAgaWYgKHJQb2ludCA9PT0gMCB8fCByQ2FtID09PSAwIHx8IHJDYW0gPD0gclBvaW50KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgY29zU3VyZmFjZSA9XG4gICAgKHBvaW50WzBdICogY2FtZXJhWzBdICsgcG9pbnRbMV0gKiBjYW1lcmFbMV0gKyBwb2ludFsyXSAqIGNhbWVyYVsyXSkgLyAoclBvaW50ICogckNhbSk7XG4gIGNvbnN0IGNvc0hvcml6b24gPSByUG9pbnQgLyByQ2FtO1xuICBpZiAoY29zU3VyZmFjZSA8IGNvc0hvcml6b24pIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBzY3JlZW4gPSB2aWV3cG9ydC5wcm9qZWN0KFswLCBsYXQsIDBdKTtcbiAgcmV0dXJuIHNjcmVlblswXSA+PSAwICYmIHNjcmVlblswXSA8PSB3aWR0aCAmJiBzY3JlZW5bMV0gPj0gMCAmJiBzY3JlZW5bMV0gPD0gaGVpZ2h0O1xufVxuXG4vLyBodHRwczovL2Vwc2cuaW8vMzg1N1xuLy8gK3Byb2o9bWVyYyArYT02Mzc4MTM3ICtiPTYzNzgxMzcgK2xhdF90cz0wICtsb25fMD0wICt4XzA9MCAreV8wPTAgK2s9MSArdW5pdHM9bSArbmFkZ3JpZHM9QG51bGwgK3drdGV4dCArbm9fZGVmcyArdHlwZT1jcnNcbmNvbnN0IEhBTEZfRUFSVEhfQ0lSQ1VNRkVSRU5DRSA9IDYzNzgxMzcgKiBNYXRoLlBJO1xuXG4vKiogUHJvamVjdHMgRVBTRzo0MzI2IHRvIEVQU0c6Mzg1N1xuICogVGhpcyBpcyBhIGxpZ2h0d2VpZ2h0IHJlcGxhY2VtZW50IG9mIHByb2o0LiBVc2UgdGVzdHMgdG8gZW5zdXJlIGNvbmZvcm1hbmNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gV0dTODRUb1BzZXVkb01lcmNhdG9yKGNvb3JkOiBbbnVtYmVyLCBudW1iZXJdKTogW251bWJlciwgbnVtYmVyXSB7XG4gIGNvbnN0IG1lcmNhdG9yID0gbG5nTGF0VG9Xb3JsZChjb29yZCk7XG4gIG1lcmNhdG9yWzBdID0gKG1lcmNhdG9yWzBdIC8gMjU2IC0gMSkgKiBIQUxGX0VBUlRIX0NJUkNVTUZFUkVOQ0U7XG4gIG1lcmNhdG9yWzFdID0gKG1lcmNhdG9yWzFdIC8gMjU2IC0gMSkgKiBIQUxGX0VBUlRIX0NJUkNVTUZFUkVOQ0U7XG4gIHJldHVybiBtZXJjYXRvcjtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTs7QUFFQSxTQUFRQSxhQUFhLFFBQU8sdUJBQXVCO0FBRW5ELFNBRUVDLGNBQWMsRUFLZEMsaUJBQWlCLEVBQ2pCQyxVQUFVLElBQUlDLFNBQVMs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
|
|
619
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJsbmdMYXRUb1dvcmxkIiwiQ29tcG9zaXRlTGF5ZXIiLCJDT09SRElOQVRFX1NZU1RFTSIsIl9kZWVwRXF1YWwiLCJkZWVwRXF1YWwiLCJCaXRtYXBMYXllciIsIkltYWdlU291cmNlIiwiV01TSW1hZ2VTb3VyY2UiLCJDT1ZFUkFHRV9SRUZFVENIX1pPT01fRkFDVE9SIiwiZGVmYXVsdFByb3BzIiwiaWQiLCJkYXRhIiwic2VydmljZVR5cGUiLCJzcnMiLCJsYXllcnMiLCJ0eXBlIiwiY29tcGFyZSIsInZhbHVlIiwib25NZXRhZGF0YUxvYWQiLCJvbk1ldGFkYXRhTG9hZEVycm9yIiwiY29uc29sZSIsImVycm9yIiwib25JbWFnZUxvYWRTdGFydCIsIm9uSW1hZ2VMb2FkIiwib25JbWFnZUxvYWRFcnJvciIsInJlcXVlc3RJZCIsIldNU0xheWVyIiwiX0NvbXBvc2l0ZUxheWVyIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NhbGxTdXBlciIsImFyZ3VtZW50cyIsIl9pbmhlcml0cyIsIl9jcmVhdGVDbGFzcyIsImtleSIsImdldCIsIkJvb2xlYW4iLCJzdGF0ZSIsImxvYWRDb3VudGVyIiwiX3N1cGVyUHJvcEdldCIsInNob3VsZFVwZGF0ZVN0YXRlIiwiaW5pdGlhbGl6ZVN0YXRlIiwiX25leHRSZXF1ZXN0SWQiLCJsYXN0UmVxdWVzdElkIiwiX2xhc3RSZXF1ZXN0Wm9vbSIsInVwZGF0ZVN0YXRlIiwiX3JlZiIsIl90aGlzIiwiY2hhbmdlRmxhZ3MiLCJwcm9wcyIsIm9sZFByb3BzIiwidmlld3BvcnQiLCJjb250ZXh0IiwiZGF0YUNoYW5nZWQiLCJpbWFnZVNvdXJjZSIsIl9jcmVhdGVJbWFnZVNvdXJjZSIsIl9sb2FkTWV0YWRhdGEiLCJkZWJvdW5jZSIsImxvYWRJbWFnZSIsInZpZXdwb3J0Q2hhbmdlZCIsIl9nbCRnZXRDb250ZXh0QXR0cmlidSIsImdsIiwiaXNQcmVzZXJ2aW5nQnVmZmVyIiwiZ2V0Q29udGV4dEF0dHJpYnV0ZXMiLCJjYWxsIiwicHJlc2VydmVEcmF3aW5nQnVmZmVyIiwiZGVib3VuY2VEZWxheSIsInVuZGVmaW5lZCIsInJlbmRlckxheWVycyIsIl90aGlzJHN0YXRlIiwiYm91bmRzIiwiaW1hZ2UiLCJsYXN0UmVxdWVzdFBhcmFtZXRlcnMiLCJfb2JqZWN0U3ByZWFkIiwiZ2V0U3ViTGF5ZXJQcm9wcyIsIl9pbWFnZUNvb3JkaW5hdGVTeXN0ZW0iLCJMTkdMQVQiLCJDQVJURVNJQU4iLCJwaWNrYWJsZSIsIl9nZXRGZWF0dXJlSW5mb1RleHQiLCJfYXN5bmNUb0dlbmVyYXRvciIsIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJtYXJrIiwiX2NhbGxlZSIsIngiLCJ5IiwiX3RoaXMkc3RhdGUkaW1hZ2VTb3VyIiwiX3RoaXMkc3RhdGUkaW1hZ2VTb3VyMiIsImZlYXR1cmVJbmZvIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwibmV4dCIsImdldEZlYXR1cmVJbmZvVGV4dCIsInF1ZXJ5X2xheWVycyIsImluZm9fZm9ybWF0Iiwic2VudCIsImFicnVwdCIsInN0b3AiLCJfeCIsIl94MiIsImFwcGx5IiwibG9hZE9wdGlvbnMiLCJFcnJvciIsIl9sb2FkTWV0YWRhdGEyIiwiX2NhbGxlZTIiLCJtZXRhZGF0YSIsIl90aGlzJGdldEN1cnJlbnRMYXllciIsIl90aGlzJGdldEN1cnJlbnRMYXllcjIiLCJfY2FsbGVlMiQiLCJfY29udGV4dDIiLCJnZXRNZXRhZGF0YSIsImdldEN1cnJlbnRMYXllciIsInQwIiwiZmluaXNoIiwiX2xvYWRJbWFnZSIsIl9jYWxsZWUzIiwiX3JlYXNvbiIsIl9nbCRnZXRDb250ZXh0QXR0cmlidTIiLCJfdGhpcyRwcm9wcyIsInRyYW5zcGFyZW50Iiwid2lkdGgiLCJoZWlnaHQiLCJtaW5MYXQiLCJtYXhMYXQiLCJyZXF1ZXN0UGFyYW1zIiwiX1dHUzg0VG9Qc2V1ZG9NZXJjYXRvIiwiX1dHUzg0VG9Qc2V1ZG9NZXJjYXRvMiIsIm1pblgiLCJtaW5ZIiwiX1dHUzg0VG9Qc2V1ZG9NZXJjYXRvMyIsIl9XR1M4NFRvUHNldWRvTWVyY2F0bzQiLCJtYXhYIiwibWF4WSIsImlzRXhwb3J0aW5nIiwiX3RoaXMkc3RhdGUkbGFzdFJlcXVlIiwiY3VycmVudFpvb20iLCJsYXN0Wm9vbSIsImlzWm9vbWluZ0luIiwibGFzdEJib3giLCJjdXJyZW50QmJveCIsImZ1bGx5Q29udGFpbmVkIiwiX3RoaXMkZ2V0Q3VycmVudExheWVyMyIsIl90aGlzJGNvbnRleHQkb25FcnJvciIsIl90aGlzJGNvbnRleHQiLCJfdGhpcyRnZXRDdXJyZW50TGF5ZXI0IiwiX2NhbGxlZTMkIiwiX2NvbnRleHQzIiwibGVuZ3RoIiwicmVzb2x1dGlvbiIsImdldEdsb2JlVmlzaWJsZUJvdW5kcyIsImdldEJvdW5kcyIsIk1hdGgiLCJhYnMiLCJiYm94IiwiYm91bmRpbmdCb3giLCJXR1M4NFRvUHNldWRvTWVyY2F0b3IiLCJfc2xpY2VkVG9BcnJheSIsImluRmxpZ2h0UmVxdWVzdFBhcmFtZXRlcnMiLCJfYXJlUmVxdWVzdFBhcmFtc0VxdWFsIiwiX2lzVmlld0NvdmVyZWRCeUxhc3RSZXF1ZXN0Iiwiem9vbSIsImZsb29yIiwiZ2V0UmVxdWVzdElkIiwic2V0TmVlZHNSZWRyYXciLCJnZXRJbWFnZSIsInNldFN0YXRlIiwib25FcnJvciIsIl94MyIsIl94NCIsImZuIiwibXMiLCJjbGVhclRpbWVvdXQiLCJfdGltZW91dElkIiwic2V0VGltZW91dCIsInAiLCJuIiwiY29udGFpbmVkIiwicHJldlNwYW5YIiwibmV4dFNwYW5YIiwicHJldlNwYW5ZIiwibmV4dFNwYW5ZIiwidG9sZXJhbmNlIiwicHJldkJib3giLCJuZXh0QmJveCIsImkiLCJfZGVmaW5lUHJvcGVydHkiLCJkZWZhdWx0IiwiX2xvbmdpdHVkZSIsImNlbnRlckxuZyIsImxvbmdpdHVkZSIsIlNBTVBMRVMiLCJsYXRzIiwibG5nT2Zmc2V0cyIsImoiLCJweCIsInB5IiwiY29vcmQiLCJ1bnByb2plY3QiLCJsbmciLCJsYXQiLCJOdW1iZXIiLCJpc0Zpbml0ZSIsInB1c2giLCJvZmZzZXQiLCJtaW4iLCJtYXgiLCJub3J0aFBvbGVWaXNpYmxlIiwiaXNHbG9iZVN1cmZhY2VQb2ludFZpc2libGUiLCJzb3V0aFBvbGVWaXNpYmxlIiwibWluTG5nIiwibWF4TG5nIiwibGF0UGFkIiwibG5nUGFkIiwicG9pbnQiLCJwcm9qZWN0UG9zaXRpb24iLCJjYW1lcmEiLCJjYW1lcmFQb3NpdGlvbiIsInJQb2ludCIsImh5cG90IiwickNhbSIsImNvc1N1cmZhY2UiLCJjb3NIb3Jpem9uIiwic2NyZWVuIiwicHJvamVjdCIsIkhBTEZfRUFSVEhfQ0lSQ1VNRkVSRU5DRSIsIlBJIiwibWVyY2F0b3IiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvd21zL3dtcy1sYXllci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQge2xuZ0xhdFRvV29ybGR9IGZyb20gJ0BtYXRoLmdsL3dlYi1tZXJjYXRvcic7XG5cbmltcG9ydCB7XG4gIExheWVyLFxuICBDb21wb3NpdGVMYXllcixcbiAgQ29tcG9zaXRlTGF5ZXJQcm9wcyxcbiAgVXBkYXRlUGFyYW1ldGVycyxcbiAgRGVmYXVsdFByb3BzLFxuICBWaWV3cG9ydCxcbiAgQ09PUkRJTkFURV9TWVNURU0sXG4gIF9kZWVwRXF1YWwgYXMgZGVlcEVxdWFsXG59IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xuaW1wb3J0IHtCaXRtYXBMYXllcn0gZnJvbSAnQGRlY2suZ2wvbGF5ZXJzJztcbmltcG9ydCB7SW1hZ2VTb3VyY2UsIFdNU0ltYWdlU291cmNlfSBmcm9tICdAbG9hZGVycy5nbC93bXMnO1xuXG5pbXBvcnQgdHlwZSB7SW1hZ2VTb3VyY2VNZXRhZGF0YX0gZnJvbSAnQGxvYWRlcnMuZ2wvbG9hZGVyLXV0aWxzJztcbmltcG9ydCB0eXBlIHtJbWFnZVR5cGV9IGZyb20gJ0Bsb2FkZXJzLmdsL3dtcyc7XG5cbi8vIFRPRE86IFRoaXMgaXMgYSBtb2RpZmllZCBjb3B5IG9mIFdNU0xheWVyIGZyb20gZGVjay5nbC4gUmVtb3ZlIHRoaXMgb25jZSB3ZSB1cGdyYWRlIGRlY2suZ2wgYW5kIGxvYWRlcnMuZ2wuXG5cbi8qKiBBbGwgcHJvcHMgc3VwcG9ydGVkIGJ5IHRoZSBUaWxlTGF5ZXIgKi9cbmV4cG9ydCB0eXBlIFdNU0xheWVyUHJvcHMgPSBDb21wb3NpdGVMYXllclByb3BzICYgX1dNU0xheWVyUHJvcHM7XG5cbi8qKiBQcm9wcyBhZGRlZCBieSB0aGUgVGlsZUxheWVyICovXG50eXBlIF9XTVNMYXllclByb3BzID0ge1xuICBkYXRhOiBzdHJpbmcgfCBJbWFnZVNvdXJjZTtcbiAgc2VydmljZVR5cGU/OiBzdHJpbmcgfCAnYXV0byc7XG4gIGxheWVycz86IHN0cmluZ1tdO1xuICBzcnM/OiAnRVBTRzo0MzI2JyB8ICdFUFNHOjM4NTcnIHwgJ2F1dG8nO1xuICB0cmFuc3BhcmVudD86IGJvb2xlYW47XG4gIG9uTWV0YWRhdGFMb2FkPzogKG1ldGFkYXRhOiBJbWFnZVNvdXJjZU1ldGFkYXRhKSA9PiB2b2lkO1xuICBvbk1ldGFkYXRhTG9hZEVycm9yPzogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcbiAgb25JbWFnZUxvYWRTdGFydD86IChyZXF1ZXN0SWQ6IHVua25vd24pID0+IHZvaWQ7XG4gIG9uSW1hZ2VMb2FkPzogKHJlcXVlc3RJZDogdW5rbm93bikgPT4gdm9pZDtcbiAgb25JbWFnZUxvYWRFcnJvcj86IChyZXF1ZXN0SWQ6IHVua25vd24sIGVycm9yOiBFcnJvcikgPT4gdm9pZDtcbn07XG5cbi8qKlxuICogSG93IG11Y2ggdGhlIHVzZXIgbWF5IHpvb20gaW4gKHNocmlua2luZyB0aGUgdmlzaWJsZSBzcGFuKSBiZWZvcmUgYSB2aWV3IHRoYXRcbiAqIGlzIHN0aWxsIGNvbnRhaW5lZCBpbiB0aGUgbGFzdCByZXF1ZXN0ZWQgZXh0ZW50IHRyaWdnZXJzIGEgZnJlc2gsIGhpZ2hlclxuICogcmVzb2x1dGlvbiByZXF1ZXN0LiBgMmAgbWVhbnMgdGhlIGNhY2hlZCBpbWFnZSBtYXkgYmUgc3RyZXRjaGVkIHVwIHRvIH4yeFxuICogYmVmb3JlIHJlZmV0Y2hpbmc7IGhpZ2hlciB2YWx1ZXMgbWVhbiBmZXdlciByZXF1ZXN0cyBidXQgYmx1cnJpZXIgem9vbS1pbnMuXG4gKi9cbmNvbnN0IENPVkVSQUdFX1JFRkVUQ0hfWk9PTV9GQUNUT1IgPSAyO1xuXG5jb25zdCBkZWZhdWx0UHJvcHM6IERlZmF1bHRQcm9wczxXTVNMYXllclByb3BzPiA9IHtcbiAgaWQ6ICdpbWFnZXJ5LWxheWVyJyxcbiAgZGF0YTogJycsXG4gIHNlcnZpY2VUeXBlOiAnYXV0bycsXG4gIHNyczogJ2F1dG8nLFxuICBsYXllcnM6IHt0eXBlOiAnYXJyYXknLCBjb21wYXJlOiB0cnVlLCB2YWx1ZTogW119LFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIG9uTWV0YWRhdGFMb2FkOiB7dHlwZTogJ2Z1bmN0aW9uJywgdmFsdWU6ICgpID0+IHt9fSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIG9uTWV0YWRhdGFMb2FkRXJyb3I6IHt0eXBlOiAnZnVuY3Rpb24nLCB2YWx1ZTogY29uc29sZS5lcnJvcn0sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25JbWFnZUxvYWRTdGFydDoge3R5cGU6ICdmdW5jdGlvbicsIHZhbHVlOiAoKSA9PiB7fX0sXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25JbWFnZUxvYWQ6IHt0eXBlOiAnZnVuY3Rpb24nLCB2YWx1ZTogKCkgPT4ge319LFxuICBvbkltYWdlTG9hZEVycm9yOiB7XG4gICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICBjb21wYXJlOiBmYWxzZSxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICB2YWx1ZTogKHJlcXVlc3RJZDogdW5rbm93biwgZXJyb3I6IEVycm9yKSA9PiBjb25zb2xlLmVycm9yKGVycm9yLCByZXF1ZXN0SWQpXG4gIH1cbn07XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFdNU0xheWVyIGV4dGVuZHMgQ29tcG9zaXRlTGF5ZXI8UmVxdWlyZWQ8X1dNU0xheWVyUHJvcHM+PiB7XG4gIHN0YXRpYyBsYXllck5hbWUgPSAnV01TTGF5ZXInO1xuICBzdGF0aWMgZGVmYXVsdFByb3BzOiBEZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5cbiAgZGVjbGFyZSBzdGF0ZToge1xuICAgIGltYWdlU291cmNlOiBJbWFnZVNvdXJjZTtcbiAgICBpbWFnZTogSW1hZ2VUeXBlO1xuICAgIGJvdW5kczogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XG4gICAgbGFzdFJlcXVlc3RQYXJhbWV0ZXJzOiB7XG4gICAgICAvLyBUT0RPOiByZW1vdmUgYmJveCBvbmNlIGRlY2suZ2wgaXMgdXBncmFkZWQgdG8gXjguMTAgd2l0aCBsb2FkZXJzLmdsIF40XG4gICAgICBiYm94OiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXTtcbiAgICAgIGJvdW5kaW5nQm94OiBbW251bWJlciwgbnVtYmVyXSwgW251bWJlciwgbnVtYmVyXV07XG4gICAgICBsYXllcnM6IHN0cmluZ1tdO1xuICAgICAgc3JzOiAnRVBTRzo0MzI2JyB8ICdFUFNHOjM4NTcnO1xuICAgICAgd2lkdGg6IG51bWJlcjtcbiAgICAgIGhlaWdodDogbnVtYmVyO1xuICAgIH07XG4gICAgaW5GbGlnaHRSZXF1ZXN0UGFyYW1ldGVycz86IHtcbiAgICAgIGJib3g6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdO1xuICAgICAgYm91bmRpbmdCb3g6IFtbbnVtYmVyLCBudW1iZXJdLCBbbnVtYmVyLCBudW1iZXJdXTtcbiAgICAgIGxheWVyczogc3RyaW5nW107XG4gICAgICBzcnM6ICdFUFNHOjQzMjYnIHwgJ0VQU0c6Mzg1Nyc7XG4gICAgICB3aWR0aDogbnVtYmVyO1xuICAgICAgaGVpZ2h0OiBudW1iZXI7XG4gICAgfTtcbiAgICBsYXN0UmVxdWVzdElkOiBudW1iZXI7XG4gICAgX25leHRSZXF1ZXN0SWQ6IG51bWJlcjtcbiAgICAvKiogVE9ETzogQ2hhbmdlIGFueSA9PiBzZXRUaW1lb3V0IHJldHVybiB0eXBlLiBEaWZmZXJlbnQgYmV0d2VlbiBOb2RlIGFuZCBicm93c2VyLi4uICovXG4gICAgX3RpbWVvdXRJZDogYW55O1xuICAgIGxvYWRDb3VudGVyOiBudW1iZXI7XG4gICAgX2xhc3RSZXF1ZXN0Wm9vbTogbnVtYmVyO1xuICB9O1xuXG4gIC8qKiBSZXR1cm5zIHRydWUgaWYgYWxsIGFzeW5jIHJlc291cmNlcyBhcmUgbG9hZGVkICovXG4gIGdldCBpc0xvYWRlZCgpOiBib29sZWFuIHtcbiAgICAvLyBUcmFjayB0aGUgZXhwbGljaXQgbG9hZGluZyBkb25lIGJ5IHRoaXMgbGF5ZXJcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLnN0YXRlKSAmJiB0aGlzLnN0YXRlLmxvYWRDb3VudGVyID09PSAwICYmIHN1cGVyLmlzTG9hZGVkO1xuICB9XG5cbiAgLyoqIExldHMgZGVjay5nbCBrbm93IHRoYXQgd2Ugd2FudCB2aWV3cG9ydCBjaGFuZ2UgZXZlbnRzICovXG4gIG92ZXJyaWRlIHNob3VsZFVwZGF0ZVN0YXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgb3ZlcnJpZGUgaW5pdGlhbGl6ZVN0YXRlKCk6IHZvaWQge1xuICAgIC8vIGludGVudGlvbmFsbHkgZW1wdHksIGluaXRpYWxpemF0aW9uIGlzIGRvbmUgaW4gdXBkYXRlU3RhdGVcbiAgICB0aGlzLnN0YXRlLl9uZXh0UmVxdWVzdElkID0gMDtcbiAgICB0aGlzLnN0YXRlLmxhc3RSZXF1ZXN0SWQgPSAtMTtcbiAgICB0aGlzLnN0YXRlLmxvYWRDb3VudGVyID0gMDtcbiAgICB0aGlzLnN0YXRlLl9sYXN0UmVxdWVzdFpvb20gPSAtMTtcbiAgfVxuXG4gIG92ZXJyaWRlIHVwZGF0ZVN0YXRlKHtjaGFuZ2VGbGFncywgcHJvcHMsIG9sZFByb3BzfTogVXBkYXRlUGFyYW1ldGVyczx0aGlzPik6IHZvaWQge1xuICAgIGNvbnN0IHt2aWV3cG9ydH0gPSB0aGlzLmNvbnRleHQ7XG5cbiAgICAvLyBDaGVjayBpZiBkYXRhIHNvdXJjZSBoYXMgY2hhbmdlZFxuICAgIGlmIChjaGFuZ2VGbGFncy5kYXRhQ2hhbmdlZCB8fCBwcm9wcy5zZXJ2aWNlVHlwZSAhPT0gb2xkUHJvcHMuc2VydmljZVR5cGUpIHtcbiAgICAgIHRoaXMuc3RhdGUuaW1hZ2VTb3VyY2UgPSB0aGlzLl9jcmVhdGVJbWFnZVNvdXJjZShwcm9wcyk7XG5cbiAgICAgIHRoaXMuX2xvYWRNZXRhZGF0YSgpO1xuICAgICAgdGhpcy5kZWJvdW5jZSgoKSA9PiB0aGlzLmxvYWRJbWFnZSh2aWV3cG9ydCwgJ2ltYWdlIHNvdXJjZSBjaGFuZ2VkJyksIDApO1xuICAgIH0gZWxzZSBpZiAoIWRlZXBFcXVhbChwcm9wcy5sYXllcnMsIG9sZFByb3BzLmxheWVycywgMSkpIHtcbiAgICAgIHRoaXMuZGVib3VuY2UoKCkgPT4gdGhpcy5sb2FkSW1hZ2Uodmlld3BvcnQsICdsYXllcnMgY2hhbmdlZCcpLCAwKTtcbiAgICB9IGVsc2UgaWYgKGNoYW5nZUZsYWdzLnZpZXdwb3J0Q2hhbmdlZCkge1xuICAgICAgLy8gQ2hlY2sgaWYgcHJlc2VydmVEcmF3aW5nQnVmZmVyIGlzIGVuYWJsZWQgKGluZGljYXRlcyB2aWRlbyByZWNvcmRpbmcgb3IgaW1hZ2UgZXhwb3J0KVxuICAgICAgLy8gVXNlIG1pbmltYWwgZGVib3VuY2UgKDEwbXMpIGR1cmluZyBleHBvcnQgZm9yIHJlc3BvbnNpdmUgZnJhbWUgY2FwdHVyZVxuICAgICAgLy8gUmVxdWVzdCBkZWR1cGxpY2F0aW9uIGluIGxvYWRJbWFnZSBwcmV2ZW50cyBzcGFtIGZyb20gcmVkdW5kYW50IHZpZXdwb3J0IHVwZGF0ZXNcbiAgICAgIGNvbnN0IGdsID0gdGhpcy5jb250ZXh0LmdsO1xuICAgICAgY29uc3QgaXNQcmVzZXJ2aW5nQnVmZmVyID0gZ2w/LmdldENvbnRleHRBdHRyaWJ1dGVzPy4oKT8ucHJlc2VydmVEcmF3aW5nQnVmZmVyO1xuXG4gICAgICBjb25zdCBkZWJvdW5jZURlbGF5ID0gaXNQcmVzZXJ2aW5nQnVmZmVyID8gMTAgOiB1bmRlZmluZWQ7XG4gICAgICB0aGlzLmRlYm91bmNlKCgpID0+IHRoaXMubG9hZEltYWdlKHZpZXdwb3J0LCAndmlld3BvcnQgY2hhbmdlZCcpLCBkZWJvdW5jZURlbGF5KTtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSByZW5kZXJMYXllcnMoKTogTGF5ZXI8YW55PiB7XG4gICAgY29uc3Qge2JvdW5kcywgaW1hZ2UsIGxhc3RSZXF1ZXN0UGFyYW1ldGVyc30gPSB0aGlzLnN0YXRlO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIGltYWdlICYmXG4gICAgICBuZXcgQml0bWFwTGF5ZXIoe1xuICAgICAgICAuLi50aGlzLmdldFN1YkxheWVyUHJvcHMoe2lkOiAnYml0bWFwJ30pLFxuICAgICAgICBfaW1hZ2VDb29yZGluYXRlU3lzdGVtOlxuICAgICAgICAgIGxhc3RSZXF1ZXN0UGFyYW1ldGVycy5zcnMgPT09ICdFUFNHOjQzMjYnXG4gICAgICAgICAgICA/IENPT1JESU5BVEVfU1lTVEVNLkxOR0xBVFxuICAgICAgICAgICAgOiBDT09SRElOQVRFX1NZU1RFTS5DQVJURVNJQU4sXG4gICAgICAgIGJvdW5kcyxcbiAgICAgICAgaW1hZ2UsXG4gICAgICAgIHBpY2thYmxlOiB0aGlzLnByb3BzLnBpY2thYmxlXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBhc3luYyBnZXRGZWF0dXJlSW5mb1RleHQoeDogbnVtYmVyLCB5OiBudW1iZXIpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICBjb25zdCB7bGFzdFJlcXVlc3RQYXJhbWV0ZXJzfSA9IHRoaXMuc3RhdGU7XG4gICAgaWYgKGxhc3RSZXF1ZXN0UGFyYW1ldGVycykge1xuICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBVbmRvY3VtZW50ZWQgbWV0aG9kXG4gICAgICBjb25zdCBmZWF0dXJlSW5mbyA9IGF3YWl0IHRoaXMuc3RhdGUuaW1hZ2VTb3VyY2UuZ2V0RmVhdHVyZUluZm9UZXh0Py4oe1xuICAgICAgICAuLi5sYXN0UmVxdWVzdFBhcmFtZXRlcnMsXG4gICAgICAgIHF1ZXJ5X2xheWVyczogbGFzdFJlcXVlc3RQYXJhbWV0ZXJzLmxheWVycyxcbiAgICAgICAgeCxcbiAgICAgICAgeSxcbiAgICAgICAgaW5mb19mb3JtYXQ6ICdhcHBsaWNhdGlvbi92bmQub2djLmdtbCdcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGZlYXR1cmVJbmZvO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBfY3JlYXRlSW1hZ2VTb3VyY2UocHJvcHM6IFdNU0xheWVyUHJvcHMpOiBJbWFnZVNvdXJjZSB7XG4gICAgaWYgKHByb3BzLmRhdGEgaW5zdGFuY2VvZiBJbWFnZVNvdXJjZSkge1xuICAgICAgcmV0dXJuIHByb3BzLmRhdGE7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiBwcm9wcy5kYXRhID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIG5ldyBXTVNJbWFnZVNvdXJjZShwcm9wcy5kYXRhLCB7XG4gICAgICAgIGxvYWRPcHRpb25zOiBwcm9wcy5sb2FkT3B0aW9uc1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGltYWdlIHNvdXJjZSBpbiBwcm9wcy5kYXRhJyk7XG4gIH1cblxuICAvKiogUnVuIGEgZ2V0TWV0YWRhdGEgb24gdGhlIGltYWdlIHNlcnZpY2UgKi9cbiAgYXN5bmMgX2xvYWRNZXRhZGF0YSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCB7aW1hZ2VTb3VyY2V9ID0gdGhpcy5zdGF0ZTtcbiAgICB0cnkge1xuICAgICAgdGhpcy5zdGF0ZS5sb2FkQ291bnRlcisrO1xuICAgICAgY29uc3QgbWV0YWRhdGEgPSBhd2FpdCBpbWFnZVNvdXJjZS5nZXRNZXRhZGF0YSgpO1xuXG4gICAgICAvLyBJZiBhIHJlcXVlc3QgdGFrZXMgYSBsb25nIHRpbWUsIGl0IG1heSBubyBsb25nZXIgYmUgZXhwZWN0ZWRcbiAgICAgIGlmICh0aGlzLnN0YXRlLmltYWdlU291cmNlID09PSBpbWFnZVNvdXJjZSkge1xuICAgICAgICB0aGlzLmdldEN1cnJlbnRMYXllcigpPy5wcm9wcy5vbk1ldGFkYXRhTG9hZChtZXRhZGF0YSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRoaXMuZ2V0Q3VycmVudExheWVyKCk/LnByb3BzLm9uTWV0YWRhdGFMb2FkRXJyb3IoZXJyb3IgYXMgRXJyb3IpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLnN0YXRlLmxvYWRDb3VudGVyLS07XG4gICAgfVxuICB9XG5cbiAgLyoqIExvYWQgYW4gaW1hZ2UgKi9cbiAgYXN5bmMgbG9hZEltYWdlKHZpZXdwb3J0OiBWaWV3cG9ydCwgX3JlYXNvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qge2xheWVycywgc2VydmljZVR5cGUsIHRyYW5zcGFyZW50fSA9IHRoaXMucHJvcHM7XG5cbiAgICAvLyBUT0RPIC0gbW92ZSB0byBJbWFnZVNvdXJjZT9cbiAgICBpZiAoc2VydmljZVR5cGUgPT09ICd3bXMnICYmIGxheWVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBJbiBnbG9iZSBtb2RlIGRlY2sncyBHbG9iZVZpZXdwb3J0LmdldEJvdW5kcygpIG9ubHkgdW5wcm9qZWN0cyA0IGVkZ2VcbiAgICAvLyBtaWRwb2ludHMgYW5kIHRha2VzIHRoZWlyIG1pbi9tYXguIFRoYXQgbWlzc2VzIHRoZSBzY3JlZW4gY29ybmVycywgdGhlXG4gICAgLy8gY3VydmVkIGxpbWIsIGFuZCAobW9zdCBpbXBvcnRhbnRseSkgdGhlIGNhc2Ugd2hlcmUgYSBwb2xlIGlzIGluIHZpZXcgd2hlblxuICAgIC8vIGxvb2tpbmcgZnJvbSBhIGhpZ2ggbGF0aXR1ZGUg4oCUIHdoZXJlIGV2ZXJ5IG1lcmlkaWFuIGFuZCBwYXJ0IG9mIHRoZSBmYXJcbiAgICAvLyBoZW1pc3BoZXJlIGJlY29tZSB2aXNpYmxlLiBDb21wdXRlIGEgZnVsbGVyIHZpc2libGUgYm91bmRpbmcgYm94IGluc3RlYWQgc29cbiAgICAvLyB0aGUgcmVxdWVzdGVkIFdNUyBpbWFnZSBjb3ZlcnMgZXZlcnl0aGluZyBvbiBzY3JlZW4uXG4gICAgY29uc3QgYm91bmRzID0gdmlld3BvcnQucmVzb2x1dGlvbiA/IGdldEdsb2JlVmlzaWJsZUJvdW5kcyh2aWV3cG9ydCkgOiB2aWV3cG9ydC5nZXRCb3VuZHMoKTtcbiAgICBjb25zdCB7d2lkdGgsIGhlaWdodH0gPSB2aWV3cG9ydDtcblxuICAgIC8vIEVkZ2UgY2FzZTogd2hlbiBib3VuZHMgYXJlIHBlcmZlY3RseSBzeW1tZXRyaWMgYXJvdW5kIDDCsCAoYm90aCBsb25naXR1ZGUgYW5kIGxhdGl0dWRlKSxcbiAgICAvLyBpdCBjYW4gY2F1c2UgcmVuZGVyaW5nIGFydGlmYWN0cyB3aXRoIEVQU0c6NDMyNiBvbiB0aGUgZ2xvYmUuXG4gICAgLy8gQWRkIGFzeW1tZXRyeSB0byBhdm9pZCB0aGlzIGlzc3VlLlxuICAgIGlmICh2aWV3cG9ydC5yZXNvbHV0aW9uICYmIGJvdW5kcykge1xuICAgICAgY29uc3QgbWluTGF0ID0gYm91bmRzWzFdO1xuICAgICAgY29uc3QgbWF4TGF0ID0gYm91bmRzWzNdO1xuICAgICAgLy8gQ2hlY2sgaWYgbGF0aXR1ZGUgYm91bmRzIGFyZSBzeW1tZXRyaWMgYXJvdW5kIDDCsCAod2l0aGluIDAuMcKwIHRvbGVyYW5jZSlcbiAgICAgIGlmIChNYXRoLmFicyhtaW5MYXQgKyBtYXhMYXQpIDwgMC4xICYmIE1hdGguYWJzKG1pbkxhdCkgPiAxKSB7XG4gICAgICAgIGJvdW5kc1szXSArPSAwLjE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IHtzcnN9ID0gdGhpcy5wcm9wcztcbiAgICBpZiAoc3JzID09PSAnYXV0bycpIHtcbiAgICAgIC8vIEJpdG1hcExheWVyIG9ubHkgc3VwcG9ydHMgTE5HTEFUIG9yIENBUlRFU0lBTiAoV2ViLU1lcmNhdG9yKVxuICAgICAgc3JzID0gdmlld3BvcnQucmVzb2x1dGlvbiA/ICdFUFNHOjQzMjYnIDogJ0VQU0c6Mzg1Nyc7XG4gICAgfVxuICAgIGNvbnN0IHJlcXVlc3RQYXJhbXMgPSB7XG4gICAgICB3aWR0aCxcbiAgICAgIGhlaWdodCxcbiAgICAgIC8vIFRPRE86IHJlbW92ZSBiYm94IG9uY2UgZGVjay5nbCBpcyB1cGdyYWRlZCB0byBeOC4xMCB3aXRoIGxvYWRlcnMuZ2wgXjRcbiAgICAgIGJib3g6IGJvdW5kcyxcbiAgICAgIGJvdW5kaW5nQm94OiBbXG4gICAgICAgIFtib3VuZHNbMF0sIGJvdW5kc1sxXV0sXG4gICAgICAgIFtib3VuZHNbMl0sIGJvdW5kc1szXV1cbiAgICAgIF0gYXMgW1tudW1iZXIsIG51bWJlcl0sIFtudW1iZXIsIG51bWJlcl1dLFxuICAgICAgbGF5ZXJzLFxuICAgICAgc3JzLFxuICAgICAgdHJhbnNwYXJlbnRcbiAgICB9O1xuICAgIGlmIChzcnMgPT09ICdFUFNHOjM4NTcnKSB7XG4gICAgICBjb25zdCBbbWluWCwgbWluWV0gPSBXR1M4NFRvUHNldWRvTWVyY2F0b3IoW2JvdW5kc1swXSwgYm91bmRzWzFdXSk7XG4gICAgICBjb25zdCBbbWF4WCwgbWF4WV0gPSBXR1M4NFRvUHNldWRvTWVyY2F0b3IoW2JvdW5kc1syXSwgYm91bmRzWzNdXSk7XG4gICAgICByZXF1ZXN0UGFyYW1zLmJvdW5kaW5nQm94ID0gW1xuICAgICAgICBbbWluWCwgbWluWV0sXG4gICAgICAgIFttYXhYLCBtYXhZXVxuICAgICAgXTtcbiAgICAgIC8vIFRPRE86IHJlbW92ZSBiYm94IG9uY2UgZGVjay5nbCBpcyB1cGdyYWRlZCB0byBeOC4xMCB3aXRoIGxvYWRlcnMuZ2wgXjRcbiAgICAgIHJlcXVlc3RQYXJhbXMuYmJveCA9IFttaW5YLCBtaW5ZLCBtYXhYLCBtYXhZXTtcbiAgICB9XG5cbiAgICAvLyBTa2lwIHJlcXVlc3QgaWYgcGFyYW1ldGVycyBoYXZlbid0IG1lYW5pbmdmdWxseSBjaGFuZ2VkIGZyb20gYW4gaW4tZmxpZ2h0IHJlcXVlc3RcbiAgICBpZiAoXG4gICAgICB0aGlzLnN0YXRlLmluRmxpZ2h0UmVxdWVzdFBhcmFtZXRlcnMgJiZcbiAgICAgIHRoaXMuX2FyZVJlcXVlc3RQYXJhbXNFcXVhbCh0aGlzLnN0YXRlLmluRmxpZ2h0UmVxdWVzdFBhcmFtZXRlcnMsIHJlcXVlc3RQYXJhbXMpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gU2tpcCByZXF1ZXN0IGlmIHRoZSBuZXcgdmlldyBpcyBhbHJlYWR5IGZ1bGx5IGNvdmVyZWQgYnkgdGhlIGxhc3QgQ09NUExFVEVEIHJlcXVlc3RcbiAgICAvLyBhdCBjb21wYXJhYmxlIHJlc29sdXRpb24uIFRoaXMgaXMgdmVyeSBjb21tb24gd2hpbGUgcGFubmluZyAoYW5kIHNtYWxsXG4gICAgLy8gem9vbS1pbnMpIHdpdGhpbiBhIGxhcmdlciwgcmVjZW50bHkgZmV0Y2hlZCBleHRlbnQg4oCUIGUuZy4gb24gdGhlIGdsb2JlIGFcbiAgICAvLyBzaW5nbGUgcmVxdWVzdCBjYW4gY292ZXIgdGhlIHdob2xlIHZpc2libGUgaGVtaXNwaGVyZSwgc28gcm90YXRpbmcgYXJvdW5kIGl0XG4gICAgLy8gc2hvdWxkbid0IGhpdCB0aGUgbmV0d29yayBhZ2Fpbi4gVGhlIGV4aXN0aW5nIGltYWdlIGlzIHNpbXBseSByZXBvc2l0aW9uZWQgYnlcbiAgICAvLyB0aGUgQml0bWFwTGF5ZXIuIFdlIHN0aWxsIHJlZmV0Y2ggb25jZSB0aGUgdXNlciB6b29tcyBpbiBlbm91Z2ggdGhhdCB0aGVcbiAgICAvLyBjYWNoZWQgaW1hZ2Ugd291bGQgYmUgdmlzaWJseSBzdHJldGNoZWQgKHNlZSBDT1ZFUkFHRV9SRUZFVENIX1pPT01fRkFDVE9SKS5cbiAgICBpZiAoXG4gICAgICB0aGlzLnN0YXRlLmxhc3RSZXF1ZXN0UGFyYW1ldGVycyAmJlxuICAgICAgdGhpcy5faXNWaWV3Q292ZXJlZEJ5TGFzdFJlcXVlc3QodGhpcy5zdGF0ZS5sYXN0UmVxdWVzdFBhcmFtZXRlcnMsIHJlcXVlc3RQYXJhbXMpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gRHVyaW5nIHZpZGVvIGV4cG9ydCwgdGhyb3R0bGUgem9vbS1pbiByZXF1ZXN0cyB0byBvbmx5IGZpcmUgb24gem9vbSBsZXZlbCBjcm9zc2luZ3MuXG4gICAgLy8gVGhlIGV4aXN0aW5nIGltYWdlIGlzIHN0cmV0Y2hlZCBieSB0aGUgQml0bWFwTGF5ZXIgdW50aWwgdGhlIG5leHQgbGV2ZWwgaXMgcmVhY2hlZC5cbiAgICAvLyBIb3dldmVyLCBhbHdheXMgYWxsb3cgcmVxdWVzdHMgaWYgdGhlIG5ldyB2aWV3IGlzbid0IGZ1bGx5IGNvdmVyZWQgYnkgdGhlIGxhc3QgaW1hZ2UuXG4gICAgY29uc3QgZ2wgPSB0aGlzLmNvbnRleHQuZ2w7XG4gICAgY29uc3QgaXNFeHBvcnRpbmcgPSBnbD8uZ2V0Q29udGV4dEF0dHJpYnV0ZXM/LigpPy5wcmVzZXJ2ZURyYXdpbmdCdWZmZXI7XG5cbiAgICBpZiAoaXNFeHBvcnRpbmcgJiYgdGhpcy5zdGF0ZS5fbGFzdFJlcXVlc3Rab29tID49IDApIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRab29tID0gdmlld3BvcnQuem9vbTtcbiAgICAgIGNvbnN0IGxhc3Rab29tID0gdGhpcy5zdGF0ZS5fbGFzdFJlcXVlc3Rab29tO1xuICAgICAgY29uc3QgaXNab29taW5nSW4gPSBjdXJyZW50Wm9vbSA+IGxhc3Rab29tO1xuXG4gICAgICAvLyBDaGVjayBpZiB0aGUgbmV3IHZpZXcgaXMgZnVsbHkgY292ZXJlZCBieSB0aGUgbGFzdCBsb2FkZWQgaW1hZ2VcbiAgICAgIGNvbnN0IGxhc3RCYm94ID0gdGhpcy5zdGF0ZS5sYXN0UmVxdWVzdFBhcmFtZXRlcnM/LmJib3g7XG4gICAgICBjb25zdCBjdXJyZW50QmJveCA9IHJlcXVlc3RQYXJhbXMuYmJveDtcbiAgICAgIGxldCBmdWxseUNvbnRhaW5lZCA9IGZhbHNlO1xuXG4gICAgICBpZiAobGFzdEJib3ggJiYgY3VycmVudEJib3gpIHtcbiAgICAgICAgLy8gTmV3IGJib3ggbXVzdCBiZSBmdWxseSBpbnNpZGUgdGhlIHByZXZpb3VzIGJib3hcbiAgICAgICAgZnVsbHlDb250YWluZWQgPVxuICAgICAgICAgIGN1cnJlbnRCYm94WzBdID49IGxhc3RCYm94WzBdICYmXG4gICAgICAgICAgY3VycmVudEJib3hbMV0gPj0gbGFzdEJib3hbMV0gJiZcbiAgICAgICAgICBjdXJyZW50QmJveFsyXSA8PSBsYXN0QmJveFsyXSAmJlxuICAgICAgICAgIGN1cnJlbnRCYm94WzNdIDw9IGxhc3RCYm94WzNdO1xuICAgICAgfVxuXG4gICAgICAvLyBPbmx5IHRocm90dGxlIGlmOlxuICAgICAgLy8gMS4gWm9vbWluZyBpbiAobm90IHpvb21pbmcgb3V0IG9yIHBhbm5pbmcgYXQgc2FtZSB6b29tKVxuICAgICAgLy8gMi4gU2FtZSB6b29tIGZsb29yIChoYXZlbid0IGNyb3NzZWQgYW4gaW50ZWdlciB6b29tIGxldmVsKVxuICAgICAgLy8gMy4gTmV3IHZpZXcgaXMgZnVsbHkgY29udGFpbmVkIGluIHRoZSBsYXN0IGxvYWRlZCBpbWFnZSAobm8gdW5jb3ZlcmVkIGFyZWFzKVxuICAgICAgaWYgKGlzWm9vbWluZ0luICYmIE1hdGguZmxvb3IoY3VycmVudFpvb20pID09PSBNYXRoLmZsb29yKGxhc3Rab29tKSAmJiBmdWxseUNvbnRhaW5lZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWFyayByZXF1ZXN0IGFzIGluLWZsaWdodCB0byBwcmV2ZW50IGR1cGxpY2F0ZSByZXF1ZXN0c1xuICAgIHRoaXMuc3RhdGUuaW5GbGlnaHRSZXF1ZXN0UGFyYW1ldGVycyA9IHJlcXVlc3RQYXJhbXM7XG5cbiAgICBjb25zdCByZXF1ZXN0SWQgPSB0aGlzLmdldFJlcXVlc3RJZCgpO1xuICAgIHRyeSB7XG4gICAgICB0aGlzLnN0YXRlLmxvYWRDb3VudGVyKys7XG4gICAgICAvLyBUcmlnZ2VyIGEgcmVkcmF3IHRvIHVwZGF0ZSB0aGUgVUkgbG9hZGluZyBpbmRpY2F0b3JcbiAgICAgIHRoaXMuc2V0TmVlZHNSZWRyYXcoKTtcbiAgICAgIHRoaXMucHJvcHMub25JbWFnZUxvYWRTdGFydChyZXF1ZXN0SWQpO1xuXG4gICAgICBjb25zdCBpbWFnZSA9IGF3YWl0IHRoaXMuc3RhdGUuaW1hZ2VTb3VyY2UuZ2V0SW1hZ2UocmVxdWVzdFBhcmFtcyk7XG5cbiAgICAgIC8vIElmIGEgcmVxdWVzdCB0YWtlcyBhIGxvbmcgdGltZSwgbGF0ZXIgcmVxdWVzdHMgbWF5IGhhdmUgYWxyZWFkeSBsb2FkZWQuXG4gICAgICBpZiAodGhpcy5zdGF0ZS5sYXN0UmVxdWVzdElkIDwgcmVxdWVzdElkKSB7XG4gICAgICAgIHRoaXMuZ2V0Q3VycmVudExheWVyKCk/LnByb3BzLm9uSW1hZ2VMb2FkKHJlcXVlc3RJZCk7XG4gICAgICAgIC8vIFVwZGF0ZSBsYXN0UmVxdWVzdFBhcmFtZXRlcnMgb25seSBhZnRlciBzdWNjZXNzZnVsIGxvYWRcbiAgICAgICAgLy8gVGhpcyBlbnN1cmVzIGNvdmVyYWdlIGNoZWNrcyBvbmx5IHVzZSBzdWNjZXNzZnVsbHkgbG9hZGVkIGltYWdlc1xuICAgICAgICB0aGlzLnN0YXRlLmxhc3RSZXF1ZXN0UGFyYW1ldGVycyA9IHJlcXVlc3RQYXJhbXM7XG4gICAgICAgIHRoaXMuc3RhdGUuX2xhc3RSZXF1ZXN0Wm9vbSA9IHZpZXdwb3J0Lnpvb207XG4gICAgICAgIC8vIE5vdCB0eXBlIHNhZmUuLi5cbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgICAgICAgaW1hZ2UsXG4gICAgICAgICAgYm91bmRzLFxuICAgICAgICAgIGxhc3RSZXF1ZXN0SWQ6IHJlcXVlc3RJZFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgdGhpcy5jb250ZXh0Lm9uRXJyb3I/LihlcnJvciBhcyBFcnJvciwgdGhpcyk7XG4gICAgICB0aGlzLmdldEN1cnJlbnRMYXllcigpPy5wcm9wcy5vbkltYWdlTG9hZEVycm9yKHJlcXVlc3RJZCwgZXJyb3IgYXMgRXJyb3IpO1xuICAgIH0gZmluYWxseSB7XG4gICAgICAvLyBDbGVhciBpbi1mbGlnaHQgbWFya2VyIHdoZW4gcmVxdWVzdCBjb21wbGV0ZXMgKHN1Y2Nlc3Mgb3IgZXJyb3IpXG4gICAgICB0aGlzLnN0YXRlLmluRmxpZ2h0UmVxdWVzdFBhcmFtZXRlcnMgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLnN0YXRlLmxvYWRDb3VudGVyLS07XG4gICAgICAvLyBUcmlnZ2VyIGEgcmVkcmF3IHRvIHVwZGF0ZSB0aGUgVUkgbG9hZGluZyBpbmRpY2F0b3JcbiAgICAgIHRoaXMuc2V0TmVlZHNSZWRyYXcoKTtcbiAgICB9XG4gIH1cblxuICAvLyBIRUxQRVJTXG5cbiAgLyoqIEdsb2JhbCBjb3VudGVyIGZvciBpc3N1aW5nIHVuaXF1ZSByZXF1ZXN0IGlkcyAqL1xuICBwcml2YXRlIGdldFJlcXVlc3RJZCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLl9uZXh0UmVxdWVzdElkKys7XG4gIH1cblxuICAvKiogUnVucyBhbiBhY3Rpb24gaW4gdGhlIGZ1dHVyZSwgY2FuY2VscyBpdCBpZiB0aGUgbmV3IGFjdGlvbiBpcyBpc3N1ZWQgYmVmb3JlIGl0IGV4ZWN1dGVzICovXG4gIHByaXZhdGUgZGVib3VuY2UoZm46ICgpID0+IHZvaWQsIG1zID0gNTAwKTogdm9pZCB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuc3RhdGUuX3RpbWVvdXRJZCk7XG4gICAgdGhpcy5zdGF0ZS5fdGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiBmbigpLCBtcyk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0cnVlIHdoZW4gdGhlIGBuZXh0YCB2aWV3IGlzIGZ1bGx5IGluc2lkZSB0aGUgYHByZXZgIChsYXN0IHJlcXVlc3RlZClcbiAgICogZXh0ZW50IEFORCBub3QgbWVhbmluZ2Z1bGx5IGhpZ2hlciByZXNvbHV0aW9uLCBzbyB0aGUgY2FjaGVkIGltYWdlIGFscmVhZHlcbiAgICogY292ZXJzIHRoZSBzY3JlZW4gYW5kIG5vIG5ldyByZXF1ZXN0IGlzIG5lZWRlZC5cbiAgICovXG4gIHByaXZhdGUgX2lzVmlld0NvdmVyZWRCeUxhc3RSZXF1ZXN0KHByZXY6IGFueSwgbmV4dDogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gQ292ZXJhZ2Ugb25seSBtYWtlcyBzZW5zZSB3aXRoaW4gdGhlIHNhbWUgcHJvamVjdGlvbiAvIGRhdGFzZXQgLyBjYW52YXMgc2l6ZS5cbiAgICBpZiAoXG4gICAgICBwcmV2LnNycyAhPT0gbmV4dC5zcnMgfHxcbiAgICAgIHByZXYud2lkdGggIT09IG5leHQud2lkdGggfHxcbiAgICAgIHByZXYuaGVpZ2h0ICE9PSBuZXh0LmhlaWdodCB8fFxuICAgICAgcHJldi50cmFuc3BhcmVudCAhPT0gbmV4dC50cmFuc3BhcmVudCB8fFxuICAgICAgIWRlZXBFcXVhbChwcmV2LmxheWVycywgbmV4dC5sYXllcnMpXG4gICAgKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3QgcCA9IHByZXYuYmJveDtcbiAgICBjb25zdCBuID0gbmV4dC5iYm94O1xuICAgIGlmICghcCB8fCAhbikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIElzIHRoZSBuZXcgYmJveCBmdWxseSBjb250YWluZWQgd2l0aGluIHRoZSBwcmV2aW91c2x5IHJlcXVlc3RlZCBiYm94P1xuICAgIGNvbnN0IGNvbnRhaW5lZCA9IG5bMF0gPj0gcFswXSAmJiBuWzFdID49IHBbMV0gJiYgblsyXSA8PSBwWzJdICYmIG5bM10gPD0gcFszXTtcblxuICAgIGlmICghY29udGFpbmVkKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gR3JvdW5kIHJlc29sdXRpb24gaXMgcHJvcG9ydGlvbmFsIHRvIGJib3ggc3BhbiAvIHBpeGVsIGNvdW50LiBUaGUgZ3VhcmRcbiAgICAvLyBhYm92ZSBhbHJlYWR5IGVuc3VyZWQgcHJldiBhbmQgbmV4dCBzaGFyZSB0aGUgc2FtZSB3aWR0aC9oZWlnaHQsIHNvIGVxdWFsXG4gICAgLy8gcGl4ZWwgY291bnRzIGxldCB1cyBjb21wYXJlIHNwYW5zIGRpcmVjdGx5LiBPbmx5IHNraXAgd2hpbGUgdGhlIG5ldyB2aWV3XG4gICAgLy8gaXNuJ3QgbXVjaCBmaW5lciB0aGFuIHdoYXQgd2UgYWxyZWFkeSBmZXRjaGVkLCBvdGhlcndpc2UgdGhlIGNhY2hlZCBpbWFnZVxuICAgIC8vIHdvdWxkIGxvb2sgc3RyZXRjaGVkL2JsdXJyeS5cbiAgICBjb25zdCBwcmV2U3BhblggPSBwWzJdIC0gcFswXTtcbiAgICBjb25zdCBuZXh0U3BhblggPSBuWzJdIC0gblswXTtcbiAgICBjb25zdCBwcmV2U3BhblkgPSBwWzNdIC0gcFsxXTtcbiAgICBjb25zdCBuZXh0U3BhblkgPSBuWzNdIC0gblsxXTtcblxuICAgIHJldHVybiAoXG4gICAgICBuZXh0U3BhblggPj0gcHJldlNwYW5YIC8gQ09WRVJBR0VfUkVGRVRDSF9aT09NX0ZBQ1RPUiAmJlxuICAgICAgbmV4dFNwYW5ZID49IHByZXZTcGFuWSAvIENPVkVSQUdFX1JFRkVUQ0hfWk9PTV9GQUNUT1JcbiAgICApO1xuICB9XG5cbiAgLyoqIENvbXBhcmUgcmVxdWVzdCBwYXJhbWV0ZXJzIHRvIGRldGVybWluZSBpZiBhIG5ldyByZXF1ZXN0IGlzIG5lZWRlZCAqL1xuICBwcml2YXRlIF9hcmVSZXF1ZXN0UGFyYW1zRXF1YWwocHJldjogYW55LCBuZXh0OiBhbnkpOiBib29sZWFuIHtcbiAgICAvLyBDb21wYXJlIGRpbWVuc2lvbnNcbiAgICBpZiAocHJldi53aWR0aCAhPT0gbmV4dC53aWR0aCB8fCBwcmV2LmhlaWdodCAhPT0gbmV4dC5oZWlnaHQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBDb21wYXJlIFNSU1xuICAgIGlmIChwcmV2LnNycyAhPT0gbmV4dC5zcnMpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBDb21wYXJlIGxheWVyc1xuICAgIGlmICghZGVlcEVxdWFsKHByZXYubGF5ZXJzLCBuZXh0LmxheWVycykpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBDb21wYXJlIHRyYW5zcGFyZW50XG4gICAgaWYgKHByZXYudHJhbnNwYXJlbnQgIT09IG5leHQudHJhbnNwYXJlbnQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBDb21wYXJlIGJvdW5kcyB3aXRoIHRvbGVyYW5jZSBmb3IgZmxvYXRpbmcgcG9pbnQgcHJlY2lzaW9uXG4gICAgY29uc3QgdG9sZXJhbmNlID0gMWUtMTA7XG4gICAgY29uc3QgcHJldkJib3ggPSBwcmV2LmJib3g7XG4gICAgY29uc3QgbmV4dEJib3ggPSBuZXh0LmJib3g7XG5cbiAgICBpZiAocHJldkJib3ggJiYgbmV4dEJib3gpIHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNDsgaSsrKSB7XG4gICAgICAgIGlmIChNYXRoLmFicyhwcmV2QmJveFtpXSAtIG5leHRCYm94W2ldKSA+IHRvbGVyYW5jZSkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbi8qKlxuICogQ29tcHV0ZSB0aGUgW21pbkxuZywgbWluTGF0LCBtYXhMbmcsIG1heExhdF0gYm91bmRpbmcgYm94IG9mIHRoZSBwYXJ0IG9mIHRoZVxuICogZ2xvYmUgdGhhdCBpcyBhY3R1YWxseSB2aXNpYmxlIG9uIHNjcmVlbi5cbiAqXG4gKiBVbmxpa2UgYEdsb2JlVmlld3BvcnQuZ2V0Qm91bmRzKClgICg0IGVkZ2UgbWlkcG9pbnRzKSwgdGhpcyBzYW1wbGVzIGEgZ3JpZCBvZlxuICogc2NyZWVuIHBpeGVscywgdW5wcm9qZWN0cyBlYWNoIG9udG8gdGhlIHNwaGVyZSAoZGVjay5nbCBjbGFtcHMgcmF5cyB0aGF0IG1pc3NcbiAqIHRoZSBnbG9iZSB0byB0aGUgc2lsaG91ZXR0ZS9saW1iLCB3aGljaCBpcyBleGFjdGx5IHRoZSBib3VuZGFyeSB3ZSB3YW50KSwgYW5kXG4gKiB0YWtlcyB0aGUgZXh0ZW50LiBJdCBhZGRpdGlvbmFsbHkgZGV0ZWN0cyB3aGVuIGEgcG9sZSBpcyBpbiB2aWV3OiBhdCBhIHBvbGUgYWxsXG4gKiBtZXJpZGlhbnMgY29udmVyZ2UsIHNvIHdlIHdpZGVuIHRoZSBib3ggdG8gdGhlIGZ1bGwgbG9uZ2l0dWRlIHJhbmdlIGFuZCBleHRlbmRcbiAqIHRoZSBsYXRpdHVkZSB1cCB0byB0aGUgcG9sZSwgd2hpY2ggaXMgd2hhdCBtYWtlcyB2aWV3aW5nIGZyb20gbmVhciBhIHBvbGVcbiAqIChzZWVpbmcgYWNyb3NzIHRvIHRoZSBmYXIgaGVtaXNwaGVyZSkgd29yay5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEdsb2JlVmlzaWJsZUJvdW5kcyh2aWV3cG9ydDogVmlld3BvcnQpOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXSB7XG4gIGNvbnN0IHt3aWR0aCwgaGVpZ2h0fSA9IHZpZXdwb3J0O1xuICBjb25zdCBjZW50ZXJMbmcgPSAodmlld3BvcnQgYXMgYW55KS5sb25naXR1ZGUgPz8gMDtcblxuICBjb25zdCBTQU1QTEVTID0gODsgLy8gOHg4IGNlbGxzID0+IDl4OSA9IDgxIHNhbXBsZSBwb2ludHNcbiAgY29uc3QgbGF0czogbnVtYmVyW10gPSBbXTtcbiAgLy8gTG9uZ2l0dWRlcyB0cmFja2VkIGFzIHNpZ25lZCBvZmZzZXRzIGZyb20gdGhlIGNlbnRlciBsb25naXR1ZGUsIHVud3JhcHBlZCB0b1xuICAvLyAoLTE4MCwgMTgwXSwgc28gYW4gYW50aW1lcmlkaWFuLWNyb3NzaW5nIHZpZXcgc3RheXMgYSBjb250aWd1b3VzIHJhbmdlLlxuICBjb25zdCBsbmdPZmZzZXRzOiBudW1iZXJbXSA9IFtdO1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDw9IFNBTVBMRVM7IGkrKykge1xuICAgIGZvciAobGV0IGogPSAwOyBqIDw9IFNBTVBMRVM7IGorKykge1xuICAgICAgY29uc3QgcHggPSAoaSAvIFNBTVBMRVMpICogd2lkdGg7XG4gICAgICBjb25zdCBweSA9IChqIC8gU0FNUExFUykgKiBoZWlnaHQ7XG4gICAgICBjb25zdCBjb29yZCA9IHZpZXdwb3J0LnVucHJvamVjdChbcHgsIHB5XSk7XG4gICAgICBjb25zdCBsbmcgPSBjb29yZFswXTtcbiAgICAgIGNvbnN0IGxhdCA9IGNvb3JkWzFdO1xuICAgICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUobG5nKSB8fCAhTnVtYmVyLmlzRmluaXRlKGxhdCkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBsYXRzLnB1c2gobGF0KTtcbiAgICAgIC8vIFdyYXAgdGhlIG9mZnNldCBpbnRvICgtMTgwLCAxODBdLlxuICAgICAgY29uc3Qgb2Zmc2V0ID0gKChsbmcgLSBjZW50ZXJMbmcgKyA1NDApICUgMzYwKSAtIDE4MDtcbiAgICAgIGxuZ09mZnNldHMucHVzaChvZmZzZXQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEV4dHJlbWVseSBkZWdlbmVyYXRlIHZpZXdwb3J0OiBmYWxsIGJhY2sgdG8gZGVjaydzIGRlZmF1bHQuXG4gIGlmIChsYXRzLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiB2aWV3cG9ydC5nZXRCb3VuZHMoKTtcbiAgfVxuXG4gIGxldCBtaW5MYXQgPSBNYXRoLm1pbiguLi5sYXRzKTtcbiAgbGV0IG1heExhdCA9IE1hdGgubWF4KC4uLmxhdHMpO1xuXG4gIGNvbnN0IG5vcnRoUG9sZVZpc2libGUgPSBpc0dsb2JlU3VyZmFjZVBvaW50VmlzaWJsZSh2aWV3cG9ydCwgOTApO1xuICBjb25zdCBzb3V0aFBvbGVWaXNpYmxlID0gaXNHbG9iZVN1cmZhY2VQb2ludFZpc2libGUodmlld3BvcnQsIC05MCk7XG5cbiAgbGV0IG1pbkxuZzogbnVtYmVyO1xuICBsZXQgbWF4TG5nOiBudW1iZXI7XG5cbiAgaWYgKG5vcnRoUG9sZVZpc2libGUgfHwgc291dGhQb2xlVmlzaWJsZSkge1xuICAgIC8vIEEgcG9sZSBpcyBvbiBzY3JlZW46IGV2ZXJ5IG1lcmlkaWFuIGlzIHZpc2libGUsIHNvIGNvdmVyIGFsbCBsb25naXR1ZGVzIGFuZFxuICAgIC8vIGV4dGVuZCBsYXRpdHVkZSB1cCB0byB0aGUgdmlzaWJsZSBwb2xlLlxuICAgIG1pbkxuZyA9IC0xODA7XG4gICAgbWF4TG5nID0gMTgwO1xuICAgIGlmIChub3J0aFBvbGVWaXNpYmxlKSB7XG4gICAgICBtYXhMYXQgPSA5MDtcbiAgICB9XG4gICAgaWYgKHNvdXRoUG9sZVZpc2libGUpIHtcbiAgICAgIG1pbkxhdCA9IC05MDtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgbWluTG5nID0gY2VudGVyTG5nICsgTWF0aC5taW4oLi4ubG5nT2Zmc2V0cyk7XG4gICAgbWF4TG5nID0gY2VudGVyTG5nICsgTWF0aC5tYXgoLi4ubG5nT2Zmc2V0cyk7XG4gIH1cblxuICAvLyBQYWQgc2xpZ2h0bHkgc28gdGhlIGRpc2NyZXRlIHNhbXBsaW5nIGRvZXNuJ3QgY2xpcCB0aGUgdHJ1ZSBsaW1iLlxuICBjb25zdCBsYXRQYWQgPSBNYXRoLm1pbig1LCAobWF4TGF0IC0gbWluTGF0KSAqIDAuMDUgKyAwLjUpO1xuICBtaW5MYXQgPSBNYXRoLm1heCgtOTAsIG1pbkxhdCAtIGxhdFBhZCk7XG4gIG1heExhdCA9IE1hdGgubWluKDkwLCBtYXhMYXQgKyBsYXRQYWQpO1xuXG4gIGlmIChtYXhMbmcgLSBtaW5MbmcgPCAzNjApIHtcbiAgICBjb25zdCBsbmdQYWQgPSBNYXRoLm1pbig1LCAobWF4TG5nIC0gbWluTG5nKSAqIDAuMDUgKyAwLjUpO1xuICAgIG1pbkxuZyAtPSBsbmdQYWQ7XG4gICAgbWF4TG5nICs9IGxuZ1BhZDtcbiAgfVxuXG4gIC8vIEEgc2luZ2xlIEVQU0c6NDMyNiByZWN0YW5nbGUgY2FuJ3QgY3Jvc3MgdGhlIGFudGltZXJpZGlhbiwgc28gaWYgdGhlIHZpc2libGVcbiAgLy8gc3BhbiB3cmFwcyBwYXN0IMKxMTgwIChvciBjb3ZlcnMgdGhlIHdob2xlIHdvcmxkKSByZXF1ZXN0IHRoZSBmdWxsIGxvbmdpdHVkZVxuICAvLyByYW5nZS4gVGhpcyBvdmVyLWNvdmVycyBvbmx5IG5lYXIgdGhlIGRhdGVsaW5lLCB3aGljaCBpcyBhbiBhY2NlcHRhYmxlXG4gIC8vIHRyYWRlLW9mZiBmb3IgYSB2YWxpZCwgZ2FwLWZyZWUgcmVxdWVzdC5cbiAgaWYgKG1heExuZyAtIG1pbkxuZyA+PSAzNjAgfHwgbWluTG5nIDwgLTE4MCB8fCBtYXhMbmcgPiAxODApIHtcbiAgICBtaW5MbmcgPSAtMTgwO1xuICAgIG1heExuZyA9IDE4MDtcbiAgfVxuXG4gIHJldHVybiBbbWluTG5nLCBtaW5MYXQsIG1heExuZywgbWF4TGF0XTtcbn1cblxuLyoqXG4gKiBXaGV0aGVyIGEgcG9pbnQgb24gdGhlIGdsb2JlIHN1cmZhY2UgYXQgdGhlIGdpdmVuIGxhdGl0dWRlIChsb25naXR1ZGUgaXNcbiAqIGlycmVsZXZhbnQgYXQgdGhlIHBvbGVzKSBpcyBib3RoIGZyb250LWZhY2luZyAobm90IG9jY2x1ZGVkIGJ5IHRoZSBnbG9iZSkgYW5kXG4gKiBpbnNpZGUgdGhlIHNjcmVlbi4gVXNlcyB0aGUgc3BoZXJlLWhvcml6b24gdGVzdCBpbiBkZWNrLmdsIGNvbW1vbiBzcGFjZTpcbiAqIGEgc3VyZmFjZSBwb2ludCBpcyBmcm9udC1mYWNpbmcgd2hlbiB0aGUgYW5nbGUgYmV0d2VlbiBpdHMgb3V0d2FyZCBub3JtYWwgYW5kXG4gKiB0aGUgY2FtZXJhIGRpcmVjdGlvbiBpcyB3aXRoaW4gdGhlIGhvcml6b24gaGFsZi1hbmdsZSwgaS5lLlxuICogICBkb3Qobm9ybWFsaXplKHBvaW50Q29tbW9uKSwgbm9ybWFsaXplKGNhbWVyYVBvc2l0aW9uKSkgPj0gcmFkaXVzIC8gY2FtZXJhRGlzdFxuICovXG5mdW5jdGlvbiBpc0dsb2JlU3VyZmFjZVBvaW50VmlzaWJsZSh2aWV3cG9ydDogVmlld3BvcnQsIGxhdDogbnVtYmVyKTogYm9vbGVhbiB7XG4gIGNvbnN0IHt3aWR0aCwgaGVpZ2h0fSA9IHZpZXdwb3J0O1xuICBjb25zdCBwb2ludCA9IHZpZXdwb3J0LnByb2plY3RQb3NpdGlvbihbMCwgbGF0LCAwXSk7XG4gIGNvbnN0IGNhbWVyYSA9IHZpZXdwb3J0LmNhbWVyYVBvc2l0aW9uO1xuXG4gIGNvbnN0IHJQb2ludCA9IE1hdGguaHlwb3QocG9pbnRbMF0sIHBvaW50WzFdLCBwb2ludFsyXSk7XG4gIGNvbnN0IHJDYW0gPSBNYXRoLmh5cG90KGNhbWVyYVswXSwgY2FtZXJhWzFdLCBjYW1lcmFbMl0pO1xuICBpZiAoclBvaW50ID09PSAwIHx8IHJDYW0gPT09IDAgfHwgckNhbSA8PSByUG9pbnQpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBjb3NTdXJmYWNlID1cbiAgICAocG9pbnRbMF0gKiBjYW1lcmFbMF0gKyBwb2ludFsxXSAqIGNhbWVyYVsxXSArIHBvaW50WzJdICogY2FtZXJhWzJdKSAvIChyUG9pbnQgKiByQ2FtKTtcbiAgY29uc3QgY29zSG9yaXpvbiA9IHJQb2ludCAvIHJDYW07XG4gIGlmIChjb3NTdXJmYWNlIDwgY29zSG9yaXpvbikge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IHNjcmVlbiA9IHZpZXdwb3J0LnByb2plY3QoWzAsIGxhdCwgMF0pO1xuICByZXR1cm4gc2NyZWVuWzBdID49IDAgJiYgc2NyZWVuWzBdIDw9IHdpZHRoICYmIHNjcmVlblsxXSA+PSAwICYmIHNjcmVlblsxXSA8PSBoZWlnaHQ7XG59XG5cbi8vIGh0dHBzOi8vZXBzZy5pby8zODU3XG4vLyArcHJvaj1tZXJjICthPTYzNzgxMzcgK2I9NjM3ODEzNyArbGF0X3RzPTAgK2xvbl8wPTAgK3hfMD0wICt5XzA9MCAraz0xICt1bml0cz1tICtuYWRncmlkcz1AbnVsbCArd2t0ZXh0ICtub19kZWZzICt0eXBlPWNyc1xuY29uc3QgSEFMRl9FQVJUSF9DSVJDVU1GRVJFTkNFID0gNjM3ODEzNyAqIE1hdGguUEk7XG5cbi8qKiBQcm9qZWN0cyBFUFNHOjQzMjYgdG8gRVBTRzozODU3XG4gKiBUaGlzIGlzIGEgbGlnaHR3ZWlnaHQgcmVwbGFjZW1lbnQgb2YgcHJvajQuIFVzZSB0ZXN0cyB0byBlbnN1cmUgY29uZm9ybWFuY2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBXR1M4NFRvUHNldWRvTWVyY2F0b3IoY29vcmQ6IFtudW1iZXIsIG51bWJlcl0pOiBbbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgbWVyY2F0b3IgPSBsbmdMYXRUb1dvcmxkKGNvb3JkKTtcbiAgbWVyY2F0b3JbMF0gPSAobWVyY2F0b3JbMF0gLyAyNTYgLSAxKSAqIEhBTEZfRUFSVEhfQ0lSQ1VNRkVSRU5DRTtcbiAgbWVyY2F0b3JbMV0gPSAobWVyY2F0b3JbMV0gLyAyNTYgLSAxKSAqIEhBTEZfRUFSVEhfQ0lSQ1VNRkVSRU5DRTtcbiAgcmV0dXJuIG1lcmNhdG9yO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBOztBQUVBLFNBQVFBLGFBQWEsUUFBTyx1QkFBdUI7QUFFbkQsU0FFRUMsY0FBYyxFQUtkQyxpQkFBaUIsRUFDakJDLFVBQVUsSUFBSUMsU0FBUyxRQUNsQixlQUFlO0FBQ3RCLFNBQVFDLFdBQVcsUUFBTyxpQkFBaUI7QUFDM0MsU0FBUUMs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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kepler.gl/deckgl-layers",
|
|
3
3
|
"author": "Shan He <shan@uber.com>",
|
|
4
|
-
"version": "3.3.0-alpha.
|
|
4
|
+
"version": "3.3.0-alpha.11",
|
|
5
5
|
"description": "kepler.gl constants used by kepler.gl components, actions and reducers",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "dist/cjs/index.js",
|
|
@@ -33,9 +33,9 @@
|
|
|
33
33
|
"@deck.gl/geo-layers": "^9.3.1",
|
|
34
34
|
"@deck.gl/layers": "^9.3.1",
|
|
35
35
|
"@deck.gl/mesh-layers": "^9.3.1",
|
|
36
|
-
"@kepler.gl/constants": "3.3.0-alpha.
|
|
37
|
-
"@kepler.gl/types": "3.3.0-alpha.
|
|
38
|
-
"@kepler.gl/utils": "3.3.0-alpha.
|
|
36
|
+
"@kepler.gl/constants": "3.3.0-alpha.11",
|
|
37
|
+
"@kepler.gl/types": "3.3.0-alpha.11",
|
|
38
|
+
"@kepler.gl/utils": "3.3.0-alpha.11",
|
|
39
39
|
"@loaders.gl/wms": "4.4.1",
|
|
40
40
|
"@luma.gl/constants": "^9.3.2",
|
|
41
41
|
"@luma.gl/core": "^9.3.2",
|