{"version":3,"file":"types2.mjs","sources":["../../../../../../../packages/components/table-pro/src/types.ts"],"sourcesContent":["import { type PermissionContext } from '../../permission/src/types'\nimport {\n  DEFAULT_ALIGN,\n  DEFAULT_LINE_HEIGTH,\n  ETableProEmits,\n  FETCH_SETTING,\n  PAGE_SIZE,\n  PAGE_SIZE_OPTIONS,\n  ROW_KEY,\n  // buildTableId,\n} from './const'\nimport type { TableProExtendApis } from './hooks/useExtendInstance'\nimport type { ExtractPropTypes, PropType, VNode } from 'vue'\nimport type {\n  VxeColumnPropTypes,\n  VxeColumnSlotTypes,\n  VxeGridEventProps,\n  VxeGridInstance,\n  VxeGridPropTypes,\n  VxeTableDefines,\n  VxeTableEventProps,\n  VxeTablePropTypes,\n} from 'vxe-table'\nimport type { FetchSetting } from './const'\nimport type {\n  PagerConfig,\n  TableProApi,\n  TableProCustomActionConfig,\n  TableProFilterFormConfig,\n} from './typings'\n\nexport type TableProColumn = VxeTableDefines.ColumnOptions & {\n  /** 使用customrender后template插槽失效，如果想使用template插槽，请使用slot-default */\n  // customRender 在运行时不会用到，传进来后用vxetable提供的cellrender接收\n  customRender?: (params: VxeColumnSlotTypes.DefaultSlotParams) => JSX.Element | VNode | string\n  children?: TableProColumn[]\n  /** vxetable内部会对column上的属性按照内部定义筛选 */\n  params?: VxeColumnPropTypes.Params\n}\nexport type TableProColumnInfo = VxeTableDefines.ColumnInfo & {\n  params?: VxeColumnPropTypes.Params\n}\n\nexport type TableProFooter = VxeTablePropTypes.FooterMethod\n\n/** table 实例 */\nexport type TableProInstance = VxeGridInstance\n/** 扩展后的 table 实例 */\nexport interface ITableProInstance {\n  instance: TableProInstance & TableProExtendApis\n}\n/** table 支持的事件类型 */\nexport type TableProEvent = VxeTableEventProps & VxeGridEventProps\n/** table 支持的事件名称 */\nexport type TableProEmits = keyof typeof ETableProEmits\nexport type TableProGridEmit = (event: TableProEmits, ...args: any[]) => void\nconst _tableProEmits: string[] = []\nfor (const k in ETableProEmits) {\n  _tableProEmits.push(k)\n}\nexport const tableProEmits = _tableProEmits as TableProEmits[]\n/** table props */\nexport const tableProProps = {\n  //:==================================================: 全局设置 :==================================================://\n  /**\n   * 表格大小 https://vxetable.cn/#/table/base/size\n   */\n  size: {\n    type: [String, null] as PropType<VxeTablePropTypes.Size>,\n    default: 'small',\n  },\n  /** 唯一标识（被某些特定的功能所依赖） */\n  id: {\n    type: String as PropType<VxeTablePropTypes.ID>,\n    // default: buildTableId(),\n  },\n  /**\n   * 表格高度（默认为铺满网页）https://vxetable.cn/#/table/base/autoHeight\n   * 当前默认值为 'auto' 随父级高度变化（必须开启autoresize，当前默认开启）\n   * 1. 如果要随父级高度变化，此处必须设置为 'auto'。然后在外层包一个带有指定高度的父容器, 跟随父级走的话高度会跳动\n   * 2. 不追随父级变化，此处可以直接设置 500。即高度为 500px\n   * 3. 当高度设置为数字后还有固定表头的作用 https://vxetable.cn/#/table/base/height\n   * 4. 默认铺满全屏\n   */\n  height: {\n    type: [String, Number] as PropType<VxeTablePropTypes.Height>,\n    // default: '100%',\n    default: 'auto',\n  },\n  /** 表格最大高度（超出自动出现 y轴 滚动条） */\n  maxHeight: {\n    type: [String, Number] as PropType<VxeTablePropTypes.MaxHeight>,\n  },\n  minHeight: {\n    type: [String, Number] as PropType<VxeTablePropTypes.MinHeight>,\n  },\n  /**\n   * 表格数据（数据为响应式，在使用时建议每次变化直接赋值，与 loadData 行为一致，更新数据是不会重置状态）\n   * 1. 参考 https://vxetable.cn/#/grid/api\n   * 2. replace 'dataSource'\n   */\n  data: {\n    type: Array as PropType<any[]>,\n  },\n  /**\n   * 表格自动调整\n   * 开启虚拟滚动后必须指定行高，想用动态行高则需关闭虚拟滚动\n   */\n  resizable: {\n    type: Boolean as PropType<VxeTablePropTypes.Resizable>,\n    default: true,\n  },\n  /** 是否带有斑马纹（需要注意的是，在可编辑表格场景下，临时插入的数据不会有斑马纹样式） */\n  stripe: {\n    type: Boolean as PropType<VxeTablePropTypes.Stripe>,\n    default: false,\n  },\n  /** 是否为圆角边框 */\n  round: {\n    type: Boolean as PropType<VxeTablePropTypes.Round>,\n    default: true,\n  },\n  /** 是否带有边框 */\n  border: {\n    type: [String, Boolean] as PropType<VxeTablePropTypes.Border>,\n    default: 'inner',\n  },\n  /** 表格是否显示加载中 */\n  loading: {\n    type: Boolean as PropType<VxeTablePropTypes.Loading>,\n    default: false,\n  },\n  /** 所有列的对齐方式 */\n  align: {\n    type: [String, null] as PropType<VxeTablePropTypes.Align>,\n    default: DEFAULT_ALIGN,\n  },\n  /** 表头的对齐方式 */\n  headerAlign: {\n    type: [String, null] as PropType<VxeTablePropTypes.Align>,\n    default: DEFAULT_ALIGN,\n  },\n  /** 表尾的对齐方式 */\n  footerAlign: {\n    type: [String, null] as PropType<VxeTablePropTypes.Align>,\n    default: DEFAULT_ALIGN,\n  },\n  /** 是否显示表头 */\n  showHeader: {\n    type: Boolean as PropType<VxeTablePropTypes.ShowHeader>,\n    default: true,\n  },\n  /** 是否显示表尾 */\n  showFooter: {\n    type: Boolean as PropType<VxeTablePropTypes.ShowFooter>,\n  },\n  /** 是否高亮当前行 */\n  highlightCurrentRow: {\n    type: Boolean as PropType<VxeTablePropTypes.HighlightCurrentRow>,\n    default: false,\n  },\n  /** hover 时高亮行 */\n  highlightHoverRow: {\n    type: Boolean as PropType<VxeTablePropTypes.HighlightHoverRow>,\n    default: true,\n  },\n  /** 是否高亮当前列 */\n  highlightCurrentColumn: {\n    type: Boolean as PropType<VxeTablePropTypes.HighlightCurrentColumn>,\n    default: false,\n  },\n  /** hover 时高亮列 */\n  highlightHoverColumn: {\n    type: Boolean as PropType<VxeTablePropTypes.HighlightHoverColumn>,\n    default: true,\n  },\n  /** 高亮单元格 */\n  highlightCell: {\n    type: Boolean as PropType<VxeTablePropTypes.HighlightCell>,\n    default: false,\n  },\n  /** 表尾的数据获取方法，返回一个二维数组 */\n  footerMethod: {\n    type: Function as PropType<VxeTablePropTypes.FooterMethod>,\n  },\n  /** 给行附加 className */\n  rowClassName: {\n    type: [String, Function] as PropType<VxeTablePropTypes.RowClassName>,\n  },\n  /** 给单元格附加 className */\n  cellClassName: {\n    type: [String, Function] as PropType<VxeTablePropTypes.CellClassName>,\n  },\n  /** 给表头的行附加 className */\n  headerRowClassName: {\n    type: [String, Function] as PropType<VxeTablePropTypes.HeaderRowClassName>,\n  },\n  /** 给表头的单元格附加 className */\n  headerCellClassName: {\n    type: [String, Function] as PropType<VxeTablePropTypes.HeaderCellClassName>,\n  },\n  /** 给表尾的行附加 className */\n  footerRowClassName: {\n    type: [String, Function] as PropType<VxeTablePropTypes.FooterRowClassName>,\n  },\n  /** 给表尾的单元格附加 className */\n  footerCellClassName: {\n    type: [String, Function] as PropType<VxeTablePropTypes.FooterCellClassName>,\n  },\n  /** 给单元格附加样式 */\n  cellStyle: {\n    type: Object as PropType<VxeTablePropTypes.CellStyle>,\n  },\n  /** 给表头单元格附加样式 */\n  headerCellStyle: {\n    type: Object as PropType<VxeTablePropTypes.HeaderCellStyle>,\n  },\n  /** 给表尾单元格附加样式 */\n  footerCellStyle: {\n    type: Object as PropType<VxeTablePropTypes.FooterCellStyle>,\n  },\n  /** 给行附加样式 */\n  rowStyle: {\n    type: Object as PropType<VxeTablePropTypes.RowStyle>,\n  },\n  /** 给表头行附加样式 */\n  headerRowStyle: {\n    type: Object as PropType<VxeTablePropTypes.HeaderRowStyle>,\n  },\n  /** 给表头行附加样式 */\n  footerRowStyle: {\n    type: Object as PropType<VxeTablePropTypes.FooterRowStyle>,\n  },\n  /** 临时合并指定的单元格 (不能用于展开行，不建议用于固定列、树形结构) */\n  mergeCells: {\n    type: Array as PropType<VxeTablePropTypes.MergeCells>,\n  },\n  /** 临时合并表尾 (不能用于展开行，不建议用于固定列、树形结构) */\n  mergeFooterItems: {\n    type: Array as PropType<VxeTablePropTypes.MergeFooterItems>,\n  },\n  /** 自定义合并函数，返回计算后的值 (不能用于虚拟滚动、展开行，不建议用于固定列、树形结构) */\n  spanMethod: {\n    type: Function as PropType<VxeTablePropTypes.SpanMethod>,\n  },\n  /** 表尾合并行或列，返回计算后的值 (不能用于虚拟滚动、展开行，不建议用于固定列、树形结构) */\n  footerSpanMethod: {\n    type: Function as PropType<VxeTablePropTypes.FooterSpanMethod>,\n  },\n  /** 设置所有内容过长时显示为省略号（如果是固定列建议设置该值，提升渲染速度） */\n  showOverflow: {\n    type: [String, Boolean, null] as PropType<VxeTablePropTypes.ShowOverflow>,\n    // default: 'ellipsis',\n    default: false,\n  },\n  /** 设置表头所有内容过长时显示为省略号 */\n  showHeaderOverflow: {\n    type: [String, Boolean, null] as PropType<VxeTablePropTypes.ShowHeaderOverflow>,\n    // default: 'ellipsis',\n    default: false,\n  },\n  /** 设置表尾所有内容过长时显示为省略号 */\n  showFooterOverflow: {\n    type: [String, Boolean, null] as PropType<VxeTablePropTypes.ShowFooterOverflow>,\n    // default: 'ellipsis',\n    default: false,\n  },\n  /** 保持原始值的状态，被某些功能所依赖，比如编辑状态、还原数据等（开启后影响性能，具体取决于数据量） */\n  keepSource: {\n    type: Boolean as PropType<VxeTablePropTypes.KeepSource>,\n    default: false,\n  },\n  /** 自动监听父元素的变化去重新计算表格（对于父元素可能存在动态变化、显示隐藏的容器中、列宽异常等场景中的可能会用到） */\n  autoResize: {\n    type: Boolean as PropType<VxeTablePropTypes.AutoResize>,\n    // default: true,\n  },\n  resizeConfig: {\n    type: Object as PropType<VxeTablePropTypes.ResizeConfig>,\n    default: () => ({\n      refreshDelay: 500,\n    }),\n  },\n  /** 自动跟随某个属性的变化去重新计算表格，和手动调用 recalculate 方法是一样的效果（对于通过某个属性来控制显示/隐藏切换时可能会用到） */\n  syncResize: {\n    type: [String, Number, Boolean] as PropType<VxeTablePropTypes.SyncResize>,\n  },\n  /** 横向虚拟滚动配置（不支持展开行） */\n  scrollX: {\n    type: Object as PropType<VxeTablePropTypes.ScrollX>,\n    default: () => ({\n      enabled: true,\n      gt: 20,\n      /** 设置过大会出现空白间隙，设置为0会实时渲染但是会卡顿 */\n      oSize: 10,\n      // scrollToLeftOnChange: true\n    }),\n  },\n  /** 纵向虚拟滚动配置（不支持展开行） */\n  scrollY: {\n    type: Object as PropType<VxeTablePropTypes.ScrollY>,\n    default: () => ({\n      enabled: true,\n      mode: 'default',\n      gt: 50,\n      /** 设置过大会出现空白间隙，设置为0会实时渲染但是会卡顿 */\n      oSize: 10,\n      // scrollToTopOnChange: true,\n    }),\n  },\n  //:==================================================: 全局设置 :==================================================://\n\n  //:==================================================: 局部配置 :==================================================://\n  /**\n   * 列配置信息（详情查看：https://vxetable.cn/#/grid/api）\n   * 1. useKey 代替原有的全局属性 columnKey，是否需要为每一列的 VNode 设置 key 属性（非特殊情况下不需要使用）\n   */\n  columnConfig: {\n    type: Object as PropType<VxeTablePropTypes.ColumnConfig>,\n    default: () => ({\n      resizable: true,\n    }),\n  },\n  /**\n   * 行配置信息（详情查看：https://vxetable.cn/#/grid/api）\n   * 1. useKey 代替原有的全局属性 rowKey，是否需要为每一列的 VNode 设置 key 属性（非特殊情况下不需要使用）\n   * 2. keyField 代替原有的全局属性 rowId，自定义行数据唯一主键的字段名（默认自动生成），默认值为 _X_ROW_KEY\n   */\n  rowConfig: {\n    type: Object as PropType<VxeTablePropTypes.RowConfig>,\n    default: () => ({\n      keyField: ROW_KEY,\n      height: DEFAULT_LINE_HEIGTH,\n    }),\n  },\n  /**\n   * 自定义列配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  customConfig: {\n    type: Object as PropType<VxeTablePropTypes.CustomConfig>,\n  },\n  /**\n   * 列宽拖动配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  resizableConfig: {\n    type: Object as PropType<VxeTablePropTypes.ResizableConfig>,\n  },\n  /**\n   * 序号配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  seqConfig: {\n    type: Object as PropType<VxeTablePropTypes.SeqConfig>,\n  },\n  /**\n   * 排序配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  sortConfig: {\n    type: Object as PropType<VxeTablePropTypes.SortConfig>,\n  },\n  /**\n   * 筛选配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  filterConfig: {\n    type: Object as PropType<VxeTablePropTypes.FilterConfig>,\n  },\n  /**\n   * 筛选是否互斥\n   */\n  filterExclusion: {\n    type: Boolean,\n    default: true,\n  },\n  /**\n   * 单选框配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  radioConfig: {\n    type: Object as PropType<VxeTablePropTypes.RadioConfig & { enabled: boolean }>,\n    default: () => ({\n      enabled: false,\n      highlight: true,\n    }),\n  },\n  /**\n   * 复选框配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  checkboxConfig: {\n    type: Object as PropType<\n      // reserve 无法清除跨页的行选中，使用cache即可\n      Omit<VxeTablePropTypes.CheckboxConfig, 'reserve'> & { enabled?: boolean; cache?: boolean }\n    >,\n    default: () => ({\n      enabled: true,\n      range: true,\n      highlight: true,\n      cache: false,\n    }),\n  },\n  /**\n   * tooltip 配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  tooltipConfig: {\n    type: Object as PropType<VxeTablePropTypes.TooltipConfig>,\n    default: () => ({\n      theme: 'dark',\n    }),\n  },\n  /**\n   * 导出配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  exportConfig: {\n    type: Object as PropType<VxeTablePropTypes.ExportConfig>,\n  },\n  /**\n   * 导入配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  importConfig: {\n    type: Object as PropType<VxeTablePropTypes.ImportConfig>,\n  },\n  /**\n   * 打印配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  printConfig: {\n    type: Object as PropType<VxeTablePropTypes.PrintConfig>,\n  },\n  //:==================================================: 需付费，使用时请查看文档 :==================================================://\n  /**\n   * 鼠标配置项（详情查看：https://vxetable.cn/#/grid/api）\n   * 部分属性需购买 pro 才能支持\n   */\n  mouseConfig: {\n    type: Object as PropType<VxeTablePropTypes.MouseConfig>,\n  },\n  /**\n   * 区域选取配置项（详情查看：https://vxetable.cn/#/grid/api）\n   * 全部属性需购买 pro 才能支持\n   */\n  areaConfig: {\n    type: Object as PropType<VxeTablePropTypes.AreaConfig>,\n  },\n  /**\n   * 查找/替换配置项（详情查看：https://vxetable.cn/#/grid/api）\n   * 全部属性需购买 pro 才能支持\n   */\n  fnrConfig: {\n    type: Object as PropType<VxeTablePropTypes.FNRConfig>,\n  },\n  /**\n   * 按键配置项（详情查看：https://vxetable.cn/#/grid/api）\n   * 部分属性需购买 pro 才能支持\n   */\n  keyboardConfig: {\n    type: Object as PropType<VxeTablePropTypes.KeyboardConfig>,\n  },\n  /**\n   * 复制/粘贴配置项（详情查看：https://vxetable.cn/#/grid/api）\n   * 全部属性需购买 pro 才能支持\n   */\n  clipConfig: {\n    type: Object as PropType<VxeTablePropTypes.ClipConfig>,\n  },\n  /**  表格筛选组件modal类名  */\n  filterModalClassName: {\n    type: String,\n  },\n  //:==================================================: 需付费，使用时请查看文档 :==================================================://\n  /**\n   * 展开行配置项（不支持虚拟滚动）（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  expandConfig: {\n    type: Object as PropType<VxeTablePropTypes.ExpandConfig>,\n  },\n  /**\n   * 树形结构配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  treeConfig: {\n    type: Object as PropType<VxeTablePropTypes.TreeConfig>,\n  },\n  /**\n   * 快捷菜单配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  menuConfig: {\n    type: Object as PropType<VxeTablePropTypes.MenuConfig>,\n  },\n  /**\n   * 可编辑配置项（详情查看：https://vxetable.cn/#/grid/api）\n   */\n  editConfig: {\n    type: Object as PropType<VxeTablePropTypes.EditConfig>,\n  },\n  /**\n   * 校验配置项（详情查看：https://vxetable.cn/#/grid/api）\n   * 1. autoPos 是否自动定位到校验不通过的单元格\n   */\n  validConfig: {\n    type: Object as PropType<VxeTablePropTypes.ValidConfig>,\n  },\n  /** 校验规则配置项（详情查看：https://vxetable.cn/#/grid/api） */\n  editRules: {\n    type: Object as PropType<VxeTablePropTypes.EditRules>,\n  },\n  /** 空数据时显示的内容（详情查看：https://vxetable.cn/#/grid/api） */\n  emptyText: {\n    type: String as PropType<VxeTablePropTypes.EmptyText>,\n  },\n  /**\n   * 空内容渲染配置项（详情查看：https://vxetable.cn/#/grid/api），empty-render 的优先级大于 empty-text\n   * 1. name: 渲染器名称\n   */\n  emptyRender: {\n    type: Object as PropType<VxeTablePropTypes.EmptyRender>,\n  },\n  /** 列配置（详情查看：https://vxetable.cn/#/grid/api） */\n  columns: {\n    type: Object as PropType<VxeGridPropTypes.Columns>,\n  },\n  /** 分页配置项（详情查看：https://vxetable.cn/#/grid/api） */\n  pagerConfig: {\n    type: Object as PropType<PagerConfig>,\n    default: () => ({\n      size: 'mini',\n      layouts: ['PrevPage', 'Number', 'NextPage', 'Sizes', 'Total'],\n      pageSize: PAGE_SIZE,\n      pageSizes: PAGE_SIZE_OPTIONS.map((size) => Number(size)),\n      controller: 'backend',\n    }),\n  },\n  /**\n   * 数据代理（详情查看：https://vxetable.cn/#/table/grid/proxy）\n   * 1. 通过配置 proxy-config 参数，默认直接读取结果，响应结果应该为数组\n   * 2. 可以通过 props 修改默认值，由 pager-config 代理数据转换，只需要配置好数据源即可；非常简单就可以渲染一个表格，从重复写冗余的代码中解放出来\n   * 3. 接收一个 Promise\n   */\n  proxyConfig: {\n    type: Object as PropType<VxeGridPropTypes.ProxyConfig>,\n  },\n  /** 工具栏配置（详情查看：https://vxetable.cn/#/grid/api） */\n  toolbarConfig: {\n    type: Object as PropType<VxeGridPropTypes.ToolbarConfig>,\n  },\n  /** 表单配置项（详情查看：https://vxetable.cn/#/grid/api） */\n  formConfig: {\n    type: Object as PropType<VxeGridPropTypes.FormConfig>,\n  },\n  /** 缩放配置项（详情查看：https://vxetable.cn/#/grid/api） */\n  zoomConfig: {\n    type: Object as PropType<VxeGridPropTypes.ZoomConfig>,\n  },\n  //:==================================================: 局部配置 :==================================================://\n\n  //:==================================================: 扩展配置 :==================================================://\n  /** 控制 filterform & customaction 整体显示与隐藏 */\n  showOperations: {\n    type: Boolean,\n    default: true,\n  },\n  /** 表格过滤表单 filterform 配置 */\n  filterFormConfig: {\n    type: Object as PropType<TableProFilterFormConfig>,\n    default: () => ({\n      enabled: true,\n    }),\n  },\n  /** 自定义按钮 customaction 配置 */\n  customActionConfig: {\n    type: Object as PropType<TableProCustomActionConfig>,\n    default: () => ({\n      enabled: true,\n    }),\n  },\n  /** 异步数据是分页还是列表 */\n  apiType: {\n    type: String as PropType<'pager' | 'list'>,\n    default: 'pager',\n  },\n  /** 异步数据接口 */\n  api: {\n    type: Function as PropType<TableProApi<Promise<any>>>,\n  },\n  /** 异步数据接口请求前函数 */\n  beforeApi: {\n    type: Function as PropType<TableProApi<any>>,\n  },\n  /** 异步数据接口请求后函数 */\n  afterApi: {\n    type: Function as PropType<(...arg: any[]) => any>,\n  },\n  /** 异步数据接口配置 */\n  apiSetting: {\n    type: Object as PropType<Partial<FetchSetting>>,\n    default: () => {\n      return FETCH_SETTING\n    },\n  },\n  /** 表格数据是否立即加载 */\n  immediate: {\n    type: Boolean,\n    default: true,\n  },\n  /** vxetable 默认会自动还原滚动条，这里只控制筛选、翻页、点击刷新后是否滚到顶部 */\n  scrollTopActions: {\n    type: Array as PropType<('paginate' | 'refresh')[]>,\n    default: () => ['paginate', 'refresh'],\n  },\n  /** 给table填充颜色，将table和filterform区分开 */\n  fillInner: {\n    type: Boolean,\n    default: true,\n  },\n  /** 覆盖tooltip */\n  showTooltip: {\n    type: Boolean,\n    default: true,\n  },\n  /** 是否使用固定行高 */\n  fixedLineHeight: {\n    type: Boolean,\n    default: true,\n  },\n  /** 接权限相关参数 */\n  permission: {\n    type: Object as PropType<PermissionContext['permission']>,\n  },\n  //:==================================================: 扩展配置 :==================================================://\n}\n/** table props 类型 */\nexport type TableProProps = ExtractPropTypes<typeof tableProProps>\n"],"names":[],"mappings":";;AASA,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE;AAChC,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC;AACW,MAAC,aAAa,GAAG,eAAe;AAChC,MAAC,aAAa,GAAG;AAC7B,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;AACxB,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,EAAE,EAAE;AACN,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,IAAI,OAAO,EAAE,MAAM;AACnB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1B,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,KAAK;AACf,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;AAC3B,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;AACxB,IAAI,OAAO,EAAE,aAAa;AAC1B,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;AACxB,IAAI,OAAO,EAAE,aAAa;AAC1B,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;AACxB,IAAI,OAAO,EAAE,aAAa;AAC1B,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,GAAG;AACH,EAAE,mBAAmB,EAAE;AACvB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,iBAAiB,EAAE;AACrB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,sBAAsB,EAAE;AAC1B,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;AAC5B,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;AAC5B,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;AAC5B,GAAG;AACH,EAAE,mBAAmB,EAAE;AACvB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;AAC5B,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;AAC5B,GAAG;AACH,EAAE,mBAAmB,EAAE;AACvB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;AAC5B,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,KAAK;AACf,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,KAAK;AACf,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;AACjC,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;AACjC,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC;AACjC,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,YAAY,EAAE,GAAG;AACvB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;AACnC,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,OAAO,EAAE,IAAI;AACnB,MAAM,EAAE,EAAE,EAAE;AACZ,MAAM,KAAK,EAAE,EAAE;AACf,KAAK,CAAC;AACN,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,OAAO,EAAE,IAAI;AACnB,MAAM,IAAI,EAAE,SAAS;AACrB,MAAM,EAAE,EAAE,EAAE;AACZ,MAAM,KAAK,EAAE,EAAE;AACf,KAAK,CAAC;AACN,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,SAAS,EAAE,IAAI;AACrB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,QAAQ,EAAE,OAAO;AACvB,MAAM,MAAM,EAAE,mBAAmB;AACjC,KAAK,CAAC;AACN,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,OAAO,EAAE,KAAK;AACpB,MAAM,SAAS,EAAE,IAAI;AACrB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,OAAO,EAAE,IAAI;AACnB,MAAM,KAAK,EAAE,IAAI;AACjB,MAAM,SAAS,EAAE,IAAI;AACrB,MAAM,KAAK,EAAE,KAAK;AAClB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,KAAK,EAAE,MAAM;AACnB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,oBAAoB,EAAE;AACxB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,IAAI,EAAE,MAAM;AAClB,MAAM,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC;AACnE,MAAM,QAAQ,EAAE,SAAS;AACzB,MAAM,SAAS,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;AAC9D,MAAM,UAAU,EAAE,SAAS;AAC3B,KAAK,CAAC;AACN,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,aAAa,EAAE;AACjB,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH,EAAE,cAAc,EAAE;AAClB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,OAAO,EAAE,IAAI;AACnB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,kBAAkB,EAAE;AACtB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,MAAM,OAAO,EAAE,IAAI;AACnB,KAAK,CAAC;AACN,GAAG;AACH,EAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,OAAO;AACpB,GAAG;AACH,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,QAAQ,EAAE;AACZ,IAAI,IAAI,EAAE,QAAQ;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,OAAO,EAAE,MAAM;AACnB,MAAM,OAAO,aAAa,CAAC;AAC3B,KAAK;AACL,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,gBAAgB,EAAE;AACpB,IAAI,IAAI,EAAE,KAAK;AACf,IAAI,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC;AAC1C,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,MAAM;AAChB,GAAG;AACH;;;;"}