{"ast":null,"code":"import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport * as React from 'react';\nimport DrawerContext from \"./context\";\nimport DrawerPanel from \"./DrawerPanel\";\nimport { parseWidthHeight } from \"./util\";\nvar sentinelStyle = {\n  width: 0,\n  height: 0,\n  overflow: 'hidden',\n  outline: 'none',\n  position: 'absolute'\n};\nfunction DrawerPopup(props, ref) {\n  var _ref, _pushConfig$distance, _pushConfig, _classNames;\n  var prefixCls = props.prefixCls,\n    open = props.open,\n    placement = props.placement,\n    inline = props.inline,\n    push = props.push,\n    forceRender = props.forceRender,\n    autoFocus = props.autoFocus,\n    keyboard = props.keyboard,\n    drawerClassNames = props.classNames,\n    rootClassName = props.rootClassName,\n    rootStyle = props.rootStyle,\n    zIndex = props.zIndex,\n    className = props.className,\n    id = props.id,\n    style = props.style,\n    motion = props.motion,\n    width = props.width,\n    height = props.height,\n    children = props.children,\n    contentWrapperStyle = props.contentWrapperStyle,\n    mask = props.mask,\n    maskClosable = props.maskClosable,\n    maskMotion = props.maskMotion,\n    maskClassName = props.maskClassName,\n    maskStyle = props.maskStyle,\n    afterOpenChange = props.afterOpenChange,\n    onClose = props.onClose,\n    onMouseEnter = props.onMouseEnter,\n    onMouseOver = props.onMouseOver,\n    onMouseLeave = props.onMouseLeave,\n    onClick = props.onClick,\n    onKeyDown = props.onKeyDown,\n    onKeyUp = props.onKeyUp,\n    styles = props.styles;\n\n  // ================================ Refs ================================\n  var panelRef = React.useRef();\n  var sentinelStartRef = React.useRef();\n  var sentinelEndRef = React.useRef();\n  React.useImperativeHandle(ref, function () {\n    return panelRef.current;\n  });\n  var onPanelKeyDown = function onPanelKeyDown(event) {\n    var keyCode = event.keyCode,\n      shiftKey = event.shiftKey;\n    switch (keyCode) {\n      // Tab active\n      case KeyCode.TAB:\n        {\n          if (keyCode === KeyCode.TAB) {\n            if (!shiftKey && document.activeElement === sentinelEndRef.current) {\n              var _sentinelStartRef$cur;\n              (_sentinelStartRef$cur = sentinelStartRef.current) === null || _sentinelStartRef$cur === void 0 ? void 0 : _sentinelStartRef$cur.focus({\n                preventScroll: true\n              });\n            } else if (shiftKey && document.activeElement === sentinelStartRef.current) {\n              var _sentinelEndRef$curre;\n              (_sentinelEndRef$curre = sentinelEndRef.current) === null || _sentinelEndRef$curre === void 0 ? void 0 : _sentinelEndRef$curre.focus({\n                preventScroll: true\n              });\n            }\n          }\n          break;\n        }\n\n      // Close\n      case KeyCode.ESC:\n        {\n          if (onClose && keyboard) {\n            event.stopPropagation();\n            onClose(event);\n          }\n          break;\n        }\n    }\n  };\n\n  // ========================== Control ===========================\n  // Auto Focus\n  React.useEffect(function () {\n    if (open && autoFocus) {\n      var _panelRef$current;\n      (_panelRef$current = panelRef.current) === null || _panelRef$current === void 0 ? void 0 : _panelRef$current.focus({\n        preventScroll: true\n      });\n    }\n  }, [open]);\n\n  // ============================ Push ============================\n  var _React$useState = React.useState(false),\n    _React$useState2 = _slicedToArray(_React$useState, 2),\n    pushed = _React$useState2[0],\n    setPushed = _React$useState2[1];\n  var parentContext = React.useContext(DrawerContext);\n\n  // Merge push distance\n  var pushConfig;\n  if (push === false) {\n    pushConfig = {\n      distance: 0\n    };\n  } else if (push === true) {\n    pushConfig = {};\n  } else {\n    pushConfig = push || {};\n  }\n  var pushDistance = (_ref = (_pushConfig$distance = (_pushConfig = pushConfig) === null || _pushConfig === void 0 ? void 0 : _pushConfig.distance) !== null && _pushConfig$distance !== void 0 ? _pushConfig$distance : parentContext === null || parentContext === void 0 ? void 0 : parentContext.pushDistance) !== null && _ref !== void 0 ? _ref : 180;\n  var mergedContext = React.useMemo(function () {\n    return {\n      pushDistance: pushDistance,\n      push: function push() {\n        setPushed(true);\n      },\n      pull: function pull() {\n        setPushed(false);\n      }\n    };\n  }, [pushDistance]);\n\n  // ========================= ScrollLock =========================\n  // Tell parent to push\n  React.useEffect(function () {\n    if (open) {\n      var _parentContext$push;\n      parentContext === null || parentContext === void 0 ? void 0 : (_parentContext$push = parentContext.push) === null || _parentContext$push === void 0 ? void 0 : _parentContext$push.call(parentContext);\n    } else {\n      var _parentContext$pull;\n      parentContext === null || parentContext === void 0 ? void 0 : (_parentContext$pull = parentContext.pull) === null || _parentContext$pull === void 0 ? void 0 : _parentContext$pull.call(parentContext);\n    }\n  }, [open]);\n\n  // Clean up\n  React.useEffect(function () {\n    return function () {\n      var _parentContext$pull2;\n      parentContext === null || parentContext === void 0 ? void 0 : (_parentContext$pull2 = parentContext.pull) === null || _parentContext$pull2 === void 0 ? void 0 : _parentContext$pull2.call(parentContext);\n    };\n  }, []);\n\n  // ============================ Mask ============================\n  var maskNode = mask && /*#__PURE__*/React.createElement(CSSMotion, _extends({\n    key: \"mask\"\n  }, maskMotion, {\n    visible: open\n  }), function (_ref2, maskRef) {\n    var motionMaskClassName = _ref2.className,\n      motionMaskStyle = _ref2.style;\n    return /*#__PURE__*/React.createElement(\"div\", {\n      className: classNames(\"\".concat(prefixCls, \"-mask\"), motionMaskClassName, drawerClassNames === null || drawerClassNames === void 0 ? void 0 : drawerClassNames.mask, maskClassName),\n      style: _objectSpread(_objectSpread(_objectSpread({}, motionMaskStyle), maskStyle), styles === null || styles === void 0 ? void 0 : styles.mask),\n      onClick: maskClosable && open ? onClose : undefined,\n      ref: maskRef\n    });\n  });\n\n  // =========================== Panel ============================\n  var motionProps = typeof motion === 'function' ? motion(placement) : motion;\n  var wrapperStyle = {};\n  if (pushed && pushDistance) {\n    switch (placement) {\n      case 'top':\n        wrapperStyle.transform = \"translateY(\".concat(pushDistance, \"px)\");\n        break;\n      case 'bottom':\n        wrapperStyle.transform = \"translateY(\".concat(-pushDistance, \"px)\");\n        break;\n      case 'left':\n        wrapperStyle.transform = \"translateX(\".concat(pushDistance, \"px)\");\n        break;\n      default:\n        wrapperStyle.transform = \"translateX(\".concat(-pushDistance, \"px)\");\n        break;\n    }\n  }\n  if (placement === 'left' || placement === 'right') {\n    wrapperStyle.width = parseWidthHeight(width);\n  } else {\n    wrapperStyle.height = parseWidthHeight(height);\n  }\n  var eventHandlers = {\n    onMouseEnter: onMouseEnter,\n    onMouseOver: onMouseOver,\n    onMouseLeave: onMouseLeave,\n    onClick: onClick,\n    onKeyDown: onKeyDown,\n    onKeyUp: onKeyUp\n  };\n  var panelNode = /*#__PURE__*/React.createElement(CSSMotion, _extends({\n    key: \"panel\"\n  }, motionProps, {\n    visible: open,\n    forceRender: forceRender,\n    onVisibleChanged: function onVisibleChanged(nextVisible) {\n      afterOpenChange === null || afterOpenChange === void 0 ? void 0 : afterOpenChange(nextVisible);\n    },\n    removeOnLeave: false,\n    leavedClassName: \"\".concat(prefixCls, \"-content-wrapper-hidden\")\n  }), function (_ref3, motionRef) {\n    var motionClassName = _ref3.className,\n      motionStyle = _ref3.style;\n    return /*#__PURE__*/React.createElement(\"div\", _extends({\n      className: classNames(\"\".concat(prefixCls, \"-content-wrapper\"), drawerClassNames === null || drawerClassNames === void 0 ? void 0 : drawerClassNames.wrapper, motionClassName),\n      style: _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, wrapperStyle), motionStyle), contentWrapperStyle), styles === null || styles === void 0 ? void 0 : styles.wrapper)\n    }, pickAttrs(props, {\n      data: true\n    })), /*#__PURE__*/React.createElement(DrawerPanel, _extends({\n      id: id,\n      containerRef: motionRef,\n      prefixCls: prefixCls,\n      className: classNames(className, drawerClassNames === null || drawerClassNames === void 0 ? void 0 : drawerClassNames.content),\n      style: _objectSpread(_objectSpread({}, style), styles === null || styles === void 0 ? void 0 : styles.content)\n    }, eventHandlers), children));\n  });\n\n  // =========================== Render ===========================\n  var containerStyle = _objectSpread({}, rootStyle);\n  if (zIndex) {\n    containerStyle.zIndex = zIndex;\n  }\n  return /*#__PURE__*/React.createElement(DrawerContext.Provider, {\n    value: mergedContext\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(prefixCls, \"\".concat(prefixCls, \"-\").concat(placement), rootClassName, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-open\"), open), _defineProperty(_classNames, \"\".concat(prefixCls, \"-inline\"), inline), _classNames)),\n    style: containerStyle,\n    tabIndex: -1,\n    ref: panelRef,\n    onKeyDown: onPanelKeyDown\n  }, maskNode, /*#__PURE__*/React.createElement(\"div\", {\n    tabIndex: 0,\n    ref: sentinelStartRef,\n    style: sentinelStyle,\n    \"aria-hidden\": \"true\",\n    \"data-sentinel\": \"start\"\n  }), panelNode, /*#__PURE__*/React.createElement(\"div\", {\n    tabIndex: 0,\n    ref: sentinelEndRef,\n    style: sentinelStyle,\n    \"aria-hidden\": \"true\",\n    \"data-sentinel\": \"end\"\n  })));\n}\nvar RefDrawerPopup = /*#__PURE__*/React.forwardRef(DrawerPopup);\nif (process.env.NODE_ENV !== 'production') {\n  RefDrawerPopup.displayName = 'DrawerPopup';\n}\nexport default RefDrawerPopup;","map":{"version":3,"names":["_defineProperty","_extends","_objectSpread","_slicedToArray","classNames","CSSMotion","KeyCode","pickAttrs","React","DrawerContext","DrawerPanel","parseWidthHeight","sentinelStyle","width","height","overflow","outline","position","DrawerPopup","props","ref","_ref","_pushConfig$distance","_pushConfig","_classNames","prefixCls","open","placement","inline","push","forceRender","autoFocus","keyboard","drawerClassNames","rootClassName","rootStyle","zIndex","className","id","style","motion","children","contentWrapperStyle","mask","maskClosable","maskMotion","maskClassName","maskStyle","afterOpenChange","onClose","onMouseEnter","onMouseOver","onMouseLeave","onClick","onKeyDown","onKeyUp","styles","panelRef","useRef","sentinelStartRef","sentinelEndRef","useImperativeHandle","current","onPanelKeyDown","event","keyCode","shiftKey","TAB","document","activeElement","_sentinelStartRef$cur","focus","preventScroll","_sentinelEndRef$curre","ESC","stopPropagation","useEffect","_panelRef$current","_React$useState","useState","_React$useState2","pushed","setPushed","parentContext","useContext","pushConfig","distance","pushDistance","mergedContext","useMemo","pull","_parentContext$push","call","_parentContext$pull","_parentContext$pull2","maskNode","createElement","key","visible","_ref2","maskRef","motionMaskClassName","motionMaskStyle","concat","undefined","motionProps","wrapperStyle","transform","eventHandlers","panelNode","onVisibleChanged","nextVisible","removeOnLeave","leavedClassName","_ref3","motionRef","motionClassName","motionStyle","wrapper","data","containerRef","content","containerStyle","Provider","value","tabIndex","RefDrawerPopup","forwardRef","process","env","NODE_ENV","displayName"],"sources":["/var/www/gavt/node_modules/rc-drawer/es/DrawerPopup.js"],"sourcesContent":["import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport * as React from 'react';\nimport DrawerContext from \"./context\";\nimport DrawerPanel from \"./DrawerPanel\";\nimport { parseWidthHeight } from \"./util\";\nvar sentinelStyle = {\n  width: 0,\n  height: 0,\n  overflow: 'hidden',\n  outline: 'none',\n  position: 'absolute'\n};\nfunction DrawerPopup(props, ref) {\n  var _ref, _pushConfig$distance, _pushConfig, _classNames;\n  var prefixCls = props.prefixCls,\n    open = props.open,\n    placement = props.placement,\n    inline = props.inline,\n    push = props.push,\n    forceRender = props.forceRender,\n    autoFocus = props.autoFocus,\n    keyboard = props.keyboard,\n    drawerClassNames = props.classNames,\n    rootClassName = props.rootClassName,\n    rootStyle = props.rootStyle,\n    zIndex = props.zIndex,\n    className = props.className,\n    id = props.id,\n    style = props.style,\n    motion = props.motion,\n    width = props.width,\n    height = props.height,\n    children = props.children,\n    contentWrapperStyle = props.contentWrapperStyle,\n    mask = props.mask,\n    maskClosable = props.maskClosable,\n    maskMotion = props.maskMotion,\n    maskClassName = props.maskClassName,\n    maskStyle = props.maskStyle,\n    afterOpenChange = props.afterOpenChange,\n    onClose = props.onClose,\n    onMouseEnter = props.onMouseEnter,\n    onMouseOver = props.onMouseOver,\n    onMouseLeave = props.onMouseLeave,\n    onClick = props.onClick,\n    onKeyDown = props.onKeyDown,\n    onKeyUp = props.onKeyUp,\n    styles = props.styles;\n\n  // ================================ Refs ================================\n  var panelRef = React.useRef();\n  var sentinelStartRef = React.useRef();\n  var sentinelEndRef = React.useRef();\n  React.useImperativeHandle(ref, function () {\n    return panelRef.current;\n  });\n  var onPanelKeyDown = function onPanelKeyDown(event) {\n    var keyCode = event.keyCode,\n      shiftKey = event.shiftKey;\n    switch (keyCode) {\n      // Tab active\n      case KeyCode.TAB:\n        {\n          if (keyCode === KeyCode.TAB) {\n            if (!shiftKey && document.activeElement === sentinelEndRef.current) {\n              var _sentinelStartRef$cur;\n              (_sentinelStartRef$cur = sentinelStartRef.current) === null || _sentinelStartRef$cur === void 0 ? void 0 : _sentinelStartRef$cur.focus({\n                preventScroll: true\n              });\n            } else if (shiftKey && document.activeElement === sentinelStartRef.current) {\n              var _sentinelEndRef$curre;\n              (_sentinelEndRef$curre = sentinelEndRef.current) === null || _sentinelEndRef$curre === void 0 ? void 0 : _sentinelEndRef$curre.focus({\n                preventScroll: true\n              });\n            }\n          }\n          break;\n        }\n\n      // Close\n      case KeyCode.ESC:\n        {\n          if (onClose && keyboard) {\n            event.stopPropagation();\n            onClose(event);\n          }\n          break;\n        }\n    }\n  };\n\n  // ========================== Control ===========================\n  // Auto Focus\n  React.useEffect(function () {\n    if (open && autoFocus) {\n      var _panelRef$current;\n      (_panelRef$current = panelRef.current) === null || _panelRef$current === void 0 ? void 0 : _panelRef$current.focus({\n        preventScroll: true\n      });\n    }\n  }, [open]);\n\n  // ============================ Push ============================\n  var _React$useState = React.useState(false),\n    _React$useState2 = _slicedToArray(_React$useState, 2),\n    pushed = _React$useState2[0],\n    setPushed = _React$useState2[1];\n  var parentContext = React.useContext(DrawerContext);\n\n  // Merge push distance\n  var pushConfig;\n  if (push === false) {\n    pushConfig = {\n      distance: 0\n    };\n  } else if (push === true) {\n    pushConfig = {};\n  } else {\n    pushConfig = push || {};\n  }\n  var pushDistance = (_ref = (_pushConfig$distance = (_pushConfig = pushConfig) === null || _pushConfig === void 0 ? void 0 : _pushConfig.distance) !== null && _pushConfig$distance !== void 0 ? _pushConfig$distance : parentContext === null || parentContext === void 0 ? void 0 : parentContext.pushDistance) !== null && _ref !== void 0 ? _ref : 180;\n  var mergedContext = React.useMemo(function () {\n    return {\n      pushDistance: pushDistance,\n      push: function push() {\n        setPushed(true);\n      },\n      pull: function pull() {\n        setPushed(false);\n      }\n    };\n  }, [pushDistance]);\n\n  // ========================= ScrollLock =========================\n  // Tell parent to push\n  React.useEffect(function () {\n    if (open) {\n      var _parentContext$push;\n      parentContext === null || parentContext === void 0 ? void 0 : (_parentContext$push = parentContext.push) === null || _parentContext$push === void 0 ? void 0 : _parentContext$push.call(parentContext);\n    } else {\n      var _parentContext$pull;\n      parentContext === null || parentContext === void 0 ? void 0 : (_parentContext$pull = parentContext.pull) === null || _parentContext$pull === void 0 ? void 0 : _parentContext$pull.call(parentContext);\n    }\n  }, [open]);\n\n  // Clean up\n  React.useEffect(function () {\n    return function () {\n      var _parentContext$pull2;\n      parentContext === null || parentContext === void 0 ? void 0 : (_parentContext$pull2 = parentContext.pull) === null || _parentContext$pull2 === void 0 ? void 0 : _parentContext$pull2.call(parentContext);\n    };\n  }, []);\n\n  // ============================ Mask ============================\n  var maskNode = mask && /*#__PURE__*/React.createElement(CSSMotion, _extends({\n    key: \"mask\"\n  }, maskMotion, {\n    visible: open\n  }), function (_ref2, maskRef) {\n    var motionMaskClassName = _ref2.className,\n      motionMaskStyle = _ref2.style;\n    return /*#__PURE__*/React.createElement(\"div\", {\n      className: classNames(\"\".concat(prefixCls, \"-mask\"), motionMaskClassName, drawerClassNames === null || drawerClassNames === void 0 ? void 0 : drawerClassNames.mask, maskClassName),\n      style: _objectSpread(_objectSpread(_objectSpread({}, motionMaskStyle), maskStyle), styles === null || styles === void 0 ? void 0 : styles.mask),\n      onClick: maskClosable && open ? onClose : undefined,\n      ref: maskRef\n    });\n  });\n\n  // =========================== Panel ============================\n  var motionProps = typeof motion === 'function' ? motion(placement) : motion;\n  var wrapperStyle = {};\n  if (pushed && pushDistance) {\n    switch (placement) {\n      case 'top':\n        wrapperStyle.transform = \"translateY(\".concat(pushDistance, \"px)\");\n        break;\n      case 'bottom':\n        wrapperStyle.transform = \"translateY(\".concat(-pushDistance, \"px)\");\n        break;\n      case 'left':\n        wrapperStyle.transform = \"translateX(\".concat(pushDistance, \"px)\");\n        break;\n      default:\n        wrapperStyle.transform = \"translateX(\".concat(-pushDistance, \"px)\");\n        break;\n    }\n  }\n  if (placement === 'left' || placement === 'right') {\n    wrapperStyle.width = parseWidthHeight(width);\n  } else {\n    wrapperStyle.height = parseWidthHeight(height);\n  }\n  var eventHandlers = {\n    onMouseEnter: onMouseEnter,\n    onMouseOver: onMouseOver,\n    onMouseLeave: onMouseLeave,\n    onClick: onClick,\n    onKeyDown: onKeyDown,\n    onKeyUp: onKeyUp\n  };\n  var panelNode = /*#__PURE__*/React.createElement(CSSMotion, _extends({\n    key: \"panel\"\n  }, motionProps, {\n    visible: open,\n    forceRender: forceRender,\n    onVisibleChanged: function onVisibleChanged(nextVisible) {\n      afterOpenChange === null || afterOpenChange === void 0 ? void 0 : afterOpenChange(nextVisible);\n    },\n    removeOnLeave: false,\n    leavedClassName: \"\".concat(prefixCls, \"-content-wrapper-hidden\")\n  }), function (_ref3, motionRef) {\n    var motionClassName = _ref3.className,\n      motionStyle = _ref3.style;\n    return /*#__PURE__*/React.createElement(\"div\", _extends({\n      className: classNames(\"\".concat(prefixCls, \"-content-wrapper\"), drawerClassNames === null || drawerClassNames === void 0 ? void 0 : drawerClassNames.wrapper, motionClassName),\n      style: _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, wrapperStyle), motionStyle), contentWrapperStyle), styles === null || styles === void 0 ? void 0 : styles.wrapper)\n    }, pickAttrs(props, {\n      data: true\n    })), /*#__PURE__*/React.createElement(DrawerPanel, _extends({\n      id: id,\n      containerRef: motionRef,\n      prefixCls: prefixCls,\n      className: classNames(className, drawerClassNames === null || drawerClassNames === void 0 ? void 0 : drawerClassNames.content),\n      style: _objectSpread(_objectSpread({}, style), styles === null || styles === void 0 ? void 0 : styles.content)\n    }, eventHandlers), children));\n  });\n\n  // =========================== Render ===========================\n  var containerStyle = _objectSpread({}, rootStyle);\n  if (zIndex) {\n    containerStyle.zIndex = zIndex;\n  }\n  return /*#__PURE__*/React.createElement(DrawerContext.Provider, {\n    value: mergedContext\n  }, /*#__PURE__*/React.createElement(\"div\", {\n    className: classNames(prefixCls, \"\".concat(prefixCls, \"-\").concat(placement), rootClassName, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-open\"), open), _defineProperty(_classNames, \"\".concat(prefixCls, \"-inline\"), inline), _classNames)),\n    style: containerStyle,\n    tabIndex: -1,\n    ref: panelRef,\n    onKeyDown: onPanelKeyDown\n  }, maskNode, /*#__PURE__*/React.createElement(\"div\", {\n    tabIndex: 0,\n    ref: sentinelStartRef,\n    style: sentinelStyle,\n    \"aria-hidden\": \"true\",\n    \"data-sentinel\": \"start\"\n  }), panelNode, /*#__PURE__*/React.createElement(\"div\", {\n    tabIndex: 0,\n    ref: sentinelEndRef,\n    style: sentinelStyle,\n    \"aria-hidden\": \"true\",\n    \"data-sentinel\": \"end\"\n  })));\n}\nvar RefDrawerPopup = /*#__PURE__*/React.forwardRef(DrawerPopup);\nif (process.env.NODE_ENV !== 'production') {\n  RefDrawerPopup.displayName = 'DrawerPopup';\n}\nexport default RefDrawerPopup;"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}