@renaissancerentals/renaissance-component 12.1.11 → 12.1.13
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/lib/contact/ContactSection.js +2 -1
- package/lib/contact/service/ContactService.d.ts +1 -0
- package/lib/contact/service/ContactService.js +8 -2
- package/lib/floorplan/data/Floorplan.d.ts +5 -0
- package/lib/floorplan/data/Floorplan.js +1 -1
- package/lib/floorplan/section/FloorplanHero.d.ts +2 -1
- package/lib/floorplan/section/FloorplanHero.js +6 -2
- package/lib/floorplan/section/FloorplanSection.js +12 -2
- package/lib/floorplan/service/FloorplanService.d.ts +2 -1
- package/lib/floorplan/service/FloorplanService.js +4 -2
- package/lib/gallery/GalleryHeroMain.d.ts +2 -0
- package/lib/gallery/GalleryHeroMain.js +7 -2
- package/lib/gallery/GalleryHeroMobile.d.ts +3 -0
- package/lib/gallery/GalleryHeroMobile.js +14 -4
- package/lib/gallery/assets/GalleryHero.scss +21 -2
- package/lib/index.d.ts +2 -2
- package/lib/index.js +13 -1
- package/package.json +1 -1
|
@@ -33,6 +33,7 @@ const FloorplanSection = _ref => {
|
|
|
33
33
|
const [similarFloorplans, setSimilarFloorplans] = (0, _react.useState)([]);
|
|
34
34
|
const [floorplanVariations, setFloorplanVariations] = (0, _react.useState)([]);
|
|
35
35
|
const [testimonials, setTestimonials] = (0, _react.useState)([]);
|
|
36
|
+
const [webSpecials, setWebSpecials] = (0, _react.useState)([]);
|
|
36
37
|
const [isLoading, setIsLoading] = (0, _react.useState)(true);
|
|
37
38
|
const [errorLoading, setErrorLoading] = (0, _react.useState)(false);
|
|
38
39
|
const mapRef = (0, _react.useRef)(null);
|
|
@@ -46,16 +47,24 @@ const FloorplanSection = _ref => {
|
|
|
46
47
|
}
|
|
47
48
|
};
|
|
48
49
|
(0, _react.useEffect)(() => {
|
|
49
|
-
Promise.all([(0, _FloorplanService.getFloorplan)(floorplanId), (0, _FloorplanService.getFloorplanVariations)(floorplanId), (0, _FloorplanService.getSimilarFloorplans)(floorplanId), (0, _FloorplanService.getTestimonials)(floorplanId)]).then(data => {
|
|
50
|
+
Promise.all([(0, _FloorplanService.getFloorplan)(floorplanId), (0, _FloorplanService.getFloorplanVariations)(floorplanId), (0, _FloorplanService.getSimilarFloorplans)(floorplanId), (0, _FloorplanService.getTestimonials)(floorplanId), (0, _FloorplanService.getWebSpecials)(floorplanId)]).then(data => {
|
|
50
51
|
const floorplanData = {
|
|
51
52
|
...data[0]
|
|
52
53
|
};
|
|
53
54
|
const activeUnits = floorplanData.units.filter(unit => unit.active);
|
|
55
|
+
const today = (0, _moment.default)();
|
|
54
56
|
floorplanData.units = activeUnits;
|
|
55
57
|
setFloorplan(floorplanData);
|
|
56
58
|
setFloorplanVariations(data[1]);
|
|
57
59
|
setSimilarFloorplans(data[2]);
|
|
58
60
|
setTestimonials(data[3]);
|
|
61
|
+
const validWebSpecials = [];
|
|
62
|
+
data[4].forEach(webSpecial => {
|
|
63
|
+
if ((0, _Utils.dateToMoment)(webSpecial.startDate).isBefore(today) && (0, _Utils.dateToMoment)(webSpecial.endDate).isAfter(today)) {
|
|
64
|
+
validWebSpecials.push(webSpecial);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
setWebSpecials(validWebSpecials);
|
|
59
68
|
}).catch(() => {
|
|
60
69
|
setErrorLoading(true);
|
|
61
70
|
}).finally(() => {
|
|
@@ -91,6 +100,7 @@ const FloorplanSection = _ref => {
|
|
|
91
100
|
}, /*#__PURE__*/_react.default.createElement("h2", null, "Uh-oh, this is a 404")) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_FloorplanHero.FloorplanHero, {
|
|
92
101
|
floorplan: floorplan,
|
|
93
102
|
contactClickHandler: contactClickHandler,
|
|
103
|
+
webSpecials: webSpecials,
|
|
94
104
|
applyClickHandler: applyClickHandler,
|
|
95
105
|
handleRefToMap: handleRefToMap
|
|
96
106
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -164,4 +174,4 @@ const FloorplanSection = _ref => {
|
|
|
164
174
|
}, "Contact Us \xBB"))))))));
|
|
165
175
|
};
|
|
166
176
|
exports.FloorplanSection = FloorplanSection;
|
|
167
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfRmxvb3JwbGFuIiwiX0Zsb29ycGxhblNlcnZpY2UiLCJfR2FsbGVyeUhlcm9Ta2VsZXRvbiIsIl9GbG9vcnBsYW5IZXJvIiwiX1V0aWxzIiwiX0NhcmQiLCJfVGVzdGltb25pYWxzQ2FyZCIsIl9NYXBTZWN0aW9uIiwiX1NpbWlsYXJGbG9vcnBsYW5DYXJkIiwiX211bmNoZXJVaSIsIl9tb21lbnQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0Iiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiRmxvb3JwbGFuU2VjdGlvbiIsIl9yZWYiLCJfZmxvb3JwbGFuJHByb3BlcnR5IiwiY29udGFjdENsaWNrSGFuZGxlciIsImFwcGx5Q2xpY2tIYW5kbGVyIiwiZmxvb3JwbGFuSWQiLCJsb2NhdGlvblJlZiIsImhhbmRsZVJlZlRvTG9jYXRpb24iLCJmbG9vcnBsYW4iLCJzZXRGbG9vcnBsYW4iLCJ1c2VTdGF0ZSIsInNpbWlsYXJGbG9vcnBsYW5zIiwic2V0U2ltaWxhckZsb29ycGxhbnMiLCJmbG9vcnBsYW5WYXJpYXRpb25zIiwic2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyIsInRlc3RpbW9uaWFscyIsInNldFRlc3RpbW9uaWFscyIsImlzTG9hZGluZyIsInNldElzTG9hZGluZyIsImVycm9yTG9hZGluZyIsInNldEVycm9yTG9hZGluZyIsIm1hcFJlZiIsInVzZVJlZiIsImhhbmRsZVJlZlRvTWFwIiwiX21hcFJlZiRjdXJyZW50IiwiY3VycmVudCIsInNjcm9sbEludG9WaWV3IiwiYmVoYXZpb3IiLCJibG9jayIsInVzZUVmZmVjdCIsIlByb21pc2UiLCJhbGwiLCJnZXRGbG9vcnBsYW4iLCJnZXRGbG9vcnBsYW5WYXJpYXRpb25zIiwiZ2V0U2ltaWxhckZsb29ycGxhbnMiLCJnZXRUZXN0aW1vbmlhbHMiLCJ0aGVuIiwiZGF0YSIsImZsb29ycGxhbkRhdGEiLCJhY3RpdmVVbml0cyIsInVuaXRzIiwiZmlsdGVyIiwidW5pdCIsImFjdGl2ZSIsImNhdGNoIiwiZmluYWxseSIsImF2YWlsYWJsZURhdGVzIiwibW9udGhZZWFyRm9ybWF0Iiwic29ydEF2YWlsYWJsZURhdGVzIiwiYiIsIm1vbWVudCIsImRpZmYiLCJkYXRlcyIsIlNldCIsInRvZGF5IiwidG9tb3Jyb3ciLCJhZGQiLCJpc0F2YWlsYWJsZU5vdyIsIm1vdmVJbkRhdGUiLCJpc0JlZm9yZSIsImZvckVhY2giLCJkYXRlVG9Nb21lbnQiLCJmb3JtYXQiLCJBcnJheSIsImZyb20iLCJzb3J0IiwicmVzaWRlbnRVdGlsaXR5RGV0YWlscyIsInV0aWxpdHkiLCJhdmVyYWdlTW9udGhseUJpbGwiLCJjYXBpdGFsaXplRmlyc3RMZXR0ZXIiLCJuYW1lIiwidG9VU0QiLCJpc0F2ZXJhZ2VNb250aGx5QmlsbFByZXNlbnQiLCJ1dGlsaXRpZXMiLCJ0eXBlIiwiVXRpbGl0eVR5cGUiLCJSRVNJREVOVF9VVElMSVRZIiwic29tZSIsImlzV2l0aGluVHdlbHZlTW9udGhzIiwiZGF0ZSIsInR3ZWx2ZU1vbnRoc0Zyb21Ob3ciLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwiR2FsbGVyeUhlcm9Ta2VsZXRvbiIsIkZyYWdtZW50IiwiRmxvb3JwbGFuSGVybyIsIkNhcmQiLCJ0aXRsZSIsImJlZHJvb20iLCJiYXRocm9vbSIsImVudW1Ub1N0cmluZyIsInN0eWxlIiwibGVuZ3RoIiwicmFuZ2VGcm9tIiwiZGVzY3JpcHRpb24iLCJhbWVuaXRpZXMiLCJVbCIsImFtZW5pdHkiLCJmZWF0dXJlZCIsIm1hcCIsIkxpIiwia2V5IiwiaWQiLCJidWxsZXRJY29uIiwiaXNGZWF0dXJlZCIsInZhcmlhdGlvbiIsIlRlc3RpbW9uaWFsc0NhcmQiLCJyZWYiLCJNYXBTZWN0aW9uIiwic3JjIiwiZmxvb3JwbGFuQWRkcmVzc1RvR29vZ2xlTWFwIiwiZmxvb3JwbGFuQWRkcmVzcyIsInBlcm1pdHRlZFBldHMiLCJwZXQiLCJidWxsZXRDb2xvciIsIm5vdFBlcm1pdHRlZFBldHMiLCJwZXRQb2xpY3kiLCJhdmFpbGFibGVEYXRlIiwiSU5DTFVERURfVVRJTElUWSIsIlNpbWlsYXJGbG9vcnBsYW5DYXJkIiwicHJvcGVydHkiLCJwaG9uZSIsImhyZWYiLCJmb3JtYXRQaG9uZU51bWJlciIsIkJ1dHRvbiIsInZhcmlhbnQiLCJvbkNsaWNrIiwic2l6ZSIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmxvb3JwbGFuL3NlY3Rpb24vRmxvb3JwbGFuU2VjdGlvbi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7dXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7XG4gICAgRmxvb3JwbGFuLFxuICAgIEZsb29ycGxhblZhcmlhdGlvbixcbiAgICBTaW1pbGFyRmxvb3JwbGFuLFxuICAgIFRlc3RpbW9uaWFsLFxuICAgIFV0aWxpdHlOYW1lLFxuICAgIFV0aWxpdHlUeXBlXG59IGZyb20gXCIuLi9kYXRhL0Zsb29ycGxhblwiO1xuaW1wb3J0IHtcbiAgICBmbG9vcnBsYW5BZGRyZXNzLFxuICAgIGdldEZsb29ycGxhbixcbiAgICBnZXRGbG9vcnBsYW5WYXJpYXRpb25zLFxuICAgIGdldFNpbWlsYXJGbG9vcnBsYW5zLFxuICAgIGdldFRlc3RpbW9uaWFscyxcbiAgICBub3RQZXJtaXR0ZWRQZXRzLFxuICAgIHBlcm1pdHRlZFBldHMsXG4gICAgcGV0UG9saWN5XG59IGZyb20gXCIuLi9zZXJ2aWNlL0Zsb29ycGxhblNlcnZpY2VcIjtcbmltcG9ydCBcIi4vYXNzZXRzL0Zsb29ycGxhblNlY3Rpb24uc2Nzc1wiO1xuaW1wb3J0IHtHYWxsZXJ5SGVyb1NrZWxldG9ufSBmcm9tIFwiLi4vLi4vZ2FsbGVyeS9HYWxsZXJ5SGVyb1NrZWxldG9uXCI7XG5pbXBvcnQge0Zsb29ycGxhbkhlcm99IGZyb20gXCIuL0Zsb29ycGxhbkhlcm9cIjtcbmltcG9ydCB7XG4gICAgY2FwaXRhbGl6ZUZpcnN0TGV0dGVyLFxuICAgIGRhdGVUb01vbWVudCxcbiAgICBlbnVtVG9TdHJpbmcsXG4gICAgZmxvb3JwbGFuQWRkcmVzc1RvR29vZ2xlTWFwLFxuICAgIGZvcm1hdFBob25lTnVtYmVyLFxuICAgIHJhbmdlRnJvbSxcbiAgICB0b1VTRFxufSBmcm9tIFwiLi4vLi4vdXRpbHMvVXRpbHNcIjtcbmltcG9ydCB7Q2FyZH0gZnJvbSBcIi4uLy4uL2NhcmQvQ2FyZFwiO1xuaW1wb3J0IHtUZXN0aW1vbmlhbHNDYXJkfSBmcm9tIFwiLi4vY2FyZC9UZXN0aW1vbmlhbHNDYXJkXCI7XG5pbXBvcnQge01hcFNlY3Rpb259IGZyb20gXCIuLi8uLi9tYXAvTWFwU2VjdGlvblwiO1xuaW1wb3J0IHtTaW1pbGFyRmxvb3JwbGFuQ2FyZH0gZnJvbSBcIi4uL2NhcmQvU2ltaWxhckZsb29ycGxhbkNhcmRcIjtcbmltcG9ydCB7QnV0dG9uLCBMaSwgVWx9IGZyb20gXCJAY29udGVudG11bmNoL211bmNoZXItdWlcIjtcbmltcG9ydCBtb21lbnQgZnJvbSBcIm1vbWVudFwiO1xuXG5leHBvcnQgY29uc3QgRmxvb3JwbGFuU2VjdGlvbjogUmVhY3QuRkM8Rmxvb3JwbGFuU2VjdGlvblByb3BzPiA9IChcbiAgICB7XG4gICAgICAgIGNvbnRhY3RDbGlja0hhbmRsZXIsXG4gICAgICAgIGFwcGx5Q2xpY2tIYW5kbGVyLFxuICAgICAgICBmbG9vcnBsYW5JZCxcbiAgICAgICAgbG9jYXRpb25SZWYsXG4gICAgICAgIGhhbmRsZVJlZlRvTG9jYXRpb25cbiAgICB9KSA9PiB7XG4gICAgY29uc3QgW2Zsb29ycGxhbiwgc2V0Rmxvb3JwbGFuXSA9IHVzZVN0YXRlPEZsb29ycGxhbj4oe30gYXMgRmxvb3JwbGFuKTtcbiAgICBjb25zdCBbc2ltaWxhckZsb29ycGxhbnMsIHNldFNpbWlsYXJGbG9vcnBsYW5zXSA9IHVzZVN0YXRlPFNpbWlsYXJGbG9vcnBsYW5bXT4oW10pO1xuICAgIGNvbnN0IFtmbG9vcnBsYW5WYXJpYXRpb25zLCBzZXRGbG9vcnBsYW5WYXJpYXRpb25zXSA9IHVzZVN0YXRlPEZsb29ycGxhblZhcmlhdGlvbltdPihbXSk7XG4gICAgY29uc3QgW3Rlc3RpbW9uaWFscywgc2V0VGVzdGltb25pYWxzXSA9IHVzZVN0YXRlPFRlc3RpbW9uaWFsW10+KFtdKTtcbiAgICBjb25zdCBbaXNMb2FkaW5nLCBzZXRJc0xvYWRpbmddID0gdXNlU3RhdGUodHJ1ZSk7XG4gICAgY29uc3QgW2Vycm9yTG9hZGluZywgc2V0RXJyb3JMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICAgIGNvbnN0IG1hcFJlZjogUmVhY3QuUmVmPEhUTUxEaXZFbGVtZW50PiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gICAgY29uc3QgaGFuZGxlUmVmVG9NYXAgPSAoKSA9PiB7XG4gICAgICAgIGlmIChoYW5kbGVSZWZUb0xvY2F0aW9uKVxuICAgICAgICAgICAgaGFuZGxlUmVmVG9Mb2NhdGlvbigpO1xuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIG1hcFJlZi5jdXJyZW50Py5zY3JvbGxJbnRvVmlldyh7XG4gICAgICAgICAgICAgICAgYmVoYXZpb3I6IFwic21vb3RoXCIsXG4gICAgICAgICAgICAgICAgYmxvY2s6IFwic3RhcnRcIlxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgIH07XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgUHJvbWlzZS5hbGwoW1xuICAgICAgICAgICAgZ2V0Rmxvb3JwbGFuKGZsb29ycGxhbklkKSxcbiAgICAgICAgICAgIGdldEZsb29ycGxhblZhcmlhdGlvbnMoZmxvb3JwbGFuSWQpLFxuICAgICAgICAgICAgZ2V0U2ltaWxhckZsb29ycGxhbnMoZmxvb3JwbGFuSWQpLFxuICAgICAgICAgICAgZ2V0VGVzdGltb25pYWxzKGZsb29ycGxhbklkKVxuICAgICAgICBdKVxuICAgICAgICAgICAgLnRoZW4oKGRhdGEpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBmbG9vcnBsYW5EYXRhID0gey4uLmRhdGFbMF19O1xuICAgICAgICAgICAgICAgIGNvbnN0IGFjdGl2ZVVuaXRzID0gZmxvb3JwbGFuRGF0YS51bml0cy5maWx0ZXIodW5pdCA9PiB1bml0LmFjdGl2ZSk7XG4gICAgICAgICAgICAgICAgZmxvb3JwbGFuRGF0YS51bml0cyA9IGFjdGl2ZVVuaXRzO1xuICAgICAgICAgICAgICAgIHNldEZsb29ycGxhbihmbG9vcnBsYW5EYXRhKTtcbiAgICAgICAgICAgICAgICBzZXRGbG9vcnBsYW5WYXJpYXRpb25zKGRhdGFbMV0pO1xuICAgICAgICAgICAgICAgIHNldFNpbWlsYXJGbG9vcnBsYW5zKGRhdGFbMl0pO1xuICAgICAgICAgICAgICAgIHNldFRlc3RpbW9uaWFscyhkYXRhWzNdKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldEVycm9yTG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgfSwgW2Zsb29ycGxhbklkXSk7XG5cbiAgICBjb25zdCBhdmFpbGFibGVEYXRlcyA9ICgpOiBzdHJpbmdbXSA9PiB7XG4gICAgICAgIGNvbnN0IG1vbnRoWWVhckZvcm1hdCA9IFwiTU1NTSBZWVlZXCI7XG4gICAgICAgIGNvbnN0IHNvcnRBdmFpbGFibGVEYXRlcyA9IChhOiBzdHJpbmcsIGI6IHN0cmluZykgPT4gbW9tZW50KGEsIG1vbnRoWWVhckZvcm1hdCkuZGlmZihtb21lbnQoYiwgbW9udGhZZWFyRm9ybWF0KSk7XG4gICAgICAgIGNvbnN0IGRhdGVzID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgICAgIGNvbnN0IHRvZGF5ID0gbW9tZW50KCk7XG5cbiAgICAgICAgY29uc3QgdG9tb3Jyb3cgPSB0b2RheS5hZGQoMSwgXCJkYXlcIik7XG4gICAgICAgIGNvbnN0IGlzQXZhaWxhYmxlTm93ID0gKG1vdmVJbkRhdGU6IG1vbWVudC5Nb21lbnQpID0+IG1vdmVJbkRhdGUuaXNCZWZvcmUodG9tb3Jyb3cpO1xuXG4gICAgICAgIGZsb29ycGxhbi51bml0cy5mb3JFYWNoKHVuaXQgPT4ge1xuICAgICAgICAgICAgY29uc3QgbW92ZUluRGF0ZSA9IGRhdGVUb01vbWVudCh1bml0Lm1vdmVJbkRhdGUpO1xuICAgICAgICAgICAgaWYgKGlzQXZhaWxhYmxlTm93KG1vdmVJbkRhdGUpKVxuICAgICAgICAgICAgICAgIGRhdGVzLmFkZCh0b2RheS5mb3JtYXQobW9udGhZZWFyRm9ybWF0KSk7XG5cbiAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICBkYXRlcy5hZGQobW92ZUluRGF0ZS5mb3JtYXQobW9udGhZZWFyRm9ybWF0KSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKGRhdGVzKS5zb3J0KHNvcnRBdmFpbGFibGVEYXRlcyk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzaWRlbnRVdGlsaXR5RGV0YWlscyA9ICh1dGlsaXR5OiBVdGlsaXR5TmFtZSkgPT5cbiAgICAgICAgdXRpbGl0eS5hdmVyYWdlTW9udGhseUJpbGwgP1xuICAgICAgICAgICAgY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKHV0aWxpdHkubmFtZSkgKyBcIiAtIEF2Zy9NbyBcIiArIHRvVVNEKHV0aWxpdHkuYXZlcmFnZU1vbnRobHlCaWxsKVxuICAgICAgICAgICAgOiBjYXBpdGFsaXplRmlyc3RMZXR0ZXIodXRpbGl0eS5uYW1lKTtcblxuICAgIGNvbnN0IGlzQXZlcmFnZU1vbnRobHlCaWxsUHJlc2VudCA9ICgpID0+IGZsb29ycGxhbi51dGlsaXRpZXMuZmlsdGVyKHV0aWxpdHkgPT4gdXRpbGl0eS50eXBlID09PSBVdGlsaXR5VHlwZS5SRVNJREVOVF9VVElMSVRZKS5zb21lKHV0aWxpdHkgPT4gdXRpbGl0eS5hdmVyYWdlTW9udGhseUJpbGwgIT0gbnVsbCk7XG5cblxuICAgIGNvbnN0IGlzV2l0aGluVHdlbHZlTW9udGhzID0gKGRhdGU6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gbW9tZW50KGRhdGUsIFwiTU1NIFlZWVlcIik7XG4gICAgICAgIGNvbnN0IHR3ZWx2ZU1vbnRoc0Zyb21Ob3cgPSBtb21lbnQoKS5hZGQoMSwgXCJ5ZWFyXCIpO1xuICAgICAgICByZXR1cm4gY3VycmVudC5pc0JlZm9yZSh0d2VsdmVNb250aHNGcm9tTm93KTtcbiAgICB9XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJzZWN0aW9uLWZsb29ycGxhblwiPlxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlzTG9hZGluZyA/IDxzZWN0aW9uIGNsYXNzTmFtZT1cInNlY3Rpb24tZmxvb3JwbGFuLS1oZXJvXCI+PEdhbGxlcnlIZXJvU2tlbGV0b24vPjwvc2VjdGlvbj4gOiA8PlxuICAgICAgICAgICAgICAgICAgICB7ZXJyb3JMb2FkaW5nID9cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT1cImRpdi1mdWxsLS1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDI+VWgtb2gsIHRoaXMgaXMgYSA0MDQ8L2gyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPiA6XG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGbG9vcnBsYW5IZXJvIGZsb29ycGxhbj17Zmxvb3JwbGFufSBjb250YWN0Q2xpY2tIYW5kbGVyPXtjb250YWN0Q2xpY2tIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGx5Q2xpY2tIYW5kbGVyPXthcHBseUNsaWNrSGFuZGxlcn0gaGFuZGxlUmVmVG9NYXA9e2hhbmRsZVJlZlRvTWFwfS8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmbG9vcnBsYW4tLWNhcmRzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FyZCB0aXRsZT1cIkRldGFpbHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJmbG9vcnBsYW4tY2FyZC0tZmVhdHVyZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2Zsb29ycGxhbi5iZWRyb29tfSBCZWRyb29tXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwge2Zsb29ycGxhbi5iYXRocm9vbX0gQmF0aHJvb20ge2VudW1Ub1N0cmluZyhmbG9vcnBsYW4uc3R5bGUpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Zmxvb3JwbGFuLnVuaXRzLmxlbmd0aCA+IDAgPyA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJmbG9vcnBsYW4tY2FyZC0tZmVhdHVyZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyYW5nZUZyb20oZmxvb3JwbGFuLnVuaXRzLCBcInNxdWFyZUZvb3RcIil9IFNxdWFyZSBGZWV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwiZmxvb3JwbGFuLWNhcmQtLWZlYXR1cmVkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke3JhbmdlRnJvbShmbG9vcnBsYW4udW5pdHMsIFwicmVudFwiKX0vbW9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJmbG9vcnBsYW4tY2FyZC0tZmVhdHVyZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7cmFuZ2VGcm9tKGZsb29ycGxhbi51bml0cywgXCJkZXBvc2l0XCIpfSBTZWN1cml0eSBEZXBvc2l0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz4gOiBcIlwifVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Zmxvb3JwbGFuLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4uYW1lbml0aWVzLmxlbmd0aCA+IDAgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FyZCB0aXRsZT1cIkFtZW5pdGllc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLmFtZW5pdGllcy5maWx0ZXIoYW1lbml0eSA9PiBhbWVuaXR5LmZlYXR1cmVkKS5tYXAoYW1lbml0eSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tYW1lbml0eS1cIiArIGFtZW5pdHkuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVsbGV0SWNvbj1cInN0YXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRmVhdHVyZWQ9e3RydWV9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHthbWVuaXR5Lm5hbWV9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4uYW1lbml0aWVzLmZpbHRlcihhbWVuaXR5ID0+ICFhbWVuaXR5LmZlYXR1cmVkKS5tYXAoYW1lbml0eSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tYW1lbml0eS1cIiArIGFtZW5pdHkuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVsbGV0SWNvbj1cImRvdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHthbWVuaXR5Lm5hbWV9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb29ycGxhblZhcmlhdGlvbnMubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+VmFyaWF0aW9uczwvaDU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW5WYXJpYXRpb25zLm1hcCgodmFyaWF0aW9uLCBpKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tdmFyaWF0aW9uLVwiICsgaX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3ZhcmlhdGlvbi52YXJpYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9VbD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz4gOiBcIlwifVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD4gOiA8PjwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdGltb25pYWxzLmxlbmd0aCA+IDAgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VGVzdGltb25pYWxzQ2FyZCB0ZXN0aW1vbmlhbHM9e3Rlc3RpbW9uaWFsc30vPiA6IDw+PC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHJlZj17bG9jYXRpb25SZWYgPyBsb2NhdGlvblJlZiA6IG1hcFJlZn0gaWQ9XCJsb2NhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJyZWZlcmVuY2VcIj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxNYXBTZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNyYz17Zmxvb3JwbGFuQWRkcmVzc1RvR29vZ2xlTWFwKGZsb29ycGxhbkFkZHJlc3MoZmxvb3JwbGFuKSl9Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgdGl0bGU9XCJQZXRzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1PlBlcm1pdHRlZDwvaDU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXJtaXR0ZWRQZXRzKGZsb29ycGxhbikubWFwKChwZXQsIGkpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tcGVybWl0dGVkLXBldC1cIiArIGl9IGJ1bGxldEljb249XCJjaGVja1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bGxldENvbG9yPVwiZ3JlZW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3BldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9VbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7bm90UGVybWl0dGVkUGV0cyhmbG9vcnBsYW4pLmxlbmd0aCA+IDAgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PjxoNT5Ob3QgUGVybWl0dGVkPC9oNT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxVbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vdFBlcm1pdHRlZFBldHMoZmxvb3JwbGFuKS5tYXAoKHBldCwgaSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaSBrZXk9e1wiZmxvb3JwbGFuLW5vdC1wZXJtaXR0ZWQtcGV0LVwiICsgaX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWxsZXRDb2xvcj1cImJyb3duXCIgYnVsbGV0SWNvbj1cImNsb3NlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3BldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz4gOiBcIlwifVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZXRQb2xpY3koZmxvb3JwbGFuKSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5BZGRpdGlvbmFsIEluZm9ybWF0aW9uPC9oNT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD57cGV0UG9saWN5KGZsb29ycGxhbil9PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+IDogXCJcIlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NhcmQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Zmxvb3JwbGFuLnVuaXRzLmxlbmd0aCA+IDAgPyA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDYXJkIHRpdGxlPVwiQXZhaWxhYmlsaXR5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxVbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGVEYXRlcygpLmZpbHRlcihhdmFpbGFibGVEYXRlID0+IGlzV2l0aGluVHdlbHZlTW9udGhzKGF2YWlsYWJsZURhdGUpKS5tYXAoYXZhaWxhYmxlRGF0ZSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi11bml0LWF2YWlsYWJpbGl0eS1cIiArIGF2YWlsYWJsZURhdGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWxsZXRJY29uPVwiY2FsZW5kYXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEF2YWlsYWJsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gPHN0cm9uZz57Y2FwaXRhbGl6ZUZpcnN0TGV0dGVyKGF2YWlsYWJsZURhdGUpfTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9VbD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDYXJkIHRpdGxlPVwiVXRpbGl0aWVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5QYWlkIEJ5IExhbmRsb3JkPC9oNT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb29ycGxhbi51dGlsaXRpZXMuZmlsdGVyKHV0aWxpdHkgPT4gdXRpbGl0eS50eXBlID09PSBVdGlsaXR5VHlwZS5JTkNMVURFRF9VVElMSVRZKS5tYXAodXRpbGl0eSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi1pbmNsdWRlZC11dGlsaXR5LVwiICsgdXRpbGl0eS5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bGxldEljb249XCJob21lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Y2FwaXRhbGl6ZUZpcnN0TGV0dGVyKHV0aWxpdHkubmFtZSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+UGFpZCBCeSBSZXNpZGVudDwvaDU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxVbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4udXRpbGl0aWVzLmZpbHRlcih1dGlsaXR5ID0+IHV0aWxpdHkudHlwZSA9PT0gVXRpbGl0eVR5cGUuUkVTSURFTlRfVVRJTElUWSkubWFwKHV0aWxpdHkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tcmVzaWRlbnQtdXRpbGl0eS1cIiArIHV0aWxpdHkuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWxsZXRJY29uPVwiZG9sbGFyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVzaWRlbnRVdGlsaXR5RGV0YWlscyh1dGlsaXR5KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpc0F2ZXJhZ2VNb250aGx5QmlsbFByZXNlbnQoKSA/IDxwPjxpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKipBdmVyYWdlIHV0aWxpdGllcyBzaG93biBhYm92ZSBhcmUgYW4gZXN0aW1hdGUuIEFjdHVhbCBtb250aGx5IHV0aWxpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvc3RzIGNhbiB2YXJ5IHNpZ25pZmljYW50bHkgYmFzZWQgb24gaW5kaXZpZHVhbCB1c2FnZSwgdGltZSBvZiB5ZWFyLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlIHdlYXRoZXIsIGFuZCBvdGhlciBmYWN0b3JzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaT48L3A+IDogXCJcIn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPiA6IFwiXCJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7c2ltaWxhckZsb29ycGxhbnMubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFNpbWlsYXJGbG9vcnBsYW5DYXJkIHNpbWlsYXJGbG9vcnBsYW5zPXtzaW1pbGFyRmxvb3JwbGFuc30vPiA6IFwiXCJ9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGFjdC1jYXJkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgZmVhdHVyZWQ9e3RydWV9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48aT5RdWVzdGlvbnM/PC9pPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGk+Q2FsbCBvciB0ZXh0IHVzIGFueXRpbWU6PC9pPjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2Zsb29ycGxhbi5wcm9wZXJ0eT8ucGhvbmUgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+PGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPXtcInRlbDpcIiArIGZsb29ycGxhbi5wcm9wZXJ0eS5waG9uZX0+e2Zvcm1hdFBob25lTnVtYmVyKGZsb29ycGxhbi5wcm9wZXJ0eS5waG9uZSl9PC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBcIlwifVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIG9uQ2xpY2s9e2NvbnRhY3RDbGlja0hhbmRsZXJ9IHNpemU9XCJsYXJnZVwiPkNvbnRhY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDCuzwvQnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgIH1cblxuICAgICAgICA8L3NlY3Rpb24+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxvb3JwbGFuU2VjdGlvblByb3BzIHtcbiAgICBjb250YWN0Q2xpY2tIYW5kbGVyOiAoKSA9PiB2b2lkO1xuICAgIGFwcGx5Q2xpY2tIYW5kbGVyOiAoKSA9PiB2b2lkO1xuICAgIGZsb29ycGxhbklkOiBzdHJpbmc7XG4gICAgbG9jYXRpb25SZWY/OiBSZWFjdC5SZWY8SFRNTERpdkVsZW1lbnQ+O1xuICAgIGhhbmRsZVJlZlRvTG9jYXRpb24/OiAoKSA9PiB2b2lkO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxVQUFBLEdBQUFELE9BQUE7QUFRQSxJQUFBRSxpQkFBQSxHQUFBRixPQUFBO0FBVUFBLE9BQUE7QUFDQSxJQUFBRyxvQkFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksY0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FBU0EsSUFBQU0sS0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8saUJBQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLFdBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLHFCQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxVQUFBLEdBQUFWLE9BQUE7QUFDQSxJQUFBVyxPQUFBLEdBQUFDLHNCQUFBLENBQUFaLE9BQUE7QUFBNEIsU0FBQVksdUJBQUFDLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFBQSxTQUFBRyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSxDQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBbEIsd0JBQUFrQixDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUgsVUFBQSxTQUFBRyxDQUFBLGVBQUFBLENBQUEsdUJBQUFBLENBQUEseUJBQUFBLENBQUEsV0FBQUYsT0FBQSxFQUFBRSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUMsR0FBQSxDQUFBSixDQUFBLFVBQUFHLENBQUEsQ0FBQUUsR0FBQSxDQUFBTCxDQUFBLE9BQUFNLENBQUEsS0FBQUMsU0FBQSxVQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLENBQUEsSUFBQVosQ0FBQSxvQkFBQVksQ0FBQSxJQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLENBQUEsRUFBQVksQ0FBQSxTQUFBSSxDQUFBLEdBQUFSLENBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBWCxDQUFBLEVBQUFZLENBQUEsVUFBQUksQ0FBQSxLQUFBQSxDQUFBLENBQUFYLEdBQUEsSUFBQVcsQ0FBQSxDQUFBQyxHQUFBLElBQUFSLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSixDQUFBLEVBQUFNLENBQUEsRUFBQUksQ0FBQSxJQUFBVixDQUFBLENBQUFNLENBQUEsSUFBQVosQ0FBQSxDQUFBWSxDQUFBLFlBQUFOLENBQUEsQ0FBQVIsT0FBQSxHQUFBRSxDQUFBLEVBQUFHLENBQUEsSUFBQUEsQ0FBQSxDQUFBYyxHQUFBLENBQUFqQixDQUFBLEVBQUFNLENBQUEsR0FBQUEsQ0FBQTtBQUVyQixNQUFNWSxnQkFBaUQsR0FBR0MsSUFBQSxJQU92RDtFQUFBLElBQUFDLG1CQUFBO0VBQUEsSUFOTjtJQUNJQyxtQkFBbUI7SUFDbkJDLGlCQUFpQjtJQUNqQkMsV0FBVztJQUNYQyxXQUFXO0lBQ1hDO0VBQ0osQ0FBQyxHQUFBTixJQUFBO0VBQ0QsTUFBTSxDQUFDTyxTQUFTLEVBQUVDLFlBQVksQ0FBQyxHQUFHLElBQUFDLGVBQVEsRUFBWSxDQUFDLENBQWMsQ0FBQztFQUN0RSxNQUFNLENBQUNDLGlCQUFpQixFQUFFQyxvQkFBb0IsQ0FBQyxHQUFHLElBQUFGLGVBQVEsRUFBcUIsRUFBRSxDQUFDO0VBQ2xGLE1BQU0sQ0FBQ0csbUJBQW1CLEVBQUVDLHNCQUFzQixDQUFDLEdBQUcsSUFBQUosZUFBUSxFQUF1QixFQUFFLENBQUM7RUFDeEYsTUFBTSxDQUFDSyxZQUFZLEVBQUVDLGVBQWUsQ0FBQyxHQUFHLElBQUFOLGVBQVEsRUFBZ0IsRUFBRSxDQUFDO0VBQ25FLE1BQU0sQ0FBQ08sU0FBUyxFQUFFQyxZQUFZLENBQUMsR0FBRyxJQUFBUixlQUFRLEVBQUMsSUFBSSxDQUFDO0VBQ2hELE1BQU0sQ0FBQ1MsWUFBWSxFQUFFQyxlQUFlLENBQUMsR0FBRyxJQUFBVixlQUFRLEVBQUMsS0FBSyxDQUFDO0VBRXZELE1BQU1XLE1BQWlDLEdBQUcsSUFBQUMsYUFBTSxFQUFpQixJQUFJLENBQUM7RUFDdEUsTUFBTUMsY0FBYyxHQUFHQSxDQUFBLEtBQU07SUFDekIsSUFBSWhCLG1CQUFtQixFQUNuQkEsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLEtBQ3JCO01BQUEsSUFBQWlCLGVBQUE7TUFDRCxDQUFBQSxlQUFBLEdBQUFILE1BQU0sQ0FBQ0ksT0FBTyxjQUFBRCxlQUFBLGVBQWRBLGVBQUEsQ0FBZ0JFLGNBQWMsQ0FBQztRQUMzQkMsUUFBUSxFQUFFLFFBQVE7UUFDbEJDLEtBQUssRUFBRTtNQUNYLENBQUMsQ0FBQztJQUNOO0VBRUosQ0FBQztFQUNELElBQUFDLGdCQUFTLEVBQUMsTUFBTTtJQUNaQyxPQUFPLENBQUNDLEdBQUcsQ0FBQyxDQUNSLElBQUFDLDhCQUFZLEVBQUMzQixXQUFXLENBQUMsRUFDekIsSUFBQTRCLHdDQUFzQixFQUFDNUIsV0FBVyxDQUFDLEVBQ25DLElBQUE2QixzQ0FBb0IsRUFBQzdCLFdBQVcsQ0FBQyxFQUNqQyxJQUFBOEIsaUNBQWUsRUFBQzlCLFdBQVcsQ0FBQyxDQUMvQixDQUFDLENBQ0crQixJQUFJLENBQUVDLElBQUksSUFBSztNQUNaLE1BQU1DLGFBQWEsR0FBRztRQUFDLEdBQUdELElBQUksQ0FBQyxDQUFDO01BQUMsQ0FBQztNQUNsQyxNQUFNRSxXQUFXLEdBQUdELGFBQWEsQ0FBQ0UsS0FBSyxDQUFDQyxNQUFNLENBQUNDLElBQUksSUFBSUEsSUFBSSxDQUFDQyxNQUFNLENBQUM7TUFDbkVMLGFBQWEsQ0FBQ0UsS0FBSyxHQUFHRCxXQUFXO01BQ2pDOUIsWUFBWSxDQUFDNkIsYUFBYSxDQUFDO01BQzNCeEIsc0JBQXNCLENBQUN1QixJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7TUFDL0J6QixvQkFBb0IsQ0FBQ3lCLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztNQUM3QnJCLGVBQWUsQ0FBQ3FCLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QixDQUFDLENBQUMsQ0FDRE8sS0FBSyxDQUFDLE1BQU07TUFDVHhCLGVBQWUsQ0FBQyxJQUFJLENBQUM7SUFDekIsQ0FBQyxDQUFDLENBQ0R5QixPQUFPLENBQUMsTUFBTTtNQUNYM0IsWUFBWSxDQUFDLEtBQUssQ0FBQztJQUN2QixDQUFDLENBQUM7RUFFVixDQUFDLEVBQUUsQ0FBQ2IsV0FBVyxDQUFDLENBQUM7RUFFakIsTUFBTXlDLGNBQWMsR0FBR0EsQ0FBQSxLQUFnQjtJQUNuQyxNQUFNQyxlQUFlLEdBQUcsV0FBVztJQUNuQyxNQUFNQyxrQkFBa0IsR0FBR0EsQ0FBQzFELENBQVMsRUFBRTJELENBQVMsS0FBSyxJQUFBQyxlQUFNLEVBQUM1RCxDQUFDLEVBQUV5RCxlQUFlLENBQUMsQ0FBQ0ksSUFBSSxDQUFDLElBQUFELGVBQU0sRUFBQ0QsQ0FBQyxFQUFFRixlQUFlLENBQUMsQ0FBQztJQUNoSCxNQUFNSyxLQUFLLEdBQUcsSUFBSUMsR0FBRyxDQUFTLENBQUM7SUFDL0IsTUFBTUMsS0FBSyxHQUFHLElBQUFKLGVBQU0sRUFBQyxDQUFDO0lBRXRCLE1BQU1LLFFBQVEsR0FBR0QsS0FBSyxDQUFDRSxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQztJQUNwQyxNQUFNQyxjQUFjLEdBQUlDLFVBQXlCLElBQUtBLFVBQVUsQ0FBQ0MsUUFBUSxDQUFDSixRQUFRLENBQUM7SUFFbkYvQyxTQUFTLENBQUNnQyxLQUFLLENBQUNvQixPQUFPLENBQUNsQixJQUFJLElBQUk7TUFDNUIsTUFBTWdCLFVBQVUsR0FBRyxJQUFBRyxtQkFBWSxFQUFDbkIsSUFBSSxDQUFDZ0IsVUFBVSxDQUFDO01BQ2hELElBQUlELGNBQWMsQ0FBQ0MsVUFBVSxDQUFDLEVBQzFCTixLQUFLLENBQUNJLEdBQUcsQ0FBQ0YsS0FBSyxDQUFDUSxNQUFNLENBQUNmLGVBQWUsQ0FBQyxDQUFDLENBQUMsS0FHekNLLEtBQUssQ0FBQ0ksR0FBRyxDQUFDRSxVQUFVLENBQUNJLE1BQU0sQ0FBQ2YsZUFBZSxDQUFDLENBQUM7SUFDckQsQ0FBQyxDQUFDO0lBRUYsT0FBT2dCLEtBQUssQ0FBQ0MsSUFBSSxDQUFDWixLQUFLLENBQUMsQ0FBQ2EsSUFBSSxDQUFDakIsa0JBQWtCLENBQUM7RUFDckQsQ0FBQztFQUVELE1BQU1rQixzQkFBc0IsR0FBSUMsT0FBb0IsSUFDaERBLE9BQU8sQ0FBQ0Msa0JBQWtCLEdBQ3RCLElBQUFDLDRCQUFxQixFQUFDRixPQUFPLENBQUNHLElBQUksQ0FBQyxHQUFHLFlBQVksR0FBRyxJQUFBQyxZQUFLLEVBQUNKLE9BQU8sQ0FBQ0Msa0JBQWtCLENBQUMsR0FDcEYsSUFBQUMsNEJBQXFCLEVBQUNGLE9BQU8sQ0FBQ0csSUFBSSxDQUFDO0VBRTdDLE1BQU1FLDJCQUEyQixHQUFHQSxDQUFBLEtBQU1oRSxTQUFTLENBQUNpRSxTQUFTLENBQUNoQyxNQUFNLENBQUMwQixPQUFPLElBQUlBLE9BQU8sQ0FBQ08sSUFBSSxLQUFLQyxzQkFBVyxDQUFDQyxnQkFBZ0IsQ0FBQyxDQUFDQyxJQUFJLENBQUNWLE9BQU8sSUFBSUEsT0FBTyxDQUFDQyxrQkFBa0IsSUFBSSxJQUFJLENBQUM7RUFHbEwsTUFBTVUsb0JBQW9CLEdBQUlDLElBQVksSUFBSztJQUMzQyxNQUFNdEQsT0FBTyxHQUFHLElBQUF5QixlQUFNLEVBQUM2QixJQUFJLEVBQUUsVUFBVSxDQUFDO0lBQ3hDLE1BQU1DLG1CQUFtQixHQUFHLElBQUE5QixlQUFNLEVBQUMsQ0FBQyxDQUFDTSxHQUFHLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNuRCxPQUFPL0IsT0FBTyxDQUFDa0MsUUFBUSxDQUFDcUIsbUJBQW1CLENBQUM7RUFDaEQsQ0FBQztFQUVELG9CQUNJckgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQTtJQUFTQyxTQUFTLEVBQUM7RUFBbUIsR0FFOUJqRSxTQUFTLGdCQUFHdEQsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQTtJQUFTQyxTQUFTLEVBQUM7RUFBeUIsZ0JBQUN2SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUNqSCxvQkFBQSxDQUFBbUgsbUJBQW1CLE1BQUMsQ0FBVSxDQUFDLGdCQUFHeEgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFBdEgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBd0csUUFBQSxRQUN2RmpFLFlBQVksZ0JBQ1R4RCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBO0lBQVNDLFNBQVMsRUFBQztFQUFrQixnQkFDakN2SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLGFBQUksc0JBQXdCLENBQ3ZCLENBQUMsZ0JBQ1Z0SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUF0SCxNQUFBLENBQUFpQixPQUFBLENBQUF3RyxRQUFBLHFCQUNJekgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDaEgsY0FBQSxDQUFBb0gsYUFBYTtJQUFDN0UsU0FBUyxFQUFFQSxTQUFVO0lBQUNMLG1CQUFtQixFQUFFQSxtQkFBb0I7SUFDL0RDLGlCQUFpQixFQUFFQSxpQkFBa0I7SUFBQ21CLGNBQWMsRUFBRUE7RUFBZSxDQUFDLENBQUMsZUFDdEY1RCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBO0lBQUtDLFNBQVMsRUFBQztFQUFXLGdCQUN0QnZILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUE7SUFBS0MsU0FBUyxFQUFDO0VBQWtCLGdCQUM3QnZILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQzlHLEtBQUEsQ0FBQW1ILElBQUk7SUFBQ0MsS0FBSyxFQUFDO0VBQVMsZ0JBQ2pCNUgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQTtJQUFHQyxTQUFTLEVBQUM7RUFBMEIsR0FDbEMxRSxTQUFTLENBQUNnRixPQUFPLEVBQUMsYUFDakIsRUFBQ2hGLFNBQVMsQ0FBQ2lGLFFBQVEsRUFBQyxZQUFVLEVBQUMsSUFBQUMsbUJBQVksRUFBQ2xGLFNBQVMsQ0FBQ21GLEtBQUssQ0FDOUQsQ0FBQyxFQUNIbkYsU0FBUyxDQUFDZ0MsS0FBSyxDQUFDb0QsTUFBTSxHQUFHLENBQUMsZ0JBQUdqSSxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUF0SCxNQUFBLENBQUFpQixPQUFBLENBQUF3RyxRQUFBLHFCQUMxQnpILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUE7SUFBR0MsU0FBUyxFQUFDO0VBQTBCLEdBQ2xDLElBQUFXLGdCQUFTLEVBQUNyRixTQUFTLENBQUNnQyxLQUFLLEVBQUUsWUFBWSxDQUFDLEVBQUMsY0FDM0MsQ0FBQyxlQUNKN0UsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQTtJQUFHQyxTQUFTLEVBQUM7RUFBMEIsR0FBQyxHQUNuQyxFQUFDLElBQUFXLGdCQUFTLEVBQUNyRixTQUFTLENBQUNnQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEVBQUMsS0FDdEMsQ0FBQyxlQUNKN0UsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQTtJQUFHQyxTQUFTLEVBQUM7RUFBMEIsR0FBQyxHQUNuQyxFQUFDLElBQUFXLGdCQUFTLEVBQUNyRixTQUFTLENBQUNnQyxLQUFLLEVBQUUsU0FBUyxDQUFDLEVBQUMsbUJBQ3pDLENBQ0wsQ0FBQyxHQUFHLEVBQUUsZUFDUjdFLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsWUFDS3pFLFNBQVMsQ0FBQ3NGLFdBQ1osQ0FDRCxDQUFDLEVBRUh0RixTQUFTLENBQUN1RixTQUFTLENBQUNILE1BQU0sR0FBRyxDQUFDLGdCQUMxQmpJLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQzlHLEtBQUEsQ0FBQW1ILElBQUk7SUFBQ0MsS0FBSyxFQUFDO0VBQVcsZ0JBQ25CNUgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDMUcsVUFBQSxDQUFBeUgsRUFBRSxRQUVLeEYsU0FBUyxDQUFDdUYsU0FBUyxDQUFDdEQsTUFBTSxDQUFDd0QsT0FBTyxJQUFJQSxPQUFPLENBQUNDLFFBQVEsQ0FBQyxDQUFDQyxHQUFHLENBQUNGLE9BQU8saUJBQy9EdEksTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDMUcsVUFBQSxDQUFBNkgsRUFBRTtJQUFDQyxHQUFHLEVBQUUsb0JBQW9CLEdBQUdKLE9BQU8sQ0FBQ0ssRUFBRztJQUN2Q0MsVUFBVSxFQUFDLE1BQU07SUFDakJDLFVBQVUsRUFBRTtFQUFLLEdBQ2hCUCxPQUFPLENBQUMzQixJQUVULENBQ1IsQ0FBQyxFQUVEOUQsU0FBUyxDQUFDdUYsU0FBUyxDQUFDdEQsTUFBTSxDQUFDd0QsT0FBTyxJQUFJLENBQUNBLE9BQU8sQ0FBQ0MsUUFBUSxDQUFDLENBQUNDLEdBQUcsQ0FBQ0YsT0FBTyxpQkFDaEV0SSxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUMxRyxVQUFBLENBQUE2SCxFQUFFO0lBQUNDLEdBQUcsRUFBRSxvQkFBb0IsR0FBR0osT0FBTyxDQUFDSyxFQUFHO0lBQ3ZDQyxVQUFVLEVBQUM7RUFBSyxHQUNmTixPQUFPLENBQUMzQixJQUVULENBQ1IsQ0FFSixDQUFDLEVBRUR6RCxtQkFBbUIsQ0FBQytFLE1BQU0sR0FBRyxDQUFDLGdCQUMxQmpJLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQXRILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXdHLFFBQUEscUJBQ0l6SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLGFBQUksWUFBYyxDQUFDLGVBQ25CdEgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDMUcsVUFBQSxDQUFBeUgsRUFBRSxRQUVLbkYsbUJBQW1CLENBQUNzRixHQUFHLENBQUMsQ0FBQ00sU0FBUyxFQUFFM0csQ0FBQyxrQkFDakNuQyxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUMxRyxVQUFBLENBQUE2SCxFQUFFO0lBQUNDLEdBQUcsRUFBRSxzQkFBc0IsR0FBR3ZHO0VBQUUsR0FDL0IyRyxTQUFTLENBQUNBLFNBQ1gsQ0FDUixDQUVKLENBRU4sQ0FBQyxHQUFHLEVBRVosQ0FBQyxnQkFBRzlJLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQXRILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXdHLFFBQUEsTUFBSSxDQUFDLEVBSW5CckUsWUFBWSxDQUFDNkUsTUFBTSxHQUFHLENBQUMsZ0JBQ25CakksTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDN0csaUJBQUEsQ0FBQXNJLGdCQUFnQjtJQUFDM0YsWUFBWSxFQUFFQTtFQUFhLENBQUMsQ0FBQyxnQkFBR3BELE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQXRILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXdHLFFBQUEsTUFBSSxDQUFDLGVBRS9EekgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDOUcsS0FBQSxDQUFBbUgsSUFBSSxxQkFDRDNILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUE7SUFBSzBCLEdBQUcsRUFBRXJHLFdBQVcsR0FBR0EsV0FBVyxHQUFHZSxNQUFPO0lBQUNpRixFQUFFLEVBQUMsVUFBVTtJQUN0RHBCLFNBQVMsRUFBQztFQUFXLENBRXJCLENBQUMsZUFDTnZILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQzVHLFdBQUEsQ0FBQXVJLFVBQVU7SUFDUEMsR0FBRyxFQUFFLElBQUFDLGtDQUEyQixFQUFDLElBQUFDLGtDQUFnQixFQUFDdkcsU0FBUyxDQUFDO0VBQUUsQ0FBQyxDQUNqRSxDQUFDLGVBRVA3QyxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUM5RyxLQUFBLENBQUFtSCxJQUFJO0lBQUNDLEtBQUssRUFBQztFQUFNLGdCQUNkNUgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxhQUFJLFdBQWEsQ0FBQyxlQUNsQnRILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQzFHLFVBQUEsQ0FBQXlILEVBQUUsUUFFSyxJQUFBZ0IsK0JBQWEsRUFBQ3hHLFNBQVMsQ0FBQyxDQUFDMkYsR0FBRyxDQUFDLENBQUNjLEdBQUcsRUFBRW5ILENBQUMsa0JBQ2hDbkMsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDMUcsVUFBQSxDQUFBNkgsRUFBRTtJQUFDQyxHQUFHLEVBQUUsMEJBQTBCLEdBQUd2RyxDQUFFO0lBQUN5RyxVQUFVLEVBQUMsT0FBTztJQUN2RFcsV0FBVyxFQUFDO0VBQU8sR0FDbEJELEdBQ0QsQ0FDUixDQUVKLENBQUMsRUFDSixJQUFBRSxrQ0FBZ0IsRUFBQzNHLFNBQVMsQ0FBQyxDQUFDb0YsTUFBTSxHQUFHLENBQUMsZ0JBQ25DakksTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFBdEgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBd0csUUFBQSxxQkFBRXpILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsYUFBSSxlQUFpQixDQUFDLGVBQ3BCdEgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDMUcsVUFBQSxDQUFBeUgsRUFBRSxRQUVLLElBQUFtQixrQ0FBZ0IsRUFBQzNHLFNBQVMsQ0FBQyxDQUFDMkYsR0FBRyxDQUFDLENBQUNjLEdBQUcsRUFBRW5ILENBQUMsa0JBQ25DbkMsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDMUcsVUFBQSxDQUFBNkgsRUFBRTtJQUFDQyxHQUFHLEVBQUUsOEJBQThCLEdBQUd2RyxDQUFFO0lBQ3hDb0gsV0FBVyxFQUFDLE9BQU87SUFBQ1gsVUFBVSxFQUFDO0VBQU8sR0FDckNVLEdBQ0QsQ0FDUixDQUVKLENBQ04sQ0FBQyxHQUFHLEVBQUUsRUFHUixJQUFBRywyQkFBUyxFQUFDNUcsU0FBUyxDQUFDLGdCQUNoQjdDLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQXRILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXdHLFFBQUEscUJBQ0l6SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLGFBQUksd0JBQTBCLENBQUMsZUFDL0J0SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLFlBQUksSUFBQW1DLDJCQUFTLEVBQUM1RyxTQUFTLENBQUssQ0FDOUIsQ0FBQyxHQUFHLEVBSVosQ0FBQyxFQUNOQSxTQUFTLENBQUNnQyxLQUFLLENBQUNvRCxNQUFNLEdBQUcsQ0FBQyxnQkFBR2pJLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQXRILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXdHLFFBQUEscUJBQzFCekgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDOUcsS0FBQSxDQUFBbUgsSUFBSTtJQUFDQyxLQUFLLEVBQUM7RUFBYyxnQkFDdEI1SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUMxRyxVQUFBLENBQUF5SCxFQUFFLFFBRUtsRCxjQUFjLENBQUMsQ0FBQyxDQUFDTCxNQUFNLENBQUM0RSxhQUFhLElBQUl2QyxvQkFBb0IsQ0FBQ3VDLGFBQWEsQ0FBQyxDQUFDLENBQUNsQixHQUFHLENBQUNrQixhQUFhLGlCQUMzRjFKLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQzFHLFVBQUEsQ0FBQTZILEVBQUU7SUFBQ0MsR0FBRyxFQUFFLDhCQUE4QixHQUFHZ0IsYUFBYztJQUNwRGQsVUFBVSxFQUFDO0VBQVUsR0FBQyxlQUVuQixlQUFBNUksTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxpQkFBUyxJQUFBWiw0QkFBcUIsRUFBQ2dELGFBQWEsQ0FBVSxDQUN6RCxDQUNSLENBRUosQ0FFRixDQUFDLGVBRVAxSixNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUM5RyxLQUFBLENBQUFtSCxJQUFJO0lBQUNDLEtBQUssRUFBQztFQUFXLGdCQUNuQjVILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsYUFBSSxrQkFBb0IsQ0FBQyxlQUN6QnRILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQzFHLFVBQUEsQ0FBQXlILEVBQUUsUUFFS3hGLFNBQVMsQ0FBQ2lFLFNBQVMsQ0FBQ2hDLE1BQU0sQ0FBQzBCLE9BQU8sSUFBSUEsT0FBTyxDQUFDTyxJQUFJLEtBQUtDLHNCQUFXLENBQUMyQyxnQkFBZ0IsQ0FBQyxDQUFDbkIsR0FBRyxDQUFDaEMsT0FBTyxpQkFDNUZ4RyxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUMxRyxVQUFBLENBQUE2SCxFQUFFO0lBQUNDLEdBQUcsRUFBRSw2QkFBNkIsR0FBR2xDLE9BQU8sQ0FBQ21DLEVBQUc7SUFDaERDLFVBQVUsRUFBQztFQUFNLEdBQ2hCLElBQUFsQyw0QkFBcUIsRUFBQ0YsT0FBTyxDQUFDRyxJQUFJLENBQ25DLENBQ1IsQ0FFSixDQUFDLGVBQ0wzRyxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLGFBQUksa0JBQW9CLENBQUMsZUFDekJ0SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUMxRyxVQUFBLENBQUF5SCxFQUFFLFFBRUt4RixTQUFTLENBQUNpRSxTQUFTLENBQUNoQyxNQUFNLENBQUMwQixPQUFPLElBQUlBLE9BQU8sQ0FBQ08sSUFBSSxLQUFLQyxzQkFBVyxDQUFDQyxnQkFBZ0IsQ0FBQyxDQUFDdUIsR0FBRyxDQUFDaEMsT0FBTyxpQkFDNUZ4RyxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUMxRyxVQUFBLENBQUE2SCxFQUFFO0lBQUNDLEdBQUcsRUFBRSw2QkFBNkIsR0FBR2xDLE9BQU8sQ0FBQ21DLEVBQUc7SUFDaERDLFVBQVUsRUFBQztFQUFRLEdBQ2xCckMsc0JBQXNCLENBQUNDLE9BQU8sQ0FDL0IsQ0FDUixDQUVKLENBQUMsRUFDSkssMkJBQTJCLENBQUMsQ0FBQyxnQkFBRzdHLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEseUJBQUd0SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLFlBQUcsOEtBSXBDLENBQUksQ0FBQyxHQUFHLEVBRVQsQ0FDUixDQUFDLEdBQUcsRUFBRSxFQUNQdEUsaUJBQWlCLENBQUNpRixNQUFNLEdBQUcsQ0FBQyxnQkFDekJqSSxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLENBQUMzRyxxQkFBQSxDQUFBaUosb0JBQW9CO0lBQUM1RyxpQkFBaUIsRUFBRUE7RUFBa0IsQ0FBQyxDQUFDLEdBQUcsRUFBRSxlQUV0RWhELE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUE7SUFBS0MsU0FBUyxFQUFDO0VBQWMsZ0JBQ3pCdkgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDOUcsS0FBQSxDQUFBbUgsSUFBSTtJQUFDWSxRQUFRLEVBQUU7RUFBSyxnQkFDakJ2SSxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBLHlCQUFHdEgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxZQUFHLFlBQWEsQ0FBSSxDQUFDLGVBQ3hCdEgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSx5QkFBR3RILE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEsWUFBRywwQkFBMkIsQ0FBSSxDQUFDLEVBQ3JDLENBQUEvRSxtQkFBQSxHQUFBTSxTQUFTLENBQUNnSCxRQUFRLGNBQUF0SCxtQkFBQSxlQUFsQkEsbUJBQUEsQ0FBb0J1SCxLQUFLLGdCQUN0QjlKLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQXFHLGFBQUEseUJBQUd0SCxNQUFBLENBQUFpQixPQUFBLENBQUFxRyxhQUFBO0lBQ0N5QyxJQUFJLEVBQUUsTUFBTSxHQUFHbEgsU0FBUyxDQUFDZ0gsUUFBUSxDQUFDQztFQUFNLEdBQUUsSUFBQUUsd0JBQWlCLEVBQUNuSCxTQUFTLENBQUNnSCxRQUFRLENBQUNDLEtBQUssQ0FBSyxDQUMxRixDQUFDLEdBQ0YsRUFBRSxlQUNSOUosTUFBQSxDQUFBaUIsT0FBQSxDQUFBcUcsYUFBQSxDQUFDMUcsVUFBQSxDQUFBcUosTUFBTTtJQUFDQyxPQUFPLEVBQUMsVUFBVTtJQUFDQyxPQUFPLEVBQUUzSCxtQkFBb0I7SUFBQzRILElBQUksRUFBQztFQUFPLEdBQUMsaUJBRXpELENBQ1gsQ0FDTCxDQUNKLENBQ0osQ0FDUCxDQUdSLENBR0QsQ0FBQztBQUVsQixDQUFDO0FBQUNDLE9BQUEsQ0FBQWhJLGdCQUFBLEdBQUFBLGdCQUFBIn0=
|
|
177
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfRmxvb3JwbGFuIiwiX0Zsb29ycGxhblNlcnZpY2UiLCJfR2FsbGVyeUhlcm9Ta2VsZXRvbiIsIl9GbG9vcnBsYW5IZXJvIiwiX1V0aWxzIiwiX0NhcmQiLCJfVGVzdGltb25pYWxzQ2FyZCIsIl9NYXBTZWN0aW9uIiwiX1NpbWlsYXJGbG9vcnBsYW5DYXJkIiwiX211bmNoZXJVaSIsIl9tb21lbnQiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0Iiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiRmxvb3JwbGFuU2VjdGlvbiIsIl9yZWYiLCJfZmxvb3JwbGFuJHByb3BlcnR5IiwiY29udGFjdENsaWNrSGFuZGxlciIsImFwcGx5Q2xpY2tIYW5kbGVyIiwiZmxvb3JwbGFuSWQiLCJsb2NhdGlvblJlZiIsImhhbmRsZVJlZlRvTG9jYXRpb24iLCJmbG9vcnBsYW4iLCJzZXRGbG9vcnBsYW4iLCJ1c2VTdGF0ZSIsInNpbWlsYXJGbG9vcnBsYW5zIiwic2V0U2ltaWxhckZsb29ycGxhbnMiLCJmbG9vcnBsYW5WYXJpYXRpb25zIiwic2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyIsInRlc3RpbW9uaWFscyIsInNldFRlc3RpbW9uaWFscyIsIndlYlNwZWNpYWxzIiwic2V0V2ViU3BlY2lhbHMiLCJpc0xvYWRpbmciLCJzZXRJc0xvYWRpbmciLCJlcnJvckxvYWRpbmciLCJzZXRFcnJvckxvYWRpbmciLCJtYXBSZWYiLCJ1c2VSZWYiLCJoYW5kbGVSZWZUb01hcCIsIl9tYXBSZWYkY3VycmVudCIsImN1cnJlbnQiLCJzY3JvbGxJbnRvVmlldyIsImJlaGF2aW9yIiwiYmxvY2siLCJ1c2VFZmZlY3QiLCJQcm9taXNlIiwiYWxsIiwiZ2V0Rmxvb3JwbGFuIiwiZ2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyIsImdldFNpbWlsYXJGbG9vcnBsYW5zIiwiZ2V0VGVzdGltb25pYWxzIiwiZ2V0V2ViU3BlY2lhbHMiLCJ0aGVuIiwiZGF0YSIsImZsb29ycGxhbkRhdGEiLCJhY3RpdmVVbml0cyIsInVuaXRzIiwiZmlsdGVyIiwidW5pdCIsImFjdGl2ZSIsInRvZGF5IiwibW9tZW50IiwidmFsaWRXZWJTcGVjaWFscyIsImZvckVhY2giLCJ3ZWJTcGVjaWFsIiwiZGF0ZVRvTW9tZW50Iiwic3RhcnREYXRlIiwiaXNCZWZvcmUiLCJlbmREYXRlIiwiaXNBZnRlciIsInB1c2giLCJjYXRjaCIsImZpbmFsbHkiLCJhdmFpbGFibGVEYXRlcyIsIm1vbnRoWWVhckZvcm1hdCIsInNvcnRBdmFpbGFibGVEYXRlcyIsImIiLCJkaWZmIiwiZGF0ZXMiLCJTZXQiLCJ0b21vcnJvdyIsImFkZCIsImlzQXZhaWxhYmxlTm93IiwibW92ZUluRGF0ZSIsImZvcm1hdCIsIkFycmF5IiwiZnJvbSIsInNvcnQiLCJyZXNpZGVudFV0aWxpdHlEZXRhaWxzIiwidXRpbGl0eSIsImF2ZXJhZ2VNb250aGx5QmlsbCIsImNhcGl0YWxpemVGaXJzdExldHRlciIsIm5hbWUiLCJ0b1VTRCIsImlzQXZlcmFnZU1vbnRobHlCaWxsUHJlc2VudCIsInV0aWxpdGllcyIsInR5cGUiLCJVdGlsaXR5VHlwZSIsIlJFU0lERU5UX1VUSUxJVFkiLCJzb21lIiwiaXNXaXRoaW5Ud2VsdmVNb250aHMiLCJkYXRlIiwidHdlbHZlTW9udGhzRnJvbU5vdyIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJHYWxsZXJ5SGVyb1NrZWxldG9uIiwiRnJhZ21lbnQiLCJGbG9vcnBsYW5IZXJvIiwiQ2FyZCIsInRpdGxlIiwiYmVkcm9vbSIsImJhdGhyb29tIiwiZW51bVRvU3RyaW5nIiwic3R5bGUiLCJsZW5ndGgiLCJyYW5nZUZyb20iLCJkZXNjcmlwdGlvbiIsImFtZW5pdGllcyIsIlVsIiwiYW1lbml0eSIsImZlYXR1cmVkIiwibWFwIiwiTGkiLCJrZXkiLCJpZCIsImJ1bGxldEljb24iLCJpc0ZlYXR1cmVkIiwidmFyaWF0aW9uIiwiVGVzdGltb25pYWxzQ2FyZCIsInJlZiIsIk1hcFNlY3Rpb24iLCJzcmMiLCJmbG9vcnBsYW5BZGRyZXNzVG9Hb29nbGVNYXAiLCJmbG9vcnBsYW5BZGRyZXNzIiwicGVybWl0dGVkUGV0cyIsInBldCIsImJ1bGxldENvbG9yIiwibm90UGVybWl0dGVkUGV0cyIsInBldFBvbGljeSIsImF2YWlsYWJsZURhdGUiLCJJTkNMVURFRF9VVElMSVRZIiwiU2ltaWxhckZsb29ycGxhbkNhcmQiLCJwcm9wZXJ0eSIsInBob25lIiwiaHJlZiIsImZvcm1hdFBob25lTnVtYmVyIiwiQnV0dG9uIiwidmFyaWFudCIsIm9uQ2xpY2siLCJzaXplIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9mbG9vcnBsYW4vc2VjdGlvbi9GbG9vcnBsYW5TZWN0aW9uLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHt1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGV9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHtcbiAgICBGbG9vcnBsYW4sXG4gICAgRmxvb3JwbGFuVmFyaWF0aW9uLFxuICAgIFNpbWlsYXJGbG9vcnBsYW4sXG4gICAgVGVzdGltb25pYWwsXG4gICAgVXRpbGl0eU5hbWUsXG4gICAgVXRpbGl0eVR5cGUsXG4gICAgV2ViU3BlY2lhbFxufSBmcm9tIFwiLi4vZGF0YS9GbG9vcnBsYW5cIjtcbmltcG9ydCB7XG4gICAgZmxvb3JwbGFuQWRkcmVzcyxcbiAgICBnZXRGbG9vcnBsYW4sXG4gICAgZ2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyxcbiAgICBnZXRTaW1pbGFyRmxvb3JwbGFucyxcbiAgICBnZXRUZXN0aW1vbmlhbHMsXG4gICAgZ2V0V2ViU3BlY2lhbHMsXG4gICAgbm90UGVybWl0dGVkUGV0cyxcbiAgICBwZXJtaXR0ZWRQZXRzLFxuICAgIHBldFBvbGljeVxufSBmcm9tIFwiLi4vc2VydmljZS9GbG9vcnBsYW5TZXJ2aWNlXCI7XG5pbXBvcnQgXCIuL2Fzc2V0cy9GbG9vcnBsYW5TZWN0aW9uLnNjc3NcIjtcbmltcG9ydCB7R2FsbGVyeUhlcm9Ta2VsZXRvbn0gZnJvbSBcIi4uLy4uL2dhbGxlcnkvR2FsbGVyeUhlcm9Ta2VsZXRvblwiO1xuaW1wb3J0IHtGbG9vcnBsYW5IZXJvfSBmcm9tIFwiLi9GbG9vcnBsYW5IZXJvXCI7XG5pbXBvcnQge1xuICAgIGNhcGl0YWxpemVGaXJzdExldHRlcixcbiAgICBkYXRlVG9Nb21lbnQsXG4gICAgZW51bVRvU3RyaW5nLFxuICAgIGZsb29ycGxhbkFkZHJlc3NUb0dvb2dsZU1hcCxcbiAgICBmb3JtYXRQaG9uZU51bWJlcixcbiAgICByYW5nZUZyb20sXG4gICAgdG9VU0Rcbn0gZnJvbSBcIi4uLy4uL3V0aWxzL1V0aWxzXCI7XG5pbXBvcnQge0NhcmR9IGZyb20gXCIuLi8uLi9jYXJkL0NhcmRcIjtcbmltcG9ydCB7VGVzdGltb25pYWxzQ2FyZH0gZnJvbSBcIi4uL2NhcmQvVGVzdGltb25pYWxzQ2FyZFwiO1xuaW1wb3J0IHtNYXBTZWN0aW9ufSBmcm9tIFwiLi4vLi4vbWFwL01hcFNlY3Rpb25cIjtcbmltcG9ydCB7U2ltaWxhckZsb29ycGxhbkNhcmR9IGZyb20gXCIuLi9jYXJkL1NpbWlsYXJGbG9vcnBsYW5DYXJkXCI7XG5pbXBvcnQge0J1dHRvbiwgTGksIFVsfSBmcm9tIFwiQGNvbnRlbnRtdW5jaC9tdW5jaGVyLXVpXCI7XG5pbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcblxuZXhwb3J0IGNvbnN0IEZsb29ycGxhblNlY3Rpb246IFJlYWN0LkZDPEZsb29ycGxhblNlY3Rpb25Qcm9wcz4gPSAoXG4gICAge1xuICAgICAgICBjb250YWN0Q2xpY2tIYW5kbGVyLFxuICAgICAgICBhcHBseUNsaWNrSGFuZGxlcixcbiAgICAgICAgZmxvb3JwbGFuSWQsXG4gICAgICAgIGxvY2F0aW9uUmVmLFxuICAgICAgICBoYW5kbGVSZWZUb0xvY2F0aW9uXG4gICAgfSkgPT4ge1xuICAgIGNvbnN0IFtmbG9vcnBsYW4sIHNldEZsb29ycGxhbl0gPSB1c2VTdGF0ZTxGbG9vcnBsYW4+KHt9IGFzIEZsb29ycGxhbik7XG4gICAgY29uc3QgW3NpbWlsYXJGbG9vcnBsYW5zLCBzZXRTaW1pbGFyRmxvb3JwbGFuc10gPSB1c2VTdGF0ZTxTaW1pbGFyRmxvb3JwbGFuW10+KFtdKTtcbiAgICBjb25zdCBbZmxvb3JwbGFuVmFyaWF0aW9ucywgc2V0Rmxvb3JwbGFuVmFyaWF0aW9uc10gPSB1c2VTdGF0ZTxGbG9vcnBsYW5WYXJpYXRpb25bXT4oW10pO1xuICAgIGNvbnN0IFt0ZXN0aW1vbmlhbHMsIHNldFRlc3RpbW9uaWFsc10gPSB1c2VTdGF0ZTxUZXN0aW1vbmlhbFtdPihbXSk7XG4gICAgY29uc3QgW3dlYlNwZWNpYWxzLCBzZXRXZWJTcGVjaWFsc10gPSB1c2VTdGF0ZTxXZWJTcGVjaWFsW10+KFtdKTtcblxuICAgIGNvbnN0IFtpc0xvYWRpbmcsIHNldElzTG9hZGluZ10gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgICBjb25zdCBbZXJyb3JMb2FkaW5nLCBzZXRFcnJvckxvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gICAgY29uc3QgbWFwUmVmOiBSZWFjdC5SZWY8SFRNTERpdkVsZW1lbnQ+ID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICBjb25zdCBoYW5kbGVSZWZUb01hcCA9ICgpID0+IHtcbiAgICAgICAgaWYgKGhhbmRsZVJlZlRvTG9jYXRpb24pXG4gICAgICAgICAgICBoYW5kbGVSZWZUb0xvY2F0aW9uKCk7XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgbWFwUmVmLmN1cnJlbnQ/LnNjcm9sbEludG9WaWV3KHtcbiAgICAgICAgICAgICAgICBiZWhhdmlvcjogXCJzbW9vdGhcIixcbiAgICAgICAgICAgICAgICBibG9jazogXCJzdGFydFwiXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgfTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBQcm9taXNlLmFsbChbXG4gICAgICAgICAgICBnZXRGbG9vcnBsYW4oZmxvb3JwbGFuSWQpLFxuICAgICAgICAgICAgZ2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyhmbG9vcnBsYW5JZCksXG4gICAgICAgICAgICBnZXRTaW1pbGFyRmxvb3JwbGFucyhmbG9vcnBsYW5JZCksXG4gICAgICAgICAgICBnZXRUZXN0aW1vbmlhbHMoZmxvb3JwbGFuSWQpLFxuICAgICAgICAgICAgZ2V0V2ViU3BlY2lhbHMoZmxvb3JwbGFuSWQpXG4gICAgICAgIF0pXG4gICAgICAgICAgICAudGhlbigoZGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZsb29ycGxhbkRhdGEgPSB7Li4uZGF0YVswXX07XG4gICAgICAgICAgICAgICAgY29uc3QgYWN0aXZlVW5pdHMgPSBmbG9vcnBsYW5EYXRhLnVuaXRzLmZpbHRlcih1bml0ID0+IHVuaXQuYWN0aXZlKTtcbiAgICAgICAgICAgICAgICBjb25zdCB0b2RheSA9IG1vbWVudCgpO1xuICAgICAgICAgICAgICAgIGZsb29ycGxhbkRhdGEudW5pdHMgPSBhY3RpdmVVbml0cztcbiAgICAgICAgICAgICAgICBzZXRGbG9vcnBsYW4oZmxvb3JwbGFuRGF0YSk7XG4gICAgICAgICAgICAgICAgc2V0Rmxvb3JwbGFuVmFyaWF0aW9ucyhkYXRhWzFdKTtcbiAgICAgICAgICAgICAgICBzZXRTaW1pbGFyRmxvb3JwbGFucyhkYXRhWzJdKTtcbiAgICAgICAgICAgICAgICBzZXRUZXN0aW1vbmlhbHMoZGF0YVszXSk7XG4gICAgICAgICAgICAgICAgY29uc3QgdmFsaWRXZWJTcGVjaWFsczogV2ViU3BlY2lhbFtdID0gW107XG4gICAgICAgICAgICAgICAgZGF0YVs0XS5mb3JFYWNoKHdlYlNwZWNpYWwgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZGF0ZVRvTW9tZW50KHdlYlNwZWNpYWwuc3RhcnREYXRlKS5pc0JlZm9yZSh0b2RheSkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGVUb01vbWVudCh3ZWJTcGVjaWFsLmVuZERhdGUpLmlzQWZ0ZXIodG9kYXkpXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRXZWJTcGVjaWFscy5wdXNoKHdlYlNwZWNpYWwpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgc2V0V2ViU3BlY2lhbHModmFsaWRXZWJTcGVjaWFscyk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRFcnJvckxvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldElzTG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgICB9KTtcblxuICAgIH0sIFtmbG9vcnBsYW5JZF0pO1xuXG4gICAgY29uc3QgYXZhaWxhYmxlRGF0ZXMgPSAoKTogc3RyaW5nW10gPT4ge1xuICAgICAgICBjb25zdCBtb250aFllYXJGb3JtYXQgPSBcIk1NTU0gWVlZWVwiO1xuICAgICAgICBjb25zdCBzb3J0QXZhaWxhYmxlRGF0ZXMgPSAoYTogc3RyaW5nLCBiOiBzdHJpbmcpID0+IG1vbWVudChhLCBtb250aFllYXJGb3JtYXQpLmRpZmYobW9tZW50KGIsIG1vbnRoWWVhckZvcm1hdCkpO1xuICAgICAgICBjb25zdCBkYXRlcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgICAgICBjb25zdCB0b2RheSA9IG1vbWVudCgpO1xuXG4gICAgICAgIGNvbnN0IHRvbW9ycm93ID0gdG9kYXkuYWRkKDEsIFwiZGF5XCIpO1xuICAgICAgICBjb25zdCBpc0F2YWlsYWJsZU5vdyA9IChtb3ZlSW5EYXRlOiBtb21lbnQuTW9tZW50KSA9PiBtb3ZlSW5EYXRlLmlzQmVmb3JlKHRvbW9ycm93KTtcblxuICAgICAgICBmbG9vcnBsYW4udW5pdHMuZm9yRWFjaCh1bml0ID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1vdmVJbkRhdGUgPSBkYXRlVG9Nb21lbnQodW5pdC5tb3ZlSW5EYXRlKTtcbiAgICAgICAgICAgIGlmIChpc0F2YWlsYWJsZU5vdyhtb3ZlSW5EYXRlKSlcbiAgICAgICAgICAgICAgICBkYXRlcy5hZGQodG9kYXkuZm9ybWF0KG1vbnRoWWVhckZvcm1hdCkpO1xuXG4gICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgZGF0ZXMuYWRkKG1vdmVJbkRhdGUuZm9ybWF0KG1vbnRoWWVhckZvcm1hdCkpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShkYXRlcykuc29ydChzb3J0QXZhaWxhYmxlRGF0ZXMpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc2lkZW50VXRpbGl0eURldGFpbHMgPSAodXRpbGl0eTogVXRpbGl0eU5hbWUpID0+XG4gICAgICAgIHV0aWxpdHkuYXZlcmFnZU1vbnRobHlCaWxsID9cbiAgICAgICAgICAgIGNhcGl0YWxpemVGaXJzdExldHRlcih1dGlsaXR5Lm5hbWUpICsgXCIgLSBBdmcvTW8gXCIgKyB0b1VTRCh1dGlsaXR5LmF2ZXJhZ2VNb250aGx5QmlsbClcbiAgICAgICAgICAgIDogY2FwaXRhbGl6ZUZpcnN0TGV0dGVyKHV0aWxpdHkubmFtZSk7XG5cbiAgICBjb25zdCBpc0F2ZXJhZ2VNb250aGx5QmlsbFByZXNlbnQgPSAoKSA9PiBmbG9vcnBsYW4udXRpbGl0aWVzLmZpbHRlcih1dGlsaXR5ID0+IHV0aWxpdHkudHlwZSA9PT0gVXRpbGl0eVR5cGUuUkVTSURFTlRfVVRJTElUWSkuc29tZSh1dGlsaXR5ID0+IHV0aWxpdHkuYXZlcmFnZU1vbnRobHlCaWxsICE9IG51bGwpO1xuXG5cbiAgICBjb25zdCBpc1dpdGhpblR3ZWx2ZU1vbnRocyA9IChkYXRlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IG1vbWVudChkYXRlLCBcIk1NTSBZWVlZXCIpO1xuICAgICAgICBjb25zdCB0d2VsdmVNb250aHNGcm9tTm93ID0gbW9tZW50KCkuYWRkKDEsIFwieWVhclwiKTtcbiAgICAgICAgcmV0dXJuIGN1cnJlbnQuaXNCZWZvcmUodHdlbHZlTW9udGhzRnJvbU5vdyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPHNlY3Rpb24gY2xhc3NOYW1lPVwic2VjdGlvbi1mbG9vcnBsYW5cIj5cbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpc0xvYWRpbmcgPyA8c2VjdGlvbiBjbGFzc05hbWU9XCJzZWN0aW9uLWZsb29ycGxhbi0taGVyb1wiPjxHYWxsZXJ5SGVyb1NrZWxldG9uLz48L3NlY3Rpb24+IDogPD5cbiAgICAgICAgICAgICAgICAgICAge2Vycm9yTG9hZGluZyA/XG4gICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJkaXYtZnVsbC0tY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyPlVoLW9oLCB0aGlzIGlzIGEgNDA0PC9oMj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4gOlxuICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rmxvb3JwbGFuSGVybyBmbG9vcnBsYW49e2Zsb29ycGxhbn0gY29udGFjdENsaWNrSGFuZGxlcj17Y29udGFjdENsaWNrSGFuZGxlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3ZWJTcGVjaWFscz17d2ViU3BlY2lhbHN9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwbHlDbGlja0hhbmRsZXI9e2FwcGx5Q2xpY2tIYW5kbGVyfSBoYW5kbGVSZWZUb01hcD17aGFuZGxlUmVmVG9NYXB9Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZsb29ycGxhbi0tY2FyZHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDYXJkIHRpdGxlPVwiRGV0YWlsc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImZsb29ycGxhbi1jYXJkLS1mZWF0dXJlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Zmxvb3JwbGFuLmJlZHJvb219IEJlZHJvb21cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB7Zmxvb3JwbGFuLmJhdGhyb29tfSBCYXRocm9vbSB7ZW51bVRvU3RyaW5nKGZsb29ycGxhbi5zdHlsZSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtmbG9vcnBsYW4udW5pdHMubGVuZ3RoID4gMCA/IDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImZsb29ycGxhbi1jYXJkLS1mZWF0dXJlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3JhbmdlRnJvbShmbG9vcnBsYW4udW5pdHMsIFwic3F1YXJlRm9vdFwiKX0gU3F1YXJlIEZlZXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJmbG9vcnBsYW4tY2FyZC0tZmVhdHVyZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7cmFuZ2VGcm9tKGZsb29ycGxhbi51bml0cywgXCJyZW50XCIpfS9tb1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cImZsb29ycGxhbi1jYXJkLS1mZWF0dXJlZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtyYW5nZUZyb20oZmxvb3JwbGFuLnVuaXRzLCBcImRlcG9zaXRcIil9IFNlY3VyaXR5IERlcG9zaXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPiA6IFwiXCJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtmbG9vcnBsYW4uZGVzY3JpcHRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9DYXJkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb29ycGxhbi5hbWVuaXRpZXMubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDYXJkIHRpdGxlPVwiQW1lbml0aWVzXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9vcnBsYW4uYW1lbml0aWVzLmZpbHRlcihhbWVuaXR5ID0+IGFtZW5pdHkuZmVhdHVyZWQpLm1hcChhbWVuaXR5ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi1hbWVuaXR5LVwiICsgYW1lbml0eS5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWxsZXRJY29uPVwic3RhclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNGZWF0dXJlZD17dHJ1ZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2FtZW5pdHkubmFtZX1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb29ycGxhbi5hbWVuaXRpZXMuZmlsdGVyKGFtZW5pdHkgPT4gIWFtZW5pdHkuZmVhdHVyZWQpLm1hcChhbWVuaXR5ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi1hbWVuaXR5LVwiICsgYW1lbml0eS5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWxsZXRJY29uPVwiZG90XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2FtZW5pdHkubmFtZX1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuVmFyaWF0aW9ucy5sZW5ndGggPiAwID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5WYXJpYXRpb25zPC9oNT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxVbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb29ycGxhblZhcmlhdGlvbnMubWFwKCh2YXJpYXRpb24sIGkpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi12YXJpYXRpb24tXCIgKyBpfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dmFyaWF0aW9uLnZhcmlhdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1VsPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPiA6IFwiXCJ9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9DYXJkPiA6IDw+PC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0aW1vbmlhbHMubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUZXN0aW1vbmlhbHNDYXJkIHRlc3RpbW9uaWFscz17dGVzdGltb25pYWxzfS8+IDogPD48Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDYXJkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgcmVmPXtsb2NhdGlvblJlZiA/IGxvY2F0aW9uUmVmIDogbWFwUmVmfSBpZD1cImxvY2F0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInJlZmVyZW5jZVwiPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPE1hcFNlY3Rpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3JjPXtmbG9vcnBsYW5BZGRyZXNzVG9Hb29nbGVNYXAoZmxvb3JwbGFuQWRkcmVzcyhmbG9vcnBsYW4pKX0vPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9DYXJkPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FyZCB0aXRsZT1cIlBldHNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDU+UGVybWl0dGVkPC9oNT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcm1pdHRlZFBldHMoZmxvb3JwbGFuKS5tYXAoKHBldCwgaSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi1wZXJtaXR0ZWQtcGV0LVwiICsgaX0gYnVsbGV0SWNvbj1cImNoZWNrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVsbGV0Q29sb3I9XCJncmVlblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtub3RQZXJtaXR0ZWRQZXRzKGZsb29ycGxhbikubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+PGg1Pk5vdCBQZXJtaXR0ZWQ8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm90UGVybWl0dGVkUGV0cyhmbG9vcnBsYW4pLm1hcCgocGV0LCBpKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExpIGtleT17XCJmbG9vcnBsYW4tbm90LXBlcm1pdHRlZC1wZXQtXCIgKyBpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bGxldENvbG9yPVwiYnJvd25cIiBidWxsZXRJY29uPVwiY2xvc2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPiA6IFwiXCJ9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBldFBvbGljeShmbG9vcnBsYW4pID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1PkFkZGl0aW9uYWwgSW5mb3JtYXRpb248L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPntwZXRQb2xpY3koZmxvb3JwbGFuKX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz4gOiBcIlwiXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtmbG9vcnBsYW4udW5pdHMubGVuZ3RoID4gMCA/IDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgdGl0bGU9XCJBdmFpbGFiaWxpdHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZURhdGVzKCkuZmlsdGVyKGF2YWlsYWJsZURhdGUgPT4gaXNXaXRoaW5Ud2VsdmVNb250aHMoYXZhaWxhYmxlRGF0ZSkpLm1hcChhdmFpbGFibGVEYXRlID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaSBrZXk9e1wiZmxvb3JwbGFuLXVuaXQtYXZhaWxhYmlsaXR5LVwiICsgYXZhaWxhYmxlRGF0ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bGxldEljb249XCJjYWxlbmRhclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXZhaWxhYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiA8c3Ryb25nPntjYXBpdGFsaXplRmlyc3RMZXR0ZXIoYXZhaWxhYmxlRGF0ZSl9PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1VsPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9DYXJkPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPENhcmQgdGl0bGU9XCJVdGlsaXRpZXNcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1PlBhaWQgQnkgTGFuZGxvcmQ8L2g1PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLnV0aWxpdGllcy5maWx0ZXIodXRpbGl0eSA9PiB1dGlsaXR5LnR5cGUgPT09IFV0aWxpdHlUeXBlLklOQ0xVREVEX1VUSUxJVFkpLm1hcCh1dGlsaXR5ID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMaSBrZXk9e1wiZmxvb3JwbGFuLWluY2x1ZGVkLXV0aWxpdHktXCIgKyB1dGlsaXR5LmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVsbGV0SWNvbj1cImhvbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjYXBpdGFsaXplRmlyc3RMZXR0ZXIodXRpbGl0eS5uYW1lKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvVWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoNT5QYWlkIEJ5IFJlc2lkZW50PC9oNT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb29ycGxhbi51dGlsaXRpZXMuZmlsdGVyKHV0aWxpdHkgPT4gdXRpbGl0eS50eXBlID09PSBVdGlsaXR5VHlwZS5SRVNJREVOVF9VVElMSVRZKS5tYXAodXRpbGl0eSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGkga2V5PXtcImZsb29ycGxhbi1yZXNpZGVudC11dGlsaXR5LVwiICsgdXRpbGl0eS5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1bGxldEljb249XCJkb2xsYXJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZXNpZGVudFV0aWxpdHlEZXRhaWxzKHV0aWxpdHkpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9VbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lzQXZlcmFnZU1vbnRobHlCaWxsUHJlc2VudCgpID8gPHA+PGk+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKkF2ZXJhZ2UgdXRpbGl0aWVzIHNob3duIGFib3ZlIGFyZSBhbiBlc3RpbWF0ZS4gQWN0dWFsIG1vbnRobHkgdXRpbGl0eVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29zdHMgY2FuIHZhcnkgc2lnbmlmaWNhbnRseSBiYXNlZCBvbiBpbmRpdmlkdWFsIHVzYWdlLCB0aW1lIG9mIHllYXIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGUgd2VhdGhlciwgYW5kIG90aGVyIGZhY3RvcnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9pPjwvcD4gOiBcIlwifVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9DYXJkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+IDogXCJcIn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzaW1pbGFyRmxvb3JwbGFucy5sZW5ndGggPiAwID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U2ltaWxhckZsb29ycGxhbkNhcmQgc2ltaWxhckZsb29ycGxhbnM9e3NpbWlsYXJGbG9vcnBsYW5zfS8+IDogXCJcIn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb250YWN0LWNhcmRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Q2FyZCBmZWF0dXJlZD17dHJ1ZX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwPjxpPlF1ZXN0aW9ucz88L2k+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48aT5DYWxsIG9yIHRleHQgdXMgYW55dGltZTo8L2k+PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Zmxvb3JwbGFuLnByb3BlcnR5Py5waG9uZSA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cD48YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhyZWY9e1widGVsOlwiICsgZmxvb3JwbGFuLnByb3BlcnR5LnBob25lfT57Zm9ybWF0UGhvbmVOdW1iZXIoZmxvb3JwbGFuLnByb3BlcnR5LnBob25lKX08L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFwiXCJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgb25DbGljaz17Y29udGFjdENsaWNrSGFuZGxlcn0gc2l6ZT1cImxhcmdlXCI+Q29udGFjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIMK7PC9CdXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9DYXJkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgfVxuXG4gICAgICAgIDwvc2VjdGlvbj5cbiAgICApO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBGbG9vcnBsYW5TZWN0aW9uUHJvcHMge1xuICAgIGNvbnRhY3RDbGlja0hhbmRsZXI6ICgpID0+IHZvaWQ7XG4gICAgYXBwbHlDbGlja0hhbmRsZXI6ICgpID0+IHZvaWQ7XG4gICAgZmxvb3JwbGFuSWQ6IHN0cmluZztcbiAgICBsb2NhdGlvblJlZj86IFJlYWN0LlJlZjxIVE1MRGl2RWxlbWVudD47XG4gICAgaGFuZGxlUmVmVG9Mb2NhdGlvbj86ICgpID0+IHZvaWQ7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUQsT0FBQTtBQVNBLElBQUFFLGlCQUFBLEdBQUFGLE9BQUE7QUFXQUEsT0FBQTtBQUNBLElBQUFHLG9CQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxjQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxNQUFBLEdBQUFMLE9B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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CurrentFilters, FloorplanFilters, SortBy } from "../data/FloorplanFilters";
|
|
2
2
|
import { Moment } from "moment";
|
|
3
|
-
import { Floorplan, FloorplanCardData, FloorplanDetails, FloorplanSpotlight, FloorplanVariation, SimilarFloorplan, Testimonial } from "../data/Floorplan";
|
|
3
|
+
import { Floorplan, FloorplanCardData, FloorplanDetails, FloorplanSpotlight, FloorplanVariation, SimilarFloorplan, Testimonial, WebSpecial } from "../data/Floorplan";
|
|
4
4
|
import { PropertyFilterData, PropertyId } from "../../property/data/Property";
|
|
5
5
|
export declare const AVAILABLE_NOW = "Available Now";
|
|
6
6
|
export declare const convertToHttps: (url: string) => string;
|
|
@@ -20,6 +20,7 @@ export declare const getSimilarFloorplans: (floorplanId: string) => Promise<Simi
|
|
|
20
20
|
export declare const getFloorplanVariations: (floorplanId: string) => Promise<FloorplanVariation[]>;
|
|
21
21
|
export declare const isFloorplanAvailable: (floorplan: Floorplan | FloorplanCardData) => boolean;
|
|
22
22
|
export declare const getTestimonials: (floorplanId: string) => Promise<Testimonial[]>;
|
|
23
|
+
export declare const getWebSpecials: (floorplanId: string) => Promise<WebSpecial[]>;
|
|
23
24
|
export declare const permittedPets: (floorplan: Floorplan) => string[];
|
|
24
25
|
export declare const notPermittedPets: (floorplan: Floorplan) => string[];
|
|
25
26
|
export declare const petPolicy: (floorplan: Floorplan) => string | undefined;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.sortFloorplans = exports.sortAndFilter = exports.petPolicy = exports.permittedPets = exports.notPermittedPets = exports.momentToMonthYear = exports.isFloorplanAvailable = exports.isDateWithinTwelveMonths = exports.isDateAfterToday = exports.getTestimonials = exports.getSimilarFloorplans = exports.getFloorplansFilterData = exports.getFloorplanVariations = exports.getFloorplan = exports.getFeaturedFloorplans = exports.getAllPropertyFilterData = exports.getAllActiveFloorplans = exports.floorplanAddress = exports.filtersFrom = exports.defaultAvailabilityToMonthYear = exports.convertToHttps = exports.AVAILABLE_NOW = void 0;
|
|
6
|
+
exports.sortFloorplans = exports.sortAndFilter = exports.petPolicy = exports.permittedPets = exports.notPermittedPets = exports.momentToMonthYear = exports.isFloorplanAvailable = exports.isDateWithinTwelveMonths = exports.isDateAfterToday = exports.getWebSpecials = exports.getTestimonials = exports.getSimilarFloorplans = exports.getFloorplansFilterData = exports.getFloorplanVariations = exports.getFloorplan = exports.getFeaturedFloorplans = exports.getAllPropertyFilterData = exports.getAllActiveFloorplans = exports.floorplanAddress = exports.filtersFrom = exports.defaultAvailabilityToMonthYear = exports.convertToHttps = exports.AVAILABLE_NOW = void 0;
|
|
7
7
|
var _lodash = _interopRequireDefault(require("lodash"));
|
|
8
8
|
var _FloorplanFilters = require("../data/FloorplanFilters");
|
|
9
9
|
var _moment = _interopRequireDefault(require("moment"));
|
|
@@ -141,6 +141,8 @@ const isFloorplanAvailable = floorplan => floorplan.units.some(unit => today.isA
|
|
|
141
141
|
exports.isFloorplanAvailable = isFloorplanAvailable;
|
|
142
142
|
const getTestimonials = floorplanId => (0, _RoundRobin.get)("testimonials/search/byFloorplanId?projection=withId&floorplanId=" + floorplanId).then(response => response.data._embedded.testimonials);
|
|
143
143
|
exports.getTestimonials = getTestimonials;
|
|
144
|
+
const getWebSpecials = floorplanId => (0, _RoundRobin.get)("webSpecials/search/byFloorplanId?projection=withId&floorplanId=" + floorplanId).then(response => response.data._embedded.webSpecials);
|
|
145
|
+
exports.getWebSpecials = getWebSpecials;
|
|
144
146
|
const permittedPets = floorplan => {
|
|
145
147
|
const unit = unitWithMostAllowedPet([...floorplan.units]);
|
|
146
148
|
switch (unit === null || unit === void 0 ? void 0 : unit.allowedPet) {
|
|
@@ -201,4 +203,4 @@ const floorplanAddress = currentFloorplan => {
|
|
|
201
203
|
};
|
|
202
204
|
};
|
|
203
205
|
exports.floorplanAddress = floorplanAddress;
|
|
204
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfRmxvb3JwbGFuRmlsdGVycyIsIl9tb21lbnQiLCJfVXRpbHMiLCJfVW5pdCIsIl9Sb3VuZFJvYmluIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJBVkFJTEFCTEVfTk9XIiwiZXhwb3J0cyIsImNvbnZlcnRUb0h0dHBzIiwidXJsIiwicmVwbGFjZSIsImdldEFsbFByb3BlcnR5RmlsdGVyRGF0YSIsImdldCIsInRoZW4iLCJyZXNwb25zZSIsInByb3BlcnRpZXMiLCJkYXRhIiwiX2VtYmVkZGVkIiwiZmlsdGVyIiwicHJvcGVydHkiLCJhY3RpdmUiLCJmb3JFYWNoIiwiZmxvb3JwbGFucyIsImZsb29ycGxhbiIsInVuaXRzIiwidW5pdCIsImdldEZsb29ycGxhbnNGaWx0ZXJEYXRhIiwicHJvcGVydHlJZCIsInNvcnRBbmRGaWx0ZXIiLCJjdXJyZW50RmlsdGVycyIsInNvcnRGbG9vcnBsYW5zIiwiZmlsdGVyTWF0Y2hlcyIsInNvcnRCeSIsImlzRGF0ZVdpdGhpblR3ZWx2ZU1vbnRocyIsImRhdGUiLCJ0b2RheSIsIm1vbWVudCIsImRpZmYiLCJpc0RhdGVBZnRlclRvZGF5IiwiaXNBZnRlciIsImRhdGVUb01vbnRoWWVhciIsImRhdGVTdHJpbmciLCJmb3JtYXQiLCJkZWZhdWx0QXZhaWxhYmlsaXR5VG9Nb250aFllYXIiLCJtb21lbnRUb01vbnRoWWVhciIsImlzQXZhaWxhYmxlIiwiYXZhaWxhYmlsaXR5RmlsdGVycyIsImxlbmd0aCIsInNvbWUiLCJpbmRleE9mIiwiaXNCZWZvcmVUb2RheSIsIm1vdmVJbkRhdGUiLCJpc0JlZm9yZSIsImlzQmVkcm9vbXNNYXRjaCIsImJlZHJvb21GaWx0ZXJzIiwiYmVkcm9vbSIsImlzU3R5bGVNYXRjaCIsInN0eWxlRmlsdGVycyIsInN0eWxlIiwiaXNJblByaWNlUmFuZ2UiLCJtaW5SZW50IiwibWF4UmVudCIsIm1pbk1heCIsIm1pbnVtTWF4aW11bSIsIm1pbiIsIm1heCIsImlzRmxvb3JwbGFuSWRzTWF0Y2giLCJmbG9vcnBsYW5JZHMiLCJpZCIsIlNvcnRGaWVsZHMiLCJzb3J0RmllbGQiLCJvcmRlciIsInNvcnQiLCJhIiwiYiIsIm1pblJhdGVTb3J0ZWQiLCJfIiwib3JkZXJCeSIsImZpbHRlcnNGcm9tIiwiU2V0IiwiYWRkIiwidmFsdWUiLCJhdmFpbGFiaWxpdHkiLCJnZXRGZWF0dXJlZEZsb29ycGxhbnMiLCJmZWF0dXJlZCIsImdldEFsbEFjdGl2ZUZsb29ycGxhbnMiLCJnZXRGbG9vcnBsYW4iLCJmbG9vcnBsYW5JZCIsImdldFNpbWlsYXJGbG9vcnBsYW5zIiwic2ltaWxhckZsb29ycGxhbnMiLCJnZXRGbG9vcnBsYW5WYXJpYXRpb25zIiwiZmxvb3JwbGFuVmFyaWF0aW9ucyIsImlzRmxvb3JwbGFuQXZhaWxhYmxlIiwiZGF0ZVRvTW9tZW50IiwiZ2V0VGVzdGltb25pYWxzIiwidGVzdGltb25pYWxzIiwicGVybWl0dGVkUGV0cyIsInVuaXRXaXRoTW9zdEFsbG93ZWRQZXQiLCJhbGxvd2VkUGV0IiwiUGV0IiwiTEFSR0VfRE9HX1NNQUxMX0RPR19DQVQiLCJTTUFMTF9ET0dfQ0FUIiwiQ0FUIiwibm90UGVybWl0dGVkUGV0cyIsIk5PX1BFVCIsInBldFBvbGljeSIsInBldE9yZGluYWwiLCJwZXQiLCJPYmplY3QiLCJrZXlzIiwicG9wIiwiZmxvb3JwbGFuQWRkcmVzcyIsImN1cnJlbnRGbG9vcnBsYW4iLCJhZGRyZXNzIiwiY2l0eSIsInN0YXRlIiwiemlwY29kZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9mbG9vcnBsYW4vc2VydmljZS9GbG9vcnBsYW5TZXJ2aWNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge01vbnRofSBmcm9tIFwiLi4vZGF0YS9DYWxlbmRhclwiO1xuaW1wb3J0IHtDdXJyZW50RmlsdGVycywgRmxvb3JwbGFuRmlsdGVycywgU29ydEJ5LCBTb3J0RmllbGRzfSBmcm9tIFwiLi4vZGF0YS9GbG9vcnBsYW5GaWx0ZXJzXCI7XG5pbXBvcnQgbW9tZW50LCB7TW9tZW50fSBmcm9tIFwibW9tZW50XCI7XG5pbXBvcnQge1xuICAgIEZsb29ycGxhbixcbiAgICBGbG9vcnBsYW5DYXJkRGF0YSxcbiAgICBGbG9vcnBsYW5EZXRhaWxzLFxuICAgIEZsb29ycGxhblNwb3RsaWdodCxcbiAgICBGbG9vcnBsYW5TdHlsZSxcbiAgICBGbG9vcnBsYW5WYXJpYXRpb24sXG4gICAgU2ltaWxhckZsb29ycGxhbixcbiAgICBUZXN0aW1vbmlhbFxufSBmcm9tIFwiLi4vZGF0YS9GbG9vcnBsYW5cIjtcbmltcG9ydCB7ZGF0ZVRvTW9tZW50LCBtaW51bU1heGltdW19IGZyb20gXCIuLi8uLi91dGlscy9VdGlsc1wiO1xuaW1wb3J0IHtQcm9wZXJ0eUZpbHRlckRhdGEsIFByb3BlcnR5SWR9IGZyb20gXCIuLi8uLi9wcm9wZXJ0eS9kYXRhL1Byb3BlcnR5XCI7XG5pbXBvcnQge1BldCwgVW5pdH0gZnJvbSBcIi4uL2RhdGEvVW5pdFwiO1xuaW1wb3J0IHtnZXR9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL1JvdW5kUm9iaW5cIjtcblxuZXhwb3J0IGNvbnN0IEFWQUlMQUJMRV9OT1cgPSBcIkF2YWlsYWJsZSBOb3dcIjtcblxuZXhwb3J0IGNvbnN0IGNvbnZlcnRUb0h0dHBzID0gKHVybDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICBpZiAodXJsID09PSBudWxsKVxuICAgICAgICByZXR1cm4gXCJcIjtcbiAgICByZXR1cm4gdXJsLnJlcGxhY2UoL15odHRwOlxcL1xcLy9pLCAnaHR0cHM6Ly8nKTtcbn07XG5leHBvcnQgY29uc3QgZ2V0QWxsUHJvcGVydHlGaWx0ZXJEYXRhID0gKCk6IFByb21pc2U8UHJvcGVydHlGaWx0ZXJEYXRhW10+ID0+IHtcbiAgICByZXR1cm4gZ2V0KFwicHJvcGVydGllcz9wcm9qZWN0aW9uPWZpbHRlclwiKS50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXM6IFByb3BlcnR5RmlsdGVyRGF0YVtdID0gcmVzcG9uc2UuZGF0YS5fZW1iZWRkZWQucHJvcGVydGllcy5maWx0ZXIoKHByb3BlcnR5OiBQcm9wZXJ0eUZpbHRlckRhdGEpID0+IHByb3BlcnR5LmFjdGl2ZSk7XG5cbiAgICAgICAgICAgIHByb3BlcnRpZXMuZm9yRWFjaChwcm9wZXJ0eSA9PiB7XG4gICAgICAgICAgICAgICAgcHJvcGVydHkuZmxvb3JwbGFucyA9IHByb3BlcnR5LmZsb29ycGxhbnMuZmlsdGVyKGZsb29ycGxhbiA9PiBmbG9vcnBsYW4uYWN0aXZlKTtcbiAgICAgICAgICAgICAgICBwcm9wZXJ0eS5mbG9vcnBsYW5zLmZvckVhY2goZmxvb3JwbGFuID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLnVuaXRzID0gZmxvb3JwbGFuLnVuaXRzLmZpbHRlcih1bml0ID0+IHVuaXQuYWN0aXZlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXM7XG4gICAgICAgIH1cbiAgICApO1xufVxuZXhwb3J0IGNvbnN0IGdldEZsb29ycGxhbnNGaWx0ZXJEYXRhID0gKHByb3BlcnR5SWQ6IFByb3BlcnR5SWQpOiBQcm9taXNlPEZsb29ycGxhbkNhcmREYXRhW10+ID0+IHtcbiAgICByZXR1cm4gZ2V0KFwicHJvcGVydGllcy9cIiArIHByb3BlcnR5SWQgKyBcIj9wcm9qZWN0aW9uPWZpbHRlclwiKS50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZsb29ycGxhbnM6IEZsb29ycGxhbkNhcmREYXRhW10gPSByZXNwb25zZS5kYXRhLmRhdGEucHJvcGVydHkuZmxvb3JwbGFucy5maWx0ZXIoKGZsb29ycGxhbjogRmxvb3JwbGFuQ2FyZERhdGEpID0+IGZsb29ycGxhbi5hY3RpdmUpO1xuICAgICAgICAgICAgZmxvb3JwbGFucy5mb3JFYWNoKGZsb29ycGxhbiA9PiB7XG4gICAgICAgICAgICAgICAgZmxvb3JwbGFuLnVuaXRzID0gZmxvb3JwbGFuLnVuaXRzLmZpbHRlcih1bml0ID0+IHVuaXQuYWN0aXZlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIGZsb29ycGxhbnM7XG4gICAgICAgIH1cbiAgICApO1xufTtcbmV4cG9ydCBjb25zdCBzb3J0QW5kRmlsdGVyID0gKGZsb29ycGxhbnM6IEZsb29ycGxhbkNhcmREYXRhW10sIGN1cnJlbnRGaWx0ZXJzOiBDdXJyZW50RmlsdGVycyk6IEZsb29ycGxhbkNhcmREYXRhW10gPT4ge1xuICAgIHJldHVybiBzb3J0Rmxvb3JwbGFucyhmbG9vcnBsYW5zLmZpbHRlcihmbG9vcnBsYW4gPT4gZmlsdGVyTWF0Y2hlcyhmbG9vcnBsYW4sIGN1cnJlbnRGaWx0ZXJzKSksIGN1cnJlbnRGaWx0ZXJzLnNvcnRCeSk7XG59O1xuXG5cbmV4cG9ydCBjb25zdCBpc0RhdGVXaXRoaW5Ud2VsdmVNb250aHMgPSAoZGF0ZTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgdG9kYXkgPSBtb21lbnQoKTtcbiAgICBjb25zdCBkaWZmID0gbW9tZW50KGRhdGUsIFwiWVlZWS1NTS1ERFwiKS5kaWZmKHRvZGF5LCAnbW9udGhzJywgZmFsc2UpO1xuICAgIHJldHVybiBkaWZmID49IDAgJiYgZGlmZiA8PSAxMjtcbn1cbmV4cG9ydCBjb25zdCBpc0RhdGVBZnRlclRvZGF5ID0gKGRhdGU6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHRvZGF5ID0gbW9tZW50KCk7XG4gICAgcmV0dXJuIG1vbWVudChkYXRlLCBcIllZWVktTU0tRERcIikuaXNBZnRlcih0b2RheSk7XG59XG5jb25zdCBkYXRlVG9Nb250aFllYXIgPSAoZGF0ZVN0cmluZzogc3RyaW5nIHwgbnVsbCk6IHN0cmluZyA9PiBtb21lbnQoZGF0ZVN0cmluZywgXCJZWVlZLU1NLUREXCIpLmZvcm1hdCgnTU1NIFlZWVknKTtcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRBdmFpbGFiaWxpdHlUb01vbnRoWWVhciA9IChkYXRlU3RyaW5nOiBzdHJpbmcpOiBzdHJpbmcgPT5cbiAgICBBVkFJTEFCTEVfTk9XID09PSBkYXRlU3RyaW5nID8gZGF0ZVN0cmluZyA6IG1vbWVudChkYXRlU3RyaW5nLCBcIk1NLVlZWVlcIikuZm9ybWF0KCdNTU0gWVlZWScpO1xuXG5leHBvcnQgY29uc3QgbW9tZW50VG9Nb250aFllYXIgPSAoZGF0ZTogTW9tZW50KSA9PiBkYXRlLmZvcm1hdCgnTU1NIFlZWVknKTtcbmNvbnN0IGlzQXZhaWxhYmxlID0gKGZsb29ycGxhbjogRmxvb3JwbGFuQ2FyZERhdGEsIGF2YWlsYWJpbGl0eUZpbHRlcnM6IE1vbnRoW10pOiBib29sZWFuID0+IHtcblxuICAgIHJldHVybiBhdmFpbGFiaWxpdHlGaWx0ZXJzLmxlbmd0aCA9PT0gMCA/IHRydWUgOlxuXG4gICAgICAgIGZsb29ycGxhbi51bml0cy5zb21lKCh1bml0KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGF2YWlsYWJpbGl0eUZpbHRlcnMuaW5kZXhPZihBVkFJTEFCTEVfTk9XKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0JlZm9yZVRvZGF5KHVuaXQubW92ZUluRGF0ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChhdmFpbGFiaWxpdHlGaWx0ZXJzLmluZGV4T2YobW9tZW50VG9Nb250aFllYXIodG9kYXkpKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0JlZm9yZVRvZGF5KHVuaXQubW92ZUluRGF0ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBhdmFpbGFiaWxpdHlGaWx0ZXJzLmluZGV4T2YoZGF0ZVRvTW9udGhZZWFyKHVuaXQubW92ZUluRGF0ZSkpID4gLTE7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG59O1xuXG5jb25zdCBpc0JlZm9yZVRvZGF5ID0gKGRhdGU6IHN0cmluZykgPT4gbW9tZW50KGRhdGUpLmlzQmVmb3JlKHRvZGF5KTtcbmNvbnN0IGlzQmVkcm9vbXNNYXRjaCA9IChmbG9vcnBsYW46IEZsb29ycGxhbkNhcmREYXRhLCBiZWRyb29tRmlsdGVyczogbnVtYmVyW10pOiBib29sZWFuID0+IHtcbiAgICByZXR1cm4gYmVkcm9vbUZpbHRlcnMubGVuZ3RoID09PSAwID8gdHJ1ZSA6IGJlZHJvb21GaWx0ZXJzLmluZGV4T2YoZmxvb3JwbGFuLmJlZHJvb20pID4gLTE7XG59O1xuY29uc3QgaXNTdHlsZU1hdGNoID0gKGZsb29ycGxhbjogRmxvb3JwbGFuQ2FyZERhdGEsIHN0eWxlRmlsdGVyczogRmxvb3JwbGFuU3R5bGVbXSk6IGJvb2xlYW4gPT4ge1xuICAgIHJldHVybiBzdHlsZUZpbHRlcnMubGVuZ3RoID09PSAwID8gdHJ1ZSA6IHN0eWxlRmlsdGVycy5pbmRleE9mKGZsb29ycGxhbi5zdHlsZSkgPiAtMTtcbn1cbmNvbnN0IGlzSW5QcmljZVJhbmdlID0gKGZsb29ycGxhbjogRmxvb3JwbGFuQ2FyZERhdGEsIG1pblJlbnQ6IG51bWJlciwgbWF4UmVudDogbnVtYmVyKTogYm9vbGVhbiA9PiB7XG4gICAgY29uc3QgbWluTWF4ID0gbWludW1NYXhpbXVtKGZsb29ycGxhbi51bml0cywgXCJyZW50XCIpO1xuICAgIHJldHVybiBtaW5NYXgubWluID49IG1pblJlbnQgJiYgbWluTWF4Lm1heCA8PSBtYXhSZW50O1xufVxuY29uc3QgaXNGbG9vcnBsYW5JZHNNYXRjaCA9IChmbG9vcnBsYW46IEZsb29ycGxhbkNhcmREYXRhLCBmbG9vcnBsYW5JZHM6IHN0cmluZ1tdKTogYm9vbGVhbiA9PiB7XG4gICAgcmV0dXJuIGZsb29ycGxhbklkcy5sZW5ndGggPT09IDAgPyB0cnVlIDogZmxvb3JwbGFuSWRzLmluZGV4T2YoZmxvb3JwbGFuLmlkKSA+IC0xO1xufTtcbmNvbnN0IGZpbHRlck1hdGNoZXMgPSAoZmxvb3JwbGFuOiBGbG9vcnBsYW5DYXJkRGF0YSwgY3VycmVudEZpbHRlcnM6IEN1cnJlbnRGaWx0ZXJzKSA9PiB7XG4gICAgcmV0dXJuIGlzQXZhaWxhYmxlKGZsb29ycGxhbiwgY3VycmVudEZpbHRlcnMuYXZhaWxhYmlsaXR5RmlsdGVycykgJiZcbiAgICAgICAgaXNJblByaWNlUmFuZ2UoZmxvb3JwbGFuLCBjdXJyZW50RmlsdGVycy5taW5SZW50LCBjdXJyZW50RmlsdGVycy5tYXhSZW50KSAmJlxuICAgICAgICBpc1N0eWxlTWF0Y2goZmxvb3JwbGFuLCBjdXJyZW50RmlsdGVycy5zdHlsZUZpbHRlcnMpICYmXG4gICAgICAgIGlzQmVkcm9vbXNNYXRjaChmbG9vcnBsYW4sIGN1cnJlbnRGaWx0ZXJzLmJlZHJvb21GaWx0ZXJzKSAmJlxuICAgICAgICBpc0Zsb29ycGxhbklkc01hdGNoKGZsb29ycGxhbiwgY3VycmVudEZpbHRlcnMuZmxvb3JwbGFuSWRzKTtcbn1cbmV4cG9ydCBjb25zdCBzb3J0Rmxvb3JwbGFucyA9IChmbG9vcnBsYW5zOiBGbG9vcnBsYW5DYXJkRGF0YVtdLCBzb3J0Qnk6IFNvcnRCeSk6IEZsb29ycGxhbkNhcmREYXRhW10gPT4ge1xuXG4gICAgaWYgKFNvcnRGaWVsZHNbc29ydEJ5XS5zb3J0RmllbGQgPT09IFwibWluUmF0ZVwiICYmIFNvcnRGaWVsZHNbc29ydEJ5XS5vcmRlciA9PT0gXCJkZXNjXCIpIHtcbiAgICAgICAgcmV0dXJuIGZsb29ycGxhbnMuc29ydCgoYSwgYikgPT4gbWludW1NYXhpbXVtKGIudW5pdHMsIFwicmVudFwiKS5taW4gLSBtaW51bU1heGltdW0oYS51bml0cywgXCJyZW50XCIpLm1pbik7XG4gICAgfVxuXG4gICAgY29uc3QgbWluUmF0ZVNvcnRlZCA9IGZsb29ycGxhbnMuc29ydCgoYSwgYikgPT4gbWludW1NYXhpbXVtKGEudW5pdHMsIFwicmVudFwiKS5taW4gLSBtaW51bU1heGltdW0oYi51bml0cywgXCJyZW50XCIpLm1pbik7XG4gICAgaWYgKFNvcnRGaWVsZHNbc29ydEJ5XS5zb3J0RmllbGQgPT09IFwibWluUmF0ZVwiICYmIFNvcnRGaWVsZHNbc29ydEJ5XS5vcmRlciA9PT0gXCJhc2NcIikge1xuICAgICAgICByZXR1cm4gbWluUmF0ZVNvcnRlZFxuICAgIH1cbiAgICByZXR1cm4gXy5vcmRlckJ5KG1pblJhdGVTb3J0ZWQsIFNvcnRGaWVsZHNbc29ydEJ5XS5zb3J0RmllbGQsIFNvcnRGaWVsZHNbc29ydEJ5XS5vcmRlcik7XG59O1xuXG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJzRnJvbSA9IChmbG9vcnBsYW5zOiBGbG9vcnBsYW5DYXJkRGF0YVtdKTogRmxvb3JwbGFuRmlsdGVycyA9PiB7XG5cbiAgICBjb25zdCBiZWRyb29tRmlsdGVycyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xuICAgIGNvbnN0IGF2YWlsYWJpbGl0eUZpbHRlcnMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgICBjb25zdCBzdHlsZUZpbHRlcnMgPSBuZXcgU2V0PEZsb29ycGxhblN0eWxlPigpO1xuXG4gICAgYXZhaWxhYmlsaXR5RmlsdGVycy5hZGQoQVZBSUxBQkxFX05PVyk7XG4gICAgZmxvb3JwbGFucy5mb3JFYWNoKGZsb29ycGxhbiA9PiB7XG4gICAgICAgIGJlZHJvb21GaWx0ZXJzLmFkZChmbG9vcnBsYW4uYmVkcm9vbSk7XG4gICAgICAgIHN0eWxlRmlsdGVycy5hZGQoZmxvb3JwbGFuLnN0eWxlKTtcblxuICAgICAgICBmbG9vcnBsYW4udW5pdHMuZm9yRWFjaCgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZS5tb3ZlSW5EYXRlICYmIGlzRGF0ZVdpdGhpblR3ZWx2ZU1vbnRocyh2YWx1ZS5tb3ZlSW5EYXRlKSAmJiBpc0RhdGVBZnRlclRvZGF5KHZhbHVlLm1vdmVJbkRhdGUpKVxuICAgICAgICAgICAgICAgIGF2YWlsYWJpbGl0eUZpbHRlcnMuYWRkKGRhdGVUb01vbnRoWWVhcih2YWx1ZS5tb3ZlSW5EYXRlKSk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIGJlZHJvb206IGJlZHJvb21GaWx0ZXJzLFxuICAgICAgICBhdmFpbGFiaWxpdHk6IGF2YWlsYWJpbGl0eUZpbHRlcnMsXG4gICAgICAgIHN0eWxlOiBzdHlsZUZpbHRlcnNcbiAgICB9XG59O1xuXG5cbmV4cG9ydCBjb25zdCBnZXRGZWF0dXJlZEZsb29ycGxhbnMgPSAoKTogUHJvbWlzZTxGbG9vcnBsYW5TcG90bGlnaHRbXT4gPT4ge1xuXG4gICAgcmV0dXJuIGdldChcImZsb29ycGxhbnM/cHJvamVjdGlvbj1zcG90bGlnaHQmc2l6ZT0yMDBcIilcbiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT5cbiAgICAgICAgICAgIHJlc3BvbnNlLmRhdGEuX2VtYmVkZGVkLmZsb29ycGxhbnMuZmlsdGVyKChmbG9vcnBsYW46IEZsb29ycGxhblNwb3RsaWdodCkgPT4gZmxvb3JwbGFuLmZlYXR1cmVkICYmIGZsb29ycGxhbi5wcm9wZXJ0eS5hY3RpdmUpXG4gICAgICAgICk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0QWxsQWN0aXZlRmxvb3JwbGFucyA9ICgpOiBQcm9taXNlPEZsb29ycGxhbkRldGFpbHNbXT4gPT4ge1xuXG4gICAgcmV0dXJuIGdldChcImZsb29ycGxhbnM/cHJvamVjdGlvbj1kZXRhaWxzJnNpemU9MjAwXCIpXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+XG4gICAgICAgICAgICByZXNwb25zZS5kYXRhLl9lbWJlZGRlZC5mbG9vcnBsYW5zXG4gICAgICAgICAgICAgICAgLmZpbHRlcigoZmxvb3JwbGFuOiBGbG9vcnBsYW4pID0+IGZsb29ycGxhbi5hY3RpdmUpXG4gICAgICAgICAgICAgICAgLmZpbHRlcigoZmxvb3JwbGFuOiBGbG9vcnBsYW4pID0+IGZsb29ycGxhbi5zdHlsZSAhPT0gXCJHQVJBR0VcIilcbiAgICAgICAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRGbG9vcnBsYW4gPSAoZmxvb3JwbGFuSWQ6IHN0cmluZyk6IFByb21pc2U8Rmxvb3JwbGFuPiA9PlxuICAgIGdldChcImZsb29ycGxhbnMvXCIgKyBmbG9vcnBsYW5JZCArIFwiP3Byb2plY3Rpb249d2l0aElkXCIpLnRoZW4ocmVzcG9uc2UgPT4gcmVzcG9uc2UuZGF0YSk7XG5cbmV4cG9ydCBjb25zdCBnZXRTaW1pbGFyRmxvb3JwbGFucyA9IChmbG9vcnBsYW5JZDogc3RyaW5nKTogUHJvbWlzZTxTaW1pbGFyRmxvb3JwbGFuW10+ID0+XG4gICAgZ2V0KFwic2ltaWxhckZsb29ycGxhbnMvc2VhcmNoL2J5Rmxvb3JwbGFuSWQ/cHJvamVjdGlvbj13aXRoSWQmZmxvb3JwbGFuSWQ9XCIgKyBmbG9vcnBsYW5JZCkudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5kYXRhLl9lbWJlZGRlZC5zaW1pbGFyRmxvb3JwbGFucyk7XG5cbmV4cG9ydCBjb25zdCBnZXRGbG9vcnBsYW5WYXJpYXRpb25zID0gKGZsb29ycGxhbklkOiBzdHJpbmcpOiBQcm9taXNlPEZsb29ycGxhblZhcmlhdGlvbltdPiA9PlxuICAgIGdldChcImZsb29ycGxhblZhcmlhdGlvbnMvc2VhcmNoL2J5Rmxvb3JwbGFuSWQ/cHJvamVjdGlvbj13aXRoSWQmZmxvb3JwbGFuSWQ9XCIgKyBmbG9vcnBsYW5JZCkudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5kYXRhLl9lbWJlZGRlZC5mbG9vcnBsYW5WYXJpYXRpb25zKTtcbmNvbnN0IHRvZGF5ID0gbW9tZW50KCk7XG5leHBvcnQgY29uc3QgaXNGbG9vcnBsYW5BdmFpbGFibGUgPSAoZmxvb3JwbGFuOiBGbG9vcnBsYW4gfCBGbG9vcnBsYW5DYXJkRGF0YSk6IGJvb2xlYW4gPT4gZmxvb3JwbGFuLnVuaXRzLnNvbWUoKHVuaXQpID0+IHRvZGF5LmlzQWZ0ZXIoZGF0ZVRvTW9tZW50KHVuaXQubW92ZUluRGF0ZSkpKTtcbmV4cG9ydCBjb25zdCBnZXRUZXN0aW1vbmlhbHMgPSAoZmxvb3JwbGFuSWQ6IHN0cmluZyk6IFByb21pc2U8VGVzdGltb25pYWxbXT4gPT5cbiAgICBnZXQoXCJ0ZXN0aW1vbmlhbHMvc2VhcmNoL2J5Rmxvb3JwbGFuSWQ/cHJvamVjdGlvbj13aXRoSWQmZmxvb3JwbGFuSWQ9XCIgKyBmbG9vcnBsYW5JZCkudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5kYXRhLl9lbWJlZGRlZC50ZXN0aW1vbmlhbHMpO1xuXG5cbmV4cG9ydCBjb25zdCBwZXJtaXR0ZWRQZXRzID0gKGZsb29ycGxhbjogRmxvb3JwbGFuKTogc3RyaW5nW10gPT4ge1xuXG4gICAgY29uc3QgdW5pdCA9IHVuaXRXaXRoTW9zdEFsbG93ZWRQZXQoWy4uLmZsb29ycGxhbi51bml0c10pO1xuXG4gICAgc3dpdGNoICh1bml0Py5hbGxvd2VkUGV0KSB7XG4gICAgICAgIGNhc2UgUGV0LkxBUkdFX0RPR19TTUFMTF9ET0dfQ0FUOlxuICAgICAgICAgICAgcmV0dXJuIFsnTGFyZ2UgRG9nJywgJ1NtYWxsIERvZycsICdDYXQnXTtcbiAgICAgICAgY2FzZSBQZXQuU01BTExfRE9HX0NBVDpcbiAgICAgICAgICAgIHJldHVybiBbJ1NtYWxsIERvZycsICdDYXQnXTtcbiAgICAgICAgY2FzZSBQZXQuQ0FUOlxuICAgICAgICAgICAgcmV0dXJuIFsnQ2F0J107XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gWydOb25lJ107XG4gICAgfVxufVxuXG5leHBvcnQgY29uc3Qgbm90UGVybWl0dGVkUGV0cyA9IChmbG9vcnBsYW46IEZsb29ycGxhbik6IHN0cmluZ1tdID0+IHtcblxuICAgIGNvbnN0IHVuaXQgPSB1bml0V2l0aE1vc3RBbGxvd2VkUGV0KFsuLi5mbG9vcnBsYW4udW5pdHNdKTtcblxuICAgIHN3aXRjaCAodW5pdD8uYWxsb3dlZFBldCkge1xuICAgICAgICBjYXNlIFBldC5MQVJHRV9ET0dfU01BTExfRE9HX0NBVDpcbiAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgY2FzZSBQZXQuU01BTExfRE9HX0NBVDpcbiAgICAgICAgICAgIHJldHVybiBbJ0xhcmdlIERvZyddO1xuICAgICAgICBjYXNlIFBldC5DQVQ6XG4gICAgICAgICAgICByZXR1cm4gWydMYXJnZSBEb2cnLCAnU21hbGwgRG9nJ107XG4gICAgICAgIGNhc2UgUGV0Lk5PX1BFVDpcbiAgICAgICAgICAgIHJldHVybiBbJ0xhcmdlIERvZycsICdTbWFsbCBEb2cnLCAnQ2F0J107XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgfVxufVxuZXhwb3J0IGNvbnN0IHBldFBvbGljeSA9IChmbG9vcnBsYW46IEZsb29ycGxhbik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gICAgY29uc3QgdW5pdCA9IHVuaXRXaXRoTW9zdEFsbG93ZWRQZXQoWy4uLmZsb29ycGxhbi51bml0c10pO1xuICAgIHJldHVybiB1bml0Py5wZXRQb2xpY3k7XG59XG5jb25zdCB1bml0V2l0aE1vc3RBbGxvd2VkUGV0ID0gKHVuaXRzOiBVbml0W10pOiBVbml0IHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBwZXRPcmRpbmFsID0gKHBldDogUGV0KSA9PiBPYmplY3Qua2V5cyhQZXQpLmluZGV4T2YocGV0KTtcbiAgICByZXR1cm4gdW5pdHMuc29ydCgoYSwgYikgPT4gcGV0T3JkaW5hbChiLmFsbG93ZWRQZXQpIC0gcGV0T3JkaW5hbChhLmFsbG93ZWRQZXQpKS5wb3AoKTtcbn1cblxuZXhwb3J0IGNvbnN0IGZsb29ycGxhbkFkZHJlc3MgPSAoY3VycmVudEZsb29ycGxhbjogRmxvb3JwbGFuKTogRmxvb3JwbGFuQWRkcmVzcyA9PiB7XG4gICAgY29uc3QgYWRkcmVzczogRmxvb3JwbGFuQWRkcmVzcyA9IHthZGRyZXNzOiBcIlwiLCBjaXR5OiBcIkJsb29taW5ndG9uXCIsIHN0YXRlOiBcIklOXCIsIHppcGNvZGU6IFwiXCJ9O1xuICAgIGlmIChjdXJyZW50Rmxvb3JwbGFuLnVuaXRzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uYWRkcmVzcywgYWRkcmVzczogY3VycmVudEZsb29ycGxhbi51bml0c1swXS5hZGRyZXNzLFxuICAgICAgICAgICAgemlwY29kZTogY3VycmVudEZsb29ycGxhbi51bml0c1swXS56aXBjb2RlXG4gICAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgLi4uYWRkcmVzcywgYWRkcmVzczogY3VycmVudEZsb29ycGxhbi5wcm9wZXJ0eS5hZGRyZXNzLFxuICAgICAgICB6aXBjb2RlOiBjdXJyZW50Rmxvb3JwbGFuLnByb3BlcnR5LnppcGNvZGVcbiAgICB9XG59XG5cblxuZXhwb3J0IGludGVyZmFjZSBGbG9vcnBsYW5BZGRyZXNzIHtcbiAgICBhZGRyZXNzOiBzdHJpbmc7XG4gICAgY2l0eTogc3RyaW5nO1xuICAgIHN0YXRlOiBzdHJpbmc7XG4gICAgemlwY29kZTogc3RyaW5nO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxPQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxpQkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsT0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBV0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBRUEsSUFBQUksS0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBTCxPQUFBO0FBQTZDLFNBQUFELHVCQUFBTyxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBRXRDLE1BQU1HLGFBQWEsR0FBQUMsT0FBQSxDQUFBRCxhQUFBLEdBQUcsZUFBZTtBQUVy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
|
|
206
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfRmxvb3JwbGFuRmlsdGVycyIsIl9tb21lbnQiLCJfVXRpbHMiLCJfVW5pdCIsIl9Sb3VuZFJvYmluIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJBVkFJTEFCTEVfTk9XIiwiZXhwb3J0cyIsImNvbnZlcnRUb0h0dHBzIiwidXJsIiwicmVwbGFjZSIsImdldEFsbFByb3BlcnR5RmlsdGVyRGF0YSIsImdldCIsInRoZW4iLCJyZXNwb25zZSIsInByb3BlcnRpZXMiLCJkYXRhIiwiX2VtYmVkZGVkIiwiZmlsdGVyIiwicHJvcGVydHkiLCJhY3RpdmUiLCJmb3JFYWNoIiwiZmxvb3JwbGFucyIsImZsb29ycGxhbiIsInVuaXRzIiwidW5pdCIsImdldEZsb29ycGxhbnNGaWx0ZXJEYXRhIiwicHJvcGVydHlJZCIsInNvcnRBbmRGaWx0ZXIiLCJjdXJyZW50RmlsdGVycyIsInNvcnRGbG9vcnBsYW5zIiwiZmlsdGVyTWF0Y2hlcyIsInNvcnRCeSIsImlzRGF0ZVdpdGhpblR3ZWx2ZU1vbnRocyIsImRhdGUiLCJ0b2RheSIsIm1vbWVudCIsImRpZmYiLCJpc0RhdGVBZnRlclRvZGF5IiwiaXNBZnRlciIsImRhdGVUb01vbnRoWWVhciIsImRhdGVTdHJpbmciLCJmb3JtYXQiLCJkZWZhdWx0QXZhaWxhYmlsaXR5VG9Nb250aFllYXIiLCJtb21lbnRUb01vbnRoWWVhciIsImlzQXZhaWxhYmxlIiwiYXZhaWxhYmlsaXR5RmlsdGVycyIsImxlbmd0aCIsInNvbWUiLCJpbmRleE9mIiwiaXNCZWZvcmVUb2RheSIsIm1vdmVJbkRhdGUiLCJpc0JlZm9yZSIsImlzQmVkcm9vbXNNYXRjaCIsImJlZHJvb21GaWx0ZXJzIiwiYmVkcm9vbSIsImlzU3R5bGVNYXRjaCIsInN0eWxlRmlsdGVycyIsInN0eWxlIiwiaXNJblByaWNlUmFuZ2UiLCJtaW5SZW50IiwibWF4UmVudCIsIm1pbk1heCIsIm1pbnVtTWF4aW11bSIsIm1pbiIsIm1heCIsImlzRmxvb3JwbGFuSWRzTWF0Y2giLCJmbG9vcnBsYW5JZHMiLCJpZCIsIlNvcnRGaWVsZHMiLCJzb3J0RmllbGQiLCJvcmRlciIsInNvcnQiLCJhIiwiYiIsIm1pblJhdGVTb3J0ZWQiLCJfIiwib3JkZXJCeSIsImZpbHRlcnNGcm9tIiwiU2V0IiwiYWRkIiwidmFsdWUiLCJhdmFpbGFiaWxpdHkiLCJnZXRGZWF0dXJlZEZsb29ycGxhbnMiLCJmZWF0dXJlZCIsImdldEFsbEFjdGl2ZUZsb29ycGxhbnMiLCJnZXRGbG9vcnBsYW4iLCJmbG9vcnBsYW5JZCIsImdldFNpbWlsYXJGbG9vcnBsYW5zIiwic2ltaWxhckZsb29ycGxhbnMiLCJnZXRGbG9vcnBsYW5WYXJpYXRpb25zIiwiZmxvb3JwbGFuVmFyaWF0aW9ucyIsImlzRmxvb3JwbGFuQXZhaWxhYmxlIiwiZGF0ZVRvTW9tZW50IiwiZ2V0VGVzdGltb25pYWxzIiwidGVzdGltb25pYWxzIiwiZ2V0V2ViU3BlY2lhbHMiLCJ3ZWJTcGVjaWFscyIsInBlcm1pdHRlZFBldHMiLCJ1bml0V2l0aE1vc3RBbGxvd2VkUGV0IiwiYWxsb3dlZFBldCIsIlBldCIsIkxBUkdFX0RPR19TTUFMTF9ET0dfQ0FUIiwiU01BTExfRE9HX0NBVCIsIkNBVCIsIm5vdFBlcm1pdHRlZFBldHMiLCJOT19QRVQiLCJwZXRQb2xpY3kiLCJwZXRPcmRpbmFsIiwicGV0IiwiT2JqZWN0Iiwia2V5cyIsInBvcCIsImZsb29ycGxhbkFkZHJlc3MiLCJjdXJyZW50Rmxvb3JwbGFuIiwiYWRkcmVzcyIsImNpdHkiLCJzdGF0ZSIsInppcGNvZGUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmxvb3JwbGFuL3NlcnZpY2UvRmxvb3JwbGFuU2VydmljZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHtNb250aH0gZnJvbSBcIi4uL2RhdGEvQ2FsZW5kYXJcIjtcbmltcG9ydCB7Q3VycmVudEZpbHRlcnMsIEZsb29ycGxhbkZpbHRlcnMsIFNvcnRCeSwgU29ydEZpZWxkc30gZnJvbSBcIi4uL2RhdGEvRmxvb3JwbGFuRmlsdGVyc1wiO1xuaW1wb3J0IG1vbWVudCwge01vbWVudH0gZnJvbSBcIm1vbWVudFwiO1xuaW1wb3J0IHtcbiAgICBGbG9vcnBsYW4sXG4gICAgRmxvb3JwbGFuQ2FyZERhdGEsXG4gICAgRmxvb3JwbGFuRGV0YWlscyxcbiAgICBGbG9vcnBsYW5TcG90bGlnaHQsXG4gICAgRmxvb3JwbGFuU3R5bGUsXG4gICAgRmxvb3JwbGFuVmFyaWF0aW9uLFxuICAgIFNpbWlsYXJGbG9vcnBsYW4sXG4gICAgVGVzdGltb25pYWwsXG4gICAgV2ViU3BlY2lhbFxufSBmcm9tIFwiLi4vZGF0YS9GbG9vcnBsYW5cIjtcbmltcG9ydCB7ZGF0ZVRvTW9tZW50LCBtaW51bU1heGltdW19IGZyb20gXCIuLi8uLi91dGlscy9VdGlsc1wiO1xuaW1wb3J0IHtQcm9wZXJ0eUZpbHRlckRhdGEsIFByb3BlcnR5SWR9IGZyb20gXCIuLi8uLi9wcm9wZXJ0eS9kYXRhL1Byb3BlcnR5XCI7XG5pbXBvcnQge1BldCwgVW5pdH0gZnJvbSBcIi4uL2RhdGEvVW5pdFwiO1xuaW1wb3J0IHtnZXR9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL1JvdW5kUm9iaW5cIjtcblxuZXhwb3J0IGNvbnN0IEFWQUlMQUJMRV9OT1cgPSBcIkF2YWlsYWJsZSBOb3dcIjtcblxuZXhwb3J0IGNvbnN0IGNvbnZlcnRUb0h0dHBzID0gKHVybDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICBpZiAodXJsID09PSBudWxsKVxuICAgICAgICByZXR1cm4gXCJcIjtcbiAgICByZXR1cm4gdXJsLnJlcGxhY2UoL15odHRwOlxcL1xcLy9pLCAnaHR0cHM6Ly8nKTtcbn07XG5leHBvcnQgY29uc3QgZ2V0QWxsUHJvcGVydHlGaWx0ZXJEYXRhID0gKCk6IFByb21pc2U8UHJvcGVydHlGaWx0ZXJEYXRhW10+ID0+IHtcbiAgICByZXR1cm4gZ2V0KFwicHJvcGVydGllcz9wcm9qZWN0aW9uPWZpbHRlclwiKS50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXM6IFByb3BlcnR5RmlsdGVyRGF0YVtdID0gcmVzcG9uc2UuZGF0YS5fZW1iZWRkZWQucHJvcGVydGllcy5maWx0ZXIoKHByb3BlcnR5OiBQcm9wZXJ0eUZpbHRlckRhdGEpID0+IHByb3BlcnR5LmFjdGl2ZSk7XG5cbiAgICAgICAgICAgIHByb3BlcnRpZXMuZm9yRWFjaChwcm9wZXJ0eSA9PiB7XG4gICAgICAgICAgICAgICAgcHJvcGVydHkuZmxvb3JwbGFucyA9IHByb3BlcnR5LmZsb29ycGxhbnMuZmlsdGVyKGZsb29ycGxhbiA9PiBmbG9vcnBsYW4uYWN0aXZlKTtcbiAgICAgICAgICAgICAgICBwcm9wZXJ0eS5mbG9vcnBsYW5zLmZvckVhY2goZmxvb3JwbGFuID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZmxvb3JwbGFuLnVuaXRzID0gZmxvb3JwbGFuLnVuaXRzLmZpbHRlcih1bml0ID0+IHVuaXQuYWN0aXZlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHByb3BlcnRpZXM7XG4gICAgICAgIH1cbiAgICApO1xufVxuZXhwb3J0IGNvbnN0IGdldEZsb29ycGxhbnNGaWx0ZXJEYXRhID0gKHByb3BlcnR5SWQ6IFByb3BlcnR5SWQpOiBQcm9taXNlPEZsb29ycGxhbkNhcmREYXRhW10+ID0+IHtcbiAgICByZXR1cm4gZ2V0KFwicHJvcGVydGllcy9cIiArIHByb3BlcnR5SWQgKyBcIj9wcm9qZWN0aW9uPWZpbHRlclwiKS50aGVuKHJlc3BvbnNlID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZsb29ycGxhbnM6IEZsb29ycGxhbkNhcmREYXRhW10gPSByZXNwb25zZS5kYXRhLmRhdGEucHJvcGVydHkuZmxvb3JwbGFucy5maWx0ZXIoKGZsb29ycGxhbjogRmxvb3JwbGFuQ2FyZERhdGEpID0+IGZsb29ycGxhbi5hY3RpdmUpO1xuICAgICAgICAgICAgZmxvb3JwbGFucy5mb3JFYWNoKGZsb29ycGxhbiA9PiB7XG4gICAgICAgICAgICAgICAgZmxvb3JwbGFuLnVuaXRzID0gZmxvb3JwbGFuLnVuaXRzLmZpbHRlcih1bml0ID0+IHVuaXQuYWN0aXZlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIGZsb29ycGxhbnM7XG4gICAgICAgIH1cbiAgICApO1xufTtcbmV4cG9ydCBjb25zdCBzb3J0QW5kRmlsdGVyID0gKGZsb29ycGxhbnM6IEZsb29ycGxhbkNhcmREYXRhW10sIGN1cnJlbnRGaWx0ZXJzOiBDdXJyZW50RmlsdGVycyk6IEZsb29ycGxhbkNhcmREYXRhW10gPT4ge1xuICAgIHJldHVybiBzb3J0Rmxvb3JwbGFucyhmbG9vcnBsYW5zLmZpbHRlcihmbG9vcnBsYW4gPT4gZmlsdGVyTWF0Y2hlcyhmbG9vcnBsYW4sIGN1cnJlbnRGaWx0ZXJzKSksIGN1cnJlbnRGaWx0ZXJzLnNvcnRCeSk7XG59O1xuXG5cbmV4cG9ydCBjb25zdCBpc0RhdGVXaXRoaW5Ud2VsdmVNb250aHMgPSAoZGF0ZTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3QgdG9kYXkgPSBtb21lbnQoKTtcbiAgICBjb25zdCBkaWZmID0gbW9tZW50KGRhdGUsIFwiWVlZWS1NTS1ERFwiKS5kaWZmKHRvZGF5LCAnbW9udGhzJywgZmFsc2UpO1xuICAgIHJldHVybiBkaWZmID49IDAgJiYgZGlmZiA8PSAxMjtcbn1cbmV4cG9ydCBjb25zdCBpc0RhdGVBZnRlclRvZGF5ID0gKGRhdGU6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IHRvZGF5ID0gbW9tZW50KCk7XG4gICAgcmV0dXJuIG1vbWVudChkYXRlLCBcIllZWVktTU0tRERcIikuaXNBZnRlcih0b2RheSk7XG59XG5jb25zdCBkYXRlVG9Nb250aFllYXIgPSAoZGF0ZVN0cmluZzogc3RyaW5nIHwgbnVsbCk6IHN0cmluZyA9PiBtb21lbnQoZGF0ZVN0cmluZywgXCJZWVlZLU1NLUREXCIpLmZvcm1hdCgnTU1NIFlZWVknKTtcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRBdmFpbGFiaWxpdHlUb01vbnRoWWVhciA9IChkYXRlU3RyaW5nOiBzdHJpbmcpOiBzdHJpbmcgPT5cbiAgICBBVkFJTEFCTEVfTk9XID09PSBkYXRlU3RyaW5nID8gZGF0ZVN0cmluZyA6IG1vbWVudChkYXRlU3RyaW5nLCBcIk1NLVlZWVlcIikuZm9ybWF0KCdNTU0gWVlZWScpO1xuXG5leHBvcnQgY29uc3QgbW9tZW50VG9Nb250aFllYXIgPSAoZGF0ZTogTW9tZW50KSA9PiBkYXRlLmZvcm1hdCgnTU1NIFlZWVknKTtcbmNvbnN0IGlzQXZhaWxhYmxlID0gKGZsb29ycGxhbjogRmxvb3JwbGFuQ2FyZERhdGEsIGF2YWlsYWJpbGl0eUZpbHRlcnM6IE1vbnRoW10pOiBib29sZWFuID0+IHtcblxuICAgIHJldHVybiBhdmFpbGFiaWxpdHlGaWx0ZXJzLmxlbmd0aCA9PT0gMCA/IHRydWUgOlxuXG4gICAgICAgIGZsb29ycGxhbi51bml0cy5zb21lKCh1bml0KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGF2YWlsYWJpbGl0eUZpbHRlcnMuaW5kZXhPZihBVkFJTEFCTEVfTk9XKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0JlZm9yZVRvZGF5KHVuaXQubW92ZUluRGF0ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChhdmFpbGFiaWxpdHlGaWx0ZXJzLmluZGV4T2YobW9tZW50VG9Nb250aFllYXIodG9kYXkpKSA+IC0xKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0JlZm9yZVRvZGF5KHVuaXQubW92ZUluRGF0ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBhdmFpbGFiaWxpdHlGaWx0ZXJzLmluZGV4T2YoZGF0ZVRvTW9udGhZZWFyKHVuaXQubW92ZUluRGF0ZSkpID4gLTE7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG59O1xuXG5jb25zdCBpc0JlZm9yZVRvZGF5ID0gKGRhdGU6IHN0cmluZykgPT4gbW9tZW50KGRhdGUpLmlzQmVmb3JlKHRvZGF5KTtcbmNvbnN0IGlzQmVkcm9vbXNNYXRjaCA9IChmbG9vcnBsYW46IEZsb29ycGxhbkNhcmREYXRhLCBiZWRyb29tRmlsdGVyczogbnVtYmVyW10pOiBib29sZWFuID0+IHtcbiAgICByZXR1cm4gYmVkcm9vbUZpbHRlcnMubGVuZ3RoID09PSAwID8gdHJ1ZSA6IGJlZHJvb21GaWx0ZXJzLmluZGV4T2YoZmxvb3JwbGFuLmJlZHJvb20pID4gLTE7XG59O1xuY29uc3QgaXNTdHlsZU1hdGNoID0gKGZsb29ycGxhbjogRmxvb3JwbGFuQ2FyZERhdGEsIHN0eWxlRmlsdGVyczogRmxvb3JwbGFuU3R5bGVbXSk6IGJvb2xlYW4gPT4ge1xuICAgIHJldHVybiBzdHlsZUZpbHRlcnMubGVuZ3RoID09PSAwID8gdHJ1ZSA6IHN0eWxlRmlsdGVycy5pbmRleE9mKGZsb29ycGxhbi5zdHlsZSkgPiAtMTtcbn1cbmNvbnN0IGlzSW5QcmljZVJhbmdlID0gKGZsb29ycGxhbjogRmxvb3JwbGFuQ2FyZERhdGEsIG1pblJlbnQ6IG51bWJlciwgbWF4UmVudDogbnVtYmVyKTogYm9vbGVhbiA9PiB7XG4gICAgY29uc3QgbWluTWF4ID0gbWludW1NYXhpbXVtKGZsb29ycGxhbi51bml0cywgXCJyZW50XCIpO1xuICAgIHJldHVybiBtaW5NYXgubWluID49IG1pblJlbnQgJiYgbWluTWF4Lm1heCA8PSBtYXhSZW50O1xufVxuY29uc3QgaXNGbG9vcnBsYW5JZHNNYXRjaCA9IChmbG9vcnBsYW46IEZsb29ycGxhbkNhcmREYXRhLCBmbG9vcnBsYW5JZHM6IHN0cmluZ1tdKTogYm9vbGVhbiA9PiB7XG4gICAgcmV0dXJuIGZsb29ycGxhbklkcy5sZW5ndGggPT09IDAgPyB0cnVlIDogZmxvb3JwbGFuSWRzLmluZGV4T2YoZmxvb3JwbGFuLmlkKSA+IC0xO1xufTtcbmNvbnN0IGZpbHRlck1hdGNoZXMgPSAoZmxvb3JwbGFuOiBGbG9vcnBsYW5DYXJkRGF0YSwgY3VycmVudEZpbHRlcnM6IEN1cnJlbnRGaWx0ZXJzKSA9PiB7XG4gICAgcmV0dXJuIGlzQXZhaWxhYmxlKGZsb29ycGxhbiwgY3VycmVudEZpbHRlcnMuYXZhaWxhYmlsaXR5RmlsdGVycykgJiZcbiAgICAgICAgaXNJblByaWNlUmFuZ2UoZmxvb3JwbGFuLCBjdXJyZW50RmlsdGVycy5taW5SZW50LCBjdXJyZW50RmlsdGVycy5tYXhSZW50KSAmJlxuICAgICAgICBpc1N0eWxlTWF0Y2goZmxvb3JwbGFuLCBjdXJyZW50RmlsdGVycy5zdHlsZUZpbHRlcnMpICYmXG4gICAgICAgIGlzQmVkcm9vbXNNYXRjaChmbG9vcnBsYW4sIGN1cnJlbnRGaWx0ZXJzLmJlZHJvb21GaWx0ZXJzKSAmJlxuICAgICAgICBpc0Zsb29ycGxhbklkc01hdGNoKGZsb29ycGxhbiwgY3VycmVudEZpbHRlcnMuZmxvb3JwbGFuSWRzKTtcbn1cbmV4cG9ydCBjb25zdCBzb3J0Rmxvb3JwbGFucyA9IChmbG9vcnBsYW5zOiBGbG9vcnBsYW5DYXJkRGF0YVtdLCBzb3J0Qnk6IFNvcnRCeSk6IEZsb29ycGxhbkNhcmREYXRhW10gPT4ge1xuXG4gICAgaWYgKFNvcnRGaWVsZHNbc29ydEJ5XS5zb3J0RmllbGQgPT09IFwibWluUmF0ZVwiICYmIFNvcnRGaWVsZHNbc29ydEJ5XS5vcmRlciA9PT0gXCJkZXNjXCIpIHtcbiAgICAgICAgcmV0dXJuIGZsb29ycGxhbnMuc29ydCgoYSwgYikgPT4gbWludW1NYXhpbXVtKGIudW5pdHMsIFwicmVudFwiKS5taW4gLSBtaW51bU1heGltdW0oYS51bml0cywgXCJyZW50XCIpLm1pbik7XG4gICAgfVxuXG4gICAgY29uc3QgbWluUmF0ZVNvcnRlZCA9IGZsb29ycGxhbnMuc29ydCgoYSwgYikgPT4gbWludW1NYXhpbXVtKGEudW5pdHMsIFwicmVudFwiKS5taW4gLSBtaW51bU1heGltdW0oYi51bml0cywgXCJyZW50XCIpLm1pbik7XG4gICAgaWYgKFNvcnRGaWVsZHNbc29ydEJ5XS5zb3J0RmllbGQgPT09IFwibWluUmF0ZVwiICYmIFNvcnRGaWVsZHNbc29ydEJ5XS5vcmRlciA9PT0gXCJhc2NcIikge1xuICAgICAgICByZXR1cm4gbWluUmF0ZVNvcnRlZFxuICAgIH1cbiAgICByZXR1cm4gXy5vcmRlckJ5KG1pblJhdGVTb3J0ZWQsIFNvcnRGaWVsZHNbc29ydEJ5XS5zb3J0RmllbGQsIFNvcnRGaWVsZHNbc29ydEJ5XS5vcmRlcik7XG59O1xuXG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJzRnJvbSA9IChmbG9vcnBsYW5zOiBGbG9vcnBsYW5DYXJkRGF0YVtdKTogRmxvb3JwbGFuRmlsdGVycyA9PiB7XG5cbiAgICBjb25zdCBiZWRyb29tRmlsdGVycyA9IG5ldyBTZXQ8bnVtYmVyPigpO1xuICAgIGNvbnN0IGF2YWlsYWJpbGl0eUZpbHRlcnMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgICBjb25zdCBzdHlsZUZpbHRlcnMgPSBuZXcgU2V0PEZsb29ycGxhblN0eWxlPigpO1xuXG4gICAgYXZhaWxhYmlsaXR5RmlsdGVycy5hZGQoQVZBSUxBQkxFX05PVyk7XG4gICAgZmxvb3JwbGFucy5mb3JFYWNoKGZsb29ycGxhbiA9PiB7XG4gICAgICAgIGJlZHJvb21GaWx0ZXJzLmFkZChmbG9vcnBsYW4uYmVkcm9vbSk7XG4gICAgICAgIHN0eWxlRmlsdGVycy5hZGQoZmxvb3JwbGFuLnN0eWxlKTtcblxuICAgICAgICBmbG9vcnBsYW4udW5pdHMuZm9yRWFjaCgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZS5tb3ZlSW5EYXRlICYmIGlzRGF0ZVdpdGhpblR3ZWx2ZU1vbnRocyh2YWx1ZS5tb3ZlSW5EYXRlKSAmJiBpc0RhdGVBZnRlclRvZGF5KHZhbHVlLm1vdmVJbkRhdGUpKVxuICAgICAgICAgICAgICAgIGF2YWlsYWJpbGl0eUZpbHRlcnMuYWRkKGRhdGVUb01vbnRoWWVhcih2YWx1ZS5tb3ZlSW5EYXRlKSk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAgIGJlZHJvb206IGJlZHJvb21GaWx0ZXJzLFxuICAgICAgICBhdmFpbGFiaWxpdHk6IGF2YWlsYWJpbGl0eUZpbHRlcnMsXG4gICAgICAgIHN0eWxlOiBzdHlsZUZpbHRlcnNcbiAgICB9XG59O1xuXG5cbmV4cG9ydCBjb25zdCBnZXRGZWF0dXJlZEZsb29ycGxhbnMgPSAoKTogUHJvbWlzZTxGbG9vcnBsYW5TcG90bGlnaHRbXT4gPT4ge1xuXG4gICAgcmV0dXJuIGdldChcImZsb29ycGxhbnM/cHJvamVjdGlvbj1zcG90bGlnaHQmc2l6ZT0yMDBcIilcbiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT5cbiAgICAgICAgICAgIHJlc3BvbnNlLmRhdGEuX2VtYmVkZGVkLmZsb29ycGxhbnMuZmlsdGVyKChmbG9vcnBsYW46IEZsb29ycGxhblNwb3RsaWdodCkgPT4gZmxvb3JwbGFuLmZlYXR1cmVkICYmIGZsb29ycGxhbi5wcm9wZXJ0eS5hY3RpdmUpXG4gICAgICAgICk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0QWxsQWN0aXZlRmxvb3JwbGFucyA9ICgpOiBQcm9taXNlPEZsb29ycGxhbkRldGFpbHNbXT4gPT4ge1xuXG4gICAgcmV0dXJuIGdldChcImZsb29ycGxhbnM/cHJvamVjdGlvbj1kZXRhaWxzJnNpemU9MjAwXCIpXG4gICAgICAgIC50aGVuKHJlc3BvbnNlID0+XG4gICAgICAgICAgICByZXNwb25zZS5kYXRhLl9lbWJlZGRlZC5mbG9vcnBsYW5zXG4gICAgICAgICAgICAgICAgLmZpbHRlcigoZmxvb3JwbGFuOiBGbG9vcnBsYW4pID0+IGZsb29ycGxhbi5hY3RpdmUpXG4gICAgICAgICAgICAgICAgLmZpbHRlcigoZmxvb3JwbGFuOiBGbG9vcnBsYW4pID0+IGZsb29ycGxhbi5zdHlsZSAhPT0gXCJHQVJBR0VcIilcbiAgICAgICAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRGbG9vcnBsYW4gPSAoZmxvb3JwbGFuSWQ6IHN0cmluZyk6IFByb21pc2U8Rmxvb3JwbGFuPiA9PlxuICAgIGdldChcImZsb29ycGxhbnMvXCIgKyBmbG9vcnBsYW5JZCArIFwiP3Byb2plY3Rpb249d2l0aElkXCIpLnRoZW4ocmVzcG9uc2UgPT4gcmVzcG9uc2UuZGF0YSk7XG5cbmV4cG9ydCBjb25zdCBnZXRTaW1pbGFyRmxvb3JwbGFucyA9IChmbG9vcnBsYW5JZDogc3RyaW5nKTogUHJvbWlzZTxTaW1pbGFyRmxvb3JwbGFuW10+ID0+XG4gICAgZ2V0KFwic2ltaWxhckZsb29ycGxhbnMvc2VhcmNoL2J5Rmxvb3JwbGFuSWQ/cHJvamVjdGlvbj13aXRoSWQmZmxvb3JwbGFuSWQ9XCIgKyBmbG9vcnBsYW5JZCkudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5kYXRhLl9lbWJlZGRlZC5zaW1pbGFyRmxvb3JwbGFucyk7XG5cbmV4cG9ydCBjb25zdCBnZXRGbG9vcnBsYW5WYXJpYXRpb25zID0gKGZsb29ycGxhbklkOiBzdHJpbmcpOiBQcm9taXNlPEZsb29ycGxhblZhcmlhdGlvbltdPiA9PlxuICAgIGdldChcImZsb29ycGxhblZhcmlhdGlvbnMvc2VhcmNoL2J5Rmxvb3JwbGFuSWQ/cHJvamVjdGlvbj13aXRoSWQmZmxvb3JwbGFuSWQ9XCIgKyBmbG9vcnBsYW5JZCkudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5kYXRhLl9lbWJlZGRlZC5mbG9vcnBsYW5WYXJpYXRpb25zKTtcbmNvbnN0IHRvZGF5ID0gbW9tZW50KCk7XG5leHBvcnQgY29uc3QgaXNGbG9vcnBsYW5BdmFpbGFibGUgPSAoZmxvb3JwbGFuOiBGbG9vcnBsYW4gfCBGbG9vcnBsYW5DYXJkRGF0YSk6IGJvb2xlYW4gPT4gZmxvb3JwbGFuLnVuaXRzLnNvbWUoKHVuaXQpID0+IHRvZGF5LmlzQWZ0ZXIoZGF0ZVRvTW9tZW50KHVuaXQubW92ZUluRGF0ZSkpKTtcbmV4cG9ydCBjb25zdCBnZXRUZXN0aW1vbmlhbHMgPSAoZmxvb3JwbGFuSWQ6IHN0cmluZyk6IFByb21pc2U8VGVzdGltb25pYWxbXT4gPT5cbiAgICBnZXQoXCJ0ZXN0aW1vbmlhbHMvc2VhcmNoL2J5Rmxvb3JwbGFuSWQ/cHJvamVjdGlvbj13aXRoSWQmZmxvb3JwbGFuSWQ9XCIgKyBmbG9vcnBsYW5JZCkudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5kYXRhLl9lbWJlZGRlZC50ZXN0aW1vbmlhbHMpO1xuXG5leHBvcnQgY29uc3QgZ2V0V2ViU3BlY2lhbHMgPSAoZmxvb3JwbGFuSWQ6IHN0cmluZyk6IFByb21pc2U8V2ViU3BlY2lhbFtdPiA9PlxuICAgIGdldChcIndlYlNwZWNpYWxzL3NlYXJjaC9ieUZsb29ycGxhbklkP3Byb2plY3Rpb249d2l0aElkJmZsb29ycGxhbklkPVwiICsgZmxvb3JwbGFuSWQpLnRoZW4ocmVzcG9uc2UgPT4gcmVzcG9uc2UuZGF0YS5fZW1iZWRkZWQud2ViU3BlY2lhbHMpO1xuXG5leHBvcnQgY29uc3QgcGVybWl0dGVkUGV0cyA9IChmbG9vcnBsYW46IEZsb29ycGxhbik6IHN0cmluZ1tdID0+IHtcblxuICAgIGNvbnN0IHVuaXQgPSB1bml0V2l0aE1vc3RBbGxvd2VkUGV0KFsuLi5mbG9vcnBsYW4udW5pdHNdKTtcblxuICAgIHN3aXRjaCAodW5pdD8uYWxsb3dlZFBldCkge1xuICAgICAgICBjYXNlIFBldC5MQVJHRV9ET0dfU01BTExfRE9HX0NBVDpcbiAgICAgICAgICAgIHJldHVybiBbJ0xhcmdlIERvZycsICdTbWFsbCBEb2cnLCAnQ2F0J107XG4gICAgICAgIGNhc2UgUGV0LlNNQUxMX0RPR19DQVQ6XG4gICAgICAgICAgICByZXR1cm4gWydTbWFsbCBEb2cnLCAnQ2F0J107XG4gICAgICAgIGNhc2UgUGV0LkNBVDpcbiAgICAgICAgICAgIHJldHVybiBbJ0NhdCddO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFsnTm9uZSddO1xuICAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IG5vdFBlcm1pdHRlZFBldHMgPSAoZmxvb3JwbGFuOiBGbG9vcnBsYW4pOiBzdHJpbmdbXSA9PiB7XG5cbiAgICBjb25zdCB1bml0ID0gdW5pdFdpdGhNb3N0QWxsb3dlZFBldChbLi4uZmxvb3JwbGFuLnVuaXRzXSk7XG5cbiAgICBzd2l0Y2ggKHVuaXQ/LmFsbG93ZWRQZXQpIHtcbiAgICAgICAgY2FzZSBQZXQuTEFSR0VfRE9HX1NNQUxMX0RPR19DQVQ6XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIGNhc2UgUGV0LlNNQUxMX0RPR19DQVQ6XG4gICAgICAgICAgICByZXR1cm4gWydMYXJnZSBEb2cnXTtcbiAgICAgICAgY2FzZSBQZXQuQ0FUOlxuICAgICAgICAgICAgcmV0dXJuIFsnTGFyZ2UgRG9nJywgJ1NtYWxsIERvZyddO1xuICAgICAgICBjYXNlIFBldC5OT19QRVQ6XG4gICAgICAgICAgICByZXR1cm4gWydMYXJnZSBEb2cnLCAnU21hbGwgRG9nJywgJ0NhdCddO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbn1cbmV4cG9ydCBjb25zdCBwZXRQb2xpY3kgPSAoZmxvb3JwbGFuOiBGbG9vcnBsYW4pOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICAgIGNvbnN0IHVuaXQgPSB1bml0V2l0aE1vc3RBbGxvd2VkUGV0KFsuLi5mbG9vcnBsYW4udW5pdHNdKTtcbiAgICByZXR1cm4gdW5pdD8ucGV0UG9saWN5O1xufVxuY29uc3QgdW5pdFdpdGhNb3N0QWxsb3dlZFBldCA9ICh1bml0czogVW5pdFtdKTogVW5pdCB8IHVuZGVmaW5lZCA9PiB7XG4gICAgY29uc3QgcGV0T3JkaW5hbCA9IChwZXQ6IFBldCkgPT4gT2JqZWN0LmtleXMoUGV0KS5pbmRleE9mKHBldCk7XG4gICAgcmV0dXJuIHVuaXRzLnNvcnQoKGEsIGIpID0+IHBldE9yZGluYWwoYi5hbGxvd2VkUGV0KSAtIHBldE9yZGluYWwoYS5hbGxvd2VkUGV0KSkucG9wKCk7XG59XG5cbmV4cG9ydCBjb25zdCBmbG9vcnBsYW5BZGRyZXNzID0gKGN1cnJlbnRGbG9vcnBsYW46IEZsb29ycGxhbik6IEZsb29ycGxhbkFkZHJlc3MgPT4ge1xuICAgIGNvbnN0IGFkZHJlc3M6IEZsb29ycGxhbkFkZHJlc3MgPSB7YWRkcmVzczogXCJcIiwgY2l0eTogXCJCbG9vbWluZ3RvblwiLCBzdGF0ZTogXCJJTlwiLCB6aXBjb2RlOiBcIlwifTtcbiAgICBpZiAoY3VycmVudEZsb29ycGxhbi51bml0cy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmFkZHJlc3MsIGFkZHJlc3M6IGN1cnJlbnRGbG9vcnBsYW4udW5pdHNbMF0uYWRkcmVzcyxcbiAgICAgICAgICAgIHppcGNvZGU6IGN1cnJlbnRGbG9vcnBsYW4udW5pdHNbMF0uemlwY29kZVxuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIC4uLmFkZHJlc3MsIGFkZHJlc3M6IGN1cnJlbnRGbG9vcnBsYW4ucHJvcGVydHkuYWRkcmVzcyxcbiAgICAgICAgemlwY29kZTogY3VycmVudEZsb29ycGxhbi5wcm9wZXJ0eS56aXBjb2RlXG4gICAgfVxufVxuXG5cbmV4cG9ydCBpbnRlcmZhY2UgRmxvb3JwbGFuQWRkcmVzcyB7XG4gICAgYWRkcmVzczogc3RyaW5nO1xuICAgIGNpdHk6IHN0cmluZztcbiAgICBzdGF0ZTogc3RyaW5nO1xuICAgIHppcGNvZGU6IHN0cmluZztcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsaUJBQUEs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
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import './assets/GalleryHero.scss';
|
|
3
3
|
import { Asset } from "../asset/data/Asset";
|
|
4
|
+
import { WebSpecial } from "../floorplan/data/Floorplan";
|
|
4
5
|
export declare const GalleryHeroMain: React.FC<GalleryHeroProps>;
|
|
5
6
|
export interface GalleryHeroProps {
|
|
6
7
|
assetsToShow: Asset[];
|
|
@@ -8,6 +9,7 @@ export interface GalleryHeroProps {
|
|
|
8
9
|
isAvailableNow?: boolean;
|
|
9
10
|
isFirst: boolean;
|
|
10
11
|
toursCount: number;
|
|
12
|
+
webSpecials: WebSpecial[];
|
|
11
13
|
setCurrentView: (view: "photo" | "virtual tour" | "video tour") => void;
|
|
12
14
|
imageClickedHandler: (image: Asset) => void;
|
|
13
15
|
propertyId: string;
|
|
@@ -17,6 +17,7 @@ const GalleryHeroMain = _ref => {
|
|
|
17
17
|
virtualTour,
|
|
18
18
|
setCurrentView,
|
|
19
19
|
isAvailableNow,
|
|
20
|
+
webSpecials,
|
|
20
21
|
assetsToShow,
|
|
21
22
|
isFirst,
|
|
22
23
|
toursCount,
|
|
@@ -38,7 +39,11 @@ const GalleryHeroMain = _ref => {
|
|
|
38
39
|
className: "badge--info"
|
|
39
40
|
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Badge, {
|
|
40
41
|
variant: "secondary"
|
|
41
|
-
}, "Available Now")) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), /*#__PURE__*/_react.default.createElement("div", {
|
|
42
|
+
}, "Available Now")) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), isFirst && webSpecials.length > 0 ? /*#__PURE__*/_react.default.createElement("div", {
|
|
43
|
+
className: "gallery--information"
|
|
44
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Badge, {
|
|
45
|
+
variant: "secondary"
|
|
46
|
+
}, /*#__PURE__*/_react.default.createElement("p", null, webSpecials[0].description))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), /*#__PURE__*/_react.default.createElement("div", {
|
|
42
47
|
className: "gallery-hero-two-columns"
|
|
43
48
|
}, isFirst ? /*#__PURE__*/_react.default.createElement("div", {
|
|
44
49
|
className: assetsToShow.length < 2 ? "gallery-hero-one" : "gallery-hero-column-one"
|
|
@@ -65,4 +70,4 @@ const GalleryHeroMain = _ref => {
|
|
|
65
70
|
}))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)));
|
|
66
71
|
};
|
|
67
72
|
exports.GalleryHeroMain = GalleryHeroMain;
|
|
68
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9Bc3NldFNlcnZpY2UiLCJfbXVuY2hlclVpIiwiX0hlcm9JbWFnZUNhcmQiLCJfaWNvbiIsIl92aWRlb0ljb24iLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkdhbGxlcnlIZXJvTWFpbiIsIl9yZWYiLCJ2aXJ0dWFsVG91ciIsInNldEN1cnJlbnRWaWV3IiwiaXNBdmFpbGFibGVOb3ciLCJhc3NldHNUb1Nob3ciLCJpc0ZpcnN0IiwidG91cnNDb3VudCIsImltYWdlQ2xpY2tlZEhhbmRsZXIiLCJwcm9wZXJ0eUlkIiwiY2FyZEltYWdlSWNvbiIsImkiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJzcmMiLCJ0b3VySWNvbiIsImFsdCIsImhlaWdodCIsInZpZGVvSWNvbiIsImNsYXNzTmFtZSIsIkJhZGdlIiwidmFyaWFudCIsImxlbmd0aCIsInNsaWNlIiwibWFwIiwiYXNzZXQiLCJhc3NldFVybEZyb20iLCJpZCIsIm5hbWUiLCJrZXkiLCJvbkNsaWNrIiwiQXJyYXkiLCJ4IiwiSGVyb0ltYWdlQ2FyZCIsImJhY2tncm91bmRJbWFnZSIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2FsbGVyeS9HYWxsZXJ5SGVyb01haW4udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCAnLi9hc3NldHMvR2FsbGVyeUhlcm8uc2Nzcyc7XG5pbXBvcnQge0Fzc2V0fSBmcm9tIFwiLi4vYXNzZXQvZGF0YS9Bc3NldFwiO1xuaW1wb3J0IHthc3NldFVybEZyb219IGZyb20gXCIuLi9hc3NldC9zZXJ2aWNlL0Fzc2V0U2VydmljZVwiO1xuaW1wb3J0IHtCYWRnZX0gZnJvbSBcIkBjb250ZW50bXVuY2gvbXVuY2hlci11aVwiO1xuaW1wb3J0IHtIZXJvSW1hZ2VDYXJkfSBmcm9tIFwiLi9IZXJvSW1hZ2VDYXJkXCI7XG5pbXBvcnQgdG91ckljb24gZnJvbSBcIi4uL2Zsb29ycGxhbi9jYXJkL2Fzc2V0cy8zNjAtaWNvbi5wbmdcIjtcbmltcG9ydCB2aWRlb0ljb24gZnJvbSBcIi4uL2Zsb29ycGxhbi9jYXJkL2Fzc2V0cy92aWRlby1pY29uLnBuZ1wiO1xuXG5leHBvcnQgY29uc3QgR2FsbGVyeUhlcm9NYWluOiBSZWFjdC5GQzxHYWxsZXJ5SGVyb1Byb3BzPiA9IChcbiAgICB7XG4gICAgICAgIHZpcnR1YWxUb3VyLCBzZXRDdXJyZW50VmlldywgaXNBdmFpbGFibGVOb3csXG4gICAgICAgIGFzc2V0c1RvU2hvdywgaXNGaXJzdCwgdG91cnNDb3VudCwgaW1hZ2VDbGlja2VkSGFuZGxlciwgcHJvcGVydHlJZFxuICAgIH0pID0+IHtcblxuICAgIGNvbnN0IGNhcmRJbWFnZUljb24gPSAoaTogbnVtYmVyKSA9PiB2aXJ0dWFsVG91ciAmJiBpID09PSAwID9cbiAgICAgICAgPD5cbiAgICAgICAgICAgIDxpbWcgc3JjPXt0b3VySWNvbn0gYWx0PVwidG91ciBpY29uXCIgaGVpZ2h0PXs1MH0vPlxuICAgICAgICAgICAgPHA+VmlydHVhbCBUb3VyPC9wPlxuICAgICAgICA8Lz4gOlxuICAgICAgICA8PlxuICAgICAgICAgICAgPGltZyBzcmM9e3ZpZGVvSWNvbn0gYWx0PVwidmlkZW8gaWNvblwiIGhlaWdodD17NDB9Lz5cbiAgICAgICAgICAgIDxwPlZpZGVvIFRvdXI8L3A+XG4gICAgICAgIDwvPlxuXG4gICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkaXYtZ2FsbGVyeVwiPlxuICAgICAgICAgICAge2lzRmlyc3QgJiYgaXNBdmFpbGFibGVOb3cgP1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiYmFkZ2UtLWluZm9cIj48QmFkZ2UgdmFyaWFudD1cInNlY29uZGFyeVwiPkF2YWlsYWJsZSBOb3c8L0JhZGdlPjwvZGl2PiA6IDw+PC8+fVxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImdhbGxlcnktaGVyby10d28tY29sdW1uc1wiPlxuICAgICAgICAgICAgICAgIHtpc0ZpcnN0ID9cbiAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXthc3NldHNUb1Nob3cubGVuZ3RoIDwgMiA/IFwiZ2FsbGVyeS1oZXJvLW9uZVwiIDogXCJnYWxsZXJ5LWhlcm8tY29sdW1uLW9uZVwifT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NldHNUb1Nob3cuc2xpY2UoMCwgMSkubWFwKChhc3NldCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e2Fzc2V0VXJsRnJvbShhc3NldC5pZCwgcHJvcGVydHlJZCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PXthc3NldC5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17YXNzZXQuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZ2FsbGVyeS1oZXJvLS1pbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaW1hZ2VDbGlja2VkSGFuZGxlcihhc3NldCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gOiA8PjwvPn1cbiAgICAgICAgICAgICAgICB7YXNzZXRzVG9TaG93Lmxlbmd0aCA+IDEgP1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17aXNGaXJzdCA/IFwiZ2FsbGVyeS1oZXJvLWNvbHVtbi10d29cIiA6IFwiZ2FsbGVyeS1oZXJvLWNvbHVtblwifT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpc0ZpcnN0ID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbLi4uQXJyYXkodG91cnNDb3VudCldLm1hcCgoeCwgaSkgPT5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SGVyb0ltYWdlQ2FyZCBiYWNrZ3JvdW5kSW1hZ2U9e2Fzc2V0VXJsRnJvbShhc3NldHNUb1Nob3dbaV0uaWQsIHByb3BlcnR5SWQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e1widG91clwiICsgaX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlydHVhbFRvdXIgJiYgaSA9PT0gMCA/IHNldEN1cnJlbnRWaWV3KFwidmlydHVhbCB0b3VyXCIpIDogc2V0Q3VycmVudFZpZXcoXCJ2aWRlbyB0b3VyXCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjYXJkSW1hZ2VJY29uKGkpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0hlcm9JbWFnZUNhcmQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSA6IDw+PC8+XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhc3NldHNUb1Nob3cuc2xpY2UoaXNGaXJzdCA/IDEgOiAwLCBhc3NldHNUb1Nob3cubGVuZ3RoKS5tYXAoKGFzc2V0KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz17YXNzZXRVcmxGcm9tKGFzc2V0LmlkLCBwcm9wZXJ0eUlkKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHQ9e2Fzc2V0Lm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXthc3NldC5pZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJnYWxsZXJ5LWhlcm8tLWltYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBpbWFnZUNsaWNrZWRIYW5kbGVyKGFzc2V0KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiA6IDw+PC8+XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgKTtcbn07XG5cblxuZXhwb3J0IGludGVyZmFjZSBHYWxsZXJ5SGVyb1Byb3BzIHtcblxuICAgIGFzc2V0c1RvU2hvdzogQXNzZXRbXTtcbiAgICB2aXJ0dWFsVG91cj86IHN0cmluZztcbiAgICBpc0F2YWlsYWJsZU5vdz86IGJvb2xlYW47XG4gICAgaXNGaXJzdDogYm9vbGVhbjtcbiAgICB0b3Vyc0NvdW50OiBudW1iZXI7XG5cbiAgICBzZXRDdXJyZW50VmlldzogKHZpZXc6IFwicGhvdG9cIiB8IFwidmlydHVhbCB0b3VyXCIgfCBcInZpZGVvIHRvdXJcIikgPT4gdm9pZDtcbiAgICBpbWFnZUNsaWNrZWRIYW5kbGVyOiAoaW1hZ2U6IEFzc2V0KSA9PiB2b2lkO1xuICAgIHByb3BlcnR5SWQ6IHN0cmluZztcblxufSJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFB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
|
|
73
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9Bc3NldFNlcnZpY2UiLCJfbXVuY2hlclVpIiwiX0hlcm9JbWFnZUNhcmQiLCJfaWNvbiIsIl92aWRlb0ljb24iLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkdhbGxlcnlIZXJvTWFpbiIsIl9yZWYiLCJ2aXJ0dWFsVG91ciIsInNldEN1cnJlbnRWaWV3IiwiaXNBdmFpbGFibGVOb3ciLCJ3ZWJTcGVjaWFscyIsImFzc2V0c1RvU2hvdyIsImlzRmlyc3QiLCJ0b3Vyc0NvdW50IiwiaW1hZ2VDbGlja2VkSGFuZGxlciIsInByb3BlcnR5SWQiLCJjYXJkSW1hZ2VJY29uIiwiaSIsImNyZWF0ZUVsZW1lbnQiLCJGcmFnbWVudCIsInNyYyIsInRvdXJJY29uIiwiYWx0IiwiaGVpZ2h0IiwidmlkZW9JY29uIiwiY2xhc3NOYW1lIiwiQmFkZ2UiLCJ2YXJpYW50IiwibGVuZ3RoIiwiZGVzY3JpcHRpb24iLCJzbGljZSIsIm1hcCIsImFzc2V0IiwiYXNzZXRVcmxGcm9tIiwiaWQiLCJuYW1lIiwia2V5Iiwib25DbGljayIsIkFycmF5IiwieCIsIkhlcm9JbWFnZUNhcmQiLCJiYWNrZ3JvdW5kSW1hZ2UiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dhbGxlcnkvR2FsbGVyeUhlcm9NYWluLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgJy4vYXNzZXRzL0dhbGxlcnlIZXJvLnNjc3MnO1xuaW1wb3J0IHtBc3NldH0gZnJvbSBcIi4uL2Fzc2V0L2RhdGEvQXNzZXRcIjtcbmltcG9ydCB7YXNzZXRVcmxGcm9tfSBmcm9tIFwiLi4vYXNzZXQvc2VydmljZS9Bc3NldFNlcnZpY2VcIjtcbmltcG9ydCB7QmFkZ2V9IGZyb20gXCJAY29udGVudG11bmNoL211bmNoZXItdWlcIjtcbmltcG9ydCB7SGVyb0ltYWdlQ2FyZH0gZnJvbSBcIi4vSGVyb0ltYWdlQ2FyZFwiO1xuaW1wb3J0IHRvdXJJY29uIGZyb20gXCIuLi9mbG9vcnBsYW4vY2FyZC9hc3NldHMvMzYwLWljb24ucG5nXCI7XG5pbXBvcnQgdmlkZW9JY29uIGZyb20gXCIuLi9mbG9vcnBsYW4vY2FyZC9hc3NldHMvdmlkZW8taWNvbi5wbmdcIjtcbmltcG9ydCB7V2ViU3BlY2lhbH0gZnJvbSBcIi4uL2Zsb29ycGxhbi9kYXRhL0Zsb29ycGxhblwiO1xuXG5leHBvcnQgY29uc3QgR2FsbGVyeUhlcm9NYWluOiBSZWFjdC5GQzxHYWxsZXJ5SGVyb1Byb3BzPiA9IChcbiAgICB7XG4gICAgICAgIHZpcnR1YWxUb3VyLCBzZXRDdXJyZW50VmlldywgaXNBdmFpbGFibGVOb3csIHdlYlNwZWNpYWxzLFxuICAgICAgICBhc3NldHNUb1Nob3csIGlzRmlyc3QsIHRvdXJzQ291bnQsIGltYWdlQ2xpY2tlZEhhbmRsZXIsIHByb3BlcnR5SWRcbiAgICB9KSA9PiB7XG5cbiAgICBjb25zdCBjYXJkSW1hZ2VJY29uID0gKGk6IG51bWJlcikgPT4gdmlydHVhbFRvdXIgJiYgaSA9PT0gMCA/XG4gICAgICAgIDw+XG4gICAgICAgICAgICA8aW1nIHNyYz17dG91ckljb259IGFsdD1cInRvdXIgaWNvblwiIGhlaWdodD17NTB9Lz5cbiAgICAgICAgICAgIDxwPlZpcnR1YWwgVG91cjwvcD5cbiAgICAgICAgPC8+IDpcbiAgICAgICAgPD5cbiAgICAgICAgICAgIDxpbWcgc3JjPXt2aWRlb0ljb259IGFsdD1cInZpZGVvIGljb25cIiBoZWlnaHQ9ezQwfS8+XG4gICAgICAgICAgICA8cD5WaWRlbyBUb3VyPC9wPlxuICAgICAgICA8Lz5cblxuICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGl2LWdhbGxlcnlcIj5cbiAgICAgICAgICAgIHtpc0ZpcnN0ICYmIGlzQXZhaWxhYmxlTm93ID9cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImJhZGdlLS1pbmZvXCI+PEJhZGdlIHZhcmlhbnQ9XCJzZWNvbmRhcnlcIj5BdmFpbGFibGUgTm93PC9CYWRnZT48L2Rpdj4gOiA8PjwvPn1cblxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlzRmlyc3QgJiYgd2ViU3BlY2lhbHMubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ2FsbGVyeS0taW5mb3JtYXRpb25cIj48QmFkZ2UgdmFyaWFudD1cInNlY29uZGFyeVwiPjxwPnt3ZWJTcGVjaWFsc1swXS5kZXNjcmlwdGlvbn08L3A+PC9CYWRnZT48L2Rpdj4gOiA8PjwvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJnYWxsZXJ5LWhlcm8tdHdvLWNvbHVtbnNcIj5cbiAgICAgICAgICAgICAgICB7aXNGaXJzdCA/XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17YXNzZXRzVG9TaG93Lmxlbmd0aCA8IDIgPyBcImdhbGxlcnktaGVyby1vbmVcIiA6IFwiZ2FsbGVyeS1oZXJvLWNvbHVtbi1vbmVcIn0+XG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXRzVG9TaG93LnNsaWNlKDAsIDEpLm1hcCgoYXNzZXQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPXthc3NldFVybEZyb20oYXNzZXQuaWQsIHByb3BlcnR5SWQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD17YXNzZXQubmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2Fzc2V0LmlkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImdhbGxlcnktaGVyby0taW1hZ2VcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGltYWdlQ2xpY2tlZEhhbmRsZXIoYXNzZXQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IDogPD48Lz59XG4gICAgICAgICAgICAgICAge2Fzc2V0c1RvU2hvdy5sZW5ndGggPiAxID9cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2lzRmlyc3QgPyBcImdhbGxlcnktaGVyby1jb2x1bW4tdHdvXCIgOiBcImdhbGxlcnktaGVyby1jb2x1bW5cIn0+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aXNGaXJzdCA/XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgWy4uLkFycmF5KHRvdXJzQ291bnQpXS5tYXAoKHgsIGkpID0+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhlcm9JbWFnZUNhcmQgYmFja2dyb3VuZEltYWdlPXthc3NldFVybEZyb20oYXNzZXRzVG9TaG93W2ldLmlkLCBwcm9wZXJ0eUlkKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtcInRvdXJcIiArIGl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpcnR1YWxUb3VyICYmIGkgPT09IDAgPyBzZXRDdXJyZW50VmlldyhcInZpcnR1YWwgdG91clwiKSA6IHNldEN1cnJlbnRWaWV3KFwidmlkZW8gdG91clwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Y2FyZEltYWdlSWNvbihpKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9IZXJvSW1hZ2VDYXJkPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgOiA8PjwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXNzZXRzVG9TaG93LnNsaWNlKGlzRmlyc3QgPyAxIDogMCwgYXNzZXRzVG9TaG93Lmxlbmd0aCkubWFwKChhc3NldCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9e2Fzc2V0VXJsRnJvbShhc3NldC5pZCwgcHJvcGVydHlJZCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWx0PXthc3NldC5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17YXNzZXQuaWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZ2FsbGVyeS1oZXJvLS1pbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaW1hZ2VDbGlja2VkSGFuZGxlcihhc3NldCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gOiA8PjwvPlxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICk7XG59O1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgR2FsbGVyeUhlcm9Qcm9wcyB7XG5cbiAgICBhc3NldHNUb1Nob3c6IEFzc2V0W107XG4gICAgdmlydHVhbFRvdXI/OiBzdHJpbmc7XG4gICAgaXNBdmFpbGFibGVOb3c/OiBib29sZWFuO1xuICAgIGlzRmlyc3Q6IGJvb2xlYW47XG4gICAgdG91cnNDb3VudDogbnVtYmVyO1xuICAgIHdlYlNwZWNpYWxzOiBXZWJTcGVjaWFsW107XG4gICAgc2V0Q3VycmVudFZpZXc6ICh2aWV3OiBcInBob3RvXCIgfCBcInZpcnR1YWwgdG91clwiIHwgXCJ2aWRlbyB0b3VyXCIpID0+IHZvaWQ7XG4gICAgaW1hZ2VDbGlja2VkSGFuZGxlcjogKGltYWdlOiBBc3NldCkgPT4gdm9pZDtcbiAgICBwcm9wZXJ0eUlkOiBzdHJpbmc7XG5cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0FBLE9BQUE7QUFFQSxJQUFBQyxhQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxVQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxjQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxLQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxVQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFBZ0UsU0FBQUQsdUJBQUFPLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFHekQsTUFBTUcsZUFBMkMsR0FBR0MsSUFBQSxJQUlqRDtFQUFBLElBSE47SUFDSUMsV0FBVztJQUFFQyxjQUFjO0lBQUVDLGNBQWM7SUFBRUMsV0FBVztJQUN4REMsWUFBWTtJQUFFQyxPQUFPO0lBQUVDLFVBQVU7SUFBRUMsbUJBQW1CO0lBQUVDO0VBQzVELENBQUMsR0FBQVQsSUFBQTtFQUVELE1BQU1VLGFBQWEsR0FBSUMsQ0FBUyxJQUFLVixXQUFXLElBQUlVLENBQUMsS0FBSyxDQUFDLGdCQUN2RHZCLE1BQUEsQ0FBQVUsT0FBQSxDQUFBYyxhQUFBLENBQUF4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
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import './assets/GalleryHero.scss';
|
|
3
3
|
import { Asset } from "../asset/data/Asset";
|
|
4
|
+
import { WebSpecial } from "../floorplan/data/Floorplan";
|
|
4
5
|
export declare const GalleryHeroMobile: React.FC<GalleryHeroMobileProps>;
|
|
5
6
|
export interface GalleryHeroMobileProps {
|
|
6
7
|
assets: Asset[];
|
|
7
8
|
virtualTour?: string;
|
|
8
9
|
toursCount: number;
|
|
10
|
+
webSpecials: WebSpecial[];
|
|
9
11
|
setCurrentView: (view: "photo" | "virtual tour" | "video tour") => void;
|
|
10
12
|
imageClickedHandler: (image: Asset) => void;
|
|
11
13
|
propertyId: string;
|
|
14
|
+
isAvailableNow: boolean;
|
|
12
15
|
}
|
|
@@ -19,15 +19,25 @@ const GalleryHeroMobile = _ref => {
|
|
|
19
19
|
setCurrentView,
|
|
20
20
|
toursCount,
|
|
21
21
|
imageClickedHandler,
|
|
22
|
-
|
|
22
|
+
isAvailableNow,
|
|
23
|
+
propertyId,
|
|
24
|
+
webSpecials
|
|
23
25
|
} = _ref;
|
|
24
|
-
const createImageItem = asset => /*#__PURE__*/_react.default.createElement("
|
|
26
|
+
const createImageItem = asset => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isAvailableNow ? /*#__PURE__*/_react.default.createElement("div", {
|
|
27
|
+
className: "badge--info"
|
|
28
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Badge, {
|
|
29
|
+
variant: "secondary"
|
|
30
|
+
}, "Available Now")) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), webSpecials.length > 0 ? /*#__PURE__*/_react.default.createElement("div", {
|
|
31
|
+
className: "gallery--information"
|
|
32
|
+
}, /*#__PURE__*/_react.default.createElement(_muncherUi.Badge, {
|
|
33
|
+
variant: "secondary"
|
|
34
|
+
}, /*#__PURE__*/_react.default.createElement("p", null, webSpecials[0].description))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), /*#__PURE__*/_react.default.createElement("img", {
|
|
25
35
|
src: (0, _AssetService.assetUrlFrom)(asset.id, propertyId),
|
|
26
36
|
alt: asset.name,
|
|
27
37
|
key: asset.id,
|
|
28
38
|
className: "gallery-hero-mobile--image",
|
|
29
39
|
onClick: () => imageClickedHandler(asset)
|
|
30
|
-
});
|
|
40
|
+
}));
|
|
31
41
|
const sliderItems = () => {
|
|
32
42
|
const cardImageIcon = i => virtualTour && i === 0 ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("img", {
|
|
33
43
|
src: _icon.default,
|
|
@@ -66,4 +76,4 @@ const GalleryHeroMobile = _ref => {
|
|
|
66
76
|
}))));
|
|
67
77
|
};
|
|
68
78
|
exports.GalleryHeroMobile = GalleryHeroMobile;
|
|
69
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9Bc3NldFNlcnZpY2UiLCJfbXVuY2hlclVpIiwiX0hlcm9JbWFnZUNhcmQiLCJfaWNvbiIsIl92aWRlb0ljb24iLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIkdhbGxlcnlIZXJvTW9iaWxlIiwiX3JlZiIsImFzc2V0cyIsInZpcnR1YWxUb3VyIiwic2V0Q3VycmVudFZpZXciLCJ0b3Vyc0NvdW50IiwiaW1hZ2VDbGlja2VkSGFuZGxlciIsImlzQXZhaWxhYmxlTm93IiwicHJvcGVydHlJZCIsIndlYlNwZWNpYWxzIiwiY3JlYXRlSW1hZ2VJdGVtIiwiYXNzZXQiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJjbGFzc05hbWUiLCJCYWRnZSIsInZhcmlhbnQiLCJsZW5ndGgiLCJkZXNjcmlwdGlvbiIsInNyYyIsImFzc2V0VXJsRnJvbSIsImlkIiwiYWx0IiwibmFtZSIsImtleSIsIm9uQ2xpY2siLCJzbGlkZXJJdGVtcyIsImNhcmRJbWFnZUljb24iLCJpIiwidG91ckljb24iLCJoZWlnaHQiLCJ2aWRlb0ljb24iLCJpdGVtcyIsInB1c2giLCJBcnJheSIsImZvckVhY2giLCJ4IiwiSGVyb0ltYWdlQ2FyZCIsImJhY2tncm91bmRJbWFnZSIsImlzRm9yTW9iaWxlIiwic2xpY2UiLCJJdGVtU2xpZGVyIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nYWxsZXJ5L0dhbGxlcnlIZXJvTW9iaWxlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtSZWFjdEVsZW1lbnR9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0ICcuL2Fzc2V0cy9HYWxsZXJ5SGVyby5zY3NzJztcbmltcG9ydCB7QXNzZXR9IGZyb20gXCIuLi9hc3NldC9kYXRhL0Fzc2V0XCI7XG5pbXBvcnQge2Fzc2V0VXJsRnJvbX0gZnJvbSBcIi4uL2Fzc2V0L3NlcnZpY2UvQXNzZXRTZXJ2aWNlXCI7XG5pbXBvcnQge0JhZGdlLCBJdGVtU2xpZGVyfSBmcm9tIFwiQGNvbnRlbnRtdW5jaC9tdW5jaGVyLXVpXCI7XG5pbXBvcnQge0hlcm9JbWFnZUNhcmR9IGZyb20gXCIuL0hlcm9JbWFnZUNhcmRcIjtcbmltcG9ydCB0b3VySWNvbiBmcm9tIFwiLi4vZmxvb3JwbGFuL2NhcmQvYXNzZXRzLzM2MC1pY29uLnBuZ1wiO1xuaW1wb3J0IHZpZGVvSWNvbiBmcm9tIFwiLi4vZmxvb3JwbGFuL2NhcmQvYXNzZXRzL3ZpZGVvLWljb24ucG5nXCI7XG5pbXBvcnQge1dlYlNwZWNpYWx9IGZyb20gXCIuLi9mbG9vcnBsYW4vZGF0YS9GbG9vcnBsYW5cIjtcblxuZXhwb3J0IGNvbnN0IEdhbGxlcnlIZXJvTW9iaWxlOiBSZWFjdC5GQzxHYWxsZXJ5SGVyb01vYmlsZVByb3BzPiA9IChcbiAgICB7XG4gICAgICAgIGFzc2V0cywgdmlydHVhbFRvdXIsIHNldEN1cnJlbnRWaWV3LCB0b3Vyc0NvdW50LFxuICAgICAgICBpbWFnZUNsaWNrZWRIYW5kbGVyLCBpc0F2YWlsYWJsZU5vdywgcHJvcGVydHlJZCwgd2ViU3BlY2lhbHMsXG4gICAgfSkgPT4ge1xuXG4gICAgY29uc3QgY3JlYXRlSW1hZ2VJdGVtID0gKGFzc2V0OiBBc3NldCkgPT5cbiAgICAgICAgPD5cbiAgICAgICAgICAgIHtpc0F2YWlsYWJsZU5vdyA/XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJiYWRnZS0taW5mb1wiPjxCYWRnZSB2YXJpYW50PVwic2Vjb25kYXJ5XCI+QXZhaWxhYmxlIE5vdzwvQmFkZ2U+PC9kaXY+IDogPD48Lz59XG4gICAgICAgICAgICB7d2ViU3BlY2lhbHMubGVuZ3RoID4gMCA/XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJnYWxsZXJ5LS1pbmZvcm1hdGlvblwiPjxCYWRnZSB2YXJpYW50PVwic2Vjb25kYXJ5XCI+PHA+e3dlYlNwZWNpYWxzWzBdLmRlc2NyaXB0aW9ufTwvcD5cbiAgICAgICAgICAgICAgICA8L0JhZGdlPjwvZGl2PiA6IDw+PC8+fVxuICAgICAgICAgICAgPGltZyBzcmM9e2Fzc2V0VXJsRnJvbShhc3NldC5pZCwgcHJvcGVydHlJZCl9XG4gICAgICAgICAgICAgICAgIGFsdD17YXNzZXQubmFtZX1cbiAgICAgICAgICAgICAgICAga2V5PXthc3NldC5pZH1cbiAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZ2FsbGVyeS1oZXJvLW1vYmlsZS0taW1hZ2VcIlxuICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBpbWFnZUNsaWNrZWRIYW5kbGVyKGFzc2V0KX0vPlxuICAgICAgICA8Lz47XG5cbiAgICBjb25zdCBzbGlkZXJJdGVtcyA9ICgpID0+IHtcbiAgICAgICAgY29uc3QgY2FyZEltYWdlSWNvbiA9IChpOiBudW1iZXIpID0+IHZpcnR1YWxUb3VyICYmIGkgPT09IDAgP1xuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz17dG91ckljb259IGFsdD1cInRvdXIgaWNvblwiIGhlaWdodD17NDB9Lz5cbiAgICAgICAgICAgICAgICA8cD5WaXJ0dWFsIFRvdXI8L3A+XG4gICAgICAgICAgICA8Lz4gOlxuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8aW1nIHNyYz17dmlkZW9JY29ufSBhbHQ9XCJ2aWRlbyBpY29uXCIgaGVpZ2h0PXszMH0vPlxuICAgICAgICAgICAgICAgIDxwPlZpZGVvIFRvdXI8L3A+XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgY29uc3QgaXRlbXM6IFJlYWN0RWxlbWVudFtdID0gW107XG4gICAgICAgIGl0ZW1zLnB1c2goY3JlYXRlSW1hZ2VJdGVtKGFzc2V0c1swXSkpO1xuICAgICAgICBbLi4uQXJyYXkodG91cnNDb3VudCldLmZvckVhY2goKHgsIGkpID0+IHtcbiAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKFxuICAgICAgICAgICAgICAgICAgICA8SGVyb0ltYWdlQ2FyZCBiYWNrZ3JvdW5kSW1hZ2U9e2Fzc2V0VXJsRnJvbShhc3NldHNbaV0uaWQsIHByb3BlcnR5SWQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0Zvck1vYmlsZT17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtcInRvdXJcIiArIGl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpcnR1YWxUb3VyICYmIGkgPT09IDAgPyBzZXRDdXJyZW50VmlldyhcInZpcnR1YWwgdG91clwiKSA6IHNldEN1cnJlbnRWaWV3KFwidmlkZW8gdG91clwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAge2NhcmRJbWFnZUljb24oaSl9XG4gICAgICAgICAgICAgICAgICAgIDwvSGVyb0ltYWdlQ2FyZD5cbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICAgIGFzc2V0cy5zbGljZSgxLCBhc3NldHMubGVuZ3RoKS5mb3JFYWNoKGFzc2V0ID0+IHtcbiAgICAgICAgICAgIGl0ZW1zLnB1c2goY3JlYXRlSW1hZ2VJdGVtKGFzc2V0KSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBpdGVtcztcbiAgICB9O1xuXG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRpdi1nYWxsZXJ5XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImdhbGxlcnktaGVyby10d28tY29sdW1uc1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZ2FsbGVyeS1oZXJvLWNvbHVtblwiPlxuICAgICAgICAgICAgICAgICAgICA8SXRlbVNsaWRlciBzbGlkZXJJdGVtcz17c2xpZGVySXRlbXMoKX0vPlxuXG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuXG4gICAgICAgIDwvZGl2PlxuICAgICk7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEdhbGxlcnlIZXJvTW9iaWxlUHJvcHMge1xuICAgIGFzc2V0czogQXNzZXRbXTtcbiAgICB2aXJ0dWFsVG91cj86IHN0cmluZztcbiAgICB0b3Vyc0NvdW50OiBudW1iZXI7XG4gICAgd2ViU3BlY2lhbHM6IFdlYlNwZWNpYWxbXTtcbiAgICBzZXRDdXJyZW50VmlldzogKHZpZXc6IFwicGhvdG9cIiB8IFwidmlydHVhbCB0b3VyXCIgfCBcInZpZGVvIHRvdXJcIikgPT4gdm9pZDtcbiAgICBpbWFnZUNsaWNrZWRIYW5kbGVyOiAoaW1hZ2U6IEFzc2V0KSA9PiB2b2lkO1xuICAgIHByb3BlcnR5SWQ6IHN0cmluZztcbiAgICBpc0F2YWlsYWJsZU5vdzogYm9vbGVhbjtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0FBLE9BQUE7QUFFQSxJQUFBQyxhQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxVQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxjQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxLQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxVQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFBZ0UsU0FBQUQsdUJBQUFPLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsR0FBQUQsR0FBQSxLQUFBRSxPQUFBLEVBQUFGLEdBQUE7QUFHekQsTUFBTUcsaUJBQW1ELEdBQUdDLElBQUEsSUFJekQ7RUFBQSxJQUhOO0lBQ0lDLE1BQU07SUFBRUMsV0FBVztJQUFFQyxjQUFjO0lBQUVDLFVBQVU7SUFDL0NDLG1CQUFtQjtJQUFFQyxjQUFjO0lB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
|