1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[183],{9252:function(e,t,n){n.d(t,{W:function(){return i}});var r=n(2265);function i(e,t,n){(0,r.useInsertionEffect)(()=>e.on(t,n),[e,t,n])}},9225:function(e,t,n){let r,i;n.d(t,{v:function(){return I}});var o=n(3120),l=n(9409),s=n(2265),f=n(8626),c=n(9935),a=n(7268),u=n(1198);function d(e,t){let n;let r=()=>{let{currentTime:r}=t,i=(null===r?0:r.value)/100;n!==i&&e(i),n=i};return u.Wi.update(r,!0),()=>(0,u.Pn)(r)}var g=n(4399);let h=new WeakMap;function p({target:e,contentRect:t,borderBoxSize:n}){var r;null===(r=h.get(e))||void 0===r||r.forEach(r=>{r({target:e,contentSize:t,get size(){return function(e,t){if(t){let{inlineSize:e,blockSize:n}=t[0];return{width:e,height:n}}return e instanceof SVGElement&&"getBBox"in e?e.getBBox():{width:e.offsetWidth,height:e.offsetHeight}}(e,n)}})})}function m(e){e.forEach(p)}let v=new Set;var y=n(2028),w=n(8253);let E=()=>({current:0,offset:[],progress:0,scrollLength:0,targetOffset:0,targetLength:0,containerLength:0,velocity:0}),W=()=>({time:0,x:E(),y:E()}),x={x:{length:"Width",position:"Left"},y:{length:"Height",position:"Top"}};function L(e,t,n,r){let i=n[t],{length:o,position:l}=x[t],s=i.current,f=n.time;i.current=e[`scroll${l}`],i.scrollLength=e[`scroll${o}`]-e[`client${o}`],i.offset.length=0,i.offset[0]=0,i.offset[1]=i.scrollLength,i.progress=(0,y.Y)(0,i.scrollLength,i.current);let c=r-f;i.velocity=c>50?0:(0,w.R)(i.current-s,c)}var B=n(1389),b=n(3135),z=n(5184);let H={start:0,center:.5,end:1};function O(e,t,n=0){let r=0;if(e in H&&(e=H[e]),"string"==typeof e){let t=parseFloat(e);e.endsWith("px")?r=t:e.endsWith("%")?e=t/100:e.endsWith("vw")?r=t/100*document.documentElement.clientWidth:e.endsWith("vh")?r=t/100*document.documentElement.clientHeight:e=t}return"number"==typeof e&&(r=t*e),n+r}let S=[0,0],k=[[0,0],[1,1]],N={x:0,y:0},P=new WeakMap,T=new WeakMap,X=new WeakMap,Y=e=>e===document.documentElement?window:e;function M(e,{container:t=document.documentElement,...n}={}){let o=X.get(t);o||(o=new Set,X.set(t,o));let l=function(e,t,n,r={}){return{measure:()=>(function(e,t=e,n){if(n.x.targetOffset=0,n.y.targetOffset=0,t!==e){let r=t;for(;r&&r!==e;)n.x.targetOffset+=r.offsetLeft,n.y.targetOffset+=r.offsetTop,r=r.offsetParent}n.x.targetLength=t===e?t.scrollWidth:t.clientWidth,n.y.targetLength=t===e?t.scrollHeight:t.clientHeight,n.x.containerLength=e.clientWidth,n.y.containerLength=e.clientHeight})(e,r.target,n),update:t=>{L(e,"x",n,t),L(e,"y",n,t),n.time=t,(r.offset||r.target)&&function(e,t,n){let{offset:r=k}=n,{target:i=e,axis:o="y"}=n,l="y"===o?"height":"width",s=i!==e?function(e,t){let n={x:0,y:0},r=e;for(;r&&r!==t;)if(r instanceof HTMLElement)n.x+=r.offsetLeft,n.y+=r.offsetTop,r=r.offsetParent;else if("svg"===r.tagName){let e=r.getBoundingClientRect(),t=(r=r.parentElement).getBoundingClientRect();n.x+=e.left-t.left,n.y+=e.top-t.top}else if(r instanceof SVGGraphicsElement){let{x:e,y:t}=r.getBBox();n.x+=e,n.y+=t;let i=null,o=r.parentNode;for(;!i;)"svg"===o.tagName&&(i=o),o=r.parentNode;r=i}else break;return n}(i,e):N,f=i===e?{width:e.scrollWidth,height:e.scrollHeight}:"getBBox"in i&&"svg"!==i.tagName?i.getBBox():{width:i.clientWidth,height:i.clientHeight},c={width:e.clientWidth,height:e.clientHeight};t[o].offset.length=0;let a=!t[o].interpolate,u=r.length;for(let e=0;e<u;e++){let n=function(e,t,n,r){let i=Array.isArray(e)?e:S,o=0;return"number"==typeof e?i=[e,e]:"string"==typeof e&&(i=(e=e.trim()).includes(" ")?e.split(" "):[e,H[e]?e:"0"]),O(i[0],n,r)-O(i[1],t)}(r[e],c[l],f[l],s[o]);a||n===t[o].interpolatorOffsets[e]||(a=!0),t[o].offset[e]=n}a&&(t[o].interpolate=(0,b.s)(t[o].offset,(0,z.Y)(r),{clamp:!1}),t[o].interpolatorOffsets=[...t[o].offset]),t[o].progress=(0,B.u)(0,1,t[o].interpolate(t[o].current))}(e,n,r)},notify:()=>t(n)}}(t,e,W(),n);if(o.add(l),!P.has(t)){let e=()=>{for(let e of o)e.measure()},n=()=>{for(let e of o)e.update(u.frameData.timestamp)},l=()=>{for(let e of o)e.notify()},s=()=>{u.Wi.read(e,!1,!0),u.Wi.read(n,!1,!0),u.Wi.update(l,!1,!0)};P.set(t,s);let f=Y(t);window.addEventListener("resize",s,{passive:!0}),t!==document.documentElement&&T.set(t,"function"==typeof t?(v.add(t),i||(i=()=>{let e={width:window.innerWidth,height:window.innerHeight},t={target:window,size:e,contentSize:e};
1v.forEach(e=>e(t))},window.addEventListener("resize",i)),()=>{v.delete(t),!v.size&&i&&(i=void 0)}):function(e,t){r||"undefined"==typeof ResizeObserver||(r=new ResizeObserver(m));let n=(0,g.I)(e);return n.forEach(e=>{let n=h.get(e);n||(n=new Set,h.set(e,n)),n.add(t),null==r||r.observe(e)}),()=>{n.forEach(e=>{let n=h.get(e);null==n||n.delete(t),(null==n?void 0:n.size)||null==r||r.unobserve(e)})}}(t,s)),f.addEventListener("scroll",s,{passive:!0})}let s=P.get(t);return u.Wi.read(s,!1,!0),()=>{var e;(0,u.Pn)(s);let n=X.get(t);if(!n||(n.delete(l),n.size))return;let r=P.get(t);P.delete(t),r&&(Y(t).removeEventListener("scroll",r),null===(e=T.get(t))||void 0===e||e(),window.removeEventListener("resize",r))}}let R=new Map;function C({source:e,container:t=document.documentElement,axis:n="y"}={}){e&&(t=e),R.has(t)||R.set(t,{});let r=R.get(t);return r[n]||(r[n]=(0,c.t)()?new ScrollTimeline({source:t,axis:n}):function({source:e,container:t,axis:n="y"}){e&&(t=e);let r={value:0},i=M(e=>{r.value=100*e[n].progress},{container:t,axis:n});return{currentTime:r,cancel:i}}({source:t,axis:n})),r[n]}function $(e){return e&&(e.target||e.offset)}var _=n(8675);function G(e,t){(0,f.K)(!!(!t||t.current),`You have defined a ${e} options but the provided ref is not yet hydrated, probably because it's defined higher up the tree. Try calling useScroll() in the same component as the ref, or setting its \`layoutEffect: false\` option.`)}let A=()=>({scrollX:(0,o.BX)(0),scrollY:(0,o.BX)(0),scrollXProgress:(0,o.BX)(0),scrollYProgress:(0,o.BX)(0)});function I({container:e,target:t,layoutEffect:n=!0,...r}={}){let i=(0,l.h)(A);return(n?_.L:s.useEffect)(()=>(G("target",t),G("container",e),function(e,{axis:t="y",...n}={}){let r={axis:t,...n};return"function"==typeof e?2===e.length||$(r)?M(t=>{e(t[r.axis].progress,t)},r):d(e,C(r)):function(e,t){if(e.flatten(),$(t))return e.pause(),M(n=>{e.time=e.duration*n[t.axis].progress},t);{let n=C(t);return e.attachTimeline?e.attachTimeline(n,e=>(e.pause(),d(t=>{e.time=e.duration*t},n))):a.Z}}(e,r)}((e,{x:t,y:n})=>{i.scrollX.set(t.current),i.scrollXProgress.set(t.progress),i.scrollY.set(n.current),i.scrollYProgress.set(n.progress)},{...r,container:(null==e?void 0:e.current)||void 0,target:(null==t?void 0:t.current)||void 0})),[e,t,JSON.stringify(r.offset)]),i}}}]);
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.