{
  "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: {djt0I4scs: \"aiproject\", dvIggXI8e: \"portf\", IgrDzmfLA: \"mondrin\", IqhZSvQU7: \"home-hero\", JI8Ul3F41: \"experiences\", MQphMuaz2: \"section-about\", UNpeLdoUe: \"experiences-1\", x0XDNAT4B: \"experiences-2\", zXxMRunIt: \"contact-me-section\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/1y0B9i1s65QS8eSrZJkM/z0e3wEam8wVwqpLcDMBD/augiA20Il.js\")), path: \"/\"}, fyRKntqil: {elements: {gLSFRb6I5: \"experiences\", ifR1L9X5W: \"experiences-2\", MR87yVTFg: \"contact-me-section\", mXW9NyUii: \"experiences-1\", NQuNOTt1N: \"london-experience-2\", Nu8LTHuJM: \"london-experience\", S2rCtNhOW: \"london-experience-1\", WJ3aKelXQ: \"find-about-me\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/X4GsJCVXLOzGq8OTUlIj/ghrjKOJa30r41FQuA9O4/fyRKntqil.js\")), path: \"/projects\"}, lAi_Bh6ra: {elements: {AB8j0KSjo: \"section-about\", asYzeTA9i: \"contact-me-section\", Cne1OUoTc: \"section-about-1\", DgEJJAlo4: \"find-about-me\", KEvBQVVfg: \"my-process\", P9ZrM8Rm9: \"contact-me\", xjHVtq6gA: \"home-hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/oUqKdwCOXVcpEWOA81vt/ZgGiFP0NGxcdY8LHCGpO/lAi_Bh6ra.js\")), path: \"/about\"}, DtzVjZb6V: {elements: {KdjYsnucE: \"home-hero\", OgspjEzrM: \"section-about\", yE4jnX0L4: \"contact-me\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/lNpAXFdgZGwoVINZAaYp/RcKBMnFw4SJxbnwgXSIE/DtzVjZb6V.js\")), path: \"/contact\"}, OBxPWNzJZ: {elements: {MydMvSphz: \"contact-me-section\", TJ5SWCWfm: \"home-hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/OBAX7mOx2NM9Ri58FaLQ/V1M8Iu1x7koO8fHGNXQy/OBxPWNzJZ.js\")), path: \"/mondrink\"}, amKgRgsrQ: {elements: {H5ewOh494: \"home-hero\", SeBhu9_DJ: \"contact-me-section\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/fWFI2JSCZY4ycJ6Z8ZUi/Tedxe2b0G3T56M925hMd/amKgRgsrQ.js\")), path: \"/aiproject\"}, CviFc7wkT: {elements: {gqiVmZhDx: \"home-hero\", mSl_D5zuk: \"contact-me-section\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/1kn9BteOgvCCotqh629W/i39WBsNkcHukX9OkSuVg/CviFc7wkT.js\")), path: \"/portfolio\"}, ltwI9zgrt: {elements: {EQzyxOXxJ: \"home-hero\", KufQB1YZ8: \"home-hero-1\", v56DTepBk: \"contact-me\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/j5sMcHgs8kHF3ntSkHEA/2D5fZKg0mdmEEnfPlbfN/ltwI9zgrt.js\")), path: \"/googleux\"}, f1AaUkyjx: {elements: {bBdEl5Vl5: \"contact-me\", BSYAYjtY9: \"home-hero-2\", LfV9laMYl: \"home-hero-1\", XiLfiPzd_: \"home-hero\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/4BTLDbrk4PCKlK4GTCis/Vqqp3piaZKeI92ahJeOG/f1AaUkyjx.js\")), path: \"/duke\"}, LOuvufijo: {elements: {FgZNQvt59: \"home-hero\", olKnX7nb4: \"contact-me\", v79upxuYc: \"home-hero-1\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/iAqKSaYpu28h2ONCOoB0/oHXayFeexUZFcPedNBYA/LOuvufijo.js\")), path: \"/cv\"}, IxYydpUjl: {elements: {LDu75fYjL: \"home-hero\", X9KXQZmfc: \"404\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/5UucLWc2kgF1D49AHaKV/D1Ic2GzvRu1fdhQAt5LN/IxYydpUjl.js\")), path: \"/404\"}}\n            const locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\"}]\n            const notFoundPage = Framer.lazy(() => import(\"https://framerusercontent.com/modules/5UucLWc2kgF1D49AHaKV/D1Ic2GzvRu1fdhQAt5LN/IxYydpUjl.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"]
}
