PageSourceSearch

https://www.edvance.dev/_next/static/chunks/cbf101b4757ac8d6.js

js edvance.dev collected 2026-09-24 14:59:38 UTC 37,889 bytes, 25 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,99130,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"warnOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},27523,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return a}});let n=e.r(17335);function a(e,t){let r=(0,n.useRef)(null),a=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=a.current;t&&(a.current=null,t())}else e&&(r.current=o(e,n)),t&&(a.current=o(t,n))},[e,t])}function o(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},27436,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={assign:function(){return s},searchParamsToUrlQuery:function(){return o},urlQueryToSearchParams:function(){return i}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});function o(e){let t={};for(let[r,n]of e.entries()){let e=t[r];void 0===e?t[r]=n:Array.isArray(e)?e.push(n):t[r]=[e,n]}return t}function l(e){return"string"==typeof e?e:("number"!=typeof e||isNaN(e))&&"boolean"!=typeof e?"":String(e)}function i(e){let t=new URLSearchParams;for(let[r,n]of Object.entries(e))if(Array.isArray(n))for(let e of n)t.append(r,l(e));else t.set(r,l(n));return t}function s(e,...t){for(let r of t){for(let t of r.keys())e.delete(t);for(let[t,n]of r.entries())e.append(t,n)}return e}},159,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={formatUrl:function(){return i},formatWithValidation:function(){return u},urlObjectKeys:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(44066)._(e.r(27436)),l=/https?|ftp|gopher|file/;function i(e){let{auth:t,hostname:r}=e,n=e.protocol||"",a=e.pathname||"",i=e.hash||"",s=e.query||"",u=!1;t=t?encodeURIComponent(t).replace(/%3A/i,":")+"@":"",e.host?u=t+e.host:r&&(u=t+(~r.indexOf(":")?`[${r}]`:r),e.port&&(u+=":"+e.port)),s&&"object"==typeof s&&(s=String(o.urlQueryToSearchParams(s)));let d=e.search||s&&`?${s}`||"";return n&&!n.endsWith(":")&&(n+=":"),e.slashes||(!n||l.test(n))&&!1!==u?(u="//"+(u||""),a&&"/"!==a[0]&&(a="/"+a)):u||(u=""),i&&"#"!==i[0]&&(i="#"+i),d&&"?"!==d[0]&&(d="?"+d),a=a.replace(/[?#]/g,encodeURIComponent),d=d.replace("#","%23"),`${n}${u}${a}${d}${i}`}let s=["auth","hash","host","hostname","href","path","pathname","port","protocol","query","search","slashes"];function u(e){return i(e)}},24575,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={DecodeError:function(){return b},MiddlewareNotFoundError:function(){return j},MissingStaticPage:function(){return x},NormalizeError:function(){return y},PageNotFoundError:function(){return v},SP:function(){return g},ST:function(){return h},WEB_VITALS:function(){return o},execOnce:function(){return l},getDisplayName:function(){return c},getLocationOrigin:function(){return u},getURL:function(){return d},isAbsoluteUrl:function(){return s},isResSent:function(){return f},loadGetInitialProps:function(){return m},normalizeRepeatedSlashes:function(){return p},stringifyError:function(){return w}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=["CLS","FCP","FID","INP","LCP","TTFB"];function l(e){let t,r=!1;return(...n)=>(r||(r=!0,t=e(...n)),t)}let i=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,s=e=>i.test(e);function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function d(){let{href:e}=window.location,t=u();return e.substring(t.length)}function c(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function f(e){return e.finished||e.headersSent}function p(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function m(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await m(t.Component,t.ctx)}:{};let n=await e.getInitialProps(t);if(r&&f(r))return n;if(!n)throw Object.defineProperty(Error(`"${c(e)}.getInitialProps()" should resolve to an object. But found "${n}
1" instead.`),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}let g="undefined"!=typeof performance,h=g&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class b extends Error{}class y extends Error{}class v extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class x extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}class j extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function w(e){return JSON.stringify({message:e.message,stack:e.stack})}},77577,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"isLocalURL",{enumerable:!0,get:function(){return o}});let n=e.r(24575),a=e.r(3449);function o(e){if(!(0,n.isAbsoluteUrl)(e))return!0;try{let t=(0,n.getLocationOrigin)(),r=new URL(e,t);return r.origin===t&&(0,a.hasBasePath)(r.pathname)}catch(e){return!1}}},96833,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"errorOnce",{enumerable:!0,get:function(){return n}});let n=e=>{}},37804,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return b},useLinkStatus:function(){return v}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(44066),l=e.r(47539),i=o._(e.r(17335)),s=e.r(159),u=e.r(77235),d=e.r(27523),c=e.r(24575),f=e.r(7800);e.r(99130);let p=e.r(68854),m=e.r(77577),g=e.r(92506);function h(e){return"string"==typeof e?e:(0,s.formatUrl)(e)}function b(t){var r;let n,a,o,[s,b]=(0,i.useOptimistic)(p.IDLE_LINK_STATUS),v=(0,i.useRef)(null),{href:x,as:j,children:w,prefetch:_=null,passHref:O,replace:k,shallow:E,scroll:P,onClick:M,onMouseEnter:N,onTouchStart:C,legacyBehavior:T=!1,onNavigate:S,ref:A,unstable_dynamicOnHover:I,...L}=t;n=w,T&&("string"==typeof n||"number"==typeof n)&&(n=(0,l.jsx)("a",{children:n}));let $=i.default.useContext(u.AppRouterContext),R=!1!==_,G=!1!==_?null===(r=_)||"auto"===r?g.FetchStrategy.PPR:g.FetchStrategy.Full:g.FetchStrategy.PPR,{href:D,as:U}=i.default.useMemo(()=>{let e=h(x);return{href:e,as:j?h(j):e}},[x,j]);if(T){if(n?.$$typeof===Symbol.for("react.lazy"))throw Object.defineProperty(Error("`<Link legacyBehavior>` received a direct child that is either a Server Component, or JSX that was loaded with React.lazy(). This is not supported. Either remove legacyBehavior, or make the direct child a Client Component that renders the Link's `<a>` tag."),"__NEXT_ERROR_CODE",{value:"E863",enumerable:!1,configurable:!0});a=i.default.Children.only(n)}let B=T?a&&"object"==typeof a&&a.ref:A,z=i.default.useCallback(e=>(null!==$&&(v.current=(0,p.mountLinkInstance)(e,D,$,G,R,b)),()=>{v.current&&((0,p.unmountLinkForCurrentNavigation)(v.current),v.current=null),(0,p.unmountPrefetchableInstance)(e)}),[R,D,$,G,b]),F={ref:(0,d.useMergedRef)(z,B),onClick(t){T||"function"!=typeof M||M(t),T&&a.props&&"function"==typeof a.props.onClick&&a.props.onClick(t),!$||t.defaultPrevented||function(t,r,n,a,o,l,s){if("undefined"!=typeof window){let u,{nodeName:d}=t.currentTarget;if("A"===d.toUpperCase()&&((u=t.currentTarget.getAttribute("target"))&&"_self"!==u||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.nativeEvent&&2===t.nativeEvent.which)||t.currentTarget.hasAttribute("download"))return;if(!(0,m.isLocalURL)(r)){o&&(t.preventDefault(),location.replace(r));return}if(t.preventDefault(),s){let e=!1;if(s({preventDefault:()=>{e=!0}}),e)return}let{dispatchNavigateAction:c}=e.r(564);i.default.startTransition(()=>{c(n||r,o?"replace":"push",l??!0,a.current)})}}(t,D,U,v,k,P,S)},onMouseEnter(e){T||"function"!=typeof N||N(e),T&&a.props&&"function"==typeof a.props.onMouseEnter&&a.props.onMouseEnter(e),$&&R&&(0,p.onNavigationIntent)(e.currentTarget,!0===I)},onTouchStart:function(e){T||"function"!=typeof C||C(e),T&&a.props&&"function"==typeof a.props.onTouchStart&&a.props.onTouchStart(e),$&&R&&(0,p.onNavigationIntent)(e.currentTarget,!0===I)}};return(0,c.isAbsoluteUrl)(U)?F.href=U:T&&!O&&("a"!==a.type||"href"in a.props)||(F.href=(0,f.addBasePath)(U)),o=T?i.default.cloneElement(a,F):(0,l.jsx)("a",{...L,...F,children:n}),(0,l.jsx)(y.Provider,{value:s,children:o})}e.r(96833);let y=(0,i.createContext)(p.IDLE_LINK_STATUS),v=()=>(0,i.useContext)(y);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esMo
1dule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},55708,e=>{e.v({id:"google-analytics",description:"Install a Google Analytics tag on your website",website:"https://analytics.google.com/analytics/web/",scripts:[{url:"https://www.googletagmanager.com/gtag/js",params:["id"],strategy:"worker",location:"head",action:"append"},{code:"window.dataLayer=window.dataLayer||[];window.gtag=function gtag(){window.dataLayer.push(arguments);};gtag('js',new Date());gtag('config','${args.id}')",strategy:"worker",location:"head",action:"append"}]})},81171,e=>{e.v({id:"google-maps-embed",description:"Embed a Google Maps embed on your webpage",website:"https://developers.google.com/maps/documentation/embed/get-started",html:{element:"iframe",attributes:{loading:"lazy",src:{url:"https://www.google.com/maps/embed/v1/place",slugParam:"mode",params:["key","q","center","zoom","maptype","language","region"]},referrerpolicy:"no-referrer-when-downgrade",frameborder:"0",style:"border:0",allowfullscreen:!0,width:null,height:null}}})},61002,e=>{e.v({id:"youtube-embed",description:"Embed a YouTube embed on your webpage.",website:"https://github.com/paulirish/lite-youtube-embed",html:{element:"lite-youtube",attributes:{videoid:null,playlabel:null}},stylesheets:["https://cdn.jsdelivr.net/gh/paulirish/lite-youtube-embed@master/src/lite-yt-embed.css"],scripts:[{url:"https://cdn.jsdelivr.net/gh/paulirish/lite-youtube-embed@master/src/lite-yt-embed.js",strategy:"idle",location:"head",action:"append"}]})},7284,e=>{"use strict";e.s(["default",0,function(){for(var e,t,r=0,n="",a=arguments.length;r<a;r++)(e=arguments[r])&&(t=function e(t){var r,n,a="";if("string"==typeof t||"number"==typeof t)a+=t;else if("object"==typeof t)if(Array.isArray(t)){var o=t.length;for(r=0;r<o;r++)t[r]&&(n=e(t[r]))&&(a&&(a+=" "),a+=n)}else for(n in t)t[n]&&(a&&(a+=" "),a+=n);return a}(e))&&(n&&(n+=" "),n+=t);return n}])},94778,e=>{"use strict";var t=e.i(47539),r=e.i(7284);e.s(["default",0,({primary:e,modifier:n,children:a,...o})=>{let l=`
2		font-sans font-semibold 
3		py-2.5 px-6 
4		rounded-2xl
5		focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2
6		disabled:opacity-50 disabled:pointer-events-none
7	`,i=e?`
8			bg-primary text-primary-foreground border-2 border-primary
9			hover:bg-[var(--primary-hover)] hover:border-[var(--primary-hover)]
10			active:bg-[var(--primary-active)] active:border-[var(--primary-active)]
11		`:`
12			bg-background text-foreground border-2 border-border
13			hover:bg-muted hover:border-muted-foreground/20
14			active:bg-accent
15		`;return(0,t.jsx)("button",{type:"button",className:(0,r.default)(l,i,n),...o,children:a})}])},7617,e=>{"use strict";e.s(["BOOKING_HREF",0,"/contact#book-a-call","CONTACT_EMAIL",0,"[email protected]","WHATSAPP_URL",0,"https://wa.me/94773188282"])},58437,e=>{"use strict";var t=e.i(47539),r=e.i(7284);e.s(["Body",0,({children:e,className:n})=>(0,t.jsx)("p",{className:(0,r.default)("text-base lg:text-lg leading-relaxed text-foreground/80",n),children:e}),"Caption",0,({children:e,className:n})=>(0,t.jsx)("p",{className:(0,r.default)("text-sm text-muted-foreground",n),children:e}),"H2",0,({children:e,className:n})=>(0,t.jsx)("h2",{className:(0,r.default)("font-display text-4xl lg:text-6xl font-medium leading-[1.05] tracking-tight text-foreground",n),children:e})])},74073,(e,t,r)=>{t.exports=e.r(74963)},7271,25091,e=>{"use strict";var t=e.i(17335);let r=(...e)=>e.filter((e,t,r)=>!!e&&""!==e.trim()&&r.indexOf(e)===t).join(" ").trim(),n=e=>{let t=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,r)=>r?r.toUpperCase():t.toLowerCase());return t.charAt(0).toUpperCase()+t.slice(1)};var a={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let o=(0,t.forwardRef)(({color:e="currentColor",size:n=24,strokeWidth:o=2,absoluteStrokeWidth:l,className:i="",children:s,iconNode:u,...d},c)=>(0,t.createElement)("svg",{ref:c,...a,width:n,height:n,stroke:e,strokeWidth:l?24*Number(o)/Number(n):o,className:r("lucide",i),...!s&&!(e=>{for(let t in e)if(t.startsWith("aria-")||"role"===t||"title"===t)return!0;return!1})(d)&&{"aria-hidden":"true"},...d},[...u.map(([e,r])=>(0,t.createElement)(e,r)),...Array.isArray(s)?s:[s]])),l=(e,a)=>{let l=(0,t.forwardRef)(({className:l,...i},s)=>(0,t.createElement)(o,{ref:s,iconNode:a,className:r(`lucide-${n(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${e}`,l),...i}));return l.displayName=n(e),l};e.s(["default",()=>l],7271);let i=l("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}
15],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);e.s(["X",()=>i],25091)},74424,e=>{"use strict";var t=e.i(47539),r=e.i(7284),n=e.i(17335),a=e.i(74073),o=e.i(94778),l=e.i(37804);let i=`url("data:image/svg+xml,${encodeURIComponent("<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.0486526 8.9301558'><g transform='translate(-20.943881,-238.77647)'><g transform='translate(-37.779165,21.98709)'><g transform='matrix(-1.2363756,1.5462744e-8,-1.5462744e-8,-1.2363756,184.76662,372.01868)'><path fill='#000' d='m 101.94601,118.37026 -2.614135,7.18164 h -1.273306 l -2.614137,-7.18164 h 1.022504 l 2.252401,6.3183 2.252403,-6.3183 z'/></g></g></g></svg>")}")`;function s({width:e=36,height:n=36,className:a}){return(0,t.jsxs)("span",{role:"img","aria-label":"Edvance logo",className:(0,r.default)("relative inline-block",a),style:{width:e,height:n},children:[(0,t.jsx)("svg",{"aria-hidden":"true",viewBox:"0 0 8.0486526 8.9301558",className:"w-full h-full",children:(0,t.jsx)("g",{transform:"translate(-20.943881,-238.77647)",children:(0,t.jsxs)("g",{transform:"translate(-37.779165,21.98709)",children:[(0,t.jsx)("g",{transform:"matrix(-1.2363756,1.5462744e-8,-1.5462744e-8,-1.2363756,184.76662,372.01868)",children:(0,t.jsx)("path",{fill:"currentColor",d:"m -94.627193,-126.1691 -2.614136,7.18164 h -1.273306 l -2.614135,-7.18164 h 1.0225 l 2.252403,6.3183 2.252402,-6.3183 z",transform:"rotate(179.6279)"})}),(0,t.jsx)("path",{fill:"currentColor",d:"m 63.581947,225.71952 -1.13262,-0.0184 3.104225,-8.90081 1.218147,-0.008 z"})]})})}),(0,t.jsx)("span",{"aria-hidden":"true",className:(0,r.default)("absolute inset-0 animate-shine","bg-[linear-gradient(180deg,var(--primary)_0%,var(--primary)_42%,var(--background)_50%,var(--primary)_58%,var(--primary)_100%)]"),style:{maskImage:i,WebkitMaskImage:i,maskRepeat:"no-repeat",WebkitMaskRepeat:"no-repeat",maskSize:"contain",WebkitMaskSize:"contain",maskPosition:"center",WebkitMaskPosition:"center"}})]})}let u=(0,e.i(7271).default)("menu",[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]]);var d=e.i(25091),c=e.i(7617);let f=[{label:"Services",href:"/services"},{label:"Products",href:"/products"},{label:"About",href:"/about"},{label:"Careers",href:"/careers"},{label:"Blog",href:"/blog"}],p=({toggleMenu:e,showMenu:n})=>(0,t.jsxs)("button",{type:"button","aria-controls":"mobile-menu","aria-expanded":n,onClick:e,className:(0,r.default)("p-2 rounded-2xl text-muted-foreground hover:text-foreground hover:bg-accent/50 focus:outline-none focus:ring-2 focus:ring-ring"),children:[(0,t.jsx)("span",{className:(0,r.default)("sr-only"),children:"Open menu"}),n?(0,t.jsx)(d.X,{className:"h-6 w-6","aria-hidden":"true"}):(0,t.jsx)(u,{className:"h-6 w-6","aria-hidden":"true"})]}),m=()=>(0,t.jsxs)("div",{id:"mobile-menu",className:(0,r.default)("md:hidden"),children:[(0,t.jsx)("div",{className:(0,r.default)("px-2 pt-2 pb-3 space-y-1 sm:px-3"),children:f.map(e=>(0,t.jsx)("a",{href:e.href,className:(0,r.default)("text-muted-foreground hover:text-foreground hover:bg-accent/50 block px-3 py-2 text-base font-semibold rounded-2xl"),children:e.label},e.label))}),(0,t.jsx)("div",{className:(0,r.default)("pt-4 pb-3 border-t border-border"),children:(0,t.jsx)("div",{className:(0,r.default)("px-2 space-y-1"),children:(0,t.jsx)("a",{href:c.BOOKING_HREF,className:(0,r.default)("block px-3 py-2 text-base font-semibold text-muted-foreground hover:text-foreground hover:bg-accent/50 rounded-2xl"),children:"Book a call"})})})]});e.s(["default",0,()=>{let[e,i]=(0,n.useState)(!1),u=(0,a.usePathname)();return(0,t.jsxs)("nav",{className:(0,r.default)("bg-background"),"aria-label":"Main navigation",children:[(0,t.jsx)("div",{className:(0,r.default)("max-w-7xl mx-auto px-4 sm:px-6 lg:px-8"),children:(0,t.jsxs)("div",{className:(0,r.default)("relative flex items-center justify-between h-24"),children:[(0,t.jsxs)(l.default,{href:"/",className:(0,r.default)("flex shrink-0 gap-2 justify-center items-center group"),"aria-label":"Edvance home",children:[(0,t.jsx)(s,{width:28,height:28,className:"text-foreground transition-transform duration-300 group-hover:scale-110"}),(0,t.jsx)("span",{className:"font-display text-4xl font-medium text-foreground tracking-wider group-hover:text-primary transition-colors duration-300",children:"EDVANCE"})]}),(0,t.jsx)("div",{className:(0,r.default)("hidden md:flex items-baseline gap-1 absolute left-1/2 -translate-x-1/2"),children:f.map(e=>(0,t.jsx)("a",{href:e.href,className:(0,r.default)("relative px-3 py-2 font-semibold transition-colors after:absolute after:left-3 after:right-3 after:-bottom-0.5 after:h-0.5 after:origin-left after:bg-current after:transition-transform hover:after:scale-x-100",u===e.href?"text-foreground after:scale-x-100":"text-muted-foreground hover:text-foreground after:scale-x-0"),"aria-current":u===e.href?"page":void 0,children:e.label},e.label))}),(0,t.jsx)("div",{className:(0,r.default)("hidden md:block"),children:(0,t.jsx)("a",{href:c.BOOKING_HREF,children:(0,t.jsx)(o.default,{primary:!0,children:"Book a call"})})}),(0,t.jsx)("div",{className:(0,r.default)("-mr-2 flex md:hidden"),children:(0,t.jsx)(p,{showMenu:e,toggleMenu:()=>i(!e)})})]})}),e?(0,t.jsx)(m,{}):null]})}],74424)},6154,(e,t,r)=>{"use strict";function n(e,t,r=!1){return t?Object.keys(e).filter(e=>r?!t.includes(e):t.includes(e)).reduce((t,r)=>(t[r]=e[r],t),{}):{}}function a(e,t,r,n){let a=n&&Object.keys(n).length>0?new URL(Object.values(n)[0],e):new URL(e);
15return t&&r&&t.forEach(e=>{r[e]&&a.searchParams.set(e,r[e])}),a.toString()}function o(e,t,r,n,o){var l;if(!t)return`<${e}></${e}>`;let i=(null==(l=t.src)?void 0:l.url)?Object.assign(Object.assign({},t),{src:a(t.src.url,t.src.params,n,o)}):t,s=Object.keys(Object.assign(Object.assign({},i),r)).reduce((e,t)=>{let n=null==r?void 0:r[t],a=i[t],o=null!=n?n:a,l=!0===o?t:`${t}="${o}"`;return o?e+` ${l}`:e},"");return`<${e}${s}></${e}>`}Object.defineProperty(r,"__esModule",{value:!0}),r.formatData=r.createHtml=r.formatUrl=void 0,r.formatUrl=a,r.createHtml=o,r.formatData=function(e,t){var r,l,i,s,u;let d=n(t,null==(r=e.scripts)?void 0:r.reduce((e,t)=>[...e,...Array.isArray(t.params)?t.params:[]],[])),c=n(t,null==(i=null==(l=e.html)?void 0:l.attributes.src)?void 0:i.params),f=n(t,[null==(u=null==(s=e.html)?void 0:s.attributes.src)?void 0:u.slugParam]),p=n(t,[...Object.keys(d),...Object.keys(c),...Object.keys(f)],!0);return Object.assign(Object.assign({},e),{html:e.html?o(e.html.element,e.html.attributes,p,c,f):null,scripts:e.scripts?e.scripts.map(e=>Object.assign(Object.assign({},e),{url:a(e.url,e.params,d)})):null})}},80092,(e,t,r)=>{"use strict";var n=e.e&&e.e.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&0>t.indexOf(n)&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var a=0,n=Object.getOwnPropertySymbols(e);a<n.length;a++)0>t.indexOf(n[a])&&Object.prototype.propertyIsEnumerable.call(e,n[a])&&(r[n[a]]=e[n[a]]);return r},a=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.GoogleAnalytics=void 0;let o=a(e.r(55708)),l=e.r(6154);r.GoogleAnalytics=e=>{var t=n(e,[]);return(0,l.formatData)(o.default,t)}},90057,(e,t,r)=>{"use strict";var n=e.e&&e.e.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&0>t.indexOf(n)&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var a=0,n=Object.getOwnPropertySymbols(e);a<n.length;a++)0>t.indexOf(n[a])&&Object.prototype.propertyIsEnumerable.call(e,n[a])&&(r[n[a]]=e[n[a]]);return r},a=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.GoogleMapsEmbed=void 0;let o=a(e.r(81171)),l=e.r(6154);r.GoogleMapsEmbed=e=>{var t=n(e,[]);return(0,l.formatData)(o.default,t)}},61564,(e,t,r)=>{"use strict";var n=e.e&&e.e.__rest||function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&0>t.indexOf(n)&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var a=0,n=Object.getOwnPropertySymbols(e);a<n.length;a++)0>t.indexOf(n[a])&&Object.prototype.propertyIsEnumerable.call(e,n[a])&&(r[n[a]]=e[n[a]]);return r},a=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.YouTubeEmbed=void 0;let o=a(e.r(61002)),l=e.r(6154);r.YouTubeEmbed=e=>{var t=n(e,[]);return(0,l.formatData)(o.default,t)}},8751,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.YouTubeEmbed=r.GoogleMapsEmbed=r.GoogleAnalytics=void 0;var n=e.r(80092);Object.defineProperty(r,"GoogleAnalytics",{enumerable:!0,get:function(){return n.GoogleAnalytics}});var a=e.r(90057);Object.defineProperty(r,"GoogleMapsEmbed",{enumerable:!0,get:function(){return a.GoogleMapsEmbed}});var o=e.r(61564);Object.defineProperty(r,"YouTubeEmbed",{enumerable:!0,get:function(){return o.YouTubeEmbed}})},77747,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.default=function({html:e,height:t=null,width:r=null,children:o,dataNtpc:l=""}){return(0,a.useEffect)(()=>{l&&performance.mark("mark_feature_usage",{detail:{feature:`next-third-parties-${l}`}})},[l]),(0,n.jsxs)(n.Fragment,{children:[o,e?(0,n.jsx)("div",{style:{height:null!=t?`${t}px`:"auto",width:null!=r?`${r}px`:"auto"},"data-ntpc":l,dangerouslySetInnerHTML:{__html:e}}):null]})};let n=e.r(47539),a=e.r(17335)},7951,(e,t,r)=>{"use strict";
15var n=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.default=function(e){let{apiKey:t,...r}=e,n={...r,key:t},{html:i}=(0,o.GoogleMapsEmbed)(n);return(0,a.jsx)(l.default,{height:n.height||null,width:n.width||null,html:i,dataNtpc:"GoogleMapsEmbed"})};let a=e.r(47539),o=e.r(8751),l=n(e.r(77747))},60063,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={cancelIdleCallback:function(){return l},requestIdleCallback:function(){return o}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o="undefined"!=typeof self&&self.requestIdleCallback&&self.requestIdleCallback.bind(window)||function(e){let t=Date.now();return self.setTimeout(function(){e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})},1)},l="undefined"!=typeof self&&self.cancelIdleCallback&&self.cancelIdleCallback.bind(window)||function(e){return clearTimeout(e)};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},91192,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return v},handleClientScriptLoad:function(){return h},initScriptLoader:function(){return b}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(81258),l=e.r(44066),i=e.r(47539),s=o._(e.r(18597)),u=l._(e.r(17335)),d=e.r(820),c=e.r(90203),f=e.r(60063),p=new Map,m=new Set,g=e=>{let{src:t,id:r,onLoad:n=()=>{},onReady:a=null,dangerouslySetInnerHTML:o,children:l="",strategy:i="afterInteractive",onError:u,stylesheets:d}=e,f=r||t;if(f&&m.has(f))return;if(p.has(t)){m.add(f),p.get(t).then(n,u);return}let g=()=>{a&&a(),m.add(f)},h=document.createElement("script"),b=new Promise((e,t)=>{h.addEventListener("load",function(t){e(),n&&n.call(this,t),g()}),h.addEventListener("error",function(e){t(e)})}).catch(function(e){u&&u(e)});o?(h.innerHTML=o.__html||"",g()):l?(h.textContent="string"==typeof l?l:Array.isArray(l)?l.join(""):"",g()):t&&(h.src=t,p.set(t,b)),(0,c.setAttributesFromProps)(h,e),"worker"===i&&h.setAttribute("type","text/partytown"),h.setAttribute("data-nscript",i),d&&(e=>{if(s.default.preinit)return e.forEach(e=>{s.default.preinit(e,{as:"style"})});if("undefined"!=typeof window){let t=document.head;e.forEach(e=>{let r=document.createElement("link");r.type="text/css",r.rel="stylesheet",r.href=e,t.appendChild(r)})}})(d),document.body.appendChild(h)};function h(e){let{strategy:t="afterInteractive"}=e;"lazyOnload"===t?window.addEventListener("load",()=>{(0,f.requestIdleCallback)(()=>g(e))}):g(e)}function b(e){e.forEach(h),[...document.querySelectorAll('[data-nscript="beforeInteractive"]'),...document.querySelectorAll('[data-nscript="beforePageRender"]')].forEach(e=>{let t=e.id||e.getAttribute("src");m.add(t)})}function y(e){let{id:t,src:r="",onLoad:n=()=>{},onReady:a=null,strategy:o="afterInteractive",onError:l,stylesheets:c,...p}=e,{updateScripts:h,scripts:b,getIsSsr:y,appDir:v,nonce:x}=(0,u.useContext)(d.HeadManagerContext);x=p.nonce||x;let j=(0,u.useRef)(!1);(0,u.useEffect)(()=>{let e=t||r;j.current||(a&&e&&m.has(e)&&a(),j.current=!0)},[a,t,r]);let w=(0,u.useRef)(!1);if((0,u.useEffect)(()=>{if(!w.current){if("afterInteractive"===o)g(e);else"lazyOnload"===o&&("complete"===document.readyState?(0,f.requestIdleCallback)(()=>g(e)):window.addEventListener("load",()=>{(0,f.requestIdleCallback)(()=>g(e))}));w.current=!0}},[e,o]),("beforeInteractive"===o||"worker"===o)&&(h?(b[o]=(b[o]||[]).concat([{id:t,src:r,onLoad:n,onReady:a,onError:l,...p,nonce:x}]),h(b)):y&&y()?m.add(t||r):y&&!y()&&g({...e,nonce:x})),v){if(c&&c.forEach(e=>{s.default.preinit(e,{as:"style"})}),"beforeInteractive"===o)if(!r)return p.dangerouslySetInnerHTML&&(p.children=p.dangerouslySetInnerHTML.__html,delete p.dangerouslySetInnerHTML),(0,i.jsx)("script",{nonce:x,dangerouslySetInnerHTML:{__html:`(self.__next_s=self.__next_s||[]).push(${JSON.stringify([0,{...p,id:t}])})`}});else return s.default.preload(r,p.integrity?{as:"script",integrity:p.integrity,nonce:x,crossOrigin:p.crossOrigin}:{as:"script",nonce:x,crossOrigin:p.crossOrigin}),(0,i.jsx)("script",{nonce:x,dangerouslySetInnerHTML:{__html:`(self.__next_s=self.__next_s||[]).push(${JSON.stringify([r,{...p,id:t}])})`}});"afterInteractive"===o&&r&&s.default.preload(r,p.integrity?{as:"script",integrity:p.integrity,nonce:x,crossOrigin:p.crossOrigin}:{as:"script",nonce:x,crossOrigin:p.crossOrigin})}return null}Object.defineProperty(y,"__nextScript",{value:!0});let v=y;("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esMo
15dule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},41863,(e,t,r)=>{t.exports=e.r(91192)},71629,(e,t,r)=>{"use strict";var n=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.default=function(e){let{html:t,scripts:r,stylesheets:n}=(0,l.YouTubeEmbed)(e);return(0,a.jsx)(i.default,{height:e.height||null,width:e.width||null,html:t,dataNtpc:"YouTubeEmbed",children:null==r?void 0:r.map(e=>(0,a.jsx)(o.default,{src:e.url,strategy:s[e.strategy],stylesheets:n},e.url))})};let a=e.r(47539),o=n(e.r(41863)),l=e.r(8751),i=n(e.r(77747)),s={server:"beforeInteractive",client:"afterInteractive",idle:"lazyOnload",worker:"worker"}},87681,(e,t,r)=>{"use strict";var n=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.sendGTMEvent=void 0,r.GoogleTagManager=function(e){let{gtmId:t,gtmScriptUrl:r,dataLayerName:n="dataLayer",auth:s,preview:u,dataLayer:d,nonce:c}=e;i=n;let f=new URL(r||"https://www.googletagmanager.com/gtm.js");return t&&f.searchParams.set("id",t),"dataLayer"!==n&&f.searchParams.set("l",n),s&&f.searchParams.set("gtm_auth",s),u&&(f.searchParams.set("gtm_preview",u),f.searchParams.set("gtm_cookies_win","x")),(0,o.useEffect)(()=>{performance.mark("mark_feature_usage",{detail:{feature:"next-third-parties-gtm"}})},[]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.default,{id:"_next-gtm-init",dangerouslySetInnerHTML:{__html:`
16      (function(w,l){
17        w[l]=w[l]||[];
18        w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});
19        ${d?`w[l].push(${JSON.stringify(d)})`:""}
20      })(window,'${n}');`},nonce:c}),(0,a.jsx)(l.default,{id:"_next-gtm","data-ntpc":"GTM",src:f.href,nonce:c})]})};let a=e.r(47539),o=e.r(17335),l=n(e.r(41863)),i="dataLayer";r.sendGTMEvent=(e,t)=>{let r=t||i;window[r]=window[r]||[],window[r].push(e)}},49424,(e,t,r)=>{"use strict";let n;var a=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.GoogleAnalytics=function(e){let{gaId:t,debugMode:r,dataLayerName:a="dataLayer",nonce:s}=e;return void 0===n&&(n=a),(0,l.useEffect)(()=>{performance.mark("mark_feature_usage",{detail:{feature:"next-third-parties-ga"}})},[]),(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.default,{id:"_next-ga-init",dangerouslySetInnerHTML:{__html:`
21          window['${a}'] = window['${a}'] || [];
22          function gtag(){window['${a}'].push(arguments);}
23          gtag('js', new Date());
24
25          gtag('config', '${t}' ${r?",{ 'debug_mode': true }":""});`},nonce:s}),(0,o.jsx)(i.default,{id:"_next-ga",src:`https://www.googletagmanager.com/gtag/js?id=${t}`,nonce:s})]})},r.sendGAEvent=function(){void 0===n?console.warn("@next/third-parties: GA has not been initialized"):window[n]?window[n].push(arguments):console.warn(`@next/third-parties: GA dataLayer ${n} does not exist`)};let o=e.r(47539),l=e.r(17335),i=a(e.r(41863))},82862,(e,t,r)=>{"use strict";var n=e.e&&e.e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0}),r.sendGAEvent=r.GoogleAnalytics=r.sendGTMEvent=r.GoogleTagManager=r.YouTubeEmbed=r.GoogleMapsEmbed=void 0;var a=e.r(7951);Object.defineProperty(r,"GoogleMapsEmbed",{enumerable:!0,get:function(){return n(a).default}});var o=e.r(71629);Object.defineProperty(r,"YouTubeEmbed",{enumerable:!0,get:function(){return n(o).default}});var l=e.r(87681);Object.defineProperty(r,"GoogleTagManager",{enumerable:!0,get:function(){return l.GoogleTagManager}}),Object.defineProperty(r,"sendGTMEvent",{enumerable:!0,get:function(){return l.sendGTMEvent}});var i=e.r(49424);Object.defineProperty(r,"GoogleAnalytics",{enumerable:!0,get:function(){return i.GoogleAnalytics}}),Object.defineProperty(r,"sendGAEvent",{enumerable:!0,get:function(){return i.sendGAEvent}})},69344,e=>{"use strict";var t=e.i(1249),r=e.i(47539),n=e.i(82862),a=e.i(37804),o=e.i(17335),l=e.i(94778),i=e.i(58437);let s="cookie-consent",u=t.default.env.NEXT_PUBLIC_GA_ID,d=new Set;function c(e){return d.add(e),window.addEventListener("storage",e),()=>{d.delete(e),window.removeEventListener("storage",e)}}function f(){let e=window.localStorage.getItem(s);return"granted"===e||"denied"===e?e:null}function p(e){for(let t of(window.localStorage.setItem(s,e),d))t()}let m=()=>null,g=()=>()=>{},h=()=>!0,b=()=>!1,y="--consent-banner-h";function v(){let e=(0,o.useSyncExternalStore)(c,f,m),t=(0,o.useSyncExternalStore)(g,h,b),s=(0,o.useRef)(null),d=!!u&&t&&null===e;return((0,o.useEffect)(()=>{let e=document.documentElement,t=s.current;if(!t)return void e.style.setProperty(y,"0px");let r=new ResizeObserver(()=>{e.style.setProperty(y,`${t.getBoundingClientRect().height+16}px`)});return r.observe(t),()=>{r.disconnect(),e.style.setProperty(y,"0px")}},[d]),u)?(0,r.jsxs)(r.Fragment,{children:["granted"===e&&(0,r.jsx)(n.GoogleAnalytics,{gaId:u}),d&&(0,r.jsxs)("div",{ref:s,role:"dialog","aria-label":"Cookie consent",className:"fixed inset-x-4 bottom-4 z-50 mx-auto max-w-2xl rounded-2xl border border-border bg-background p-5 shadow-lg sm:inset-x-auto sm:right-4 sm:left-auto sm:w-full",children:[(0,r.jsx)(i.Body,{className:"text-foreground",children:"We use Google Analytics to understand how the site is used. No anal
25ytics cookies are set unless you accept."}),(0,r.jsxs)(i.Caption,{className:"mt-1",children:["See our"," ",(0,r.jsx)(a.default,{href:"/privacy",className:"underline underline-offset-2 hover:text-foreground",children:"Privacy Policy"})," ","for details."]}),(0,r.jsxs)("div",{className:"mt-4 flex flex-wrap gap-3",children:[(0,r.jsx)(l.default,{primary:!0,onClick:()=>p("granted"),children:"Accept"}),(0,r.jsx)(l.default,{onClick:()=>p("denied"),children:"Decline"})]})]})]}):null}e.s(["default",()=>v])},99122,e=>{"use strict";var t=e.i(47539),r=e.i(7284),n=e.i(74073),a=e.i(37804),o=e.i(17335),l=e.i(7271);let i=(0,l.default)("calendar-days",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}],["path",{d:"M8 14h.01",key:"6423bh"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 18h.01",key:"lrp35t"}],["path",{d:"M12 18h.01",key:"mhygvu"}],["path",{d:"M16 18h.01",key:"kzsmim"}]]),s=(0,l.default)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]),u=(0,l.default)("message-circle",[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]]);var d=e.i(25091),c=e.i(7617);let f="contact-floater-panel",p=[{href:c.BOOKING_HREF,label:"Book a call",hint:"15 minutes",Icon:i,external:!1},{href:`mailto:${c.CONTACT_EMAIL}`,label:"Email us",hint:c.CONTACT_EMAIL,Icon:s,external:!1},{href:c.WHATSAPP_URL,label:"WhatsApp",hint:"Fastest reply",Icon:u,external:!0}];e.s(["default",0,()=>{let[e,l]=(0,o.useState)(!1),i=(0,n.usePathname)(),s=(0,o.useRef)(null),c=(0,o.useRef)(null);(0,o.useEffect)(()=>{if(!e)return;let t=e=>{"Escape"===e.key&&(l(!1),c.current?.focus())},r=e=>{s.current?.contains(e.target)||l(!1)};return document.addEventListener("keydown",t),document.addEventListener("pointerdown",r),()=>{document.removeEventListener("keydown",t),document.removeEventListener("pointerdown",r)}},[e]);let[m,g]=(0,o.useState)(i);return(m!==i&&(g(i),l(!1)),"/contact"===i)?null:(0,t.jsxs)("div",{ref:s,className:(0,r.default)("fixed right-4 z-40 flex flex-col items-end gap-3","bottom-[calc(var(--consent-banner-h,0px)+1rem)]","transition-[bottom] duration-300"),children:[(0,t.jsx)("div",{id:f,role:"group","aria-label":"Contact options",hidden:!e,className:(0,r.default)("flex flex-col items-end gap-2"),children:p.map(({href:e,label:n,hint:o,Icon:l,external:i},s)=>{let u=(0,r.default)("group flex items-center gap-3 rounded-full border border-border bg-background py-2.5 pl-4 pr-3 shadow-lg","transition-colors hover:border-primary/40 hover:bg-muted","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","motion-safe:animate-fade-in"),d={animationDelay:`${40*s}ms`},c=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("span",{className:"flex flex-col text-right",children:[(0,t.jsx)("span",{className:"text-sm font-semibold text-foreground",children:n}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:o})]}),(0,t.jsx)("span",{className:(0,r.default)("flex h-9 w-9 shrink-0 items-center justify-center rounded-full bg-muted text-foreground","transition-colors group-hover:bg-primary group-hover:text-primary-foreground"),children:(0,t.jsx)(l,{className:"h-4 w-4","aria-hidden":"true"})})]});return i?(0,t.jsx)("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:u,style:d,children:c},n):(0,t.jsx)(a.default,{href:e,className:u,style:d,children:c},n)})}),(0,t.jsxs)("button",{ref:c,type:"button",onClick:()=>l(e=>!e),"aria-expanded":e,"aria-controls":f,className:(0,r.default)("flex h-14 items-center justify-center gap-2 rounded-full bg-primary px-4 text-primary-foreground shadow-lg sm:h-auto sm:py-3.5 sm:pl-5 sm:pr-6","transition-colors hover:bg-[var(--primary-hover)] active:bg-[var(--primary-active)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",!e&&"w-14 sm:w-auto"),children:[e?(0,t.jsx)(d.X,{className:"h-6 w-6 sm:h-5 sm:w-5","aria-hidden":"true"}):(0,t.jsx)(u,{className:"h-6 w-6 sm:h-5 sm:w-5","aria-hidden":"true"}),(0,t.jsx)("span",{className:(0,r.default)("font-sans font-semibold","hidden sm:inline"),children:e?"Close"
25:"Contact us"}),(0,t.jsx)("span",{className:"sr-only sm:hidden",children:e?"Close contact options":"Contact us"})]})]})}],99122)}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.