{
  "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 = {augiA20Il: {elements: {i1gFDrukT: \"ui\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/xjDNfw9gmSWnWw3JpOhS/CUz70yD1PxbU04yVlEHP/augiA20Il.js\")), path: \"/\"}, NdB80Cb6B: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/uLn7rDqflm3V2zRvD0SA/otS8ezGN9akBU0znqfnw/NdB80Cb6B.js\")), path: \"/about\"}, ssuwMA16P: {elements: {GYxKvTSeU: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/eZY62STQSUSKCqPFQ6yP/7pQJbA7i3qDxhldECprg/ssuwMA16P.js\")), path: \"/courses\"}, M0txWjtRr: {elements: {AsvEum_Yt: \"forwho\", llIhzb4px: \"hero\", UueOlK1Lh: \"simple-price\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/9mUYEj9t8Yb7ZQdvpbFR/mdAyz6ieTzojp9PI8gyt/M0txWjtRr.js\")), path: \"/courses/figma-course\"}, CtmO3R9RF: {elements: {qIc3w_ggi: \"simpleprice\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/0Jh5nRfqm6mLZ3EvfF48/i9ehFKKiIi9PIrUdzb1b/CtmO3R9RF.js\")), path: \"/courses/webdesign-for-freelancer\"}, Ez80dbldl: {elements: {eZuOaP3t9: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/jthNBJ3RQlnZku7Qi6Jj/8sLAzEUOiXQAhG03dFo4/Ez80dbldl.js\")), path: \"/design-notes\"}, Qsda7V6RQ: {elements: {psp0CYUiy: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/vT1BFyQHCn2x17xMmCuK/FIUDke88vv7WobzqYqQr/Qsda7V6RQ.js\")), path: \"/design-notes/articles\"}, uIYSb4ihp: {elements: {BhvUbFt4y: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Ahu4yDGsWluVpD50NXka/bZsPr5JK5XqB1DdrCchi/uIYSb4ihp.js\")), path: \"/design-notes/resources\"}, OP08xO8C0: {elements: {BC5Ka2clN: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/pHJeubI1rFLR79ypmLVb/H46y0ckwTibR52i0wRDM/OP08xO8C0.js\")), path: \"/design-notes/tutorials\"}, YdB1o9xW3: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/lQqcbdbLmhjkXkc4d5uJ/BUrmqY5In6YlSaNTTATZ/YdB1o9xW3.js\")), path: \"/useful-stuff\"}, Ucn7ky41G: {elements: {FTlJgJo1J: \"free\", liYNZAAOt: \"pro\", mYIzI4uYd: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/vjtiUYjb5RJl1VVhcbbd/nrmk4SNWBgCjz5s5yX7K/Ucn7ky41G.js\")), path: \"/useful-stuff/icons\"}, XaIsI0Fti: {elements: {B1e_FTeBf: \"hero\", Jv0Jj0tiU: \"ui\", ksmkiwnTO: \"device-1\", XhSpbxTco: \"device\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/tvHbFiHelTmW4InQHVeS/TjoR9z9d9Vm5p8Zg7q4E/XaIsI0Fti.js\")), path: \"/useful-stuff/mockups\"}, Dlzo5XsKM: {elements: {mMxRd5dS5: \"hero\", PaJdqbdJf: \"device\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ZSSocs0Wi7nEXCV2MAqA/JnrWJriBeR7CjUaSeeql/Dlzo5XsKM.js\")), path: \"/useful-stuff/movies\"}, kzRMyEGCi: {elements: {dNf96CkWm: \"marketplaces\", F_TVzXMzk: \"hero\", gZ6AYqAwR: \"marketplaces-1\", P_fUtJu5T: \"font-libraries\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/JhvYKTAoj9JsRZDfZEHg/FpGkGzeZesnXm1SOp4Mo/kzRMyEGCi.js\")), path: \"/useful-stuff/fonts\"}, tIx5oZOCj: {elements: {cIilViIPx: \"3d\", EwD17yHSj: \"hero\", Kid17JSqz: \"free\", QkZIKbyPA: \"avatars-characters\", U1ucJVpLp: \"3d-1\", wt97IoljX: \"pro\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/zvRdjZVQhQwugbNDvDbI/TtbdwrkYAc3Y360v4YZe/tIx5oZOCj.js\")), path: \"/useful-stuff/illustrations\"}, JEnFTdEF3: {elements: {Aoi3wIoKf: \"pro\", cyNzctmMs: \"hero\", mSUIFbetr: \"free-1\", yoL_Rp6D_: \"free\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/an5CeFE9DF6k2SSmZBq7/T1MEySVMfZWsV8tARP7C/JEnFTdEF3.js\")), path: \"/useful-stuff/stocks\"}, wzTLv1j26: {elements: {DYAnqvatR: \"image-generators\", KDU3IqSbl: \"ai-writing-content-generation\", NEwcTcJKB: \"image-generators-1\", uULr0euWO: \"hero\", zRwqeoANl: \"AI Design Tools\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ZHKd0VGb8qZzQVAUbama/EZa8hKhkxd8piDRpt9hB/wzTLv1j26.js\")), path: \"/useful-stuff/ai-tools\"}, YU9jJsqEH: {elements: {Dr5FW5O8C: \"hero\", dU8ah6aoY: \"ui\", QIA3wTiTJ: \"landing-page-inspiration\", Tk1nITKq9: \"ui-1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Snny5Hy1AVZvPXNyxfwe/ya49377QZE1CONxH47U0/YU9jJsqEH.js\")), path: \"/useful-stuff/Inspirations\"}, ctSIKeoUc: {elements: {eIIcyVgFj: \"wireframing\", h7wQFurB1: \"prototyping-1\", hdP8j_3C8: \"prototyping\", PfX3F4noa: \"flows-charts\", R1N8pgQfd: \"hero\", WAxQze0VI: \"user-testing-research\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/HuFNZxZsrkuzsKU05jhV/60n7ylwtqGjppJULof2y/ctSIKeoUc.js\")), path: \"/useful-stuff/uxtools\"}, siiQH3iI5: {elements: {AA2AmxQyA: \"hero\", BpIkmv_Qy: \"ai-design-tools\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/Z0U00F3EQADRuMefDPVb/ESlpSGebdq15nFvSdZfY/siiQH3iI5.js\")), path: \"/useful-stuff/game\"}, rTPkPh_6s: {elements: {LyN2x0AWw: \"hero\", WJtG2YdzW: \"ai-design-tools\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/kGp0UDgPEXoq7lNoILaI/H3nIxRKjrNrQ4hQh2h4u/rTPkPh_6s.js\")), path: \"/useful-stuff/books\"}, ONXCaB6p3: {elements: {j3Rn6ovx2: \"ai-design-tools\", UEGFiPoC9: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/B8LghHnhf5R9jqPcETdi/dIfvpJEgH5uwqGmlOLDu/ONXCaB6p3.js\")), path: \"/useful-stuff/buildertools\"}, h_LucoUD4: {elements: {FlPzp4GhN: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/AB3w1WmIUMvqNeLi4LjF/zMoW4Rc2jwyf3CK5VpbI/h_LucoUD4.js\")), path: \"/policy\"}, NphEHgbdG: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/g5WcL2ClwHBONBChnSfx/48BdxV5hmLSTsMEno7xZ/NphEHgbdG.js\")), path: \"/404\"}, dd4tmm2tf: {elements: {vCWg3_soD: \"hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/qn2xWVrpo0gmQrWBNzEQ/rUa7quOtMgPVIN5UL0gq/dd4tmm2tf.js\")), path: \"/design-notes/:QDFeNo3xv\"}, ITtMRtj6k: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ZyxL2n3Gz4AnABrDxGN5/wkJYZwl3SjQ9RAgPTRGp/ITtMRtj6k.js\")), path: \"/tools/:Yi_VToGyC\"}}\n            const locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\"}]\n            const notFoundPage = Framer.lazy(() => import(\"https://framerusercontent.com/modules/g5WcL2ClwHBONBChnSfx/48BdxV5hmLSTsMEno7xZ/NphEHgbdG.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 element = React.createElement(\n                Framer.PageRoot,\n                {\n                    RootComponent,\n                    isWebsite: true,\n                    routeId,\n                    pathVariables,\n                    routes,\n                    notFoundPage,\n                    isReducedMotion: undefined,\n                    localeId,\n                    locales\n                }\n            )\n\n            if (shouldHydrate) {\n                React.startTransition(() => {\n                    ReactDOM.hydrateRoot(container, element)\n                })\n            } else {\n                ReactDOM.createRoot(container).render(element)\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", "element", "PageRoot", "Z", "d", "r", "error"]
}
