PageSourceSearch

https://pikobytes.de/_next/static/chunks/3fbeijtwbspl_.js

js pikobytes.de collected 2026-10-06 09:07:43 UTC 112,767 bytes, 286 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,78635,e=>{"use strict";let t=e.i(71645).createContext({});e.s(["default",0,t])},10874,e=>{"use strict";e.i(47167);var t=e.i(71645),r=e.i(7670),n=e.i(1447),i=e.i(55323),o=e.i(78564),a=e.i(78635),l=e.i(64719),s=e.i(69072);function u(e){return(0,s.default)("MuiList",e)}(0,l.default)("MuiList",["root","padding","dense","subheader"]);var c=e.i(43476);let d=(0,i.styled)("ul",{name:"MuiList",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.root,!r.disablePadding&&t.padding,r.dense&&t.dense,r.subheader&&t.subheader]}})({listStyle:"none",margin:0,padding:0,position:"relative",variants:[{props:({ownerState:e})=>!e.disablePadding,style:{paddingTop:8,paddingBottom:8}},{props:({ownerState:e})=>e.subheader,style:{paddingTop:0,isolation:"isolate"}}]}),m=t.forwardRef(function(e,i){let l=(0,o.useDefaultProps)({props:e,name:"MuiList"}),{children:s,className:m,component:f="ul",dense:h=!1,disablePadding:p=!1,subheader:b,...x}=l,g=t.useMemo(()=>({dense:h}),[h]),y={...l,component:f,dense:h,disablePadding:p},v=(e=>{let{classes:t,disablePadding:r,dense:i,subheader:o}=e;return(0,n.default)({root:["root",!r&&"padding",i&&"dense",o&&"subheader"]},u,t)})(y);return(0,c.jsx)(a.default.Provider,{value:g,children:(0,c.jsxs)(d,{as:f,className:(0,r.default)(v.root,m),ref:i,ownerState:y,...x,children:[b,s]})})});e.s(["default",0,m],10874)},28754,14322,3404,87023,75822,e=>{"use strict";e.i(47167);var t=e.i(71645),r=e.i(7670),n=e.i(1447),i=e.i(55323),o=e.i(51221),a=e.i(78564),l=e.i(24603);let s=function(e,t,r){return void 0===e||"string"==typeof e?t:{...t,ownerState:{...t.ownerState,...r}}};e.s(["default",0,s],14322);let u=function(e,t,r){return"function"==typeof e?e(t,r):e};e.s(["default",0,u],3404);let c=function(e){if(void 0===e)return{};let t={};for(let r of Object.keys(e))(function(e,t){let r=e.charCodeAt(2);return"o"===e[0]&&"n"===e[1]&&r>=65&&r<=90&&"function"==typeof t})(r,e[r])&&(t[r]=e[r]);return t},d=function(e){if(void 0===e)return{};let t={};return Object.keys(e).filter(t=>!(t.match(/^on[A-Z]/)&&"function"==typeof e[t])).forEach(r=>{t[r]=e[r]}),t},m=function(e){let{getSlotProps:t,additionalProps:n,externalSlotProps:i,externalForwardedProps:o,className:a}=e;if(!t){let e=(0,r.default)(n?.className,a,o?.className,i?.className),t={...n?.style,...o?.style,...i?.style},l={...n,...o,...i};return e.length>0&&(l.className=e),Object.keys(t).length>0&&(l.style=t),{props:l,internalRef:void 0}}let l=c({...o,...i}),s=d(i),u=d(o),m=t(l),f=(0,r.default)(m?.className,n?.className,a,o?.className,i?.className),h={...m?.style,...n?.style,...o?.style,...i?.style},p={...m,...n,...u,...s};return f.length>0&&(p.className=f),Object.keys(h).length>0&&(p.style=h),{props:p,internalRef:m.ref}};function f(e,t){let{className:r,elementType:n,ownerState:i,externalForwardedProps:o,internalForwardedProps:a,shouldForwardComponentProp:c=!1,...d}=t,{component:f,slots:h={[e]:void 0},slotProps:p={[e]:void 0},...b}=o,x=h[e]||n,g=u(p[e],i),{props:{component:y,...v},internalRef:w}=m({className:r,...d,externalForwardedProps:"root"===e?b:void 0,externalSlotProps:g}),F=(0,l.default)(w,g?.ref,t.ref),L="root"===e?y||f:y,E=s(x,{..."root"===e&&!f&&!h[e]&&a,..."root"!==e&&!h[e]&&a,...v,...L&&!c&&{as:L},...L&&c&&{component:L},ref:F},i);return[x,E]}e.s(["default",0,m],87023),e.s(["default",0,f],75822);var h=e.i(78635),p=e.i(64719),b=e.i(69072);function x(e){return(0,b.default)("MuiListItem",e)}(0,p.default)("MuiListItem",["root","dense","alignItemsFlexStart","divider","gutters","padding","secondaryAction"]);let g=(0,p.default)("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]);function y(e){return(0,b.default)("MuiListItemSecondaryAction",e)}(0,p.default)("MuiListItemSecondaryAction",["root","disableGutters"]);var v=e.i(43476);let w=(0,i.styled)("div",{name:"MuiListItemSecondaryAction",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.root,r.disableGutters&&t.disableGutters]}})({position:"absolute",right:16,top:"50%",transform:"translateY(-50%)",variants:[{props:({ownerState:e})=>e.disableGutters,style:{right:0}}]}),F=t.forwardRef(function(e,i){let o=(0,a.useDefaultProps)({props:e,name:"MuiListItemSecondaryAction"}),{className:l,component:s,...u}=o,c=t.useContext(h.default),d={...o,disableGutters:c.disableGutters},m=(e=>{let{disableGutters:t,classes:r}=e;return(0,n.default)({root:["root",t&&"disableGutters"]},y,r)})(d);return(0,v.jsx)(w,{as:s,className:(0,r.default)(m.root,l),ownerState:d,ref:i,...u})});F.muiName="ListItemSecondaryAction";var L=e.i(41322);let E=(e,t)=>{let{ownerState:r}=e;return[t.root,r.dense&&t.dense,"flex-start"===r.alignItems&&t.alignItemsFlexStart,r.divider&&t.divider,!r.disableGutters&&t.gutters,!r.disablePadding&&t.padding]},A=(0,i.styled)("div",{name:"MuiListItem",slot:"Root",overridesResolver:E})((0,o.default)(({theme:e})=>({display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",width:"100%",boxSizing:"border-box",textAlign:"left",variants:[{props:({ownerState:e})=>!e.disablePadding,style:{paddingTop:8,paddingBottom:8}},{props:({ownerState:e})=>!e.disablePadding&&e.dense,style:{paddingTop:4,paddingBottom:4}},{props:({ownerState:e})=>!e.disablePadding&&!e.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:e})=>!e.disablePadding&&!!e.secondaryAction,style:{paddingRight:48}},{props:({ownerState:e})=>!!e.secondaryAction,style:{[`& > .${g.root}`]:{paddingRight:48}}},{props:{alignItems:"flex-start"},style:{alignItems:"flex-start"}},{props:({ownerState:e})=>e.divider,style:{borderBottom:`1px solid ${(e.vars||e).palette.divider}`,backgroundClip:"padding-box"}},{props:({ownerState:e})=>e.button,style:{...(0,L.getTransitionStyles)(e,"background-color",{duration:e.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}}}]}))),P=(0,i.styled)(F,{name:"MuiListItem",slot:"secondaryAction"})({}),k=t.forwardRef(function(e,i){let o=(0,a.useDefaultProps)({props:e,name:"MuiListItem"}),{alignItems:l="center",children:s,className:u,component:c="li",dense:d=!1,disableGutters:m=!1,disablePadding:p=!1,divider:b=!1,secondaryAction:g,slotProps:y={},slots:w={},...F}=o,L=t.useContext(h.default),E=t.useMemo(()=>({dense:d||L.dense||!1,alignItems:l,disableGutters:m}),[l,L.dense,d,m]),k={...o,alignItems:l,dense:E.dense,disableGutters:m,disablePadding:p,divider:b,secondaryAction:g},M=(e=>{let{alignItems:t,classes:r,dense:i,disableGutters:o,disablePadding:a,divider:l}=e;return(0,n.default)({root:["root",i&&"dense",!o&&"gutters",!a&&"padding",l&&"divider","flex-start"===t&&"alignItemsFlexStart"],secondaryAction:["secondaryAction"]},x,r)})(k),R={slots:w,slotProps:y},[I,S]=f("root",{ref:i,elementType:A,externalForwardedProps:{component:c,...R,...F},ownerState:k,className:(0,r.default)(M.root,u)}),[T,_]=f("secondaryAction",{elementType:P,shouldForwardComponentProp:!0,externalForwardedProps:R,ownerState:k,className:M.secondaryAction});return(0,v.jsx)(h.default.Provider,{value:E,children:(0,v.jsxs)(I,{...S,children:[s,g&&(0,v.jsx)(T,{..._,children:g})]})})});e.s(["ListItemRoot",0,A,"default",0,k,"overridesResolver",0,E],28754)},36222,e=>{"use strict";e.i(47167);var t=e.i(71645),r=e.i(7670),n=e.i(1447),i=e.i(55323),o=e.i(51221),a=e.i(78564),l=e.i(64719),s=e.i(69072);function u(e){return(0,s.default)("MuiListItemIcon",e)}(0,l.default)("MuiListItemIcon",["root","alignItemsFlexStart"]);var c=e.i(78635),d=e.i(43476);let m=(0,i.styled)("div",{name:"MuiListItemIcon",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.root,"flex-start"===r.alignItems&&t.alignItemsFlexStart]}})((0,o.default)(({theme:e})=>({minWidth:e.spacing(4.5),color:(e.vars||e).palette.action.active,flexShrink:0,display:"inline-flex",variants:[{props:{alignItems:"flex-start"},style:{marginTop:8}}]}))),f=t.forwardRef(function(e,i){let o=(0,a.useDefaultProps)({props:e,name:"MuiListItemIcon"}),{className:l,...s}=o,f=t.useContext(c.default),h={...o,alignItems:f.alignItems},p=(e=>{let{alignItems:t,classes:r}=e;return(0,n.default)({root:["root","flex-start"===t&&"alignItemsFlexStart"]},u,r)})(h);return(0,d.jsx)(m,{className:(0,r.default)(p.root,l),ownerState:h,ref:i,...s})});e.s(["default",0,f],36222)},44455,16164,38823,e=>{"use strict";var t=e.i(10874);e.s(["List",()=>t.default],44455);var r=e.i(28754);e.s(["ListItem",()=>r.default],16164);var n=e.i(36222);e.s(["ListItemIcon",()=>n.default],38823)},33568,49582,45085,e=>{"use strict";let t,r,n,i,o,a,l;var s=e.i(43476),u=e.i(52569),c=e.i(89088),d=e.i(18925),m=e.i(78774);let f=({children:e,shortTitle:t,title:r})=>(0,s.jsxs)(u.Box,{className:"title-container",children:[t&&(0,s.jsx)(m.Typography,{className:"title title-short",variant:"pageTitle",component:"h1",children:t}),(0,s.jsx)(m.Typography,{className:"title",variant:"pageTitle",component:"h1",children:r}),e]});var h=e.i(3351);let p=Float32Array;function b(e,t,r){let n=new p(3);return e&&(n[0]=e),t&&(n[1]=t),r&&(n[2]=r),n}function x(e,t,r){r=r||new p(3);let n=e[2]*t[0]-e[0]*t[2],i=e[0]*t[1]-e[1]*t[0];return r[0]=e[1]*t[2]-e[2]*t[1],r[1]=n,r[2]=i,r}function g(e,t){t=t||new p(3);let r=Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);return r>1e-5?(t[0]=e[0]/r,t[1]=e[1]/r,t[2]=e[2]/r):(t[0]=0,t[1]=0,t[2]=0),t}let y=Float32Array;function v(e,t){return(t=t||new y(16))[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function w(e){return(e=e||new y(16))[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10
1]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function F(e,t){t=t||new y(16);let r=e[0],n=e[1],i=e[2],o=e[3],a=e[4],l=e[5],s=e[6],u=e[7],c=e[8],d=e[9],m=e[10],f=e[11],h=e[12],p=e[13],b=e[14],x=e[15],g=m*x,v=b*f,w=s*x,F=b*u,L=s*f,E=m*u,A=i*x,P=b*o,k=i*f,M=m*o,R=i*u,I=s*o,S=c*p,T=h*d,_=a*p,C=h*l,z=a*d,j=c*l,N=r*p,D=h*n,O=r*d,B=c*n,U=r*l,W=a*n,H=g*l+F*d+L*p-(v*l+w*d+E*p),$=v*n+A*d+M*p-(g*n+P*d+k*p),G=w*n+P*l+R*p-(F*n+A*l+I*p),V=E*n+k*l+I*d-(L*n+M*l+R*d),Y=1/(r*H+a*$+c*G+h*V);return t[0]=Y*H,t[1]=Y*$,t[2]=Y*G,t[3]=Y*V,t[4]=Y*(v*a+w*c+E*h-(g*a+F*c+L*h)),t[5]=Y*(g*r+P*c+k*h-(v*r+A*c+M*h)),t[6]=Y*(F*r+A*a+I*h-(w*r+P*a+R*h)),t[7]=Y*(L*r+M*a+R*c-(E*r+k*a+I*c)),t[8]=Y*(S*u+C*f+z*x-(T*u+_*f+j*x)),t[9]=Y*(T*o+N*f+B*x-(S*o+D*f+O*x)),t[10]=Y*(_*o+D*u+U*x-(C*o+N*u+W*x)),t[11]=Y*(j*o+O*u+W*f-(z*o+B*u+U*f)),t[12]=Y*(_*m+j*b+T*s-(z*b+S*s+C*m)),t[13]=Y*(O*b+S*i+D*m-(N*m+B*b+T*i)),t[14]=Y*(N*s+W*b+C*i-(U*b+_*i+D*s)),t[15]=Y*(U*m+z*i+B*s-(O*s+W*m+j*i)),t}function L(e,t,r){r=r||b();let n=t[0],i=t[1],o=t[2],a=n*e[3]+i*e[7]+o*e[11]+e[15];return r[0]=(n*e[0]+i*e[4]+o*e[8]+e[12])/a,r[1]=(n*e[1]+i*e[5]+o*e[9]+e[13])/a,r[2]=(n*e[2]+i*e[6]+o*e[10]+e[14])/a,r}function E(e,t,r){r=r||b();let n=t[0],i=t[1],o=t[2];return r[0]=n*e[0]+i*e[4]+o*e[8],r[1]=n*e[1]+i*e[5]+o*e[9],r[2]=n*e[2]+i*e[6]+o*e[10],r}var A=Object.freeze({__proto__:null,axisRotate:function(e,t,r,n){n=n||new y(16);let i=t[0],o=t[1],a=t[2],l=Math.sqrt(i*i+o*o+a*a),s=(i/=l)*i,u=(o/=l)*o,c=(a/=l)*a,d=Math.cos(r),m=Math.sin(r),f=1-d,h=s+(1-s)*d,p=i*o*f+a*m,b=i*a*f-o*m,x=i*o*f-a*m,g=u+(1-u)*d,v=o*a*f+i*m,w=i*a*f+o*m,F=o*a*f-i*m,L=c+(1-c)*d,E=e[0],A=e[1],P=e[2],k=e[3],M=e[4],R=e[5],I=e[6],S=e[7],T=e[8],_=e[9],C=e[10],z=e[11];return n[0]=h*E+p*M+b*T,n[1]=h*A+p*R+b*_,n[2]=h*P+p*I+b*C,n[3]=h*k+p*S+b*z,n[4]=x*E+g*M+v*T,n[5]=x*A+g*R+v*_,n[6]=x*P+g*I+v*C,n[7]=x*k+g*S+v*z,n[8]=w*E+F*M+L*T,n[9]=w*A+F*R+L*_,n[10]=w*P+F*I+L*C,n[11]=w*k+F*S+L*z,e!==n&&(n[12]=e[12],n[13]=e[13],n[14]=e[14],n[15]=e[15]),n},axisRotation:function(e,t,r){r=r||new y(16);let n=e[0],i=e[1],o=e[2],a=Math.sqrt(n*n+i*i+o*o),l=(n/=a)*n,s=(i/=a)*i,u=(o/=a)*o,c=Math.cos(t),d=Math.sin(t),m=1-c;return r[0]=l+(1-l)*c,r[1]=n*i*m+o*d,r[2]=n*o*m-i*d,r[3]=0,r[4]=n*i*m-o*d,r[5]=s+(1-s)*c,r[6]=i*o*m+n*d,r[7]=0,r[8]=n*o*m+i*d,r[9]=i*o*m-n*d,r[10]=u+(1-u)*c,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r},copy:v,create:function(){return new y(16).fill(0)},frustum:function(e,t,r,n,i,o,a){a=a||new y(16);let l=t-e,s=n-r,u=i-o;return a[0]=2*i/l,a[1]=0,a[2]=0,a[3]=0,a[4]=0,a[5]=2*i/s,a[6]=0,a[7]=0,a[8]=(e+t)/l,a[9]=(n+r)/s,a[10]=o/u,a[11]=-1,a[12]=0,a[13]=0,a[14]=i*o/u,a[15]=0,a},getAxis:function(e,t,r){r=r||b();let n=4*t;return r[0]=e[n+0],r[1]=e[n+1],r[2]=e[n+2],r},getTranslation:function(e,t){return(t=t||b())[0]=e[12],t[1]=e[13],t[2]=e[14],t},identity:w,inverse:F,lookAt:function(e,i,o,a){var l;return a=a||new y(16),t=t||b(),r=r||b(),g(((l=(l=n=n||b())||new p(3))[0]=e[0]-i[0],l[1]=e[1]-i[1],l[2]=e[2]-i[2],l),n),g(x(o,n,t),t),g(x(n,t,r),r),a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=0,a[4]=r[0],a[5]=r[1],a[6]=r[2],a[7]=0,a[8]=n[0],a[9]=n[1],a[10]=n[2],a[11]=0,a[12]=e[0],a[13]=e[1],a[14]=e[2],a[15]=1,a},multiply:function(e,t,r){r=r||new y(16);let n=e[0],i=e[1],o=e[2],a=e[3],l=e[4],s=e[5],u=e[6],c=e[7],d=e[8],m=e[9],f=e[10],h=e[11],p=e[12],b=e[13],x=e[14],g=e[15],v=t[0],w=t[1],F=t[2],L=t[3],E=t[4],A=t[5],P=t[6],k=t[7],M=t[8],R=t[9],I=t[10],S=t[11],T=t[12],_=t[13],C=t[14],z=t[15];return r[0]=n*v+l*w+d*F+p*L,r[1]=i*v+s*w+m*F+b*L,r[2]=o*v+u*w+f*F+x*L,r[3]=a*v+c*w+h*F+g*L,r[4]=n*E+l*A+d*P+p*k,r[5]=i*E+s*A+m*P+b*k,r[6]=o*E+u*A+f*P+x*k,r[7]=a*E+c*A+h*P+g*k,r[8]=n*M+l*R+d*I+p*S,r[9]=i*M+s*R+m*I+b*S,r[10]=o*M+u*R+f*I+x*S,r[11]=a*M+c*R+h*I+g*S,r[12]=n*T+l*_+d*C+p*z,r[13]=i*T+s*_+m*C+b*z,r[14]=o*T+u*_+f*C+x*z,r[15]=a*T+c*_+h*C+g*z,r},negate:function(e,t){return(t=t||new y(16))[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t[4]=-e[4],t[5]=-e[5],t[6]=-e[6],t[7]=-e[7],t[8]=-e[8],t[9]=-e[9],t[10]=-e[10],t[11]=-e[11],t[12]=-e[12],t[13]=-e[13],t[14]=-e[14],t[15]=-e[15],t},ortho:function(e,t,r,n,i,o,a){return(a=a||new y(16))[0]=2/(t-e),a[1]=0,a[2]=0,a[3]=0,a[4]=0,a[5]=2/(n-r),a[6]=0,a[7]=0,a[8]=0,a[9]=0,a[10]=2/(i-o),a[11]=0,a[12]=(t+e)/(e-t),a[13]=(n+r)/(r-n),a[14]=(o+i)/(i-o),a[15]=1,a},perspective:function(e,t,r,n,i){i=i||new y(16);let o=Math.tan(.5*Math.PI-.5*e),a=1/(r-n);return i[0]=o/t,i[1]=0,i[2]=0,i[3]=0,i[4]=0,i[5]=o,i[6]=0,i[7]=0,i[8]=0,i[9]=0,i[10]=(r+n)*a,i[11]=-1,i[12]=0,i[13]=0,i[14]=r*n*a*2,i[15]=0,i},rotateX:function(e,t,r){r=r||new y(16);let n=e[4],i=e[5],o=e[6],a=e[7],l=e[8],s=e[9],u=e[10],c=e[11],d=Math.cos(t),m=Math.sin(t);return r[4]=d*n+m*l,r[5]=d*i+m*s,r[6]=d*o+m*u,r[7]=d*a+m*c,r[8]=d*l-m*n,r[9]=d*s-m*i,r[10]=d*u-m*o,r[11]=d*c-m*a,e!==r&&(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r},rotateY:function(e,t,r){r=r||new y(16);let n=e[0],i=e[1],o=e[2],a=e[3],l=e[8],s=e[9],u=e[10],c=e[11],d=Math.cos(t),m=Math.sin(t);return r[0]=d*n-m*l,r[1]=d*i-m*s,r[2]=d*o-m*u,r[3]=d*a-m*c,r[8]=d*l+m*n,r[9]=d*s+m*i,r[10]=d*u+m*o,r[11]=d*c+m*a,e!==r&&(r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r},rotateZ:function(e,t,r){r=r||new y(16);let n=e[0],i=e[1],o=e[2],a=e[3],l=e[4],s=e[5],u=e[6],c=e[7],d=Math.cos(t),m=Math.sin(t);return r[0]=d*n+m*l,r[1]=d*i+m*s,r[2]=d*o+m*u,r[3]=d*a+m*c,r[4]=d*l-m*n,r[5]=d*s-m*i,r[6]=d*u-m*o,r[7]=d*c-m*a,e!==r&&(r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r},rotationX:function(e,t){t=t||new y(16);let r=Math.cos(e),n=Math.sin(e);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},rotationY:function(e,t){t=t||new y(16);let r=Math.cos(e),n=Math.sin(e);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},rotationZ:function(e,t){t=t||new y(16);let r=Math.cos(e),n=Math.sin(e);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},scale:function(e,t,r){r=r||new y(16);let n=t[0],i=t[1],o=t[2];return r[0]=n*e[0],r[1]=n*e[1],r[2]=n*e[2],r[3]=n*e[3],r[4]=i*e[4],r[5]=i*e[5],r[6]=i*e[6],r[7]=i*e[7],r[8]=o*e[8],r[9]=o*e[9],r[10]=o*e[10],r[11]=o*e[11],e!==r&&(r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r},scaling:function(e,t){return(t=t||new y(16))[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},setAxis:function(e,t,r,n){n!==e&&(n=v(e,n));let i=4*r;return n[i+0]=t[0],n[i+1]=t[1],n[i+2]=t[2],n},setDefaultType:function(e){let t=y;return y=e,t},setTranslation:function(e,t,r){return e!==(r=r||w())&&(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11]),r[12]=t[0],r[13]=t[1],r[14]=t[2],r[15]=1,r},transformDirection:E,transformNormal:function(e,t,r){r=r||b();let n=F(e),i=t[0],o=t[1],a=t[2];return r[0]=i*n[0]+o*n[1]+a*n[2],r[1]=i*n[4]+o*n[5]+a*n[6],r[2]=i*n[8]+o*n[9]+a*n[10],r},transformPoint:L,translate:function(e,t,r){r=r||new y(16);let n=t[0],i=t[1],o=t[2],a=e[0],l=e[1],s=e[2],u=e[3],c=e[4],d=e[5],m=e[6],f=e[7],h=e[8],p=e[9],b=e[10],x=e[11],g=e[12],v=e[13],w=e[14],F=e[15];return e!==r&&(r[0]=a,r[1]=l,r[2]=s,r[3]=u,r[4]=c,r[5]=d,r[6]=m,r[7]=f,r[8]=h,r[9]=p,r[10]=b,r[11]=x),r[12]=a*n+c*i+h*o+g,r[13]=l*n+d*i+p*o+v,r[14]=s*n+m*i+b*o+w,r[15]=u*n+f*i+x*o+F,r},translation:function(e,t){return(t=t||new y(16))[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=e[0],t[13]=e[1],t[14]=e[2],t[15]=1,t},transpose:function(e,t){if((t=t||new y(16))===e){let r;return r=e[1],e[1]=e[4],e[4]=r,r=e[2],e[2]=e[8],e[8]=r,r=e[3],e[3]=e[12],e[12]=r,r=e[6],e[6]=e[9],e[9]=r,r=e[7],e[7]=e[13],e[13]=r,r=e[11],e[11]=e[14],e[14]=r,t}let r=e[0],n=e[1],i=e[2],o=e[3],a=e[4],l=e[5],s=e[6],u=e[7],c=e[8],d=e[9],m=e[10],f=e[11],h=e[12],p=e[13],b=e[14],x=e[15];return t[0]=r,t[1]=a,t[2]=c,t[3]=h,t[4]=n,t[5]=l,t[6]=d,t[7]=p,t[8]=i,t[9]=s,t[10]=m,t[11]=b,t[12]=o,t[13]=u,t[14]=f,t[15]=x,t}});let P={};function k(e){if(e instanceof Int8Array)return 5120;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)return 5121;if(e instanceof Int16Array)return 5122;if(e instanceof Uint16Array)return 5123;if(e instanceof Int32Array)return 5124;if(e instanceof Uint32Array)return 5125;if(e instanceof Float32Array)return 5126;throw Error("unsupported typed array type")}function M(e){if(e===Int8Array)return 5120;if(e===Uint8Array||e===Uint8ClampedArray)return 5121;if(e===Int16Array)return 5122;if(e===Uint16Array)return 5123;if(e===Int32Array)return 5124;if(e===Uint32Array)return 5125;if(e===Float32Array)return 5126;throw Error("unsupported typed array type")}function R(e){let t=P[e];if(!t)throw Error("unknown gl type");return t}P[5120]=Int8Array,P[5121]=Uint8Array,P[5122]=Int16Array,P[5123]=Uint16Array,P[5124]=Int32Array,P[5125]=Uint32Array,P[5126]=Float32Array,P[32819]=Uint16Array,P[32820]=Uint16Array,P[33635]=Uint16Array,P[5131]=Uint16Array,P[33640]=Uint32Array,P[35899]=Uint32Array,P[35902]=Uint32Array,P[36269]=Uint32Array,P[34042]=Uint32Array;let I="u">typeof SharedArrayBuffer?function(e){return e&&e.buffer&&(e.buffer instanceof ArrayBuffer||e.buffer instanceof SharedArrayBuffer)}:function(e){return e&&e.buffer&&e.buffer instanceof ArrayBuffer};function S(...e){console.error(...e)}let T=new Map;function _(e,t){if(!e||"object"!=typeof e)return!1;let r=T.get(t);r||(r=new WeakMap,T.set(t,r));let n=r.get(e);if(void 0===n){let i=Object.prototype.toString.call(e);n=i.substring(8,i.length-1)===t,r.set(e,n)}return n}function C(e,t){return"u">typeof WebGLTexture&&_(t,"WebGLTexture")}let z="";function j(e,t,r,n){var i,o,a,l,s;if("u">typeof WebGLBuffer&&_(t,"WebGLBuffer"))return t;r=r||34962;let u=e.createBuffer();return i=e,o=r,a=u,l=t,s=n,i.bindBuffer(o,a),i.bufferData(o,l,s||35044),u}function N(e){return"indices"===e}function D(e){return e.length?e:e.data}let O=/coord|texture/i,B=/color|colour/i;function U(e,t,r){return e.numComponents||e.size||function(e,t){let r;if(t%(r=O.test(e)?2:B.test(e)?4:3)>0)throw Error(`Can not guess numComponents for attribute '${e}'. Tried ${r} but ${t} values is not evenly divisible by ${r}. You should specify it.`);return r}(t,r||D(e).length)}function W(e,t){if(I(e))return e;if(I(e.data))return e.data;Array.isArray(e)&&(e={data:e});let r=e.type?H(e.type):void 0;return r||(r=N(t)?Uint16Array:Float32Array),new r(e.data)}function H(e){return"number"==typeof e?R(e):e||Float32Array}function $(e,t){var r;return{buffer:t.buffer,numValues:24,type:"number"==typeof(r=t.type)?r:r?M(r):5126,arrayType:H(t.type)}}function G(e,t){let r=t.data||t,n=H(t.type),i=r*n.BYTES_PER_ELEMENT,o=e.createBuffer();return e.bindBuffer(34962,o),e.bufferData(34962,i,t.drawType||35044),{buffer:o,num
1Values:r,type:M(n),arrayType:n}}function V(e,t,r){let n=W(t,r);return{arrayType:n.constructor,buffer:j(e,n,void 0,t.drawType),type:k(n),numValues:0}}let Y=["position","positions","a_position"];function q(e,t,r){let n,i=(n={},Object.keys(t).forEach(function(r){if(!N(r)){let i=t[r],o=i.attrib||i.name||i.attribName||z+r;if(i.value){if(!Array.isArray(i.value)&&!I(i.value))throw Error("array.value is not array or typedarray");n[o]={value:i.value}}else{let{buffer:t,type:a,numValues:l,arrayType:s}=(i.buffer&&i.buffer instanceof WebGLBuffer?$:"number"==typeof i||"number"==typeof i.data?G:V)(e,i,r),u=void 0!==i.normalize?i.normalize:s===Int8Array||s===Uint8Array,c=U(i,r,l);n[o]={buffer:t,numComponents:c,type:a,normalize:u,stride:i.stride||0,offset:i.offset||0,divisor:void 0===i.divisor?void 0:i.divisor,drawType:i.drawType}}}}),e.bindBuffer(34962,null),n),o=Object.assign({},r||{});o.attribs=Object.assign({},r?r.attribs:{},i);let a=t.indices;if(a){let t=W(a,"indices");o.indices=j(e,t,34963),o.numElements=t.length,o.elementType=k(t)}else o.numElements||(o.numElements=function(e,t){var r;let n,i;for(i=0;i<Y.length&&!((n=Y[i])in t)&&!((n=z+n)in t);++i);i===Y.length&&(n=Object.keys(t)[0]);let o=t[n];if(!o.buffer)return 1;e.bindBuffer(34962,o.buffer);let a=e.getBufferParameter(34962,34660);e.bindBuffer(34962,null);let l=5120===(r=o.type)||5121===r?1:5122===r||5123===r?2:4*(5124===r||5125===r||5126===r),s=o.numComponents||o.size,u=a/l/s;if(u%1!=0)throw Error(`numComponents ${s} not correct for length ${length}`);return u}(e,o.attribs));return o}function X(e,t){let r=0;return e.push=function(){for(let t=0;t<arguments.length;++t){let n=arguments[t];if(n instanceof Array||I(n))for(let t=0;t<n.length;++t)e[r++]=n[t];else e[r++]=n}},e.reset=function(e){r=e||0},e.numComponents=t,Object.defineProperty(e,"numElements",{get:function(){return this.length/this.numComponents|0}}),e}function Z(e,t,r){return X(new(r||Float32Array)(e*t),e)}function K(e,t,r){let n=e.length,i=new Float32Array(3);for(let o=0;o<n;o+=3)r(t,[e[o],e[o+1],e[o+2]],i),e[o]=i[0],e[o+1]=i[1],e[o+2]=i[2]}function Q(e,t,r){r=r||b();let n=t[0],i=t[1],o=t[2];return r[0]=n*e[0]+i*e[1]+o*e[2],r[1]=n*e[4]+i*e[5]+o*e[6],r[2]=n*e[8]+i*e[9]+o*e[10],r}function J(e,t,r){return{position:{numComponents:2,data:[(t=t||0)+-1*(e=.5*(e||2)),(r=r||0)+-1*e,t+ +e,r+-1*e,t+-1*e,r+ +e,t+ +e,r+ +e]},normal:[0,0,1,0,0,1,0,0,1,0,0,1],texcoord:[0,0,1,0,0,1,1,1],indices:[0,1,2,2,1,3]}}function ee(e,t,r,n,i){var o,a;e=e||1,t=t||1,r=r||1,n=n||1,i=i||w();let l=(r+1)*(n+1),s=Z(3,l),u=Z(3,l),c=Z(2,l);for(let i=0;i<=n;i++)for(let o=0;o<=r;o++){let a=o/r,l=i/n;s.push(e*a-.5*e,0,t*l-.5*t),u.push(0,1,0),c.push(a,l)}let d=r+1,m=Z(3,r*n*2,Uint16Array);for(let e=0;e<n;e++)for(let t=0;t<r;t++)m.push((e+0)*d+t,(e+1)*d+t,(e+0)*d+t+1),m.push((e+1)*d+t,(e+1)*d+t+1,(e+0)*d+t+1);return o={position:s,normal:u,texcoord:c,indices:m},a=i,Object.keys(o).forEach(function(e){let t=o[e];e.indexOf("pos")>=0?K(t,a,L):e.indexOf("tan")>=0||e.indexOf("binorm")>=0?K(t,a,E):e.indexOf("norm")>=0&&K(t,F(a),Q)}),o}function et(e,t,r,n,i,o,a){if(t<=0||r<=0)throw Error("subdivisionAxis and subdivisionHeight must be > 0");n=n||0,o=o||0;let l=(i=i||Math.PI)-n,s=(a=a||2*Math.PI)-o,u=(t+1)*(r+1),c=Z(3,u),d=Z(3,u),m=Z(2,u);for(let i=0;i<=r;i++)for(let a=0;a<=t;a++){let u=a/t,f=i/r,h=s*u+o,p=l*f+n,b=Math.sin(h),x=Math.sin(p),g=Math.cos(p),y=Math.cos(h)*x,v=b*x;c.push(e*y,e*g,e*v),d.push(y,g,v),m.push(1-u,f)}let f=t+1,h=Z(3,t*r*2,Uint16Array);for(let e=0;e<t;e++)for(let t=0;t<r;t++)h.push((t+0)*f+e,(t+0)*f+e+1,(t+1)*f+e),h.push((t+1)*f+e,(t+0)*f+e+1,(t+1)*f+e+1);return{position:c,normal:d,texcoord:m,indices:h}}let er=[[3,7,5,1],[6,2,0,4],[6,7,3,2],[0,1,5,4],[7,6,4,5],[2,3,1,0]];function en(e){let t=(e=e||1)/2,r=[[-t,-t,-t],[+t,-t,-t],[-t,+t,-t],[+t,+t,-t],[-t,-t,+t],[+t,-t,+t],[-t,+t,+t],[+t,+t,+t]],n=[[1,0,0],[-1,0,0],[0,1,0],[0,-1,0],[0,0,1],[0,0,-1]],i=[[1,0],[0,0],[0,1],[1,1]],o=Z(3,24),a=Z(3,24),l=Z(2,24),s=Z(3,12,Uint16Array);for(let e=0;e<6;++e){let t=er[e];for(let s=0;s<4;++s){let u=r[t[s]],c=n[e],d=i[s];o.push(u),a.push(c),l.push(d)}let u=4*e;s.push(u+0,u+1,u+2),s.push(u+0,u+2,u+3)}return{position:o,normal:a,texcoord:l,indices:s}}function ei(e,t,r,n,i,o,a){if(n<3)throw Error("radialSubdivisions must be 3 or greater");if(i<1)throw Error("verticalSubdivisions must be 1 or greater");let l=void 0===o||o,s=void 0===a||a,u=2*!!l+2*!!s,c=(n+1)*(i+1+u),d=Z(3,c),m=Z(3,c),f=Z(2,c),h=Z(3,n*(i+u/2)*2,Uint16Array),p=n+1,b=Math.atan2(e-t,r),x=Math.cos(b),g=Math.sin(b),y=l?-2:0,v=i+2*!!s;for(let o=y;o<=v;++o){let a,l=o/i,s=r*l;o<0?(s=0,l=1,a=e):o>i?(s=r,l=1,a=t):a=e+o/i*(t-e),(-2===o||o===i+2)&&(a=0,l=0),s-=r/2;for(let e=0;e<p;++e){let t=Math.sin(e*Math.PI*2/n),r=Math.cos(e*Math.PI*2/n);d.push(t*a,s,r*a),o<0?m.push(0,-1,0):o>i?m.push(0,1,0):0===a?m.push(0,0,0):m.push(t*x,g,r*x),f.push(e/n,1-l)}}for(let e=0;e<i+u;++e)if((1!==e||!l)&&(e!==i+u-2||!s))for(let t=0;t<n;++t)h.push(p*(e+0)+0+t,p*(e+0)+1+t,p*(e+1)+1+t),h.push(p*(e+0)+0+t,p*(e+1)+1+t,p*(e+1)+0+t);return{position:d,normal:m,texcoord:f,indices:h}}function eo(e,t){t=t||[];let r=[];for(let n=0;n<e.length;n+=4){let i=e[n],o=e.slice(n+1,n+4);o.push.apply(o,t);for(let e=0;e<i;++e)r.push.apply(r,o)}return r}function ea(){let e=[0,0,0,0,150,0,30,0,0,0,150,0,30,150,0,30,0,0,30,0,0,30,30,0,100,0,0,30,30,0,100,30,0,100,0,0,30,60,0,30,90,0,67,60,0,30,90,0,67,90,0,67,60,0,0,0,30,30,0,30,0,150,30,0,150,30,30,0,30,30,150,30,30,0,30,100,0,30,30,30,30,30,30,30,100,0,30,100,30,30,30,60,30,67,60,30,30,90,30,30,90,30,67,60,30,67,90,30,0,0,0,100,0,0,100,0,30,0,0,0,100,0,30,0,0,30,100,0,0,100,30,0,100,30,30,100,0,0,100,30,30,100,0,30,30,30,0,30,30,30,100,30,30,30,30,0,100,30,30,100,30,0,30,30,0,30,60,30,30,30,30,30,30,0,30,60,0,30,60,30,30,60,0,67,60,30,30,60,30,30,60,0,67,60,0,67,60,30,67,60,0,67,90,30,67,60,30,67,60,0,67,90,0,67,90,30,30,90,0,30,90,30,67,90,30,30,90,0,67,90,30,67,90,0,30,90,0,30,150,30,30,90,30,30,90,0,30,150,0,30,150,30,0,150,0,0,150,30,30,150,30,0,150,0,30,150,30,30,150,0,0,0,0,0,0,30,0,150,30,0,0,0,0,150,30,0,150,0],t=eo([18,0,0,1,18,0,0,-1,6,0,1,0,6,1,0,0,6,0,-1,0,6,1,0,0,6,0,1,0,6,1,0,0,6,0,-1,0,6,1,0,0,6,0,-1,0,6,-1,0,0]),r=eo([18,200,70,120,18,80,70,200,6,70,200,210,6,200,200,70,6,210,100,70,6,210,160,70,6,70,180,210,6,100,70,210,6,76,210,100,6,140,210,80,6,90,130,110,6,160,160,220],[255]),n=e.length/3,i={position:Z(3,n),texcoord:Z(2,n),normal:Z(3,n),color:Z(4,n,Uint8Array),indices:Z(3,n/3,Uint16Array)};i.position.push(e),i.texcoord.push([.22,.19,.22,.79,.34,.19,.22,.79,.34,.79,.34,.19,.34,.19,.34,.31,.62,.19,.34,.31,.62,.31,.62,.19,.34,.43,.34,.55,.49,.43,.34,.55,.49,.55,.49,.43,0,0,1,0,0,1,0,1,1,0,1,1,0,0,1,0,0,1,0,1,1,0,1,1,0,0,1,0,0,1,0,1,1,0,1,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,0,1,1,1,0,0,1,1,1,0,0,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,0,1,1,0,1,0,0,1,0,1,1,0,0,0,1,1,1,0,0,1,1,1,0,0,0,1,1,0,1,0,0,1,0,1,1,0,0,0,1,1,1,0,0,1,1,1,0,0,0,0,1,1,1,0,0,1,1,1,0]),i.normal.push(t),i.color.push(r);for(let e=0;e<n;++e)i.indices.push(e);return i}function el(e,t,r,n,i,o,a){if(i<=0)throw Error("subdivisionDown must be > 0");o=o||0;let l=(a=a||1)-o,s=(i+1)*8,u=Z(3,s),c=Z(3,s),d=Z(2,s);function m(t,r,a,s,m,f){for(let y=0;y<=i;y++){let v=r/1,w=y/i,F=(o+w*l)*Math.PI,L=Math.sin(F),E=Math.cos(F),A=e+(t-e)*L,P=(v-.5)*2*n,k=E*e,M=L*A;u.push(P,k,M);var h,b,x=void 0,g=void 0;let R=(h=[0,L,E],(x=x||new p(3))[0]=h[0]*a[0],x[1]=h[1]*a[1],x[2]=h[2]*a[2],b=x,(g=g||new p(3))[0]=b[0]+s[0],g[1]=b[1]+s[1],g[2]=b[2]+s[2],g);c.push(R),d.push(v*m+f,w)}}for(let e=0;e<2;e++){let n=(e/1-.5)*2;m(t,e,[1,1,1],[0,0,0],1,0),m(t,e,[0,0,0],[n,0,0],0,0),m(r,e,[1,1,1],[0,0,0],1,0),m(r,e,[0,0,0],[n,0,0],0,1)}let f=Z(3,2*i*4,Uint16Array);function h(e,t){for(let r=0;r<i;++r)f.push(e+r+0,e+r+1,t+r+0),f.push(e+r+1,t+r+1,t+r+0)}let b=i+1;return h(0*b,4*b),h(5*b,7*b),h(6*b,2*b),h(3*b,+b),{position:u,normal:c,texcoord:d,indices:f}}function es(e,t,r,n,i,o){return ei(e,e,t,r,n,i,o)}function eu(e,t,r,n,i,o){if(r<3)throw Error("radialSubdivisions must be 3 or greater");if(n<3)throw Error("verticalSubdivisions must be 3 or greater");i=i||0;let a=(o=o||2*Math.PI)-i,l=r+1,s=n+1,u=l*s,c=Z(3,u),d=Z(3,u),m=Z(2,u),f=Z(3,r*n*2,Uint16Array);for(let o=0;o<s;++o){let s=o/n,u=s*Math.PI*2,f=Math.sin(u),h=e+f*t,p=Math.cos(u),b=p*t;for(let e=0;e<l;++e){let t=e/r,n=i+t*a,o=Math.sin(n),l=Math.cos(n),u=o*h,x=l*h,g=o*f,y=l*f;c.push(u,b,x),d.push(g,p,y),m.push(t,1-s)}}for(let e=0;e<n;++e)for(let t=0;t<r;++t){let r=1+t,n=1+e;f.push(l*e+t,l*n+t,l*e+r),f.push(l*n+t,l*n+r,l*e+r)}return{position:c,normal:d,texcoord:m,indices:f}}function ec(e,t,r,n,i){if(t<3)throw Error("divisions must be at least 3");i=i||1,n=n||0;let o=(t+1)*((r=r||1)+1),a=Z(3,o),l=Z(3,o),s=Z(2,o),u=Z(3,r*t*2,Uint16Array),c=0,d=e-n,m=t+1;for(let e=0;e<=r;
1++e){let o=n+d*Math.pow(e/r,i);for(let n=0;n<=t;++n){let i=2*Math.PI*n/t,d=o*Math.cos(i),f=o*Math.sin(i);if(a.push(d,0,f),l.push(0,1,0),s.push(1-n/t,e/r),e>0&&n!==t){let e=c+(n+1),t=c+n,r=c+n-m,i=c+(n+1)-m;u.push(e,t,r),u.push(e,r,i)}}c+=t+1}return{position:a,normal:l,texcoord:s,indices:u}}function ed(e){return function(t){let r,n=e.apply(this,Array.prototype.slice.call(arguments,1));return r={},Object.keys(n).forEach(function(e){var i;let o;r[e]=(i=n[e],o="indices"===e?34963:34962,j(t,W(i,e),o))}),n.indices?(r.numElements=n.indices.length,r.elementType=k(W(n.indices))):r.numElements=function(e){let t,r;for(r=0;r<Y.length&&!((t=Y[r])in e);++r);r===Y.length&&(t=Object.keys(e)[0]);let n=e[t],i=D(n).length;if(void 0===i)return 1;let o=U(n,t);if(i%o>0)throw Error(`numComponents ${o} not correct for length ${i}`);return i/o}(n),r}}function em(e){return function(t){let r=e.apply(null,Array.prototype.slice.call(arguments,1));return q(t,r)}}function ef(e){return!!e.texStorage2D}em(ea),ed(ea),em(en),ed(en),em(ee),ed(ee),em(et),ed(et),em(ei),ed(ei),em(J),ed(J),em(el),ed(el),em(es),ed(es),em(eu),ed(eu),em(ec),ed(ec);let eh=(o={},a={},function(e,t){let r=e.constructor.name;if(!o[r]){for(let t in e)if("number"==typeof e[t]){let r=a[e[t]];a[e[t]]=r?`${r} | ${t}`:t}o[r]=!0}return a[t]||("number"==typeof t?`0x${t.toString(16)}`:t)}),ep,eb={textureColor:new Uint8Array([128,192,255,255]),textureOptions:{},crossOrigin:void 0},ex=function(){return l=l||("u">typeof document&&document.createElement?document.createElement("canvas").getContext("2d"):null)},eg={};function ey(e){if(!i){let e={};e[6406]={textureFormat:6406,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[1,2,2,4],type:[5121,5131,36193,5126]},e[6409]={textureFormat:6409,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[1,2,2,4],type:[5121,5131,36193,5126]},e[6410]={textureFormat:6410,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[2,4,4,8],type:[5121,5131,36193,5126]},e[6407]={textureFormat:6407,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[3,6,6,12,2],type:[5121,5131,36193,5126,33635]},e[6408]={textureFormat:6408,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[4,8,8,16,2,2],type:[5121,5131,36193,5126,32819,32820]},e[6402]={textureFormat:6402,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[2,4],type:[5125,5123]},e[33321]={textureFormat:6403,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[1],type:[5121]},e[36756]={textureFormat:6403,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[1],type:[5120]},e[33325]={textureFormat:6403,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[4,2],type:[5126,5131]},e[33326]={textureFormat:6403,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[4],type:[5126]},e[33330]={textureFormat:36244,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[1],type:[5121]},e[33329]={textureFormat:36244,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[1],type:[5120]},e[33332]={textureFormat:36244,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[2],type:[5123]},e[33331]={textureFormat:36244,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[2],type:[5122]},e[33334]={textureFormat:36244,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[5125]},e[33333]={textureFormat:36244,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[5124]},e[33323]={textureFormat:33319,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[2],type:[5121]},e[36757]={textureFormat:33319,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[2],type:[5120]},e[33327]={textureFormat:33319,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[8,4],type:[5126,5131]},e[33328]={textureFormat:33319,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[8],type:[5126]},e[33336]={textureFormat:33320,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[2],type:[5121]},e[33335]={textureFormat:33320,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[2],type:[5120]},e[33338]={textureFormat:33320,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[5123]}
1,e[33337]={textureFormat:33320,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[5122]},e[33340]={textureFormat:33320,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[8],type:[5125]},e[33339]={textureFormat:33320,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[8],type:[5124]},e[32849]={textureFormat:6407,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[3],type:[5121]},e[35905]={textureFormat:6407,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[3],type:[5121]},e[36194]={textureFormat:6407,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[3,2],type:[5121,33635]},e[36758]={textureFormat:6407,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[3],type:[5120]},e[35898]={textureFormat:6407,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[12,6,4],type:[5126,5131,35899]},e[35901]={textureFormat:6407,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[12,6,4],type:[5126,5131,35902]},e[34843]={textureFormat:6407,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[12,6],type:[5126,5131]},e[34837]={textureFormat:6407,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[12],type:[5126]},e[36221]={textureFormat:36248,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[3],type:[5121]},e[36239]={textureFormat:36248,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[3],type:[5120]},e[36215]={textureFormat:36248,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[6],type:[5123]},e[36233]={textureFormat:36248,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[6],type:[5122]},e[36209]={textureFormat:36248,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[12],type:[5125]},e[36227]={textureFormat:36248,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[12],type:[5124]},e[32856]={textureFormat:6408,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[4],type:[5121]},e[35907]={textureFormat:6408,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[4],type:[5121]},e[36759]={textureFormat:6408,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[4],type:[5120]},e[32855]={textureFormat:6408,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[4,2,4],type:[5121,32820,33640]},e[32854]={textureFormat:6408,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[4,2],type:[5121,32819]},e[32857]={textureFormat:6408,colorRenderable:!0,textureFilterable:!0,bytesPerElement:[4],type:[33640]},e[34842]={textureFormat:6408,colorRenderable:!1,textureFilterable:!0,bytesPerElement:[16,8],type:[5126,5131]},e[34836]={textureFormat:6408,colorRenderable:!1,textureFilterable:!1,bytesPerElement:[16],type:[5126]},e[36220]={textureFormat:36249,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[5121]},e[36238]={textureFormat:36249,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[5120]},e[36975]={textureFormat:36249,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[33640]},e[36214]={textureFormat:36249,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[8],type:[5123]},e[36232]={textureFormat:36249,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[8],type:[5122]},e[36226]={textureFormat:36249,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[16],type:[5124]},e[36208]={textureFormat:36249,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[16],type:[5125]},e[33189]={textureFormat:6402,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[2,4],type:[5123,5125]},e[33190]={textureFormat:6402,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[5125]},e[36012]={textureFormat:6402,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[5126]}
1,e[35056]={textureFormat:34041,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[34042]},e[36013]={textureFormat:34041,colorRenderable:!0,textureFilterable:!1,bytesPerElement:[4],type:[36269]},Object.keys(e).forEach(function(t){let r=e[t];r.bytesPerElementMap={},r.bytesPerElement.forEach(function(e,t){let n=r.type[t];r.bytesPerElementMap[n]=e})});let t={bytes:8,width:4,height:4},r={bytes:16,width:4,height:4};e[33776]={textureFormat:33776,colorRenderable:!1,textureFilterable:!0,block:t},e[33777]={textureFormat:33777,colorRenderable:!1,textureFilterable:!0,block:t},e[33778]={textureFormat:33778,colorRenderable:!1,textureFilterable:!0,block:r},e[33779]={textureFormat:33779,colorRenderable:!1,textureFilterable:!0,block:r},e[35916]={textureFormat:35916,colorRenderable:!1,textureFilterable:!0,block:t},e[35917]={textureFormat:35917,colorRenderable:!1,textureFilterable:!0,block:t},e[35918]={textureFormat:35918,colorRenderable:!1,textureFilterable:!0,block:r},e[35919]={textureFormat:35919,colorRenderable:!1,textureFilterable:!0,block:r},e[36196]={textureFormat:36196,colorRenderable:!1,textureFilterable:!0,block:t},e[37488]={textureFormat:37488,colorRenderable:!1,textureFilterable:!0,block:t},e[37489]={textureFormat:37489,colorRenderable:!1,textureFilterable:!0,block:t},e[37490]={textureFormat:37490,colorRenderable:!1,textureFilterable:!0,block:r},e[37491]={textureFormat:37491,colorRenderable:!1,textureFilterable:!0,block:r},e[37492]={textureFormat:37492,colorRenderable:!1,textureFilterable:!0,block:t},e[37493]={textureFormat:37493,colorRenderable:!1,textureFilterable:!0,block:t},e[37494]={textureFormat:37494,colorRenderable:!1,textureFilterable:!0,block:t},e[37495]={textureFormat:37495,colorRenderable:!1,textureFilterable:!0,block:t},e[37496]={textureFormat:37496,colorRenderable:!1,textureFilterable:!0,block:r},e[37497]={textureFormat:37497,colorRenderable:!1,textureFilterable:!0,block:r},e[35840]={textureFormat:35840,colorRenderable:!1,textureFilterable:!0,block:{bytes:32,width:8,height:8}},e[35841]={textureFormat:35841,colorRenderable:!1,textureFilterable:!0,block:{bytes:32,width:16,height:8}},e[35842]={textureFormat:35842,colorRenderable:!1,textureFilterable:!0,block:{bytes:32,width:8,height:8}},e[35843]={textureFormat:35843,colorRenderable:!1,textureFilterable:!0,block:{bytes:32,width:16,height:8}},e[37808]={textureFormat:37808,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:4,height:4}},e[37809]={textureFormat:37809,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:5,height:4}},e[37810]={textureFormat:37810,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:5,height:5}},e[37811]={textureFormat:37811,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:6,height:5}},e[37812]={textureFormat:37812,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:6,height:6}},e[37813]={textureFormat:37813,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:8,height:5}},e[37814]={textureFormat:37814,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:8,height:6}},e[37815]={textureFormat:37815,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:8,height:8}},e[37816]={textureFormat:37816,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:10,height:5}},e[37817]={textureFormat:37817,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:10,height:6}},e[37818]={textureFormat:37818,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:10,height:8}},e[37819]={textureFormat:37819,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:10,height:10}},e[37820]={textureFormat:37820,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:12,height:10}},e[37821]={textureFormat:37821,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:12,height:12}},e[37840]={textureFormat:37840,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:4,height:4}},e[37841]={textureFormat:37841,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:5,height:4}},e[37842]={textureFormat:37842,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:5,height:5}}
1,e[37843]={textureFormat:37843,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:6,height:5}},e[37844]={textureFormat:37844,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:6,height:6}},e[37845]={textureFormat:37845,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:8,height:5}},e[37846]={textureFormat:37846,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:8,height:6}},e[37847]={textureFormat:37847,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:8,height:8}},e[37848]={textureFormat:37848,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:10,height:5}},e[37849]={textureFormat:37849,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:10,height:6}},e[37850]={textureFormat:37850,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:10,height:8}},e[37851]={textureFormat:37851,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:10,height:10}},e[37852]={textureFormat:37852,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:12,height:10}},e[37853]={textureFormat:37853,colorRenderable:!1,textureFilterable:!0,block:{bytes:16,width:12,height:12}},e[36492]={textureFormat:36492,colorRenderable:!1,textureFilterable:!0,block:r},e[36493]={textureFormat:36493,colorRenderable:!1,textureFilterable:!0,block:r},e[36494]={textureFormat:36494,colorRenderable:!1,textureFilterable:!0,block:r},e[36495]={textureFormat:36495,colorRenderable:!1,textureFilterable:!0,block:r},e[36283]={textureFormat:36283,colorRenderable:!1,textureFilterable:!0,block:t},e[36284]={textureFormat:36284,colorRenderable:!1,textureFilterable:!0,block:t},e[36285]={textureFormat:36285,colorRenderable:!1,textureFilterable:!0,block:t}
1,e[36286]={textureFormat:36286,colorRenderable:!1,textureFilterable:!0,block:t},i=e}let t=i[e];if(!t)throw Error("unknown internal format");return t}function ev(e,t){let r=ey(e).bytesPerElementMap[t];if(void 0===r)throw Error("type not supported for internal format");return r}function ew(e){let t=ey(e);if(!t)throw Error("unknown internal format");return{format:t.textureFormat,type:t.type?.[0]??5121}}function eF(e){return!!ey(e).block}eg[6406]={numColorComponents:1},eg[6409]={numColorComponents:1},eg[6410]={numColorComponents:2},eg[6407]={numColorComponents:3},eg[6408]={numColorComponents:4},eg[6403]={numColorComponents:1},eg[36244]={numColorComponents:1},eg[33319]={numColorComponents:2},eg[33320]={numColorComponents:2},eg[6407]={numColorComponents:3},eg[36248]={numColorComponents:3},eg[6408]={numColorComponents:4},eg[36249]={numColorComponents:4},eg[6402]={numColorComponents:1},eg[34041]={numColorComponents:2};function eL(e){return ey(e).textureFilterable}function eE(e,t,r,n,i){if(i%1!=0)throw Error("can't guess dimensions");if(r||n){if(n){if(!r&&(r=i/n)%1)throw Error("can't guess dimensions")}else if((n=i/r)%1)throw Error("can't guess dimensions")}else{let e=Math.sqrt(i/(34067===t?6:1));e%1==0?(r=e,n=e):(r=i,n=1)}return{width:r,height:n}}function eA(e,t,r){let n,i,o;void 0!==t.colorspaceConversion&&(n=e.getParameter(37443),e.pixelStorei(37443,t.colorspaceConversion)),void 0!==t.premultiplyAlpha&&(i=e.getParameter(37441),e.pixelStorei(37441,t.premultiplyAlpha)),void 0!==t.flipY&&(o=e.getParameter(37440),e.pixelStorei(37440,t.flipY)),r(),void 0!==n&&e.pixelStorei(37443,n),void 0!==i&&e.pixelStorei(37441,i),void 0!==o&&e.pixelStorei(37440,o)}function eP(e,t,r,n){let i=t[r];return{[r]:void 0===i?e.getParameter(n):i}}function ek(e,t){return{...t,...eP(e,t,"flipY",37440),...eP(e,t,"premultiplyAlpha",37441),...eP(e,t,"colorspaceConversion",37443)}}function eM(e){e.pixelStorei(3317,4),ef(e)&&(e.pixelStorei(3314,0),e.pixelStorei(32878,0),e.pixelStorei(3316,0),e.pixelStorei(3315,0),e.pixelStorei(32877,0))}function eR(e,t,r){let n=r.target||3553;e.bindTexture(n,t),function(e,t,r,n){(n.minMag&&(r.call(e,t,10241,n.minMag),r.call(e,t,10240,n.minMag)),n.min&&r.call(e,t,10241,n.min),n.mag&&r.call(e,t,10240,n.mag),n.wrap)&&(r.call(e,t,10242,n.wrap),r.call(e,t,10243,n.wrap),(32879===t||"u">typeof WebGLSampler&&_(t,"WebGLSampler"))&&r.call(e,t,32882,n.wrap));n.wrapR&&r.call(e,t,32882,n.wrapR),n.wrapS&&r.call(e,t,10242,n.wrapS),n.wrapT&&r.call(e,t,10243,n.wrapT),void 0!==n.minLod&&r.call(e,t,33082,n.minLod),void 0!==n.maxLod&&r.call(e,t,33083,n.maxLod),void 0!==n.baseLevel&&r.call(e,t,33084,n.baseLevel),void 0!==n.maxLevel&&r.call(e,t,33085,n.maxLevel),void 0!==n.compareFunc&&r.call(e,t,34893,n.compareFunc),void 0!==n.compareMode&&r.call(e,t,34892,n.compareMode)}(e,n,e.texParameteri,r)}function eI(e,t,{options:r,width:n,height:i,internalFormat:o,lastMipLevelUploaded:a}){r=r||eb.textureOptions,o=o||6408;let l=r.target||3553;if(n=n||r.width,i=i||r.height,e.bindTexture(l,t),a>1){let t=Math.max(1,n>>a),r=Math.max(1,i>>a),s=eL(o)?9729:9728,u=eL(o)?1===t&&1===r?9986:9729:9728;e.texParameteri(l,10240,s),e.texParameteri(l,10241,u)}else if(function(e,t,r,n){if(!ef(e))return(t&t-1)==0&&(r&r-1)==0;let i=ey(n);return i.colorRenderable&&i.textureFilterable}(e,n,i,o))e.generateMipmap(l);else{let t=eL(o)?9729:9728;e.texParameteri(l,10241,t),e.texParameteri(l,10240,t),e.texParameteri(l,10242,33071),e.texParameteri(l,10243,33071)}}function eS(e,t,r,n,i,o){eI(e,t,{options:r,width:n,height:i,internalFormat:o})}function eT(e){return!0===e.auto||void 0===e.auto&&void 0===e.level}function e_(e,t){return(t=t||{}).cubeFaceOrder||[34069,34070,34071,34072,34073,34074]}function eC(e,t){let r=e_(e,t).map(function(e,t){return{face:e,ndx:t}});return r.sort(function(e,t){return e.face-t.face}),r}function ez(e,t,r,n){let i=(n=n||eb.textureOptions).target||3553,o=n.level||0,a=r.width,l=r.height,s=n.internalFormat||n.format||6408,u=ew(s),c=n.format||u.format,d=n.type||u.type;if(e.bindTexture(i,t),34067===i){let u,m,f=r.width,h=r.height;if(f/6===h)u=h,m=[0,0,1,0,2,0,3,0,4,0,5,0];else if(h/6===f)u=f,m=[0,0,0,1,0,2,0,3,0,4,0,5];else if(f/3==h/2)u=f/3,m=[0,0,1,0,2,0,0,1,1,1,2,1];else if(f/2==h/3)u=f/2,m=[0,0,1,0,0,1,1,1,0,2,1,2];else throw Error(`can't figure out cube map from element: ${r.src?r.src:r.nodeName}`);let p=ex();p?(p.canvas.width=u,p.canvas.height=u,a=u,l=u,eA(e,n,()=>
1{eC(e,n).forEach(function(t){let n=m[2*t.ndx+0]*u,i=m[2*t.ndx+1]*u;p.drawImage(r,n,i,u,u,0,0,u,u),e.texImage2D(t.face,o,s,c,d,p.canvas)}),p.canvas.width=1,p.canvas.height=1})):"u">typeof createImageBitmap&&(a=u,l=u,eC(e,n).forEach(function(f){let h=m[2*f.ndx+0]*u,p=m[2*f.ndx+1]*u;e.texImage2D(f.face,o,s,u,u,0,c,d,null),createImageBitmap(r,h,p,u,u,{premultiplyAlpha:"none",colorSpaceConversion:"none"}).then(function(r){eA(e,n,()=>{e.bindTexture(i,t),e.texImage2D(f.face,o,s,c,d,r),eT(n)&&eS(e,t,n,a,l,s)})})}))}else 32879===i||35866===i?eA(e,n,()=>{let t=Math.min(r.width,r.height),n=Math.max(r.width,r.height),a=n/t;if(a%1!=0)throw Error("can not compute 3D dimensions of element");let l=+(r.width===n),u=+(r.height===n);e.pixelStorei(3317,1),e.pixelStorei(3314,r.width),e.pixelStorei(32878,0),e.pixelStorei(32877,0),e.texImage3D(i,o,s,t,t,t,0,c,d,null);for(let n=0;n<a;++n){let a=n*t*l,s=n*t*u;e.pixelStorei(3316,a),e.pixelStorei(3315,s),e.texSubImage3D(i,o,0,0,n,t,t,1,c,d,r)}eM(e)}):eA(e,n,()=>{e.texImage2D(i,o,s,c,d,r)});eT(n)&&eS(e,t,n,a,l,s),eR(e,t,n)}function ej(){}function eN(e){return"u">typeof ImageBitmap&&e instanceof ImageBitmap||"u">typeof ImageData&&e instanceof ImageData||"u">typeof HTMLElement&&e instanceof HTMLElement}function eD(e,t,r){return eN(e)?(setTimeout(function(){r(null,e)}),e):function(e,t,r){var n;let i;if(r=r||ej,t=void 0!==t?t:eb.crossOrigin,t=void 0!==(n=t)||function(e){if("u">typeof document){let t=document.createElement("a");return t.href=e,t.hostname===location.hostname&&t.port===location.port&&t.protocol===location.protocol}{let t=new URL(location.href).origin;return new URL(e,location.href).origin===t}}(e)?n:"anonymous","u">typeof Image){i=new Image,void 0!==t&&(i.crossOrigin=t);let n=function(){i.removeEventListener("error",o),i.removeEventListener("load",a),i=null},o=function(){let t="couldn't load image: "+e;S(t),r(t,i),n()},a=function(){r(null,i),n()};i.addEventListener("error",o),i.addEventListener("load",a),i.src=e}else if("u">typeof ImageBitmap){let n,o,a=function(){r(n,o)},l={};t&&(l.mode="cors"),fetch(e,l).then(function(e){if(!e.ok)throw e;return e.blob()}).then(function(e){return createImageBitmap(e,{premultiplyAlpha:"none",colorSpaceConversion:"none"})}).then(function(e){o=e,setTimeout(a)}).catch(function(e){n=e,setTimeout(a)}),i=null}return i}(e,t,r)}function eO(e,t,r){var n;let i=(r=r||eb.textureOptions).target||3553;if(e.bindTexture(i,t),!1===r.color)return;let o=I(n=(n=r.color)||eb.textureColor)?n:new Uint8Array([255*n[0],255*n[1],255*n[2],255*n[3]]);if(34067===i)for(let t=0;t<6;++t)e.texImage2D(34069+t,0,6408,1,1,0,6408,5121,o);else 32879===i||35866===i?e.texImage3D(i,0,6408,1,1,1,0,6408,5121,o):e.texImage2D(i,0,6408,1,1,0,6408,5121,o)}function eB(e){return"u">typeof document&&document.getElementById?document.getElementById(e):null}let eU={};function eW(e,t){return eU[t].bindPoint}function eH(e,t){return function(r){e.uniform1i(t,r)}}function e$(e,t){return function(r){e.uniform1iv(t,r)}}function eG(e,t){return function(r){e.uniform2iv(t,r)}}function eV(e,t){return function(r){e.uniform3iv(t,r)}}function eY(e,t){return function(r){e.uniform4iv(t,r)}}function eq(e,t,r,n){let i=eW(e,t);return ef(e)?function(t){let o,a;!t||C(e,t)?(o=t,a=null):(o=t.texture,a=t.sampler),e.uniform1i(n,r),e.activeTexture(33984+r),e.bindTexture(i,o),e.bindSampler(r,a)}:function(t){e.uniform1i(n,r),e.activeTexture(33984+r),e.bindTexture(i,t)}}function eX(e,t,r,n,i){let o=eW(e,t),a=new Int32Array(i);for(let e=0;e<i;++e)a[e]=r+e;return ef(e)?function(t){e.uniform1iv(n,a),t.forEach(function(t,n){let i,l;e.activeTexture(33984+a[n]),!t||C(e,t)?(i=t,l=null):(i=t.texture,l=t.sampler),e.bindSampler(r,l),e.bindTexture(o,i)})}:function(t){e.uniform1iv(n,a),t.forEach(function(t,r){e.activeTexture(33984+a[r]),e.bindTexture(o,t)})}}function eZ(e,t){return function(r){if(r.value)switch(e.disableVertexAttribArray(t),r.value.length){case 4:e.vertexAttrib4fv(t,r.value);break;case 3:e.vertexAttrib3fv(t,r.value);break;case 2:e.vertexAttrib2fv(t,r.value);break;case 1:e.vertexAttrib1fv(t,r.value);break;default:throw Error("the length of a float constant value must be between 1 and 4!")}else e.bindBuffer(34962,r.buffer),e.enableVertexAttribArray(t),e.vertexAttribPointer(t,r.numComponents||r.size,r.type||5126,r.normalize||!1,r.stride||0,r.offset||0),e.vertexAttribDivisor&&e.vertexAttribDivisor(t,r.divisor||0)}}function eK(e,t){return function(r){if(r.value)if(e.disableVertexAttribArray(t),4===r.value.length)e.vertexAttrib4iv(t,r.value);else throw Error("The length of an integer constant value must be 4!");else e.bindBuffer(34962,r.buffer),e.enableVertexAttribArray(t),e.vertexAttribIPointer(t,r.numComponents||r.size,r.type||5124,r.stride||0,r.offset||0),e.vertexAttribDivisor&&e.vertexAttribDivisor(t,r.divisor||0)}}function eQ(e,t){return function(r){if(r.value)if(e.disableVertexAttribArray(t),4===r.value.length)e.vertexAttrib4uiv(t,r.value);else throw Error("The length of an unsigned integer constant value must be 4!");else e.bindBuffer(34962,r.buffer),e.enableVertexAttribArray(t),e.vertexAttribIPointer(t,r.numComponents||r.size,r.type||5125,r.stride||0,r.offset||0),e.vertexAttribDivisor&&e.vertexAttribDivisor(t,r.divisor||0)}}function eJ(e,t,r){let n=r.size,i=r.count;return function(r){e.bindBuffer(34962,r.buffer);let o=r.size||r.numComponents||n,a=o/i,l=r.type||5126,s=eU[l].size*o,u=r.normalize||!1,c=r.offset||0,d=s/i;for(let n=0;n<i;
1++n)e.enableVertexAttribArray(t+n),e.vertexAttribPointer(t+n,a,l,u,s,c+d*n),e.vertexAttribDivisor&&e.vertexAttribDivisor(t+n,r.divisor||0)}}eU[5126]={Type:Float32Array,size:4,setter:function(e,t){return function(r){e.uniform1f(t,r)}},arraySetter:function(e,t){return function(r){e.uniform1fv(t,r)}}},eU[35664]={Type:Float32Array,size:8,setter:function(e,t){return function(r){e.uniform2fv(t,r)}},cols:2},eU[35665]={Type:Float32Array,size:12,setter:function(e,t){return function(r){e.uniform3fv(t,r)}},cols:3},eU[35666]={Type:Float32Array,size:16,setter:function(e,t){return function(r){e.uniform4fv(t,r)}},cols:4},eU[5124]={Type:Int32Array,size:4,setter:eH,arraySetter:e$},eU[35667]={Type:Int32Array,size:8,setter:eG,cols:2},eU[35668]={Type:Int32Array,size:12,setter:eV,cols:3},eU[35669]={Type:Int32Array,size:16,setter:eY,cols:4},eU[5125]={Type:Uint32Array,size:4,setter:function(e,t){return function(r){e.uniform1ui(t,r)}},arraySetter:function(e,t){return function(r){e.uniform1uiv(t,r)}}},eU[36294]={Type:Uint32Array,size:8,setter:function(e,t){return function(r){e.uniform2uiv(t,r)}},cols:2},eU[36295]={Type:Uint32Array,size:12,setter:function(e,t){return function(r){e.uniform3uiv(t,r)}},cols:3},eU[36296]={Type:Uint32Array,size:16,setter:function(e,t){return function(r){e.uniform4uiv(t,r)}},cols:4},eU[35670]={Type:Uint32Array,size:4,setter:eH,arraySetter:e$},eU[35671]={Type:Uint32Array,size:8,setter:eG,cols:2},eU[35672]={Type:Uint32Array,size:12,setter:eV,cols:3},eU[35673]={Type:Uint32Array,size:16,setter:eY,cols:4},eU[35674]={Type:Float32Array,size:32,setter:function(e,t){return function(r){e.uniformMatrix2fv(t,!1,r)}},rows:2,cols:2},eU[35675]={Type:Float32Array,size:48,setter:function(e,t){return function(r){e.uniformMatrix3fv(t,!1,r)}},rows:3,cols:3},eU[35676]={Type:Float32Array,size:64,setter:function(e,t){return function(r){e.uniformMatrix4fv(t,!1,r)}},rows:4,cols:4},eU[35685]={Type:Float32Array,size:32,setter:function(e,t){return function(r){e.uniformMatrix2x3fv(t,!1,r)}},rows:2,cols:3},eU[35686]={Type:Float32Array,size:32,setter:function(e,t){return function(r){e.uniformMatrix2x4fv(t,!1,r)}},rows:2,cols:4},eU[35687]={Type:Float32Array,size:48,setter:function(e,t){return function(r){e.uniformMatrix3x2fv(t,!1,r)}},rows:3,cols:2},eU[35688]={Type:Float32Array,size:48,setter:function(e,t){return function(r){e.uniformMatrix3x4fv(t,!1,r)}},rows:3,cols:4},eU[35689]={Type:Float32Array,size:64,setter:function(e,t){return function(r){e.uniformMatrix4x2fv(t,!1,r)}},rows:4,cols:2},eU[35690]={Type:Float32Array,size:64,setter:function(e,t){return function(r){e.uniformMatrix4x3fv(t,!1,r)}},rows:4,cols:3},eU[35678]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:3553},eU[35680]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:34067},eU[35679]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:32879},eU[35682]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:3553},eU[36289]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:35866},eU[36292]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:35866},eU[36293]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:34067},eU[36298]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:3553},eU[36299]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:32879},eU[36300]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:34067},eU[36303]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:35866},eU[36306]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:3553},eU[36307]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:32879},eU[36308]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:34067},eU[36311]={Type:null,size:0,setter:eq,arraySetter:eX,bindPoint:35866};let e0={};e0[5126]={size:4,setter:eZ},e0[35664]={size:8,setter:eZ},e0[35665]={size:12,setter:eZ},e0[35666]={size:16,setter:eZ},e0[5124]={size:4,setter:eK},e0[35667]={size:8,setter:eK},e0[35668]={size:12,setter:eK},e0[35669]={size:16,setter:eK},e0[5125]={size:4,setter:eQ},e0[36294]={size:8,setter:eQ},e0[36295]={size:12,setter:eQ},e0[36296]={size:16,setter:eQ},e0[35670]={size:4,setter:eK},e0[35671]={size:8,setter:eK},e0[35672]={size:12,setter:eK},e0[35673]={size:16,setter:eK},e0[35674]={size:4,setter:eJ,count:2},e0[35675]={size:9,setter:eJ,count:3},e0[35676]={size:16,setter:eJ,count:4};let e1=/ERROR:\s*\d+:(\d+)/gi,e3=/^[ \t]*\n/;function e2(e){let t=0;return e3.test(e)&&(t=1,e=e.replace(e3,"")),{lineOffset:t,shaderSource:e}}function e4(e,t,r){let n,i,o;if("function"==typeof t&&(r=t,t=void 0),"function"==typeof e)r=e,e=void 0;else if(e&&!Array.isArray(e)){let t=e;r=t.errorCallback,e=t.attribLocations,n=t.transformFeedbackVaryings,i=t.transformFeedbackMode,o=t.callback}let a=r||S,l=[],s={errorCallback(e,...t){l.push(e),a(e,...t)},transformFeedbackVaryings:n,transformFeedbackMode:i,callback:o,errors:l};{let r={};Array.isArray(e)?e.forEach(function(e,n){r[e]=t?t[n]:n}
1):r=e||{},s.attribLocations=r}return s}let e6=["VERTEX_SHADER","FRAGMENT_SHADER"],e5=(e=0)=>new Promise(t=>setTimeout(t,e));function e7(e,t,r){let n=e.createProgram(),{attribLocations:i,transformFeedbackVaryings:o,transformFeedbackMode:a}=e4(r);for(let r=0;r<t.length;++r){let i=t[r];if("string"==typeof i){var l;let t=eB(i),n=t?t.text:i,o=e[e6[r]];t&&t.type&&(o=((l=t.type).indexOf("frag")>=0?35632:l.indexOf("vert")>=0?35633:void 0)||o),i=e.createShader(o),e.shaderSource(i,e2(n).shaderSource),e.compileShader(i)}e.attachShader(n,i)}Object.entries(i).forEach(([t,r])=>e.bindAttribLocation(n,r,t));{let t=o;t&&(t.attribs&&(t=t.attribs),Array.isArray(t)||(t=Object.keys(t)),e.transformFeedbackVaryings(n,t,a||35981))}return e.linkProgram(n),n}function e8(e,t,r,n,i){let o=e4(r,n,i),a=new Set(t),l=e7(e,t,o);function s(e,t){let r=tr(e,t,o.errorCallback);return r&&function(e,t,r){for(let n of e.getAttachedShaders(t))r.has(n)||e.deleteShader(n);e.deleteProgram(t)}(e,t,a),r}return o.callback?void te(e,l).then(()=>{let t=s(e,l);o.callback(t,t?void 0:l)}):s(e,l)?void 0:l}function e9(e){return function(t,r,...n){return new Promise((i,o)=>{let a=e4(...n);a.callback=(e,t)=>{e?o(e):i(t)},e(t,r,a)})}}async function te(e,t){let r=e.getExtension("KHR_parallel_shader_compile"),n=r?(e,t)=>e.getProgramParameter(t,r.COMPLETION_STATUS_KHR):()=>!0,i=0;do await e5(i),i=1e3/60;while(!n(e,t))}async function tt(e,t){for(let r of Object.values(t))await te(e,r)}function tr(e,t,r){if(r=r||S,!e.getProgramParameter(t,35714)){let n=e.getProgramInfoLog(t);r(`Error in program linking: ${n}`);let i=e.getAttachedShaders(t).map(t=>(function(e,t,r,n){if(n=n||S,!e.getShaderParameter(r,35713)){let i=e.getShaderInfoLog(r),{lineOffset:o,shaderSource:a}=e2(e.getShaderSource(r)),l=`${function(e,t="",r=0){let n=[...t.matchAll(e1)],i=new Map(n.map((e,r)=>{let i=parseInt(e[1]),o=n[r+1],a=o?o.index:t.length;return[i-1,t.substring(e.index,a)]}));return e.split("\n").map((e,t)=>{let n=i.get(t);return`${t+1+r}: ${e}${n?`
2
3^^^ ${n}`:""}`}).join("\n")}(a,i,o)}
4Error compiling ${eh(e,t)}: ${i}`;return n(l),l}return""})(e,e.getShaderParameter(t,e.SHADER_TYPE),t,r));return`${n}
5${i.filter(e=>e).join("\n")}`}}function tn(e){let t=e.name;return t.startsWith("gl_")||t.startsWith("webgl_")}e9(e8),e9(tc);let ti=/(\.|\[|]|\w+)/g,to=e=>e>="0"&&e<="9";function ta(e,...t){let r=e.uniformSetters||e,n=t.length;for(let e=0;e<n;++e){let n=t[e];if(Array.isArray(n)){let e=n.length;for(let t=0;t<e;++t)ta(r,n[t])}else for(let e in n){let t=r[e];t&&t(n[e])}}}function tl(e,t,r){r.vertexArrayObject?e.bindVertexArray(r.vertexArrayObject):(function(e,t){for(let r in t){let n=e[r];n&&n(t[r])}}(t.attribSetters||t,r.attribs),r.indices&&e.bindBuffer(34963,r.indices))}function ts(e,t){let r=function(e,t){let r=0,n={},i={},o=e.getProgramParameter(t,35718);for(let a=0;a<o;++a){let o=e.getActiveUniform(t,a);if(tn(o))continue;let l=o.name;l.endsWith("[0]")&&(l=l.substr(0,l.length-3));let s=e.getUniformLocation(t,o.name);if(s){let t=function(t,n){let i,o=t.name.endsWith("[0]"),a=t.type,l=eU[a];if(!l)throw Error(`unknown type: 0x${a.toString(16)}`);if(l.bindPoint){let s=r;r+=t.size,i=o?l.arraySetter(e,a,s,n,t.size):l.setter(e,a,s,n,t.size)}else i=l.arraySetter&&o?l.arraySetter(e,n):l.setter(e,n);return i.location=n,i}(o,s);n[l]=t,function(e,t,r,n){let i=e.split(ti).filter(e=>""!==e),o=0,a="";for(;;){let e=i[o++];a+=e;let l=to(e[0]),s=l?parseInt(e):e;if(l&&(a+=i[o++]),o===i.length){r[s]=t;break}{let e=i[o++],t="["===e,l=r[s]||(t?[]:{});r[s]=l,r=l,n[a]=n[a]||function(e){return function(t){!function e(t,r){for(let n in r){let i=t[n];"function"==typeof i?i(r[n]):e(t[n],r[n])}}(e,t)}}(l),a+=e}}}(l,t,i,n)}}return n}(e,t),n=function(e,t){let r={},n=e.getProgramParameter(t,35721);for(let i=0;i<n;++i){let n=e.getActiveAttrib(t,i);if(tn(n))continue;let o=e.getAttribLocation(t,n.name),a=e0[n.type],l=a.setter(e,o,a);l.location=o,r[n.name]=l}return r}(e,t),i={program:t,uniformSetters:r,attribSetters:n,uniformLocations:Object.fromEntries(Object.entries(r).map(([e,t])=>[e,t.location])),attribLocations:Object.fromEntries(Object.entries(n).map(([e,t])=>[e,t.location]))};
5return ef(e)&&(i.uniformBlockSpec=function(e,t){let r=e.getProgramParameter(t,35718),n=[],i=[];for(let o=0;o<r;++o){i.push(o),n.push({});let r=e.getActiveUniform(t,o);n[o].name=r.name}[["UNIFORM_TYPE","type"],["UNIFORM_SIZE","size"],["UNIFORM_BLOCK_INDEX","blockNdx"],["UNIFORM_OFFSET","offset"]].forEach(function(r){let o=r[0],a=r[1];e.getActiveUniforms(t,i,e[o]).forEach(function(e,t){n[t][a]=e})});let o={},a=e.getProgramParameter(t,35382);for(let r=0;r<a;++r){let n=e.getActiveUniformBlockName(t,r),i={index:e.getUniformBlockIndex(t,n),usedByVertexShader:e.getActiveUniformBlockParameter(t,r,35396),usedByFragmentShader:e.getActiveUniformBlockParameter(t,r,35398),size:e.getActiveUniformBlockParameter(t,r,35392),uniformIndices:e.getActiveUniformBlockParameter(t,r,35395)};i.used=i.usedByVertexShader||i.usedByFragmentShader,o[n]=i}return{blockSpecs:o,uniformData:n}}(e,t),i.transformFeedbackInfo=function(e,t){let r={},n=e.getProgramParameter(t,35971);for(let i=0;i<n;++i){let n=e.getTransformFeedbackVarying(t,i);r[n.name]={index:i,type:n.type,size:n.size}}return r}(e,t)),i}let tu=/\s|{|}|;/;function tc(e,t,r,n,i){let o=e4(r,n,i),a=[];if(t=t.map(function(e){if(!tu.test(e)){let t=eB(e);if(t)e=t.text;else{let t=`no element with id: ${e}`;o.errorCallback(t),a.push(t)}}return e}),a.length){var l;return(l=o).errorCallback(""),l.callback&&setTimeout(()=>{l.callback(`
6${l.errors.join("\n")}`)}),null}let s=o.callback;
6s&&(o.callback=(t,r)=>{s(t,t?void 0:ts(e,r))});let u=e8(e,t,o,void 0,void 0);return u?ts(e,u):null}function td(e,t,r,n,i){for(let[o,a]of Object.entries(t)){let l={...i},s=r[o];Array.isArray(s)||Object.assign(l,s);let u=tr(e,a,l.errorCallback);if(u){for(let r of Object.values(t)){let t=e.getAttachedShaders(r);for(let i of(e.deleteProgram(r),t))n.has(i)||e.deleteShader(i)}return u}}}function tm(e,t,r={}){let n=new Set,i=Object.fromEntries(Object.entries(t).map(([t,i])=>{let o={...r},a=Array.isArray(i)?i:i.shaders;return Array.isArray(i)||Object.assign(o,i),a.forEach(n.add,n),[t,e7(e,a,o)]}));return r.callback?void tt(e,i).then(()=>{let o=td(e,i,t,n,r);r.callback(o,o?void 0:i)}):td(e,i,t,n,r)?void 0:i}function tf(e,t,r,n,i,o){r=void 0===r?4:r;let a=t.indices,l=t.elementType,s=void 0===n?t.numElements:n;i=void 0===i?0:i,l||a?void 0!==o?e.drawElementsInstanced(r,s,void 0===l?5123:t.elementType,i,o):e.drawElements(r,s,void 0===l?5123:t.elementType,i):void 0!==o?e.drawArraysInstanced(r,i,s,o):e.drawArrays(r,i,s)}e9(tm),e9(function(e,t,r){function n(e,t){return Object.fromEntries(Object.entries(t).map(([t,r])=>[t,ts(e,r)]))}let i=(r=e4(r)).callback;i&&(r.callback=(t,r)=>{i(t,t?void 0:n(e,r))});let o=tm(e,t,r);if(!i&&o)return n(e,o)});let th={};th[34041]=33306,th[6401]=36128,th[36168]=36128,th[6402]=36096,th[33189]=36096,th[33190]=36096,th[36012]=36096,th[35056]=33306,th[36013]=33306;let tp={};function tb(e,t){let r=new(e*t>65535?Uint32Array:Uint16Array)((e-1)*(t-1)*6),n=0;for(let i=0;i<t-1;i++)for(let t=0;t<e-1;t++){let o=i*e+t,a=o+1,l=(i+1)*e+t,s=l+1;r[n++]=o,r[n++]=l,r[n++]=a,r[n++]=a,r[n++]=l,r[n++]=s}return r}tp[32854]=!0,tp[32855]=!0,tp[36194]=!0,tp[34041]=!0,tp[33189]=!0,tp[6401]=!0,tp[36168]=!0;let tx=Math.PI/3,tg={pitch:.42,azimuth:-1.4,roll:0,distance:.34,target:[.5,.48,.08]};function ty(e){let t=Math.hypot(e[0],e[1],e[2])||1;return[e[0]/t,e[1]/t,e[2]/t]}function tv(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function tw(e,t){let r=e.distance*Math.cos(e.pitch),n=[e.target[0]+r*Math.cos(e.azimuth),e.target[1]+r*Math.sin(e.azimuth),e.target[2]+e.distance*Math.sin(e.pitch)],i=ty([e.target[0]-n[0],e.target[1]-n[1],e.target[2]-n[2]]),o=ty(tv(i,[0,0,1])),a=ty(tv(o,i)),l=Math.cos(e.roll),s=Math.sin(e.roll),u=[a[0]*l+o[0]*s,a[1]*l+o[1]*s,a[2]*l+o[2]*s],c=A.lookAt(n,e.target,u),d=A.inverse(c),m=A.perspective(tx,Math.max(.01,t),.01,100);return{viewProjectionMatrix:A.multiply(m,d),cameraPosition:n,cameraDirection:i}}let tF=16/9;var tL=e.i(71645);let tE=`#version 300 es
7precision highp float;
8
9in vec3 a_position;
10in vec3 a_normal;
11
12uniform mat4 u_modelViewProjection;
13uniform mat4 u_normalMatrix;
14uniform float u_growProgress;
15
16uniform vec3 u_cursorWorldPosition;
17uniform float u_cursorActive;
18uniform float u_gravityRadius;
19uniform float u_gravityStrength;
20
21out vec3 v_normal;
22
23vec3 deformPosition(vec3 position) {
24    vec3 deformedPosition = position;
25    deformedPosition.z *= u_growProgress;
26
27    if (u_cursorActive > 0.001) {
28        float cursorDistance = distance(
29            deformedPosition.xy,
30            u_cursorWorldPosition.xy
31        );
32
33        float radiusSquared =
34            u_gravityRadius * u_gravityRadius;
35
36        float gravityFalloff = exp(
37            -(cursorDistance * cursorDistance) /
38            radiusSquared
39        );
40
41        deformedPosition.z -=
42            gravityFalloff * u_gravityStrength * u_cursorActive;
43    }
44
45    return deformedPosition;
46}
47
48void main() {
49    vec3 position = deformPosition(a_position);
50
51    gl_Position =
52        u_modelViewProjection * vec4(position, 1.0);
53
54    v_normal = normalize(
55        mat3(u_normalMatrix) * a_normal
56    );
57}
58`,tA=`#version 300 es
59precision highp float;
60
61in vec3 v_normal;
62
63out vec4 fragmentColor;
64
65void main() {
66    fragmentColor = vec4(1.0);
67}
68`,tP=`#version 300 es
69precision highp float;
70
71in vec3 a_position;
72
73uniform mat4 u_modelViewProjection;
74uniform float u_growProgress;
75
76uniform vec3 u_cursorWorldPosition;
77uniform float u_cursorActive;
78uniform float u_gravityRadius;
79uniform float u_gravityStrength;
80
81uniform vec3 u_markerPositions[4];
82uniform int u_markerCount;
83
84out float v_markerInfluence;
85out float v_elevation;
86
87vec3 deformPosition(vec3 position) {
88    vec3 deformedPosition = position;
89    deformedPosition.z *= u_growProgress;
90
91    if (u_cursorActive > 0.001) {
92        float cursorDistance = distance(
93            deformedPosition.xy,
94            u_cursorWorldPosition.xy
95        );
96
97        float radiusSquared =
98            u_gravityRadius * u_gravityRadius;
99
100        float gravityFalloff = exp(
101            -(cursorDistance * cursorDistance) /
102            radiusSquared
103        );
104
105        deformedPosition.z -=
106            gravityFalloff * u_gravityStrength * u_cursorActive;
107    }
108
109    return deformedPosition;
110}
111
112void main() {
113    vec3 position = deformPosition(a_position);
114
115    gl_Position =
116        u_modelViewProjection * vec4(position, 1.0);
117
118    v_elevation = position.z;
119    float minimumMarkerDistance = 999999.0;
120
121    for (int markerIndex = 0; markerIndex < 4; markerIndex++) {
122        if (markerIndex >= u_markerCount) {
123            break;
124        }
125
126        float markerDistance = distance(
127            position.xy,
128            u_markerPositions[markerIndex].xy
129        );
130
131        minimumMarkerDistance = min(
132            minimumMarkerDistance,
133            markerDistance
134        );
135    }
136
137    v_markerInfluence =
138        1.0 - smoothstep(
139            0.0,
140            0.01,
141            minimumMarkerDistance
142        );
143}
144`,tk=`#version 300 es
145precision highp float;
146
147in float v_markerInfluence;
148in float v_elevation;
149
150uniform vec3 u_wireframeColor;
151uniform vec3 u_markerEdgeColor;
152uniform float u_wireframeOpacity;
153uniform float u_elevationFloor;
154uniform float u_elevationCeiling;
155
156out vec4 fragmentColor;
157
158void main() {
159    vec3 lineColor = mix(
160        u_wireframeColor,
161        u_markerEdgeColor,
162        v_markerInfluence
163    );
164    fragmentColor = vec4(
165        lineColor,
166        u_wireframeOpacity
167    );
168}
169`,tM=`#version 300 es
170precision highp float;
171
172in vec3 a_position;
173in vec2 a_texcoord;
174
175uniform mat4 u_viewProjection;
176uniform vec2 u_markerSizePx;
177uniform vec2 u_viewportSize;
178uniform float u_growProgress;
179
180uniform vec3 u_cursorWorldPosition;
181uniform float u_cursorActive;
182uniform float u_gravityRadius;
183uniform float u_gravityStrength;
184
185out vec2 v_texcoord;
186
187vec3 deformPosition(vec3 position) {
188    vec3 deformedPosition = position;
189    deformedPosition.z *= u_growProgress;
190
191    if (u_cursorActive > 0.001) {
192        float cursorDistance = distance(
193            deformedPosition.xy,
194            u_cursorWorldPosition.xy
195        );
196
197        float radiusSquared =
198            u_gravityRadius * u_gravityRadius;
199
200        float gravityFalloff = exp(
201            -(cursorDistance * cursorDistance) /
202            radiusSquared
203        );
204
205        deformedPosition.z -=
206            gravityFalloff * u_gravityStrength * u_cursorActive;
207    }
208
209    return deformedPosition;
210}
211
212void main() {
213    vec3 markerPosition = deformPosition(a_position);
214
215    vec4 clipPosition =
216        u_viewProjection * vec4(markerPosition, 1.0);
217
218    /*
219     * The marker uses a fixed screen-space size.
220     * Its horizontal centre and bottom tip remain anchored
221     * to the projected terrain position.
222     */
223
224
225    vec2 markerOffsetPx = vec2(
226        (a_texcoord.x - 0.5) * u_markerSizePx.x -
227            u_markerSizePx.x * 0.07,
228        a_texcoord.y * u_markerSizePx.y
229    );
230    vec2 safeViewportSize = max(
231        u_viewportSize,
232        vec2(1.0)
233    );
234
235    vec2 markerOffsetNdc =
236        markerOffsetPx * 2.0 / safeViewportSize;
237
238    /*
239     * Multiplication by clipPosition.w cancels the normal
240     * perspective scaling, keeping near and far markers
241     * the same size.
242     */
243    clipPosition.xy +=
244        markerOffsetNdc * clipPosition.w;
245
246    gl_Position = clipPosition;
247    v_texcoord = a_texcoord;
248}
249`,tR=`#version 300 es
250
251precision highp float;
252
253in vec2 v_texcoord;
254
255uniform sampler2D u_markerTexture;
256uniform float u_markerOpacity;
257
258out vec4 fragmentColor;
259
260void main() {
261    vec2 textureCoordinates = vec2(
262        v_texcoord.x,
263        1.0 - v_texcoord.y
264    );
265
266    vec4 markerColor = texture(
267        u_markerTexture,
268        textureCoordinates
269    );
270
271    if (markerColor.a < 0.01) {
272        discard;
273    }
274
275    fragmentColor = vec4(
276        markerColor.rgb,
277        markerColor.a * u_markerOpacity
278    );
279}
280`,tI=[90,120],tS=[72,96];function tT(e,t){if(!t)return;let r=new Set;for(let e of Object.values(t.attribs??{}))e.buffer&&r.add(e.buffer);for(let n of(t.indices&&r.add(t.indices),r))e.deleteBuffer(n)}function t_({mesh:e,camera:t,stableCamera:r,className:n,gravityEnabled:i=!0,depthCullingEnabled:o=!0,markersReady:a=!0,markersEnabled:l=!0,wireframeColor:u,titleExclusionRect:c,onError:d}){let m=(0,tL.useRef)(null),f=(0,tL.useRef)(null),h=(0,tL.useRef)(null),p=(0,tL.useRef)(null),b=(0,tL.useRef)(null),x=(0,tL.useRef)(null),g=(0,tL.useRef)(null),y=(0,tL.useRef)(null),v=(0,tL.useRef)(null),w=(0,tL.useRef)(t),F=(0,tL.useRef)([]),L=(0,tL.useRef)(d),E=(0,tL.useRef)([0,0,0]),P=(0,tL.useRef)(0),M=(0,tL.useRef)(0),S=(0,tL.useRef)(0),T=(0,tL.useRef)(0),_=(0,tL.useRef)(!1),C=(0,tL.useRef)(new Float32Array(12)),z=(0,tL.useRef)(0),j=(0,tL.useRef)(0),[N,D]=(0,tL.useState)(!0),[O,B]=(0,tL.useState)(!0),[U,W]=(0,tL.useState)(1);return(0,tL.useEffect)(()=>{w.current=t},[t]),(0,tL.useEffect)(()=>{L.current=d},[d]),(0,tL.useEffect)(()=>{let e=window.matchMedia("(prefers-reduced-motion: reduce)"),t=()=>{_.current=e.matches,e.matches&&(T.current=1)};return t(),e.addEventListener("change",t),()=>{e.removeEventListener("change",t)}},[]),(0,tL.useEffect)(()=>{let e=m.current;if(!e)return;let t=new IntersectionObserver(([e])=>{D(e.isIntersecting)},{rootMargin:"200px"});return t.observe(e),()=>{t.disconnect()}},[]),(0,tL.useEffect)(()=>{let e=m.current;if(!e)return;let t=(e,t)=>{e>0&&t>0&&W(e/t)},r=new ResizeObserver(([e])=>{t(e.contentRect.width,e.contentRect.height)}),n=e.getBoundingClientRect();return t(n.width,n.height),r.observe(e),()=>{r.disconnect()}},[]),(0,tL.useEffect)(()=>{let e=()=>{B("visible"===document.visibilityState)};return document.addEventListener("visibilitychange",e),()=>{document.removeEventListener("visibilitychange",e)}},[]),(0,tL.useEffect)(()=>{let e=m.current;if(!e)return;let t=e.getContext("webgl2",{alpha:!0,antialias:!0,premultipliedAlpha:!0});if(!t)return void L.current?.(Error("WebGL 2 is not supported"));f.current=t;let r=e=>{e.preventDefault(),L.current?.(Error("WebGL context was lost"))};e.addEventListener("webglcontextlost",r);let n=null,i=null,o=!1;try{p.current=tc(t,[tE,tA]),b.current=tc(t,[tP,tk]),x.current=tc(t,[tM,tR]);let e=function(e,t,r){var n,i,o;r=r||ej,t=t||eb.textureOptions;let a=e.createTexture(),l=t.target||3553,s=t.width||1,u=t.height||1,c=0,d=t.internalFormat||6408;e.bindTexture(l,a),34067===l&&(e.texParameteri(l,10242,33071),e.texParameteri(l,10243,33071));let m=t.src;if(m)if("function"==typeof m&&(m=m(e,t)),"string"==typeof m)n=t,i=(i=r)||ej,eO(e,a,n=n||eb.textureOptions),eD((n=ek(e,n)).src,n.crossOrigin,function(t,r){t?i(t,a,r):(ez(e,a,r,n),i(null,a,r))});else if(I(m)||Array.isArray(m)&&("number"==typeof m[0]||Array.isArray(m[0])||I(m[0]))){let r=function(e,t,r,n){var i,o;let a=(n=n||eb.textureOptions).target||3553;e.bindTexture(a,t);let l=n.level||0,s=n.internalFormat||n.format||6408,u=ew(s),c=n.format||u.format,d=n.type||(i=r,o=u.type,I(i)?k(i):o||5121);I(r)?r instanceof Uint8ClampedArray&&(r=new Uint8Array(r.buffer)):r=new(R(d))(r);let{width:m,height:f,depth:h}=function(e,t,r,n,i,o){let a=r.width,l=r.height,s=r.depth,u=eF(n);if(u){if(!a||!l)throw Error("compressed texture needs to set width and height!");s=s||1}else{let r,c=ev(n,o),d=t.byteLength/c;
280if(d%1)throw Error(`length wrong size for format: ${eh(ep,i)}`);if(u&&(!a||!l))throw Error("compressed texture needs to set width and height!");if(32879===e||35866===e)if(a||l||s)!a||l&&s?!l||a&&s?(a=(r=eE(ep,e,a,l,d/s)).width,l=r.height):(a=(r=eE(ep,e,a,s,d/l)).width,s=r.height):(l=(r=eE(ep,e,l,s,d/a)).width,s=r.height);else{let e=Math.cbrt(d);if(e%1!=0)throw Error(`can't guess cube size of array of numElements: ${d}`);a=e,l=e,s=e}else a=(r=eE(ep,e,a,l,d)).width,l=r.height}return{width:a,height:l,depth:s}}(a,r,n,s,c,d),p=eF(s);eM(e),e.pixelStorei(3317,n.unpackAlignment||1);let b=0;return eA(e,n,()=>{let t,i=0,{blockWidth:o,blockHeight:u,bytesPerBlock:x}=(t=ey(s)).block?{blockWidth:t.block.width,blockHeight:t.block.height,bytesPerBlock:t.block.bytes}:{blockWidth:1,blockHeight:1,bytesPerBlock:ev(s,d)};for(;i<r.byteLength;){let t=Math.max(1,m>>b),g=Math.max(1,f>>b),y=3553===a?Math.max(1,h>>b):h,v=Math.ceil(t/o)*Math.ceil(g/u)*x*y*(34067===a?6:1);if(i+v>r.byteLength)throw Error("src size does not match number of mip levels");let w=r.subarray(i/r.BYTES_PER_ELEMENT,(i+v)/r.BYTES_PER_ELEMENT),F=l+b;if(34067===a){let r=w.length/6;eC(e,n).forEach(n=>{let i=r*n.ndx,o=w.subarray(i,i+r);p?e.compressedTexImage2D(n.face,F,s,t,g,0,o):e.texImage2D(n.face,F,s,t,g,0,c,d,o)})}else 32879===a||35866===a?e.texImage3D(a,F,s,t,g,y,0,c,d,w):p?e.compressedTexImage2D(a,F,s,t,g,0,w):e.texImage2D(a,F,s,t,g,0,c,d,w);if(++b,i+=v,1===t&&1===g&&1===y&&i!==r.byteLength)throw Error("src size has more data than can fit in mip levels")}}),{width:m,height:f,depth:h,type:d,lastMipLevelUploaded:l+b-1}}(e,a,m,t);s=r.width,u=r.height,c=r.lastMipLevelUploaded}else Array.isArray(m)&&("string"==typeof m[0]||eN(m[0]))?34067===l?function(e,t,r,n){let i;n=n||ej;let o=r.src;if(6!==o.length)throw Error("there must be 6 urls for a cubemap");let a=r.level||0,l=r.internalFormat||r.format||6408,s=ew(l),u=r.format||s.format,c=r.type||5121,d=r.target||3553;if(34067!==d)throw Error("target must be TEXTURE_CUBE_MAP");eO(e,t,r),r=ek(e,r);let m=6,f=[],h=e_(e,r);i=o.map(function(o,s){var p;return eD(o,r.crossOrigin,(p=h[s],function(o,s){--m,o?f.push(o):s.width!==s.height?f.push("cubemap face img is not a square: "+s.src):eA(e,r,()=>{e.bindTexture(d,t),5===m?e_().forEach(function(t){e.texImage2D(t,a,l,u,c,s)}):e.texImage2D(p,a,l,u,c,s),eT(r)&&e.generateMipmap(d)}),0===m&&n(f.length?f:void 0,t,i)}))})}(e,a,t,r):function(e,t,r,n){let i;n=n||ej;let o=r.src,a=r.internalFormat||r.format||6408,l=ew(a),s=r.format||l.format,u=r.type||5121,c=r.target||35866;if(32879!==c&&35866!==c)throw Error("target must be TEXTURE_3D or TEXTURE_2D_ARRAY");eO(e,t,r),r=ek(e,r);let d=o.length,m=[],f=r.level||0,h=r.width,p=r.height,b=o.length,x=!0;i=o.map(function(o,l){return eD(o,r.crossOrigin,function(o,g){--d,o?m.push(o):eA(e,r,()=>{if(e.bindTexture(c,t),x){x=!1,h=r.width||g.width,p=r.height||g.height,e.texImage3D(c,f,a,h,p,b,0,s,u,null);for(let t=0;t<b;++t)e.texSubImage3D(c,f,0,0,t,h,p,1,s,u,g)}else{let t,r=g;(g.width!==h||g.height!==p)&&(r=(t=ex()).canvas,t.canvas.width=h,t.canvas.height=p,t.drawImage(g,0,0,h,p)),e.texSubImage3D(c,f,0,0,l,h,p,1,s,u,r),t&&r===t.canvas&&(t.canvas.width=0,t.canvas.height=0)}eT(r)&&e.generateMipmap(c)}),0===d&&n(m.length?m:void 0,t,i)})})}(e,a,t,r):(ez(e,a,m,t),s=m.width,u=m.height);else{let r,n,i,l,s,u;r=(o=t).target||3553,e.bindTexture(r,a),n=o.level||0,l=ew(i=o.internalFormat||o.format||6408),s=o.format||l.format,u=o.type||l.type,eA(e,o,()=>{if(34067===r)for(let t=0;t<6;++t)e.texImage2D(34069+t,n,i,o.width,o.height,0,s,u,null);else 32879===r||35866===r?e.texImage3D(r,n,i,o.width,o.height,o.depth,0,s,u,null):e.texImage2D(r,n,i,o.width,o.height,0,s,u,null)})}return eT(t)&&eI(e,a,{options:t,width:s,height:u,internalFormat:d,lastMipLevelUploaded:c}),eR(e,a,t),a}(t,{src:new Uint8Array([0,0,0,0]),width:1,height:1,min:t.LINEAR,mag:t.LINEAR,wrap:t.CLAMP_TO_EDGE});n=e,h.current=e;let r=new Image;i=r,r.onload=()=>{o||h.current!==e||ez(t,e,r,{min:t.LINEAR,mag:t.LINEAR,wrap:t.CLAMP_TO_EDGE})},r.onerror=()=>{o||L.current?.(Error("Could not load marker.png"))},r.src="/static/icons/marker.png"}catch(e){L.current?.(e instanceof Error?e:Error("Could not create WebGL programs"))}return t.enable(t.DEPTH_TEST),t.depthFunc(t.LEQUAL),t.enable(t.BLEND),t.blendFunc(t.SRC_ALPHA,t.ONE_MINUS_SRC_ALPHA),t.enable(t.POLYGON_OFFSET_FILL),t.clearColor(0,0,0,0),(
280)=>{o=!0,i&&(i.onload=null,i.onerror=null),e.removeEventListener("webglcontextlost",r),p.current&&t.deleteProgram(p.current.program),b.current&&t.deleteProgram(b.current.program),x.current&&t.deleteProgram(x.current.program),n&&h.current===n&&t.deleteTexture(n),p.current=null,b.current=null,x.current=null,h.current=null,f.current=null}},[]),(0,tL.useEffect)(()=>{let t=f.current;if(!t)return;let r=q(t,{a_position:{numComponents:3,data:e.positions},a_normal:{numComponents:3,data:e.normals},indices:e.indices}),n=function(e,t){let r=[];for(let e=0;e<t.gridHeight;e++)for(let n=0;n<t.gridWidth;n++){let i=e*t.gridWidth+n;n<t.gridWidth-1&&r.push(i,i+1),e<t.gridHeight-1&&r.push(i,i+t.gridWidth)}let n=t.vertexCount>65535?Uint32Array:Uint16Array;return q(e,{a_position:{numComponents:3,data:t.positions},indices:new n(r)})}(t,e);g.current=r,y.current=n;let i=1/0,o=-1/0;for(let t=2;t<e.positions.length;t+=3)i=Math.min(i,e.positions[t]),o=Math.max(o,e.positions[t]);return Number.isFinite(i)||(i=0),Number.isFinite(o)||(o=0),z.current=i,j.current=o,S.current=performance.now(),T.current=+!!_.current,()=>{tT(t,r),tT(t,n),g.current===r&&(g.current=null),y.current===n&&(y.current=null)}},[e]),(0,tL.useEffect)(()=>{let t=m.current,n=f.current;if(!t||!n||!a||!l)return;let{viewProjectionMatrix:i}=tw(r??w.current,U),o=null;if(c){let e=t.getBoundingClientRect();if(e.width>0&&e.height>0){let t=t=>(t-e.left)/e.width*2-1,r=t=>-((t-e.top)/e.height*2-1),n=t(c.left),i=t(c.right),a=r(c.top),l=r(c.bottom);o={minX:Math.min(n,i)-.03,maxX:Math.max(n,i)+.03,minY:Math.min(a,l)-.03,maxY:Math.max(a,l)+.03}}}let s=function(e,t,r=3,n=.1,i){let o=[],a=-1+n,l=1-n;for(let r=0;r<e.vertexCount;r++){var s,u;let n=function(e,t,r){let n=3*t,i=e[n],o=e[n+1],a=e[n+2],l=r[0]*i+r[4]*o+r[8]*a+r[12],s=r[1]*i+r[5]*o+r[9]*a+r[13],u=r[2]*i+r[6]*o+r[10]*a+r[14],c=r[3]*i+r[7]*o+r[11]*a+r[15];return c<=0?null:{x:l/c,y:s/c,z:u/c}}(e.positions,r,t);!n||n.x<a||n.x>l||n.y<a||n.y>l||n.z<-1||n.z>1||(s=n.x,u=n.y,i&&s>=i.minX&&s<=i.maxX&&u>=i.minY&&u<=i.maxY)||o.push({vertexIndex:r,x:n.x,y:n.y})}if(0===o.length)return[];let c=1/0,d=-1/0,m=1/0,f=-1/0;for(let e of o)c=Math.min(c,e.x),d=Math.max(d,e.x),m=Math.min(m,e.y),f=Math.max(f,e.y);let h=d-c,p=f-m;return[{x:.05,y:.5},{x:.92,y:.25},{x:.92,y:.75},{x:.92,y:.5}].slice(0,Math.max(0,Math.min(r,4))).map(t=>{let r=c+h*t.x,n=m+p*t.y,i=o[0],a=1/0;for(let e of o){let t=(e.x-r)**2+(e.y-n)**2;t<a&&(a=t,i=e)}let l=3*i.vertexIndex;return{vertexIndex:i.vertexIndex,position:[e.positions[l],e.positions[l+1],e.positions[l+2]]}})}(e,i,3,window.matchMedia("(max-width: 600px)").matches?.18:.1,o);F.current=s;let u=v.current;return u&&tT(n,u),v.current=function(e,t){if(0===t.length)return null;let r=[],n=[],i=[];return t.forEach((e,t)=>{let o=4*t;for(let t=0;t<4;t++)r.push(...e.position);n.push(0,0,1,0,1,1,0,1),i.push(o,o+1,o+2,o,o+2,o+3)}),q(e,{a_position:{numComponents:3,data:new Float32Array(r)},a_texcoord:{numComponents:2,data:new Float32Array(n)},indices:new Uint16Array(i)})}(n,s),()=>{let e=v.current;e&&(tT(n,e),v.current=null)}},[l,r,U,a,e,c]),(0,tL.useEffect)(()=>{let t=m.current;if(!t)return;let r=()=>{P.current=0},n=window.matchMedia("(hover: none) and (pointer: coarse)").matches;if(!i||n)return void r();let o=null,a=null,l=()=>{o=null;let n=a;if(a=null,!n)return;let{clientX:i,clientY:l}=n,s=t.getBoundingClientRect();if(s.width<=0||s.height<=0||!(i>=s.left&&i<=s.right&&l>=s.top&&l<=s.bottom))return void r();let u=(i-s.left)/s.width*2-1,c=-((l-s.top)/s.height*2-1),d=s.width/s.height,{viewProjectionMatrix:m}=tw(w.current,d),f=A.inverse(m),h=(e,t,r)=>{let n=f[0]*e+f[4]*t+f[8]*r+f[12],i=f[1]*e+f[5]*t+f[9]*r+f[13],o=f[2]*e+f[6]*t+f[10]*r+f[14],a=f[3]*e+f[7]*t+f[11]*r+f[15];return[n/a,i/a,o/a]}
280,p=h(u,c,-1),b=h(u,c,1),x=[b[0]-p[0],b[1]-p[1],b[2]-p[2]],g=function(e,t,r,n){let{indices:i,positions:o}=e,a=1/0;for(let e=0;e<i.length;e+=3){let l=3*i[e],s=3*i[e+1],u=3*i[e+2],c=o[l],d=o[l+1],m=o[l+2]*n,f=o[s]-c,h=o[s+1]-d,p=o[s+2]*n-m,b=o[u]-c,x=o[u+1]-d,g=o[u+2]*n-m,y=r[1]*g-r[2]*x,v=r[2]*b-r[0]*g,w=r[0]*x-r[1]*b,F=f*y+h*v+p*w;if(1e-7>Math.abs(F))continue;let L=1/F,E=t[0]-c,A=t[1]-d,P=t[2]-m,k=L*(E*y+A*v+P*w);if(k<0||k>1)continue;let M=A*p-P*h,R=P*f-E*p,I=E*h-A*f,S=L*(r[0]*M+r[1]*R+r[2]*I);if(S<0||k+S>1)continue;let T=L*(b*M+x*R+g*I);T>1e-7&&T<a&&(a=T)}return Number.isFinite(a)?[t[0]+r[0]*a,t[1]+r[1]*a,t[2]+r[2]*a]:null}(e,p,x,T.current);g?(E.current=g,P.current=1):r()},s=e=>{a={clientX:e.clientX,clientY:e.clientY},null===o&&(o=requestAnimationFrame(l))};return window.addEventListener("pointermove",s,{passive:!0}),()=>{window.removeEventListener("pointermove",s),null!==o&&cancelAnimationFrame(o),a=null,r()}},[i,e]),(0,tL.useEffect)(()=>{if(!N||!O)return;let e=m.current,t=f.current,r=p.current,n=b.current,a=x.current;if(!e||!t||!r||!n||!a)return;let l=window.matchMedia("(max-width: 600px)").matches,s=window.matchMedia("(hover: none) and (pointer: coarse)").matches,c=i&&!s,d=l?1e3:1800,L=l?tS:tI,k=0,R=performance.now(),I=()=>{var i;let l,s,m=g.current,f=y.current;if(!m||!f){k=requestAnimationFrame(I);return}let p=performance.now(),b=p-R;R=p;let x=1-Math.exp(-b/100);if(M.current+=(P.current-M.current)*x,i=Math.max(0,i=(i=Math.min(window.devicePixelRatio||1,2))||1),l=e.clientWidth*i|0,s=e.clientHeight*i|0,(e.width!==l||e.height!==s)&&(e.width=l,e.height=s),0===e.width||0===e.height){k=requestAnimationFrame(I);return}!_.current&&T.current<1&&(T.current=1-(1-Math.min(1,(performance.now()-S.current)/d))**3),t.viewport(0,0,e.width,e.height),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT);let N=e.width/e.height,{viewProjectionMatrix:D}=tw(w.current,N),O={u_cursorWorldPosition:E.current,u_cursorActive:c?M.current:0,u_gravityRadius:.08,u_gravityStrength:.012,u_growProgress:T.current};o&&(t.enable(t.DEPTH_TEST),t.depthMask(!0),t.colorMask(!1,!1,!1,!1),t.polygonOffset(1,1),t.useProgram(r.program),tl(t,r,m),ta(r,{...O,u_modelViewProjection:D,u_normalMatrix:A.identity()}),tf(t,m),t.colorMask(!0,!0,!0,!0),t.polygonOffset(0,0)),o?(t.enable(t.DEPTH_TEST),t.depthFunc(t.LEQUAL)):t.disable(t.DEPTH_TEST),t.depthMask(!1),t.useProgram(n.program),tl(t,n,f);let B=C.current;B.fill(0),F.current.slice(0,4).forEach((e,t)=>{B[3*t]=e.position[0],B[3*t+1]=e.position[1],B[3*t+2]=e.position[2]}),ta(n,{...O,u_modelViewProjection:D,u_markerPositions:B,u_markerCount:T.current>.5?Math.min(4,F.current.length):0,u_wireframeColor:u??[.765,.8,.816],u_markerEdgeColor:[1,.333,.2],u_wireframeOpacity:1,u_elevationFloor:z.current,u_elevationCeiling:j.current}),tf(t,f,t.LINES);let U=v.current;U&&(t.enable(t.DEPTH_TEST),t.depthMask(!1),t.disable(t.CULL_FACE),t.useProgram(a.program),tl(t,a,U),ta(a,{...O,u_viewProjection:D,u_markerSizePx:L,u_viewportSize:[e.clientWidth,e.clientHeight],u_markerTexture:h.current,u_markerOpacity:T.current}),tf(t,U),t.enable(t.CULL_FACE)),t.depthMask(!0),t.depthFunc(t.LEQUAL),k=requestAnimationFrame(I)};return k=requestAnimationFrame(I),()=>{cancelAnimationFrame(k)}},[o,i,N,O,e]),(0,s.jsx)("canvas",{ref:m,className:n,"aria-hidden":"true",style:{display:"block",position:"absolute",inset:0,width:"100%",height:"100%",background:"transparent",pointerEvents:"none"}})}e.i(47167);let tC={latitude:51.0504,longitude:13.7373},tz=[tC,{latitude:50.9614,longitude:14.0737},{latitude:50.429,longitude:12.954},{latitude:51.799,longitude:10.618},{latitude:50.65,longitude:10.766},{latitude:50.497,longitude:9.938},{latitude:50.659167,longitude:13.465489},{latitude:50.35963,longitude:12.46463},{latitude:51.12936,longitude:14.93264},{latitude:50.386,longitude:7.012},{latitude:51.18,longitude:8.489},{latitude:49.812,longitude:11.252},{latitude:36.1069,longitude:-112.1129},{latitude:37.7459,longitude:-119.5332},{latitude:35.3606,longitude:138.7274},{latitude:57.12,longitude:-4.71},{latitude:38.6431,longitude:34.8289},{latitude:-33.712,longitude:150.311},{latitude:-39.2818,longitude:175.5684},{latitude:-33.9628,longitude:18.4098},{latitude:62.1015,longitude:7.0941}],tj="terrain-location-index";function tN(e){return Math.max(-85.05112878,Math.min(85.05112878,e))}async function tD(e,t=2,r){var n;return{...function(e,t){if(!Number.isInteger(t)||t<1)throw Error("Subsample must be a positive integer");
280let r=e.width,n=e.height,i=Math.floor(r/t),o=Math.floor(n/t);if(i<2||o<2)throw Error("Terrain tile resolution is too small");let a=new Float32Array(i*o),l=e.data;for(let e=0;e<o;e++)for(let n=0;n<i;n++){var s;let o=(e*t*r+n*t)*4,u=(s=l[o],256*s+l[o+1]+l[o+2]/256-32768);a[e*i+n]=Number.isFinite(u)&&u>=-12e3&&u<=9e3?u:NaN}for(let e=0;e<o;e++)for(let t=0;t<i;t++){let r=e*i+t,n=a[r];if(!Number.isFinite(n))throw Error("Terrain tile contains invalid elevation data");if(t+1<i&&Math.abs(n-a[r+1])>5e3||e+1<o&&Math.abs(n-a[r+i])>5e3)throw Error("Terrain tile contains implausible elevation differences")}return{elevations:function(e,t,r){let n=new Float32Array(e);if(!e.some(e=>Number.isFinite(e)))throw Error("Terrain tile contains no valid elevation data");let i=Math.max(t,r);for(let o=0;o<r;o++)for(let a=0;a<t;a++){let l=o*t+a;if(Number.isFinite(e[l]))continue;let s=null;for(let n=1;n<i&&null===s;n++){let i=0,l=0,u=Math.max(0,o-n),c=Math.min(r-1,o+n),d=Math.max(0,a-n),m=Math.min(t-1,a+n);for(let r=u;r<=c;r++)for(let s=d;s<=m;s++){if(Math.max(Math.abs(r-o),Math.abs(s-a))!==n)continue;let u=e[r*t+s];Number.isFinite(u)&&(i+=u,l++)}l>0&&(s=i/l)}if(null===s)throw Error("Could not replace invalid terrain elevation");n[l]=s}return n}(a,i,o),width:i,height:o}}(function(e){let t=document.createElement("canvas");t.width=e.naturalWidth||e.width,t.height=e.naturalHeight||e.height;let r=t.getContext("2d",{willReadFrequently:!0});if(!r)throw Error("Could not create terrain decoding canvas");return r.drawImage(e,0,0),r.getImageData(0,0,t.width,t.height)}(await (!function({x:e,y:t,z:r}){if(!Number.isInteger(e)||!Number.isInteger(t)||!Number.isInteger(r))throw Error("Tile coordinates must be integers");if(r<0)throw Error("Tile zoom must be non-negative");let n=2**r;if(e<0||e>=n||t<0||t>=n)throw Error(`Invalid tile coordinates: z=${r}, x=${e}, y=${t}`)}(e),n="https://terrain.kartenforum.slub-dresden.de/v2/{z}/{x}/{y}.png".replace("{z}",String(e.z)).replace("{x}",String(e.x)).replace("{y}",String(e.y)),new Promise((e,t)=>{let i,o=new Image,a=()=>{clearTimeout(i),r?.removeEventListener("abort",l),o.onload=null,o.onerror=null},l=()=>{a(),o.src="",t(new DOMException("Terrain loading aborted","AbortError"))};r?.aborted?l():(o.crossOrigin="anonymous",o.decoding="async",o.fetchPriority="high",o.onload=()=>{a(),e(o)},o.onerror=()=>{a(),t(Error(`Failed to load terrain tile: ${n}`))},r?.addEventListener("abort",l,{once:!0}),i=setTimeout(()=>{a(),o.src="",t(Error(`Terrain tile request timed out: ${n}`))},1e4),o.src=n)}))),t),tileCoords:e}}let tO=6*Math.PI/180;async function tB(e,t){let r=function(e,t){if(!Number.isInteger(9))throw Error("Zoom must be a non-negative integer");if(!Number.isFinite(e)||!Number.isFinite(t))throw Error("Latitude and longitude must be finite numbers");let r=tN(e)*Math.PI/180;return{x:Math.min(511,Math.max(0,Math.floor((Math.max(-180,Math.min(180,t))+180)/360*512))),y:Math.min(511,Math.max(0,Math.floor((1-Math.log(Math.tan(r)+1/Math.cos(r))/Math.PI)/2*512))),z:9}}(e.latitude,e.longitude);return function(e,t,r=1,n=1,i=1.4){if(e.width<2||e.height<2)throw Error("Terrain grid must be at least 2 × 2");if(!Number.isFinite(t)||t<=0)throw Error("Tile real width must be a positive number");if(!Number.isFinite(r)||r<0)throw Error("Terrain exaggeration must be a non-negative number");if(!Number.isFinite(i)||i<=0)throw Error("Terrain width scale must be a positive number");if(!Number.isInteger(n)||n<0)throw Error("Terrain smoothing radius must be a non-negative integer");let o=function(e,t){if(t<=0)return e;let{elevations:r,width:n,height:i,tileCoords:o}=e,a=new Float32Array(r.length);for(let e=0;e<i;e++)for(let o=0;o<n;o++){let l=0,s=0;for(let a=-t;a<=t;a++)for(let u=-t;u<=t;u++){let t=e+a,c=o+u;t<0||t>=i||c<0||c>=n||(l+=r[t*n+c],s++)}let u=e*n+o;a[u]=s>0?l/s:r[u]}return{elevations:a,width:n,height:i,tileCoords:o}}(e,n),a=function(e,t,r,n){let{elevations:i,width:o,height:a}=e,l=new Float32Array(o*a*3),{minimum:s,maximum:u}=function(e){let t=1/0,r=-1/0;for(let n of e)t=Math.min(t,n),r=Math.max(r,n);return{minimum:t,maximum:r}}(i),c=u-s,d=c>0&&n>0?t/n:0,m=.015/Math.max(.01,c);d<m&&(d=m);let f=Math.max(o,a)-1;for(let e=0;e<a;e++)for(let t=0;t<o;t++){let n=e*o+t,a=3*n,u=t/f;l[a]=.5+(u-.5)*r,l[a+1]=1-e/f,l[a+2]=(i[n]-s)*d}return l}(o,r,i,t);return{positions:a,normals:function(e,t,r){let n=new Float32Array(t*r*3),i=(r,n)=>{let i=(r*t+n)*3;return[e[i],e[i+1],e[i+2]]};for(let e=0;e<r;e++)for(let o=0;o<t;o++){let a=Math.max(0,o-1),l=Math.min(t-1,o+1),s=Math.max(0,e-1),u=Math.min(r-1,e+1),c=i(e,a),d=i(e,l),m=i(s,o),f=i(u,o),h=[d[0]-c[0],d[1]-c[1],d[2]-c[2]],p=[m[0]-f[0],m[1]-f[1],m[2]-f[2]],b=h[1]*p[2]-h[2]*p[1],x=h[2]*p[0]-h[0]*p[2],g=h[0]*p[1]-h[1]*p[0],y=Math.hypot(b,x,g)||1,v=(e*t+o)*3;n[v]=b/y,n[v+1]=x/y,n[v+2]=g/y}return n}(a,o.width,o.height),indices:tb(o.width,o.height),vertexCount:o.width*o.height,triangleCount:(o.width-1)*(o.height-1)*2,gridWidth:o.width,gridHeight:o.height}}(await tD(r,2,t),2*Math.PI*6378137/512*Math.cos(tN(e.latitude)*Math.PI/180),5,1)}function tU({className:e,disableMarkers:t,sx:r,...n}){let[i,o]=(0,tL.useState)(()=>(function(e=128,t=128,r=1.4){let n=new Float32Array(e*t*3),i=new Float32Array(e*t*3),o=Math.max(e,t)-1;for(let a=0;a<t;a++)for(let t=0;t<e;t++){let l=3*(a*e+t),s=t/o;n[l]=.5+(s-.5)*r,n[l+1]=1-a/o,n[l+2]=0,i[l]=0,i[l+1]=0,i[l+2]=1}return{positions:n,normals:i,indices:tb(e,t),vertexCount:e*t,triangleCount:(e-1)*(t-1)*2,gridWidth:e,gridHeight:t}})()),[a,l]=(0,tL.useState)(tg),[c,d]=(0,tL.useState)(tg),[m,f]=(0,tL.useState)(!1),[h,p]=(0,tL.useState)(null),b=(0,tL.useRef)(null),x=(0,tL.useRef)(null),g=(0,tL.useRef)(null),y=(0,tL.useRef)(0),v=(0,tL.useRef)(tg),w=(0,tL.useRef)(1),F=(0,tL.useRef)(null),L=()=>{let e=v.current;return{...e,distance:e.distance*w.current}},E=()=>{let e=L();l({...e,pitch:e.pitch+y.current})},A=()=>{d(L()),E()};return(0,tL.useEffect)(()=>{let e=x.current;if(!e)return;let t=e.parentElement??e,r=(e,t)=>{var r;e<=0||t<=0||(w.current=!Number.isFinite(r=e/t)||r<=0?1:Math.max(.5,Math.min(2,tF/Math.max(.5,Math.min(4,r)))),A())},n=new ResizeObserver(([e])=>{r(e.contentRect.width,e.contentRect.height)}),i=t.getBoundingClientRect();return r(i.width,i.height),n.observe(t),()=>{n.disconnect()}},[]),(0,tL.useEffect)(()=>{let e=x.current;if(!e)return;let t=(e.closest(".cover")??document).querySelector(".title");if(!t)return;let r=()=>{p(t.getBoundingClientRect())},n=new ResizeObserver(r);return r(),n.observe(t),window.addEventListener("resize",r),()=>{n.disconnect(),window.removeEventListener("resize",r)}},[]),(0,tL.useEffect)(()=>
280{if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;let e=()=>{let t=x.current;if(!t){g.current=null;return}let r=t.getBoundingClientRect();null===F.current&&(F.current=r.top);let n=Math.min(1,Math.max(0,F.current-r.top)/200)*tO,i=n-y.current;if(1e-4>Math.abs(i)){y.current=n,E(),g.current=null;return}y.current+=.2*i,E(),g.current=requestAnimationFrame(e)},t=()=>{null===g.current&&(g.current=requestAnimationFrame(e))};return e(),window.addEventListener("scroll",t,{passive:!0}),window.addEventListener("resize",t),()=>{window.removeEventListener("scroll",t),window.removeEventListener("resize",t),null!==g.current&&(cancelAnimationFrame(g.current),g.current=null)}},[]),(0,tL.useEffect)(()=>{let e=new AbortController,t=!0;return(async()=>{try{var r;let n,i,a,l;f(!1);let s=function(){let e=sessionStorage.getItem(tj);if(null!==e){let t=Number.parseInt(e,10);if(Number.isInteger(t)&&t>=0&&t<tz.length)return tz[t]}let t=Math.floor(Math.random()*tz.length);return sessionStorage.setItem(tj,String(t)),tz[t]}();if(!t||e.signal.aborted)return;try{n=await tB(s,e.signal)}catch(t){if(e.signal.aborted)return;if(s.latitude===tC.latitude&&s.longitude===tC.longitude)throw t;n=await tB(tC,e.signal)}if(!t||e.signal.aborted)return;o(n),(e=>{let r=v.current,n=performance.now();if(window.matchMedia("(prefers-reduced-motion: reduce)").matches){v.current=e,A(),f(!0);return}let i=window.matchMedia("(max-width: 600px)").matches?1200:1600,o=a=>{let l,s;if(!t)return;let u=Math.min(1,(a-n)/i);l=1-(1-Math.max(0,Math.min(1,u)))**3,v.current={pitch:(s=(e,t)=>e+(t-e)*l)(r.pitch,e.pitch),azimuth:s(r.azimuth,e.azimuth),roll:s(r.roll,e.roll),distance:s(r.distance,e.distance),target:[s(r.target[0],e.target[0]),s(r.target[1],e.target[1]),s(r.target[2],e.target[2])]},A(),u<1?b.current=requestAnimationFrame(o):(f(!0),b.current=null)};b.current=requestAnimationFrame(o)})((r=n,i=function(e){let t=1/0,r=-1/0,n=0;for(let i=2;i<e.positions.length;i+=3){let o=e.positions[i];t=Math.min(t,o),r=Math.max(r,o),n+=o}let i=n/e.vertexCount,o=0;for(let t=2;t<e.positions.length;t+=3){let r=e.positions[t]-i;o+=r*r}return{minimumHeight:t,maximumHeight:r,averageHeight:i,elevationRange:r-t,standardDeviation:Math.sqrt(o/e.vertexCount)}}(r),a=.32,l=.4,i.elevationRange<.05?(a=.38,l=.55):i.elevationRange<.125?(a=.34,l=.45):i.elevationRange<.25?(a=.3,l=.35):(a=.27,l=.25),{pitch:.42,azimuth:-1.4,roll:0,distance:a,target:[.5,.48,i.averageHeight+i.elevationRange*l]}))}catch(t){if(e.signal.aborted)return}})(),()=>{t=!1,e.abort(),null!==b.current&&(cancelAnimationFrame(b.current),b.current=null)}},[]),(0,s.jsx)(u.Box,{ref:x,...n,className:e,sx:[{position:"relative",display:"block",width:"100%",height:"100%",overflow:"hidden"},...Array.isArray(r)?r:[r]],children:(0,s.jsx)(t_,{className:"terrain-canvas",mesh:i,camera:a,stableCamera:c,titleExclusionRect:h,markersEnabled:!t,markersReady:m,wireframeColor:t?[.25,.25,.25]:void 0,gravityEnabled:!0,depthCullingEnabled:!0})})}e.s(["default",0,tU],49582);var tW=e.i(47800);let tH=({children:e,...t})=>{let r=(0,c.useTheme)();return(0,s.jsx)(u.Box,{className:"shaped-separator-base",sx:{position:"relative",display:"flex",flexDirection:"column",minHeight:"100%",width:"100%",mt:-5,".shaped-separator":{height:1,width:"100%",display:"flex",pointerEvents:"none",justifyContent:"center",alignItems:"flex-end",".children-container":{zIndex:2,position:"absolute",width:"100%",height:100,display:"flex",maxWidth:tW.CONTAINER_MAX_WIDTH,p:1,pointerEvents:"auto",justifyContent:"flex-end",alignItems:"end"},".shaped-separator-svg":{zIndex:0},".shape-shadow":{display:"none",transform:"rotate(2deg) translate(-20px,-50px)",fill:"white"},".shape-area":{fill:r.palette.primary.main,transform:"translateY(-10px) rotate(0.75deg)"},".shape-line":{transform:"rotate(2deg) translate(20px,-30px)",stroke:"url(#spotblack)",strokeWidth:2}},[r.breakpoints.down("lg")]:{minHeight:110,zIndex:2,".shaped-separator":{".children-container":{top:0},".shaped-separator-svg":{position:"absolute",top:0,width:"100%",height:110,zIndex:1}}},[r.breakpoints.down("md")]:{".shaped-separator":{".shape-area":{transform:"translateY(-10px) rotate(0.75deg)"},".shape-shadow":{display:"block"}}},[r.breakpoints.down("md")]:{mt:0}},...t,children:(0,s.jsxs)("div",{className:"shaped-separator",children:[e&&(0,s.jsx)("div",{className:"children-container",children:e}),(0,s.jsxs)("svg",{className:"shaped-separator-svg",viewBox:"0 0 1440 110",width:"100%",fill:"none",xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"none",children:[(0,s.jsxs)("defs",{children:[(0,s.jsx)("path",{id:"shape",d:"M1448 5L1415 9L1398 11L1383 13L1350 14L1342 15L1342 15L1335 15L1264 14L1256 14L1256 14L1252 14L1236 14L1219 14L1170 15L1139 15L1139 15L1137 15L1121 16L1057 17L1041 17L1040 17L1032 18L1016 21L1001 25L986 29L971 33L956 37L941 41L926 44L896 49L867 54L852 57L837 58L822 58L772 60L749 62L721 63L692 65L649 68L593 73L579 73L547 72L533 73L514 73L506 73L492 72L483 71C483 71 483 71 483 71L455 71L442 71L415 70L375 69L335 68L322 68L296 68L270 68L257 68L244 68L232 69L219 70L206 71L168 73L155 73L130 7
2805L105 77L92 78L80 78L43 79L31 79L-5 80L-29 80L-36 81L-36 695L1476 695L1476 0L1465 2L1447 5Z"}),(0,s.jsxs)("linearGradient",{id:"spotblack",x1:"0%",y1:"0%",x2:"100%",y2:"0%",children:[(0,s.jsx)("stop",{offset:"55%",stopColor:r.palette.secondary.main}),(0,s.jsx)("stop",{offset:"60%",stopColor:"black"})]})]}),(0,s.jsx)("use",{href:"#shape",className:"shape-shadow"}),(0,s.jsx)("use",{href:"#shape",className:"shape-area"}),(0,s.jsx)("use",{href:"#shape",className:"shape-line"})]})]})})};e.s(["SHAPED_SEPARATOR_HEIGHT",0,110,"default",0,tH],45085);var t$=e.i(18863);let tG=({anchorId:e,className:t,children:r,...n})=>{let i=(0,tL.useCallback)(e=>{let t=document.getElementById(e);t&&t.scrollIntoView({behavior:"smooth",block:"start"})},[]),o=(0,tL.useCallback)(t=>{t.preventDefault(),i(e)},[i]);return(0,s.jsx)(t$.default,{className:(0,d.default)(t,"internal"),onClick:o,"aria-label":"Scroll to section",...n,children:r})};var tV=e.i(22596);let tY=({shortTitle:e,title:t})=>{let{t:r}=(0,tV.useClientSideTranslationBasedOnPathParam)();return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(f,{title:t,shortTitle:e,children:(0,s.jsx)(u.Box,{className:"mesh-container",children:(0,s.jsx)(tU,{className:"terrain-mesh"})})}),(0,s.jsx)(tH,{children:(0,s.jsx)(tG,{anchorId:"vision",variant:"inverted",className:"site-anchor-link",startIcon:(0,s.jsx)(h.default,{id:"arrowDown",className:"site-anchor-link-icon"}),children:(0,s.jsx)(u.Box,{className:"site-anchor-link-text",children:r("components.CoverHome.exploreMore")})})})]})};var tq=e.i(32451),tX=e.i(33589),tZ=e.i(18566),tK=e.i(15745);let tQ=({isActivePage:e,label:t,path:r})=>{let n=(0,tX.useTheme)();return(0,s.jsxs)(u.Box,{children:[(0,s.jsx)(tK.default,{href:r,disabled:e,sx:{color:"primary.main"},className:e?"active-page":"",children:t}),!e&&(0,s.jsx)(h.default,{id:"longArrowRight",fill:n.palette.primary.main})]})},tJ=({index:e,subpages:t,isActivePage:r})=>{let{t:n}=(0,tV.useClientSideTranslationBasedOnPathParam)(),i=(0,tL.useMemo)(()=>{let r,i;return 0===e?n("navigation.home"):e>1?n(`subsubpages.${t[1]}.${(r=t[e].split("-"),i=[],r.forEach((e,t)=>{t>0?i.push(e.charAt(0).toUpperCase()+e.slice(1)):i.push(e)}),i.join(""))}`):n(`navigation.${t[e]}`)},[e,t,n]),o="/"+t.slice(0,e+1).join("/");return(0,s.jsx)(tQ,{isActivePage:r,path:o,label:i})},t0=({pageTitle:e})=>{let t=(0,tX.useTheme)(),r=(0,tZ.usePathname)(),n=(0,tL.useMemo)(()=>r.split("/").filter(e=>e.length>0),[r]),i=n.length-1;return(0,s.jsx)(u.Box,{className:"breadcrumbs",sx:{display:"flex",alignItems:"center",justifyContent:"start",color:"primary.main",gap:1.5,svg:{height:10,fill:t.palette.primary.main},"& .MuiButton-root":{minWidth:"unset",p:0,pr:1,fontSize:12,lineHeight:"16px",letterSpacing:"0.1em"},".MuiButton-root.active-page":{fontWeight:500,color:(0,tq.alpha)(t.palette.primary.main,.5)},[t.breakpoints.down("sm")]:{display:"none"}},children:n.map((e,t)=>(0,s.jsx)(tJ,{index:t,subpages:n,isActivePage:t===i},e))})},t1=({imageAlt:e,imageSrc:t,shortTitle:r,title:n})=>(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"title-wrapper",children:[(0,s.jsx)(t0,{pageTitle:n}),(0,s.jsx)(f,{title:n,shortTitle:r})]}),(0,s.jsx)("div",{className:"mesh-container",children:(0,s.jsx)(tU,{className:"mesh-sub",disableMarkers:!0})}),void 0!==t&&(0,s.jsx)("div",{className:"cover-logo-container",children:(0,s.jsx)("img",{src:t,alt:e??"",title:n,className:"cover-logo"})})]}),t3=e=>(0,s.jsx)(u.Box,{...e,children:(0,s.jsxs)("svg",{viewBox:"0 0 1440 120",fill:"none",xmlns:"http://www.w3.org/2000/svg",preserveAspectRatio:"none",children:[(0,s.jsx)("path",{className:"separator-background",d:"M1444.77 2.69241L1411.75 4.82177L1395.33 5.9421L1379.63 6.93627L1346.56 7.93212L1338.67 8.07653L1338.67 8.07531L1332.34 8.27187L1260.55 7.7812L1252.66 7.75038L1252.66 7.74336L1248.77 7.84233L1232.98 8.03791L1216.51 8.02021L1167.11 8.13861L1136.64 8.35751L1136.64 8.35629L1134.26 8.44632L1118.14 8.96997L1054.3 9.64456L1038.35 9.48779L1036.91 9.53609L1028.99 9.87875L1013.57 11.8787L998.457 13.8809L983.384 15.9313L968.358 18.0648L953.379 20.3028L938.443 22.627L923.451 24.2305L893.623 27.0189L863.982 30.0143L849.227 31.568L834.402 32.0555L819.655 32.3207L769.082 33.4838L746.704 34.1009L717.849 35.0157L689.183 36.0781L646.507 37.7701L590.208 40.2425L576.228 40.5699L544.01 40.0608L530.631 40.649L510.827 40.3522L502.934 40.2508L489.169 39.7563
280L479.986 39.4129C479.917 39.4415 479.84 39.4612 479.758 39.4621L452.602 39.3937L439.09 39.2224L412.216 38.6735L372.239 38.0811L332.643 37.7521L319.525 37.6779L293.407 37.6446L267.451 37.7162L254.532 37.8108L241.646 37.9426L228.795 38.1134L215.969 38.631L203.161 39.1996L164.998 40.3095L152.352 40.739L127.156 41.697L102.093 42.7239L89.6145 43.276L77.1966 43.3629L40.2643 43.5419L28.0265 43.6433L-8.49387 44.0908L-32.6779 44.4992L-40 44.7222L-40 385L1473 385L1473 0.00012207L1462.3 1.33523L1444.77 2.69241Z"}),(0,s.jsx)("path",{className:"separator-line",d:"M-26.7361 37.8216L-19.407 37.6319L4.78306 37.5974L41.3038 37.8504L53.5392 38.0226L90.4573 38.7716L102.872 38.9754L115.371 38.342L140.472 37.2175L165.703 36.2212L178.363 35.8137L216.56 34.9198L229.39 34.2663L242.234 33.7051L255.086 33.77L267.971 33.9064L280.887 34.1107L306.83 34.735L332.93 35.553L346.035 36.0676L385.589 37.8102L425.51 40.0387L452.338 41.8085L465.832 42.5096L492.968 43.4211C493.05 43.4217 493.128 43.3885 493.198 43.3389L502.358 44.2247L516.088 45.516L523.97 45.9279L543.747 47.0379L557.148 46.3655L589.319 48.2187L603.307 48.0341L659.699 45.2094L702.437 43.3967L731.141 42.313L760.026 41.5007L782.422 41.0374L833.023 40.4078L847.775 40.3576L862.616 39.9087L877.443 37.535L907.222 32.9937L937.178 28.8311L952.244 26.3746L967.292 22.6168L982.379 19.0156L997.507 15.6043L1012.68 12.3442L1027.88 9.17222L1043.4 6.01303L1051.34 5.62519L1052.77 5.57978L1068.71 6.32547L1132.54 6.96169L1148.68 6.48529L1151.07 6.39218L1151.07 6.39437L1181.52 6.88381L1230.9 8.10425L1247.36 8.61411L1263.15 8.71957L1267.04 8.654L1267.04 8.66669L1274.93 8.9514L1346.64 11.9197L1352.98 11.7491L1352.98 11.7512L1360.87 11.7198L1393.98 10.8839L1409.71 9.54647L1426.18 8.00282L1459.29 5.12123L1476.89 3.18269L1487.65 1.08552",stroke:"#FF5533"})]})}),t2=({imageAlt:e,imageSrc:t,imageSrcSet:r,imageTitle:n})=>{let i=(0,c.useTheme)(),o=(0,tL.useMemo)(()=>{if(void 0!==r)return r??void 0;if(void 0!==t){let e=t.lastIndexOf("."),r=t.substring(0,e),n=t.substring(e+1);return`${r}_600.${n} 600w, ${t} 1440w`}},[t,r]);return(0,s.jsxs)(u.Box,{className:"image-container-sub-sub",children:[(0,s.jsx)("img",{alt:e,src:t,srcSet:o,sizes:`
281                    (max-width: ${i.breakpoints.values.sm}px) 600px,
282                    1440px,
283                `,title:n}),(0,s.jsx)(t3,{className:"separator-sub-sub"})]})},t4=({title:e})=>(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(u.Box,{className:"mesh-container",children:(0,s.jsx)(tU,{className:"mesh-sub-sub",disableMarkers:!0})}),(0,s.jsx)(t3,{className:"separator-sub-sub"}),(0,s.jsx)(tH,{className:"cover-shaped-separator"}),(0,s.jsxs)("div",{className:"title-wrapper",children:[(0,s.jsx)(t0,{pageTitle:e}),(0,s.jsx)(f,{title:e})]})]});e.s(["default",0,({imageAlt:e,imageSrc:t,imageSrcSet:r,imageTitle:n,sx:i={},shortTitle:o,title:a="",variant:l="home"})=>{let m=(0,c.useTheme)();return(0,s.jsxs)(u.Box,{className:(0,d.default)("cover","cover-"+l),sx:[{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"space-between",width:1,height:"fit-content",".title-container":{display:"flex",width:1,justifyContent:"center",".title":{p:0}},".title-short":{display:"none"},[m.breakpoints.down("md")]:{".title-short":{display:"block"},".title-short ~ .title":{display:"none"}}},function(e,t){switch(e){case"home":return{position:"relative",minHeight:"calc(100dvh - 200px)",".title-container":{maxWidth:tW.CONTAINER_MAX_WIDTH,alignItems:"start",pt:12,px:12.5,".title":{zIndex:2,fontWeight:250,fontSize:"clamp(3rem, 6.75vw, 25rem)",lineHeight:"clamp(3rem, 6.75vw, 25rem)",letterSpacing:"clamp(.3rem, .675vw, .25rem)"}},".mesh-container":{position:"absolute",inset:"20px 0 auto 0",height:"85dvh",pointerEvents:"none",".terrain-mesh":{position:"absolute",zIndex:1,inset:0,width:"100vw",height:"100%",pointerEvents:"none"}},".site-anchor-link":{px:10,zIndex:2,".site-anchor-link-icon":{width:30,height:30}},[t.breakpoints.down("lg")]:{height:"calc(100svh - 110px)",minHeight:`max(
284            300px,
285            calc(100svh - 110px)
286        )`,".title-container":{px:10,pt:12,".title":{fontWeight:300}},".site-anchor-link":{px:"initial",".site-anchor-link-text":{display:"none"}}},[t.breakpoints.down("sm")]:{".mesh-container":{top:0,height:"85svh",".terrain-mesh":{height:"80svh"}},".title-container":{justifyContent:"start",pt:12,px:2,".title":{fontSize:"clamp(2rem, 13vw, 4rem)",lineHeight:"clamp(2rem, 13vw, 4rem)",letterSpacing:"clamp(.2rem, .13vw, .4rem)"}}}};case"sub":return{position:"relative",width:"100%",minHeight:690,".title-wrapper":{display:"flex",minHeight:600,flexDirection:"column",justifyContent:"center",width:"min(900px, 100vw)",zIndex:3},".title-container":{maxWidth:tW.CONTENT_MAX_WIDTH+2*tW.CONTENT_PADDING,flexDirection:"column",p:0,".title":{zIndex:2,maxWidth:tW.CONTENT_MAX_WIDTH,
286color:"primary.main",fontWeight:300,fontSize:"3.875rem",lineHeight:"5.25rem",letterSpacing:".2rem"}},".mesh-container":{position:"absolute",zIndex:0,top:0,left:"50%",width:"100vw",transform:"translateX(-50%)",height:690,overflow:"hidden",pointerEvents:"none",".mesh-sub":{position:"absolute",zIndex:0,inset:0,width:"100%",height:"100%",opacity:.35,pointerEvents:"none",maskImage:"linear-gradient(to bottom, black 0%, black 70%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 0%, black 70%, transparent 100%)"}},".cover-logo-container":{position:"absolute",right:100,top:480,width:300,height:300,zIndex:2,maskImage:"url(/static/images/logo.png)",maskSize:270,maskRepeat:"no-repeat",maskPosition:"center",transform:"rotateY(180deg)",".cover-logo":{width:1,height:1,transform:"rotateY(180deg)",objectFit:"cover"}},".site-anchor-link":{px:10},".logo-mark":{position:"absolute",top:"105dvh",right:"16px",zIndex:3},[t.breakpoints.down("xl")]:{".cover-logo-container":{right:50}},[t.breakpoints.down("lg")]:{minHeight:520,".title-wrapper":{px:`${tW.SMALL_SCREEN_PADDING}px`},".mesh-container":{height:520},".site-anchor-link":{px:3},".logo-mark":{maxWidth:"calc(100% - 32px)"},".cover-logo-container":{display:"none"}},[t.breakpoints.down("md")]:{minHeight:520},[t.breakpoints.down("sm")]:{minHeight:570,".title-container":{justifyContent:"start",px:2,".title":{fontSize:"3rem",lineHeight:"3.375rem",letterSpacing:".3rem"}},".mesh-container":{height:570},".site-anchor-link":{px:"initial",".site-anchor-link-text":{display:"none"},".site-anchor-link-icon":{width:30,height:30}}}};case"sub-sub-mesh":return{position:"relative",mt:4,height:350,".separator-sub-sub":{position:"absolute",top:350,width:1,svg:{position:"absolute",bottom:0,width:1,height:120,zIndex:0},".separator-background":{fill:t.palette.primary.main,transform:"translateY(20%)"}},".cover-shaped-separator":{display:"none",position:"absolute",top:300,width:1,zIndex:0,svg:{height:50}},".mesh-container":{position:"absolute",zIndex:0,inset:"0 0 auto 0",width:"100vw",height:350,overflow:"hidden",pointerEvents:"none",".mesh-sub-sub":{position:"absolute",zIndex:0,inset:0,width:"100%",height:"100%",opacity:.35,pointerEvents:"none",maskImage:"linear-gradient(to bottom, black 0%, black 70%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 0%, black 70%, transparent 100%)"}},".title-wrapper":{position:"absolute",bottom:120,display:"flex",flexDirection:"column",justifyContent:"center",width:"min(900px, 100vw)",zIndex:3},".title-container":{width:1,".title":{width:1,maxWidth:`min(100vw, ${tW.CONTENT_MAX_WIDTH}px)`,color:"primary.main",fontSize:"3rem",fontWeight:400,textTransform:"uppercase",letterSpacing:2.5,lineHeight:"62px"}},[t.breakpoints.down("lg")]:{height:370,".title-wrapper":{px:`${tW.SMALL_SCREEN_PADDING}px`},".title-container":{top:0,".title":{fontSize:"2.5rem",letterSpacing:"2px",lineHeight:"52px"}},".mesh-container":{top:0,width:1,height:300,".mesh-sub-sub":{inset:0,width:1,height:"100%"},"~ .separator-sub-sub":{display:"none"}},".cover-shaped-separator":{display:"block",zIndex:2}},[t.breakpoints.down("md")]:{mb:3},[t.breakpoints.down("sm")]:{".title-wrapper":{px:2.5},".mesh-container":{top:50,height:300,".mesh-sub-sub":{inset:0,width:1,height:"100%"}},".title-container":{top:0,bottom:"unset",".title":{wordBreak:"break-word"}}},[t.breakpoints.down("xs")]:{".title-container":{".title":{fontSize:"2rem",letterSpacing:"1.5px",lineHeight:"40px"}}}};case"sub-sub-image":return{position:"relative",mt:4,".separator-sub-sub":{bottom:0,width:1,position:"absolute",svg:{position:"absolute",bottom:0,height:80,width:1},".separator-line":{mixBlendMode:"multiply",transform:"translateY(20%)"},".separator-background":{fill:"white"}},".image-container-sub-sub":{position:"relative",display:"flex",width:1,justifyContent:"center",alignItems:"center",flexDirection:"column",img:{width:1,maxWidth:tW.CONTAINER_MAX_WIDTH,height:350,objectFit:"cover"}},[t.breakpoints.down("lg")]:{".image-container-sub-sub":{img:{height:450}}},[t.breakpoints.down("sm")]:{".separator-sub-sub":{svg:{width:"auto",left:"-30%"}}}}}}(l,m),i],children:["home"===l&&(0,s.jsx)(tY,{shortTitle:o,title:a}),"sub"===l&&(0,s.jsx)(t1,{imageSrc:t,imageAlt:e,shortTitle:o,title:a}),"sub-sub-mesh"===l&&(0,s.jsx)(t4,{title:a}),"sub-sub-image"===l&&(0,s.jsx)(t2,{imageTitle:n,imageSrc:t,imageSrcSet:r,imageAlt:e})]})}],33568)}]);

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.