{"version":3,"file":"shared-lib.BePc_KQL.mjs","names":["useMemo","useMemo","useMemo","useRef","useCallback","useState","useMemo","Texture","FramerRenderTarget","useRef","Renderer","Camera","Program","Mesh","Plane","OglRenderTarget"],"sources":["https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js","https:/framerusercontent.com/modules/lRDHiNWNVWmE0lqtoVHP/Sn64gjTwaJh0TFAuaV07/Video.js","https:/cdn.jsdelivr.net/gh/framer-university/components/npm-bundles/ascii-background.js","https:/framerusercontent.com/modules/s3gip9eMV1kca4GMupg6/mRejWDFxPOaVL77ZiGLs/ASCII_background_Prod.js","https:/framerusercontent.com/modules/VHx6h9GDKMSkp9munUQE/WkfqDlgOscoCUsXhBk4G/LogoGradient.js","https:/framerusercontent.com/modules/gDKPiCv10F2vaoMpqxvF/2TcA9WwOTNwjSuM4CWlZ/siteMetadata.js"],"sourcesContent":["import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n    position: \"relative\",\n    width: \"100%\",\n    height: \"100%\",\n    display: \"flex\",\n    justifyContent: \"center\",\n    alignItems: \"center\"\n};\nexport const emptyStateStyle = {\n    ...containerStyles,\n    borderRadius: 6,\n    background: \"rgba(136, 85, 255, 0.3)\",\n    color: \"#85F\",\n    border: \"1px dashed #85F\",\n    flexDirection: \"column\"\n};\nexport const defaultEvents = {\n    onClick: {\n        type: ControlType.EventHandler\n    },\n    onMouseEnter: {\n        type: ControlType.EventHandler\n    },\n    onMouseLeave: {\n        type: ControlType.EventHandler\n    }\n};\nexport const fontSizeOptions = {\n    type: ControlType.Number,\n    title: \"Font Size\",\n    min: 2,\n    max: 200,\n    step: 1,\n    displayStepper: true\n};\nexport const fontControls = {\n    font: {\n        type: ControlType.Boolean,\n        title: \"Font\",\n        defaultValue: false,\n        disabledTitle: \"Default\",\n        enabledTitle: \"Custom\"\n    },\n    fontFamily: {\n        type: ControlType.String,\n        title: \"Family\",\n        placeholder: \"Inter\",\n        hidden: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\nexport const localeOptions = {\n    af: \"Afrikaans\",\n    sq: \"Albanian\",\n    an: \"Aragonese\",\n    ar: \"Arabic (Standard)\",\n    \"ar-dz\": \"Arabic (Algeria)\",\n    \"ar-bh\": \"Arabic (Bahrain)\",\n    \"ar-eg\": \"Arabic (Egypt)\",\n    \"ar-iq\": \"Arabic (Iraq)\",\n    \"ar-jo\": \"Arabic (Jordan)\",\n    \"ar-kw\": \"Arabic (Kuwait)\",\n    \"ar-lb\": \"Arabic (Lebanon)\",\n    \"ar-ly\": \"Arabic (Libya)\",\n    \"ar-ma\": \"Arabic (Morocco)\",\n    \"ar-om\": \"Arabic (Oman)\",\n    \"ar-qa\": \"Arabic (Qatar)\",\n    \"ar-sa\": \"Arabic (Saudi Arabia)\",\n    \"ar-sy\": \"Arabic (Syria)\",\n    \"ar-tn\": \"Arabic (Tunisia)\",\n    \"ar-ae\": \"Arabic (U.A.E.)\",\n    \"ar-ye\": \"Arabic (Yemen)\",\n    hy: \"Armenian\",\n    as: \"Assamese\",\n    ast: \"Asturian\",\n    az: \"Azerbaijani\",\n    eu: \"Basque\",\n    bg: \"Bulgarian\",\n    be: \"Belarusian\",\n    bn: \"Bengali\",\n    bs: \"Bosnian\",\n    br: \"Breton\",\n    my: \"Burmese\",\n    ca: \"Catalan\",\n    ch: \"Chamorro\",\n    ce: \"Chechen\",\n    zh: \"Chinese\",\n    \"zh-hk\": \"Chinese (Hong Kong)\",\n    \"zh-cn\": \"Chinese (PRC)\",\n    \"zh-sg\": \"Chinese (Singapore)\",\n    \"zh-tw\": \"Chinese (Taiwan)\",\n    cv: \"Chuvash\",\n    co: \"Corsican\",\n    cr: \"Cree\",\n    hr: \"Croatian\",\n    cs: \"Czech\",\n    da: \"Danish\",\n    nl: \"Dutch (Standard)\",\n    \"nl-be\": \"Dutch (Belgian)\",\n    en: \"English\",\n    \"en-au\": \"English (Australia)\",\n    \"en-bz\": \"English (Belize)\",\n    \"en-ca\": \"English (Canada)\",\n    \"en-ie\": \"English (Ireland)\",\n    \"en-jm\": \"English (Jamaica)\",\n    \"en-nz\": \"English (New Zealand)\",\n    \"en-ph\": \"English (Philippines)\",\n    \"en-za\": \"English (South Africa)\",\n    \"en-tt\": \"English (Trinidad & Tobago)\",\n    \"en-gb\": \"English (United Kingdom)\",\n    \"en-us\": \"English (United States)\",\n    \"en-zw\": \"English (Zimbabwe)\",\n    eo: \"Esperanto\",\n    et: \"Estonian\",\n    fo: \"Faeroese\",\n    fa: \"Farsi\",\n    fj: \"Fijian\",\n    fi: \"Finnish\",\n    fr: \"French (Standard)\",\n    \"fr-be\": \"French (Belgium)\",\n    \"fr-ca\": \"French (Canada)\",\n    \"fr-fr\": \"French (France)\",\n    \"fr-lu\": \"French (Luxembourg)\",\n    \"fr-mc\": \"French (Monaco)\",\n    \"fr-ch\": \"French (Switzerland)\",\n    fy: \"Frisian\",\n    fur: \"Friulian\",\n    gd: \"Gaelic (Scots)\",\n    \"gd-ie\": \"Gaelic (Irish)\",\n    gl: \"Galacian\",\n    ka: \"Georgian\",\n    de: \"German (Standard)\",\n    \"de-at\": \"German (Austria)\",\n    \"de-de\": \"German (Germany)\",\n    \"de-li\": \"German (Liechtenstein)\",\n    \"de-lu\": \"German (Luxembourg)\",\n    \"de-ch\": \"German (Switzerland)\",\n    el: \"Greek\",\n    gu: \"Gujurati\",\n    ht: \"Haitian\",\n    he: \"Hebrew\",\n    hi: \"Hindi\",\n    hu: \"Hungarian\",\n    is: \"Icelandic\",\n    id: \"Indonesian\",\n    iu: \"Inuktitut\",\n    ga: \"Irish\",\n    it: \"Italian (Standard)\",\n    \"it-ch\": \"Italian (Switzerland)\",\n    ja: \"Japanese\",\n    kn: \"Kannada\",\n    ks: \"Kashmiri\",\n    kk: \"Kazakh\",\n    km: \"Khmer\",\n    ky: \"Kirghiz\",\n    tlh: \"Klingon\",\n    ko: \"Korean\",\n    \"ko-kp\": \"Korean (North Korea)\",\n    \"ko-kr\": \"Korean (South Korea)\",\n    la: \"Latin\",\n    lv: \"Latvian\",\n    lt: \"Lithuanian\",\n    lb: \"Luxembourgish\",\n    mk: \"FYRO Macedonian\",\n    ms: \"Malay\",\n    ml: \"Malayalam\",\n    mt: \"Maltese\",\n    mi: \"Maori\",\n    mr: \"Marathi\",\n    mo: \"Moldavian\",\n    nv: \"Navajo\",\n    ng: \"Ndonga\",\n    ne: \"Nepali\",\n    no: \"Norwegian\",\n    nb: \"Norwegian (Bokmal)\",\n    nn: \"Norwegian (Nynorsk)\",\n    oc: \"Occitan\",\n    or: \"Oriya\",\n    om: \"Oromo\",\n    \"fa-ir\": \"Persian/Iran\",\n    pl: \"Polish\",\n    pt: \"Portuguese\",\n    \"pt-br\": \"Portuguese (Brazil)\",\n    pa: \"Punjabi\",\n    \"pa-in\": \"Punjabi (India)\",\n    \"pa-pk\": \"Punjabi (Pakistan)\",\n    qu: \"Quechua\",\n    rm: \"Rhaeto-Romanic\",\n    ro: \"Romanian\",\n    \"ro-mo\": \"Romanian (Moldavia)\",\n    ru: \"Russian\",\n    \"ru-mo\": \"Russian (Moldavia)\",\n    sz: \"Sami (Lappish)\",\n    sg: \"Sango\",\n    sa: \"Sanskrit\",\n    sc: \"Sardinian\",\n    sd: \"Sindhi\",\n    si: \"Singhalese\",\n    sr: \"Serbian\",\n    sk: \"Slovak\",\n    sl: \"Slovenian\",\n    so: \"Somani\",\n    sb: \"Sorbian\",\n    es: \"Spanish\",\n    \"es-ar\": \"Spanish (Argentina)\",\n    \"es-bo\": \"Spanish (Bolivia)\",\n    \"es-cl\": \"Spanish (Chile)\",\n    \"es-co\": \"Spanish (Colombia)\",\n    \"es-cr\": \"Spanish (Costa Rica)\",\n    \"es-do\": \"Spanish (Dominican Republic)\",\n    \"es-ec\": \"Spanish (Ecuador)\",\n    \"es-sv\": \"Spanish (El Salvador)\",\n    \"es-gt\": \"Spanish (Guatemala)\",\n    \"es-hn\": \"Spanish (Honduras)\",\n    \"es-mx\": \"Spanish (Mexico)\",\n    \"es-ni\": \"Spanish (Nicaragua)\",\n    \"es-pa\": \"Spanish (Panama)\",\n    \"es-py\": \"Spanish (Paraguay)\",\n    \"es-pe\": \"Spanish (Peru)\",\n    \"es-pr\": \"Spanish (Puerto Rico)\",\n    \"es-es\": \"Spanish (Spain)\",\n    \"es-uy\": \"Spanish (Uruguay)\",\n    \"es-ve\": \"Spanish (Venezuela)\",\n    sx: \"Sutu\",\n    sw: \"Swahili\",\n    sv: \"Swedish\",\n    \"sv-fi\": \"Swedish (Finland)\",\n    \"sv-sv\": \"Swedish (Sweden)\",\n    ta: \"Tamil\",\n    tt: \"Tatar\",\n    te: \"Teluga\",\n    th: \"Thai\",\n    tig: \"Tigre\",\n    ts: \"Tsonga\",\n    tn: \"Tswana\",\n    tr: \"Turkish\",\n    tk: \"Turkmen\",\n    uk: \"Ukrainian\",\n    hsb: \"Upper Sorbian\",\n    ur: \"Urdu\",\n    ve: \"Venda\",\n    vi: \"Vietnamese\",\n    vo: \"Volapuk\",\n    wa: \"Walloon\",\n    cy: \"Welsh\",\n    xh: \"Xhosa\",\n    ji: \"Yiddish\",\n    zu: \"Zulu\"\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./constants.map","import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n    return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n    return useOnSpecificTargetChange(false, onExit, enabled);\n}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.map","import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.map","import { useMemo } from \"react\";\nexport const isBrowserSafari = ()=>{\n    if (typeof navigator !== `undefined`) {\n        const userAgent = navigator.userAgent.toLowerCase();\n        const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n        return isSafari;\n    } else return false;\n};\nexport const useIsBrowserSafari = ()=>useMemo(()=>isBrowserSafari()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n    useEffect(()=>// @ts-ignore this should be detected as a MV :shrug:\n        isMotionValue(value) ? value.onChange(callback) : undefined\n    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\n    useEffect(()=>{\n        if (!isMotionValue(inputValue) && didInitialMount.current) {\n            var ref1, ref2;\n            const newValue = transformer(inputValue);\n            (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\n                animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n            } else {\n                value.set(newValue);\n            }\n        }\n        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// ⚠️⚠️⚠️⚠️⚠️\n// Edit these files in https://github.com/framer/FramerCodeComponents\n// ⚠️⚠️⚠️⚠️⚠️\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,useIsInCurrentNavigationTarget,RenderTarget}from\"framer\";import{isMotionValue,useInView}from\"framer-motion\";import{borderRadiusControl,defaultEvents,useIsBrowserSafari,useIsOnCanvas,useOnEnter,useOnExit,useRadius,useRenderTarget}from\"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\";// https://framer.com/m/framer/default-utils.js@^0.45.0\nimport{memo,useCallback,useEffect,useMemo,useRef,useState}from\"react\";var ObjectFitType;(function(ObjectFitType){ObjectFitType[\"Fill\"]=\"fill\";ObjectFitType[\"Contain\"]=\"contain\";ObjectFitType[\"Cover\"]=\"cover\";ObjectFitType[\"None\"]=\"none\";ObjectFitType[\"ScaleDown\"]=\"scale-down\";})(ObjectFitType||(ObjectFitType={}));var SrcType;(function(SrcType){SrcType[\"Video\"]=\"Upload\";SrcType[\"Url\"]=\"URL\";})(SrcType||(SrcType={}));const defaultVideo=\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\";// Reduce renders\nfunction getProps(props){const{width,height,topLeft,topRight,bottomRight,bottomLeft,id,children,...rest}=props;return rest;}/**\n * VIDEO\n *\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 112\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export function Video(props){const newProps=getProps(props);return /*#__PURE__*/_jsx(VideoMemo,{...newProps});}function usePlaybackControls(videoRef){const isInCurrentNavigationTarget=useIsInCurrentNavigationTarget();const requestingPlay=useRef(false);const isPlayingRef=useRef(false);const setProgress=useCallback(rawProgress=>{if(!videoRef.current)return;const newProgress=(rawProgress===1?.999:rawProgress)*videoRef.current.duration;const isAlreadySet=Math.abs(videoRef.current.currentTime-newProgress)<.1;if(videoRef.current.duration>0&&!isAlreadySet){videoRef.current.currentTime=newProgress;}},[]);const play=useCallback(()=>{const video=videoRef.current;if(!video)return;video.preload=\"auto\"// makes sure browsers don't throttle: https://html.spec.whatwg.org/multipage/media.html#:~:text=When%20the%20media%20resource%20is%20playing%2C%20hints%20to%20the%20user%20agent%20that%20bandwidth%20is%20to%20be%20considered%20scarce%2C%20e.g.%20suggesting%20throttling%20the%20download%20so%20that%20the%20media%20data%20is%20obtained%20at%20the%20slowest%20possible%20rate%20that%20still%20maintains%20consistent%20playback.\n;const isPlaying=video.currentTime>0&&video.onplaying&&!video.paused&&!video.ended&&video.readyState>=video.HAVE_CURRENT_DATA;if(!isPlaying&&video&&!requestingPlay.current&&isInCurrentNavigationTarget){requestingPlay.current=true;isPlayingRef.current=true;video.play().catch(e=>{})// It's likely fine, swallow error\n.finally(()=>requestingPlay.current=false);}},[]);const pause=useCallback(()=>{if(!videoRef.current||requestingPlay.current)return;videoRef.current.pause();isPlayingRef.current=false;},[]);return{play,pause,setProgress,isPlaying:isPlayingRef};}function useAutoplayBehavior({playingProp,muted,loop,playsinline,controls}){const[initialPlayingProp]=useState(playingProp);const[hasPlayingPropChanged,setHasPlayingPropChanged]=useState(false);if(playingProp!==initialPlayingProp&&!hasPlayingPropChanged){setHasPlayingPropChanged(true);}const behavesAsGif=// passing `playing === true` on mount indicates that the video should\n// autoplay, like a GIF\ninitialPlayingProp&&muted&&loop&&playsinline&&!controls&&// Some users of the <Video> component use it by wrapping it with\n// another smart component and adding their own controls on top. (The\n// controls use transitions to control the video: e.g., when clicking\n// the play button, the smart component will transition to a state with\n// <Video playing={true} />.) In this case, we don't want the video to\n// behave as a gif, as it will be weird if the video suddenly started\n// acting as such (and auto-pausing when leaving the viewport) as soon\n// as the site visitor mutes it and clicks “Play”.\n!hasPlayingPropChanged;let autoplay;if(behavesAsGif)autoplay=\"on-viewport\";else if(initialPlayingProp)autoplay=\"on-mount\";else autoplay=\"no-autoplay\";return autoplay;}const VideoMemo=/*#__PURE__*/memo(function VideoInner(props){const{// default props\nsrcType=\"URL\",srcUrl,srcFile=\"\",posterEnabled=false,controls=false,playing=true,loop=true,muted=true,playsinline=true,restartOnEnter=false,objectFit=\"cover\",backgroundColor=\"rgba(0,0,0,0)\",radius=0,volume=25,startTime:startTimeProp=0,poster,playing:playingProp,progress,onSeeked,onPause,onPlay,onEnd,onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp}=props;const videoRef=useRef();const isSafari=useIsBrowserSafari();const wasPausedOnLeave=useRef(null);const wasEndedOnLeave=useRef(null);const isOnCanvas=useIsOnCanvas();const renderTarget=useRenderTarget();const isStaticRenderer=isOnCanvas||renderTarget===RenderTarget.export;const borderRadius=useRadius(props);// Hard-coding `autoplayBehavior` and `isInViewport` when on canvas as a\n// tiny perf optimization. isStaticRenderer won’t change through the lifecycle of\n// the component, so using these hooks conditionally should be safe\nconst autoplayBehavior=isStaticRenderer?\"no-autoplay\":useAutoplayBehavior({playingProp,muted,loop,playsinline,controls});const isInViewport=isStaticRenderer?true:useInView(videoRef);const isCloseToViewport=isStaticRenderer?false:useInView(videoRef,{margin:\"10%\",once:true});// Video elements behave oddly at 100% duration\nconst startTime=startTimeProp===100?99.9:startTimeProp;const{play,pause,setProgress,isPlaying}=usePlaybackControls(videoRef);// Pause/play via props\nuseEffect(()=>{if(isStaticRenderer)return;if(autoplayBehavior===\"on-viewport\")return;if(playingProp)play();else pause();},[autoplayBehavior,playingProp]);// Pause/play via viewport\nuseEffect(()=>{if(isStaticRenderer)return;// this also explicitly retries playing for videos that play on-mount, which could fail if they're not muted for example\nif(isInViewport&&playingProp&&autoplayBehavior!==\"no-autoplay\")play();if(autoplayBehavior!==\"on-viewport\")return;pause();},[autoplayBehavior,isInViewport,playingProp]);useEffect(()=>{if(!isOnCanvas||poster||posterEnabled||startTime||!videoRef.current)return;// forces a poster to show up when the video is in an iframe; this is needed when `poster` changes\nvideoRef.current.currentTime=.01;},[posterEnabled,poster,startTime]);/**\n     * The Video component has some effects that sync the video element with props\n     * like `startTime`, `progress`, etc. React calls these effects whenever these\n     * props change. However, it also calls them on the first mount, and this is\n     * troublesome – if we’re doing SSR, and the user changed the video state before\n     * the video was hydrated, the initial `useEffect` call will reset the video\n     * state. To avoid this, we use this flag.\n     */const isMountedAndReadyForProgressChanges=useRef(false);// Allow scrubbling via progress prop\n// 1) Handle cases when the progress prop itself changes\nuseEffect(()=>{if(!isMountedAndReadyForProgressChanges.current){isMountedAndReadyForProgressChanges.current=true;return;}const rawProgressValue=isMotionValue(progress)?progress.get():(progress??0)*.01;setProgress(// When the progress value exists (e.g. <Video startTime={10}\n// progress={50} />), we respect the `progress` value over\n// `startTime`, even if `startTime` changes. That’s because\n// `startTime` == start == changing it shouldn’t affect the current\n// progress\n(rawProgressValue??0)||// Then why fall back to `startTime` when `progress` doesn’t exist,\n// you might ask? Now, that’s for\n// - canvas UX: we want the video progress to change when the user\n//   is scrobbling the “Start Time” in component settings.\n// - backwards compatibility: maybe some users *are* scrobbling\n//   using `startTime` instead of `progress`? We don’t know, and it\n//   always supported it, so let’s not break it\n(startTime??0)/100);},[startTime,srcFile,srcUrl,progress]);// 2) Handle cases when the motion value inside the progress prop changes\nuseEffect(()=>{if(!isMotionValue(progress))return;return progress.on(\"change\",value=>setProgress(value));},[progress]);// (Prototyping) Checking if we need to play on navigation enter\nuseOnEnter(()=>{if(wasPausedOnLeave.current===null)return;if(videoRef.current){// if (restartOnEnter) setProgress(0)\nif(!wasEndedOnLeave&&loop||!wasPausedOnLeave.current)play();}});// (Prototyping) Pausing & saving playing state on navigation exit\nuseOnExit(()=>{if(videoRef.current){wasEndedOnLeave.current=videoRef.current.ended;wasPausedOnLeave.current=videoRef.current.paused;pause();}});const src=useMemo(()=>{let fragment=\"\";// if (\n//     startTime > 0 &&\n//     videoRef.current &&\n//     !isNaN(videoRef.current.duration) &&\n//     !isStaticRenderer\n// ) {\n//     console.log(startTime, videoRef.current.duration)\n//     fragment = `#t=${startTime * videoRef.current.duration}`\n// }\nif(srcType===\"URL\")return srcUrl+fragment;if(srcType===\"Upload\")return srcFile+fragment;},[srcType,srcFile,srcUrl,startTime]);// Autoplay via JS to work in Safari\nuseEffect(()=>{if(isSafari&&videoRef.current&&autoplayBehavior===\"on-mount\"){setTimeout(()=>play(),50);}},[]);// Volume Control\nuseEffect(()=>{if(videoRef.current&&!muted)videoRef.current.volume=(volume??0)/100;},[volume]);// When video is ready, set start-time, then autoplay if needed\nconst handleReady=()=>{const video=videoRef.current;if(!video)return;if(video.currentTime<.3&&startTime>0)setProgress((startTime??0)*.01);if(// when the component updates (e.g. only srcFile/url changes), and the video was already playing, keep playing\nisPlaying.current||autoplayBehavior===\"on-mount\"||playingProp&&autoplayBehavior===\"on-viewport\"&&isInViewport)play();};return /*#__PURE__*/_jsx(\"video\",{onClick,onMouseEnter,onMouseLeave,onMouseDown,onMouseUp,src:src,loop:loop,ref:videoRef,onSeeked:e=>onSeeked?.(e),onPause:e=>onPause?.(e),onPlay:e=>onPlay?.(e),onEnded:e=>onEnd?.(e),autoPlay:isPlaying.current||autoplayBehavior===\"on-mount\"||playingProp&&autoplayBehavior===\"on-viewport\"&&isInViewport,preload:isPlaying.current?\"auto\":isStaticRenderer&&!poster?\"metadata\":autoplayBehavior!==\"on-mount\"&&!isCloseToViewport?\"none\":// `autoplay` overrides this too\n\"metadata\",poster:posterEnabled&&!srcFile&&srcUrl===defaultVideo?\"https://framerusercontent.com/images/5ILRvlYXf72kHSVHqpa3snGzjU.jpg\":posterEnabled&&poster?poster:undefined,onLoadedData:handleReady,controls:controls,muted:isStaticRenderer?true:muted,playsInline:playsinline,style:{cursor:!!onClick?\"pointer\":\"auto\",width:\"100%\",height:\"100%\",borderRadius,display:\"block\",objectFit:objectFit,backgroundColor:backgroundColor,objectPosition:\"50% 50%\"}});});Video.displayName=\"Video\";function capitalizeFirstLetter(value){return value.charAt(0).toUpperCase()+value.slice(1);}export function titleCase(value){const groups=value.match(/[A-Z]{2,}|[A-Z][a-z]+|[a-z]+|[A-Z]|\\d+/gu)||[];return groups.map(capitalizeFirstLetter).join(\" \");}const objectFitOptions=[\"cover\",\"fill\",\"contain\",\"scale-down\",\"none\"];addPropertyControls(Video,{srcType:{type:ControlType.Enum,displaySegmentedControl:true,title:\"Source\",options:[\"URL\",\"Upload\"]},srcUrl:{type:ControlType.String,title:\"URL\",defaultValue:\"https://framerusercontent.com/assets/MLWPbW1dUQawJLhhun3dBwpgJak.mp4\",hidden(props){return props.srcType===\"Upload\";}},srcFile:{type:ControlType.File,title:\"File\",allowedFileTypes:[\"mp4\",\"webm\"],description:\"Only MP4 and WebM\",hidden(props){return props.srcType===\"URL\";}},playing:{type:ControlType.Boolean,title:\"Playing\",enabledTitle:\"Yes\",disabledTitle:\"No\"},...borderRadiusControl,posterEnabled:{type:ControlType.Boolean,title:\"Poster\",enabledTitle:\"Yes\",disabledTitle:\"No\"},poster:{type:ControlType.Image,title:\"Image\",hidden:({posterEnabled})=>!posterEnabled,description:\"We recommend adding a poster. [Learn more](https://www.framer.com/help/articles/how-are-videos-optimized-in-framer/).\"},backgroundColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"rgba(0,0,0,0)\"},startTime:{title:\"Start Time\",type:ControlType.Number,min:0,max:100,step:.1,unit:\"%\"},loop:{type:ControlType.Boolean,title:\"Loop\",enabledTitle:\"Yes\",disabledTitle:\"No\"},objectFit:{type:ControlType.Enum,title:\"Fit\",options:objectFitOptions,optionTitles:objectFitOptions.map(titleCase)},// restartOnEnter: {\n//     type: ControlType.Boolean,\n//     title: \"On ReEnter\",\n//     enabledTitle: \"Restart\",\n//     disabledTitle: \"Resume\",\n// },\ncontrols:{type:ControlType.Boolean,title:\"Controls\",enabledTitle:\"Show\",disabledTitle:\"Hide\",defaultValue:false},muted:{type:ControlType.Boolean,title:\"Muted\",enabledTitle:\"Yes\",disabledTitle:\"No\"},volume:{type:ControlType.Number,max:100,min:0,unit:\"%\",hidden:({muted})=>muted,defaultValue:25},onEnd:{type:ControlType.EventHandler},onSeeked:{type:ControlType.EventHandler},onPause:{type:ControlType.EventHandler},onPlay:{type:ControlType.EventHandler},...defaultEvents});\nexport const __FramerMetadata__ = {\"exports\":{\"titleCase\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"Video\":{\"type\":\"reactComponent\",\"name\":\"Video\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"112\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"200\",\"framerContractVersion\":\"1\"}},\"VideoProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Video.map","function t(t){let e=t[0],i=t[1],s=t[2];return Math.sqrt(e*e+i*i+s*s)}function e(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function i(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t[2]=e[2]+i[2],t}function s(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t[2]=e[2]-i[2],t}function r(t,e,i){return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t}function h(t){let e=t[0],i=t[1],s=t[2];return e*e+i*i+s*s}function n(t,e){let i=e[0],s=e[1],r=e[2],h=i*i+s*s+r*r;return h>0&&(h=1/Math.sqrt(h)),t[0]=e[0]*h,t[1]=e[1]*h,t[2]=e[2]*h,t}function a(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function l(t,e,i){let s=e[0],r=e[1],h=e[2],n=i[0],a=i[1],l=i[2];return t[0]=r*l-h*a,t[1]=h*n-s*l,t[2]=s*a-r*n,t}const o=function(){const t=[0,0,0],i=[0,0,0];return function(s,r){e(t,s),e(i,r),n(t,t),n(i,i);let h=a(t,i);return h>1?0:h<-1?Math.PI:Math.acos(h)}}();class u extends Array{constructor(t=0,e=t,i=t){return super(t,e,i),this}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(t){this[0]=t}set y(t){this[1]=t}set z(t){this[2]=t}set(t,e=t,i=t){return t.length?this.copy(t):(function(t,e,i,s){t[0]=e,t[1]=i,t[2]=s}(this,t,e,i),this)}copy(t){return e(this,t),this}add(t,e){return e?i(this,t,e):i(this,this,t),this}sub(t,e){return e?s(this,t,e):s(this,this,t),this}multiply(t){var e,i,s;return t.length?(i=this,s=t,(e=this)[0]=i[0]*s[0],e[1]=i[1]*s[1],e[2]=i[2]*s[2]):r(this,this,t),this}divide(t){var e,i,s;return t.length?(i=this,s=t,(e=this)[0]=i[0]/s[0],e[1]=i[1]/s[1],e[2]=i[2]/s[2]):r(this,this,1/t),this}inverse(t=this){var e,i;return i=t,(e=this)[0]=1/i[0],e[1]=1/i[1],e[2]=1/i[2],this}len(){return t(this)}distance(e){return e?function(t,e){let i=e[0]-t[0],s=e[1]-t[1],r=e[2]-t[2];return Math.sqrt(i*i+s*s+r*r)}(this,e):t(this)}squaredLen(){return h(this)}squaredDistance(t){return t?function(t,e){let i=e[0]-t[0],s=e[1]-t[1],r=e[2]-t[2];return i*i+s*s+r*r}(this,t):h(this)}negate(t=this){var e,i;return i=t,(e=this)[0]=-i[0],e[1]=-i[1],e[2]=-i[2],this}cross(t,e){return e?l(this,t,e):l(this,this,t),this}scale(t){return r(this,this,t),this}normalize(){return n(this,this),this}dot(t){return a(this,t)}equals(t){return i=t,(e=this)[0]===i[0]&&e[1]===i[1]&&e[2]===i[2];var e,i}applyMatrix3(t){return function(t,e,i){let s=e[0],r=e[1],h=e[2];t[0]=s*i[0]+r*i[3]+h*i[6],t[1]=s*i[1]+r*i[4]+h*i[7],t[2]=s*i[2]+r*i[5]+h*i[8]}(this,this,t),this}applyMatrix4(t){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=i[3]*s+i[7]*r+i[11]*h+i[15];n=n||1,t[0]=(i[0]*s+i[4]*r+i[8]*h+i[12])/n,t[1]=(i[1]*s+i[5]*r+i[9]*h+i[13])/n,t[2]=(i[2]*s+i[6]*r+i[10]*h+i[14])/n}(this,this,t),this}scaleRotateMatrix4(t){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=i[3]*s+i[7]*r+i[11]*h+i[15];n=n||1,t[0]=(i[0]*s+i[4]*r+i[8]*h)/n,t[1]=(i[1]*s+i[5]*r+i[9]*h)/n,t[2]=(i[2]*s+i[6]*r+i[10]*h)/n}(this,this,t),this}applyQuaternion(t){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=i[0],a=i[1],l=i[2],o=a*h-l*r,u=l*s-n*h,g=n*r-a*s,d=a*g-l*u,c=l*o-n*g,p=n*u-a*o,f=2*i[3];o*=f,u*=f,g*=f,d*=2,c*=2,p*=2,t[0]=s+o+d,t[1]=r+u+c,t[2]=h+g+p}(this,this,t),this}angle(t){return o(this,t)}lerp(t,e){return function(t,e,i,s){let r=e[0],h=e[1],n=e[2];t[0]=r+s*(i[0]-r),t[1]=h+s*(i[1]-h),t[2]=n+s*(i[2]-n)}(this,this,t,e),this}smoothLerp(t,e,i){return function(t,e,i,s,r){const h=Math.exp(-s*r);let n=e[0],a=e[1],l=e[2];t[0]=i[0]+(n-i[0])*h,t[1]=i[1]+(a-i[1])*h,t[2]=i[2]+(l-i[2])*h}(this,this,t,e,i),this}clone(){return new u(this[0],this[1],this[2])}fromArray(t,e=0){return this[0]=t[e],this[1]=t[e+1],this[2]=t[e+2],this}toArray(t=[],e=0){return t[e]=this[0],t[e+1]=this[1],t[e+2]=this[2],t}transformDirection(t){const e=this[0],i=this[1],s=this[2];return this[0]=t[0]*e+t[4]*i+t[8]*s,this[1]=t[1]*e+t[5]*i+t[9]*s,this[2]=t[2]*e+t[6]*i+t[10]*s,this.normalize()}}const g=new u;let d=1,c=1,p=!1;class f{constructor(t,e={}){t.canvas||console.error(\"gl not passed as first argument to Geometry\"),this.gl=t,this.attributes=e,this.id=d++,this.VAOs={},this.drawRange={start:0,count:0},this.instancedCount=0,this.gl.renderer.bindVertexArray(null),this.gl.renderer.currentGeometry=null,this.glState=this.gl.renderer.state;for(let t in e)this.addAttribute(t,e[t])}addAttribute(t,e){if(this.attributes[t]=e,e.id=c++,e.size=e.size||1,e.type=e.type||(e.data.constructor===Float32Array?this.gl.FLOAT:e.data.constructor===Uint16Array?this.gl.UNSIGNED_SHORT:this.gl.UNSIGNED_INT),e.target=\"index\"===t?this.gl.ELEMENT_ARRAY_BUFFER:this.gl.ARRAY_BUFFER,e.normalized=e.normalized||!1,e.stride=e.stride||0,e.offset=e.offset||0,e.count=e.count||(e.stride?e.data.byteLength/e.stride:e.data.length/e.size),e.divisor=e.instanced||0,e.needsUpdate=!1,e.usage=e.usage||this.gl.STATIC_DRAW,e.buffer||this.updateAttribute(e),e.divisor){if(this.isInstanced=!0,this.instancedCount&&this.instancedCount!==e.count*e.divisor)return console.warn(\"geometry has multiple instanced buffers of different length\"),this.instancedCount=Math.min(this.instancedCount,e.count*e.divisor);this.instancedCount=e.count*e.divisor}else\"index\"===t?this.drawRange.count=e.count:this.attributes.index||(this.drawRange.count=Math.max(this.drawRange.count,e.count))}updateAttribute(t){const e=!t.buffer;e&&(t.buffer=this.gl.createBuffer()),this.glState.boundBuffer!==t.buffer&&(this.gl.bindBuffer(t.target,t.buffer),this.glState.boundBuffer=t.buffer),e?this.gl.bufferData(t.target,t.data,t.usage):this.gl.bufferSubData(t.target,0,t.data),t.needsUpdate=!1}setIndex(t){this.addAttribute(\"index\",t)}setDrawRange(t,e){this.drawRange.start=t,this.drawRange.count=e}setInstancedCount(t){this.instancedCount=t}createVAO(t){this.VAOs[t.attributeOrder]=this.gl.renderer.createVertexArray(),this.gl.renderer.bindVertexArray(this.VAOs[t.attributeOrder]),this.bindAttributes(t)}bindAttributes(t){t.attributeLocations.forEach((t,{name:e,type:i})=>{if(!this.attributes[e])return void console.warn(`active attribute ${e} not being supplied`);const s=this.attributes[e];this.gl.bindBuffer(s.target,s.buffer),this.glState.boundBuffer=s.buffer;let r=1;35674===i&&(r=2),35675===i&&(r=3),35676===i&&(r=4);const h=s.size/r,n=1===r?0:r*r*4,a=1===r?0:4*r;for(let e=0;e<r;e++)this.gl.vertexAttribPointer(t+e,h,s.type,s.normalized,s.stride+n,s.offset+e*a),this.gl.enableVertexAttribArray(t+e),this.gl.renderer.vertexAttribDivisor(t+e,s.divisor)}),this.attributes.index&&this.gl.bindBuffer(this.gl.ELEMENT_ARRAY_BUFFER,this.attributes.index.buffer)}draw({program:t,mode:e=this.gl.TRIANGLES}){this.gl.renderer.currentGeometry!==`${this.id}_${t.attributeOrder}`&&(this.VAOs[t.attributeOrder]||this.createVAO(t),this.gl.renderer.bindVertexArray(this.VAOs[t.attributeOrder]),this.gl.renderer.currentGeometry=`${this.id}_${t.attributeOrder}`),t.attributeLocations.forEach((t,{name:e})=>{const i=this.attributes[e];i.needsUpdate&&this.updateAttribute(i)});let i=2;this.attributes.index?.type===this.gl.UNSIGNED_INT&&(i=4),this.isInstanced?this.attributes.index?this.gl.renderer.drawElementsInstanced(e,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*i,this.instancedCount):this.gl.renderer.drawArraysInstanced(e,this.drawRange.start,this.drawRange.count,this.instancedCount):this.attributes.index?this.gl.drawElements(e,this.drawRange.count,this.attributes.index.type,this.attributes.index.offset+this.drawRange.start*i):this.gl.drawArrays(e,this.drawRange.start,this.drawRange.count)}getPosition(){const t=this.attributes.position;return t.data?t:p?void 0:(console.warn(\"No position buffer data found to compute bounds\"),p=!0)}computeBoundingBox(t){t||(t=this.getPosition());const e=t.data,i=t.size;this.bounds||(this.bounds={min:new u,max:new u,center:new u,scale:new u,radius:1/0});const s=this.bounds.min,r=this.bounds.max,h=this.bounds.center,n=this.bounds.scale;s.set(1/0),r.set(-1/0);for(let t=0,h=e.length;t<h;t+=i){const i=e[t],h=e[t+1],n=e[t+2];s.x=Math.min(i,s.x),s.y=Math.min(h,s.y),s.z=Math.min(n,s.z),r.x=Math.max(i,r.x),r.y=Math.max(h,r.y),r.z=Math.max(n,r.z)}n.sub(r,s),h.add(s,r).divide(2)}computeBoundingSphere(t){t||(t=this.getPosition());const e=t.data,i=t.size;this.bounds||this.computeBoundingBox(t);let s=0;for(let t=0,r=e.length;t<r;t+=i)g.fromArray(e,t),s=Math.max(s,this.bounds.center.squaredDistance(g));this.bounds.radius=Math.sqrt(s)}remove(){for(let t in this.VAOs)this.gl.renderer.deleteVertexArray(this.VAOs[t]),delete this.VAOs[t];for(let t in this.attributes)this.gl.deleteBuffer(this.attributes[t].buffer),delete this.attributes[t]}}let m=1;const E={};class x{constructor(t,{vertex:e,fragment:i,uniforms:s={},transparent:r=!1,cullFace:h=t.BACK,frontFace:n=t.CCW,depthTest:a=!0,depthWrite:l=!0,depthFunc:o=t.LEQUAL}={}){t.canvas||console.error(\"gl not passed as first argument to Program\"),this.gl=t,this.uniforms=s,this.id=m++,e||console.warn(\"vertex shader not supplied\"),i||console.warn(\"fragment shader not supplied\"),this.transparent=r,this.cullFace=h,this.frontFace=n,this.depthTest=a,this.depthWrite=l,this.depthFunc=o,this.blendFunc={},this.blendEquation={},this.stencilFunc={},this.stencilOp={},this.transparent&&!this.blendFunc.src&&(this.gl.renderer.premultipliedAlpha?this.setBlendFunc(this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA):this.setBlendFunc(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA)),this.vertexShader=t.createShader(t.VERTEX_SHADER),this.fragmentShader=t.createShader(t.FRAGMENT_SHADER),this.program=t.createProgram(),t.attachShader(this.program,this.vertexShader),t.attachShader(this.program,this.fragmentShader),this.setShaders({vertex:e,fragment:i})}setShaders({vertex:t,fragment:e}){if(t&&(this.gl.shaderSource(this.vertexShader,t),this.gl.compileShader(this.vertexShader),\"\"!==this.gl.getShaderInfoLog(this.vertexShader)&&console.warn(`${this.gl.getShaderInfoLog(this.vertexShader)}\\nVertex Shader\\n${b(t)}`)),e&&(this.gl.shaderSource(this.fragmentShader,e),this.gl.compileShader(this.fragmentShader),\"\"!==this.gl.getShaderInfoLog(this.fragmentShader)&&console.warn(`${this.gl.getShaderInfoLog(this.fragmentShader)}\\nFragment Shader\\n${b(e)}`)),this.gl.linkProgram(this.program),!this.gl.getProgramParameter(this.program,this.gl.LINK_STATUS))return console.warn(this.gl.getProgramInfoLog(this.program));this.uniformLocations=new Map;let i=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_UNIFORMS);for(let t=0;t<i;t++){let e=this.gl.getActiveUniform(this.program,t);this.uniformLocations.set(e,this.gl.getUniformLocation(this.program,e.name));const i=e.name.match(/(\\w+)/g);e.uniformName=i[0],e.nameComponents=i.slice(1)}this.attributeLocations=new Map;const s=[],r=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES);for(let t=0;t<r;t++){const e=this.gl.getActiveAttrib(this.program,t),i=this.gl.getAttribLocation(this.program,e.name);-1!==i&&(s[i]=e.name,this.attributeLocations.set(e,i))}this.attributeOrder=s.join(\"\")}setBlendFunc(t,e,i,s){this.blendFunc.src=t,this.blendFunc.dst=e,this.blendFunc.srcAlpha=i,this.blendFunc.dstAlpha=s,t&&(this.transparent=!0)}setBlendEquation(t,e){this.blendEquation.modeRGB=t,this.blendEquation.modeAlpha=e}setStencilFunc(t,e,i){this.stencilRef=e,this.stencilFunc.func=t,this.stencilFunc.ref=e,this.stencilFunc.mask=i}setStencilOp(t,e,i){this.stencilOp.stencilFail=t,this.stencilOp.depthFail=e,this.stencilOp.depthPass=i}applyState(){this.depthTest?this.gl.renderer.enable(this.gl.DEPTH_TEST):this.gl.renderer.disable(this.gl.DEPTH_TEST),this.cullFace?this.gl.renderer.enable(this.gl.CULL_FACE):this.gl.renderer.disable(this.gl.CULL_FACE),this.blendFunc.src?this.gl.renderer.enable(this.gl.BLEND):this.gl.renderer.disable(this.gl.BLEND),this.cullFace&&this.gl.renderer.setCullFace(this.cullFace),this.gl.renderer.setFrontFace(this.frontFace),this.gl.renderer.setDepthMask(this.depthWrite),this.gl.renderer.setDepthFunc(this.depthFunc),this.blendFunc.src&&this.gl.renderer.setBlendFunc(this.blendFunc.src,this.blendFunc.dst,this.blendFunc.srcAlpha,this.blendFunc.dstAlpha),this.gl.renderer.setBlendEquation(this.blendEquation.modeRGB,this.blendEquation.modeAlpha),this.stencilFunc.func||this.stencilOp.stencilFail?this.gl.renderer.enable(this.gl.STENCIL_TEST):this.gl.renderer.disable(this.gl.STENCIL_TEST),this.gl.renderer.setStencilFunc(this.stencilFunc.func,this.stencilFunc.ref,this.stencilFunc.mask),this.gl.renderer.setStencilOp(this.stencilOp.stencilFail,this.stencilOp.depthFail,this.stencilOp.depthPass)}use({flipFaces:t=!1}={}){let e=-1;this.gl.renderer.state.currentProgram===this.id||(this.gl.useProgram(this.program),this.gl.renderer.state.currentProgram=this.id),this.uniformLocations.forEach((t,i)=>{let s=this.uniforms[i.uniformName];for(const t of i.nameComponents){if(!s)break;if(!(t in s)){if(Array.isArray(s.value))break;s=void 0;break}s=s[t]}if(!s)return A(`Active uniform ${i.name} has not been supplied`);if(s&&void 0===s.value)return A(`${i.name} uniform is missing a value parameter`);if(s.value.texture)return e+=1,s.value.update(e),_(this.gl,i.type,t,e);if(s.value.length&&s.value[0].texture){const r=[];return s.value.forEach(t=>{e+=1,t.update(e),r.push(e)}),_(this.gl,i.type,t,r)}_(this.gl,i.type,t,s.value)}),this.applyState(),t&&this.gl.renderer.setFrontFace(this.frontFace===this.gl.CCW?this.gl.CW:this.gl.CCW)}remove(){this.gl.deleteProgram(this.program)}}function _(t,e,i,s){s=s.length?function(t){const e=t.length,i=t[0].length;if(void 0===i)return t;const s=e*i;let r=E[s];r||(E[s]=r=new Float32Array(s));for(let s=0;s<e;s++)r.set(t[s],s*i);return r}(s):s;const r=t.renderer.state.uniformLocations.get(i);if(s.length)if(void 0===r||r.length!==s.length)t.renderer.state.uniformLocations.set(i,s.slice(0));else{if(function(t,e){if(t.length!==e.length)return!1;for(let i=0,s=t.length;i<s;i++)if(t[i]!==e[i])return!1;return!0}(r,s))return;r.set?r.set(s):function(t,e){for(let i=0,s=t.length;i<s;i++)t[i]=e[i]}(r,s),t.renderer.state.uniformLocations.set(i,r)}else{if(r===s)return;t.renderer.state.uniformLocations.set(i,s)}switch(e){case 5126:return s.length?t.uniform1fv(i,s):t.uniform1f(i,s);case 35664:return t.uniform2fv(i,s);case 35665:return t.uniform3fv(i,s);case 35666:return t.uniform4fv(i,s);case 35670:case 5124:case 35678:case 36306:case 35680:case 36289:return s.length?t.uniform1iv(i,s):t.uniform1i(i,s);case 35671:case 35667:return t.uniform2iv(i,s);case 35672:case 35668:return t.uniform3iv(i,s);case 35673:case 35669:return t.uniform4iv(i,s);case 35674:return t.uniformMatrix2fv(i,!1,s);case 35675:return t.uniformMatrix3fv(i,!1,s);case 35676:return t.uniformMatrix4fv(i,!1,s)}}function b(t){let e=t.split(\"\\n\");for(let t=0;t<e.length;t++)e[t]=t+1+\": \"+e[t];return e.join(\"\\n\")}let M=0;function A(t){M>100||(console.warn(t),M++,M>100&&console.warn(\"More than 100 program warnings - stopping logs.\"))}const T=new u;let w=1;class F{constructor({canvas:t=document.createElement(\"canvas\"),width:e=300,height:i=150,dpr:s=1,alpha:r=!1,depth:h=!0,stencil:n=!1,antialias:a=!1,premultipliedAlpha:l=!1,preserveDrawingBuffer:o=!1,powerPreference:u=\"default\",autoClear:g=!0,webgl:d=2}={}){const c={alpha:r,depth:h,stencil:n,antialias:a,premultipliedAlpha:l,preserveDrawingBuffer:o,powerPreference:u};this.dpr=s,this.alpha=r,this.color=!0,this.depth=h,this.stencil=n,this.premultipliedAlpha=l,this.autoClear=g,this.id=w++,2===d&&(this.gl=t.getContext(\"webgl2\",c)),this.isWebgl2=!!this.gl,this.gl||(this.gl=t.getContext(\"webgl\",c)),this.gl||console.error(\"unable to create webgl context\"),this.gl.renderer=this,this.setSize(e,i),this.state={},this.state.blendFunc={src:this.gl.ONE,dst:this.gl.ZERO},this.state.blendEquation={modeRGB:this.gl.FUNC_ADD},this.state.cullFace=!1,this.state.frontFace=this.gl.CCW,this.state.depthMask=!0,this.state.depthFunc=this.gl.LEQUAL,this.state.premultiplyAlpha=!1,this.state.flipY=!1,this.state.unpackAlignment=4,this.state.framebuffer=null,this.state.viewport={x:0,y:0,width:null,height:null},this.state.textureUnits=[],this.state.activeTextureUnit=0,this.state.boundBuffer=null,this.state.uniformLocations=new Map,this.state.currentProgram=null,this.extensions={},this.isWebgl2?(this.getExtension(\"EXT_color_buffer_float\"),this.getExtension(\"OES_texture_float_linear\")):(this.getExtension(\"OES_texture_float\"),this.getExtension(\"OES_texture_float_linear\"),this.getExtension(\"OES_texture_half_float\"),this.getExtension(\"OES_texture_half_float_linear\"),this.getExtension(\"OES_element_index_uint\"),this.getExtension(\"OES_standard_derivatives\"),this.getExtension(\"EXT_sRGB\"),this.getExtension(\"WEBGL_depth_texture\"),this.getExtension(\"WEBGL_draw_buffers\")),this.getExtension(\"WEBGL_compressed_texture_astc\"),this.getExtension(\"EXT_texture_compression_bptc\"),this.getExtension(\"WEBGL_compressed_texture_s3tc\"),this.getExtension(\"WEBGL_compressed_texture_etc1\"),this.getExtension(\"WEBGL_compressed_texture_pvrtc\"),this.getExtension(\"WEBKIT_WEBGL_compressed_texture_pvrtc\"),this.vertexAttribDivisor=this.getExtension(\"ANGLE_instanced_arrays\",\"vertexAttribDivisor\",\"vertexAttribDivisorANGLE\"),this.drawArraysInstanced=this.getExtension(\"ANGLE_instanced_arrays\",\"drawArraysInstanced\",\"drawArraysInstancedANGLE\"),this.drawElementsInstanced=this.getExtension(\"ANGLE_instanced_arrays\",\"drawElementsInstanced\",\"drawElementsInstancedANGLE\"),this.createVertexArray=this.getExtension(\"OES_vertex_array_object\",\"createVertexArray\",\"createVertexArrayOES\"),this.bindVertexArray=this.getExtension(\"OES_vertex_array_object\",\"bindVertexArray\",\"bindVertexArrayOES\"),this.deleteVertexArray=this.getExtension(\"OES_vertex_array_object\",\"deleteVertexArray\",\"deleteVertexArrayOES\"),this.drawBuffers=this.getExtension(\"WEBGL_draw_buffers\",\"drawBuffers\",\"drawBuffersWEBGL\"),this.parameters={},this.parameters.maxTextureUnits=this.gl.getParameter(this.gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS),this.parameters.maxAnisotropy=this.getExtension(\"EXT_texture_filter_anisotropic\")?this.gl.getParameter(this.getExtension(\"EXT_texture_filter_anisotropic\").MAX_TEXTURE_MAX_ANISOTROPY_EXT):0}setSize(t,e){this.width=t,this.height=e,this.gl.canvas.width=t*this.dpr,this.gl.canvas.height=e*this.dpr,this.gl.canvas.style&&Object.assign(this.gl.canvas.style,{width:t+\"px\",height:e+\"px\"})}setViewport(t,e,i=0,s=0){this.state.viewport.width===t&&this.state.viewport.height===e||(this.state.viewport.width=t,this.state.viewport.height=e,this.state.viewport.x=i,this.state.viewport.y=s,this.gl.viewport(i,s,t,e))}setScissor(t,e,i=0,s=0){this.gl.scissor(i,s,t,e)}enable(t){!0!==this.state[t]&&(this.gl.enable(t),this.state[t]=!0)}disable(t){!1!==this.state[t]&&(this.gl.disable(t),this.state[t]=!1)}setBlendFunc(t,e,i,s){this.state.blendFunc.src===t&&this.state.blendFunc.dst===e&&this.state.blendFunc.srcAlpha===i&&this.state.blendFunc.dstAlpha===s||(this.state.blendFunc.src=t,this.state.blendFunc.dst=e,this.state.blendFunc.srcAlpha=i,this.state.blendFunc.dstAlpha=s,void 0!==i?this.gl.blendFuncSeparate(t,e,i,s):this.gl.blendFunc(t,e))}setBlendEquation(t,e){t=t||this.gl.FUNC_ADD,this.state.blendEquation.modeRGB===t&&this.state.blendEquation.modeAlpha===e||(this.state.blendEquation.modeRGB=t,this.state.blendEquation.modeAlpha=e,void 0!==e?this.gl.blendEquationSeparate(t,e):this.gl.blendEquation(t))}setCullFace(t){this.state.cullFace!==t&&(this.state.cullFace=t,this.gl.cullFace(t))}setFrontFace(t){this.state.frontFace!==t&&(this.state.frontFace=t,this.gl.frontFace(t))}setDepthMask(t){this.state.depthMask!==t&&(this.state.depthMask=t,this.gl.depthMask(t))}setDepthFunc(t){this.state.depthFunc!==t&&(this.state.depthFunc=t,this.gl.depthFunc(t))}setStencilMask(t){this.state.stencilMask!==t&&(this.state.stencilMask=t,this.gl.stencilMask(t))}setStencilFunc(t,e,i){this.state.stencilFunc===t&&this.state.stencilRef===e&&this.state.stencilFuncMask===i||(this.state.stencilFunc=t||this.gl.ALWAYS,this.state.stencilRef=e||0,this.state.stencilFuncMask=i||0,this.gl.stencilFunc(t||this.gl.ALWAYS,e||0,i||0))}setStencilOp(t,e,i){this.state.stencilFail===t&&this.state.stencilDepthFail===e&&this.state.stencilDepthPass===i||(this.state.stencilFail=t,this.state.stencilDepthFail=e,this.state.stencilDepthPass=i,this.gl.stencilOp(t,e,i))}activeTexture(t){this.state.activeTextureUnit!==t&&(this.state.activeTextureUnit=t,this.gl.activeTexture(this.gl.TEXTURE0+t))}bindFramebuffer({target:t=this.gl.FRAMEBUFFER,buffer:e=null}={}){this.state.framebuffer!==e&&(this.state.framebuffer=e,this.gl.bindFramebuffer(t,e))}getExtension(t,e,i){return e&&this.gl[e]?this.gl[e].bind(this.gl):(this.extensions[t]||(this.extensions[t]=this.gl.getExtension(t)),e?this.extensions[t]?this.extensions[t][i].bind(this.extensions[t]):null:this.extensions[t])}sortOpaque(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program.id!==e.program.id?t.program.id-e.program.id:t.zDepth!==e.zDepth?t.zDepth-e.zDepth:e.id-t.id}sortTransparent(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.zDepth!==e.zDepth?e.zDepth-t.zDepth:e.id-t.id}sortUI(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program.id!==e.program.id?t.program.id-e.program.id:e.id-t.id}getRenderList({scene:t,camera:e,frustumCull:i,sort:s}){let r=[];if(e&&i&&e.updateFrustum(),t.traverse(t=>{if(!t.visible)return!0;t.draw&&(i&&t.frustumCulled&&e&&!e.frustumIntersectsMesh(t)||r.push(t))}),s){const t=[],i=[],s=[];r.forEach(r=>{r.program.transparent?r.program.depthTest?i.push(r):s.push(r):t.push(r),r.zDepth=0,0===r.renderOrder&&r.program.depthTest&&e&&(r.worldMatrix.getTranslation(T),T.applyMatrix4(e.projectionViewMatrix),r.zDepth=T.z)}),t.sort(this.sortOpaque),i.sort(this.sortTransparent),s.sort(this.sortUI),r=t.concat(i,s)}return r}render({scene:t,camera:e,target:i=null,update:s=!0,sort:r=!0,frustumCull:h=!0,clear:n}){null===i?(this.bindFramebuffer(),this.setViewport(this.width*this.dpr,this.height*this.dpr)):(this.bindFramebuffer(i),this.setViewport(i.width,i.height)),(n||this.autoClear&&!1!==n)&&(!this.depth||i&&!i.depth||(this.enable(this.gl.DEPTH_TEST),this.setDepthMask(!0)),(this.stencil||!i||i.stencil)&&(this.enable(this.gl.STENCIL_TEST),this.setStencilMask(255)),this.gl.clear((this.color?this.gl.COLOR_BUFFER_BIT:0)|(this.depth?this.gl.DEPTH_BUFFER_BIT:0)|(this.stencil?this.gl.STENCIL_BUFFER_BIT:0))),s&&t.updateMatrixWorld(),e&&e.updateMatrixWorld();this.getRenderList({scene:t,camera:e,frustumCull:h,sort:r}).forEach(t=>{t.draw({camera:e})})}}function R(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=i[0],l=i[1],o=i[2],u=i[3];return t[0]=s*u+n*a+r*o-h*l,t[1]=r*u+n*l+h*a-s*o,t[2]=h*u+n*o+s*l-r*a,t[3]=n*u-s*a-r*l-h*o,t}const y=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},v=function(t,e,i,s,r){return t[0]=e,t[1]=i,t[2]=s,t[3]=r,t},S=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},C=function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=i*i+s*s+r*r+h*h;return n>0&&(n=1/Math.sqrt(n)),t[0]=i*n,t[1]=s*n,t[2]=r*n,t[3]=h*n,t};class N extends Array{constructor(t=0,e=0,i=0,s=1){super(t,e,i,s),this.onChange=()=>{},this._target=this;const r=[\"0\",\"1\",\"2\",\"3\"];return new Proxy(this,{set(t,e){const i=Reflect.set(...arguments);return i&&r.includes(e)&&t.onChange(),i}})}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}get w(){return this[3]}set x(t){this._target[0]=t,this.onChange()}set y(t){this._target[1]=t,this.onChange()}set z(t){this._target[2]=t,this.onChange()}set w(t){this._target[3]=t,this.onChange()}identity(){var t;return(t=this._target)[0]=0,t[1]=0,t[2]=0,t[3]=1,this.onChange(),this}set(t,e,i,s){return t.length?this.copy(t):(v(this._target,t,e,i,s),this.onChange(),this)}rotateX(t){return function(t,e,i){i*=.5;let s=e[0],r=e[1],h=e[2],n=e[3],a=Math.sin(i),l=Math.cos(i);t[0]=s*l+n*a,t[1]=r*l+h*a,t[2]=h*l-r*a,t[3]=n*l-s*a}(this._target,this._target,t),this.onChange(),this}rotateY(t){return function(t,e,i){i*=.5;let s=e[0],r=e[1],h=e[2],n=e[3],a=Math.sin(i),l=Math.cos(i);t[0]=s*l-h*a,t[1]=r*l+n*a,t[2]=h*l+s*a,t[3]=n*l-r*a}(this._target,this._target,t),this.onChange(),this}rotateZ(t){return function(t,e,i){i*=.5;let s=e[0],r=e[1],h=e[2],n=e[3],a=Math.sin(i),l=Math.cos(i);t[0]=s*l+r*a,t[1]=r*l-s*a,t[2]=h*l+n*a,t[3]=n*l-h*a}(this._target,this._target,t),this.onChange(),this}inverse(t=this._target){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=i*i+s*s+r*r+h*h,a=n?1/n:0;t[0]=-i*a,t[1]=-s*a,t[2]=-r*a,t[3]=h*a}(this._target,t),this.onChange(),this}conjugate(t=this._target){var e,i;return e=this._target,i=t,e[0]=-i[0],e[1]=-i[1],e[2]=-i[2],e[3]=i[3],this.onChange(),this}copy(t){return y(this._target,t),this.onChange(),this}normalize(t=this._target){return C(this._target,t),this.onChange(),this}multiply(t,e){return e?R(this._target,t,e):R(this._target,this._target,t),this.onChange(),this}dot(t){return S(this._target,t)}fromMatrix3(t){return function(t,e){let i,s=e[0]+e[4]+e[8];if(s>0)i=Math.sqrt(s+1),t[3]=.5*i,i=.5/i,t[0]=(e[5]-e[7])*i,t[1]=(e[6]-e[2])*i,t[2]=(e[1]-e[3])*i;else{let s=0;e[4]>e[0]&&(s=1),e[8]>e[3*s+s]&&(s=2);let r=(s+1)%3,h=(s+2)%3;i=Math.sqrt(e[3*s+s]-e[3*r+r]-e[3*h+h]+1),t[s]=.5*i,i=.5/i,t[3]=(e[3*r+h]-e[3*h+r])*i,t[r]=(e[3*r+s]+e[3*s+r])*i,t[h]=(e[3*h+s]+e[3*s+h])*i}}(this._target,t),this.onChange(),this}fromEuler(t,e){return function(t,e,i=\"YXZ\"){let s=Math.sin(.5*e[0]),r=Math.cos(.5*e[0]),h=Math.sin(.5*e[1]),n=Math.cos(.5*e[1]),a=Math.sin(.5*e[2]),l=Math.cos(.5*e[2]);\"XYZ\"===i?(t[0]=s*n*l+r*h*a,t[1]=r*h*l-s*n*a,t[2]=r*n*a+s*h*l,t[3]=r*n*l-s*h*a):\"YXZ\"===i?(t[0]=s*n*l+r*h*a,t[1]=r*h*l-s*n*a,t[2]=r*n*a-s*h*l,t[3]=r*n*l+s*h*a):\"ZXY\"===i?(t[0]=s*n*l-r*h*a,t[1]=r*h*l+s*n*a,t[2]=r*n*a+s*h*l,t[3]=r*n*l-s*h*a):\"ZYX\"===i?(t[0]=s*n*l-r*h*a,t[1]=r*h*l+s*n*a,t[2]=r*n*a-s*h*l,t[3]=r*n*l+s*h*a):\"YZX\"===i?(t[0]=s*n*l+r*h*a,t[1]=r*h*l+s*n*a,t[2]=r*n*a-s*h*l,t[3]=r*n*l-s*h*a):\"XZY\"===i&&(t[0]=s*n*l-r*h*a,t[1]=r*h*l-s*n*a,t[2]=r*n*a+s*h*l,t[3]=r*n*l+s*h*a)}(this._target,t,t.order),e||this.onChange(),this}fromAxisAngle(t,e){return function(t,e,i){i*=.5;let s=Math.sin(i);t[0]=s*e[0],t[1]=s*e[1],t[2]=s*e[2],t[3]=Math.cos(i)}(this._target,t,e),this.onChange(),this}slerp(t,e){return function(t,e,i,s){let r,h,n,a,l,o=e[0],u=e[1],g=e[2],d=e[3],c=i[0],p=i[1],f=i[2],m=i[3];h=o*c+u*p+g*f+d*m,h<0&&(h=-h,c=-c,p=-p,f=-f,m=-m),1-h>1e-6?(r=Math.acos(h),n=Math.sin(r),a=Math.sin((1-s)*r)/n,l=Math.sin(s*r)/n):(a=1-s,l=s),t[0]=a*o+l*c,t[1]=a*u+l*p,t[2]=a*g+l*f,t[3]=a*d+l*m}(this._target,this._target,t,e),this.onChange(),this}fromArray(t,e=0){return this._target[0]=t[e],this._target[1]=t[e+1],this._target[2]=t[e+2],this._target[3]=t[e+3],this.onChange(),this}toArray(t=[],e=0){return t[e]=this[0],t[e+1]=this[1],t[e+2]=this[2],t[e+3]=this[3],t}}function D(t){let e=t[0],i=t[1],s=t[2],r=t[3],h=t[4],n=t[5],a=t[6],l=t[7],o=t[8],u=t[9],g=t[10],d=t[11],c=t[12],p=t[13],f=t[14],m=t[15];return(e*n-i*h)*(g*m-d*f)-(e*a-s*h)*(u*m-d*p)+(e*l-r*h)*(u*f-g*p)+(i*a-s*n)*(o*m-d*c)-(i*l-r*n)*(o*f-g*c)+(s*l-r*a)*(o*p-u*c)}function U(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=e[9],c=e[10],p=e[11],f=e[12],m=e[13],E=e[14],x=e[15],_=i[0],b=i[1],M=i[2],A=i[3];return t[0]=_*s+b*a+M*g+A*f,t[1]=_*r+b*l+M*d+A*m,t[2]=_*h+b*o+M*c+A*E,t[3]=_*n+b*u+M*p+A*x,_=i[4],b=i[5],M=i[6],A=i[7],t[4]=_*s+b*a+M*g+A*f,t[5]=_*r+b*l+M*d+A*m,t[6]=_*h+b*o+M*c+A*E,t[7]=_*n+b*u+M*p+A*x,_=i[8],b=i[9],M=i[10],A=i[11],t[8]=_*s+b*a+M*g+A*f,t[9]=_*r+b*l+M*d+A*m,t[10]=_*h+b*o+M*c+A*E,t[11]=_*n+b*u+M*p+A*x,_=i[12],b=i[13],M=i[14],A=i[15],t[12]=_*s+b*a+M*g+A*f,t[13]=_*r+b*l+M*d+A*m,t[14]=_*h+b*o+M*c+A*E,t[15]=_*n+b*u+M*p+A*x,t}function B(t,e){let i=e[0],s=e[1],r=e[2],h=e[4],n=e[5],a=e[6],l=e[8],o=e[9],u=e[10];return t[0]=Math.hypot(i,s,r),t[1]=Math.hypot(h,n,a),t[2]=Math.hypot(l,o,u),t}const O=function(){const t=[1,1,1];return function(e,i){let s=t;B(s,i);let r=1/s[0],h=1/s[1],n=1/s[2],a=i[0]*r,l=i[1]*h,o=i[2]*n,u=i[4]*r,g=i[5]*h,d=i[6]*n,c=i[8]*r,p=i[9]*h,f=i[10]*n,m=a+g+f,E=0;return m>0?(E=2*Math.sqrt(m+1),e[3]=.25*E,e[0]=(d-p)/E,e[1]=(c-o)/E,e[2]=(l-u)/E):a>g&&a>f?(E=2*Math.sqrt(1+a-g-f),e[3]=(d-p)/E,e[0]=.25*E,e[1]=(l+u)/E,e[2]=(c+o)/E):g>f?(E=2*Math.sqrt(1+g-a-f),e[3]=(c-o)/E,e[0]=(l+u)/E,e[1]=.25*E,e[2]=(d+p)/E):(E=2*Math.sqrt(1+f-a-g),e[3]=(l-u)/E,e[0]=(c+o)/E,e[1]=(d+p)/E,e[2]=.25*E),e}}();function P(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t[2]=e[2]+i[2],t[3]=e[3]+i[3],t[4]=e[4]+i[4],t[5]=e[5]+i[5],t[6]=e[6]+i[6],t[7]=e[7]+i[7],t[8]=e[8]+i[8],t[9]=e[9]+i[9],t[10]=e[10]+i[10],t[11]=e[11]+i[11],t[12]=e[12]+i[12],t[13]=e[13]+i[13],t[14]=e[14]+i[14],t[15]=e[15]+i[15],t}function L(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t[2]=e[2]-i[2],t[3]=e[3]-i[3],t[4]=e[4]-i[4],t[5]=e[5]-i[5],t[6]=e[6]-i[6],t[7]=e[7]-i[7],t[8]=e[8]-i[8],t[9]=e[9]-i[9],t[10]=e[10]-i[10],t[11]=e[11]-i[11],t[12]=e[12]-i[12],t[13]=e[13]-i[13],t[14]=e[14]-i[14],t[15]=e[15]-i[15],t}class I extends Array{constructor(t=1,e=0,i=0,s=0,r=0,h=1,n=0,a=0,l=0,o=0,u=1,g=0,d=0,c=0,p=0,f=1){return super(t,e,i,s,r,h,n,a,l,o,u,g,d,c,p,f),this}get x(){return this[12]}get y(){return this[13]}get z(){return this[14]}get w(){return this[15]}set x(t){this[12]=t}set y(t){this[13]=t}set z(t){this[14]=t}set w(t){this[15]=t}set(t,e,i,s,r,h,n,a,l,o,u,g,d,c,p,f){return t.length?this.copy(t):(function(t,e,i,s,r,h,n,a,l,o,u,g,d,c,p,f,m){t[0]=e,t[1]=i,t[2]=s,t[3]=r,t[4]=h,t[5]=n,t[6]=a,t[7]=l,t[8]=o,t[9]=u,t[10]=g,t[11]=d,t[12]=c,t[13]=p,t[14]=f,t[15]=m}(this,t,e,i,s,r,h,n,a,l,o,u,g,d,c,p,f),this)}translate(t,e=this){return function(t,e,i){let s,r,h,n,a,l,o,u,g,d,c,p,f=i[0],m=i[1],E=i[2];e===t?(t[12]=e[0]*f+e[4]*m+e[8]*E+e[12],t[13]=e[1]*f+e[5]*m+e[9]*E+e[13],t[14]=e[2]*f+e[6]*m+e[10]*E+e[14],t[15]=e[3]*f+e[7]*m+e[11]*E+e[15]):(s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=e[9],c=e[10],p=e[11],t[0]=s,t[1]=r,t[2]=h,t[3]=n,t[4]=a,t[5]=l,t[6]=o,t[7]=u,t[8]=g,t[9]=d,t[10]=c,t[11]=p,t[12]=s*f+a*m+g*E+e[12],t[13]=r*f+l*m+d*E+e[13],t[14]=h*f+o*m+c*E+e[14],t[15]=n*f+u*m+p*E+e[15])}(this,e,t),this}rotate(t,e,i=this){return function(t,e,i,s){let r,h,n,a,l,o,u,g,d,c,p,f,m,E,x,_,b,M,A,T,w,F,R,y,v=s[0],S=s[1],C=s[2],N=Math.hypot(v,S,C);Math.abs(N)<1e-6||(N=1/N,v*=N,S*=N,C*=N,r=Math.sin(i),h=Math.cos(i),n=1-h,a=e[0],l=e[1],o=e[2],u=e[3],g=e[4],d=e[5],c=e[6],p=e[7],f=e[8],m=e[9],E=e[10],x=e[11],_=v*v*n+h,b=S*v*n+C*r,M=C*v*n-S*r,A=v*S*n-C*r,T=S*S*n+h,w=C*S*n+v*r,F=v*C*n+S*r,R=S*C*n-v*r,y=C*C*n+h,t[0]=a*_+g*b+f*M,t[1]=l*_+d*b+m*M,t[2]=o*_+c*b+E*M,t[3]=u*_+p*b+x*M,t[4]=a*A+g*T+f*w,t[5]=l*A+d*T+m*w,t[6]=o*A+c*T+E*w,t[7]=u*A+p*T+x*w,t[8]=a*F+g*R+f*y,t[9]=l*F+d*R+m*y,t[10]=o*F+c*R+E*y,t[11]=u*F+p*R+x*y,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]))}(this,i,t,e),this}scale(t,e=this){return function(t,e,i){let s=i[0],r=i[1],h=i[2];t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s,t[3]=e[3]*s,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*h,t[9]=e[9]*h,t[10]=e[10]*h,t[11]=e[11]*h,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]}(this,e,\"number\"==typeof t?[t,t,t]:t),this}add(t,e){return e?P(this,t,e):P(this,this,t),this}sub(t,e){return e?L(this,t,e):L(this,this,t),this}multiply(t,e){var i,s,r;return t.length?e?U(this,t,e):U(this,this,t):(s=this,r=t,(i=this)[0]=s[0]*r,i[1]=s[1]*r,i[2]=s[2]*r,i[3]=s[3]*r,i[4]=s[4]*r,i[5]=s[5]*r,i[6]=s[6]*r,i[7]=s[7]*r,i[8]=s[8]*r,i[9]=s[9]*r,i[10]=s[10]*r,i[11]=s[11]*r,i[12]=s[12]*r,i[13]=s[13]*r,i[14]=s[14]*r,i[15]=s[15]*r),this}identity(){var t;return(t=this)[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}copy(t){var e,i;return i=t,(e=this)[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this}fromPerspective({fov:t,aspect:e,near:i,far:s}={}){return function(t,e,i,s,r){let h=1/Math.tan(e/2),n=1/(s-r);t[0]=h/i,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=h,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=(r+s)*n,t[11]=-1,t[12]=0,t[13]=0,t[14]=2*r*s*n,t[15]=0}(this,t,e,i,s),this}fromOrthogonal({left:t,right:e,bottom:i,top:s,near:r,far:h}){return function(t,e,i,s,r,h,n){let a=1/(e-i),l=1/(s-r),o=1/(h-n);t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*o,t[11]=0,t[12]=(e+i)*a,t[13]=(r+s)*l,t[14]=(n+h)*o,t[15]=1}(this,t,e,i,s,r,h),this}fromQuaternion(t){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=i+i,a=s+s,l=r+r,o=i*n,u=s*n,g=s*a,d=r*n,c=r*a,p=r*l,f=h*n,m=h*a,E=h*l;t[0]=1-g-p,t[1]=u+E,t[2]=d-m,t[3]=0,t[4]=u-E,t[5]=1-o-p,t[6]=c+f,t[7]=0,t[8]=d+m,t[9]=c-f,t[10]=1-o-g,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1}(this,t),this}setPosition(t){return this.x=t[0],this.y=t[1],this.z=t[2],this}inverse(t=this){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=e[4],a=e[5],l=e[6],o=e[7],u=e[8],g=e[9],d=e[10],c=e[11],p=e[12],f=e[13],m=e[14],E=e[15],x=i*a-s*n,_=i*l-r*n,b=i*o-h*n,M=s*l-r*a,A=s*o-h*a,T=r*o-h*l,w=u*f-g*p,F=u*m-d*p,R=u*E-c*p,y=g*m-d*f,v=g*E-c*f,S=d*E-c*m,C=x*S-_*v+b*y+M*R-A*F+T*w;C&&(C=1/C,t[0]=(a*S-l*v+o*y)*C,t[1]=(r*v-s*S-h*y)*C,t[2]=(f*T-m*A+E*M)*C,t[3]=(d*A-g*T-c*M)*C,t[4]=(l*R-n*S-o*F)*C,t[5]=(i*S-r*R+h*F)*C,t[6]=(m*b-p*T-E*_)*C,t[7]=(u*T-d*b+c*_)*C,t[8]=(n*v-a*R+o*w)*C,t[9]=(s*R-i*v-h*w)*C,t[10]=(p*A-f*b+E*x)*C,t[11]=(g*b-u*A-c*x)*C,t[12]=(a*F-n*y-l*w)*C,t[13]=(i*y-s*F+r*w)*C,t[14]=(f*_-p*M-m*x)*C,t[15]=(u*M-g*_+d*x)*C)}(this,t),this}compose(t,e,i){return function(t,e,i,s){const r=t,h=e[0],n=e[1],a=e[2],l=e[3],o=h+h,u=n+n,g=a+a,d=h*o,c=h*u,p=h*g,f=n*u,m=n*g,E=a*g,x=l*o,_=l*u,b=l*g,M=s[0],A=s[1],T=s[2];r[0]=(1-(f+E))*M,r[1]=(c+b)*M,r[2]=(p-_)*M,r[3]=0,r[4]=(c-b)*A,r[5]=(1-(d+E))*A,r[6]=(m+x)*A,r[7]=0,r[8]=(p+_)*T,r[9]=(m-x)*T,r[10]=(1-(d+f))*T,r[11]=0,r[12]=i[0],r[13]=i[1],r[14]=i[2],r[15]=1}(this,t,e,i),this}decompose(e,i,s){return function(e,i,s,r){let h=t([e[0],e[1],e[2]]);const n=t([e[4],e[5],e[6]]),a=t([e[8],e[9],e[10]]);D(e)<0&&(h=-h),s[0]=e[12],s[1]=e[13],s[2]=e[14];const l=e.slice(),o=1/h,u=1/n,g=1/a;l[0]*=o,l[1]*=o,l[2]*=o,l[4]*=u,l[5]*=u,l[6]*=u,l[8]*=g,l[9]*=g,l[10]*=g,O(i,l),r[0]=h,r[1]=n,r[2]=a}(this,e,i,s),this}getRotation(t){return O(t,this),this}getTranslation(t){var e,i;return i=this,(e=t)[0]=i[12],e[1]=i[13],e[2]=i[14],this}getScaling(t){return B(t,this),this}getMaxScaleOnAxis(){return function(t){let e=t[0],i=t[1],s=t[2],r=t[4],h=t[5],n=t[6],a=t[8],l=t[9],o=t[10];const u=e*e+i*i+s*s,g=r*r+h*h+n*n,d=a*a+l*l+o*o;return Math.sqrt(Math.max(u,g,d))}(this)}lookAt(t,e,i){return function(t,e,i,s){let r=e[0],h=e[1],n=e[2],a=s[0],l=s[1],o=s[2],u=r-i[0],g=h-i[1],d=n-i[2],c=u*u+g*g+d*d;0===c?d=1:(c=1/Math.sqrt(c),u*=c,g*=c,d*=c);let p=l*d-o*g,f=o*u-a*d,m=a*g-l*u;c=p*p+f*f+m*m,0===c&&(o?a+=1e-6:l?o+=1e-6:l+=1e-6,p=l*d-o*g,f=o*u-a*d,m=a*g-l*u,c=p*p+f*f+m*m),c=1/Math.sqrt(c),p*=c,f*=c,m*=c,t[0]=p,t[1]=f,t[2]=m,t[3]=0,t[4]=g*m-d*f,t[5]=d*p-u*m,t[6]=u*f-g*p,t[7]=0,t[8]=u,t[9]=g,t[10]=d,t[11]=0,t[12]=r,t[13]=h,t[14]=n,t[15]=1}(this,t,e,i),this}determinant(){return D(this)}fromArray(t,e=0){return this[0]=t[e],this[1]=t[e+1],this[2]=t[e+2],this[3]=t[e+3],this[4]=t[e+4],this[5]=t[e+5],this[6]=t[e+6],this[7]=t[e+7],this[8]=t[e+8],this[9]=t[e+9],this[10]=t[e+10],this[11]=t[e+11],this[12]=t[e+12],this[13]=t[e+13],this[14]=t[e+14],this[15]=t[e+15],this}toArray(t=[],e=0){return t[e]=this[0],t[e+1]=this[1],t[e+2]=this[2],t[e+3]=this[3],t[e+4]=this[4],t[e+5]=this[5],t[e+6]=this[6],t[e+7]=this[7],t[e+8]=this[8],t[e+9]=this[9],t[e+10]=this[10],t[e+11]=this[11],t[e+12]=this[12],t[e+13]=this[13],t[e+14]=this[14],t[e+15]=this[15],t}}const X=new I;class G extends Array{constructor(t=0,e=t,i=t,s=\"YXZ\"){super(t,e,i),this.order=s,this.onChange=()=>{},this._target=this;const r=[\"0\",\"1\",\"2\"];return new Proxy(this,{set(t,e){const i=Reflect.set(...arguments);return i&&r.includes(e)&&t.onChange(),i}})}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(t){this._target[0]=t,this.onChange()}set y(t){this._target[1]=t,this.onChange()}set z(t){this._target[2]=t,this.onChange()}set(t,e=t,i=t){return t.length?this.copy(t):(this._target[0]=t,this._target[1]=e,this._target[2]=i,this.onChange(),this)}copy(t){return this._target[0]=t[0],this._target[1]=t[1],this._target[2]=t[2],this.onChange(),this}reorder(t){return this._target.order=t,this.onChange(),this}fromRotationMatrix(t,e=this.order){return function(t,e,i=\"YXZ\"){\"XYZ\"===i?(t[1]=Math.asin(Math.min(Math.max(e[8],-1),1)),Math.abs(e[8])<.99999?(t[0]=Math.atan2(-e[9],e[10]),t[2]=Math.atan2(-e[4],e[0])):(t[0]=Math.atan2(e[6],e[5]),t[2]=0)):\"YXZ\"===i?(t[0]=Math.asin(-Math.min(Math.max(e[9],-1),1)),Math.abs(e[9])<.99999?(t[1]=Math.atan2(e[8],e[10]),t[2]=Math.atan2(e[1],e[5])):(t[1]=Math.atan2(-e[2],e[0]),t[2]=0)):\"ZXY\"===i?(t[0]=Math.asin(Math.min(Math.max(e[6],-1),1)),Math.abs(e[6])<.99999?(t[1]=Math.atan2(-e[2],e[10]),t[2]=Math.atan2(-e[4],e[5])):(t[1]=0,t[2]=Math.atan2(e[1],e[0]))):\"ZYX\"===i?(t[1]=Math.asin(-Math.min(Math.max(e[2],-1),1)),Math.abs(e[2])<.99999?(t[0]=Math.atan2(e[6],e[10]),t[2]=Math.atan2(e[1],e[0])):(t[0]=0,t[2]=Math.atan2(-e[4],e[5]))):\"YZX\"===i?(t[2]=Math.asin(Math.min(Math.max(e[1],-1),1)),Math.abs(e[1])<.99999?(t[0]=Math.atan2(-e[9],e[5]),t[1]=Math.atan2(-e[2],e[0])):(t[0]=0,t[1]=Math.atan2(e[8],e[10]))):\"XZY\"===i&&(t[2]=Math.asin(-Math.min(Math.max(e[4],-1),1)),Math.abs(e[4])<.99999?(t[0]=Math.atan2(e[6],e[5]),t[1]=Math.atan2(e[8],e[0])):(t[0]=Math.atan2(-e[9],e[10]),t[1]=0))}(this._target,t,e),this.onChange(),this}fromQuaternion(t,e=this.order,i){return X.fromQuaternion(t),this._target.fromRotationMatrix(X,e),i||this.onChange(),this}fromArray(t,e=0){return this._target[0]=t[e],this._target[1]=t[e+1],this._target[2]=t[e+2],this}toArray(t=[],e=0){return t[e]=this[0],t[e+1]=this[1],t[e+2]=this[2],t}}class z{constructor(){this.parent=null,this.children=[],this.visible=!0,this.matrix=new I,this.worldMatrix=new I,this.matrixAutoUpdate=!0,this.worldMatrixNeedsUpdate=!1,this.position=new u,this.quaternion=new N,this.scale=new u(1),this.rotation=new G,this.up=new u(0,1,0),this.rotation._target.onChange=()=>this.quaternion.fromEuler(this.rotation,!0),this.quaternion._target.onChange=()=>this.rotation.fromQuaternion(this.quaternion,void 0,!0)}setParent(t,e=!0){this.parent&&t!==this.parent&&this.parent.removeChild(this,!1),this.parent=t,e&&t&&t.addChild(this,!1)}addChild(t,e=!0){~this.children.indexOf(t)||this.children.push(t),e&&t.setParent(this,!1)}removeChild(t,e=!0){~this.children.indexOf(t)&&this.children.splice(this.children.indexOf(t),1),e&&t.setParent(null,!1)}updateMatrixWorld(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.worldMatrixNeedsUpdate||t)&&(null===this.parent?this.worldMatrix.copy(this.matrix):this.worldMatrix.multiply(this.parent.worldMatrix,this.matrix),this.worldMatrixNeedsUpdate=!1,t=!0);for(let e=0,i=this.children.length;e<i;e++)this.children[e].updateMatrixWorld(t)}updateMatrix(){this.matrix.compose(this.quaternion,this.position,this.scale),this.worldMatrixNeedsUpdate=!0}traverse(t){if(!t(this))for(let e=0,i=this.children.length;e<i;e++)this.children[e].traverse(t)}decompose(){this.matrix.decompose(this.quaternion._target,this.position,this.scale),this.rotation.fromQuaternion(this.quaternion)}lookAt(t,e=!1){e?this.matrix.lookAt(this.position,t,this.up):this.matrix.lookAt(t,this.position,this.up),this.matrix.getRotation(this.quaternion._target),this.rotation.fromQuaternion(this.quaternion)}}const q=new I,V=new u,k=new u;class W extends z{constructor(t,{near:e=.1,far:i=100,fov:s=45,aspect:r=1,left:h,right:n,bottom:a,top:l,zoom:o=1}={}){super(),Object.assign(this,{near:e,far:i,fov:s,aspect:r,left:h,right:n,bottom:a,top:l,zoom:o}),this.projectionMatrix=new I,this.viewMatrix=new I,this.projectionViewMatrix=new I,this.worldPosition=new u,this.type=h||n?\"orthographic\":\"perspective\",\"orthographic\"===this.type?this.orthographic():this.perspective()}perspective({near:t=this.near,far:e=this.far,fov:i=this.fov,aspect:s=this.aspect}={}){return Object.assign(this,{near:t,far:e,fov:i,aspect:s}),this.projectionMatrix.fromPerspective({fov:i*(Math.PI/180),aspect:s,near:t,far:e}),this.type=\"perspective\",this}orthographic({near:t=this.near,far:e=this.far,left:i=this.left||-1,right:s=this.right||1,bottom:r=this.bottom||-1,top:h=this.top||1,zoom:n=this.zoom}={}){return Object.assign(this,{near:t,far:e,left:i,right:s,bottom:r,top:h,zoom:n}),i/=n,s/=n,r/=n,h/=n,this.projectionMatrix.fromOrthogonal({left:i,right:s,bottom:r,top:h,near:t,far:e}),this.type=\"orthographic\",this}updateMatrixWorld(){return super.updateMatrixWorld(),this.viewMatrix.inverse(this.worldMatrix),this.worldMatrix.getTranslation(this.worldPosition),this.projectionViewMatrix.multiply(this.projectionMatrix,this.viewMatrix),this}updateProjectionMatrix(){return\"perspective\"===this.type?this.perspective():this.orthographic()}lookAt(t){return super.lookAt(t,!0),this}project(t){return t.applyMatrix4(this.viewMatrix),t.applyMatrix4(this.projectionMatrix),this}unproject(t){return t.applyMatrix4(q.inverse(this.projectionMatrix)),t.applyMatrix4(this.worldMatrix),this}updateFrustum(){this.frustum||(this.frustum=[new u,new u,new u,new u,new u,new u]);const t=this.projectionViewMatrix;this.frustum[0].set(t[3]-t[0],t[7]-t[4],t[11]-t[8]).constant=t[15]-t[12],this.frustum[1].set(t[3]+t[0],t[7]+t[4],t[11]+t[8]).constant=t[15]+t[12],this.frustum[2].set(t[3]+t[1],t[7]+t[5],t[11]+t[9]).constant=t[15]+t[13],this.frustum[3].set(t[3]-t[1],t[7]-t[5],t[11]-t[9]).constant=t[15]-t[13],this.frustum[4].set(t[3]-t[2],t[7]-t[6],t[11]-t[10]).constant=t[15]-t[14],this.frustum[5].set(t[3]+t[2],t[7]+t[6],t[11]+t[10]).constant=t[15]+t[14];for(let t=0;t<6;t++){const e=1/this.frustum[t].distance();this.frustum[t].multiply(e),this.frustum[t].constant*=e}}frustumIntersectsMesh(t,e=t.worldMatrix){if(!t.geometry.attributes.position)return!0;if(t.geometry.bounds&&t.geometry.bounds.radius!==1/0||t.geometry.computeBoundingSphere(),!t.geometry.bounds)return!0;const i=V;i.copy(t.geometry.bounds.center),i.applyMatrix4(e);const s=t.geometry.bounds.radius*e.getMaxScaleOnAxis();return this.frustumIntersectsSphere(i,s)}frustumIntersectsSphere(t,e){const i=k;for(let s=0;s<6;s++){const r=this.frustum[s];if(i.copy(r).dot(t)+r.constant<-e)return!1}return!0}}function Y(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=i[0],c=i[1],p=i[2],f=i[3],m=i[4],E=i[5],x=i[6],_=i[7],b=i[8];return t[0]=d*s+c*n+p*o,t[1]=d*r+c*a+p*u,t[2]=d*h+c*l+p*g,t[3]=f*s+m*n+E*o,t[4]=f*r+m*a+E*u,t[5]=f*h+m*l+E*g,t[6]=x*s+_*n+b*o,t[7]=x*r+_*a+b*u,t[8]=x*h+_*l+b*g,t}class H extends Array{constructor(t=1,e=0,i=0,s=0,r=1,h=0,n=0,a=0,l=1){return super(t,e,i,s,r,h,n,a,l),this}set(t,e,i,s,r,h,n,a,l){return t.length?this.copy(t):(function(t,e,i,s,r,h,n,a,l,o){t[0]=e,t[1]=i,t[2]=s,t[3]=r,t[4]=h,t[5]=n,t[6]=a,t[7]=l,t[8]=o}(this,t,e,i,s,r,h,n,a,l),this)}translate(t,e=this){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=i[0],c=i[1];t[0]=s,t[1]=r,t[2]=h,t[3]=n,t[4]=a,t[5]=l,t[6]=d*s+c*n+o,t[7]=d*r+c*a+u,t[8]=d*h+c*l+g}(this,e,t),this}rotate(t,e=this){return function(t,e,i){let s=e[0],r=e[1],h=e[2],n=e[3],a=e[4],l=e[5],o=e[6],u=e[7],g=e[8],d=Math.sin(i),c=Math.cos(i);t[0]=c*s+d*n,t[1]=c*r+d*a,t[2]=c*h+d*l,t[3]=c*n-d*s,t[4]=c*a-d*r,t[5]=c*l-d*h,t[6]=o,t[7]=u,t[8]=g}(this,e,t),this}scale(t,e=this){return function(t,e,i){let s=i[0],r=i[1];t[0]=s*e[0],t[1]=s*e[1],t[2]=s*e[2],t[3]=r*e[3],t[4]=r*e[4],t[5]=r*e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8]}(this,e,t),this}multiply(t,e){return e?Y(this,t,e):Y(this,this,t),this}identity(){var t;return(t=this)[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,this}copy(t){var e,i;return i=t,(e=this)[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],this}fromMatrix4(t){var e,i;return i=t,(e=this)[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[4],e[4]=i[5],e[5]=i[6],e[6]=i[8],e[7]=i[9],e[8]=i[10],this}fromQuaternion(t){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=i+i,a=s+s,l=r+r,o=i*n,u=s*n,g=s*a,d=r*n,c=r*a,p=r*l,f=h*n,m=h*a,E=h*l;t[0]=1-g-p,t[3]=u-E,t[6]=d+m,t[1]=u+E,t[4]=1-o-p,t[7]=c-f,t[2]=d-m,t[5]=c+f,t[8]=1-o-g}(this,t),this}fromBasis(t,e,i){return this.set(t[0],t[1],t[2],e[0],e[1],e[2],i[0],i[1],i[2]),this}inverse(t=this){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=e[4],a=e[5],l=e[6],o=e[7],u=e[8],g=u*n-a*o,d=-u*h+a*l,c=o*h-n*l,p=i*g+s*d+r*c;p&&(p=1/p,t[0]=g*p,t[1]=(-u*s+r*o)*p,t[2]=(a*s-r*n)*p,t[3]=d*p,t[4]=(u*i-r*l)*p,t[5]=(-a*i+r*h)*p,t[6]=c*p,t[7]=(-o*i+s*l)*p,t[8]=(n*i-s*h)*p)}(this,t),this}getNormalMatrix(t){return function(t,e){let i=e[0],s=e[1],r=e[2],h=e[3],n=e[4],a=e[5],l=e[6],o=e[7],u=e[8],g=e[9],d=e[10],c=e[11],p=e[12],f=e[13],m=e[14],E=e[15],x=i*a-s*n,_=i*l-r*n,b=i*o-h*n,M=s*l-r*a,A=s*o-h*a,T=r*o-h*l,w=u*f-g*p,F=u*m-d*p,R=u*E-c*p,y=g*m-d*f,v=g*E-c*f,S=d*E-c*m,C=x*S-_*v+b*y+M*R-A*F+T*w;C&&(C=1/C,t[0]=(a*S-l*v+o*y)*C,t[1]=(l*R-n*S-o*F)*C,t[2]=(n*v-a*R+o*w)*C,t[3]=(r*v-s*S-h*y)*C,t[4]=(i*S-r*R+h*F)*C,t[5]=(s*R-i*v-h*w)*C,t[6]=(f*T-m*A+E*M)*C,t[7]=(m*b-p*T-E*_)*C,t[8]=(p*A-f*b+E*x)*C)}(this,t),this}}let j=0;class Z extends z{constructor(t,{geometry:e,program:i,mode:s=t.TRIANGLES,frustumCulled:r=!0,renderOrder:h=0}={}){super(),t.canvas||console.error(\"gl not passed as first argument to Mesh\"),this.gl=t,this.id=j++,this.geometry=e,this.program=i,this.mode=s,this.frustumCulled=r,this.renderOrder=h,this.modelViewMatrix=new I,this.normalMatrix=new H,this.beforeRenderCallbacks=[],this.afterRenderCallbacks=[]}onBeforeRender(t){return this.beforeRenderCallbacks.push(t),this}onAfterRender(t){return this.afterRenderCallbacks.push(t),this}draw({camera:t}={}){t&&(this.program.uniforms.modelMatrix||Object.assign(this.program.uniforms,{modelMatrix:{value:null},viewMatrix:{value:null},modelViewMatrix:{value:null},normalMatrix:{value:null},projectionMatrix:{value:null},cameraPosition:{value:null}}),this.program.uniforms.projectionMatrix.value=t.projectionMatrix,this.program.uniforms.cameraPosition.value=t.worldPosition,this.program.uniforms.viewMatrix.value=t.viewMatrix,this.modelViewMatrix.multiply(t.viewMatrix,this.worldMatrix),this.normalMatrix.getNormalMatrix(this.modelViewMatrix),this.program.uniforms.modelMatrix.value=this.worldMatrix,this.program.uniforms.modelViewMatrix.value=this.modelViewMatrix,this.program.uniforms.normalMatrix.value=this.normalMatrix),this.beforeRenderCallbacks.forEach(e=>e&&e({mesh:this,camera:t}));let e=this.program.cullFace&&this.worldMatrix.determinant()<0;this.program.use({flipFaces:e}),this.geometry.draw({mode:this.mode,program:this.program}),this.afterRenderCallbacks.forEach(e=>e&&e({mesh:this,camera:t}))}}const $=new Uint8Array(4);function Q(t){return!(t&t-1)}let K=1;class J{constructor(t,{image:e,target:i=t.TEXTURE_2D,type:s=t.UNSIGNED_BYTE,format:r=t.RGBA,internalFormat:h=r,wrapS:n=t.CLAMP_TO_EDGE,wrapT:a=t.CLAMP_TO_EDGE,wrapR:l=t.CLAMP_TO_EDGE,generateMipmaps:o=i===(t.TEXTURE_2D||t.TEXTURE_CUBE_MAP),minFilter:u=(o?t.NEAREST_MIPMAP_LINEAR:t.LINEAR),magFilter:g=t.LINEAR,premultiplyAlpha:d=!1,unpackAlignment:c=4,flipY:p=i==(t.TEXTURE_2D||t.TEXTURE_3D),anisotropy:f=0,level:m=0,width:E,height:x=E,length:_=1}={}){this.gl=t,this.id=K++,this.image=e,this.target=i,this.type=s,this.format=r,this.internalFormat=h,this.minFilter=u,this.magFilter=g,this.wrapS=n,this.wrapT=a,this.wrapR=l,this.generateMipmaps=o,this.premultiplyAlpha=d,this.unpackAlignment=c,this.flipY=p,this.anisotropy=Math.min(f,this.gl.renderer.parameters.maxAnisotropy),this.level=m,this.width=E,this.height=x,this.length=_,this.texture=this.gl.createTexture(),this.store={image:null},this.glState=this.gl.renderer.state,this.state={},this.state.minFilter=this.gl.NEAREST_MIPMAP_LINEAR,this.state.magFilter=this.gl.LINEAR,this.state.wrapS=this.gl.REPEAT,this.state.wrapT=this.gl.REPEAT,this.state.anisotropy=0}bind(){this.glState.textureUnits[this.glState.activeTextureUnit]!==this.id&&(this.gl.bindTexture(this.target,this.texture),this.glState.textureUnits[this.glState.activeTextureUnit]=this.id)}update(t=0){const e=!(this.image===this.store.image&&!this.needsUpdate);if((e||this.glState.textureUnits[t]!==this.id)&&(this.gl.renderer.activeTexture(t),this.bind()),e){if(this.needsUpdate=!1,this.flipY!==this.glState.flipY&&(this.gl.pixelStorei(this.gl.UNPACK_FLIP_Y_WEBGL,this.flipY),this.glState.flipY=this.flipY),this.premultiplyAlpha!==this.glState.premultiplyAlpha&&(this.gl.pixelStorei(this.gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this.premultiplyAlpha),this.glState.premultiplyAlpha=this.premultiplyAlpha),this.unpackAlignment!==this.glState.unpackAlignment&&(this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,this.unpackAlignment),this.glState.unpackAlignment=this.unpackAlignment),this.minFilter!==this.state.minFilter&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_MIN_FILTER,this.minFilter),this.state.minFilter=this.minFilter),this.magFilter!==this.state.magFilter&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_MAG_FILTER,this.magFilter),this.state.magFilter=this.magFilter),this.wrapS!==this.state.wrapS&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_S,this.wrapS),this.state.wrapS=this.wrapS),this.wrapT!==this.state.wrapT&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_T,this.wrapT),this.state.wrapT=this.wrapT),this.wrapR!==this.state.wrapR&&(this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_R,this.wrapR),this.state.wrapR=this.wrapR),this.anisotropy&&this.anisotropy!==this.state.anisotropy&&(this.gl.texParameterf(this.target,this.gl.renderer.getExtension(\"EXT_texture_filter_anisotropic\").TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropy),this.state.anisotropy=this.anisotropy),this.image){if(this.image.width&&(this.width=this.image.width,this.height=this.image.height),this.target===this.gl.TEXTURE_CUBE_MAP)for(let t=0;t<6;t++)this.gl.texImage2D(this.gl.TEXTURE_CUBE_MAP_POSITIVE_X+t,this.level,this.internalFormat,this.format,this.type,this.image[t]);else if(ArrayBuffer.isView(this.image))this.target===this.gl.TEXTURE_2D?this.gl.texImage2D(this.target,this.level,this.internalFormat,this.width,this.height,0,this.format,this.type,this.image):this.target!==this.gl.TEXTURE_2D_ARRAY&&this.target!==this.gl.TEXTURE_3D||this.gl.texImage3D(this.target,this.level,this.internalFormat,this.width,this.height,this.length,0,this.format,this.type,this.image);else if(this.image.isCompressedTexture)for(let t=0;t<this.image.length;t++)this.gl.compressedTexImage2D(this.target,t,this.internalFormat,this.image[t].width,this.image[t].height,0,this.image[t].data);else this.target===this.gl.TEXTURE_2D?this.gl.texImage2D(this.target,this.level,this.internalFormat,this.format,this.type,this.image):this.gl.texImage3D(this.target,this.level,this.internalFormat,this.width,this.height,this.length,0,this.format,this.type,this.image);this.generateMipmaps&&(this.gl.renderer.isWebgl2||Q(this.image.width)&&Q(this.image.height)?this.gl.generateMipmap(this.target):(this.generateMipmaps=!1,this.wrapS=this.wrapT=this.gl.CLAMP_TO_EDGE,this.minFilter=this.gl.LINEAR)),this.onUpdate&&this.onUpdate()}else if(this.target===this.gl.TEXTURE_CUBE_MAP)for(let t=0;t<6;t++)this.gl.texImage2D(this.gl.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,this.gl.RGBA,1,1,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,$);else this.width?this.target===this.gl.TEXTURE_2D?this.gl.texImage2D(this.target,this.level,this.internalFormat,this.width,this.height,0,this.format,this.type,null):this.gl.texImage3D(this.target,this.level,this.internalFormat,this.width,this.height,this.length,0,this.format,this.type,null):this.gl.texImage2D(this.target,0,this.gl.RGBA,1,1,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,$);this.store.image=this.image}}}class tt{constructor(t,{width:e=t.canvas.width,height:i=t.canvas.height,target:s=t.FRAMEBUFFER,color:r=1,depth:h=!0,stencil:n=!1,depthTexture:a=!1,wrapS:l=t.CLAMP_TO_EDGE,wrapT:o=t.CLAMP_TO_EDGE,wrapR:u=t.CLAMP_TO_EDGE,minFilter:g=t.LINEAR,magFilter:d=g,type:c=t.UNSIGNED_BYTE,format:p=t.RGBA,internalFormat:f=p,unpackAlignment:m,premultiplyAlpha:E}={}){this.gl=t,this.width=e,this.height=i,this.depth=h,this.stencil=n,this.buffer=this.gl.createFramebuffer(),this.target=s,this.gl.renderer.bindFramebuffer(this),this.textures=[];const x=[];for(let s=0;s<r;s++)this.textures.push(new J(t,{width:e,height:i,wrapS:l,wrapT:o,wrapR:u,minFilter:g,magFilter:d,type:c,format:p,internalFormat:f,unpackAlignment:m,premultiplyAlpha:E,flipY:!1,generateMipmaps:!1})),this.textures[s].update(),this.gl.framebufferTexture2D(this.target,this.gl.COLOR_ATTACHMENT0+s,this.gl.TEXTURE_2D,this.textures[s].texture,0),x.push(this.gl.COLOR_ATTACHMENT0+s);x.length>1&&this.gl.renderer.drawBuffers(x),this.texture=this.textures[0],a&&(this.gl.renderer.isWebgl2||this.gl.renderer.getExtension(\"WEBGL_depth_texture\"))?(this.depthTexture=new J(t,{width:e,height:i,minFilter:this.gl.NEAREST,magFilter:this.gl.NEAREST,format:this.stencil?this.gl.DEPTH_STENCIL:this.gl.DEPTH_COMPONENT,internalFormat:t.renderer.isWebgl2?this.stencil?this.gl.DEPTH24_STENCIL8:this.gl.DEPTH_COMPONENT16:this.gl.DEPTH_COMPONENT,type:this.stencil?this.gl.UNSIGNED_INT_24_8:this.gl.UNSIGNED_INT}),this.depthTexture.update(),this.gl.framebufferTexture2D(this.target,this.stencil?this.gl.DEPTH_STENCIL_ATTACHMENT:this.gl.DEPTH_ATTACHMENT,this.gl.TEXTURE_2D,this.depthTexture.texture,0)):(h&&!n&&(this.depthBuffer=this.gl.createRenderbuffer(),this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.depthBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.DEPTH_COMPONENT16,e,i),this.gl.framebufferRenderbuffer(this.target,this.gl.DEPTH_ATTACHMENT,this.gl.RENDERBUFFER,this.depthBuffer)),n&&!h&&(this.stencilBuffer=this.gl.createRenderbuffer(),this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.stencilBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.STENCIL_INDEX8,e,i),this.gl.framebufferRenderbuffer(this.target,this.gl.STENCIL_ATTACHMENT,this.gl.RENDERBUFFER,this.stencilBuffer)),h&&n&&(this.depthStencilBuffer=this.gl.createRenderbuffer(),this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.depthStencilBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.DEPTH_STENCIL,e,i),this.gl.framebufferRenderbuffer(this.target,this.gl.DEPTH_STENCIL_ATTACHMENT,this.gl.RENDERBUFFER,this.depthStencilBuffer))),this.gl.renderer.bindFramebuffer({target:this.target})}setSize(t,e){if(this.width!==t||this.height!==e){this.width=t,this.height=e,this.gl.renderer.bindFramebuffer(this);for(let i=0;i<this.textures.length;i++)this.textures[i].width=t,this.textures[i].height=e,this.textures[i].needsUpdate=!0,this.textures[i].update(),this.gl.framebufferTexture2D(this.target,this.gl.COLOR_ATTACHMENT0+i,this.gl.TEXTURE_2D,this.textures[i].texture,0);this.depthTexture?(this.depthTexture.width=t,this.depthTexture.height=e,this.depthTexture.needsUpdate=!0,this.depthTexture.update(),this.gl.framebufferTexture2D(this.target,this.gl.DEPTH_ATTACHMENT,this.gl.TEXTURE_2D,this.depthTexture.texture,0)):(this.depthBuffer&&(this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.depthBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.DEPTH_COMPONENT16,t,e)),this.stencilBuffer&&(this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.stencilBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.STENCIL_INDEX8,t,e)),this.depthStencilBuffer&&(this.gl.bindRenderbuffer(this.gl.RENDERBUFFER,this.depthStencilBuffer),this.gl.renderbufferStorage(this.gl.RENDERBUFFER,this.gl.DEPTH_STENCIL,t,e))),this.gl.renderer.bindFramebuffer({target:this.target})}}}class et extends f{constructor(t,{width:e=1,height:i=1,widthSegments:s=1,heightSegments:r=1,attributes:h={}}={}){const n=s,a=r,l=(n+1)*(a+1),o=n*a*6,u=new Float32Array(3*l),g=new Float32Array(3*l),d=new Float32Array(2*l),c=o>65536?new Uint32Array(o):new Uint16Array(o);et.buildPlane(u,g,d,c,e,i,0,n,a),Object.assign(h,{position:{size:3,data:u},normal:{size:3,data:g},uv:{size:2,data:d},index:{data:c}}),super(t,h)}static buildPlane(t,e,i,s,r,h,n,a,l,o=0,u=1,g=2,d=1,c=-1,p=0,f=0){const m=p,E=r/a,x=h/l;for(let _=0;_<=l;_++){let b=_*x-h/2;for(let h=0;h<=a;h++,p++){let x=h*E-r/2;if(t[3*p+o]=x*d,t[3*p+u]=b*c,t[3*p+g]=n/2,e[3*p+o]=0,e[3*p+u]=0,e[3*p+g]=n>=0?1:-1,i[2*p]=h/a,i[2*p+1]=1-_/l,_===l||h===a)continue;let M=m+h+_*(a+1),A=m+h+(_+1)*(a+1),T=m+h+(_+1)*(a+1)+1,w=m+h+_*(a+1)+1;s[6*f]=M,s[6*f+1]=A,s[6*f+2]=w,s[6*f+3]=A,s[6*f+4]=T,s[6*f+5]=w,f++}}}}var it,st={};var rt=(it||(it=1,st.resolveLygia=function(t){Array.isArray(t)||(t=t.split(/\\r?\\n/));let e=\"\";return t.forEach((t,i)=>{let s=t.trim();if(s.startsWith('#include \"lygia')){let t=s.substring(15);t=\"https://lygia.xyz\"+t.replace(/\\\"|\\;|\\s/g,\"\"),e+=function(t){let e=new XMLHttpRequest;return e.open(\"GET\",t,!1),e.send(),200==e.status?e.responseText:\"\"}(t)+\"\\n\"}else e+=t+\"\\n\"}),e}),st).resolveLygia;export{W as Camera,Z as Mesh,et as Plane,x as Program,tt as RenderTarget,F as Renderer,J as Texture,rt as resolveLygia};\n","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";import{Renderer,Camera,Mesh,Plane,Program,RenderTarget as OglRenderTarget,Texture}from\"https://cdn.jsdelivr.net/gh/framer-university/components/npm-bundles/ascii-background.js\";import{addPropertyControls,ControlType,RenderTarget as FramerRenderTarget}from\"framer\";// Inline shader sources to avoid special bundler config\n// Intrinsic size used to avoid width/height collapse in Fit layouts\nconst INTRINSIC_WIDTH=600;const INTRINSIC_HEIGHT=400;const DEFAULT_GLYPH_PADDING_PX=2;const DEFAULT_CHARACTERS=\"@%#*+=-:.\";const perlinVertexShader=`#version 300 es\nin vec2 uv;\nin vec2 position;\nout vec2 vUv;\nvoid main() {\n  vUv = uv;\n  gl_Position = vec4(position, 0., 1.); \n}`;const perlinFragmentShader=`#version 300 es\nprecision mediump float;\nuniform float uFrequency;\nuniform float uTime;\nuniform float uSpeed;\nuniform float uValue;\nuniform vec2 uResolution;\nin vec2 vUv;\nout vec4 fragColor;\n\n// Clean Simplex noise from liquid-mask (simplified)\nvec3 mod289(vec3 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }\nvec4 mod289(vec4 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }\nvec4 permute(vec4 x) { return mod289(((x * 34.0) + 1.0) * x); }\nvec4 taylorInvSqrt(vec4 r) { return 1.79284291400159 - 0.85373472095314 * r; }\n\nfloat snoise(vec3 v) {\n  const vec2  C = vec2(1.0/6.0, 1.0/3.0) ;\n  const vec4  D = vec4(0.0, 0.5, 1.0, 2.0);\n  \n  // First corner\n  vec3 i  = floor(v + dot(v, C.yyy));\n  vec3 x0 = v - i + dot(i, C.xxx);\n\n  // Other corners\n  vec3 g = step(x0.yzx, x0.xyz);\n  vec3 l = 1.0 - g;\n  vec3 i1 = min( g.xyz, l.zxy );\n  vec3 i2 = max( g.xyz, l.zxy );\n\n  vec3 x1 = x0 - i1 + C.xxx;\n  vec3 x2 = x0 - i2 + C.yyy;\n  vec3 x3 = x0 - D.yyy;\n\n  // Permutations\n  i = mod289(i);\n  vec4 p = permute( permute( permute(\n             i.z + vec4(0.0, i1.z, i2.z, 1.0 ))\n           + i.y + vec4(0.0, i1.y, i2.y, 1.0 ))\n           + i.x + vec4(0.0, i1.x, i2.x, 1.0 ));\n\n  // Gradients: 7x7 points over a square, mapped onto an octahedron.\n  float n_ = 0.142857142857; // 1.0/7.0\n  vec3  ns = n_ * D.wyz - D.xzx;\n\n  vec4 j = p - 49.0 * floor(p * ns.z * ns.z);\n\n  vec4 x_ = floor(j * ns.z);\n  vec4 y_ = floor(j - 7.0 * x_ );\n\n  vec4 x = x_ *ns.x + ns.yyyy;\n  vec4 y = y_ *ns.x + ns.yyyy;\n  vec4 h = 1.0 - abs(x) - abs(y);\n\n  vec4 b0 = vec4( x.xy, y.xy );\n  vec4 b1 = vec4( x.zw, y.zw );\n\n  vec4 s0 = floor(b0)*2.0 + 1.0;\n  vec4 s1 = floor(b1)*2.0 + 1.0;\n  vec4 sh = -step(h, vec4(0.0));\n\n  vec4 a0 = b0.xzyw + s0.xzyw*sh.xxyy ;\n  vec4 a1 = b1.xzyw + s1.xzyw*sh.zzww ;\n\n  vec3 p0 = vec3(a0.xy,h.x);\n  vec3 p1 = vec3(a0.zw,h.y);\n  vec3 p2 = vec3(a1.xy,h.z);\n  vec3 p3 = vec3(a1.zw,h.w);\n\n  // Normalise gradients\n  vec4 norm = taylorInvSqrt(vec4(dot(p0,p0), dot(p1,p1), dot(p2,p2), dot(p3,p3)));\n  p0 *= norm.x;\n  p1 *= norm.y;\n  p2 *= norm.z;\n  p3 *= norm.w;\n\n  // Mix final noise value\n  vec4 m = max(0.6 - vec4(dot(x0,x0), dot(x1,x1), dot(x2,x2), dot(x3,x3)), 0.0);\n  m = m * m;\n  return 42.0 * dot( m*m, vec4( dot(p0,x0), dot(p1,x1), dot(p2,x2), dot(p3,x3) ) );\n}\n\n// Simple 3D noise - no diagonal shifting, just clean organic noise\nfloat cnoise(vec3 p) {\n    return snoise(p);\n}\n\nvec3 hsv2rgb(vec3 c) {\n  vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\n  vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\n  return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\n}\n\nvoid main() {\n  // Maintain aspect ratio and cover behavior for noise domain\n  vec2 uv = vUv;\n  float aspect = uResolution.x / max(uResolution.y, 1.0);\n  uv = (uv - 0.5) * vec2(aspect, 1.0) + 0.5;\n\n  float hue = abs(cnoise(vec3(uv * uFrequency, uTime * uSpeed)));\n  vec3 rainbowColor = hsv2rgb(vec3(hue, 1.0, uValue));\n  fragColor = vec4(rainbowColor, 1.0);\n}`;const asciiVertexShader=`#version 300 es\nin vec2 uv;\nin vec2 position;\nout vec2 vUv;\nvoid main() {\n  vUv = uv;\n  gl_Position = vec4(position, 0., 1.);\n}`;const asciiFragmentShader=`#version 300 es\nprecision highp float;\nuniform vec2 uResolution;\nuniform sampler2D uTexture;\n// Palette controls\nuniform int uUseCustomPalette; // 0: Rainbow (use texture color), 1: Custom palette\nuniform int uPaletteCount; // 1..3\nuniform vec3 uPalette1;\nuniform vec3 uPalette2;\nuniform vec3 uPalette3;\nuniform float uPaletteA1;\nuniform float uPaletteA2;\nuniform float uPaletteA3;\n// ASCII controls\nuniform float uCellSize; // character cell size in pixels (base)\nuniform float uGamma; // grayscale gamma\nuniform float uPaletteBias; // shifts palette mapping -0.5..0.5\n// Glyph atlas controls (optional)\nuniform int uUseGlyphAtlas; // 0: built-in bitmask, 1: sample from atlas\nuniform sampler2D uGlyphAtlas;\nuniform ivec2 uGlyphGrid; // cols, rows\nuniform int uCharCount; // number of glyphs in atlas\nout vec4 fragColor;\n\n// Built-in 5x5 bitmask character for fallback\nfloat character(int n, vec2 p) {\n  p = floor(p * vec2(-4.0, 4.0) + 2.5);\n  if(clamp(p.x, 0.0, 4.0) == p.x && clamp(p.y, 0.0, 4.0) == p.y) {\n    int a = int(round(p.x) + 5.0 * round(p.y));\n    if(((n >> a) & 1) == 1) return 1.0;\n  }\n  return 0.0;\n}\n\nvoid main() {\n  vec2 pix = gl_FragCoord.xy;\n  float quant = max(uCellSize * 2.0, 1.0);\n  vec3 col = texture(uTexture, floor(pix / quant) * quant / uResolution.xy).rgb;\n  float gray = 0.3 * col.r + 0.59 * col.g + 0.11 * col.b;\n  gray = pow(clamp(gray, 0.0001, 1.0), uGamma);\n\n  float cell = max(uCellSize, 1.0);\n  float charAlpha = 0.0;\n\n  if (uUseGlyphAtlas == 1 && uCharCount > 0 && uGlyphGrid.x > 0 && uGlyphGrid.y > 0) {\n    // Select glyph index by density\n    float g = clamp(gray + uPaletteBias, 0.0, 1.0);\n    int idx = int(clamp(floor(g * float(uCharCount - 1) + 0.5), 0.0, float(uCharCount - 1)));\n    // Compute per-cell UV\n    vec2 cellUV = fract(pix / cell);\n    // Atlas tile uv\n    vec2 grid = vec2(uGlyphGrid);\n    vec2 tileSize = 1.0 / grid;\n    float colIdx = float(idx % uGlyphGrid.x);\n    float rowIdx = floor(float(idx) / float(uGlyphGrid.x));\n    vec2 tileOrigin = vec2(colIdx, rowIdx) * tileSize;\n    vec2 atlasUV = tileOrigin + cellUV * tileSize;\n    // Assume glyphs are white-on-black; use luminance as alpha\n    vec3 glyphSample = texture(uGlyphAtlas, atlasUV).rgb;\n    charAlpha = dot(glyphSample, vec3(0.299, 0.587, 0.114));\n  } else {\n    // Fallback to built-in bitmask\n    int n = 4096;\n    if(gray > 0.2) n = 65600;\n    if(gray > 0.3) n = 163153;\n    if(gray > 0.4) n = 15255086;\n    if(gray > 0.5) n = 13121101;\n    if(gray > 0.6) n = 15252014;\n    if(gray > 0.7) n = 13195790;\n    if(gray > 0.8) n = 11512810;\n    vec2 p = mod(pix / cell, 2.0) - vec2(1.0);\n    charAlpha = character(n, p);\n  }\n\n  float g2 = clamp(gray + uPaletteBias, 0.0, 1.0);\n  vec3 paletteColor;\n  float paletteAlpha = 1.0;\n  if (uPaletteCount <= 1) {\n    paletteColor = uPalette1;\n    paletteAlpha = uPaletteA1;\n  } else if (uPaletteCount == 2) {\n    paletteColor = mix(uPalette1, uPalette2, g2);\n    paletteAlpha = mix(uPaletteA1, uPaletteA2, g2);\n  } else {\n    float t = g2 * 2.0;\n    paletteColor = mix(uPalette1, uPalette2, clamp(t, 0.0, 1.0));\n    float t2 = clamp(t - 1.0, 0.0, 1.0);\n    paletteColor = mix(paletteColor, uPalette3, t2);\n    paletteAlpha = mix(mix(uPaletteA1, uPaletteA2, clamp(t, 0.0, 1.0)), uPaletteA3, t2);\n  }\n\n  float charOpacity = (uUseCustomPalette == 1) ? paletteAlpha : 1.0;\n  vec3 asciiCol = (uUseCustomPalette == 1) ? paletteColor : col;\n  fragColor = vec4(asciiCol, charAlpha * charOpacity);\n}`;// CSS variable token and color parsing (hex/rgba/var())\nconst cssVariableRegex=/var\\s*\\(\\s*(--[\\w-]+)(?:\\s*,\\s*((?:[^)(]+|\\((?:[^)(]+|\\([^)(]*\\))*\\))*))?\\s*\\)/;function extractDefaultValue(cssVar){if(!cssVar||!cssVar.startsWith(\"var(\"))return cssVar;const match=cssVariableRegex.exec(cssVar);if(!match)return cssVar;const fallback=(match[2]||\"\").trim();if(fallback.startsWith(\"var(\"))return extractDefaultValue(fallback);return fallback||cssVar;}function resolveTokenColor(input){if(typeof input!==\"string\")return input;if(!input.startsWith(\"var(\"))return input;return extractDefaultValue(input);}function parseColorToRgba(input){if(!input)return{r:0,g:0,b:0,a:1};const str=input.trim();const rgbaMatch=str.match(/rgba?\\(\\s*([\\d.]+)\\s*,\\s*([\\d.]+)\\s*,\\s*([\\d.]+)\\s*(?:,\\s*([\\d.]+)\\s*)?\\)/i);if(rgbaMatch){const r=Math.max(0,Math.min(255,parseFloat(rgbaMatch[1])))/255;const g=Math.max(0,Math.min(255,parseFloat(rgbaMatch[2])))/255;const b=Math.max(0,Math.min(255,parseFloat(rgbaMatch[3])))/255;const a=rgbaMatch[4]!==undefined?Math.max(0,Math.min(1,parseFloat(rgbaMatch[4]))):1;return{r,g,b,a};}const hex=str.replace(/^#/,\"\");if(hex.length===8){return{r:parseInt(hex.slice(0,2),16)/255,g:parseInt(hex.slice(2,4),16)/255,b:parseInt(hex.slice(4,6),16)/255,a:parseInt(hex.slice(6,8),16)/255};}if(hex.length===6){return{r:parseInt(hex.slice(0,2),16)/255,g:parseInt(hex.slice(2,4),16)/255,b:parseInt(hex.slice(4,6),16)/255,a:1};}if(hex.length===4){return{r:parseInt(hex[0]+hex[0],16)/255,g:parseInt(hex[1]+hex[1],16)/255,b:parseInt(hex[2]+hex[2],16)/255,a:parseInt(hex[3]+hex[3],16)/255};}if(hex.length===3){return{r:parseInt(hex[0]+hex[0],16)/255,g:parseInt(hex[1]+hex[1],16)/255,b:parseInt(hex[2]+hex[2],16)/255,a:1};}return{r:0,g:0,b:0,a:1};}function colorStringToVec4(input){const resolved=resolveTokenColor(input);const{r,g,b,a}=parseColorToRgba(resolved);return[r,g,b,a];}// UI → shader mapping helpers (keep visual effect identical while showing nicer numbers)\nfunction mapLinear(value,inMin,inMax,outMin,outMax){if(inMax===inMin)return outMin;const t=(value-inMin)/(inMax-inMin);return outMin+t*(outMax-outMin);}// Frequency: UI [0.1..1] → shader [0.1..10] (1 = big blobs, 0.1 = small blobs)\nfunction mapFrequencyUiToShader(ui){return mapLinear(ui,.1,1,.1,10);}// Speed: UI [0.1..1] → shader [0.2..2] (original shader range used 0..2; play=false still forces 0)\nfunction mapSpeedUiToShader(ui){return ui*.5;}// Cell size: UI [1..100] → shader [4..48]\nfunction mapCellSizeUiToShader(ui){return mapLinear(ui,1,100,4,48);}// Contrast: UI [1..10] → shader gamma [0.5..2.5]\nfunction mapContrastUiToShader(ui){return mapLinear(ui,1,10,.5,2.5);}// Palette balance: UI [-1..1] → shader [-0.5..0.5]\nfunction mapPaletteBiasUiToShader(ui){return ui*.5;}function isCustomGlyphMode(value){return value===true||value===\"Custom\";}// Extract font settings from a Framer Font control payload (or fallbacks)\nfunction deriveFontSettings(font,fallbackFamily,fallbackWeight,fallbackSizePx){const family=font&&(font.family||font.fontFamily)||fallbackFamily;const weight=font&&(font.weight||font.fontWeight)||fallbackWeight;const sizeRaw=(font&&(font.fontSize??font.size))??fallbackSizePx;let sizePx=typeof sizeRaw===\"string\"?parseFloat(sizeRaw):Number(sizeRaw);if(!Number.isFinite(sizePx)||sizePx<=0)sizePx=fallbackSizePx;return{family,weight,sizePx};}// Build a glyph atlas texture from a custom font and character set\nfunction buildGlyphAtlas(gl,characters,fontFamily,fontWeight,fontSizePx,paddingPx){const count=Math.max(1,characters.length);const cols=Math.ceil(Math.sqrt(count));const rows=Math.ceil(count/cols);const cellPx=Math.max(8,fontSizePx+paddingPx*2);const dpr=Math.min(window.devicePixelRatio||1,2);const canvas=document.createElement(\"canvas\");canvas.width=cols*cellPx*dpr;canvas.height=rows*cellPx*dpr;const ctx=canvas.getContext(\"2d\");ctx.scale(dpr,dpr);ctx.clearRect(0,0,canvas.width,canvas.height);ctx.fillStyle=\"#000\";ctx.fillRect(0,0,canvas.width/dpr,canvas.height/dpr);ctx.fillStyle=\"#fff\";ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";ctx.font=`${fontWeight} ${fontSizePx}px ${fontFamily}`;for(let i=0;i<count;i++){const cx=i%cols;const cy=Math.floor(i/cols);const x=cx*cellPx+cellPx/2;const y=cy*cellPx+cellPx/2;ctx.fillText(characters[i],x,y);}const texture=new Texture(gl,{image:canvas,wrapS:gl.CLAMP_TO_EDGE,wrapT:gl.CLAMP_TO_EDGE,generateMipmaps:false,// Flip Y so canvas y-up maps correctly into texture coordinates\nflipY:true});return{texture,cols,rows,cellPx,count};}/**\n * @framerDisableUnlink\n * @framerIntrisicHeight 300\n * @framerIntrisicHeight 600\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function ASCIIBackground(props){const{frequency=.5,speed=.375,play=true,mode=\"Rainbow\",paletteCount=3,bgColor=\"#000000\",color1=\"#ffffff\",color2=\"#ff8000\",color3=\"#3399ff\",cellSize=50,gamma=5.5,paletteBias=0,style,useGlyphAtlas=false,characters=DEFAULT_CHARACTERS,fontFamily=\"monospace\",fontWeight=400,fontSizePx=42,font,colors}=props;const useGlyphAtlasFlag=isCustomGlyphMode(useGlyphAtlas);// Compute palette values (support both legacy top-level props and new nested colors object)\nconst paletteCountEffective=colors?.paletteCount??paletteCount;const color1Effective=colors?.color1??color1;const color2Effective=colors?.color2??color2;const color3Effective=colors?.color3??color3;const effectiveCharacters=(()=>{const raw=typeof characters===\"string\"?characters:\"\";const sanitized=Array.from(raw).filter(ch=>!/\\s/.test(ch)).join(\"\");return sanitized.length>0?sanitized:DEFAULT_CHARACTERS;})();// If not in Framer's canvas, always play\nconst isCanvas=(()=>{try{return FramerRenderTarget.current()===FramerRenderTarget.canvas;}catch{return false;}})();const effectivePlay=isCanvas?play:true;const canvasContainerRef=useRef(null);const perlinProgramRef=useRef(null);const asciiProgramRef=useRef(null);const rendererRef=useRef(null);const cameraRef=useRef(null);const perlinMeshRef=useRef(null);const asciiMeshRef=useRef(null);const renderTargetRef=useRef(null);const glRef=useRef(null);const rafIdRef=useRef(null);const lastTimeRef=useRef(0);const isPlayingRef=useRef(effectivePlay);const glyphTextureRef=useRef(null);const glyphGridRef=useRef(null);const dummyGlyphTextureRef=useRef(null);// Helper to render a single frame without scheduling RAF\nconst renderOnce=()=>{const renderer=rendererRef.current;const camera=cameraRef.current;const perlinMesh=perlinMeshRef.current;const asciiMesh=asciiMeshRef.current;const renderTarget=renderTargetRef.current;const gl=glRef.current;const asciiProgram=asciiProgramRef.current;if(!renderer||!camera||!perlinMesh||!asciiMesh||!renderTarget||!gl||!asciiProgram)return;renderer.render({scene:perlinMesh,camera,target:renderTarget});asciiProgram.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];renderer.render({scene:asciiMesh,camera});};useEffect(()=>{let rafId=0;let resizeHandler=null;let resizeObserver=null;const container=canvasContainerRef.current;if(!container)return;const renderer=new Renderer({dpr:Math.min(window.devicePixelRatio||1,2),alpha:true,premultipliedAlpha:false});const gl=renderer.gl;container.appendChild(gl.canvas);rendererRef.current=renderer;glRef.current=gl;const camera=new Camera(gl,{near:.1,far:100});camera.position.set(0,0,3);cameraRef.current=camera;const doResize=()=>{const width=container.clientWidth||window.innerWidth;const height=container.clientHeight||window.innerHeight;renderer.setSize(width,height);camera.perspective({aspect:gl.canvas.width/gl.canvas.height});// keep offscreen target and uniforms in sync with canvas size\nif(renderTargetRef.current&&renderTargetRef.current.setSize){renderTargetRef.current.setSize(gl.canvas.width,gl.canvas.height);}if(perlinProgramRef.current){perlinProgramRef.current.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];}};// Throttled resize scheduler (one per animation frame)\nlet resizePending=false;const scheduleResize=()=>{if(resizePending)return;resizePending=true;requestAnimationFrame(()=>{resizePending=false;doResize();if(!isPlayingRef.current){renderOnce();}});};resizeHandler=scheduleResize;window.addEventListener(\"resize\",scheduleResize);// Observe the container element's size changes (Framer canvas resizes)\nif(typeof window.ResizeObserver!==\"undefined\"){resizeObserver=new window.ResizeObserver(scheduleResize);resizeObserver.observe(container);}scheduleResize();// Perlin noise pass\nconst perlinProgram=new Program(gl,{vertex:perlinVertexShader,fragment:perlinFragmentShader,uniforms:{uTime:{value:0},uFrequency:{value:mapFrequencyUiToShader(frequency)},uSpeed:{value:effectivePlay?mapSpeedUiToShader(speed):0},uValue:{value:1},uResolution:{value:[gl.canvas.width,gl.canvas.height]}}});perlinProgramRef.current=perlinProgram;const perlinMesh=new Mesh(gl,{geometry:new Plane(gl,{width:2,height:2}),program:perlinProgram});perlinMeshRef.current=perlinMesh;const renderTarget=new OglRenderTarget(gl);renderTargetRef.current=renderTarget;// Prepare a dummy glyph texture so the sampler uniform is always valid\nconst dummyGlyphTexture=new Texture(gl,{width:1,height:1,generateMipmaps:false,flipY:false});dummyGlyphTextureRef.current=dummyGlyphTexture;// ASCII pass\nconst asciiProgram=new Program(gl,{vertex:asciiVertexShader,fragment:asciiFragmentShader,uniforms:{uResolution:{value:[gl.canvas.width,gl.canvas.height]},uTexture:{value:renderTarget.texture},uUseCustomPalette:{value:mode===\"Custom\"?1:0},uPaletteCount:{value:paletteCountEffective},uPalette1:{value:colorStringToVec4(color1Effective).slice(0,3)},uPalette2:{value:colorStringToVec4(color2Effective).slice(0,3)},uPalette3:{value:colorStringToVec4(color3Effective).slice(0,3)},uPaletteA1:{value:colorStringToVec4(color1Effective)[3]},uPaletteA2:{value:colorStringToVec4(color2Effective)[3]},uPaletteA3:{value:colorStringToVec4(color3Effective)[3]},uCellSize:{value:mapCellSizeUiToShader(cellSize)},uGamma:{value:mapContrastUiToShader(gamma)},uPaletteBias:{value:mapPaletteBiasUiToShader(paletteBias)},// Glyph atlas uniforms (initialized with dummy texture)\nuUseGlyphAtlas:{value:useGlyphAtlasFlag?1:0},uGlyphAtlas:{value:dummyGlyphTexture},uGlyphGrid:{value:[0,0]},uCharCount:{value:0}}});asciiProgramRef.current=asciiProgram;const asciiMesh=new Mesh(gl,{geometry:new Plane(gl,{width:2,height:2}),program:asciiProgram});asciiMeshRef.current=asciiMesh;// Optionally build glyph atlas\nif(useGlyphAtlasFlag){try{const f=deriveFontSettings(font,fontFamily,fontWeight,fontSizePx);const fontCSS=`${f.weight} ${f.sizePx}px ${f.family}`;if(document.fonts&&document.fonts.load){document.fonts.load(fontCSS).catch(()=>{});}}catch{}const atlas=buildGlyphAtlas(gl,effectiveCharacters,deriveFontSettings(font,fontFamily,fontWeight,fontSizePx).family,deriveFontSettings(font,fontFamily,fontWeight,fontSizePx).weight,deriveFontSettings(font,fontFamily,fontWeight,fontSizePx).sizePx,DEFAULT_GLYPH_PADDING_PX);glyphTextureRef.current=atlas.texture;glyphGridRef.current={cols:atlas.cols,rows:atlas.rows,count:atlas.count};asciiProgram.uniforms.uGlyphAtlas.value=atlas.texture;asciiProgram.uniforms.uGlyphGrid.value=[atlas.cols,atlas.rows];asciiProgram.uniforms.uCharCount.value=atlas.count;asciiProgram.uniforms.uUseGlyphAtlas.value=1;}const frameInterval=1e3/30// 30 FPS\n;const update=time=>{if(!isPlayingRef.current){rafIdRef.current=null;return;}const last=lastTimeRef.current;if(time-last<frameInterval){rafIdRef.current=requestAnimationFrame(update);return;}lastTimeRef.current=time;const elapsedTime=time*.001;perlinProgram.uniforms.uTime.value=elapsedTime;renderer.render({scene:perlinMesh,camera,target:renderTarget});asciiProgram.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];perlinProgram.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];renderer.render({scene:asciiMesh,camera});rafIdRef.current=requestAnimationFrame(update);};// initial render\nrenderOnce();// start loop if playing\nisPlayingRef.current=effectivePlay;if(effectivePlay&&rafIdRef.current==null){lastTimeRef.current=0;rafIdRef.current=requestAnimationFrame(update);}return()=>{if(rafIdRef.current)cancelAnimationFrame(rafIdRef.current);if(resizeHandler)window.removeEventListener(\"resize\",resizeHandler);if(resizeObserver){try{resizeObserver.disconnect();}catch{}resizeObserver=null;}// Dispose glyph texture if any\nif(glyphTextureRef.current){try{const tex=glyphTextureRef.current;if(typeof tex.destroy===\"function\")tex.destroy();else if(typeof tex.delete===\"function\")tex.delete();}catch{}glyphTextureRef.current=null;glyphGridRef.current=null;}// Dispose dummy glyph texture\nif(dummyGlyphTextureRef.current){try{const tex=dummyGlyphTextureRef.current;if(typeof tex.destroy===\"function\")tex.destroy();else if(typeof tex.delete===\"function\")tex.delete();}catch{}dummyGlyphTextureRef.current=null;}if(gl&&gl.canvas&&gl.canvas.parentElement===container){container.removeChild(gl.canvas);}perlinProgramRef.current=null;asciiProgramRef.current=null;rendererRef.current=null;cameraRef.current=null;perlinMeshRef.current=null;asciiMeshRef.current=null;renderTargetRef.current=null;glRef.current=null;rafIdRef.current=null;};// eslint-disable-next-line react-hooks/exhaustive-deps\n},[]);// live update uniforms when props change\nuseEffect(()=>{const perlin=perlinProgramRef.current;if(perlin){perlin.uniforms.uFrequency.value=mapFrequencyUiToShader(frequency);perlin.uniforms.uSpeed.value=effectivePlay?mapSpeedUiToShader(speed):0;}const ascii=asciiProgramRef.current;if(ascii){ascii.uniforms.uUseCustomPalette.value=mode===\"Custom\"?1:0;ascii.uniforms.uPaletteCount.value=paletteCountEffective;const p1=colorStringToVec4(color1Effective);const p2=colorStringToVec4(color2Effective);const p3=colorStringToVec4(color3Effective);ascii.uniforms.uPalette1.value=[p1[0],p1[1],p1[2]];ascii.uniforms.uPalette2.value=[p2[0],p2[1],p2[2]];ascii.uniforms.uPalette3.value=[p3[0],p3[1],p3[2]];ascii.uniforms.uPaletteA1.value=p1[3];ascii.uniforms.uPaletteA2.value=p2[3];ascii.uniforms.uPaletteA3.value=p3[3];ascii.uniforms.uCellSize.value=mapCellSizeUiToShader(cellSize);ascii.uniforms.uGamma.value=mapContrastUiToShader(gamma);ascii.uniforms.uPaletteBias.value=mapPaletteBiasUiToShader(paletteBias);// Update glyph atlas\nif(useGlyphAtlasFlag&&glRef.current){// Rebuild atlas whenever any relevant input changes\nif(glyphTextureRef.current){try{const tex=glyphTextureRef.current;if(typeof tex.destroy===\"function\")tex.destroy();else if(typeof tex.delete===\"function\")tex.delete();}catch{}glyphTextureRef.current=null;glyphGridRef.current=null;}try{const gl=glRef.current;const f=deriveFontSettings(font,fontFamily,fontWeight,fontSizePx);const atlas=buildGlyphAtlas(gl,effectiveCharacters,f.family,f.weight,f.sizePx,DEFAULT_GLYPH_PADDING_PX);glyphTextureRef.current=atlas.texture;glyphGridRef.current={cols:atlas.cols,rows:atlas.rows,count:atlas.count};ascii.uniforms.uGlyphAtlas.value=atlas.texture;ascii.uniforms.uGlyphGrid.value=[atlas.cols,atlas.rows];ascii.uniforms.uCharCount.value=atlas.count;ascii.uniforms.uUseGlyphAtlas.value=1;}catch{ascii.uniforms.uUseGlyphAtlas.value=0;ascii.uniforms.uCharCount.value=0;// fall back to dummy texture\nif(dummyGlyphTextureRef.current){ascii.uniforms.uGlyphAtlas.value=dummyGlyphTextureRef.current;}}}else{ascii.uniforms.uUseGlyphAtlas.value=0;ascii.uniforms.uCharCount.value=0;// ensure sampler has a valid texture bound\nif(dummyGlyphTextureRef.current){ascii.uniforms.uGlyphAtlas.value=dummyGlyphTextureRef.current;}}}// sync resolution uniforms on change\nif(rendererRef.current&&glRef.current){const gl=glRef.current;if(perlin)perlin.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];if(ascii)ascii.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];}// whenever uniforms change and we're not playing, render a single frame\nif(!isPlayingRef.current){renderOnce();}},[effectivePlay,play,frequency,speed,mode,paletteCountEffective,bgColor,color1Effective,color2Effective,color3Effective,cellSize,gamma,paletteBias,useGlyphAtlas,characters,font,colors]);// Play/pause controller for RAF lifecycle\nuseEffect(()=>{isPlayingRef.current=effectivePlay;if(!rendererRef.current)return;if(effectivePlay){if(rafIdRef.current==null){lastTimeRef.current=0;rafIdRef.current=requestAnimationFrame(function update(time){// delegate to the setup loop by forcing a re-use\nconst perlin=perlinProgramRef.current;const ascii=asciiProgramRef.current;const renderer=rendererRef.current;const camera=cameraRef.current;const perlinMesh=perlinMeshRef.current;const asciiMesh=asciiMeshRef.current;const renderTarget=renderTargetRef.current;const gl=glRef.current;if(!isPlayingRef.current||!perlin||!ascii||!renderer||!camera||!perlinMesh||!asciiMesh||!renderTarget||!gl){rafIdRef.current=null;return;}const last=lastTimeRef.current;const frameInterval=1e3/30;if(time-last<frameInterval){rafIdRef.current=requestAnimationFrame(update);return;}lastTimeRef.current=time;perlin.uniforms.uTime.value=time*.001;renderer.render({scene:perlinMesh,camera,target:renderTarget});ascii.uniforms.uResolution.value=[gl.canvas.width,gl.canvas.height];renderer.render({scene:asciiMesh,camera});rafIdRef.current=requestAnimationFrame(update);});}}else{if(rafIdRef.current){cancelAnimationFrame(rafIdRef.current);rafIdRef.current=null;}renderOnce();}},[effectivePlay,play]);return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",height:\"100%\",// Background color applied here, not inside the shader\nbackground:bgColor,lineHeight:0,minWidth:0,minHeight:0,overflow:\"hidden\",...style},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:`${INTRINSIC_WIDTH}px`,height:`${INTRINSIC_HEIGHT}px`,minWidth:`${INTRINSIC_WIDTH}px`,minHeight:`${INTRINSIC_HEIGHT}px`,visibility:\"hidden\",position:\"absolute\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsx(\"div\",{ref:canvasContainerRef,style:{position:\"absolute\",inset:0}})]});}ASCIIBackground.defaultProps={frequency:.5,speed:.375,play:true,mode:\"Rainbow\",paletteCount:3,bgColor:\"#000000\",color1:\"#ffffff\",color2:\"#ff8000\",color3:\"#3399ff\",cellSize:50,gamma:5.5,paletteBias:0,useGlyphAtlas:false,characters:\"@%#*+=-:. \",fontFamily:\"monospace\",fontWeight:400,fontSizePx:42};addPropertyControls(ASCIIBackground,{play:{type:ControlType.Boolean,title:\"On canvas\",defaultValue:true,enabledTitle:\"On\",disabledTitle:\"Off\"},frequency:{type:ControlType.Number,title:\"Frequency\",min:.05,max:1,step:.05,defaultValue:.5},speed:{type:ControlType.Number,title:\"Speed\",min:0,max:1,step:.1,defaultValue:.5},mode:{type:ControlType.Enum,title:\"Style\",options:[\"Rainbow\",\"Custom\"],optionTitles:[\"Rainbow\",\"Custom\"],defaultValue:\"Rainbow\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},bgColor:{type:ControlType.Color,title:\"Background\",defaultValue:\"#000000\"},colors:{type:ControlType.Object,title:\"Colors\",hidden:p=>p.mode!==\"Custom\",controls:{paletteCount:{type:ControlType.Number,title:\"Palette Size\",min:1,max:3,step:1,defaultValue:3},color1:{type:ControlType.Color,title:\"Color 1\",defaultValue:\"#ffffff\"},color2:{type:ControlType.Color,title:\"Color 2\",defaultValue:\"#ff8000\",hidden:o=>(o?.paletteCount??3)<2},color3:{type:ControlType.Color,title:\"Color 3\",defaultValue:\"#3399ff\",hidden:o=>(o?.paletteCount??3)<3}}},useGlyphAtlas:{type:ControlType.Enum,title:\"Font Type\",options:[\"Default\",\"Custom\"],optionTitles:[\"Default\",\"Custom\"],defaultValue:\"Default\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\"},font:{type:ControlType.Font,controls:\"extended\",defaultFontType:\"monospace\",defaultValue:{fontSize:16,lineHeight:1.5},hidden:p=>p.useGlyphAtlas===\"Default\"},characters:{type:ControlType.String,title:\"Characters\",defaultValue:\"@%#*+=-:.\",placeholder:\"e.g. @%#*+=-:. \",hidden:props=>props.useGlyphAtlas===\"Default\"},cellSize:{type:ControlType.Number,title:\"Cell Size\",min:1,max:100,step:1,defaultValue:50},paletteBias:{type:ControlType.Number,title:\"Shift\",min:-1,max:1,step:.01,defaultValue:0,hidden:props=>props.mode===\"Rainbow\"},gamma:{type:ControlType.Number,title:\"Contrast\",min:1,max:10,step:.1,defaultValue:5.5,description:\"More components at [Framer University](https://frameruni.link/cc).\"}});ASCIIBackground.displayName=\"ASCII Background\";\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ASCIIBackground\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"* @framerIntrisicHeight 300\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerIntrisicHeight\":\"600\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ASCII_background_Prod.map","import{defineShader,ControlType}from\"framer\";export default defineShader({title:\"Logo Gradient\",heightmapSource:\"image\",mouse:\"enabledByDefault\",fragment:`\n// === CONSTANTS ===\nconst float GOLDEN_ANGLE = 2.3999632;\nconst float TAU = 6.28318530;\n\n// === PCG hash ===\nuvec3 hash3(uvec3 v) {\n    v = v * 1664525u + 1013904223u;\n    v.x += v.y * v.z;\n    v.y += v.z * v.x;\n    v.z += v.x * v.y;\n    v ^= v >> 16u;\n    v.x += v.y * v.z;\n    v.y += v.z * v.x;\n    v.z += v.x * v.y;\n    return v;\n}\n\nvec3 seedRandom(float seedVal) {\n    uvec3 s = uvec3(\n        floatBitsToUint(seedVal),\n        floatBitsToUint(seedVal * 1.5 + 7.31),\n        floatBitsToUint(seedVal * 2.7 + 13.37)\n    );\n    s = hash3(s);\n    return vec3(s) / float(0xFFFFFFFFu);\n}\n\n// === COLOR SPACE (Oklab/LCH) ===\n\nvec3 toLinear(vec3 c) {\n    return pow(c, vec3(2.2));\n}\n\nvec3 toSrgb(vec3 c) {\n    return pow(clamp(c, 0.0, 1.0), vec3(0.4545));\n}\n\nvec3 linearToOklab(vec3 c) {\n    float l = 0.4122214708 * c.r + 0.5363325363 * c.g + 0.0514459929 * c.b;\n    float m = 0.2119034982 * c.r + 0.6806995451 * c.g + 0.1073969566 * c.b;\n    float s = 0.0883024619 * c.r + 0.2817188376 * c.g + 0.6299787005 * c.b;\n\n    l = pow(max(l, 0.0), 1.0 / 3.0);\n    m = pow(max(m, 0.0), 1.0 / 3.0);\n    s = pow(max(s, 0.0), 1.0 / 3.0);\n\n    return vec3(\n        0.2104542553 * l + 0.7936177850 * m - 0.0040720468 * s,\n        1.9779984951 * l - 2.4285922050 * m + 0.4505937099 * s,\n        0.0259040371 * l + 0.7827717662 * m - 0.8086757660 * s\n    );\n}\n\nvec3 oklabToLinear(vec3 c) {\n    float l = c.x + 0.3963377774 * c.y + 0.2158037573 * c.z;\n    float m = c.x - 0.1055613458 * c.y - 0.0638541728 * c.z;\n    float s = c.x - 0.0894841775 * c.y - 1.2914855480 * c.z;\n\n    l = l * l * l;\n    m = m * m * m;\n    s = s * s * s;\n\n    return vec3(\n        +4.0767416621 * l - 3.3077115913 * m + 0.2309699292 * s,\n        -1.2684380046 * l + 2.6097574011 * m - 0.3413193965 * s,\n        -0.0041960863 * l - 0.7034186147 * m + 1.7076147010 * s\n    );\n}\n\nvec3 oklabToLch(vec3 lab) {\n    return vec3(lab.x, length(lab.yz), atan(lab.z, lab.y));\n}\n\nvec3 lchToOklab(vec3 lch) {\n    return vec3(lch.x, lch.y * cos(lch.z), lch.y * sin(lch.z));\n}\n\nvec3 mixLch(vec3 lab0, vec3 lab1, float t) {\n    vec3 lch0 = oklabToLch(lab0);\n    vec3 lch1 = oklabToLch(lab1);\n\n    if (lch0.y < 0.05) lch0.z = lch1.z;\n    if (lch1.y < 0.05) lch1.z = lch0.z;\n\n    float dh = lch1.z - lch0.z;\n    if (dh > 3.14159265) dh -= 6.28318530;\n    if (dh < -3.14159265) dh += 6.28318530;\n\n    return lchToOklab(vec3(\n        mix(lch0.x, lch1.x, t),\n        mix(lch0.y, lch1.y, t),\n        lch0.z + dh * t\n    ));\n}\n\n// === PALETTE ===\n\nvec3 getColor(int idx) {\n    if (u_colors_length < 1) return vec3(0.0);\n    int safeIdx = clamp(idx, 0, u_colors_length - 1);\n    return u_colors[safeIdx].rgb;\n}\n\nvec3 paletteN(float t, int count) {\n    if (count < 1) return vec3(0.0);\n    if (count < 2) return toLinear(getColor(0));\n\n    float segmentSize = 1.0 / float(count - 1);\n    t = clamp(t, 0.0, 1.0);\n    int idx = min(int(floor(t / segmentSize)), count - 2);\n    float localT = clamp((t - float(idx) * segmentSize) / segmentSize, 0.0, 1.0);\n\n    vec3 lab0 = linearToOklab(toLinear(getColor(idx)));\n    vec3 lab1 = linearToOklab(toLinear(getColor(idx + 1)));\n\n    return oklabToLinear(mixLch(lab0, lab1, localT));\n}\n\n// === POST-PROCESS ===\n\nvec3 softGamutMap(vec3 linearRgb) {\n    float maxC = max(linearRgb.r, max(linearRgb.g, linearRgb.b));\n    float minC = min(linearRgb.r, min(linearRgb.g, linearRgb.b));\n\n    if (minC >= 0.0 && maxC <= 1.0) return linearRgb;\n\n    vec3 lab = linearToOklab(max(linearRgb, 0.0));\n    float L = clamp(lab.x, 0.0, 1.0);\n    float C = length(lab.yz);\n    float h = atan(lab.z, lab.y);\n\n    float maxChroma = 0.4 * (1.0 - pow(abs(2.0 * L - 1.0), 2.0));\n\n    if (C > maxChroma * 0.7) {\n        float knee = maxChroma * 0.7;\n        C = knee + (maxChroma - knee) * tanh((C - knee) / (maxChroma - knee + 0.001));\n    }\n\n    return clamp(oklabToLinear(vec3(L, C * cos(h), C * sin(h))), 0.0, 1.0);\n}\n\n// === HEIGHTMAP HELPERS ===\n\nfloat blurDepth3x3(vec2 uv, vec2 dudx, vec2 dudy, vec2 texel, float radius) {\n    vec2 r = radius * texel;\n\n    float sum = 4.0 * textureGrad(u_image_heightmap, uv, dudx, dudy).r;\n\n    sum += 2.0 * textureGrad(u_image_heightmap, uv + vec2(0.0, -r.y), dudx, dudy).r;\n    sum += 2.0 * textureGrad(u_image_heightmap, uv + vec2(0.0,  r.y), dudx, dudy).r;\n    sum += 2.0 * textureGrad(u_image_heightmap, uv + vec2(-r.x, 0.0), dudx, dudy).r;\n    sum += 2.0 * textureGrad(u_image_heightmap, uv + vec2( r.x, 0.0), dudx, dudy).r;\n\n    sum += textureGrad(u_image_heightmap, uv + vec2(-r.x, -r.y), dudx, dudy).r;\n    sum += textureGrad(u_image_heightmap, uv + vec2( r.x, -r.y), dudx, dudy).r;\n    sum += textureGrad(u_image_heightmap, uv + vec2(-r.x,  r.y), dudx, dudy).r;\n    sum += textureGrad(u_image_heightmap, uv + vec2( r.x,  r.y), dudx, dudy).r;\n\n    return sum / 16.0;\n}\n\nvec2 heightGrad(vec2 uv, vec2 dudx, vec2 dudy, vec2 texel, float blurRadius) {\n    float eps = 4.0;\n    float dR = blurDepth3x3(uv + vec2(eps * texel.x, 0.0), dudx, dudy, texel, blurRadius);\n    float dL = blurDepth3x3(uv - vec2(eps * texel.x, 0.0), dudx, dudy, texel, blurRadius);\n    float dU = blurDepth3x3(uv + vec2(0.0, eps * texel.y), dudx, dudy, texel, blurRadius);\n    float dD = blurDepth3x3(uv - vec2(0.0, eps * texel.y), dudx, dudy, texel, blurRadius);\n    return vec2(dR - dL, dU - dD) / (2.0 * eps * texel);\n}\n\n// === MAIN ===\n\nvoid main() {\n    vec2 uv = vec2(v_uv.x, 1.0 - v_uv.y);\n    vec2 texSize = vec2(textureSize(u_image_heightmap, 0));\n    float imgAspect = texSize.x / texSize.y;\n    float canvasAspect = u_resolution.x / u_resolution.y;\n\n    if (canvasAspect > imgAspect) {\n        uv.x = (uv.x - 0.5) * (canvasAspect / imgAspect) + 0.5;\n    } else {\n        uv.y = (uv.y - 0.5) * (imgAspect / canvasAspect) + 0.5;\n    }\n\n    /*\n    if (uv.x < 0.0 || uv.x > 1.0 || uv.y < 0.0 || uv.y > 1.0) {\n        fragColor = vec4(u_colorBack.rgb * u_colorBack.a, u_colorBack.a);\n        return;\n    }\n    */\n\n    // 1.0 on DPR 2+, up to 2.0 on DPR 1\n    float aaScale = max(1.0, 2.0 / u_pixelRatio);\n\n    vec2 dudx = dFdx(uv);\n    vec2 dudy = dFdy(uv);\n\n    vec4 hm = textureGrad(u_image_heightmap, uv, dudx, dudy);\n    float fw_b = 0.5 * fwidth(hm.b);\n    float hardMask = smoothstep(0.5 - fw_b, 0.5 + fw_b, hm.b);\n    float opacity = hardMask * (1.0 - hm.g);\n\n    // Only fade at the letterbox boundary, not on the axis the image fills\n    float edgeDist;\n    if (canvasAspect > imgAspect) {\n        // Letterbox bars are left/right → only fade X edges\n        edgeDist = min(uv.x, 1.0 - uv.x);\n    } else if (canvasAspect < imgAspect) {\n        // Letterbox bars are top/bottom → only fade Y edges\n        edgeDist = min(uv.y, 1.0 - uv.y);\n    } else {\n        // Aspects match — no letterboxing, no seam, no fade needed\n        edgeDist = 1.0;\n    }\n    opacity *= smoothstep(0.0, 1.0 * fwidth(edgeDist), edgeDist);\n\n    if (opacity < 0.001) {\n        fragColor = vec4(u_colorBack.rgb * u_colorBack.a, u_colorBack.a);\n        return;\n    }\n\n    vec2 texel = 1.0 / texSize;\n    int colorCount = u_colors_length;\n\n    if (colorCount < 1) {\n        fragColor = vec4(u_colorBack.rgb * u_colorBack.a, u_colorBack.a);\n        return;\n    }\n\n    float rawDepth = blurDepth3x3(uv, dudx, dudy, texel, 6.0);\n    float depth = max(rawDepth, 0.001);\n\n    vec2 grad = heightGrad(uv, dudx, dudy, texel, 6.0);\n    float gradMag = min(length(grad), 5.0);\n    vec2 gradDir = gradMag > 0.001 ? normalize(grad) : vec2(0.0);\n    vec2 contourDir = vec2(-gradDir.y, gradDir.x);\n\n    float t = mod(u_time * u_speed, 3600.0);\n\n    // Motion mode: 0 = Random, 1 = Melt\n    float isMelt = step(0.5, u_motionMode);\n\n    // Seed\n    vec3 seedOffset = seedRandom(u_seed);\n    vec3 seedOffset2 = seedRandom(u_seed + 100.0);\n    float seedAngle = u_seed * GOLDEN_ANGLE;\n    vec2 seedPhase = (seedOffset2.xy - 0.5) * TAU;\n\n    // World-space coordinates anchored to the image\n    vec2 p = (uv - 0.5) * 2.0;\n    p.x *= imgAspect;\n\n    // Seed-based rotation\n    float cs = cos(seedAngle);\n    float sn = sin(seedAngle);\n    p = mat2(cs, -sn, sn, cs) * p;\n\n    // Angle — rotates the gradient flow direction\n    float ang = u_angle * 3.14159 / 180.0;\n    float cosA = cos(ang);\n    float sinA = sin(ang);\n    p = vec2(p.x * cosA - p.y * sinA, p.x * sinA + p.y * cosA);\n\n    // === MOUSE ===\n    vec2 mouseRaw = u_mousePosition.xy;\n    vec2 mouseVel = u_mousePosition.zw;\n    float hover   = u_mouseHover;\n    float clicked = u_mousePointerDown;\n    // Flip Y to match this shader's top-left UV convention\n    vec2 mouseUV = vec2(mouseRaw.x, 1.0 - mouseRaw.y);\n\n    // Apply the same letterbox transform as uv\n    if (canvasAspect > imgAspect) {\n        mouseUV.x = (mouseUV.x - 0.5) * (canvasAspect / imgAspect) + 0.5;\n    } else {\n        mouseUV.y = (mouseUV.y - 0.5) * (imgAspect / canvasAspect) + 0.5;\n    }\n\n    // Mouse as centered, aspect-corrected, scaled offset\n    vec2 mOffset = (mouseUV - 0.5) * vec2(imgAspect, 1.0) * u_pushAmount * hover;\n\n    // Distance in image-space (both uv and mouseUV are now in the same space)\n    float mouseDist = length((uv - mouseUV) * vec2(imgAspect, 1.0));\n    float mouseInfluence = smoothstep(u_pushRadius, 0.0, mouseDist);\n    vec2 mFinal = mOffset * mouseInfluence;\n\n    // Turbulence time\n    float tTurb = t * mix(1.0, 0.4, isMelt);\n\n    // Melt flow offset applied to q inside turbulence, not to p\n    vec2 meltOffset = vec2(1.0, 0.0) * t * 0.4 * isMelt;\n\n    // === SHAPE-AWARE COORDINATE WARPING ===\n    float edgeProximity = 1.0 - smoothstep(0.0, 0.8, depth);\n\n    float coordScale = max(0.4, 0.1 + depth * 1.0);\n    p *= coordScale;\n\n    p += contourDir * edgeProximity * u_bend * 2.0;\n    p -= gradDir * edgeProximity * u_bend * 0.5;\n    p *= max(0.5, mix(1.0, 0.4 + 0.6 * smoothstep(0.0, 0.5, depth), u_contour));\n\n    // === TURBULENCE ===\n    int turbIter = int(u_turbIter);\n    float freq = 1.0 / max(u_turbFreq, 0.01);\n\n    vec2 q = p * u_scale + meltOffset;\n    // Small directional nudge — slides the pattern toward the cursor\n    q += (mouseUV - uv) * mouseInfluence * 2.0 * hover;\n\n    float a = seedPhase.x;\n    float d = seedPhase.y;\n\n    for (int j = 2; j < 10; j++) {\n        if (j >= turbIter) break;\n        float fj = float(j);\n        q += u_turbAmp * sin(length(q) / freq * fj + tTurb + vec2(a, d) + seedOffset.xy * fj) / fj;\n        a += cos(fj + d * 1.2 + mFinal.x + q.x * 2.0 - tTurb + seedOffset2.z);\n        d += sin(fj * q.y + a + mFinal.y * 0.7 + seedOffset.z + tTurb + seedOffset2.y);\n    }\n\n    float base = length(q.yx + vec2(a, d) * 0.2) * u_waveFreq + seedOffset.x;\n    float val = 0.5 + 0.125 * sin(base + 1.0) + 0.25 * sin(base + 4.0) + 0.125 * sin(base + 9.0);\n    val = clamp((val - 0.3) / 0.4, 0.0, 1.0);\n\n    // Depth-based intensity modulation\n    float innerIntensity = smoothstep(0.0, 0.4, depth);\n    float contourHeat = (1.0 - innerIntensity) * u_contour;\n    val = mix(val, val * innerIntensity + contourHeat, 0.5 + 0.5 * u_contour);\n\n    vec3 col = paletteN(val, colorCount);\n    col = softGamutMap(col);\n    col = toSrgb(col);\n\n    /*\n    // Silhouette AA — hardMask + clamped fwidth\n    float fw = fwidth(depth);\n    float effectMask = hardMask * smoothstep(0.0, max(fw, min(2.0 * fw, 0.1)), depth);\n    opacity *= effectMask;\n    */\n\n    // Alpha compositing\n    col *= opacity;\n    vec3 bgColor = u_colorBack.rgb * u_colorBack.a;\n    col = col + bgColor * (1.0 - opacity);\n    float finalAlpha = opacity + u_colorBack.a * (1.0 - opacity);\n\n    fragColor = vec4(col, finalAlpha);\n}\n`,propertyControls:{image:{type:ControlType.ResponsiveImage,title:\"Image\",defaultValue:\"data:framer/asset-reference,7XHsXmlUUmdQM95fkSvi3LRCuSk.svg?originalFilename=Path.svg&width=32&height=48\"},colors:{type:ControlType.Array,title:\"Colors\",control:{type:ControlType.Color},maxCount:8,defaultValue:[\"#000000\",\"#0051FF\",\"#0DAAFF\",\"#BDE4FF\"]},colorBack:{type:ControlType.Color,title:\"Background\",defaultValue:\"#000000\"},seed:{type:ControlType.Number,title:\"Seed\",defaultValue:6,min:0,max:1e3,step:1,section:\"Motion\"},speed:{type:ControlType.Number,title:\"Speed\",defaultValue:.6,min:0,max:2,step:.01,section:\"Motion\"},motionMode:{type:ControlType.Enum,title:\"Motion\",options:[0,1],optionTitles:[\"Random\",\"Directional\"],defaultValue:0,section:\"Motion\"},angle:{type:ControlType.Number,title:\"Angle\",defaultValue:20,min:0,max:360,step:1,section:\"Motion\"},scale:{type:ControlType.Number,title:\"Scale\",defaultValue:1.2,min:.1,max:2,step:.01,section:\"Motion\"},turbAmp:{type:ControlType.Number,title:\"Amplitude\",defaultValue:.21,min:0,max:1,step:.01,section:\"Motion\"},turbFreq:{type:ControlType.Number,title:\"Frequency\",defaultValue:1.15,min:.1,max:2,step:.01,section:\"Motion\"},turbIter:{type:ControlType.Number,title:\"Definition\",defaultValue:7,min:3,max:8,step:1,displayStepper:true,section:\"Motion\"},waveFreq:{type:ControlType.Number,title:\"Bands\",defaultValue:2.4,min:.1,max:5,step:.1,section:\"Motion\"},bend:{type:ControlType.Number,title:\"Bevel\",defaultValue:.24,min:0,max:1,step:.01,section:\"Shape\",hiddenWhenUnset:true},contour:{type:ControlType.Number,title:\"Contour\",defaultValue:.8,min:0,max:1,step:.1,section:\"Shape\",hiddenWhenUnset:true},pushRadius:{type:ControlType.Number,title:\"Radius\",defaultValue:1.5,min:.2,max:4,step:.1,section:\"Interaction\"},pushAmount:{type:ControlType.Number,title:\"Strength\",defaultValue:8,min:0,max:20,step:.5,section:\"Interaction\"}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"shader\",\"name\":null,\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./LogoGradient.map","// Generated by Framer (4d43e7b)\nexport default function metadata(params,activeLocale){return{description:\"Made with Framer\",robots:\"max-image-preview:large\",title:\"My Framer Site\"};}export const metadataVersion=1;\nexport const __FramerMetadata__ = {\"exports\":{\"metadataVersion\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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AE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,MAAO,GAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EA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EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,KAAK,CAAC,GAAG,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,OAAO,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,KAAK,MAAM,EAAE,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,OAAO,SAAS,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,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AAE,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,E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E,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,OAAO,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,E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"}