{"version":3,"file":"script_main.ClJXn2Vd.mjs","names":["css","sharedStyle.css","useRef","React.useId","sharedStyle.className","className","RichText","React.Fragment","sharedStyle.fonts","React.createElement","ResearchArticle","Framer.PageRoot","Framer.lazy","Framer.useCurrentRoute","Framer.useLocaleInfo","Framer.useRouter","React.Fragment","React.memo","React.useCallback","React.useEffect","React.useRef","React.useState","React.useLayoutEffect","Framer.LazyValue","Framer.GracefullyDegradingErrorBoundary","Framer.PageEffectsProvider","Framer.patchRoutesForABTesting","Framer.inferInitialRouteFromPath","Framer.yieldToMain","React.startTransition","Framer.ErrorPlaceholder"],"sources":["https:/framerusercontent.com/modules/2J9qJppaoxHr5AH4TwCE/2FUSY0d3up8LLAVJrG7d/j_C9rs8zo.js","https:/framerusercontent.com/modules/1YAZuTObbZ3ohZQ9QBKV/gMfnP5qMfM88Vvvq649A/oZFAIjCzl.js","framer:toplevel/main"],"sourcesContent":["// Generated by Framer (089ff9b)\nimport{fontStore}from\"framer\";fontStore.loadFonts([]);export const fonts=[{explicitInter:true,fonts:[]}];export const css=[\".framer-AStko .framer-styles-preset-16y3ns6:not(.rich-text-wrapper), .framer-AStko .framer-styles-preset-16y3ns6.rich-text-wrapper a { --framer-link-hover-text-color: var(--token-3b3e5140-1352-40a2-a097-85ecadadef72); --framer-link-hover-text-decoration: underline; --framer-link-text-color: var(--token-a8edf5f3-f408-498a-9417-68bdf7fdbeb7); --framer-link-text-decoration: none; transition-delay: 0s; transition-duration: 0.15s; transition-property: color; transition-timing-function: cubic-bezier(0, 0, 0.58, 1); }\"];export const className=\"framer-AStko\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (c9b3949)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,cx,GeneratedComponentContext,getFontsFromSharedStyle,Link,RenderTarget,RichText,useCustomCursors,useHydratedBreakpointVariants,useIsOnFramerCanvas,useLocaleInfo,withCSS}from\"framer\";import{LayoutGroup,motion}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";import*as sharedStyle from\"#framer/local/css/j_C9rs8zo/j_C9rs8zo.js\";const breakpoints={};const isBrowser=()=>typeof document!==\"undefined\";const serializationHash=\"framer-GZVFA\";const variantClassNames={fqfqPtLvp:\"framer-v-1kdcdyi\"};const breakpointRules={};const breakpointKeys=Object.keys(breakpointRules);const rules=[\".framer-GZVFA.framer-gojauv, .framer-GZVFA .framer-gojauv { display: block; }\",\".framer-GZVFA.framer-1kdcdyi { align-content: center; align-items: center; background-color: var(--token-a44fca46-af35-4cc3-b54f-5f7d08c36c95); display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 100%; }\",\".framer-GZVFA .framer-16mf0gr { background: transparent; flex-grow: 1; height: 0px; margin: 0px; margin-bottom: -0px; position: relative; width: 0px; }\",\".framer-GZVFA .framer-tw6fg6 { align-content: center; align-items: center; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; max-width: 704px; order: 1001; padding: 0px 24px 0px 24px; position: relative; width: 100%; }\",\".framer-GZVFA .framer-qa0ky8, .framer-GZVFA .framer-1cfm9tj { align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; padding: 30px 0px 0px 0px; position: relative; width: 100%; }\",\".framer-GZVFA .framer-n51eoa { align-content: center; align-items: center; display: flex; flex: none; flex-direction: row; flex-wrap: nowrap; gap: 16px; height: min-content; justify-content: flex-start; padding: 0px; position: relative; width: 100%; }\",\".framer-GZVFA .framer-13pbdqd, .framer-GZVFA .framer-mu0cdv { background-color: var(--token-c8e187c6-ba25-45de-9430-9c2d17a04522); flex: 1 0 0px; height: 1px; position: relative; width: 1px; }\",\".framer-GZVFA .framer-12e8w9m { flex: none; height: auto; position: relative; white-space: pre; width: auto; }\",\".framer-GZVFA .framer-317w5f { --border-bottom-width: 0px; --border-color: var(--token-c8e187c6-ba25-45de-9430-9c2d17a04522); --border-left-width: 0px; --border-right-width: 0px; --border-style: solid; --border-top-width: 1px; align-content: flex-start; align-items: flex-start; display: flex; flex: none; flex-direction: column; flex-wrap: nowrap; gap: 0px; height: min-content; justify-content: flex-start; padding: 34px 0px 96px 0px; position: relative; width: 100%; }\",\".framer-GZVFA .framer-cbzfd0 { flex: none; height: auto; position: relative; white-space: pre-wrap; width: 100%; word-break: break-word; word-wrap: break-word; }\",'[data-layout-template=\"true\"] > #overlay { margin-bottom: -0px; }',...sharedStyle.css,'.framer-GZVFA[data-border=\"true\"]::after, .framer-GZVFA [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];const HTMLStyle=({value})=>{const onCanvas=useIsOnFramerCanvas();if(onCanvas)return null;return /*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:value},\"data-framer-html-style\":\"\"});};const getProps=({height,id,width,...props})=>{return{...props};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const{style,className,layoutId,variant,children,...restProps}=getProps(props);const[baseVariant,hydratedBaseVariant]=useHydratedBreakpointVariants(variant,breakpoints,false);const gestureVariant=undefined;const sharedStyleClassNames=[sharedStyle.className];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);useCustomCursors({});return /*#__PURE__*/_jsx(GeneratedComponentContext.Provider,{value:{activeVariantId:baseVariant,isLayoutTemplate:true,primaryVariantId:\"fqfqPtLvp\",variantClassNames},children:/*#__PURE__*/_jsxs(LayoutGroup,{id:layoutId??defaultLayoutId,children:[/*#__PURE__*/_jsx(HTMLStyle,{value:\":root body { background: var(--token-a44fca46-af35-4cc3-b54f-5f7d08c36c95); }\"}),/*#__PURE__*/_jsxs(motion.div,{...restProps,className:cx(scopingClassNames,\"framer-1kdcdyi\",className),\"data-layout-template\":true,ref:refBinding,style:{...style},children:[children,/*#__PURE__*/_jsx(\"div\",{className:\"framer-16mf0gr\"}),/*#__PURE__*/_jsxs(motion.div,{className:\"framer-tw6fg6\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"framer-qa0ky8\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"framer-n51eoa\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"framer-13pbdqd\"}),/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsx(\"p\",{dir:\"auto\",style:{\"--font-selector\":\"R0Y7UGxheWZhaXIgRGlzcGxheS01MDBpdGFsaWM=\",\"--framer-font-family\":'\"Playfair Display\", \"Playfair Display Placeholder\", serif',\"--framer-font-size\":\"18px\",\"--framer-font-style\":\"italic\",\"--framer-font-weight\":\"500\",\"--framer-text-color\":\"var(--token-a8edf5f3-f408-498a-9417-68bdf7fdbeb7)\"},children:\"❧\"})}),className:\"framer-12e8w9m\",fonts:[\"GF;Playfair Display-500italic\"],verticalAlignment:\"top\",withExternalLayout:true}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-mu0cdv\"})]})}),/*#__PURE__*/_jsx(\"div\",{className:\"framer-1cfm9tj\",children:/*#__PURE__*/_jsx(\"footer\",{className:\"framer-317w5f\",\"data-border\":true,children:/*#__PURE__*/_jsx(RichText,{__fromCanvasComponent:true,children:/*#__PURE__*/_jsx(React.Fragment,{children:/*#__PURE__*/_jsxs(\"p\",{dir:\"auto\",style:{\"--framer-font-size\":\"15px\",\"--framer-line-height\":\"1.75em\",\"--framer-text-color\":\"var(--token-3c9f2bf9-4555-4b08-8c05-ed96de029bb4)\"},children:[\"To view the first chapter of this series, please \",/*#__PURE__*/_jsx(Link,{href:\"https://algomizer.com/blog/how-geo-works\",motionChild:true,nodeId:\"OLMFpujdw\",openInNewTab:true,relValues:[],scopeId:\"oZFAIjCzl\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-16y3ns6\",\"data-styles-preset\":\"j_C9rs8zo\",children:\"click here\"})}),\".\",/*#__PURE__*/_jsx(\"br\",{}),\"If you are interested in optimizing and improving your AI visibility, please \",/*#__PURE__*/_jsx(Link,{href:\"https://offers.algomizer.com/quiz?utm_source=blog2\",motionChild:true,nodeId:\"OLMFpujdw\",openInNewTab:true,relValues:[],scopeId:\"oZFAIjCzl\",smoothScroll:false,children:/*#__PURE__*/_jsx(motion.a,{className:\"framer-styles-preset-16y3ns6\",\"data-styles-preset\":\"j_C9rs8zo\",children:\"book a call here\"})}),\".\"]})}),className:\"framer-cbzfd0\",fonts:[\"Inter\"],verticalAlignment:\"top\",withExternalLayout:true})})})]})]}),/*#__PURE__*/_jsx(\"div\",{id:\"template-overlay\"})]})});});const css=target=>{const isStaticRenderer=target===RenderTarget.canvas||target===RenderTarget.export;if(!isStaticRenderer){return[...rules,...breakpointKeys.map(key=>{const query=breakpointRules[key];return`@media ${query} { ${breakpointRules[key].join(\" \")} }`;})];}return[...rules,...breakpointKeys.flatMap(key=>{const selector=breakpointRules[key];return breakpointRules[key].map(rule=>`${selector} {${rule}}`);})];};/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 1200\n * @framerIntrinsicWidth 1200\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n * @framerHitTargets {\"fqfqPtLvp\":[\".framer-tw6fg6\"]}\n * @framerBreakpoints {\"fqfqPtLvp\":{\"canvasClassName\":\"framer-1kdcdyi-override\",\"minHeight\":1200,\"viewportHeight\":800,\"name\":\"Desktop\",\"width\":1200,\"rootFontSize\":16}}\n * @framerDefaultVariant fqfqPtLvp\n * @framerLayoutTemplate true\n */const FrameroZFAIjCzl=withCSS(Component,css,\"framer-GZVFA\");export default FrameroZFAIjCzl;FrameroZFAIjCzl.displayName=\"Research Article\";FrameroZFAIjCzl.defaultProps={height:1200,width:1200};addFonts(FrameroZFAIjCzl,[{explicitInter:true,fonts:[{cssFamilyName:\"Playfair Display\",source:\"google\",style:\"italic\",uiFamilyName:\"Playfair Display\",url:\"https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_pqTbtPK-F2rA0s.woff2\",weight:\"500\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F\",url:\"https://framerusercontent.com/assets/5vvr9Vy74if2I6bQbJvbw7SY1pQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116\",url:\"https://framerusercontent.com/assets/EOr0mi4hNtlgWNn9if640EZzXCo.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+1F00-1FFF\",url:\"https://framerusercontent.com/assets/Y9k9QrlZAqio88Klkmbd8VoMQc.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0370-03FF\",url:\"https://framerusercontent.com/assets/OYrD2tBIBPvoJXiIHnLoOXnY9M.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF\",url:\"https://framerusercontent.com/assets/JeYwfuaPfZHQhEG8U5gtPDZ7WQ.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD\",url:\"https://framerusercontent.com/assets/GrgcKwrN6d3Uz8EwcLHZxwEfC4.woff2\",weight:\"400\"},{cssFamilyName:\"Inter\",source:\"framer\",style:\"normal\",uiFamilyName:\"Inter\",unicodeRange:\"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB\",url:\"https://framerusercontent.com/assets/b6Y37FthZeALduNqHicBT6FutY.woff2\",weight:\"400\"}]},...getFontsFromSharedStyle(sharedStyle.fonts)],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FrameroZFAIjCzl\",\"slots\":[],\"annotations\":{\"framerBreakpoints\":\"{\\\"fqfqPtLvp\\\":{\\\"canvasClassName\\\":\\\"framer-1kdcdyi-override\\\",\\\"minHeight\\\":1200,\\\"viewportHeight\\\":800,\\\"name\\\":\\\"Desktop\\\",\\\"width\\\":1200,\\\"rootFontSize\\\":16}}\",\"framerDefaultVariant\":\"fqfqPtLvp\",\"framerColorSyntax\":\"true\",\"framerIntrinsicHeight\":\"1200\",\"framerAutoSizeImages\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerImmutableVariables\":\"true\",\"framerContractVersion\":\"1\",\"framerLayoutTemplate\":\"true\",\"framerHitTargets\":\"{\\\"fqfqPtLvp\\\":[\\\".framer-tw6fg6\\\"]}\",\"framerIntrinsicWidth\":\"1200\",\"framerComponentViewportWidth\":\"true\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","\r\n\t\timport * as Framer from \"framer\";\r\nimport * as React from \"react\";\r\nimport { createPortal } from \"react-dom\";\r\nimport * as ReactDOM from \"react-dom/client\";\r\nimport ResearchArticle from \"https://framerusercontent.com/modules/1YAZuTObbZ3ohZQ9QBKV/gMfnP5qMfM88Vvvq649A/oZFAIjCzl.js\";\r\n\r\n\t\tconst routes = {augiA20Il: {elements: {EfaXxmDUx: \"why-us-1\", LbLC6wHWq: \"pricing\", MIBTkDlEt: \"why-us\", pBaM53OMR: \"projects\", Tbdeu193a: \"contact\", xu3PiCzji: \"faq\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/mEq3QQjoO1mRNkqJVlNv/fufJpMVeXwLw4ymsTqml/augiA20Il.js\")), path: \"/\"}, LAbeA1ecL: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/p7hFjK7GECJzGOkENb26/ZhxtXv12NuMRrU1FejEF/LAbeA1ecL.js\")), path: \"/404\"}, R_dg11RIS: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/zcwmgfK3xYJrXZn46JD0/j5K6W0PvFCwqTitlxczm/R_dg11RIS.js\")), path: \"/confirmation\"}, ut33LaZbV: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/MYFtSZsizmcOsDOeCvfi/hHJqpCFDRQNJPG4nnXyr/ut33LaZbV.js\")), path: \"/confirmation-pi\"}, PVmabyEgP: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/OwYASpR1EYgFf73wEN1S/G0DEnkUxUQkLQAkON5dr/PVmabyEgP.js\")), path: \"/confirmation-re\"}, fY6q8_CvA: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/gw2m99w2LcKDphCrbisG/ZCeNlRBNrzoWENVMUwAw/fY6q8_CvA.js\")), path: \"/terms-of-service\"}, ZdqUU0mIB: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/CA13K1vFgW48aasuSfso/Q1almOuGqrbjHIerJcQz/ZdqUU0mIB.js\")), path: \"/privacy\"}, EzI7cMadB: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/mJotVmQvCDqpI9ChUplP/acERp68M1nVjn62sklsu/EzI7cMadB.js\")), path: \"/blog/how-geo-works\"}, wXzDzFHJc: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/ajebhRmzc9D4BD8VXmpg/WnSCHttKI9lM9d4XenP6/wXzDzFHJc.js\")), path: \"/blog/the-weight-of-authority-in-geo\"}, FFtq9f9LK: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/UGLrFryHGOtwOSjSjdjl/clzGlRvxP2P2tfPnU0iF/FFtq9f9LK.js\")), path: \"/blog/engineering-truth-the-technical-framework-for-geo\"}, gh8hfnYUQ: {elements: {VeTtsfrVS: \"packages\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/nCczv3dQU1dndMatCf8o/yXfC7KbZDQMGoiWkRhvm/gh8hfnYUQ.js\")), path: \"/products\"}, HTlDLmaXB: {elements: {Frg6firCk: \"services\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/zkWM2KgX9bV1f0cJMdB4/SymlOoapZUmstyncm0tv/HTlDLmaXB.js\")), path: \"/personal-injury\"}, cZBODRY1h: {elements: {iByiLA3F6: \"services\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/hyQbc30GIJmePab3Evxr/4eBxbXkQpb6dFUeRruUP/cZBODRY1h.js\")), path: \"/real-estate\"}, owOk9XVWL: {elements: {UbKAwk14L: \"services\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/utJSAMJfgUuQwHUHXcqe/aqkgx2odUprrYwsMbkpk/owOk9XVWL.js\")), path: \"/university\"}, dXmcTkuuq: {elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/0RNiHVMMkvzXBRYTmnrU/NvkJvcmGbG93O9XViVWb/dXmcTkuuq.js\")), path: \"/blog\"}, xNOop3GL3: {collectionId: \"QOpzFzShJ\", elements: {ZzTYLaonu: \"projects\"}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/2LrxbLedKq1MiBFGdAVM/XiED72xTcb7rw42z4I1x/xNOop3GL3.js\")), path: \"/:Axe1yfn5h\"}, zVyOQ3dGm: {collectionId: \"cumbqFW4E\", elements: {}, page: Framer.lazy(() => import(\"https://framerusercontent.com/modules/cHJVDF9sgmmJAhZkKv3O/SPs2ovAm03oN3Xjc1Ykd/zVyOQ3dGm.js\")), path: \"/blog/:cKngNFeCD\"}}\r\n\r\n\t\tconst locales = [{code: \"en\", id: \"default\", name: \"English\", slug: \"\", textDirection: \"ltr\"}]\r\n\t\tconst collectionUtils = {cumbqFW4E: async () => (await import(\"https://framerusercontent.com/modules/ueiR80LaBvUCAP7KatSf/s2liqKQKM1GtZFoNDEMg/cumbqFW4E.js\"))?.[\"utils\"], QOpzFzShJ: async () => (await import(\"https://framerusercontent.com/modules/qA6WtVuukQOGglodXihi/OOxVH4JV3iIZ1IwklTrv/QOpzFzShJ.js\"))?.[\"utils\"]}\r\n\t\tconst framerSiteId = \"bcc47aa4387be8dc0e036779ba4b7795b4d555ec73e4370419ad2180bd0243a3\"\r\n\t\tfunction Template({webPageId, children, style, ...rest}) {const templateProps = {}\r\nconst props = templateProps[webPageId] ?? {}\r\nswitch (webPageId) {case \"JlVGEvyxy\":\r\nreturn React.createElement(ResearchArticle, {...props, key: \"ResearchArticle\", style}, children(true));\r\ndefault: { return children(false) }}}\r\nexport function getLayoutTemplateBreakpoints(routeId) {switch (routeId) {case \"JlVGEvyxy\":\r\nreturn [{hash: \"1kdcdyi\"}]\r\ndefault: { return undefined }}}\r\n\r\n\t\tconst isBrowser = typeof document !== \"undefined\"\r\n\t\tconst isBot = isBrowser && /bot|-google|google-|yandex|ia_archiver|crawl|spider/iu.test(navigator.userAgent)\r\n\r\n\t\texport async function getPageRoot({ routeId, pathVariables, localeId, collectionItemId }) {\r\n\t\t\tconst rootPreload = routes[routeId].page.preload()\r\n\r\n\t\t\tFramer.setLibraryFeatures({disableCustomCode: false, editorBarDisableFrameAncestorsSecurity: false, motionDivToDiv: false, onPageLocalizationSupport: true, onPageMoveTool: true, onPageRichTextBlockSelection: true, privateRouterReplaceState: true, scrollRestoration: true, synchronousNavigationOnDesktop: false, yieldOnTap: false})\r\n\r\n\t\t\tconst content = React.createElement(\r\n\t\t\t\tFramer.PageRoot,\r\n\t\t\t\t{\r\n\t\t\t\t\tisWebsite: true,\r\n\t\t\t\t\tenvironment: \"site\",\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\troutes,\r\n\t\t\t\t\tcollectionUtils,\r\n\t\t\t\t\tframerSiteId,\r\n\t\t\t\t\tnotFoundPage: Framer.lazy(() => import(\"https://framerusercontent.com/modules/p7hFjK7GECJzGOkENb26/ZhxtXv12NuMRrU1FejEF/LAbeA1ecL.js\")),\r\n\t\t\t\t\tisReducedMotion: true,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tlocales,\r\n\t\t\t\t\tpreserveQueryParams: undefined,\r\n\t\t\t\t\tsiteCanonicalURL: \"https://algomizer.com\",\r\n\t\t\t\t\tEditorBar: \r\n\t\t\ttypeof window !== \"undefined\" ? (() => {\r\n\t\t\t\tif (isBot) {\r\n\t\t\t\t\tconsole.log(\"[Framer On-Page Editing] Unavailable because navigator is bot\")\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn Framer.lazy(async () => {\r\n\t\t\t\t\tconst dependencies = {\r\n\t\t\t\t\t\t__version: 3,\r\n\t\t\t\t\t\tframer: {\r\n\t\t\t\t\t\t\tuseCurrentRoute: Framer.useCurrentRoute,\r\n\t\t\t\t\t\t\tuseLocaleInfo: Framer.useLocaleInfo,\r\n\t\t\t\t\t\t\tuseRouter: Framer.useRouter,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\treact: {\r\n\t\t\t\t\t\t\tcreateElement: React.createElement,\r\n\t\t\t\t\t\t\tFragment: React.Fragment,\r\n\t\t\t\t\t\t\tmemo: React.memo,\r\n\t\t\t\t\t\t\tuseCallback: React.useCallback,\r\n\t\t\t\t\t\t\tuseEffect: React.useEffect,\r\n\t\t\t\t\t\t\tuseRef: React.useRef,\r\n\t\t\t\t\t\t\tuseState: React.useState,\r\n\t\t\t\t\t\t\tuseLayoutEffect: React.useLayoutEffect,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\"react-dom\": { createPortal },\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\twindow.__framer_editorBarDependencies = dependencies\r\n\r\n\t\t\t\t\tconst { createEditorBar } = await import(\"https://framer.com/edit/init.mjs\")\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tdefault: createEditorBar(),\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t})() : undefined\r\n\t\t,\r\n\t\t\t\t\tadaptLayoutToTextDirection: false,\r\n\t\t\t\t\tLayoutTemplate: Template,\r\n\t\t\t\t\tloadSnippetsModule: new Framer.LazyValue(() => import(\"https://framerusercontent.com/modules/WuYymDRLgt1ELoed5L9O/8SyvpCTFO7GK9O2JqFIX/snippets.js\")),\r\n\t\t\t\t\tinitialCollectionItemId: collectionItemId,\r\n\t\t\t\t}\r\n\t\t\t)\r\n\r\n\t\t\tconst contentWithGracefullyDegradingErrorBoundary = React.createElement(Framer.GracefullyDegradingErrorBoundary, {\r\n\t\t\t\tchildren: content\r\n\t\t\t})\r\n\r\n\t\t\t\r\n\t\t\tconst page = React.createElement(Framer.PageEffectsProvider, {\r\n\t\t\t\tchildren: contentWithGracefullyDegradingErrorBoundary,\r\n\t\t\t\tvalue: {routes: {}}\r\n\t\t\t})\r\n\r\n\t\t\t// We don't want the initial render to immediately have to suspend.\r\n\t\t\tawait rootPreload\r\n\t\t\treturn page\r\n\t\t}\r\n\r\n\t\tif (isBrowser) {\r\n\t\t\twindow.__framer_importFromPackage = (packageAndFilename, exportIdentifier) => () => {\r\n\t\t\t\treturn React.createElement(Framer.ErrorPlaceholder, { error: 'Package component not supported: \"' + exportIdentifier + '\" in \"' + packageAndFilename + '\"' })\r\n\t\t\t}\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\twindow.__framer_events = window.__framer_events || []\r\n\r\n\t\t\t// Initialize lazy modules cache for hydration\r\n\t\t\tFramer.initLazyModulesCache()\r\n\r\n\t\t\tconst container = document.getElementById(\"main\")\r\n\t\t\t// We know that #main is parsed before this script, so we don't need to wait for DOMContentLoaded or similar events.\r\n\t\t\tif (\"framerHydrateV2\" in container.dataset) main(true, container)\r\n\t\t\telse main(false, container)\r\n\t\t}\r\n\r\n\t\tfunction track() {\r\n\t\t\tif (!isBrowser) return\r\n\t\t\twindow.__framer_events.push(arguments)\r\n\t\t}\r\n\r\n\t\tasync function main(shouldHydrate, container) {\r\n\t\t\tfunction handleError(error, errorInfo, recoverable = true) {\r\n\t\t\t\tif (error.caught || window.__framer_hadFatalError) return // we already logged it\r\n\r\n\t\t\t\tconst componentStack = errorInfo?.componentStack\r\n\t\t\t\tif (recoverable) {\r\n\t\t\t\t\tconsole.warn(\"Caught a recoverable error. The site is still functional, but might have some UI flickering or degraded page load performance. If you are the author of this website, update external components and check recently added custom code or code overrides to fix the following server/client mismatches:\\n\", error, componentStack)\r\n\t\t\t\t\t// we only want to collect 1%, because this can be quite noisy (floods the data pipeline)\r\n\t\t\t\t\tif (Math.random() > 0.01) return\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconsole.error(\"Caught a fatal error. Please report the following to the Framer team via https://www.framer.com/contact/:\\n\", error, componentStack)\r\n\t\t\t\t}\r\n\t\t\t\ttrack(recoverable ? \"published_site_load_recoverable_error\" : \"published_site_load_error\", {\r\n\t\t\t\t\tmessage: String(error),\r\n\t\t\t\t\tcomponentStack, // componentStack is more useful\r\n\t\t\t\t\tstack: componentStack ? undefined : error instanceof Error && typeof error.stack === \"string\" ? error.stack : null,\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\ttry {\r\n\t\t\t\tlet routeId, localeId, pathVariables, breakpoints, routeData\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\trouteData = JSON.parse(container.dataset[\"framerHydrateV2\"])\r\n\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\tbreakpoints = routeData.breakpoints\r\n\r\n\t\t\t\t\trouteId = Framer.patchRoutesForABTesting(routes, routeId) // Prioritize optimized route id to avoid flickering in browsers not supporting the server-timing header (Safari older than 16.4)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tFramer.patchRoutesForABTesting(routes, undefined) // This must happen before inferInitialRouteFromPath\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\tconst serverRouteExperimentEnabled = true\r\n\t\t\t\t\tconst serverRoute = serverRouteExperimentEnabled && performance.getEntriesByType(\"navigation\")[0]?.serverTiming?.find(e => e.name === \"route\")?.description\r\n\t\t\t\t\tif (serverRoute) {\r\n\t\t\t\t\t\tconst routeData = new URLSearchParams(serverRoute)\r\n\t\t\t\t\t\trouteId = routeData.get(\"id\")\r\n\t\t\t\t\t\tlocaleId = routeData.get(\"locale\")\r\n\t\t\t\t\t\tfor (const [key, value] of routeData.entries()) {\r\n\t\t\t\t\t\t\tif (!key.startsWith(\"var.\")) continue\r\n\t\t\t\t\t\t\tpathVariables ??= {}\r\n\t\t\t\t\t\t\tpathVariables[key.slice(4)] = value\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (!routeId || !localeId) {\r\n\t\t\t\t\t\tconst routeData = Framer.inferInitialRouteFromPath(routes, decodeURIComponent(location.pathname), true, locales)\r\n\t\t\t\t\t\trouteId = routeData.routeId\r\n\t\t\t\t\t\tlocaleId = routeData.localeId\r\n\t\t\t\t\t\tpathVariables = routeData.pathVariables\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst pagePromise = getPageRoot({\r\n\t\t\t\t\trouteId,\r\n\t\t\t\t\tlocaleId,\r\n\t\t\t\t\tpathVariables,\r\n\t\t\t\t\tcollectionItemId: routeData?.collectionItemId,\r\n\t\t\t\t})\r\n\r\n\t\t\t\t\r\nif (typeof window !== \"undefined\") {\r\n\tvoid (async () => {\r\n\t\tconst route = routes[routeId]\r\n\r\n\t\tconst defaultLocaleId = \"default\"\r\n\t\tconst framerLocale = locales.find(({ id }) => !localeId ? id === defaultLocaleId : id === localeId).code\r\n\r\n\t\tlet collectionItemId = routeData?.collectionItemId ?? null\r\n\t\tif (collectionItemId === null && route?.collectionId && collectionUtils) {\r\n\t\t\t  const utils = await collectionUtils[route.collectionId]?.()\r\n\t\t\t  const [slug] = Object.values(pathVariables)\r\n\t\t\t  if (utils && typeof slug === \"string\") {\r\n\t\t\t\t  collectionItemId = (await utils.getRecordIdBySlug(slug, framerLocale || undefined)) ?? null\r\n\t\t\t  }\r\n\t\t}\r\n\r\n\t\tconst resolvedDateTimeOptions = Intl.DateTimeFormat().resolvedOptions()\r\n\t\tconst timezone = resolvedDateTimeOptions.timeZone\r\n\t\tconst locale = resolvedDateTimeOptions.locale\r\n\r\n\t\t// wait for the page to be activated before sending the pageview event\r\n\t\t// https://developer.chrome.com/docs/web-platform/prerender-pages#impact-on-analytics\r\n\t\tawait new Promise((resolve) => {\r\n\t\t\tif (document.prerendering) {\r\n\t\t\t\tdocument.addEventListener(\"prerenderingchange\", resolve, { once: true })\r\n\t\t\t} else {\r\n\t\t\t\tresolve()\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\twindow.__framer_events.push([\r\n\t\t\t\"published_site_pageview\",\r\n\t\t\t{\r\n\t\t\t\tframerSiteId,\r\n\t\t\t\tversion: 2,\r\n\t\t\t\troutePath: route?.path || \"/\",\r\n\t\t\t\tcollectionItemId,\r\n\t\t\t\tframerLocale: framerLocale || null,\r\n\t\t\t\twebPageId: route?.abTestingVariantId ?? routeId,\r\n\t\t\t\tabTestId: route?.abTestId,\r\n\t\t\t\treferrer: document.referrer || null,\r\n\t\t\t\turl: window.location.href,\r\n\t\t\t\thostname: window.location.hostname || null,\r\n\t\t\t\tpathname: window.location.pathname || null,\r\n\t\t\t\thash: window.location.hash || null,\r\n\t\t\t\tsearch: window.location.search || null,\r\n\t\t\t\ttimezone,\r\n\t\t\t\tlocale,\r\n\t\t\t},\r\n\t\t\t\"eager\"\r\n\t\t])\r\n\r\n\t\t// Yield to avoid blocking the main thread with the user code\r\n\t\tawait Framer.yieldToMain({ priority: \"background\", ensureContinueBeforeUnload: true, continueAfter: \"paint\" })\r\n\r\n\t\tdocument.dispatchEvent(new CustomEvent(\"framer:pageview\", {\r\n\t\t\tdetail: { framerLocale: framerLocale || null }\r\n\t\t}))\r\n\t})()\r\n}\r\n\r\n\r\n\t\t\t\tconst page = await pagePromise\r\n\t\t\t\tif (shouldHydrate) {\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tFramer.withPerformanceMarks(\"framer-rewrite-breakpoints\", () => {\r\n\t\t\t\t\t\tFramer.removeHiddenBreakpointLayersV2(breakpoints)\r\n\t\t\t\t\t\twindow.__framer_onRewriteBreakpoints?.(breakpoints)\r\n\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\tconst startTransition = isBot ? cb => cb() : React.startTransition\r\n\t\t\t\t\tstartTransition(() => {\r\n\t\t\t\t\t\tFramer.markHydrationStart()\r\n\t\t\t\t\t\tFramer.turnOffReactEventHandling()\r\n\t\t\t\t\t\tReactDOM.hydrateRoot(container, page, { onRecoverableError: handleError })\r\n\t\t\t\t\t})\r\n\t\t\t\t} else {\r\n\t\t\t\t\t\r\n\t\t\t\t\tReactDOM.createRoot(container, { onRecoverableError: handleError }).render(page)\r\n\t\t\t\t}\r\n\t\t\t} catch (error) {\r\n\t\t\t\thandleError(error, undefined, false)\r\n\t\t\t\tthrow error\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\r\n\r\n\t\t\r\n\t"],"mappings":"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"}