{
  "version": 3,
  "sources": ["framer:toplevel:framer:toplevel/default/0"],
  "sourcesContent": ["\n        import * as React from \"react\"\n        import * as ReactDOM from \"react-dom/client\"\n        import * as Framer from \"framer\"\n\n        window.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\n            return React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\n        }\n\n        // A lot of libraries assume process.env.NODE_ENV is present in runtime/buildtime, so we are polyfilling it\n        window.process = {\n            ...window.process,\n            env: {\n                ...(window.process ? window.process.env: undefined),\n                NODE_ENV: \"production\"\n            }\n        }\n\n        // Fallback support for stack gaps\n        Framer.installFlexboxGapWorkaroundIfNeeded()\n\n        ;(async () => {\n            const routes = {H1cC5CRkG: {elements: {eIbKFN0x8: \"usecases\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/bCrsUeSWgbqpJ97sJcSf/NuX4NahKAEq1vRMYnc8L/H1cC5CRkG.js\")), path: \"/\"}, EmQFRNZwx: {elements: {b0Mb6bWzK: \"usecases\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xMKH6Jnlv3MAaUAPum0l/0sEr0k18FqFbxQmqFloF/EmQFRNZwx.js\")), path: \"/newhome\"}, yGF7wMaPd: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/SFifTj1z1Ogqklfm24YE/uPgmF7QS4ByURbrrlaI0/yGF7wMaPd.js\")), path: \"/404\"}, q18T3xj84: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ZTlbQeaQ3uBbzmg2LBoK/euokNPpZnGyLpFrtdFuE/q18T3xj84.js\")), path: \"/pricing\"}, CRQrUwntK: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ACTmabrWVriG9L1EP5pn/xzw1zeHATNqs19iJTzoM/CRQrUwntK.js\")), path: \"/articles\"}, Yt0az36xq: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/d609PcLk6ZGHl8nRfatP/ynZ8ifDbhub3eiFDm8pY/Yt0az36xq.js\")), path: \"/release-notes-template\"}, UULAXwfA6: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/cmN5H0JbwPc35adfzxR9/IZN1gzy1VZddqhkosdw4/UULAXwfA6.js\")), path: \"/changelog\"}, Sdyq70Qjm: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/PoWZAIZiHyWOyDs5JSYW/by9MUssgwwj1Cmh2L2rW/Sdyq70Qjm.js\")), path: \"/glossary\"}, aHggIiYNV: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/SbCz8kb2BpsYvteyiBlN/MZPzAvT09NGr4Talaldo/aHggIiYNV.js\")), path: \"/alternative/canny\"}, DvNVTyZRD: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/vJPnr746uQQc14fLDO1o/c5hWdCAsIv2XfJxWBVVk/DvNVTyZRD.js\")), path: \"/usecase/release-notes\"}, CqpE6RhxG: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/nuPXFo7vwjwptSmwY53I/YttWJRZ7ffF7DHhNRGgb/CqpE6RhxG.js\")), path: \"/usecase/internal-updates\"}, Sn8lHQ0Mp: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/mxm3C3D1niiGcRM3Gnud/7pSZ9RbOeiqkVPis5RCf/Sn8lHQ0Mp.js\")), path: \"/usecase/announcements\"}, edQ9VIPS2: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/jvoCGQi8ycyuadWRJ0C7/aFkjC7bST4u1PmbeDtLB/edQ9VIPS2.js\")), path: \"/releases/q3-2023\"}, Cm6DoJw5d: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/K6VpzgbUvhmCcvHXUcMp/dYKLPRjSbeFDGGWBMR3x/Cm6DoJw5d.js\")), path: \"/roadmaps\"}, hAG4FeNWq: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/gBZLbFD7odmi6wuPH0pa/1TFqLh1q3U4uZeup9l5b/hAG4FeNWq.js\")), path: \"/articles/:MG_O1fn_Z\"}, NIj_0kSdx: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/kQeiJILaMG9DER3X6oRc/5iDyLaaCvXC06WWRbMn7/NIj_0kSdx.js\")), path: \"/templates/:N8Egk24d0\"}, a6NBO33Wz: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/K4uF4BQ7u8ltbIkCJn0I/tXOZxlVO2c5gc3IB9xrO/a6NBO33Wz.js\")), path: \"/glossary/:Kc6VZ_vVH\"}}\n            const locales = [{code: \"en-US\", id: \"default\", name: \"English\", slug: \"\"}]\n            const notFoundPage = Framer.lazy(() => import(\"https://framerusercontent.com/modules/SFifTj1z1Ogqklfm24YE/uPgmF7QS4ByURbrrlaI0/yGF7wMaPd.js\"))\n            const container = document.getElementById(\"main\")\n\n            let routeId, localeId, pathVariables, shouldHydrate = false\n            if (\"framerHydrateV2\" in container.dataset) {\n                const routeData = JSON.parse(container.dataset.framerHydrateV2)\n                routeId = routeData.routeId\n                localeId = routeData.localeId\n                pathVariables = routeData.pathVariables\n                shouldHydrate = true\n            } else {\n                const routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\n                routeId = routeData.routeId\n                localeId = routeData.localeId\n                pathVariables = routeData.pathVariables\n            }\n\n            const route = routes[routeId]\n            const RootComponent = await route.page.preload()\n            routes[routeId].page = RootComponent\n\n            const content = React.createElement(\n                Framer.PageRoot,\n                {\n                    RootComponent,\n                    isWebsite: true,\n                    routeId,\n                    pathVariables,\n                    routes,\n                    notFoundPage,\n                    isReducedMotion: true,\n                    localeId,\n                    locales\n                }\n            )\n\n            const page = React.createElement(Framer.PageEffectsProvider, {\n                children: content,\n                value: {routes: {}}\n            })\n\n            if (shouldHydrate) {\n                React.startTransition(() => {\n                    ReactDOM.hydrateRoot(container, page)\n                })\n            } else {\n                ReactDOM.createRoot(container).render(page)\n            }\n        })().catch(error => {\n            window.__send_framer_event && window.__send_framer_event(\"published_site_load_error\", {\n                message: String(error),\n                stack: error instanceof Error && typeof error.stack === \"string\" ? error.stack : null\n            })\n            throw error\n        })\n\n        \n    "],
  "mappings": "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",
  "names": ["window", "packageAndFilename", "exportIdentifier", "B", "ErrorPlaceholder", "installFlexboxGapWorkaroundIfNeeded", "routes", "lazy", "locales", "notFoundPage", "container", "routeId", "localeId", "pathVariables", "shouldHydrate", "routeData", "inferInitialRouteFromPath", "RootComponent", "content", "PageRoot", "page", "PageEffectsProvider", "Z", "d", "r", "error"]
}
