adui
Version:
<div> <img src="https://wxa.wxs.qq.com/mpweb/delivery/legacy/wxadtouch/upload/t1/od834zef_52939fc6.png" style="margin:40px 0 0 -8px; background-color: #fcfcfc; box-shadow: none;" /> </div>
140 lines (119 loc) • 17.7 kB
JavaScript
var _excluded = ["children", "className", "label", "labelAlign", "labelHelper", "labelHelperIcon", "labelHelperProps", "labelSize", "labelStyle", "style"];
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
import React, { useContext, useMemo } from "react";
import PropTypes from "prop-types";
import classNames from "classnames";
import Icon from "../icon";
import Popover from "../popover";
import { FormContext } from "./Context";
import "./style";
var prefix = "adui-channels-form";
var Item = function Item(_ref) {
var children = _ref.children,
className = _ref.className,
label = _ref.label,
labelAlign = _ref.labelAlign,
labelHelper = _ref.labelHelper,
labelHelperIcon = _ref.labelHelperIcon,
labelHelperProps = _ref.labelHelperProps,
labelSize = _ref.labelSize,
labelStyle = _ref.labelStyle,
style = _ref.style,
otherProps = _objectWithoutProperties(_ref, _excluded);
var _useContext = useContext(FormContext),
labelAlignContext = _useContext.labelAlign,
itemStyle = _useContext.itemStyle,
labelStyleContext = _useContext.labelStyle,
labelSizeContext = _useContext.labelSize;
var classSet = classNames(className, "".concat(prefix, "-item"));
var align = labelAlign || labelAlignContext;
switch (align) {
case "left":
align = "flex-start";
break;
case "right":
align = "flex-end";
break;
case "center":
align = "center";
break;
default:
}
var alignStyle = align ? {
justifyContent: align
} : {};
var labelSizeFinal = labelSize || labelSizeContext;
var labelFinal = useMemo(function () {
var getFormatStrLeng = function getFormatStrLeng(str) {
var len = str.length;
var realLength = 0;
var charCode = -1;
for (var i = 0; i < len; i += 1) {
charCode = str.charCodeAt(i);
if (charCode >= 0 && charCode <= 128) {
realLength += 0.5;
} else {
realLength += 1;
}
}
return Math.ceil(realLength);
};
if (typeof label === "string" && labelSizeFinal && getFormatStrLeng(label) - labelSizeFinal === 1) {
return "".concat(label.slice(0, 4), "\n").concat(label.slice(4));
}
return label;
}, [label]);
return React.createElement("div", _extends({
className: classSet,
style: _objectSpread(_objectSpread({}, itemStyle), style)
}, otherProps), !!label && React.createElement("div", {
className: "".concat(prefix, "-label"),
style: _objectSpread(_objectSpread(_objectSpread({
width: "".concat(labelSizeFinal, "em")
}, alignStyle), labelStyleContext), labelStyle)
}, labelFinal, !!labelHelper && React.createElement(Popover, _extends({
popup: labelHelper,
alignEdge: false,
placement: "bottom"
}, labelHelperProps), React.createElement(Icon, {
icon: labelHelperIcon || "help-circle",
interactive: true,
color: "var(--gray-600)",
style: {
marginLeft: "4px"
}
}))), React.createElement("div", {
className: "".concat(prefix, "-control")
}, children));
};
Item.propTypes = {
children: PropTypes.node,
className: PropTypes.string,
label: PropTypes.node,
labelAlign: PropTypes.oneOf([null, "left", "center", "right"]),
labelHelper: PropTypes.node,
labelHelperIcon: PropTypes.any,
labelHelperProps: PropTypes.object,
labelSize: PropTypes.number,
labelStyle: PropTypes.object,
style: PropTypes.object
};
Item.defaultProps = {
children: null,
className: undefined,
label: null,
labelAlign: null,
labelHelper: null,
labelHelperIcon: "help-circle",
labelHelperProps: {},
labelSize: null,
labelStyle: {},
style: {}
};
export default Item;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZUNvbnRleHQiLCJ1c2VNZW1vIiwiUHJvcFR5cGVzIiwiY2xhc3NOYW1lcyIsIkljb24iLCJQb3BvdmVyIiwiRm9ybUNvbnRleHQiLCJwcmVmaXgiLCJJdGVtIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJsYWJlbCIsImxhYmVsQWxpZ24iLCJsYWJlbEhlbHBlciIsImxhYmVsSGVscGVySWNvbiIsImxhYmVsSGVscGVyUHJvcHMiLCJsYWJlbFNpemUiLCJsYWJlbFN0eWxlIiwic3R5bGUiLCJvdGhlclByb3BzIiwibGFiZWxBbGlnbkNvbnRleHQiLCJpdGVtU3R5bGUiLCJsYWJlbFN0eWxlQ29udGV4dCIsImxhYmVsU2l6ZUNvbnRleHQiLCJjbGFzc1NldCIsImFsaWduIiwiYWxpZ25TdHlsZSIsImp1c3RpZnlDb250ZW50IiwibGFiZWxTaXplRmluYWwiLCJsYWJlbEZpbmFsIiwiZ2V0Rm9ybWF0U3RyTGVuZyIsInN0ciIsImxlbiIsImxlbmd0aCIsInJlYWxMZW5ndGgiLCJjaGFyQ29kZSIsImkiLCJjaGFyQ29kZUF0IiwiTWF0aCIsImNlaWwiLCJzbGljZSIsIndpZHRoIiwibWFyZ2luTGVmdCIsInByb3BUeXBlcyIsIm5vZGUiLCJzdHJpbmciLCJvbmVPZiIsImFueSIsIm9iamVjdCIsIm51bWJlciIsImRlZmF1bHRQcm9wcyIsInVuZGVmaW5lZCJdLCJzb3VyY2VzIjpbIi4uLy4uL2NvbXBvbmVudHMvY2hhbm5lbHMtZm9ybS9JdGVtLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlQ29udGV4dCwgdXNlTWVtbyB9IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCJcbmltcG9ydCBjbGFzc05hbWVzIGZyb20gXCJjbGFzc25hbWVzXCJcbmltcG9ydCBJY29uLCB7IEljb25OYW1lcyB9IGZyb20gXCIuLi9pY29uXCJcbmltcG9ydCBQb3BvdmVyLCB7IElQb3BvdmVyUHJvcHMgfSBmcm9tIFwiLi4vcG9wb3ZlclwiXG5pbXBvcnQgeyBGb3JtQ29udGV4dCB9IGZyb20gXCIuL0NvbnRleHRcIlxuaW1wb3J0IFwiLi9zdHlsZVwiXG5cbmNvbnN0IHByZWZpeCA9IFwiYWR1aS1jaGFubmVscy1mb3JtXCJcblxuZXhwb3J0IGludGVyZmFjZSBJSXRlbVByb3BzIHtcbiAgW2tleTogc3RyaW5nXTogYW55XG4gIC8qKlxuICAgKiDlrZDoioLngrlcbiAgICovXG4gIGNoaWxkcmVuPzogUmVhY3QuUmVhY3ROb2RlXG4gIC8qKlxuICAgKiDpmYTliqDnsbvlkI1cbiAgICovXG4gIGNsYXNzTmFtZT86IHN0cmluZ1xuICAvKipcbiAgICogbGFiZWxcbiAgICovXG4gIGxhYmVsPzogUmVhY3QuUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBsYWJlbCDlrZfnrKblr7npvZDmlrnlvI9cbiAgICovXG4gIGxhYmVsQWxpZ24/OiBcImxlZnRcIiB8IFwiY2VudGVyXCIgfCBcInJpZ2h0XCIgfCBudWxsXG4gIC8qKlxuICAgKiBsYWJlbCDop6Pph4rlhoXlrrlcbiAgICovXG4gIGxhYmVsSGVscGVyPzogUmVhY3QuUmVhY3ROb2RlXG4gIC8qKlxuICAgKiBsYWJlbCDop6Pph4rlhoXlrrnnmoQgSWNvblxuICAgKi9cbiAgbGFiZWxIZWxwZXJJY29uPzogSWNvbk5hbWVzXG4gIC8qKlxuICAgKiBsYWJlbCDop6Pph4rlhoXlrrnmiYDkvb/nlKjnmoQgUG9wb3ZlciDnmoQgUHJvcHNcbiAgICovXG4gIGxhYmVsSGVscGVyUHJvcHM/OiBJUG9wb3ZlclByb3BzXG4gIC8qKlxuICAgKiBsYWJlbCDlrZfnrKbmlbDvvIxGb3JtIOS8muS7pSBlbSDljZXkvY3orr7nva4gbGFiZWwg5a695bqmXG4gICAqL1xuICBsYWJlbFNpemU/OiBudW1iZXIgfCBudWxsXG4gIC8qKlxuICAgKiBsYWJlbCBzdHlsZVxuICAgKi9cbiAgbGFiZWxTdHlsZT86IFJlYWN0LkNTU1Byb3BlcnRpZXNcbiAgLyoqXG4gICAqIOmZhOWKoCBzdHlsZVxuICAgKi9cbiAgc3R5bGU/OiBSZWFjdC5DU1NQcm9wZXJ0aWVzXG59XG5cbi8qKlxuICog6KGo5Y2VIGl0ZW1cbiAqL1xuY29uc3QgSXRlbTogUmVhY3QuRkM8SUl0ZW1Qcm9wcz4gPSAoe1xuICBjaGlsZHJlbixcbiAgY2xhc3NOYW1lLFxuICBsYWJlbCxcbiAgbGFiZWxBbGlnbixcbiAgbGFiZWxIZWxwZXIsXG4gIGxhYmVsSGVscGVySWNvbixcbiAgbGFiZWxIZWxwZXJQcm9wcyxcbiAgbGFiZWxTaXplLFxuICBsYWJlbFN0eWxlLFxuICBzdHlsZSxcbiAgLi4ub3RoZXJQcm9wc1xufTogSUl0ZW1Qcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgbGFiZWxBbGlnbjogbGFiZWxBbGlnbkNvbnRleHQsXG4gICAgaXRlbVN0eWxlLFxuICAgIGxhYmVsU3R5bGU6IGxhYmVsU3R5bGVDb250ZXh0LFxuICAgIGxhYmVsU2l6ZTogbGFiZWxTaXplQ29udGV4dCxcbiAgfSA9IHVzZUNvbnRleHQoRm9ybUNvbnRleHQpXG5cbiAgY29uc3QgY2xhc3NTZXQgPSBjbGFzc05hbWVzKGNsYXNzTmFtZSwgYCR7cHJlZml4fS1pdGVtYClcblxuICBsZXQgYWxpZ246IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwgPSBsYWJlbEFsaWduIHx8IGxhYmVsQWxpZ25Db250ZXh0XG4gIHN3aXRjaCAoYWxpZ24pIHtcbiAgICBjYXNlIFwibGVmdFwiOlxuICAgICAgYWxpZ24gPSBcImZsZXgtc3RhcnRcIlxuICAgICAgYnJlYWtcbiAgICBjYXNlIFwicmlnaHRcIjpcbiAgICAgIGFsaWduID0gXCJmbGV4LWVuZFwiXG4gICAgICBicmVha1xuICAgIGNhc2UgXCJjZW50ZXJcIjpcbiAgICAgIGFsaWduID0gXCJjZW50ZXJcIlxuICAgICAgYnJlYWtcbiAgICBkZWZhdWx0OlxuICB9XG5cbiAgY29uc3QgYWxpZ25TdHlsZSA9IGFsaWduID8geyBqdXN0aWZ5Q29udGVudDogYWxpZ24gfSA6IHt9XG4gIGNvbnN0IGxhYmVsU2l6ZUZpbmFsID0gbGFiZWxTaXplIHx8IGxhYmVsU2l6ZUNvbnRleHRcblxuICAvKipcbiAgICog5aaC5p6cIGxhYmVsIOS4uiB0ZXh077yM5YiZ6Ziy5q2i5LiA5Liq5a2X5o2i6KGM55qE6Zeu6aKYXG4gICAqL1xuICBjb25zdCBsYWJlbEZpbmFsID0gdXNlTWVtbygoKTogUmVhY3QuUmVhY3ROb2RlID0+IHtcbiAgICBjb25zdCBnZXRGb3JtYXRTdHJMZW5nID0gKHN0cjogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBsZW4gPSBzdHIubGVuZ3RoXG4gICAgICBsZXQgcmVhbExlbmd0aCA9IDBcbiAgICAgIGxldCBjaGFyQ29kZSA9IC0xXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbjsgaSArPSAxKSB7XG4gICAgICAgIGNoYXJDb2RlID0gc3RyLmNoYXJDb2RlQXQoaSlcbiAgICAgICAgaWYgKGNoYXJDb2RlID49IDAgJiYgY2hhckNvZGUgPD0gMTI4KSB7XG4gICAgICAgICAgcmVhbExlbmd0aCArPSAwLjVcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZWFsTGVuZ3RoICs9IDFcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIE1hdGguY2VpbChyZWFsTGVuZ3RoKVxuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHR5cGVvZiBsYWJlbCA9PT0gXCJzdHJpbmdcIiAmJlxuICAgICAgbGFiZWxTaXplRmluYWwgJiZcbiAgICAgIGdldEZvcm1hdFN0ckxlbmcobGFiZWwpIC0gbGFiZWxTaXplRmluYWwgPT09IDFcbiAgICApIHtcbiAgICAgIHJldHVybiBgJHtsYWJlbC5zbGljZSgwLCA0KX1cXG4ke2xhYmVsLnNsaWNlKDQpfWBcbiAgICB9XG4gICAgcmV0dXJuIGxhYmVsXG4gIH0sIFtsYWJlbF0pXG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2NsYXNzU2V0fVxuICAgICAgc3R5bGU9e3tcbiAgICAgICAgLi4uaXRlbVN0eWxlLFxuICAgICAgICAuLi5zdHlsZSxcbiAgICAgIH19XG4gICAgICB7Li4ub3RoZXJQcm9wc31cbiAgICA+XG4gICAgICB7ISFsYWJlbCAmJiAoXG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzc05hbWU9e2Ake3ByZWZpeH0tbGFiZWxgfVxuICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICB3aWR0aDogYCR7bGFiZWxTaXplRmluYWx9ZW1gLFxuICAgICAgICAgICAgLi4uYWxpZ25TdHlsZSxcbiAgICAgICAgICAgIC4uLmxhYmVsU3R5bGVDb250ZXh0LFxuICAgICAgICAgICAgLi4ubGFiZWxTdHlsZSxcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAge2xhYmVsRmluYWx9XG4gICAgICAgICAgeyEhbGFiZWxIZWxwZXIgJiYgKFxuICAgICAgICAgICAgPFBvcG92ZXJcbiAgICAgICAgICAgICAgcG9wdXA9e2xhYmVsSGVscGVyfVxuICAgICAgICAgICAgICBhbGlnbkVkZ2U9e2ZhbHNlfVxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxuICAgICAgICAgICAgICB7Li4ubGFiZWxIZWxwZXJQcm9wc31cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEljb25cbiAgICAgICAgICAgICAgICBpY29uPXtsYWJlbEhlbHBlckljb24gfHwgXCJoZWxwLWNpcmNsZVwifVxuICAgICAgICAgICAgICAgIGludGVyYWN0aXZlXG4gICAgICAgICAgICAgICAgY29sb3I9XCJ2YXIoLS1ncmF5LTYwMClcIlxuICAgICAgICAgICAgICAgIHN0eWxlPXt7IG1hcmdpbkxlZnQ6IFwiNHB4XCIgfX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvUG9wb3Zlcj5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17YCR7cHJlZml4fS1jb250cm9sYH0+e2NoaWxkcmVufTwvZGl2PlxuICAgIDwvZGl2PlxuICApXG59XG5cbkl0ZW0ucHJvcFR5cGVzID0ge1xuICAvKipcbiAgICog5a2Q6IqC54K5XG4gICAqL1xuICBjaGlsZHJlbjogUHJvcFR5cGVzLm5vZGUsXG4gIC8qKlxuICAgKiDpmYTliqDnsbvlkI1cbiAgICovXG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgLyoqXG4gICAqIGxhYmVsXG4gICAqL1xuICBsYWJlbDogUHJvcFR5cGVzLm5vZGUsXG4gIC8qKlxuICAgKiBsYWJlbCDlrZfnrKblr7npvZDmlrnlvI9cbiAgICovXG4gIGxhYmVsQWxpZ246IFByb3BUeXBlcy5vbmVPZihbbnVsbCwgXCJsZWZ0XCIsIFwiY2VudGVyXCIsIFwicmlnaHRcIl0pLFxuICAvKipcbiAgICogbGFiZWwg6Kej6YeK5YaF5a65XG4gICAqL1xuICBsYWJlbEhlbHBlcjogUHJvcFR5cGVzLm5vZGUsXG4gIC8qKlxuICAgKiBsYWJlbCDop6Pph4rlhoXlrrnnmoQgSWNvblxuICAgKi9cbiAgbGFiZWxIZWxwZXJJY29uOiBQcm9wVHlwZXMuYW55LFxuICAvKipcbiAgICogbGFiZWwg6Kej6YeK5YaF5a655omA5L2/55So55qEIFBvcG92ZXIg55qEIFByb3BzXG4gICAqL1xuICBsYWJlbEhlbHBlclByb3BzOiBQcm9wVHlwZXMub2JqZWN0LFxuICAvKipcbiAgICogbGFiZWwg5a2X56ym5pWw77yMRm9ybSDkvJrku6UgZW0g5Y2V5L2N6K6+572uIGxhYmVsIOWuveW6plxuICAgKi9cbiAgbGFiZWxTaXplOiBQcm9wVHlwZXMubnVtYmVyLFxuICAvKipcbiAgICogbGFiZWwgc3R5bGVcbiAgICovXG4gIGxhYmVsU3R5bGU6IFByb3BUeXBlcy5vYmplY3QsXG4gIC8qKlxuICAgKiDpmYTliqAgc3R5bGVcbiAgICovXG4gIHN0eWxlOiBQcm9wVHlwZXMub2JqZWN0LFxufVxuXG5JdGVtLmRlZmF1bHRQcm9wcyA9IHtcbiAgY2hpbGRyZW46IG51bGwsXG4gIGNsYXNzTmFtZTogdW5kZWZpbmVkLFxuICBsYWJlbDogbnVsbCxcbiAgbGFiZWxBbGlnbjogbnVsbCxcbiAgbGFiZWxIZWxwZXI6IG51bGwsXG4gIGxhYmVsSGVscGVySWNvbjogXCJoZWxwLWNpcmNsZVwiLFxuICBsYWJlbEhlbHBlclByb3BzOiB7fSxcbiAgbGFiZWxTaXplOiBudWxsLFxuICBsYWJlbFN0eWxlOiB7fSxcbiAgc3R5bGU6IHt9LFxufVxuXG5leHBvcnQgZGVmYXVsdCBJdGVtXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBT0EsS0FBUCxJQUFnQkMsVUFBaEIsRUFBNEJDLE9BQTVCLFFBQTJDLE9BQTNDO0FBQ0EsT0FBT0MsU0FBUCxNQUFzQixZQUF0QjtBQUNBLE9BQU9DLFVBQVAsTUFBdUIsWUFBdkI7QUFDQSxPQUFPQyxJQUFQLE1BQWdDLFNBQWhDO0FBQ0EsT0FBT0MsT0FBUCxNQUF1QyxZQUF2QztBQUNBLFNBQVNDLFdBQVQsUUFBNEIsV0FBNUI7QUFDQSxPQUFPLFNBQVA7QUFFQSxJQUFNQyxNQUFNLEdBQUcsb0JBQWY7O0FBaURBLElBQU1DLElBQTBCLEdBQUcsU0FBN0JBLElBQTZCLE9BWWpCO0VBQUEsSUFYaEJDLFFBV2dCLFFBWGhCQSxRQVdnQjtFQUFBLElBVmhCQyxTQVVnQixRQVZoQkEsU0FVZ0I7RUFBQSxJQVRoQkMsS0FTZ0IsUUFUaEJBLEtBU2dCO0VBQUEsSUFSaEJDLFVBUWdCLFFBUmhCQSxVQVFnQjtFQUFBLElBUGhCQyxXQU9nQixRQVBoQkEsV0FPZ0I7RUFBQSxJQU5oQkMsZUFNZ0IsUUFOaEJBLGVBTWdCO0VBQUEsSUFMaEJDLGdCQUtnQixRQUxoQkEsZ0JBS2dCO0VBQUEsSUFKaEJDLFNBSWdCLFFBSmhCQSxTQUlnQjtFQUFBLElBSGhCQyxVQUdnQixRQUhoQkEsVUFHZ0I7RUFBQSxJQUZoQkMsS0FFZ0IsUUFGaEJBLEtBRWdCO0VBQUEsSUFEYkMsVUFDYTs7RUFDaEIsa0JBS0luQixVQUFVLENBQUNNLFdBQUQsQ0FMZDtFQUFBLElBQ2NjLGlCQURk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