UNPKG

matrix-react-sdk

Version:
91 lines (88 loc) 13.8 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.VoiceBroadcastPlaybackBody = void 0; var _react = _interopRequireDefault(require("react")); var _classnames = _interopRequireDefault(require("classnames")); var _ = require("../.."); var _useVoiceBroadcastPlayback = require("../../hooks/useVoiceBroadcastPlayback"); var _back30s24px = require("../../../../res/img/compound/back-30s-24px.svg"); var _forward30s24px = require("../../../../res/img/compound/forward-30s-24px.svg"); var _languageHandler = require("../../../languageHandler"); var _Clock = _interopRequireDefault(require("../../../components/views/audio_messages/Clock")); var _SeekBar = _interopRequireDefault(require("../../../components/views/audio_messages/SeekBar")); var _SeekButton = require("../atoms/SeekButton"); /* Copyright 2024 New Vector Ltd. Copyright 2022 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. */ const SEEK_TIME = 30; const VoiceBroadcastPlaybackBody = ({ pip = false, playback }) => { const { times, liveness, playbackState, room, sender, toggle } = (0, _useVoiceBroadcastPlayback.useVoiceBroadcastPlayback)(playback); let seekBackwardButton = null; let seekForwardButton = null; if (playbackState !== _.VoiceBroadcastPlaybackState.Stopped) { const onSeekBackwardButtonClick = () => { playback.skipTo(Math.max(0, times.position - SEEK_TIME)); }; seekBackwardButton = /*#__PURE__*/_react.default.createElement(_SeekButton.SeekButton, { icon: _back30s24px.Icon, label: (0, _languageHandler._t)("voice_broadcast|30s_backward"), onClick: onSeekBackwardButtonClick }); const onSeekForwardButtonClick = () => { playback.skipTo(Math.min(times.duration, times.position + SEEK_TIME)); }; seekForwardButton = /*#__PURE__*/_react.default.createElement(_SeekButton.SeekButton, { icon: _forward30s24px.Icon, label: (0, _languageHandler._t)("voice_broadcast|30s_forward"), onClick: onSeekForwardButtonClick }); } const classes = (0, _classnames.default)({ mx_VoiceBroadcastBody: true, ["mx_VoiceBroadcastBody--pip"]: pip }); const content = playbackState === _.VoiceBroadcastPlaybackState.Error ? /*#__PURE__*/_react.default.createElement(_.VoiceBroadcastError, { message: playback.errorMessage }) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", { className: "mx_VoiceBroadcastBody_controls" }, seekBackwardButton, /*#__PURE__*/_react.default.createElement(_.VoiceBroadcastPlaybackControl, { state: playbackState, onClick: toggle }), seekForwardButton), /*#__PURE__*/_react.default.createElement(_SeekBar.default, { playback: playback }), /*#__PURE__*/_react.default.createElement("div", { className: "mx_VoiceBroadcastBody_timerow" }, /*#__PURE__*/_react.default.createElement(_Clock.default, { seconds: times.position }), /*#__PURE__*/_react.default.createElement(_Clock.default, { seconds: -times.timeLeft }))); return /*#__PURE__*/_react.default.createElement("div", { className: classes }, /*#__PURE__*/_react.default.createElement(_.VoiceBroadcastHeader, { linkToRoom: pip, live: liveness, microphoneLabel: sender?.name, room: room, showBroadcast: playbackState !== _.VoiceBroadcastPlaybackState.Buffering, showBuffering: playbackState === _.VoiceBroadcastPlaybackState.Buffering }), content); }; exports.VoiceBroadcastPlaybackBody = VoiceBroadcastPlaybackBody; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9jbGFzc25hbWVzIiwiXyIsIl91c2VWb2ljZUJyb2FkY2FzdFBsYXliYWNrIiwiX2JhY2szMHMyNHB4IiwiX2ZvcndhcmQzMHMyNHB4IiwiX2xhbmd1YWdlSGFuZGxlciIsIl9DbG9jayIsIl9TZWVrQmFyIiwiX1NlZWtCdXR0b24iLCJTRUVLX1RJTUUiLCJWb2ljZUJyb2FkY2FzdFBsYXliYWNrQm9keSIsInBpcCIsInBsYXliYWNrIiwidGltZXMiLCJsaXZlbmVzcyIsInBsYXliYWNrU3RhdGUiLCJyb29tIiwic2VuZGVyIiwidG9nZ2xlIiwidXNlVm9pY2VCcm9hZGNhc3RQbGF5YmFjayIsInNlZWtCYWNrd2FyZEJ1dHRvbiIsInNlZWtGb3J3YXJkQnV0dG9uIiwiVm9pY2VCcm9hZGNhc3RQbGF5YmFja1N0YXRlIiwiU3RvcHBlZCIsIm9uU2Vla0JhY2t3YXJkQnV0dG9uQ2xpY2siLCJza2lwVG8iLCJNYXRoIiwibWF4IiwicG9zaXRpb24iLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsIlNlZWtCdXR0b24iLCJpY29uIiwiQmFjazMwc0ljb24iLCJsYWJlbCIsIl90Iiwib25DbGljayIsIm9uU2Vla0ZvcndhcmRCdXR0b25DbGljayIsIm1pbiIsImR1cmF0aW9uIiwiRm9yd2FyZDMwc0ljb24iLCJjbGFzc2VzIiwiY2xhc3NOYW1lcyIsIm14X1ZvaWNlQnJvYWRjYXN0Qm9keSIsImNvbnRlbnQiLCJFcnJvciIsIlZvaWNlQnJvYWRjYXN0RXJyb3IiLCJtZXNzYWdlIiwiZXJyb3JNZXNzYWdlIiwiRnJhZ21lbnQiLCJjbGFzc05hbWUiLCJWb2ljZUJyb2FkY2FzdFBsYXliYWNrQ29udHJvbCIsInN0YXRlIiwic2Vjb25kcyIsInRpbWVMZWZ0IiwiVm9pY2VCcm9hZGNhc3RIZWFkZXIiLCJsaW5rVG9Sb29tIiwibGl2ZSIsIm1pY3JvcGhvbmVMYWJlbCIsIm5hbWUiLCJzaG93QnJvYWRjYXN0IiwiQnVmZmVyaW5nIiwic2hvd0J1ZmZlcmluZyIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdm9pY2UtYnJvYWRjYXN0L2NvbXBvbmVudHMvbW9sZWN1bGVzL1ZvaWNlQnJvYWRjYXN0UGxheWJhY2tCb2R5LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAyMiBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgUmVhY3QsIHsgUmVhY3RFbGVtZW50IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tIFwiY2xhc3NuYW1lc1wiO1xuXG5pbXBvcnQge1xuICAgIFZvaWNlQnJvYWRjYXN0RXJyb3IsXG4gICAgVm9pY2VCcm9hZGNhc3RIZWFkZXIsXG4gICAgVm9pY2VCcm9hZGNhc3RQbGF5YmFjayxcbiAgICBWb2ljZUJyb2FkY2FzdFBsYXliYWNrQ29udHJvbCxcbiAgICBWb2ljZUJyb2FkY2FzdFBsYXliYWNrU3RhdGUsXG59IGZyb20gXCIuLi8uLlwiO1xuaW1wb3J0IHsgdXNlVm9pY2VCcm9hZGNhc3RQbGF5YmFjayB9IGZyb20gXCIuLi8uLi9ob29rcy91c2VWb2ljZUJyb2FkY2FzdFBsYXliYWNrXCI7XG5pbXBvcnQgeyBJY29uIGFzIEJhY2szMHNJY29uIH0gZnJvbSBcIi4uLy4uLy4uLy4uL3Jlcy9pbWcvY29tcG91bmQvYmFjay0zMHMtMjRweC5zdmdcIjtcbmltcG9ydCB7IEljb24gYXMgRm9yd2FyZDMwc0ljb24gfSBmcm9tIFwiLi4vLi4vLi4vLi4vcmVzL2ltZy9jb21wb3VuZC9mb3J3YXJkLTMwcy0yNHB4LnN2Z1wiO1xuaW1wb3J0IHsgX3QgfSBmcm9tIFwiLi4vLi4vLi4vbGFuZ3VhZ2VIYW5kbGVyXCI7XG5pbXBvcnQgQ2xvY2sgZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvdmlld3MvYXVkaW9fbWVzc2FnZXMvQ2xvY2tcIjtcbmltcG9ydCBTZWVrQmFyIGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL3ZpZXdzL2F1ZGlvX21lc3NhZ2VzL1NlZWtCYXJcIjtcbmltcG9ydCB7IFNlZWtCdXR0b24gfSBmcm9tIFwiLi4vYXRvbXMvU2Vla0J1dHRvblwiO1xuXG5jb25zdCBTRUVLX1RJTUUgPSAzMDtcblxuaW50ZXJmYWNlIFZvaWNlQnJvYWRjYXN0UGxheWJhY2tCb2R5UHJvcHMge1xuICAgIHBpcD86IGJvb2xlYW47XG4gICAgcGxheWJhY2s6IFZvaWNlQnJvYWRjYXN0UGxheWJhY2s7XG59XG5cbmV4cG9ydCBjb25zdCBWb2ljZUJyb2FkY2FzdFBsYXliYWNrQm9keTogUmVhY3QuRkM8Vm9pY2VCcm9hZGNhc3RQbGF5YmFja0JvZHlQcm9wcz4gPSAoeyBwaXAgPSBmYWxzZSwgcGxheWJhY2sgfSkgPT4ge1xuICAgIGNvbnN0IHsgdGltZXMsIGxpdmVuZXNzLCBwbGF5YmFja1N0YXRlLCByb29tLCBzZW5kZXIsIHRvZ2dsZSB9ID0gdXNlVm9pY2VCcm9hZGNhc3RQbGF5YmFjayhwbGF5YmFjayk7XG5cbiAgICBsZXQgc2Vla0JhY2t3YXJkQnV0dG9uOiBSZWFjdEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgICBsZXQgc2Vla0ZvcndhcmRCdXR0b246IFJlYWN0RWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gICAgaWYgKHBsYXliYWNrU3RhdGUgIT09IFZvaWNlQnJvYWRjYXN0UGxheWJhY2tTdGF0ZS5TdG9wcGVkKSB7XG4gICAgICAgIGNvbnN0IG9uU2Vla0JhY2t3YXJkQnV0dG9uQ2xpY2sgPSAoKTogdm9pZCA9PiB7XG4gICAgICAgICAgICBwbGF5YmFjay5za2lwVG8oTWF0aC5tYXgoMCwgdGltZXMucG9zaXRpb24gLSBTRUVLX1RJTUUpKTtcbiAgICAgICAgfTtcblxuICAgICAgICBzZWVrQmFja3dhcmRCdXR0b24gPSAoXG4gICAgICAgICAgICA8U2Vla0J1dHRvblxuICAgICAgICAgICAgICAgIGljb249e0JhY2szMHNJY29ufVxuICAgICAgICAgICAgICAgIGxhYmVsPXtfdChcInZvaWNlX2Jyb2FkY2FzdHwzMHNfYmFja3dhcmRcIil9XG4gICAgICAgICAgICAgICAgb25DbGljaz17b25TZWVrQmFja3dhcmRCdXR0b25DbGlja31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3Qgb25TZWVrRm9yd2FyZEJ1dHRvbkNsaWNrID0gKCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgcGxheWJhY2suc2tpcFRvKE1hdGgubWluKHRpbWVzLmR1cmF0aW9uLCB0aW1lcy5wb3NpdGlvbiArIFNFRUtfVElNRSkpO1xuICAgICAgICB9O1xuXG4gICAgICAgIHNlZWtGb3J3YXJkQnV0dG9uID0gKFxuICAgICAgICAgICAgPFNlZWtCdXR0b25cbiAgICAgICAgICAgICAgICBpY29uPXtGb3J3YXJkMzBzSWNvbn1cbiAgICAgICAgICAgICAgICBsYWJlbD17X3QoXCJ2b2ljZV9icm9hZGNhc3R8MzBzX2ZvcndhcmRcIil9XG4gICAgICAgICAgICAgICAgb25DbGljaz17b25TZWVrRm9yd2FyZEJ1dHRvbkNsaWNrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBjbGFzc2VzID0gY2xhc3NOYW1lcyh7XG4gICAgICAgIG14X1ZvaWNlQnJvYWRjYXN0Qm9keTogdHJ1ZSxcbiAgICAgICAgW1wibXhfVm9pY2VCcm9hZGNhc3RCb2R5LS1waXBcIl06IHBpcCxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbnRlbnQgPVxuICAgICAgICBwbGF5YmFja1N0YXRlID09PSBWb2ljZUJyb2FkY2FzdFBsYXliYWNrU3RhdGUuRXJyb3IgPyAoXG4gICAgICAgICAgICA8Vm9pY2VCcm9hZGNhc3RFcnJvciBtZXNzYWdlPXtwbGF5YmFjay5lcnJvck1lc3NhZ2V9IC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXhfVm9pY2VCcm9hZGNhc3RCb2R5X2NvbnRyb2xzXCI+XG4gICAgICAgICAgICAgICAgICAgIHtzZWVrQmFja3dhcmRCdXR0b259XG4gICAgICAgICAgICAgICAgICAgIDxWb2ljZUJyb2FkY2FzdFBsYXliYWNrQ29udHJvbCBzdGF0ZT17cGxheWJhY2tTdGF0ZX0gb25DbGljaz17dG9nZ2xlfSAvPlxuICAgICAgICAgICAgICAgICAgICB7c2Vla0ZvcndhcmRCdXR0b259XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPFNlZWtCYXIgcGxheWJhY2s9e3BsYXliYWNrfSAvPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXhfVm9pY2VCcm9hZGNhc3RCb2R5X3RpbWVyb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgPENsb2NrIHNlY29uZHM9e3RpbWVzLnBvc2l0aW9ufSAvPlxuICAgICAgICAgICAgICAgICAgICA8Q2xvY2sgc2Vjb25kcz17LXRpbWVzLnRpbWVMZWZ0fSAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3Nlc30+XG4gICAgICAgICAgICA8Vm9pY2VCcm9hZGNhc3RIZWFkZXJcbiAgICAgICAgICAgICAgICBsaW5rVG9Sb29tPXtwaXB9XG4gICAgICAgICAgICAgICAgbGl2ZT17bGl2ZW5lc3N9XG4gICAgICAgICAgICAgICAgbWljcm9waG9uZUxhYmVsPXtzZW5kZXI/Lm5hbWV9XG4gICAgICAgICAgICAgICAgcm9vbT17cm9vbX1cbiAgICAgICAgICAgICAgICBzaG93QnJvYWRjYXN0PXtwbGF5YmFja1N0YXRlICE9PSBWb2ljZUJyb2FkY2FzdFBsYXliYWNrU3RhdGUuQnVmZmVyaW5nfVxuICAgICAgICAgICAgICAgIHNob3dCdWZmZXJpbmc9e3BsYXliYWNrU3RhdGUgPT09IFZvaWNlQnJvYWRjYXN0UGxheWJhY2tTdGF0ZS5CdWZmZXJpbmd9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAge2NvbnRlbnR9XG4gICAgICAgIDwvZGl2PlxuICAgICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBUUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUUsQ0FBQSxHQUFBRixPQUFBO0FBT0EsSUFBQUcsMEJBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFlBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGVBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLGdCQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxNQUFBLEdBQUFSLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUSxRQUFBLEdBQUFULHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUyxXQUFBLEdBQUFULE9BQUE7QUF4QkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBb0JBLE1BQU1VLFNBQVMsR0FBRyxFQUFFO0FBT2IsTUFBTUMsMEJBQXFFLEdBQUdBLENBQUM7RUFBRUMsR0FBRyxHQUFHLEtBQUs7RUFBRUM7QUFBUyxDQUFDLEtBQUs7RUFDaEgsTUFBTTtJQUFFQyxLQUFLO0lBQUVDLFFBQVE7SUFBRUMsYUFBYTtJQUFFQyxJQUFJO0lBQUVDLE1BQU07SUFBRUM7RUFBTyxDQUFDLEdBQUcsSUFBQUMsb0RBQXlCLEVBQUNQLFFBQVEsQ0FBQztFQUVwRyxJQUFJUSxrQkFBdUMsR0FBRyxJQUFJO0VBQ2xELElBQUlDLGlCQUFzQyxHQUFHLElBQUk7RUFFakQsSUFBSU4sYUFBYSxLQUFLTyw2QkFBMkIsQ0FBQ0MsT0FBTyxFQUFFO0lBQ3ZELE1BQU1DLHlCQUF5QixHQUFHQSxDQUFBLEtBQVk7TUFDMUNaLFFBQVEsQ0FBQ2EsTUFBTSxDQUFDQyxJQUFJLENBQUNDLEdBQUcsQ0FBQyxDQUFDLEVBQUVkLEtBQUssQ0FBQ2UsUUFBUSxHQUFHbkIsU0FBUyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVEVyxrQkFBa0IsZ0JBQ2R2QixNQUFBLENBQUFnQyxPQUFBLENBQUFDLGFBQUEsQ0FBQ3RCLFdBQUEsQ0FBQXVCLFVBQVU7TUFDUEMsSUFBSSxFQUFFQyxpQkFBWTtNQUNsQkMsS0FBSyxFQUFFLElBQUFDLG1CQUFFLEVBQUMsOEJBQThCLENBQUU7TUFDMUNDLE9BQU8sRUFBRVo7SUFBMEIsQ0FDdEMsQ0FDSjtJQUVELE1BQU1hLHdCQUF3QixHQUFHQSxDQUFBLEtBQVk7TUFDekN6QixRQUFRLENBQUNhLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDWSxHQUFHLENBQUN6QixLQUFLLENBQUMwQixRQUFRLEVBQUUxQixLQUFLLENBQUNlLFFBQVEsR0FBR25CLFNBQVMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRFksaUJBQWlCLGdCQUNieEIsTUFBQSxDQUFBZ0MsT0FBQSxDQUFBQyxhQUFBLENBQUN0QixXQUFBLENBQUF1QixVQUFVO01BQ1BDLElBQUksRUFBRVEsb0JBQWU7TUFDckJOLEtBQUssRUFBRSxJQUFBQyxtQkFBRSxFQUFDLDZCQUE2QixDQUFFO01BQ3pDQyxPQUFPLEVBQUVDO0lBQXlCLENBQ3JDLENBQ0o7RUFDTDtFQUVBLE1BQU1JLE9BQU8sR0FBRyxJQUFBQyxtQkFBVSxFQUFDO0lBQ3ZCQyxxQkFBcUIsRUFBRSxJQUFJO0lBQzNCLENBQUMsNEJBQTRCLEdBQUdoQztFQUNwQyxDQUFDLENBQUM7RUFFRixNQUFNaUMsT0FBTyxHQUNUN0IsYUFBYSxLQUFLTyw2QkFBMkIsQ0FBQ3VCLEtBQUssZ0JBQy9DaEQsTUFBQSxDQUFBZ0MsT0FBQSxDQUFBQyxhQUFBLENBQUM3QixDQUFBLENBQUE2QyxtQkFBbUI7SUFBQ0MsT0FBTyxFQUFFbkMsUUFBUSxDQUFDb0M7RUFBYSxDQUFFLENBQUMsZ0JBRXZEbkQsTUFBQSxDQUFBZ0MsT0FBQSxDQUFBQyxhQUFBLENBQUFqQyxNQUFBLENBQUFnQyxPQUFBLENBQUFvQixRQUFBLHFCQUNJcEQsTUFBQSxDQUFBZ0MsT0FBQSxDQUFBQyxhQUFBO0lBQUtvQixTQUFTLEVBQUM7RUFBZ0MsR0FDMUM5QixrQkFBa0IsZUFDbkJ2QixNQUFBLENBQUFnQyxPQUFBLENBQUFDLGFBQUEsQ0FBQzdCLENBQUEsQ0FBQWtELDZCQUE2QjtJQUFDQyxLQUFLLEVBQUVyQyxhQUFjO0lBQUNxQixPQUFPLEVBQUVsQjtFQUFPLENBQUUsQ0FBQyxFQUN2RUcsaUJBQ0EsQ0FBQyxlQUNOeEIsTUFBQSxDQUFBZ0MsT0FBQSxDQUFBQyxhQUFBLENBQUN2QixRQUFBLENBQUFzQixPQUFPO0lBQUNqQixRQUFRLEVBQUVBO0VBQVMsQ0FBRSxDQUFDLGVBQy9CZixNQUFBLENBQUFnQyxPQUFBLENBQUFDLGFBQUE7SUFBS29CLFNBQVMsRUFBQztFQUErQixnQkFDMUNyRCxNQUFBLENBQUFnQyxPQUFBLENBQUFDLGFBQUEsQ0FBQ3hCLE1BQUEsQ0FBQXVCLE9BQUs7SUFBQ3dCLE9BQU8sRUFBRXhDLEtBQUssQ0FBQ2U7RUFBUyxDQUFFLENBQUMsZUFDbEMvQixNQUFBLENBQUFnQyxPQUFBLENBQUFDLGFBQUEsQ0FBQ3hCLE1BQUEsQ0FBQXVCLE9BQUs7SUFBQ3dCLE9BQU8sRUFBRSxDQUFDeEMsS0FBSyxDQUFDeUM7RUFBUyxDQUFFLENBQ2pDLENBQ1AsQ0FDTDtFQUVMLG9CQUNJekQsTUFBQSxDQUFBZ0MsT0FBQSxDQUFBQyxhQUFBO0lBQUtvQixTQUFTLEVBQUVUO0VBQVEsZ0JBQ3BCNUMsTUFBQSxDQUFBZ0MsT0FBQSxDQUFBQyxhQUFBLENBQUM3QixDQUFBLENBQUFzRCxvQkFBb0I7SUFDakJDLFVBQVUsRUFBRTdDLEdBQUk7SUFDaEI4QyxJQUFJLEVBQUUzQyxRQUFTO0lBQ2Y0QyxlQUFlLEVBQUV6QyxNQUFNLEVBQUUwQyxJQUFLO0lBQzlCM0MsSUFBSSxFQUFFQSxJQUFLO0lBQ1g0QyxhQUFhLEVBQUU3QyxhQUFhLEtBQUtPLDZCQUEyQixDQUFDdUMsU0FBVTtJQUN2RUMsYUFBYSxFQUFFL0MsYUFBYSxLQUFLTyw2QkFBMkIsQ0FBQ3VDO0VBQVUsQ0FDMUUsQ0FBQyxFQUNEakIsT0FDQSxDQUFDO0FBRWQsQ0FBQztBQUFDbUIsT0FBQSxDQUFBckQsMEJBQUEsR0FBQUEsMEJBQUEiLCJpZ25vcmVMaXN0IjpbXX0=