UNPKG

kepler.gl

Version:

kepler.gl is a webgl based application to visualize large scale location data in the browser

75 lines (74 loc) 13.5 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _typeof = require("@babel/runtime/helpers/typeof"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral")); var _react = _interopRequireWildcard(require("react")); var _styledComponents = _interopRequireDefault(require("styled-components")); var _classnames = _interopRequireDefault(require("classnames")); var _templateObject, _templateObject2, _templateObject3; // SPDX-License-Identifier: MIT // Copyright contributors to the kepler.gl project function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); } function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; } var PaletteWrapper = _styledComponents["default"].div.attrs({ className: 'color-range-palette__inner' })(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n border-radius: 2px;\n display: flex;\n flex-direction: row;\n flex-grow: 1;\n justify-content: space-between;\n overflow: hidden;\n"]))); var PaletteContainer = _styledComponents["default"].div.attrs(function (props) { return { className: (0, _classnames["default"])('color-range-palette', props.className) }; })(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n flex-grow: 1;\n border-width: ", ";\n border-style: solid;\n border-color: ", ";\n padding: ", ";\n border-radius: 4px;\n"])), function (props) { return props.$isColorChart ? '0px' : '1px'; }, function (props) { return props.$isSelected ? '#FFFFFF' : 'transparent'; }, function (props) { return props.$isColorChart ? '0px' : '4px'; }); var StyledColorBlock = _styledComponents["default"].div.attrs({ className: 'color-range-palette__block' })(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n"]))); var ColorPalette = function ColorPalette(_ref) { var _ref$colors = _ref.colors, colors = _ref$colors === void 0 ? [] : _ref$colors, _ref$height = _ref.height, height = _ref$height === void 0 ? 10 : _ref$height, _ref$colorWidths = _ref.colorWidths, colorWidths = _ref$colorWidths === void 0 ? null : _ref$colorWidths, _ref$className = _ref.className, className = _ref$className === void 0 ? '' : _ref$className, _ref$isSelected = _ref.isSelected, isSelected = _ref$isSelected === void 0 ? false : _ref$isSelected, _ref$isReversed = _ref.isReversed, isReversed = _ref$isReversed === void 0 ? false : _ref$isReversed; var paletteWrapperStyle = (0, _react.useMemo)(function () { return { height: height, transform: "scale(".concat(isReversed ? -1 : 1, ", 1)") }; }, [height, isReversed]); return /*#__PURE__*/_react["default"].createElement(PaletteContainer, { className: className, $isSelected: isSelected, $isColorChart: Boolean(colorWidths) }, /*#__PURE__*/_react["default"].createElement(PaletteWrapper, { style: paletteWrapperStyle }, colors.map(function (color, index) { return colorWidths && colorWidths[index] ? /*#__PURE__*/_react["default"].createElement(StyledColorBlock, { key: "".concat(color, "-").concat(index), style: { backgroundColor: String(color), width: colorWidths[index] } }) : /*#__PURE__*/_react["default"].createElement(StyledColorBlock, { key: "".concat(color, "-").concat(index), style: { backgroundColor: String(color) } }); }))); }; var _default = exports["default"] = ColorPalette; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY2xhc3NuYW1lcyIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiUGFsZXR0ZVdyYXBwZXIiLCJzdHlsZWQiLCJkaXYiLCJhdHRycyIsImNsYXNzTmFtZSIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwiUGFsZXR0ZUNvbnRhaW5lciIsInByb3BzIiwiY2xhc3NuYW1lcyIsIiRpc0NvbG9yQ2hhcnQiLCIkaXNTZWxlY3RlZCIsIlN0eWxlZENvbG9yQmxvY2siLCJDb2xvclBhbGV0dGUiLCJfcmVmIiwiX3JlZiRjb2xvcnMiLCJjb2xvcnMiLCJfcmVmJGhlaWdodCIsImhlaWdodCIsIl9yZWYkY29sb3JXaWR0aHMiLCJjb2xvcldpZHRocyIsIl9yZWYkY2xhc3NOYW1lIiwiX3JlZiRpc1NlbGVjdGVkIiwiaXNTZWxlY3RlZCIsIl9yZWYkaXNSZXZlcnNlZCIsImlzUmV2ZXJzZWQiLCJwYWxldHRlV3JhcHBlclN0eWxlIiwidXNlTWVtbyIsInRyYW5zZm9ybSIsImNvbmNhdCIsImNyZWF0ZUVsZW1lbnQiLCJCb29sZWFuIiwic3R5bGUiLCJtYXAiLCJjb2xvciIsImluZGV4Iiwia2V5IiwiYmFja2dyb3VuZENvbG9yIiwiU3RyaW5nIiwid2lkdGgiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2lkZS1wYW5lbC9sYXllci1wYW5lbC9jb2xvci1wYWxldHRlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHt1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge0hleENvbG9yLCBSR0JDb2xvcn0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQgc3R5bGVkLCB7SVN0eWxlZENvbXBvbmVudH0gZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQge0Jhc2VDb21wb25lbnRQcm9wc30gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG50eXBlIENvbG9yUGFsZXR0ZVByb3BzID0gQmFzZUNvbXBvbmVudFByb3BzICYge1xuICBjb2xvcnM6IFJHQkNvbG9yIHwgSGV4Q29sb3JbXTtcbiAgY29sb3JXaWR0aHM/OiBudW1iZXJbXSB8IG51bGw7XG4gIGhlaWdodD86IG51bWJlcjtcbiAgaXNTZWxlY3RlZD86IGJvb2xlYW47XG4gIGlzUmV2ZXJzZWQ/OiBib29sZWFuO1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG59O1xuXG5jb25zdCBQYWxldHRlV3JhcHBlciA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdjb2xvci1yYW5nZS1wYWxldHRlX19pbm5lcidcbn0pYFxuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtZ3JvdzogMTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuYDtcblxuZXhwb3J0IHR5cGUgUGFsZXR0ZUNvbnRhaW5lclByb3BzID0gQmFzZUNvbXBvbmVudFByb3BzICYge1xuICAkaXNDb2xvckNoYXJ0PzogYm9vbGVhbjtcbiAgJGlzU2VsZWN0ZWQ/OiBib29sZWFuO1xufTtcblxuY29uc3QgUGFsZXR0ZUNvbnRhaW5lcjogSVN0eWxlZENvbXBvbmVudDwnd2ViJywgUGFsZXR0ZUNvbnRhaW5lclByb3BzPiA9IHN0eWxlZC5kaXYuYXR0cnMoXG4gIHByb3BzID0+ICh7XG4gICAgY2xhc3NOYW1lOiBjbGFzc25hbWVzKCdjb2xvci1yYW5nZS1wYWxldHRlJywgcHJvcHMuY2xhc3NOYW1lKVxuICB9KVxuKTxQYWxldHRlQ29udGFpbmVyUHJvcHM+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWdyb3c6IDE7XG4gIGJvcmRlci13aWR0aDogJHtwcm9wcyA9PiAocHJvcHMuJGlzQ29sb3JDaGFydCA/ICcwcHgnIDogJzFweCcpfTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IChwcm9wcy4kaXNTZWxlY3RlZCA/ICcjRkZGRkZGJyA6ICd0cmFuc3BhcmVudCcpfTtcbiAgcGFkZGluZzogJHtwcm9wcyA9PiAocHJvcHMuJGlzQ29sb3JDaGFydCA/ICcwcHgnIDogJzRweCcpfTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuYDtcblxuY29uc3QgU3R5bGVkQ29sb3JCbG9jayA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdjb2xvci1yYW5nZS1wYWxldHRlX19ibG9jaydcbn0pYFxuICBmbGV4LWdyb3c6IDE7XG5gO1xuXG5jb25zdCBDb2xvclBhbGV0dGUgPSAoe1xuICBjb2xvcnMgPSBbXSxcbiAgaGVpZ2h0ID0gMTAsXG4gIGNvbG9yV2lkdGhzID0gbnVsbCxcbiAgY2xhc3NOYW1lID0gJycsXG4gIGlzU2VsZWN0ZWQgPSBmYWxzZSxcbiAgaXNSZXZlcnNlZCA9IGZhbHNlXG59OiBDb2xvclBhbGV0dGVQcm9wcykgPT4ge1xuICBjb25zdCBwYWxldHRlV3JhcHBlclN0eWxlID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoe2hlaWdodCwgdHJhbnNmb3JtOiBgc2NhbGUoJHtpc1JldmVyc2VkID8gLTEgOiAxfSwgMSlgfSksXG4gICAgW2hlaWdodCwgaXNSZXZlcnNlZF1cbiAgKTtcbiAgcmV0dXJuIChcbiAgICA8UGFsZXR0ZUNvbnRhaW5lclxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAkaXNTZWxlY3RlZD17aXNTZWxlY3RlZH1cbiAgICAgICRpc0NvbG9yQ2hhcnQ9e0Jvb2xlYW4oY29sb3JXaWR0aHMpfVxuICAgID5cbiAgICAgIDxQYWxldHRlV3JhcHBlciBzdHlsZT17cGFsZXR0ZVdyYXBwZXJTdHlsZX0+XG4gICAgICAgIHtjb2xvcnMubWFwKChjb2xvcjogbnVtYmVyIHwgc3RyaW5nLCBpbmRleDogbnVtYmVyKSA9PlxuICAgICAgICAgIGNvbG9yV2lkdGhzICYmIGNvbG9yV2lkdGhzW2luZGV4XSA/IChcbiAgICAgICAgICAgIDxTdHlsZWRDb2xvckJsb2NrXG4gICAgICAgICAgICAgIGtleT17YCR7Y29sb3J9LSR7aW5kZXh9YH1cbiAgICAgICAgICAgICAgc3R5bGU9e3tiYWNrZ3JvdW5kQ29sb3I6IFN0cmluZyhjb2xvciksIHdpZHRoOiBjb2xvcldpZHRoc1tpbmRleF19fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPFN0eWxlZENvbG9yQmxvY2sga2V5PXtgJHtjb2xvcn0tJHtpbmRleH1gfSBzdHlsZT17e2JhY2tncm91bmRDb2xvcjogU3RyaW5nKGNvbG9yKX19IC8+XG4gICAgICAgICAgKVxuICAgICAgICApfVxuICAgICAgPC9QYWxldHRlV3JhcHBlcj5cbiAgICA8L1BhbGV0dGVDb250YWluZXI+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBDb2xvclBhbGV0dGU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLGlCQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFBb0MsSUFBQUksZUFBQSxFQUFBQyxnQkFBQSxFQUFBQyxnQkFBQSxFQU5wQztBQUNBO0FBQUEsU0FBQUMseUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFULHdCQUFBUyxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUksVUFBQSxTQUFBSixDQUFBLGVBQUFBLENBQUEsZ0JBQUFLLE9BQUEsQ0FBQUwsQ0FBQSwwQkFBQUEsQ0FBQSxzQkFBQUEsQ0FBQSxRQUFBRyxDQUFBLEdBQUFKLHdCQUFBLENBQUFHLENBQUEsT0FBQUMsQ0FBQSxJQUFBQSxDQUFBLENBQUFHLEdBQUEsQ0FBQU4sQ0FBQSxVQUFBRyxDQUFBLENBQUFJLEdBQUEsQ0FBQVAsQ0FBQSxPQUFBUSxDQUFBLEtBQUFDLFNBQUEsVUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxDQUFBLElBQUFkLENBQUEsb0JBQUFjLENBQUEsT0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFoQixDQUFBLEVBQUFjLENBQUEsU0FBQUcsQ0FBQSxHQUFBUCxDQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQWIsQ0FBQSxFQUFBYyxDQUFBLFVBQUFHLENBQUEsS0FBQUEsQ0FBQSxDQUFBVixHQUFBLElBQUFVLENBQUEsQ0FBQUMsR0FBQSxJQUFBUCxNQUFBLENBQUFDLGNBQUEsQ0FBQUosQ0FBQSxFQUFBTSxDQUFBLEVBQUFHLENBQUEsSUFBQVQsQ0FBQSxDQUFBTSxDQUFBLElBQUFkLENBQUEsQ0FBQWMsQ0FBQSxZQUFBTixDQUFBLGNBQUFSLENBQUEsRUFBQUcsQ0FBQSxJQUFBQSxDQUFBLENBQUFlLEdBQUEsQ0FBQWxCLENBQUEsRUFBQVEsQ0FBQSxHQUFBQSxDQUFBO0FBaUJBLElBQU1XLGNBQWMsR0FBR0MsNEJBQU0sQ0FBQ0MsR0FBRyxDQUFDQyxLQUFLLENBQUM7RUFDdENDLFNBQVMsRUFBRTtBQUNiLENBQUMsQ0FBQyxDQUFBM0IsZUFBQSxLQUFBQSxlQUFBLE9BQUE0Qix1QkFBQSxnS0FPRDtBQU9ELElBQU1DLGdCQUFnRSxHQUFHTCw0QkFBTSxDQUFDQyxHQUFHLENBQUNDLEtBQUssQ0FDdkYsVUFBQUksS0FBSztFQUFBLE9BQUs7SUFDUkgsU0FBUyxFQUFFLElBQUFJLHNCQUFVLEVBQUMscUJBQXFCLEVBQUVELEtBQUssQ0FBQ0gsU0FBUztFQUM5RCxDQUFDO0FBQUEsQ0FDSCxDQUFDLENBQUExQixnQkFBQSxLQUFBQSxnQkFBQSxPQUFBMkIsdUJBQUEseUtBR2lCLFVBQUFFLEtBQUs7RUFBQSxPQUFLQSxLQUFLLENBQUNFLGFBQWEsR0FBRyxLQUFLLEdBQUcsS0FBSztBQUFBLENBQUMsRUFFOUMsVUFBQUYsS0FBSztFQUFBLE9BQUtBLEtBQUssQ0FBQ0csV0FBVyxHQUFHLFNBQVMsR0FBRyxhQUFhO0FBQUEsQ0FBQyxFQUM3RCxVQUFBSCxLQUFLO0VBQUEsT0FBS0EsS0FBSyxDQUFDRSxhQUFhLEdBQUcsS0FBSyxHQUFHLEtBQUs7QUFBQSxDQUFDLENBRTFEO0FBRUQsSUFBTUUsZ0JBQWdCLEdBQUdWLDRCQUFNLENBQUNDLEdBQUcsQ0FBQ0MsS0FBSyxDQUFDO0VBQ3hDQyxTQUFTLEVBQUU7QUFDYixDQUFDLENBQUMsQ0FBQXpCLGdCQUFBLEtBQUFBLGdCQUFBLE9BQUEwQix1QkFBQSx1Q0FFRDtBQUVELElBQU1PLFlBQVksR0FBRyxTQUFmQSxZQUFZQSxDQUFBQyxJQUFBLEVBT087RUFBQSxJQUFBQyxXQUFBLEdBQUFELElBQUEsQ0FOdkJFLE1BQU07SUFBTkEsTUFBTSxHQUFBRCxXQUFBLGNBQUcsRUFBRSxHQUFBQSxXQUFBO0lBQUFFLFdBQUEsR0FBQUgsSUFBQSxDQUNYSSxNQUFNO0lBQU5BLE1BQU0sR0FBQUQsV0FBQSxjQUFHLEVBQUUsR0FBQUEsV0FBQTtJQUFBRSxnQkFBQSxHQUFBTCxJQUFBLENBQ1hNLFdBQVc7SUFBWEEsV0FBVyxHQUFBRCxnQkFBQSxjQUFHLElBQUksR0FBQUEsZ0JBQUE7SUFBQUUsY0FBQSxHQUFBUCxJQUFBLENBQ2xCVCxTQUFTO0lBQVRBLFNBQVMsR0FBQWdCLGNBQUEsY0FBRyxFQUFFLEdBQUFBLGNBQUE7SUFBQUMsZUFBQSxHQUFBUixJQUFBLENBQ2RTLFVBQVU7SUFBVkEsVUFBVSxHQUFBRCxlQUFBLGNBQUcsS0FBSyxHQUFBQSxlQUFBO0lBQUFFLGVBQUEsR0FBQVYsSUFBQSxDQUNsQlcsVUFBVTtJQUFWQSxVQUFVLEdBQUFELGVBQUEsY0FBRyxLQUFLLEdBQUFBLGVBQUE7RUFFbEIsSUFBTUUsbUJBQW1CLEdBQUcsSUFBQUMsY0FBTyxFQUNqQztJQUFBLE9BQU87TUFBQ1QsTUFBTSxFQUFOQSxNQUFNO01BQUVVLFNBQVMsV0FBQUMsTUFBQSxDQUFXSixVQUFVLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUFNLENBQUM7RUFBQSxDQUFDLEVBQy9ELENBQUNQLE1BQU0sRUFBRU8sVUFBVSxDQUNyQixDQUFDO0VBQ0Qsb0JBQ0VyRCxNQUFBLFlBQUEwRCxhQUFBLENBQUN2QixnQkFBZ0I7SUFDZkYsU0FBUyxFQUFFQSxTQUFVO0lBQ3JCTSxXQUFXLEVBQUVZLFVBQVc7SUFDeEJiLGFBQWEsRUFBRXFCLE9BQU8sQ0FBQ1gsV0FBVztFQUFFLGdCQUVwQ2hELE1BQUEsWUFBQTBELGFBQUEsQ0FBQzdCLGNBQWM7SUFBQytCLEtBQUssRUFBRU47RUFBb0IsR0FDeENWLE1BQU0sQ0FBQ2lCLEdBQUcsQ0FBQyxVQUFDQyxLQUFzQixFQUFFQyxLQUFhO0lBQUEsT0FDaERmLFdBQVcsSUFBSUEsV0FBVyxDQUFDZSxLQUFLLENBQUMsZ0JBQy9CL0QsTUFBQSxZQUFBMEQsYUFBQSxDQUFDbEIsZ0JBQWdCO01BQ2Z3QixHQUFHLEtBQUFQLE1BQUEsQ0FBS0ssS0FBSyxPQUFBTCxNQUFBLENBQUlNLEtBQUssQ0FBRztNQUN6QkgsS0FBSyxFQUFFO1FBQUNLLGVBQWUsRUFBRUMsTUFBTSxDQUFDSixLQUFLLENBQUM7UUFBRUssS0FBSyxFQUFFbkIsV0FBVyxDQUFDZSxLQUFLO01BQUM7SUFBRSxDQUNwRSxDQUFDLGdCQUVGL0QsTUFBQSxZQUFBMEQsYUFBQSxDQUFDbEIsZ0JBQWdCO01BQUN3QixHQUFHLEtBQUFQLE1BQUEsQ0FBS0ssS0FBSyxPQUFBTCxNQUFBLENBQUlNLEtBQUssQ0FBRztNQUFDSCxLQUFLLEVBQUU7UUFBQ0ssZUFBZSxFQUFFQyxNQUFNLENBQUNKLEtBQUs7TUFBQztJQUFFLENBQUUsQ0FDdkY7RUFBQSxDQUNILENBQ2MsQ0FDQSxDQUFDO0FBRXZCLENBQUM7QUFBQyxJQUFBTSxRQUFBLEdBQUFDLE9BQUEsY0FFYTVCLFlBQVkiLCJpZ25vcmVMaXN0IjpbXX0=