= (props) => {
useEffect(() => {
if (isOpen && !isMobile) {
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
inputRef.current && inputRef.current.focus();
}
}, [isOpen, isMobile]);
+
return (
= (props) => {
const {
diff --git a/packages/ui/src/dropdown/multi-select.tsx b/packages/ui/src/dropdown/multi-select.tsx
index 400e2c7284..e464cc3c99 100644
--- a/packages/ui/src/dropdown/multi-select.tsx
+++ b/packages/ui/src/dropdown/multi-select.tsx
@@ -5,7 +5,7 @@ import { usePopper } from "react-popper";
// plane imports
import { useOutsideClickDetector } from "@plane/hooks";
// local imports
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { useDropdownKeyPressed } from "../hooks/use-dropdown-key-pressed";
import { DropdownButton } from "./common";
import { DropdownOptions } from "./common/options";
diff --git a/packages/ui/src/dropdown/single-select.tsx b/packages/ui/src/dropdown/single-select.tsx
index 9614feb516..7e352390b3 100644
--- a/packages/ui/src/dropdown/single-select.tsx
+++ b/packages/ui/src/dropdown/single-select.tsx
@@ -5,7 +5,7 @@ import { usePopper } from "react-popper";
// plane imports
import { useOutsideClickDetector } from "@plane/hooks";
// local imports
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { useDropdownKeyPressed } from "../hooks/use-dropdown-key-pressed";
import { DropdownButton } from "./common";
import { DropdownOptions } from "./common/options";
diff --git a/packages/ui/src/dropdowns/context-menu/item.tsx b/packages/ui/src/dropdowns/context-menu/item.tsx
index 8e2050d9dd..68626a61dc 100644
--- a/packages/ui/src/dropdowns/context-menu/item.tsx
+++ b/packages/ui/src/dropdowns/context-menu/item.tsx
@@ -2,7 +2,7 @@ import { ChevronRight } from "lucide-react";
import React, { useState, useRef, useContext } from "react";
import { usePopper } from "react-popper";
// helpers
-import { cn } from "../../../helpers";
+import { cn } from "../../utils";
// types
import { TContextMenuItem, ContextMenuContext, Portal } from "./root";
diff --git a/packages/ui/src/dropdowns/context-menu/root.tsx b/packages/ui/src/dropdowns/context-menu/root.tsx
index 480607dbac..b801a62df1 100644
--- a/packages/ui/src/dropdowns/context-menu/root.tsx
+++ b/packages/ui/src/dropdowns/context-menu/root.tsx
@@ -1,11 +1,9 @@
import React, { useEffect, useRef, useState } from "react";
import ReactDOM from "react-dom";
-// plane helpers
-import { useOutsideClickDetector } from "@plane/hooks";
-// helpers
-import { cn } from "../../../helpers";
// hooks
import { usePlatformOS } from "../../hooks/use-platform-os";
+// helpers
+import { cn } from "../../utils";
// components
import { ContextMenuItem } from "./item";
diff --git a/packages/ui/src/dropdowns/custom-menu.tsx b/packages/ui/src/dropdowns/custom-menu.tsx
index 103bd20e19..44a85b76f2 100644
--- a/packages/ui/src/dropdowns/custom-menu.tsx
+++ b/packages/ui/src/dropdowns/custom-menu.tsx
@@ -6,7 +6,7 @@ import { usePopper } from "react-popper";
// plane helpers
import { useOutsideClickDetector } from "@plane/hooks";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// hooks
import { useDropdownKeyDown } from "../hooks/use-dropdown-key-down";
// types
diff --git a/packages/ui/src/dropdowns/custom-search-select.tsx b/packages/ui/src/dropdowns/custom-search-select.tsx
index 68fb90cb5d..39b505ea91 100644
--- a/packages/ui/src/dropdowns/custom-search-select.tsx
+++ b/packages/ui/src/dropdowns/custom-search-select.tsx
@@ -6,7 +6,7 @@ import { usePopper } from "react-popper";
// plane imports
import { useOutsideClickDetector } from "@plane/hooks";
// local imports
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { useDropdownKeyDown } from "../hooks/use-dropdown-key-down";
import { Tooltip } from "../tooltip";
import { ICustomSearchSelectProps } from "./helper";
diff --git a/packages/ui/src/dropdowns/custom-select.tsx b/packages/ui/src/dropdowns/custom-select.tsx
index 835cb82a7a..6502017268 100644
--- a/packages/ui/src/dropdowns/custom-select.tsx
+++ b/packages/ui/src/dropdowns/custom-select.tsx
@@ -7,7 +7,7 @@ import { useOutsideClickDetector } from "@plane/hooks";
// hooks
import { useDropdownKeyDown } from "../hooks/use-dropdown-key-down";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// types
import { ICustomSelectItemProps, ICustomSelectProps } from "./helper";
diff --git a/packages/ui/src/emoji/emoji-icon-picker-new.tsx b/packages/ui/src/emoji/emoji-icon-picker-new.tsx
index 7144ebd36a..4f29d766d1 100644
--- a/packages/ui/src/emoji/emoji-icon-picker-new.tsx
+++ b/packages/ui/src/emoji/emoji-icon-picker-new.tsx
@@ -5,7 +5,7 @@ import EmojiPicker from "emoji-picker-react";
// plane helpers
import { useOutsideClickDetector } from "@plane/hooks";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// hooks
import { LucideIconsList } from "./lucide-icons-list";
// helpers
diff --git a/packages/ui/src/emoji/emoji-icon-picker.tsx b/packages/ui/src/emoji/emoji-icon-picker.tsx
index 5d1a0d472f..98451c28da 100644
--- a/packages/ui/src/emoji/emoji-icon-picker.tsx
+++ b/packages/ui/src/emoji/emoji-icon-picker.tsx
@@ -7,7 +7,7 @@ import { useOutsideClickDetector } from "@plane/hooks";
// components
import { IconsList } from "./icons-list";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// hooks
import { EmojiIconPickerTypes, TABS_LIST, TCustomEmojiPicker } from "./emoji-icon-helper";
diff --git a/packages/ui/src/emoji/icons-list.tsx b/packages/ui/src/emoji/icons-list.tsx
index 7c6d25ba5f..6e0722e309 100644
--- a/packages/ui/src/emoji/icons-list.tsx
+++ b/packages/ui/src/emoji/icons-list.tsx
@@ -3,7 +3,7 @@ import React, { useEffect, useState } from "react";
// icons
import useFontFaceObserver from "use-font-face-observer";
import { MATERIAL_ICONS_LIST } from "..";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { Input } from "../form-fields";
import { InfoIcon } from "../icons";
// components
diff --git a/packages/ui/src/emoji/lucide-icons-list.tsx b/packages/ui/src/emoji/lucide-icons-list.tsx
index ee5b2fc204..012ced1eb9 100644
--- a/packages/ui/src/emoji/lucide-icons-list.tsx
+++ b/packages/ui/src/emoji/lucide-icons-list.tsx
@@ -2,7 +2,7 @@ import { Search } from "lucide-react";
import React, { useEffect, useState } from "react";
// local imports
import { LUCIDE_ICONS_LIST } from "..";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { Input } from "../form-fields";
import { InfoIcon } from "../icons";
import { DEFAULT_COLORS, TIconsListProps, adjustColorForContrast } from "./emoji-icon-helper";
diff --git a/packages/ui/src/favorite-star.tsx b/packages/ui/src/favorite-star.tsx
index b71714ab09..8614f65656 100644
--- a/packages/ui/src/favorite-star.tsx
+++ b/packages/ui/src/favorite-star.tsx
@@ -1,7 +1,7 @@
-import React from "react";
import { Star } from "lucide-react";
+import React from "react";
// helpers
-import { cn } from "../helpers";
+import { cn } from "./utils";
type Props = {
buttonClassName?: string;
diff --git a/packages/ui/src/form-fields/checkbox.tsx b/packages/ui/src/form-fields/checkbox.tsx
index b2e01908df..7f9b8134dc 100644
--- a/packages/ui/src/form-fields/checkbox.tsx
+++ b/packages/ui/src/form-fields/checkbox.tsx
@@ -1,6 +1,6 @@
import * as React from "react";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export interface CheckboxProps extends React.InputHTMLAttributes {
containerClassName?: string;
diff --git a/packages/ui/src/form-fields/input-color-picker.tsx b/packages/ui/src/form-fields/input-color-picker.tsx
index eb7b83977f..c069dd9b07 100644
--- a/packages/ui/src/form-fields/input-color-picker.tsx
+++ b/packages/ui/src/form-fields/input-color-picker.tsx
@@ -3,7 +3,7 @@ import * as React from "react";
import { ColorResult, SketchPicker } from "react-color";
import { usePopper } from "react-popper";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// components
import { Button } from "../button";
import { Input } from "./input";
diff --git a/packages/ui/src/form-fields/input.tsx b/packages/ui/src/form-fields/input.tsx
index 4e71ea89a0..d42c4c098e 100644
--- a/packages/ui/src/form-fields/input.tsx
+++ b/packages/ui/src/form-fields/input.tsx
@@ -1,6 +1,6 @@
import * as React from "react";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export interface InputProps extends React.InputHTMLAttributes {
mode?: "primary" | "transparent" | "true-transparent";
diff --git a/packages/ui/src/form-fields/textarea.tsx b/packages/ui/src/form-fields/textarea.tsx
index 786e00a1de..ed7d75133e 100644
--- a/packages/ui/src/form-fields/textarea.tsx
+++ b/packages/ui/src/form-fields/textarea.tsx
@@ -1,6 +1,6 @@
import React, { useRef } from "react";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// hooks
import { useAutoResizeTextArea } from "../hooks/use-auto-resize-textarea";
diff --git a/packages/ui/src/header/header.tsx b/packages/ui/src/header/header.tsx
index b60d41b960..1987297e9e 100644
--- a/packages/ui/src/header/header.tsx
+++ b/packages/ui/src/header/header.tsx
@@ -1,5 +1,5 @@
import * as React from "react";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { EHeaderVariant, getHeaderStyle, THeaderVariant } from "./helper";
import { ERowVariant, Row } from "../row";
diff --git a/packages/ui/src/icons/priority-icon.tsx b/packages/ui/src/icons/priority-icon.tsx
index a6ea01329d..e7da9debba 100644
--- a/packages/ui/src/icons/priority-icon.tsx
+++ b/packages/ui/src/icons/priority-icon.tsx
@@ -1,6 +1,6 @@
import * as React from "react";
import { AlertCircle, Ban, SignalHigh, SignalLow, SignalMedium } from "lucide-react";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export type TIssuePriorities = "urgent" | "high" | "medium" | "low" | "none";
diff --git a/packages/ui/src/loader.tsx b/packages/ui/src/loader.tsx
index f8ca5ea7be..6eaa74c65d 100644
--- a/packages/ui/src/loader.tsx
+++ b/packages/ui/src/loader.tsx
@@ -1,6 +1,6 @@
import React from "react";
// helpers
-import { cn } from "../helpers";
+import { cn } from "./utils";
type Props = {
children: React.ReactNode;
diff --git a/packages/ui/src/modals/alert-modal.tsx b/packages/ui/src/modals/alert-modal.tsx
index 0bd007f26d..55c994f9a7 100644
--- a/packages/ui/src/modals/alert-modal.tsx
+++ b/packages/ui/src/modals/alert-modal.tsx
@@ -6,7 +6,7 @@ import { ModalCore } from "./modal-core";
// constants
import { EModalPosition, EModalWidth } from "./constants";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export type TModalVariant = "danger" | "primary";
diff --git a/packages/ui/src/modals/modal-core.tsx b/packages/ui/src/modals/modal-core.tsx
index 798917481d..1cae5bcb79 100644
--- a/packages/ui/src/modals/modal-core.tsx
+++ b/packages/ui/src/modals/modal-core.tsx
@@ -3,7 +3,7 @@ import { Dialog, Transition } from "@headlessui/react";
// constants
import { EModalPosition, EModalWidth } from "./constants";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
type Props = {
children: React.ReactNode;
diff --git a/packages/ui/src/oauth/oauth-button.tsx b/packages/ui/src/oauth/oauth-button.tsx
index 6ce4803382..1bf454dad3 100644
--- a/packages/ui/src/oauth/oauth-button.tsx
+++ b/packages/ui/src/oauth/oauth-button.tsx
@@ -1,5 +1,5 @@
import * as React from "react";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export interface OAuthButtonProps extends React.ButtonHTMLAttributes {
text: string;
diff --git a/packages/ui/src/oauth/oauth-options.tsx b/packages/ui/src/oauth/oauth-options.tsx
index 0e282792d6..1c42cb19d5 100644
--- a/packages/ui/src/oauth/oauth-options.tsx
+++ b/packages/ui/src/oauth/oauth-options.tsx
@@ -1,5 +1,5 @@
import * as React from "react";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { OAuthButton } from "./oauth-button";
export type TOAuthOption = {
diff --git a/packages/ui/src/popovers/popover-menu.tsx b/packages/ui/src/popovers/popover-menu.tsx
index 079aa3e25e..6828aabb04 100644
--- a/packages/ui/src/popovers/popover-menu.tsx
+++ b/packages/ui/src/popovers/popover-menu.tsx
@@ -2,7 +2,7 @@ import React, { Fragment } from "react";
// components
import { Popover } from "./popover";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// types
import { TPopoverMenu } from "./types";
diff --git a/packages/ui/src/popovers/popover.tsx b/packages/ui/src/popovers/popover.tsx
index 4860a25a89..d1a49b13f0 100644
--- a/packages/ui/src/popovers/popover.tsx
+++ b/packages/ui/src/popovers/popover.tsx
@@ -2,7 +2,7 @@ import React, { Fragment, Ref, useState } from "react";
import { usePopper } from "react-popper";
import { Popover as HeadlessReactPopover, Transition } from "@headlessui/react";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// types
import { TPopover } from "./types";
import { EllipsisVertical } from "lucide-react";
diff --git a/packages/ui/src/progress/linear-progress-indicator.tsx b/packages/ui/src/progress/linear-progress-indicator.tsx
index e32087d49c..d1127ad2d7 100644
--- a/packages/ui/src/progress/linear-progress-indicator.tsx
+++ b/packages/ui/src/progress/linear-progress-indicator.tsx
@@ -1,6 +1,6 @@
import React from "react";
import { Tooltip } from "../tooltip";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
type Props = {
data: any;
diff --git a/packages/ui/src/row/row.tsx b/packages/ui/src/row/row.tsx
index 309aa5f57a..f482fc808c 100644
--- a/packages/ui/src/row/row.tsx
+++ b/packages/ui/src/row/row.tsx
@@ -1,5 +1,5 @@
import * as React from "react";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { ERowVariant, rowStyle, TRowVariant } from "./helper";
export interface RowProps extends React.HTMLAttributes {
diff --git a/packages/ui/src/scroll-area.tsx b/packages/ui/src/scroll-area.tsx
index 435ecf4916..ac5419f730 100644
--- a/packages/ui/src/scroll-area.tsx
+++ b/packages/ui/src/scroll-area.tsx
@@ -1,7 +1,7 @@
"use client";
import * as RadixScrollArea from "@radix-ui/react-scroll-area";
import React, { FC } from "react";
-import { cn } from "../helpers";
+import { cn } from "./utils";
type TScrollAreaProps = {
type?: "auto" | "always" | "scroll" | "hover";
diff --git a/packages/ui/src/sortable/draggable.tsx b/packages/ui/src/sortable/draggable.tsx
index 7fded837e6..7af1fa6277 100644
--- a/packages/ui/src/sortable/draggable.tsx
+++ b/packages/ui/src/sortable/draggable.tsx
@@ -2,7 +2,7 @@ import React, { useEffect, useRef, useState } from "react";
import { combine } from "@atlaskit/pragmatic-drag-and-drop/combine";
import { draggable, dropTargetForElements } from "@atlaskit/pragmatic-drag-and-drop/element/adapter";
import { isEqual } from "lodash";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { attachClosestEdge, extractClosestEdge } from "@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge";
import { DropIndicator } from "../drop-indicator";
diff --git a/packages/ui/src/spinners/circular-spinner.tsx b/packages/ui/src/spinners/circular-spinner.tsx
index 010ff6bfae..2226d39ea5 100644
--- a/packages/ui/src/spinners/circular-spinner.tsx
+++ b/packages/ui/src/spinners/circular-spinner.tsx
@@ -1,6 +1,6 @@
import * as React from "react";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export interface ISpinner extends React.SVGAttributes {
height?: string;
diff --git a/packages/ui/src/tables/table.tsx b/packages/ui/src/tables/table.tsx
index 7c8c161868..c184081441 100644
--- a/packages/ui/src/tables/table.tsx
+++ b/packages/ui/src/tables/table.tsx
@@ -1,6 +1,6 @@
import React from "react";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// types
import { TTableData } from "./types";
diff --git a/packages/ui/src/tabs/tab-list.tsx b/packages/ui/src/tabs/tab-list.tsx
index ac3cb81736..c7ae107245 100644
--- a/packages/ui/src/tabs/tab-list.tsx
+++ b/packages/ui/src/tabs/tab-list.tsx
@@ -2,7 +2,7 @@ import { Tab } from "@headlessui/react";
import { LucideProps } from "lucide-react";
import React, { FC } from "react";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export type TabListItem = {
key: string;
diff --git a/packages/ui/src/tabs/tabs.tsx b/packages/ui/src/tabs/tabs.tsx
index 32b5c23d67..dc7b3206bf 100644
--- a/packages/ui/src/tabs/tabs.tsx
+++ b/packages/ui/src/tabs/tabs.tsx
@@ -2,7 +2,7 @@ import { Tab } from "@headlessui/react";
import React, { FC, Fragment, useEffect, useState } from "react";
// helpers
import { useLocalStorage } from "@plane/hooks";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
// types
import { TabList, TabListItem } from "./tab-list";
diff --git a/packages/ui/src/tag/tag.tsx b/packages/ui/src/tag/tag.tsx
index deb3d1b0f6..6f1b0e62f0 100644
--- a/packages/ui/src/tag/tag.tsx
+++ b/packages/ui/src/tag/tag.tsx
@@ -1,5 +1,5 @@
import * as React from "react";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
import { ETagSize, ETagVariant, getTagStyle, TTagSize, TTagVariant } from "./helper";
export interface TagProps extends React.ComponentProps<"div"> {
diff --git a/packages/ui/src/toast/index.tsx b/packages/ui/src/toast/index.tsx
index d4d837eb07..710eb23622 100644
--- a/packages/ui/src/toast/index.tsx
+++ b/packages/ui/src/toast/index.tsx
@@ -5,7 +5,7 @@ import { AlertTriangle, CheckCircle2, X, XCircle } from "lucide-react";
// spinner
import { CircularBarSpinner } from "../spinners";
// helper
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export enum TOAST_TYPE {
SUCCESS = "success",
diff --git a/packages/ui/src/tooltip/tooltip.tsx b/packages/ui/src/tooltip/tooltip.tsx
index 45bc9d6b90..677a9ef661 100644
--- a/packages/ui/src/tooltip/tooltip.tsx
+++ b/packages/ui/src/tooltip/tooltip.tsx
@@ -1,7 +1,7 @@
import { Tooltip2 } from "@blueprintjs/popover2";
import React, { useEffect, useRef, useState } from "react";
// helpers
-import { cn } from "../../helpers";
+import { cn } from "../utils";
export type TPosition =
| "top"
@@ -22,9 +22,9 @@ export type TPosition =
interface ITooltipProps {
tooltipHeading?: string;
- tooltipContent: string | any;
+ tooltipContent: string | React.ReactNode;
position?: TPosition;
- children: any;
+ children: React.ReactElement;
disabled?: boolean;
className?: string;
openDelay?: number;
diff --git a/packages/ui/src/typography/sub-heading.tsx b/packages/ui/src/typography/sub-heading.tsx
index 9e7075583c..094d041efd 100644
--- a/packages/ui/src/typography/sub-heading.tsx
+++ b/packages/ui/src/typography/sub-heading.tsx
@@ -1,5 +1,5 @@
import React from "react";
-import { cn } from "../../helpers";
+import { cn } from "../utils";
type Props = {
children: React.ReactNode;
diff --git a/packages/ui/helpers.ts b/packages/ui/src/utils/classname.tsx
similarity index 100%
rename from packages/ui/helpers.ts
rename to packages/ui/src/utils/classname.tsx
diff --git a/packages/ui/src/utils/index.ts b/packages/ui/src/utils/index.ts
index 6ef8d54d41..62ca197ac9 100644
--- a/packages/ui/src/utils/index.ts
+++ b/packages/ui/src/utils/index.ts
@@ -1 +1,2 @@
+export * from "./classname";
export * from "./icons";
diff --git a/yarn.lock b/yarn.lock
index 72f6c27742..ce68498ab0 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -4768,7 +4768,7 @@
dependencies:
"@types/reactcss" "*"
-"@types/react-dom@18.3.0", "@types/react-dom@18.3.5", "@types/react-dom@^18.2.18":
+"@types/react-dom@18.3.0", "@types/react-dom@18.3.1", "@types/react-dom@18.3.5", "@types/react-dom@^18.2.18":
version "18.3.5"
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.3.5.tgz#45f9f87398c5dcea085b715c58ddcf1faf65f716"
integrity sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==
@@ -4785,7 +4785,7 @@
resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.4.12.tgz#b5d76568485b02a307238270bfe96cb51ee2a044"
integrity sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==
-"@types/react@*", "@types/react@18.3.1", "@types/react@18.3.18", "@types/react@^18.3.11":
+"@types/react@*", "@types/react@18.3.1", "@types/react@18.3.11", "@types/react@18.3.18", "@types/react@^18.3.11":
version "18.3.18"
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.3.18.tgz#9b382c4cd32e13e463f97df07c2ee3bbcd26904b"
integrity sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==