import { createHotContext as __vite__createHotContext } from "/@vite/client";import.meta.hot = __vite__createHotContext("/src/pages/PrivacyPolicy.tsx");import __vite__cjsImport0_react_jsxDevRuntime from "/@fs/home/runner/workspace/node_modules/.vite/deps/react_jsx-dev-runtime.js?v=c4080d1c"; const jsxDEV = __vite__cjsImport0_react_jsxDevRuntime["jsxDEV"];
import RefreshRuntime from "/@react-refresh";
const inWebWorker = typeof WorkerGlobalScope !== "undefined" && self instanceof WorkerGlobalScope;
let prevRefreshReg;
let prevRefreshSig;
if (import.meta.hot && !inWebWorker) {
  if (!window.__vite_plugin_react_preamble_installed__) {
    throw new Error("@vitejs/plugin-react can't detect preamble. Something is wrong. See https://github.com/vitejs/vite-plugin-react/pull/11#discussion_r430879201");
  }
  prevRefreshReg = window.$RefreshReg$;
  prevRefreshSig = window.$RefreshSig$;
  window.$RefreshReg$ = (type, id) => {
    RefreshRuntime.register(type, "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx " + id);
  };
  window.$RefreshSig$ = RefreshRuntime.createSignatureFunctionForTransform;
}
var _s = $RefreshSig$();
import __vite__cjsImport3_react from "/@fs/home/runner/workspace/node_modules/.vite/deps/react.js?v=c4080d1c"; const useState = __vite__cjsImport3_react["useState"]; const useEffect = __vite__cjsImport3_react["useEffect"]; const useRef = __vite__cjsImport3_react["useRef"];
import { useTranslation } from "/src/lib/i18n/TranslationContext.tsx";
import { Card, CardContent, CardHeader, CardTitle } from "/src/components/ui/card.tsx";
import { Link } from "/@fs/home/runner/workspace/node_modules/.vite/deps/wouter.js?v=c4080d1c";
import { ArrowLeft, ArrowUp, Search } from "/@fs/home/runner/workspace/node_modules/.vite/deps/lucide-react.js?v=c4080d1c";
import { Input } from "/src/components/ui/input.tsx";
import { Button } from "/src/components/ui/button.tsx";
import { ScrollArea } from "/src/components/ui/scroll-area.tsx";
import {
  Accordion,
  AccordionContent,
  AccordionItem,
  AccordionTrigger
} from "/src/components/ui/accordion.tsx";
export default function PrivacyPolicy() {
  _s();
  const { t } = useTranslation();
  const [searchTerm, setSearchTerm] = useState("");
  const contentRef = useRef(null);
  const [showBackToTop, setShowBackToTop] = useState(false);
  useEffect(() => {
    window.scrollTo(0, 0);
    const handleScroll = () => {
      setShowBackToTop(window.scrollY > 300);
    };
    window.addEventListener("scroll", handleScroll);
    return () => window.removeEventListener("scroll", handleScroll);
  }, []);
  const sections = [
    { id: "responsible", title: "1. Data Controller" },
    { id: "information", title: "2. Information We Collect" },
    { id: "usage", title: "3. How We Use Your Information" },
    { id: "cookies", title: "4. Use of Cookies" },
    { id: "thirdparty", title: "5. Third-Party Links" },
    { id: "protection", title: "6. Data Protection" },
    { id: "rights", title: "7. Your Rights" },
    { id: "changes", title: "8. Changes to Privacy Policy" },
    { id: "contact", title: "9. Contact" }
  ];
  const scrollToSection = (id) => {
    const element = document.getElementById(id);
    if (element) {
      element.scrollIntoView({ behavior: "smooth" });
    }
  };
  const scrollToTop = () => {
    window.scrollTo({ top: 0, behavior: "smooth" });
  };
  return /* @__PURE__ */ jsxDEV("div", { className: "container mx-auto px-4 py-8", children: [
    /* @__PURE__ */ jsxDEV(Link, { href: "/", className: "inline-flex items-center text-blue-600 hover:text-blue-800 mb-6", children: [
      /* @__PURE__ */ jsxDEV(ArrowLeft, { className: "w-4 h-4 mr-2" }, void 0, false, {
        fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
        lineNumber: 59,
        columnNumber: 9
      }, this),
      "Back to Home"
    ] }, void 0, true, {
      fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
      lineNumber: 58,
      columnNumber: 7
    }, this),
    /* @__PURE__ */ jsxDEV(Card, { className: "max-w-4xl mx-auto", children: [
      /* @__PURE__ */ jsxDEV(CardHeader, { children: [
        /* @__PURE__ */ jsxDEV(CardTitle, { children: t.privacyPolicy.title }, void 0, false, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 65,
          columnNumber: 11
        }, this),
        /* @__PURE__ */ jsxDEV("div", { className: "mt-4 relative", children: [
          /* @__PURE__ */ jsxDEV(
            Input,
            {
              type: "search",
              placeholder: "Search privacy policy...",
              value: searchTerm,
              onChange: (e) => setSearchTerm(e.target.value),
              className: "max-w-sm pl-8"
            },
            void 0,
            false,
            {
              fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
              lineNumber: 67,
              columnNumber: 13
            },
            this
          ),
          /* @__PURE__ */ jsxDEV(Search, { className: "w-4 h-4 absolute left-2 top-1/2 -translate-y-1/2 text-gray-500" }, void 0, false, {
            fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
            lineNumber: 74,
            columnNumber: 13
          }, this)
        ] }, void 0, true, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 66,
          columnNumber: 11
        }, this)
      ] }, void 0, true, {
        fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
        lineNumber: 64,
        columnNumber: 9
      }, this),
      /* @__PURE__ */ jsxDEV(CardContent, { children: [
        /* @__PURE__ */ jsxDEV("div", { className: "mb-8 p-4 bg-gray-50 rounded-lg", children: [
          /* @__PURE__ */ jsxDEV("h3", { className: "text-lg font-semibold mb-4", children: "Table of Contents" }, void 0, false, {
            fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
            lineNumber: 81,
            columnNumber: 13
          }, this),
          /* @__PURE__ */ jsxDEV("nav", { children: /* @__PURE__ */ jsxDEV("ul", { className: "space-y-2", children: sections.map(
            (section) => /* @__PURE__ */ jsxDEV("li", { children: /* @__PURE__ */ jsxDEV(
              "button",
              {
                onClick: () => scrollToSection(section.id),
                className: "text-blue-600 hover:text-blue-800 text-left",
                children: section.title
              },
              void 0,
              false,
              {
                fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
                lineNumber: 86,
                columnNumber: 21
              },
              this
            ) }, section.id, false, {
              fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
              lineNumber: 85,
              columnNumber: 17
            }, this)
          ) }, void 0, false, {
            fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
            lineNumber: 83,
            columnNumber: 15
          }, this) }, void 0, false, {
            fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
            lineNumber: 82,
            columnNumber: 13
          }, this)
        ] }, void 0, true, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 80,
          columnNumber: 11
        }, this),
        /* @__PURE__ */ jsxDEV(ScrollArea, { className: "h-[600px] rounded-md border p-4", children: /* @__PURE__ */ jsxDEV("div", { ref: contentRef, className: "prose dark:prose-invert max-w-none", children: /* @__PURE__ */ jsxDEV(Accordion, { type: "single", collapsible: true, children: sections.map(
          (section) => /* @__PURE__ */ jsxDEV(AccordionItem, { value: section.id, children: [
            /* @__PURE__ */ jsxDEV(AccordionTrigger, { id: section.id, children: section.title }, void 0, false, {
              fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
              lineNumber: 104,
              columnNumber: 21
            }, this),
            /* @__PURE__ */ jsxDEV(AccordionContent, { children: /* @__PURE__ */ jsxDEV("div", { dangerouslySetInnerHTML: {
              __html: t.privacyPolicy.content.split(section.title)[1]?.split(sections[sections.indexOf(section) + 1]?.title || "</h2>")[0] || ""
            } }, void 0, false, {
              fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
              lineNumber: 108,
              columnNumber: 23
            }, this) }, void 0, false, {
              fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
              lineNumber: 107,
              columnNumber: 21
            }, this)
          ] }, section.id, true, {
            fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
            lineNumber: 103,
            columnNumber: 17
          }, this)
        ) }, void 0, false, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 101,
          columnNumber: 15
        }, this) }, void 0, false, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 100,
          columnNumber: 13
        }, this) }, void 0, false, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 99,
          columnNumber: 11
        }, this),
        /* @__PURE__ */ jsxDEV("div", { className: "mt-8", children: /* @__PURE__ */ jsxDEV("p", { className: "text-sm text-muted-foreground", children: t.privacyPolicy.lastUpdated.replace("{{date}}", (/* @__PURE__ */ new Date()).toLocaleDateString()) }, void 0, false, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 122,
          columnNumber: 13
        }, this) }, void 0, false, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 121,
          columnNumber: 11
        }, this)
      ] }, void 0, true, {
        fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
        lineNumber: 78,
        columnNumber: 9
      }, this)
    ] }, void 0, true, {
      fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
      lineNumber: 63,
      columnNumber: 7
    }, this),
    showBackToTop && /* @__PURE__ */ jsxDEV(
      Button,
      {
        className: "fixed bottom-8 right-8 rounded-full p-2",
        onClick: scrollToTop,
        variant: "secondary",
        children: /* @__PURE__ */ jsxDEV(ArrowUp, { className: "h-4 w-4" }, void 0, false, {
          fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
          lineNumber: 135,
          columnNumber: 11
        }, this)
      },
      void 0,
      false,
      {
        fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
        lineNumber: 130,
        columnNumber: 7
      },
      this
    )
  ] }, void 0, true, {
    fileName: "/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx",
    lineNumber: 57,
    columnNumber: 5
  }, this);
}
_s(PrivacyPolicy, "CgFZok/7dnCZmucGE/sLgvUph7M=", false, function() {
  return [useTranslation];
});
_c = PrivacyPolicy;
var _c;
$RefreshReg$(_c, "PrivacyPolicy");
if (import.meta.hot && !inWebWorker) {
  window.$RefreshReg$ = prevRefreshReg;
  window.$RefreshSig$ = prevRefreshSig;
}
if (import.meta.hot && !inWebWorker) {
  RefreshRuntime.__hmr_import(import.meta.url).then((currentExports) => {
    RefreshRuntime.registerExportsForReactRefresh("/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx", currentExports);
    import.meta.hot.accept((nextExports) => {
      if (!nextExports) return;
      const invalidateMessage = RefreshRuntime.validateRefreshBoundaryAndEnqueueUpdate("/home/runner/workspace/client/src/pages/PrivacyPolicy.tsx", currentExports, nextExports);
      if (invalidateMessage) import.meta.hot.invalidate(invalidateMessage);
    });
  });
}

//# sourceMappingURL=data:application/json;base64,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QUFBO0FBQUE7QUFBQTtBQUFBLFNBaUZBO0FBRUo7QUFBQ3hCLEdBNUh1QkQsZUFBYTtBQUFBLFVBQ3JCaEIsY0FBYztBQUFBO0FBQUF5RCxLQUROekM7QUFBYSxJQUFBeUM7QUFBQUMsYUFBQUQsSUFBQSIsIm5hbWVzIjpbInVzZUVmZmVjdCIsInVzZVRyYW5zbGF0aW9uIiwiQ2FyZCIsIkNhcmRDb250ZW50IiwiQ2FyZEhlYWRlciIsIkNhcmRUaXRsZSIsIkxpbmsiLCJBcnJvd0xlZnQiLCJBcnJvd1VwIiwiU2VhcmNoIiwiSW5wdXQiLCJCdXR0b24iLCJTY3JvbGxBcmVhIiwiQWNjb3JkaW9uIiwiQWNjb3JkaW9uQ29udGVudCIsIkFjY29yZGlvbkl0ZW0iLCJBY2NvcmRpb25UcmlnZ2VyIiwiUHJpdmFjeVBvbGljeSIsIl9zIiwidCIsInNlYXJjaFRlcm0iLCJzZXRTZWFyY2hUZXJtIiwidXNlU3RhdGUiLCJjb250ZW50UmVmIiwidXNlUmVmIiwic2hvd0JhY2tUb1RvcCIsInNldFNob3dCYWNrVG9Ub3AiLCJ3aW5kb3ciLCJzY3JvbGxUbyIsImhhbmRsZVNjcm9sbCIsInNjcm9sbFkiLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsInNlY3Rpb25zIiwiaWQiLCJ0aXRsZSIsInNjcm9sbFRvU2VjdGlvbiIsImVsZW1lbnQiLCJkb2N1bWVudCIsImdldEVsZW1lbnRCeUlkIiwic2Nyb2xsSW50b1ZpZXciLCJiZWhhdmlvciIsInNjcm9sbFRvVG9wIiwidG9wIiwicHJpdmFjeVBvbGljeSIsImUiLCJ0YXJnZXQiLCJ2YWx1ZSIsIm1hcCIsInNlY3Rpb24iLCJfX2h0bWwiLCJjb250ZW50Iiwic3BsaXQiLCJpbmRleE9mIiwibGFzdFVwZGF0ZWQiLCJyZXBsYWNlIiwiRGF0ZSIsInRvTG9jYWxlRGF0ZVN0cmluZyIsIl9jIiwiJFJlZnJlc2hSZWckIl0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VzIjpbIlByaXZhY3lQb2xpY3kudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZVN0YXRlLCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tIFwiQC9saWIvaTE4bi9UcmFuc2xhdGlvbkNvbnRleHRcIjtcbmltcG9ydCB7IENhcmQsIENhcmRDb250ZW50LCBDYXJkSGVhZGVyLCBDYXJkVGl0bGUgfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL2NhcmRcIjtcbmltcG9ydCB7IExpbmsgfSBmcm9tIFwid291dGVyXCI7XG5pbXBvcnQgeyBBcnJvd0xlZnQsIEFycm93VXAsIFNlYXJjaCB9IGZyb20gXCJsdWNpZGUtcmVhY3RcIjtcbmltcG9ydCB7IElucHV0IH0gZnJvbSBcIkAvY29tcG9uZW50cy91aS9pbnB1dFwiO1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSBcIkAvY29tcG9uZW50cy91aS9idXR0b25cIjtcbmltcG9ydCB7IFNjcm9sbEFyZWEgfSBmcm9tIFwiQC9jb21wb25lbnRzL3VpL3Njcm9sbC1hcmVhXCI7XG5pbXBvcnQge1xuICBBY2NvcmRpb24sXG4gIEFjY29yZGlvbkNvbnRlbnQsXG4gIEFjY29yZGlvbkl0ZW0sXG4gIEFjY29yZGlvblRyaWdnZXIsXG59IGZyb20gXCJAL2NvbXBvbmVudHMvdWkvYWNjb3JkaW9uXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFByaXZhY3lQb2xpY3koKSB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oKTtcbiAgY29uc3QgW3NlYXJjaFRlcm0sIHNldFNlYXJjaFRlcm1dID0gdXNlU3RhdGUoXCJcIik7XG4gIGNvbnN0IGNvbnRlbnRSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICBjb25zdCBbc2hvd0JhY2tUb1RvcCwgc2V0U2hvd0JhY2tUb1RvcF0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICB3aW5kb3cuc2Nyb2xsVG8oMCwgMCk7XG5cbiAgICBjb25zdCBoYW5kbGVTY3JvbGwgPSAoKSA9PiB7XG4gICAgICBzZXRTaG93QmFja1RvVG9wKHdpbmRvdy5zY3JvbGxZID4gMzAwKTtcbiAgICB9O1xuXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGhhbmRsZVNjcm9sbCk7XG4gICAgcmV0dXJuICgpID0+IHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBoYW5kbGVTY3JvbGwpO1xuICB9LCBbXSk7XG5cbiAgY29uc3Qgc2VjdGlvbnMgPSBbXG4gICAgeyBpZDogXCJyZXNwb25zaWJsZVwiLCB0aXRsZTogXCIxLiBEYXRhIENvbnRyb2xsZXJcIiB9LFxuICAgIHsgaWQ6IFwiaW5mb3JtYXRpb25cIiwgdGl0bGU6IFwiMi4gSW5mb3JtYXRpb24gV2UgQ29sbGVjdFwiIH0sXG4gICAgeyBpZDogXCJ1c2FnZVwiLCB0aXRsZTogXCIzLiBIb3cgV2UgVXNlIFlvdXIgSW5mb3JtYXRpb25cIiB9LFxuICAgIHsgaWQ6IFwiY29va2llc1wiLCB0aXRsZTogXCI0LiBVc2Ugb2YgQ29va2llc1wiIH0sXG4gICAgeyBpZDogXCJ0aGlyZHBhcnR5XCIsIHRpdGxlOiBcIjUuIFRoaXJkLVBhcnR5IExpbmtzXCIgfSxcbiAgICB7IGlkOiBcInByb3RlY3Rpb25cIiwgdGl0bGU6IFwiNi4gRGF0YSBQcm90ZWN0aW9uXCIgfSxcbiAgICB7IGlkOiBcInJpZ2h0c1wiLCB0aXRsZTogXCI3LiBZb3VyIFJpZ2h0c1wiIH0sXG4gICAgeyBpZDogXCJjaGFuZ2VzXCIsIHRpdGxlOiBcIjguIENoYW5nZXMgdG8gUHJpdmFjeSBQb2xpY3lcIiB9LFxuICAgIHsgaWQ6IFwiY29udGFjdFwiLCB0aXRsZTogXCI5LiBDb250YWN0XCIgfSxcbiAgXTtcblxuICBjb25zdCBzY3JvbGxUb1NlY3Rpb24gPSAoaWQ6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7XG4gICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgIGVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoeyBiZWhhdmlvcjogJ3Ntb290aCcgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IHNjcm9sbFRvVG9wID0gKCkgPT4ge1xuICAgIHdpbmRvdy5zY3JvbGxUbyh7IHRvcDogMCwgYmVoYXZpb3I6ICdzbW9vdGgnIH0pO1xuICB9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb250YWluZXIgbXgtYXV0byBweC00IHB5LThcIj5cbiAgICAgIDxMaW5rIGhyZWY9XCIvXCIgY2xhc3NOYW1lPVwiaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIHRleHQtYmx1ZS02MDAgaG92ZXI6dGV4dC1ibHVlLTgwMCBtYi02XCI+XG4gICAgICAgIDxBcnJvd0xlZnQgY2xhc3NOYW1lPVwidy00IGgtNCBtci0yXCIgLz5cbiAgICAgICAgQmFjayB0byBIb21lXG4gICAgICA8L0xpbms+XG5cbiAgICAgIDxDYXJkIGNsYXNzTmFtZT1cIm1heC13LTR4bCBteC1hdXRvXCI+XG4gICAgICAgIDxDYXJkSGVhZGVyPlxuICAgICAgICAgIDxDYXJkVGl0bGU+e3QucHJpdmFjeVBvbGljeS50aXRsZX08L0NhcmRUaXRsZT5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm10LTQgcmVsYXRpdmVcIj5cbiAgICAgICAgICAgIDxJbnB1dFxuICAgICAgICAgICAgICB0eXBlPVwic2VhcmNoXCJcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2ggcHJpdmFjeSBwb2xpY3kuLi5cIlxuICAgICAgICAgICAgICB2YWx1ZT17c2VhcmNoVGVybX1cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBzZXRTZWFyY2hUZXJtKGUudGFyZ2V0LnZhbHVlKX1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibWF4LXctc20gcGwtOFwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFNlYXJjaCBjbGFzc05hbWU9XCJ3LTQgaC00IGFic29sdXRlIGxlZnQtMiB0b3AtMS8yIC10cmFuc2xhdGUteS0xLzIgdGV4dC1ncmF5LTUwMFwiIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvQ2FyZEhlYWRlcj5cblxuICAgICAgICA8Q2FyZENvbnRlbnQ+XG4gICAgICAgICAgey8qIFRhYmxlIG9mIENvbnRlbnRzICovfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWItOCBwLTQgYmctZ3JheS01MCByb3VuZGVkLWxnXCI+XG4gICAgICAgICAgICA8aDMgY2xhc3NOYW1lPVwidGV4dC1sZyBmb250LXNlbWlib2xkIG1iLTRcIj5UYWJsZSBvZiBDb250ZW50czwvaDM+XG4gICAgICAgICAgICA8bmF2PlxuICAgICAgICAgICAgICA8dWwgY2xhc3NOYW1lPVwic3BhY2UteS0yXCI+XG4gICAgICAgICAgICAgICAge3NlY3Rpb25zLm1hcCgoc2VjdGlvbikgPT4gKFxuICAgICAgICAgICAgICAgICAgPGxpIGtleT17c2VjdGlvbi5pZH0+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzY3JvbGxUb1NlY3Rpb24oc2VjdGlvbi5pZCl9XG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwidGV4dC1ibHVlLTYwMCBob3Zlcjp0ZXh0LWJsdWUtODAwIHRleHQtbGVmdFwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICB7c2VjdGlvbi50aXRsZX1cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9uYXY+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICB7LyogTWFpbiBDb250ZW50ICovfVxuICAgICAgICAgIDxTY3JvbGxBcmVhIGNsYXNzTmFtZT1cImgtWzYwMHB4XSByb3VuZGVkLW1kIGJvcmRlciBwLTRcIj5cbiAgICAgICAgICAgIDxkaXYgcmVmPXtjb250ZW50UmVmfSBjbGFzc05hbWU9XCJwcm9zZSBkYXJrOnByb3NlLWludmVydCBtYXgtdy1ub25lXCI+XG4gICAgICAgICAgICAgIDxBY2NvcmRpb24gdHlwZT1cInNpbmdsZVwiIGNvbGxhcHNpYmxlPlxuICAgICAgICAgICAgICAgIHtzZWN0aW9ucy5tYXAoKHNlY3Rpb24pID0+IChcbiAgICAgICAgICAgICAgICAgIDxBY2NvcmRpb25JdGVtIGtleT17c2VjdGlvbi5pZH0gdmFsdWU9e3NlY3Rpb24uaWR9PlxuICAgICAgICAgICAgICAgICAgICA8QWNjb3JkaW9uVHJpZ2dlciBpZD17c2VjdGlvbi5pZH0+XG4gICAgICAgICAgICAgICAgICAgICAge3NlY3Rpb24udGl0bGV9XG4gICAgICAgICAgICAgICAgICAgIDwvQWNjb3JkaW9uVHJpZ2dlcj5cbiAgICAgICAgICAgICAgICAgICAgPEFjY29yZGlvbkNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBkYW5nZXJvdXNseVNldElubmVySFRNTD17e1xuICAgICAgICAgICAgICAgICAgICAgICAgX19odG1sOiB0LnByaXZhY3lQb2xpY3kuY29udGVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAuc3BsaXQoc2VjdGlvbi50aXRsZSlbMV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPy5zcGxpdChzZWN0aW9uc1tzZWN0aW9ucy5pbmRleE9mKHNlY3Rpb24pICsgMV0/LnRpdGxlIHx8IFwiPC9oMj5cIilbMF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgXCJcIlxuICAgICAgICAgICAgICAgICAgICAgIH19IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvQWNjb3JkaW9uQ29udGVudD5cbiAgICAgICAgICAgICAgICAgIDwvQWNjb3JkaW9uSXRlbT5cbiAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgICAgPC9BY2NvcmRpb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L1Njcm9sbEFyZWE+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm10LThcIj5cbiAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInRleHQtc20gdGV4dC1tdXRlZC1mb3JlZ3JvdW5kXCI+XG4gICAgICAgICAgICAgIHt0LnByaXZhY3lQb2xpY3kubGFzdFVwZGF0ZWQucmVwbGFjZSgne3tkYXRlfX0nLCBuZXcgRGF0ZSgpLnRvTG9jYWxlRGF0ZVN0cmluZygpKX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9DYXJkQ29udGVudD5cbiAgICAgIDwvQ2FyZD5cblxuICAgICAge3Nob3dCYWNrVG9Ub3AgJiYgKFxuICAgICAgICA8QnV0dG9uXG4gICAgICAgICAgY2xhc3NOYW1lPVwiZml4ZWQgYm90dG9tLTggcmlnaHQtOCByb3VuZGVkLWZ1bGwgcC0yXCJcbiAgICAgICAgICBvbkNsaWNrPXtzY3JvbGxUb1RvcH1cbiAgICAgICAgICB2YXJpYW50PVwic2Vjb25kYXJ5XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxBcnJvd1VwIGNsYXNzTmFtZT1cImgtNCB3LTRcIiAvPlxuICAgICAgICA8L0J1dHRvbj5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59Il0sImZpbGUiOiIvaG9tZS9ydW5uZXIvd29ya3NwYWNlL2NsaWVudC9zcmMvcGFnZXMvUHJpdmFjeVBvbGljeS50c3gifQ==