matrix-react-sdk
Version:
SDK for matrix.org using React
85 lines (82 loc) • 15.1 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _react = _interopRequireDefault(require("react"));
var _matrix = require("matrix-js-sdk/src/matrix");
var _Modal = _interopRequireDefault(require("../../../Modal"));
var _languageHandler = require("../../../languageHandler");
var _RoomUpgradeDialog = _interopRequireDefault(require("../dialogs/RoomUpgradeDialog"));
var _AccessibleButton = _interopRequireDefault(require("../elements/AccessibleButton"));
var _MatrixClientContext = _interopRequireDefault(require("../../../contexts/MatrixClientContext"));
/*
Copyright 2024 New Vector Ltd.
Copyright 2018-2021 The Matrix.org Foundation C.I.C.
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only
Please see LICENSE files in the repository root for full details.
*/
class RoomUpgradeWarningBar extends _react.default.PureComponent {
constructor(props, context) {
super(props, context);
(0, _defineProperty2.default)(this, "onStateEvents", event => {
if (!this.props.room || event.getRoomId() !== this.props.room.roomId) {
return;
}
if (event.getType() !== "m.room.tombstone") return;
const tombstone = this.props.room.currentState.getStateEvents("m.room.tombstone", "");
this.setState({
upgraded: tombstone && tombstone.getContent().replacement_room
});
});
(0, _defineProperty2.default)(this, "onUpgradeClick", () => {
_Modal.default.createDialog(_RoomUpgradeDialog.default, {
room: this.props.room
});
});
const _tombstone = this.props.room.currentState.getStateEvents("m.room.tombstone", "");
this.state = {
upgraded: _tombstone?.getContent().replacement_room
};
}
componentDidMount() {
this.context.on(_matrix.RoomStateEvent.Events, this.onStateEvents);
}
componentWillUnmount() {
this.context.removeListener(_matrix.RoomStateEvent.Events, this.onStateEvents);
}
render() {
let doUpgradeWarnings = /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
className: "mx_RoomUpgradeWarningBar_body"
}, /*#__PURE__*/_react.default.createElement("p", null, (0, _languageHandler._t)("room|upgrade_warning_bar")), /*#__PURE__*/_react.default.createElement("p", null, (0, _languageHandler._t)("room_settings|advanced|room_upgrade_warning", {}, {
b: sub => /*#__PURE__*/_react.default.createElement("strong", null, sub),
i: sub => /*#__PURE__*/_react.default.createElement("i", null, sub)
}))), /*#__PURE__*/_react.default.createElement("p", {
className: "mx_RoomUpgradeWarningBar_upgradelink"
}, /*#__PURE__*/_react.default.createElement(_AccessibleButton.default, {
onClick: this.onUpgradeClick
}, (0, _languageHandler._t)("room_settings|advanced|room_upgrade_button"))));
if (this.state.upgraded) {
doUpgradeWarnings = /*#__PURE__*/_react.default.createElement("div", {
className: "mx_RoomUpgradeWarningBar_body"
}, /*#__PURE__*/_react.default.createElement("p", null, (0, _languageHandler._t)("room|upgrade_warning_bar_upgraded")));
}
return /*#__PURE__*/_react.default.createElement("div", {
className: "mx_RoomUpgradeWarningBar"
}, /*#__PURE__*/_react.default.createElement("div", {
className: "mx_RoomUpgradeWarningBar_wrapped"
}, /*#__PURE__*/_react.default.createElement("div", {
className: "mx_RoomUpgradeWarningBar_header"
}, (0, _languageHandler._t)("room|upgrade_warning_bar_unstable", {}, {
roomVersion: () => /*#__PURE__*/_react.default.createElement("code", null, this.props.room.getVersion()),
i: sub => /*#__PURE__*/_react.default.createElement("i", null, sub)
})), doUpgradeWarnings, /*#__PURE__*/_react.default.createElement("div", {
className: "mx_RoomUpgradeWarningBar_small"
}, (0, _languageHandler._t)("room|upgrade_warning_bar_admins"))));
}
}
exports.default = RoomUpgradeWarningBar;
(0, _defineProperty2.default)(RoomUpgradeWarningBar, "contextType", _MatrixClientContext.default);
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9tYXRyaXgiLCJfTW9kYWwiLCJfbGFuZ3VhZ2VIYW5kbGVyIiwiX1Jvb21VcGdyYWRlRGlhbG9nIiwiX0FjY2Vzc2libGVCdXR0b24iLCJfTWF0cml4Q2xpZW50Q29udGV4dCIsIlJvb21VcGdyYWRlV2FybmluZ0JhciIsIlJlYWN0IiwiUHVyZUNvbXBvbmVudCIsImNvbnN0cnVjdG9yIiwicHJvcHMiLCJjb250ZXh0IiwiX2RlZmluZVByb3BlcnR5MiIsImRlZmF1bHQiLCJldmVudCIsInJvb20iLCJnZXRSb29tSWQiLCJyb29tSWQiLCJnZXRUeXBlIiwidG9tYnN0b25lIiwiY3VycmVudFN0YXRlIiwiZ2V0U3RhdGVFdmVudHMiLCJzZXRTdGF0ZSIsInVwZ3JhZGVkIiwiZ2V0Q29udGVudCIsInJlcGxhY2VtZW50X3Jvb20iLCJNb2RhbCIsImNyZWF0ZURpYWxvZyIsIlJvb21VcGdyYWRlRGlhbG9nIiwic3RhdGUiLCJjb21wb25lbnREaWRNb3VudCIsIm9uIiwiUm9vbVN0YXRlRXZlbnQiLCJFdmVudHMiLCJvblN0YXRlRXZlbnRzIiwiY29tcG9uZW50V2lsbFVubW91bnQiLCJyZW1vdmVMaXN0ZW5lciIsInJlbmRlciIsImRvVXBncmFkZVdhcm5pbmdzIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsIl90IiwiYiIsInN1YiIsImkiLCJvbkNsaWNrIiwib25VcGdyYWRlQ2xpY2siLCJyb29tVmVyc2lvbiIsImdldFZlcnNpb24iLCJleHBvcnRzIiwiTWF0cml4Q2xpZW50Q29udGV4dCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL3Jvb21zL1Jvb21VcGdyYWRlV2FybmluZ0Jhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDI0IE5ldyBWZWN0b3IgTHRkLlxuQ29weXJpZ2h0IDIwMTgtMjAyMSBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgeyBNYXRyaXhFdmVudCwgUm9vbSwgUm9vbVN0YXRlRXZlbnQgfSBmcm9tIFwibWF0cml4LWpzLXNkay9zcmMvbWF0cml4XCI7XG5cbmltcG9ydCBNb2RhbCBmcm9tIFwiLi4vLi4vLi4vTW9kYWxcIjtcbmltcG9ydCB7IF90IH0gZnJvbSBcIi4uLy4uLy4uL2xhbmd1YWdlSGFuZGxlclwiO1xuaW1wb3J0IFJvb21VcGdyYWRlRGlhbG9nIGZyb20gXCIuLi9kaWFsb2dzL1Jvb21VcGdyYWRlRGlhbG9nXCI7XG5pbXBvcnQgQWNjZXNzaWJsZUJ1dHRvbiBmcm9tIFwiLi4vZWxlbWVudHMvQWNjZXNzaWJsZUJ1dHRvblwiO1xuaW1wb3J0IE1hdHJpeENsaWVudENvbnRleHQgZnJvbSBcIi4uLy4uLy4uL2NvbnRleHRzL01hdHJpeENsaWVudENvbnRleHRcIjtcblxuaW50ZXJmYWNlIElQcm9wcyB7XG4gICAgcm9vbTogUm9vbTtcbn1cblxuaW50ZXJmYWNlIElTdGF0ZSB7XG4gICAgdXBncmFkZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSb29tVXBncmFkZVdhcm5pbmdCYXIgZXh0ZW5kcyBSZWFjdC5QdXJlQ29tcG9uZW50PElQcm9wcywgSVN0YXRlPiB7XG4gICAgcHVibGljIHN0YXRpYyBjb250ZXh0VHlwZSA9IE1hdHJpeENsaWVudENvbnRleHQ7XG4gICAgcHVibGljIGRlY2xhcmUgY29udGV4dDogUmVhY3QuQ29udGV4dFR5cGU8dHlwZW9mIE1hdHJpeENsaWVudENvbnRleHQ+O1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHByb3BzOiBJUHJvcHMsIGNvbnRleHQ6IFJlYWN0LkNvbnRleHRUeXBlPHR5cGVvZiBNYXRyaXhDbGllbnRDb250ZXh0Pikge1xuICAgICAgICBzdXBlcihwcm9wcywgY29udGV4dCk7XG5cbiAgICAgICAgY29uc3QgdG9tYnN0b25lID0gdGhpcy5wcm9wcy5yb29tLmN1cnJlbnRTdGF0ZS5nZXRTdGF0ZUV2ZW50cyhcIm0ucm9vbS50b21ic3RvbmVcIiwgXCJcIik7XG4gICAgICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICAgICAgICB1cGdyYWRlZDogdG9tYnN0b25lPy5nZXRDb250ZW50KCkucmVwbGFjZW1lbnRfcm9vbSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY29tcG9uZW50RGlkTW91bnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGV4dC5vbihSb29tU3RhdGVFdmVudC5FdmVudHMsIHRoaXMub25TdGF0ZUV2ZW50cyk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbXBvbmVudFdpbGxVbm1vdW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRleHQucmVtb3ZlTGlzdGVuZXIoUm9vbVN0YXRlRXZlbnQuRXZlbnRzLCB0aGlzLm9uU3RhdGVFdmVudHMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25TdGF0ZUV2ZW50cyA9IChldmVudDogTWF0cml4RXZlbnQpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKCF0aGlzLnByb3BzLnJvb20gfHwgZXZlbnQuZ2V0Um9vbUlkKCkgIT09IHRoaXMucHJvcHMucm9vbS5yb29tSWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudC5nZXRUeXBlKCkgIT09IFwibS5yb29tLnRvbWJzdG9uZVwiKSByZXR1cm47XG5cbiAgICAgICAgY29uc3QgdG9tYnN0b25lID0gdGhpcy5wcm9wcy5yb29tLmN1cnJlbnRTdGF0ZS5nZXRTdGF0ZUV2ZW50cyhcIm0ucm9vbS50b21ic3RvbmVcIiwgXCJcIik7XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyB1cGdyYWRlZDogdG9tYnN0b25lICYmIHRvbWJzdG9uZS5nZXRDb250ZW50KCkucmVwbGFjZW1lbnRfcm9vbSB9KTtcbiAgICB9O1xuXG4gICAgcHJpdmF0ZSBvblVwZ3JhZGVDbGljayA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgTW9kYWwuY3JlYXRlRGlhbG9nKFJvb21VcGdyYWRlRGlhbG9nLCB7IHJvb206IHRoaXMucHJvcHMucm9vbSB9KTtcbiAgICB9O1xuXG4gICAgcHVibGljIHJlbmRlcigpOiBSZWFjdC5SZWFjdE5vZGUge1xuICAgICAgICBsZXQgZG9VcGdyYWRlV2FybmluZ3MgPSAoXG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXhfUm9vbVVwZ3JhZGVXYXJuaW5nQmFyX2JvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgPHA+e190KFwicm9vbXx1cGdyYWRlX3dhcm5pbmdfYmFyXCIpfTwvcD5cbiAgICAgICAgICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7X3QoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyb29tX3NldHRpbmdzfGFkdmFuY2VkfHJvb21fdXBncmFkZV93YXJuaW5nXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge30sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiOiAoc3ViKSA9PiA8c3Ryb25nPntzdWJ9PC9zdHJvbmc+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpOiAoc3ViKSA9PiA8aT57c3VifTwvaT4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJteF9Sb29tVXBncmFkZVdhcm5pbmdCYXJfdXBncmFkZWxpbmtcIj5cbiAgICAgICAgICAgICAgICAgICAgPEFjY2Vzc2libGVCdXR0b24gb25DbGljaz17dGhpcy5vblVwZ3JhZGVDbGlja30+XG4gICAgICAgICAgICAgICAgICAgICAgICB7X3QoXCJyb29tX3NldHRpbmdzfGFkdmFuY2VkfHJvb21fdXBncmFkZV9idXR0b25cIil9XG4gICAgICAgICAgICAgICAgICAgIDwvQWNjZXNzaWJsZUJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKTtcblxuICAgICAgICBpZiAodGhpcy5zdGF0ZS51cGdyYWRlZCkge1xuICAgICAgICAgICAgZG9VcGdyYWRlV2FybmluZ3MgPSAoXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJteF9Sb29tVXBncmFkZVdhcm5pbmdCYXJfYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICA8cD57X3QoXCJyb29tfHVwZ3JhZGVfd2FybmluZ19iYXJfdXBncmFkZWRcIil9PC9wPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm14X1Jvb21VcGdyYWRlV2FybmluZ0JhclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXhfUm9vbVVwZ3JhZGVXYXJuaW5nQmFyX3dyYXBwZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJteF9Sb29tVXBncmFkZVdhcm5pbmdCYXJfaGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7X3QoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJyb29tfHVwZ3JhZGVfd2FybmluZ19iYXJfdW5zdGFibGVcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7fSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvb21WZXJzaW9uOiAoKSA9PiA8Y29kZT57dGhpcy5wcm9wcy5yb29tLmdldFZlcnNpb24oKX08L2NvZGU+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpOiAoc3ViKSA9PiA8aT57c3VifTwvaT4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB7ZG9VcGdyYWRlV2FybmluZ3N9XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXhfUm9vbVVwZ3JhZGVXYXJuaW5nQmFyX3NtYWxsXCI+e190KFwicm9vbXx1cGdyYWRlX3dhcm5pbmdfYmFyX2FkbWluc1wiKX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICApO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFRQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxNQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxnQkFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksa0JBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLGlCQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTSxvQkFBQSxHQUFBUCxzQkFBQSxDQUFBQyxPQUFBO0FBZkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBbUJlLE1BQU1PLHFCQUFxQixTQUFTQyxjQUFLLENBQUNDLGFBQWEsQ0FBaUI7RUFJNUVDLFdBQVdBLENBQUNDLEtBQWEsRUFBRUMsT0FBc0QsRUFBRTtJQUN0RixLQUFLLENBQUNELEtBQUssRUFBRUMsT0FBTyxDQUFDO0lBQUMsSUFBQUMsZ0JBQUEsQ0FBQUMsT0FBQSx5QkFnQkRDLEtBQWtCLElBQVc7TUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQ0osS0FBSyxDQUFDSyxJQUFJLElBQUlELEtBQUssQ0FBQ0UsU0FBUyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUNOLEtBQUssQ0FBQ0ssSUFBSSxDQUFDRSxNQUFNLEVBQUU7UUFDbEU7TUFDSjtNQUVBLElBQUlILEtBQUssQ0FBQ0ksT0FBTyxDQUFDLENBQUMsS0FBSyxrQkFBa0IsRUFBRTtNQUU1QyxNQUFNQyxTQUFTLEdBQUcsSUFBSSxDQUFDVCxLQUFLLENBQUNLLElBQUksQ0FBQ0ssWUFBWSxDQUFDQyxjQUFjLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDO01BQ3JGLElBQUksQ0FBQ0MsUUFBUSxDQUFDO1FBQUVDLFFBQVEsRUFBRUosU0FBUyxJQUFJQSxTQUFTLENBQUNLLFVBQVUsQ0FBQyxDQUFDLENBQUNDO01BQWlCLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBQUEsSUFBQWIsZ0JBQUEsQ0FBQUMsT0FBQSwwQkFFd0IsTUFBWTtNQUNqQ2EsY0FBSyxDQUFDQyxZQUFZLENBQUNDLDBCQUFpQixFQUFFO1FBQUViLElBQUksRUFBRSxJQUFJLENBQUNMLEtBQUssQ0FBQ0s7TUFBSyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQTNCRyxNQUFNSSxVQUFTLEdBQUcsSUFBSSxDQUFDVCxLQUFLLENBQUNLLElBQUksQ0FBQ0ssWUFBWSxDQUFDQyxjQUFjLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDO0lBQ3JGLElBQUksQ0FBQ1EsS0FBSyxHQUFHO01BQ1ROLFFBQVEsRUFBRUosVUFBUyxFQUFFSyxVQUFVLENBQUMsQ0FBQyxDQUFDQztJQUN0QyxDQUFDO0VBQ0w7RUFFT0ssaUJBQWlCQSxDQUFBLEVBQVM7SUFDN0IsSUFBSSxDQUFDbkIsT0FBTyxDQUFDb0IsRUFBRSxDQUFDQyxzQkFBYyxDQUFDQyxNQUFNLEVBQUUsSUFBSSxDQUFDQyxhQUFhLENBQUM7RUFDOUQ7RUFFT0Msb0JBQW9CQSxDQUFBLEVBQVM7SUFDaEMsSUFBSSxDQUFDeEIsT0FBTyxDQUFDeUIsY0FBYyxDQUFDSixzQkFBYyxDQUFDQyxNQUFNLEVBQUUsSUFBSSxDQUFDQyxhQUFhLENBQUM7RUFDMUU7RUFpQk9HLE1BQU1BLENBQUEsRUFBb0I7SUFDN0IsSUFBSUMsaUJBQWlCLGdCQUNqQnpDLE1BQUEsQ0FBQWdCLE9BQUEsQ0FBQTBCLGFBQUEsMkJBQ0kxQyxNQUFBLENBQUFnQixPQUFBLENBQUEwQixhQUFBO01BQUtDLFNBQVMsRUFBQztJQUErQixnQkFDMUMzQyxNQUFBLENBQUFnQixPQUFBLENBQUEwQixhQUFBLFlBQUksSUFBQUUsbUJBQUUsRUFBQywwQkFBMEIsQ0FBSyxDQUFDLGVBQ3ZDNUMsTUFBQSxDQUFBZ0IsT0FBQSxDQUFBMEIsYUFBQSxZQUNLLElBQUFFLG1CQUFFLEVBQ0MsNkNBQTZDLEVBQzdDLENBQUMsQ0FBQyxFQUNGO01BQ0lDLENBQUMsRUFBR0MsR0FBRyxpQkFBSzlDLE1BQUEsQ0FBQWdCLE9BQUEsQ0FBQTBCLGFBQUEsaUJBQVNJLEdBQVksQ0FBQztNQUNsQ0MsQ0FBQyxFQUFHRCxHQUFHLGlCQUFLOUMsTUFBQSxDQUFBZ0IsT0FBQSxDQUFBMEIsYUFBQSxZQUFJSSxHQUFPO0lBQzNCLENBQ0osQ0FDRCxDQUNGLENBQUMsZUFDTjlDLE1BQUEsQ0FBQWdCLE9BQUEsQ0FBQTBCLGFBQUE7TUFBR0MsU0FBUyxFQUFDO0lBQXNDLGdCQUMvQzNDLE1BQUEsQ0FBQWdCLE9BQUEsQ0FBQTBCLGFBQUEsQ0FBQ25DLGlCQUFBLENBQUFTLE9BQWdCO01BQUNnQyxPQUFPLEVBQUUsSUFBSSxDQUFDQztJQUFlLEdBQzFDLElBQUFMLG1CQUFFLEVBQUMsNENBQTRDLENBQ2xDLENBQ25CLENBQ0YsQ0FDUjtJQUVELElBQUksSUFBSSxDQUFDWixLQUFLLENBQUNOLFFBQVEsRUFBRTtNQUNyQmUsaUJBQWlCLGdCQUNiekMsTUFBQSxDQUFBZ0IsT0FBQSxDQUFBMEIsYUFBQTtRQUFLQyxTQUFTLEVBQUM7TUFBK0IsZ0JBQzFDM0MsTUFBQSxDQUFBZ0IsT0FBQSxDQUFBMEIsYUFBQSxZQUFJLElBQUFFLG1CQUFFLEVBQUMsbUNBQW1DLENBQUssQ0FDOUMsQ0FDUjtJQUNMO0lBRUEsb0JBQ0k1QyxNQUFBLENBQUFnQixPQUFBLENBQUEwQixhQUFBO01BQUtDLFNBQVMsRUFBQztJQUEwQixnQkFDckMzQyxNQUFBLENBQUFnQixPQUFBLENBQUEwQixhQUFBO01BQUtDLFNBQVMsRUFBQztJQUFrQyxnQkFDN0MzQyxNQUFBLENBQUFnQixPQUFBLENBQUEwQixhQUFBO01BQUtDLFNBQVMsRUFBQztJQUFpQyxHQUMzQyxJQUFBQyxtQkFBRSxFQUNDLG1DQUFtQyxFQUNuQyxDQUFDLENBQUMsRUFDRjtNQUNJTSxXQUFXLEVBQUVBLENBQUEsa0JBQU1sRCxNQUFBLENBQUFnQixPQUFBLENBQUEwQixhQUFBLGVBQU8sSUFBSSxDQUFDN0IsS0FBSyxDQUFDSyxJQUFJLENBQUNpQyxVQUFVLENBQUMsQ0FBUSxDQUFDO01BQzlESixDQUFDLEVBQUdELEdBQUcsaUJBQUs5QyxNQUFBLENBQUFnQixPQUFBLENBQUEwQixhQUFBLFlBQUlJLEdBQU87SUFDM0IsQ0FDSixDQUNDLENBQUMsRUFDTEwsaUJBQWlCLGVBQ2xCekMsTUFBQSxDQUFBZ0IsT0FBQSxDQUFBMEIsYUFBQTtNQUFLQyxTQUFTLEVBQUM7SUFBZ0MsR0FBRSxJQUFBQyxtQkFBRSxFQUFDLGlDQUFpQyxDQUFPLENBQzNGLENBQ0osQ0FBQztFQUVkO0FBQ0o7QUFBQ1EsT0FBQSxDQUFBcEMsT0FBQSxHQUFBUCxxQkFBQTtBQUFBLElBQUFNLGdCQUFBLENBQUFDLE9BQUEsRUF2Rm9CUCxxQkFBcUIsaUJBQ1Y0Qyw0QkFBbUIiLCJpZ25vcmVMaXN0IjpbXX0=