feazy-neo-chat-component 0.1.97 → 0.1.98

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -18,11 +18,11 @@
18
18
  `+Re+A}}var le=!1,Ce;{var Q=typeof WeakMap=="function"?WeakMap:Map;Ce=new Q}function U(A,q){if(!A||le)return"";{var G=Ce.get(A);if(G!==void 0)return G}var ae;le=!0;var ke=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var Ie;Ie=Te.current,Te.current=null,Me();try{if(q){var ye=function(){throw Error()};if(Object.defineProperty(ye.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ye,[])}catch(st){ae=st}Reflect.construct(A,[],ye)}else{try{ye.call()}catch(st){ae=st}A.call(ye.prototype)}}else{try{throw Error()}catch(st){ae=st}A()}}catch(st){if(st&&ae&&typeof st.stack=="string"){for(var ve=st.stack.split(`
19
19
  `),it=ae.stack.split(`
20
20
  `),He=ve.length-1,Ge=it.length-1;He>=1&&Ge>=0&&ve[He]!==it[Ge];)Ge--;for(;He>=1&&Ge>=0;He--,Ge--)if(ve[He]!==it[Ge]){if(He!==1||Ge!==1)do if(He--,Ge--,Ge<0||ve[He]!==it[Ge]){var ht=`
21
- `+ve[He].replace(" at new "," at ");return A.displayName&&ht.includes("<anonymous>")&&(ht=ht.replace("<anonymous>",A.displayName)),typeof A=="function"&&Ce.set(A,ht),ht}while(He>=1&&Ge>=0);break}}}finally{le=!1,Te.current=Ie,We(),Error.prepareStackTrace=ke}var Jt=A?A.displayName||A.name:"",Rt=Jt?Pe(Jt):"";return typeof A=="function"&&Ce.set(A,Rt),Rt}function ee(A,q,G){return U(A,!1)}function fe(A){var q=A.prototype;return!!(q&&q.isReactComponent)}function Oe(A,q,G){if(A==null)return"";if(typeof A=="function")return U(A,fe(A));if(typeof A=="string")return Pe(A);switch(A){case u:return Pe("Suspense");case c:return Pe("SuspenseList")}if(typeof A=="object")switch(A.$$typeof){case l:return ee(A.render);case d:return Oe(A.type,q,G);case p:{var ae=A,ke=ae._payload,Ie=ae._init;try{return Oe(Ie(ke),q,G)}catch{}}}return""}var pe=Object.prototype.hasOwnProperty,Qe={},Se=y.ReactDebugCurrentFrame;function xe(A){if(A){var q=A._owner,G=Oe(A.type,A._source,q?q.type:null);Se.setExtraStackFrame(G)}else Se.setExtraStackFrame(null)}function Ze(A,q,G,ae,ke){{var Ie=Function.call.bind(pe);for(var ye in A)if(Ie(A,ye)){var ve=void 0;try{if(typeof A[ye]!="function"){var it=Error((ae||"React class")+": "+G+" type `"+ye+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof A[ye]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw it.name="Invariant Violation",it}ve=A[ye](q,ye,ae,G,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(He){ve=He}ve&&!(ve instanceof Error)&&(xe(ke),x("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",ae||"React class",G,ye,typeof ve),xe(null)),ve instanceof Error&&!(ve.message in Qe)&&(Qe[ve.message]=!0,xe(ke),x("Failed %s type: %s",G,ve.message),xe(null))}}}var ie=Array.isArray;function me(A){return ie(A)}function de(A){{var q=typeof Symbol=="function"&&Symbol.toStringTag,G=q&&A[Symbol.toStringTag]||A.constructor.name||"Object";return G}}function Ve(A){try{return Je(A),!1}catch{return!0}}function Je(A){return""+A}function D(A){if(Ve(A))return x("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",de(A)),Je(A)}var W=y.ReactCurrentOwner,ne={key:!0,ref:!0,__self:!0,__source:!0},te,_;function ze(A){if(pe.call(A,"ref")){var q=Object.getOwnPropertyDescriptor(A,"ref").get;if(q&&q.isReactWarning)return!1}return A.ref!==void 0}function Ye(A){if(pe.call(A,"key")){var q=Object.getOwnPropertyDescriptor(A,"key").get;if(q&&q.isReactWarning)return!1}return A.key!==void 0}function at(A,q){typeof A.ref=="string"&&W.current}function jt(A,q){{var G=function(){te||(te=!0,x("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",q))};G.isReactWarning=!0,Object.defineProperty(A,"key",{get:G,configurable:!0})}}function ft(A,q){{var G=function(){_||(_=!0,x("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",q))};G.isReactWarning=!0,Object.defineProperty(A,"ref",{get:G,configurable:!0})}}var tt=function(A,q,G,ae,ke,Ie,ye){var ve={$$typeof:t,type:A,key:q,ref:G,props:ye,_owner:Ie};return ve._store={},Object.defineProperty(ve._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(ve,"_self",{configurable:!1,enumerable:!1,writable:!1,value:ae}),Object.defineProperty(ve,"_source",{configurable:!1,enumerable:!1,writable:!1,value:ke}),Object.freeze&&(Object.freeze(ve.props),Object.freeze(ve)),ve};function Dt(A,q,G,ae,ke){{var Ie,ye={},ve=null,it=null;G!==void 0&&(D(G),ve=""+G),Ye(q)&&(D(q.key),ve=""+q.key),ze(q)&&(it=q.ref,at(q,ke));for(Ie in q)pe.call(q,Ie)&&!ne.hasOwnProperty(Ie)&&(ye[Ie]=q[Ie]);if(A&&A.defaultProps){var He=A.defaultProps;for(Ie in He)ye[Ie]===void 0&&(ye[Ie]=He[Ie])}if(ve||it){var Ge=typeof A=="function"?A.displayName||A.name||"Unknown":A;ve&&jt(ye,Ge),it&&ft(ye,Ge)}return tt(A,ve,it,ke,ae,W.current,ye)}}var rt=y.ReactCurrentOwner,Pn=y.ReactDebugCurrentFrame;function xt(A){if(A){var q=A._owner,G=Oe(A.type,A._source,q?q.type:null);Pn.setExtraStackFrame(G)}else Pn.setExtraStackFrame(null)}var nn;nn=!1;function jn(A){return typeof A=="object"&&A!==null&&A.$$typeof===t}function gn(){{if(rt.current){var A=V(rt.current.type);if(A)return`
21
+ `+ve[He].replace(" at new "," at ");return A.displayName&&ht.includes("<anonymous>")&&(ht=ht.replace("<anonymous>",A.displayName)),typeof A=="function"&&Ce.set(A,ht),ht}while(He>=1&&Ge>=0);break}}}finally{le=!1,Te.current=Ie,We(),Error.prepareStackTrace=ke}var Jt=A?A.displayName||A.name:"",Rt=Jt?Pe(Jt):"";return typeof A=="function"&&Ce.set(A,Rt),Rt}function ee(A,q,G){return U(A,!1)}function me(A){var q=A.prototype;return!!(q&&q.isReactComponent)}function Oe(A,q,G){if(A==null)return"";if(typeof A=="function")return U(A,me(A));if(typeof A=="string")return Pe(A);switch(A){case u:return Pe("Suspense");case c:return Pe("SuspenseList")}if(typeof A=="object")switch(A.$$typeof){case l:return ee(A.render);case d:return Oe(A.type,q,G);case p:{var ae=A,ke=ae._payload,Ie=ae._init;try{return Oe(Ie(ke),q,G)}catch{}}}return""}var de=Object.prototype.hasOwnProperty,Qe={},Se=y.ReactDebugCurrentFrame;function xe(A){if(A){var q=A._owner,G=Oe(A.type,A._source,q?q.type:null);Se.setExtraStackFrame(G)}else Se.setExtraStackFrame(null)}function Ze(A,q,G,ae,ke){{var Ie=Function.call.bind(de);for(var ye in A)if(Ie(A,ye)){var ve=void 0;try{if(typeof A[ye]!="function"){var it=Error((ae||"React class")+": "+G+" type `"+ye+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof A[ye]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw it.name="Invariant Violation",it}ve=A[ye](q,ye,ae,G,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(He){ve=He}ve&&!(ve instanceof Error)&&(xe(ke),x("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",ae||"React class",G,ye,typeof ve),xe(null)),ve instanceof Error&&!(ve.message in Qe)&&(Qe[ve.message]=!0,xe(ke),x("Failed %s type: %s",G,ve.message),xe(null))}}}var ie=Array.isArray;function pe(A){return ie(A)}function fe(A){{var q=typeof Symbol=="function"&&Symbol.toStringTag,G=q&&A[Symbol.toStringTag]||A.constructor.name||"Object";return G}}function Ve(A){try{return Je(A),!1}catch{return!0}}function Je(A){return""+A}function D(A){if(Ve(A))return x("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",fe(A)),Je(A)}var W=y.ReactCurrentOwner,ne={key:!0,ref:!0,__self:!0,__source:!0},te,_;function ze(A){if(de.call(A,"ref")){var q=Object.getOwnPropertyDescriptor(A,"ref").get;if(q&&q.isReactWarning)return!1}return A.ref!==void 0}function Ye(A){if(de.call(A,"key")){var q=Object.getOwnPropertyDescriptor(A,"key").get;if(q&&q.isReactWarning)return!1}return A.key!==void 0}function at(A,q){typeof A.ref=="string"&&W.current}function jt(A,q){{var G=function(){te||(te=!0,x("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",q))};G.isReactWarning=!0,Object.defineProperty(A,"key",{get:G,configurable:!0})}}function ft(A,q){{var G=function(){_||(_=!0,x("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",q))};G.isReactWarning=!0,Object.defineProperty(A,"ref",{get:G,configurable:!0})}}var tt=function(A,q,G,ae,ke,Ie,ye){var ve={$$typeof:t,type:A,key:q,ref:G,props:ye,_owner:Ie};return ve._store={},Object.defineProperty(ve._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(ve,"_self",{configurable:!1,enumerable:!1,writable:!1,value:ae}),Object.defineProperty(ve,"_source",{configurable:!1,enumerable:!1,writable:!1,value:ke}),Object.freeze&&(Object.freeze(ve.props),Object.freeze(ve)),ve};function Dt(A,q,G,ae,ke){{var Ie,ye={},ve=null,it=null;G!==void 0&&(D(G),ve=""+G),Ye(q)&&(D(q.key),ve=""+q.key),ze(q)&&(it=q.ref,at(q,ke));for(Ie in q)de.call(q,Ie)&&!ne.hasOwnProperty(Ie)&&(ye[Ie]=q[Ie]);if(A&&A.defaultProps){var He=A.defaultProps;for(Ie in He)ye[Ie]===void 0&&(ye[Ie]=He[Ie])}if(ve||it){var Ge=typeof A=="function"?A.displayName||A.name||"Unknown":A;ve&&jt(ye,Ge),it&&ft(ye,Ge)}return tt(A,ve,it,ke,ae,W.current,ye)}}var rt=y.ReactCurrentOwner,Pn=y.ReactDebugCurrentFrame;function xt(A){if(A){var q=A._owner,G=Oe(A.type,A._source,q?q.type:null);Pn.setExtraStackFrame(G)}else Pn.setExtraStackFrame(null)}var nn;nn=!1;function jn(A){return typeof A=="object"&&A!==null&&A.$$typeof===t}function gn(){{if(rt.current){var A=V(rt.current.type);if(A)return`
22
22
 
23
23
  Check the render method of \``+A+"`."}return""}}function zr(A){return""}var bn={};function Xn(A){{var q=gn();if(!q){var G=typeof A=="string"?A:A.displayName||A.name;G&&(q=`
24
24
 
25
- Check the top-level render call using <`+G+">.")}return q}}function Ar(A,q){{if(!A._store||A._store.validated||A.key!=null)return;A._store.validated=!0;var G=Xn(q);if(bn[G])return;bn[G]=!0;var ae="";A&&A._owner&&A._owner!==rt.current&&(ae=" It was passed a child from "+V(A._owner.type)+"."),xt(A),x('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',G,ae),xt(null)}}function Er(A,q){{if(typeof A!="object")return;if(me(A))for(var G=0;G<A.length;G++){var ae=A[G];jn(ae)&&Ar(ae,q)}else if(jn(A))A._store&&(A._store.validated=!0);else if(A){var ke=b(A);if(typeof ke=="function"&&ke!==A.entries)for(var Ie=ke.call(A),ye;!(ye=Ie.next()).done;)jn(ye.value)&&Ar(ye.value,q)}}}function Mi(A){{var q=A.type;if(q==null||typeof q=="string")return;var G;if(typeof q=="function")G=q.propTypes;else if(typeof q=="object"&&(q.$$typeof===l||q.$$typeof===d))G=q.propTypes;else return;if(G){var ae=V(q);Ze(G,A.props,"prop",ae,A)}else if(q.PropTypes!==void 0&&!nn){nn=!0;var ke=V(q);x("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ke||"Unknown")}typeof q.getDefaultProps=="function"&&!q.getDefaultProps.isReactClassApproved&&x("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Ii(A){{for(var q=Object.keys(A.props),G=0;G<q.length;G++){var ae=q[G];if(ae!=="children"&&ae!=="key"){xt(A),x("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",ae),xt(null);break}}A.ref!==null&&(xt(A),x("Invalid attribute `ref` supplied to `React.Fragment`."),xt(null))}}var Pr={};function jr(A,q,G,ae,ke,Ie){{var ye=k(A);if(!ye){var ve="";(A===void 0||typeof A=="object"&&A!==null&&Object.keys(A).length===0)&&(ve+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var it=zr();it?ve+=it:ve+=gn();var He;A===null?He="null":me(A)?He="array":A!==void 0&&A.$$typeof===t?(He="<"+(V(A.type)||"Unknown")+" />",ve=" Did you accidentally export a JSX literal instead of a component?"):He=typeof A,x("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",He,ve)}var Ge=Dt(A,q,G,ke,Ie);if(Ge==null)return Ge;if(ye){var ht=q.children;if(ht!==void 0)if(ae)if(me(ht)){for(var Jt=0;Jt<ht.length;Jt++)Er(ht[Jt],A);Object.freeze&&Object.freeze(ht)}else x("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Er(ht,A)}if(pe.call(q,"key")){var Rt=V(A),st=Object.keys(q).filter(function(Li){return Li!=="key"}),Zn=st.length>0?"{key: someKey, "+st.join(": ..., ")+": ...}":"{key: someKey}";if(!Pr[Rt+Zn]){var Gn=st.length>0?"{"+st.join(": ..., ")+": ...}":"{}";x(`A props object containing a "key" prop is being spread into JSX:
25
+ Check the top-level render call using <`+G+">.")}return q}}function Ar(A,q){{if(!A._store||A._store.validated||A.key!=null)return;A._store.validated=!0;var G=Xn(q);if(bn[G])return;bn[G]=!0;var ae="";A&&A._owner&&A._owner!==rt.current&&(ae=" It was passed a child from "+V(A._owner.type)+"."),xt(A),x('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',G,ae),xt(null)}}function Er(A,q){{if(typeof A!="object")return;if(pe(A))for(var G=0;G<A.length;G++){var ae=A[G];jn(ae)&&Ar(ae,q)}else if(jn(A))A._store&&(A._store.validated=!0);else if(A){var ke=b(A);if(typeof ke=="function"&&ke!==A.entries)for(var Ie=ke.call(A),ye;!(ye=Ie.next()).done;)jn(ye.value)&&Ar(ye.value,q)}}}function Mi(A){{var q=A.type;if(q==null||typeof q=="string")return;var G;if(typeof q=="function")G=q.propTypes;else if(typeof q=="object"&&(q.$$typeof===l||q.$$typeof===d))G=q.propTypes;else return;if(G){var ae=V(q);Ze(G,A.props,"prop",ae,A)}else if(q.PropTypes!==void 0&&!nn){nn=!0;var ke=V(q);x("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ke||"Unknown")}typeof q.getDefaultProps=="function"&&!q.getDefaultProps.isReactClassApproved&&x("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Ii(A){{for(var q=Object.keys(A.props),G=0;G<q.length;G++){var ae=q[G];if(ae!=="children"&&ae!=="key"){xt(A),x("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",ae),xt(null);break}}A.ref!==null&&(xt(A),x("Invalid attribute `ref` supplied to `React.Fragment`."),xt(null))}}var Pr={};function jr(A,q,G,ae,ke,Ie){{var ye=k(A);if(!ye){var ve="";(A===void 0||typeof A=="object"&&A!==null&&Object.keys(A).length===0)&&(ve+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var it=zr();it?ve+=it:ve+=gn();var He;A===null?He="null":pe(A)?He="array":A!==void 0&&A.$$typeof===t?(He="<"+(V(A.type)||"Unknown")+" />",ve=" Did you accidentally export a JSX literal instead of a component?"):He=typeof A,x("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",He,ve)}var Ge=Dt(A,q,G,ke,Ie);if(Ge==null)return Ge;if(ye){var ht=q.children;if(ht!==void 0)if(ae)if(pe(ht)){for(var Jt=0;Jt<ht.length;Jt++)Er(ht[Jt],A);Object.freeze&&Object.freeze(ht)}else x("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Er(ht,A)}if(de.call(q,"key")){var Rt=V(A),st=Object.keys(q).filter(function(Li){return Li!=="key"}),Zn=st.length>0?"{key: someKey, "+st.join(": ..., ")+": ...}":"{key: someKey}";if(!Pr[Rt+Zn]){var Gn=st.length>0?"{"+st.join(": ..., ")+": ...}":"{}";x(`A props object containing a "key" prop is being spread into JSX:
26
26
  let props = %s;
27
27
  <%s {...props} />
28
28
  React keys must be passed directly to JSX without using spread:
@@ -252,22 +252,22 @@ React keys must be passed directly to JSX without using spread:
252
252
  `).trim(),{cleanText:r,sources:t,files:n}};async function tc(e,t,n,r,i,a,o,s,l){var m;const u=(m=e.body)==null?void 0:m.getReader();if(!u)throw new Error("No response body");const c=new TextDecoder;let d="",p="";try{for(;;){const{done:h,value:g}=await u.read();if(h)break;d+=c.decode(g,{stream:!0});let b;for(;(b=d.indexOf(`
253
253
  `))!==-1;){let y=d.slice(0,b);if(d=d.slice(b+1),y.endsWith("\r")&&(y=y.slice(0,-1)),y.startsWith(":")||y.trim()===""||!y.startsWith("data: "))continue;const x=y.slice(6).trim();if(x!=="[DONE]")try{const S=JSON.parse(x);if(ps(S)){const P=Xr(S,t,S.error||"The chat connection was interrupted.");s(P.message,P.code);return}if(S.type==="tool_error"){a(),l&&l(S);continue}if(l&&l(S),S.type==="tool_start"){r();continue}if(S.type==="tool_execution"&&S.tool_name){i(S.tool_name);continue}if(S.type==="tool_name"&&S.content){i(S.content);continue}if(S.type==="tool_result"){a();continue}if(S.content&&(p+=S.content,n(S.content)),S.done){o(kn(S.quick_replies));return}}catch{d=y+`
254
254
  `+d;break}}}if(d.trim())for(let h of d.split(`
255
- `)){if(!h||h.startsWith(":")||!h.startsWith("data: "))continue;const g=h.slice(6).trim();if(g!=="[DONE]")try{const b=JSON.parse(g);if(ps(b)){const y=Xr(b,t,b.error||"The chat connection was interrupted.");s(y.message,y.code);return}if(b.type==="tool_error"){a(),l&&l(b);continue}l&&l(b),b.content&&(p+=b.content,n(b.content)),b.done&&o(kn(b.quick_replies))}catch{}}(p||d)&&o([])}catch(h){h instanceof Error?s(h.message):s(Xr(void 0,t,"The chat connection was interrupted.").message)}}async function hs(e,t,n,r){const i={prompt_id:e,tracking_id:t,context:n},a=await fetch(`${et.baseUrl}/v1/conversation/start`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(i)});if(!a.ok)throw new Error(await _t(a,n==null?void 0:n.userPreferredLanguage,"Failed to start conversation"));return await a.json()}async function mh(e,t,n,r,i,a,o,s,l,u,c,d){var y;const p={prompt_id:e,tracking_id:t,context:n};(r==null?void 0:r.initialMessage)!==void 0&&(p.initial_message=r.initialMessage),r!=null&&r.preferredTool&&(p.preferred_tool=r.preferredTool),r!=null&&r.attachments&&(p.attachments=r.attachments),r!=null&&r.audioInput&&(p.audio_input=r.audioInput),p.stream=!0;const m=await fetch(`${et.baseUrl}/v1/conversation/start`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(p)});if(!m.ok)throw new Error(await _t(m,n==null?void 0:n.userPreferredLanguage,"Failed to start conversation"));const h=m.headers.get("content-type");if(!(h!=null&&h.includes("text/event-stream"))){const x=await m.json();i({conversationId:x.conversation_id,assistantTenant:(y=x.assistant)==null?void 0:y.tenant,assistant:x.assistant}),a(x.initial_response),u(kn(x.quick_replies));return}let g,b;await tc(m,n==null?void 0:n.userPreferredLanguage,a,o,s,l,u,c,x=>{d==null||d(x);const S=x,P=x.conversation_id??S.conversationId,j=x.assistant??S.assistant;P&&P!==g&&(g=P),j!=null&&j.tenant&&j.tenant!==b&&(b=j.tenant),(P||j)&&i({conversationId:P??g,assistantTenant:(j==null?void 0:j.tenant)??b,assistant:j})})}async function ph(e){var n;const t=await fetch(`${et.baseUrl}/v1/conversation/continue`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw new Error(await _t(t,(n=e.context)==null?void 0:n.userPreferredLanguage,"Failed to send message"));return await t.json()}async function hh(e,t,n,r,i,a,o,s){var c,d;const l=await fetch(`${et.baseUrl}/v1/conversation/stream`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(e)});if(!l.ok)throw new Error(await _t(l,(c=e.context)==null?void 0:c.userPreferredLanguage,"Failed to send message"));const u=l.headers.get("content-type");if(!(u!=null&&u.includes("text/event-stream"))){const p=await l.json();t(p.response),a(kn(p.quick_replies));return}await tc(l,(d=e.context)==null?void 0:d.userPreferredLanguage,t,n,r,i,a,o,s)}async function gh(e,t){const n=await fetch(`${et.baseUrl}/v1/human-handover/${encodeURIComponent(e)}`,{headers:{"X-Handover-Token":t}});if(!n.ok)throw new Error(await _t(n,void 0,"Failed to read handover status"));return n.json()}async function gs(e,t){const n=await fetch(`${et.baseUrl}/v1/human-handover/${encodeURIComponent(e)}/cancel`,{method:"POST",headers:{"X-Handover-Token":t}});if(!n.ok)throw new Error(await _t(n,void 0,"Failed to cancel handover"));return n.json()}async function bh(e,t,n){const r=await fetch(`${et.baseUrl}/v1/human-handover/${encodeURIComponent(e)}/messages`,{method:"POST",headers:{"Content-Type":"application/json","X-Handover-Token":t},body:JSON.stringify({text:n})});if(!r.ok)throw new Error(await _t(r,void 0,"Failed to send handover message"))}async function yh(e,t,n,r){const i=await fetch(`${et.baseUrl}/v1/audio/transcribe`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify({audio_input:{filename:n,content_type:t,mime_type:t,data:e}})});if(!i.ok)throw new Error(await _t(i,r,"Failed to transcribe audio"));return await i.json()}async function nc(e){const t=e.voiceId||dh,n=new URLSearchParams;n.set("output_format",e.outputFormat||"mp3_44100_128"),e.optimizeStreamingLatency!==void 0&&n.set("optimize_streaming_latency",String(e.optimizeStreamingLatency)),e.enableLogging!==void 0&&n.set("enable_logging",String(e.enableLogging));const r=async s=>(await ec(s,e.languageCode,"Failed to generate speech")).message,i=async s=>{const l={text:e.text,model_id:s};return e.languageCode&&(l.language_code=e.languageCode),e.voiceSettings&&(l.voice_settings=e.voiceSettings),e.seed!==void 0&&(l.seed=e.seed),await fetch(`${et.baseUrl}/v1/audio/text-to-speech/${t}/stream?${n.toString()}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l),signal:e.signal})},a=e.modelId||ms;let o=await i(a);if(!o.ok&&e.modelId===void 0&&a===ms&&(o.status===400||o.status===404||o.status===422)&&(o=await i(fh)),!o.ok)throw new Error(await r(o));if(!o.body)throw new Error("No response body");return o}async function vh(e){const t=await nc(e);if(!t.body)return await t.blob();const n=t.headers.get("content-type")??"audio/mpeg",r=t.body.getReader(),i=[];for(;;){const{value:a,done:o}=await r.read();if(o)break;a&&i.push(a)}return new Blob(i,{type:n})}async function bs(e){const t={conversation_id:e.conversation_id,feedback_type:e.feedback_type,message_number:e.message_number,tenant:e.tenant??et.tenant,problem:e.problem,problem_description:e.problem_description},n=await fetch(`${et.baseUrl}/v1/feedback`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok)throw new Error(await _t(n,void 0,"Failed to submit feedback"))}const xh=250,ys=30,wh=55296,kh=56319,Sh=(e,t)=>{if(t>=e.length)return e.length;const n=e.charCodeAt(t-1);return n>=wh&&n<=kh?t+1:t};class Ch{constructor(t){Tn(this,"buffers",new Map);Tn(this,"rafId",null);Tn(this,"lastCommitAt",0);Tn(this,"disposed",!1);Tn(this,"tick",t=>{if(this.rafId=null,this.disposed)return;const n=t-this.lastCommitAt;if(n>=ys){const r=Math.min(n,4*ys);this.lastCommitAt=t;for(const[i,a]of Array.from(this.buffers.entries())){const o=Math.ceil(a.length*r/xh),s=Sh(a,Math.max(o,1)),l=a.slice(0,s),u=a.slice(s);u?this.buffers.set(i,u):this.buffers.delete(i),this.commit(i,l)}}this.buffers.size>0&&(this.rafId=requestAnimationFrame(this.tick))});this.commit=t}push(t,n){if(!(this.disposed||!n)){if(typeof document<"u"&&document.hidden){this.flush(t),this.commit(t,n);return}this.buffers.set(t,(this.buffers.get(t)??"")+n),this.schedule()}}flush(t){const n=this.buffers.get(t);this.buffers.delete(t),n&&this.commit(t,n),this.buffers.size===0&&this.stop()}flushAll(){for(const t of Array.from(this.buffers.keys()))this.flush(t)}clearAll(){this.buffers.clear(),this.stop()}dispose(){this.disposed=!0,this.clearAll()}schedule(){if(!(this.rafId!==null||this.disposed)){if(typeof requestAnimationFrame!="function"){this.flushAll();return}this.lastCommitAt=performance.now(),this.rafId=requestAnimationFrame(this.tick)}}stop(){this.rafId!==null&&(cancelAnimationFrame(this.rafId),this.rafId=null)}}const zh={amturo_locations:1,amturo_counters:1,amturo_services:1,amturo_service_details:1,amturo_self_booking_link:1,amturo_slot_options:2,amturo_booking_intent_created:3,amturo_booking_consent:3,amturo_choices:3,amturo_action_confirmation:4,amturo_booking_confirmed:4,amturo_booking_rescheduled:4,amturo_booking_cancelled:4,amturo_booking_status:4},vs=e=>zh[String(e.action)]??1;function Ah({promptId:e,initialMessage:t,initialConversationId:n,onError:r,onInitialMessage:i,getContext:a,humanHandover:o,startOnFirstUserMessage:s,localWelcomeMessage:l}){const[u,c]=I.useState([]),[d,p]=I.useState(!1),[m,h]=I.useState(null),[g,b]=I.useState(void 0),[y,x]=I.useState([]),[S,P]=I.useState({active:!1}),[j,C]=I.useState({status:"idle"}),E=I.useRef(!1),R=I.useRef(0),M=I.useRef([]),k=I.useRef(null),N=I.useRef("idle"),T=I.useRef(new Set),V=Q=>Q.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),O=Q=>{P({active:!0,toolName:Q}),o!=null&&o.enabled&&Q==="human_handover"&&(N.current="requesting",C({status:"requesting"}))},F=I.useCallback(Q=>{if(!(o!=null&&o.enabled))return;const U=typeof Q.clientToken=="string"?Q.clientToken:null,ee=typeof Q.conversationId=="string"?Q.conversationId:m,fe=typeof Q.status=="string"?Q.status:"queued";!U||!ee||(k.current=U,N.current=fe,sessionStorage.setItem(`feazy-handover:${ee}`,JSON.stringify({token:U,status:fe})),C({status:fe}))},[m,o==null?void 0:o.enabled]),B=I.useCallback(()=>{k.current=null,N.current="idle",T.current.clear(),m&&sessionStorage.removeItem(`feazy-handover:${m}`),C({status:"idle"})},[m]),Z=I.useRef(null),X=I.useRef(null);X.current||(X.current=new Ch((Q,U)=>{var ee;(ee=Z.current)==null||ee.call(Z,Q,U)}));const K=X.current,w=I.useRef(0);I.useEffect(()=>()=>K.clearAll(),[K]);const se=I.useCallback(Q=>{const U=Q.rpc_data,ee=U==null?void 0:U.action;if(ee==="human_handover"&&U){F(U);return}typeof ee!="string"||!ee.startsWith("amturo_")||(M.current=[...M.current.filter(fe=>fe.action!==ee),U])},[F]);I.useEffect(()=>{if(!(!(o!=null&&o.enabled)||!m||k.current))try{const Q=JSON.parse(sessionStorage.getItem(`feazy-handover:${m}`)||"null");Q!=null&&Q.token&&(k.current=Q.token,N.current=Q.status||"queued",C({status:Q.status||"queued"}))}catch{sessionStorage.removeItem(`feazy-handover:${m}`)}},[m,o==null?void 0:o.enabled]),I.useEffect(()=>{const Q=k.current;if(!(o!=null&&o.enabled)||!m||!Q||!["queued","active"].includes(j.status))return;let U=!1;const ee=R.current,fe=async()=>{try{const pe=await gh(m,Q);if(U||ee!==R.current)return;if(pe.status==="cancelled"){B();return}const Qe=N.current;N.current=pe.status,C({status:pe.status,operator:pe.operator}),sessionStorage.setItem(`feazy-handover:${m}`,JSON.stringify({token:Q,status:pe.status}));const Se=pe.events.filter(ie=>ie.type!=="operator_message"||ie.deleted||!ie.text||T.current.has(ie.id)?!1:(T.current.add(ie.id),!0)),xe=ie=>{var de,Ve;const me=new Date;return{text:"",isUser:!1,sender:"system",systemKind:ie,operatorName:(de=pe.operator)==null?void 0:de.displayName,operatorImageUrl:(Ve=pe.operator)==null?void 0:Ve.imageUrl,time:V(me),timestamp:me}},Ze=[];pe.status==="active"&&Qe!=="active"&&Ze.push(xe("operator_joined")),Ze.push(...Se.map(ie=>{var de,Ve,Je,D;const me=ie.sentAt?new Date(ie.sentAt):new Date;return{text:ie.text,isUser:!1,sender:"operator",operatorName:((de=ie.operator)==null?void 0:de.displayName)||((Ve=pe.operator)==null?void 0:Ve.displayName),operatorImageUrl:((Je=ie.operator)==null?void 0:Je.imageUrl)||((D=pe.operator)==null?void 0:D.imageUrl),time:V(me),timestamp:me}})),pe.status==="closed"&&Qe!=="closed"&&Ze.push(xe("handover_closed")),Ze.length&&c(ie=>[...ie,...Ze])}catch(pe){U||console.warn("Failed to poll human handover:",pe)}};fe();const Oe=window.setInterval(fe,o.pollIntervalMs||2e3);return()=>{U=!0,window.clearInterval(Oe)}},[m,j.status,o==null?void 0:o.enabled,o==null?void 0:o.pollIntervalMs,B]);const Ee=I.useCallback(()=>{const Q=M.current;if(M.current=[],!Q.length)return;const U=Math.max(...Q.map(vs)),ee=Q.filter(Oe=>vs(Oe)===U),fe=new Date;c(Oe=>[...Oe,...ee.map(pe=>({text:"",isUser:!1,time:fe.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:fe,feedback:null,rpcData:pe}))])},[]),z=I.useCallback(async()=>{var Q;if(!E.current){if(E.current=!0,o!=null&&o.enabled)try{const U=JSON.parse(sessionStorage.getItem(`feazy-chat:${e}`)||"null");if(U!=null&&U.conversationId&&Array.isArray(U.messages)){h(U.conversationId),c(U.messages),T.current=new Set(U.seenEvents||[]);return}}catch{}if(t&&n){const U=new Date,ee={text:t,isUser:!1,time:U.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:U,feedback:null};c([ee]),h(n),i&&i(t);return}if(s){const U=l??t;if(U){const ee=new Date,fe={text:U,isUser:!1,time:ee.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:ee,feedback:null};c([fe]),i&&i(U)}return}try{const U=a==null?void 0:a(),ee=await hs(e,void 0,U);b((Q=ee.assistant)==null?void 0:Q.tenant),h(ee.conversation_id);const{cleanText:fe,sources:Oe,files:pe}=$n(ee.initial_response),Qe=new Date,Se={text:fe,isUser:!1,time:Qe.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:Qe,feedback:null,sources:Oe,files:pe};c([Se]),x(kn(ee.quick_replies)),i&&i(fe)}catch(U){const ee=U instanceof Error?U.message:"Failed to start conversation";r&&r(ee)}}},[e,t,n,r,i,a,s,l,o==null?void 0:o.enabled]),Me=I.useCallback(async()=>{var Q;if(!(o!=null&&o.enabled)||d||N.current==="requesting"||u.some(U=>U.delivery==="pending"))return!1;p(!0);try{const U=s?null:await hs(e,void 0,a==null?void 0:a()),{cleanText:ee,sources:fe,files:Oe}=U?$n(U.initial_response):{cleanText:l??t??"",sources:[],files:[]},pe=["queued","active"].includes(N.current)?k.current:null;pe&&m&&gs(m,pe).catch(Se=>{console.warn("Failed to cancel human handover:",Se)}),R.current++,K.clearAll(),Z.current=null,M.current=[],k.current=null,N.current="idle",T.current.clear();try{sessionStorage.removeItem(`feazy-chat:${e}`),m&&sessionStorage.removeItem(`feazy-handover:${m}`)}catch{}h((U==null?void 0:U.conversation_id)??null),b((Q=U==null?void 0:U.assistant)==null?void 0:Q.tenant);const Qe=new Date;return c(ee?[{text:ee,isUser:!1,time:V(Qe),timestamp:Qe,feedback:null,sources:fe,files:Oe}]:[]),x(kn(U==null?void 0:U.quick_replies)),P({active:!1}),C({status:"idle"}),E.current=!0,ee&&(i==null||i(ee)),!0}catch(U){return r==null||r(U instanceof Error?U.message:"Failed to start conversation"),!1}finally{p(!1)}},[o==null?void 0:o.enabled,d,u,e,m,s,a,l,t,i,r,K]);I.useEffect(()=>{if(!(!(o!=null&&o.enabled)||!m))try{sessionStorage.setItem(`feazy-chat:${e}`,JSON.stringify({conversationId:m,messages:u,seenEvents:[...T.current]}))}catch{}},[e,m,u,o==null?void 0:o.enabled]);const We=I.useCallback(async(Q,U,ee,fe,Oe)=>{const pe=a==null?void 0:a(),Qe=new Date,Se=!!(o!=null&&o.enabled)&&!!k.current&&["queued","active"].includes(j.status),xe={text:Oe||Q,isUser:!0,time:V(Qe),timestamp:Qe,feedback:null,delivery:Se?"pending":void 0};if(c(ie=>[...ie,xe]),x([]),M.current=[],Se){const ie=me=>c(de=>de.map(Ve=>Ve===xe?{...Ve,delivery:me}:Ve));try{if(!m)throw new Error("Conversation not initialized");await bh(m,k.current,Q),ie("delivered")}catch(me){ie("failed");const de=me instanceof Error?me.message:"Failed to send message";r&&r(de)}return}o!=null&&o.enabled&&!fe&&["closed","failed"].includes(j.status)&&B(),p(!0),K.flushAll();const Ze=String(++w.current);try{if(!m&&s){let ie="";const me=new Date;let de=-1;const Ve=_=>{_.assistantTenant&&b(_.assistantTenant),_.conversationId&&h(_.conversationId)},Je=_=>{ie+=_;const{cleanText:ze,sources:Ye,files:at}=$n(ie);c(jt=>{const ft=[...jt];return de===-1?(de=ft.length,ft.push({text:ze,isUser:!1,time:me.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:me,feedback:null,sources:Ye,files:at})):ft[de]={...ft[de],text:ze,sources:Ye,files:at},ft})};Z.current=(_,ze)=>{_===Ze&&Je(ze)};const D=_=>K.push(Ze,_),W=()=>{K.flush(Ze),P({active:!1}),ie.length>0&&(ie.endsWith(`
255
+ `)){if(!h||h.startsWith(":")||!h.startsWith("data: "))continue;const g=h.slice(6).trim();if(g!=="[DONE]")try{const b=JSON.parse(g);if(ps(b)){const y=Xr(b,t,b.error||"The chat connection was interrupted.");s(y.message,y.code);return}if(b.type==="tool_error"){a(),l&&l(b);continue}l&&l(b),b.content&&(p+=b.content,n(b.content)),b.done&&o(kn(b.quick_replies))}catch{}}(p||d)&&o([])}catch(h){h instanceof Error?s(h.message):s(Xr(void 0,t,"The chat connection was interrupted.").message)}}async function hs(e,t,n,r){const i={prompt_id:e,tracking_id:t,context:n},a=await fetch(`${et.baseUrl}/v1/conversation/start`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(i)});if(!a.ok)throw new Error(await _t(a,n==null?void 0:n.userPreferredLanguage,"Failed to start conversation"));return await a.json()}async function mh(e,t,n,r,i,a,o,s,l,u,c,d){var y;const p={prompt_id:e,tracking_id:t,context:n};(r==null?void 0:r.initialMessage)!==void 0&&(p.initial_message=r.initialMessage),r!=null&&r.preferredTool&&(p.preferred_tool=r.preferredTool),r!=null&&r.attachments&&(p.attachments=r.attachments),r!=null&&r.audioInput&&(p.audio_input=r.audioInput),p.stream=!0;const m=await fetch(`${et.baseUrl}/v1/conversation/start`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(p)});if(!m.ok)throw new Error(await _t(m,n==null?void 0:n.userPreferredLanguage,"Failed to start conversation"));const h=m.headers.get("content-type");if(!(h!=null&&h.includes("text/event-stream"))){const x=await m.json();i({conversationId:x.conversation_id,assistantTenant:(y=x.assistant)==null?void 0:y.tenant,assistant:x.assistant}),a(x.initial_response),u(kn(x.quick_replies));return}let g,b;await tc(m,n==null?void 0:n.userPreferredLanguage,a,o,s,l,u,c,x=>{d==null||d(x);const S=x,P=x.conversation_id??S.conversationId,j=x.assistant??S.assistant;P&&P!==g&&(g=P),j!=null&&j.tenant&&j.tenant!==b&&(b=j.tenant),(P||j)&&i({conversationId:P??g,assistantTenant:(j==null?void 0:j.tenant)??b,assistant:j})})}async function ph(e){var n;const t=await fetch(`${et.baseUrl}/v1/conversation/continue`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw new Error(await _t(t,(n=e.context)==null?void 0:n.userPreferredLanguage,"Failed to send message"));return await t.json()}async function hh(e,t,n,r,i,a,o,s){var c,d;const l=await fetch(`${et.baseUrl}/v1/conversation/stream`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(e)});if(!l.ok)throw new Error(await _t(l,(c=e.context)==null?void 0:c.userPreferredLanguage,"Failed to send message"));const u=l.headers.get("content-type");if(!(u!=null&&u.includes("text/event-stream"))){const p=await l.json();t(p.response),a(kn(p.quick_replies));return}await tc(l,(d=e.context)==null?void 0:d.userPreferredLanguage,t,n,r,i,a,o,s)}async function gh(e,t){const n=await fetch(`${et.baseUrl}/v1/human-handover/${encodeURIComponent(e)}`,{headers:{"X-Handover-Token":t}});if(!n.ok)throw new Error(await _t(n,void 0,"Failed to read handover status"));return n.json()}async function gs(e,t){const n=await fetch(`${et.baseUrl}/v1/human-handover/${encodeURIComponent(e)}/cancel`,{method:"POST",headers:{"X-Handover-Token":t}});if(!n.ok)throw new Error(await _t(n,void 0,"Failed to cancel handover"));return n.json()}async function bh(e,t,n){const r=await fetch(`${et.baseUrl}/v1/human-handover/${encodeURIComponent(e)}/messages`,{method:"POST",headers:{"Content-Type":"application/json","X-Handover-Token":t},body:JSON.stringify({text:n})});if(!r.ok)throw new Error(await _t(r,void 0,"Failed to send handover message"))}async function yh(e,t,n,r){const i=await fetch(`${et.baseUrl}/v1/audio/transcribe`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify({audio_input:{filename:n,content_type:t,mime_type:t,data:e}})});if(!i.ok)throw new Error(await _t(i,r,"Failed to transcribe audio"));return await i.json()}async function nc(e){const t=e.voiceId||dh,n=new URLSearchParams;n.set("output_format",e.outputFormat||"mp3_44100_128"),e.optimizeStreamingLatency!==void 0&&n.set("optimize_streaming_latency",String(e.optimizeStreamingLatency)),e.enableLogging!==void 0&&n.set("enable_logging",String(e.enableLogging));const r=async s=>(await ec(s,e.languageCode,"Failed to generate speech")).message,i=async s=>{const l={text:e.text,model_id:s};return e.languageCode&&(l.language_code=e.languageCode),e.voiceSettings&&(l.voice_settings=e.voiceSettings),e.seed!==void 0&&(l.seed=e.seed),await fetch(`${et.baseUrl}/v1/audio/text-to-speech/${t}/stream?${n.toString()}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l),signal:e.signal})},a=e.modelId||ms;let o=await i(a);if(!o.ok&&e.modelId===void 0&&a===ms&&(o.status===400||o.status===404||o.status===422)&&(o=await i(fh)),!o.ok)throw new Error(await r(o));if(!o.body)throw new Error("No response body");return o}async function vh(e){const t=await nc(e);if(!t.body)return await t.blob();const n=t.headers.get("content-type")??"audio/mpeg",r=t.body.getReader(),i=[];for(;;){const{value:a,done:o}=await r.read();if(o)break;a&&i.push(a)}return new Blob(i,{type:n})}async function bs(e){const t={conversation_id:e.conversation_id,feedback_type:e.feedback_type,message_number:e.message_number,tenant:e.tenant??et.tenant,problem:e.problem,problem_description:e.problem_description},n=await fetch(`${et.baseUrl}/v1/feedback`,{method:"POST",headers:{Authorization:`Bearer ${et.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok)throw new Error(await _t(n,void 0,"Failed to submit feedback"))}const xh=250,ys=30,wh=55296,kh=56319,Sh=(e,t)=>{if(t>=e.length)return e.length;const n=e.charCodeAt(t-1);return n>=wh&&n<=kh?t+1:t};class Ch{constructor(t){Tn(this,"buffers",new Map);Tn(this,"rafId",null);Tn(this,"lastCommitAt",0);Tn(this,"disposed",!1);Tn(this,"tick",t=>{if(this.rafId=null,this.disposed)return;const n=t-this.lastCommitAt;if(n>=ys){const r=Math.min(n,4*ys);this.lastCommitAt=t;for(const[i,a]of Array.from(this.buffers.entries())){const o=Math.ceil(a.length*r/xh),s=Sh(a,Math.max(o,1)),l=a.slice(0,s),u=a.slice(s);u?this.buffers.set(i,u):this.buffers.delete(i),this.commit(i,l)}}this.buffers.size>0&&(this.rafId=requestAnimationFrame(this.tick))});this.commit=t}push(t,n){if(!(this.disposed||!n)){if(typeof document<"u"&&document.hidden){this.flush(t),this.commit(t,n);return}this.buffers.set(t,(this.buffers.get(t)??"")+n),this.schedule()}}flush(t){const n=this.buffers.get(t);this.buffers.delete(t),n&&this.commit(t,n),this.buffers.size===0&&this.stop()}flushAll(){for(const t of Array.from(this.buffers.keys()))this.flush(t)}clearAll(){this.buffers.clear(),this.stop()}dispose(){this.disposed=!0,this.clearAll()}schedule(){if(!(this.rafId!==null||this.disposed)){if(typeof requestAnimationFrame!="function"){this.flushAll();return}this.lastCommitAt=performance.now(),this.rafId=requestAnimationFrame(this.tick)}}stop(){this.rafId!==null&&(cancelAnimationFrame(this.rafId),this.rafId=null)}}const zh={amturo_locations:1,amturo_counters:1,amturo_services:1,amturo_service_details:1,amturo_self_booking_link:1,amturo_slot_options:2,amturo_booking_intent_created:3,amturo_booking_consent:3,amturo_choices:0,amturo_action_confirmation:4,amturo_booking_confirmed:4,amturo_booking_rescheduled:4,amturo_booking_cancelled:4,amturo_booking_status:4},vs=e=>zh[String(e.action)]??1;function Ah({promptId:e,initialMessage:t,initialConversationId:n,onError:r,onInitialMessage:i,getContext:a,humanHandover:o,startOnFirstUserMessage:s,localWelcomeMessage:l}){const[u,c]=I.useState([]),[d,p]=I.useState(!1),[m,h]=I.useState(null),[g,b]=I.useState(void 0),[y,x]=I.useState([]),[S,P]=I.useState({active:!1}),[j,C]=I.useState({status:"idle"}),E=I.useRef(!1),R=I.useRef(0),M=I.useRef([]),k=I.useRef(null),N=I.useRef("idle"),T=I.useRef(new Set),V=Q=>Q.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),O=Q=>{P({active:!0,toolName:Q}),o!=null&&o.enabled&&Q==="human_handover"&&(N.current="requesting",C({status:"requesting"}))},F=I.useCallback(Q=>{if(!(o!=null&&o.enabled))return;const U=typeof Q.clientToken=="string"?Q.clientToken:null,ee=typeof Q.conversationId=="string"?Q.conversationId:m,me=typeof Q.status=="string"?Q.status:"queued";!U||!ee||(k.current=U,N.current=me,sessionStorage.setItem(`feazy-handover:${ee}`,JSON.stringify({token:U,status:me})),C({status:me}))},[m,o==null?void 0:o.enabled]),B=I.useCallback(()=>{k.current=null,N.current="idle",T.current.clear(),m&&sessionStorage.removeItem(`feazy-handover:${m}`),C({status:"idle"})},[m]),Z=I.useRef(null),X=I.useRef(null);X.current||(X.current=new Ch((Q,U)=>{var ee;(ee=Z.current)==null||ee.call(Z,Q,U)}));const K=X.current,w=I.useRef(0);I.useEffect(()=>()=>K.clearAll(),[K]);const se=I.useCallback(Q=>{const U=Q.rpc_data,ee=U==null?void 0:U.action;if(ee==="human_handover"&&U){F(U);return}typeof ee!="string"||!ee.startsWith("amturo_")||(M.current=[...M.current.filter(me=>me.action!==ee),U])},[F]);I.useEffect(()=>{if(!(!(o!=null&&o.enabled)||!m||k.current))try{const Q=JSON.parse(sessionStorage.getItem(`feazy-handover:${m}`)||"null");Q!=null&&Q.token&&(k.current=Q.token,N.current=Q.status||"queued",C({status:Q.status||"queued"}))}catch{sessionStorage.removeItem(`feazy-handover:${m}`)}},[m,o==null?void 0:o.enabled]),I.useEffect(()=>{const Q=k.current;if(!(o!=null&&o.enabled)||!m||!Q||!["queued","active"].includes(j.status))return;let U=!1;const ee=R.current,me=async()=>{try{const de=await gh(m,Q);if(U||ee!==R.current)return;if(de.status==="cancelled"){B();return}const Qe=N.current;N.current=de.status,C({status:de.status,operator:de.operator}),sessionStorage.setItem(`feazy-handover:${m}`,JSON.stringify({token:Q,status:de.status}));const Se=de.events.filter(ie=>ie.type!=="operator_message"||ie.deleted||!ie.text||T.current.has(ie.id)?!1:(T.current.add(ie.id),!0)),xe=ie=>{var fe,Ve;const pe=new Date;return{text:"",isUser:!1,sender:"system",systemKind:ie,operatorName:(fe=de.operator)==null?void 0:fe.displayName,operatorImageUrl:(Ve=de.operator)==null?void 0:Ve.imageUrl,time:V(pe),timestamp:pe}},Ze=[];de.status==="active"&&Qe!=="active"&&Ze.push(xe("operator_joined")),Ze.push(...Se.map(ie=>{var fe,Ve,Je,D;const pe=ie.sentAt?new Date(ie.sentAt):new Date;return{text:ie.text,isUser:!1,sender:"operator",operatorName:((fe=ie.operator)==null?void 0:fe.displayName)||((Ve=de.operator)==null?void 0:Ve.displayName),operatorImageUrl:((Je=ie.operator)==null?void 0:Je.imageUrl)||((D=de.operator)==null?void 0:D.imageUrl),time:V(pe),timestamp:pe}})),de.status==="closed"&&Qe!=="closed"&&Ze.push(xe("handover_closed")),Ze.length&&c(ie=>[...ie,...Ze])}catch(de){U||console.warn("Failed to poll human handover:",de)}};me();const Oe=window.setInterval(me,o.pollIntervalMs||2e3);return()=>{U=!0,window.clearInterval(Oe)}},[m,j.status,o==null?void 0:o.enabled,o==null?void 0:o.pollIntervalMs,B]);const Ee=I.useCallback(()=>{const Q=M.current;if(M.current=[],!Q.length)return;const U=Math.max(...Q.map(vs)),ee=Q.filter(Oe=>{const de=vs(Oe);return de===0||de===U}),me=new Date;c(Oe=>[...Oe,...ee.map(de=>({text:"",isUser:!1,time:me.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:me,feedback:null,rpcData:de}))])},[]),z=I.useCallback(async()=>{var Q;if(!E.current){if(E.current=!0,o!=null&&o.enabled)try{const U=JSON.parse(sessionStorage.getItem(`feazy-chat:${e}`)||"null");if(U!=null&&U.conversationId&&Array.isArray(U.messages)){h(U.conversationId),c(U.messages),T.current=new Set(U.seenEvents||[]);return}}catch{}if(t&&n){const U=new Date,ee={text:t,isUser:!1,time:U.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:U,feedback:null};c([ee]),h(n),i&&i(t);return}if(s){const U=l??t;if(U){const ee=new Date,me={text:U,isUser:!1,time:ee.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:ee,feedback:null};c([me]),i&&i(U)}return}try{const U=a==null?void 0:a(),ee=await hs(e,void 0,U);b((Q=ee.assistant)==null?void 0:Q.tenant),h(ee.conversation_id);const{cleanText:me,sources:Oe,files:de}=$n(ee.initial_response),Qe=new Date,Se={text:me,isUser:!1,time:Qe.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:Qe,feedback:null,sources:Oe,files:de};c([Se]),x(kn(ee.quick_replies)),i&&i(me)}catch(U){const ee=U instanceof Error?U.message:"Failed to start conversation";r&&r(ee)}}},[e,t,n,r,i,a,s,l,o==null?void 0:o.enabled]),Me=I.useCallback(async()=>{var Q;if(!(o!=null&&o.enabled)||d||N.current==="requesting"||u.some(U=>U.delivery==="pending"))return!1;p(!0);try{const U=s?null:await hs(e,void 0,a==null?void 0:a()),{cleanText:ee,sources:me,files:Oe}=U?$n(U.initial_response):{cleanText:l??t??"",sources:[],files:[]},de=["queued","active"].includes(N.current)?k.current:null;de&&m&&gs(m,de).catch(Se=>{console.warn("Failed to cancel human handover:",Se)}),R.current++,K.clearAll(),Z.current=null,M.current=[],k.current=null,N.current="idle",T.current.clear();try{sessionStorage.removeItem(`feazy-chat:${e}`),m&&sessionStorage.removeItem(`feazy-handover:${m}`)}catch{}h((U==null?void 0:U.conversation_id)??null),b((Q=U==null?void 0:U.assistant)==null?void 0:Q.tenant);const Qe=new Date;return c(ee?[{text:ee,isUser:!1,time:V(Qe),timestamp:Qe,feedback:null,sources:me,files:Oe}]:[]),x(kn(U==null?void 0:U.quick_replies)),P({active:!1}),C({status:"idle"}),E.current=!0,ee&&(i==null||i(ee)),!0}catch(U){return r==null||r(U instanceof Error?U.message:"Failed to start conversation"),!1}finally{p(!1)}},[o==null?void 0:o.enabled,d,u,e,m,s,a,l,t,i,r,K]);I.useEffect(()=>{if(!(!(o!=null&&o.enabled)||!m))try{sessionStorage.setItem(`feazy-chat:${e}`,JSON.stringify({conversationId:m,messages:u,seenEvents:[...T.current]}))}catch{}},[e,m,u,o==null?void 0:o.enabled]);const We=I.useCallback(async(Q,U,ee,me,Oe)=>{const de=a==null?void 0:a(),Qe=new Date,Se=!!(o!=null&&o.enabled)&&!!k.current&&["queued","active"].includes(j.status),xe={text:Oe||Q,isUser:!0,time:V(Qe),timestamp:Qe,feedback:null,delivery:Se?"pending":void 0};if(c(ie=>[...ie,xe]),x([]),M.current=[],Se){const ie=pe=>c(fe=>fe.map(Ve=>Ve===xe?{...Ve,delivery:pe}:Ve));try{if(!m)throw new Error("Conversation not initialized");await bh(m,k.current,Q),ie("delivered")}catch(pe){ie("failed");const fe=pe instanceof Error?pe.message:"Failed to send message";r&&r(fe)}return}o!=null&&o.enabled&&!me&&["closed","failed"].includes(j.status)&&B(),p(!0),K.flushAll();const Ze=String(++w.current);try{if(!m&&s){let ie="";const pe=new Date;let fe=-1;const Ve=_=>{_.assistantTenant&&b(_.assistantTenant),_.conversationId&&h(_.conversationId)},Je=_=>{ie+=_;const{cleanText:ze,sources:Ye,files:at}=$n(ie);c(jt=>{const ft=[...jt];return fe===-1?(fe=ft.length,ft.push({text:ze,isUser:!1,time:pe.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:pe,feedback:null,sources:Ye,files:at})):ft[fe]={...ft[fe],text:ze,sources:Ye,files:at},ft})};Z.current=(_,ze)=>{_===Ze&&Je(ze)};const D=_=>K.push(Ze,_),W=()=>{K.flush(Ze),P({active:!1}),ie.length>0&&(ie.endsWith(`
256
256
 
257
257
  `)||(ie.endsWith(`
258
258
  `)?ie+=`
259
259
  `:ie+=`
260
260
 
261
- `))},ne=(_,ze)=>{K.flush(Ze),p(!1),P({active:!1}),N.current==="requesting"&&!k.current&&(N.current="failed",C({status:"failed"}));let Ye=_||"Failed to send message";(ze==="prompt_shield_blocked"||ze==="safety.blocked")&&!_?Ye="Your message was blocked by content filter.":!ze&&_.toLowerCase().includes("token")&&(Ye="Token limit exceeded. Please try a shorter message."),r&&r(Ye)},te=async _=>{await mh(e,void 0,pe,{..._,preferredTool:fe},Ve,D,()=>P({active:!0}),O,W,ze=>{K.flush(Ze),p(!1),P({active:!1}),x(ze),N.current==="requesting"&&!k.current&&(N.current="failed",C({status:"failed"})),Ee()},ne,se)};if(U){const _=new FileReader;_.onload=async()=>{try{const ze=_.result;await te({initialMessage:Q,attachments:[{filename:U.name,content_type:U.type,data:ze}],audioInput:ee})}catch(ze){p(!1),P({active:!1});const Ye=ze instanceof Error?ze.message:"Failed to send message";r&&r(Ye)}},_.readAsDataURL(U)}else try{await te({initialMessage:Q,audioInput:ee})}catch(_){p(!1),P({active:!1});const ze=_ instanceof Error?_.message:"Failed to send message";r&&r(ze)}return}if(!m){p(!1),r&&r("Conversation not initialized");return}if(U){const ie=new FileReader;ie.onload=async()=>{try{const me=ie.result,de=await ph({conversation_id:m,message:Q,attachments:[{filename:U.name,content_type:U.type,data:me}],audio_input:ee,context:pe}),{cleanText:Ve,sources:Je,files:D}=$n(de.response),W=new Date,ne={text:Ve,isUser:!1,time:W.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:W,feedback:null,sources:Je,files:D};c(te=>[...te,ne]),x(kn(de.quick_replies)),p(!1)}catch(me){p(!1);const de=me instanceof Error?me.message:"Failed to send message";r&&r(de)}},ie.readAsDataURL(U)}else{let ie="";const me=new Date;let de=-1;const Ve=Je=>{ie+=Je;const{cleanText:D,sources:W,files:ne}=$n(ie);c(te=>{const _=[...te];return de===-1?(de=_.length,_.push({text:D,isUser:!1,time:me.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:me,feedback:null,sources:W,files:ne})):_[de]={..._[de],text:D,sources:W,files:ne},_})};Z.current=(Je,D)=>{Je===Ze&&Ve(D)},await hh({conversation_id:m,message:Q,audio_input:ee,context:pe,preferred_tool:fe},Je=>K.push(Ze,Je),()=>P({active:!0}),O,()=>{K.flush(Ze),P({active:!1}),ie.length>0&&(ie.endsWith(`
261
+ `))},ne=(_,ze)=>{K.flush(Ze),p(!1),P({active:!1}),N.current==="requesting"&&!k.current&&(N.current="failed",C({status:"failed"}));let Ye=_||"Failed to send message";(ze==="prompt_shield_blocked"||ze==="safety.blocked")&&!_?Ye="Your message was blocked by content filter.":!ze&&_.toLowerCase().includes("token")&&(Ye="Token limit exceeded. Please try a shorter message."),r&&r(Ye)},te=async _=>{await mh(e,void 0,de,{..._,preferredTool:me},Ve,D,()=>P({active:!0}),O,W,ze=>{K.flush(Ze),p(!1),P({active:!1}),x(ze),N.current==="requesting"&&!k.current&&(N.current="failed",C({status:"failed"})),Ee()},ne,se)};if(U){const _=new FileReader;_.onload=async()=>{try{const ze=_.result;await te({initialMessage:Q,attachments:[{filename:U.name,content_type:U.type,data:ze}],audioInput:ee})}catch(ze){p(!1),P({active:!1});const Ye=ze instanceof Error?ze.message:"Failed to send message";r&&r(Ye)}},_.readAsDataURL(U)}else try{await te({initialMessage:Q,audioInput:ee})}catch(_){p(!1),P({active:!1});const ze=_ instanceof Error?_.message:"Failed to send message";r&&r(ze)}return}if(!m){p(!1),r&&r("Conversation not initialized");return}if(U){const ie=new FileReader;ie.onload=async()=>{try{const pe=ie.result,fe=await ph({conversation_id:m,message:Q,attachments:[{filename:U.name,content_type:U.type,data:pe}],audio_input:ee,context:de}),{cleanText:Ve,sources:Je,files:D}=$n(fe.response),W=new Date,ne={text:Ve,isUser:!1,time:W.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:W,feedback:null,sources:Je,files:D};c(te=>[...te,ne]),x(kn(fe.quick_replies)),p(!1)}catch(pe){p(!1);const fe=pe instanceof Error?pe.message:"Failed to send message";r&&r(fe)}},ie.readAsDataURL(U)}else{let ie="";const pe=new Date;let fe=-1;const Ve=Je=>{ie+=Je;const{cleanText:D,sources:W,files:ne}=$n(ie);c(te=>{const _=[...te];return fe===-1?(fe=_.length,_.push({text:D,isUser:!1,time:pe.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:pe,feedback:null,sources:W,files:ne})):_[fe]={..._[fe],text:D,sources:W,files:ne},_})};Z.current=(Je,D)=>{Je===Ze&&Ve(D)},await hh({conversation_id:m,message:Q,audio_input:ee,context:de,preferred_tool:me},Je=>K.push(Ze,Je),()=>P({active:!0}),O,()=>{K.flush(Ze),P({active:!1}),ie.length>0&&(ie.endsWith(`
262
262
 
263
263
  `)||(ie.endsWith(`
264
264
  `)?ie+=`
265
265
  `:ie+=`
266
266
 
267
- `))},Je=>{K.flush(Ze),p(!1),P({active:!1}),x(Je),Ee(),(fe==="human_handover"||N.current==="requesting")&&!k.current&&(N.current="failed",C({status:"failed"}))},(Je,D)=>{K.flush(Ze),p(!1),P({active:!1});let W=Je||"Failed to send message";(D==="prompt_shield_blocked"||D==="safety.blocked")&&!Je?W="Your message was blocked by content filter.":!D&&Je.toLowerCase().includes("token")&&(W="Token limit exceeded. Please try a shorter message."),r&&r(W),(fe==="human_handover"||N.current==="requesting")&&!k.current&&(N.current="failed",C({status:"failed"}))},se)}}catch(ie){K.flush(Ze),p(!1),P({active:!1}),N.current==="requesting"&&!k.current&&(N.current="failed",C({status:"failed"}));const me=ie instanceof Error?ie.message:"Failed to send message";r&&r(me)}},[m,r,a,s,e,se,Ee,K,o==null?void 0:o.enabled,j.status,B]),Te=I.useCallback(async()=>{!(o!=null&&o.enabled)||!m&&!s||j.status==="requesting"||(k.current=null,N.current="requesting",T.current.clear(),C({status:"requesting"}),await We(o.requestMessage,void 0,void 0,"human_handover"))},[m,s,j.status,o,We]),Re=I.useCallback(async()=>{const Q=k.current;if(!(o!=null&&o.enabled)||!m||!Q||!["queued","active"].includes(N.current))return!1;try{await gs(m,Q)}catch(ee){return console.warn("Failed to cancel human handover:",ee),!1}const U=new Date;return c(ee=>[...ee,{text:"",isUser:!1,sender:"system",systemKind:"handover_cancelled",time:V(U),timestamp:U}]),B(),!0},[m,o==null?void 0:o.enabled,B]),Pe=I.useCallback(()=>{o!=null&&o.enabled&&B()},[o==null?void 0:o.enabled,B]),le=I.useCallback((Q,U)=>{c(ee=>ee.map((fe,Oe)=>Oe===Q?{...fe,feedback:U}:fe))},[]),Ce=I.useCallback(Q=>{const U=new Date,ee={text:Q,isUser:!1,time:U.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:U,feedback:null};c(fe=>[...fe,ee])},[]);return{messages:u,isTyping:d,quickReplies:y,toolStatus:S,conversationId:m,assistantTenant:g,handover:j,initialize:z,sendMessage:We,requestHumanHandover:Te,cancelHumanHandover:Re,continueWithAssistant:Pe,startNewConversation:Me,updateMessageFeedback:le,appendAssistantMessage:Ce}}const Eh={de:[{id:"mangel",title:"🔧 Mangel melden",message:"Ich möchte einen Mangel oder Schaden im öffentlichen Raum melden."},{id:"reisepass",title:"📄 Reisepass verlängern",message:"Ich möchte meinen Reisepass verlängern. Welche Unterlagen benötige ich?"},{id:"oeffnungszeiten",title:"🕐 Öffnungszeiten",message:"Wann hat das Bürgerbüro geöffnet?"},{id:"personalausweis",title:"🆔 Personalausweis beantragen",message:"Wie kann ich einen neuen Personalausweis beantragen?"},{id:"termin",title:"📅 Termin vereinbaren",message:"Ich möchte einen Termin im Bürgerbüro vereinbaren."},{id:"formulare",title:"🏛️ Digitales Rathaus",message:"Wie nutze ich das Digitale Rathaus und seine Services?"},{id:"kfz",title:"🚗 Kfz-Zulassung",message:"Wie kann ich mein Fahrzeug ummelden?"},{id:"wohnsitz",title:"🏠 Wohnsitz ummelden",message:"Ich bin umgezogen und möchte meinen Wohnsitz ummelden."}],en:[{id:"mangel",title:"🔧 Report Issue",message:"I would like to report a defect or damage in public space."},{id:"reisepass",title:"📄 Renew Passport",message:"I would like to renew my passport. What documents do I need?"},{id:"oeffnungszeiten",title:"🕐 Opening Hours",message:"When is the citizen service office open?"},{id:"personalausweis",title:"🆔 Apply for ID Card",message:"How can I apply for a new ID card?"},{id:"termin",title:"📅 Make Appointment",message:"I would like to make an appointment at the citizen service office."},{id:"formulare",title:"🏛️ Digital City Hall",message:"How can I access the services of the digital city hall?"},{id:"kfz",title:"🚗 Vehicle Registration",message:"How can I re-register my vehicle?"},{id:"wohnsitz",title:"🏠 Change Address",message:"I have moved and would like to change my address."}],fr:[{id:"mangel",title:"🔧 Signaler Problème",message:"Je voudrais signaler un défaut ou dommage dans l'espace public."},{id:"reisepass",title:"📄 Renouveler Passeport",message:"Je voudrais renouveler mon passeport. Quels documents sont nécessaires?"},{id:"oeffnungszeiten",title:"🕐 Heures d'Ouverture",message:"Quand le bureau des citoyens est-il ouvert?"},{id:"personalausweis",title:"🆔 Demander Carte ID",message:"Comment puis-je demander une nouvelle carte d'identité?"},{id:"termin",title:"📅 Prendre Rendez-vous",message:"Je voudrais prendre un rendez-vous au bureau des citoyens."},{id:"formulare",title:"🏛️ Mairie numérique",message:"Comment accéder aux services de la mairie numérique ?"},{id:"kfz",title:"🚗 Immatriculation",message:"Comment puis-je réenregistrer mon véhicule?"},{id:"wohnsitz",title:"🏠 Changer Adresse",message:"J'ai déménagé et je voudrais changer mon adresse."}],es:[{id:"mangel",title:"🔧 Reportar Problema",message:"Quisiera reportar un defecto o daño en el espacio público."},{id:"reisepass",title:"📄 Renovar Pasaporte",message:"Quisiera renovar mi pasaporte. ¿Qué documentos necesito?"},{id:"oeffnungszeiten",title:"🕐 Horario",message:"¿Cuándo está abierta la oficina de atención ciudadana?"},{id:"personalausweis",title:"🆔 Solicitar DNI",message:"¿Cómo puedo solicitar un nuevo DNI?"},{id:"termin",title:"📅 Solicitar Cita",message:"Quisiera solicitar una cita en la oficina de atención ciudadana."},{id:"formulare",title:"🏛️ Ayuntamiento digital",message:"¿Cómo puedo acceder a los servicios del ayuntamiento digital?"},{id:"kfz",title:"🚗 Registro Vehículo",message:"¿Cómo puedo registrar nuevamente mi vehículo?"},{id:"wohnsitz",title:"🏠 Cambiar Domicilio",message:"Me he mudado y quisiera cambiar mi domicilio."}],it:[{id:"mangel",title:"🔧 Segnala Problema",message:"Vorrei segnalare un difetto o danno nello spazio pubblico."},{id:"reisepass",title:"📄 Rinnova Passaporto",message:"Vorrei rinnovare il mio passaporto. Quali documenti servono?"},{id:"oeffnungszeiten",title:"🕐 Orari",message:"Quando è aperto l'ufficio servizi al cittadino?"},{id:"personalausweis",title:"🆔 Richiedere Carta ID",message:"Come posso richiedere una nuova carta d'identità?"},{id:"termin",title:"📅 Fissare Appuntamento",message:"Vorrei fissare un appuntamento presso l'ufficio servizi al cittadino."},{id:"formulare",title:"🏛️ Municipio digitale",message:"Come posso accedere ai servizi del municipio digitale?"},{id:"kfz",title:"🚗 Immatricolazione",message:"Come posso registrare nuovamente il mio veicolo?"},{id:"wohnsitz",title:"🏠 Cambia Residenza",message:"Mi sono trasferito e vorrei cambiare la mia residenza."}],tr:[{id:"mangel",title:"🔧 Sorun Bildir",message:"Kamusal alanda bir kusur veya hasar bildirmek istiyorum."},{id:"reisepass",title:"📄 Pasaport Yenile",message:"Pasaportumu yenilemek istiyorum. Hangi belgelere ihtiyacım var?"},{id:"oeffnungszeiten",title:"🕐 Çalışma Saatleri",message:"Vatandaşlık bürosu ne zaman açık?"},{id:"personalausweis",title:"🆔 Kimlik Başvurusu",message:"Yeni bir kimlik kartı için nasıl başvurabilirim?"},{id:"termin",title:"📅 Randevu Al",message:"Vatandaşlık bürosundan randevu almak istiyorum."},{id:"formulare",title:"🏛️ Dijital Belediye",message:"Dijital belediye hizmetlerine nasıl erişebilirim?"},{id:"kfz",title:"🚗 Araç Kaydı",message:"Aracımı nasıl yeniden kaydettirebilirim?"},{id:"wohnsitz",title:"🏠 Adres Değişikliği",message:"Taşındım ve adresimi değiştirmek istiyorum."}],ar:[{id:"mangel",title:"🔧 الإبلاغ عن مشكلة",message:"أود الإبلاغ عن عيب أو ضرر في المساحة العامة."},{id:"reisepass",title:"📄 تجديد جواز السفر",message:"أود تجديد جواز سفري. ما هي المستندات المطلوبة؟"},{id:"oeffnungszeiten",title:"🕐 ساعات العمل",message:"متى يكون مكتب خدمة المواطنين مفتوحًا؟"},{id:"personalausweis",title:"🆔 طلب بطاقة الهوية",message:"كيف يمكنني التقدم بطلب للحصول على بطاقة هوية جديدة؟"},{id:"termin",title:"📅 حجز موعد",message:"أود حجز موعد في مكتب خدمة المواطنين."},{id:"formulare",title:"🏛️ البلدية الرقمية",message:"كيف يمكنني الوصول إلى خدمات البلدية الرقمية؟"},{id:"kfz",title:"🚗 تسجيل المركبة",message:"كيف يمكنني إعادة تسجيل مركبتي؟"},{id:"wohnsitz",title:"🏠 تغيير العنوان",message:"لقد انتقلت وأود تغيير عنواني."}],pl:[{id:"mangel",title:"🔧 Zgłoś Problem",message:"Chciałbym zgłosić usterkę lub szkodę w przestrzeni publicznej."},{id:"reisepass",title:"📄 Odnów Paszport",message:"Chciałbym odnowić mój paszport. Jakie dokumenty są potrzebne?"},{id:"oeffnungszeiten",title:"🕐 Godziny Otwarcia",message:"Kiedy biuro obsługi mieszkańców jest otwarte?"},{id:"personalausweis",title:"🆔 Złóż Wniosek o Dowód",message:"Jak mogę złożyć wniosek o nowy dowód osobisty?"},{id:"termin",title:"📅 Umów Wizytę",message:"Chciałbym umówić wizytę w biurze obsługi mieszkańców."},{id:"formulare",title:"🏛️ Cyfrowy ratusz",message:"Jak mogę uzyskać dostęp do usług cyfrowego ratusza?"},{id:"kfz",title:"🚗 Rejestracja Pojazdu",message:"Jak mogę ponownie zarejestrować mój pojazd?"},{id:"wohnsitz",title:"🏠 Zmień Adres",message:"Przeprowadziłem się i chciałbym zmienić mój adres."}],ua:[{id:"mangel",title:"🔧 Повідомити Проблему",message:"Я хотів би повідомити про дефект або пошкодження в громадському просторі."},{id:"reisepass",title:"📄 Поновити Паспорт",message:"Я хотів би поновити свій паспорт. Які документи мені потрібні?"},{id:"oeffnungszeiten",title:"🕐 Години Роботи",message:"Коли відкритий офіс обслуговування громадян?"},{id:"personalausweis",title:"🆔 Подати на ID",message:"Як я можу подати заявку на новий ідентифікаційний документ?"},{id:"termin",title:"📅 Записатися",message:"Я хотів би записатися на прийом в офісі обслуговування громадян."},{id:"formulare",title:"🏛️ Цифрова мерія",message:"Як отримати доступ до послуг цифрової мерії?"},{id:"kfz",title:"🚗 Реєстрація Авто",message:"Як я можу перереєструвати свій автомобіль?"},{id:"wohnsitz",title:"🏠 Змінити Адресу",message:"Я переїхав і хотів би змінити свою адресу."}],simple:[{id:"mangel",title:"🔧 Problem melden",message:"Ich möchte ein Problem melden."},{id:"reisepass",title:"📄 Pass verlängern",message:"Ich will meinen Pass verlängern. Was brauche ich?"},{id:"oeffnungszeiten",title:"🕐 Wann offen?",message:"Wann ist das Büro offen?"},{id:"personalausweis",title:"🆔 Ausweis machen",message:"Wie bekomme ich einen neuen Ausweis?"},{id:"termin",title:"📅 Termin machen",message:"Ich möchte einen Termin machen."},{id:"formulare",title:"🏛️ Digitales Rathaus",message:"Wie nutze ich das Digitale Rathaus?"},{id:"kfz",title:"🚗 Auto anmelden",message:"Wie melde ich mein Auto um?"},{id:"wohnsitz",title:"🏠 Adresse ändern",message:"Ich bin umgezogen. Ich möchte meine Adresse ändern."}]},xs=e=>typeof structuredClone=="function"?structuredClone(e):JSON.parse(JSON.stringify(e)),rc=(e,t)=>{if(!t)return xs(e);const n=Array.isArray(e)?[...e]:{...e},r=(i,a)=>{n[i]=a};for(const[i,a]of Object.entries(e)){const o=t[i];if(o===void 0){r(i,xs(a));continue}a!==null&&o!==null&&typeof a=="object"&&typeof o=="object"&&!Array.isArray(a)&&!Array.isArray(o)?r(i,rc(a,o)):Array.isArray(o)?r(i,[...o]):r(i,o)}for(const[i,a]of Object.entries(t))e[i]===void 0&&a!==void 0&&r(i,Array.isArray(a)?[...a]:a);return n},Le={promptId:"default",theme:"dark",highContrast:void 0,bubbleless:!1,dialogLayout:"floating",zIndexBase:1e5,apiKey:void 0,baseUrl:void 0,tenant:void 0,startOnFirstUserMessage:!0,defaultLanguage:"de",languages:ih,translations:oh,branding:{assistantName:"BürgerBot",logoUrl:"https://chat.feazy.ai/assets/feazy_logo_new-BI-QKyxX.png",poweredBy:{text:"Feazy",url:"https://feazy.de"}},callout:{enabled:!0,emoji:"👋",text:"Sie brauchen Hilfe? Fragen Sie den BürgerBot!",delayMs:0},links:{privacyUrl:"https://feazy.de/assistant-privacy-policy/",feedbackUrl:"mailto:support@feazy.de&subject=Feedback%20zum%20B%C3%BCrgerbot%20",reportIssueUrl:"mailto:support@feazy.de?subject=Problem%20melden%20-%20B%C3%BCrgerbot%20",poweredByUrl:"https://feazy.de"},quickReplies:Eh,colors:{common:{primary:"21 90% 48%","glow-primary":"21 90% 48%"}},aboutChatbotDescription:"BürgerBot ist ein KI-gestützter Assistent für Kommunen. Er beantwortet Ihre Fragen zu Öffnungszeiten, Terminen, Formularen und städtischen Dienstleistungen rund um die Uhr.",festive:{christmasHat:!1},humanHandover:{enabled:!1,pollIntervalMs:2e3,translations:{}}},ic=e=>rc(Le,e),Ph=["small","normal","large","extra-large"],jh=e=>typeof e=="string"&&Ph.includes(e);var pi="Switch",[Nh]=pn(pi),[Th,Mh]=Nh(pi),oc=v.forwardRef((e,t)=>{const{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:l="on",onCheckedChange:u,form:c,...d}=e,[p,m]=v.useState(null),h=ot(t,S=>m(S)),g=v.useRef(!1),b=p?c||!!p.closest("form"):!0,[y,x]=yr({prop:i,defaultProp:a??!1,onChange:u,caller:pi});return f.jsxs(Th,{scope:n,checked:y,disabled:s,children:[f.jsx(Ke.button,{type:"button",role:"switch","aria-checked":y,"aria-required":o,"data-state":uc(y),"data-disabled":s?"":void 0,disabled:s,value:l,...d,ref:h,onClick:De(e.onClick,S=>{x(P=>!P),b&&(g.current=S.isPropagationStopped(),g.current||S.stopPropagation())})}),b&&f.jsx(lc,{control:p,bubbles:!g.current,name:r,value:l,checked:y,required:o,disabled:s,form:c,style:{transform:"translateX(-100%)"}})]})});oc.displayName=pi;var ac="SwitchThumb",sc=v.forwardRef((e,t)=>{const{__scopeSwitch:n,...r}=e,i=Mh(ac,n);return f.jsx(Ke.span,{"data-state":uc(i.checked),"data-disabled":i.disabled?"":void 0,...r,ref:t})});sc.displayName=ac;var Ih="SwitchBubbleInput",lc=v.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:r=!0,...i},a)=>{const o=v.useRef(null),s=ot(o,a),l=Ou(n),u=Qo(t);return v.useEffect(()=>{const c=o.current;if(!c)return;const d=window.HTMLInputElement.prototype,m=Object.getOwnPropertyDescriptor(d,"checked").set;if(l!==n&&m){const h=new Event("click",{bubbles:r});m.call(c,n),c.dispatchEvent(h)}},[l,n,r]),f.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n,...i,tabIndex:-1,ref:s,style:{...i.style,...u,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});lc.displayName=Ih;function uc(e){return e?"checked":"unchecked"}var cc=oc,Dh=sc;const dc=v.forwardRef(({className:e,...t},n)=>f.jsx(cc,{className:yt("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50",e),...t,ref:n,children:f.jsx(Dh,{className:yt("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));dc.displayName=cc.displayName;function Rh({open:e,onClose:t,translation:n,theme:r,setTheme:i,fontSize:a,onFontSizeChange:o,highContrast:s,onHighContrastChange:l,onRevokePrivacy:u,links:c,poweredBy:d}){return e?f.jsxs("div",{className:"absolute inset-0 bg-[hsl(var(--chat-settings-bg))] backdrop-blur-[60px] z-50 flex flex-col animate-fade-in",children:[f.jsxs("div",{className:"p-5 border-b border-border flex justify-between items-center",children:[f.jsx("h3",{className:"text-lg font-bold text-foreground",children:n.title}),f.jsx("button",{onClick:t,className:"w-[38px] h-[38px] bg-muted rounded-full flex items-center justify-center hover:bg-muted/80 transition-all",children:f.jsx(un,{className:"w-5 h-5 text-foreground"})})]}),f.jsxs("div",{className:"flex-1 overflow-y-auto p-5 space-y-6",children:[f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(ts,{className:"w-4 h-4"}),n.appearance.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-4 border border-border",children:[f.jsxs("div",{className:"space-y-2",children:[f.jsx(wn,{className:"text-sm text-foreground/80",children:n.appearance.theme}),f.jsxs("div",{className:"flex gap-2",children:[f.jsxs(ut,{onClick:()=>i("light"),variant:r==="light"?"default":"outline",className:"flex-1 text-xs",size:"sm",children:[f.jsx(ts,{className:"w-4 h-4 mr-2"}),n.appearance.light]}),f.jsxs(ut,{onClick:()=>i("dark"),variant:r==="dark"?"default":"outline",className:"flex-1 text-xs",size:"sm",children:[f.jsx(sm,{className:"w-4 h-4 mr-2"}),n.appearance.dark]})]})]}),f.jsxs("div",{className:"space-y-2",children:[f.jsx(wn,{className:"text-sm text-foreground/80",children:n.appearance.fontSize}),f.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[f.jsx(ut,{onClick:()=>o("small"),variant:a==="small"?"default":"outline",size:"sm",className:"text-xs px-2",children:n.appearance.fontSizeSmall}),f.jsx(ut,{onClick:()=>o("normal"),variant:a==="normal"?"default":"outline",size:"sm",className:"text-xs px-2",children:n.appearance.fontSizeNormal}),f.jsx(ut,{onClick:()=>o("large"),variant:a==="large"?"default":"outline",size:"sm",className:"text-xs px-2",children:n.appearance.fontSizeLarge}),f.jsx(ut,{onClick:()=>o("extra-large"),variant:a==="extra-large"?"default":"outline",size:"sm",className:"text-xs px-2",children:n.appearance.fontSizeExtraLarge})]})]}),f.jsxs("div",{className:"flex items-center justify-between",children:[f.jsxs("div",{className:"space-y-0.5",children:[f.jsx(wn,{className:"text-sm text-foreground",children:n.appearance.highContrast}),f.jsx("p",{className:"text-xs text-foreground/60",children:n.appearance.highContrastDesc})]}),f.jsx(dc,{checked:s,onCheckedChange:l})]})]})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(ln,{className:"w-4 h-4"}),n.privacy.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-3 border border-border",children:[f.jsx("p",{className:"text-sm text-foreground/80",children:n.privacy.description}),f.jsxs("div",{className:"flex gap-2 flex-wrap",children:[f.jsxs("a",{href:c.privacyUrl||"#",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-primary hover:text-primary/80 underline flex items-center gap-1",children:[n.privacy.viewPolicy,f.jsx(xn,{className:"w-3 h-3"})]}),f.jsx("button",{onClick:u,className:"text-xs text-red-400 hover:text-red-300 underline",children:n.privacy.revoke})]})]})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(fu,{className:"w-4 h-4"}),n.feedback.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-3 border border-border",children:[f.jsx("p",{className:"text-sm text-foreground/80",children:n.feedback.description}),f.jsx("a",{href:c.feedbackUrl||"#",className:"inline-block",children:f.jsxs(ut,{className:"w-full text-sm",children:[n.feedback.button,f.jsx(xn,{className:"w-4 h-4 ml-2"})]})})]})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(ln,{className:"w-4 h-4"}),n.reportIssue.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-3 border border-border",children:[f.jsx("p",{className:"text-sm text-foreground/80",children:n.reportIssue.description}),f.jsx("a",{href:c.reportIssueUrl||"#",className:"inline-block",children:f.jsxs(ut,{className:"w-full text-sm",children:[n.reportIssue.button,f.jsx(xn,{className:"w-4 h-4 ml-2"})]})})]})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(_r,{className:"w-4 h-4"}),n.aboutChatbot.title]}),f.jsx("div",{className:"bg-card rounded-xl p-4 border border-border",children:f.jsx("p",{className:"text-sm text-foreground/80",children:n.aboutChatbot.description})})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx($f,{className:"w-4 h-4"}),n.aboutFeazy.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-3 border border-border",children:[f.jsx("p",{className:"text-sm text-foreground/80",children:n.aboutFeazy.description}),f.jsx("a",{href:(d==null?void 0:d.url)||c.poweredByUrl||"#",target:"_blank",rel:"noopener noreferrer",className:"inline-block",children:f.jsxs(ut,{className:"w-full bg-primary hover:bg-primary/90 text-primary-foreground text-sm",children:[n.aboutFeazy.button,f.jsx(xn,{className:"w-4 h-4 ml-2"})]})})]})]}),f.jsx("div",{className:"pt-4 border-t border-border",children:f.jsx("p",{className:"text-xs text-foreground/40 text-center",children:n.version})})]})]}):null}const Lh=()=>f.jsx("div",{className:"flex items-center gap-1",children:[...Array(5)].map((e,t)=>f.jsx("div",{className:"w-1 bg-destructive rounded-full animate-waveform",style:{animationDelay:`${t*.1}s`,height:"8px"}},t))});function Oh({input:e,onInputChange:t,onSend:n,onKeyDown:r,inputRef:i,isRecording:a,isTranscribing:o,isTyping:s,startRecording:l,stopRecording:u,recordingTime:c,placeholder:d,transcribingLabel:p,disclaimer:m,poweredByText:h,poweredByUrl:g}){return f.jsxs("div",{className:"px-4 pt-4 pb-2 bg-[hsl(var(--chat-input-bg))] backdrop-blur-[20px] border-t border-border",children:[f.jsxs("div",{className:"flex gap-3 items-center bg-card backdrop-blur-[10px] rounded-[20px] p-2 px-4 border border-border transition-all focus-within:border-primary/40 focus-within:shadow-[0_0_0_3px_hsl(var(--primary)/0.08)]",children:[f.jsxs("div",{className:"relative flex-shrink-0 flex items-center",children:[f.jsx("button",{onClick:a?u:l,disabled:o||s,"aria-label":a?"Aufnahme stoppen":"Spracheingabe","aria-pressed":a,className:`flex items-center transition-all duration-300 focus:outline-none focus:ring-2 focus:ring-primary ${a?"text-destructive hover:text-destructive":"text-foreground/60 hover:text-foreground"} disabled:opacity-40 disabled:cursor-not-allowed`,children:a?f.jsx(dm,{className:"w-5 h-5","aria-hidden":"true"}):f.jsx(im,{className:"w-5 h-5","aria-hidden":"true"})}),o&&f.jsxs("div",{className:"absolute left-full top-1/2 transform -translate-y-1/2 ml-2 bg-primary text-primary-foreground px-3 py-1 rounded-full text-xs flex items-center gap-2 whitespace-nowrap animate-in fade-in slide-in-from-right-2",children:[f.jsx("div",{className:"w-2 h-2 bg-primary-foreground rounded-full animate-pulse"}),p]})]}),a?f.jsxs("div",{className:"flex-1 flex items-center gap-3 py-2.5 min-h-[40px]",children:[f.jsx(Lh,{}),f.jsxs("span",{className:"text-sm text-destructive/80",children:[Math.floor(c/60),":",(c%60).toString().padStart(2,"0")]})]}):f.jsx(Ko,{ref:i,value:e,onChange:b=>t(b.target.value),onKeyDown:r,placeholder:d,"aria-label":"Nachricht eingeben",className:"flex-1 border-none bg-transparent py-2.5 px-0 text-base md:text-sm outline-none text-foreground placeholder:text-muted-foreground placeholder:whitespace-nowrap placeholder:overflow-hidden placeholder:text-ellipsis focus-visible:ring-0 focus-visible:ring-offset-0 resize-none min-h-[40px] max-h-[120px] overflow-y-auto",disabled:a||o,rows:1}),f.jsx(ut,{onClick:n,"aria-label":"Nachricht senden",disabled:s||o||!a&&!e.trim(),size:"icon",className:"w-[40px] h-[40px] flex-shrink-0 rounded-full bg-primary border-none flex items-center justify-center cursor-pointer transition-all duration-300 shadow-[0_4px_12px_hsl(var(--glow-primary))] hover:scale-110 hover:rotate-[15deg] hover:shadow-[0_6px_20px_hsl(var(--glow-primary))] disabled:opacity-40 disabled:cursor-not-allowed disabled:hover:scale-100 disabled:hover:rotate-0",children:f.jsx(lm,{className:"w-4 h-4 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"})})]}),f.jsxs("div",{className:"text-center pt-2 space-y-0.5",children:[f.jsx("p",{className:"text-[10px] text-muted-foreground",children:m}),h?f.jsxs("p",{className:"text-[10px] text-muted-foreground/60",children:["Bereitgestellt von"," ",g?f.jsx("a",{href:g,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground/80 hover:text-foreground underline transition-colors",children:h}):f.jsx("span",{className:"text-muted-foreground/80",children:h})]}):null]})]})}function hi({imageUrl:e,name:t,size:n=36,className:r=""}){return f.jsx("span",{className:`relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full bg-[hsl(var(--chat-human)/0.14)] text-[hsl(var(--chat-human))] ring-1 ring-[hsl(var(--chat-human)/0.45)] ${r}`,style:{width:n,height:n,fontSize:Math.round(n*.48)},role:"img","aria-label":t,children:e?f.jsx("img",{src:e,alt:"",className:"h-full w-full object-cover"}):f.jsx(yo,{"aria-hidden":"true"})})}function Fh({theme:e,selectedLanguage:t,languages:n,onlineLabel:r,isLangMenuOpen:i,setIsLangMenuOpen:a,repositionLangMenu:o,langMenuPortalTarget:s,langMenuPos:l,langMenuContentRef:u,langButtonRef:c,handleLangMenuKeyDown:d,onSelectLanguage:p,showSettings:m,onToggleSettings:h,isExpanded:g,onToggleExpand:b,showExpandToggle:y=!0,langMenuPositioning:x="fixed",langMenuZIndex:S=100002,showCloseButton:P=!0,onClose:j,logoSrc:C,assistantName:E,assistantTagline:R,presence:M}){var N,T,V,O;const k=(M==null?void 0:M.mode)==="human"?"bg-green-400 animate-status-blink shadow-[0_0_8px_rgba(74,222,128,0.6)]":(M==null?void 0:M.mode)==="waiting"?"bg-[hsl(var(--chat-waiting))] shadow-[0_0_8px_hsl(var(--chat-waiting)/0.7)]":"bg-primary-foreground/45";return f.jsxs("div",{className:"chat-header-solid relative bg-primary p-5 flex justify-between items-center gap-3 rounded-t-[24px] max-md:rounded-none overflow-hidden",children:[f.jsxs("div",{className:"flex items-center gap-3 relative z-[1] min-w-0",children:[f.jsxs("div",{className:"relative shrink-0",children:[f.jsx("div",{className:"w-[42px] h-[42px] bg-[hsl(var(--chat-avatar-bot))] rounded-full flex items-center justify-center border border-primary-foreground/30 shadow-[0_4px_15px_rgba(0,0,0,0.2)]",role:"img","aria-label":`${E} Logo`,children:f.jsx("img",{src:C,alt:E,className:"w-7 h-7 object-contain drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)]"})}),(M==null?void 0:M.mode)==="human"?f.jsx("span",{className:"handover-in absolute -bottom-0.5 -end-1 rounded-full ring-2 ring-primary",children:f.jsx(hi,{imageUrl:(N=M.operator)==null?void 0:N.imageUrl,name:((T=M.operator)==null?void 0:T.displayName)||M.operatorFallbackName||"Support",size:18,className:"bg-[hsl(var(--chat-human))] text-[hsl(var(--chat-human-foreground))] ring-0"})}):null]}),f.jsxs("div",{className:"min-w-0",children:[f.jsx("div",{id:"chat-title",className:"truncate text-primary-foreground text-lg font-bold drop-shadow-[0_2px_10px_rgba(0,0,0,0.3)]",children:E}),M?f.jsxs("div",{id:"chat-description",className:"flex min-w-0 items-center gap-1.5 text-primary-foreground/95 text-xs",role:"status","aria-live":"polite",children:[f.jsx("span",{className:`handover-in inline-block w-[7px] h-[7px] shrink-0 rounded-full ${k}`,"aria-hidden":"true"},M.mode),f.jsx("span",{className:"truncate",title:M.label,children:M.label})]}):f.jsxs("div",{id:"chat-description",className:"text-primary-foreground/95 text-xs",children:[f.jsx("span",{className:"inline-block w-[7px] h-[7px] bg-green-400 rounded-full mr-1.5 animate-status-blink shadow-[0_0_8px_rgba(74,222,128,0.6)]",role:"status","aria-label":"Online-Status"}),f.jsx("span",{children:r}),R?f.jsxs("span",{className:"ml-2 text-primary-foreground/80",children:["• ",R]}):null]})]})]}),f.jsxs("div",{className:"flex items-center gap-2 relative z-[1] shrink-0",children:[f.jsxs("div",{className:"relative",children:[f.jsxs("button",{type:"button","aria-haspopup":"menu","aria-expanded":i,"aria-controls":"klaus-language-menu",onClick:F=>{F.preventDefault(),F.stopPropagation();const B=!i;B&&o(),a(B)},"aria-label":`Sprache: ${(V=n.find(F=>F.code===t))==null?void 0:V.name}`,className:"px-3 py-1.5 rounded-full text-xs font-semibold transition-all duration-300 flex items-center gap-1.5 bg-primary-foreground/15 text-primary-foreground hover:bg-primary-foreground/25 border border-primary-foreground/20 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary",ref:c,children:[f.jsx(em,{className:"w-3.5 h-3.5","aria-hidden":"true"}),f.jsx("span",{className:"max-md:hidden",children:(O=n.find(F=>F.code===t))==null?void 0:O.flag})]}),i&&s&&Uo.createPortal(f.jsx("div",{id:"klaus-language-menu",role:"menu","aria-label":"Sprachauswahl",onKeyDown:d,ref:u,className:`${x} w-[220px] rounded-2xl bg-background/95 backdrop-blur-2xl border border-white/10 text-foreground shadow-[0_20px_45px_rgba(0,0,0,0.45)] max-h-[300px] overflow-y-auto`,style:{top:`${l.top}px`,left:`${l.left}px`,zIndex:S},children:n.map(F=>f.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":t===F.code,onClick:B=>{B.preventDefault(),B.stopPropagation(),p(F.code),a(!1)},className:"w-full text-left cursor-pointer text-foreground/80 hover:text-foreground focus:text-foreground flex items-center justify-between gap-2 px-3 py-2 rounded-xl transition-colors hover:bg-white/10 focus:bg-white/10",children:[f.jsxs("span",{className:"flex items-center gap-2",children:[f.jsx("span",{className:"text-base",children:F.flag}),f.jsx("span",{className:"text-sm",children:F.name})]}),t===F.code&&f.jsx(zn,{className:"w-4 h-4 text-primary"})]},F.code))}),s)]}),f.jsx("button",{onClick:h,"aria-label":m?"Einstellungen schließen":"Einstellungen öffnen","aria-expanded":m,className:"w-[38px] h-[38px] bg-primary-foreground/15 backdrop-blur-[10px] border border-primary-foreground/20 rounded-full flex items-center justify-center transition-all duration-300 hover:bg-primary-foreground/25 hover:scale-110 hover:rotate-45 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary",children:f.jsx(um,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]","aria-hidden":"true"})}),y&&f.jsx("button",{onClick:b,"aria-label":g?"Normalgröße":"Vollbild","aria-expanded":g,className:"w-[38px] h-[38px] bg-primary-foreground/15 backdrop-blur-[10px] border border-primary-foreground/20 rounded-full flex items-center justify-center transition-all duration-300 hover:bg-primary-foreground/25 hover:scale-110 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary max-md:hidden",children:g?f.jsx(om,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]","aria-hidden":"true"}):f.jsx(nm,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]","aria-hidden":"true"})}),P&&f.jsx("button",{onClick:j,"aria-label":"Chat schließen",className:"w-[38px] h-[38px] bg-primary-foreground/15 backdrop-blur-[10px] border border-primary-foreground/20 rounded-full flex items-center justify-center transition-all duration-300 hover:bg-primary-foreground/25 hover:rotate-90 hover:scale-110 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary",children:f.jsx(un,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]","aria-hidden":"true"})})]})]})}function Bh(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const Wh=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,qh=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Vh={};function ws(e,t){return(Vh.jsx?qh:Wh).test(e)}const Jh=/[ \t\n\f\r]/g;function Hh(e){return typeof e=="object"?e.type==="text"?ks(e.value):!1:ks(e)}function ks(e){return e.replace(Jh,"")===""}class xr{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}xr.prototype.normal={};xr.prototype.property={};xr.prototype.space=void 0;function fc(e,t){const n={},r={};for(const i of e)Object.assign(n,i.property),Object.assign(r,i.normal);return new xr(n,r,t)}function wo(e){return e.toLowerCase()}class vt{constructor(t,n){this.attribute=n,this.property=t}}vt.prototype.attribute="";vt.prototype.booleanish=!1;vt.prototype.boolean=!1;vt.prototype.commaOrSpaceSeparated=!1;vt.prototype.commaSeparated=!1;vt.prototype.defined=!1;vt.prototype.mustUseProperty=!1;vt.prototype.number=!1;vt.prototype.overloadedBoolean=!1;vt.prototype.property="";vt.prototype.spaceSeparated=!1;vt.prototype.space=void 0;let Uh=0;const ge=An(),_e=An(),ko=An(),H=An(),qe=An(),Rn=An(),wt=An();function An(){return 2**++Uh}const So=Object.freeze(Object.defineProperty({__proto__:null,boolean:ge,booleanish:_e,commaOrSpaceSeparated:wt,commaSeparated:Rn,number:H,overloadedBoolean:ko,spaceSeparated:qe},Symbol.toStringTag,{value:"Module"})),Xi=Object.keys(So);class _o extends vt{constructor(t,n,r,i){let a=-1;if(super(t,n),Ss(this,"space",i),typeof r=="number")for(;++a<Xi.length;){const o=Xi[a];Ss(this,Xi[a],(r&So[o])===So[o])}}}_o.prototype.defined=!0;function Ss(e,t,n){n&&(e[t]=n)}function Vn(e){const t={},n={};for(const[r,i]of Object.entries(e.properties)){const a=new _o(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[wo(r)]=r,n[wo(a.attribute)]=r}return new xr(t,n,e.space)}const mc=Vn({properties:{ariaActiveDescendant:null,ariaAtomic:_e,ariaAutoComplete:null,ariaBusy:_e,ariaChecked:_e,ariaColCount:H,ariaColIndex:H,ariaColSpan:H,ariaControls:qe,ariaCurrent:null,ariaDescribedBy:qe,ariaDetails:null,ariaDisabled:_e,ariaDropEffect:qe,ariaErrorMessage:null,ariaExpanded:_e,ariaFlowTo:qe,ariaGrabbed:_e,ariaHasPopup:null,ariaHidden:_e,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:qe,ariaLevel:H,ariaLive:null,ariaModal:_e,ariaMultiLine:_e,ariaMultiSelectable:_e,ariaOrientation:null,ariaOwns:qe,ariaPlaceholder:null,ariaPosInSet:H,ariaPressed:_e,ariaReadOnly:_e,ariaRelevant:null,ariaRequired:_e,ariaRoleDescription:qe,ariaRowCount:H,ariaRowIndex:H,ariaRowSpan:H,ariaSelected:_e,ariaSetSize:H,ariaSort:null,ariaValueMax:H,ariaValueMin:H,ariaValueNow:H,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function pc(e,t){return t in e?e[t]:t}function hc(e,t){return pc(e,t.toLowerCase())}const Xh=Vn({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Rn,acceptCharset:qe,accessKey:qe,action:null,allow:null,allowFullScreen:ge,allowPaymentRequest:ge,allowUserMedia:ge,alt:null,as:null,async:ge,autoCapitalize:null,autoComplete:qe,autoFocus:ge,autoPlay:ge,blocking:qe,capture:null,charSet:null,checked:ge,cite:null,className:qe,cols:H,colSpan:null,content:null,contentEditable:_e,controls:ge,controlsList:qe,coords:H|Rn,crossOrigin:null,data:null,dateTime:null,decoding:null,default:ge,defer:ge,dir:null,dirName:null,disabled:ge,download:ko,draggable:_e,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:ge,formTarget:null,headers:qe,height:H,hidden:ko,high:H,href:null,hrefLang:null,htmlFor:qe,httpEquiv:qe,id:null,imageSizes:null,imageSrcSet:null,inert:ge,inputMode:null,integrity:null,is:null,isMap:ge,itemId:null,itemProp:qe,itemRef:qe,itemScope:ge,itemType:qe,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:ge,low:H,manifest:null,max:null,maxLength:H,media:null,method:null,min:null,minLength:H,multiple:ge,muted:ge,name:null,nonce:null,noModule:ge,noValidate:ge,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:ge,optimum:H,pattern:null,ping:qe,placeholder:null,playsInline:ge,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:ge,referrerPolicy:null,rel:qe,required:ge,reversed:ge,rows:H,rowSpan:H,sandbox:qe,scope:null,scoped:ge,seamless:ge,selected:ge,shadowRootClonable:ge,shadowRootDelegatesFocus:ge,shadowRootMode:null,shape:null,size:H,sizes:null,slot:null,span:H,spellCheck:_e,src:null,srcDoc:null,srcLang:null,srcSet:null,start:H,step:null,style:null,tabIndex:H,target:null,title:null,translate:null,type:null,typeMustMatch:ge,useMap:null,value:_e,width:H,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:qe,axis:null,background:null,bgColor:null,border:H,borderColor:null,bottomMargin:H,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:ge,declare:ge,event:null,face:null,frame:null,frameBorder:null,hSpace:H,leftMargin:H,link:null,longDesc:null,lowSrc:null,marginHeight:H,marginWidth:H,noResize:ge,noHref:ge,noShade:ge,noWrap:ge,object:null,profile:null,prompt:null,rev:null,rightMargin:H,rules:null,scheme:null,scrolling:_e,standby:null,summary:null,text:null,topMargin:H,valueType:null,version:null,vAlign:null,vLink:null,vSpace:H,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:ge,disableRemotePlayback:ge,prefix:null,property:null,results:H,security:null,unselectable:null},space:"html",transform:hc}),Zh=Vn({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:wt,accentHeight:H,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:H,amplitude:H,arabicForm:null,ascent:H,attributeName:null,attributeType:null,azimuth:H,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:H,by:null,calcMode:null,capHeight:H,className:qe,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:H,diffuseConstant:H,direction:null,display:null,dur:null,divisor:H,dominantBaseline:null,download:ge,dx:null,dy:null,edgeMode:null,editable:null,elevation:H,enableBackground:null,end:null,event:null,exponent:H,externalResourcesRequired:null,fill:null,fillOpacity:H,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Rn,g2:Rn,glyphName:Rn,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:H,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:H,horizOriginX:H,horizOriginY:H,id:null,ideographic:H,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:H,k:H,k1:H,k2:H,k3:H,k4:H,kernelMatrix:wt,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:H,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:H,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:H,overlineThickness:H,paintOrder:null,panose1:null,path:null,pathLength:H,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:qe,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:H,pointsAtY:H,pointsAtZ:H,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:wt,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:wt,rev:wt,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:wt,requiredFeatures:wt,requiredFonts:wt,requiredFormats:wt,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:H,specularExponent:H,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:H,strikethroughThickness:H,string:null,stroke:null,strokeDashArray:wt,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:H,strokeOpacity:H,strokeWidth:null,style:null,surfaceScale:H,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:wt,tabIndex:H,tableValues:null,target:null,targetX:H,targetY:H,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:wt,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:H,underlineThickness:H,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:H,values:null,vAlphabetic:H,vMathematical:H,vectorEffect:null,vHanging:H,vIdeographic:H,version:null,vertAdvY:H,vertOriginX:H,vertOriginY:H,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:H,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:pc}),gc=Vn({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),bc=Vn({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:hc}),yc=Vn({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),Gh={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Kh=/[A-Z]/g,Cs=/-[a-z]/g,Qh=/^data[-\w.:]+$/i;function Yh(e,t){const n=wo(t);let r=t,i=vt;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Qh.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(Cs,$h);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!Cs.test(a)){let o=a.replace(Kh,_h);o.charAt(0)!=="-"&&(o="-"+o),t="data"+o}}i=_o}return new i(r,t)}function _h(e){return"-"+e.toLowerCase()}function $h(e){return e.charAt(1).toUpperCase()}const eg=fc([mc,Xh,gc,bc,yc],"html"),$o=fc([mc,Zh,gc,bc,yc],"svg");function tg(e){return e.join(" ").trim()}var ea={},zs=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,ng=/\n/g,rg=/^\s*/,ig=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,og=/^:\s*/,ag=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,sg=/^[;\s]*/,lg=/^\s+|\s+$/g,ug=`
267
+ `))},Je=>{K.flush(Ze),p(!1),P({active:!1}),x(Je),Ee(),(me==="human_handover"||N.current==="requesting")&&!k.current&&(N.current="failed",C({status:"failed"}))},(Je,D)=>{K.flush(Ze),p(!1),P({active:!1});let W=Je||"Failed to send message";(D==="prompt_shield_blocked"||D==="safety.blocked")&&!Je?W="Your message was blocked by content filter.":!D&&Je.toLowerCase().includes("token")&&(W="Token limit exceeded. Please try a shorter message."),r&&r(W),(me==="human_handover"||N.current==="requesting")&&!k.current&&(N.current="failed",C({status:"failed"}))},se)}}catch(ie){K.flush(Ze),p(!1),P({active:!1}),N.current==="requesting"&&!k.current&&(N.current="failed",C({status:"failed"}));const pe=ie instanceof Error?ie.message:"Failed to send message";r&&r(pe)}},[m,r,a,s,e,se,Ee,K,o==null?void 0:o.enabled,j.status,B]),Te=I.useCallback(async()=>{!(o!=null&&o.enabled)||!m&&!s||j.status==="requesting"||(k.current=null,N.current="requesting",T.current.clear(),C({status:"requesting"}),await We(o.requestMessage,void 0,void 0,"human_handover"))},[m,s,j.status,o,We]),Re=I.useCallback(async()=>{const Q=k.current;if(!(o!=null&&o.enabled)||!m||!Q||!["queued","active"].includes(N.current))return!1;try{await gs(m,Q)}catch(ee){return console.warn("Failed to cancel human handover:",ee),!1}const U=new Date;return c(ee=>[...ee,{text:"",isUser:!1,sender:"system",systemKind:"handover_cancelled",time:V(U),timestamp:U}]),B(),!0},[m,o==null?void 0:o.enabled,B]),Pe=I.useCallback(()=>{o!=null&&o.enabled&&B()},[o==null?void 0:o.enabled,B]),le=I.useCallback((Q,U)=>{c(ee=>ee.map((me,Oe)=>Oe===Q?{...me,feedback:U}:me))},[]),Ce=I.useCallback(Q=>{const U=new Date,ee={text:Q,isUser:!1,time:U.toLocaleTimeString("de-DE",{hour:"2-digit",minute:"2-digit"}),timestamp:U,feedback:null};c(me=>[...me,ee])},[]);return{messages:u,isTyping:d,quickReplies:y,toolStatus:S,conversationId:m,assistantTenant:g,handover:j,initialize:z,sendMessage:We,requestHumanHandover:Te,cancelHumanHandover:Re,continueWithAssistant:Pe,startNewConversation:Me,updateMessageFeedback:le,appendAssistantMessage:Ce}}const Eh={de:[{id:"mangel",title:"🔧 Mangel melden",message:"Ich möchte einen Mangel oder Schaden im öffentlichen Raum melden."},{id:"reisepass",title:"📄 Reisepass verlängern",message:"Ich möchte meinen Reisepass verlängern. Welche Unterlagen benötige ich?"},{id:"oeffnungszeiten",title:"🕐 Öffnungszeiten",message:"Wann hat das Bürgerbüro geöffnet?"},{id:"personalausweis",title:"🆔 Personalausweis beantragen",message:"Wie kann ich einen neuen Personalausweis beantragen?"},{id:"termin",title:"📅 Termin vereinbaren",message:"Ich möchte einen Termin im Bürgerbüro vereinbaren."},{id:"formulare",title:"🏛️ Digitales Rathaus",message:"Wie nutze ich das Digitale Rathaus und seine Services?"},{id:"kfz",title:"🚗 Kfz-Zulassung",message:"Wie kann ich mein Fahrzeug ummelden?"},{id:"wohnsitz",title:"🏠 Wohnsitz ummelden",message:"Ich bin umgezogen und möchte meinen Wohnsitz ummelden."}],en:[{id:"mangel",title:"🔧 Report Issue",message:"I would like to report a defect or damage in public space."},{id:"reisepass",title:"📄 Renew Passport",message:"I would like to renew my passport. What documents do I need?"},{id:"oeffnungszeiten",title:"🕐 Opening Hours",message:"When is the citizen service office open?"},{id:"personalausweis",title:"🆔 Apply for ID Card",message:"How can I apply for a new ID card?"},{id:"termin",title:"📅 Make Appointment",message:"I would like to make an appointment at the citizen service office."},{id:"formulare",title:"🏛️ Digital City Hall",message:"How can I access the services of the digital city hall?"},{id:"kfz",title:"🚗 Vehicle Registration",message:"How can I re-register my vehicle?"},{id:"wohnsitz",title:"🏠 Change Address",message:"I have moved and would like to change my address."}],fr:[{id:"mangel",title:"🔧 Signaler Problème",message:"Je voudrais signaler un défaut ou dommage dans l'espace public."},{id:"reisepass",title:"📄 Renouveler Passeport",message:"Je voudrais renouveler mon passeport. Quels documents sont nécessaires?"},{id:"oeffnungszeiten",title:"🕐 Heures d'Ouverture",message:"Quand le bureau des citoyens est-il ouvert?"},{id:"personalausweis",title:"🆔 Demander Carte ID",message:"Comment puis-je demander une nouvelle carte d'identité?"},{id:"termin",title:"📅 Prendre Rendez-vous",message:"Je voudrais prendre un rendez-vous au bureau des citoyens."},{id:"formulare",title:"🏛️ Mairie numérique",message:"Comment accéder aux services de la mairie numérique ?"},{id:"kfz",title:"🚗 Immatriculation",message:"Comment puis-je réenregistrer mon véhicule?"},{id:"wohnsitz",title:"🏠 Changer Adresse",message:"J'ai déménagé et je voudrais changer mon adresse."}],es:[{id:"mangel",title:"🔧 Reportar Problema",message:"Quisiera reportar un defecto o daño en el espacio público."},{id:"reisepass",title:"📄 Renovar Pasaporte",message:"Quisiera renovar mi pasaporte. ¿Qué documentos necesito?"},{id:"oeffnungszeiten",title:"🕐 Horario",message:"¿Cuándo está abierta la oficina de atención ciudadana?"},{id:"personalausweis",title:"🆔 Solicitar DNI",message:"¿Cómo puedo solicitar un nuevo DNI?"},{id:"termin",title:"📅 Solicitar Cita",message:"Quisiera solicitar una cita en la oficina de atención ciudadana."},{id:"formulare",title:"🏛️ Ayuntamiento digital",message:"¿Cómo puedo acceder a los servicios del ayuntamiento digital?"},{id:"kfz",title:"🚗 Registro Vehículo",message:"¿Cómo puedo registrar nuevamente mi vehículo?"},{id:"wohnsitz",title:"🏠 Cambiar Domicilio",message:"Me he mudado y quisiera cambiar mi domicilio."}],it:[{id:"mangel",title:"🔧 Segnala Problema",message:"Vorrei segnalare un difetto o danno nello spazio pubblico."},{id:"reisepass",title:"📄 Rinnova Passaporto",message:"Vorrei rinnovare il mio passaporto. Quali documenti servono?"},{id:"oeffnungszeiten",title:"🕐 Orari",message:"Quando è aperto l'ufficio servizi al cittadino?"},{id:"personalausweis",title:"🆔 Richiedere Carta ID",message:"Come posso richiedere una nuova carta d'identità?"},{id:"termin",title:"📅 Fissare Appuntamento",message:"Vorrei fissare un appuntamento presso l'ufficio servizi al cittadino."},{id:"formulare",title:"🏛️ Municipio digitale",message:"Come posso accedere ai servizi del municipio digitale?"},{id:"kfz",title:"🚗 Immatricolazione",message:"Come posso registrare nuovamente il mio veicolo?"},{id:"wohnsitz",title:"🏠 Cambia Residenza",message:"Mi sono trasferito e vorrei cambiare la mia residenza."}],tr:[{id:"mangel",title:"🔧 Sorun Bildir",message:"Kamusal alanda bir kusur veya hasar bildirmek istiyorum."},{id:"reisepass",title:"📄 Pasaport Yenile",message:"Pasaportumu yenilemek istiyorum. Hangi belgelere ihtiyacım var?"},{id:"oeffnungszeiten",title:"🕐 Çalışma Saatleri",message:"Vatandaşlık bürosu ne zaman açık?"},{id:"personalausweis",title:"🆔 Kimlik Başvurusu",message:"Yeni bir kimlik kartı için nasıl başvurabilirim?"},{id:"termin",title:"📅 Randevu Al",message:"Vatandaşlık bürosundan randevu almak istiyorum."},{id:"formulare",title:"🏛️ Dijital Belediye",message:"Dijital belediye hizmetlerine nasıl erişebilirim?"},{id:"kfz",title:"🚗 Araç Kaydı",message:"Aracımı nasıl yeniden kaydettirebilirim?"},{id:"wohnsitz",title:"🏠 Adres Değişikliği",message:"Taşındım ve adresimi değiştirmek istiyorum."}],ar:[{id:"mangel",title:"🔧 الإبلاغ عن مشكلة",message:"أود الإبلاغ عن عيب أو ضرر في المساحة العامة."},{id:"reisepass",title:"📄 تجديد جواز السفر",message:"أود تجديد جواز سفري. ما هي المستندات المطلوبة؟"},{id:"oeffnungszeiten",title:"🕐 ساعات العمل",message:"متى يكون مكتب خدمة المواطنين مفتوحًا؟"},{id:"personalausweis",title:"🆔 طلب بطاقة الهوية",message:"كيف يمكنني التقدم بطلب للحصول على بطاقة هوية جديدة؟"},{id:"termin",title:"📅 حجز موعد",message:"أود حجز موعد في مكتب خدمة المواطنين."},{id:"formulare",title:"🏛️ البلدية الرقمية",message:"كيف يمكنني الوصول إلى خدمات البلدية الرقمية؟"},{id:"kfz",title:"🚗 تسجيل المركبة",message:"كيف يمكنني إعادة تسجيل مركبتي؟"},{id:"wohnsitz",title:"🏠 تغيير العنوان",message:"لقد انتقلت وأود تغيير عنواني."}],pl:[{id:"mangel",title:"🔧 Zgłoś Problem",message:"Chciałbym zgłosić usterkę lub szkodę w przestrzeni publicznej."},{id:"reisepass",title:"📄 Odnów Paszport",message:"Chciałbym odnowić mój paszport. Jakie dokumenty są potrzebne?"},{id:"oeffnungszeiten",title:"🕐 Godziny Otwarcia",message:"Kiedy biuro obsługi mieszkańców jest otwarte?"},{id:"personalausweis",title:"🆔 Złóż Wniosek o Dowód",message:"Jak mogę złożyć wniosek o nowy dowód osobisty?"},{id:"termin",title:"📅 Umów Wizytę",message:"Chciałbym umówić wizytę w biurze obsługi mieszkańców."},{id:"formulare",title:"🏛️ Cyfrowy ratusz",message:"Jak mogę uzyskać dostęp do usług cyfrowego ratusza?"},{id:"kfz",title:"🚗 Rejestracja Pojazdu",message:"Jak mogę ponownie zarejestrować mój pojazd?"},{id:"wohnsitz",title:"🏠 Zmień Adres",message:"Przeprowadziłem się i chciałbym zmienić mój adres."}],ua:[{id:"mangel",title:"🔧 Повідомити Проблему",message:"Я хотів би повідомити про дефект або пошкодження в громадському просторі."},{id:"reisepass",title:"📄 Поновити Паспорт",message:"Я хотів би поновити свій паспорт. Які документи мені потрібні?"},{id:"oeffnungszeiten",title:"🕐 Години Роботи",message:"Коли відкритий офіс обслуговування громадян?"},{id:"personalausweis",title:"🆔 Подати на ID",message:"Як я можу подати заявку на новий ідентифікаційний документ?"},{id:"termin",title:"📅 Записатися",message:"Я хотів би записатися на прийом в офісі обслуговування громадян."},{id:"formulare",title:"🏛️ Цифрова мерія",message:"Як отримати доступ до послуг цифрової мерії?"},{id:"kfz",title:"🚗 Реєстрація Авто",message:"Як я можу перереєструвати свій автомобіль?"},{id:"wohnsitz",title:"🏠 Змінити Адресу",message:"Я переїхав і хотів би змінити свою адресу."}],simple:[{id:"mangel",title:"🔧 Problem melden",message:"Ich möchte ein Problem melden."},{id:"reisepass",title:"📄 Pass verlängern",message:"Ich will meinen Pass verlängern. Was brauche ich?"},{id:"oeffnungszeiten",title:"🕐 Wann offen?",message:"Wann ist das Büro offen?"},{id:"personalausweis",title:"🆔 Ausweis machen",message:"Wie bekomme ich einen neuen Ausweis?"},{id:"termin",title:"📅 Termin machen",message:"Ich möchte einen Termin machen."},{id:"formulare",title:"🏛️ Digitales Rathaus",message:"Wie nutze ich das Digitale Rathaus?"},{id:"kfz",title:"🚗 Auto anmelden",message:"Wie melde ich mein Auto um?"},{id:"wohnsitz",title:"🏠 Adresse ändern",message:"Ich bin umgezogen. Ich möchte meine Adresse ändern."}]},xs=e=>typeof structuredClone=="function"?structuredClone(e):JSON.parse(JSON.stringify(e)),rc=(e,t)=>{if(!t)return xs(e);const n=Array.isArray(e)?[...e]:{...e},r=(i,a)=>{n[i]=a};for(const[i,a]of Object.entries(e)){const o=t[i];if(o===void 0){r(i,xs(a));continue}a!==null&&o!==null&&typeof a=="object"&&typeof o=="object"&&!Array.isArray(a)&&!Array.isArray(o)?r(i,rc(a,o)):Array.isArray(o)?r(i,[...o]):r(i,o)}for(const[i,a]of Object.entries(t))e[i]===void 0&&a!==void 0&&r(i,Array.isArray(a)?[...a]:a);return n},Le={promptId:"default",theme:"dark",highContrast:void 0,bubbleless:!1,dialogLayout:"floating",zIndexBase:1e5,apiKey:void 0,baseUrl:void 0,tenant:void 0,startOnFirstUserMessage:!0,defaultLanguage:"de",languages:ih,translations:oh,branding:{assistantName:"BürgerBot",logoUrl:"https://chat.feazy.ai/assets/feazy_logo_new-BI-QKyxX.png",poweredBy:{text:"Feazy",url:"https://feazy.de"}},callout:{enabled:!0,emoji:"👋",text:"Sie brauchen Hilfe? Fragen Sie den BürgerBot!",delayMs:0},links:{privacyUrl:"https://feazy.de/assistant-privacy-policy/",feedbackUrl:"mailto:support@feazy.de&subject=Feedback%20zum%20B%C3%BCrgerbot%20",reportIssueUrl:"mailto:support@feazy.de?subject=Problem%20melden%20-%20B%C3%BCrgerbot%20",poweredByUrl:"https://feazy.de"},quickReplies:Eh,colors:{common:{primary:"21 90% 48%","glow-primary":"21 90% 48%"}},aboutChatbotDescription:"BürgerBot ist ein KI-gestützter Assistent für Kommunen. Er beantwortet Ihre Fragen zu Öffnungszeiten, Terminen, Formularen und städtischen Dienstleistungen rund um die Uhr.",festive:{christmasHat:!1},humanHandover:{enabled:!1,pollIntervalMs:2e3,translations:{}}},ic=e=>rc(Le,e),Ph=["small","normal","large","extra-large"],jh=e=>typeof e=="string"&&Ph.includes(e);var pi="Switch",[Nh]=pn(pi),[Th,Mh]=Nh(pi),oc=v.forwardRef((e,t)=>{const{__scopeSwitch:n,name:r,checked:i,defaultChecked:a,required:o,disabled:s,value:l="on",onCheckedChange:u,form:c,...d}=e,[p,m]=v.useState(null),h=ot(t,S=>m(S)),g=v.useRef(!1),b=p?c||!!p.closest("form"):!0,[y,x]=yr({prop:i,defaultProp:a??!1,onChange:u,caller:pi});return f.jsxs(Th,{scope:n,checked:y,disabled:s,children:[f.jsx(Ke.button,{type:"button",role:"switch","aria-checked":y,"aria-required":o,"data-state":uc(y),"data-disabled":s?"":void 0,disabled:s,value:l,...d,ref:h,onClick:De(e.onClick,S=>{x(P=>!P),b&&(g.current=S.isPropagationStopped(),g.current||S.stopPropagation())})}),b&&f.jsx(lc,{control:p,bubbles:!g.current,name:r,value:l,checked:y,required:o,disabled:s,form:c,style:{transform:"translateX(-100%)"}})]})});oc.displayName=pi;var ac="SwitchThumb",sc=v.forwardRef((e,t)=>{const{__scopeSwitch:n,...r}=e,i=Mh(ac,n);return f.jsx(Ke.span,{"data-state":uc(i.checked),"data-disabled":i.disabled?"":void 0,...r,ref:t})});sc.displayName=ac;var Ih="SwitchBubbleInput",lc=v.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:r=!0,...i},a)=>{const o=v.useRef(null),s=ot(o,a),l=Ou(n),u=Qo(t);return v.useEffect(()=>{const c=o.current;if(!c)return;const d=window.HTMLInputElement.prototype,m=Object.getOwnPropertyDescriptor(d,"checked").set;if(l!==n&&m){const h=new Event("click",{bubbles:r});m.call(c,n),c.dispatchEvent(h)}},[l,n,r]),f.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n,...i,tabIndex:-1,ref:s,style:{...i.style,...u,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});lc.displayName=Ih;function uc(e){return e?"checked":"unchecked"}var cc=oc,Dh=sc;const dc=v.forwardRef(({className:e,...t},n)=>f.jsx(cc,{className:yt("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent transition-colors data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50",e),...t,ref:n,children:f.jsx(Dh,{className:yt("pointer-events-none block h-5 w-5 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-5 data-[state=unchecked]:translate-x-0")})}));dc.displayName=cc.displayName;function Rh({open:e,onClose:t,translation:n,theme:r,setTheme:i,fontSize:a,onFontSizeChange:o,highContrast:s,onHighContrastChange:l,onRevokePrivacy:u,links:c,poweredBy:d}){return e?f.jsxs("div",{className:"absolute inset-0 bg-[hsl(var(--chat-settings-bg))] backdrop-blur-[60px] z-50 flex flex-col animate-fade-in",children:[f.jsxs("div",{className:"p-5 border-b border-border flex justify-between items-center",children:[f.jsx("h3",{className:"text-lg font-bold text-foreground",children:n.title}),f.jsx("button",{onClick:t,className:"w-[38px] h-[38px] bg-muted rounded-full flex items-center justify-center hover:bg-muted/80 transition-all",children:f.jsx(un,{className:"w-5 h-5 text-foreground"})})]}),f.jsxs("div",{className:"flex-1 overflow-y-auto p-5 space-y-6",children:[f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(ts,{className:"w-4 h-4"}),n.appearance.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-4 border border-border",children:[f.jsxs("div",{className:"space-y-2",children:[f.jsx(wn,{className:"text-sm text-foreground/80",children:n.appearance.theme}),f.jsxs("div",{className:"flex gap-2",children:[f.jsxs(ut,{onClick:()=>i("light"),variant:r==="light"?"default":"outline",className:"flex-1 text-xs",size:"sm",children:[f.jsx(ts,{className:"w-4 h-4 mr-2"}),n.appearance.light]}),f.jsxs(ut,{onClick:()=>i("dark"),variant:r==="dark"?"default":"outline",className:"flex-1 text-xs",size:"sm",children:[f.jsx(sm,{className:"w-4 h-4 mr-2"}),n.appearance.dark]})]})]}),f.jsxs("div",{className:"space-y-2",children:[f.jsx(wn,{className:"text-sm text-foreground/80",children:n.appearance.fontSize}),f.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[f.jsx(ut,{onClick:()=>o("small"),variant:a==="small"?"default":"outline",size:"sm",className:"text-xs px-2",children:n.appearance.fontSizeSmall}),f.jsx(ut,{onClick:()=>o("normal"),variant:a==="normal"?"default":"outline",size:"sm",className:"text-xs px-2",children:n.appearance.fontSizeNormal}),f.jsx(ut,{onClick:()=>o("large"),variant:a==="large"?"default":"outline",size:"sm",className:"text-xs px-2",children:n.appearance.fontSizeLarge}),f.jsx(ut,{onClick:()=>o("extra-large"),variant:a==="extra-large"?"default":"outline",size:"sm",className:"text-xs px-2",children:n.appearance.fontSizeExtraLarge})]})]}),f.jsxs("div",{className:"flex items-center justify-between",children:[f.jsxs("div",{className:"space-y-0.5",children:[f.jsx(wn,{className:"text-sm text-foreground",children:n.appearance.highContrast}),f.jsx("p",{className:"text-xs text-foreground/60",children:n.appearance.highContrastDesc})]}),f.jsx(dc,{checked:s,onCheckedChange:l})]})]})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(ln,{className:"w-4 h-4"}),n.privacy.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-3 border border-border",children:[f.jsx("p",{className:"text-sm text-foreground/80",children:n.privacy.description}),f.jsxs("div",{className:"flex gap-2 flex-wrap",children:[f.jsxs("a",{href:c.privacyUrl||"#",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-primary hover:text-primary/80 underline flex items-center gap-1",children:[n.privacy.viewPolicy,f.jsx(xn,{className:"w-3 h-3"})]}),f.jsx("button",{onClick:u,className:"text-xs text-red-400 hover:text-red-300 underline",children:n.privacy.revoke})]})]})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(fu,{className:"w-4 h-4"}),n.feedback.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-3 border border-border",children:[f.jsx("p",{className:"text-sm text-foreground/80",children:n.feedback.description}),f.jsx("a",{href:c.feedbackUrl||"#",className:"inline-block",children:f.jsxs(ut,{className:"w-full text-sm",children:[n.feedback.button,f.jsx(xn,{className:"w-4 h-4 ml-2"})]})})]})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(ln,{className:"w-4 h-4"}),n.reportIssue.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-3 border border-border",children:[f.jsx("p",{className:"text-sm text-foreground/80",children:n.reportIssue.description}),f.jsx("a",{href:c.reportIssueUrl||"#",className:"inline-block",children:f.jsxs(ut,{className:"w-full text-sm",children:[n.reportIssue.button,f.jsx(xn,{className:"w-4 h-4 ml-2"})]})})]})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx(_r,{className:"w-4 h-4"}),n.aboutChatbot.title]}),f.jsx("div",{className:"bg-card rounded-xl p-4 border border-border",children:f.jsx("p",{className:"text-sm text-foreground/80",children:n.aboutChatbot.description})})]}),f.jsxs("div",{className:"space-y-3",children:[f.jsxs("h4",{className:"text-sm font-semibold text-foreground flex items-center gap-2",children:[f.jsx($f,{className:"w-4 h-4"}),n.aboutFeazy.title]}),f.jsxs("div",{className:"bg-card rounded-xl p-4 space-y-3 border border-border",children:[f.jsx("p",{className:"text-sm text-foreground/80",children:n.aboutFeazy.description}),f.jsx("a",{href:(d==null?void 0:d.url)||c.poweredByUrl||"#",target:"_blank",rel:"noopener noreferrer",className:"inline-block",children:f.jsxs(ut,{className:"w-full bg-primary hover:bg-primary/90 text-primary-foreground text-sm",children:[n.aboutFeazy.button,f.jsx(xn,{className:"w-4 h-4 ml-2"})]})})]})]}),f.jsx("div",{className:"pt-4 border-t border-border",children:f.jsx("p",{className:"text-xs text-foreground/40 text-center",children:n.version})})]})]}):null}const Lh=()=>f.jsx("div",{className:"flex items-center gap-1",children:[...Array(5)].map((e,t)=>f.jsx("div",{className:"w-1 bg-destructive rounded-full animate-waveform",style:{animationDelay:`${t*.1}s`,height:"8px"}},t))});function Oh({input:e,onInputChange:t,onSend:n,onKeyDown:r,inputRef:i,isRecording:a,isTranscribing:o,isTyping:s,startRecording:l,stopRecording:u,recordingTime:c,placeholder:d,transcribingLabel:p,disclaimer:m,poweredByText:h,poweredByUrl:g}){return f.jsxs("div",{className:"px-4 pt-4 pb-2 bg-[hsl(var(--chat-input-bg))] backdrop-blur-[20px] border-t border-border",children:[f.jsxs("div",{className:"flex gap-3 items-center bg-card backdrop-blur-[10px] rounded-[20px] p-2 px-4 border border-border transition-all focus-within:border-primary/40 focus-within:shadow-[0_0_0_3px_hsl(var(--primary)/0.08)]",children:[f.jsxs("div",{className:"relative flex-shrink-0 flex items-center",children:[f.jsx("button",{onClick:a?u:l,disabled:o||s,"aria-label":a?"Aufnahme stoppen":"Spracheingabe","aria-pressed":a,className:`flex items-center transition-all duration-300 focus:outline-none focus:ring-2 focus:ring-primary ${a?"text-destructive hover:text-destructive":"text-foreground/60 hover:text-foreground"} disabled:opacity-40 disabled:cursor-not-allowed`,children:a?f.jsx(dm,{className:"w-5 h-5","aria-hidden":"true"}):f.jsx(im,{className:"w-5 h-5","aria-hidden":"true"})}),o&&f.jsxs("div",{className:"absolute left-full top-1/2 transform -translate-y-1/2 ml-2 bg-primary text-primary-foreground px-3 py-1 rounded-full text-xs flex items-center gap-2 whitespace-nowrap animate-in fade-in slide-in-from-right-2",children:[f.jsx("div",{className:"w-2 h-2 bg-primary-foreground rounded-full animate-pulse"}),p]})]}),a?f.jsxs("div",{className:"flex-1 flex items-center gap-3 py-2.5 min-h-[40px]",children:[f.jsx(Lh,{}),f.jsxs("span",{className:"text-sm text-destructive/80",children:[Math.floor(c/60),":",(c%60).toString().padStart(2,"0")]})]}):f.jsx(Ko,{ref:i,value:e,onChange:b=>t(b.target.value),onKeyDown:r,placeholder:d,"aria-label":"Nachricht eingeben",className:"flex-1 border-none bg-transparent py-2.5 px-0 text-base md:text-sm outline-none text-foreground placeholder:text-muted-foreground placeholder:whitespace-nowrap placeholder:overflow-hidden placeholder:text-ellipsis focus-visible:ring-0 focus-visible:ring-offset-0 resize-none min-h-[40px] max-h-[120px] overflow-y-auto",disabled:a||o,rows:1}),f.jsx(ut,{onClick:n,"aria-label":"Nachricht senden",disabled:s||o||!a&&!e.trim(),size:"icon",className:"w-[40px] h-[40px] flex-shrink-0 rounded-full bg-primary border-none flex items-center justify-center cursor-pointer transition-all duration-300 shadow-[0_4px_12px_hsl(var(--glow-primary))] hover:scale-110 hover:rotate-[15deg] hover:shadow-[0_6px_20px_hsl(var(--glow-primary))] disabled:opacity-40 disabled:cursor-not-allowed disabled:hover:scale-100 disabled:hover:rotate-0",children:f.jsx(lm,{className:"w-4 h-4 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"})})]}),f.jsxs("div",{className:"text-center pt-2 space-y-0.5",children:[f.jsx("p",{className:"text-[10px] text-muted-foreground",children:m}),h?f.jsxs("p",{className:"text-[10px] text-muted-foreground/60",children:["Bereitgestellt von"," ",g?f.jsx("a",{href:g,target:"_blank",rel:"noopener noreferrer",className:"text-muted-foreground/80 hover:text-foreground underline transition-colors",children:h}):f.jsx("span",{className:"text-muted-foreground/80",children:h})]}):null]})]})}function hi({imageUrl:e,name:t,size:n=36,className:r=""}){return f.jsx("span",{className:`relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full bg-[hsl(var(--chat-human)/0.14)] text-[hsl(var(--chat-human))] ring-1 ring-[hsl(var(--chat-human)/0.45)] ${r}`,style:{width:n,height:n,fontSize:Math.round(n*.48)},role:"img","aria-label":t,children:e?f.jsx("img",{src:e,alt:"",className:"h-full w-full object-cover"}):f.jsx(yo,{"aria-hidden":"true"})})}function Fh({theme:e,selectedLanguage:t,languages:n,onlineLabel:r,isLangMenuOpen:i,setIsLangMenuOpen:a,repositionLangMenu:o,langMenuPortalTarget:s,langMenuPos:l,langMenuContentRef:u,langButtonRef:c,handleLangMenuKeyDown:d,onSelectLanguage:p,showSettings:m,onToggleSettings:h,isExpanded:g,onToggleExpand:b,showExpandToggle:y=!0,langMenuPositioning:x="fixed",langMenuZIndex:S=100002,showCloseButton:P=!0,onClose:j,logoSrc:C,assistantName:E,assistantTagline:R,presence:M}){var N,T,V,O;const k=(M==null?void 0:M.mode)==="human"?"bg-green-400 animate-status-blink shadow-[0_0_8px_rgba(74,222,128,0.6)]":(M==null?void 0:M.mode)==="waiting"?"bg-[hsl(var(--chat-waiting))] shadow-[0_0_8px_hsl(var(--chat-waiting)/0.7)]":"bg-primary-foreground/45";return f.jsxs("div",{className:"chat-header-solid relative bg-primary p-5 flex justify-between items-center gap-3 rounded-t-[24px] max-md:rounded-none overflow-hidden",children:[f.jsxs("div",{className:"flex items-center gap-3 relative z-[1] min-w-0",children:[f.jsxs("div",{className:"relative shrink-0",children:[f.jsx("div",{className:"w-[42px] h-[42px] bg-[hsl(var(--chat-avatar-bot))] rounded-full flex items-center justify-center border border-primary-foreground/30 shadow-[0_4px_15px_rgba(0,0,0,0.2)]",role:"img","aria-label":`${E} Logo`,children:f.jsx("img",{src:C,alt:E,className:"w-7 h-7 object-contain drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)]"})}),(M==null?void 0:M.mode)==="human"?f.jsx("span",{className:"handover-in absolute -bottom-0.5 -end-1 rounded-full ring-2 ring-primary",children:f.jsx(hi,{imageUrl:(N=M.operator)==null?void 0:N.imageUrl,name:((T=M.operator)==null?void 0:T.displayName)||M.operatorFallbackName||"Support",size:18,className:"bg-[hsl(var(--chat-human))] text-[hsl(var(--chat-human-foreground))] ring-0"})}):null]}),f.jsxs("div",{className:"min-w-0",children:[f.jsx("div",{id:"chat-title",className:"truncate text-primary-foreground text-lg font-bold drop-shadow-[0_2px_10px_rgba(0,0,0,0.3)]",children:E}),M?f.jsxs("div",{id:"chat-description",className:"flex min-w-0 items-center gap-1.5 text-primary-foreground/95 text-xs",role:"status","aria-live":"polite",children:[f.jsx("span",{className:`handover-in inline-block w-[7px] h-[7px] shrink-0 rounded-full ${k}`,"aria-hidden":"true"},M.mode),f.jsx("span",{className:"truncate",title:M.label,children:M.label})]}):f.jsxs("div",{id:"chat-description",className:"text-primary-foreground/95 text-xs",children:[f.jsx("span",{className:"inline-block w-[7px] h-[7px] bg-green-400 rounded-full mr-1.5 animate-status-blink shadow-[0_0_8px_rgba(74,222,128,0.6)]",role:"status","aria-label":"Online-Status"}),f.jsx("span",{children:r}),R?f.jsxs("span",{className:"ml-2 text-primary-foreground/80",children:["• ",R]}):null]})]})]}),f.jsxs("div",{className:"flex items-center gap-2 relative z-[1] shrink-0",children:[f.jsxs("div",{className:"relative",children:[f.jsxs("button",{type:"button","aria-haspopup":"menu","aria-expanded":i,"aria-controls":"klaus-language-menu",onClick:F=>{F.preventDefault(),F.stopPropagation();const B=!i;B&&o(),a(B)},"aria-label":`Sprache: ${(V=n.find(F=>F.code===t))==null?void 0:V.name}`,className:"px-3 py-1.5 rounded-full text-xs font-semibold transition-all duration-300 flex items-center gap-1.5 bg-primary-foreground/15 text-primary-foreground hover:bg-primary-foreground/25 border border-primary-foreground/20 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary",ref:c,children:[f.jsx(em,{className:"w-3.5 h-3.5","aria-hidden":"true"}),f.jsx("span",{className:"max-md:hidden",children:(O=n.find(F=>F.code===t))==null?void 0:O.flag})]}),i&&s&&Uo.createPortal(f.jsx("div",{id:"klaus-language-menu",role:"menu","aria-label":"Sprachauswahl",onKeyDown:d,ref:u,className:`${x} w-[220px] rounded-2xl bg-background/95 backdrop-blur-2xl border border-white/10 text-foreground shadow-[0_20px_45px_rgba(0,0,0,0.45)] max-h-[300px] overflow-y-auto`,style:{top:`${l.top}px`,left:`${l.left}px`,zIndex:S},children:n.map(F=>f.jsxs("button",{type:"button",role:"menuitemradio","aria-checked":t===F.code,onClick:B=>{B.preventDefault(),B.stopPropagation(),p(F.code),a(!1)},className:"w-full text-left cursor-pointer text-foreground/80 hover:text-foreground focus:text-foreground flex items-center justify-between gap-2 px-3 py-2 rounded-xl transition-colors hover:bg-white/10 focus:bg-white/10",children:[f.jsxs("span",{className:"flex items-center gap-2",children:[f.jsx("span",{className:"text-base",children:F.flag}),f.jsx("span",{className:"text-sm",children:F.name})]}),t===F.code&&f.jsx(zn,{className:"w-4 h-4 text-primary"})]},F.code))}),s)]}),f.jsx("button",{onClick:h,"aria-label":m?"Einstellungen schließen":"Einstellungen öffnen","aria-expanded":m,className:"w-[38px] h-[38px] bg-primary-foreground/15 backdrop-blur-[10px] border border-primary-foreground/20 rounded-full flex items-center justify-center transition-all duration-300 hover:bg-primary-foreground/25 hover:scale-110 hover:rotate-45 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary",children:f.jsx(um,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]","aria-hidden":"true"})}),y&&f.jsx("button",{onClick:b,"aria-label":g?"Normalgröße":"Vollbild","aria-expanded":g,className:"w-[38px] h-[38px] bg-primary-foreground/15 backdrop-blur-[10px] border border-primary-foreground/20 rounded-full flex items-center justify-center transition-all duration-300 hover:bg-primary-foreground/25 hover:scale-110 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary max-md:hidden",children:g?f.jsx(om,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]","aria-hidden":"true"}):f.jsx(nm,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]","aria-hidden":"true"})}),P&&f.jsx("button",{onClick:j,"aria-label":"Chat schließen",className:"w-[38px] h-[38px] bg-primary-foreground/15 backdrop-blur-[10px] border border-primary-foreground/20 rounded-full flex items-center justify-center transition-all duration-300 hover:bg-primary-foreground/25 hover:rotate-90 hover:scale-110 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary",children:f.jsx(un,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]","aria-hidden":"true"})})]})]})}function Bh(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const Wh=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,qh=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Vh={};function ws(e,t){return(Vh.jsx?qh:Wh).test(e)}const Jh=/[ \t\n\f\r]/g;function Hh(e){return typeof e=="object"?e.type==="text"?ks(e.value):!1:ks(e)}function ks(e){return e.replace(Jh,"")===""}class xr{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}xr.prototype.normal={};xr.prototype.property={};xr.prototype.space=void 0;function fc(e,t){const n={},r={};for(const i of e)Object.assign(n,i.property),Object.assign(r,i.normal);return new xr(n,r,t)}function wo(e){return e.toLowerCase()}class vt{constructor(t,n){this.attribute=n,this.property=t}}vt.prototype.attribute="";vt.prototype.booleanish=!1;vt.prototype.boolean=!1;vt.prototype.commaOrSpaceSeparated=!1;vt.prototype.commaSeparated=!1;vt.prototype.defined=!1;vt.prototype.mustUseProperty=!1;vt.prototype.number=!1;vt.prototype.overloadedBoolean=!1;vt.prototype.property="";vt.prototype.spaceSeparated=!1;vt.prototype.space=void 0;let Uh=0;const ge=An(),_e=An(),ko=An(),H=An(),qe=An(),Rn=An(),wt=An();function An(){return 2**++Uh}const So=Object.freeze(Object.defineProperty({__proto__:null,boolean:ge,booleanish:_e,commaOrSpaceSeparated:wt,commaSeparated:Rn,number:H,overloadedBoolean:ko,spaceSeparated:qe},Symbol.toStringTag,{value:"Module"})),Xi=Object.keys(So);class _o extends vt{constructor(t,n,r,i){let a=-1;if(super(t,n),Ss(this,"space",i),typeof r=="number")for(;++a<Xi.length;){const o=Xi[a];Ss(this,Xi[a],(r&So[o])===So[o])}}}_o.prototype.defined=!0;function Ss(e,t,n){n&&(e[t]=n)}function Vn(e){const t={},n={};for(const[r,i]of Object.entries(e.properties)){const a=new _o(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[wo(r)]=r,n[wo(a.attribute)]=r}return new xr(t,n,e.space)}const mc=Vn({properties:{ariaActiveDescendant:null,ariaAtomic:_e,ariaAutoComplete:null,ariaBusy:_e,ariaChecked:_e,ariaColCount:H,ariaColIndex:H,ariaColSpan:H,ariaControls:qe,ariaCurrent:null,ariaDescribedBy:qe,ariaDetails:null,ariaDisabled:_e,ariaDropEffect:qe,ariaErrorMessage:null,ariaExpanded:_e,ariaFlowTo:qe,ariaGrabbed:_e,ariaHasPopup:null,ariaHidden:_e,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:qe,ariaLevel:H,ariaLive:null,ariaModal:_e,ariaMultiLine:_e,ariaMultiSelectable:_e,ariaOrientation:null,ariaOwns:qe,ariaPlaceholder:null,ariaPosInSet:H,ariaPressed:_e,ariaReadOnly:_e,ariaRelevant:null,ariaRequired:_e,ariaRoleDescription:qe,ariaRowCount:H,ariaRowIndex:H,ariaRowSpan:H,ariaSelected:_e,ariaSetSize:H,ariaSort:null,ariaValueMax:H,ariaValueMin:H,ariaValueNow:H,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function pc(e,t){return t in e?e[t]:t}function hc(e,t){return pc(e,t.toLowerCase())}const Xh=Vn({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Rn,acceptCharset:qe,accessKey:qe,action:null,allow:null,allowFullScreen:ge,allowPaymentRequest:ge,allowUserMedia:ge,alt:null,as:null,async:ge,autoCapitalize:null,autoComplete:qe,autoFocus:ge,autoPlay:ge,blocking:qe,capture:null,charSet:null,checked:ge,cite:null,className:qe,cols:H,colSpan:null,content:null,contentEditable:_e,controls:ge,controlsList:qe,coords:H|Rn,crossOrigin:null,data:null,dateTime:null,decoding:null,default:ge,defer:ge,dir:null,dirName:null,disabled:ge,download:ko,draggable:_e,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:ge,formTarget:null,headers:qe,height:H,hidden:ko,high:H,href:null,hrefLang:null,htmlFor:qe,httpEquiv:qe,id:null,imageSizes:null,imageSrcSet:null,inert:ge,inputMode:null,integrity:null,is:null,isMap:ge,itemId:null,itemProp:qe,itemRef:qe,itemScope:ge,itemType:qe,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:ge,low:H,manifest:null,max:null,maxLength:H,media:null,method:null,min:null,minLength:H,multiple:ge,muted:ge,name:null,nonce:null,noModule:ge,noValidate:ge,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:ge,optimum:H,pattern:null,ping:qe,placeholder:null,playsInline:ge,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:ge,referrerPolicy:null,rel:qe,required:ge,reversed:ge,rows:H,rowSpan:H,sandbox:qe,scope:null,scoped:ge,seamless:ge,selected:ge,shadowRootClonable:ge,shadowRootDelegatesFocus:ge,shadowRootMode:null,shape:null,size:H,sizes:null,slot:null,span:H,spellCheck:_e,src:null,srcDoc:null,srcLang:null,srcSet:null,start:H,step:null,style:null,tabIndex:H,target:null,title:null,translate:null,type:null,typeMustMatch:ge,useMap:null,value:_e,width:H,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:qe,axis:null,background:null,bgColor:null,border:H,borderColor:null,bottomMargin:H,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:ge,declare:ge,event:null,face:null,frame:null,frameBorder:null,hSpace:H,leftMargin:H,link:null,longDesc:null,lowSrc:null,marginHeight:H,marginWidth:H,noResize:ge,noHref:ge,noShade:ge,noWrap:ge,object:null,profile:null,prompt:null,rev:null,rightMargin:H,rules:null,scheme:null,scrolling:_e,standby:null,summary:null,text:null,topMargin:H,valueType:null,version:null,vAlign:null,vLink:null,vSpace:H,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:ge,disableRemotePlayback:ge,prefix:null,property:null,results:H,security:null,unselectable:null},space:"html",transform:hc}),Zh=Vn({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:wt,accentHeight:H,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:H,amplitude:H,arabicForm:null,ascent:H,attributeName:null,attributeType:null,azimuth:H,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:H,by:null,calcMode:null,capHeight:H,className:qe,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:H,diffuseConstant:H,direction:null,display:null,dur:null,divisor:H,dominantBaseline:null,download:ge,dx:null,dy:null,edgeMode:null,editable:null,elevation:H,enableBackground:null,end:null,event:null,exponent:H,externalResourcesRequired:null,fill:null,fillOpacity:H,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Rn,g2:Rn,glyphName:Rn,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:H,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:H,horizOriginX:H,horizOriginY:H,id:null,ideographic:H,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:H,k:H,k1:H,k2:H,k3:H,k4:H,kernelMatrix:wt,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:H,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:H,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:H,overlineThickness:H,paintOrder:null,panose1:null,path:null,pathLength:H,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:qe,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:H,pointsAtY:H,pointsAtZ:H,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:wt,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:wt,rev:wt,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:wt,requiredFeatures:wt,requiredFonts:wt,requiredFormats:wt,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:H,specularExponent:H,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:H,strikethroughThickness:H,string:null,stroke:null,strokeDashArray:wt,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:H,strokeOpacity:H,strokeWidth:null,style:null,surfaceScale:H,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:wt,tabIndex:H,tableValues:null,target:null,targetX:H,targetY:H,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:wt,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:H,underlineThickness:H,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:H,values:null,vAlphabetic:H,vMathematical:H,vectorEffect:null,vHanging:H,vIdeographic:H,version:null,vertAdvY:H,vertOriginX:H,vertOriginY:H,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:H,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:pc}),gc=Vn({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),bc=Vn({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:hc}),yc=Vn({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),Gh={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Kh=/[A-Z]/g,Cs=/-[a-z]/g,Qh=/^data[-\w.:]+$/i;function Yh(e,t){const n=wo(t);let r=t,i=vt;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Qh.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(Cs,$h);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!Cs.test(a)){let o=a.replace(Kh,_h);o.charAt(0)!=="-"&&(o="-"+o),t="data"+o}}i=_o}return new i(r,t)}function _h(e){return"-"+e.toLowerCase()}function $h(e){return e.charAt(1).toUpperCase()}const eg=fc([mc,Xh,gc,bc,yc],"html"),$o=fc([mc,Zh,gc,bc,yc],"svg");function tg(e){return e.join(" ").trim()}var ea={},zs=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,ng=/\n/g,rg=/^\s*/,ig=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,og=/^:\s*/,ag=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,sg=/^[;\s]*/,lg=/^\s+|\s+$/g,ug=`
268
268
  `,As="/",Es="*",vn="",cg="comment",dg="declaration";function fg(e,t){if(typeof e!="string")throw new TypeError("First argument must be a string");if(!e)return[];t=t||{};var n=1,r=1;function i(h){var g=h.match(ng);g&&(n+=g.length);var b=h.lastIndexOf(ug);r=~b?h.length-b:r+h.length}function a(){var h={line:n,column:r};return function(g){return g.position=new o(h),u(),g}}function o(h){this.start=h,this.end={line:n,column:r},this.source=t.source}o.prototype.content=e;function s(h){var g=new Error(t.source+":"+n+":"+r+": "+h);if(g.reason=h,g.filename=t.source,g.line=n,g.column=r,g.source=e,!t.silent)throw g}function l(h){var g=h.exec(e);if(g){var b=g[0];return i(b),e=e.slice(b.length),g}}function u(){l(rg)}function c(h){var g;for(h=h||[];g=d();)g!==!1&&h.push(g);return h}function d(){var h=a();if(!(As!=e.charAt(0)||Es!=e.charAt(1))){for(var g=2;vn!=e.charAt(g)&&(Es!=e.charAt(g)||As!=e.charAt(g+1));)++g;if(g+=2,vn===e.charAt(g-1))return s("End of comment missing");var b=e.slice(2,g-2);return r+=2,i(b),e=e.slice(g),r+=2,h({type:cg,comment:b})}}function p(){var h=a(),g=l(ig);if(g){if(d(),!l(og))return s("property missing ':'");var b=l(ag),y=h({type:dg,property:Ps(g[0].replace(zs,vn)),value:b?Ps(b[0].replace(zs,vn)):vn});return l(sg),y}}function m(){var h=[];c(h);for(var g;g=p();)g!==!1&&(h.push(g),c(h));return h}return u(),m()}function Ps(e){return e?e.replace(lg,vn):vn}var mg=fg,pg=Yr&&Yr.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(ea,"__esModule",{value:!0});ea.default=gg;const hg=pg(mg);function gg(e,t){let n=null;if(!e||typeof e!="string")return n;const r=(0,hg.default)(e),i=typeof t=="function";return r.forEach(a=>{if(a.type!=="declaration")return;const{property:o,value:s}=a;i?t(o,s,a):s&&(n=n||{},n[o]=s)}),n}var gi={};Object.defineProperty(gi,"__esModule",{value:!0});gi.camelCase=void 0;var bg=/^--[a-zA-Z0-9_-]+$/,yg=/-([a-z])/g,vg=/^[^-]+$/,xg=/^-(webkit|moz|ms|o|khtml)-/,wg=/^-(ms)-/,kg=function(e){return!e||vg.test(e)||bg.test(e)},Sg=function(e,t){return t.toUpperCase()},js=function(e,t){return"".concat(t,"-")},Cg=function(e,t){return t===void 0&&(t={}),kg(e)?e:(e=e.toLowerCase(),t.reactCompat?e=e.replace(wg,js):e=e.replace(xg,js),e.replace(yg,Sg))};gi.camelCase=Cg;var zg=Yr&&Yr.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},Ag=zg(ea),Eg=gi;function Co(e,t){var n={};return!e||typeof e!="string"||(0,Ag.default)(e,function(r,i){r&&i&&(n[(0,Eg.camelCase)(r,t)]=i)}),n}Co.default=Co;var Pg=Co;const jg=iu(Pg),vc=xc("end"),ta=xc("start");function xc(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function Ng(e){const t=ta(e),n=vc(e);if(t&&n)return{start:t,end:n}}function sr(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Ns(e.position):"start"in e||"end"in e?Ns(e):"line"in e||"column"in e?zo(e):""}function zo(e){return Ts(e&&e.line)+":"+Ts(e&&e.column)}function Ns(e){return zo(e&&e.start)+"-"+zo(e&&e.end)}function Ts(e){return e&&typeof e=="number"?e:1}class dt extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let i="",a={},o=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof t=="string"?i=t:!a.cause&&t&&(o=!0,i=t.message,a.cause=t),!a.ruleId&&!a.source&&typeof r=="string"){const l=r.indexOf(":");l===-1?a.ruleId=r:(a.source=r.slice(0,l),a.ruleId=r.slice(l+1))}if(!a.place&&a.ancestors&&a.ancestors){const l=a.ancestors[a.ancestors.length-1];l&&(a.place=l.position)}const s=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=s?s.column:void 0,this.fatal=void 0,this.file="",this.message=i,this.line=s?s.line:void 0,this.name=sr(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=o&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}dt.prototype.file="";dt.prototype.name="";dt.prototype.reason="";dt.prototype.message="";dt.prototype.stack="";dt.prototype.column=void 0;dt.prototype.line=void 0;dt.prototype.ancestors=void 0;dt.prototype.cause=void 0;dt.prototype.fatal=void 0;dt.prototype.place=void 0;dt.prototype.ruleId=void 0;dt.prototype.source=void 0;const na={}.hasOwnProperty,Tg=new Map,Mg=/[A-Z]/g,Ig=new Set(["table","tbody","thead","tfoot","tr"]),Dg=new Set(["td","th"]),wc="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function Rg(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=Jg(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=Vg(n,t.jsx,t.jsxs)}const i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?$o:eg,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=kc(i,e,void 0);return a&&typeof a!="string"?a:i.create(e,i.Fragment,{children:a||void 0},void 0)}function kc(e,t,n){if(t.type==="element")return Lg(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return Og(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return Bg(e,t,n);if(t.type==="mdxjsEsm")return Fg(e,t);if(t.type==="root")return Wg(e,t,n);if(t.type==="text")return qg(e,t)}function Lg(e,t,n){const r=e.schema;let i=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(i=$o,e.schema=i),e.ancestors.push(t);const a=Cc(e,t.tagName,!1),o=Hg(e,t);let s=ia(e,t);return Ig.has(t.tagName)&&(s=s.filter(function(l){return typeof l=="string"?!Hh(l):!0})),Sc(e,o,a,t),ra(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function Og(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}dr(e,t.position)}function Fg(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);dr(e,t.position)}function Bg(e,t,n){const r=e.schema;let i=r;t.name==="svg"&&r.space==="html"&&(i=$o,e.schema=i),e.ancestors.push(t);const a=t.name===null?e.Fragment:Cc(e,t.name,!0),o=Ug(e,t),s=ia(e,t);return Sc(e,o,a,t),ra(o,s),e.ancestors.pop(),e.schema=r,e.create(t,a,o,n)}function Wg(e,t,n){const r={};return ra(r,ia(e,t)),e.create(t,e.Fragment,r,n)}function qg(e,t){return t.value}function Sc(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function ra(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function Vg(e,t,n){return r;function r(i,a,o,s){const u=Array.isArray(o.children)?n:t;return s?u(a,o,s):u(a,o)}}function Jg(e,t){return n;function n(r,i,a,o){const s=Array.isArray(a.children),l=ta(r);return t(i,a,o,s,{columnNumber:l?l.column-1:void 0,fileName:e,lineNumber:l?l.line:void 0},void 0)}}function Hg(e,t){const n={};let r,i;for(i in t.properties)if(i!=="children"&&na.call(t.properties,i)){const a=Xg(e,i,t.properties[i]);if(a){const[o,s]=a;e.tableCellAlignToStyle&&o==="align"&&typeof s=="string"&&Dg.has(t.tagName)?r=s:n[o]=s}}if(r){const a=n.style||(n.style={});a[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function Ug(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const a=r.data.estree.body[0];a.type;const o=a.expression;o.type;const s=o.properties[0];s.type,Object.assign(n,e.evaluater.evaluateExpression(s.argument))}else dr(e,t.position);else{const i=r.name;let a;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const s=r.value.data.estree.body[0];s.type,a=e.evaluater.evaluateExpression(s.expression)}else dr(e,t.position);else a=r.value===null?!0:r.value;n[i]=a}return n}function ia(e,t){const n=[];let r=-1;const i=e.passKeys?new Map:Tg;for(;++r<t.children.length;){const a=t.children[r];let o;if(e.passKeys){const l=a.type==="element"?a.tagName:a.type==="mdxJsxFlowElement"||a.type==="mdxJsxTextElement"?a.name:void 0;if(l){const u=i.get(l)||0;o=l+"-"+u,i.set(l,u+1)}}const s=kc(e,a,o);s!==void 0&&n.push(s)}return n}function Xg(e,t,n){const r=Yh(e.schema,t);if(!(n==null||typeof n=="number"&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?Bh(n):tg(n)),r.property==="style"){let i=typeof n=="object"?n:Zg(e,String(n));return e.stylePropertyNameCase==="css"&&(i=Gg(i)),["style",i]}return[e.elementAttributeNameCase==="react"&&r.space?Gh[r.property]||r.property:r.attribute,n]}}function Zg(e,t){try{return jg(t,{reactCompat:!0})}catch(n){if(e.ignoreInvalidStyle)return{};const r=n,i=new dt("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:r,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw i.file=e.filePath||void 0,i.url=wc+"#cannot-parse-style-attribute",i}}function Cc(e,t,n){let r;if(!n)r={type:"Literal",value:t};else if(t.includes(".")){const i=t.split(".");let a=-1,o;for(;++a<i.length;){const s=ws(i[a])?{type:"Identifier",name:i[a]}:{type:"Literal",value:i[a]};o=o?{type:"MemberExpression",object:o,property:s,computed:!!(a&&s.type==="Literal"),optional:!1}:s}r=o}else r=ws(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(r.type==="Literal"){const i=r.value;return na.call(e.components,i)?e.components[i]:i}if(e.evaluater)return e.evaluater.evaluateExpression(r);dr(e)}function dr(e,t){const n=new dt("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw n.file=e.filePath||void 0,n.url=wc+"#cannot-handle-mdx-estrees-without-createevaluater",n}function Gg(e){const t={};let n;for(n in e)na.call(e,n)&&(t[Kg(n)]=e[n]);return t}function Kg(e){let t=e.replace(Mg,Qg);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function Qg(e){return"-"+e.toLowerCase()}const Zi={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},Yg={};function oa(e,t){const n=Yg,r=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,i=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return zc(e,r,i)}function zc(e,t,n){if(_g(e)){if("value"in e)return e.type==="html"&&!n?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return Ms(e.children,t,n)}return Array.isArray(e)?Ms(e,t,n):""}function Ms(e,t,n){const r=[];let i=-1;for(;++i<e.length;)r[i]=zc(e[i],t,n);return r.join("")}function _g(e){return!!(e&&typeof e=="object")}const Is=document.createElement("i");function aa(e){const t="&"+e+";";Is.innerHTML=t;const n=Is.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function St(e,t,n,r){const i=e.length;let a=0,o;if(t<0?t=-t>i?0:i+t:t=t>i?i:t,n=n>0?n:0,r.length<1e4)o=Array.from(r),o.unshift(t,n),e.splice(...o);else for(n&&e.splice(t,n);a<r.length;)o=r.slice(a,a+1e4),o.unshift(t,0),e.splice(...o),a+=1e4,t+=1e4}function Et(e,t){return e.length>0?(St(e,e.length,0,t),e):t}const Ds={}.hasOwnProperty;function Ac(e){const t={};let n=-1;for(;++n<e.length;)$g(t,e[n]);return t}function $g(e,t){let n;for(n in t){const i=(Ds.call(e,n)?e[n]:void 0)||(e[n]={}),a=t[n];let o;if(a)for(o in a){Ds.call(i,o)||(i[o]=[]);const s=a[o];eb(i[o],Array.isArray(s)?s:s?[s]:[])}}}function eb(e,t){let n=-1;const r=[];for(;++n<t.length;)(t[n].add==="after"?e:r).push(t[n]);St(e,0,0,r)}function Ec(e,t){const n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function Nt(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const pt=hn(/[A-Za-z]/),ct=hn(/[\dA-Za-z]/),tb=hn(/[#-'*+\--9=?A-Z^-~]/);function ti(e){return e!==null&&(e<32||e===127)}const Ao=hn(/\d/),nb=hn(/[\dA-Fa-f]/),rb=hn(/[!-/:-@[-`{-~]/);function re(e){return e!==null&&e<-2}function Fe(e){return e!==null&&(e<0||e===32)}function we(e){return e===-2||e===-1||e===32}const bi=hn(new RegExp("\\p{P}|\\p{S}","u")),Sn=hn(/\s/);function hn(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Jn(e){const t=[];let n=-1,r=0,i=0;for(;++n<e.length;){const a=e.charCodeAt(n);let o="";if(a===37&&ct(e.charCodeAt(n+1))&&ct(e.charCodeAt(n+2)))i=2;else if(a<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(a))||(o=String.fromCharCode(a));else if(a>55295&&a<57344){const s=e.charCodeAt(n+1);a<56320&&s>56319&&s<57344?(o=String.fromCharCode(a,s),i=1):o="�"}else o=String.fromCharCode(a);o&&(t.push(e.slice(r,n),encodeURIComponent(o)),r=n+i+1,o=""),i&&(n+=i,i=0)}return t.join("")+e.slice(r)}function Ae(e,t,n,r){const i=r?r-1:Number.POSITIVE_INFINITY;let a=0;return o;function o(l){return we(l)?(e.enter(n),s(l)):t(l)}function s(l){return we(l)&&a++<i?(e.consume(l),s):(e.exit(n),t(l))}}const ib={tokenize:ob};function ob(e){const t=e.attempt(this.parser.constructs.contentInitial,r,i);let n;return t;function r(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),Ae(e,t,"linePrefix")}function i(s){return e.enter("paragraph"),a(s)}function a(s){const l=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=l),n=l,o(s)}function o(s){if(s===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(s);return}return re(s)?(e.consume(s),e.exit("chunkText"),a):(e.consume(s),o)}}const ab={tokenize:sb},Rs={tokenize:lb};function sb(e){const t=this,n=[];let r=0,i,a,o;return s;function s(S){if(r<n.length){const P=n[r];return t.containerState=P[1],e.attempt(P[0].continuation,l,u)(S)}return u(S)}function l(S){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,i&&x();const P=t.events.length;let j=P,C;for(;j--;)if(t.events[j][0]==="exit"&&t.events[j][1].type==="chunkFlow"){C=t.events[j][1].end;break}y(r);let E=P;for(;E<t.events.length;)t.events[E][1].end={...C},E++;return St(t.events,j+1,0,t.events.slice(P)),t.events.length=E,u(S)}return s(S)}function u(S){if(r===n.length){if(!i)return p(S);if(i.currentConstruct&&i.currentConstruct.concrete)return h(S);t.interrupt=!!(i.currentConstruct&&!i._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(Rs,c,d)(S)}function c(S){return i&&x(),y(r),p(S)}function d(S){return t.parser.lazy[t.now().line]=r!==n.length,o=t.now().offset,h(S)}function p(S){return t.containerState={},e.attempt(Rs,m,h)(S)}function m(S){return r++,n.push([t.currentConstruct,t.containerState]),p(S)}function h(S){if(S===null){i&&x(),y(0),e.consume(S);return}return i=i||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:i,contentType:"flow",previous:a}),g(S)}function g(S){if(S===null){b(e.exit("chunkFlow"),!0),y(0),e.consume(S);return}return re(S)?(e.consume(S),b(e.exit("chunkFlow")),r=0,t.interrupt=void 0,s):(e.consume(S),g)}function b(S,P){const j=t.sliceStream(S);if(P&&j.push(null),S.previous=a,a&&(a.next=S),a=S,i.defineSkip(S.start),i.write(j),t.parser.lazy[S.start.line]){let C=i.events.length;for(;C--;)if(i.events[C][1].start.offset<o&&(!i.events[C][1].end||i.events[C][1].end.offset>o))return;const E=t.events.length;let R=E,M,k;for(;R--;)if(t.events[R][0]==="exit"&&t.events[R][1].type==="chunkFlow"){if(M){k=t.events[R][1].end;break}M=!0}for(y(r),C=E;C<t.events.length;)t.events[C][1].end={...k},C++;St(t.events,R+1,0,t.events.slice(E)),t.events.length=C}}function y(S){let P=n.length;for(;P-- >S;){const j=n[P];t.containerState=j[1],j[0].exit.call(t,e)}n.length=S}function x(){i.write([null]),a=void 0,i=void 0,t.containerState._closeFlow=void 0}}function lb(e,t,n){return Ae(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Fn(e){if(e===null||Fe(e)||Sn(e))return 1;if(bi(e))return 2}function yi(e,t,n){const r=[];let i=-1;for(;++i<e.length;){const a=e[i].resolveAll;a&&!r.includes(a)&&(t=a(t,n),r.push(a))}return t}const Eo={name:"attention",resolveAll:ub,tokenize:cb};function ub(e,t){let n=-1,r,i,a,o,s,l,u,c;for(;++n<e.length;)if(e[n][0]==="enter"&&e[n][1].type==="attentionSequence"&&e[n][1]._close){for(r=n;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;l=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const d={...e[r][1].end},p={...e[n][1].start};Ls(d,-l),Ls(p,l),o={type:l>1?"strongSequence":"emphasisSequence",start:d,end:{...e[r][1].end}},s={type:l>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:p},a={type:l>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},i={type:l>1?"strong":"emphasis",start:{...o.start},end:{...s.end}},e[r][1].end={...o.start},e[n][1].start={...s.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=Et(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=Et(u,[["enter",i,t],["enter",o,t],["exit",o,t],["enter",a,t]]),u=Et(u,yi(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),u=Et(u,[["exit",a,t],["enter",s,t],["exit",s,t],["exit",i,t]]),e[n][1].end.offset-e[n][1].start.offset?(c=2,u=Et(u,[["enter",e[n][1],t],["exit",e[n][1],t]])):c=0,St(e,r-1,n-r+3,u),n=r+u.length-c-2;break}}for(n=-1;++n<e.length;)e[n][1].type==="attentionSequence"&&(e[n][1].type="data");return e}function cb(e,t){const n=this.parser.constructs.attentionMarkers.null,r=this.previous,i=Fn(r);let a;return o;function o(l){return a=l,e.enter("attentionSequence"),s(l)}function s(l){if(l===a)return e.consume(l),s;const u=e.exit("attentionSequence"),c=Fn(l),d=!c||c===2&&i||n.includes(l),p=!i||i===2&&c||n.includes(r);return u._open=!!(a===42?d:d&&(i||!p)),u._close=!!(a===42?p:p&&(c||!d)),t(l)}}function Ls(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const db={name:"autolink",tokenize:fb};function fb(e,t,n){let r=0;return i;function i(m){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(m),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),a}function a(m){return pt(m)?(e.consume(m),o):m===64?n(m):u(m)}function o(m){return m===43||m===45||m===46||ct(m)?(r=1,s(m)):u(m)}function s(m){return m===58?(e.consume(m),r=0,l):(m===43||m===45||m===46||ct(m))&&r++<32?(e.consume(m),s):(r=0,u(m))}function l(m){return m===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(m),e.exit("autolinkMarker"),e.exit("autolink"),t):m===null||m===32||m===60||ti(m)?n(m):(e.consume(m),l)}function u(m){return m===64?(e.consume(m),c):tb(m)?(e.consume(m),u):n(m)}function c(m){return ct(m)?d(m):n(m)}function d(m){return m===46?(e.consume(m),r=0,c):m===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(m),e.exit("autolinkMarker"),e.exit("autolink"),t):p(m)}function p(m){if((m===45||ct(m))&&r++<63){const h=m===45?p:d;return e.consume(m),h}return n(m)}}const wr={partial:!0,tokenize:mb};function mb(e,t,n){return r;function r(a){return we(a)?Ae(e,i,"linePrefix")(a):i(a)}function i(a){return a===null||re(a)?t(a):n(a)}}const Pc={continuation:{tokenize:hb},exit:gb,name:"blockQuote",tokenize:pb};function pb(e,t,n){const r=this;return i;function i(o){if(o===62){const s=r.containerState;return s.open||(e.enter("blockQuote",{_container:!0}),s.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(o),e.exit("blockQuoteMarker"),a}return n(o)}function a(o){return we(o)?(e.enter("blockQuotePrefixWhitespace"),e.consume(o),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(o))}}function hb(e,t,n){const r=this;return i;function i(o){return we(o)?Ae(e,a,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o):a(o)}function a(o){return e.attempt(Pc,t,n)(o)}}function gb(e){e.exit("blockQuote")}const jc={name:"characterEscape",tokenize:bb};function bb(e,t,n){return r;function r(a){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(a),e.exit("escapeMarker"),i}function i(a){return rb(a)?(e.enter("characterEscapeValue"),e.consume(a),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(a)}}const Nc={name:"characterReference",tokenize:yb};function yb(e,t,n){const r=this;let i=0,a,o;return s;function s(d){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),l}function l(d){return d===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(d),e.exit("characterReferenceMarkerNumeric"),u):(e.enter("characterReferenceValue"),a=31,o=ct,c(d))}function u(d){return d===88||d===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(d),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),a=6,o=nb,c):(e.enter("characterReferenceValue"),a=7,o=Ao,c(d))}function c(d){if(d===59&&i){const p=e.exit("characterReferenceValue");return o===ct&&!aa(r.sliceSerialize(p))?n(d):(e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return o(d)&&i++<a?(e.consume(d),c):n(d)}}const Os={partial:!0,tokenize:xb},Fs={concrete:!0,name:"codeFenced",tokenize:vb};function vb(e,t,n){const r=this,i={partial:!0,tokenize:j};let a=0,o=0,s;return l;function l(C){return u(C)}function u(C){const E=r.events[r.events.length-1];return a=E&&E[1].type==="linePrefix"?E[2].sliceSerialize(E[1],!0).length:0,s=C,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),c(C)}function c(C){return C===s?(o++,e.consume(C),c):o<3?n(C):(e.exit("codeFencedFenceSequence"),we(C)?Ae(e,d,"whitespace")(C):d(C))}function d(C){return C===null||re(C)?(e.exit("codeFencedFence"),r.interrupt?t(C):e.check(Os,g,P)(C)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),p(C))}function p(C){return C===null||re(C)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),d(C)):we(C)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),Ae(e,m,"whitespace")(C)):C===96&&C===s?n(C):(e.consume(C),p)}function m(C){return C===null||re(C)?d(C):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),h(C))}function h(C){return C===null||re(C)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),d(C)):C===96&&C===s?n(C):(e.consume(C),h)}function g(C){return e.attempt(i,P,b)(C)}function b(C){return e.enter("lineEnding"),e.consume(C),e.exit("lineEnding"),y}function y(C){return a>0&&we(C)?Ae(e,x,"linePrefix",a+1)(C):x(C)}function x(C){return C===null||re(C)?e.check(Os,g,P)(C):(e.enter("codeFlowValue"),S(C))}function S(C){return C===null||re(C)?(e.exit("codeFlowValue"),x(C)):(e.consume(C),S)}function P(C){return e.exit("codeFenced"),t(C)}function j(C,E,R){let M=0;return k;function k(F){return C.enter("lineEnding"),C.consume(F),C.exit("lineEnding"),N}function N(F){return C.enter("codeFencedFence"),we(F)?Ae(C,T,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(F):T(F)}function T(F){return F===s?(C.enter("codeFencedFenceSequence"),V(F)):R(F)}function V(F){return F===s?(M++,C.consume(F),V):M>=o?(C.exit("codeFencedFenceSequence"),we(F)?Ae(C,O,"whitespace")(F):O(F)):R(F)}function O(F){return F===null||re(F)?(C.exit("codeFencedFence"),E(F)):R(F)}}}function xb(e,t,n){const r=this;return i;function i(o){return o===null?n(o):(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),a)}function a(o){return r.parser.lazy[r.now().line]?n(o):t(o)}}const Gi={name:"codeIndented",tokenize:kb},wb={partial:!0,tokenize:Sb};function kb(e,t,n){const r=this;return i;function i(u){return e.enter("codeIndented"),Ae(e,a,"linePrefix",5)(u)}function a(u){const c=r.events[r.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?o(u):n(u)}function o(u){return u===null?l(u):re(u)?e.attempt(wb,o,l)(u):(e.enter("codeFlowValue"),s(u))}function s(u){return u===null||re(u)?(e.exit("codeFlowValue"),o(u)):(e.consume(u),s)}function l(u){return e.exit("codeIndented"),t(u)}}function Sb(e,t,n){const r=this;return i;function i(o){return r.parser.lazy[r.now().line]?n(o):re(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),i):Ae(e,a,"linePrefix",5)(o)}function a(o){const s=r.events[r.events.length-1];return s&&s[1].type==="linePrefix"&&s[2].sliceSerialize(s[1],!0).length>=4?t(o):re(o)?i(o):n(o)}}const Cb={name:"codeText",previous:Ab,resolve:zb,tokenize:Eb};function zb(e){let t=e.length-4,n=3,r,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r<t;)if(e[r][1].type==="codeTextData"){e[n][1].type="codeTextPadding",e[t][1].type="codeTextPadding",n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)i===void 0?r!==t&&e[r][1].type!=="lineEnding"&&(i=r):(r===t||e[r][1].type==="lineEnding")&&(e[i][1].type="codeTextData",r!==i+2&&(e[i][1].end=e[r-1][1].end,e.splice(i+2,r-i-2),t-=r-i-2,r=i+2),i=void 0);return e}function Ab(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function Eb(e,t,n){let r=0,i,a;return o;function o(d){return e.enter("codeText"),e.enter("codeTextSequence"),s(d)}function s(d){return d===96?(e.consume(d),r++,s):(e.exit("codeTextSequence"),l(d))}function l(d){return d===null?n(d):d===32?(e.enter("space"),e.consume(d),e.exit("space"),l):d===96?(a=e.enter("codeTextSequence"),i=0,c(d)):re(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),l):(e.enter("codeTextData"),u(d))}function u(d){return d===null||d===32||d===96||re(d)?(e.exit("codeTextData"),l(d)):(e.consume(d),u)}function c(d){return d===96?(e.consume(d),i++,c):i===r?(e.exit("codeTextSequence"),e.exit("codeText"),t(d)):(a.type="codeTextData",u(d))}}class Pb{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,n){const r=n??Number.POSITIVE_INFINITY;return r<this.left.length?this.left.slice(t,r):t>this.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const i=n||0;this.setCursor(Math.trunc(t));const a=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return r&&er(this.left,r),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),er(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),er(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const n=this.left.splice(t,Number.POSITIVE_INFINITY);er(this.right,n.reverse())}else{const n=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);er(this.left,n.reverse())}}}function er(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function Tc(e){const t={};let n=-1,r,i,a,o,s,l,u;const c=new Pb(e);for(;++n<c.length;){for(;n in t;)n=t[n];if(r=c.get(n),n&&r[1].type==="chunkFlow"&&c.get(n-1)[1].type==="listItemPrefix"&&(l=r[1]._tokenizer.events,a=0,a<l.length&&l[a][1].type==="lineEndingBlank"&&(a+=2),a<l.length&&l[a][1].type==="content"))for(;++a<l.length&&l[a][1].type!=="content";)l[a][1].type==="chunkText"&&(l[a][1]._isInFirstContentOfListItem=!0,a++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,jb(c,n)),n=t[n],u=!0);else if(r[1]._container){for(a=n,i=void 0;a--;)if(o=c.get(a),o[1].type==="lineEnding"||o[1].type==="lineEndingBlank")o[0]==="enter"&&(i&&(c.get(i)[1].type="lineEndingBlank"),o[1].type="lineEnding",i=a);else if(!(o[1].type==="linePrefix"||o[1].type==="listItemIndent"))break;i&&(r[1].end={...c.get(i)[1].start},s=c.slice(i,n),s.unshift(r),c.splice(i,n-i+1,s))}}return St(e,0,Number.POSITIVE_INFINITY,c.slice(0)),!u}function jb(e,t){const n=e.get(t)[1],r=e.get(t)[2];let i=t-1;const a=[];let o=n._tokenizer;o||(o=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(o._contentTypeTextTrailing=!0));const s=o.events,l=[],u={};let c,d,p=-1,m=n,h=0,g=0;const b=[g];for(;m;){for(;e.get(++i)[1]!==m;);a.push(i),m._tokenizer||(c=r.sliceStream(m),m.next||c.push(null),d&&o.defineSkip(m.start),m._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=!0),o.write(c),m._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=void 0)),d=m,m=m.next}for(m=n;++p<s.length;)s[p][0]==="exit"&&s[p-1][0]==="enter"&&s[p][1].type===s[p-1][1].type&&s[p][1].start.line!==s[p][1].end.line&&(g=p+1,b.push(g),m._tokenizer=void 0,m.previous=void 0,m=m.next);for(o.events=[],m?(m._tokenizer=void 0,m.previous=void 0):b.pop(),p=b.length;p--;){const y=s.slice(b[p],b[p+1]),x=a.pop();l.push([x,x+y.length-1]),e.splice(x,2,y)}for(l.reverse(),p=-1;++p<l.length;)u[h+l[p][0]]=h+l[p][1],h+=l[p][1]-l[p][0]-1;return u}const Nb={resolve:Mb,tokenize:Ib},Tb={partial:!0,tokenize:Db};function Mb(e){return Tc(e),e}function Ib(e,t){let n;return r;function r(s){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),i(s)}function i(s){return s===null?a(s):re(s)?e.check(Tb,o,a)(s):(e.consume(s),i)}function a(s){return e.exit("chunkContent"),e.exit("content"),t(s)}function o(s){return e.consume(s),e.exit("chunkContent"),n.next=e.enter("chunkContent",{contentType:"content",previous:n}),n=n.next,i}}function Db(e,t,n){const r=this;return i;function i(o){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),Ae(e,a,"linePrefix")}function a(o){if(o===null||re(o))return n(o);const s=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes("codeIndented")&&s&&s[1].type==="linePrefix"&&s[2].sliceSerialize(s[1],!0).length>=4?t(o):e.interrupt(r.parser.constructs.flow,n,t)(o)}}function Mc(e,t,n,r,i,a,o,s,l){const u=l||Number.POSITIVE_INFINITY;let c=0;return d;function d(y){return y===60?(e.enter(r),e.enter(i),e.enter(a),e.consume(y),e.exit(a),p):y===null||y===32||y===41||ti(y)?n(y):(e.enter(r),e.enter(o),e.enter(s),e.enter("chunkString",{contentType:"string"}),g(y))}function p(y){return y===62?(e.enter(a),e.consume(y),e.exit(a),e.exit(i),e.exit(r),t):(e.enter(s),e.enter("chunkString",{contentType:"string"}),m(y))}function m(y){return y===62?(e.exit("chunkString"),e.exit(s),p(y)):y===null||y===60||re(y)?n(y):(e.consume(y),y===92?h:m)}function h(y){return y===60||y===62||y===92?(e.consume(y),m):m(y)}function g(y){return!c&&(y===null||y===41||Fe(y))?(e.exit("chunkString"),e.exit(s),e.exit(o),e.exit(r),t(y)):c<u&&y===40?(e.consume(y),c++,g):y===41?(e.consume(y),c--,g):y===null||y===32||y===40||ti(y)?n(y):(e.consume(y),y===92?b:g)}function b(y){return y===40||y===41||y===92?(e.consume(y),g):g(y)}}function Ic(e,t,n,r,i,a){const o=this;let s=0,l;return u;function u(m){return e.enter(r),e.enter(i),e.consume(m),e.exit(i),e.enter(a),c}function c(m){return s>999||m===null||m===91||m===93&&!l||m===94&&!s&&"_hiddenFootnoteSupport"in o.parser.constructs?n(m):m===93?(e.exit(a),e.enter(i),e.consume(m),e.exit(i),e.exit(r),t):re(m)?(e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),d(m))}function d(m){return m===null||m===91||m===93||re(m)||s++>999?(e.exit("chunkString"),c(m)):(e.consume(m),l||(l=!we(m)),m===92?p:d)}function p(m){return m===91||m===92||m===93?(e.consume(m),s++,d):d(m)}}function Dc(e,t,n,r,i,a){let o;return s;function s(p){return p===34||p===39||p===40?(e.enter(r),e.enter(i),e.consume(p),e.exit(i),o=p===40?41:p,l):n(p)}function l(p){return p===o?(e.enter(i),e.consume(p),e.exit(i),e.exit(r),t):(e.enter(a),u(p))}function u(p){return p===o?(e.exit(a),l(o)):p===null?n(p):re(p)?(e.enter("lineEnding"),e.consume(p),e.exit("lineEnding"),Ae(e,u,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(p))}function c(p){return p===o||p===null||re(p)?(e.exit("chunkString"),u(p)):(e.consume(p),p===92?d:c)}function d(p){return p===o||p===92?(e.consume(p),c):c(p)}}function lr(e,t){let n;return r;function r(i){return re(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,r):we(i)?Ae(e,r,n?"linePrefix":"lineSuffix")(i):t(i)}}const Rb={name:"definition",tokenize:Ob},Lb={partial:!0,tokenize:Fb};function Ob(e,t,n){const r=this;let i;return a;function a(m){return e.enter("definition"),o(m)}function o(m){return Ic.call(r,e,s,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(m)}function s(m){return i=Nt(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),m===58?(e.enter("definitionMarker"),e.consume(m),e.exit("definitionMarker"),l):n(m)}function l(m){return Fe(m)?lr(e,u)(m):u(m)}function u(m){return Mc(e,c,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(m)}function c(m){return e.attempt(Lb,d,d)(m)}function d(m){return we(m)?Ae(e,p,"whitespace")(m):p(m)}function p(m){return m===null||re(m)?(e.exit("definition"),r.parser.defined.push(i),t(m)):n(m)}}function Fb(e,t,n){return r;function r(s){return Fe(s)?lr(e,i)(s):n(s)}function i(s){return Dc(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(s)}function a(s){return we(s)?Ae(e,o,"whitespace")(s):o(s)}function o(s){return s===null||re(s)?t(s):n(s)}}const Bb={name:"hardBreakEscape",tokenize:Wb};function Wb(e,t,n){return r;function r(a){return e.enter("hardBreakEscape"),e.consume(a),i}function i(a){return re(a)?(e.exit("hardBreakEscape"),t(a)):n(a)}}const qb={name:"headingAtx",resolve:Vb,tokenize:Jb};function Vb(e,t){let n=e.length-2,r=3,i,a;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(i={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},a={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},St(e,r,n-r+1,[["enter",i,t],["enter",a,t],["exit",a,t],["exit",i,t]])),e}function Jb(e,t,n){let r=0;return i;function i(c){return e.enter("atxHeading"),a(c)}function a(c){return e.enter("atxHeadingSequence"),o(c)}function o(c){return c===35&&r++<6?(e.consume(c),o):c===null||Fe(c)?(e.exit("atxHeadingSequence"),s(c)):n(c)}function s(c){return c===35?(e.enter("atxHeadingSequence"),l(c)):c===null||re(c)?(e.exit("atxHeading"),t(c)):we(c)?Ae(e,s,"whitespace")(c):(e.enter("atxHeadingText"),u(c))}function l(c){return c===35?(e.consume(c),l):(e.exit("atxHeadingSequence"),s(c))}function u(c){return c===null||c===35||Fe(c)?(e.exit("atxHeadingText"),s(c)):(e.consume(c),u)}}const Hb=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Bs=["pre","script","style","textarea"],Ub={concrete:!0,name:"htmlFlow",resolveTo:Gb,tokenize:Kb},Xb={partial:!0,tokenize:Yb},Zb={partial:!0,tokenize:Qb};function Gb(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function Kb(e,t,n){const r=this;let i,a,o,s,l;return u;function u(z){return c(z)}function c(z){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(z),d}function d(z){return z===33?(e.consume(z),p):z===47?(e.consume(z),a=!0,g):z===63?(e.consume(z),i=3,r.interrupt?t:w):pt(z)?(e.consume(z),o=String.fromCharCode(z),b):n(z)}function p(z){return z===45?(e.consume(z),i=2,m):z===91?(e.consume(z),i=5,s=0,h):pt(z)?(e.consume(z),i=4,r.interrupt?t:w):n(z)}function m(z){return z===45?(e.consume(z),r.interrupt?t:w):n(z)}function h(z){const Me="CDATA[";return z===Me.charCodeAt(s++)?(e.consume(z),s===Me.length?r.interrupt?t:T:h):n(z)}function g(z){return pt(z)?(e.consume(z),o=String.fromCharCode(z),b):n(z)}function b(z){if(z===null||z===47||z===62||Fe(z)){const Me=z===47,We=o.toLowerCase();return!Me&&!a&&Bs.includes(We)?(i=1,r.interrupt?t(z):T(z)):Hb.includes(o.toLowerCase())?(i=6,Me?(e.consume(z),y):r.interrupt?t(z):T(z)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(z):a?x(z):S(z))}return z===45||ct(z)?(e.consume(z),o+=String.fromCharCode(z),b):n(z)}function y(z){return z===62?(e.consume(z),r.interrupt?t:T):n(z)}function x(z){return we(z)?(e.consume(z),x):k(z)}function S(z){return z===47?(e.consume(z),k):z===58||z===95||pt(z)?(e.consume(z),P):we(z)?(e.consume(z),S):k(z)}function P(z){return z===45||z===46||z===58||z===95||ct(z)?(e.consume(z),P):j(z)}function j(z){return z===61?(e.consume(z),C):we(z)?(e.consume(z),j):S(z)}function C(z){return z===null||z===60||z===61||z===62||z===96?n(z):z===34||z===39?(e.consume(z),l=z,E):we(z)?(e.consume(z),C):R(z)}function E(z){return z===l?(e.consume(z),l=null,M):z===null||re(z)?n(z):(e.consume(z),E)}function R(z){return z===null||z===34||z===39||z===47||z===60||z===61||z===62||z===96||Fe(z)?j(z):(e.consume(z),R)}function M(z){return z===47||z===62||we(z)?S(z):n(z)}function k(z){return z===62?(e.consume(z),N):n(z)}function N(z){return z===null||re(z)?T(z):we(z)?(e.consume(z),N):n(z)}function T(z){return z===45&&i===2?(e.consume(z),B):z===60&&i===1?(e.consume(z),Z):z===62&&i===4?(e.consume(z),se):z===63&&i===3?(e.consume(z),w):z===93&&i===5?(e.consume(z),K):re(z)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(Xb,Ee,V)(z)):z===null||re(z)?(e.exit("htmlFlowData"),V(z)):(e.consume(z),T)}function V(z){return e.check(Zb,O,Ee)(z)}function O(z){return e.enter("lineEnding"),e.consume(z),e.exit("lineEnding"),F}function F(z){return z===null||re(z)?V(z):(e.enter("htmlFlowData"),T(z))}function B(z){return z===45?(e.consume(z),w):T(z)}function Z(z){return z===47?(e.consume(z),o="",X):T(z)}function X(z){if(z===62){const Me=o.toLowerCase();return Bs.includes(Me)?(e.consume(z),se):T(z)}return pt(z)&&o.length<8?(e.consume(z),o+=String.fromCharCode(z),X):T(z)}function K(z){return z===93?(e.consume(z),w):T(z)}function w(z){return z===62?(e.consume(z),se):z===45&&i===2?(e.consume(z),w):T(z)}function se(z){return z===null||re(z)?(e.exit("htmlFlowData"),Ee(z)):(e.consume(z),se)}function Ee(z){return e.exit("htmlFlow"),t(z)}}function Qb(e,t,n){const r=this;return i;function i(o){return re(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),a):n(o)}function a(o){return r.parser.lazy[r.now().line]?n(o):t(o)}}function Yb(e,t,n){return r;function r(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(wr,t,n)}}const _b={name:"htmlText",tokenize:$b};function $b(e,t,n){const r=this;let i,a,o;return s;function s(w){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(w),l}function l(w){return w===33?(e.consume(w),u):w===47?(e.consume(w),j):w===63?(e.consume(w),S):pt(w)?(e.consume(w),R):n(w)}function u(w){return w===45?(e.consume(w),c):w===91?(e.consume(w),a=0,h):pt(w)?(e.consume(w),x):n(w)}function c(w){return w===45?(e.consume(w),m):n(w)}function d(w){return w===null?n(w):w===45?(e.consume(w),p):re(w)?(o=d,Z(w)):(e.consume(w),d)}function p(w){return w===45?(e.consume(w),m):d(w)}function m(w){return w===62?B(w):w===45?p(w):d(w)}function h(w){const se="CDATA[";return w===se.charCodeAt(a++)?(e.consume(w),a===se.length?g:h):n(w)}function g(w){return w===null?n(w):w===93?(e.consume(w),b):re(w)?(o=g,Z(w)):(e.consume(w),g)}function b(w){return w===93?(e.consume(w),y):g(w)}function y(w){return w===62?B(w):w===93?(e.consume(w),y):g(w)}function x(w){return w===null||w===62?B(w):re(w)?(o=x,Z(w)):(e.consume(w),x)}function S(w){return w===null?n(w):w===63?(e.consume(w),P):re(w)?(o=S,Z(w)):(e.consume(w),S)}function P(w){return w===62?B(w):S(w)}function j(w){return pt(w)?(e.consume(w),C):n(w)}function C(w){return w===45||ct(w)?(e.consume(w),C):E(w)}function E(w){return re(w)?(o=E,Z(w)):we(w)?(e.consume(w),E):B(w)}function R(w){return w===45||ct(w)?(e.consume(w),R):w===47||w===62||Fe(w)?M(w):n(w)}function M(w){return w===47?(e.consume(w),B):w===58||w===95||pt(w)?(e.consume(w),k):re(w)?(o=M,Z(w)):we(w)?(e.consume(w),M):B(w)}function k(w){return w===45||w===46||w===58||w===95||ct(w)?(e.consume(w),k):N(w)}function N(w){return w===61?(e.consume(w),T):re(w)?(o=N,Z(w)):we(w)?(e.consume(w),N):M(w)}function T(w){return w===null||w===60||w===61||w===62||w===96?n(w):w===34||w===39?(e.consume(w),i=w,V):re(w)?(o=T,Z(w)):we(w)?(e.consume(w),T):(e.consume(w),O)}function V(w){return w===i?(e.consume(w),i=void 0,F):w===null?n(w):re(w)?(o=V,Z(w)):(e.consume(w),V)}function O(w){return w===null||w===34||w===39||w===60||w===61||w===96?n(w):w===47||w===62||Fe(w)?M(w):(e.consume(w),O)}function F(w){return w===47||w===62||Fe(w)?M(w):n(w)}function B(w){return w===62?(e.consume(w),e.exit("htmlTextData"),e.exit("htmlText"),t):n(w)}function Z(w){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(w),e.exit("lineEnding"),X}function X(w){return we(w)?Ae(e,K,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(w):K(w)}function K(w){return e.enter("htmlTextData"),o(w)}}const sa={name:"labelEnd",resolveAll:ry,resolveTo:iy,tokenize:oy},ey={tokenize:ay},ty={tokenize:sy},ny={tokenize:ly};function ry(e){let t=-1;const n=[];for(;++t<e.length;){const r=e[t][1];if(n.push(e[t]),r.type==="labelImage"||r.type==="labelLink"||r.type==="labelEnd"){const i=r.type==="labelImage"?4:2;r.type="data",t+=i}}return e.length!==n.length&&St(e,0,e.length,n),e}function iy(e,t){let n=e.length,r=0,i,a,o,s;for(;n--;)if(i=e[n][1],a){if(i.type==="link"||i.type==="labelLink"&&i._inactive)break;e[n][0]==="enter"&&i.type==="labelLink"&&(i._inactive=!0)}else if(o){if(e[n][0]==="enter"&&(i.type==="labelImage"||i.type==="labelLink")&&!i._balanced&&(a=n,i.type!=="labelLink")){r=2;break}}else i.type==="labelEnd"&&(o=n);const l={type:e[a][1].type==="labelLink"?"link":"image",start:{...e[a][1].start},end:{...e[e.length-1][1].end}},u={type:"label",start:{...e[a][1].start},end:{...e[o][1].end}},c={type:"labelText",start:{...e[a+r+2][1].end},end:{...e[o-2][1].start}};return s=[["enter",l,t],["enter",u,t]],s=Et(s,e.slice(a+1,a+r+3)),s=Et(s,[["enter",c,t]]),s=Et(s,yi(t.parser.constructs.insideSpan.null,e.slice(a+r+4,o-3),t)),s=Et(s,[["exit",c,t],e[o-2],e[o-1],["exit",u,t]]),s=Et(s,e.slice(o+1)),s=Et(s,[["exit",l,t]]),St(e,a,e.length,s),e}function oy(e,t,n){const r=this;let i=r.events.length,a,o;for(;i--;)if((r.events[i][1].type==="labelImage"||r.events[i][1].type==="labelLink")&&!r.events[i][1]._balanced){a=r.events[i][1];break}return s;function s(p){return a?a._inactive?d(p):(o=r.parser.defined.includes(Nt(r.sliceSerialize({start:a.end,end:r.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(p),e.exit("labelMarker"),e.exit("labelEnd"),l):n(p)}function l(p){return p===40?e.attempt(ey,c,o?c:d)(p):p===91?e.attempt(ty,c,o?u:d)(p):o?c(p):d(p)}function u(p){return e.attempt(ny,c,d)(p)}function c(p){return t(p)}function d(p){return a._balanced=!0,n(p)}}function ay(e,t,n){return r;function r(d){return e.enter("resource"),e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),i}function i(d){return Fe(d)?lr(e,a)(d):a(d)}function a(d){return d===41?c(d):Mc(e,o,s,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(d)}function o(d){return Fe(d)?lr(e,l)(d):c(d)}function s(d){return n(d)}function l(d){return d===34||d===39||d===40?Dc(e,u,n,"resourceTitle","resourceTitleMarker","resourceTitleString")(d):c(d)}function u(d){return Fe(d)?lr(e,c)(d):c(d)}function c(d){return d===41?(e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),e.exit("resource"),t):n(d)}}function sy(e,t,n){const r=this;return i;function i(s){return Ic.call(r,e,a,o,"reference","referenceMarker","referenceString")(s)}function a(s){return r.parser.defined.includes(Nt(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(s):n(s)}function o(s){return n(s)}}function ly(e,t,n){return r;function r(a){return e.enter("reference"),e.enter("referenceMarker"),e.consume(a),e.exit("referenceMarker"),i}function i(a){return a===93?(e.enter("referenceMarker"),e.consume(a),e.exit("referenceMarker"),e.exit("reference"),t):n(a)}}const uy={name:"labelStartImage",resolveAll:sa.resolveAll,tokenize:cy};function cy(e,t,n){const r=this;return i;function i(s){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(s),e.exit("labelImageMarker"),a}function a(s){return s===91?(e.enter("labelMarker"),e.consume(s),e.exit("labelMarker"),e.exit("labelImage"),o):n(s)}function o(s){return s===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(s):t(s)}}const dy={name:"labelStartLink",resolveAll:sa.resolveAll,tokenize:fy};function fy(e,t,n){const r=this;return i;function i(o){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(o),e.exit("labelMarker"),e.exit("labelLink"),a}function a(o){return o===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(o):t(o)}}const Ki={name:"lineEnding",tokenize:my};function my(e,t){return n;function n(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),Ae(e,t,"linePrefix")}}const Zr={name:"thematicBreak",tokenize:py};function py(e,t,n){let r=0,i;return a;function a(u){return e.enter("thematicBreak"),o(u)}function o(u){return i=u,s(u)}function s(u){return u===i?(e.enter("thematicBreakSequence"),l(u)):r>=3&&(u===null||re(u))?(e.exit("thematicBreak"),t(u)):n(u)}function l(u){return u===i?(e.consume(u),r++,l):(e.exit("thematicBreakSequence"),we(u)?Ae(e,s,"whitespace")(u):s(u))}}const gt={continuation:{tokenize:yy},exit:xy,name:"list",tokenize:by},hy={partial:!0,tokenize:wy},gy={partial:!0,tokenize:vy};function by(e,t,n){const r=this,i=r.events[r.events.length-1];let a=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,o=0;return s;function s(m){const h=r.containerState.type||(m===42||m===43||m===45?"listUnordered":"listOrdered");if(h==="listUnordered"?!r.containerState.marker||m===r.containerState.marker:Ao(m)){if(r.containerState.type||(r.containerState.type=h,e.enter(h,{_container:!0})),h==="listUnordered")return e.enter("listItemPrefix"),m===42||m===45?e.check(Zr,n,u)(m):u(m);if(!r.interrupt||m===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),l(m)}return n(m)}function l(m){return Ao(m)&&++o<10?(e.consume(m),l):(!r.interrupt||o<2)&&(r.containerState.marker?m===r.containerState.marker:m===41||m===46)?(e.exit("listItemValue"),u(m)):n(m)}function u(m){return e.enter("listItemMarker"),e.consume(m),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||m,e.check(wr,r.interrupt?n:c,e.attempt(hy,p,d))}function c(m){return r.containerState.initialBlankLine=!0,a++,p(m)}function d(m){return we(m)?(e.enter("listItemPrefixWhitespace"),e.consume(m),e.exit("listItemPrefixWhitespace"),p):n(m)}function p(m){return r.containerState.size=a+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(m)}}function yy(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(wr,i,a);function i(s){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,Ae(e,t,"listItemIndent",r.containerState.size+1)(s)}function a(s){return r.containerState.furtherBlankLines||!we(s)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,o(s)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(gy,t,o)(s))}function o(s){return r.containerState._closeFlow=!0,r.interrupt=void 0,Ae(e,e.attempt(gt,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s)}}function vy(e,t,n){const r=this;return Ae(e,i,"listItemIndent",r.containerState.size+1);function i(a){const o=r.events[r.events.length-1];return o&&o[1].type==="listItemIndent"&&o[2].sliceSerialize(o[1],!0).length===r.containerState.size?t(a):n(a)}}function xy(e){e.exit(this.containerState.type)}function wy(e,t,n){const r=this;return Ae(e,i,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(a){const o=r.events[r.events.length-1];return!we(a)&&o&&o[1].type==="listItemPrefixWhitespace"?t(a):n(a)}}const Ws={name:"setextUnderline",resolveTo:ky,tokenize:Sy};function ky(e,t){let n=e.length,r,i,a;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!a&&e[n][1].type==="definition"&&(a=n);const o={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",a?(e.splice(i,0,["enter",o,t]),e.splice(a+1,0,["exit",e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=o,e.push(["exit",o,t]),e}function Sy(e,t,n){const r=this;let i;return a;function a(u){let c=r.events.length,d;for(;c--;)if(r.events[c][1].type!=="lineEnding"&&r.events[c][1].type!=="linePrefix"&&r.events[c][1].type!=="content"){d=r.events[c][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||d)?(e.enter("setextHeadingLine"),i=u,o(u)):n(u)}function o(u){return e.enter("setextHeadingLineSequence"),s(u)}function s(u){return u===i?(e.consume(u),s):(e.exit("setextHeadingLineSequence"),we(u)?Ae(e,l,"lineSuffix")(u):l(u))}function l(u){return u===null||re(u)?(e.exit("setextHeadingLine"),t(u)):n(u)}}const Cy={tokenize:zy};function zy(e){const t=this,n=e.attempt(wr,r,e.attempt(this.parser.constructs.flowInitial,i,Ae(e,e.attempt(this.parser.constructs.flow,i,e.attempt(Nb,i)),"linePrefix")));return n;function r(a){if(a===null){e.consume(a);return}return e.enter("lineEndingBlank"),e.consume(a),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function i(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const Ay={resolveAll:Lc()},Ey=Rc("string"),Py=Rc("text");function Rc(e){return{resolveAll:Lc(e==="text"?jy:void 0),tokenize:t};function t(n){const r=this,i=this.parser.constructs[e],a=n.attempt(i,o,s);return o;function o(c){return u(c)?a(c):s(c)}function s(c){if(c===null){n.consume(c);return}return n.enter("data"),n.consume(c),l}function l(c){return u(c)?(n.exit("data"),a(c)):(n.consume(c),l)}function u(c){if(c===null)return!0;const d=i[c];let p=-1;if(d)for(;++p<d.length;){const m=d[p];if(!m.previous||m.previous.call(r,r.previous))return!0}return!1}}}function Lc(e){return t;function t(n,r){let i=-1,a;for(;++i<=n.length;)a===void 0?n[i]&&n[i][1].type==="data"&&(a=i,i++):(!n[i]||n[i][1].type!=="data")&&(i!==a+2&&(n[a][1].end=n[i-1][1].end,n.splice(a+2,i-a-2),i=a+2),a=void 0);return e?e(n,r):n}}function jy(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type==="lineEnding")&&e[n-1][1].type==="data"){const r=e[n-1][1],i=t.sliceStream(r);let a=i.length,o=-1,s=0,l;for(;a--;){const u=i[a];if(typeof u=="string"){for(o=u.length;u.charCodeAt(o-1)===32;)s++,o--;if(o)break;o=-1}else if(u===-2)l=!0,s++;else if(u!==-1){a++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(s=0),s){const u={type:n===e.length||l||s<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:a?o:r.start._bufferIndex+o,_index:r.start._index+a,line:r.end.line,column:r.end.column-s,offset:r.end.offset-s},end:{...r.end}};r.end={...u.start},r.start.offset===r.end.offset?Object.assign(r,u):(e.splice(n,0,["enter",u,t],["exit",u,t]),n+=2)}n++}return e}const Ny={42:gt,43:gt,45:gt,48:gt,49:gt,50:gt,51:gt,52:gt,53:gt,54:gt,55:gt,56:gt,57:gt,62:Pc},Ty={91:Rb},My={[-2]:Gi,[-1]:Gi,32:Gi},Iy={35:qb,42:Zr,45:[Ws,Zr],60:Ub,61:Ws,95:Zr,96:Fs,126:Fs},Dy={38:Nc,92:jc},Ry={[-5]:Ki,[-4]:Ki,[-3]:Ki,33:uy,38:Nc,42:Eo,60:[db,_b],91:dy,92:[Bb,jc],93:sa,95:Eo,96:Cb},Ly={null:[Eo,Ay]},Oy={null:[42,95]},Fy={null:[]},By=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:Oy,contentInitial:Ty,disable:Fy,document:Ny,flow:Iy,flowInitial:My,insideSpan:Ly,string:Dy,text:Ry},Symbol.toStringTag,{value:"Module"}));function Wy(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0};const i={},a=[];let o=[],s=[];const l={attempt:E(j),check:E(C),consume:x,enter:S,exit:P,interrupt:E(C,{interrupt:!0})},u={code:null,containerState:{},defineSkip:g,events:[],now:h,parser:e,previous:null,sliceSerialize:p,sliceStream:m,write:d};let c=t.tokenize.call(u,l);return t.resolveAll&&a.push(t),u;function d(N){return o=Et(o,N),b(),o[o.length-1]!==null?[]:(R(t,0),u.events=yi(a,u.events,u),u.events)}function p(N,T){return Vy(m(N),T)}function m(N){return qy(o,N)}function h(){const{_bufferIndex:N,_index:T,line:V,column:O,offset:F}=r;return{_bufferIndex:N,_index:T,line:V,column:O,offset:F}}function g(N){i[N.line]=N.column,k()}function b(){let N;for(;r._index<o.length;){const T=o[r._index];if(typeof T=="string")for(N=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===N&&r._bufferIndex<T.length;)y(T.charCodeAt(r._bufferIndex));else y(T)}}function y(N){c=c(N)}function x(N){re(N)?(r.line++,r.column=1,r.offset+=N===-3?2:1,k()):N!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===o[r._index].length&&(r._bufferIndex=-1,r._index++)),u.previous=N}function S(N,T){const V=T||{};return V.type=N,V.start=h(),u.events.push(["enter",V,u]),s.push(V),V}function P(N){const T=s.pop();return T.end=h(),u.events.push(["exit",T,u]),T}function j(N,T){R(N,T.from)}function C(N,T){T.restore()}function E(N,T){return V;function V(O,F,B){let Z,X,K,w;return Array.isArray(O)?Ee(O):"tokenize"in O?Ee([O]):se(O);function se(Te){return Re;function Re(Pe){const le=Pe!==null&&Te[Pe],Ce=Pe!==null&&Te.null,Q=[...Array.isArray(le)?le:le?[le]:[],...Array.isArray(Ce)?Ce:Ce?[Ce]:[]];return Ee(Q)(Pe)}}function Ee(Te){return Z=Te,X=0,Te.length===0?B:z(Te[X])}function z(Te){return Re;function Re(Pe){return w=M(),K=Te,Te.partial||(u.currentConstruct=Te),Te.name&&u.parser.constructs.disable.null.includes(Te.name)?We():Te.tokenize.call(T?Object.assign(Object.create(u),T):u,l,Me,We)(Pe)}}function Me(Te){return N(K,w),F}function We(Te){return w.restore(),++X<Z.length?z(Z[X]):B}}}function R(N,T){N.resolveAll&&!a.includes(N)&&a.push(N),N.resolve&&St(u.events,T,u.events.length-T,N.resolve(u.events.slice(T),u)),N.resolveTo&&(u.events=N.resolveTo(u.events,u))}function M(){const N=h(),T=u.previous,V=u.currentConstruct,O=u.events.length,F=Array.from(s);return{from:O,restore:B};function B(){r=N,u.previous=T,u.currentConstruct=V,u.events.length=O,s=F,k()}}function k(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}}function qy(e,t){const n=t.start._index,r=t.start._bufferIndex,i=t.end._index,a=t.end._bufferIndex;let o;if(n===i)o=[e[n].slice(r,a)];else{if(o=e.slice(n,i),r>-1){const s=o[0];typeof s=="string"?o[0]=s.slice(r):o.shift()}a>0&&o.push(e[i].slice(0,a))}return o}function Vy(e,t){let n=-1;const r=[];let i;for(;++n<e.length;){const a=e[n];let o;if(typeof a=="string")o=a;else switch(a){case-5:{o="\r";break}case-4:{o=`
269
269
  `;break}case-3:{o=`\r
270
- `;break}case-2:{o=t?" ":" ";break}case-1:{if(!t&&i)continue;o=" ";break}default:o=String.fromCharCode(a)}i=a===-2,r.push(o)}return r.join("")}function Jy(e){const r={constructs:Ac([By,...(e||{}).extensions||[]]),content:i(ib),defined:[],document:i(ab),flow:i(Cy),lazy:{},string:i(Ey),text:i(Py)};return r;function i(a){return o;function o(s){return Wy(r,a,s)}}}function Hy(e){for(;!Tc(e););return e}const qs=/[\0\t\n\r]/g;function Uy(){let e=1,t="",n=!0,r;return i;function i(a,o,s){const l=[];let u,c,d,p,m;for(a=t+(typeof a=="string"?a.toString():new TextDecoder(o||void 0).decode(a)),d=0,t="",n&&(a.charCodeAt(0)===65279&&d++,n=void 0);d<a.length;){if(qs.lastIndex=d,u=qs.exec(a),p=u&&u.index!==void 0?u.index:a.length,m=a.charCodeAt(p),!u){t=a.slice(d);break}if(m===10&&d===p&&r)l.push(-3),r=void 0;else switch(r&&(l.push(-5),r=void 0),d<p&&(l.push(a.slice(d,p)),e+=p-d),m){case 0:{l.push(65533),e++;break}case 9:{for(c=Math.ceil(e/4)*4,l.push(-2);e++<c;)l.push(-1);break}case 10:{l.push(-4),e=1;break}default:r=!0,e=1}d=p+1}return s&&(r&&l.push(-5),t&&l.push(t),l.push(null)),l}}const Xy=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Zy(e){return e.replace(Xy,Gy)}function Gy(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const i=n.charCodeAt(1),a=i===120||i===88;return Ec(n.slice(a?2:1),a?16:10)}return aa(n)||e}const Oc={}.hasOwnProperty;function Ky(e,t,n){return typeof t!="string"&&(n=t,t=void 0),Qy(n)(Hy(Jy(n).document().write(Uy()(e,t,!0))))}function Qy(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:a(xe),autolinkProtocol:M,autolinkEmail:M,atxHeading:a(Oe),blockQuote:a(Ce),characterEscape:M,characterReference:M,codeFenced:a(Q),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:a(Q,o),codeText:a(U,o),codeTextData:M,data:M,codeFlowValue:M,definition:a(ee),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:a(fe),hardBreakEscape:a(pe),hardBreakTrailing:a(pe),htmlFlow:a(Qe,o),htmlFlowData:M,htmlText:a(Qe,o),htmlTextData:M,image:a(Se),label:o,link:a(xe),listItem:a(ie),listItemValue:p,listOrdered:a(Ze,d),listUnordered:a(Ze),paragraph:a(me),reference:z,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:a(Oe),strong:a(de),thematicBreak:a(Je)},exit:{atxHeading:l(),atxHeadingSequence:j,autolink:l(),autolinkEmail:le,autolinkProtocol:Pe,blockQuote:l(),characterEscapeValue:k,characterReferenceMarkerHexadecimal:We,characterReferenceMarkerNumeric:We,characterReferenceValue:Te,characterReference:Re,codeFenced:l(b),codeFencedFence:g,codeFencedFenceInfo:m,codeFencedFenceMeta:h,codeFlowValue:k,codeIndented:l(y),codeText:l(F),codeTextData:k,data:k,definition:l(),definitionDestinationString:P,definitionLabelString:x,definitionTitleString:S,emphasis:l(),hardBreakEscape:l(T),hardBreakTrailing:l(T),htmlFlow:l(V),htmlFlowData:k,htmlText:l(O),htmlTextData:k,image:l(Z),label:K,labelText:X,lineEnding:N,link:l(B),listItem:l(),listOrdered:l(),listUnordered:l(),paragraph:l(),referenceString:Me,resourceDestinationString:w,resourceTitleString:se,resource:Ee,setextHeading:l(R),setextHeadingLineSequence:E,setextHeadingText:C,strong:l(),thematicBreak:l()}};Fc(t,(e||{}).mdastExtensions||[]);const n={};return r;function r(D){let W={type:"root",children:[]};const ne={stack:[W],tokenStack:[],config:t,enter:s,exit:u,buffer:o,resume:c,data:n},te=[];let _=-1;for(;++_<D.length;)if(D[_][1].type==="listOrdered"||D[_][1].type==="listUnordered")if(D[_][0]==="enter")te.push(_);else{const ze=te.pop();_=i(D,ze,_)}for(_=-1;++_<D.length;){const ze=t[D[_][0]];Oc.call(ze,D[_][1].type)&&ze[D[_][1].type].call(Object.assign({sliceSerialize:D[_][2].sliceSerialize},ne),D[_][1])}if(ne.tokenStack.length>0){const ze=ne.tokenStack[ne.tokenStack.length-1];(ze[1]||Vs).call(ne,void 0,ze[0])}for(W.position={start:an(D.length>0?D[0][1].start:{line:1,column:1,offset:0}),end:an(D.length>0?D[D.length-2][1].end:{line:1,column:1,offset:0})},_=-1;++_<t.transforms.length;)W=t.transforms[_](W)||W;return W}function i(D,W,ne){let te=W-1,_=-1,ze=!1,Ye,at,jt,ft;for(;++te<=ne;){const tt=D[te];switch(tt[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{tt[0]==="enter"?_++:_--,ft=void 0;break}case"lineEndingBlank":{tt[0]==="enter"&&(Ye&&!ft&&!_&&!jt&&(jt=te),ft=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:ft=void 0}if(!_&&tt[0]==="enter"&&tt[1].type==="listItemPrefix"||_===-1&&tt[0]==="exit"&&(tt[1].type==="listUnordered"||tt[1].type==="listOrdered")){if(Ye){let Dt=te;for(at=void 0;Dt--;){const rt=D[Dt];if(rt[1].type==="lineEnding"||rt[1].type==="lineEndingBlank"){if(rt[0]==="exit")continue;at&&(D[at][1].type="lineEndingBlank",ze=!0),rt[1].type="lineEnding",at=Dt}else if(!(rt[1].type==="linePrefix"||rt[1].type==="blockQuotePrefix"||rt[1].type==="blockQuotePrefixWhitespace"||rt[1].type==="blockQuoteMarker"||rt[1].type==="listItemIndent"))break}jt&&(!at||jt<at)&&(Ye._spread=!0),Ye.end=Object.assign({},at?D[at][1].start:tt[1].end),D.splice(at||te,0,["exit",Ye,tt[2]]),te++,ne++}if(tt[1].type==="listItemPrefix"){const Dt={type:"listItem",_spread:!1,start:Object.assign({},tt[1].start),end:void 0};Ye=Dt,D.splice(te,0,["enter",Dt,tt[2]]),te++,ne++,jt=void 0,ft=!0}}}return D[W][1]._spread=ze,ne}function a(D,W){return ne;function ne(te){s.call(this,D(te),te),W&&W.call(this,te)}}function o(){this.stack.push({type:"fragment",children:[]})}function s(D,W,ne){this.stack[this.stack.length-1].children.push(D),this.stack.push(D),this.tokenStack.push([W,ne||void 0]),D.position={start:an(W.start),end:void 0}}function l(D){return W;function W(ne){D&&D.call(this,ne),u.call(this,ne)}}function u(D,W){const ne=this.stack.pop(),te=this.tokenStack.pop();if(te)te[0].type!==D.type&&(W?W.call(this,D,te[0]):(te[1]||Vs).call(this,D,te[0]));else throw new Error("Cannot close `"+D.type+"` ("+sr({start:D.start,end:D.end})+"): it’s not open");ne.position.end=an(D.end)}function c(){return oa(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function p(D){if(this.data.expectingFirstListItemValue){const W=this.stack[this.stack.length-2];W.start=Number.parseInt(this.sliceSerialize(D),10),this.data.expectingFirstListItemValue=void 0}}function m(){const D=this.resume(),W=this.stack[this.stack.length-1];W.lang=D}function h(){const D=this.resume(),W=this.stack[this.stack.length-1];W.meta=D}function g(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function b(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function y(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D.replace(/(\r?\n|\r)$/g,"")}function x(D){const W=this.resume(),ne=this.stack[this.stack.length-1];ne.label=W,ne.identifier=Nt(this.sliceSerialize(D)).toLowerCase()}function S(){const D=this.resume(),W=this.stack[this.stack.length-1];W.title=D}function P(){const D=this.resume(),W=this.stack[this.stack.length-1];W.url=D}function j(D){const W=this.stack[this.stack.length-1];if(!W.depth){const ne=this.sliceSerialize(D).length;W.depth=ne}}function C(){this.data.setextHeadingSlurpLineEnding=!0}function E(D){const W=this.stack[this.stack.length-1];W.depth=this.sliceSerialize(D).codePointAt(0)===61?1:2}function R(){this.data.setextHeadingSlurpLineEnding=void 0}function M(D){const ne=this.stack[this.stack.length-1].children;let te=ne[ne.length-1];(!te||te.type!=="text")&&(te=Ve(),te.position={start:an(D.start),end:void 0},ne.push(te)),this.stack.push(te)}function k(D){const W=this.stack.pop();W.value+=this.sliceSerialize(D),W.position.end=an(D.end)}function N(D){const W=this.stack[this.stack.length-1];if(this.data.atHardBreak){const ne=W.children[W.children.length-1];ne.position.end=an(D.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(W.type)&&(M.call(this,D),k.call(this,D))}function T(){this.data.atHardBreak=!0}function V(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D}function O(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D}function F(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D}function B(){const D=this.stack[this.stack.length-1];if(this.data.inReference){const W=this.data.referenceType||"shortcut";D.type+="Reference",D.referenceType=W,delete D.url,delete D.title}else delete D.identifier,delete D.label;this.data.referenceType=void 0}function Z(){const D=this.stack[this.stack.length-1];if(this.data.inReference){const W=this.data.referenceType||"shortcut";D.type+="Reference",D.referenceType=W,delete D.url,delete D.title}else delete D.identifier,delete D.label;this.data.referenceType=void 0}function X(D){const W=this.sliceSerialize(D),ne=this.stack[this.stack.length-2];ne.label=Zy(W),ne.identifier=Nt(W).toLowerCase()}function K(){const D=this.stack[this.stack.length-1],W=this.resume(),ne=this.stack[this.stack.length-1];if(this.data.inReference=!0,ne.type==="link"){const te=D.children;ne.children=te}else ne.alt=W}function w(){const D=this.resume(),W=this.stack[this.stack.length-1];W.url=D}function se(){const D=this.resume(),W=this.stack[this.stack.length-1];W.title=D}function Ee(){this.data.inReference=void 0}function z(){this.data.referenceType="collapsed"}function Me(D){const W=this.resume(),ne=this.stack[this.stack.length-1];ne.label=W,ne.identifier=Nt(this.sliceSerialize(D)).toLowerCase(),this.data.referenceType="full"}function We(D){this.data.characterReferenceType=D.type}function Te(D){const W=this.sliceSerialize(D),ne=this.data.characterReferenceType;let te;ne?(te=Ec(W,ne==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):te=aa(W);const _=this.stack[this.stack.length-1];_.value+=te}function Re(D){const W=this.stack.pop();W.position.end=an(D.end)}function Pe(D){k.call(this,D);const W=this.stack[this.stack.length-1];W.url=this.sliceSerialize(D)}function le(D){k.call(this,D);const W=this.stack[this.stack.length-1];W.url="mailto:"+this.sliceSerialize(D)}function Ce(){return{type:"blockquote",children:[]}}function Q(){return{type:"code",lang:null,meta:null,value:""}}function U(){return{type:"inlineCode",value:""}}function ee(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function fe(){return{type:"emphasis",children:[]}}function Oe(){return{type:"heading",depth:0,children:[]}}function pe(){return{type:"break"}}function Qe(){return{type:"html",value:""}}function Se(){return{type:"image",title:null,url:"",alt:null}}function xe(){return{type:"link",title:null,url:"",children:[]}}function Ze(D){return{type:"list",ordered:D.type==="listOrdered",start:null,spread:D._spread,children:[]}}function ie(D){return{type:"listItem",spread:D._spread,checked:null,children:[]}}function me(){return{type:"paragraph",children:[]}}function de(){return{type:"strong",children:[]}}function Ve(){return{type:"text",value:""}}function Je(){return{type:"thematicBreak"}}}function an(e){return{line:e.line,column:e.column,offset:e.offset}}function Fc(e,t){let n=-1;for(;++n<t.length;){const r=t[n];Array.isArray(r)?Fc(e,r):Yy(e,r)}}function Yy(e,t){let n;for(n in t)if(Oc.call(t,n))switch(n){case"canContainEols":{const r=t[n];r&&e[n].push(...r);break}case"transforms":{const r=t[n];r&&e[n].push(...r);break}case"enter":case"exit":{const r=t[n];r&&Object.assign(e[n],r);break}}}function Vs(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+sr({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+sr({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+sr({start:t.start,end:t.end})+") is still open")}function _y(e){const t=this;t.parser=n;function n(r){return Ky(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function $y(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function ev(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
270
+ `;break}case-2:{o=t?" ":" ";break}case-1:{if(!t&&i)continue;o=" ";break}default:o=String.fromCharCode(a)}i=a===-2,r.push(o)}return r.join("")}function Jy(e){const r={constructs:Ac([By,...(e||{}).extensions||[]]),content:i(ib),defined:[],document:i(ab),flow:i(Cy),lazy:{},string:i(Ey),text:i(Py)};return r;function i(a){return o;function o(s){return Wy(r,a,s)}}}function Hy(e){for(;!Tc(e););return e}const qs=/[\0\t\n\r]/g;function Uy(){let e=1,t="",n=!0,r;return i;function i(a,o,s){const l=[];let u,c,d,p,m;for(a=t+(typeof a=="string"?a.toString():new TextDecoder(o||void 0).decode(a)),d=0,t="",n&&(a.charCodeAt(0)===65279&&d++,n=void 0);d<a.length;){if(qs.lastIndex=d,u=qs.exec(a),p=u&&u.index!==void 0?u.index:a.length,m=a.charCodeAt(p),!u){t=a.slice(d);break}if(m===10&&d===p&&r)l.push(-3),r=void 0;else switch(r&&(l.push(-5),r=void 0),d<p&&(l.push(a.slice(d,p)),e+=p-d),m){case 0:{l.push(65533),e++;break}case 9:{for(c=Math.ceil(e/4)*4,l.push(-2);e++<c;)l.push(-1);break}case 10:{l.push(-4),e=1;break}default:r=!0,e=1}d=p+1}return s&&(r&&l.push(-5),t&&l.push(t),l.push(null)),l}}const Xy=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Zy(e){return e.replace(Xy,Gy)}function Gy(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const i=n.charCodeAt(1),a=i===120||i===88;return Ec(n.slice(a?2:1),a?16:10)}return aa(n)||e}const Oc={}.hasOwnProperty;function Ky(e,t,n){return typeof t!="string"&&(n=t,t=void 0),Qy(n)(Hy(Jy(n).document().write(Uy()(e,t,!0))))}function Qy(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:a(xe),autolinkProtocol:M,autolinkEmail:M,atxHeading:a(Oe),blockQuote:a(Ce),characterEscape:M,characterReference:M,codeFenced:a(Q),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:a(Q,o),codeText:a(U,o),codeTextData:M,data:M,codeFlowValue:M,definition:a(ee),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:a(me),hardBreakEscape:a(de),hardBreakTrailing:a(de),htmlFlow:a(Qe,o),htmlFlowData:M,htmlText:a(Qe,o),htmlTextData:M,image:a(Se),label:o,link:a(xe),listItem:a(ie),listItemValue:p,listOrdered:a(Ze,d),listUnordered:a(Ze),paragraph:a(pe),reference:z,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:a(Oe),strong:a(fe),thematicBreak:a(Je)},exit:{atxHeading:l(),atxHeadingSequence:j,autolink:l(),autolinkEmail:le,autolinkProtocol:Pe,blockQuote:l(),characterEscapeValue:k,characterReferenceMarkerHexadecimal:We,characterReferenceMarkerNumeric:We,characterReferenceValue:Te,characterReference:Re,codeFenced:l(b),codeFencedFence:g,codeFencedFenceInfo:m,codeFencedFenceMeta:h,codeFlowValue:k,codeIndented:l(y),codeText:l(F),codeTextData:k,data:k,definition:l(),definitionDestinationString:P,definitionLabelString:x,definitionTitleString:S,emphasis:l(),hardBreakEscape:l(T),hardBreakTrailing:l(T),htmlFlow:l(V),htmlFlowData:k,htmlText:l(O),htmlTextData:k,image:l(Z),label:K,labelText:X,lineEnding:N,link:l(B),listItem:l(),listOrdered:l(),listUnordered:l(),paragraph:l(),referenceString:Me,resourceDestinationString:w,resourceTitleString:se,resource:Ee,setextHeading:l(R),setextHeadingLineSequence:E,setextHeadingText:C,strong:l(),thematicBreak:l()}};Fc(t,(e||{}).mdastExtensions||[]);const n={};return r;function r(D){let W={type:"root",children:[]};const ne={stack:[W],tokenStack:[],config:t,enter:s,exit:u,buffer:o,resume:c,data:n},te=[];let _=-1;for(;++_<D.length;)if(D[_][1].type==="listOrdered"||D[_][1].type==="listUnordered")if(D[_][0]==="enter")te.push(_);else{const ze=te.pop();_=i(D,ze,_)}for(_=-1;++_<D.length;){const ze=t[D[_][0]];Oc.call(ze,D[_][1].type)&&ze[D[_][1].type].call(Object.assign({sliceSerialize:D[_][2].sliceSerialize},ne),D[_][1])}if(ne.tokenStack.length>0){const ze=ne.tokenStack[ne.tokenStack.length-1];(ze[1]||Vs).call(ne,void 0,ze[0])}for(W.position={start:an(D.length>0?D[0][1].start:{line:1,column:1,offset:0}),end:an(D.length>0?D[D.length-2][1].end:{line:1,column:1,offset:0})},_=-1;++_<t.transforms.length;)W=t.transforms[_](W)||W;return W}function i(D,W,ne){let te=W-1,_=-1,ze=!1,Ye,at,jt,ft;for(;++te<=ne;){const tt=D[te];switch(tt[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{tt[0]==="enter"?_++:_--,ft=void 0;break}case"lineEndingBlank":{tt[0]==="enter"&&(Ye&&!ft&&!_&&!jt&&(jt=te),ft=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:ft=void 0}if(!_&&tt[0]==="enter"&&tt[1].type==="listItemPrefix"||_===-1&&tt[0]==="exit"&&(tt[1].type==="listUnordered"||tt[1].type==="listOrdered")){if(Ye){let Dt=te;for(at=void 0;Dt--;){const rt=D[Dt];if(rt[1].type==="lineEnding"||rt[1].type==="lineEndingBlank"){if(rt[0]==="exit")continue;at&&(D[at][1].type="lineEndingBlank",ze=!0),rt[1].type="lineEnding",at=Dt}else if(!(rt[1].type==="linePrefix"||rt[1].type==="blockQuotePrefix"||rt[1].type==="blockQuotePrefixWhitespace"||rt[1].type==="blockQuoteMarker"||rt[1].type==="listItemIndent"))break}jt&&(!at||jt<at)&&(Ye._spread=!0),Ye.end=Object.assign({},at?D[at][1].start:tt[1].end),D.splice(at||te,0,["exit",Ye,tt[2]]),te++,ne++}if(tt[1].type==="listItemPrefix"){const Dt={type:"listItem",_spread:!1,start:Object.assign({},tt[1].start),end:void 0};Ye=Dt,D.splice(te,0,["enter",Dt,tt[2]]),te++,ne++,jt=void 0,ft=!0}}}return D[W][1]._spread=ze,ne}function a(D,W){return ne;function ne(te){s.call(this,D(te),te),W&&W.call(this,te)}}function o(){this.stack.push({type:"fragment",children:[]})}function s(D,W,ne){this.stack[this.stack.length-1].children.push(D),this.stack.push(D),this.tokenStack.push([W,ne||void 0]),D.position={start:an(W.start),end:void 0}}function l(D){return W;function W(ne){D&&D.call(this,ne),u.call(this,ne)}}function u(D,W){const ne=this.stack.pop(),te=this.tokenStack.pop();if(te)te[0].type!==D.type&&(W?W.call(this,D,te[0]):(te[1]||Vs).call(this,D,te[0]));else throw new Error("Cannot close `"+D.type+"` ("+sr({start:D.start,end:D.end})+"): it’s not open");ne.position.end=an(D.end)}function c(){return oa(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function p(D){if(this.data.expectingFirstListItemValue){const W=this.stack[this.stack.length-2];W.start=Number.parseInt(this.sliceSerialize(D),10),this.data.expectingFirstListItemValue=void 0}}function m(){const D=this.resume(),W=this.stack[this.stack.length-1];W.lang=D}function h(){const D=this.resume(),W=this.stack[this.stack.length-1];W.meta=D}function g(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function b(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function y(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D.replace(/(\r?\n|\r)$/g,"")}function x(D){const W=this.resume(),ne=this.stack[this.stack.length-1];ne.label=W,ne.identifier=Nt(this.sliceSerialize(D)).toLowerCase()}function S(){const D=this.resume(),W=this.stack[this.stack.length-1];W.title=D}function P(){const D=this.resume(),W=this.stack[this.stack.length-1];W.url=D}function j(D){const W=this.stack[this.stack.length-1];if(!W.depth){const ne=this.sliceSerialize(D).length;W.depth=ne}}function C(){this.data.setextHeadingSlurpLineEnding=!0}function E(D){const W=this.stack[this.stack.length-1];W.depth=this.sliceSerialize(D).codePointAt(0)===61?1:2}function R(){this.data.setextHeadingSlurpLineEnding=void 0}function M(D){const ne=this.stack[this.stack.length-1].children;let te=ne[ne.length-1];(!te||te.type!=="text")&&(te=Ve(),te.position={start:an(D.start),end:void 0},ne.push(te)),this.stack.push(te)}function k(D){const W=this.stack.pop();W.value+=this.sliceSerialize(D),W.position.end=an(D.end)}function N(D){const W=this.stack[this.stack.length-1];if(this.data.atHardBreak){const ne=W.children[W.children.length-1];ne.position.end=an(D.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(W.type)&&(M.call(this,D),k.call(this,D))}function T(){this.data.atHardBreak=!0}function V(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D}function O(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D}function F(){const D=this.resume(),W=this.stack[this.stack.length-1];W.value=D}function B(){const D=this.stack[this.stack.length-1];if(this.data.inReference){const W=this.data.referenceType||"shortcut";D.type+="Reference",D.referenceType=W,delete D.url,delete D.title}else delete D.identifier,delete D.label;this.data.referenceType=void 0}function Z(){const D=this.stack[this.stack.length-1];if(this.data.inReference){const W=this.data.referenceType||"shortcut";D.type+="Reference",D.referenceType=W,delete D.url,delete D.title}else delete D.identifier,delete D.label;this.data.referenceType=void 0}function X(D){const W=this.sliceSerialize(D),ne=this.stack[this.stack.length-2];ne.label=Zy(W),ne.identifier=Nt(W).toLowerCase()}function K(){const D=this.stack[this.stack.length-1],W=this.resume(),ne=this.stack[this.stack.length-1];if(this.data.inReference=!0,ne.type==="link"){const te=D.children;ne.children=te}else ne.alt=W}function w(){const D=this.resume(),W=this.stack[this.stack.length-1];W.url=D}function se(){const D=this.resume(),W=this.stack[this.stack.length-1];W.title=D}function Ee(){this.data.inReference=void 0}function z(){this.data.referenceType="collapsed"}function Me(D){const W=this.resume(),ne=this.stack[this.stack.length-1];ne.label=W,ne.identifier=Nt(this.sliceSerialize(D)).toLowerCase(),this.data.referenceType="full"}function We(D){this.data.characterReferenceType=D.type}function Te(D){const W=this.sliceSerialize(D),ne=this.data.characterReferenceType;let te;ne?(te=Ec(W,ne==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):te=aa(W);const _=this.stack[this.stack.length-1];_.value+=te}function Re(D){const W=this.stack.pop();W.position.end=an(D.end)}function Pe(D){k.call(this,D);const W=this.stack[this.stack.length-1];W.url=this.sliceSerialize(D)}function le(D){k.call(this,D);const W=this.stack[this.stack.length-1];W.url="mailto:"+this.sliceSerialize(D)}function Ce(){return{type:"blockquote",children:[]}}function Q(){return{type:"code",lang:null,meta:null,value:""}}function U(){return{type:"inlineCode",value:""}}function ee(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function me(){return{type:"emphasis",children:[]}}function Oe(){return{type:"heading",depth:0,children:[]}}function de(){return{type:"break"}}function Qe(){return{type:"html",value:""}}function Se(){return{type:"image",title:null,url:"",alt:null}}function xe(){return{type:"link",title:null,url:"",children:[]}}function Ze(D){return{type:"list",ordered:D.type==="listOrdered",start:null,spread:D._spread,children:[]}}function ie(D){return{type:"listItem",spread:D._spread,checked:null,children:[]}}function pe(){return{type:"paragraph",children:[]}}function fe(){return{type:"strong",children:[]}}function Ve(){return{type:"text",value:""}}function Je(){return{type:"thematicBreak"}}}function an(e){return{line:e.line,column:e.column,offset:e.offset}}function Fc(e,t){let n=-1;for(;++n<t.length;){const r=t[n];Array.isArray(r)?Fc(e,r):Yy(e,r)}}function Yy(e,t){let n;for(n in t)if(Oc.call(t,n))switch(n){case"canContainEols":{const r=t[n];r&&e[n].push(...r);break}case"transforms":{const r=t[n];r&&e[n].push(...r);break}case"enter":case"exit":{const r=t[n];r&&Object.assign(e[n],r);break}}}function Vs(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+sr({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+sr({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+sr({start:t.start,end:t.end})+") is still open")}function _y(e){const t=this;t.parser=n;function n(r){return Ky(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function $y(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function ev(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
271
271
  `}]}function tv(e,t){const n=t.value?t.value+`
272
272
  `:"",r={};t.lang&&(r.className=["language-"+t.lang]);let i={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(i.data={meta:t.meta}),e.patch(t,i),i=e.applyData(t,i),i={type:"element",tagName:"pre",properties:{},children:[i]},e.patch(t,i),i}function nv(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function rv(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function iv(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),i=Jn(r.toLowerCase()),a=e.footnoteOrder.indexOf(r);let o,s=e.footnoteCounts.get(r);s===void 0?(s=0,e.footnoteOrder.push(r),o=e.footnoteOrder.length):o=a+1,s+=1,e.footnoteCounts.set(r,s);const l={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+i,id:n+"fnref-"+i+(s>1?"-"+s:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(o)}]};e.patch(t,l);const u={type:"element",tagName:"sup",properties:{},children:[l]};return e.patch(t,u),e.applyData(t,u)}function ov(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function av(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function Bc(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const i=e.all(t),a=i[0];a&&a.type==="text"?a.value="["+a.value:i.unshift({type:"text",value:"["});const o=i[i.length-1];return o&&o.type==="text"?o.value+=r:i.push({type:"text",value:r}),i}function sv(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return Bc(e,t);const i={src:Jn(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"img",properties:i,children:[]};return e.patch(t,a),e.applyData(t,a)}function lv(e,t){const n={src:Jn(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function uv(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function cv(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return Bc(e,t);const i={href:Jn(r.url||"")};r.title!==null&&r.title!==void 0&&(i.title=r.title);const a={type:"element",tagName:"a",properties:i,children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function dv(e,t){const n={href:Jn(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function fv(e,t,n){const r=e.all(t),i=n?mv(n):Wc(t),a={},o=[];if(typeof t.checked=="boolean"){const c=r[0];let d;c&&c.type==="element"&&c.tagName==="p"?d=c:(d={type:"element",tagName:"p",properties:{},children:[]},r.unshift(d)),d.children.length>0&&d.children.unshift({type:"text",value:" "}),d.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let s=-1;for(;++s<r.length;){const c=r[s];(i||s!==0||c.type!=="element"||c.tagName!=="p")&&o.push({type:"text",value:`
273
273
  `}),c.type==="element"&&c.tagName==="p"&&!i?o.push(...c.children):o.push(c)}const l=r[r.length-1];l&&(i||l.type!=="element"||l.tagName!=="p")&&o.push({type:"text",value:`
@@ -292,10 +292,10 @@ React keys must be passed directly to JSX without using spread:
292
292
  `))+1))}const o="#".repeat(i),s=n.enter("headingAtx"),l=n.enter("phrasing");a.move(o+" ");let u=n.containerPhrasing(e,{before:"# ",after:`
293
293
  `,...a.current()});return/^[\t ]/.test(u)&&(u=fr(u.charCodeAt(0))+u.slice(1)),u=u?o+" "+u:o,n.options.closeAtx&&(u+=" "+o),l(),s(),u}ed.peek=bw;function ed(e){return e.value||""}function bw(){return"<"}td.peek=yw;function td(e,t,n,r){const i=pa(n),a=i==='"'?"Quote":"Apostrophe",o=n.enter("image");let s=n.enter("label");const l=n.createTracker(r);let u=l.move("![");return u+=l.move(n.safe(e.alt,{before:u,after:"]",...l.current()})),u+=l.move("]("),s(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(s=n.enter("destinationLiteral"),u+=l.move("<"),u+=l.move(n.safe(e.url,{before:u,after:">",...l.current()})),u+=l.move(">")):(s=n.enter("destinationRaw"),u+=l.move(n.safe(e.url,{before:u,after:e.title?" ":")",...l.current()}))),s(),e.title&&(s=n.enter(`title${a}`),u+=l.move(" "+i),u+=l.move(n.safe(e.title,{before:u,after:i,...l.current()})),u+=l.move(i),s()),u+=l.move(")"),o(),u}function yw(){return"!"}nd.peek=vw;function nd(e,t,n,r){const i=e.referenceType,a=n.enter("imageReference");let o=n.enter("label");const s=n.createTracker(r);let l=s.move("![");const u=n.safe(e.alt,{before:l,after:"]",...s.current()});l+=s.move(u+"]["),o();const c=n.stack;n.stack=[],o=n.enter("reference");const d=n.safe(n.associationId(e),{before:l,after:"]",...s.current()});return o(),n.stack=c,a(),i==="full"||!u||u!==d?l+=s.move(d+"]"):i==="shortcut"?l=l.slice(0,-1):l+=s.move("]"),l}function vw(){return"!"}rd.peek=xw;function rd(e,t,n){let r=e.value||"",i="`",a=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++a<n.unsafe.length;){const o=n.unsafe[a],s=n.compilePattern(o);let l;if(o.atBreak)for(;l=s.exec(r);){let u=l.index;r.charCodeAt(u)===10&&r.charCodeAt(u-1)===13&&u--,r=r.slice(0,u)+" "+r.slice(l.index+1)}}return i+r+i}function xw(){return"`"}function id(e,t){const n=oa(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(n===e.url||"mailto:"+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}od.peek=ww;function od(e,t,n,r){const i=pa(n),a=i==='"'?"Quote":"Apostrophe",o=n.createTracker(r);let s,l;if(id(e,n)){const c=n.stack;n.stack=[],s=n.enter("autolink");let d=o.move("<");return d+=o.move(n.containerPhrasing(e,{before:d,after:">",...o.current()})),d+=o.move(">"),s(),n.stack=c,d}s=n.enter("link"),l=n.enter("label");let u=o.move("[");return u+=o.move(n.containerPhrasing(e,{before:u,after:"](",...o.current()})),u+=o.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),u+=o.move("<"),u+=o.move(n.safe(e.url,{before:u,after:">",...o.current()})),u+=o.move(">")):(l=n.enter("destinationRaw"),u+=o.move(n.safe(e.url,{before:u,after:e.title?" ":")",...o.current()}))),l(),e.title&&(l=n.enter(`title${a}`),u+=o.move(" "+i),u+=o.move(n.safe(e.title,{before:u,after:i,...o.current()})),u+=o.move(i),l()),u+=o.move(")"),s(),u}function ww(e,t,n){return id(e,n)?"<":"["}ad.peek=kw;function ad(e,t,n,r){const i=e.referenceType,a=n.enter("linkReference");let o=n.enter("label");const s=n.createTracker(r);let l=s.move("[");const u=n.containerPhrasing(e,{before:l,after:"]",...s.current()});l+=s.move(u+"]["),o();const c=n.stack;n.stack=[],o=n.enter("reference");const d=n.safe(n.associationId(e),{before:l,after:"]",...s.current()});return o(),n.stack=c,a(),i==="full"||!u||u!==d?l+=s.move(d+"]"):i==="shortcut"?l=l.slice(0,-1):l+=s.move("]"),l}function kw(){return"["}function ha(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function Sw(e){const t=ha(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function Cw(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function sd(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function zw(e,t,n,r){const i=n.enter("list"),a=n.bulletCurrent;let o=e.ordered?Cw(n):ha(n);const s=e.ordered?o==="."?")":".":Sw(n);let l=t&&n.bulletLastUsed?o===n.bulletLastUsed:!1;if(!e.ordered){const c=e.children?e.children[0]:void 0;if((o==="*"||o==="-")&&c&&(!c.children||!c.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(l=!0),sd(n)===o&&c){let d=-1;for(;++d<e.children.length;){const p=e.children[d];if(p&&p.type==="listItem"&&p.children&&p.children[0]&&p.children[0].type==="thematicBreak"){l=!0;break}}}}l&&(o=s),n.bulletCurrent=o;const u=n.containerFlow(e,r);return n.bulletLastUsed=o,n.bulletCurrent=a,i(),u}function Aw(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function Ew(e,t,n,r){const i=Aw(n);let a=n.bulletCurrent||ha(n);t&&t.type==="list"&&t.ordered&&(a=(typeof t.start=="number"&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+a);let o=a.length+1;(i==="tab"||i==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(o=Math.ceil(o/4)*4);const s=n.createTracker(r);s.move(a+" ".repeat(o-a.length)),s.shift(o);const l=n.enter("listItem"),u=n.indentLines(n.containerFlow(e,s.current()),c);return l(),u;function c(d,p,m){return p?(m?"":" ".repeat(o))+d:(m?a:a+" ".repeat(o-a.length))+d}}function Pw(e,t,n,r){const i=n.enter("paragraph"),a=n.enter("phrasing"),o=n.containerPhrasing(e,r);return a(),i(),o}const jw=xi(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function Nw(e,t,n,r){return(e.children.some(function(o){return jw(o)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function Tw(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}ld.peek=Mw;function ld(e,t,n,r){const i=Tw(n),a=n.enter("strong"),o=n.createTracker(r),s=o.move(i+i);let l=o.move(n.containerPhrasing(e,{after:i,before:s,...o.current()}));const u=l.charCodeAt(0),c=ii(r.before.charCodeAt(r.before.length-1),u,i);c.inside&&(l=fr(u)+l.slice(1));const d=l.charCodeAt(l.length-1),p=ii(r.after.charCodeAt(0),d,i);p.inside&&(l=l.slice(0,-1)+fr(d));const m=o.move(i+i);return a(),n.attentionEncodeSurroundingInfo={after:p.outside,before:c.outside},s+l+m}function Mw(e,t,n){return n.options.strong||"*"}function Iw(e,t,n,r){return n.safe(e.value,r)}function Dw(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function Rw(e,t,n){const r=(sd(n)+(n.options.ruleSpaces?" ":"")).repeat(Dw(n));return n.options.ruleSpaces?r.slice(0,-1):r}const ud={blockquote:iw,break:fl,code:cw,definition:fw,emphasis:$c,hardBreak:fl,heading:gw,html:ed,image:td,imageReference:nd,inlineCode:rd,link:od,linkReference:ad,list:zw,listItem:Ew,paragraph:Pw,root:Nw,strong:ld,text:Iw,thematicBreak:Rw};function Lw(){return{enter:{table:Ow,tableData:ml,tableHeader:ml,tableRow:Bw},exit:{codeText:Ww,table:Fw,tableData:ao,tableHeader:ao,tableRow:ao}}}function Ow(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function Fw(e){this.exit(e),this.data.inTable=void 0}function Bw(e){this.enter({type:"tableRow",children:[]},e)}function ao(e){this.exit(e)}function ml(e){this.enter({type:"tableCell",children:[]},e)}function Ww(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,qw));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function qw(e,t){return t==="|"?t:e}function Vw(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,a=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
294
294
  `,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:p,table:o,tableCell:l,tableRow:s}};function o(m,h,g,b){return u(c(m,g,b),m.align)}function s(m,h,g,b){const y=d(m,g,b),x=u([y]);return x.slice(0,x.indexOf(`
295
- `))}function l(m,h,g,b){const y=g.enter("tableCell"),x=g.enter("phrasing"),S=g.containerPhrasing(m,{...b,before:a,after:a});return x(),y(),S}function u(m,h){return nw(m,{align:h,alignDelimiters:r,padding:n,stringLength:i})}function c(m,h,g){const b=m.children;let y=-1;const x=[],S=h.enter("table");for(;++y<b.length;)x[y]=d(b[y],h,g);return S(),x}function d(m,h,g){const b=m.children;let y=-1;const x=[],S=h.enter("tableRow");for(;++y<b.length;)x[y]=l(b[y],m,h,g);return S(),x}function p(m,h,g){let b=ud.inlineCode(m,h,g);return g.stack.includes("tableCell")&&(b=b.replace(/\|/g,"\\$&")),b}}function Jw(){return{exit:{taskListCheckValueChecked:pl,taskListCheckValueUnchecked:pl,paragraph:Uw}}}function Hw(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:Xw}}}function pl(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function Uw(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const r=n.children[0];if(r&&r.type==="text"){const i=t.children;let a=-1,o;for(;++a<i.length;){const s=i[a];if(s.type==="paragraph"){o=s;break}}o===n&&(r.value=r.value.slice(1),r.value.length===0?n.children.shift():n.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,n.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function Xw(e,t,n,r){const i=e.children[0],a=typeof e.checked=="boolean"&&i&&i.type==="paragraph",o="["+(e.checked?"x":" ")+"] ",s=n.createTracker(r);a&&s.move(o);let l=ud.listItem(e,t,n,{...r,...s.current()});return a&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),l;function u(c){return c+o}}function Zw(){return[zx(),Xx(),Qx(),Lw(),Jw()]}function Gw(e){return{extensions:[Ax(),Zx(e),Yx(),Vw(e),Hw()]}}const Kw={tokenize:tk,partial:!0},cd={tokenize:nk,partial:!0},dd={tokenize:rk,partial:!0},fd={tokenize:ik,partial:!0},Qw={tokenize:ok,partial:!0},md={name:"wwwAutolink",tokenize:$w,previous:hd},pd={name:"protocolAutolink",tokenize:ek,previous:gd},$t={name:"emailAutolink",tokenize:_w,previous:bd},qt={};function Yw(){return{text:qt}}let yn=48;for(;yn<123;)qt[yn]=$t,yn++,yn===58?yn=65:yn===91&&(yn=97);qt[43]=$t;qt[45]=$t;qt[46]=$t;qt[95]=$t;qt[72]=[$t,pd];qt[104]=[$t,pd];qt[87]=[$t,md];qt[119]=[$t,md];function _w(e,t,n){const r=this;let i,a;return o;function o(d){return!Mo(d)||!bd.call(r,r.previous)||ga(r.events)?n(d):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),s(d))}function s(d){return Mo(d)?(e.consume(d),s):d===64?(e.consume(d),l):n(d)}function l(d){return d===46?e.check(Qw,c,u)(d):d===45||d===95||ct(d)?(a=!0,e.consume(d),l):c(d)}function u(d){return e.consume(d),i=!0,l}function c(d){return a&&i&&pt(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(d)):n(d)}}function $w(e,t,n){const r=this;return i;function i(o){return o!==87&&o!==119||!hd.call(r,r.previous)||ga(r.events)?n(o):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(Kw,e.attempt(cd,e.attempt(dd,a),n),n)(o))}function a(o){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(o)}}function ek(e,t,n){const r=this;let i="",a=!1;return o;function o(d){return(d===72||d===104)&&gd.call(r,r.previous)&&!ga(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),i+=String.fromCodePoint(d),e.consume(d),s):n(d)}function s(d){if(pt(d)&&i.length<5)return i+=String.fromCodePoint(d),e.consume(d),s;if(d===58){const p=i.toLowerCase();if(p==="http"||p==="https")return e.consume(d),l}return n(d)}function l(d){return d===47?(e.consume(d),a?u:(a=!0,l)):n(d)}function u(d){return d===null||ti(d)||Fe(d)||Sn(d)||bi(d)?n(d):e.attempt(cd,e.attempt(dd,c),n)(d)}function c(d){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(d)}}function tk(e,t,n){let r=0;return i;function i(o){return(o===87||o===119)&&r<3?(r++,e.consume(o),i):o===46&&r===3?(e.consume(o),a):n(o)}function a(o){return o===null?n(o):t(o)}}function nk(e,t,n){let r,i,a;return o;function o(u){return u===46||u===95?e.check(fd,l,s)(u):u===null||Fe(u)||Sn(u)||u!==45&&bi(u)?l(u):(a=!0,e.consume(u),o)}function s(u){return u===95?r=!0:(i=r,r=void 0),e.consume(u),o}function l(u){return i||r||!a?n(u):t(u)}}function rk(e,t){let n=0,r=0;return i;function i(o){return o===40?(n++,e.consume(o),i):o===41&&r<n?a(o):o===33||o===34||o===38||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===60||o===63||o===93||o===95||o===126?e.check(fd,t,a)(o):o===null||Fe(o)||Sn(o)?t(o):(e.consume(o),i)}function a(o){return o===41&&r++,e.consume(o),i}}function ik(e,t,n){return r;function r(s){return s===33||s===34||s===39||s===41||s===42||s===44||s===46||s===58||s===59||s===63||s===95||s===126?(e.consume(s),r):s===38?(e.consume(s),a):s===93?(e.consume(s),i):s===60||s===null||Fe(s)||Sn(s)?t(s):n(s)}function i(s){return s===null||s===40||s===91||Fe(s)||Sn(s)?t(s):r(s)}function a(s){return pt(s)?o(s):n(s)}function o(s){return s===59?(e.consume(s),r):pt(s)?(e.consume(s),o):n(s)}}function ok(e,t,n){return r;function r(a){return e.consume(a),i}function i(a){return ct(a)?n(a):t(a)}}function hd(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||Fe(e)}function gd(e){return!pt(e)}function bd(e){return!(e===47||Mo(e))}function Mo(e){return e===43||e===45||e===46||e===95||ct(e)}function ga(e){let t=e.length,n=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const ak={tokenize:pk,partial:!0};function sk(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:dk,continuation:{tokenize:fk},exit:mk}},text:{91:{name:"gfmFootnoteCall",tokenize:ck},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:lk,resolveTo:uk}}}}function lk(e,t,n){const r=this;let i=r.events.length;const a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o;for(;i--;){const l=r.events[i][1];if(l.type==="labelImage"){o=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return s;function s(l){if(!o||!o._balanced)return n(l);const u=Nt(r.sliceSerialize({start:o.end,end:r.now()}));return u.codePointAt(0)!==94||!a.includes(u.slice(1))?n(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function uk(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},o={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},s=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",i,t],["exit",i,t],["enter",a,t],["enter",o,t],["exit",o,t],["exit",a,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...s),e}function ck(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a=0,o;return s;function s(d){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),l}function l(d){return d!==94?n(d):(e.enter("gfmFootnoteCallMarker"),e.consume(d),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(d){if(a>999||d===93&&!o||d===null||d===91||Fe(d))return n(d);if(d===93){e.exit("chunkString");const p=e.exit("gfmFootnoteCallString");return i.includes(Nt(r.sliceSerialize(p)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(d)}return Fe(d)||(o=!0),a++,e.consume(d),d===92?c:u}function c(d){return d===91||d===92||d===93?(e.consume(d),a++,u):u(d)}}function dk(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a,o=0,s;return l;function l(h){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(h){return h===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",c):n(h)}function c(h){if(o>999||h===93&&!s||h===null||h===91||Fe(h))return n(h);if(h===93){e.exit("chunkString");const g=e.exit("gfmFootnoteDefinitionLabelString");return a=Nt(r.sliceSerialize(g)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),p}return Fe(h)||(s=!0),o++,e.consume(h),h===92?d:c}function d(h){return h===91||h===92||h===93?(e.consume(h),o++,c):c(h)}function p(h){return h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),i.includes(a)||i.push(a),Ae(e,m,"gfmFootnoteDefinitionWhitespace")):n(h)}function m(h){return t(h)}}function fk(e,t,n){return e.check(wr,t,e.attempt(ak,t,n))}function mk(e){e.exit("gfmFootnoteDefinition")}function pk(e,t,n){const r=this;return Ae(e,i,"gfmFootnoteDefinitionIndent",5);function i(a){const o=r.events[r.events.length-1];return o&&o[1].type==="gfmFootnoteDefinitionIndent"&&o[2].sliceSerialize(o[1],!0).length===4?t(a):n(a)}}function hk(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function i(o,s){let l=-1;for(;++l<o.length;)if(o[l][0]==="enter"&&o[l][1].type==="strikethroughSequenceTemporary"&&o[l][1]._close){let u=l;for(;u--;)if(o[u][0]==="exit"&&o[u][1].type==="strikethroughSequenceTemporary"&&o[u][1]._open&&o[l][1].end.offset-o[l][1].start.offset===o[u][1].end.offset-o[u][1].start.offset){o[l][1].type="strikethroughSequence",o[u][1].type="strikethroughSequence";const c={type:"strikethrough",start:Object.assign({},o[u][1].start),end:Object.assign({},o[l][1].end)},d={type:"strikethroughText",start:Object.assign({},o[u][1].end),end:Object.assign({},o[l][1].start)},p=[["enter",c,s],["enter",o[u][1],s],["exit",o[u][1],s],["enter",d,s]],m=s.parser.constructs.insideSpan.null;m&&St(p,p.length,0,yi(m,o.slice(u+1,l),s)),St(p,p.length,0,[["exit",d,s],["enter",o[l][1],s],["exit",o[l][1],s],["exit",c,s]]),St(o,u-1,l-u+3,p),l=u+p.length-2;break}}for(l=-1;++l<o.length;)o[l][1].type==="strikethroughSequenceTemporary"&&(o[l][1].type="data");return o}function a(o,s,l){const u=this.previous,c=this.events;let d=0;return p;function p(h){return u===126&&c[c.length-1][1].type!=="characterEscape"?l(h):(o.enter("strikethroughSequenceTemporary"),m(h))}function m(h){const g=Fn(u);if(h===126)return d>1?l(h):(o.consume(h),d++,m);if(d<2&&!n)return l(h);const b=o.exit("strikethroughSequenceTemporary"),y=Fn(h);return b._open=!y||y===2&&!!g,b._close=!g||g===2&&!!y,s(h)}}}class gk{constructor(){this.map=[]}add(t,n,r){bk(this,t,n,r)}consume(t){if(this.map.sort(function(a,o){return a[0]-o[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let i=r.pop();for(;i;){for(const a of i)t.push(a);i=r.pop()}this.map.length=0}}function bk(e,t,n,r){let i=0;if(!(n===0&&r.length===0)){for(;i<e.map.length;){if(e.map[i][0]===t){e.map[i][1]+=n,e.map[i][2].push(...r);return}i+=1}e.map.push([t,n,r])}}function yk(e,t){let n=!1;const r=[];for(;t<e.length;){const i=e[t];if(n){if(i[0]==="enter")i[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(i[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const a=r.length-1;r[a]=r[a]==="left"?"center":"right"}}else if(i[1].type==="tableDelimiterRow")break}else i[0]==="enter"&&i[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return r}function vk(){return{flow:{null:{name:"table",tokenize:xk,resolveAll:wk}}}}function xk(e,t,n){const r=this;let i=0,a=0,o;return s;function s(k){let N=r.events.length-1;for(;N>-1;){const O=r.events[N][1].type;if(O==="lineEnding"||O==="linePrefix")N--;else break}const T=N>-1?r.events[N][1].type:null,V=T==="tableHead"||T==="tableRow"?C:l;return V===C&&r.parser.lazy[r.now().line]?n(k):V(k)}function l(k){return e.enter("tableHead"),e.enter("tableRow"),u(k)}function u(k){return k===124||(o=!0,a+=1),c(k)}function c(k){return k===null?n(k):re(k)?a>1?(a=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(k),e.exit("lineEnding"),m):n(k):we(k)?Ae(e,c,"whitespace")(k):(a+=1,o&&(o=!1,i+=1),k===124?(e.enter("tableCellDivider"),e.consume(k),e.exit("tableCellDivider"),o=!0,c):(e.enter("data"),d(k)))}function d(k){return k===null||k===124||Fe(k)?(e.exit("data"),c(k)):(e.consume(k),k===92?p:d)}function p(k){return k===92||k===124?(e.consume(k),d):d(k)}function m(k){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(k):(e.enter("tableDelimiterRow"),o=!1,we(k)?Ae(e,h,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(k):h(k))}function h(k){return k===45||k===58?b(k):k===124?(o=!0,e.enter("tableCellDivider"),e.consume(k),e.exit("tableCellDivider"),g):j(k)}function g(k){return we(k)?Ae(e,b,"whitespace")(k):b(k)}function b(k){return k===58?(a+=1,o=!0,e.enter("tableDelimiterMarker"),e.consume(k),e.exit("tableDelimiterMarker"),y):k===45?(a+=1,y(k)):k===null||re(k)?P(k):j(k)}function y(k){return k===45?(e.enter("tableDelimiterFiller"),x(k)):j(k)}function x(k){return k===45?(e.consume(k),x):k===58?(o=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(k),e.exit("tableDelimiterMarker"),S):(e.exit("tableDelimiterFiller"),S(k))}function S(k){return we(k)?Ae(e,P,"whitespace")(k):P(k)}function P(k){return k===124?h(k):k===null||re(k)?!o||i!==a?j(k):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(k)):j(k)}function j(k){return n(k)}function C(k){return e.enter("tableRow"),E(k)}function E(k){return k===124?(e.enter("tableCellDivider"),e.consume(k),e.exit("tableCellDivider"),E):k===null||re(k)?(e.exit("tableRow"),t(k)):we(k)?Ae(e,E,"whitespace")(k):(e.enter("data"),R(k))}function R(k){return k===null||k===124||Fe(k)?(e.exit("data"),E(k)):(e.consume(k),k===92?M:R)}function M(k){return k===92||k===124?(e.consume(k),R):R(k)}}function wk(e,t){let n=-1,r=!0,i=0,a=[0,0,0,0],o=[0,0,0,0],s=!1,l=0,u,c,d;const p=new gk;for(;++n<e.length;){const m=e[n],h=m[1];m[0]==="enter"?h.type==="tableHead"?(s=!1,l!==0&&(hl(p,t,l,u,c),c=void 0,l=0),u={type:"table",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(n,0,[["enter",u,t]])):h.type==="tableRow"||h.type==="tableDelimiterRow"?(r=!0,d=void 0,a=[0,0,0,0],o=[0,n+1,0,0],s&&(s=!1,c={type:"tableBody",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(n,0,[["enter",c,t]])),i=h.type==="tableDelimiterRow"?2:c?3:1):i&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")?(r=!1,o[2]===0&&(a[1]!==0&&(o[0]=o[1],d=Or(p,t,a,i,void 0,d),a=[0,0,0,0]),o[2]=n)):h.type==="tableCellDivider"&&(r?r=!1:(a[1]!==0&&(o[0]=o[1],d=Or(p,t,a,i,void 0,d)),a=o,o=[a[1],n,0,0])):h.type==="tableHead"?(s=!0,l=n):h.type==="tableRow"||h.type==="tableDelimiterRow"?(l=n,a[1]!==0?(o[0]=o[1],d=Or(p,t,a,i,n,d)):o[1]!==0&&(d=Or(p,t,o,i,n,d)),i=0):i&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")&&(o[3]=n)}for(l!==0&&hl(p,t,l,u,c),p.consume(t.events),n=-1;++n<t.events.length;){const m=t.events[n];m[0]==="enter"&&m[1].type==="table"&&(m[1]._align=yk(t.events,n))}return e}function Or(e,t,n,r,i,a){const o=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",s="tableContent";n[0]!==0&&(a.end=Object.assign({},In(t.events,n[0])),e.add(n[0],0,[["exit",a,t]]));const l=In(t.events,n[1]);if(a={type:o,start:Object.assign({},l),end:Object.assign({},l)},e.add(n[1],0,[["enter",a,t]]),n[2]!==0){const u=In(t.events,n[2]),c=In(t.events,n[3]),d={type:s,start:Object.assign({},u),end:Object.assign({},c)};if(e.add(n[2],0,[["enter",d,t]]),r!==2){const p=t.events[n[2]],m=t.events[n[3]];if(p[1].end=Object.assign({},m[1].end),p[1].type="chunkText",p[1].contentType="text",n[3]>n[2]+1){const h=n[2]+1,g=n[3]-n[2]-1;e.add(h,g,[])}}e.add(n[3]+1,0,[["exit",d,t]])}return i!==void 0&&(a.end=Object.assign({},In(t.events,i)),e.add(i,0,[["exit",a,t]]),a=void 0),a}function hl(e,t,n,r,i){const a=[],o=In(t.events,n);i&&(i.end=Object.assign({},o),a.push(["exit",i,t])),r.end=Object.assign({},o),a.push(["exit",r,t]),e.add(n+1,0,a)}function In(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const kk={name:"tasklistCheck",tokenize:Ck};function Sk(){return{text:{91:kk}}}function Ck(e,t,n){const r=this;return i;function i(l){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),a)}function a(l){return Fe(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),o):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),o):n(l)}function o(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),s):n(l)}function s(l){return re(l)?t(l):we(l)?e.check({tokenize:zk},t,n)(l):n(l)}}function zk(e,t,n){return Ae(e,r,"whitespace");function r(i){return i===null?n(i):t(i)}}function Ak(e){return Ac([Yw(),sk(),hk(e),vk(),Sk()])}const Ek={};function Pk(e){const t=this,n=e||Ek,r=t.data(),i=r.micromarkExtensions||(r.micromarkExtensions=[]),a=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),o=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);i.push(Ak(n)),a.push(Zw()),o.push(Gw(n))}function $e(e){const t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new e.constructor(+e):typeof e=="number"||t==="[object Number]"||typeof e=="string"||t==="[object String]"?new Date(e):new Date(NaN)}function jk(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}const Fr=43200,gl=1440;let Nk={};function yd(){return Nk}function bl(e,t){var s,l,u,c;const n=yd(),r=(t==null?void 0:t.weekStartsOn)??((l=(s=t==null?void 0:t.locale)==null?void 0:s.options)==null?void 0:l.weekStartsOn)??n.weekStartsOn??((c=(u=n.locale)==null?void 0:u.options)==null?void 0:c.weekStartsOn)??0,i=$e(e),a=i.getDay(),o=(a<r?7:0)+a-r;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function yl(e){const t=$e(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Kr(e,t){const n=$e(e),r=$e(t),i=n.getTime()-r.getTime();return i<0?-1:i>0?1:i}function Tk(e){return jk(e,Date.now())}function Mk(e,t){const n=$e(e),r=$e(t),i=n.getFullYear()-r.getFullYear(),a=n.getMonth()-r.getMonth();return i*12+a}function Ik(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return r===0?0:r}}function Dk(e,t){return+$e(e)-+$e(t)}function Rk(e){const t=$e(e);return t.setHours(23,59,59,999),t}function Lk(e){const t=$e(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(23,59,59,999),t}function Ok(e){const t=$e(e);return+Rk(t)==+Lk(t)}function Fk(e,t){const n=$e(e),r=$e(t),i=Kr(n,r),a=Math.abs(Mk(n,r));let o;if(a<1)o=0;else{n.getMonth()===1&&n.getDate()>27&&n.setDate(30),n.setMonth(n.getMonth()-i*a);let s=Kr(n,r)===-i;Ok($e(e))&&a===1&&Kr(e,r)===1&&(s=!1),o=i*(a-Number(s))}return o===0?0:o}function Bk(e,t,n){const r=Dk(e,t)/1e3;return Ik(n==null?void 0:n.roundingMethod)(r)}const Wk={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},qk=(e,t,n)=>{let r;const i=Wk[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Be(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const Vk={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Jk={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Hk={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Uk={date:Be({formats:Vk,defaultWidth:"full"}),time:Be({formats:Jk,defaultWidth:"full"}),dateTime:Be({formats:Hk,defaultWidth:"full"})},Xk={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Zk=(e,t,n,r)=>Xk[e];function ue(e){return(t,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let i;if(r==="formatting"&&e.formattingValues){const o=e.defaultFormattingWidth||e.defaultWidth,s=n!=null&&n.width?String(n.width):o;i=e.formattingValues[s]||e.formattingValues[o]}else{const o=e.defaultWidth,s=n!=null&&n.width?String(n.width):e.defaultWidth;i=e.values[s]||e.values[o]}const a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}const Gk={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Kk={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Qk={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Yk={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},_k={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},$k={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},e0=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},t0={ordinalNumber:e0,era:ue({values:Gk,defaultWidth:"wide"}),quarter:ue({values:Kk,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Qk,defaultWidth:"wide"}),day:ue({values:Yk,defaultWidth:"wide"}),dayPeriod:ue({values:_k,defaultWidth:"wide",formattingValues:$k,defaultFormattingWidth:"wide"})};function ce(e){return(t,n={})=>{const r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;const o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(s)?r0(s,d=>d.test(o)):n0(s,d=>d.test(o));let u;u=e.valueCallback?e.valueCallback(l):l,u=n.valueCallback?n.valueCallback(u):u;const c=t.slice(o.length);return{value:u,rest:c}}}function n0(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function r0(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function en(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;const s=t.slice(i.length);return{value:o,rest:s}}}const i0=/^(\d+)(th|st|nd|rd)?/i,o0=/\d+/i,a0={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},s0={any:[/^b/i,/^(a|c)/i]},l0={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},u0={any:[/1/i,/2/i,/3/i,/4/i]},c0={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},d0={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},f0={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},m0={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},p0={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},h0={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},g0={ordinalNumber:en({matchPattern:i0,parsePattern:o0,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:a0,defaultMatchWidth:"wide",parsePatterns:s0,defaultParseWidth:"any"}),quarter:ce({matchPatterns:l0,defaultMatchWidth:"wide",parsePatterns:u0,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:c0,defaultMatchWidth:"wide",parsePatterns:d0,defaultParseWidth:"any"}),day:ce({matchPatterns:f0,defaultMatchWidth:"wide",parsePatterns:m0,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:p0,defaultMatchWidth:"any",parsePatterns:h0,defaultParseWidth:"any"})},ba={code:"en-US",formatDistance:qk,formatLong:Uk,formatRelative:Zk,localize:t0,match:g0,options:{weekStartsOn:0,firstWeekContainsDate:1}};function b0(e,t,n){const r=yd(),i=(n==null?void 0:n.locale)??r.locale??ba,a=2520,o=Kr(e,t);if(isNaN(o))throw new RangeError("Invalid time value");const s=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:o});let l,u;o>0?(l=$e(t),u=$e(e)):(l=$e(e),u=$e(t));const c=Bk(u,l),d=(yl(u)-yl(l))/1e3,p=Math.round((c-d)/60);let m;if(p<2)return n!=null&&n.includeSeconds?c<5?i.formatDistance("lessThanXSeconds",5,s):c<10?i.formatDistance("lessThanXSeconds",10,s):c<20?i.formatDistance("lessThanXSeconds",20,s):c<40?i.formatDistance("halfAMinute",0,s):c<60?i.formatDistance("lessThanXMinutes",1,s):i.formatDistance("xMinutes",1,s):p===0?i.formatDistance("lessThanXMinutes",1,s):i.formatDistance("xMinutes",p,s);if(p<45)return i.formatDistance("xMinutes",p,s);if(p<90)return i.formatDistance("aboutXHours",1,s);if(p<gl){const h=Math.round(p/60);return i.formatDistance("aboutXHours",h,s)}else{if(p<a)return i.formatDistance("xDays",1,s);if(p<Fr){const h=Math.round(p/gl);return i.formatDistance("xDays",h,s)}else if(p<Fr*2)return m=Math.round(p/Fr),i.formatDistance("aboutXMonths",m,s)}if(m=Fk(u,l),m<12){const h=Math.round(p/Fr);return i.formatDistance("xMonths",h,s)}else{const h=m%12,g=Math.trunc(m/12);return h<3?i.formatDistance("aboutXYears",g,s):h<9?i.formatDistance("overXYears",g,s):i.formatDistance("almostXYears",g+1,s)}}function y0(e,t){return b0(e,Tk(e),t)}function mr(e,t,n){const r=bl(e,n),i=bl(t,n);return+r==+i}const v0={lessThanXSeconds:{one:"أقل من ثانية",two:"أقل من ثانيتين",threeToTen:"أقل من {{count}} ثواني",other:"أقل من {{count}} ثانية"},xSeconds:{one:"ثانية واحدة",two:"ثانيتان",threeToTen:"{{count}} ثواني",other:"{{count}} ثانية"},halfAMinute:"نصف دقيقة",lessThanXMinutes:{one:"أقل من دقيقة",two:"أقل من دقيقتين",threeToTen:"أقل من {{count}} دقائق",other:"أقل من {{count}} دقيقة"},xMinutes:{one:"دقيقة واحدة",two:"دقيقتان",threeToTen:"{{count}} دقائق",other:"{{count}} دقيقة"},aboutXHours:{one:"ساعة واحدة تقريباً",two:"ساعتين تقريبا",threeToTen:"{{count}} ساعات تقريباً",other:"{{count}} ساعة تقريباً"},xHours:{one:"ساعة واحدة",two:"ساعتان",threeToTen:"{{count}} ساعات",other:"{{count}} ساعة"},xDays:{one:"يوم واحد",two:"يومان",threeToTen:"{{count}} أيام",other:"{{count}} يوم"},aboutXWeeks:{one:"أسبوع واحد تقريبا",two:"أسبوعين تقريبا",threeToTen:"{{count}} أسابيع تقريبا",other:"{{count}} أسبوعا تقريبا"},xWeeks:{one:"أسبوع واحد",two:"أسبوعان",threeToTen:"{{count}} أسابيع",other:"{{count}} أسبوعا"},aboutXMonths:{one:"شهر واحد تقريباً",two:"شهرين تقريبا",threeToTen:"{{count}} أشهر تقريبا",other:"{{count}} شهرا تقريباً"},xMonths:{one:"شهر واحد",two:"شهران",threeToTen:"{{count}} أشهر",other:"{{count}} شهرا"},aboutXYears:{one:"سنة واحدة تقريباً",two:"سنتين تقريبا",threeToTen:"{{count}} سنوات تقريباً",other:"{{count}} سنة تقريباً"},xYears:{one:"سنة واحد",two:"سنتان",threeToTen:"{{count}} سنوات",other:"{{count}} سنة"},overXYears:{one:"أكثر من سنة",two:"أكثر من سنتين",threeToTen:"أكثر من {{count}} سنوات",other:"أكثر من {{count}} سنة"},almostXYears:{one:"ما يقارب سنة واحدة",two:"ما يقارب سنتين",threeToTen:"ما يقارب {{count}} سنوات",other:"ما يقارب {{count}} سنة"}},x0=(e,t,n)=>{const r=v0[e];let i;return typeof r=="string"?i=r:t===1?i=r.one:t===2?i=r.two:t<=10?i=r.threeToTen.replace("{{count}}",String(t)):i=r.other.replace("{{count}}",String(t)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"خلال "+i:"منذ "+i:i},w0={full:"EEEE، do MMMM y",long:"do MMMM y",medium:"d MMM y",short:"dd/MM/yyyy"},k0={full:"HH:mm:ss",long:"HH:mm:ss",medium:"HH:mm:ss",short:"HH:mm"},S0={full:"{{date}} 'عند الساعة' {{time}}",long:"{{date}} 'عند الساعة' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},C0={date:Be({formats:w0,defaultWidth:"full"}),time:Be({formats:k0,defaultWidth:"full"}),dateTime:Be({formats:S0,defaultWidth:"full"})},z0={lastWeek:"eeee 'الماضي عند الساعة' p",yesterday:"'الأمس عند الساعة' p",today:"'اليوم عند الساعة' p",tomorrow:"'غدا عند الساعة' p",nextWeek:"eeee 'القادم عند الساعة' p",other:"P"},A0=e=>z0[e],E0={narrow:["ق","ب"],abbreviated:["ق.م.","ب.م."],wide:["قبل الميلاد","بعد الميلاد"]},P0={narrow:["1","2","3","4"],abbreviated:["ر1","ر2","ر3","ر4"],wide:["الربع الأول","الربع الثاني","الربع الثالث","الربع الرابع"]},j0={narrow:["ي","ف","م","أ","م","ي","ي","أ","س","أ","ن","د"],abbreviated:["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],wide:["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"]},N0={narrow:["ح","ن","ث","ر","خ","ج","س"],short:["أحد","اثنين","ثلاثاء","أربعاء","خميس","جمعة","سبت"],abbreviated:["أحد","اثنين","ثلاثاء","أربعاء","خميس","جمعة","سبت"],wide:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"]},T0={narrow:{am:"ص",pm:"م",morning:"الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"المساء",night:"الليل",midnight:"منتصف الليل"},abbreviated:{am:"ص",pm:"م",morning:"الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"المساء",night:"الليل",midnight:"منتصف الليل"},wide:{am:"ص",pm:"م",morning:"الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"المساء",night:"الليل",midnight:"منتصف الليل"}},M0={narrow:{am:"ص",pm:"م",morning:"في الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"في المساء",night:"في الليل",midnight:"منتصف الليل"},abbreviated:{am:"ص",pm:"م",morning:"في الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"في المساء",night:"في الليل",midnight:"منتصف الليل"},wide:{am:"ص",pm:"م",morning:"في الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"في المساء",night:"في الليل",midnight:"منتصف الليل"}},I0=e=>String(e),D0={ordinalNumber:I0,era:ue({values:E0,defaultWidth:"wide"}),quarter:ue({values:P0,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:j0,defaultWidth:"wide"}),day:ue({values:N0,defaultWidth:"wide"}),dayPeriod:ue({values:T0,defaultWidth:"wide",formattingValues:M0,defaultFormattingWidth:"wide"})},R0=/^(\d+)(th|st|nd|rd)?/i,L0=/\d+/i,O0={narrow:/[قب]/,abbreviated:/[قب]\.م\./,wide:/(قبل|بعد) الميلاد/},F0={any:[/قبل/,/بعد/]},B0={narrow:/^[1234]/i,abbreviated:/ر[1234]/,wide:/الربع (الأول|الثاني|الثالث|الرابع)/},W0={any:[/1/i,/2/i,/3/i,/4/i]},q0={narrow:/^[أيفمسند]/,abbreviated:/^(يناير|فبراير|مارس|أبريل|مايو|يونيو|يوليو|أغسطس|سبتمبر|أكتوبر|نوفمبر|ديسمبر)/,wide:/^(يناير|فبراير|مارس|أبريل|مايو|يونيو|يوليو|أغسطس|سبتمبر|أكتوبر|نوفمبر|ديسمبر)/},V0={narrow:[/^ي/i,/^ف/i,/^م/i,/^أ/i,/^م/i,/^ي/i,/^ي/i,/^أ/i,/^س/i,/^أ/i,/^ن/i,/^د/i],any:[/^يناير/i,/^فبراير/i,/^مارس/i,/^أبريل/i,/^مايو/i,/^يونيو/i,/^يوليو/i,/^أغسطس/i,/^سبتمبر/i,/^أكتوبر/i,/^نوفمبر/i,/^ديسمبر/i]},J0={narrow:/^[حنثرخجس]/i,short:/^(أحد|اثنين|ثلاثاء|أربعاء|خميس|جمعة|سبت)/i,abbreviated:/^(أحد|اثنين|ثلاثاء|أربعاء|خميس|جمعة|سبت)/i,wide:/^(الأحد|الاثنين|الثلاثاء|الأربعاء|الخميس|الجمعة|السبت)/i},H0={narrow:[/^ح/i,/^ن/i,/^ث/i,/^ر/i,/^خ/i,/^ج/i,/^س/i],wide:[/^الأحد/i,/^الاثنين/i,/^الثلاثاء/i,/^الأربعاء/i,/^الخميس/i,/^الجمعة/i,/^السبت/i],any:[/^أح/i,/^اث/i,/^ث/i,/^أر/i,/^خ/i,/^ج/i,/^س/i]},U0={narrow:/^(ص|م|منتصف الليل|الظهر|بعد الظهر|في الصباح|في المساء|في الليل)/,any:/^(ص|م|منتصف الليل|الظهر|بعد الظهر|في الصباح|في المساء|في الليل)/},X0={any:{am:/^ص/,pm:/^م/,midnight:/منتصف الليل/,noon:/الظهر/,afternoon:/بعد الظهر/,morning:/في الصباح/,evening:/في المساء/,night:/في الليل/}},Z0={ordinalNumber:en({matchPattern:R0,parsePattern:L0,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:O0,defaultMatchWidth:"wide",parsePatterns:F0,defaultParseWidth:"any"}),quarter:ce({matchPatterns:B0,defaultMatchWidth:"wide",parsePatterns:W0,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:q0,defaultMatchWidth:"wide",parsePatterns:V0,defaultParseWidth:"any"}),day:ce({matchPatterns:J0,defaultMatchWidth:"wide",parsePatterns:H0,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:U0,defaultMatchWidth:"any",parsePatterns:X0,defaultParseWidth:"any"})},G0={code:"ar",formatDistance:x0,formatLong:C0,formatRelative:A0,localize:D0,match:Z0,options:{weekStartsOn:6,firstWeekContainsDate:1}},vl={lessThanXSeconds:{standalone:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"},withPreposition:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"}},xSeconds:{standalone:{one:"1 Sekunde",other:"{{count}} Sekunden"},withPreposition:{one:"1 Sekunde",other:"{{count}} Sekunden"}},halfAMinute:{standalone:"eine halbe Minute",withPreposition:"einer halben Minute"},lessThanXMinutes:{standalone:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"},withPreposition:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"}},xMinutes:{standalone:{one:"1 Minute",other:"{{count}} Minuten"},withPreposition:{one:"1 Minute",other:"{{count}} Minuten"}},aboutXHours:{standalone:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"},withPreposition:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"}},xHours:{standalone:{one:"1 Stunde",other:"{{count}} Stunden"},withPreposition:{one:"1 Stunde",other:"{{count}} Stunden"}},xDays:{standalone:{one:"1 Tag",other:"{{count}} Tage"},withPreposition:{one:"1 Tag",other:"{{count}} Tagen"}},aboutXWeeks:{standalone:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"},withPreposition:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"}},xWeeks:{standalone:{one:"1 Woche",other:"{{count}} Wochen"},withPreposition:{one:"1 Woche",other:"{{count}} Wochen"}},aboutXMonths:{standalone:{one:"etwa 1 Monat",other:"etwa {{count}} Monate"},withPreposition:{one:"etwa 1 Monat",other:"etwa {{count}} Monaten"}},xMonths:{standalone:{one:"1 Monat",other:"{{count}} Monate"},withPreposition:{one:"1 Monat",other:"{{count}} Monaten"}},aboutXYears:{standalone:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahre"},withPreposition:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahren"}},xYears:{standalone:{one:"1 Jahr",other:"{{count}} Jahre"},withPreposition:{one:"1 Jahr",other:"{{count}} Jahren"}},overXYears:{standalone:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahre"},withPreposition:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahren"}},almostXYears:{standalone:{one:"fast 1 Jahr",other:"fast {{count}} Jahre"},withPreposition:{one:"fast 1 Jahr",other:"fast {{count}} Jahren"}}},K0=(e,t,n)=>{let r;const i=n!=null&&n.addSuffix?vl[e].withPreposition:vl[e].standalone;return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",String(t)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:"vor "+r:r},Q0={full:"EEEE, do MMMM y",long:"do MMMM y",medium:"do MMM y",short:"dd.MM.y"},Y0={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},_0={full:"{{date}} 'um' {{time}}",long:"{{date}} 'um' {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},$0={date:Be({formats:Q0,defaultWidth:"full"}),time:Be({formats:Y0,defaultWidth:"full"}),dateTime:Be({formats:_0,defaultWidth:"full"})},e1={lastWeek:"'letzten' eeee 'um' p",yesterday:"'gestern um' p",today:"'heute um' p",tomorrow:"'morgen um' p",nextWeek:"eeee 'um' p",other:"P"},t1=(e,t,n,r)=>e1[e],n1={narrow:["v.Chr.","n.Chr."],abbreviated:["v.Chr.","n.Chr."],wide:["vor Christus","nach Christus"]},r1={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1. Quartal","2. Quartal","3. Quartal","4. Quartal"]},Io={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],wide:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]},i1={narrow:Io.narrow,abbreviated:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],wide:Io.wide},o1={narrow:["S","M","D","M","D","F","S"],short:["So","Mo","Di","Mi","Do","Fr","Sa"],abbreviated:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],wide:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"]},a1={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachm.",evening:"Abend",night:"Nacht"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"}},s1={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachm.",evening:"abends",night:"nachts"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"}},l1=e=>Number(e)+".",u1={ordinalNumber:l1,era:ue({values:n1,defaultWidth:"wide"}),quarter:ue({values:r1,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Io,formattingValues:i1,defaultWidth:"wide"}),day:ue({values:o1,defaultWidth:"wide"}),dayPeriod:ue({values:a1,defaultWidth:"wide",formattingValues:s1,defaultFormattingWidth:"wide"})},c1=/^(\d+)(\.)?/i,d1=/\d+/i,f1={narrow:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,abbreviated:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,wide:/^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i},m1={any:[/^v/i,/^n/i]},p1={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](\.)? Quartal/i},h1={any:[/1/i,/2/i,/3/i,/4/i]},g1={narrow:/^[jfmasond]/i,abbreviated:/^(j[aä]n|feb|mär[z]?|apr|mai|jun[i]?|jul[i]?|aug|sep|okt|nov|dez)\.?/i,wide:/^(januar|februar|märz|april|mai|juni|juli|august|september|oktober|november|dezember)/i},b1={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^j[aä]/i,/^f/i,/^mär/i,/^ap/i,/^mai/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},y1={narrow:/^[smdmf]/i,short:/^(so|mo|di|mi|do|fr|sa)/i,abbreviated:/^(son?|mon?|die?|mit?|don?|fre?|sam?)\.?/i,wide:/^(sonntag|montag|dienstag|mittwoch|donnerstag|freitag|samstag)/i},v1={any:[/^so/i,/^mo/i,/^di/i,/^mi/i,/^do/i,/^f/i,/^sa/i]},x1={narrow:/^(vm\.?|nm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,abbreviated:/^(vorm\.?|nachm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,wide:/^(vormittags|nachmittags|Mitternacht|Mittag|morgens|nachmittags|abends|nachts)/i},w1={any:{am:/^v/i,pm:/^n/i,midnight:/^Mitte/i,noon:/^Mitta/i,morning:/morgens/i,afternoon:/nachmittags/i,evening:/abends/i,night:/nachts/i}},k1={ordinalNumber:en({matchPattern:c1,parsePattern:d1,valueCallback:e=>parseInt(e)}),era:ce({matchPatterns:f1,defaultMatchWidth:"wide",parsePatterns:m1,defaultParseWidth:"any"}),quarter:ce({matchPatterns:p1,defaultMatchWidth:"wide",parsePatterns:h1,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:g1,defaultMatchWidth:"wide",parsePatterns:b1,defaultParseWidth:"any"}),day:ce({matchPatterns:y1,defaultMatchWidth:"wide",parsePatterns:v1,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:x1,defaultMatchWidth:"wide",parsePatterns:w1,defaultParseWidth:"any"})},xl={code:"de",formatDistance:K0,formatLong:$0,formatRelative:t1,localize:u1,match:k1,options:{weekStartsOn:1,firstWeekContainsDate:4}},S1={lessThanXSeconds:{one:"menos de un segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"medio minuto",lessThanXMinutes:{one:"menos de un minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"alrededor de 1 hora",other:"alrededor de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 día",other:"{{count}} días"},aboutXWeeks:{one:"alrededor de 1 semana",other:"alrededor de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"alrededor de 1 mes",other:"alrededor de {{count}} meses"},xMonths:{one:"1 mes",other:"{{count}} meses"},aboutXYears:{one:"alrededor de 1 año",other:"alrededor de {{count}} años"},xYears:{one:"1 año",other:"{{count}} años"},overXYears:{one:"más de 1 año",other:"más de {{count}} años"},almostXYears:{one:"casi 1 año",other:"casi {{count}} años"}},C1=(e,t,n)=>{let r;const i=S1[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"en "+r:"hace "+r:r},z1={full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/y"},A1={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},E1={full:"{{date}} 'a las' {{time}}",long:"{{date}} 'a las' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},P1={date:Be({formats:z1,defaultWidth:"full"}),time:Be({formats:A1,defaultWidth:"full"}),dateTime:Be({formats:E1,defaultWidth:"full"})},j1={lastWeek:"'el' eeee 'pasado a la' p",yesterday:"'ayer a la' p",today:"'hoy a la' p",tomorrow:"'mañana a la' p",nextWeek:"eeee 'a la' p",other:"P"},N1={lastWeek:"'el' eeee 'pasado a las' p",yesterday:"'ayer a las' p",today:"'hoy a las' p",tomorrow:"'mañana a las' p",nextWeek:"eeee 'a las' p",other:"P"},T1=(e,t,n,r)=>t.getHours()!==1?N1[e]:j1[e],M1={narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","después de cristo"]},I1={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},D1={narrow:["e","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],wide:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"]},R1={narrow:["d","l","m","m","j","v","s"],short:["do","lu","ma","mi","ju","vi","sá"],abbreviated:["dom","lun","mar","mié","jue","vie","sáb"],wide:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"]},L1={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"}},O1={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"}},F1=(e,t)=>Number(e)+"º",B1={ordinalNumber:F1,era:ue({values:M1,defaultWidth:"wide"}),quarter:ue({values:I1,defaultWidth:"wide",argumentCallback:e=>Number(e)-1}),month:ue({values:D1,defaultWidth:"wide"}),day:ue({values:R1,defaultWidth:"wide"}),dayPeriod:ue({values:L1,defaultWidth:"wide",formattingValues:O1,defaultFormattingWidth:"wide"})},W1=/^(\d+)(º)?/i,q1=/\d+/i,V1={narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,wide:/^(antes de cristo|antes de la era com[uú]n|despu[eé]s de cristo|era com[uú]n)/i},J1={any:[/^ac/i,/^dc/i],wide:[/^(antes de cristo|antes de la era com[uú]n)/i,/^(despu[eé]s de cristo|era com[uú]n)/i]},H1={narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},U1={any:[/1/i,/2/i,/3/i,/4/i]},X1={narrow:/^[efmajsond]/i,abbreviated:/^(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/i,wide:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i},Z1={narrow:[/^e/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^en/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i]},G1={narrow:/^[dlmjvs]/i,short:/^(do|lu|ma|mi|ju|vi|s[áa])/i,abbreviated:/^(dom|lun|mar|mi[ée]|jue|vie|s[áa]b)/i,wide:/^(domingo|lunes|martes|mi[ée]rcoles|jueves|viernes|s[áa]bado)/i},K1={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^do/i,/^lu/i,/^ma/i,/^mi/i,/^ju/i,/^vi/i,/^sa/i]},Q1={narrow:/^(a|p|mn|md|(de la|a las) (mañana|tarde|noche))/i,any:/^([ap]\.?\s?m\.?|medianoche|mediodia|(de la|a las) (mañana|tarde|noche))/i},Y1={any:{am:/^a/i,pm:/^p/i,midnight:/^mn/i,noon:/^md/i,morning:/mañana/i,afternoon:/tarde/i,evening:/tarde/i,night:/noche/i}},_1={ordinalNumber:en({matchPattern:W1,parsePattern:q1,valueCallback:function(e){return parseInt(e,10)}}),era:ce({matchPatterns:V1,defaultMatchWidth:"wide",parsePatterns:J1,defaultParseWidth:"any"}),quarter:ce({matchPatterns:H1,defaultMatchWidth:"wide",parsePatterns:U1,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:X1,defaultMatchWidth:"wide",parsePatterns:Z1,defaultParseWidth:"any"}),day:ce({matchPatterns:G1,defaultMatchWidth:"wide",parsePatterns:K1,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:Q1,defaultMatchWidth:"any",parsePatterns:Y1,defaultParseWidth:"any"})},$1={code:"es",formatDistance:C1,formatLong:P1,formatRelative:T1,localize:B1,match:_1,options:{weekStartsOn:1,firstWeekContainsDate:1}},eS={lessThanXSeconds:{one:"moins d’une seconde",other:"moins de {{count}} secondes"},xSeconds:{one:"1 seconde",other:"{{count}} secondes"},halfAMinute:"30 secondes",lessThanXMinutes:{one:"moins d’une minute",other:"moins de {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"environ 1 heure",other:"environ {{count}} heures"},xHours:{one:"1 heure",other:"{{count}} heures"},xDays:{one:"1 jour",other:"{{count}} jours"},aboutXWeeks:{one:"environ 1 semaine",other:"environ {{count}} semaines"},xWeeks:{one:"1 semaine",other:"{{count}} semaines"},aboutXMonths:{one:"environ 1 mois",other:"environ {{count}} mois"},xMonths:{one:"1 mois",other:"{{count}} mois"},aboutXYears:{one:"environ 1 an",other:"environ {{count}} ans"},xYears:{one:"1 an",other:"{{count}} ans"},overXYears:{one:"plus d’un an",other:"plus de {{count}} ans"},almostXYears:{one:"presqu’un an",other:"presque {{count}} ans"}},tS=(e,t,n)=>{let r;const i=eS[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",String(t)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"dans "+r:"il y a "+r:r},nS={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},rS={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},iS={full:"{{date}} 'à' {{time}}",long:"{{date}} 'à' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},oS={date:Be({formats:nS,defaultWidth:"full"}),time:Be({formats:rS,defaultWidth:"full"}),dateTime:Be({formats:iS,defaultWidth:"full"})},aS={lastWeek:"eeee 'dernier à' p",yesterday:"'hier à' p",today:"'aujourd’hui à' p",tomorrow:"'demain à' p'",nextWeek:"eeee 'prochain à' p",other:"P"},sS=(e,t,n,r)=>aS[e],lS={narrow:["av. J.-C","ap. J.-C"],abbreviated:["av. J.-C","ap. J.-C"],wide:["avant Jésus-Christ","après Jésus-Christ"]},uS={narrow:["T1","T2","T3","T4"],abbreviated:["1er trim.","2ème trim.","3ème trim.","4ème trim."],wide:["1er trimestre","2ème trimestre","3ème trimestre","4ème trimestre"]},cS={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],wide:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"]},dS={narrow:["D","L","M","M","J","V","S"],short:["di","lu","ma","me","je","ve","sa"],abbreviated:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],wide:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]},fS={narrow:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"mat.",afternoon:"ap.m.",evening:"soir",night:"mat."},abbreviated:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"matin",afternoon:"après-midi",evening:"soir",night:"matin"},wide:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"du matin",afternoon:"de l’après-midi",evening:"du soir",night:"du matin"}},mS=(e,t)=>{const n=Number(e),r=t==null?void 0:t.unit;if(n===0)return"0";const i=["year","week","hour","minute","second"];let a;return n===1?a=r&&i.includes(r)?"ère":"er":a="ème",n+a},pS=["MMM","MMMM"],hS={preprocessor:(e,t)=>e.getDate()===1||!t.some(r=>r.isToken&&pS.includes(r.value))?t:t.map(r=>r.isToken&&r.value==="do"?{isToken:!0,value:"d"}:r),ordinalNumber:mS,era:ue({values:lS,defaultWidth:"wide"}),quarter:ue({values:uS,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:cS,defaultWidth:"wide"}),day:ue({values:dS,defaultWidth:"wide"}),dayPeriod:ue({values:fS,defaultWidth:"wide"})},gS=/^(\d+)(ième|ère|ème|er|e)?/i,bS=/\d+/i,yS={narrow:/^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i,abbreviated:/^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i,wide:/^(avant Jésus-Christ|après Jésus-Christ)/i},vS={any:[/^av/i,/^ap/i]},xS={narrow:/^T?[1234]/i,abbreviated:/^[1234](er|ème|e)? trim\.?/i,wide:/^[1234](er|ème|e)? trimestre/i},wS={any:[/1/i,/2/i,/3/i,/4/i]},kS={narrow:/^[jfmasond]/i,abbreviated:/^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i,wide:/^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i},SS={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^av/i,/^ma/i,/^juin/i,/^juil/i,/^ao/i,/^s/i,/^o/i,/^n/i,/^d/i]},CS={narrow:/^[lmjvsd]/i,short:/^(di|lu|ma|me|je|ve|sa)/i,abbreviated:/^(dim|lun|mar|mer|jeu|ven|sam)\.?/i,wide:/^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i},zS={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^di/i,/^lu/i,/^ma/i,/^me/i,/^je/i,/^ve/i,/^sa/i]},AS={narrow:/^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i,any:/^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i},ES={any:{am:/^a/i,pm:/^p/i,midnight:/^min/i,noon:/^mid/i,morning:/mat/i,afternoon:/ap/i,evening:/soir/i,night:/nuit/i}},PS={ordinalNumber:en({matchPattern:gS,parsePattern:bS,valueCallback:e=>parseInt(e)}),era:ce({matchPatterns:yS,defaultMatchWidth:"wide",parsePatterns:vS,defaultParseWidth:"any"}),quarter:ce({matchPatterns:xS,defaultMatchWidth:"wide",parsePatterns:wS,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:kS,defaultMatchWidth:"wide",parsePatterns:SS,defaultParseWidth:"any"}),day:ce({matchPatterns:CS,defaultMatchWidth:"wide",parsePatterns:zS,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:AS,defaultMatchWidth:"any",parsePatterns:ES,defaultParseWidth:"any"})},jS={code:"fr",formatDistance:tS,formatLong:oS,formatRelative:sS,localize:hS,match:PS,options:{weekStartsOn:1,firstWeekContainsDate:4}},NS={lessThanXSeconds:{one:"meno di un secondo",other:"meno di {{count}} secondi"},xSeconds:{one:"un secondo",other:"{{count}} secondi"},halfAMinute:"alcuni secondi",lessThanXMinutes:{one:"meno di un minuto",other:"meno di {{count}} minuti"},xMinutes:{one:"un minuto",other:"{{count}} minuti"},aboutXHours:{one:"circa un'ora",other:"circa {{count}} ore"},xHours:{one:"un'ora",other:"{{count}} ore"},xDays:{one:"un giorno",other:"{{count}} giorni"},aboutXWeeks:{one:"circa una settimana",other:"circa {{count}} settimane"},xWeeks:{one:"una settimana",other:"{{count}} settimane"},aboutXMonths:{one:"circa un mese",other:"circa {{count}} mesi"},xMonths:{one:"un mese",other:"{{count}} mesi"},aboutXYears:{one:"circa un anno",other:"circa {{count}} anni"},xYears:{one:"un anno",other:"{{count}} anni"},overXYears:{one:"più di un anno",other:"più di {{count}} anni"},almostXYears:{one:"quasi un anno",other:"quasi {{count}} anni"}},TS=(e,t,n)=>{let r;const i=NS[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"tra "+r:r+" fa":r},MS={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},IS={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},DS={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},RS={date:Be({formats:MS,defaultWidth:"full"}),time:Be({formats:IS,defaultWidth:"full"}),dateTime:Be({formats:DS,defaultWidth:"full"})},ya=["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"];function LS(e){switch(e){case 0:return"'domenica scorsa alle' p";default:return"'"+ya[e]+" scorso alle' p"}}function wl(e){return"'"+ya[e]+" alle' p"}function OS(e){switch(e){case 0:return"'domenica prossima alle' p";default:return"'"+ya[e]+" prossimo alle' p"}}const FS={lastWeek:(e,t,n)=>{const r=e.getDay();return mr(e,t,n)?wl(r):LS(r)},yesterday:"'ieri alle' p",today:"'oggi alle' p",tomorrow:"'domani alle' p",nextWeek:(e,t,n)=>{const r=e.getDay();return mr(e,t,n)?wl(r):OS(r)},other:"P"},BS=(e,t,n,r)=>{const i=FS[e];return typeof i=="function"?i(t,n,r):i},WS={narrow:["aC","dC"],abbreviated:["a.C.","d.C."],wide:["avanti Cristo","dopo Cristo"]},qS={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},VS={narrow:["G","F","M","A","M","G","L","A","S","O","N","D"],abbreviated:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],wide:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"]},JS={narrow:["D","L","M","M","G","V","S"],short:["dom","lun","mar","mer","gio","ven","sab"],abbreviated:["dom","lun","mar","mer","gio","ven","sab"],wide:["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"]},HS={narrow:{am:"m.",pm:"p.",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"},abbreviated:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"},wide:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"}},US={narrow:{am:"m.",pm:"p.",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"},abbreviated:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"},wide:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"}},XS=(e,t)=>{const n=Number(e);return String(n)},ZS={ordinalNumber:XS,era:ue({values:WS,defaultWidth:"wide"}),quarter:ue({values:qS,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:VS,defaultWidth:"wide"}),day:ue({values:JS,defaultWidth:"wide"}),dayPeriod:ue({values:HS,defaultWidth:"wide",formattingValues:US,defaultFormattingWidth:"wide"})},GS=/^(\d+)(º)?/i,KS=/\d+/i,QS={narrow:/^(aC|dC)/i,abbreviated:/^(a\.?\s?C\.?|a\.?\s?e\.?\s?v\.?|d\.?\s?C\.?|e\.?\s?v\.?)/i,wide:/^(avanti Cristo|avanti Era Volgare|dopo Cristo|Era Volgare)/i},YS={any:[/^a/i,/^(d|e)/i]},_S={narrow:/^[1234]/i,abbreviated:/^t[1234]/i,wide:/^[1234](º)? trimestre/i},$S={any:[/1/i,/2/i,/3/i,/4/i]},eC={narrow:/^[gfmalsond]/i,abbreviated:/^(gen|feb|mar|apr|mag|giu|lug|ago|set|ott|nov|dic)/i,wide:/^(gennaio|febbraio|marzo|aprile|maggio|giugno|luglio|agosto|settembre|ottobre|novembre|dicembre)/i},tC={narrow:[/^g/i,/^f/i,/^m/i,/^a/i,/^m/i,/^g/i,/^l/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ge/i,/^f/i,/^mar/i,/^ap/i,/^mag/i,/^gi/i,/^l/i,/^ag/i,/^s/i,/^o/i,/^n/i,/^d/i]},nC={narrow:/^[dlmgvs]/i,short:/^(do|lu|ma|me|gi|ve|sa)/i,abbreviated:/^(dom|lun|mar|mer|gio|ven|sab)/i,wide:/^(domenica|luned[i|ì]|marted[i|ì]|mercoled[i|ì]|gioved[i|ì]|venerd[i|ì]|sabato)/i},rC={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^g/i,/^v/i,/^s/i],any:[/^d/i,/^l/i,/^ma/i,/^me/i,/^g/i,/^v/i,/^s/i]},iC={narrow:/^(a|m\.|p|mezzanotte|mezzogiorno|(di|del) (mattina|pomeriggio|sera|notte))/i,any:/^([ap]\.?\s?m\.?|mezzanotte|mezzogiorno|(di|del) (mattina|pomeriggio|sera|notte))/i},oC={any:{am:/^a/i,pm:/^p/i,midnight:/^mezza/i,noon:/^mezzo/i,morning:/mattina/i,afternoon:/pomeriggio/i,evening:/sera/i,night:/notte/i}},aC={ordinalNumber:en({matchPattern:GS,parsePattern:KS,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:QS,defaultMatchWidth:"wide",parsePatterns:YS,defaultParseWidth:"any"}),quarter:ce({matchPatterns:_S,defaultMatchWidth:"wide",parsePatterns:$S,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:eC,defaultMatchWidth:"wide",parsePatterns:tC,defaultParseWidth:"any"}),day:ce({matchPatterns:nC,defaultMatchWidth:"wide",parsePatterns:rC,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:iC,defaultMatchWidth:"any",parsePatterns:oC,defaultParseWidth:"any"})},sC={code:"it",formatDistance:TS,formatLong:RS,formatRelative:BS,localize:ZS,match:aC,options:{weekStartsOn:1,firstWeekContainsDate:4}},lC={lessThanXSeconds:{one:{regular:"mniej niż sekunda",past:"mniej niż sekundę",future:"mniej niż sekundę"},twoFour:"mniej niż {{count}} sekundy",other:"mniej niż {{count}} sekund"},xSeconds:{one:{regular:"sekunda",past:"sekundę",future:"sekundę"},twoFour:"{{count}} sekundy",other:"{{count}} sekund"},halfAMinute:{one:"pół minuty",twoFour:"pół minuty",other:"pół minuty"},lessThanXMinutes:{one:{regular:"mniej niż minuta",past:"mniej niż minutę",future:"mniej niż minutę"},twoFour:"mniej niż {{count}} minuty",other:"mniej niż {{count}} minut"},xMinutes:{one:{regular:"minuta",past:"minutę",future:"minutę"},twoFour:"{{count}} minuty",other:"{{count}} minut"},aboutXHours:{one:{regular:"około godziny",past:"około godziny",future:"około godzinę"},twoFour:"około {{count}} godziny",other:"około {{count}} godzin"},xHours:{one:{regular:"godzina",past:"godzinę",future:"godzinę"},twoFour:"{{count}} godziny",other:"{{count}} godzin"},xDays:{one:{regular:"dzień",past:"dzień",future:"1 dzień"},twoFour:"{{count}} dni",other:"{{count}} dni"},aboutXWeeks:{one:"około tygodnia",twoFour:"około {{count}} tygodni",other:"około {{count}} tygodni"},xWeeks:{one:"tydzień",twoFour:"{{count}} tygodnie",other:"{{count}} tygodni"},aboutXMonths:{one:"około miesiąc",twoFour:"około {{count}} miesiące",other:"około {{count}} miesięcy"},xMonths:{one:"miesiąc",twoFour:"{{count}} miesiące",other:"{{count}} miesięcy"},aboutXYears:{one:"około rok",twoFour:"około {{count}} lata",other:"około {{count}} lat"},xYears:{one:"rok",twoFour:"{{count}} lata",other:"{{count}} lat"},overXYears:{one:"ponad rok",twoFour:"ponad {{count}} lata",other:"ponad {{count}} lat"},almostXYears:{one:"prawie rok",twoFour:"prawie {{count}} lata",other:"prawie {{count}} lat"}};function uC(e,t){if(t===1)return e.one;const n=t%100;if(n<=20&&n>10)return e.other;const r=n%10;return r>=2&&r<=4?e.twoFour:e.other}function so(e,t,n){const r=uC(e,t);return(typeof r=="string"?r:r[n]).replace("{{count}}",String(t))}const cC=(e,t,n)=>{const r=lC[e];return n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"za "+so(r,t,"future"):so(r,t,"past")+" temu":so(r,t,"regular")},dC={full:"EEEE, do MMMM y",long:"do MMMM y",medium:"do MMM y",short:"dd.MM.y"},fC={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},mC={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},pC={date:Be({formats:dC,defaultWidth:"full"}),time:Be({formats:fC,defaultWidth:"full"}),dateTime:Be({formats:mC,defaultWidth:"full"})},hC={masculine:"ostatni",feminine:"ostatnia"},gC={masculine:"ten",feminine:"ta"},bC={masculine:"następny",feminine:"następna"},yC={0:"feminine",1:"masculine",2:"masculine",3:"feminine",4:"masculine",5:"masculine",6:"feminine"};function kl(e,t,n,r){let i;if(mr(t,n,r))i=gC;else if(e==="lastWeek")i=hC;else if(e==="nextWeek")i=bC;else throw new Error(`Cannot determine adjectives for token ${e}`);const a=t.getDay(),o=yC[a];return`'${i[o]}' eeee 'o' p`}const vC={lastWeek:kl,yesterday:"'wczoraj o' p",today:"'dzisiaj o' p",tomorrow:"'jutro o' p",nextWeek:kl,other:"P"},xC=(e,t,n,r)=>{const i=vC[e];return typeof i=="function"?i(e,t,n,r):i},wC={narrow:["p.n.e.","n.e."],abbreviated:["p.n.e.","n.e."],wide:["przed naszą erą","naszej ery"]},kC={narrow:["1","2","3","4"],abbreviated:["I kw.","II kw.","III kw.","IV kw."],wide:["I kwartał","II kwartał","III kwartał","IV kwartał"]},SC={narrow:["S","L","M","K","M","C","L","S","W","P","L","G"],abbreviated:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru"],wide:["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień"]},CC={narrow:["s","l","m","k","m","c","l","s","w","p","l","g"],abbreviated:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru"],wide:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia"]},zC={narrow:["N","P","W","Ś","C","P","S"],short:["nie","pon","wto","śro","czw","pią","sob"],abbreviated:["niedz.","pon.","wt.","śr.","czw.","pt.","sob."],wide:["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"]},AC={narrow:["n","p","w","ś","c","p","s"],short:["nie","pon","wto","śro","czw","pią","sob"],abbreviated:["niedz.","pon.","wt.","śr.","czw.","pt.","sob."],wide:["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"]},EC={narrow:{am:"a",pm:"p",midnight:"półn.",noon:"poł",morning:"rano",afternoon:"popoł.",evening:"wiecz.",night:"noc"},abbreviated:{am:"AM",pm:"PM",midnight:"północ",noon:"południe",morning:"rano",afternoon:"popołudnie",evening:"wieczór",night:"noc"},wide:{am:"AM",pm:"PM",midnight:"północ",noon:"południe",morning:"rano",afternoon:"popołudnie",evening:"wieczór",night:"noc"}},PC={narrow:{am:"a",pm:"p",midnight:"o półn.",noon:"w poł.",morning:"rano",afternoon:"po poł.",evening:"wiecz.",night:"w nocy"},abbreviated:{am:"AM",pm:"PM",midnight:"o północy",noon:"w południe",morning:"rano",afternoon:"po południu",evening:"wieczorem",night:"w nocy"},wide:{am:"AM",pm:"PM",midnight:"o północy",noon:"w południe",morning:"rano",afternoon:"po południu",evening:"wieczorem",night:"w nocy"}},jC=(e,t)=>String(e),NC={ordinalNumber:jC,era:ue({values:wC,defaultWidth:"wide"}),quarter:ue({values:kC,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:SC,defaultWidth:"wide",formattingValues:CC,defaultFormattingWidth:"wide"}),day:ue({values:zC,defaultWidth:"wide",formattingValues:AC,defaultFormattingWidth:"wide"}),dayPeriod:ue({values:EC,defaultWidth:"wide",formattingValues:PC,defaultFormattingWidth:"wide"})},TC=/^(\d+)?/i,MC=/\d+/i,IC={narrow:/^(p\.?\s*n\.?\s*e\.?\s*|n\.?\s*e\.?\s*)/i,abbreviated:/^(p\.?\s*n\.?\s*e\.?\s*|n\.?\s*e\.?\s*)/i,wide:/^(przed\s*nasz(ą|a)\s*er(ą|a)|naszej\s*ery)/i},DC={any:[/^p/i,/^n/i]},RC={narrow:/^[1234]/i,abbreviated:/^(I|II|III|IV)\s*kw\.?/i,wide:/^(I|II|III|IV)\s*kwarta(ł|l)/i},LC={narrow:[/1/i,/2/i,/3/i,/4/i],any:[/^I kw/i,/^II kw/i,/^III kw/i,/^IV kw/i]},OC={narrow:/^[slmkcwpg]/i,abbreviated:/^(sty|lut|mar|kwi|maj|cze|lip|sie|wrz|pa(ź|z)|lis|gru)/i,wide:/^(stycznia|stycze(ń|n)|lutego|luty|marca|marzec|kwietnia|kwiecie(ń|n)|maja|maj|czerwca|czerwiec|lipca|lipiec|sierpnia|sierpie(ń|n)|wrze(ś|s)nia|wrzesie(ń|n)|pa(ź|z)dziernika|pa(ź|z)dziernik|listopada|listopad|grudnia|grudzie(ń|n))/i},FC={narrow:[/^s/i,/^l/i,/^m/i,/^k/i,/^m/i,/^c/i,/^l/i,/^s/i,/^w/i,/^p/i,/^l/i,/^g/i],any:[/^st/i,/^lu/i,/^mar/i,/^k/i,/^maj/i,/^c/i,/^lip/i,/^si/i,/^w/i,/^p/i,/^lis/i,/^g/i]},BC={narrow:/^[npwścs]/i,short:/^(nie|pon|wto|(ś|s)ro|czw|pi(ą|a)|sob)/i,abbreviated:/^(niedz|pon|wt|(ś|s)r|czw|pt|sob)\.?/i,wide:/^(niedziela|poniedzia(ł|l)ek|wtorek|(ś|s)roda|czwartek|pi(ą|a)tek|sobota)/i},WC={narrow:[/^n/i,/^p/i,/^w/i,/^ś/i,/^c/i,/^p/i,/^s/i],abbreviated:[/^n/i,/^po/i,/^w/i,/^(ś|s)r/i,/^c/i,/^pt/i,/^so/i],any:[/^n/i,/^po/i,/^w/i,/^(ś|s)r/i,/^c/i,/^pi/i,/^so/i]},qC={narrow:/^(^a$|^p$|pó(ł|l)n\.?|o\s*pó(ł|l)n\.?|po(ł|l)\.?|w\s*po(ł|l)\.?|po\s*po(ł|l)\.?|rano|wiecz\.?|noc|w\s*nocy)/i,any:/^(am|pm|pó(ł|l)noc|o\s*pó(ł|l)nocy|po(ł|l)udnie|w\s*po(ł|l)udnie|popo(ł|l)udnie|po\s*po(ł|l)udniu|rano|wieczór|wieczorem|noc|w\s*nocy)/i},VC={narrow:{am:/^a$/i,pm:/^p$/i,midnight:/pó(ł|l)n/i,noon:/po(ł|l)/i,morning:/rano/i,afternoon:/po\s*po(ł|l)/i,evening:/wiecz/i,night:/noc/i},any:{am:/^am/i,pm:/^pm/i,midnight:/pó(ł|l)n/i,noon:/po(ł|l)/i,morning:/rano/i,afternoon:/po\s*po(ł|l)/i,evening:/wiecz/i,night:/noc/i}},JC={ordinalNumber:en({matchPattern:TC,parsePattern:MC,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:IC,defaultMatchWidth:"wide",parsePatterns:DC,defaultParseWidth:"any"}),quarter:ce({matchPatterns:RC,defaultMatchWidth:"wide",parsePatterns:LC,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:OC,defaultMatchWidth:"wide",parsePatterns:FC,defaultParseWidth:"any"}),day:ce({matchPatterns:BC,defaultMatchWidth:"wide",parsePatterns:WC,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:qC,defaultMatchWidth:"any",parsePatterns:VC,defaultParseWidth:"any"})},HC={code:"pl",formatDistance:cC,formatLong:pC,formatRelative:xC,localize:NC,match:JC,options:{weekStartsOn:1,firstWeekContainsDate:4}},UC={lessThanXSeconds:{one:"bir saniyeden az",other:"{{count}} saniyeden az"},xSeconds:{one:"1 saniye",other:"{{count}} saniye"},halfAMinute:"yarım dakika",lessThanXMinutes:{one:"bir dakikadan az",other:"{{count}} dakikadan az"},xMinutes:{one:"1 dakika",other:"{{count}} dakika"},aboutXHours:{one:"yaklaşık 1 saat",other:"yaklaşık {{count}} saat"},xHours:{one:"1 saat",other:"{{count}} saat"},xDays:{one:"1 gün",other:"{{count}} gün"},aboutXWeeks:{one:"yaklaşık 1 hafta",other:"yaklaşık {{count}} hafta"},xWeeks:{one:"1 hafta",other:"{{count}} hafta"},aboutXMonths:{one:"yaklaşık 1 ay",other:"yaklaşık {{count}} ay"},xMonths:{one:"1 ay",other:"{{count}} ay"},aboutXYears:{one:"yaklaşık 1 yıl",other:"yaklaşık {{count}} yıl"},xYears:{one:"1 yıl",other:"{{count}} yıl"},overXYears:{one:"1 yıldan fazla",other:"{{count}} yıldan fazla"},almostXYears:{one:"neredeyse 1 yıl",other:"neredeyse {{count}} yıl"}},XC=(e,t,n)=>{let r;const i=UC[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?r+" sonra":r+" önce":r},ZC={full:"d MMMM y EEEE",long:"d MMMM y",medium:"d MMM y",short:"dd.MM.yyyy"},GC={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},KC={full:"{{date}} 'saat' {{time}}",long:"{{date}} 'saat' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},QC={date:Be({formats:ZC,defaultWidth:"full"}),time:Be({formats:GC,defaultWidth:"full"}),dateTime:Be({formats:KC,defaultWidth:"full"})},YC={lastWeek:"'geçen hafta' eeee 'saat' p",yesterday:"'dün saat' p",today:"'bugün saat' p",tomorrow:"'yarın saat' p",nextWeek:"eeee 'saat' p",other:"P"},_C=(e,t,n,r)=>YC[e],$C={narrow:["MÖ","MS"],abbreviated:["MÖ","MS"],wide:["Milattan Önce","Milattan Sonra"]},ez={narrow:["1","2","3","4"],abbreviated:["1Ç","2Ç","3Ç","4Ç"],wide:["İlk çeyrek","İkinci Çeyrek","Üçüncü çeyrek","Son çeyrek"]},tz={narrow:["O","Ş","M","N","M","H","T","A","E","E","K","A"],abbreviated:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],wide:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"]},nz={narrow:["P","P","S","Ç","P","C","C"],short:["Pz","Pt","Sa","Ça","Pe","Cu","Ct"],abbreviated:["Paz","Pzt","Sal","Çar","Per","Cum","Cts"],wide:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"]},rz={narrow:{am:"öö",pm:"ös",midnight:"gy",noon:"ö",morning:"sa",afternoon:"ös",evening:"ak",night:"ge"},abbreviated:{am:"ÖÖ",pm:"ÖS",midnight:"gece yarısı",noon:"öğle",morning:"sabah",afternoon:"öğleden sonra",evening:"akşam",night:"gece"},wide:{am:"Ö.Ö.",pm:"Ö.S.",midnight:"gece yarısı",noon:"öğle",morning:"sabah",afternoon:"öğleden sonra",evening:"akşam",night:"gece"}},iz={narrow:{am:"öö",pm:"ös",midnight:"gy",noon:"ö",morning:"sa",afternoon:"ös",evening:"ak",night:"ge"},abbreviated:{am:"ÖÖ",pm:"ÖS",midnight:"gece yarısı",noon:"öğlen",morning:"sabahleyin",afternoon:"öğleden sonra",evening:"akşamleyin",night:"geceleyin"},wide:{am:"ö.ö.",pm:"ö.s.",midnight:"gece yarısı",noon:"öğlen",morning:"sabahleyin",afternoon:"öğleden sonra",evening:"akşamleyin",night:"geceleyin"}},oz=(e,t)=>Number(e)+".",az={ordinalNumber:oz,era:ue({values:$C,defaultWidth:"wide"}),quarter:ue({values:ez,defaultWidth:"wide",argumentCallback:e=>Number(e)-1}),month:ue({values:tz,defaultWidth:"wide"}),day:ue({values:nz,defaultWidth:"wide"}),dayPeriod:ue({values:rz,defaultWidth:"wide",formattingValues:iz,defaultFormattingWidth:"wide"})},sz=/^(\d+)(\.)?/i,lz=/\d+/i,uz={narrow:/^(mö|ms)/i,abbreviated:/^(mö|ms)/i,wide:/^(milattan önce|milattan sonra)/i},cz={any:[/(^mö|^milattan önce)/i,/(^ms|^milattan sonra)/i]},dz={narrow:/^[1234]/i,abbreviated:/^[1234]ç/i,wide:/^((i|İ)lk|(i|İ)kinci|üçüncü|son) çeyrek/i},fz={any:[/1/i,/2/i,/3/i,/4/i],abbreviated:[/1ç/i,/2ç/i,/3ç/i,/4ç/i],wide:[/^(i|İ)lk çeyrek/i,/(i|İ)kinci çeyrek/i,/üçüncü çeyrek/i,/son çeyrek/i]},mz={narrow:/^[oşmnhtaek]/i,abbreviated:/^(oca|şub|mar|nis|may|haz|tem|ağu|eyl|eki|kas|ara)/i,wide:/^(ocak|şubat|mart|nisan|mayıs|haziran|temmuz|ağustos|eylül|ekim|kasım|aralık)/i},pz={narrow:[/^o/i,/^ş/i,/^m/i,/^n/i,/^m/i,/^h/i,/^t/i,/^a/i,/^e/i,/^e/i,/^k/i,/^a/i],any:[/^o/i,/^ş/i,/^mar/i,/^n/i,/^may/i,/^h/i,/^t/i,/^ağ/i,/^ey/i,/^ek/i,/^k/i,/^ar/i]},hz={narrow:/^[psçc]/i,short:/^(pz|pt|sa|ça|pe|cu|ct)/i,abbreviated:/^(paz|pzt|sal|çar|per|cum|cts)/i,wide:/^(pazar(?!tesi)|pazartesi|salı|çarşamba|perşembe|cuma(?!rtesi)|cumartesi)/i},gz={narrow:[/^p/i,/^p/i,/^s/i,/^ç/i,/^p/i,/^c/i,/^c/i],any:[/^pz/i,/^pt/i,/^sa/i,/^ça/i,/^pe/i,/^cu/i,/^ct/i],wide:[/^pazar(?!tesi)/i,/^pazartesi/i,/^salı/i,/^çarşamba/i,/^perşembe/i,/^cuma(?!rtesi)/i,/^cumartesi/i]},bz={narrow:/^(öö|ös|gy|ö|sa|ös|ak|ge)/i,any:/^(ö\.?\s?[ös]\.?|öğleden sonra|gece yarısı|öğle|(sabah|öğ|akşam|gece)(leyin))/i},yz={any:{am:/^ö\.?ö\.?/i,pm:/^ö\.?s\.?/i,midnight:/^(gy|gece yarısı)/i,noon:/^öğ/i,morning:/^sa/i,afternoon:/^öğleden sonra/i,evening:/^ak/i,night:/^ge/i}},vz={ordinalNumber:en({matchPattern:sz,parsePattern:lz,valueCallback:function(e){return parseInt(e,10)}}),era:ce({matchPatterns:uz,defaultMatchWidth:"wide",parsePatterns:cz,defaultParseWidth:"any"}),quarter:ce({matchPatterns:dz,defaultMatchWidth:"wide",parsePatterns:fz,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:mz,defaultMatchWidth:"wide",parsePatterns:pz,defaultParseWidth:"any"}),day:ce({matchPatterns:hz,defaultMatchWidth:"wide",parsePatterns:gz,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:bz,defaultMatchWidth:"any",parsePatterns:yz,defaultParseWidth:"any"})},xz={code:"tr",formatDistance:XC,formatLong:QC,formatRelative:_C,localize:az,match:vz,options:{weekStartsOn:1,firstWeekContainsDate:1}};function nr(e,t){if(e.one!==void 0&&t===1)return e.one;const n=t%10,r=t%100;return n===1&&r!==11?e.singularNominative.replace("{{count}}",String(t)):n>=2&&n<=4&&(r<10||r>20)?e.singularGenitive.replace("{{count}}",String(t)):e.pluralGenitive.replace("{{count}}",String(t))}function mt(e){return(t,n)=>n&&n.addSuffix?n.comparison&&n.comparison>0?e.future?nr(e.future,t):"за "+nr(e.regular,t):e.past?nr(e.past,t):nr(e.regular,t)+" тому":nr(e.regular,t)}const wz=(e,t)=>t&&t.addSuffix?t.comparison&&t.comparison>0?"за півхвилини":"півхвилини тому":"півхвилини",kz={lessThanXSeconds:mt({regular:{one:"менше секунди",singularNominative:"менше {{count}} секунди",singularGenitive:"менше {{count}} секунд",pluralGenitive:"менше {{count}} секунд"},future:{one:"менше, ніж за секунду",singularNominative:"менше, ніж за {{count}} секунду",singularGenitive:"менше, ніж за {{count}} секунди",pluralGenitive:"менше, ніж за {{count}} секунд"}}),xSeconds:mt({regular:{singularNominative:"{{count}} секунда",singularGenitive:"{{count}} секунди",pluralGenitive:"{{count}} секунд"},past:{singularNominative:"{{count}} секунду тому",singularGenitive:"{{count}} секунди тому",pluralGenitive:"{{count}} секунд тому"},future:{singularNominative:"за {{count}} секунду",singularGenitive:"за {{count}} секунди",pluralGenitive:"за {{count}} секунд"}}),halfAMinute:wz,lessThanXMinutes:mt({regular:{one:"менше хвилини",singularNominative:"менше {{count}} хвилини",singularGenitive:"менше {{count}} хвилин",pluralGenitive:"менше {{count}} хвилин"},future:{one:"менше, ніж за хвилину",singularNominative:"менше, ніж за {{count}} хвилину",singularGenitive:"менше, ніж за {{count}} хвилини",pluralGenitive:"менше, ніж за {{count}} хвилин"}}),xMinutes:mt({regular:{singularNominative:"{{count}} хвилина",singularGenitive:"{{count}} хвилини",pluralGenitive:"{{count}} хвилин"},past:{singularNominative:"{{count}} хвилину тому",singularGenitive:"{{count}} хвилини тому",pluralGenitive:"{{count}} хвилин тому"},future:{singularNominative:"за {{count}} хвилину",singularGenitive:"за {{count}} хвилини",pluralGenitive:"за {{count}} хвилин"}}),aboutXHours:mt({regular:{singularNominative:"близько {{count}} години",singularGenitive:"близько {{count}} годин",pluralGenitive:"близько {{count}} годин"},future:{singularNominative:"приблизно за {{count}} годину",singularGenitive:"приблизно за {{count}} години",pluralGenitive:"приблизно за {{count}} годин"}}),xHours:mt({regular:{singularNominative:"{{count}} годину",singularGenitive:"{{count}} години",pluralGenitive:"{{count}} годин"}}),xDays:mt({regular:{singularNominative:"{{count}} день",singularGenitive:"{{count}} днi",pluralGenitive:"{{count}} днів"}}),aboutXWeeks:mt({regular:{singularNominative:"близько {{count}} тижня",singularGenitive:"близько {{count}} тижнів",pluralGenitive:"близько {{count}} тижнів"},future:{singularNominative:"приблизно за {{count}} тиждень",singularGenitive:"приблизно за {{count}} тижні",pluralGenitive:"приблизно за {{count}} тижнів"}}),xWeeks:mt({regular:{singularNominative:"{{count}} тиждень",singularGenitive:"{{count}} тижні",pluralGenitive:"{{count}} тижнів"}}),aboutXMonths:mt({regular:{singularNominative:"близько {{count}} місяця",singularGenitive:"близько {{count}} місяців",pluralGenitive:"близько {{count}} місяців"},future:{singularNominative:"приблизно за {{count}} місяць",singularGenitive:"приблизно за {{count}} місяці",pluralGenitive:"приблизно за {{count}} місяців"}}),xMonths:mt({regular:{singularNominative:"{{count}} місяць",singularGenitive:"{{count}} місяці",pluralGenitive:"{{count}} місяців"}}),aboutXYears:mt({regular:{singularNominative:"близько {{count}} року",singularGenitive:"близько {{count}} років",pluralGenitive:"близько {{count}} років"},future:{singularNominative:"приблизно за {{count}} рік",singularGenitive:"приблизно за {{count}} роки",pluralGenitive:"приблизно за {{count}} років"}}),xYears:mt({regular:{singularNominative:"{{count}} рік",singularGenitive:"{{count}} роки",pluralGenitive:"{{count}} років"}}),overXYears:mt({regular:{singularNominative:"більше {{count}} року",singularGenitive:"більше {{count}} років",pluralGenitive:"більше {{count}} років"},future:{singularNominative:"більше, ніж за {{count}} рік",singularGenitive:"більше, ніж за {{count}} роки",pluralGenitive:"більше, ніж за {{count}} років"}}),almostXYears:mt({regular:{singularNominative:"майже {{count}} рік",singularGenitive:"майже {{count}} роки",pluralGenitive:"майже {{count}} років"},future:{singularNominative:"майже за {{count}} рік",singularGenitive:"майже за {{count}} роки",pluralGenitive:"майже за {{count}} років"}})},Sz=(e,t,n)=>(n=n||{},kz[e](t,n)),Cz={full:"EEEE, do MMMM y 'р.'",long:"do MMMM y 'р.'",medium:"d MMM y 'р.'",short:"dd.MM.y"},zz={full:"H:mm:ss zzzz",long:"H:mm:ss z",medium:"H:mm:ss",short:"H:mm"},Az={full:"{{date}} 'о' {{time}}",long:"{{date}} 'о' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Ez={date:Be({formats:Cz,defaultWidth:"full"}),time:Be({formats:zz,defaultWidth:"full"}),dateTime:Be({formats:Az,defaultWidth:"full"})},va=["неділю","понеділок","вівторок","середу","четвер","п’ятницю","суботу"];function Pz(e){const t=va[e];switch(e){case 0:case 3:case 5:case 6:return"'у минулу "+t+" о' p";case 1:case 2:case 4:return"'у минулий "+t+" о' p"}}function vd(e){return"'у "+va[e]+" о' p"}function jz(e){const t=va[e];switch(e){case 0:case 3:case 5:case 6:return"'у наступну "+t+" о' p";case 1:case 2:case 4:return"'у наступний "+t+" о' p"}}const Nz=(e,t,n)=>{const r=$e(e),i=r.getDay();return mr(r,t,n)?vd(i):Pz(i)},Tz=(e,t,n)=>{const r=$e(e),i=r.getDay();return mr(r,t,n)?vd(i):jz(i)},Mz={lastWeek:Nz,yesterday:"'вчора о' p",today:"'сьогодні о' p",tomorrow:"'завтра о' p",nextWeek:Tz,other:"P"},Iz=(e,t,n,r)=>{const i=Mz[e];return typeof i=="function"?i(t,n,r):i},Dz={narrow:["до н.е.","н.е."],abbreviated:["до н. е.","н. е."],wide:["до нашої ери","нашої ери"]},Rz={narrow:["1","2","3","4"],abbreviated:["1-й кв.","2-й кв.","3-й кв.","4-й кв."],wide:["1-й квартал","2-й квартал","3-й квартал","4-й квартал"]},Lz={narrow:["С","Л","Б","К","Т","Ч","Л","С","В","Ж","Л","Г"],abbreviated:["січ.","лют.","берез.","квіт.","трав.","черв.","лип.","серп.","верес.","жовт.","листоп.","груд."],wide:["січень","лютий","березень","квітень","травень","червень","липень","серпень","вересень","жовтень","листопад","грудень"]},Oz={narrow:["С","Л","Б","К","Т","Ч","Л","С","В","Ж","Л","Г"],abbreviated:["січ.","лют.","берез.","квіт.","трав.","черв.","лип.","серп.","верес.","жовт.","листоп.","груд."],wide:["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня"]},Fz={narrow:["Н","П","В","С","Ч","П","С"],short:["нд","пн","вт","ср","чт","пт","сб"],abbreviated:["нед","пон","вів","сер","чтв","птн","суб"],wide:["неділя","понеділок","вівторок","середа","четвер","п’ятниця","субота"]},Bz={narrow:{am:"ДП",pm:"ПП",midnight:"півн.",noon:"пол.",morning:"ранок",afternoon:"день",evening:"веч.",night:"ніч"},abbreviated:{am:"ДП",pm:"ПП",midnight:"півн.",noon:"пол.",morning:"ранок",afternoon:"день",evening:"веч.",night:"ніч"},wide:{am:"ДП",pm:"ПП",midnight:"північ",noon:"полудень",morning:"ранок",afternoon:"день",evening:"вечір",night:"ніч"}},Wz={narrow:{am:"ДП",pm:"ПП",midnight:"півн.",noon:"пол.",morning:"ранку",afternoon:"дня",evening:"веч.",night:"ночі"},abbreviated:{am:"ДП",pm:"ПП",midnight:"півн.",noon:"пол.",morning:"ранку",afternoon:"дня",evening:"веч.",night:"ночі"},wide:{am:"ДП",pm:"ПП",midnight:"північ",noon:"полудень",morning:"ранку",afternoon:"дня",evening:"веч.",night:"ночі"}},qz=(e,t)=>{const n=String(t==null?void 0:t.unit),r=Number(e);let i;return n==="date"?r===3||r===23?i="-є":i="-е":n==="minute"||n==="second"||n==="hour"?i="-а":i="-й",r+i},Vz={ordinalNumber:qz,era:ue({values:Dz,defaultWidth:"wide"}),quarter:ue({values:Rz,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Lz,defaultWidth:"wide",formattingValues:Oz,defaultFormattingWidth:"wide"}),day:ue({values:Fz,defaultWidth:"wide"}),dayPeriod:ue({values:Bz,defaultWidth:"any",formattingValues:Wz,defaultFormattingWidth:"wide"})},Jz=/^(\d+)(-?(е|й|є|а|я))?/i,Hz=/\d+/i,Uz={narrow:/^((до )?н\.?\s?е\.?)/i,abbreviated:/^((до )?н\.?\s?е\.?)/i,wide:/^(до нашої ери|нашої ери|наша ера)/i},Xz={any:[/^д/i,/^н/i]},Zz={narrow:/^[1234]/i,abbreviated:/^[1234](-?[иі]?й?)? кв.?/i,wide:/^[1234](-?[иі]?й?)? квартал/i},Gz={any:[/1/i,/2/i,/3/i,/4/i]},Kz={narrow:/^[слбктчвжг]/i,abbreviated:/^(січ|лют|бер(ез)?|квіт|трав|черв|лип|серп|вер(ес)?|жовт|лис(топ)?|груд)\.?/i,wide:/^(січень|січня|лютий|лютого|березень|березня|квітень|квітня|травень|травня|червня|червень|липень|липня|серпень|серпня|вересень|вересня|жовтень|жовтня|листопад[а]?|грудень|грудня)/i},Qz={narrow:[/^с/i,/^л/i,/^б/i,/^к/i,/^т/i,/^ч/i,/^л/i,/^с/i,/^в/i,/^ж/i,/^л/i,/^г/i],any:[/^сі/i,/^лю/i,/^б/i,/^к/i,/^т/i,/^ч/i,/^лип/i,/^се/i,/^в/i,/^ж/i,/^лис/i,/^г/i]},Yz={narrow:/^[нпвсч]/i,short:/^(нд|пн|вт|ср|чт|пт|сб)\.?/i,abbreviated:/^(нед|пон|вів|сер|че?тв|птн?|суб)\.?/i,wide:/^(неділ[яі]|понеділ[ок][ка]|вівтор[ок][ка]|серед[аи]|четвер(га)?|п\W*?ятниц[яі]|субот[аи])/i},_z={narrow:[/^н/i,/^п/i,/^в/i,/^с/i,/^ч/i,/^п/i,/^с/i],any:[/^н/i,/^п[он]/i,/^в/i,/^с[ер]/i,/^ч/i,/^п\W*?[ят]/i,/^с[уб]/i]},$z={narrow:/^([дп]п|півн\.?|пол\.?|ранок|ранку|день|дня|веч\.?|ніч|ночі)/i,abbreviated:/^([дп]п|півн\.?|пол\.?|ранок|ранку|день|дня|веч\.?|ніч|ночі)/i,wide:/^([дп]п|північ|полудень|ранок|ранку|день|дня|вечір|вечора|ніч|ночі)/i},eA={any:{am:/^дп/i,pm:/^пп/i,midnight:/^півн/i,noon:/^пол/i,morning:/^р/i,afternoon:/^д[ен]/i,evening:/^в/i,night:/^н/i}},tA={ordinalNumber:en({matchPattern:Jz,parsePattern:Hz,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:Uz,defaultMatchWidth:"wide",parsePatterns:Xz,defaultParseWidth:"any"}),quarter:ce({matchPatterns:Zz,defaultMatchWidth:"wide",parsePatterns:Gz,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:Kz,defaultMatchWidth:"wide",parsePatterns:Qz,defaultParseWidth:"any"}),day:ce({matchPatterns:Yz,defaultMatchWidth:"wide",parsePatterns:_z,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:$z,defaultMatchWidth:"wide",parsePatterns:eA,defaultParseWidth:"any"})},nA={code:"uk",formatDistance:Sz,formatLong:Ez,formatRelative:Iz,localize:Vz,match:tA,options:{weekStartsOn:1,firstWeekContainsDate:1}},Sl="group-hover:[animation-play-state:paused] group-focus-within:[animation-play-state:paused]";function rA({quickActions:e,theme:t,onSelect:n,pauseOnHover:r=!1}){return e.length?f.jsxs("div",{className:`${r?"group ":""}space-y-1.5 mb-4 py-2`,style:{animation:"fadeInUp 0.6s ease-out"},children:[f.jsx("div",{className:"relative flex gap-2 overflow-x-hidden overflow-y-visible py-1",children:f.jsx("div",{className:`flex gap-2 animate-[scrollLeft_25s_linear_infinite] ${r?Sl:""}`,children:[...e.slice(0,4),...e.slice(0,4)].map((i,a)=>f.jsx("button",{onClick:()=>n(i.message),"aria-label":`Schnellaktion: ${i.title}`,className:`flex-shrink-0 px-4 py-2.5 rounded-full text-xs font-medium transition-all duration-300 whitespace-nowrap focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2 focus:ring-offset-background hover:scale-105 border ${t==="light"?"bg-white/90 text-foreground shadow-none hover:bg-white hover:shadow-none":"bg-white/8 backdrop-blur-[10px] text-foreground/90 hover:bg-white/15 hover:shadow-[0_4px_15px_hsl(var(--glow-primary)/0.3)]"}`,style:{borderColor:"hsl(var(--chat-quick-border))"},children:i.title},`row1-${a}`))})}),f.jsx("div",{className:"relative flex gap-2 overflow-x-hidden overflow-y-visible py-1",children:f.jsx("div",{className:`flex gap-2 animate-[scrollRight_30s_linear_infinite] ${r?Sl:""}`,children:[...e.slice(4),...e.slice(4)].map((i,a)=>f.jsx("button",{onClick:()=>n(i.message),"aria-label":`Schnellaktion: ${i.title}`,className:`flex-shrink-0 px-4 py-2.5 rounded-full text-xs font-medium transition-all duration-300 whitespace-nowrap hover:scale-105 focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2 focus:ring-offset-background border ${t==="light"?"bg-white/90 text-foreground shadow-none hover:bg-white hover:shadow-none":"bg-white/8 backdrop-blur-[10px] text-foreground/90 hover:bg-white/15 hover:shadow-[0_4px_15px_hsl(var(--glow-primary)/0.3)]"}`,style:{borderColor:"hsl(var(--chat-quick-border))"},children:i.title},`row2-${a}`))})})]}):null}const iA=({sources:e})=>e.length===0?null:f.jsxs("div",{className:"space-y-1.5 w-full min-w-full",children:[f.jsx("div",{className:"text-[10px] uppercase tracking-wider text-foreground/50 font-semibold",children:"Quellen"}),f.jsx("div",{className:"flex flex-col gap-1",children:e.map((t,n)=>f.jsx("div",{className:"flex items-center gap-2 text-xs text-foreground/70 bg-muted rounded-lg px-3 py-2 border border-border hover:bg-muted/80 transition-all group w-full max-w-full min-w-full",children:t.url?f.jsxs("a",{href:t.url,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 flex-1 min-w-0 max-w-full hover:text-primary transition-colors",children:[f.jsx(xn,{className:"w-3 h-3 flex-shrink-0 group-hover:scale-110 transition-transform"}),f.jsx("span",{className:"text-left break-words leading-snug",children:t.name})]}):f.jsxs("span",{className:"flex items-center gap-2 flex-1 min-w-0 max-w-full",children:[f.jsx("span",{className:"w-3 h-3 rounded-full bg-primary/30 flex-shrink-0"}),f.jsx("span",{className:"text-left break-words leading-snug",children:t.name})]})},n))})]}),Cl={de:"de",en:"en",fr:"fr",es:"es",it:"it",tr:"tr",ar:"ar",pl:"pl",ua:"uk",simple:"de"},zl={de:{play:"Vorlesen",stop:"Vorlesen stoppen"},en:{play:"Play audio",stop:"Stop audio"},fr:{play:"Lire à haute voix",stop:"Arrêter la lecture"},es:{play:"Leer en voz alta",stop:"Detener la lectura"},it:{play:"Leggi ad alta voce",stop:"Ferma la lettura"},tr:{play:"Sesli oku",stop:"Okumayı durdur"},ar:{play:"تشغيل الصوت",stop:"إيقاف الصوت"},pl:{play:"Odczytaj",stop:"Zatrzymaj odczyt"},ua:{play:"Зачитати",stop:"Зупинити відтворення"},simple:{play:"Vorlesen",stop:"Vorlesen stoppen"}},Al={de:"de-DE",en:"en-US",fr:"fr-FR",es:"es-ES",it:"it-IT",tr:"tr-TR",ar:"ar",pl:"pl-PL",ua:"uk-UA",simple:"de-DE"};let lt=null;const oA="data:audio/wav;base64,UklGRiYAAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YQIAAAAAAA==",aA=()=>{if(typeof navigator>"u")return!1;const e=navigator.userAgent||"",t=navigator.platform||"",n=navigator.maxTouchPoints||0;return/iPad|iPhone|iPod/.test(e)||t==="MacIntel"&&n>1};let rr="locked";const sA=()=>{if(rr==="locked"&&!(typeof document>"u")){rr="attempting";try{const e=document.createElement("audio");e.preload="auto",e.src=oA,e.volume=0,e.muted=!1;const t=e.play();Promise.resolve(t).then(()=>{e.pause(),e.removeAttribute("src"),e.load(),rr="unlocked"}).catch(()=>{rr="locked"})}catch{rr="locked"}}},lo=()=>{if(lt){const e=lt;lt=null,e.stop()}},lA=()=>{if(typeof window>"u")return!1;const e=window.MediaSource;return e?typeof e.isTypeSupported=="function"&&e.isTypeSupported("audio/mpeg"):!1},uA=e=>{var r;const t=e==null?void 0:e.trim();return t&&((r=t.split(";")[0])==null?void 0:r.trim())||"audio/mpeg"},cA=({text:e,language:t="de",className:n,modelId:r,voiceId:i,voiceSettings:a})=>{const[o,s]=I.useState("idle"),[l,u]=I.useState(null),c=I.useRef(+`${Date.now()}${Math.floor(Math.random()*1e3)}`),d=I.useRef(null),p=I.useRef(null),m=I.useRef(null),h=I.useRef(null),g=(E={})=>{var M;const{clearGlobal:R=!0}=E;(M=p.current)==null||M.abort(),p.current=null,d.current&&(d.current.pause(),d.current.currentTime=0,d.current.remove(),d.current=null),m.current&&(URL.revokeObjectURL(m.current),m.current=null,u(null)),h.current&&typeof window<"u"&&window.speechSynthesis&&((!R||(lt==null?void 0:lt.ownerId)===c.current)&&window.speechSynthesis.cancel(),h.current=null),R&&(lt==null?void 0:lt.ownerId)===c.current&&(lt=null),s("idle")};I.useEffect(()=>()=>{g()},[]);const b=E=>{if(typeof window>"u"||typeof SpeechSynthesisUtterance>"u"||!window.speechSynthesis)return!1;lo(),g();const R=new SpeechSynthesisUtterance(E);R.lang=Al[t]||Al.de,h.current=R,s("playing");const M=()=>{window.speechSynthesis&&window.speechSynthesis.cancel(),g({clearGlobal:!1})};lt={ownerId:c.current,stop:M};const k=()=>{g()};return R.onend=k,R.onerror=k,window.speechSynthesis.speak(R),!0},y=async(E,R,M,k)=>{var Pe;const N=(Pe=E.body)==null?void 0:Pe.getReader();if(!N)throw new Error("No response body");await new Promise((le,Ce)=>{if(k.aborted){Ce(Object.assign(new Error("Aborted"),{name:"AbortError"}));return}if(R.readyState==="open"){le();return}const Q=()=>{fe(),le()},U=()=>{fe(),Ce(new Error("MediaSource closed"))},ee=()=>{fe(),Ce(Object.assign(new Error("Aborted"),{name:"AbortError"}))},fe=()=>{R.removeEventListener("sourceopen",Q),R.removeEventListener("sourceended",U),R.removeEventListener("sourceclose",U),k.removeEventListener("abort",ee)};R.addEventListener("sourceopen",Q),R.addEventListener("sourceended",U),R.addEventListener("sourceclose",U),k.addEventListener("abort",ee)});const T=R.addSourceBuffer(M);try{T.mode="sequence"}catch{}const V=[];let O=!1,F=!1;const B=()=>Object.assign(new Error("Aborted"),{name:"AbortError"});let Z=null,X=null;const K=new Promise((le,Ce)=>{Z=le,X=Ce});K.catch(()=>{});let w=null,se=null,Ee=null;const z=()=>{w&&T.removeEventListener("updateend",w),se&&T.removeEventListener("error",se),Ee&&k.removeEventListener("abort",Ee)},Me=le=>{F||(F=!0,z(),le())},We=le=>{try{N.cancel()}catch{}Me(()=>{X==null||X(le instanceof Error?le:new Error("Audio stream failed"))})},Te=()=>{F||O&&(T.updating||V.length>0||Me(()=>{try{R.readyState==="open"&&R.endOfStream()}catch{}Z==null||Z()}))},Re=()=>{if(F)return;if(k.aborted){We(B());return}if(T.updating)return;const le=V.shift();if(!le){Te();return}try{T.appendBuffer(le)}catch(Ce){We(Ce)}};w=()=>{Re(),Te()},se=()=>{We(new Error("Audio stream buffer error"))},Ee=()=>{We(B())},T.addEventListener("updateend",w),T.addEventListener("error",se),k.addEventListener("abort",Ee),k.aborted&&Ee();try{for(;;){const{value:le,done:Ce}=await N.read();if(Ce)break;if(k.aborted)throw B();le!=null&&le.byteLength&&(V.push(le.buffer.slice(le.byteOffset,le.byteOffset+le.byteLength)),Re())}O=!0,Re(),Te(),await K}catch(le){return F||We(le),await K}finally{try{N.releaseLock()}catch{}}},x=async()=>{const E=e==null?void 0:e.trim();if(!E)return;if(typeof Audio>"u"){b(E)||bt({title:"Audio nicht verfügbar",description:"Ihr Browser unterstützt keine Audiowiedergabe.",variant:"destructive"});return}lo(),g();const R=aA();R&&sA();const M=new AbortController;p.current=M,s("loading"),lt={ownerId:c.current,stop:()=>g({clearGlobal:!1})};try{const k=!R&&lA(),N=document.createElement("audio");N.preload="auto",N.volume=1,N.muted=!1,N.setAttribute("playsinline","true"),N.setAttribute("webkit-playsinline","true");let T=null,V=null;if(k){const F=window.MediaSource;T=new F;const B=URL.createObjectURL(T);N.src=B,m.current=B,u(B),V=(async()=>{const Z=await nc({text:E,languageCode:Cl[t]||void 0,modelId:r||void 0,voiceId:i||void 0,voiceSettings:a||void 0,signal:M.signal}),X=uA(Z.headers.get("content-type")),K=typeof F.isTypeSupported=="function"&&F.isTypeSupported(X)?X:"audio/mpeg";await y(Z,T,K,M.signal)})()}else{const F=await vh({text:E,languageCode:Cl[t]||void 0,modelId:r||void 0,voiceId:i||void 0,voiceSettings:a||void 0,signal:M.signal}),B=URL.createObjectURL(F);N.src=B,m.current=B,u(B)}R&&typeof document<"u"&&document.body&&(N.style.display="none",document.body.appendChild(N)),d.current=N;const O=()=>{g()};N.onended=O,N.onerror=()=>{O(),b(E)||bt({title:"Wiedergabe fehlgeschlagen",description:"Audio playback failed",variant:"destructive"})};try{const F=R?new Promise(X=>{let w;const se=()=>{N.removeEventListener("playing",Ee),N.removeEventListener("timeupdate",z),N.removeEventListener("error",Me),w!==void 0&&window.clearTimeout(w)},Ee=()=>{se(),X(!0)},z=()=>{N.currentTime>0&&(se(),X(!0))},Me=()=>{se(),X(!1)};w=window.setTimeout(()=>{se(),X(!N.paused&&!N.ended)},2e3),N.addEventListener("playing",Ee),N.addEventListener("timeupdate",z),N.addEventListener("error",Me)}):Promise.resolve(!0),B=Promise.resolve(N.play());if(V){const X=V.then(()=>new Promise(()=>{}),K=>Promise.reject(K));await Promise.race([B,X])}else await B;if(!await F)throw new Error("Audio playback did not start");s("playing")}catch(F){const B=typeof F=="object"&&F!==null&&"name"in F&&F.name==="NotAllowedError";if(R&&(B||(F==null?void 0:F.message)==="Audio playback did not start")){s("ready"),bt({title:"Tippen zum Abspielen",description:"Auf iOS kann ein zweites Tippen nötig sein, um Audio zu starten."});return}if(O(),!b(E)){const X=F instanceof Error?F.message:"Audio playback failed";bt({title:"Wiedergabe fehlgeschlagen",description:X,variant:"destructive"})}return}V&&await V}catch(k){if((k==null?void 0:k.name)==="AbortError"){h.current||g();return}if(g(),!b(E)){const T=k instanceof Error?k.message:"Text-to-speech fehlgeschlagen";bt({title:"Text-to-Speech fehlgeschlagen",description:T,variant:"destructive"})}}finally{p.current=null}},S=()=>{if(o==="loading"||o==="playing")g();else if(o==="ready"){const E=d.current;if(!E){x();return}(lt==null?void 0:lt.ownerId)!==c.current&&lo(),lt={ownerId:c.current,stop:()=>g({clearGlobal:!1})};const R=E.play();Promise.resolve(R).then(()=>s("playing")).catch(M=>{const k=M instanceof Error?M.message:"Audio playback failed";bt({title:"Wiedergabe fehlgeschlagen",description:k,variant:"destructive"}),g()})}else x()},P=zl[t]||zl.de,j=o==="playing"?P.stop:P.play,C=["p-1 rounded transition-colors",o==="playing"||o==="loading"?"text-primary":"text-foreground/40 hover:text-primary",n||""].join(" ").trim();return f.jsxs("button",{type:"button",onClick:S,className:C,"aria-label":j,title:j,children:[o==="loading"?f.jsx(tm,{className:"w-3 h-3 animate-spin"}):o==="playing"?f.jsx(hm,{className:"w-3 h-3"}):f.jsx(pm,{className:"w-3 h-3"}),f.jsx("span",{className:"sr-only",children:j})]})},dA=()=>f.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 max-w-[85%] w-fit bg-card/50 backdrop-blur-sm rounded-2xl rounded-tl-none border border-border/30 shadow-lg animate-message-slide-in",children:[f.jsxs("div",{className:"flex gap-1",children:[f.jsx("div",{className:"w-2 h-2 rounded-full bg-primary animate-typing-pulse",style:{animationDelay:"0ms"},"aria-hidden":"true"}),f.jsx("div",{className:"w-2 h-2 rounded-full bg-primary animate-typing-pulse",style:{animationDelay:"200ms"},"aria-hidden":"true"}),f.jsx("div",{className:"w-2 h-2 rounded-full bg-primary animate-typing-pulse",style:{animationDelay:"400ms"},"aria-hidden":"true"})]}),f.jsx("span",{className:"sr-only",children:"Assistent tippt..."})]}),cn=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{},sn=e=>Array.isArray(e)?e.map(cn).filter(t=>Object.keys(t).length>0):[],$=e=>typeof e=="string"||typeof e=="number"?String(e):"",pr=(e,t=!1)=>{const n=$(e);if(!n)return"";const r=new Date(t?n:`${n}T00:00:00Z`);return Number.isNaN(r.getTime())?n:new Intl.DateTimeFormat("de-DE",{weekday:"short",day:"2-digit",month:"2-digit",...t?{year:"numeric",hour:"2-digit",minute:"2-digit"}:{timeZone:"UTC"}}).format(r)},oi=e=>{const t=$(e),n=new Date(`${t}T00:00:00Z`);return!t||Number.isNaN(n.getTime())?t:new Intl.DateTimeFormat("de-DE",{weekday:"short",day:"2-digit",month:"2-digit",year:"numeric",timeZone:"UTC"}).format(n)},El=e=>{const t=new Date($(e));return Number.isNaN(t.getTime())?"":new Intl.DateTimeFormat("de-DE",{hour:"2-digit",minute:"2-digit"}).format(t)},xd=(e,t)=>{const n=Number($(e));return!$(e)||!Number.isFinite(n)||!$(t)?"":new Intl.NumberFormat("de-DE",{style:"currency",currency:$(t)}).format(n)},fA=e=>{if(e.fee_visibility==="hidden")return"";const t=xd(e.fee_amount,e.fee_currency);return t?`${t} vor Ort`:e.requires_payment||e.fee_visibility==="on_site"?"Gebühr vor Ort":""},mA=e=>{const t=cn(e);if(t.visibility!=="visible")return"";const n=cn(t.total),r=xd(n.amount,n.currency);return r?`${r} vor Ort`:""},pA=e=>sn(e).map(t=>{const n=$(t.name),r=Number(t.quantity)||1;return n?r>1?`${r} × ${n}`:n:""}).filter(Boolean),wd=e=>Object.keys(cn(e.booking)).length?cn(e.booking):e,Do=e=>$(wd(e).id||e.booking_id),En=(e,t)=>{const[n,r]=I.useState(null);return{chosen:n,pick:(a,o,s)=>{e||n||(r(a),t(o,s))}}},Ln=4,Pl=3,hA=6;function gA({title:e,state:t}){return f.jsxs("div",{className:"flex items-center justify-between gap-3 border-b border-border/70 bg-primary/[0.04] px-3 py-2.5",children:[f.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[f.jsx("span",{className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-lg ${t==="success"?"bg-emerald-500/10 text-emerald-600":t==="cancelled"?"bg-destructive/10 text-destructive":"bg-primary/10 text-primary"}`,children:t==="success"?f.jsx(su,{className:"h-4 w-4","aria-hidden":"true"}):t==="cancelled"?f.jsx(Yf,{className:"h-4 w-4","aria-hidden":"true"}):f.jsx(Gf,{className:"h-4 w-4","aria-hidden":"true"})}),f.jsx("span",{className:"truncate text-sm font-semibold text-foreground",children:e})]}),f.jsx("span",{className:"hidden shrink-0 text-[10px] font-semibold uppercase tracking-[0.12em] text-foreground/45 min-[400px]:inline",title:"Live-Daten aus dem Amturo-Terminsystem",children:"Amturo · live"})]})}function tn({title:e,state:t,children:n}){return f.jsxs("section",{className:"w-full max-w-[380px] min-w-0 overflow-hidden rounded-2xl border border-border/80 bg-[hsl(var(--chat-message-bot))] text-foreground shadow-[0_8px_24px_rgba(0,0,0,0.07)]",children:[f.jsx(gA,{title:e,state:t}),n]})}const Kt="focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 focus-visible:ring-offset-[hsl(var(--chat-message-bot))]",Tt=({children:e,disabled:t,onClick:n,variant:r="primary",ariaLabel:i})=>f.jsx("button",{type:"button",disabled:t,onClick:n,"aria-label":i,className:`inline-flex min-h-10 items-center justify-center gap-1.5 rounded-xl px-3.5 py-2 text-xs font-semibold transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${Kt} ${r==="primary"?"bg-primary text-primary-foreground hover:bg-primary/90":r==="destructive"?"bg-destructive text-destructive-foreground hover:bg-destructive/90":"border border-border text-foreground/75 hover:bg-primary/[0.06] hover:text-foreground"}`,children:e}),dn=({label:e="Ausgewählt",tone:t="success"})=>f.jsxs("span",{className:`inline-flex min-h-8 items-center gap-1.5 rounded-lg px-2.5 py-1 text-xs font-semibold ${t==="success"?"bg-emerald-500/10 text-emerald-600":"bg-muted text-foreground/60"}`,children:[t==="success"&&f.jsx(zn,{className:"h-3.5 w-3.5","aria-hidden":"true"}),e]}),Ro=({text:e="Nicht mehr aktiv – der Dialog ist weitergegangen."})=>f.jsx("p",{className:"text-xs leading-relaxed text-foreground/50",children:e}),bA={BOOKED:{label:"Gebucht",className:"bg-emerald-500/10 text-emerald-600"},CONFIRMED:{label:"Bestätigt",className:"bg-emerald-500/10 text-emerald-600"},PENDING:{label:"Ausstehend",className:"bg-amber-500/10 text-amber-600"},RESERVED:{label:"Reserviert",className:"bg-amber-500/10 text-amber-600"},CANCELLED:{label:"Storniert",className:"bg-destructive/10 text-destructive"}},yA=({status:e})=>{if(!e)return null;const t=bA[e.toUpperCase()]??{label:e,className:"bg-muted text-foreground/70"};return f.jsx("span",{className:`inline-flex items-center rounded-md px-2 py-0.5 text-[11px] font-semibold ${t.className}`,children:t.label})},ki=({icon:e,text:t,children:n})=>f.jsxs("div",{className:"flex flex-col items-start gap-2.5 p-3",children:[f.jsxs("div",{className:"flex items-start gap-2.5 text-xs leading-relaxed text-foreground/60",children:[f.jsx("span",{className:"mt-0.5 shrink-0 text-foreground/40",children:e}),f.jsx("p",{children:t})]}),n]}),xa=({label:e,onClick:t})=>f.jsx("button",{type:"button",onClick:t,className:`w-full border-t border-border/60 px-3 py-2.5 text-center text-xs font-semibold text-primary transition-colors hover:bg-primary/[0.05] ${Kt} focus-visible:ring-inset focus-visible:ring-offset-0`,children:e});function vA({data:e,disabled:t,onAction:n}){const r=sn(e.locations),{chosen:i,pick:a}=En(t,n),[o,s]=I.useState(!1),l=o||i?r:r.slice(0,Ln);return f.jsxs(tn,{title:"Standort",children:[!r.length&&f.jsx(ki,{icon:f.jsx($a,{className:"h-4 w-4","aria-hidden":"true"}),text:"Keine Standorte verfügbar."}),f.jsx("div",{className:"divide-y divide-border/60",children:l.map(u=>{const c=$(u.id),d=$(u.name),p=[$(u.address),[$(u.postal_code),$(u.city)].filter(Boolean).join(" ")].filter(Boolean).join(", "),m=i===(c||d),h=i!==null&&!m;return f.jsx("div",{className:`p-3 transition-opacity ${h?"opacity-45":""}`,children:f.jsxs("div",{className:"flex gap-2.5",children:[f.jsx($a,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsxs("div",{className:"min-w-0 flex-1",children:[f.jsx("div",{className:"text-sm font-semibold",children:d}),p&&f.jsx("div",{className:"mt-0.5 text-xs leading-relaxed text-foreground/60",children:p}),!i&&f.jsx("div",{className:"mt-2",children:f.jsx(Tt,{disabled:t,ariaLabel:`Standort ${d} wählen`,onClick:()=>a(c||d,`Ich wähle den Standort „${d}“ (area_id ${c}).`,`Ich wähle den Standort „${d}“.`),children:"Diesen Standort wählen"})}),m&&f.jsx("div",{className:"mt-2",children:f.jsx(dn,{})})]})]})},c||d)})}),!o&&!i&&r.length>Ln&&f.jsx(xa,{label:`Alle anzeigen (${r.length-Ln} weitere)`,onClick:()=>s(!0)})]})}function xA({data:e,disabled:t,onAction:n}){const r=sn(e.counters),{chosen:i,pick:a}=En(t,n);return f.jsxs(tn,{title:"Schalter",children:[!r.length&&f.jsx(ki,{icon:f.jsx(es,{className:"h-4 w-4","aria-hidden":"true"}),text:"Keine Schalter verfügbar."}),f.jsx("div",{className:"divide-y divide-border/60",children:r.map(o=>{const s=$(o.id),l=$(o.name),u=s||l,c=i===u,d=i!==null&&!c;return f.jsxs("button",{type:"button",disabled:t||i!==null,"aria-pressed":c,onClick:()=>a(u,`Ich wähle „${l}“ (counter_id ${s}).`,`Ich wähle „${l}“.`),className:`flex w-full items-center gap-3 p-3 text-left transition-all ${Kt} focus-visible:ring-inset focus-visible:ring-offset-0 ${d?"opacity-45":""} ${i===null?"hover:bg-primary/[0.06] disabled:opacity-50":"cursor-default"}`,children:[f.jsx(es,{className:"h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsxs("span",{className:"min-w-0 flex-1",children:[f.jsx("span",{className:"block text-sm font-semibold",children:l}),$(o.description)&&f.jsx("span",{className:"mt-0.5 block text-xs text-foreground/60",children:$(o.description)})]}),c&&f.jsx(zn,{className:"h-4 w-4 shrink-0 text-emerald-600","aria-hidden":"true"})]},u)})})]})}function jl({data:e,disabled:t,onAction:n,details:r=!1}){const a=(r?[cn(e.service)]:sn(e.services)).filter(d=>$(d.id)&&$(d.name)),{chosen:o,pick:s}=En(t,n),[l,u]=I.useState(!1),c=r||l||o?a:a.slice(0,Ln);return f.jsxs(tn,{title:r?"Leistungsdetails":"Leistung",children:[!a.length&&f.jsx(ki,{icon:f.jsx(bo,{className:"h-4 w-4","aria-hidden":"true"}),text:"Keine passende Leistung gefunden."}),f.jsx("div",{className:"divide-y divide-border/60",children:c.map(d=>{const p=$(d.id),m=$(d.name),h=fA(d),g=o===p,b=o!==null&&!g;return f.jsxs("div",{className:`p-3 transition-opacity ${b?"opacity-45":""}`,children:[f.jsx("div",{className:"text-sm font-semibold leading-snug",children:m}),f.jsxs("div",{className:"mt-1.5 flex flex-wrap gap-x-3 gap-y-1 text-[11px] text-foreground/60",children:[$(d.duration_minutes)&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(lu,{className:"h-3 w-3","aria-hidden":"true"}),$(d.duration_minutes)," Min."]}),h&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(cu,{className:"h-3 w-3","aria-hidden":"true"}),h]}),!!d.requires_documents&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(bo,{className:"h-3 w-3","aria-hidden":"true"}),"Dokumente nötig"]}),!!d.is_video_eligible&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(am,{className:"h-3 w-3","aria-hidden":"true"}),"Video möglich"]})]}),r&&$(d.documents_info)&&f.jsxs("div",{className:"mt-2 rounded-lg bg-muted/60 px-2.5 py-2 text-xs leading-relaxed text-foreground/70",children:["Mitbringen: ",$(d.documents_info)]}),!o&&f.jsx("div",{className:"mt-2.5",children:f.jsx(Tt,{disabled:t,ariaLabel:r?`Termine für ${m} anzeigen`:`${m} wählen`,onClick:()=>s(p,r?`Zeige mir verfügbare Termine für „${m}“ (service_id ${p}).`:`Ich wähle die Leistung „${m}“ (service_id ${p}).`,r?`Bitte zeigen Sie mir freie Termine für „${m}“.`:`Ich wähle „${m}“.`),children:r?"Termine anzeigen":"Leistung wählen"})}),g&&f.jsx("div",{className:"mt-2.5",children:f.jsx(dn,{label:r?"Termine angefragt":"Ausgewählt"})})]},p)})}),!r&&!l&&!o&&a.length>Ln&&f.jsx(xa,{label:`Alle anzeigen (${a.length-Ln} weitere)`,onClick:()=>u(!0)})]})}function wA({data:e,disabled:t,selectedSlot:n,onAction:r}){var C;const i=cn(e.availability),a=sn(i.days),s=(a.length?a:[{date:i.date,slots:i.slots}]).map(E=>({date:$(E.date),slots:sn(E.slots).filter(R=>R.available===!0)})).filter(E=>E.date&&E.slots.length),l=$(e.service_id||i.service_id),u=sn(e.service_items),c=u.length>1?`service_items ${JSON.stringify(u.map(E=>({service_id:E.service_id,quantity:E.quantity??1})))}`:`service_id ${l}`,{chosen:d,pick:p}=En(t,r),[m,h]=I.useState(Pl),[g,b]=I.useState(()=>new Set),y=new Set(s.flatMap(E=>E.slots.map(R=>`${E.date}-${$(R.time)}`))),x=n&&y.has(n)?n:d,S=x?(C=s.find(E=>x.startsWith(`${E.date}-`)))==null?void 0:C.date:void 0,P=s.filter((E,R)=>R<m||E.date===S),j=s.length-P.length;return f.jsxs(tn,{title:"Freie Termine",children:[!s.length&&f.jsx(ki,{icon:f.jsx(Kf,{className:"h-4 w-4","aria-hidden":"true"}),text:"Im angefragten Zeitraum sind keine freien Termine verfügbar.",children:f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>r(l?`Bitte schlage mir alternative Zeiträume mit freien Terminen für ${c} vor.`:"Bitte schlage mir alternative Zeiträume mit freien Terminen vor.","Bitte schlagen Sie mir andere Zeiträume vor."),children:"Andere Zeiträume vorschlagen"})}),s.length>0&&f.jsx("div",{className:"max-h-80 overflow-y-auto pb-3",children:P.map(E=>{const R=g.has(E.date),M=E.slots.findIndex(V=>`${E.date}-${$(V.time)}`===x),k=R?E.slots.length:Math.max(hA,M+1),N=E.slots.slice(0,k),T=E.slots.length-N.length;return f.jsxs("div",{children:[f.jsxs("div",{className:"sticky top-0 z-10 flex items-baseline justify-between gap-2 bg-[hsl(var(--chat-message-bot))] px-3 pb-1.5 pt-3",children:[f.jsx("span",{className:"text-[11px] font-semibold uppercase tracking-[0.08em] text-foreground/50",children:pr(E.date)}),f.jsxs("span",{className:"text-[10px] text-foreground/35",children:[E.slots.length," ",E.slots.length===1?"Termin":"Termine"]})]}),f.jsx("div",{className:"grid grid-cols-3 gap-1.5 px-3",children:N.map(V=>{const O=$(V.time),F=`${E.date}-${O}`,B=x===F,Z=x!=null&&!B;return f.jsxs("button",{type:"button",disabled:t||!!x&&!B,"aria-pressed":B,"aria-label":`Termin am ${oi(E.date)} um ${O} Uhr wählen`,onClick:()=>p(F,`Ich wähle den Termin am ${E.date} um ${O} Uhr für ${c}.`,`Ich wähle den Termin am ${oi(E.date)} um ${O} Uhr.`),className:`inline-flex min-h-10 min-w-0 items-center justify-center gap-1 rounded-xl border px-1.5 py-1.5 text-xs font-semibold transition-all ${Kt} ${B?"border-primary bg-primary text-primary-foreground":`border-primary/25 bg-primary/[0.06] text-foreground ${x?"":"hover:border-primary/50 hover:bg-primary/10"} disabled:cursor-not-allowed ${Z?"opacity-40":"disabled:opacity-50"}`}`,children:[B&&f.jsx(zn,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":"true"}),O]},F)})}),T>0&&!x&&f.jsx("div",{className:"px-3 pt-1.5",children:f.jsxs("button",{type:"button",onClick:()=>b(V=>new Set(V).add(E.date)),className:`min-h-8 rounded-lg px-1 text-xs font-semibold text-primary hover:underline ${Kt}`,children:[T," weitere ",T===1?"Uhrzeit":"Uhrzeiten"," am ",pr(E.date)]})})]},E.date)})}),j>0&&!x&&f.jsx(xa,{label:`Weitere Tage anzeigen (${j})`,onClick:()=>h(E=>E+Pl)})]})}function kA({data:e,disabled:t,superseded:n,onAction:r}){const i=$(e.consent_text),a=$(e.privacy_text),{chosen:o,pick:s}=En(t,r);return i?f.jsx(tn,{title:"Datenschutz",children:f.jsxs("div",{className:"p-3",children:[f.jsxs("div",{className:"flex gap-2.5 text-xs leading-relaxed text-foreground/70",children:[f.jsx(cm,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsx("p",{className:"max-h-44 min-w-0 overflow-y-auto pr-1",children:i})]}),a&&f.jsxs("details",{className:"mt-2.5 rounded-lg bg-muted/60 text-xs",children:[f.jsx("summary",{className:`cursor-pointer select-none rounded-lg px-2.5 py-2 font-semibold text-primary ${Kt}`,children:"Datenschutzerklärung lesen"}),f.jsx("div",{className:"max-h-56 overflow-y-auto whitespace-pre-line px-2.5 pb-2.5 leading-relaxed text-foreground/70",children:a})]}),f.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:o==="consent"?f.jsx(dn,{label:"Einwilligung erteilt"}):o==="decline"?f.jsx(dn,{label:"Nicht zugestimmt",tone:"muted"}):n?f.jsx(Ro,{}):f.jsxs(f.Fragment,{children:[f.jsx(Tt,{disabled:t,onClick:()=>s("consent",`Ich willige ausdrücklich ein: „${i}“`,"Ich stimme der Datenverarbeitung ausdrücklich zu."),children:"Ausdrücklich zustimmen"}),f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>s("decline","Ich stimme der Datenverarbeitung nicht zu. Bitte buche keinen Termin.","Ich stimme nicht zu."),children:"Nicht zustimmen"})]})})]})}):null}function SA({expiresAt:e}){const t=new Date(e).getTime(),[n,r]=I.useState(()=>Date.now()),i=I.useRef(Math.max(1,t-Date.now()));if(I.useEffect(()=>{if(!Number.isFinite(t))return;const c=setInterval(()=>r(Date.now()),1e3);return()=>clearInterval(c)},[t]),!Number.isFinite(t))return null;const a=Math.max(0,t-n);if(a<=0)return f.jsx("div",{className:"mt-2 rounded-lg bg-amber-500/10 px-2.5 py-2 text-xs font-medium leading-relaxed text-amber-600",children:"Die Reservierung ist abgelaufen. Bitte wählen Sie erneut einen Termin."});const o=Math.ceil(a/1e3),s=Math.floor(o/60),l=o%60,u=Math.min(1,a/i.current);return f.jsxs("div",{className:"mt-2",children:[f.jsxs("div",{className:"text-xs leading-relaxed text-foreground/60",children:["Noch ",f.jsxs("span",{className:"font-semibold tabular-nums text-foreground/80",children:[s,":",String(l).padStart(2,"0")]})," Min. reserviert",El(e)?` (bis ${El(e)} Uhr)`:"","."]}),f.jsx("div",{className:"mt-1.5 h-1 overflow-hidden rounded-full bg-muted",role:"presentation",children:f.jsx("div",{className:"h-full rounded-full bg-primary transition-[width] duration-1000 ease-linear",style:{width:`${Math.round(u*100)}%`}})})]})}const wa=({data:e})=>{const t=pA(e.service_items),n=$(e.duration_minutes),r=mA(e.fee_summary);return!t.length&&!n&&!r?null:f.jsxs("div",{className:"mt-2 space-y-1 text-xs text-foreground/65",children:[t.length>0&&f.jsxs("div",{className:"flex items-start gap-1.5",children:[f.jsx(bo,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":"true"}),f.jsx("span",{children:t.join(", ")})]}),(n||r)&&f.jsxs("div",{className:"flex flex-wrap gap-x-3 gap-y-1",children:[n&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(lu,{className:"h-3.5 w-3.5","aria-hidden":"true"}),n," Min."]}),r&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(cu,{className:"h-3.5 w-3.5","aria-hidden":"true"}),r]})]})]})};function CA({data:e}){const t=$(e.expires_at);return f.jsx(tn,{title:"Termin reserviert",children:f.jsx("div",{className:"p-3",children:f.jsxs("div",{className:"flex items-start gap-2.5",children:[f.jsx(au,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsxs("div",{className:"min-w-0 flex-1",children:[f.jsx("div",{className:"text-sm font-semibold",children:[oi(e.date),$(e.time)&&`${$(e.time)} Uhr`].filter(Boolean).join(" · ")||"Slot reserviert"}),f.jsx(wa,{data:e}),f.jsx("div",{className:"mt-1 text-xs leading-relaxed text-foreground/60",children:"Die Buchung ist noch nicht bestätigt."}),t?f.jsx(SA,{expiresAt:t}):f.jsx("div",{className:"mt-1 text-xs leading-relaxed text-foreground/60",children:"Der Slot ist für 5 Minuten reserviert."})]})]})})})}function Br({data:e,disabled:t,bookingClosed:n,onAction:r,cancelled:i=!1,statusOnly:a=!1,rescheduled:o=!1}){const s=wd(e),l=Do(e),u=$(s.ticket_number),c=pr(s.start_datetime||e.start_datetime,!0),d=pr(e.previous_start_datetime,!0),p=$(s.status||e.status),m=i||p.toUpperCase()==="CANCELLED",h=m?"Termin storniert":o?"Termin verschoben":a?"Terminstatus":"Termin bestätigt",[g,b]=I.useState(null),y=e.self_service!==void 0,[x,S]=I.useState(!1),P=$(s.meeting_url||e.meeting_url),j=e.self_service!==!1,C=!m&&!n&&j&&(!p||p.toUpperCase()==="BOOKED")&&l,E=R=>{t||g||(b(R),r(R==="cancel"?`Ich möchte den Termin (booking_id ${l}) stornieren.`:`Ich möchte den Termin (booking_id ${l}) verschieben. Bitte zeige mir freie Termine.`,R==="cancel"?"Ich möchte diesen Termin stornieren.":"Ich möchte diesen Termin verschieben."))};return f.jsx(tn,{title:h,state:m?"cancelled":"success",children:f.jsxs("div",{className:"p-3",children:[f.jsxs("div",{className:"flex items-start justify-between gap-3",children:[f.jsxs("div",{className:"min-w-0",children:[c&&f.jsxs("div",{className:"flex items-center gap-1.5 text-sm font-semibold",children:[f.jsx(au,{className:"h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsxs("span",{className:m?"line-through decoration-foreground/40":"",children:[c," Uhr"]})]}),o&&d&&f.jsxs("div",{className:"mt-1 text-xs text-foreground/50",children:["Vorher: ",f.jsxs("span",{className:"line-through",children:[d," Uhr"]})," – freigegeben"]})]}),f.jsx(yA,{status:p})]}),u&&u!=="---"&&f.jsxs("div",{className:"mt-2 text-xs text-foreground/65",children:["Ticketnummer: ",f.jsx("span",{className:"font-semibold text-foreground",children:u})]}),f.jsx(wa,{data:s}),!m&&P&&f.jsxs("a",{href:P,target:"_blank",rel:"noopener noreferrer",className:`mt-3 inline-flex min-h-8 items-center gap-1.5 rounded-lg text-xs font-semibold text-primary hover:underline ${Kt}`,children:["Video-Termin öffnen ",f.jsx(xn,{className:"h-3.5 w-3.5","aria-hidden":"true"})]}),C&&!g&&x&&f.jsxs("div",{className:"mt-3 rounded-xl border border-destructive/25 bg-destructive/[0.04] p-2.5",children:[f.jsx("div",{className:"text-xs font-medium text-foreground/80",children:"Termin wirklich stornieren?"}),f.jsxs("div",{className:"mt-2 flex flex-wrap gap-2",children:[f.jsx(Tt,{variant:"destructive",disabled:t,onClick:()=>E("cancel"),children:"Ja, stornieren"}),f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>S(!1),children:"Termin behalten"})]})]}),C&&!g&&!x&&f.jsxs("div",{className:"mt-3 flex flex-wrap gap-2",children:[y&&f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>E("reschedule"),children:"Termin verschieben"}),f.jsx("button",{type:"button",disabled:t,onClick:()=>y?E("cancel"):S(!0),className:`min-h-10 rounded-xl border border-border px-3.5 py-2 text-xs font-semibold text-foreground/70 transition-colors hover:border-destructive/40 hover:text-destructive disabled:cursor-not-allowed disabled:opacity-50 ${Kt}`,children:"Termin stornieren"})]}),C&&g&&f.jsx("div",{className:"mt-3",children:f.jsx(dn,{label:g==="cancel"?"Stornierung angefragt":"Umbuchung angefragt",tone:"muted"})})]})})}function zA({data:e,disabled:t,superseded:n,onAction:r}){const i=$(e.kind)==="reschedule"?"reschedule":"cancel",a=cn(e.booking),o=$(e.booking_id||a.id),s=$(e.confirmation_id),l=pr(a.start_datetime,!0),u=[oi(e.new_date),$(e.new_time)&&`${$(e.new_time)} Uhr`].filter(Boolean).join(", "),c=new Date($(e.expires_at)).getTime(),[d,p]=I.useState(()=>Number.isFinite(c)&&c<=Date.now());I.useEffect(()=>{if(!Number.isFinite(c)||d)return;const b=window.setTimeout(()=>p(!0),Math.max(0,c-Date.now()));return()=>window.clearTimeout(b)},[c,d]);const{chosen:m,pick:h}=En(t,r),g=i==="cancel";return f.jsx(tn,{title:g?"Stornierung bestätigen":"Umbuchung bestätigen",state:g?"cancelled":void 0,children:f.jsxs("div",{className:"p-3",children:[f.jsx("div",{className:"text-sm font-semibold",children:g?"Termin wirklich stornieren?":"Termin wirklich verschieben?"}),f.jsxs("div",{className:"mt-2 space-y-1 text-xs leading-relaxed text-foreground/70",children:[l&&f.jsxs("div",{children:[g?"Termin":"Bisher",": ",f.jsxs("span",{className:"font-semibold text-foreground",children:[l," Uhr"]})]}),!g&&u&&f.jsxs("div",{children:["Neu: ",f.jsx("span",{className:"font-semibold text-foreground",children:u})]})]}),f.jsx(wa,{data:a}),f.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:m==="confirm"?f.jsx(dn,{label:g?"Stornierung bestätigt":"Umbuchung bestätigt"}):m==="keep"?f.jsx(dn,{label:"Termin bleibt bestehen",tone:"muted"}):d?f.jsx(Ro,{text:"Die Bestätigung ist abgelaufen. Bitte fragen Sie erneut."}):n?f.jsx(Ro,{}):f.jsxs(f.Fragment,{children:[f.jsx(Tt,{variant:g?"destructive":"primary",disabled:t,onClick:()=>h("confirm",g?`Bestätigt: Termin stornieren (booking_id ${o}, confirmation_id ${s}).`:`Bestätigt: Termin verschieben (booking_id ${o}, confirmation_id ${s}).`,g?"Ja, stornieren":"Ja, verschieben"),children:g?"Ja, stornieren":"Ja, verschieben"}),f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>h("keep",g?"Ich möchte den Termin behalten. Bitte nicht stornieren.":"Ich möchte den bisherigen Termin behalten. Bitte nicht verschieben.","Termin behalten"),children:"Termin behalten"})]})})]})})}function AA({data:e,disabled:t,superseded:n,onAction:r}){const i=$(e.question),a=sn(e.choices).filter(l=>$(l.label)),{chosen:o,pick:s}=En(t,r);return a.length?f.jsx("div",{className:"w-full max-w-[380px] min-w-0",role:"group","aria-label":i||"Auswahl",children:f.jsx("div",{className:"flex flex-wrap gap-2",children:a.map((l,u)=>{const c=$(l.label),d=String(u),p=o===d;return o!==null&&!p?null:p?f.jsx(dn,{label:c},d):f.jsx(Tt,{variant:u===0?"primary":"ghost",disabled:t||!!n,onClick:()=>s(d,$(l.reply)||c,c),children:c},d)})})}):null}function EA({data:e}){const t=$(e.url);return t?f.jsx(tn,{title:"Terminportal",children:f.jsx("div",{className:"p-3",children:f.jsxs("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:`inline-flex min-h-10 items-center gap-2 rounded-xl bg-primary px-3.5 py-2 text-xs font-semibold text-primary-foreground transition-colors hover:bg-primary/90 ${Kt}`,children:["Amturo-Terminportal öffnen ",f.jsx(xn,{className:"h-3.5 w-3.5","aria-hidden":"true"})]})})}):null}const PA=(e,t)=>{var s;const n=((s=e[t])==null?void 0:s.rpcData)??{},r=Do(n);let i=!1,a,o=!1;for(let l=t+1;l<e.length;l+=1){const u=e[l];u.isUser&&(i=!0);const c=u.rpcData;if(!c)continue;const d=$(c.action);d==="amturo_booking_intent_created"&&$(c.date)&&$(c.time)&&(a=`${$(c.date)}-${$(c.time)}`),d==="amturo_action_confirmation"&&$(c.new_date)&&$(c.new_time)&&(a=`${$(c.new_date)}-${$(c.new_time)}`),r&&(d==="amturo_booking_rescheduled"||d==="amturo_booking_cancelled")&&Do(c)===r&&(o=!0)}return{superseded:i,selectedSlot:a,bookingClosed:o}};function jA(e){switch($(e.data.action)){case"amturo_locations":return f.jsx(vA,{...e});case"amturo_counters":return f.jsx(xA,{...e});case"amturo_services":return f.jsx(jl,{...e});case"amturo_service_details":return f.jsx(jl,{...e,details:!0});case"amturo_slot_options":return f.jsx(wA,{...e});case"amturo_booking_consent":return f.jsx(kA,{...e});case"amturo_booking_intent_created":return f.jsx(CA,{data:e.data});case"amturo_booking_confirmed":return f.jsx(Br,{...e});case"amturo_booking_rescheduled":return f.jsx(Br,{...e,rescheduled:!0});case"amturo_booking_status":return f.jsx(Br,{...e,statusOnly:!0});case"amturo_booking_cancelled":return f.jsx(Br,{...e,cancelled:!0});case"amturo_action_confirmation":return f.jsx(zA,{...e});case"amturo_choices":return f.jsx(AA,{...e});case"amturo_self_booking_link":return f.jsx(EA,{data:e.data});default:return null}}const Nl={de:{newConversation:"Neues Gespräch",newConversationTitle:"Neues Gespräch beginnen?",newConversationDescription:"Der bisherige Verlauf wird aus diesem Chat entfernt. Sie beginnen wieder beim Assistenten. Die gespeicherte Unterhaltung wird dadurch nicht gelöscht.",newConversationActiveWarning:"Der Support ist noch verbunden oder angefragt. Die Übergabe wird dabei abgebrochen, und Antworten im bisherigen Gespräch sehen Sie hier nicht mehr.",cancelNewConversation:"Abbrechen",request:"Mit einem Menschen sprechen",requestMessage:"Ich möchte bitte mit einem Menschen sprechen.",requesting:"Übergabe wird vorbereitet …",queued:"Warten auf einen Menschen …",queuedHint:"Sie können in der Zwischenzeit weiterschreiben.",active:"{name} hilft Ihnen jetzt",closed:"Das Gespräch mit dem Support ist beendet",failed:"Die Übergabe hat nicht geklappt",retry:"Erneut versuchen",operatorFallback:"Support",supportTag:"Support",headerWaiting:"Verbindung mit einem Menschen …",headerActive:"Sie sprechen mit {name}",headerClosed:"Support-Gespräch beendet",placeholderQueued:"Nachricht an das Support-Team …",placeholderActive:"Nachricht an {name} …",operatorJoined:"{name} ist dem Gespräch beigetreten",conversationClosed:"{name} hat das Gespräch beendet",handoverCancelled:"Sie haben die Übergabe abgebrochen",cancelHandover:"Übergabe abbrechen",cancelHandoverConfirm:"Übergabe wirklich abbrechen?",cancelHandoverYes:"Ja, abbrechen",cancelHandoverNo:"Nein",cancelHandoverFailed:"Abbrechen hat nicht geklappt. Bitte erneut versuchen.",continueWithAssistant:"Weiter mit dem Assistenten",requestAgain:"Erneut einen Menschen anfragen",delivered:"An das Support-Team übermittelt",notDelivered:"Nicht übermittelt"},simple:{newConversation:"Neues Gespräch",newConversationTitle:"Neu anfangen?",newConversationDescription:"Die alten Nachrichten verschwinden hier. Sie beginnen wieder mit dem Chat-Bot. Die gespeicherten Nachrichten werden nicht gelöscht.",newConversationActiveWarning:"Sie warten auf einen Menschen oder sprechen noch mit ihm. Das Gespräch mit dem Menschen wird dann beendet.",cancelNewConversation:"Abbrechen",request:"Mit einem Menschen sprechen",requestMessage:"Ich möchte mit einem Menschen sprechen.",requesting:"Wir verbinden Sie …",queued:"Bitte warten. Ein Mensch kommt gleich.",queuedHint:"Sie können weiter schreiben.",active:"{name} hilft Ihnen jetzt",closed:"Das Gespräch ist beendet",failed:"Das hat nicht geklappt",retry:"Noch einmal",operatorFallback:"Support",supportTag:"Mensch",headerWaiting:"Wir suchen einen Menschen …",headerActive:"Sie sprechen mit {name}",headerClosed:"Gespräch beendet",placeholderQueued:"Nachricht an den Support …",placeholderActive:"Nachricht an {name} …",operatorJoined:"{name} ist jetzt da",conversationClosed:"{name} hat das Gespräch beendet",handoverCancelled:"Sie haben das Gespräch mit dem Menschen beendet",cancelHandover:"Nicht mehr warten",cancelHandoverConfirm:"Wirklich beenden?",cancelHandoverYes:"Ja, beenden",cancelHandoverNo:"Nein",cancelHandoverFailed:"Das hat nicht geklappt. Bitte noch einmal.",continueWithAssistant:"Weiter mit dem Chat-Bot",requestAgain:"Noch einmal einen Menschen fragen",delivered:"Nachricht ist angekommen",notDelivered:"Nachricht ist nicht angekommen"},en:{newConversation:"New conversation",newConversationTitle:"Start a new conversation?",newConversationDescription:"The current history will be removed from this chat. You will start again with the assistant. This does not delete the saved conversation.",newConversationActiveWarning:"Support is still connected or has been requested. The handover will be cancelled, and further replies in the previous conversation will no longer appear here.",cancelNewConversation:"Cancel",request:"Talk to a person",requestMessage:"I would like to speak with a person.",requesting:"Preparing the handover…",queued:"Waiting for a person…",queuedHint:"You can keep writing in the meantime.",active:"{name} is helping you now",closed:"The support conversation has ended",failed:"The handover didn't go through",retry:"Try again",operatorFallback:"Support",supportTag:"Support",headerWaiting:"Connecting you with a person…",headerActive:"You're talking to {name}",headerClosed:"Support conversation ended",placeholderQueued:"Message to the support team…",placeholderActive:"Message to {name}…",operatorJoined:"{name} joined the conversation",conversationClosed:"{name} ended the conversation",handoverCancelled:"You cancelled the handover",cancelHandover:"Cancel handover",cancelHandoverConfirm:"Cancel the handover?",cancelHandoverYes:"Yes, cancel",cancelHandoverNo:"No",cancelHandoverFailed:"Couldn't cancel. Please try again.",continueWithAssistant:"Continue with the assistant",requestAgain:"Ask for a person again",delivered:"Delivered to the support team",notDelivered:"Not delivered"},fr:{newConversation:"Nouvelle conversation",newConversationTitle:"Commencer une nouvelle conversation ?",newConversationDescription:"L’historique actuel disparaîtra de ce chat. Vous recommencerez avec l’assistant. La conversation enregistrée ne sera pas supprimée.",newConversationActiveWarning:"Le support est encore connecté ou sollicité. Le transfert sera annulé et les réponses de l’ancienne conversation ne s’afficheront plus ici.",cancelNewConversation:"Annuler",request:"Parler à une personne",requestMessage:"Je souhaite parler à une personne.",requesting:"Préparation du transfert…",queued:"En attente d'une personne…",queuedHint:"Vous pouvez continuer à écrire en attendant.",active:"{name} vous aide maintenant",closed:"La conversation avec le support est terminée",failed:"Le transfert n'a pas abouti",retry:"Réessayer",operatorFallback:"Support",supportTag:"Support",headerWaiting:"Mise en relation avec une personne…",headerActive:"Vous parlez avec {name}",headerClosed:"Conversation avec le support terminée",placeholderQueued:"Message à l'équipe support…",placeholderActive:"Message à {name}…",operatorJoined:"{name} a rejoint la conversation",conversationClosed:"{name} a terminé la conversation",handoverCancelled:"Vous avez annulé le transfert",cancelHandover:"Annuler le transfert",cancelHandoverConfirm:"Annuler vraiment le transfert ?",cancelHandoverYes:"Oui, annuler",cancelHandoverNo:"Non",cancelHandoverFailed:"L'annulation a échoué. Veuillez réessayer.",continueWithAssistant:"Continuer avec l'assistant",requestAgain:"Demander à nouveau une personne",delivered:"Transmis à l'équipe support",notDelivered:"Non transmis"},es:{newConversation:"Nueva conversación",newConversationTitle:"¿Iniciar una nueva conversación?",newConversationDescription:"El historial actual desaparecerá de este chat. Empezarás de nuevo con el asistente. La conversación guardada no se eliminará.",newConversationActiveWarning:"El soporte sigue conectado o solicitado. La transferencia se cancelará y las respuestas de la conversación anterior ya no aparecerán aquí.",cancelNewConversation:"Cancelar",request:"Hablar con una persona",requestMessage:"Quiero hablar con una persona.",requesting:"Preparando la transferencia…",queued:"Esperando a una persona…",queuedHint:"Mientras tanto puedes seguir escribiendo.",active:"{name} te está ayudando",closed:"La conversación con soporte ha terminado",failed:"La transferencia no se completó",retry:"Reintentar",operatorFallback:"Soporte",supportTag:"Soporte",headerWaiting:"Conectando con una persona…",headerActive:"Estás hablando con {name}",headerClosed:"Conversación con soporte finalizada",placeholderQueued:"Mensaje para el equipo de soporte…",placeholderActive:"Mensaje para {name}…",operatorJoined:"{name} se ha unido a la conversación",conversationClosed:"{name} ha finalizado la conversación",handoverCancelled:"Ha cancelado la transferencia",cancelHandover:"Cancelar transferencia",cancelHandoverConfirm:"¿Cancelar la transferencia?",cancelHandoverYes:"Sí, cancelar",cancelHandoverNo:"No",cancelHandoverFailed:"No se pudo cancelar. Inténtelo de nuevo.",continueWithAssistant:"Continuar con el asistente",requestAgain:"Pedir una persona de nuevo",delivered:"Entregado al equipo de soporte",notDelivered:"No entregado"},it:{newConversation:"Nuova conversazione",newConversationTitle:"Iniziare una nuova conversazione?",newConversationDescription:"La cronologia attuale scomparirà da questa chat. Ricomincerai con l’assistente. La conversazione salvata non verrà eliminata.",newConversationActiveWarning:"Il supporto è ancora collegato o è stato richiesto. Il trasferimento verrà annullato e le risposte della conversazione precedente non appariranno più qui.",cancelNewConversation:"Annulla",request:"Parla con una persona",requestMessage:"Vorrei parlare con una persona.",requesting:"Preparazione del trasferimento…",queued:"In attesa di una persona…",queuedHint:"Nel frattempo puoi continuare a scrivere.",active:"{name} ti sta aiutando",closed:"La conversazione con il supporto è terminata",failed:"Il trasferimento non è riuscito",retry:"Riprova",operatorFallback:"Supporto",supportTag:"Supporto",headerWaiting:"Collegamento con una persona…",headerActive:"Stai parlando con {name}",headerClosed:"Conversazione con il supporto terminata",placeholderQueued:"Messaggio al team di supporto…",placeholderActive:"Messaggio a {name}…",operatorJoined:"{name} si è unito alla conversazione",conversationClosed:"{name} ha terminato la conversazione",handoverCancelled:"Hai annullato il trasferimento",cancelHandover:"Annulla trasferimento",cancelHandoverConfirm:"Annullare il trasferimento?",cancelHandoverYes:"Sì, annulla",cancelHandoverNo:"No",cancelHandoverFailed:"Annullamento non riuscito. Riprova.",continueWithAssistant:"Continua con l'assistente",requestAgain:"Richiedi di nuovo una persona",delivered:"Consegnato al team di supporto",notDelivered:"Non consegnato"},tr:{newConversation:"Yeni görüşme",newConversationTitle:"Yeni görüşme başlatılsın mı?",newConversationDescription:"Mevcut geçmiş bu sohbetten kaldırılacak. Asistanla yeniden başlayacaksınız. Kayıtlı görüşme silinmeyecek.",newConversationActiveWarning:"Destek hâlâ bağlı veya talep edildi. Aktarım iptal edilecek ve önceki görüşmedeki yanıtlar artık burada görünmeyecek.",cancelNewConversation:"İptal",request:"Bir kişiyle konuş",requestMessage:"Bir kişiyle konuşmak istiyorum.",requesting:"Aktarım hazırlanıyor…",queued:"Bir kişi bekleniyor…",queuedHint:"Bu sırada yazmaya devam edebilirsiniz.",active:"{name} şimdi size yardımcı oluyor",closed:"Destek görüşmesi sona erdi",failed:"Aktarım gerçekleşmedi",retry:"Tekrar dene",operatorFallback:"Destek",supportTag:"Destek",headerWaiting:"Bir kişiye bağlanıyor…",headerActive:"{name} ile konuşuyorsunuz",headerClosed:"Destek görüşmesi sona erdi",placeholderQueued:"Destek ekibine mesaj…",placeholderActive:"{name} için mesaj…",operatorJoined:"{name} görüşmeye katıldı",conversationClosed:"{name} görüşmeyi sonlandırdı",handoverCancelled:"Aktarımı iptal ettiniz",cancelHandover:"Aktarımı iptal et",cancelHandoverConfirm:"Aktarım iptal edilsin mi?",cancelHandoverYes:"Evet, iptal et",cancelHandoverNo:"Hayır",cancelHandoverFailed:"İptal edilemedi. Lütfen tekrar deneyin.",continueWithAssistant:"Asistanla devam et",requestAgain:"Tekrar bir kişi iste",delivered:"Destek ekibine iletildi",notDelivered:"İletilemedi"},ar:{newConversation:"محادثة جديدة",newConversationTitle:"هل تريد بدء محادثة جديدة؟",newConversationDescription:"سيختفي السجل الحالي من هذه الدردشة وستبدأ من جديد مع المساعد. لن تُحذف المحادثة المحفوظة.",newConversationActiveWarning:"لا يزال الدعم متصلاً أو تم طلبه. سيتم إلغاء التحويل ولن تظهر هنا الردود في المحادثة السابقة.",cancelNewConversation:"إلغاء",request:"التحدث مع شخص",requestMessage:"أرغب في التحدث مع شخص.",requesting:"جارٍ تجهيز التحويل…",queued:"في انتظار أحد الموظفين…",queuedHint:"يمكنك متابعة الكتابة في هذه الأثناء.",active:"{name} يساعدك الآن",closed:"انتهت محادثة الدعم",failed:"لم يتم التحويل",retry:"حاول مجددًا",operatorFallback:"الدعم",supportTag:"الدعم",headerWaiting:"جارٍ توصيلك بأحد الموظفين…",headerActive:"أنت تتحدث مع {name}",headerClosed:"انتهت محادثة الدعم",placeholderQueued:"رسالة إلى فريق الدعم…",placeholderActive:"رسالة إلى {name}…",operatorJoined:"انضم {name} إلى المحادثة",conversationClosed:"أنهى {name} المحادثة",handoverCancelled:"لقد ألغيت التحويل",cancelHandover:"إلغاء التحويل",cancelHandoverConfirm:"هل تريد إلغاء التحويل؟",cancelHandoverYes:"نعم، إلغاء",cancelHandoverNo:"لا",cancelHandoverFailed:"تعذّر الإلغاء. يُرجى المحاولة مرة أخرى.",continueWithAssistant:"المتابعة مع المساعد",requestAgain:"طلب موظف مرة أخرى",delivered:"تم الإرسال إلى فريق الدعم",notDelivered:"لم يتم الإرسال"},pl:{newConversation:"Nowa rozmowa",newConversationTitle:"Rozpocząć nową rozmowę?",newConversationDescription:"Dotychczasowa historia zniknie z tego czatu. Zaczniesz od nowa z asystentem. Zapisana rozmowa nie zostanie usunięta.",newConversationActiveWarning:"Wsparcie jest nadal połączone lub zostało poproszone o pomoc. Przekazanie zostanie anulowane, a odpowiedzi z poprzedniej rozmowy nie pojawią się tutaj.",cancelNewConversation:"Anuluj",request:"Porozmawiaj z człowiekiem",requestMessage:"Chcę porozmawiać z człowiekiem.",requesting:"Przygotowujemy przekazanie…",queued:"Czekamy na konsultanta…",queuedHint:"W międzyczasie możesz dalej pisać.",active:"{name} teraz Ci pomaga",closed:"Rozmowa ze wsparciem została zakończona",failed:"Przekazanie nie powiodło się",retry:"Spróbuj ponownie",operatorFallback:"Wsparcie",supportTag:"Wsparcie",headerWaiting:"Łączymy Cię z konsultantem…",headerActive:"Rozmawiasz z {name}",headerClosed:"Rozmowa ze wsparciem zakończona",placeholderQueued:"Wiadomość do zespołu wsparcia…",placeholderActive:"Wiadomość do {name}…",operatorJoined:"{name} dołącza do rozmowy",conversationClosed:"{name} kończy rozmowę",handoverCancelled:"Anulowano przekazanie",cancelHandover:"Anuluj przekazanie",cancelHandoverConfirm:"Czy na pewno anulować przekazanie?",cancelHandoverYes:"Tak, anuluj",cancelHandoverNo:"Nie",cancelHandoverFailed:"Nie udało się anulować. Spróbuj ponownie.",continueWithAssistant:"Kontynuuj z asystentem",requestAgain:"Poproś ponownie o konsultanta",delivered:"Dostarczono do zespołu wsparcia",notDelivered:"Nie dostarczono"},ua:{newConversation:"Нова розмова",newConversationTitle:"Почати нову розмову?",newConversationDescription:"Поточна історія зникне з цього чату. Ви почнете знову з асистентом. Збережену розмову не буде видалено.",newConversationActiveWarning:"Підтримку ще підключено або запит надіслано. Передачу буде скасовано, а відповіді в попередній розмові тут більше не з’являтимуться.",cancelNewConversation:"Скасувати",request:"Поговорити з людиною",requestMessage:"Я хочу поговорити з людиною.",requesting:"Готуємо передачу…",queued:"Очікуємо на оператора…",queuedHint:"Тим часом ви можете продовжувати писати.",active:"{name} зараз вам допомагає",closed:"Розмову з підтримкою завершено",failed:"Не вдалося передати діалог",retry:"Спробувати ще",operatorFallback:"Підтримка",supportTag:"Підтримка",headerWaiting:"З’єднуємо вас з оператором …",headerActive:"Ви спілкуєтеся з {name}",headerClosed:"Розмову з підтримкою завершено",placeholderQueued:"Повідомлення для служби підтримки …",placeholderActive:"Повідомлення для {name} …",operatorJoined:"{name} приєднується до розмови",conversationClosed:"{name} завершує розмову",handoverCancelled:"Ви скасували передачу",cancelHandover:"Скасувати передачу",cancelHandoverConfirm:"Скасувати передачу?",cancelHandoverYes:"Так, скасувати",cancelHandoverNo:"Ні",cancelHandoverFailed:"Не вдалося скасувати. Спробуйте ще раз.",continueWithAssistant:"Продовжити з асистентом",requestAgain:"Запросити оператора ще раз",delivered:"Доставлено службі підтримки",notDelivered:"Не доставлено"}};function NA(e,t){const n=Nl.en,r=Nl[e]||n;return{...n,...r,...(t==null?void 0:t[e])||{}}}function ai(e,t){return e.replace("{name}",t)}function TA({message:e,labels:t,innerRef:n}){const r=e.systemKind==="operator_joined",i=e.operatorName||(t==null?void 0:t.operatorFallback)||"Support",a=(r?t==null?void 0:t.operatorJoined:e.systemKind==="handover_cancelled"?t==null?void 0:t.handoverCancelled:t==null?void 0:t.conversationClosed)||"{name}",o=ai(a,i);return f.jsxs("div",{ref:n,className:"handover-in flex items-center gap-3 py-1",role:"note",children:[f.jsx("span",{className:"h-px min-w-[10px] flex-1 bg-border","aria-hidden":"true"}),f.jsxs("span",{className:"flex min-w-0 items-center gap-2 text-[11px] text-foreground/60",children:[r?f.jsx(hi,{imageUrl:e.operatorImageUrl,name:i,size:20}):f.jsx("span",{className:"inline-flex h-[20px] w-[20px] shrink-0 items-center justify-center rounded-full bg-muted text-foreground/50","aria-hidden":"true",children:f.jsx(zn,{})}),f.jsx("span",{className:"truncate",title:o,children:o}),f.jsx("span",{className:"shrink-0 text-foreground/40",children:e.time})]}),f.jsx("span",{className:"h-px min-w-[10px] flex-1 bg-border","aria-hidden":"true"})]})}const Wr={de:"🔍 Suche...",simple:"🔍 Suche...",en:"🔍 Searching...",fr:"🔍 Recherche...",es:"🔍 Buscando...",it:"🔍 Ricerca...",tr:"🔍 Arıyor...",ar:"🔍 جارٍ البحث...",pl:"🔍 Szukanie...",ua:"🔍 Пошук..."},MA={de:xl,simple:xl,en:ba,fr:jS,es:$1,it:sC,tr:xz,ar:G0,pl:HC,ua:nA},IA=(e,t,n)=>{const r=e.indexOf(":"),i=e.indexOf("?"),a=e.indexOf("#"),o=e.indexOf("/");return r!==-1&&(o===-1||r<o)&&(i===-1||r<i)&&(a===-1||r<a)&&/^tel$/i.test(e.slice(0,r))?e:Gc(e)},DA={a:({node:e,href:t,...n})=>{const r=typeof t=="string"&&/^https?:\/\//i.test(t);return f.jsx("a",{...n,href:t,target:r?"_blank":void 0,rel:r?"noopener noreferrer":void 0})}},RA=e=>{if(!e)return null;const t=e instanceof Date?e:new Date(e);return isNaN(t.getTime())?null:t};function LA({messages:e,quickActions:t,theme:n,isMobile:r,inputRef:i,setInput:a,selectedLanguage:o,toolStatus:s,isTyping:l,lastBotMessageRef:u,messagesEndRef:c,scrollContainerRef:d,onScroll:p,showScrollButton:m,onScrollToBottom:h,handleFeedback:g,botAvatarSrc:b,scrollLabel:y,botAvatarAlt:x,ttsModelId:S,ttsVoiceId:P,ttsVoiceSettings:j,onStructuredAction:C,handoverLabels:E,quickActionsPauseOnHover:R=!1}){return f.jsxs(f.Fragment,{children:[f.jsxs("div",{ref:d,onScroll:p,role:"log","aria-live":"polite","aria-label":"Chat-Nachrichten",className:"flex-1 min-h-0 overflow-y-auto p-5 bg-[hsl(var(--chat-bg))] flex flex-col gap-4 scrollbar-thin scrollbar-track-muted scrollbar-thumb-primary relative",children:[e.length===1&&f.jsx(rA,{quickActions:t,theme:n,pauseOnHover:R,onSelect:M=>{var k;a(M),r||(k=i.current)==null||k.focus()}}),e.map((M,k)=>{const N=M.sender==="operator",T=M.rpcData?PA(e,k):void 0,V=k===e.length-1;if(M.sender==="system")return f.jsx(TA,{message:M,labels:E,innerRef:V?u:null},k);const O=k>0?e[k-1]:void 0,F=M.operatorName||(E==null?void 0:E.operatorFallback)||"Support",B=N&&!((O==null?void 0:O.sender)==="operator"&&O.operatorName===M.operatorName),Z=RA(M.timestamp),X=Z?y0(Z,{addSuffix:!0,locale:MA[o]||ba}):M.time||"";return f.jsxs("div",{ref:!M.isUser&&k===e.length-1?u:null,className:`flex gap-3 animate-message-slide-in ${M.isUser?"flex-row-reverse":""}`,children:[N?f.jsx(hi,{imageUrl:M.operatorImageUrl,name:F,size:36,className:"shadow-[0_4px_15px_rgba(0,0,0,0.15)]"}):f.jsx("div",{className:`w-9 h-9 rounded-full flex items-center justify-center flex-shrink-0 shadow-[0_4px_15px_rgba(0,0,0,0.2)] border ${M.isUser?"bg-[hsl(var(--chat-avatar-user))] border-primary":"bg-[hsl(var(--chat-avatar-bot))] border-primary"}`,children:M.isUser?f.jsx(mm,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"}):f.jsx("img",{src:b,alt:x,className:"w-6 h-6 object-contain drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"})}),f.jsxs("div",{className:M.rpcData?"min-w-0 flex-1":void 0,children:[f.jsxs("div",{className:"flex flex-col gap-2 w-full max-w-[90%]",children:[B?f.jsxs("div",{className:"flex min-w-0 items-center gap-1.5 px-1 text-xs",children:[f.jsx("span",{className:"truncate font-semibold text-foreground/80",title:F,children:F}),f.jsx("span",{className:"shrink-0 rounded-full bg-[hsl(var(--chat-human)/0.14)] px-1.5 py-px text-[10px] font-semibold text-[hsl(var(--chat-human))]",children:(E==null?void 0:E.supportTag)||"Support"})]}):null,M.rpcData?f.jsx(jA,{data:M.rpcData,disabled:l,superseded:T==null?void 0:T.superseded,selectedSlot:T==null?void 0:T.selectedSlot,bookingClosed:T==null?void 0:T.bookingClosed,onAction:C}):f.jsx("div",{className:`w-full px-4 py-3 rounded-[18px] leading-relaxed text-sm transition-all hover:-translate-y-0.5 ${M.isUser?"bg-primary text-primary-foreground shadow-[0_6px_20px_hsl(var(--glow-primary)),inset_0_1px_2px_rgba(255,255,255,0.15)] hover:shadow-[0_10px_30px_hsl(var(--glow-primary)),inset_0_1px_2px_rgba(255,255,255,0.25)]":N?"rounded-ss-[6px] bg-[hsl(var(--chat-message-human))] border border-[hsl(var(--chat-message-human-border))] text-foreground shadow-[0_4px_15px_rgba(0,0,0,0.06)] hover:shadow-[0_8px_25px_rgba(0,0,0,0.1)] whitespace-pre-wrap break-words":"bg-[hsl(var(--chat-message-bot))] backdrop-blur-[20px] border border-[hsl(var(--chat-message-bot-border))] text-foreground shadow-[0_4px_15px_rgba(0,0,0,0.08)] hover:shadow-[0_8px_25px_rgba(0,0,0,0.12)]"}`,children:M.isUser||N?M.text:f.jsx("div",{className:`prose prose-sm ${n!=="light"?"prose-invert":""} max-w-none prose-p:my-2 prose-headings:my-3 prose-ul:my-2 prose-ol:my-2 prose-li:my-1 prose-code:text-xs prose-pre:bg-muted prose-pre:text-foreground prose-strong:text-foreground prose-a:text-foreground hover:prose-a:text-primary break-words prose-a:[overflow-wrap:anywhere] text-foreground`,children:f.jsx(gx,{remarkPlugins:[Pk],components:DA,urlTransform:IA,children:M.text})})}),!M.isUser&&M.sources&&M.sources.length>0&&f.jsx(iA,{sources:M.sources}),!M.isUser&&M.files&&M.files.length>0&&f.jsxs("div",{className:"space-y-1.5 w-full",children:[f.jsx("div",{className:"text-[10px] uppercase tracking-wider text-foreground/50 font-semibold",children:"Dateien"}),f.jsx("div",{className:"flex flex-col gap-1",children:M.files.map((K,w)=>f.jsxs("a",{href:K.url,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 text-xs text-foreground/70 bg-muted rounded-lg px-3 py-2 border border-border hover:bg-muted/80 transition-all group",children:[f.jsx(uu,{className:"w-3 h-3 flex-shrink-0 group-hover:scale-110 transition-transform"}),f.jsx("span",{className:"truncate",children:K.name})]},w))})]})]}),f.jsxs("div",{className:`flex items-center gap-2 mt-1.5 ${M.isUser?"justify-end":"justify-start"}`,children:[M.isUser&&M.delivery==="delivered"?f.jsxs("span",{className:"handover-in inline-flex items-center text-[hsl(var(--chat-human))]",title:E==null?void 0:E.delivered,children:[f.jsx(zn,{className:"w-3 h-3","aria-hidden":"true"}),f.jsx("span",{className:"sr-only",children:E==null?void 0:E.delivered})]}):null,M.isUser&&M.delivery==="failed"?f.jsxs("span",{className:"handover-in inline-flex items-center gap-1 text-[10px] text-[hsl(var(--chat-danger))]",children:[f.jsx(ln,{className:"w-3 h-3","aria-hidden":"true"}),E==null?void 0:E.notDelivered]}):null,f.jsx("div",{className:"text-[10px] text-foreground/40",title:M.time,children:X}),!M.isUser&&!M.rpcData&&!N&&f.jsxs("div",{className:"flex gap-1",children:[f.jsx(cA,{text:M.text,language:o,modelId:S,voiceId:P,voiceSettings:j,className:"p-1 rounded transition-colors text-foreground/40 hover:text-primary"}),f.jsx("button",{onClick:()=>g(k,"up"),"aria-label":"Hilfreich","aria-pressed":M.feedback==="up",className:`p-1 rounded transition-colors ${M.feedback==="up"?"text-green-400":"text-foreground/40 hover:text-green-400"}`,children:f.jsx(fu,{className:"w-3 h-3"})}),f.jsx("button",{onClick:()=>g(k,"down"),"aria-label":"Nicht hilfreich","aria-pressed":M.feedback==="down",className:`p-1 rounded transition-colors ${M.feedback==="down"?"text-red-400":"text-foreground/40 hover:text-red-400"}`,children:f.jsx(fm,{className:"w-3 h-3"})})]})]})]})]},k)}),l&&f.jsxs("div",{ref:u,className:"flex gap-3",children:[f.jsx("div",{className:"w-9 h-9 rounded-full flex items-center justify-center flex-shrink-0 shadow-[0_4px_15px_rgba(0,0,0,0.2)] border border-primary bg-[hsl(var(--chat-avatar-bot))]",children:f.jsx(_r,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"})}),s.active?f.jsx("div",{className:"px-4 py-3 max-w-[85%] w-fit bg-card/50 backdrop-blur-sm rounded-2xl rounded-tl-none border border-border/30 shadow-lg animate-message-slide-in",children:f.jsx("div",{className:"text-sm text-foreground/70",children:s.toolName==="human_handover"&&E?E.requesting:Wr[o]||Wr.en})}):f.jsx(dA,{})]}),s.active&&!l&&f.jsxs("div",{ref:u,className:"flex gap-3",children:[f.jsx("div",{className:"w-9 h-9 rounded-full flex items-center justify-center flex-shrink-0 shadow-[0_4px_15px_rgba(0,0,0,0.2)] border border-primary bg-[hsl(var(--chat-avatar-bot))]",children:f.jsx(_r,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"})}),f.jsx("div",{className:"px-4 py-3 max-w-[85%] w-fit bg-card/50 backdrop-blur-sm rounded-2xl rounded-tl-none border border-border/30 shadow-lg animate-message-slide-in",children:f.jsx("div",{className:"text-sm text-foreground/70",children:s.toolName==="human_handover"&&E?E.requesting:Wr[o]||Wr.en})})]}),f.jsx("div",{ref:c})]}),m&&f.jsx("button",{onClick:h,className:"absolute bottom-36 right-4 bg-primary/95 backdrop-blur-sm text-primary-foreground rounded-full p-3 shadow-[0_8px_30px_rgb(0,0,0,0.12)] hover:shadow-[0_12px_40px_rgb(0,0,0,0.16)] hover:bg-primary hover:scale-110 transition-all duration-300 z-20 animate-[slideUp_0.3s_ease-out] group flex items-center justify-center","aria-label":y,children:f.jsx(Qf,{className:"w-5 h-5",strokeWidth:2.5})})]})}const Tl=({className:e,pulse:t})=>f.jsxs("span",{className:"relative inline-flex h-2 w-2 shrink-0","aria-hidden":"true",children:[t?f.jsx("span",{className:`handover-pulse absolute inline-flex h-full w-full rounded-full ${e}`}):null,f.jsx("span",{className:`relative inline-flex h-2 w-2 rounded-full ${e}`})]}),Ml="px-4 pt-2.5 bg-[hsl(var(--chat-input-bg))] flex flex-col items-center gap-1.5",Il="handover-in inline-flex max-w-full min-w-0 items-center gap-2 rounded-full border px-3 py-1.5 text-xs transition-colors duration-500",ir="inline-flex items-center gap-1.5 rounded-full border border-border bg-card/60 px-2.5 py-1 text-[11px] font-medium text-foreground/75 transition-colors hover:border-primary/40 hover:bg-primary/5 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary";function OA({status:e,operator:t,labels:n,disabled:r,showRequestButton:i=!0,onRequest:a,onContinueWithAssistant:o,onCancel:s}){const l=(t==null?void 0:t.displayName)||n.operatorFallback,[u,c]=I.useState("idle"),[d,p]=I.useState(!1);if(I.useEffect(()=>{c("idle"),p(!1)},[e]),e==="idle")return i?f.jsx("div",{className:Ml,children:f.jsxs("button",{type:"button",disabled:r,onClick:a,className:`${Il} border-border bg-card/60 text-foreground/70 hover:border-[hsl(var(--chat-human)/0.6)] hover:bg-[hsl(var(--chat-human)/0.08)] hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary disabled:cursor-not-allowed disabled:opacity-45`,children:[f.jsx(yo,{className:"shrink-0 text-[hsl(var(--chat-human))]","aria-hidden":"true"}),f.jsx("span",{className:"truncate font-medium",children:n.request})]})}):null;const h={requesting:{tone:"border-border bg-card/70 text-foreground/75",lead:f.jsx(Tl,{className:"bg-primary",pulse:!0}),text:n.requesting},queued:{tone:"border-[hsl(var(--chat-waiting)/0.45)] bg-[hsl(var(--chat-waiting)/0.1)] text-foreground/80",lead:f.jsx(Tl,{className:"bg-[hsl(var(--chat-waiting))]",pulse:!0}),text:n.queued,hint:n.queuedHint},active:{tone:"border-[hsl(var(--chat-human)/0.45)] bg-[hsl(var(--chat-human)/0.1)] text-foreground",lead:f.jsx(hi,{imageUrl:t==null?void 0:t.imageUrl,name:l,size:20}),text:ai(n.active,l),tag:n.supportTag},closed:{tone:"border-border bg-muted/50 text-foreground/70",lead:f.jsx(zn,{className:"shrink-0","aria-hidden":"true"}),text:n.closed},failed:{tone:"border-[hsl(var(--chat-danger)/0.4)] bg-[hsl(var(--chat-danger)/0.1)] text-[hsl(var(--chat-danger))]",lead:f.jsx(ln,{className:"shrink-0","aria-hidden":"true"}),text:n.failed}}[e];return f.jsxs("div",{className:Ml,role:"status","aria-live":"polite",children:[f.jsxs("div",{className:`${Il} ${h.tone}`,children:[h.lead,f.jsx("span",{className:"min-w-0 truncate font-medium",title:h.text,children:h.text}),h.tag?f.jsx("span",{className:"shrink-0 rounded-full bg-[hsl(var(--chat-human)/0.15)] px-1.5 py-px text-[10px] font-semibold text-[hsl(var(--chat-human))]",children:h.tag}):null,e==="failed"?f.jsxs("button",{type:"button",onClick:a,className:"ms-1 inline-flex shrink-0 items-center gap-1 rounded-full px-2 py-0.5 font-semibold hover:bg-[hsl(var(--chat-danger)/0.12)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[hsl(var(--chat-danger))]",children:[f.jsx(du,{"aria-hidden":"true"}),n.retry]}):null]},e),h.hint?f.jsx("p",{className:"handover-in text-center text-[10px] text-muted-foreground",children:h.hint}):null,(e==="queued"||e==="active")&&s?u==="idle"?f.jsxs("button",{type:"button",onClick:()=>c("confirming"),className:ir,children:[f.jsx(un,{"aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:n.cancelHandover})]}):f.jsxs("div",{className:"handover-in flex max-w-full flex-wrap items-center justify-center gap-1.5",role:"group","aria-label":n.cancelHandoverConfirm,children:[f.jsx("span",{className:"text-[11px] text-foreground/75",children:n.cancelHandoverConfirm}),f.jsxs("button",{type:"button",disabled:u==="sending",onClick:async()=>{c("sending"),p(!1),await s()||(c("confirming"),p(!0))},className:`${ir} disabled:opacity-45`,children:[f.jsx(un,{"aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:n.cancelHandoverYes})]}),f.jsx("button",{type:"button",disabled:u==="sending",onClick:()=>{c("idle"),p(!1)},className:`${ir} disabled:opacity-45`,children:f.jsx("span",{className:"truncate",children:n.cancelHandoverNo})})]}):null,d?f.jsx("p",{className:"handover-in text-center text-[10px] text-[hsl(var(--chat-danger))]",role:"alert",children:n.cancelHandoverFailed}):null,e==="closed"?f.jsxs("div",{className:"handover-in flex max-w-full flex-wrap justify-center gap-1.5",children:[f.jsxs("button",{type:"button",onClick:o,className:ir,children:[f.jsx(_r,{"aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:n.continueWithAssistant})]}),f.jsxs("button",{type:"button",onClick:a,disabled:r,className:`${ir} disabled:opacity-45`,children:[f.jsx(yo,{className:"text-[hsl(var(--chat-human))]","aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:n.requestAgain})]})]}):null]})}function FA({labels:e,disabled:t,active:n,onConfirm:r,onStarted:i}){const a=I.useRef(null),o=I.useId(),s=I.useId(),[l,u]=I.useState(!1);return f.jsxs("div",{className:"flex shrink-0 justify-end border-b border-border px-4 py-1 bg-[hsl(var(--chat-bg))]",children:[f.jsxs("button",{type:"button",disabled:t,onClick:()=>{var c;return(c=a.current)==null?void 0:c.showModal()},className:"inline-flex min-h-9 items-center gap-1.5 rounded-md px-2 text-xs text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary disabled:opacity-40",children:[f.jsx(du,{className:"h-3.5 w-3.5","aria-hidden":"true"}),e.newConversation]}),f.jsxs("dialog",{ref:a,"aria-labelledby":o,"aria-describedby":s,onKeyDown:c=>c.stopPropagation(),className:"handover-reset-dialog m-auto max-h-[calc(100dvh_-_32px)] w-[calc(100vw_-_32px)] max-w-sm overflow-y-auto rounded-2xl border border-border bg-background p-5 text-foreground shadow-xl",children:[f.jsx("h2",{id:o,className:"text-lg font-semibold",children:e.newConversationTitle}),f.jsxs("div",{id:s,className:"mt-3 space-y-3 text-sm leading-relaxed text-muted-foreground",children:[f.jsx("p",{children:e.newConversationDescription}),n&&f.jsx("p",{className:"border-s-2 border-[hsl(var(--chat-waiting))] ps-3 text-foreground",children:e.newConversationActiveWarning})]}),f.jsxs("div",{className:"mt-5 flex flex-wrap justify-end gap-2",children:[f.jsx(ut,{type:"button",variant:"outline",autoFocus:!0,disabled:l,onClick:()=>{var c;return(c=a.current)==null?void 0:c.close()},children:e.cancelNewConversation}),f.jsx(ut,{type:"button",disabled:l||t,onClick:async()=>{var c;u(!0);try{await r()&&((c=a.current)==null||c.close(),i())}finally{u(!1)}},children:e.newConversation})]})]})]})}const Dl=(e,t)=>{if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0;n<e.length;n++){const r=e[n],i=t[n];if(!r||!i||r.id!==i.id||r.title!==i.title||r.message!==i.message)return!1}return!0},BA=["audio/webm","audio/mp4","audio/mpeg","audio/aac"],WA={"audio/webm":"webm","audio/mp4":"mp4","audio/mpeg":"mp3","audio/aac":"aac"},qA=e=>{if(typeof window>"u"||typeof MediaRecorder>"u")throw new Error("MediaRecorder is not supported in this environment");const t=n=>n?new MediaRecorder(e,{mimeType:n}):new MediaRecorder(e);for(const n of BA)try{return{recorder:t(n),mimeType:n}}catch(r){if(r instanceof DOMException&&r.name==="NotSupportedError")continue;throw r}return{recorder:t(),mimeType:null}},VA=e=>WA[e]||e.split("/")[1]||"webm",ka=I.forwardRef(({isOpen:e,onClose:t,config:n,floatingZIndexBase:r=1e5},i)=>{var Oa,Fa,Ba,Wa,qa,Va,Ja,Ha,Ua,Xa,Za;const a=(Oa=n.languages)!=null&&Oa.length?n.languages:Le.languages,o=a.some(L=>L.code===n.defaultLanguage)?n.defaultLanguage:((Fa=a[0])==null?void 0:Fa.code)||Le.defaultLanguage,s=n.translations||Le.translations,l=n.dialogLayout||Le.dialogLayout||"floating",u=l==="embedded",[c,d]=I.useState(""),[p,m]=I.useState(!1),[h,g]=I.useState(0),[b,y]=I.useState(!1),x=I.useRef(null),S=I.useRef(null),P=I.useRef([]),j=I.useRef(null),[C,E]=I.useState(()=>{const L=localStorage.getItem("klausLanguage"),J=L==="uk"?"ua":L;return J&&a.some(Y=>Y.code===J)?J:o}),[R,M]=I.useState(!1),[k,N]=I.useState(!1),[T,V]=I.useState(!1),[O,F]=I.useState(!1),[B,Z]=I.useState(()=>{const L=localStorage.getItem("klausFontSize");return jh(L)?L:"normal"}),[X,K]=I.useState(()=>localStorage.getItem("klausHighContrast")==="true"),[w,se]=I.useState(()=>localStorage.getItem("klausPrivacyAccepted")==="true"),[Ee,z]=I.useState(!1),[Me,We]=I.useState(null),Te=I.useRef(null),Re=I.useRef(null),Pe=I.useRef(null),le=I.useRef(null),Ce=I.useRef(null),[Q,U]=I.useState({top:0,left:0}),ee=I.useCallback(()=>({userPreferredLanguage:C,currentDate:new Date().toISOString()}),[C]),[fe,Oe]=I.useState(null),{theme:pe,setTheme:Qe}=Cu(),Se=s[o]||Le.translations[o],xe=s[C]||Se,Ze=(xe==null?void 0:xe.welcome)||(Se==null?void 0:Se.welcome)||Le.translations[Le.defaultLanguage].welcome,ie=!!n.startOnFirstUserMessage&&!(n.initialMessage&&n.conversationId),me=NA(C,(Ba=n.humanHandover)==null?void 0:Ba.translations);I.useEffect(()=>{N(l==="centered")},[l]),I.useEffect(()=>{if(typeof document>"u"||!(e&&l==="centered"))return;const L=document.body,J=L.style.overflow;return L.style.overflow="hidden",()=>{L.style.overflow=J}},[e,l]),I.useEffect(()=>{const L=()=>window.matchMedia("(max-width: 768px)").matches,J=()=>V(L());return J(),window.addEventListener("resize",J),()=>window.removeEventListener("resize",J)},[]),I.useEffect(()=>{e&&l==="floating"&&(u||T&&N(!0))},[e,T,l,u]);const{messages:de,isTyping:Ve,quickReplies:Je,toolStatus:D,conversationId:W,assistantTenant:ne,handover:te,initialize:_,sendMessage:ze,requestHumanHandover:Ye,cancelHumanHandover:at,continueWithAssistant:jt,startNewConversation:ft,updateMessageFeedback:tt,appendAssistantMessage:Dt}=Ah({promptId:n.promptId||"default",initialMessage:n.initialMessage,initialConversationId:n.initialMessage&&n.conversationId?n.conversationId:void 0,startOnFirstUserMessage:ie,localWelcomeMessage:ie?Ze:void 0,getContext:ee,humanHandover:(Wa=n.humanHandover)!=null&&Wa.enabled?{enabled:!0,pollIntervalMs:n.humanHandover.pollIntervalMs,requestMessage:me.requestMessage}:void 0,onError:L=>{const J=ds[C]?C:o||"de",Y=ds[J],oe=(L||"").toLowerCase();if(oe.includes("content filter")){const Ue=Ji[C]?C:"en",zt=Ji[Ue]||Ji.en;Dt(zt);return}const Ne=ah.some(Ue=>oe.includes(Ue));!Ne&&L&&console.error("Unhandled chat error:",L),bt({title:Y.title,description:Ne&&L?L:Y.unexpected,variant:"destructive"})}}),rt=s.en||Le.translations.en,Pn={...Le.links,...n.links},xt=n.branding.poweredBy||Le.branding.poweredBy,nn=(xe==null?void 0:xe.settings)||(Se==null?void 0:Se.settings)||Le.translations[Le.defaultLanguage].settings,jn=(()=>{const L=n.aboutChatbotDescription;if(!L)return;if(typeof L=="string")return L;const J=L[C];if(typeof J=="string")return J;const Y=L[o];if(typeof Y=="string")return Y;const oe=L[Le.defaultLanguage];if(typeof oe=="string")return oe})(),gn=nn&&jn?{...nn,aboutChatbot:{...nn.aboutChatbot,description:jn}}:nn,zr=(xe==null?void 0:xe.placeholder)||(Se==null?void 0:Se.placeholder)||Le.translations[Le.defaultLanguage].placeholder,bn=!!((qa=n.humanHandover)!=null&&qa.enabled),Xn=((Va=te.operator)==null?void 0:Va.displayName)||me.operatorFallback,Ar=Xn.length<=20,Er=bn?te.status==="active"?Ar?ai(me.placeholderActive,Xn):me.placeholderQueued:te.status==="queued"?me.placeholderQueued:zr:zr,Mi=(()=>{if(bn)switch(te.status){case"requesting":case"queued":return{mode:"waiting",label:me.headerWaiting};case"active":return{mode:"human",label:ai(me.headerActive,Xn),operator:te.operator,operatorFallbackName:me.operatorFallback};case"closed":return{mode:"closed",label:me.headerClosed};default:return}})(),Ii=(xe==null?void 0:xe.disclaimer)||(Se==null?void 0:Se.disclaimer)||Le.translations[Le.defaultLanguage].disclaimer,Pr=(gn==null?void 0:gn.scrollToBottom)||((Ja=Se==null?void 0:Se.settings)==null?void 0:Ja.scrollToBottom)||"Zum Ende scrollen",jr=(xe==null?void 0:xe.transcribing)??(rt==null?void 0:rt.transcribing)??Le.translations[Le.defaultLanguage].transcribing,Nn=()=>{if(!le.current||typeof window>"u")return;const L=le.current.getBoundingClientRect(),J=220,Y=8;if(u&&Pe.current){const Ht=Pe.current.getBoundingClientRect(),Oi=Ht.width,Ga=Ht.height,Bf=L.right-J-Ht.left,Wf=Math.max(Y,Math.min(Bf,Oi-J-Y)),Ka=Math.min(300,Ga*.6);let Fi=L.bottom+6-Ht.top;Fi+Ka+Y>Ga&&(Fi=Math.max(Y,L.top-Ht.top-Ka-6)),U({top:Fi,left:Wf});return}const oe=window.innerWidth,je=window.innerHeight,Ne=Math.max(Y,Math.min(L.right-J,oe-J-Y)),Ue=Math.min(300,je*.6);let zt=L.bottom+6;zt+Ue+Y>je&&(zt=Math.max(Y,L.top-Ue-6)),U({top:zt,left:Ne})};I.useEffect(()=>{const L=J=>{if(J.key==="Escape"&&e){if(R){J.preventDefault(),J.stopPropagation(),M(!1);return}O?F(!1):t()}};return window.addEventListener("keydown",L),()=>window.removeEventListener("keydown",L)},[e,O,t,R]),I.useEffect(()=>{var J,Y;if(!Pe.current)return;if(u){Oe(Pe.current);return}const L=(Y=(J=Pe.current).getRootNode)==null?void 0:Y.call(J);L instanceof ShadowRoot?Oe(L):typeof document<"u"&&Oe(document.body)},[e,u]),I.useEffect(()=>{if(!R)return;const L=J=>{const Y=J.composedPath&&J.composedPath()||[],oe=J.target,je=le.current,Ne=Ce.current,Ue=!!je&&(Y.includes(je)||je.contains(oe)),zt=!!Ne&&(Y.includes(Ne)||Ne.contains(oe));!Ue&&!zt&&M(!1)};return document.addEventListener("mousedown",L,!0),document.addEventListener("touchstart",L,!0),()=>{document.removeEventListener("mousedown",L,!0),document.removeEventListener("touchstart",L,!0)}},[R]),I.useEffect(()=>{if(!R)return;Nn();const L=()=>Nn(),J=()=>Nn();return window.addEventListener("resize",L),window.addEventListener("scroll",J,!0),()=>{window.removeEventListener("resize",L),window.removeEventListener("scroll",J,!0)}},[R]),I.useEffect(()=>{if(!(e&&Pe.current))return;const L=()=>{var Ne,Ue;const Y='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])',oe=Array.from(((Ne=Pe.current)==null?void 0:Ne.querySelectorAll(Y))??[]),je=Array.from(((Ue=Ce.current)==null?void 0:Ue.querySelectorAll(Y))??[]);return[...oe,...je]},J=Y=>{if(Y.key!=="Tab")return;const oe=L().filter(Ue=>!Ue.hasAttribute("disabled")&&Ue.getAttribute("tabindex")!=="-1");if(oe.length===0)return;const je=oe[0],Ne=oe[oe.length-1];Y.shiftKey?document.activeElement===je&&(Y.preventDefault(),Ne==null||Ne.focus()):document.activeElement===Ne&&(Y.preventDefault(),je==null||je.focus())};return window.addEventListener("keydown",J),()=>window.removeEventListener("keydown",J)},[e,O,R]),I.useEffect(()=>{if(R&&Ce.current){const L=Ce.current.querySelector("button:not([disabled])");L==null||L.focus()}else!R&&le.current&&le.current.focus()},[R]);const Di=I.useCallback(L=>{if(!Ce.current)return;const J=Array.from(Ce.current.querySelectorAll("button:not([disabled])"));if(!J.length)return;const Y=J.indexOf(document.activeElement),oe=je=>{var Ne;L.preventDefault(),(Ne=J[je])==null||Ne.focus()};switch(L.key){case"ArrowDown":{const je=(Y+1)%J.length;oe(je);break}case"ArrowUp":{const je=(Y-1+J.length)%J.length;oe(je);break}case"Home":oe(0);break;case"End":oe(J.length-1);break}},[]),Nr=(()=>{const L=n.quickReplies.default,J=Array.isArray(L)&&L.length>0,Y=n.quickReplies[C],oe=Le.quickReplies[C];if(Y!==void 0&&(oe===void 0||!Dl(Y,oe)))return Y;if(J)return L;if(oe!==void 0)return oe;const Ne=n.quickReplies[o],Ue=Le.quickReplies[o];return Ne!==void 0&&(Ue===void 0||!Dl(Ne,Ue))?Ne:Ue!==void 0?Ue:[]})(),Ri=(Nr.length?Nr:Je.map((L,J)=>({id:`api-${J}`,title:L.text,message:L.text}))).map(L=>({...L,icon:L.id==="mangel"?f.jsx(ln,{className:"w-4 h-4"}):L.id==="kfz"?f.jsx(ln,{className:"w-4 h-4"}):L.id==="oeffnungszeiten"?f.jsx(_a,{className:"w-4 h-4"}):L.id==="termin"?f.jsx(_a,{className:"w-4 h-4"}):f.jsx(uu,{className:"w-4 h-4"})})),A=()=>{localStorage.setItem("klausPrivacyAccepted","true"),se(!0)},q=()=>{localStorage.removeItem("klausPrivacyAccepted"),se(!1),F(!1),t()};I.useEffect(()=>{e&&w&&_()},[e,w,_]),I.useEffect(()=>{e&&Re.current&&!T&&Re.current.focus()},[e,T]);const[G,ae]=I.useState(!1),ke=I.useRef(null),Ie=I.useRef(de.length),ye=I.useRef(null),ve=()=>{const L=ke.current;if(!L)return;const Y=L.scrollHeight-L.scrollTop-L.clientHeight<150;ae(!Y)};I.useEffect(()=>{var L,J;if((L=n.humanHandover)!=null&&L.enabled&&te.status!=="idle"){const Y=ke.current;Y&&(!G||(J=de[de.length-1])!=null&&J.isUser)&&(Y.scrollTop=Y.scrollHeight);return}u||ye.current&&ye.current.scrollIntoView({behavior:"smooth",block:"start"})},[de.length,Ve,u]),I.useEffect(()=>{if(de.length>Ie.current){const L=ke.current;L&&(L.scrollHeight-L.scrollTop-L.clientHeight<150||ae(!0))}Ie.current=de.length},[de]);const it=()=>{const L=ke.current;L&&(L.scrollTo({top:L.scrollHeight,behavior:"smooth"}),ae(!1))};I.useEffect(()=>{localStorage.setItem("klausLanguage",C)},[C]),I.useEffect(()=>{localStorage.setItem("klausFontSize",B);const L=Pe.current;if(!L)return;const J=L.getRootNode(),Y=J instanceof ShadowRoot?J.host:document.documentElement;L.classList.remove("font-size-small","font-size-large","font-size-extra-large"),Y.classList.remove("font-size-small","font-size-large","font-size-extra-large");const oe=B==="small"?"font-size-small":B==="large"?"font-size-large":B==="extra-large"?"font-size-extra-large":"";oe&&(L.classList.add(oe),Y.classList.add(oe))},[B]),I.useEffect(()=>{localStorage.setItem("klausHighContrast",String(X))},[X]),I.useEffect(()=>{Re.current&&(Re.current.style.height="auto",Re.current.style.height=`${Math.min(Re.current.scrollHeight,120)}px`)},[c]);const He=async()=>{if(p){await Jt();return}if(b)return;const L=c.trim();if(!L)return;const J=L;d("");try{await ze(J)}catch(Y){console.error("Failed to send message:",Y)}},Ge=L=>{L.key==="Enter"&&!L.shiftKey&&(L.preventDefault(),He())},ht=async()=>{try{const L=await navigator.mediaDevices.getUserMedia({audio:!0});let J,Y=null;try{({recorder:J,mimeType:Y}=qA(L))}catch(oe){throw L.getTracks().forEach(je=>je.stop()),oe}S.current=J,P.current=[],j.current=J.mimeType||Y,J.ondataavailable=oe=>{oe.data.size>0&&P.current.push(oe.data),!j.current&&oe.data.type&&(j.current=oe.data.type)},J.start(),m(!0),g(0),x.current=setInterval(()=>{g(oe=>oe+1)},1e3)}catch(L){console.error("Failed to start recording:",L);const J=L instanceof DOMException&&L.name==="NotSupportedError";bt({title:J?"Unsupported":"Error",description:J?"Audio recording is not supported in this browser.":"Failed to access microphone",variant:"destructive"})}},Jt=async()=>{if(x.current&&clearInterval(x.current),!S.current||S.current.state==="inactive"){m(!1);return}return m(!1),y(!0),new Promise(L=>{const J=S.current;J.onstop=async()=>{var Y;try{const oe=j.current||J.mimeType||((Y=P.current[0])==null?void 0:Y.type)||"audio/webm",je=oe?new Blob(P.current,{type:oe}):new Blob(P.current),Ne=je.type||oe||"audio/webm",Ue=`voice-${Date.now()}.${VA(Ne)}`,zt=new FileReader;zt.onloadend=async()=>{try{const Ht=zt.result.split(",")[1],Oi=await yh(Ht,Ne,Ue,C==="de"?"de-DE":C==="en"?"en-US":void 0);d((Oi.text||"").trimEnd())}catch(Ht){console.error("Transcription error:",Ht),bt({title:"Error",description:"Failed to transcribe audio",variant:"destructive"})}finally{y(!1),g(0),j.current=null,P.current=[],S.current=null,L()}},zt.readAsDataURL(je)}catch(oe){console.error("Error processing audio:",oe),y(!1),g(0),j.current=null,P.current=[],S.current=null,L()}finally{J.stream.getTracks().forEach(oe=>oe.stop())}},J.stop()})},Rt=L=>{let J=0;for(let Y=0;Y<=L&&Y<de.length;Y++)!de[Y].isUser&&!de[Y].rpcData&&(J+=1);return J||1},st=(L,J)=>{var Y;if(J==="down")We(L),z(!0);else{const je=((Y=de[L])==null?void 0:Y.feedback)===J?null:J;if(tt(L,je),je==="up"&&W){const Ne=Rt(L);(async()=>{try{await bs({conversation_id:W,feedback_type:"positive",message_number:Ne,tenant:ne}),bt({title:"Vielen Dank!",description:"Ihre positive Bewertung hilft uns weiter."})}catch(Ue){console.error("Failed to submit positive feedback:",Ue),bt({title:"Fehler",description:"Ihre Bewertung konnte nicht gesendet werden.",variant:"destructive"})}})()}else je==="up"&&bt({title:"Vielen Dank!",description:"Ihre positive Bewertung hilft uns weiter."})}},Zn=(L,J)=>{var je;if(Me===null)return;tt(Me,"down");const oe=((je=(ei[C]||ei.de).find(Ne=>Ne.id===L))==null?void 0:je.label)||L;if(W){const Ne=Rt(Me);(async()=>{try{await bs({conversation_id:W,feedback_type:"negative",message_number:Ne,tenant:ne,problem:oe,problem_description:J||void 0})}catch(Ue){console.error("Failed to submit negative feedback:",Ue),bt({title:"Fehler",description:"Ihr Feedback konnte nicht gesendet werden.",variant:"destructive"})}})()}z(!1),We(null)};if(I.useImperativeHandle(i,()=>({sendQuickMessage:L=>{d(L),setTimeout(()=>{He()},100)}})),!e)return null;const Gn=Number.isFinite(r)?Math.max(0,Math.min(Math.round(r),2147483645)):1e5,Li=Gn+2,Tr="bg-[hsl(var(--chat-bg))] backdrop-blur-[60px] rounded-[24px] border border-border flex flex-col overflow-hidden animate-chat-slide-up transform-gpu transition-all duration-300",Mr=`${pe==="light"?"light":""} ${X?"high-contrast":""}`,Rf=`fixed ${k?"inset-4":"bottom-[30px] right-[30px] w-[420px] max-h-[calc(100dvh-60px)] overflow-y-auto"} ${Tr} shadow-[0_30px_80px_rgba(0,0,0,0.5),inset_0_1px_2px_rgba(255,255,255,0.08),0_0_80px_hsl(var(--glow-primary))] max-md:w-[calc(100vw-20px)] max-md:right-[10px] max-md:bottom-[20px] ${k?"max-md:inset-0 max-md:rounded-none":""} ${Mr}`,Lf=`fixed ${k?"inset-4 max-md:inset-0 max-md:rounded-none":"bottom-[30px] right-[30px] w-[420px] h-[650px] max-h-[calc(100dvh-60px)] max-md:w-[calc(100vw-20px)] max-md:h-[calc(100dvh-100px)] max-md:right-[10px] max-md:bottom-[20px]"} ${Tr} shadow-[0_30px_80px_rgba(0,0,0,0.3)] ${Mr}`,Of=`relative w-full max-w-[960px] ${k?"h-[90vh] max-h-[820px]":"h-[80vh] max-h-[720px]"} max-md:max-w-none max-md:h-full max-md:rounded-none ${Tr} shadow-[0_30px_80px_rgba(0,0,0,0.35)] ${Mr}`,Ff=`relative w-full h-full ${Tr} shadow-[0_30px_80px_rgba(0,0,0,0.25)] ${Mr}`,La=(L,{isPrivacy:J})=>l==="centered"?f.jsxs("div",{className:"fixed inset-0 flex items-center justify-center px-4 max-md:px-0",style:{zIndex:Gn},children:[f.jsx("div",{className:"absolute inset-0 bg-black/40 backdrop-blur-[2px]","aria-hidden":"true",onClick:t}),f.jsx("div",{className:"relative z-10 w-full max-w-[960px] max-md:max-w-none max-md:h-full max-md:flex max-md:items-stretch",children:f.jsx("div",{ref:Pe,role:"dialog","aria-modal":"true","aria-labelledby":J?"privacy-dialog-title":"chat-title","aria-describedby":J?"privacy-dialog-description":"chat-description",lang:C,className:Of,children:L})})]}):l==="embedded"?f.jsx("div",{ref:Pe,role:"dialog","aria-modal":"true","aria-labelledby":J?"privacy-dialog-title":"chat-title","aria-describedby":J?"privacy-dialog-description":"chat-description",lang:C,className:Ff,children:L}):f.jsx("div",{ref:Pe,role:"dialog","aria-modal":"true","aria-labelledby":J?"privacy-dialog-title":"chat-title","aria-describedby":J?"privacy-dialog-description":"chat-description",lang:C,className:J?Rf:Lf,style:{zIndex:Gn},children:L});return w?La(f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"absolute inset-0 rounded-[24px] p-[1px] opacity-60 pointer-events-none",style:{background:`linear-gradient(135deg,
295
+ `))}function l(m,h,g,b){const y=g.enter("tableCell"),x=g.enter("phrasing"),S=g.containerPhrasing(m,{...b,before:a,after:a});return x(),y(),S}function u(m,h){return nw(m,{align:h,alignDelimiters:r,padding:n,stringLength:i})}function c(m,h,g){const b=m.children;let y=-1;const x=[],S=h.enter("table");for(;++y<b.length;)x[y]=d(b[y],h,g);return S(),x}function d(m,h,g){const b=m.children;let y=-1;const x=[],S=h.enter("tableRow");for(;++y<b.length;)x[y]=l(b[y],m,h,g);return S(),x}function p(m,h,g){let b=ud.inlineCode(m,h,g);return g.stack.includes("tableCell")&&(b=b.replace(/\|/g,"\\$&")),b}}function Jw(){return{exit:{taskListCheckValueChecked:pl,taskListCheckValueUnchecked:pl,paragraph:Uw}}}function Hw(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:Xw}}}function pl(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function Uw(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const r=n.children[0];if(r&&r.type==="text"){const i=t.children;let a=-1,o;for(;++a<i.length;){const s=i[a];if(s.type==="paragraph"){o=s;break}}o===n&&(r.value=r.value.slice(1),r.value.length===0?n.children.shift():n.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,n.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function Xw(e,t,n,r){const i=e.children[0],a=typeof e.checked=="boolean"&&i&&i.type==="paragraph",o="["+(e.checked?"x":" ")+"] ",s=n.createTracker(r);a&&s.move(o);let l=ud.listItem(e,t,n,{...r,...s.current()});return a&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),l;function u(c){return c+o}}function Zw(){return[zx(),Xx(),Qx(),Lw(),Jw()]}function Gw(e){return{extensions:[Ax(),Zx(e),Yx(),Vw(e),Hw()]}}const Kw={tokenize:tk,partial:!0},cd={tokenize:nk,partial:!0},dd={tokenize:rk,partial:!0},fd={tokenize:ik,partial:!0},Qw={tokenize:ok,partial:!0},md={name:"wwwAutolink",tokenize:$w,previous:hd},pd={name:"protocolAutolink",tokenize:ek,previous:gd},$t={name:"emailAutolink",tokenize:_w,previous:bd},qt={};function Yw(){return{text:qt}}let yn=48;for(;yn<123;)qt[yn]=$t,yn++,yn===58?yn=65:yn===91&&(yn=97);qt[43]=$t;qt[45]=$t;qt[46]=$t;qt[95]=$t;qt[72]=[$t,pd];qt[104]=[$t,pd];qt[87]=[$t,md];qt[119]=[$t,md];function _w(e,t,n){const r=this;let i,a;return o;function o(d){return!Mo(d)||!bd.call(r,r.previous)||ga(r.events)?n(d):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),s(d))}function s(d){return Mo(d)?(e.consume(d),s):d===64?(e.consume(d),l):n(d)}function l(d){return d===46?e.check(Qw,c,u)(d):d===45||d===95||ct(d)?(a=!0,e.consume(d),l):c(d)}function u(d){return e.consume(d),i=!0,l}function c(d){return a&&i&&pt(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(d)):n(d)}}function $w(e,t,n){const r=this;return i;function i(o){return o!==87&&o!==119||!hd.call(r,r.previous)||ga(r.events)?n(o):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(Kw,e.attempt(cd,e.attempt(dd,a),n),n)(o))}function a(o){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(o)}}function ek(e,t,n){const r=this;let i="",a=!1;return o;function o(d){return(d===72||d===104)&&gd.call(r,r.previous)&&!ga(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),i+=String.fromCodePoint(d),e.consume(d),s):n(d)}function s(d){if(pt(d)&&i.length<5)return i+=String.fromCodePoint(d),e.consume(d),s;if(d===58){const p=i.toLowerCase();if(p==="http"||p==="https")return e.consume(d),l}return n(d)}function l(d){return d===47?(e.consume(d),a?u:(a=!0,l)):n(d)}function u(d){return d===null||ti(d)||Fe(d)||Sn(d)||bi(d)?n(d):e.attempt(cd,e.attempt(dd,c),n)(d)}function c(d){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(d)}}function tk(e,t,n){let r=0;return i;function i(o){return(o===87||o===119)&&r<3?(r++,e.consume(o),i):o===46&&r===3?(e.consume(o),a):n(o)}function a(o){return o===null?n(o):t(o)}}function nk(e,t,n){let r,i,a;return o;function o(u){return u===46||u===95?e.check(fd,l,s)(u):u===null||Fe(u)||Sn(u)||u!==45&&bi(u)?l(u):(a=!0,e.consume(u),o)}function s(u){return u===95?r=!0:(i=r,r=void 0),e.consume(u),o}function l(u){return i||r||!a?n(u):t(u)}}function rk(e,t){let n=0,r=0;return i;function i(o){return o===40?(n++,e.consume(o),i):o===41&&r<n?a(o):o===33||o===34||o===38||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===60||o===63||o===93||o===95||o===126?e.check(fd,t,a)(o):o===null||Fe(o)||Sn(o)?t(o):(e.consume(o),i)}function a(o){return o===41&&r++,e.consume(o),i}}function ik(e,t,n){return r;function r(s){return s===33||s===34||s===39||s===41||s===42||s===44||s===46||s===58||s===59||s===63||s===95||s===126?(e.consume(s),r):s===38?(e.consume(s),a):s===93?(e.consume(s),i):s===60||s===null||Fe(s)||Sn(s)?t(s):n(s)}function i(s){return s===null||s===40||s===91||Fe(s)||Sn(s)?t(s):r(s)}function a(s){return pt(s)?o(s):n(s)}function o(s){return s===59?(e.consume(s),r):pt(s)?(e.consume(s),o):n(s)}}function ok(e,t,n){return r;function r(a){return e.consume(a),i}function i(a){return ct(a)?n(a):t(a)}}function hd(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||Fe(e)}function gd(e){return!pt(e)}function bd(e){return!(e===47||Mo(e))}function Mo(e){return e===43||e===45||e===46||e===95||ct(e)}function ga(e){let t=e.length,n=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const ak={tokenize:pk,partial:!0};function sk(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:dk,continuation:{tokenize:fk},exit:mk}},text:{91:{name:"gfmFootnoteCall",tokenize:ck},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:lk,resolveTo:uk}}}}function lk(e,t,n){const r=this;let i=r.events.length;const a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o;for(;i--;){const l=r.events[i][1];if(l.type==="labelImage"){o=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return s;function s(l){if(!o||!o._balanced)return n(l);const u=Nt(r.sliceSerialize({start:o.end,end:r.now()}));return u.codePointAt(0)!==94||!a.includes(u.slice(1))?n(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function uk(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const a={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},o={type:"chunkString",contentType:"string",start:Object.assign({},a.start),end:Object.assign({},a.end)},s=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",i,t],["exit",i,t],["enter",a,t],["enter",o,t],["exit",o,t],["exit",a,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...s),e}function ck(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a=0,o;return s;function s(d){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),l}function l(d){return d!==94?n(d):(e.enter("gfmFootnoteCallMarker"),e.consume(d),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(d){if(a>999||d===93&&!o||d===null||d===91||Fe(d))return n(d);if(d===93){e.exit("chunkString");const p=e.exit("gfmFootnoteCallString");return i.includes(Nt(r.sliceSerialize(p)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(d)}return Fe(d)||(o=!0),a++,e.consume(d),d===92?c:u}function c(d){return d===91||d===92||d===93?(e.consume(d),a++,u):u(d)}}function dk(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let a,o=0,s;return l;function l(h){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(h){return h===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",c):n(h)}function c(h){if(o>999||h===93&&!s||h===null||h===91||Fe(h))return n(h);if(h===93){e.exit("chunkString");const g=e.exit("gfmFootnoteDefinitionLabelString");return a=Nt(r.sliceSerialize(g)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(h),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),p}return Fe(h)||(s=!0),o++,e.consume(h),h===92?d:c}function d(h){return h===91||h===92||h===93?(e.consume(h),o++,c):c(h)}function p(h){return h===58?(e.enter("definitionMarker"),e.consume(h),e.exit("definitionMarker"),i.includes(a)||i.push(a),Ae(e,m,"gfmFootnoteDefinitionWhitespace")):n(h)}function m(h){return t(h)}}function fk(e,t,n){return e.check(wr,t,e.attempt(ak,t,n))}function mk(e){e.exit("gfmFootnoteDefinition")}function pk(e,t,n){const r=this;return Ae(e,i,"gfmFootnoteDefinitionIndent",5);function i(a){const o=r.events[r.events.length-1];return o&&o[1].type==="gfmFootnoteDefinitionIndent"&&o[2].sliceSerialize(o[1],!0).length===4?t(a):n(a)}}function hk(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:a,resolveAll:i};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function i(o,s){let l=-1;for(;++l<o.length;)if(o[l][0]==="enter"&&o[l][1].type==="strikethroughSequenceTemporary"&&o[l][1]._close){let u=l;for(;u--;)if(o[u][0]==="exit"&&o[u][1].type==="strikethroughSequenceTemporary"&&o[u][1]._open&&o[l][1].end.offset-o[l][1].start.offset===o[u][1].end.offset-o[u][1].start.offset){o[l][1].type="strikethroughSequence",o[u][1].type="strikethroughSequence";const c={type:"strikethrough",start:Object.assign({},o[u][1].start),end:Object.assign({},o[l][1].end)},d={type:"strikethroughText",start:Object.assign({},o[u][1].end),end:Object.assign({},o[l][1].start)},p=[["enter",c,s],["enter",o[u][1],s],["exit",o[u][1],s],["enter",d,s]],m=s.parser.constructs.insideSpan.null;m&&St(p,p.length,0,yi(m,o.slice(u+1,l),s)),St(p,p.length,0,[["exit",d,s],["enter",o[l][1],s],["exit",o[l][1],s],["exit",c,s]]),St(o,u-1,l-u+3,p),l=u+p.length-2;break}}for(l=-1;++l<o.length;)o[l][1].type==="strikethroughSequenceTemporary"&&(o[l][1].type="data");return o}function a(o,s,l){const u=this.previous,c=this.events;let d=0;return p;function p(h){return u===126&&c[c.length-1][1].type!=="characterEscape"?l(h):(o.enter("strikethroughSequenceTemporary"),m(h))}function m(h){const g=Fn(u);if(h===126)return d>1?l(h):(o.consume(h),d++,m);if(d<2&&!n)return l(h);const b=o.exit("strikethroughSequenceTemporary"),y=Fn(h);return b._open=!y||y===2&&!!g,b._close=!g||g===2&&!!y,s(h)}}}class gk{constructor(){this.map=[]}add(t,n,r){bk(this,t,n,r)}consume(t){if(this.map.sort(function(a,o){return a[0]-o[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let i=r.pop();for(;i;){for(const a of i)t.push(a);i=r.pop()}this.map.length=0}}function bk(e,t,n,r){let i=0;if(!(n===0&&r.length===0)){for(;i<e.map.length;){if(e.map[i][0]===t){e.map[i][1]+=n,e.map[i][2].push(...r);return}i+=1}e.map.push([t,n,r])}}function yk(e,t){let n=!1;const r=[];for(;t<e.length;){const i=e[t];if(n){if(i[0]==="enter")i[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(i[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const a=r.length-1;r[a]=r[a]==="left"?"center":"right"}}else if(i[1].type==="tableDelimiterRow")break}else i[0]==="enter"&&i[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return r}function vk(){return{flow:{null:{name:"table",tokenize:xk,resolveAll:wk}}}}function xk(e,t,n){const r=this;let i=0,a=0,o;return s;function s(k){let N=r.events.length-1;for(;N>-1;){const O=r.events[N][1].type;if(O==="lineEnding"||O==="linePrefix")N--;else break}const T=N>-1?r.events[N][1].type:null,V=T==="tableHead"||T==="tableRow"?C:l;return V===C&&r.parser.lazy[r.now().line]?n(k):V(k)}function l(k){return e.enter("tableHead"),e.enter("tableRow"),u(k)}function u(k){return k===124||(o=!0,a+=1),c(k)}function c(k){return k===null?n(k):re(k)?a>1?(a=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(k),e.exit("lineEnding"),m):n(k):we(k)?Ae(e,c,"whitespace")(k):(a+=1,o&&(o=!1,i+=1),k===124?(e.enter("tableCellDivider"),e.consume(k),e.exit("tableCellDivider"),o=!0,c):(e.enter("data"),d(k)))}function d(k){return k===null||k===124||Fe(k)?(e.exit("data"),c(k)):(e.consume(k),k===92?p:d)}function p(k){return k===92||k===124?(e.consume(k),d):d(k)}function m(k){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(k):(e.enter("tableDelimiterRow"),o=!1,we(k)?Ae(e,h,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(k):h(k))}function h(k){return k===45||k===58?b(k):k===124?(o=!0,e.enter("tableCellDivider"),e.consume(k),e.exit("tableCellDivider"),g):j(k)}function g(k){return we(k)?Ae(e,b,"whitespace")(k):b(k)}function b(k){return k===58?(a+=1,o=!0,e.enter("tableDelimiterMarker"),e.consume(k),e.exit("tableDelimiterMarker"),y):k===45?(a+=1,y(k)):k===null||re(k)?P(k):j(k)}function y(k){return k===45?(e.enter("tableDelimiterFiller"),x(k)):j(k)}function x(k){return k===45?(e.consume(k),x):k===58?(o=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(k),e.exit("tableDelimiterMarker"),S):(e.exit("tableDelimiterFiller"),S(k))}function S(k){return we(k)?Ae(e,P,"whitespace")(k):P(k)}function P(k){return k===124?h(k):k===null||re(k)?!o||i!==a?j(k):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(k)):j(k)}function j(k){return n(k)}function C(k){return e.enter("tableRow"),E(k)}function E(k){return k===124?(e.enter("tableCellDivider"),e.consume(k),e.exit("tableCellDivider"),E):k===null||re(k)?(e.exit("tableRow"),t(k)):we(k)?Ae(e,E,"whitespace")(k):(e.enter("data"),R(k))}function R(k){return k===null||k===124||Fe(k)?(e.exit("data"),E(k)):(e.consume(k),k===92?M:R)}function M(k){return k===92||k===124?(e.consume(k),R):R(k)}}function wk(e,t){let n=-1,r=!0,i=0,a=[0,0,0,0],o=[0,0,0,0],s=!1,l=0,u,c,d;const p=new gk;for(;++n<e.length;){const m=e[n],h=m[1];m[0]==="enter"?h.type==="tableHead"?(s=!1,l!==0&&(hl(p,t,l,u,c),c=void 0,l=0),u={type:"table",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(n,0,[["enter",u,t]])):h.type==="tableRow"||h.type==="tableDelimiterRow"?(r=!0,d=void 0,a=[0,0,0,0],o=[0,n+1,0,0],s&&(s=!1,c={type:"tableBody",start:Object.assign({},h.start),end:Object.assign({},h.end)},p.add(n,0,[["enter",c,t]])),i=h.type==="tableDelimiterRow"?2:c?3:1):i&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")?(r=!1,o[2]===0&&(a[1]!==0&&(o[0]=o[1],d=Or(p,t,a,i,void 0,d),a=[0,0,0,0]),o[2]=n)):h.type==="tableCellDivider"&&(r?r=!1:(a[1]!==0&&(o[0]=o[1],d=Or(p,t,a,i,void 0,d)),a=o,o=[a[1],n,0,0])):h.type==="tableHead"?(s=!0,l=n):h.type==="tableRow"||h.type==="tableDelimiterRow"?(l=n,a[1]!==0?(o[0]=o[1],d=Or(p,t,a,i,n,d)):o[1]!==0&&(d=Or(p,t,o,i,n,d)),i=0):i&&(h.type==="data"||h.type==="tableDelimiterMarker"||h.type==="tableDelimiterFiller")&&(o[3]=n)}for(l!==0&&hl(p,t,l,u,c),p.consume(t.events),n=-1;++n<t.events.length;){const m=t.events[n];m[0]==="enter"&&m[1].type==="table"&&(m[1]._align=yk(t.events,n))}return e}function Or(e,t,n,r,i,a){const o=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",s="tableContent";n[0]!==0&&(a.end=Object.assign({},In(t.events,n[0])),e.add(n[0],0,[["exit",a,t]]));const l=In(t.events,n[1]);if(a={type:o,start:Object.assign({},l),end:Object.assign({},l)},e.add(n[1],0,[["enter",a,t]]),n[2]!==0){const u=In(t.events,n[2]),c=In(t.events,n[3]),d={type:s,start:Object.assign({},u),end:Object.assign({},c)};if(e.add(n[2],0,[["enter",d,t]]),r!==2){const p=t.events[n[2]],m=t.events[n[3]];if(p[1].end=Object.assign({},m[1].end),p[1].type="chunkText",p[1].contentType="text",n[3]>n[2]+1){const h=n[2]+1,g=n[3]-n[2]-1;e.add(h,g,[])}}e.add(n[3]+1,0,[["exit",d,t]])}return i!==void 0&&(a.end=Object.assign({},In(t.events,i)),e.add(i,0,[["exit",a,t]]),a=void 0),a}function hl(e,t,n,r,i){const a=[],o=In(t.events,n);i&&(i.end=Object.assign({},o),a.push(["exit",i,t])),r.end=Object.assign({},o),a.push(["exit",r,t]),e.add(n+1,0,a)}function In(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const kk={name:"tasklistCheck",tokenize:Ck};function Sk(){return{text:{91:kk}}}function Ck(e,t,n){const r=this;return i;function i(l){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),a)}function a(l){return Fe(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),o):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),o):n(l)}function o(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),s):n(l)}function s(l){return re(l)?t(l):we(l)?e.check({tokenize:zk},t,n)(l):n(l)}}function zk(e,t,n){return Ae(e,r,"whitespace");function r(i){return i===null?n(i):t(i)}}function Ak(e){return Ac([Yw(),sk(),hk(e),vk(),Sk()])}const Ek={};function Pk(e){const t=this,n=e||Ek,r=t.data(),i=r.micromarkExtensions||(r.micromarkExtensions=[]),a=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),o=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);i.push(Ak(n)),a.push(Zw()),o.push(Gw(n))}function $e(e){const t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new e.constructor(+e):typeof e=="number"||t==="[object Number]"||typeof e=="string"||t==="[object String]"?new Date(e):new Date(NaN)}function jk(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}const Fr=43200,gl=1440;let Nk={};function yd(){return Nk}function bl(e,t){var s,l,u,c;const n=yd(),r=(t==null?void 0:t.weekStartsOn)??((l=(s=t==null?void 0:t.locale)==null?void 0:s.options)==null?void 0:l.weekStartsOn)??n.weekStartsOn??((c=(u=n.locale)==null?void 0:u.options)==null?void 0:c.weekStartsOn)??0,i=$e(e),a=i.getDay(),o=(a<r?7:0)+a-r;return i.setDate(i.getDate()-o),i.setHours(0,0,0,0),i}function yl(e){const t=$e(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Kr(e,t){const n=$e(e),r=$e(t),i=n.getTime()-r.getTime();return i<0?-1:i>0?1:i}function Tk(e){return jk(e,Date.now())}function Mk(e,t){const n=$e(e),r=$e(t),i=n.getFullYear()-r.getFullYear(),a=n.getMonth()-r.getMonth();return i*12+a}function Ik(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return r===0?0:r}}function Dk(e,t){return+$e(e)-+$e(t)}function Rk(e){const t=$e(e);return t.setHours(23,59,59,999),t}function Lk(e){const t=$e(e),n=t.getMonth();return t.setFullYear(t.getFullYear(),n+1,0),t.setHours(23,59,59,999),t}function Ok(e){const t=$e(e);return+Rk(t)==+Lk(t)}function Fk(e,t){const n=$e(e),r=$e(t),i=Kr(n,r),a=Math.abs(Mk(n,r));let o;if(a<1)o=0;else{n.getMonth()===1&&n.getDate()>27&&n.setDate(30),n.setMonth(n.getMonth()-i*a);let s=Kr(n,r)===-i;Ok($e(e))&&a===1&&Kr(e,r)===1&&(s=!1),o=i*(a-Number(s))}return o===0?0:o}function Bk(e,t,n){const r=Dk(e,t)/1e3;return Ik(n==null?void 0:n.roundingMethod)(r)}const Wk={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},qk=(e,t,n)=>{let r;const i=Wk[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Be(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const Vk={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},Jk={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},Hk={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Uk={date:Be({formats:Vk,defaultWidth:"full"}),time:Be({formats:Jk,defaultWidth:"full"}),dateTime:Be({formats:Hk,defaultWidth:"full"})},Xk={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Zk=(e,t,n,r)=>Xk[e];function ue(e){return(t,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let i;if(r==="formatting"&&e.formattingValues){const o=e.defaultFormattingWidth||e.defaultWidth,s=n!=null&&n.width?String(n.width):o;i=e.formattingValues[s]||e.formattingValues[o]}else{const o=e.defaultWidth,s=n!=null&&n.width?String(n.width):e.defaultWidth;i=e.values[s]||e.values[o]}const a=e.argumentCallback?e.argumentCallback(t):t;return i[a]}}const Gk={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Kk={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Qk={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Yk={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},_k={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},$k={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},e0=(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},t0={ordinalNumber:e0,era:ue({values:Gk,defaultWidth:"wide"}),quarter:ue({values:Kk,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Qk,defaultWidth:"wide"}),day:ue({values:Yk,defaultWidth:"wide"}),dayPeriod:ue({values:_k,defaultWidth:"wide",formattingValues:$k,defaultFormattingWidth:"wide"})};function ce(e){return(t,n={})=>{const r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],a=t.match(i);if(!a)return null;const o=a[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(s)?r0(s,d=>d.test(o)):n0(s,d=>d.test(o));let u;u=e.valueCallback?e.valueCallback(l):l,u=n.valueCallback?n.valueCallback(u):u;const c=t.slice(o.length);return{value:u,rest:c}}}function n0(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function r0(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function en(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const i=r[0],a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];o=n.valueCallback?n.valueCallback(o):o;const s=t.slice(i.length);return{value:o,rest:s}}}const i0=/^(\d+)(th|st|nd|rd)?/i,o0=/\d+/i,a0={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},s0={any:[/^b/i,/^(a|c)/i]},l0={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},u0={any:[/1/i,/2/i,/3/i,/4/i]},c0={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},d0={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},f0={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},m0={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},p0={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},h0={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},g0={ordinalNumber:en({matchPattern:i0,parsePattern:o0,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:a0,defaultMatchWidth:"wide",parsePatterns:s0,defaultParseWidth:"any"}),quarter:ce({matchPatterns:l0,defaultMatchWidth:"wide",parsePatterns:u0,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:c0,defaultMatchWidth:"wide",parsePatterns:d0,defaultParseWidth:"any"}),day:ce({matchPatterns:f0,defaultMatchWidth:"wide",parsePatterns:m0,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:p0,defaultMatchWidth:"any",parsePatterns:h0,defaultParseWidth:"any"})},ba={code:"en-US",formatDistance:qk,formatLong:Uk,formatRelative:Zk,localize:t0,match:g0,options:{weekStartsOn:0,firstWeekContainsDate:1}};function b0(e,t,n){const r=yd(),i=(n==null?void 0:n.locale)??r.locale??ba,a=2520,o=Kr(e,t);if(isNaN(o))throw new RangeError("Invalid time value");const s=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:o});let l,u;o>0?(l=$e(t),u=$e(e)):(l=$e(e),u=$e(t));const c=Bk(u,l),d=(yl(u)-yl(l))/1e3,p=Math.round((c-d)/60);let m;if(p<2)return n!=null&&n.includeSeconds?c<5?i.formatDistance("lessThanXSeconds",5,s):c<10?i.formatDistance("lessThanXSeconds",10,s):c<20?i.formatDistance("lessThanXSeconds",20,s):c<40?i.formatDistance("halfAMinute",0,s):c<60?i.formatDistance("lessThanXMinutes",1,s):i.formatDistance("xMinutes",1,s):p===0?i.formatDistance("lessThanXMinutes",1,s):i.formatDistance("xMinutes",p,s);if(p<45)return i.formatDistance("xMinutes",p,s);if(p<90)return i.formatDistance("aboutXHours",1,s);if(p<gl){const h=Math.round(p/60);return i.formatDistance("aboutXHours",h,s)}else{if(p<a)return i.formatDistance("xDays",1,s);if(p<Fr){const h=Math.round(p/gl);return i.formatDistance("xDays",h,s)}else if(p<Fr*2)return m=Math.round(p/Fr),i.formatDistance("aboutXMonths",m,s)}if(m=Fk(u,l),m<12){const h=Math.round(p/Fr);return i.formatDistance("xMonths",h,s)}else{const h=m%12,g=Math.trunc(m/12);return h<3?i.formatDistance("aboutXYears",g,s):h<9?i.formatDistance("overXYears",g,s):i.formatDistance("almostXYears",g+1,s)}}function y0(e,t){return b0(e,Tk(e),t)}function mr(e,t,n){const r=bl(e,n),i=bl(t,n);return+r==+i}const v0={lessThanXSeconds:{one:"أقل من ثانية",two:"أقل من ثانيتين",threeToTen:"أقل من {{count}} ثواني",other:"أقل من {{count}} ثانية"},xSeconds:{one:"ثانية واحدة",two:"ثانيتان",threeToTen:"{{count}} ثواني",other:"{{count}} ثانية"},halfAMinute:"نصف دقيقة",lessThanXMinutes:{one:"أقل من دقيقة",two:"أقل من دقيقتين",threeToTen:"أقل من {{count}} دقائق",other:"أقل من {{count}} دقيقة"},xMinutes:{one:"دقيقة واحدة",two:"دقيقتان",threeToTen:"{{count}} دقائق",other:"{{count}} دقيقة"},aboutXHours:{one:"ساعة واحدة تقريباً",two:"ساعتين تقريبا",threeToTen:"{{count}} ساعات تقريباً",other:"{{count}} ساعة تقريباً"},xHours:{one:"ساعة واحدة",two:"ساعتان",threeToTen:"{{count}} ساعات",other:"{{count}} ساعة"},xDays:{one:"يوم واحد",two:"يومان",threeToTen:"{{count}} أيام",other:"{{count}} يوم"},aboutXWeeks:{one:"أسبوع واحد تقريبا",two:"أسبوعين تقريبا",threeToTen:"{{count}} أسابيع تقريبا",other:"{{count}} أسبوعا تقريبا"},xWeeks:{one:"أسبوع واحد",two:"أسبوعان",threeToTen:"{{count}} أسابيع",other:"{{count}} أسبوعا"},aboutXMonths:{one:"شهر واحد تقريباً",two:"شهرين تقريبا",threeToTen:"{{count}} أشهر تقريبا",other:"{{count}} شهرا تقريباً"},xMonths:{one:"شهر واحد",two:"شهران",threeToTen:"{{count}} أشهر",other:"{{count}} شهرا"},aboutXYears:{one:"سنة واحدة تقريباً",two:"سنتين تقريبا",threeToTen:"{{count}} سنوات تقريباً",other:"{{count}} سنة تقريباً"},xYears:{one:"سنة واحد",two:"سنتان",threeToTen:"{{count}} سنوات",other:"{{count}} سنة"},overXYears:{one:"أكثر من سنة",two:"أكثر من سنتين",threeToTen:"أكثر من {{count}} سنوات",other:"أكثر من {{count}} سنة"},almostXYears:{one:"ما يقارب سنة واحدة",two:"ما يقارب سنتين",threeToTen:"ما يقارب {{count}} سنوات",other:"ما يقارب {{count}} سنة"}},x0=(e,t,n)=>{const r=v0[e];let i;return typeof r=="string"?i=r:t===1?i=r.one:t===2?i=r.two:t<=10?i=r.threeToTen.replace("{{count}}",String(t)):i=r.other.replace("{{count}}",String(t)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"خلال "+i:"منذ "+i:i},w0={full:"EEEE، do MMMM y",long:"do MMMM y",medium:"d MMM y",short:"dd/MM/yyyy"},k0={full:"HH:mm:ss",long:"HH:mm:ss",medium:"HH:mm:ss",short:"HH:mm"},S0={full:"{{date}} 'عند الساعة' {{time}}",long:"{{date}} 'عند الساعة' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},C0={date:Be({formats:w0,defaultWidth:"full"}),time:Be({formats:k0,defaultWidth:"full"}),dateTime:Be({formats:S0,defaultWidth:"full"})},z0={lastWeek:"eeee 'الماضي عند الساعة' p",yesterday:"'الأمس عند الساعة' p",today:"'اليوم عند الساعة' p",tomorrow:"'غدا عند الساعة' p",nextWeek:"eeee 'القادم عند الساعة' p",other:"P"},A0=e=>z0[e],E0={narrow:["ق","ب"],abbreviated:["ق.م.","ب.م."],wide:["قبل الميلاد","بعد الميلاد"]},P0={narrow:["1","2","3","4"],abbreviated:["ر1","ر2","ر3","ر4"],wide:["الربع الأول","الربع الثاني","الربع الثالث","الربع الرابع"]},j0={narrow:["ي","ف","م","أ","م","ي","ي","أ","س","أ","ن","د"],abbreviated:["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"],wide:["يناير","فبراير","مارس","أبريل","مايو","يونيو","يوليو","أغسطس","سبتمبر","أكتوبر","نوفمبر","ديسمبر"]},N0={narrow:["ح","ن","ث","ر","خ","ج","س"],short:["أحد","اثنين","ثلاثاء","أربعاء","خميس","جمعة","سبت"],abbreviated:["أحد","اثنين","ثلاثاء","أربعاء","خميس","جمعة","سبت"],wide:["الأحد","الاثنين","الثلاثاء","الأربعاء","الخميس","الجمعة","السبت"]},T0={narrow:{am:"ص",pm:"م",morning:"الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"المساء",night:"الليل",midnight:"منتصف الليل"},abbreviated:{am:"ص",pm:"م",morning:"الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"المساء",night:"الليل",midnight:"منتصف الليل"},wide:{am:"ص",pm:"م",morning:"الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"المساء",night:"الليل",midnight:"منتصف الليل"}},M0={narrow:{am:"ص",pm:"م",morning:"في الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"في المساء",night:"في الليل",midnight:"منتصف الليل"},abbreviated:{am:"ص",pm:"م",morning:"في الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"في المساء",night:"في الليل",midnight:"منتصف الليل"},wide:{am:"ص",pm:"م",morning:"في الصباح",noon:"الظهر",afternoon:"بعد الظهر",evening:"في المساء",night:"في الليل",midnight:"منتصف الليل"}},I0=e=>String(e),D0={ordinalNumber:I0,era:ue({values:E0,defaultWidth:"wide"}),quarter:ue({values:P0,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:j0,defaultWidth:"wide"}),day:ue({values:N0,defaultWidth:"wide"}),dayPeriod:ue({values:T0,defaultWidth:"wide",formattingValues:M0,defaultFormattingWidth:"wide"})},R0=/^(\d+)(th|st|nd|rd)?/i,L0=/\d+/i,O0={narrow:/[قب]/,abbreviated:/[قب]\.م\./,wide:/(قبل|بعد) الميلاد/},F0={any:[/قبل/,/بعد/]},B0={narrow:/^[1234]/i,abbreviated:/ر[1234]/,wide:/الربع (الأول|الثاني|الثالث|الرابع)/},W0={any:[/1/i,/2/i,/3/i,/4/i]},q0={narrow:/^[أيفمسند]/,abbreviated:/^(يناير|فبراير|مارس|أبريل|مايو|يونيو|يوليو|أغسطس|سبتمبر|أكتوبر|نوفمبر|ديسمبر)/,wide:/^(يناير|فبراير|مارس|أبريل|مايو|يونيو|يوليو|أغسطس|سبتمبر|أكتوبر|نوفمبر|ديسمبر)/},V0={narrow:[/^ي/i,/^ف/i,/^م/i,/^أ/i,/^م/i,/^ي/i,/^ي/i,/^أ/i,/^س/i,/^أ/i,/^ن/i,/^د/i],any:[/^يناير/i,/^فبراير/i,/^مارس/i,/^أبريل/i,/^مايو/i,/^يونيو/i,/^يوليو/i,/^أغسطس/i,/^سبتمبر/i,/^أكتوبر/i,/^نوفمبر/i,/^ديسمبر/i]},J0={narrow:/^[حنثرخجس]/i,short:/^(أحد|اثنين|ثلاثاء|أربعاء|خميس|جمعة|سبت)/i,abbreviated:/^(أحد|اثنين|ثلاثاء|أربعاء|خميس|جمعة|سبت)/i,wide:/^(الأحد|الاثنين|الثلاثاء|الأربعاء|الخميس|الجمعة|السبت)/i},H0={narrow:[/^ح/i,/^ن/i,/^ث/i,/^ر/i,/^خ/i,/^ج/i,/^س/i],wide:[/^الأحد/i,/^الاثنين/i,/^الثلاثاء/i,/^الأربعاء/i,/^الخميس/i,/^الجمعة/i,/^السبت/i],any:[/^أح/i,/^اث/i,/^ث/i,/^أر/i,/^خ/i,/^ج/i,/^س/i]},U0={narrow:/^(ص|م|منتصف الليل|الظهر|بعد الظهر|في الصباح|في المساء|في الليل)/,any:/^(ص|م|منتصف الليل|الظهر|بعد الظهر|في الصباح|في المساء|في الليل)/},X0={any:{am:/^ص/,pm:/^م/,midnight:/منتصف الليل/,noon:/الظهر/,afternoon:/بعد الظهر/,morning:/في الصباح/,evening:/في المساء/,night:/في الليل/}},Z0={ordinalNumber:en({matchPattern:R0,parsePattern:L0,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:O0,defaultMatchWidth:"wide",parsePatterns:F0,defaultParseWidth:"any"}),quarter:ce({matchPatterns:B0,defaultMatchWidth:"wide",parsePatterns:W0,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:q0,defaultMatchWidth:"wide",parsePatterns:V0,defaultParseWidth:"any"}),day:ce({matchPatterns:J0,defaultMatchWidth:"wide",parsePatterns:H0,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:U0,defaultMatchWidth:"any",parsePatterns:X0,defaultParseWidth:"any"})},G0={code:"ar",formatDistance:x0,formatLong:C0,formatRelative:A0,localize:D0,match:Z0,options:{weekStartsOn:6,firstWeekContainsDate:1}},vl={lessThanXSeconds:{standalone:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"},withPreposition:{one:"weniger als 1 Sekunde",other:"weniger als {{count}} Sekunden"}},xSeconds:{standalone:{one:"1 Sekunde",other:"{{count}} Sekunden"},withPreposition:{one:"1 Sekunde",other:"{{count}} Sekunden"}},halfAMinute:{standalone:"eine halbe Minute",withPreposition:"einer halben Minute"},lessThanXMinutes:{standalone:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"},withPreposition:{one:"weniger als 1 Minute",other:"weniger als {{count}} Minuten"}},xMinutes:{standalone:{one:"1 Minute",other:"{{count}} Minuten"},withPreposition:{one:"1 Minute",other:"{{count}} Minuten"}},aboutXHours:{standalone:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"},withPreposition:{one:"etwa 1 Stunde",other:"etwa {{count}} Stunden"}},xHours:{standalone:{one:"1 Stunde",other:"{{count}} Stunden"},withPreposition:{one:"1 Stunde",other:"{{count}} Stunden"}},xDays:{standalone:{one:"1 Tag",other:"{{count}} Tage"},withPreposition:{one:"1 Tag",other:"{{count}} Tagen"}},aboutXWeeks:{standalone:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"},withPreposition:{one:"etwa 1 Woche",other:"etwa {{count}} Wochen"}},xWeeks:{standalone:{one:"1 Woche",other:"{{count}} Wochen"},withPreposition:{one:"1 Woche",other:"{{count}} Wochen"}},aboutXMonths:{standalone:{one:"etwa 1 Monat",other:"etwa {{count}} Monate"},withPreposition:{one:"etwa 1 Monat",other:"etwa {{count}} Monaten"}},xMonths:{standalone:{one:"1 Monat",other:"{{count}} Monate"},withPreposition:{one:"1 Monat",other:"{{count}} Monaten"}},aboutXYears:{standalone:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahre"},withPreposition:{one:"etwa 1 Jahr",other:"etwa {{count}} Jahren"}},xYears:{standalone:{one:"1 Jahr",other:"{{count}} Jahre"},withPreposition:{one:"1 Jahr",other:"{{count}} Jahren"}},overXYears:{standalone:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahre"},withPreposition:{one:"mehr als 1 Jahr",other:"mehr als {{count}} Jahren"}},almostXYears:{standalone:{one:"fast 1 Jahr",other:"fast {{count}} Jahre"},withPreposition:{one:"fast 1 Jahr",other:"fast {{count}} Jahren"}}},K0=(e,t,n)=>{let r;const i=n!=null&&n.addSuffix?vl[e].withPreposition:vl[e].standalone;return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",String(t)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:"vor "+r:r},Q0={full:"EEEE, do MMMM y",long:"do MMMM y",medium:"do MMM y",short:"dd.MM.y"},Y0={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},_0={full:"{{date}} 'um' {{time}}",long:"{{date}} 'um' {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},$0={date:Be({formats:Q0,defaultWidth:"full"}),time:Be({formats:Y0,defaultWidth:"full"}),dateTime:Be({formats:_0,defaultWidth:"full"})},e1={lastWeek:"'letzten' eeee 'um' p",yesterday:"'gestern um' p",today:"'heute um' p",tomorrow:"'morgen um' p",nextWeek:"eeee 'um' p",other:"P"},t1=(e,t,n,r)=>e1[e],n1={narrow:["v.Chr.","n.Chr."],abbreviated:["v.Chr.","n.Chr."],wide:["vor Christus","nach Christus"]},r1={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1. Quartal","2. Quartal","3. Quartal","4. Quartal"]},Io={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],wide:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]},i1={narrow:Io.narrow,abbreviated:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],wide:Io.wide},o1={narrow:["S","M","D","M","D","F","S"],short:["So","Mo","Di","Mi","Do","Fr","Sa"],abbreviated:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."],wide:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"]},a1={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachm.",evening:"Abend",night:"Nacht"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"Morgen",afternoon:"Nachmittag",evening:"Abend",night:"Nacht"}},s1={narrow:{am:"vm.",pm:"nm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachm.",evening:"abends",night:"nachts"},abbreviated:{am:"vorm.",pm:"nachm.",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"},wide:{am:"vormittags",pm:"nachmittags",midnight:"Mitternacht",noon:"Mittag",morning:"morgens",afternoon:"nachmittags",evening:"abends",night:"nachts"}},l1=e=>Number(e)+".",u1={ordinalNumber:l1,era:ue({values:n1,defaultWidth:"wide"}),quarter:ue({values:r1,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Io,formattingValues:i1,defaultWidth:"wide"}),day:ue({values:o1,defaultWidth:"wide"}),dayPeriod:ue({values:a1,defaultWidth:"wide",formattingValues:s1,defaultFormattingWidth:"wide"})},c1=/^(\d+)(\.)?/i,d1=/\d+/i,f1={narrow:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,abbreviated:/^(v\.? ?Chr\.?|n\.? ?Chr\.?)/i,wide:/^(vor Christus|vor unserer Zeitrechnung|nach Christus|unserer Zeitrechnung)/i},m1={any:[/^v/i,/^n/i]},p1={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](\.)? Quartal/i},h1={any:[/1/i,/2/i,/3/i,/4/i]},g1={narrow:/^[jfmasond]/i,abbreviated:/^(j[aä]n|feb|mär[z]?|apr|mai|jun[i]?|jul[i]?|aug|sep|okt|nov|dez)\.?/i,wide:/^(januar|februar|märz|april|mai|juni|juli|august|september|oktober|november|dezember)/i},b1={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^j[aä]/i,/^f/i,/^mär/i,/^ap/i,/^mai/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},y1={narrow:/^[smdmf]/i,short:/^(so|mo|di|mi|do|fr|sa)/i,abbreviated:/^(son?|mon?|die?|mit?|don?|fre?|sam?)\.?/i,wide:/^(sonntag|montag|dienstag|mittwoch|donnerstag|freitag|samstag)/i},v1={any:[/^so/i,/^mo/i,/^di/i,/^mi/i,/^do/i,/^f/i,/^sa/i]},x1={narrow:/^(vm\.?|nm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,abbreviated:/^(vorm\.?|nachm\.?|Mitternacht|Mittag|morgens|nachm\.?|abends|nachts)/i,wide:/^(vormittags|nachmittags|Mitternacht|Mittag|morgens|nachmittags|abends|nachts)/i},w1={any:{am:/^v/i,pm:/^n/i,midnight:/^Mitte/i,noon:/^Mitta/i,morning:/morgens/i,afternoon:/nachmittags/i,evening:/abends/i,night:/nachts/i}},k1={ordinalNumber:en({matchPattern:c1,parsePattern:d1,valueCallback:e=>parseInt(e)}),era:ce({matchPatterns:f1,defaultMatchWidth:"wide",parsePatterns:m1,defaultParseWidth:"any"}),quarter:ce({matchPatterns:p1,defaultMatchWidth:"wide",parsePatterns:h1,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:g1,defaultMatchWidth:"wide",parsePatterns:b1,defaultParseWidth:"any"}),day:ce({matchPatterns:y1,defaultMatchWidth:"wide",parsePatterns:v1,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:x1,defaultMatchWidth:"wide",parsePatterns:w1,defaultParseWidth:"any"})},xl={code:"de",formatDistance:K0,formatLong:$0,formatRelative:t1,localize:u1,match:k1,options:{weekStartsOn:1,firstWeekContainsDate:4}},S1={lessThanXSeconds:{one:"menos de un segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"medio minuto",lessThanXMinutes:{one:"menos de un minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"alrededor de 1 hora",other:"alrededor de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 día",other:"{{count}} días"},aboutXWeeks:{one:"alrededor de 1 semana",other:"alrededor de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"alrededor de 1 mes",other:"alrededor de {{count}} meses"},xMonths:{one:"1 mes",other:"{{count}} meses"},aboutXYears:{one:"alrededor de 1 año",other:"alrededor de {{count}} años"},xYears:{one:"1 año",other:"{{count}} años"},overXYears:{one:"más de 1 año",other:"más de {{count}} años"},almostXYears:{one:"casi 1 año",other:"casi {{count}} años"}},C1=(e,t,n)=>{let r;const i=S1[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"en "+r:"hace "+r:r},z1={full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/y"},A1={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},E1={full:"{{date}} 'a las' {{time}}",long:"{{date}} 'a las' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},P1={date:Be({formats:z1,defaultWidth:"full"}),time:Be({formats:A1,defaultWidth:"full"}),dateTime:Be({formats:E1,defaultWidth:"full"})},j1={lastWeek:"'el' eeee 'pasado a la' p",yesterday:"'ayer a la' p",today:"'hoy a la' p",tomorrow:"'mañana a la' p",nextWeek:"eeee 'a la' p",other:"P"},N1={lastWeek:"'el' eeee 'pasado a las' p",yesterday:"'ayer a las' p",today:"'hoy a las' p",tomorrow:"'mañana a las' p",nextWeek:"eeee 'a las' p",other:"P"},T1=(e,t,n,r)=>t.getHours()!==1?N1[e]:j1[e],M1={narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","después de cristo"]},I1={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},D1={narrow:["e","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],wide:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"]},R1={narrow:["d","l","m","m","j","v","s"],short:["do","lu","ma","mi","ju","vi","sá"],abbreviated:["dom","lun","mar","mié","jue","vie","sáb"],wide:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"]},L1={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"}},O1={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"}},F1=(e,t)=>Number(e)+"º",B1={ordinalNumber:F1,era:ue({values:M1,defaultWidth:"wide"}),quarter:ue({values:I1,defaultWidth:"wide",argumentCallback:e=>Number(e)-1}),month:ue({values:D1,defaultWidth:"wide"}),day:ue({values:R1,defaultWidth:"wide"}),dayPeriod:ue({values:L1,defaultWidth:"wide",formattingValues:O1,defaultFormattingWidth:"wide"})},W1=/^(\d+)(º)?/i,q1=/\d+/i,V1={narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,wide:/^(antes de cristo|antes de la era com[uú]n|despu[eé]s de cristo|era com[uú]n)/i},J1={any:[/^ac/i,/^dc/i],wide:[/^(antes de cristo|antes de la era com[uú]n)/i,/^(despu[eé]s de cristo|era com[uú]n)/i]},H1={narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},U1={any:[/1/i,/2/i,/3/i,/4/i]},X1={narrow:/^[efmajsond]/i,abbreviated:/^(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/i,wide:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i},Z1={narrow:[/^e/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^en/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i]},G1={narrow:/^[dlmjvs]/i,short:/^(do|lu|ma|mi|ju|vi|s[áa])/i,abbreviated:/^(dom|lun|mar|mi[ée]|jue|vie|s[áa]b)/i,wide:/^(domingo|lunes|martes|mi[ée]rcoles|jueves|viernes|s[áa]bado)/i},K1={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^do/i,/^lu/i,/^ma/i,/^mi/i,/^ju/i,/^vi/i,/^sa/i]},Q1={narrow:/^(a|p|mn|md|(de la|a las) (mañana|tarde|noche))/i,any:/^([ap]\.?\s?m\.?|medianoche|mediodia|(de la|a las) (mañana|tarde|noche))/i},Y1={any:{am:/^a/i,pm:/^p/i,midnight:/^mn/i,noon:/^md/i,morning:/mañana/i,afternoon:/tarde/i,evening:/tarde/i,night:/noche/i}},_1={ordinalNumber:en({matchPattern:W1,parsePattern:q1,valueCallback:function(e){return parseInt(e,10)}}),era:ce({matchPatterns:V1,defaultMatchWidth:"wide",parsePatterns:J1,defaultParseWidth:"any"}),quarter:ce({matchPatterns:H1,defaultMatchWidth:"wide",parsePatterns:U1,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:X1,defaultMatchWidth:"wide",parsePatterns:Z1,defaultParseWidth:"any"}),day:ce({matchPatterns:G1,defaultMatchWidth:"wide",parsePatterns:K1,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:Q1,defaultMatchWidth:"any",parsePatterns:Y1,defaultParseWidth:"any"})},$1={code:"es",formatDistance:C1,formatLong:P1,formatRelative:T1,localize:B1,match:_1,options:{weekStartsOn:1,firstWeekContainsDate:1}},eS={lessThanXSeconds:{one:"moins d’une seconde",other:"moins de {{count}} secondes"},xSeconds:{one:"1 seconde",other:"{{count}} secondes"},halfAMinute:"30 secondes",lessThanXMinutes:{one:"moins d’une minute",other:"moins de {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"environ 1 heure",other:"environ {{count}} heures"},xHours:{one:"1 heure",other:"{{count}} heures"},xDays:{one:"1 jour",other:"{{count}} jours"},aboutXWeeks:{one:"environ 1 semaine",other:"environ {{count}} semaines"},xWeeks:{one:"1 semaine",other:"{{count}} semaines"},aboutXMonths:{one:"environ 1 mois",other:"environ {{count}} mois"},xMonths:{one:"1 mois",other:"{{count}} mois"},aboutXYears:{one:"environ 1 an",other:"environ {{count}} ans"},xYears:{one:"1 an",other:"{{count}} ans"},overXYears:{one:"plus d’un an",other:"plus de {{count}} ans"},almostXYears:{one:"presqu’un an",other:"presque {{count}} ans"}},tS=(e,t,n)=>{let r;const i=eS[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",String(t)),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"dans "+r:"il y a "+r:r},nS={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},rS={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},iS={full:"{{date}} 'à' {{time}}",long:"{{date}} 'à' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},oS={date:Be({formats:nS,defaultWidth:"full"}),time:Be({formats:rS,defaultWidth:"full"}),dateTime:Be({formats:iS,defaultWidth:"full"})},aS={lastWeek:"eeee 'dernier à' p",yesterday:"'hier à' p",today:"'aujourd’hui à' p",tomorrow:"'demain à' p'",nextWeek:"eeee 'prochain à' p",other:"P"},sS=(e,t,n,r)=>aS[e],lS={narrow:["av. J.-C","ap. J.-C"],abbreviated:["av. J.-C","ap. J.-C"],wide:["avant Jésus-Christ","après Jésus-Christ"]},uS={narrow:["T1","T2","T3","T4"],abbreviated:["1er trim.","2ème trim.","3ème trim.","4ème trim."],wide:["1er trimestre","2ème trimestre","3ème trimestre","4ème trimestre"]},cS={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],wide:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"]},dS={narrow:["D","L","M","M","J","V","S"],short:["di","lu","ma","me","je","ve","sa"],abbreviated:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],wide:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]},fS={narrow:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"mat.",afternoon:"ap.m.",evening:"soir",night:"mat."},abbreviated:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"matin",afternoon:"après-midi",evening:"soir",night:"matin"},wide:{am:"AM",pm:"PM",midnight:"minuit",noon:"midi",morning:"du matin",afternoon:"de l’après-midi",evening:"du soir",night:"du matin"}},mS=(e,t)=>{const n=Number(e),r=t==null?void 0:t.unit;if(n===0)return"0";const i=["year","week","hour","minute","second"];let a;return n===1?a=r&&i.includes(r)?"ère":"er":a="ème",n+a},pS=["MMM","MMMM"],hS={preprocessor:(e,t)=>e.getDate()===1||!t.some(r=>r.isToken&&pS.includes(r.value))?t:t.map(r=>r.isToken&&r.value==="do"?{isToken:!0,value:"d"}:r),ordinalNumber:mS,era:ue({values:lS,defaultWidth:"wide"}),quarter:ue({values:uS,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:cS,defaultWidth:"wide"}),day:ue({values:dS,defaultWidth:"wide"}),dayPeriod:ue({values:fS,defaultWidth:"wide"})},gS=/^(\d+)(ième|ère|ème|er|e)?/i,bS=/\d+/i,yS={narrow:/^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i,abbreviated:/^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i,wide:/^(avant Jésus-Christ|après Jésus-Christ)/i},vS={any:[/^av/i,/^ap/i]},xS={narrow:/^T?[1234]/i,abbreviated:/^[1234](er|ème|e)? trim\.?/i,wide:/^[1234](er|ème|e)? trimestre/i},wS={any:[/1/i,/2/i,/3/i,/4/i]},kS={narrow:/^[jfmasond]/i,abbreviated:/^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i,wide:/^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i},SS={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^av/i,/^ma/i,/^juin/i,/^juil/i,/^ao/i,/^s/i,/^o/i,/^n/i,/^d/i]},CS={narrow:/^[lmjvsd]/i,short:/^(di|lu|ma|me|je|ve|sa)/i,abbreviated:/^(dim|lun|mar|mer|jeu|ven|sam)\.?/i,wide:/^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i},zS={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^di/i,/^lu/i,/^ma/i,/^me/i,/^je/i,/^ve/i,/^sa/i]},AS={narrow:/^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i,any:/^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i},ES={any:{am:/^a/i,pm:/^p/i,midnight:/^min/i,noon:/^mid/i,morning:/mat/i,afternoon:/ap/i,evening:/soir/i,night:/nuit/i}},PS={ordinalNumber:en({matchPattern:gS,parsePattern:bS,valueCallback:e=>parseInt(e)}),era:ce({matchPatterns:yS,defaultMatchWidth:"wide",parsePatterns:vS,defaultParseWidth:"any"}),quarter:ce({matchPatterns:xS,defaultMatchWidth:"wide",parsePatterns:wS,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:kS,defaultMatchWidth:"wide",parsePatterns:SS,defaultParseWidth:"any"}),day:ce({matchPatterns:CS,defaultMatchWidth:"wide",parsePatterns:zS,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:AS,defaultMatchWidth:"any",parsePatterns:ES,defaultParseWidth:"any"})},jS={code:"fr",formatDistance:tS,formatLong:oS,formatRelative:sS,localize:hS,match:PS,options:{weekStartsOn:1,firstWeekContainsDate:4}},NS={lessThanXSeconds:{one:"meno di un secondo",other:"meno di {{count}} secondi"},xSeconds:{one:"un secondo",other:"{{count}} secondi"},halfAMinute:"alcuni secondi",lessThanXMinutes:{one:"meno di un minuto",other:"meno di {{count}} minuti"},xMinutes:{one:"un minuto",other:"{{count}} minuti"},aboutXHours:{one:"circa un'ora",other:"circa {{count}} ore"},xHours:{one:"un'ora",other:"{{count}} ore"},xDays:{one:"un giorno",other:"{{count}} giorni"},aboutXWeeks:{one:"circa una settimana",other:"circa {{count}} settimane"},xWeeks:{one:"una settimana",other:"{{count}} settimane"},aboutXMonths:{one:"circa un mese",other:"circa {{count}} mesi"},xMonths:{one:"un mese",other:"{{count}} mesi"},aboutXYears:{one:"circa un anno",other:"circa {{count}} anni"},xYears:{one:"un anno",other:"{{count}} anni"},overXYears:{one:"più di un anno",other:"più di {{count}} anni"},almostXYears:{one:"quasi un anno",other:"quasi {{count}} anni"}},TS=(e,t,n)=>{let r;const i=NS[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"tra "+r:r+" fa":r},MS={full:"EEEE d MMMM y",long:"d MMMM y",medium:"d MMM y",short:"dd/MM/y"},IS={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},DS={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}} {{time}}",short:"{{date}} {{time}}"},RS={date:Be({formats:MS,defaultWidth:"full"}),time:Be({formats:IS,defaultWidth:"full"}),dateTime:Be({formats:DS,defaultWidth:"full"})},ya=["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"];function LS(e){switch(e){case 0:return"'domenica scorsa alle' p";default:return"'"+ya[e]+" scorso alle' p"}}function wl(e){return"'"+ya[e]+" alle' p"}function OS(e){switch(e){case 0:return"'domenica prossima alle' p";default:return"'"+ya[e]+" prossimo alle' p"}}const FS={lastWeek:(e,t,n)=>{const r=e.getDay();return mr(e,t,n)?wl(r):LS(r)},yesterday:"'ieri alle' p",today:"'oggi alle' p",tomorrow:"'domani alle' p",nextWeek:(e,t,n)=>{const r=e.getDay();return mr(e,t,n)?wl(r):OS(r)},other:"P"},BS=(e,t,n,r)=>{const i=FS[e];return typeof i=="function"?i(t,n,r):i},WS={narrow:["aC","dC"],abbreviated:["a.C.","d.C."],wide:["avanti Cristo","dopo Cristo"]},qS={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},VS={narrow:["G","F","M","A","M","G","L","A","S","O","N","D"],abbreviated:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],wide:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"]},JS={narrow:["D","L","M","M","G","V","S"],short:["dom","lun","mar","mer","gio","ven","sab"],abbreviated:["dom","lun","mar","mer","gio","ven","sab"],wide:["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"]},HS={narrow:{am:"m.",pm:"p.",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"},abbreviated:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"},wide:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"mattina",afternoon:"pomeriggio",evening:"sera",night:"notte"}},US={narrow:{am:"m.",pm:"p.",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"},abbreviated:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"},wide:{am:"AM",pm:"PM",midnight:"mezzanotte",noon:"mezzogiorno",morning:"di mattina",afternoon:"del pomeriggio",evening:"di sera",night:"di notte"}},XS=(e,t)=>{const n=Number(e);return String(n)},ZS={ordinalNumber:XS,era:ue({values:WS,defaultWidth:"wide"}),quarter:ue({values:qS,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:VS,defaultWidth:"wide"}),day:ue({values:JS,defaultWidth:"wide"}),dayPeriod:ue({values:HS,defaultWidth:"wide",formattingValues:US,defaultFormattingWidth:"wide"})},GS=/^(\d+)(º)?/i,KS=/\d+/i,QS={narrow:/^(aC|dC)/i,abbreviated:/^(a\.?\s?C\.?|a\.?\s?e\.?\s?v\.?|d\.?\s?C\.?|e\.?\s?v\.?)/i,wide:/^(avanti Cristo|avanti Era Volgare|dopo Cristo|Era Volgare)/i},YS={any:[/^a/i,/^(d|e)/i]},_S={narrow:/^[1234]/i,abbreviated:/^t[1234]/i,wide:/^[1234](º)? trimestre/i},$S={any:[/1/i,/2/i,/3/i,/4/i]},eC={narrow:/^[gfmalsond]/i,abbreviated:/^(gen|feb|mar|apr|mag|giu|lug|ago|set|ott|nov|dic)/i,wide:/^(gennaio|febbraio|marzo|aprile|maggio|giugno|luglio|agosto|settembre|ottobre|novembre|dicembre)/i},tC={narrow:[/^g/i,/^f/i,/^m/i,/^a/i,/^m/i,/^g/i,/^l/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ge/i,/^f/i,/^mar/i,/^ap/i,/^mag/i,/^gi/i,/^l/i,/^ag/i,/^s/i,/^o/i,/^n/i,/^d/i]},nC={narrow:/^[dlmgvs]/i,short:/^(do|lu|ma|me|gi|ve|sa)/i,abbreviated:/^(dom|lun|mar|mer|gio|ven|sab)/i,wide:/^(domenica|luned[i|ì]|marted[i|ì]|mercoled[i|ì]|gioved[i|ì]|venerd[i|ì]|sabato)/i},rC={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^g/i,/^v/i,/^s/i],any:[/^d/i,/^l/i,/^ma/i,/^me/i,/^g/i,/^v/i,/^s/i]},iC={narrow:/^(a|m\.|p|mezzanotte|mezzogiorno|(di|del) (mattina|pomeriggio|sera|notte))/i,any:/^([ap]\.?\s?m\.?|mezzanotte|mezzogiorno|(di|del) (mattina|pomeriggio|sera|notte))/i},oC={any:{am:/^a/i,pm:/^p/i,midnight:/^mezza/i,noon:/^mezzo/i,morning:/mattina/i,afternoon:/pomeriggio/i,evening:/sera/i,night:/notte/i}},aC={ordinalNumber:en({matchPattern:GS,parsePattern:KS,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:QS,defaultMatchWidth:"wide",parsePatterns:YS,defaultParseWidth:"any"}),quarter:ce({matchPatterns:_S,defaultMatchWidth:"wide",parsePatterns:$S,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:eC,defaultMatchWidth:"wide",parsePatterns:tC,defaultParseWidth:"any"}),day:ce({matchPatterns:nC,defaultMatchWidth:"wide",parsePatterns:rC,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:iC,defaultMatchWidth:"any",parsePatterns:oC,defaultParseWidth:"any"})},sC={code:"it",formatDistance:TS,formatLong:RS,formatRelative:BS,localize:ZS,match:aC,options:{weekStartsOn:1,firstWeekContainsDate:4}},lC={lessThanXSeconds:{one:{regular:"mniej niż sekunda",past:"mniej niż sekundę",future:"mniej niż sekundę"},twoFour:"mniej niż {{count}} sekundy",other:"mniej niż {{count}} sekund"},xSeconds:{one:{regular:"sekunda",past:"sekundę",future:"sekundę"},twoFour:"{{count}} sekundy",other:"{{count}} sekund"},halfAMinute:{one:"pół minuty",twoFour:"pół minuty",other:"pół minuty"},lessThanXMinutes:{one:{regular:"mniej niż minuta",past:"mniej niż minutę",future:"mniej niż minutę"},twoFour:"mniej niż {{count}} minuty",other:"mniej niż {{count}} minut"},xMinutes:{one:{regular:"minuta",past:"minutę",future:"minutę"},twoFour:"{{count}} minuty",other:"{{count}} minut"},aboutXHours:{one:{regular:"około godziny",past:"około godziny",future:"około godzinę"},twoFour:"około {{count}} godziny",other:"około {{count}} godzin"},xHours:{one:{regular:"godzina",past:"godzinę",future:"godzinę"},twoFour:"{{count}} godziny",other:"{{count}} godzin"},xDays:{one:{regular:"dzień",past:"dzień",future:"1 dzień"},twoFour:"{{count}} dni",other:"{{count}} dni"},aboutXWeeks:{one:"około tygodnia",twoFour:"około {{count}} tygodni",other:"około {{count}} tygodni"},xWeeks:{one:"tydzień",twoFour:"{{count}} tygodnie",other:"{{count}} tygodni"},aboutXMonths:{one:"około miesiąc",twoFour:"około {{count}} miesiące",other:"około {{count}} miesięcy"},xMonths:{one:"miesiąc",twoFour:"{{count}} miesiące",other:"{{count}} miesięcy"},aboutXYears:{one:"około rok",twoFour:"około {{count}} lata",other:"około {{count}} lat"},xYears:{one:"rok",twoFour:"{{count}} lata",other:"{{count}} lat"},overXYears:{one:"ponad rok",twoFour:"ponad {{count}} lata",other:"ponad {{count}} lat"},almostXYears:{one:"prawie rok",twoFour:"prawie {{count}} lata",other:"prawie {{count}} lat"}};function uC(e,t){if(t===1)return e.one;const n=t%100;if(n<=20&&n>10)return e.other;const r=n%10;return r>=2&&r<=4?e.twoFour:e.other}function so(e,t,n){const r=uC(e,t);return(typeof r=="string"?r:r[n]).replace("{{count}}",String(t))}const cC=(e,t,n)=>{const r=lC[e];return n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"za "+so(r,t,"future"):so(r,t,"past")+" temu":so(r,t,"regular")},dC={full:"EEEE, do MMMM y",long:"do MMMM y",medium:"do MMM y",short:"dd.MM.y"},fC={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},mC={full:"{{date}} {{time}}",long:"{{date}} {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},pC={date:Be({formats:dC,defaultWidth:"full"}),time:Be({formats:fC,defaultWidth:"full"}),dateTime:Be({formats:mC,defaultWidth:"full"})},hC={masculine:"ostatni",feminine:"ostatnia"},gC={masculine:"ten",feminine:"ta"},bC={masculine:"następny",feminine:"następna"},yC={0:"feminine",1:"masculine",2:"masculine",3:"feminine",4:"masculine",5:"masculine",6:"feminine"};function kl(e,t,n,r){let i;if(mr(t,n,r))i=gC;else if(e==="lastWeek")i=hC;else if(e==="nextWeek")i=bC;else throw new Error(`Cannot determine adjectives for token ${e}`);const a=t.getDay(),o=yC[a];return`'${i[o]}' eeee 'o' p`}const vC={lastWeek:kl,yesterday:"'wczoraj o' p",today:"'dzisiaj o' p",tomorrow:"'jutro o' p",nextWeek:kl,other:"P"},xC=(e,t,n,r)=>{const i=vC[e];return typeof i=="function"?i(e,t,n,r):i},wC={narrow:["p.n.e.","n.e."],abbreviated:["p.n.e.","n.e."],wide:["przed naszą erą","naszej ery"]},kC={narrow:["1","2","3","4"],abbreviated:["I kw.","II kw.","III kw.","IV kw."],wide:["I kwartał","II kwartał","III kwartał","IV kwartał"]},SC={narrow:["S","L","M","K","M","C","L","S","W","P","L","G"],abbreviated:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru"],wide:["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień"]},CC={narrow:["s","l","m","k","m","c","l","s","w","p","l","g"],abbreviated:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru"],wide:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia"]},zC={narrow:["N","P","W","Ś","C","P","S"],short:["nie","pon","wto","śro","czw","pią","sob"],abbreviated:["niedz.","pon.","wt.","śr.","czw.","pt.","sob."],wide:["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"]},AC={narrow:["n","p","w","ś","c","p","s"],short:["nie","pon","wto","śro","czw","pią","sob"],abbreviated:["niedz.","pon.","wt.","śr.","czw.","pt.","sob."],wide:["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"]},EC={narrow:{am:"a",pm:"p",midnight:"półn.",noon:"poł",morning:"rano",afternoon:"popoł.",evening:"wiecz.",night:"noc"},abbreviated:{am:"AM",pm:"PM",midnight:"północ",noon:"południe",morning:"rano",afternoon:"popołudnie",evening:"wieczór",night:"noc"},wide:{am:"AM",pm:"PM",midnight:"północ",noon:"południe",morning:"rano",afternoon:"popołudnie",evening:"wieczór",night:"noc"}},PC={narrow:{am:"a",pm:"p",midnight:"o półn.",noon:"w poł.",morning:"rano",afternoon:"po poł.",evening:"wiecz.",night:"w nocy"},abbreviated:{am:"AM",pm:"PM",midnight:"o północy",noon:"w południe",morning:"rano",afternoon:"po południu",evening:"wieczorem",night:"w nocy"},wide:{am:"AM",pm:"PM",midnight:"o północy",noon:"w południe",morning:"rano",afternoon:"po południu",evening:"wieczorem",night:"w nocy"}},jC=(e,t)=>String(e),NC={ordinalNumber:jC,era:ue({values:wC,defaultWidth:"wide"}),quarter:ue({values:kC,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:SC,defaultWidth:"wide",formattingValues:CC,defaultFormattingWidth:"wide"}),day:ue({values:zC,defaultWidth:"wide",formattingValues:AC,defaultFormattingWidth:"wide"}),dayPeriod:ue({values:EC,defaultWidth:"wide",formattingValues:PC,defaultFormattingWidth:"wide"})},TC=/^(\d+)?/i,MC=/\d+/i,IC={narrow:/^(p\.?\s*n\.?\s*e\.?\s*|n\.?\s*e\.?\s*)/i,abbreviated:/^(p\.?\s*n\.?\s*e\.?\s*|n\.?\s*e\.?\s*)/i,wide:/^(przed\s*nasz(ą|a)\s*er(ą|a)|naszej\s*ery)/i},DC={any:[/^p/i,/^n/i]},RC={narrow:/^[1234]/i,abbreviated:/^(I|II|III|IV)\s*kw\.?/i,wide:/^(I|II|III|IV)\s*kwarta(ł|l)/i},LC={narrow:[/1/i,/2/i,/3/i,/4/i],any:[/^I kw/i,/^II kw/i,/^III kw/i,/^IV kw/i]},OC={narrow:/^[slmkcwpg]/i,abbreviated:/^(sty|lut|mar|kwi|maj|cze|lip|sie|wrz|pa(ź|z)|lis|gru)/i,wide:/^(stycznia|stycze(ń|n)|lutego|luty|marca|marzec|kwietnia|kwiecie(ń|n)|maja|maj|czerwca|czerwiec|lipca|lipiec|sierpnia|sierpie(ń|n)|wrze(ś|s)nia|wrzesie(ń|n)|pa(ź|z)dziernika|pa(ź|z)dziernik|listopada|listopad|grudnia|grudzie(ń|n))/i},FC={narrow:[/^s/i,/^l/i,/^m/i,/^k/i,/^m/i,/^c/i,/^l/i,/^s/i,/^w/i,/^p/i,/^l/i,/^g/i],any:[/^st/i,/^lu/i,/^mar/i,/^k/i,/^maj/i,/^c/i,/^lip/i,/^si/i,/^w/i,/^p/i,/^lis/i,/^g/i]},BC={narrow:/^[npwścs]/i,short:/^(nie|pon|wto|(ś|s)ro|czw|pi(ą|a)|sob)/i,abbreviated:/^(niedz|pon|wt|(ś|s)r|czw|pt|sob)\.?/i,wide:/^(niedziela|poniedzia(ł|l)ek|wtorek|(ś|s)roda|czwartek|pi(ą|a)tek|sobota)/i},WC={narrow:[/^n/i,/^p/i,/^w/i,/^ś/i,/^c/i,/^p/i,/^s/i],abbreviated:[/^n/i,/^po/i,/^w/i,/^(ś|s)r/i,/^c/i,/^pt/i,/^so/i],any:[/^n/i,/^po/i,/^w/i,/^(ś|s)r/i,/^c/i,/^pi/i,/^so/i]},qC={narrow:/^(^a$|^p$|pó(ł|l)n\.?|o\s*pó(ł|l)n\.?|po(ł|l)\.?|w\s*po(ł|l)\.?|po\s*po(ł|l)\.?|rano|wiecz\.?|noc|w\s*nocy)/i,any:/^(am|pm|pó(ł|l)noc|o\s*pó(ł|l)nocy|po(ł|l)udnie|w\s*po(ł|l)udnie|popo(ł|l)udnie|po\s*po(ł|l)udniu|rano|wieczór|wieczorem|noc|w\s*nocy)/i},VC={narrow:{am:/^a$/i,pm:/^p$/i,midnight:/pó(ł|l)n/i,noon:/po(ł|l)/i,morning:/rano/i,afternoon:/po\s*po(ł|l)/i,evening:/wiecz/i,night:/noc/i},any:{am:/^am/i,pm:/^pm/i,midnight:/pó(ł|l)n/i,noon:/po(ł|l)/i,morning:/rano/i,afternoon:/po\s*po(ł|l)/i,evening:/wiecz/i,night:/noc/i}},JC={ordinalNumber:en({matchPattern:TC,parsePattern:MC,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:IC,defaultMatchWidth:"wide",parsePatterns:DC,defaultParseWidth:"any"}),quarter:ce({matchPatterns:RC,defaultMatchWidth:"wide",parsePatterns:LC,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:OC,defaultMatchWidth:"wide",parsePatterns:FC,defaultParseWidth:"any"}),day:ce({matchPatterns:BC,defaultMatchWidth:"wide",parsePatterns:WC,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:qC,defaultMatchWidth:"any",parsePatterns:VC,defaultParseWidth:"any"})},HC={code:"pl",formatDistance:cC,formatLong:pC,formatRelative:xC,localize:NC,match:JC,options:{weekStartsOn:1,firstWeekContainsDate:4}},UC={lessThanXSeconds:{one:"bir saniyeden az",other:"{{count}} saniyeden az"},xSeconds:{one:"1 saniye",other:"{{count}} saniye"},halfAMinute:"yarım dakika",lessThanXMinutes:{one:"bir dakikadan az",other:"{{count}} dakikadan az"},xMinutes:{one:"1 dakika",other:"{{count}} dakika"},aboutXHours:{one:"yaklaşık 1 saat",other:"yaklaşık {{count}} saat"},xHours:{one:"1 saat",other:"{{count}} saat"},xDays:{one:"1 gün",other:"{{count}} gün"},aboutXWeeks:{one:"yaklaşık 1 hafta",other:"yaklaşık {{count}} hafta"},xWeeks:{one:"1 hafta",other:"{{count}} hafta"},aboutXMonths:{one:"yaklaşık 1 ay",other:"yaklaşık {{count}} ay"},xMonths:{one:"1 ay",other:"{{count}} ay"},aboutXYears:{one:"yaklaşık 1 yıl",other:"yaklaşık {{count}} yıl"},xYears:{one:"1 yıl",other:"{{count}} yıl"},overXYears:{one:"1 yıldan fazla",other:"{{count}} yıldan fazla"},almostXYears:{one:"neredeyse 1 yıl",other:"neredeyse {{count}} yıl"}},XC=(e,t,n)=>{let r;const i=UC[e];return typeof i=="string"?r=i:t===1?r=i.one:r=i.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?r+" sonra":r+" önce":r},ZC={full:"d MMMM y EEEE",long:"d MMMM y",medium:"d MMM y",short:"dd.MM.yyyy"},GC={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},KC={full:"{{date}} 'saat' {{time}}",long:"{{date}} 'saat' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},QC={date:Be({formats:ZC,defaultWidth:"full"}),time:Be({formats:GC,defaultWidth:"full"}),dateTime:Be({formats:KC,defaultWidth:"full"})},YC={lastWeek:"'geçen hafta' eeee 'saat' p",yesterday:"'dün saat' p",today:"'bugün saat' p",tomorrow:"'yarın saat' p",nextWeek:"eeee 'saat' p",other:"P"},_C=(e,t,n,r)=>YC[e],$C={narrow:["MÖ","MS"],abbreviated:["MÖ","MS"],wide:["Milattan Önce","Milattan Sonra"]},ez={narrow:["1","2","3","4"],abbreviated:["1Ç","2Ç","3Ç","4Ç"],wide:["İlk çeyrek","İkinci Çeyrek","Üçüncü çeyrek","Son çeyrek"]},tz={narrow:["O","Ş","M","N","M","H","T","A","E","E","K","A"],abbreviated:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],wide:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"]},nz={narrow:["P","P","S","Ç","P","C","C"],short:["Pz","Pt","Sa","Ça","Pe","Cu","Ct"],abbreviated:["Paz","Pzt","Sal","Çar","Per","Cum","Cts"],wide:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"]},rz={narrow:{am:"öö",pm:"ös",midnight:"gy",noon:"ö",morning:"sa",afternoon:"ös",evening:"ak",night:"ge"},abbreviated:{am:"ÖÖ",pm:"ÖS",midnight:"gece yarısı",noon:"öğle",morning:"sabah",afternoon:"öğleden sonra",evening:"akşam",night:"gece"},wide:{am:"Ö.Ö.",pm:"Ö.S.",midnight:"gece yarısı",noon:"öğle",morning:"sabah",afternoon:"öğleden sonra",evening:"akşam",night:"gece"}},iz={narrow:{am:"öö",pm:"ös",midnight:"gy",noon:"ö",morning:"sa",afternoon:"ös",evening:"ak",night:"ge"},abbreviated:{am:"ÖÖ",pm:"ÖS",midnight:"gece yarısı",noon:"öğlen",morning:"sabahleyin",afternoon:"öğleden sonra",evening:"akşamleyin",night:"geceleyin"},wide:{am:"ö.ö.",pm:"ö.s.",midnight:"gece yarısı",noon:"öğlen",morning:"sabahleyin",afternoon:"öğleden sonra",evening:"akşamleyin",night:"geceleyin"}},oz=(e,t)=>Number(e)+".",az={ordinalNumber:oz,era:ue({values:$C,defaultWidth:"wide"}),quarter:ue({values:ez,defaultWidth:"wide",argumentCallback:e=>Number(e)-1}),month:ue({values:tz,defaultWidth:"wide"}),day:ue({values:nz,defaultWidth:"wide"}),dayPeriod:ue({values:rz,defaultWidth:"wide",formattingValues:iz,defaultFormattingWidth:"wide"})},sz=/^(\d+)(\.)?/i,lz=/\d+/i,uz={narrow:/^(mö|ms)/i,abbreviated:/^(mö|ms)/i,wide:/^(milattan önce|milattan sonra)/i},cz={any:[/(^mö|^milattan önce)/i,/(^ms|^milattan sonra)/i]},dz={narrow:/^[1234]/i,abbreviated:/^[1234]ç/i,wide:/^((i|İ)lk|(i|İ)kinci|üçüncü|son) çeyrek/i},fz={any:[/1/i,/2/i,/3/i,/4/i],abbreviated:[/1ç/i,/2ç/i,/3ç/i,/4ç/i],wide:[/^(i|İ)lk çeyrek/i,/(i|İ)kinci çeyrek/i,/üçüncü çeyrek/i,/son çeyrek/i]},mz={narrow:/^[oşmnhtaek]/i,abbreviated:/^(oca|şub|mar|nis|may|haz|tem|ağu|eyl|eki|kas|ara)/i,wide:/^(ocak|şubat|mart|nisan|mayıs|haziran|temmuz|ağustos|eylül|ekim|kasım|aralık)/i},pz={narrow:[/^o/i,/^ş/i,/^m/i,/^n/i,/^m/i,/^h/i,/^t/i,/^a/i,/^e/i,/^e/i,/^k/i,/^a/i],any:[/^o/i,/^ş/i,/^mar/i,/^n/i,/^may/i,/^h/i,/^t/i,/^ağ/i,/^ey/i,/^ek/i,/^k/i,/^ar/i]},hz={narrow:/^[psçc]/i,short:/^(pz|pt|sa|ça|pe|cu|ct)/i,abbreviated:/^(paz|pzt|sal|çar|per|cum|cts)/i,wide:/^(pazar(?!tesi)|pazartesi|salı|çarşamba|perşembe|cuma(?!rtesi)|cumartesi)/i},gz={narrow:[/^p/i,/^p/i,/^s/i,/^ç/i,/^p/i,/^c/i,/^c/i],any:[/^pz/i,/^pt/i,/^sa/i,/^ça/i,/^pe/i,/^cu/i,/^ct/i],wide:[/^pazar(?!tesi)/i,/^pazartesi/i,/^salı/i,/^çarşamba/i,/^perşembe/i,/^cuma(?!rtesi)/i,/^cumartesi/i]},bz={narrow:/^(öö|ös|gy|ö|sa|ös|ak|ge)/i,any:/^(ö\.?\s?[ös]\.?|öğleden sonra|gece yarısı|öğle|(sabah|öğ|akşam|gece)(leyin))/i},yz={any:{am:/^ö\.?ö\.?/i,pm:/^ö\.?s\.?/i,midnight:/^(gy|gece yarısı)/i,noon:/^öğ/i,morning:/^sa/i,afternoon:/^öğleden sonra/i,evening:/^ak/i,night:/^ge/i}},vz={ordinalNumber:en({matchPattern:sz,parsePattern:lz,valueCallback:function(e){return parseInt(e,10)}}),era:ce({matchPatterns:uz,defaultMatchWidth:"wide",parsePatterns:cz,defaultParseWidth:"any"}),quarter:ce({matchPatterns:dz,defaultMatchWidth:"wide",parsePatterns:fz,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:mz,defaultMatchWidth:"wide",parsePatterns:pz,defaultParseWidth:"any"}),day:ce({matchPatterns:hz,defaultMatchWidth:"wide",parsePatterns:gz,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:bz,defaultMatchWidth:"any",parsePatterns:yz,defaultParseWidth:"any"})},xz={code:"tr",formatDistance:XC,formatLong:QC,formatRelative:_C,localize:az,match:vz,options:{weekStartsOn:1,firstWeekContainsDate:1}};function nr(e,t){if(e.one!==void 0&&t===1)return e.one;const n=t%10,r=t%100;return n===1&&r!==11?e.singularNominative.replace("{{count}}",String(t)):n>=2&&n<=4&&(r<10||r>20)?e.singularGenitive.replace("{{count}}",String(t)):e.pluralGenitive.replace("{{count}}",String(t))}function mt(e){return(t,n)=>n&&n.addSuffix?n.comparison&&n.comparison>0?e.future?nr(e.future,t):"за "+nr(e.regular,t):e.past?nr(e.past,t):nr(e.regular,t)+" тому":nr(e.regular,t)}const wz=(e,t)=>t&&t.addSuffix?t.comparison&&t.comparison>0?"за півхвилини":"півхвилини тому":"півхвилини",kz={lessThanXSeconds:mt({regular:{one:"менше секунди",singularNominative:"менше {{count}} секунди",singularGenitive:"менше {{count}} секунд",pluralGenitive:"менше {{count}} секунд"},future:{one:"менше, ніж за секунду",singularNominative:"менше, ніж за {{count}} секунду",singularGenitive:"менше, ніж за {{count}} секунди",pluralGenitive:"менше, ніж за {{count}} секунд"}}),xSeconds:mt({regular:{singularNominative:"{{count}} секунда",singularGenitive:"{{count}} секунди",pluralGenitive:"{{count}} секунд"},past:{singularNominative:"{{count}} секунду тому",singularGenitive:"{{count}} секунди тому",pluralGenitive:"{{count}} секунд тому"},future:{singularNominative:"за {{count}} секунду",singularGenitive:"за {{count}} секунди",pluralGenitive:"за {{count}} секунд"}}),halfAMinute:wz,lessThanXMinutes:mt({regular:{one:"менше хвилини",singularNominative:"менше {{count}} хвилини",singularGenitive:"менше {{count}} хвилин",pluralGenitive:"менше {{count}} хвилин"},future:{one:"менше, ніж за хвилину",singularNominative:"менше, ніж за {{count}} хвилину",singularGenitive:"менше, ніж за {{count}} хвилини",pluralGenitive:"менше, ніж за {{count}} хвилин"}}),xMinutes:mt({regular:{singularNominative:"{{count}} хвилина",singularGenitive:"{{count}} хвилини",pluralGenitive:"{{count}} хвилин"},past:{singularNominative:"{{count}} хвилину тому",singularGenitive:"{{count}} хвилини тому",pluralGenitive:"{{count}} хвилин тому"},future:{singularNominative:"за {{count}} хвилину",singularGenitive:"за {{count}} хвилини",pluralGenitive:"за {{count}} хвилин"}}),aboutXHours:mt({regular:{singularNominative:"близько {{count}} години",singularGenitive:"близько {{count}} годин",pluralGenitive:"близько {{count}} годин"},future:{singularNominative:"приблизно за {{count}} годину",singularGenitive:"приблизно за {{count}} години",pluralGenitive:"приблизно за {{count}} годин"}}),xHours:mt({regular:{singularNominative:"{{count}} годину",singularGenitive:"{{count}} години",pluralGenitive:"{{count}} годин"}}),xDays:mt({regular:{singularNominative:"{{count}} день",singularGenitive:"{{count}} днi",pluralGenitive:"{{count}} днів"}}),aboutXWeeks:mt({regular:{singularNominative:"близько {{count}} тижня",singularGenitive:"близько {{count}} тижнів",pluralGenitive:"близько {{count}} тижнів"},future:{singularNominative:"приблизно за {{count}} тиждень",singularGenitive:"приблизно за {{count}} тижні",pluralGenitive:"приблизно за {{count}} тижнів"}}),xWeeks:mt({regular:{singularNominative:"{{count}} тиждень",singularGenitive:"{{count}} тижні",pluralGenitive:"{{count}} тижнів"}}),aboutXMonths:mt({regular:{singularNominative:"близько {{count}} місяця",singularGenitive:"близько {{count}} місяців",pluralGenitive:"близько {{count}} місяців"},future:{singularNominative:"приблизно за {{count}} місяць",singularGenitive:"приблизно за {{count}} місяці",pluralGenitive:"приблизно за {{count}} місяців"}}),xMonths:mt({regular:{singularNominative:"{{count}} місяць",singularGenitive:"{{count}} місяці",pluralGenitive:"{{count}} місяців"}}),aboutXYears:mt({regular:{singularNominative:"близько {{count}} року",singularGenitive:"близько {{count}} років",pluralGenitive:"близько {{count}} років"},future:{singularNominative:"приблизно за {{count}} рік",singularGenitive:"приблизно за {{count}} роки",pluralGenitive:"приблизно за {{count}} років"}}),xYears:mt({regular:{singularNominative:"{{count}} рік",singularGenitive:"{{count}} роки",pluralGenitive:"{{count}} років"}}),overXYears:mt({regular:{singularNominative:"більше {{count}} року",singularGenitive:"більше {{count}} років",pluralGenitive:"більше {{count}} років"},future:{singularNominative:"більше, ніж за {{count}} рік",singularGenitive:"більше, ніж за {{count}} роки",pluralGenitive:"більше, ніж за {{count}} років"}}),almostXYears:mt({regular:{singularNominative:"майже {{count}} рік",singularGenitive:"майже {{count}} роки",pluralGenitive:"майже {{count}} років"},future:{singularNominative:"майже за {{count}} рік",singularGenitive:"майже за {{count}} роки",pluralGenitive:"майже за {{count}} років"}})},Sz=(e,t,n)=>(n=n||{},kz[e](t,n)),Cz={full:"EEEE, do MMMM y 'р.'",long:"do MMMM y 'р.'",medium:"d MMM y 'р.'",short:"dd.MM.y"},zz={full:"H:mm:ss zzzz",long:"H:mm:ss z",medium:"H:mm:ss",short:"H:mm"},Az={full:"{{date}} 'о' {{time}}",long:"{{date}} 'о' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Ez={date:Be({formats:Cz,defaultWidth:"full"}),time:Be({formats:zz,defaultWidth:"full"}),dateTime:Be({formats:Az,defaultWidth:"full"})},va=["неділю","понеділок","вівторок","середу","четвер","п’ятницю","суботу"];function Pz(e){const t=va[e];switch(e){case 0:case 3:case 5:case 6:return"'у минулу "+t+" о' p";case 1:case 2:case 4:return"'у минулий "+t+" о' p"}}function vd(e){return"'у "+va[e]+" о' p"}function jz(e){const t=va[e];switch(e){case 0:case 3:case 5:case 6:return"'у наступну "+t+" о' p";case 1:case 2:case 4:return"'у наступний "+t+" о' p"}}const Nz=(e,t,n)=>{const r=$e(e),i=r.getDay();return mr(r,t,n)?vd(i):Pz(i)},Tz=(e,t,n)=>{const r=$e(e),i=r.getDay();return mr(r,t,n)?vd(i):jz(i)},Mz={lastWeek:Nz,yesterday:"'вчора о' p",today:"'сьогодні о' p",tomorrow:"'завтра о' p",nextWeek:Tz,other:"P"},Iz=(e,t,n,r)=>{const i=Mz[e];return typeof i=="function"?i(t,n,r):i},Dz={narrow:["до н.е.","н.е."],abbreviated:["до н. е.","н. е."],wide:["до нашої ери","нашої ери"]},Rz={narrow:["1","2","3","4"],abbreviated:["1-й кв.","2-й кв.","3-й кв.","4-й кв."],wide:["1-й квартал","2-й квартал","3-й квартал","4-й квартал"]},Lz={narrow:["С","Л","Б","К","Т","Ч","Л","С","В","Ж","Л","Г"],abbreviated:["січ.","лют.","берез.","квіт.","трав.","черв.","лип.","серп.","верес.","жовт.","листоп.","груд."],wide:["січень","лютий","березень","квітень","травень","червень","липень","серпень","вересень","жовтень","листопад","грудень"]},Oz={narrow:["С","Л","Б","К","Т","Ч","Л","С","В","Ж","Л","Г"],abbreviated:["січ.","лют.","берез.","квіт.","трав.","черв.","лип.","серп.","верес.","жовт.","листоп.","груд."],wide:["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня"]},Fz={narrow:["Н","П","В","С","Ч","П","С"],short:["нд","пн","вт","ср","чт","пт","сб"],abbreviated:["нед","пон","вів","сер","чтв","птн","суб"],wide:["неділя","понеділок","вівторок","середа","четвер","п’ятниця","субота"]},Bz={narrow:{am:"ДП",pm:"ПП",midnight:"півн.",noon:"пол.",morning:"ранок",afternoon:"день",evening:"веч.",night:"ніч"},abbreviated:{am:"ДП",pm:"ПП",midnight:"півн.",noon:"пол.",morning:"ранок",afternoon:"день",evening:"веч.",night:"ніч"},wide:{am:"ДП",pm:"ПП",midnight:"північ",noon:"полудень",morning:"ранок",afternoon:"день",evening:"вечір",night:"ніч"}},Wz={narrow:{am:"ДП",pm:"ПП",midnight:"півн.",noon:"пол.",morning:"ранку",afternoon:"дня",evening:"веч.",night:"ночі"},abbreviated:{am:"ДП",pm:"ПП",midnight:"півн.",noon:"пол.",morning:"ранку",afternoon:"дня",evening:"веч.",night:"ночі"},wide:{am:"ДП",pm:"ПП",midnight:"північ",noon:"полудень",morning:"ранку",afternoon:"дня",evening:"веч.",night:"ночі"}},qz=(e,t)=>{const n=String(t==null?void 0:t.unit),r=Number(e);let i;return n==="date"?r===3||r===23?i="-є":i="-е":n==="minute"||n==="second"||n==="hour"?i="-а":i="-й",r+i},Vz={ordinalNumber:qz,era:ue({values:Dz,defaultWidth:"wide"}),quarter:ue({values:Rz,defaultWidth:"wide",argumentCallback:e=>e-1}),month:ue({values:Lz,defaultWidth:"wide",formattingValues:Oz,defaultFormattingWidth:"wide"}),day:ue({values:Fz,defaultWidth:"wide"}),dayPeriod:ue({values:Bz,defaultWidth:"any",formattingValues:Wz,defaultFormattingWidth:"wide"})},Jz=/^(\d+)(-?(е|й|є|а|я))?/i,Hz=/\d+/i,Uz={narrow:/^((до )?н\.?\s?е\.?)/i,abbreviated:/^((до )?н\.?\s?е\.?)/i,wide:/^(до нашої ери|нашої ери|наша ера)/i},Xz={any:[/^д/i,/^н/i]},Zz={narrow:/^[1234]/i,abbreviated:/^[1234](-?[иі]?й?)? кв.?/i,wide:/^[1234](-?[иі]?й?)? квартал/i},Gz={any:[/1/i,/2/i,/3/i,/4/i]},Kz={narrow:/^[слбктчвжг]/i,abbreviated:/^(січ|лют|бер(ез)?|квіт|трав|черв|лип|серп|вер(ес)?|жовт|лис(топ)?|груд)\.?/i,wide:/^(січень|січня|лютий|лютого|березень|березня|квітень|квітня|травень|травня|червня|червень|липень|липня|серпень|серпня|вересень|вересня|жовтень|жовтня|листопад[а]?|грудень|грудня)/i},Qz={narrow:[/^с/i,/^л/i,/^б/i,/^к/i,/^т/i,/^ч/i,/^л/i,/^с/i,/^в/i,/^ж/i,/^л/i,/^г/i],any:[/^сі/i,/^лю/i,/^б/i,/^к/i,/^т/i,/^ч/i,/^лип/i,/^се/i,/^в/i,/^ж/i,/^лис/i,/^г/i]},Yz={narrow:/^[нпвсч]/i,short:/^(нд|пн|вт|ср|чт|пт|сб)\.?/i,abbreviated:/^(нед|пон|вів|сер|че?тв|птн?|суб)\.?/i,wide:/^(неділ[яі]|понеділ[ок][ка]|вівтор[ок][ка]|серед[аи]|четвер(га)?|п\W*?ятниц[яі]|субот[аи])/i},_z={narrow:[/^н/i,/^п/i,/^в/i,/^с/i,/^ч/i,/^п/i,/^с/i],any:[/^н/i,/^п[он]/i,/^в/i,/^с[ер]/i,/^ч/i,/^п\W*?[ят]/i,/^с[уб]/i]},$z={narrow:/^([дп]п|півн\.?|пол\.?|ранок|ранку|день|дня|веч\.?|ніч|ночі)/i,abbreviated:/^([дп]п|півн\.?|пол\.?|ранок|ранку|день|дня|веч\.?|ніч|ночі)/i,wide:/^([дп]п|північ|полудень|ранок|ранку|день|дня|вечір|вечора|ніч|ночі)/i},eA={any:{am:/^дп/i,pm:/^пп/i,midnight:/^півн/i,noon:/^пол/i,morning:/^р/i,afternoon:/^д[ен]/i,evening:/^в/i,night:/^н/i}},tA={ordinalNumber:en({matchPattern:Jz,parsePattern:Hz,valueCallback:e=>parseInt(e,10)}),era:ce({matchPatterns:Uz,defaultMatchWidth:"wide",parsePatterns:Xz,defaultParseWidth:"any"}),quarter:ce({matchPatterns:Zz,defaultMatchWidth:"wide",parsePatterns:Gz,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ce({matchPatterns:Kz,defaultMatchWidth:"wide",parsePatterns:Qz,defaultParseWidth:"any"}),day:ce({matchPatterns:Yz,defaultMatchWidth:"wide",parsePatterns:_z,defaultParseWidth:"any"}),dayPeriod:ce({matchPatterns:$z,defaultMatchWidth:"wide",parsePatterns:eA,defaultParseWidth:"any"})},nA={code:"uk",formatDistance:Sz,formatLong:Ez,formatRelative:Iz,localize:Vz,match:tA,options:{weekStartsOn:1,firstWeekContainsDate:1}},Sl="group-hover:[animation-play-state:paused] group-focus-within:[animation-play-state:paused]";function rA({quickActions:e,theme:t,onSelect:n,pauseOnHover:r=!1}){return e.length?f.jsxs("div",{className:`${r?"group ":""}space-y-1.5 mb-4 py-2`,style:{animation:"fadeInUp 0.6s ease-out"},children:[f.jsx("div",{className:"relative flex gap-2 overflow-x-hidden overflow-y-visible py-1",children:f.jsx("div",{className:`flex gap-2 animate-[scrollLeft_25s_linear_infinite] ${r?Sl:""}`,children:[...e.slice(0,4),...e.slice(0,4)].map((i,a)=>f.jsx("button",{onClick:()=>n(i.message),"aria-label":`Schnellaktion: ${i.title}`,className:`flex-shrink-0 px-4 py-2.5 rounded-full text-xs font-medium transition-all duration-300 whitespace-nowrap focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2 focus:ring-offset-background hover:scale-105 border ${t==="light"?"bg-white/90 text-foreground shadow-none hover:bg-white hover:shadow-none":"bg-white/8 backdrop-blur-[10px] text-foreground/90 hover:bg-white/15 hover:shadow-[0_4px_15px_hsl(var(--glow-primary)/0.3)]"}`,style:{borderColor:"hsl(var(--chat-quick-border))"},children:i.title},`row1-${a}`))})}),f.jsx("div",{className:"relative flex gap-2 overflow-x-hidden overflow-y-visible py-1",children:f.jsx("div",{className:`flex gap-2 animate-[scrollRight_30s_linear_infinite] ${r?Sl:""}`,children:[...e.slice(4),...e.slice(4)].map((i,a)=>f.jsx("button",{onClick:()=>n(i.message),"aria-label":`Schnellaktion: ${i.title}`,className:`flex-shrink-0 px-4 py-2.5 rounded-full text-xs font-medium transition-all duration-300 whitespace-nowrap hover:scale-105 focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2 focus:ring-offset-background border ${t==="light"?"bg-white/90 text-foreground shadow-none hover:bg-white hover:shadow-none":"bg-white/8 backdrop-blur-[10px] text-foreground/90 hover:bg-white/15 hover:shadow-[0_4px_15px_hsl(var(--glow-primary)/0.3)]"}`,style:{borderColor:"hsl(var(--chat-quick-border))"},children:i.title},`row2-${a}`))})})]}):null}const iA=({sources:e})=>e.length===0?null:f.jsxs("div",{className:"space-y-1.5 w-full min-w-full",children:[f.jsx("div",{className:"text-[10px] uppercase tracking-wider text-foreground/50 font-semibold",children:"Quellen"}),f.jsx("div",{className:"flex flex-col gap-1",children:e.map((t,n)=>f.jsx("div",{className:"flex items-center gap-2 text-xs text-foreground/70 bg-muted rounded-lg px-3 py-2 border border-border hover:bg-muted/80 transition-all group w-full max-w-full min-w-full",children:t.url?f.jsxs("a",{href:t.url,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 flex-1 min-w-0 max-w-full hover:text-primary transition-colors",children:[f.jsx(xn,{className:"w-3 h-3 flex-shrink-0 group-hover:scale-110 transition-transform"}),f.jsx("span",{className:"text-left break-words leading-snug",children:t.name})]}):f.jsxs("span",{className:"flex items-center gap-2 flex-1 min-w-0 max-w-full",children:[f.jsx("span",{className:"w-3 h-3 rounded-full bg-primary/30 flex-shrink-0"}),f.jsx("span",{className:"text-left break-words leading-snug",children:t.name})]})},n))})]}),Cl={de:"de",en:"en",fr:"fr",es:"es",it:"it",tr:"tr",ar:"ar",pl:"pl",ua:"uk",simple:"de"},zl={de:{play:"Vorlesen",stop:"Vorlesen stoppen"},en:{play:"Play audio",stop:"Stop audio"},fr:{play:"Lire à haute voix",stop:"Arrêter la lecture"},es:{play:"Leer en voz alta",stop:"Detener la lectura"},it:{play:"Leggi ad alta voce",stop:"Ferma la lettura"},tr:{play:"Sesli oku",stop:"Okumayı durdur"},ar:{play:"تشغيل الصوت",stop:"إيقاف الصوت"},pl:{play:"Odczytaj",stop:"Zatrzymaj odczyt"},ua:{play:"Зачитати",stop:"Зупинити відтворення"},simple:{play:"Vorlesen",stop:"Vorlesen stoppen"}},Al={de:"de-DE",en:"en-US",fr:"fr-FR",es:"es-ES",it:"it-IT",tr:"tr-TR",ar:"ar",pl:"pl-PL",ua:"uk-UA",simple:"de-DE"};let lt=null;const oA="data:audio/wav;base64,UklGRiYAAABXQVZFZm10IBAAAAABAAEAQB8AAIA+AAACABAAZGF0YQIAAAAAAA==",aA=()=>{if(typeof navigator>"u")return!1;const e=navigator.userAgent||"",t=navigator.platform||"",n=navigator.maxTouchPoints||0;return/iPad|iPhone|iPod/.test(e)||t==="MacIntel"&&n>1};let rr="locked";const sA=()=>{if(rr==="locked"&&!(typeof document>"u")){rr="attempting";try{const e=document.createElement("audio");e.preload="auto",e.src=oA,e.volume=0,e.muted=!1;const t=e.play();Promise.resolve(t).then(()=>{e.pause(),e.removeAttribute("src"),e.load(),rr="unlocked"}).catch(()=>{rr="locked"})}catch{rr="locked"}}},lo=()=>{if(lt){const e=lt;lt=null,e.stop()}},lA=()=>{if(typeof window>"u")return!1;const e=window.MediaSource;return e?typeof e.isTypeSupported=="function"&&e.isTypeSupported("audio/mpeg"):!1},uA=e=>{var r;const t=e==null?void 0:e.trim();return t&&((r=t.split(";")[0])==null?void 0:r.trim())||"audio/mpeg"},cA=({text:e,language:t="de",className:n,modelId:r,voiceId:i,voiceSettings:a})=>{const[o,s]=I.useState("idle"),[l,u]=I.useState(null),c=I.useRef(+`${Date.now()}${Math.floor(Math.random()*1e3)}`),d=I.useRef(null),p=I.useRef(null),m=I.useRef(null),h=I.useRef(null),g=(E={})=>{var M;const{clearGlobal:R=!0}=E;(M=p.current)==null||M.abort(),p.current=null,d.current&&(d.current.pause(),d.current.currentTime=0,d.current.remove(),d.current=null),m.current&&(URL.revokeObjectURL(m.current),m.current=null,u(null)),h.current&&typeof window<"u"&&window.speechSynthesis&&((!R||(lt==null?void 0:lt.ownerId)===c.current)&&window.speechSynthesis.cancel(),h.current=null),R&&(lt==null?void 0:lt.ownerId)===c.current&&(lt=null),s("idle")};I.useEffect(()=>()=>{g()},[]);const b=E=>{if(typeof window>"u"||typeof SpeechSynthesisUtterance>"u"||!window.speechSynthesis)return!1;lo(),g();const R=new SpeechSynthesisUtterance(E);R.lang=Al[t]||Al.de,h.current=R,s("playing");const M=()=>{window.speechSynthesis&&window.speechSynthesis.cancel(),g({clearGlobal:!1})};lt={ownerId:c.current,stop:M};const k=()=>{g()};return R.onend=k,R.onerror=k,window.speechSynthesis.speak(R),!0},y=async(E,R,M,k)=>{var Pe;const N=(Pe=E.body)==null?void 0:Pe.getReader();if(!N)throw new Error("No response body");await new Promise((le,Ce)=>{if(k.aborted){Ce(Object.assign(new Error("Aborted"),{name:"AbortError"}));return}if(R.readyState==="open"){le();return}const Q=()=>{me(),le()},U=()=>{me(),Ce(new Error("MediaSource closed"))},ee=()=>{me(),Ce(Object.assign(new Error("Aborted"),{name:"AbortError"}))},me=()=>{R.removeEventListener("sourceopen",Q),R.removeEventListener("sourceended",U),R.removeEventListener("sourceclose",U),k.removeEventListener("abort",ee)};R.addEventListener("sourceopen",Q),R.addEventListener("sourceended",U),R.addEventListener("sourceclose",U),k.addEventListener("abort",ee)});const T=R.addSourceBuffer(M);try{T.mode="sequence"}catch{}const V=[];let O=!1,F=!1;const B=()=>Object.assign(new Error("Aborted"),{name:"AbortError"});let Z=null,X=null;const K=new Promise((le,Ce)=>{Z=le,X=Ce});K.catch(()=>{});let w=null,se=null,Ee=null;const z=()=>{w&&T.removeEventListener("updateend",w),se&&T.removeEventListener("error",se),Ee&&k.removeEventListener("abort",Ee)},Me=le=>{F||(F=!0,z(),le())},We=le=>{try{N.cancel()}catch{}Me(()=>{X==null||X(le instanceof Error?le:new Error("Audio stream failed"))})},Te=()=>{F||O&&(T.updating||V.length>0||Me(()=>{try{R.readyState==="open"&&R.endOfStream()}catch{}Z==null||Z()}))},Re=()=>{if(F)return;if(k.aborted){We(B());return}if(T.updating)return;const le=V.shift();if(!le){Te();return}try{T.appendBuffer(le)}catch(Ce){We(Ce)}};w=()=>{Re(),Te()},se=()=>{We(new Error("Audio stream buffer error"))},Ee=()=>{We(B())},T.addEventListener("updateend",w),T.addEventListener("error",se),k.addEventListener("abort",Ee),k.aborted&&Ee();try{for(;;){const{value:le,done:Ce}=await N.read();if(Ce)break;if(k.aborted)throw B();le!=null&&le.byteLength&&(V.push(le.buffer.slice(le.byteOffset,le.byteOffset+le.byteLength)),Re())}O=!0,Re(),Te(),await K}catch(le){return F||We(le),await K}finally{try{N.releaseLock()}catch{}}},x=async()=>{const E=e==null?void 0:e.trim();if(!E)return;if(typeof Audio>"u"){b(E)||bt({title:"Audio nicht verfügbar",description:"Ihr Browser unterstützt keine Audiowiedergabe.",variant:"destructive"});return}lo(),g();const R=aA();R&&sA();const M=new AbortController;p.current=M,s("loading"),lt={ownerId:c.current,stop:()=>g({clearGlobal:!1})};try{const k=!R&&lA(),N=document.createElement("audio");N.preload="auto",N.volume=1,N.muted=!1,N.setAttribute("playsinline","true"),N.setAttribute("webkit-playsinline","true");let T=null,V=null;if(k){const F=window.MediaSource;T=new F;const B=URL.createObjectURL(T);N.src=B,m.current=B,u(B),V=(async()=>{const Z=await nc({text:E,languageCode:Cl[t]||void 0,modelId:r||void 0,voiceId:i||void 0,voiceSettings:a||void 0,signal:M.signal}),X=uA(Z.headers.get("content-type")),K=typeof F.isTypeSupported=="function"&&F.isTypeSupported(X)?X:"audio/mpeg";await y(Z,T,K,M.signal)})()}else{const F=await vh({text:E,languageCode:Cl[t]||void 0,modelId:r||void 0,voiceId:i||void 0,voiceSettings:a||void 0,signal:M.signal}),B=URL.createObjectURL(F);N.src=B,m.current=B,u(B)}R&&typeof document<"u"&&document.body&&(N.style.display="none",document.body.appendChild(N)),d.current=N;const O=()=>{g()};N.onended=O,N.onerror=()=>{O(),b(E)||bt({title:"Wiedergabe fehlgeschlagen",description:"Audio playback failed",variant:"destructive"})};try{const F=R?new Promise(X=>{let w;const se=()=>{N.removeEventListener("playing",Ee),N.removeEventListener("timeupdate",z),N.removeEventListener("error",Me),w!==void 0&&window.clearTimeout(w)},Ee=()=>{se(),X(!0)},z=()=>{N.currentTime>0&&(se(),X(!0))},Me=()=>{se(),X(!1)};w=window.setTimeout(()=>{se(),X(!N.paused&&!N.ended)},2e3),N.addEventListener("playing",Ee),N.addEventListener("timeupdate",z),N.addEventListener("error",Me)}):Promise.resolve(!0),B=Promise.resolve(N.play());if(V){const X=V.then(()=>new Promise(()=>{}),K=>Promise.reject(K));await Promise.race([B,X])}else await B;if(!await F)throw new Error("Audio playback did not start");s("playing")}catch(F){const B=typeof F=="object"&&F!==null&&"name"in F&&F.name==="NotAllowedError";if(R&&(B||(F==null?void 0:F.message)==="Audio playback did not start")){s("ready"),bt({title:"Tippen zum Abspielen",description:"Auf iOS kann ein zweites Tippen nötig sein, um Audio zu starten."});return}if(O(),!b(E)){const X=F instanceof Error?F.message:"Audio playback failed";bt({title:"Wiedergabe fehlgeschlagen",description:X,variant:"destructive"})}return}V&&await V}catch(k){if((k==null?void 0:k.name)==="AbortError"){h.current||g();return}if(g(),!b(E)){const T=k instanceof Error?k.message:"Text-to-speech fehlgeschlagen";bt({title:"Text-to-Speech fehlgeschlagen",description:T,variant:"destructive"})}}finally{p.current=null}},S=()=>{if(o==="loading"||o==="playing")g();else if(o==="ready"){const E=d.current;if(!E){x();return}(lt==null?void 0:lt.ownerId)!==c.current&&lo(),lt={ownerId:c.current,stop:()=>g({clearGlobal:!1})};const R=E.play();Promise.resolve(R).then(()=>s("playing")).catch(M=>{const k=M instanceof Error?M.message:"Audio playback failed";bt({title:"Wiedergabe fehlgeschlagen",description:k,variant:"destructive"}),g()})}else x()},P=zl[t]||zl.de,j=o==="playing"?P.stop:P.play,C=["p-1 rounded transition-colors",o==="playing"||o==="loading"?"text-primary":"text-foreground/40 hover:text-primary",n||""].join(" ").trim();return f.jsxs("button",{type:"button",onClick:S,className:C,"aria-label":j,title:j,children:[o==="loading"?f.jsx(tm,{className:"w-3 h-3 animate-spin"}):o==="playing"?f.jsx(hm,{className:"w-3 h-3"}):f.jsx(pm,{className:"w-3 h-3"}),f.jsx("span",{className:"sr-only",children:j})]})},dA=()=>f.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 max-w-[85%] w-fit bg-card/50 backdrop-blur-sm rounded-2xl rounded-tl-none border border-border/30 shadow-lg animate-message-slide-in",children:[f.jsxs("div",{className:"flex gap-1",children:[f.jsx("div",{className:"w-2 h-2 rounded-full bg-primary animate-typing-pulse",style:{animationDelay:"0ms"},"aria-hidden":"true"}),f.jsx("div",{className:"w-2 h-2 rounded-full bg-primary animate-typing-pulse",style:{animationDelay:"200ms"},"aria-hidden":"true"}),f.jsx("div",{className:"w-2 h-2 rounded-full bg-primary animate-typing-pulse",style:{animationDelay:"400ms"},"aria-hidden":"true"})]}),f.jsx("span",{className:"sr-only",children:"Assistent tippt..."})]}),cn=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{},sn=e=>Array.isArray(e)?e.map(cn).filter(t=>Object.keys(t).length>0):[],$=e=>typeof e=="string"||typeof e=="number"?String(e):"",pr=(e,t=!1)=>{const n=$(e);if(!n)return"";const r=new Date(t?n:`${n}T00:00:00Z`);return Number.isNaN(r.getTime())?n:new Intl.DateTimeFormat("de-DE",{weekday:"short",day:"2-digit",month:"2-digit",...t?{year:"numeric",hour:"2-digit",minute:"2-digit"}:{timeZone:"UTC"}}).format(r)},oi=e=>{const t=$(e),n=new Date(`${t}T00:00:00Z`);return!t||Number.isNaN(n.getTime())?t:new Intl.DateTimeFormat("de-DE",{weekday:"short",day:"2-digit",month:"2-digit",year:"numeric",timeZone:"UTC"}).format(n)},El=e=>{const t=new Date($(e));return Number.isNaN(t.getTime())?"":new Intl.DateTimeFormat("de-DE",{hour:"2-digit",minute:"2-digit"}).format(t)},xd=(e,t)=>{const n=Number($(e));return!$(e)||!Number.isFinite(n)||!$(t)?"":new Intl.NumberFormat("de-DE",{style:"currency",currency:$(t)}).format(n)},fA=e=>{if(e.fee_visibility==="hidden")return"";const t=xd(e.fee_amount,e.fee_currency);return t?`${t} vor Ort`:e.requires_payment||e.fee_visibility==="on_site"?"Gebühr vor Ort":""},mA=e=>{const t=cn(e);if(t.visibility!=="visible")return"";const n=cn(t.total),r=xd(n.amount,n.currency);return r?`${r} vor Ort`:""},pA=e=>sn(e).map(t=>{const n=$(t.name),r=Number(t.quantity)||1;return n?r>1?`${r} × ${n}`:n:""}).filter(Boolean),wd=e=>Object.keys(cn(e.booking)).length?cn(e.booking):e,Do=e=>$(wd(e).id||e.booking_id),En=(e,t)=>{const[n,r]=I.useState(null);return{chosen:n,pick:(a,o,s)=>{e||n||(r(a),t(o,s))}}},Ln=4,Pl=3,hA=6;function gA({title:e,state:t}){return f.jsxs("div",{className:"flex items-center justify-between gap-3 border-b border-border/70 bg-primary/[0.04] px-3 py-2.5",children:[f.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[f.jsx("span",{className:`flex h-7 w-7 shrink-0 items-center justify-center rounded-lg ${t==="success"?"bg-emerald-500/10 text-emerald-600":t==="cancelled"?"bg-destructive/10 text-destructive":"bg-primary/10 text-primary"}`,children:t==="success"?f.jsx(su,{className:"h-4 w-4","aria-hidden":"true"}):t==="cancelled"?f.jsx(Yf,{className:"h-4 w-4","aria-hidden":"true"}):f.jsx(Gf,{className:"h-4 w-4","aria-hidden":"true"})}),f.jsx("span",{className:"truncate text-sm font-semibold text-foreground",children:e})]}),f.jsx("span",{className:"hidden shrink-0 text-[10px] font-semibold uppercase tracking-[0.12em] text-foreground/45 min-[400px]:inline",title:"Live-Daten aus dem Amturo-Terminsystem",children:"Amturo · live"})]})}function tn({title:e,state:t,children:n}){return f.jsxs("section",{className:"w-full max-w-[380px] min-w-0 overflow-hidden rounded-2xl border border-border/80 bg-[hsl(var(--chat-message-bot))] text-foreground shadow-[0_8px_24px_rgba(0,0,0,0.07)]",children:[f.jsx(gA,{title:e,state:t}),n]})}const Kt="focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-2 focus-visible:ring-offset-[hsl(var(--chat-message-bot))]",Tt=({children:e,disabled:t,onClick:n,variant:r="primary",ariaLabel:i})=>f.jsx("button",{type:"button",disabled:t,onClick:n,"aria-label":i,className:`inline-flex min-h-10 items-center justify-center gap-1.5 rounded-xl px-3.5 py-2 text-xs font-semibold transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${Kt} ${r==="primary"?"bg-primary text-primary-foreground hover:bg-primary/90":r==="destructive"?"bg-destructive text-destructive-foreground hover:bg-destructive/90":"border border-border text-foreground/75 hover:bg-primary/[0.06] hover:text-foreground"}`,children:e}),dn=({label:e="Ausgewählt",tone:t="success"})=>f.jsxs("span",{className:`inline-flex min-h-8 items-center gap-1.5 rounded-lg px-2.5 py-1 text-xs font-semibold ${t==="success"?"bg-emerald-500/10 text-emerald-600":"bg-muted text-foreground/60"}`,children:[t==="success"&&f.jsx(zn,{className:"h-3.5 w-3.5","aria-hidden":"true"}),e]}),Ro=({text:e="Nicht mehr aktiv – der Dialog ist weitergegangen."})=>f.jsx("p",{className:"text-xs leading-relaxed text-foreground/50",children:e}),bA={BOOKED:{label:"Gebucht",className:"bg-emerald-500/10 text-emerald-600"},CONFIRMED:{label:"Bestätigt",className:"bg-emerald-500/10 text-emerald-600"},PENDING:{label:"Ausstehend",className:"bg-amber-500/10 text-amber-600"},RESERVED:{label:"Reserviert",className:"bg-amber-500/10 text-amber-600"},CANCELLED:{label:"Storniert",className:"bg-destructive/10 text-destructive"}},yA=({status:e})=>{if(!e)return null;const t=bA[e.toUpperCase()]??{label:e,className:"bg-muted text-foreground/70"};return f.jsx("span",{className:`inline-flex items-center rounded-md px-2 py-0.5 text-[11px] font-semibold ${t.className}`,children:t.label})},ki=({icon:e,text:t,children:n})=>f.jsxs("div",{className:"flex flex-col items-start gap-2.5 p-3",children:[f.jsxs("div",{className:"flex items-start gap-2.5 text-xs leading-relaxed text-foreground/60",children:[f.jsx("span",{className:"mt-0.5 shrink-0 text-foreground/40",children:e}),f.jsx("p",{children:t})]}),n]}),xa=({label:e,onClick:t})=>f.jsx("button",{type:"button",onClick:t,className:`w-full border-t border-border/60 px-3 py-2.5 text-center text-xs font-semibold text-primary transition-colors hover:bg-primary/[0.05] ${Kt} focus-visible:ring-inset focus-visible:ring-offset-0`,children:e});function vA({data:e,disabled:t,onAction:n}){const r=sn(e.locations),{chosen:i,pick:a}=En(t,n),[o,s]=I.useState(!1),l=o||i?r:r.slice(0,Ln);return f.jsxs(tn,{title:"Standort",children:[!r.length&&f.jsx(ki,{icon:f.jsx($a,{className:"h-4 w-4","aria-hidden":"true"}),text:"Keine Standorte verfügbar."}),f.jsx("div",{className:"divide-y divide-border/60",children:l.map(u=>{const c=$(u.id),d=$(u.name),p=[$(u.address),[$(u.postal_code),$(u.city)].filter(Boolean).join(" ")].filter(Boolean).join(", "),m=i===(c||d),h=i!==null&&!m;return f.jsx("div",{className:`p-3 transition-opacity ${h?"opacity-45":""}`,children:f.jsxs("div",{className:"flex gap-2.5",children:[f.jsx($a,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsxs("div",{className:"min-w-0 flex-1",children:[f.jsx("div",{className:"text-sm font-semibold",children:d}),p&&f.jsx("div",{className:"mt-0.5 text-xs leading-relaxed text-foreground/60",children:p}),!i&&f.jsx("div",{className:"mt-2",children:f.jsx(Tt,{disabled:t,ariaLabel:`Standort ${d} wählen`,onClick:()=>a(c||d,`Ich wähle den Standort „${d}“ (area_id ${c}).`,`Ich wähle den Standort „${d}“.`),children:"Diesen Standort wählen"})}),m&&f.jsx("div",{className:"mt-2",children:f.jsx(dn,{})})]})]})},c||d)})}),!o&&!i&&r.length>Ln&&f.jsx(xa,{label:`Alle anzeigen (${r.length-Ln} weitere)`,onClick:()=>s(!0)})]})}function xA({data:e,disabled:t,onAction:n}){const r=sn(e.counters),{chosen:i,pick:a}=En(t,n);return f.jsxs(tn,{title:"Schalter",children:[!r.length&&f.jsx(ki,{icon:f.jsx(es,{className:"h-4 w-4","aria-hidden":"true"}),text:"Keine Schalter verfügbar."}),f.jsx("div",{className:"divide-y divide-border/60",children:r.map(o=>{const s=$(o.id),l=$(o.name),u=s||l,c=i===u,d=i!==null&&!c;return f.jsxs("button",{type:"button",disabled:t||i!==null,"aria-pressed":c,onClick:()=>a(u,`Ich wähle „${l}“ (counter_id ${s}).`,`Ich wähle „${l}“.`),className:`flex w-full items-center gap-3 p-3 text-left transition-all ${Kt} focus-visible:ring-inset focus-visible:ring-offset-0 ${d?"opacity-45":""} ${i===null?"hover:bg-primary/[0.06] disabled:opacity-50":"cursor-default"}`,children:[f.jsx(es,{className:"h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsxs("span",{className:"min-w-0 flex-1",children:[f.jsx("span",{className:"block text-sm font-semibold",children:l}),$(o.description)&&f.jsx("span",{className:"mt-0.5 block text-xs text-foreground/60",children:$(o.description)})]}),c&&f.jsx(zn,{className:"h-4 w-4 shrink-0 text-emerald-600","aria-hidden":"true"})]},u)})})]})}function jl({data:e,disabled:t,onAction:n,details:r=!1}){const a=(r?[cn(e.service)]:sn(e.services)).filter(d=>$(d.id)&&$(d.name)),{chosen:o,pick:s}=En(t,n),[l,u]=I.useState(!1),c=r||l||o?a:a.slice(0,Ln);return f.jsxs(tn,{title:r?"Leistungsdetails":"Leistung",children:[!a.length&&f.jsx(ki,{icon:f.jsx(bo,{className:"h-4 w-4","aria-hidden":"true"}),text:"Keine passende Leistung gefunden."}),f.jsx("div",{className:"divide-y divide-border/60",children:c.map(d=>{const p=$(d.id),m=$(d.name),h=fA(d),g=o===p,b=o!==null&&!g;return f.jsxs("div",{className:`p-3 transition-opacity ${b?"opacity-45":""}`,children:[f.jsx("div",{className:"text-sm font-semibold leading-snug",children:m}),f.jsxs("div",{className:"mt-1.5 flex flex-wrap gap-x-3 gap-y-1 text-[11px] text-foreground/60",children:[$(d.duration_minutes)&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(lu,{className:"h-3 w-3","aria-hidden":"true"}),$(d.duration_minutes)," Min."]}),h&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(cu,{className:"h-3 w-3","aria-hidden":"true"}),h]}),!!d.requires_documents&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(bo,{className:"h-3 w-3","aria-hidden":"true"}),"Dokumente nötig"]}),!!d.is_video_eligible&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(am,{className:"h-3 w-3","aria-hidden":"true"}),"Video möglich"]})]}),r&&$(d.documents_info)&&f.jsxs("div",{className:"mt-2 rounded-lg bg-muted/60 px-2.5 py-2 text-xs leading-relaxed text-foreground/70",children:["Mitbringen: ",$(d.documents_info)]}),!o&&f.jsx("div",{className:"mt-2.5",children:f.jsx(Tt,{disabled:t,ariaLabel:r?`Termine für ${m} anzeigen`:`${m} wählen`,onClick:()=>s(p,r?`Zeige mir verfügbare Termine für „${m}“ (service_id ${p}).`:`Ich wähle die Leistung „${m}“ (service_id ${p}).`,r?`Bitte zeigen Sie mir freie Termine für „${m}“.`:`Ich wähle „${m}“.`),children:r?"Termine anzeigen":"Leistung wählen"})}),g&&f.jsx("div",{className:"mt-2.5",children:f.jsx(dn,{label:r?"Termine angefragt":"Ausgewählt"})})]},p)})}),!r&&!l&&!o&&a.length>Ln&&f.jsx(xa,{label:`Alle anzeigen (${a.length-Ln} weitere)`,onClick:()=>u(!0)})]})}function wA({data:e,disabled:t,selectedSlot:n,onAction:r}){var C;const i=cn(e.availability),a=sn(i.days),s=(a.length?a:[{date:i.date,slots:i.slots}]).map(E=>({date:$(E.date),slots:sn(E.slots).filter(R=>R.available===!0)})).filter(E=>E.date&&E.slots.length),l=$(e.service_id||i.service_id),u=sn(e.service_items),c=u.length>1?`service_items ${JSON.stringify(u.map(E=>({service_id:E.service_id,quantity:E.quantity??1})))}`:`service_id ${l}`,{chosen:d,pick:p}=En(t,r),[m,h]=I.useState(Pl),[g,b]=I.useState(()=>new Set),y=new Set(s.flatMap(E=>E.slots.map(R=>`${E.date}-${$(R.time)}`))),x=n&&y.has(n)?n:d,S=x?(C=s.find(E=>x.startsWith(`${E.date}-`)))==null?void 0:C.date:void 0,P=s.filter((E,R)=>R<m||E.date===S),j=s.length-P.length;return f.jsxs(tn,{title:"Freie Termine",children:[!s.length&&f.jsx(ki,{icon:f.jsx(Kf,{className:"h-4 w-4","aria-hidden":"true"}),text:"Im angefragten Zeitraum sind keine freien Termine verfügbar.",children:f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>r(l?`Bitte schlage mir alternative Zeiträume mit freien Terminen für ${c} vor.`:"Bitte schlage mir alternative Zeiträume mit freien Terminen vor.","Bitte schlagen Sie mir andere Zeiträume vor."),children:"Andere Zeiträume vorschlagen"})}),s.length>0&&f.jsx("div",{className:"max-h-80 overflow-y-auto pb-3",children:P.map(E=>{const R=g.has(E.date),M=E.slots.findIndex(V=>`${E.date}-${$(V.time)}`===x),k=R?E.slots.length:Math.max(hA,M+1),N=E.slots.slice(0,k),T=E.slots.length-N.length;return f.jsxs("div",{children:[f.jsxs("div",{className:"sticky top-0 z-10 flex items-baseline justify-between gap-2 bg-[hsl(var(--chat-message-bot))] px-3 pb-1.5 pt-3",children:[f.jsx("span",{className:"text-[11px] font-semibold uppercase tracking-[0.08em] text-foreground/50",children:pr(E.date)}),f.jsxs("span",{className:"text-[10px] text-foreground/35",children:[E.slots.length," ",E.slots.length===1?"Termin":"Termine"]})]}),f.jsx("div",{className:"grid grid-cols-3 gap-1.5 px-3",children:N.map(V=>{const O=$(V.time),F=`${E.date}-${O}`,B=x===F,Z=x!=null&&!B;return f.jsxs("button",{type:"button",disabled:t||!!x&&!B,"aria-pressed":B,"aria-label":`Termin am ${oi(E.date)} um ${O} Uhr wählen`,onClick:()=>p(F,`Ich wähle den Termin am ${E.date} um ${O} Uhr für ${c}.`,`Ich wähle den Termin am ${oi(E.date)} um ${O} Uhr.`),className:`inline-flex min-h-10 min-w-0 items-center justify-center gap-1 rounded-xl border px-1.5 py-1.5 text-xs font-semibold transition-all ${Kt} ${B?"border-primary bg-primary text-primary-foreground":`border-primary/25 bg-primary/[0.06] text-foreground ${x?"":"hover:border-primary/50 hover:bg-primary/10"} disabled:cursor-not-allowed ${Z?"opacity-40":"disabled:opacity-50"}`}`,children:[B&&f.jsx(zn,{className:"h-3.5 w-3.5 shrink-0","aria-hidden":"true"}),O]},F)})}),T>0&&!x&&f.jsx("div",{className:"px-3 pt-1.5",children:f.jsxs("button",{type:"button",onClick:()=>b(V=>new Set(V).add(E.date)),className:`min-h-8 rounded-lg px-1 text-xs font-semibold text-primary hover:underline ${Kt}`,children:[T," weitere ",T===1?"Uhrzeit":"Uhrzeiten"," am ",pr(E.date)]})})]},E.date)})}),j>0&&!x&&f.jsx(xa,{label:`Weitere Tage anzeigen (${j})`,onClick:()=>h(E=>E+Pl)})]})}function kA({data:e,disabled:t,superseded:n,onAction:r}){const i=$(e.consent_text),a=$(e.privacy_text),{chosen:o,pick:s}=En(t,r);return i?f.jsx(tn,{title:"Datenschutz",children:f.jsxs("div",{className:"p-3",children:[f.jsxs("div",{className:"flex gap-2.5 text-xs leading-relaxed text-foreground/70",children:[f.jsx(cm,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsx("p",{className:"max-h-44 min-w-0 overflow-y-auto pr-1",children:i})]}),a&&f.jsxs("details",{className:"mt-2.5 rounded-lg bg-muted/60 text-xs",children:[f.jsx("summary",{className:`cursor-pointer select-none rounded-lg px-2.5 py-2 font-semibold text-primary ${Kt}`,children:"Datenschutzerklärung lesen"}),f.jsx("div",{className:"max-h-56 overflow-y-auto whitespace-pre-line px-2.5 pb-2.5 leading-relaxed text-foreground/70",children:a})]}),f.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:o==="consent"?f.jsx(dn,{label:"Einwilligung erteilt"}):o==="decline"?f.jsx(dn,{label:"Nicht zugestimmt",tone:"muted"}):n?f.jsx(Ro,{}):f.jsxs(f.Fragment,{children:[f.jsx(Tt,{disabled:t,onClick:()=>s("consent",`Ich willige ausdrücklich ein: „${i}“`,"Ich stimme der Datenverarbeitung ausdrücklich zu."),children:"Ausdrücklich zustimmen"}),f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>s("decline","Ich stimme der Datenverarbeitung nicht zu. Bitte buche keinen Termin.","Ich stimme nicht zu."),children:"Nicht zustimmen"})]})})]})}):null}function SA({expiresAt:e}){const t=new Date(e).getTime(),[n,r]=I.useState(()=>Date.now()),i=I.useRef(Math.max(1,t-Date.now()));if(I.useEffect(()=>{if(!Number.isFinite(t))return;const c=setInterval(()=>r(Date.now()),1e3);return()=>clearInterval(c)},[t]),!Number.isFinite(t))return null;const a=Math.max(0,t-n);if(a<=0)return f.jsx("div",{className:"mt-2 rounded-lg bg-amber-500/10 px-2.5 py-2 text-xs font-medium leading-relaxed text-amber-600",children:"Die Reservierung ist abgelaufen. Bitte wählen Sie erneut einen Termin."});const o=Math.ceil(a/1e3),s=Math.floor(o/60),l=o%60,u=Math.min(1,a/i.current);return f.jsxs("div",{className:"mt-2",children:[f.jsxs("div",{className:"text-xs leading-relaxed text-foreground/60",children:["Noch ",f.jsxs("span",{className:"font-semibold tabular-nums text-foreground/80",children:[s,":",String(l).padStart(2,"0")]})," Min. reserviert",El(e)?` (bis ${El(e)} Uhr)`:"","."]}),f.jsx("div",{className:"mt-1.5 h-1 overflow-hidden rounded-full bg-muted",role:"presentation",children:f.jsx("div",{className:"h-full rounded-full bg-primary transition-[width] duration-1000 ease-linear",style:{width:`${Math.round(u*100)}%`}})})]})}const wa=({data:e})=>{const t=pA(e.service_items),n=$(e.duration_minutes),r=mA(e.fee_summary);return!t.length&&!n&&!r?null:f.jsxs("div",{className:"mt-2 space-y-1 text-xs text-foreground/65",children:[t.length>0&&f.jsxs("div",{className:"flex items-start gap-1.5",children:[f.jsx(bo,{className:"mt-0.5 h-3.5 w-3.5 shrink-0","aria-hidden":"true"}),f.jsx("span",{children:t.join(", ")})]}),(n||r)&&f.jsxs("div",{className:"flex flex-wrap gap-x-3 gap-y-1",children:[n&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(lu,{className:"h-3.5 w-3.5","aria-hidden":"true"}),n," Min."]}),r&&f.jsxs("span",{className:"inline-flex items-center gap-1",children:[f.jsx(cu,{className:"h-3.5 w-3.5","aria-hidden":"true"}),r]})]})]})};function CA({data:e}){const t=$(e.expires_at);return f.jsx(tn,{title:"Termin reserviert",children:f.jsx("div",{className:"p-3",children:f.jsxs("div",{className:"flex items-start gap-2.5",children:[f.jsx(au,{className:"mt-0.5 h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsxs("div",{className:"min-w-0 flex-1",children:[f.jsx("div",{className:"text-sm font-semibold",children:[oi(e.date),$(e.time)&&`${$(e.time)} Uhr`].filter(Boolean).join(" · ")||"Slot reserviert"}),f.jsx(wa,{data:e}),f.jsx("div",{className:"mt-1 text-xs leading-relaxed text-foreground/60",children:"Die Buchung ist noch nicht bestätigt."}),t?f.jsx(SA,{expiresAt:t}):f.jsx("div",{className:"mt-1 text-xs leading-relaxed text-foreground/60",children:"Der Slot ist für 5 Minuten reserviert."})]})]})})})}function Br({data:e,disabled:t,bookingClosed:n,onAction:r,cancelled:i=!1,statusOnly:a=!1,rescheduled:o=!1}){const s=wd(e),l=Do(e),u=$(s.ticket_number),c=pr(s.start_datetime||e.start_datetime,!0),d=pr(e.previous_start_datetime,!0),p=$(s.status||e.status),m=i||p.toUpperCase()==="CANCELLED",h=m?"Termin storniert":o?"Termin verschoben":a?"Terminstatus":"Termin bestätigt",[g,b]=I.useState(null),y=e.self_service!==void 0,[x,S]=I.useState(!1),P=$(s.meeting_url||e.meeting_url),j=e.self_service!==!1,C=!m&&!n&&j&&(!p||p.toUpperCase()==="BOOKED")&&l,E=R=>{t||g||(b(R),r(R==="cancel"?`Ich möchte den Termin (booking_id ${l}) stornieren.`:`Ich möchte den Termin (booking_id ${l}) verschieben. Bitte zeige mir freie Termine.`,R==="cancel"?"Ich möchte diesen Termin stornieren.":"Ich möchte diesen Termin verschieben."))};return f.jsx(tn,{title:h,state:m?"cancelled":"success",children:f.jsxs("div",{className:"p-3",children:[u&&u!=="---"&&f.jsxs("div",{className:`mb-3 rounded-xl bg-primary/[0.07] px-3 py-2.5 ${m?"opacity-60":""}`,children:[f.jsx("div",{className:"text-xs font-medium text-foreground/65",children:"Ihre Wartenummer"}),f.jsx("div",{className:"mt-0.5 text-3xl font-bold leading-none tracking-wide text-foreground tabular-nums",children:u})]}),f.jsxs("div",{className:"flex items-start justify-between gap-3",children:[f.jsxs("div",{className:"min-w-0",children:[c&&f.jsxs("div",{className:"flex items-center gap-1.5 text-sm font-semibold",children:[f.jsx(au,{className:"h-4 w-4 shrink-0 text-primary","aria-hidden":"true"}),f.jsxs("span",{className:m?"line-through decoration-foreground/40":"",children:[c," Uhr"]})]}),o&&d&&f.jsxs("div",{className:"mt-1 text-xs text-foreground/50",children:["Vorher: ",f.jsxs("span",{className:"line-through",children:[d," Uhr"]})," – freigegeben"]})]}),f.jsx(yA,{status:p})]}),f.jsx(wa,{data:s}),!m&&P&&f.jsxs("a",{href:P,target:"_blank",rel:"noopener noreferrer",className:`mt-3 inline-flex min-h-8 items-center gap-1.5 rounded-lg text-xs font-semibold text-primary hover:underline ${Kt}`,children:["Video-Termin öffnen ",f.jsx(xn,{className:"h-3.5 w-3.5","aria-hidden":"true"})]}),C&&!g&&x&&f.jsxs("div",{className:"mt-3 rounded-xl border border-destructive/25 bg-destructive/[0.04] p-2.5",children:[f.jsx("div",{className:"text-xs font-medium text-foreground/80",children:"Termin wirklich stornieren?"}),f.jsxs("div",{className:"mt-2 flex flex-wrap gap-2",children:[f.jsx(Tt,{variant:"destructive",disabled:t,onClick:()=>E("cancel"),children:"Ja, stornieren"}),f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>S(!1),children:"Termin behalten"})]})]}),C&&!g&&!x&&f.jsxs("div",{className:"mt-3 flex flex-wrap gap-2",children:[y&&f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>E("reschedule"),children:"Termin verschieben"}),f.jsx("button",{type:"button",disabled:t,onClick:()=>y?E("cancel"):S(!0),className:`min-h-10 rounded-xl border border-border px-3.5 py-2 text-xs font-semibold text-foreground/70 transition-colors hover:border-destructive/40 hover:text-destructive disabled:cursor-not-allowed disabled:opacity-50 ${Kt}`,children:"Termin stornieren"})]}),C&&g&&f.jsx("div",{className:"mt-3",children:f.jsx(dn,{label:g==="cancel"?"Stornierung angefragt":"Umbuchung angefragt",tone:"muted"})})]})})}function zA({data:e,disabled:t,superseded:n,onAction:r}){const i=$(e.kind)==="reschedule"?"reschedule":"cancel",a=cn(e.booking),o=$(e.booking_id||a.id),s=$(e.confirmation_id),l=pr(a.start_datetime,!0),u=[oi(e.new_date),$(e.new_time)&&`${$(e.new_time)} Uhr`].filter(Boolean).join(", "),c=new Date($(e.expires_at)).getTime(),[d,p]=I.useState(()=>Number.isFinite(c)&&c<=Date.now());I.useEffect(()=>{if(!Number.isFinite(c)||d)return;const b=window.setTimeout(()=>p(!0),Math.max(0,c-Date.now()));return()=>window.clearTimeout(b)},[c,d]);const{chosen:m,pick:h}=En(t,r),g=i==="cancel";return f.jsx(tn,{title:g?"Stornierung bestätigen":"Umbuchung bestätigen",state:g?"cancelled":void 0,children:f.jsxs("div",{className:"p-3",children:[f.jsx("div",{className:"text-sm font-semibold",children:g?"Termin wirklich stornieren?":"Termin wirklich verschieben?"}),f.jsxs("div",{className:"mt-2 space-y-1 text-xs leading-relaxed text-foreground/70",children:[l&&f.jsxs("div",{children:[g?"Termin":"Bisher",": ",f.jsxs("span",{className:"font-semibold text-foreground",children:[l," Uhr"]})]}),!g&&u&&f.jsxs("div",{children:["Neu: ",f.jsx("span",{className:"font-semibold text-foreground",children:u})]})]}),f.jsx(wa,{data:a}),f.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:m==="confirm"?f.jsx(dn,{label:g?"Stornierung bestätigt":"Umbuchung bestätigt"}):m==="keep"?f.jsx(dn,{label:"Termin bleibt bestehen",tone:"muted"}):d?f.jsx(Ro,{text:"Die Bestätigung ist abgelaufen. Bitte fragen Sie erneut."}):n?f.jsx(Ro,{}):f.jsxs(f.Fragment,{children:[f.jsx(Tt,{variant:g?"destructive":"primary",disabled:t,onClick:()=>h("confirm",g?`Bestätigt: Termin stornieren (booking_id ${o}, confirmation_id ${s}).`:`Bestätigt: Termin verschieben (booking_id ${o}, confirmation_id ${s}).`,g?"Ja, stornieren":"Ja, verschieben"),children:g?"Ja, stornieren":"Ja, verschieben"}),f.jsx(Tt,{variant:"ghost",disabled:t,onClick:()=>h("keep",g?"Ich möchte den Termin behalten. Bitte nicht stornieren.":"Ich möchte den bisherigen Termin behalten. Bitte nicht verschieben.","Termin behalten"),children:"Termin behalten"})]})})]})})}function AA({data:e,disabled:t,superseded:n,onAction:r}){const i=$(e.question),a=sn(e.choices).filter(l=>$(l.label)),{chosen:o,pick:s}=En(t,r);return a.length?f.jsx("div",{className:"w-full max-w-[380px] min-w-0",role:"group","aria-label":i||"Auswahl",children:f.jsx("div",{className:"flex flex-wrap gap-2",children:a.map((l,u)=>{const c=$(l.label),d=String(u),p=o===d;return o!==null&&!p?null:p?f.jsx(dn,{label:c},d):f.jsx(Tt,{variant:u===0?"primary":"ghost",disabled:t||!!n,onClick:()=>s(d,$(l.reply)||c,c),children:c},d)})})}):null}function EA({data:e}){const t=$(e.url);return t?f.jsx(tn,{title:"Terminportal",children:f.jsx("div",{className:"p-3",children:f.jsxs("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:`inline-flex min-h-10 items-center gap-2 rounded-xl bg-primary px-3.5 py-2 text-xs font-semibold text-primary-foreground transition-colors hover:bg-primary/90 ${Kt}`,children:["Amturo-Terminportal öffnen ",f.jsx(xn,{className:"h-3.5 w-3.5","aria-hidden":"true"})]})})}):null}const PA={amturo_booking_consent:["amturo_booking_consent","amturo_booking_confirmed"],amturo_action_confirmation:["amturo_action_confirmation","amturo_booking_rescheduled","amturo_booking_cancelled"]},jA=(e,t)=>{var l;const n=((l=e[t])==null?void 0:l.rpcData)??{},r=Do(n),i=PA[$(n.action)];let a=!1,o,s=!1;for(let u=t+1;u<e.length;u+=1){const c=e[u];c.isUser&&!i&&(a=!0);const d=c.rpcData;if(!d)continue;const p=$(d.action);i!=null&&i.includes(p)&&(a=!0),p==="amturo_booking_intent_created"&&$(d.date)&&$(d.time)&&(o=`${$(d.date)}-${$(d.time)}`),p==="amturo_action_confirmation"&&$(d.new_date)&&$(d.new_time)&&(o=`${$(d.new_date)}-${$(d.new_time)}`),r&&(p==="amturo_booking_rescheduled"||p==="amturo_booking_cancelled")&&Do(d)===r&&(s=!0)}return{superseded:a,selectedSlot:o,bookingClosed:s}};function NA(e){switch($(e.data.action)){case"amturo_locations":return f.jsx(vA,{...e});case"amturo_counters":return f.jsx(xA,{...e});case"amturo_services":return f.jsx(jl,{...e});case"amturo_service_details":return f.jsx(jl,{...e,details:!0});case"amturo_slot_options":return f.jsx(wA,{...e});case"amturo_booking_consent":return f.jsx(kA,{...e});case"amturo_booking_intent_created":return f.jsx(CA,{data:e.data});case"amturo_booking_confirmed":return f.jsx(Br,{...e});case"amturo_booking_rescheduled":return f.jsx(Br,{...e,rescheduled:!0});case"amturo_booking_status":return f.jsx(Br,{...e,statusOnly:!0});case"amturo_booking_cancelled":return f.jsx(Br,{...e,cancelled:!0});case"amturo_action_confirmation":return f.jsx(zA,{...e});case"amturo_choices":return f.jsx(AA,{...e});case"amturo_self_booking_link":return f.jsx(EA,{data:e.data});default:return null}}const Nl={de:{newConversation:"Neues Gespräch",newConversationTitle:"Neues Gespräch beginnen?",newConversationDescription:"Der bisherige Verlauf wird aus diesem Chat entfernt. Sie beginnen wieder beim Assistenten. Die gespeicherte Unterhaltung wird dadurch nicht gelöscht.",newConversationActiveWarning:"Der Support ist noch verbunden oder angefragt. Die Übergabe wird dabei abgebrochen, und Antworten im bisherigen Gespräch sehen Sie hier nicht mehr.",cancelNewConversation:"Abbrechen",request:"Mit einem Menschen sprechen",requestMessage:"Ich möchte bitte mit einem Menschen sprechen.",requesting:"Übergabe wird vorbereitet …",queued:"Warten auf einen Menschen …",queuedHint:"Sie können in der Zwischenzeit weiterschreiben.",active:"{name} hilft Ihnen jetzt",closed:"Das Gespräch mit dem Support ist beendet",failed:"Die Übergabe hat nicht geklappt",retry:"Erneut versuchen",operatorFallback:"Support",supportTag:"Support",headerWaiting:"Verbindung mit einem Menschen …",headerActive:"Sie sprechen mit {name}",headerClosed:"Support-Gespräch beendet",placeholderQueued:"Nachricht an das Support-Team …",placeholderActive:"Nachricht an {name} …",operatorJoined:"{name} ist dem Gespräch beigetreten",conversationClosed:"{name} hat das Gespräch beendet",handoverCancelled:"Sie haben die Übergabe abgebrochen",cancelHandover:"Übergabe abbrechen",cancelHandoverConfirm:"Übergabe wirklich abbrechen?",cancelHandoverYes:"Ja, abbrechen",cancelHandoverNo:"Nein",cancelHandoverFailed:"Abbrechen hat nicht geklappt. Bitte erneut versuchen.",continueWithAssistant:"Weiter mit dem Assistenten",requestAgain:"Erneut einen Menschen anfragen",delivered:"An das Support-Team übermittelt",notDelivered:"Nicht übermittelt"},simple:{newConversation:"Neues Gespräch",newConversationTitle:"Neu anfangen?",newConversationDescription:"Die alten Nachrichten verschwinden hier. Sie beginnen wieder mit dem Chat-Bot. Die gespeicherten Nachrichten werden nicht gelöscht.",newConversationActiveWarning:"Sie warten auf einen Menschen oder sprechen noch mit ihm. Das Gespräch mit dem Menschen wird dann beendet.",cancelNewConversation:"Abbrechen",request:"Mit einem Menschen sprechen",requestMessage:"Ich möchte mit einem Menschen sprechen.",requesting:"Wir verbinden Sie …",queued:"Bitte warten. Ein Mensch kommt gleich.",queuedHint:"Sie können weiter schreiben.",active:"{name} hilft Ihnen jetzt",closed:"Das Gespräch ist beendet",failed:"Das hat nicht geklappt",retry:"Noch einmal",operatorFallback:"Support",supportTag:"Mensch",headerWaiting:"Wir suchen einen Menschen …",headerActive:"Sie sprechen mit {name}",headerClosed:"Gespräch beendet",placeholderQueued:"Nachricht an den Support …",placeholderActive:"Nachricht an {name} …",operatorJoined:"{name} ist jetzt da",conversationClosed:"{name} hat das Gespräch beendet",handoverCancelled:"Sie haben das Gespräch mit dem Menschen beendet",cancelHandover:"Nicht mehr warten",cancelHandoverConfirm:"Wirklich beenden?",cancelHandoverYes:"Ja, beenden",cancelHandoverNo:"Nein",cancelHandoverFailed:"Das hat nicht geklappt. Bitte noch einmal.",continueWithAssistant:"Weiter mit dem Chat-Bot",requestAgain:"Noch einmal einen Menschen fragen",delivered:"Nachricht ist angekommen",notDelivered:"Nachricht ist nicht angekommen"},en:{newConversation:"New conversation",newConversationTitle:"Start a new conversation?",newConversationDescription:"The current history will be removed from this chat. You will start again with the assistant. This does not delete the saved conversation.",newConversationActiveWarning:"Support is still connected or has been requested. The handover will be cancelled, and further replies in the previous conversation will no longer appear here.",cancelNewConversation:"Cancel",request:"Talk to a person",requestMessage:"I would like to speak with a person.",requesting:"Preparing the handover…",queued:"Waiting for a person…",queuedHint:"You can keep writing in the meantime.",active:"{name} is helping you now",closed:"The support conversation has ended",failed:"The handover didn't go through",retry:"Try again",operatorFallback:"Support",supportTag:"Support",headerWaiting:"Connecting you with a person…",headerActive:"You're talking to {name}",headerClosed:"Support conversation ended",placeholderQueued:"Message to the support team…",placeholderActive:"Message to {name}…",operatorJoined:"{name} joined the conversation",conversationClosed:"{name} ended the conversation",handoverCancelled:"You cancelled the handover",cancelHandover:"Cancel handover",cancelHandoverConfirm:"Cancel the handover?",cancelHandoverYes:"Yes, cancel",cancelHandoverNo:"No",cancelHandoverFailed:"Couldn't cancel. Please try again.",continueWithAssistant:"Continue with the assistant",requestAgain:"Ask for a person again",delivered:"Delivered to the support team",notDelivered:"Not delivered"},fr:{newConversation:"Nouvelle conversation",newConversationTitle:"Commencer une nouvelle conversation ?",newConversationDescription:"L’historique actuel disparaîtra de ce chat. Vous recommencerez avec l’assistant. La conversation enregistrée ne sera pas supprimée.",newConversationActiveWarning:"Le support est encore connecté ou sollicité. Le transfert sera annulé et les réponses de l’ancienne conversation ne s’afficheront plus ici.",cancelNewConversation:"Annuler",request:"Parler à une personne",requestMessage:"Je souhaite parler à une personne.",requesting:"Préparation du transfert…",queued:"En attente d'une personne…",queuedHint:"Vous pouvez continuer à écrire en attendant.",active:"{name} vous aide maintenant",closed:"La conversation avec le support est terminée",failed:"Le transfert n'a pas abouti",retry:"Réessayer",operatorFallback:"Support",supportTag:"Support",headerWaiting:"Mise en relation avec une personne…",headerActive:"Vous parlez avec {name}",headerClosed:"Conversation avec le support terminée",placeholderQueued:"Message à l'équipe support…",placeholderActive:"Message à {name}…",operatorJoined:"{name} a rejoint la conversation",conversationClosed:"{name} a terminé la conversation",handoverCancelled:"Vous avez annulé le transfert",cancelHandover:"Annuler le transfert",cancelHandoverConfirm:"Annuler vraiment le transfert ?",cancelHandoverYes:"Oui, annuler",cancelHandoverNo:"Non",cancelHandoverFailed:"L'annulation a échoué. Veuillez réessayer.",continueWithAssistant:"Continuer avec l'assistant",requestAgain:"Demander à nouveau une personne",delivered:"Transmis à l'équipe support",notDelivered:"Non transmis"},es:{newConversation:"Nueva conversación",newConversationTitle:"¿Iniciar una nueva conversación?",newConversationDescription:"El historial actual desaparecerá de este chat. Empezarás de nuevo con el asistente. La conversación guardada no se eliminará.",newConversationActiveWarning:"El soporte sigue conectado o solicitado. La transferencia se cancelará y las respuestas de la conversación anterior ya no aparecerán aquí.",cancelNewConversation:"Cancelar",request:"Hablar con una persona",requestMessage:"Quiero hablar con una persona.",requesting:"Preparando la transferencia…",queued:"Esperando a una persona…",queuedHint:"Mientras tanto puedes seguir escribiendo.",active:"{name} te está ayudando",closed:"La conversación con soporte ha terminado",failed:"La transferencia no se completó",retry:"Reintentar",operatorFallback:"Soporte",supportTag:"Soporte",headerWaiting:"Conectando con una persona…",headerActive:"Estás hablando con {name}",headerClosed:"Conversación con soporte finalizada",placeholderQueued:"Mensaje para el equipo de soporte…",placeholderActive:"Mensaje para {name}…",operatorJoined:"{name} se ha unido a la conversación",conversationClosed:"{name} ha finalizado la conversación",handoverCancelled:"Ha cancelado la transferencia",cancelHandover:"Cancelar transferencia",cancelHandoverConfirm:"¿Cancelar la transferencia?",cancelHandoverYes:"Sí, cancelar",cancelHandoverNo:"No",cancelHandoverFailed:"No se pudo cancelar. Inténtelo de nuevo.",continueWithAssistant:"Continuar con el asistente",requestAgain:"Pedir una persona de nuevo",delivered:"Entregado al equipo de soporte",notDelivered:"No entregado"},it:{newConversation:"Nuova conversazione",newConversationTitle:"Iniziare una nuova conversazione?",newConversationDescription:"La cronologia attuale scomparirà da questa chat. Ricomincerai con l’assistente. La conversazione salvata non verrà eliminata.",newConversationActiveWarning:"Il supporto è ancora collegato o è stato richiesto. Il trasferimento verrà annullato e le risposte della conversazione precedente non appariranno più qui.",cancelNewConversation:"Annulla",request:"Parla con una persona",requestMessage:"Vorrei parlare con una persona.",requesting:"Preparazione del trasferimento…",queued:"In attesa di una persona…",queuedHint:"Nel frattempo puoi continuare a scrivere.",active:"{name} ti sta aiutando",closed:"La conversazione con il supporto è terminata",failed:"Il trasferimento non è riuscito",retry:"Riprova",operatorFallback:"Supporto",supportTag:"Supporto",headerWaiting:"Collegamento con una persona…",headerActive:"Stai parlando con {name}",headerClosed:"Conversazione con il supporto terminata",placeholderQueued:"Messaggio al team di supporto…",placeholderActive:"Messaggio a {name}…",operatorJoined:"{name} si è unito alla conversazione",conversationClosed:"{name} ha terminato la conversazione",handoverCancelled:"Hai annullato il trasferimento",cancelHandover:"Annulla trasferimento",cancelHandoverConfirm:"Annullare il trasferimento?",cancelHandoverYes:"Sì, annulla",cancelHandoverNo:"No",cancelHandoverFailed:"Annullamento non riuscito. Riprova.",continueWithAssistant:"Continua con l'assistente",requestAgain:"Richiedi di nuovo una persona",delivered:"Consegnato al team di supporto",notDelivered:"Non consegnato"},tr:{newConversation:"Yeni görüşme",newConversationTitle:"Yeni görüşme başlatılsın mı?",newConversationDescription:"Mevcut geçmiş bu sohbetten kaldırılacak. Asistanla yeniden başlayacaksınız. Kayıtlı görüşme silinmeyecek.",newConversationActiveWarning:"Destek hâlâ bağlı veya talep edildi. Aktarım iptal edilecek ve önceki görüşmedeki yanıtlar artık burada görünmeyecek.",cancelNewConversation:"İptal",request:"Bir kişiyle konuş",requestMessage:"Bir kişiyle konuşmak istiyorum.",requesting:"Aktarım hazırlanıyor…",queued:"Bir kişi bekleniyor…",queuedHint:"Bu sırada yazmaya devam edebilirsiniz.",active:"{name} şimdi size yardımcı oluyor",closed:"Destek görüşmesi sona erdi",failed:"Aktarım gerçekleşmedi",retry:"Tekrar dene",operatorFallback:"Destek",supportTag:"Destek",headerWaiting:"Bir kişiye bağlanıyor…",headerActive:"{name} ile konuşuyorsunuz",headerClosed:"Destek görüşmesi sona erdi",placeholderQueued:"Destek ekibine mesaj…",placeholderActive:"{name} için mesaj…",operatorJoined:"{name} görüşmeye katıldı",conversationClosed:"{name} görüşmeyi sonlandırdı",handoverCancelled:"Aktarımı iptal ettiniz",cancelHandover:"Aktarımı iptal et",cancelHandoverConfirm:"Aktarım iptal edilsin mi?",cancelHandoverYes:"Evet, iptal et",cancelHandoverNo:"Hayır",cancelHandoverFailed:"İptal edilemedi. Lütfen tekrar deneyin.",continueWithAssistant:"Asistanla devam et",requestAgain:"Tekrar bir kişi iste",delivered:"Destek ekibine iletildi",notDelivered:"İletilemedi"},ar:{newConversation:"محادثة جديدة",newConversationTitle:"هل تريد بدء محادثة جديدة؟",newConversationDescription:"سيختفي السجل الحالي من هذه الدردشة وستبدأ من جديد مع المساعد. لن تُحذف المحادثة المحفوظة.",newConversationActiveWarning:"لا يزال الدعم متصلاً أو تم طلبه. سيتم إلغاء التحويل ولن تظهر هنا الردود في المحادثة السابقة.",cancelNewConversation:"إلغاء",request:"التحدث مع شخص",requestMessage:"أرغب في التحدث مع شخص.",requesting:"جارٍ تجهيز التحويل…",queued:"في انتظار أحد الموظفين…",queuedHint:"يمكنك متابعة الكتابة في هذه الأثناء.",active:"{name} يساعدك الآن",closed:"انتهت محادثة الدعم",failed:"لم يتم التحويل",retry:"حاول مجددًا",operatorFallback:"الدعم",supportTag:"الدعم",headerWaiting:"جارٍ توصيلك بأحد الموظفين…",headerActive:"أنت تتحدث مع {name}",headerClosed:"انتهت محادثة الدعم",placeholderQueued:"رسالة إلى فريق الدعم…",placeholderActive:"رسالة إلى {name}…",operatorJoined:"انضم {name} إلى المحادثة",conversationClosed:"أنهى {name} المحادثة",handoverCancelled:"لقد ألغيت التحويل",cancelHandover:"إلغاء التحويل",cancelHandoverConfirm:"هل تريد إلغاء التحويل؟",cancelHandoverYes:"نعم، إلغاء",cancelHandoverNo:"لا",cancelHandoverFailed:"تعذّر الإلغاء. يُرجى المحاولة مرة أخرى.",continueWithAssistant:"المتابعة مع المساعد",requestAgain:"طلب موظف مرة أخرى",delivered:"تم الإرسال إلى فريق الدعم",notDelivered:"لم يتم الإرسال"},pl:{newConversation:"Nowa rozmowa",newConversationTitle:"Rozpocząć nową rozmowę?",newConversationDescription:"Dotychczasowa historia zniknie z tego czatu. Zaczniesz od nowa z asystentem. Zapisana rozmowa nie zostanie usunięta.",newConversationActiveWarning:"Wsparcie jest nadal połączone lub zostało poproszone o pomoc. Przekazanie zostanie anulowane, a odpowiedzi z poprzedniej rozmowy nie pojawią się tutaj.",cancelNewConversation:"Anuluj",request:"Porozmawiaj z człowiekiem",requestMessage:"Chcę porozmawiać z człowiekiem.",requesting:"Przygotowujemy przekazanie…",queued:"Czekamy na konsultanta…",queuedHint:"W międzyczasie możesz dalej pisać.",active:"{name} teraz Ci pomaga",closed:"Rozmowa ze wsparciem została zakończona",failed:"Przekazanie nie powiodło się",retry:"Spróbuj ponownie",operatorFallback:"Wsparcie",supportTag:"Wsparcie",headerWaiting:"Łączymy Cię z konsultantem…",headerActive:"Rozmawiasz z {name}",headerClosed:"Rozmowa ze wsparciem zakończona",placeholderQueued:"Wiadomość do zespołu wsparcia…",placeholderActive:"Wiadomość do {name}…",operatorJoined:"{name} dołącza do rozmowy",conversationClosed:"{name} kończy rozmowę",handoverCancelled:"Anulowano przekazanie",cancelHandover:"Anuluj przekazanie",cancelHandoverConfirm:"Czy na pewno anulować przekazanie?",cancelHandoverYes:"Tak, anuluj",cancelHandoverNo:"Nie",cancelHandoverFailed:"Nie udało się anulować. Spróbuj ponownie.",continueWithAssistant:"Kontynuuj z asystentem",requestAgain:"Poproś ponownie o konsultanta",delivered:"Dostarczono do zespołu wsparcia",notDelivered:"Nie dostarczono"},ua:{newConversation:"Нова розмова",newConversationTitle:"Почати нову розмову?",newConversationDescription:"Поточна історія зникне з цього чату. Ви почнете знову з асистентом. Збережену розмову не буде видалено.",newConversationActiveWarning:"Підтримку ще підключено або запит надіслано. Передачу буде скасовано, а відповіді в попередній розмові тут більше не з’являтимуться.",cancelNewConversation:"Скасувати",request:"Поговорити з людиною",requestMessage:"Я хочу поговорити з людиною.",requesting:"Готуємо передачу…",queued:"Очікуємо на оператора…",queuedHint:"Тим часом ви можете продовжувати писати.",active:"{name} зараз вам допомагає",closed:"Розмову з підтримкою завершено",failed:"Не вдалося передати діалог",retry:"Спробувати ще",operatorFallback:"Підтримка",supportTag:"Підтримка",headerWaiting:"З’єднуємо вас з оператором …",headerActive:"Ви спілкуєтеся з {name}",headerClosed:"Розмову з підтримкою завершено",placeholderQueued:"Повідомлення для служби підтримки …",placeholderActive:"Повідомлення для {name} …",operatorJoined:"{name} приєднується до розмови",conversationClosed:"{name} завершує розмову",handoverCancelled:"Ви скасували передачу",cancelHandover:"Скасувати передачу",cancelHandoverConfirm:"Скасувати передачу?",cancelHandoverYes:"Так, скасувати",cancelHandoverNo:"Ні",cancelHandoverFailed:"Не вдалося скасувати. Спробуйте ще раз.",continueWithAssistant:"Продовжити з асистентом",requestAgain:"Запросити оператора ще раз",delivered:"Доставлено службі підтримки",notDelivered:"Не доставлено"}};function TA(e,t){const n=Nl.en,r=Nl[e]||n;return{...n,...r,...(t==null?void 0:t[e])||{}}}function ai(e,t){return e.replace("{name}",t)}function MA({message:e,labels:t,innerRef:n}){const r=e.systemKind==="operator_joined",i=e.operatorName||(t==null?void 0:t.operatorFallback)||"Support",a=(r?t==null?void 0:t.operatorJoined:e.systemKind==="handover_cancelled"?t==null?void 0:t.handoverCancelled:t==null?void 0:t.conversationClosed)||"{name}",o=ai(a,i);return f.jsxs("div",{ref:n,className:"handover-in flex items-center gap-3 py-1",role:"note",children:[f.jsx("span",{className:"h-px min-w-[10px] flex-1 bg-border","aria-hidden":"true"}),f.jsxs("span",{className:"flex min-w-0 items-center gap-2 text-[11px] text-foreground/60",children:[r?f.jsx(hi,{imageUrl:e.operatorImageUrl,name:i,size:20}):f.jsx("span",{className:"inline-flex h-[20px] w-[20px] shrink-0 items-center justify-center rounded-full bg-muted text-foreground/50","aria-hidden":"true",children:f.jsx(zn,{})}),f.jsx("span",{className:"truncate",title:o,children:o}),f.jsx("span",{className:"shrink-0 text-foreground/40",children:e.time})]}),f.jsx("span",{className:"h-px min-w-[10px] flex-1 bg-border","aria-hidden":"true"})]})}const Wr={de:"🔍 Suche...",simple:"🔍 Suche...",en:"🔍 Searching...",fr:"🔍 Recherche...",es:"🔍 Buscando...",it:"🔍 Ricerca...",tr:"🔍 Arıyor...",ar:"🔍 جارٍ البحث...",pl:"🔍 Szukanie...",ua:"🔍 Пошук..."},IA={de:xl,simple:xl,en:ba,fr:jS,es:$1,it:sC,tr:xz,ar:G0,pl:HC,ua:nA},DA=(e,t,n)=>{const r=e.indexOf(":"),i=e.indexOf("?"),a=e.indexOf("#"),o=e.indexOf("/");return r!==-1&&(o===-1||r<o)&&(i===-1||r<i)&&(a===-1||r<a)&&/^tel$/i.test(e.slice(0,r))?e:Gc(e)},RA={a:({node:e,href:t,...n})=>{const r=typeof t=="string"&&/^https?:\/\//i.test(t);return f.jsx("a",{...n,href:t,target:r?"_blank":void 0,rel:r?"noopener noreferrer":void 0})}},LA=e=>{if(!e)return null;const t=e instanceof Date?e:new Date(e);return isNaN(t.getTime())?null:t};function OA({messages:e,quickActions:t,theme:n,isMobile:r,inputRef:i,setInput:a,selectedLanguage:o,toolStatus:s,isTyping:l,lastBotMessageRef:u,messagesEndRef:c,scrollContainerRef:d,onScroll:p,showScrollButton:m,onScrollToBottom:h,handleFeedback:g,botAvatarSrc:b,scrollLabel:y,botAvatarAlt:x,ttsModelId:S,ttsVoiceId:P,ttsVoiceSettings:j,onStructuredAction:C,handoverLabels:E,quickActionsPauseOnHover:R=!1}){return f.jsxs(f.Fragment,{children:[f.jsxs("div",{ref:d,onScroll:p,role:"log","aria-live":"polite","aria-label":"Chat-Nachrichten",className:"flex-1 min-h-0 overflow-y-auto p-5 bg-[hsl(var(--chat-bg))] flex flex-col gap-4 scrollbar-thin scrollbar-track-muted scrollbar-thumb-primary relative",children:[e.length===1&&f.jsx(rA,{quickActions:t,theme:n,pauseOnHover:R,onSelect:M=>{var k;a(M),r||(k=i.current)==null||k.focus()}}),e.map((M,k)=>{const N=M.sender==="operator",T=M.rpcData?jA(e,k):void 0,V=k===e.length-1;if(M.sender==="system")return f.jsx(MA,{message:M,labels:E,innerRef:V?u:null},k);const O=k>0?e[k-1]:void 0,F=M.operatorName||(E==null?void 0:E.operatorFallback)||"Support",B=N&&!((O==null?void 0:O.sender)==="operator"&&O.operatorName===M.operatorName),Z=LA(M.timestamp),X=Z?y0(Z,{addSuffix:!0,locale:IA[o]||ba}):M.time||"";return f.jsxs("div",{ref:!M.isUser&&k===e.length-1?u:null,className:`flex gap-3 animate-message-slide-in ${M.isUser?"flex-row-reverse":""}`,children:[N?f.jsx(hi,{imageUrl:M.operatorImageUrl,name:F,size:36,className:"shadow-[0_4px_15px_rgba(0,0,0,0.15)]"}):f.jsx("div",{className:`w-9 h-9 rounded-full flex items-center justify-center flex-shrink-0 shadow-[0_4px_15px_rgba(0,0,0,0.2)] border ${M.isUser?"bg-[hsl(var(--chat-avatar-user))] border-primary":"bg-[hsl(var(--chat-avatar-bot))] border-primary"}`,children:M.isUser?f.jsx(mm,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"}):f.jsx("img",{src:b,alt:x,className:"w-6 h-6 object-contain drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"})}),f.jsxs("div",{className:M.rpcData?"min-w-0 flex-1":void 0,children:[f.jsxs("div",{className:"flex flex-col gap-2 w-full max-w-[90%]",children:[B?f.jsxs("div",{className:"flex min-w-0 items-center gap-1.5 px-1 text-xs",children:[f.jsx("span",{className:"truncate font-semibold text-foreground/80",title:F,children:F}),f.jsx("span",{className:"shrink-0 rounded-full bg-[hsl(var(--chat-human)/0.14)] px-1.5 py-px text-[10px] font-semibold text-[hsl(var(--chat-human))]",children:(E==null?void 0:E.supportTag)||"Support"})]}):null,M.rpcData?f.jsx(NA,{data:M.rpcData,disabled:l,superseded:T==null?void 0:T.superseded,selectedSlot:T==null?void 0:T.selectedSlot,bookingClosed:T==null?void 0:T.bookingClosed,onAction:C}):f.jsx("div",{className:`w-full px-4 py-3 rounded-[18px] leading-relaxed text-sm transition-all hover:-translate-y-0.5 ${M.isUser?"bg-primary text-primary-foreground shadow-[0_6px_20px_hsl(var(--glow-primary)),inset_0_1px_2px_rgba(255,255,255,0.15)] hover:shadow-[0_10px_30px_hsl(var(--glow-primary)),inset_0_1px_2px_rgba(255,255,255,0.25)]":N?"rounded-ss-[6px] bg-[hsl(var(--chat-message-human))] border border-[hsl(var(--chat-message-human-border))] text-foreground shadow-[0_4px_15px_rgba(0,0,0,0.06)] hover:shadow-[0_8px_25px_rgba(0,0,0,0.1)] whitespace-pre-wrap break-words":"bg-[hsl(var(--chat-message-bot))] backdrop-blur-[20px] border border-[hsl(var(--chat-message-bot-border))] text-foreground shadow-[0_4px_15px_rgba(0,0,0,0.08)] hover:shadow-[0_8px_25px_rgba(0,0,0,0.12)]"}`,children:M.isUser||N?M.text:f.jsx("div",{className:`prose prose-sm ${n!=="light"?"prose-invert":""} max-w-none prose-p:my-2 prose-headings:my-3 prose-ul:my-2 prose-ol:my-2 prose-li:my-1 prose-code:text-xs prose-pre:bg-muted prose-pre:text-foreground prose-strong:text-foreground prose-a:text-foreground hover:prose-a:text-primary break-words prose-a:[overflow-wrap:anywhere] text-foreground`,children:f.jsx(gx,{remarkPlugins:[Pk],components:RA,urlTransform:DA,children:M.text})})}),!M.isUser&&M.sources&&M.sources.length>0&&f.jsx(iA,{sources:M.sources}),!M.isUser&&M.files&&M.files.length>0&&f.jsxs("div",{className:"space-y-1.5 w-full",children:[f.jsx("div",{className:"text-[10px] uppercase tracking-wider text-foreground/50 font-semibold",children:"Dateien"}),f.jsx("div",{className:"flex flex-col gap-1",children:M.files.map((K,w)=>f.jsxs("a",{href:K.url,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-2 text-xs text-foreground/70 bg-muted rounded-lg px-3 py-2 border border-border hover:bg-muted/80 transition-all group",children:[f.jsx(uu,{className:"w-3 h-3 flex-shrink-0 group-hover:scale-110 transition-transform"}),f.jsx("span",{className:"truncate",children:K.name})]},w))})]})]}),f.jsxs("div",{className:`flex items-center gap-2 mt-1.5 ${M.isUser?"justify-end":"justify-start"}`,children:[M.isUser&&M.delivery==="delivered"?f.jsxs("span",{className:"handover-in inline-flex items-center text-[hsl(var(--chat-human))]",title:E==null?void 0:E.delivered,children:[f.jsx(zn,{className:"w-3 h-3","aria-hidden":"true"}),f.jsx("span",{className:"sr-only",children:E==null?void 0:E.delivered})]}):null,M.isUser&&M.delivery==="failed"?f.jsxs("span",{className:"handover-in inline-flex items-center gap-1 text-[10px] text-[hsl(var(--chat-danger))]",children:[f.jsx(ln,{className:"w-3 h-3","aria-hidden":"true"}),E==null?void 0:E.notDelivered]}):null,f.jsx("div",{className:"text-[10px] text-foreground/40",title:M.time,children:X}),!M.isUser&&!M.rpcData&&!N&&f.jsxs("div",{className:"flex gap-1",children:[f.jsx(cA,{text:M.text,language:o,modelId:S,voiceId:P,voiceSettings:j,className:"p-1 rounded transition-colors text-foreground/40 hover:text-primary"}),f.jsx("button",{onClick:()=>g(k,"up"),"aria-label":"Hilfreich","aria-pressed":M.feedback==="up",className:`p-1 rounded transition-colors ${M.feedback==="up"?"text-green-400":"text-foreground/40 hover:text-green-400"}`,children:f.jsx(fu,{className:"w-3 h-3"})}),f.jsx("button",{onClick:()=>g(k,"down"),"aria-label":"Nicht hilfreich","aria-pressed":M.feedback==="down",className:`p-1 rounded transition-colors ${M.feedback==="down"?"text-red-400":"text-foreground/40 hover:text-red-400"}`,children:f.jsx(fm,{className:"w-3 h-3"})})]})]})]})]},k)}),l&&f.jsxs("div",{ref:u,className:"flex gap-3",children:[f.jsx("div",{className:"w-9 h-9 rounded-full flex items-center justify-center flex-shrink-0 shadow-[0_4px_15px_rgba(0,0,0,0.2)] border border-primary bg-[hsl(var(--chat-avatar-bot))]",children:f.jsx(_r,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"})}),s.active?f.jsx("div",{className:"px-4 py-3 max-w-[85%] w-fit bg-card/50 backdrop-blur-sm rounded-2xl rounded-tl-none border border-border/30 shadow-lg animate-message-slide-in",children:f.jsx("div",{className:"text-sm text-foreground/70",children:s.toolName==="human_handover"&&E?E.requesting:Wr[o]||Wr.en})}):f.jsx(dA,{})]}),s.active&&!l&&f.jsxs("div",{ref:u,className:"flex gap-3",children:[f.jsx("div",{className:"w-9 h-9 rounded-full flex items-center justify-center flex-shrink-0 shadow-[0_4px_15px_rgba(0,0,0,0.2)] border border-primary bg-[hsl(var(--chat-avatar-bot))]",children:f.jsx(_r,{className:"w-5 h-5 text-primary-foreground drop-shadow-[0_1px_2px_rgba(0,0,0,0.2)]"})}),f.jsx("div",{className:"px-4 py-3 max-w-[85%] w-fit bg-card/50 backdrop-blur-sm rounded-2xl rounded-tl-none border border-border/30 shadow-lg animate-message-slide-in",children:f.jsx("div",{className:"text-sm text-foreground/70",children:s.toolName==="human_handover"&&E?E.requesting:Wr[o]||Wr.en})})]}),f.jsx("div",{ref:c})]}),m&&f.jsx("button",{onClick:h,className:"absolute bottom-36 right-4 bg-primary/95 backdrop-blur-sm text-primary-foreground rounded-full p-3 shadow-[0_8px_30px_rgb(0,0,0,0.12)] hover:shadow-[0_12px_40px_rgb(0,0,0,0.16)] hover:bg-primary hover:scale-110 transition-all duration-300 z-20 animate-[slideUp_0.3s_ease-out] group flex items-center justify-center","aria-label":y,children:f.jsx(Qf,{className:"w-5 h-5",strokeWidth:2.5})})]})}const Tl=({className:e,pulse:t})=>f.jsxs("span",{className:"relative inline-flex h-2 w-2 shrink-0","aria-hidden":"true",children:[t?f.jsx("span",{className:`handover-pulse absolute inline-flex h-full w-full rounded-full ${e}`}):null,f.jsx("span",{className:`relative inline-flex h-2 w-2 rounded-full ${e}`})]}),Ml="px-4 pt-2.5 bg-[hsl(var(--chat-input-bg))] flex flex-col items-center gap-1.5",Il="handover-in inline-flex max-w-full min-w-0 items-center gap-2 rounded-full border px-3 py-1.5 text-xs transition-colors duration-500",ir="inline-flex items-center gap-1.5 rounded-full border border-border bg-card/60 px-2.5 py-1 text-[11px] font-medium text-foreground/75 transition-colors hover:border-primary/40 hover:bg-primary/5 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary";function FA({status:e,operator:t,labels:n,disabled:r,showRequestButton:i=!0,onRequest:a,onContinueWithAssistant:o,onCancel:s}){const l=(t==null?void 0:t.displayName)||n.operatorFallback,[u,c]=I.useState("idle"),[d,p]=I.useState(!1);if(I.useEffect(()=>{c("idle"),p(!1)},[e]),e==="idle")return i?f.jsx("div",{className:Ml,children:f.jsxs("button",{type:"button",disabled:r,onClick:a,className:`${Il} border-border bg-card/60 text-foreground/70 hover:border-[hsl(var(--chat-human)/0.6)] hover:bg-[hsl(var(--chat-human)/0.08)] hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary disabled:cursor-not-allowed disabled:opacity-45`,children:[f.jsx(yo,{className:"shrink-0 text-[hsl(var(--chat-human))]","aria-hidden":"true"}),f.jsx("span",{className:"truncate font-medium",children:n.request})]})}):null;const h={requesting:{tone:"border-border bg-card/70 text-foreground/75",lead:f.jsx(Tl,{className:"bg-primary",pulse:!0}),text:n.requesting},queued:{tone:"border-[hsl(var(--chat-waiting)/0.45)] bg-[hsl(var(--chat-waiting)/0.1)] text-foreground/80",lead:f.jsx(Tl,{className:"bg-[hsl(var(--chat-waiting))]",pulse:!0}),text:n.queued,hint:n.queuedHint},active:{tone:"border-[hsl(var(--chat-human)/0.45)] bg-[hsl(var(--chat-human)/0.1)] text-foreground",lead:f.jsx(hi,{imageUrl:t==null?void 0:t.imageUrl,name:l,size:20}),text:ai(n.active,l),tag:n.supportTag},closed:{tone:"border-border bg-muted/50 text-foreground/70",lead:f.jsx(zn,{className:"shrink-0","aria-hidden":"true"}),text:n.closed},failed:{tone:"border-[hsl(var(--chat-danger)/0.4)] bg-[hsl(var(--chat-danger)/0.1)] text-[hsl(var(--chat-danger))]",lead:f.jsx(ln,{className:"shrink-0","aria-hidden":"true"}),text:n.failed}}[e];return f.jsxs("div",{className:Ml,role:"status","aria-live":"polite",children:[f.jsxs("div",{className:`${Il} ${h.tone}`,children:[h.lead,f.jsx("span",{className:"min-w-0 truncate font-medium",title:h.text,children:h.text}),h.tag?f.jsx("span",{className:"shrink-0 rounded-full bg-[hsl(var(--chat-human)/0.15)] px-1.5 py-px text-[10px] font-semibold text-[hsl(var(--chat-human))]",children:h.tag}):null,e==="failed"?f.jsxs("button",{type:"button",onClick:a,className:"ms-1 inline-flex shrink-0 items-center gap-1 rounded-full px-2 py-0.5 font-semibold hover:bg-[hsl(var(--chat-danger)/0.12)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[hsl(var(--chat-danger))]",children:[f.jsx(du,{"aria-hidden":"true"}),n.retry]}):null]},e),h.hint?f.jsx("p",{className:"handover-in text-center text-[10px] text-muted-foreground",children:h.hint}):null,(e==="queued"||e==="active")&&s?u==="idle"?f.jsxs("button",{type:"button",onClick:()=>c("confirming"),className:ir,children:[f.jsx(un,{"aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:n.cancelHandover})]}):f.jsxs("div",{className:"handover-in flex max-w-full flex-wrap items-center justify-center gap-1.5",role:"group","aria-label":n.cancelHandoverConfirm,children:[f.jsx("span",{className:"text-[11px] text-foreground/75",children:n.cancelHandoverConfirm}),f.jsxs("button",{type:"button",disabled:u==="sending",onClick:async()=>{c("sending"),p(!1),await s()||(c("confirming"),p(!0))},className:`${ir} disabled:opacity-45`,children:[f.jsx(un,{"aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:n.cancelHandoverYes})]}),f.jsx("button",{type:"button",disabled:u==="sending",onClick:()=>{c("idle"),p(!1)},className:`${ir} disabled:opacity-45`,children:f.jsx("span",{className:"truncate",children:n.cancelHandoverNo})})]}):null,d?f.jsx("p",{className:"handover-in text-center text-[10px] text-[hsl(var(--chat-danger))]",role:"alert",children:n.cancelHandoverFailed}):null,e==="closed"?f.jsxs("div",{className:"handover-in flex max-w-full flex-wrap justify-center gap-1.5",children:[f.jsxs("button",{type:"button",onClick:o,className:ir,children:[f.jsx(_r,{"aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:n.continueWithAssistant})]}),f.jsxs("button",{type:"button",onClick:a,disabled:r,className:`${ir} disabled:opacity-45`,children:[f.jsx(yo,{className:"text-[hsl(var(--chat-human))]","aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:n.requestAgain})]})]}):null]})}function BA({labels:e,disabled:t,active:n,onConfirm:r,onStarted:i}){const a=I.useRef(null),o=I.useId(),s=I.useId(),[l,u]=I.useState(!1);return f.jsxs("div",{className:"flex shrink-0 justify-end border-b border-border px-4 py-1 bg-[hsl(var(--chat-bg))]",children:[f.jsxs("button",{type:"button",disabled:t,onClick:()=>{var c;return(c=a.current)==null?void 0:c.showModal()},className:"inline-flex min-h-9 items-center gap-1.5 rounded-md px-2 text-xs text-muted-foreground hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary disabled:opacity-40",children:[f.jsx(du,{className:"h-3.5 w-3.5","aria-hidden":"true"}),e.newConversation]}),f.jsxs("dialog",{ref:a,"aria-labelledby":o,"aria-describedby":s,onKeyDown:c=>c.stopPropagation(),className:"handover-reset-dialog m-auto max-h-[calc(100dvh_-_32px)] w-[calc(100vw_-_32px)] max-w-sm overflow-y-auto rounded-2xl border border-border bg-background p-5 text-foreground shadow-xl",children:[f.jsx("h2",{id:o,className:"text-lg font-semibold",children:e.newConversationTitle}),f.jsxs("div",{id:s,className:"mt-3 space-y-3 text-sm leading-relaxed text-muted-foreground",children:[f.jsx("p",{children:e.newConversationDescription}),n&&f.jsx("p",{className:"border-s-2 border-[hsl(var(--chat-waiting))] ps-3 text-foreground",children:e.newConversationActiveWarning})]}),f.jsxs("div",{className:"mt-5 flex flex-wrap justify-end gap-2",children:[f.jsx(ut,{type:"button",variant:"outline",autoFocus:!0,disabled:l,onClick:()=>{var c;return(c=a.current)==null?void 0:c.close()},children:e.cancelNewConversation}),f.jsx(ut,{type:"button",disabled:l||t,onClick:async()=>{var c;u(!0);try{await r()&&((c=a.current)==null||c.close(),i())}finally{u(!1)}},children:e.newConversation})]})]})]})}const Dl=(e,t)=>{if(e===t)return!0;if(!e||!t||e.length!==t.length)return!1;for(let n=0;n<e.length;n++){const r=e[n],i=t[n];if(!r||!i||r.id!==i.id||r.title!==i.title||r.message!==i.message)return!1}return!0},WA=["audio/webm","audio/mp4","audio/mpeg","audio/aac"],qA={"audio/webm":"webm","audio/mp4":"mp4","audio/mpeg":"mp3","audio/aac":"aac"},VA=e=>{if(typeof window>"u"||typeof MediaRecorder>"u")throw new Error("MediaRecorder is not supported in this environment");const t=n=>n?new MediaRecorder(e,{mimeType:n}):new MediaRecorder(e);for(const n of WA)try{return{recorder:t(n),mimeType:n}}catch(r){if(r instanceof DOMException&&r.name==="NotSupportedError")continue;throw r}return{recorder:t(),mimeType:null}},JA=e=>qA[e]||e.split("/")[1]||"webm",ka=I.forwardRef(({isOpen:e,onClose:t,config:n,floatingZIndexBase:r=1e5},i)=>{var Oa,Fa,Ba,Wa,qa,Va,Ja,Ha,Ua,Xa,Za;const a=(Oa=n.languages)!=null&&Oa.length?n.languages:Le.languages,o=a.some(L=>L.code===n.defaultLanguage)?n.defaultLanguage:((Fa=a[0])==null?void 0:Fa.code)||Le.defaultLanguage,s=n.translations||Le.translations,l=n.dialogLayout||Le.dialogLayout||"floating",u=l==="embedded",[c,d]=I.useState(""),[p,m]=I.useState(!1),[h,g]=I.useState(0),[b,y]=I.useState(!1),x=I.useRef(null),S=I.useRef(null),P=I.useRef([]),j=I.useRef(null),[C,E]=I.useState(()=>{const L=localStorage.getItem("klausLanguage"),J=L==="uk"?"ua":L;return J&&a.some(Y=>Y.code===J)?J:o}),[R,M]=I.useState(!1),[k,N]=I.useState(!1),[T,V]=I.useState(!1),[O,F]=I.useState(!1),[B,Z]=I.useState(()=>{const L=localStorage.getItem("klausFontSize");return jh(L)?L:"normal"}),[X,K]=I.useState(()=>localStorage.getItem("klausHighContrast")==="true"),[w,se]=I.useState(()=>localStorage.getItem("klausPrivacyAccepted")==="true"),[Ee,z]=I.useState(!1),[Me,We]=I.useState(null),Te=I.useRef(null),Re=I.useRef(null),Pe=I.useRef(null),le=I.useRef(null),Ce=I.useRef(null),[Q,U]=I.useState({top:0,left:0}),ee=I.useCallback(()=>({userPreferredLanguage:C,currentDate:new Date().toISOString()}),[C]),[me,Oe]=I.useState(null),{theme:de,setTheme:Qe}=Cu(),Se=s[o]||Le.translations[o],xe=s[C]||Se,Ze=(xe==null?void 0:xe.welcome)||(Se==null?void 0:Se.welcome)||Le.translations[Le.defaultLanguage].welcome,ie=!!n.startOnFirstUserMessage&&!(n.initialMessage&&n.conversationId),pe=TA(C,(Ba=n.humanHandover)==null?void 0:Ba.translations);I.useEffect(()=>{N(l==="centered")},[l]),I.useEffect(()=>{if(typeof document>"u"||!(e&&l==="centered"))return;const L=document.body,J=L.style.overflow;return L.style.overflow="hidden",()=>{L.style.overflow=J}},[e,l]),I.useEffect(()=>{const L=()=>window.matchMedia("(max-width: 768px)").matches,J=()=>V(L());return J(),window.addEventListener("resize",J),()=>window.removeEventListener("resize",J)},[]),I.useEffect(()=>{e&&l==="floating"&&(u||T&&N(!0))},[e,T,l,u]);const{messages:fe,isTyping:Ve,quickReplies:Je,toolStatus:D,conversationId:W,assistantTenant:ne,handover:te,initialize:_,sendMessage:ze,requestHumanHandover:Ye,cancelHumanHandover:at,continueWithAssistant:jt,startNewConversation:ft,updateMessageFeedback:tt,appendAssistantMessage:Dt}=Ah({promptId:n.promptId||"default",initialMessage:n.initialMessage,initialConversationId:n.initialMessage&&n.conversationId?n.conversationId:void 0,startOnFirstUserMessage:ie,localWelcomeMessage:ie?Ze:void 0,getContext:ee,humanHandover:(Wa=n.humanHandover)!=null&&Wa.enabled?{enabled:!0,pollIntervalMs:n.humanHandover.pollIntervalMs,requestMessage:pe.requestMessage}:void 0,onError:L=>{const J=ds[C]?C:o||"de",Y=ds[J],oe=(L||"").toLowerCase();if(oe.includes("content filter")){const Ue=Ji[C]?C:"en",zt=Ji[Ue]||Ji.en;Dt(zt);return}const Ne=ah.some(Ue=>oe.includes(Ue));!Ne&&L&&console.error("Unhandled chat error:",L),bt({title:Y.title,description:Ne&&L?L:Y.unexpected,variant:"destructive"})}}),rt=s.en||Le.translations.en,Pn={...Le.links,...n.links},xt=n.branding.poweredBy||Le.branding.poweredBy,nn=(xe==null?void 0:xe.settings)||(Se==null?void 0:Se.settings)||Le.translations[Le.defaultLanguage].settings,jn=(()=>{const L=n.aboutChatbotDescription;if(!L)return;if(typeof L=="string")return L;const J=L[C];if(typeof J=="string")return J;const Y=L[o];if(typeof Y=="string")return Y;const oe=L[Le.defaultLanguage];if(typeof oe=="string")return oe})(),gn=nn&&jn?{...nn,aboutChatbot:{...nn.aboutChatbot,description:jn}}:nn,zr=(xe==null?void 0:xe.placeholder)||(Se==null?void 0:Se.placeholder)||Le.translations[Le.defaultLanguage].placeholder,bn=!!((qa=n.humanHandover)!=null&&qa.enabled),Xn=((Va=te.operator)==null?void 0:Va.displayName)||pe.operatorFallback,Ar=Xn.length<=20,Er=bn?te.status==="active"?Ar?ai(pe.placeholderActive,Xn):pe.placeholderQueued:te.status==="queued"?pe.placeholderQueued:zr:zr,Mi=(()=>{if(bn)switch(te.status){case"requesting":case"queued":return{mode:"waiting",label:pe.headerWaiting};case"active":return{mode:"human",label:ai(pe.headerActive,Xn),operator:te.operator,operatorFallbackName:pe.operatorFallback};case"closed":return{mode:"closed",label:pe.headerClosed};default:return}})(),Ii=(xe==null?void 0:xe.disclaimer)||(Se==null?void 0:Se.disclaimer)||Le.translations[Le.defaultLanguage].disclaimer,Pr=(gn==null?void 0:gn.scrollToBottom)||((Ja=Se==null?void 0:Se.settings)==null?void 0:Ja.scrollToBottom)||"Zum Ende scrollen",jr=(xe==null?void 0:xe.transcribing)??(rt==null?void 0:rt.transcribing)??Le.translations[Le.defaultLanguage].transcribing,Nn=()=>{if(!le.current||typeof window>"u")return;const L=le.current.getBoundingClientRect(),J=220,Y=8;if(u&&Pe.current){const Ht=Pe.current.getBoundingClientRect(),Oi=Ht.width,Ga=Ht.height,Bf=L.right-J-Ht.left,Wf=Math.max(Y,Math.min(Bf,Oi-J-Y)),Ka=Math.min(300,Ga*.6);let Fi=L.bottom+6-Ht.top;Fi+Ka+Y>Ga&&(Fi=Math.max(Y,L.top-Ht.top-Ka-6)),U({top:Fi,left:Wf});return}const oe=window.innerWidth,je=window.innerHeight,Ne=Math.max(Y,Math.min(L.right-J,oe-J-Y)),Ue=Math.min(300,je*.6);let zt=L.bottom+6;zt+Ue+Y>je&&(zt=Math.max(Y,L.top-Ue-6)),U({top:zt,left:Ne})};I.useEffect(()=>{const L=J=>{if(J.key==="Escape"&&e){if(R){J.preventDefault(),J.stopPropagation(),M(!1);return}O?F(!1):t()}};return window.addEventListener("keydown",L),()=>window.removeEventListener("keydown",L)},[e,O,t,R]),I.useEffect(()=>{var J,Y;if(!Pe.current)return;if(u){Oe(Pe.current);return}const L=(Y=(J=Pe.current).getRootNode)==null?void 0:Y.call(J);L instanceof ShadowRoot?Oe(L):typeof document<"u"&&Oe(document.body)},[e,u]),I.useEffect(()=>{if(!R)return;const L=J=>{const Y=J.composedPath&&J.composedPath()||[],oe=J.target,je=le.current,Ne=Ce.current,Ue=!!je&&(Y.includes(je)||je.contains(oe)),zt=!!Ne&&(Y.includes(Ne)||Ne.contains(oe));!Ue&&!zt&&M(!1)};return document.addEventListener("mousedown",L,!0),document.addEventListener("touchstart",L,!0),()=>{document.removeEventListener("mousedown",L,!0),document.removeEventListener("touchstart",L,!0)}},[R]),I.useEffect(()=>{if(!R)return;Nn();const L=()=>Nn(),J=()=>Nn();return window.addEventListener("resize",L),window.addEventListener("scroll",J,!0),()=>{window.removeEventListener("resize",L),window.removeEventListener("scroll",J,!0)}},[R]),I.useEffect(()=>{if(!(e&&Pe.current))return;const L=()=>{var Ne,Ue;const Y='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])',oe=Array.from(((Ne=Pe.current)==null?void 0:Ne.querySelectorAll(Y))??[]),je=Array.from(((Ue=Ce.current)==null?void 0:Ue.querySelectorAll(Y))??[]);return[...oe,...je]},J=Y=>{if(Y.key!=="Tab")return;const oe=L().filter(Ue=>!Ue.hasAttribute("disabled")&&Ue.getAttribute("tabindex")!=="-1");if(oe.length===0)return;const je=oe[0],Ne=oe[oe.length-1];Y.shiftKey?document.activeElement===je&&(Y.preventDefault(),Ne==null||Ne.focus()):document.activeElement===Ne&&(Y.preventDefault(),je==null||je.focus())};return window.addEventListener("keydown",J),()=>window.removeEventListener("keydown",J)},[e,O,R]),I.useEffect(()=>{if(R&&Ce.current){const L=Ce.current.querySelector("button:not([disabled])");L==null||L.focus()}else!R&&le.current&&le.current.focus()},[R]);const Di=I.useCallback(L=>{if(!Ce.current)return;const J=Array.from(Ce.current.querySelectorAll("button:not([disabled])"));if(!J.length)return;const Y=J.indexOf(document.activeElement),oe=je=>{var Ne;L.preventDefault(),(Ne=J[je])==null||Ne.focus()};switch(L.key){case"ArrowDown":{const je=(Y+1)%J.length;oe(je);break}case"ArrowUp":{const je=(Y-1+J.length)%J.length;oe(je);break}case"Home":oe(0);break;case"End":oe(J.length-1);break}},[]),Nr=(()=>{const L=n.quickReplies.default,J=Array.isArray(L)&&L.length>0,Y=n.quickReplies[C],oe=Le.quickReplies[C];if(Y!==void 0&&(oe===void 0||!Dl(Y,oe)))return Y;if(J)return L;if(oe!==void 0)return oe;const Ne=n.quickReplies[o],Ue=Le.quickReplies[o];return Ne!==void 0&&(Ue===void 0||!Dl(Ne,Ue))?Ne:Ue!==void 0?Ue:[]})(),Ri=(Nr.length?Nr:Je.map((L,J)=>({id:`api-${J}`,title:L.text,message:L.text}))).map(L=>({...L,icon:L.id==="mangel"?f.jsx(ln,{className:"w-4 h-4"}):L.id==="kfz"?f.jsx(ln,{className:"w-4 h-4"}):L.id==="oeffnungszeiten"?f.jsx(_a,{className:"w-4 h-4"}):L.id==="termin"?f.jsx(_a,{className:"w-4 h-4"}):f.jsx(uu,{className:"w-4 h-4"})})),A=()=>{localStorage.setItem("klausPrivacyAccepted","true"),se(!0)},q=()=>{localStorage.removeItem("klausPrivacyAccepted"),se(!1),F(!1),t()};I.useEffect(()=>{e&&w&&_()},[e,w,_]),I.useEffect(()=>{e&&Re.current&&!T&&Re.current.focus()},[e,T]);const[G,ae]=I.useState(!1),ke=I.useRef(null),Ie=I.useRef(fe.length),ye=I.useRef(null),ve=()=>{const L=ke.current;if(!L)return;const Y=L.scrollHeight-L.scrollTop-L.clientHeight<150;ae(!Y)};I.useEffect(()=>{var L,J;if((L=n.humanHandover)!=null&&L.enabled&&te.status!=="idle"){const Y=ke.current;Y&&(!G||(J=fe[fe.length-1])!=null&&J.isUser)&&(Y.scrollTop=Y.scrollHeight);return}u||ye.current&&ye.current.scrollIntoView({behavior:"smooth",block:"start"})},[fe.length,Ve,u]),I.useEffect(()=>{if(fe.length>Ie.current){const L=ke.current;L&&(L.scrollHeight-L.scrollTop-L.clientHeight<150||ae(!0))}Ie.current=fe.length},[fe]);const it=()=>{const L=ke.current;L&&(L.scrollTo({top:L.scrollHeight,behavior:"smooth"}),ae(!1))};I.useEffect(()=>{localStorage.setItem("klausLanguage",C)},[C]),I.useEffect(()=>{localStorage.setItem("klausFontSize",B);const L=Pe.current;if(!L)return;const J=L.getRootNode(),Y=J instanceof ShadowRoot?J.host:document.documentElement;L.classList.remove("font-size-small","font-size-large","font-size-extra-large"),Y.classList.remove("font-size-small","font-size-large","font-size-extra-large");const oe=B==="small"?"font-size-small":B==="large"?"font-size-large":B==="extra-large"?"font-size-extra-large":"";oe&&(L.classList.add(oe),Y.classList.add(oe))},[B]),I.useEffect(()=>{localStorage.setItem("klausHighContrast",String(X))},[X]),I.useEffect(()=>{Re.current&&(Re.current.style.height="auto",Re.current.style.height=`${Math.min(Re.current.scrollHeight,120)}px`)},[c]);const He=async()=>{if(p){await Jt();return}if(b)return;const L=c.trim();if(!L)return;const J=L;d("");try{await ze(J)}catch(Y){console.error("Failed to send message:",Y)}},Ge=L=>{L.key==="Enter"&&!L.shiftKey&&(L.preventDefault(),He())},ht=async()=>{try{const L=await navigator.mediaDevices.getUserMedia({audio:!0});let J,Y=null;try{({recorder:J,mimeType:Y}=VA(L))}catch(oe){throw L.getTracks().forEach(je=>je.stop()),oe}S.current=J,P.current=[],j.current=J.mimeType||Y,J.ondataavailable=oe=>{oe.data.size>0&&P.current.push(oe.data),!j.current&&oe.data.type&&(j.current=oe.data.type)},J.start(),m(!0),g(0),x.current=setInterval(()=>{g(oe=>oe+1)},1e3)}catch(L){console.error("Failed to start recording:",L);const J=L instanceof DOMException&&L.name==="NotSupportedError";bt({title:J?"Unsupported":"Error",description:J?"Audio recording is not supported in this browser.":"Failed to access microphone",variant:"destructive"})}},Jt=async()=>{if(x.current&&clearInterval(x.current),!S.current||S.current.state==="inactive"){m(!1);return}return m(!1),y(!0),new Promise(L=>{const J=S.current;J.onstop=async()=>{var Y;try{const oe=j.current||J.mimeType||((Y=P.current[0])==null?void 0:Y.type)||"audio/webm",je=oe?new Blob(P.current,{type:oe}):new Blob(P.current),Ne=je.type||oe||"audio/webm",Ue=`voice-${Date.now()}.${JA(Ne)}`,zt=new FileReader;zt.onloadend=async()=>{try{const Ht=zt.result.split(",")[1],Oi=await yh(Ht,Ne,Ue,C==="de"?"de-DE":C==="en"?"en-US":void 0);d((Oi.text||"").trimEnd())}catch(Ht){console.error("Transcription error:",Ht),bt({title:"Error",description:"Failed to transcribe audio",variant:"destructive"})}finally{y(!1),g(0),j.current=null,P.current=[],S.current=null,L()}},zt.readAsDataURL(je)}catch(oe){console.error("Error processing audio:",oe),y(!1),g(0),j.current=null,P.current=[],S.current=null,L()}finally{J.stream.getTracks().forEach(oe=>oe.stop())}},J.stop()})},Rt=L=>{let J=0;for(let Y=0;Y<=L&&Y<fe.length;Y++)!fe[Y].isUser&&!fe[Y].rpcData&&(J+=1);return J||1},st=(L,J)=>{var Y;if(J==="down")We(L),z(!0);else{const je=((Y=fe[L])==null?void 0:Y.feedback)===J?null:J;if(tt(L,je),je==="up"&&W){const Ne=Rt(L);(async()=>{try{await bs({conversation_id:W,feedback_type:"positive",message_number:Ne,tenant:ne}),bt({title:"Vielen Dank!",description:"Ihre positive Bewertung hilft uns weiter."})}catch(Ue){console.error("Failed to submit positive feedback:",Ue),bt({title:"Fehler",description:"Ihre Bewertung konnte nicht gesendet werden.",variant:"destructive"})}})()}else je==="up"&&bt({title:"Vielen Dank!",description:"Ihre positive Bewertung hilft uns weiter."})}},Zn=(L,J)=>{var je;if(Me===null)return;tt(Me,"down");const oe=((je=(ei[C]||ei.de).find(Ne=>Ne.id===L))==null?void 0:je.label)||L;if(W){const Ne=Rt(Me);(async()=>{try{await bs({conversation_id:W,feedback_type:"negative",message_number:Ne,tenant:ne,problem:oe,problem_description:J||void 0})}catch(Ue){console.error("Failed to submit negative feedback:",Ue),bt({title:"Fehler",description:"Ihr Feedback konnte nicht gesendet werden.",variant:"destructive"})}})()}z(!1),We(null)};if(I.useImperativeHandle(i,()=>({sendQuickMessage:L=>{d(L),setTimeout(()=>{He()},100)}})),!e)return null;const Gn=Number.isFinite(r)?Math.max(0,Math.min(Math.round(r),2147483645)):1e5,Li=Gn+2,Tr="bg-[hsl(var(--chat-bg))] backdrop-blur-[60px] rounded-[24px] border border-border flex flex-col overflow-hidden animate-chat-slide-up transform-gpu transition-all duration-300",Mr=`${de==="light"?"light":""} ${X?"high-contrast":""}`,Rf=`fixed ${k?"inset-4":"bottom-[30px] right-[30px] w-[420px] max-h-[calc(100dvh-60px)] overflow-y-auto"} ${Tr} shadow-[0_30px_80px_rgba(0,0,0,0.5),inset_0_1px_2px_rgba(255,255,255,0.08),0_0_80px_hsl(var(--glow-primary))] max-md:w-[calc(100vw-20px)] max-md:right-[10px] max-md:bottom-[20px] ${k?"max-md:inset-0 max-md:rounded-none":""} ${Mr}`,Lf=`fixed ${k?"inset-4 max-md:inset-0 max-md:rounded-none":"bottom-[30px] right-[30px] w-[420px] h-[650px] max-h-[calc(100dvh-60px)] max-md:w-[calc(100vw-20px)] max-md:h-[calc(100dvh-100px)] max-md:right-[10px] max-md:bottom-[20px]"} ${Tr} shadow-[0_30px_80px_rgba(0,0,0,0.3)] ${Mr}`,Of=`relative w-full max-w-[960px] ${k?"h-[90vh] max-h-[820px]":"h-[80vh] max-h-[720px]"} max-md:max-w-none max-md:h-full max-md:rounded-none ${Tr} shadow-[0_30px_80px_rgba(0,0,0,0.35)] ${Mr}`,Ff=`relative w-full h-full ${Tr} shadow-[0_30px_80px_rgba(0,0,0,0.25)] ${Mr}`,La=(L,{isPrivacy:J})=>l==="centered"?f.jsxs("div",{className:"fixed inset-0 flex items-center justify-center px-4 max-md:px-0",style:{zIndex:Gn},children:[f.jsx("div",{className:"absolute inset-0 bg-black/40 backdrop-blur-[2px]","aria-hidden":"true",onClick:t}),f.jsx("div",{className:"relative z-10 w-full max-w-[960px] max-md:max-w-none max-md:h-full max-md:flex max-md:items-stretch",children:f.jsx("div",{ref:Pe,role:"dialog","aria-modal":"true","aria-labelledby":J?"privacy-dialog-title":"chat-title","aria-describedby":J?"privacy-dialog-description":"chat-description",lang:C,className:Of,children:L})})]}):l==="embedded"?f.jsx("div",{ref:Pe,role:"dialog","aria-modal":"true","aria-labelledby":J?"privacy-dialog-title":"chat-title","aria-describedby":J?"privacy-dialog-description":"chat-description",lang:C,className:Ff,children:L}):f.jsx("div",{ref:Pe,role:"dialog","aria-modal":"true","aria-labelledby":J?"privacy-dialog-title":"chat-title","aria-describedby":J?"privacy-dialog-description":"chat-description",lang:C,className:J?Rf:Lf,style:{zIndex:Gn},children:L});return w?La(f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"absolute inset-0 rounded-[24px] p-[1px] opacity-60 pointer-events-none",style:{background:`linear-gradient(135deg,
296
296
  hsl(var(--primary) / 0.4),
297
297
  hsl(var(--secondary) / 0.4),
298
- hsl(var(--accent) / 0.4))`,WebkitMask:"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)",mask:"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)",WebkitMaskComposite:"xor",maskComposite:"exclude"}}),f.jsx(Fh,{theme:pe,selectedLanguage:C,languages:a,onlineLabel:(xe==null?void 0:xe.online)||(Se==null?void 0:Se.online)||"",isLangMenuOpen:R,setIsLangMenuOpen:M,repositionLangMenu:Nn,langMenuPortalTarget:fe,langMenuPos:Q,langMenuContentRef:Ce,langButtonRef:le,handleLangMenuKeyDown:Di,onSelectLanguage:E,showSettings:O,onToggleSettings:()=>F(!O),isExpanded:k,onToggleExpand:()=>N(!k),showExpandToggle:l==="floating",langMenuPositioning:u?"absolute":"fixed",langMenuZIndex:Li,showCloseButton:!u,onClose:t,logoSrc:n.branding.logoUrl||Le.branding.logoUrl,assistantName:n.branding.assistantName,assistantTagline:n.branding.tagline,presence:Mi}),bn&&de.some(L=>L.isUser)&&f.jsx(FA,{labels:me,disabled:Ve||p||b||te.status==="requesting"||de.some(L=>L.delivery==="pending"),active:te.status==="queued"||te.status==="active",onStarted:()=>{var L;return(L=Re.current)==null?void 0:L.focus()},onConfirm:async()=>{const L=await ft();return L&&(d(""),z(!1),We(null)),L}}),f.jsx(LA,{messages:de,quickActions:Ri,theme:pe,isMobile:T,inputRef:Re,setInput:d,selectedLanguage:C,toolStatus:D,isTyping:Ve,lastBotMessageRef:ye,messagesEndRef:Te,scrollContainerRef:ke,onScroll:ve,showScrollButton:G,onScrollToBottom:it,handleFeedback:st,botAvatarSrc:n.branding.logoUrl||Le.branding.logoUrl,botAvatarAlt:n.branding.assistantName,scrollLabel:Pr,ttsModelId:(Ha=n.tts)==null?void 0:Ha.modelId,ttsVoiceId:(Ua=n.tts)==null?void 0:Ua.voiceId,ttsVoiceSettings:(Xa=n.tts)==null?void 0:Xa.voiceSettings,onStructuredAction:(L,J)=>void ze(L,void 0,void 0,void 0,J),handoverLabels:bn?me:void 0,quickActionsPauseOnHover:n.quickRepliesPauseOnHover===!0}),f.jsx(Rh,{open:O,onClose:()=>F(!1),translation:gn,theme:pe,setTheme:Qe,fontSize:B,onFontSizeChange:Z,highContrast:X,onHighContrastChange:K,onRevokePrivacy:q,links:Pn,poweredBy:n.branding.poweredBy}),(Za=n.humanHandover)!=null&&Za.enabled?f.jsx(OA,{status:te.status,showRequestButton:n.humanHandover.showRequestButton,operator:te.operator,labels:me,disabled:!W&&!ie||Ve,onRequest:()=>void Ye(),onContinueWithAssistant:jt,onCancel:at}):null,f.jsx(Oh,{input:c,onInputChange:d,onSend:He,onKeyDown:Ge,inputRef:Re,isRecording:p,isTranscribing:b,isTyping:Ve,startRecording:ht,stopRecording:Jt,recordingTime:h,placeholder:Er,transcribingLabel:jr,disclaimer:Ii,poweredByText:xt==null?void 0:xt.text,poweredByUrl:(xt==null?void 0:xt.url)||Pn.poweredByUrl}),f.jsx(_p,{isOpen:Ee,onClose:()=>{z(!1),We(null)},onSubmit:Zn,language:C})]}),{isPrivacy:!1}):La(f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"relative bg-primary p-5 flex justify-between items-center rounded-t-[24px]",children:[f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx("div",{className:"w-[42px] h-[42px] bg-[hsl(var(--chat-avatar-bot))] rounded-full flex items-center justify-center border border-primary-foreground/30",role:"img","aria-label":`${n.branding.assistantName} Logo`,children:f.jsx("img",{src:n.branding.logoUrl||Le.branding.logoUrl,alt:n.branding.assistantName,className:"w-7 h-7 object-contain drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)]"})}),f.jsx("div",{id:"privacy-dialog-title",className:"text-primary-foreground text-lg font-bold",children:n.branding.assistantName})]}),!u&&f.jsx("button",{onClick:t,"aria-label":"Dialog schließen",className:"w-[38px] h-[38px] bg-primary-foreground/15 backdrop-blur-[10px] border border-primary-foreground/20 rounded-full flex items-center justify-center transition-all duration-300 hover:bg-primary-foreground/25 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary",children:f.jsx(un,{className:"w-5 h-5 text-primary-foreground","aria-hidden":"true"})})]}),f.jsxs("div",{className:"p-6 space-y-4 bg-[hsl(var(--chat-bg))]",children:[f.jsx("h3",{id:"privacy-dialog-description",className:"text-lg font-bold text-foreground",children:"Datenschutzhinweis"}),f.jsx("p",{className:"text-sm text-foreground/80 leading-relaxed",children:"Mit der Nutzung des KI-Assistenten stimmen Sie der Verarbeitung Ihrer Eingaben gemäß unserer Datenschutzerklärung zu. Ihre Daten werden verschlüsselt übertragen und nur zur Beantwortung Ihrer Anfragen verwendet."}),f.jsx("a",{href:Pn.privacyUrl||"#",target:"_blank",rel:"noopener noreferrer",className:"text-sm text-primary hover:text-primary/80 underline block",children:"Datenschutzerklärung lesen →"}),f.jsx(ut,{onClick:A,className:"w-full bg-primary hover:bg-primary/90 text-primary-foreground font-semibold",children:"Akzeptieren und fortfahren"})]})]}),{isPrivacy:!0})});ka.displayName="ChatInterface";function JA(e,t=globalThis==null?void 0:globalThis.document){const n=Gt(e);v.useEffect(()=>{const r=i=>{i.key==="Escape"&&n(i)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}var HA="DismissableLayer",Lo="dismissableLayer.update",UA="dismissableLayer.pointerDownOutside",XA="dismissableLayer.focusOutside",Rl,kd=v.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Sa=v.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:s,...l}=e,u=v.useContext(kd),[c,d]=v.useState(null),p=(c==null?void 0:c.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,m]=v.useState({}),h=ot(t,E=>d(E)),g=Array.from(u.layers),[b]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),y=g.indexOf(b),x=c?g.indexOf(c):-1,S=u.layersWithOutsidePointerEventsDisabled.size>0,P=x>=y,j=GA(E=>{const R=E.target,M=[...u.branches].some(k=>k.contains(R));!P||M||(i==null||i(E),o==null||o(E),E.defaultPrevented||s==null||s())},p),C=KA(E=>{const R=E.target;[...u.branches].some(k=>k.contains(R))||(a==null||a(E),o==null||o(E),E.defaultPrevented||s==null||s())},p);return JA(E=>{x===u.layers.size-1&&(r==null||r(E),!E.defaultPrevented&&s&&(E.preventDefault(),s()))},p),v.useEffect(()=>{if(c)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Rl=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(c)),u.layers.add(c),Ll(),()=>{n&&u.layersWithOutsidePointerEventsDisabled.size===1&&(p.body.style.pointerEvents=Rl)}},[c,p,n,u]),v.useEffect(()=>()=>{c&&(u.layers.delete(c),u.layersWithOutsidePointerEventsDisabled.delete(c),Ll())},[c,u]),v.useEffect(()=>{const E=()=>m({});return document.addEventListener(Lo,E),()=>document.removeEventListener(Lo,E)},[]),f.jsx(Ke.div,{...l,ref:h,style:{pointerEvents:S?P?"auto":"none":void 0,...e.style},onFocusCapture:De(e.onFocusCapture,C.onFocusCapture),onBlurCapture:De(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:De(e.onPointerDownCapture,j.onPointerDownCapture)})});Sa.displayName=HA;var ZA="DismissableLayerBranch",Sd=v.forwardRef((e,t)=>{const n=v.useContext(kd),r=v.useRef(null),i=ot(t,r);return v.useEffect(()=>{const a=r.current;if(a)return n.branches.add(a),()=>{n.branches.delete(a)}},[n.branches]),f.jsx(Ke.div,{...e,ref:i})});Sd.displayName=ZA;function GA(e,t=globalThis==null?void 0:globalThis.document){const n=Gt(e),r=v.useRef(!1),i=v.useRef(()=>{});return v.useEffect(()=>{const a=s=>{if(s.target&&!r.current){let l=function(){Cd(UA,n,u,{discrete:!0})};const u={originalEvent:s};s.pointerType==="touch"?(t.removeEventListener("click",i.current),i.current=l,t.addEventListener("click",i.current,{once:!0})):l()}else t.removeEventListener("click",i.current);r.current=!1},o=window.setTimeout(()=>{t.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(o),t.removeEventListener("pointerdown",a),t.removeEventListener("click",i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function KA(e,t=globalThis==null?void 0:globalThis.document){const n=Gt(e),r=v.useRef(!1);return v.useEffect(()=>{const i=a=>{a.target&&!r.current&&Cd(XA,n,{originalEvent:a},{discrete:!1})};return t.addEventListener("focusin",i),()=>t.removeEventListener("focusin",i)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function Ll(){const e=new CustomEvent(Lo);document.dispatchEvent(e)}function Cd(e,t,n,{discrete:r}){const i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?Eu(i,a):i.dispatchEvent(a)}var QA=Sa,YA=Sd;const _A=["top","right","bottom","left"],fn=Math.min,kt=Math.max,si=Math.round,qr=Math.floor,Bt=e=>({x:e,y:e}),$A={left:"right",right:"left",bottom:"top",top:"bottom"},e2={start:"end",end:"start"};function Oo(e,t,n){return kt(e,fn(t,n))}function Qt(e,t){return typeof e=="function"?e(t):e}function Yt(e){return e.split("-")[0]}function Hn(e){return e.split("-")[1]}function Ca(e){return e==="x"?"y":"x"}function za(e){return e==="y"?"height":"width"}const t2=new Set(["top","bottom"]);function Ft(e){return t2.has(Yt(e))?"y":"x"}function Aa(e){return Ca(Ft(e))}function n2(e,t,n){n===void 0&&(n=!1);const r=Hn(e),i=Aa(e),a=za(i);let o=i==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[a]>t.floating[a]&&(o=li(o)),[o,li(o)]}function r2(e){const t=li(e);return[Fo(e),t,Fo(t)]}function Fo(e){return e.replace(/start|end/g,t=>e2[t])}const Ol=["left","right"],Fl=["right","left"],i2=["top","bottom"],o2=["bottom","top"];function a2(e,t,n){switch(e){case"top":case"bottom":return n?t?Fl:Ol:t?Ol:Fl;case"left":case"right":return t?i2:o2;default:return[]}}function s2(e,t,n,r){const i=Hn(e);let a=a2(Yt(e),n==="start",r);return i&&(a=a.map(o=>o+"-"+i),t&&(a=a.concat(a.map(Fo)))),a}function li(e){return e.replace(/left|right|bottom|top/g,t=>$A[t])}function l2(e){return{top:0,right:0,bottom:0,left:0,...e}}function zd(e){return typeof e!="number"?l2(e):{top:e,right:e,bottom:e,left:e}}function ui(e){const{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function Bl(e,t,n){let{reference:r,floating:i}=e;const a=Ft(t),o=Aa(t),s=za(o),l=Yt(t),u=a==="y",c=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,p=r[s]/2-i[s]/2;let m;switch(l){case"top":m={x:c,y:r.y-i.height};break;case"bottom":m={x:c,y:r.y+r.height};break;case"right":m={x:r.x+r.width,y:d};break;case"left":m={x:r.x-i.width,y:d};break;default:m={x:r.x,y:r.y}}switch(Hn(t)){case"start":m[o]-=p*(n&&u?-1:1);break;case"end":m[o]+=p*(n&&u?-1:1);break}return m}const u2=async(e,t,n)=>{const{placement:r="bottom",strategy:i="absolute",middleware:a=[],platform:o}=n,s=a.filter(Boolean),l=await(o.isRTL==null?void 0:o.isRTL(t));let u=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:c,y:d}=Bl(u,r,l),p=r,m={},h=0;for(let g=0;g<s.length;g++){const{name:b,fn:y}=s[g],{x,y:S,data:P,reset:j}=await y({x:c,y:d,initialPlacement:r,placement:p,strategy:i,middlewareData:m,rects:u,platform:o,elements:{reference:e,floating:t}});c=x??c,d=S??d,m={...m,[b]:{...m[b],...P}},j&&h<=50&&(h++,typeof j=="object"&&(j.placement&&(p=j.placement),j.rects&&(u=j.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):j.rects),{x:c,y:d}=Bl(u,p,l)),g=-1)}return{x:c,y:d,placement:p,strategy:i,middlewareData:m}};async function hr(e,t){var n;t===void 0&&(t={});const{x:r,y:i,platform:a,rects:o,elements:s,strategy:l}=e,{boundary:u="clippingAncestors",rootBoundary:c="viewport",elementContext:d="floating",altBoundary:p=!1,padding:m=0}=Qt(t,e),h=zd(m),b=s[p?d==="floating"?"reference":"floating":d],y=ui(await a.getClippingRect({element:(n=await(a.isElement==null?void 0:a.isElement(b)))==null||n?b:b.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(s.floating)),boundary:u,rootBoundary:c,strategy:l})),x=d==="floating"?{x:r,y:i,width:o.floating.width,height:o.floating.height}:o.reference,S=await(a.getOffsetParent==null?void 0:a.getOffsetParent(s.floating)),P=await(a.isElement==null?void 0:a.isElement(S))?await(a.getScale==null?void 0:a.getScale(S))||{x:1,y:1}:{x:1,y:1},j=ui(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:x,offsetParent:S,strategy:l}):x);return{top:(y.top-j.top+h.top)/P.y,bottom:(j.bottom-y.bottom+h.bottom)/P.y,left:(y.left-j.left+h.left)/P.x,right:(j.right-y.right+h.right)/P.x}}const c2=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:l}=t,{element:u,padding:c=0}=Qt(e,t)||{};if(u==null)return{};const d=zd(c),p={x:n,y:r},m=Aa(i),h=za(m),g=await o.getDimensions(u),b=m==="y",y=b?"top":"left",x=b?"bottom":"right",S=b?"clientHeight":"clientWidth",P=a.reference[h]+a.reference[m]-p[m]-a.floating[h],j=p[m]-a.reference[m],C=await(o.getOffsetParent==null?void 0:o.getOffsetParent(u));let E=C?C[S]:0;(!E||!await(o.isElement==null?void 0:o.isElement(C)))&&(E=s.floating[S]||a.floating[h]);const R=P/2-j/2,M=E/2-g[h]/2-1,k=fn(d[y],M),N=fn(d[x],M),T=k,V=E-g[h]-N,O=E/2-g[h]/2+R,F=Oo(T,O,V),B=!l.arrow&&Hn(i)!=null&&O!==F&&a.reference[h]/2-(O<T?k:N)-g[h]/2<0,Z=B?O<T?O-T:O-V:0;return{[m]:p[m]+Z,data:{[m]:F,centerOffset:O-F-Z,...B&&{alignmentOffset:Z}},reset:B}}}),d2=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:i,middlewareData:a,rects:o,initialPlacement:s,platform:l,elements:u}=t,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:p,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:g=!0,...b}=Qt(e,t);if((n=a.arrow)!=null&&n.alignmentOffset)return{};const y=Yt(i),x=Ft(s),S=Yt(s)===s,P=await(l.isRTL==null?void 0:l.isRTL(u.floating)),j=p||(S||!g?[li(s)]:r2(s)),C=h!=="none";!p&&C&&j.push(...s2(s,g,h,P));const E=[s,...j],R=await hr(t,b),M=[];let k=((r=a.flip)==null?void 0:r.overflows)||[];if(c&&M.push(R[y]),d){const O=n2(i,o,P);M.push(R[O[0]],R[O[1]])}if(k=[...k,{placement:i,overflows:M}],!M.every(O=>O<=0)){var N,T;const O=(((N=a.flip)==null?void 0:N.index)||0)+1,F=E[O];if(F&&(!(d==="alignment"?x!==Ft(F):!1)||k.every(X=>Ft(X.placement)===x?X.overflows[0]>0:!0)))return{data:{index:O,overflows:k},reset:{placement:F}};let B=(T=k.filter(Z=>Z.overflows[0]<=0).sort((Z,X)=>Z.overflows[1]-X.overflows[1])[0])==null?void 0:T.placement;if(!B)switch(m){case"bestFit":{var V;const Z=(V=k.filter(X=>{if(C){const K=Ft(X.placement);return K===x||K==="y"}return!0}).map(X=>[X.placement,X.overflows.filter(K=>K>0).reduce((K,w)=>K+w,0)]).sort((X,K)=>X[1]-K[1])[0])==null?void 0:V[0];Z&&(B=Z);break}case"initialPlacement":B=s;break}if(i!==B)return{reset:{placement:B}}}return{}}}};function Wl(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function ql(e){return _A.some(t=>e[t]>=0)}const f2=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...i}=Qt(e,t);switch(r){case"referenceHidden":{const a=await hr(t,{...i,elementContext:"reference"}),o=Wl(a,n.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:ql(o)}}}case"escaped":{const a=await hr(t,{...i,altBoundary:!0}),o=Wl(a,n.floating);return{data:{escapedOffsets:o,escaped:ql(o)}}}default:return{}}}}},Ad=new Set(["left","top"]);async function m2(e,t){const{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Yt(n),s=Hn(n),l=Ft(n)==="y",u=Ad.has(o)?-1:1,c=a&&l?-1:1,d=Qt(t,e);let{mainAxis:p,crossAxis:m,alignmentAxis:h}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof h=="number"&&(m=s==="end"?h*-1:h),l?{x:m*c,y:p*u}:{x:p*u,y:m*c}}const p2=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:i,y:a,placement:o,middlewareData:s}=t,l=await m2(t,e);return o===((n=s.offset)==null?void 0:n.placement)&&(r=s.arrow)!=null&&r.alignmentOffset?{}:{x:i+l.x,y:a+l.y,data:{...l,placement:o}}}}},h2=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:i}=t,{mainAxis:a=!0,crossAxis:o=!1,limiter:s={fn:b=>{let{x:y,y:x}=b;return{x:y,y:x}}},...l}=Qt(e,t),u={x:n,y:r},c=await hr(t,l),d=Ft(Yt(i)),p=Ca(d);let m=u[p],h=u[d];if(a){const b=p==="y"?"top":"left",y=p==="y"?"bottom":"right",x=m+c[b],S=m-c[y];m=Oo(x,m,S)}if(o){const b=d==="y"?"top":"left",y=d==="y"?"bottom":"right",x=h+c[b],S=h-c[y];h=Oo(x,h,S)}const g=s.fn({...t,[p]:m,[d]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:a,[d]:o}}}}}},g2=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:l=!0,crossAxis:u=!0}=Qt(e,t),c={x:n,y:r},d=Ft(i),p=Ca(d);let m=c[p],h=c[d];const g=Qt(s,t),b=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(l){const S=p==="y"?"height":"width",P=a.reference[p]-a.floating[S]+b.mainAxis,j=a.reference[p]+a.reference[S]-b.mainAxis;m<P?m=P:m>j&&(m=j)}if(u){var y,x;const S=p==="y"?"width":"height",P=Ad.has(Yt(i)),j=a.reference[d]-a.floating[S]+(P&&((y=o.offset)==null?void 0:y[d])||0)+(P?0:b.crossAxis),C=a.reference[d]+a.reference[S]+(P?0:((x=o.offset)==null?void 0:x[d])||0)-(P?b.crossAxis:0);h<j?h=j:h>C&&(h=C)}return{[p]:m,[d]:h}}}},b2=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:i,rects:a,platform:o,elements:s}=t,{apply:l=()=>{},...u}=Qt(e,t),c=await hr(t,u),d=Yt(i),p=Hn(i),m=Ft(i)==="y",{width:h,height:g}=a.floating;let b,y;d==="top"||d==="bottom"?(b=d,y=p===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?"start":"end")?"left":"right"):(y=d,b=p==="end"?"top":"bottom");const x=g-c.top-c.bottom,S=h-c.left-c.right,P=fn(g-c[b],x),j=fn(h-c[y],S),C=!t.middlewareData.shift;let E=P,R=j;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(R=S),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(E=x),C&&!p){const k=kt(c.left,0),N=kt(c.right,0),T=kt(c.top,0),V=kt(c.bottom,0);m?R=h-2*(k!==0||N!==0?k+N:kt(c.left,c.right)):E=g-2*(T!==0||V!==0?T+V:kt(c.top,c.bottom))}await l({...t,availableWidth:R,availableHeight:E});const M=await o.getDimensions(s.floating);return h!==M.width||g!==M.height?{reset:{rects:!0}}:{}}}};function Si(){return typeof window<"u"}function Un(e){return Ed(e)?(e.nodeName||"").toLowerCase():"#document"}function Ct(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Vt(e){var t;return(t=(Ed(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Ed(e){return Si()?e instanceof Node||e instanceof Ct(e).Node:!1}function Mt(e){return Si()?e instanceof Element||e instanceof Ct(e).Element:!1}function Wt(e){return Si()?e instanceof HTMLElement||e instanceof Ct(e).HTMLElement:!1}function Vl(e){return!Si()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Ct(e).ShadowRoot}const y2=new Set(["inline","contents"]);function Sr(e){const{overflow:t,overflowX:n,overflowY:r,display:i}=It(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!y2.has(i)}const v2=new Set(["table","td","th"]);function x2(e){return v2.has(Un(e))}const w2=[":popover-open",":modal"];function Ci(e){return w2.some(t=>{try{return e.matches(t)}catch{return!1}})}const k2=["transform","translate","scale","rotate","perspective"],S2=["transform","translate","scale","rotate","perspective","filter"],C2=["paint","layout","strict","content"];function Ea(e){const t=Pa(),n=Mt(e)?It(e):e;return k2.some(r=>n[r]?n[r]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||S2.some(r=>(n.willChange||"").includes(r))||C2.some(r=>(n.contain||"").includes(r))}function z2(e){let t=mn(e);for(;Wt(t)&&!Bn(t);){if(Ea(t))return t;if(Ci(t))return null;t=mn(t)}return null}function Pa(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const A2=new Set(["html","body","#document"]);function Bn(e){return A2.has(Un(e))}function It(e){return Ct(e).getComputedStyle(e)}function zi(e){return Mt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function mn(e){if(Un(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Vl(e)&&e.host||Vt(e);return Vl(t)?t.host:t}function Pd(e){const t=mn(e);return Bn(t)?e.ownerDocument?e.ownerDocument.body:e.body:Wt(t)&&Sr(t)?t:Pd(t)}function gr(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const i=Pd(e),a=i===((r=e.ownerDocument)==null?void 0:r.body),o=Ct(i);if(a){const s=Bo(o);return t.concat(o,o.visualViewport||[],Sr(i)?i:[],s&&n?gr(s):[])}return t.concat(i,gr(i,[],n))}function Bo(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function jd(e){const t=It(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const i=Wt(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=si(n)!==a||si(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function ja(e){return Mt(e)?e:e.contextElement}function On(e){const t=ja(e);if(!Wt(t))return Bt(1);const n=t.getBoundingClientRect(),{width:r,height:i,$:a}=jd(t);let o=(a?si(n.width):n.width)/r,s=(a?si(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}const E2=Bt(0);function Nd(e){const t=Ct(e);return!Pa()||!t.visualViewport?E2:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function P2(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Ct(e)?!1:t}function Cn(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const i=e.getBoundingClientRect(),a=ja(e);let o=Bt(1);t&&(r?Mt(r)&&(o=On(r)):o=On(e));const s=P2(a,n,r)?Nd(a):Bt(0);let l=(i.left+s.x)/o.x,u=(i.top+s.y)/o.y,c=i.width/o.x,d=i.height/o.y;if(a){const p=Ct(a),m=r&&Mt(r)?Ct(r):r;let h=p,g=Bo(h);for(;g&&r&&m!==h;){const b=On(g),y=g.getBoundingClientRect(),x=It(g),S=y.left+(g.clientLeft+parseFloat(x.paddingLeft))*b.x,P=y.top+(g.clientTop+parseFloat(x.paddingTop))*b.y;l*=b.x,u*=b.y,c*=b.x,d*=b.y,l+=S,u+=P,h=Ct(g),g=Bo(h)}}return ui({width:c,height:d,x:l,y:u})}function Ai(e,t){const n=zi(e).scrollLeft;return t?t.left+n:Cn(Vt(e)).left+n}function Td(e,t){const n=e.getBoundingClientRect(),r=n.left+t.scrollLeft-Ai(e,n),i=n.top+t.scrollTop;return{x:r,y:i}}function j2(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e;const a=i==="fixed",o=Vt(r),s=t?Ci(t.floating):!1;if(r===o||s&&a)return n;let l={scrollLeft:0,scrollTop:0},u=Bt(1);const c=Bt(0),d=Wt(r);if((d||!d&&!a)&&((Un(r)!=="body"||Sr(o))&&(l=zi(r)),Wt(r))){const m=Cn(r);u=On(r),c.x=m.x+r.clientLeft,c.y=m.y+r.clientTop}const p=o&&!d&&!a?Td(o,l):Bt(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-l.scrollLeft*u.x+c.x+p.x,y:n.y*u.y-l.scrollTop*u.y+c.y+p.y}}function N2(e){return Array.from(e.getClientRects())}function T2(e){const t=Vt(e),n=zi(e),r=e.ownerDocument.body,i=kt(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=kt(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let o=-n.scrollLeft+Ai(e);const s=-n.scrollTop;return It(r).direction==="rtl"&&(o+=kt(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}const Jl=25;function M2(e,t){const n=Ct(e),r=Vt(e),i=n.visualViewport;let a=r.clientWidth,o=r.clientHeight,s=0,l=0;if(i){a=i.width,o=i.height;const c=Pa();(!c||c&&t==="fixed")&&(s=i.offsetLeft,l=i.offsetTop)}const u=Ai(r);if(u<=0){const c=r.ownerDocument,d=c.body,p=getComputedStyle(d),m=c.compatMode==="CSS1Compat"&&parseFloat(p.marginLeft)+parseFloat(p.marginRight)||0,h=Math.abs(r.clientWidth-d.clientWidth-m);h<=Jl&&(a-=h)}else u<=Jl&&(a+=u);return{width:a,height:o,x:s,y:l}}const I2=new Set(["absolute","fixed"]);function D2(e,t){const n=Cn(e,!0,t==="fixed"),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Wt(e)?On(e):Bt(1),o=e.clientWidth*a.x,s=e.clientHeight*a.y,l=i*a.x,u=r*a.y;return{width:o,height:s,x:l,y:u}}function Hl(e,t,n){let r;if(t==="viewport")r=M2(e,n);else if(t==="document")r=T2(Vt(e));else if(Mt(t))r=D2(t,n);else{const i=Nd(e);r={x:t.x-i.x,y:t.y-i.y,width:t.width,height:t.height}}return ui(r)}function Md(e,t){const n=mn(e);return n===t||!Mt(n)||Bn(n)?!1:It(n).position==="fixed"||Md(n,t)}function R2(e,t){const n=t.get(e);if(n)return n;let r=gr(e,[],!1).filter(s=>Mt(s)&&Un(s)!=="body"),i=null;const a=It(e).position==="fixed";let o=a?mn(e):e;for(;Mt(o)&&!Bn(o);){const s=It(o),l=Ea(o);!l&&s.position==="fixed"&&(i=null),(a?!l&&!i:!l&&s.position==="static"&&!!i&&I2.has(i.position)||Sr(o)&&!l&&Md(e,o))?r=r.filter(c=>c!==o):i=s,o=mn(o)}return t.set(e,r),r}function L2(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e;const o=[...n==="clippingAncestors"?Ci(t)?[]:R2(t,this._c):[].concat(n),r],s=o[0],l=o.reduce((u,c)=>{const d=Hl(t,c,i);return u.top=kt(d.top,u.top),u.right=fn(d.right,u.right),u.bottom=fn(d.bottom,u.bottom),u.left=kt(d.left,u.left),u},Hl(t,s,i));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function O2(e){const{width:t,height:n}=jd(e);return{width:t,height:n}}function F2(e,t,n){const r=Wt(t),i=Vt(t),a=n==="fixed",o=Cn(e,!0,a,t);let s={scrollLeft:0,scrollTop:0};const l=Bt(0);function u(){l.x=Ai(i)}if(r||!r&&!a)if((Un(t)!=="body"||Sr(i))&&(s=zi(t)),r){const m=Cn(t,!0,a,t);l.x=m.x+t.clientLeft,l.y=m.y+t.clientTop}else i&&u();a&&!r&&i&&u();const c=i&&!r&&!a?Td(i,s):Bt(0),d=o.left+s.scrollLeft-l.x-c.x,p=o.top+s.scrollTop-l.y-c.y;return{x:d,y:p,width:o.width,height:o.height}}function uo(e){return It(e).position==="static"}function Ul(e,t){if(!Wt(e)||It(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return Vt(e)===n&&(n=n.ownerDocument.body),n}function Id(e,t){const n=Ct(e);if(Ci(e))return n;if(!Wt(e)){let i=mn(e);for(;i&&!Bn(i);){if(Mt(i)&&!uo(i))return i;i=mn(i)}return n}let r=Ul(e,t);for(;r&&x2(r)&&uo(r);)r=Ul(r,t);return r&&Bn(r)&&uo(r)&&!Ea(r)?n:r||z2(e)||n}const B2=async function(e){const t=this.getOffsetParent||Id,n=this.getDimensions,r=await n(e.floating);return{reference:F2(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function W2(e){return It(e).direction==="rtl"}const q2={convertOffsetParentRelativeRectToViewportRelativeRect:j2,getDocumentElement:Vt,getClippingRect:L2,getOffsetParent:Id,getElementRects:B2,getClientRects:N2,getDimensions:O2,getScale:On,isElement:Mt,isRTL:W2};function Dd(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function V2(e,t){let n=null,r;const i=Vt(e);function a(){var s;clearTimeout(r),(s=n)==null||s.disconnect(),n=null}function o(s,l){s===void 0&&(s=!1),l===void 0&&(l=1),a();const u=e.getBoundingClientRect(),{left:c,top:d,width:p,height:m}=u;if(s||t(),!p||!m)return;const h=qr(d),g=qr(i.clientWidth-(c+p)),b=qr(i.clientHeight-(d+m)),y=qr(c),S={rootMargin:-h+"px "+-g+"px "+-b+"px "+-y+"px",threshold:kt(0,fn(1,l))||1};let P=!0;function j(C){const E=C[0].intersectionRatio;if(E!==l){if(!P)return o();E?o(!1,E):r=setTimeout(()=>{o(!1,1e-7)},1e3)}E===1&&!Dd(u,e.getBoundingClientRect())&&o(),P=!1}try{n=new IntersectionObserver(j,{...S,root:i.ownerDocument})}catch{n=new IntersectionObserver(j,S)}n.observe(e)}return o(!0),a}function J2(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,u=ja(e),c=i||a?[...u?gr(u):[],...gr(t)]:[];c.forEach(y=>{i&&y.addEventListener("scroll",n,{passive:!0}),a&&y.addEventListener("resize",n)});const d=u&&s?V2(u,n):null;let p=-1,m=null;o&&(m=new ResizeObserver(y=>{let[x]=y;x&&x.target===u&&m&&(m.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{var S;(S=m)==null||S.observe(t)})),n()}),u&&!l&&m.observe(u),m.observe(t));let h,g=l?Cn(e):null;l&&b();function b(){const y=Cn(e);g&&!Dd(g,y)&&n(),g=y,h=requestAnimationFrame(b)}return n(),()=>{var y;c.forEach(x=>{i&&x.removeEventListener("scroll",n),a&&x.removeEventListener("resize",n)}),d==null||d(),(y=m)==null||y.disconnect(),m=null,l&&cancelAnimationFrame(h)}}const H2=p2,U2=h2,X2=d2,Z2=b2,G2=f2,Xl=c2,K2=g2,Q2=(e,t,n)=>{const r=new Map,i={platform:q2,...n},a={...i.platform,_c:r};return u2(e,t,{...i,platform:a})};var Y2=typeof document<"u",_2=function(){},Qr=Y2?I.useLayoutEffect:_2;function ci(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!ci(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){const a=i[r];if(!(a==="_owner"&&e.$$typeof)&&!ci(e[a],t[a]))return!1}return!0}return e!==e&&t!==t}function Rd(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Zl(e,t){const n=Rd(e);return Math.round(t*n)/n}function co(e){const t=v.useRef(e);return Qr(()=>{t.current=e}),t}function $2(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:l,open:u}=e,[c,d]=v.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,m]=v.useState(r);ci(p,r)||m(r);const[h,g]=v.useState(null),[b,y]=v.useState(null),x=v.useCallback(X=>{X!==C.current&&(C.current=X,g(X))},[]),S=v.useCallback(X=>{X!==E.current&&(E.current=X,y(X))},[]),P=a||h,j=o||b,C=v.useRef(null),E=v.useRef(null),R=v.useRef(c),M=l!=null,k=co(l),N=co(i),T=co(u),V=v.useCallback(()=>{if(!C.current||!E.current)return;const X={placement:t,strategy:n,middleware:p};N.current&&(X.platform=N.current),Q2(C.current,E.current,X).then(K=>{const w={...K,isPositioned:T.current!==!1};O.current&&!ci(R.current,w)&&(R.current=w,Xo.flushSync(()=>{d(w)}))})},[p,t,n,N,T]);Qr(()=>{u===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,d(X=>({...X,isPositioned:!1})))},[u]);const O=v.useRef(!1);Qr(()=>(O.current=!0,()=>{O.current=!1}),[]),Qr(()=>{if(P&&(C.current=P),j&&(E.current=j),P&&j){if(k.current)return k.current(P,j,V);V()}},[P,j,V,k,M]);const F=v.useMemo(()=>({reference:C,floating:E,setReference:x,setFloating:S}),[x,S]),B=v.useMemo(()=>({reference:P,floating:j}),[P,j]),Z=v.useMemo(()=>{const X={position:n,left:0,top:0};if(!B.floating)return X;const K=Zl(B.floating,c.x),w=Zl(B.floating,c.y);return s?{...X,transform:"translate("+K+"px, "+w+"px)",...Rd(B.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:K,top:w}},[n,s,B.floating,c.x,c.y]);return v.useMemo(()=>({...c,update:V,refs:F,elements:B,floatingStyles:Z}),[c,V,F,B,Z])}const eE=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:i}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Xl({element:r.current,padding:i}).fn(n):{}:r?Xl({element:r,padding:i}).fn(n):{}}}},tE=(e,t)=>({...H2(e),options:[e,t]}),nE=(e,t)=>({...U2(e),options:[e,t]}),rE=(e,t)=>({...K2(e),options:[e,t]}),iE=(e,t)=>({...X2(e),options:[e,t]}),oE=(e,t)=>({...Z2(e),options:[e,t]}),aE=(e,t)=>({...G2(e),options:[e,t]}),sE=(e,t)=>({...eE(e),options:[e,t]});var lE="Arrow",Ld=v.forwardRef((e,t)=>{const{children:n,width:r=10,height:i=5,...a}=e;return f.jsx(Ke.svg,{...a,ref:t,width:r,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:f.jsx("polygon",{points:"0,0 30,0 15,10"})})});Ld.displayName=lE;var uE=Ld,Na="Popper",[Od,Fd]=pn(Na),[cE,Bd]=Od(Na),Wd=e=>{const{__scopePopper:t,children:n}=e,[r,i]=v.useState(null);return f.jsx(cE,{scope:t,anchor:r,onAnchorChange:i,children:n})};Wd.displayName=Na;var qd="PopperAnchor",Vd=v.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...i}=e,a=Bd(qd,n),o=v.useRef(null),s=ot(t,o),l=v.useRef(null);return v.useEffect(()=>{const u=l.current;l.current=(r==null?void 0:r.current)||o.current,u!==l.current&&a.onAnchorChange(l.current)}),r?null:f.jsx(Ke.div,{...i,ref:s})});Vd.displayName=qd;var Ta="PopperContent",[dE,fE]=Od(Ta),Jd=v.forwardRef((e,t)=>{var Re,Pe,le,Ce,Q,U;const{__scopePopper:n,side:r="bottom",sideOffset:i=0,align:a="center",alignOffset:o=0,arrowPadding:s=0,avoidCollisions:l=!0,collisionBoundary:u=[],collisionPadding:c=0,sticky:d="partial",hideWhenDetached:p=!1,updatePositionStrategy:m="optimized",onPlaced:h,...g}=e,b=Bd(Ta,n),[y,x]=v.useState(null),S=ot(t,ee=>x(ee)),[P,j]=v.useState(null),C=Qo(P),E=(C==null?void 0:C.width)??0,R=(C==null?void 0:C.height)??0,M=r+(a!=="center"?"-"+a:""),k=typeof c=="number"?c:{top:0,right:0,bottom:0,left:0,...c},N=Array.isArray(u)?u:[u],T=N.length>0,V={padding:k,boundary:N.filter(pE),altBoundary:T},{refs:O,floatingStyles:F,placement:B,isPositioned:Z,middlewareData:X}=$2({strategy:"fixed",placement:M,whileElementsMounted:(...ee)=>J2(...ee,{animationFrame:m==="always"}),elements:{reference:b.anchor},middleware:[tE({mainAxis:i+R,alignmentAxis:o}),l&&nE({mainAxis:!0,crossAxis:!1,limiter:d==="partial"?rE():void 0,...V}),l&&iE({...V}),oE({...V,apply:({elements:ee,rects:fe,availableWidth:Oe,availableHeight:pe})=>{const{width:Qe,height:Se}=fe.reference,xe=ee.floating.style;xe.setProperty("--radix-popper-available-width",`${Oe}px`),xe.setProperty("--radix-popper-available-height",`${pe}px`),xe.setProperty("--radix-popper-anchor-width",`${Qe}px`),xe.setProperty("--radix-popper-anchor-height",`${Se}px`)}}),P&&sE({element:P,padding:s}),hE({arrowWidth:E,arrowHeight:R}),p&&aE({strategy:"referenceHidden",...V})]}),[K,w]=Xd(B),se=Gt(h);Zt(()=>{Z&&(se==null||se())},[Z,se]);const Ee=(Re=X.arrow)==null?void 0:Re.x,z=(Pe=X.arrow)==null?void 0:Pe.y,Me=((le=X.arrow)==null?void 0:le.centerOffset)!==0,[We,Te]=v.useState();return Zt(()=>{y&&Te(window.getComputedStyle(y).zIndex)},[y]),f.jsx("div",{ref:O.setFloating,"data-radix-popper-content-wrapper":"",style:{...F,transform:Z?F.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:We,"--radix-popper-transform-origin":[(Ce=X.transformOrigin)==null?void 0:Ce.x,(Q=X.transformOrigin)==null?void 0:Q.y].join(" "),...((U=X.hide)==null?void 0:U.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:f.jsx(dE,{scope:n,placedSide:K,onArrowChange:j,arrowX:Ee,arrowY:z,shouldHideArrow:Me,children:f.jsx(Ke.div,{"data-side":K,"data-align":w,...g,ref:S,style:{...g.style,animation:Z?void 0:"none"}})})})});Jd.displayName=Ta;var Hd="PopperArrow",mE={top:"bottom",right:"left",bottom:"top",left:"right"},Ud=v.forwardRef(function(t,n){const{__scopePopper:r,...i}=t,a=fE(Hd,r),o=mE[a.placedSide];return f.jsx("span",{ref:a.onArrowChange,style:{position:"absolute",left:a.arrowX,top:a.arrowY,[o]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[a.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[a.placedSide],visibility:a.shouldHideArrow?"hidden":void 0},children:f.jsx(uE,{...i,ref:n,style:{...i.style,display:"block"}})})});Ud.displayName=Hd;function pE(e){return e!==null}var hE=e=>({name:"transformOrigin",options:e,fn(t){var b,y,x;const{placement:n,rects:r,middlewareData:i}=t,o=((b=i.arrow)==null?void 0:b.centerOffset)!==0,s=o?0:e.arrowWidth,l=o?0:e.arrowHeight,[u,c]=Xd(n),d={start:"0%",center:"50%",end:"100%"}[c],p=(((y=i.arrow)==null?void 0:y.x)??0)+s/2,m=(((x=i.arrow)==null?void 0:x.y)??0)+l/2;let h="",g="";return u==="bottom"?(h=o?d:`${p}px`,g=`${-l}px`):u==="top"?(h=o?d:`${p}px`,g=`${r.floating.height+l}px`):u==="right"?(h=`${-l}px`,g=o?d:`${m}px`):u==="left"&&(h=`${r.floating.width+l}px`,g=o?d:`${m}px`),{data:{x:h,y:g}}}});function Xd(e){const[t,n="center"]=e.split("-");return[t,n]}var gE=Wd,bE=Vd,yE=Jd,vE=Ud,xE="Portal",Zd=v.forwardRef((e,t)=>{var s;const{container:n,...r}=e,[i,a]=v.useState(!1);Zt(()=>a(!0),[]);const o=n||i&&((s=globalThis==null?void 0:globalThis.document)==null?void 0:s.body);return o?Uo.createPortal(f.jsx(Ke.div,{...r,ref:t}),o):null});Zd.displayName=xE;var wE=Symbol("radix.slottable");function kE(e){const t=({children:n})=>f.jsx(f.Fragment,{children:n});return t.displayName=`${e}.Slottable`,t.__radixId=wE,t}var SE=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),CE="VisuallyHidden",Ei=v.forwardRef((e,t)=>f.jsx(Ke.span,{...e,ref:t,style:{...SE,...e.style}}));Ei.displayName=CE;var zE=Ei,[Pi]=pn("Tooltip",[Fd]),ji=Fd(),Gd="TooltipProvider",AE=700,Wo="tooltip.open",[EE,Ma]=Pi(Gd),Kd=e=>{const{__scopeTooltip:t,delayDuration:n=AE,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=v.useRef(!0),s=v.useRef(!1),l=v.useRef(0);return v.useEffect(()=>{const u=l.current;return()=>window.clearTimeout(u)},[]),f.jsx(EE,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:v.useCallback(()=>{window.clearTimeout(l.current),o.current=!1},[]),onClose:v.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:v.useCallback(u=>{s.current=u},[]),disableHoverableContent:i,children:a})};Kd.displayName=Gd;var br="Tooltip",[PE,Ni]=Pi(br),Qd=e=>{const{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,l=Ma(br,e.__scopeTooltip),u=ji(t),[c,d]=v.useState(null),p=ju(),m=v.useRef(0),h=o??l.disableHoverableContent,g=s??l.delayDuration,b=v.useRef(!1),[y,x]=yr({prop:r,defaultProp:i??!1,onChange:E=>{E?(l.onOpen(),document.dispatchEvent(new CustomEvent(Wo))):l.onClose(),a==null||a(E)},caller:br}),S=v.useMemo(()=>y?b.current?"delayed-open":"instant-open":"closed",[y]),P=v.useCallback(()=>{window.clearTimeout(m.current),m.current=0,b.current=!1,x(!0)},[x]),j=v.useCallback(()=>{window.clearTimeout(m.current),m.current=0,x(!1)},[x]),C=v.useCallback(()=>{window.clearTimeout(m.current),m.current=window.setTimeout(()=>{b.current=!0,x(!0),m.current=0},g)},[g,x]);return v.useEffect(()=>()=>{m.current&&(window.clearTimeout(m.current),m.current=0)},[]),f.jsx(gE,{...u,children:f.jsx(PE,{scope:t,contentId:p,open:y,stateAttribute:S,trigger:c,onTriggerChange:d,onTriggerEnter:v.useCallback(()=>{l.isOpenDelayedRef.current?C():P()},[l.isOpenDelayedRef,C,P]),onTriggerLeave:v.useCallback(()=>{h?j():(window.clearTimeout(m.current),m.current=0)},[j,h]),onOpen:P,onClose:j,disableHoverableContent:h,children:n})})};Qd.displayName=br;var qo="TooltipTrigger",Yd=v.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,i=Ni(qo,n),a=Ma(qo,n),o=ji(n),s=v.useRef(null),l=ot(t,s,i.onTriggerChange),u=v.useRef(!1),c=v.useRef(!1),d=v.useCallback(()=>u.current=!1,[]);return v.useEffect(()=>()=>document.removeEventListener("pointerup",d),[d]),f.jsx(bE,{asChild:!0,...o,children:f.jsx(Ke.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:l,onPointerMove:De(e.onPointerMove,p=>{p.pointerType!=="touch"&&!c.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),c.current=!0)}),onPointerLeave:De(e.onPointerLeave,()=>{i.onTriggerLeave(),c.current=!1}),onPointerDown:De(e.onPointerDown,()=>{i.open&&i.onClose(),u.current=!0,document.addEventListener("pointerup",d,{once:!0})}),onFocus:De(e.onFocus,()=>{u.current||i.onOpen()}),onBlur:De(e.onBlur,i.onClose),onClick:De(e.onClick,i.onClose)})})});Yd.displayName=qo;var jE="TooltipPortal",[OP,NE]=Pi(jE,{forceMount:void 0}),Wn="TooltipContent",_d=v.forwardRef((e,t)=>{const n=NE(Wn,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i="top",...a}=e,o=Ni(Wn,e.__scopeTooltip);return f.jsx(fi,{present:r||o.open,children:o.disableHoverableContent?f.jsx($d,{side:i,...a,ref:t}):f.jsx(TE,{side:i,...a,ref:t})})}),TE=v.forwardRef((e,t)=>{const n=Ni(Wn,e.__scopeTooltip),r=Ma(Wn,e.__scopeTooltip),i=v.useRef(null),a=ot(t,i),[o,s]=v.useState(null),{trigger:l,onClose:u}=n,c=i.current,{onPointerInTransitChange:d}=r,p=v.useCallback(()=>{s(null),d(!1)},[d]),m=v.useCallback((h,g)=>{const b=h.currentTarget,y={x:h.clientX,y:h.clientY},x=LE(y,b.getBoundingClientRect()),S=OE(y,x),P=FE(g.getBoundingClientRect()),j=WE([...S,...P]);s(j),d(!0)},[d]);return v.useEffect(()=>()=>p(),[p]),v.useEffect(()=>{if(l&&c){const h=b=>m(b,c),g=b=>m(b,l);return l.addEventListener("pointerleave",h),c.addEventListener("pointerleave",g),()=>{l.removeEventListener("pointerleave",h),c.removeEventListener("pointerleave",g)}}},[l,c,m,p]),v.useEffect(()=>{if(o){const h=g=>{const b=g.target,y={x:g.clientX,y:g.clientY},x=(l==null?void 0:l.contains(b))||(c==null?void 0:c.contains(b)),S=!BE(y,o);x?p():S&&(p(),u())};return document.addEventListener("pointermove",h),()=>document.removeEventListener("pointermove",h)}},[l,c,o,u,p]),f.jsx($d,{...e,ref:a})}),[ME,IE]=Pi(br,{isInside:!1}),DE=kE("TooltipContent"),$d=v.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,l=Ni(Wn,n),u=ji(n),{onClose:c}=l;return v.useEffect(()=>(document.addEventListener(Wo,c),()=>document.removeEventListener(Wo,c)),[c]),v.useEffect(()=>{if(l.trigger){const d=p=>{const m=p.target;m!=null&&m.contains(l.trigger)&&c()};return window.addEventListener("scroll",d,{capture:!0}),()=>window.removeEventListener("scroll",d,{capture:!0})}},[l.trigger,c]),f.jsx(Sa,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:d=>d.preventDefault(),onDismiss:c,children:f.jsxs(yE,{"data-state":l.stateAttribute,...u,...s,ref:t,style:{...s.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[f.jsx(DE,{children:r}),f.jsx(ME,{scope:n,isInside:!0,children:f.jsx(zE,{id:l.contentId,role:"tooltip",children:i||r})})]})})});_d.displayName=Wn;var ef="TooltipArrow",RE=v.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,i=ji(n);return IE(ef,n).isInside?null:f.jsx(vE,{...i,...r,ref:t})});RE.displayName=ef;function LE(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return"left";case i:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function OE(e,t,n=5){const r=[];switch(t){case"top":r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case"bottom":r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case"left":r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case"right":r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function FE(e){const{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function BE(e,t){const{x:n,y:r}=e;let i=!1;for(let a=0,o=t.length-1;a<t.length;o=a++){const s=t[a],l=t[o],u=s.x,c=s.y,d=l.x,p=l.y;c>r!=p>r&&n<(d-u)*(r-c)/(p-c)+u&&(i=!i)}return i}function WE(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),qE(t)}function qE(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const i=e[r];for(;t.length>=2;){const a=t[t.length-1],o=t[t.length-2];if((a.x-o.x)*(i.y-o.y)>=(a.y-o.y)*(i.x-o.x))t.pop();else break}t.push(i)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const i=e[r];for(;n.length>=2;){const a=n[n.length-1],o=n[n.length-2];if((a.x-o.x)*(i.y-o.y)>=(a.y-o.y)*(i.x-o.x))n.pop();else break}n.push(i)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var VE=Kd,JE=Qd,HE=Yd,tf=_d;const UE=VE,XE=JE,ZE=HE,nf=v.forwardRef(({className:e,sideOffset:t=4,...n},r)=>f.jsx(tf,{ref:r,sideOffset:t,className:yt("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...n}));nf.displayName=tf.displayName;const GE="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAYAAADL1t+KAAAQAElEQVR4Aez9B5xlyXUehn9f3Xtf6Nw9OYed3Z2ZzQkbsIudxS4WgQCINAQDQIAguQwgmABBTJCGFiWRkkjbEilKlESTFGmKgkVbf8uURMsWbekn0Ur235IogERcYPPszHR86QZ/596+3a+7X/f09HTPdKjb99yqOnXqVNWpuufUqXrvtYO/vAS8BLwEvAS8BLwEtrwEvEHf8kPoO+Al4CXgJeAl4CUAbKxB9xL2EvAS8BLwEvAS8BK4IRLwBv2GiNlX4iXgJeAl4CXgJbCxEtjKBn1jJeO5ewl4CXgJeAl4CWwhCewUg84tNCa+qV4CXgJeAl4C21ICG2uKdopBz655bvgCXgJeAl4CXgJeAusqgY01RTvFoK/rkHhmXgJeAl4CXgLrIYGN9VjXo4VbiYfz4rwpw+Ur9RLwErhBEvA67gYJek3VbKzHuqYmbeFCzotzC4+eb7qXgJfAVSXgddxVReQJbqYE1nHF6bfcb+ZAblTdnq+XgJfAVpXAOqr3rSqCHdbudVxxeoO+w+bOlu6uV3Vbevh841clgXVU76uqzxNtIwl4g76NBvMGdeXmVeNV3c2Tva/ZS8BLYNNLwBv0TT9EvoFeAl4CXgJeAl4CV5eAN+hXl5GnuJES8HV5CXgJeAl4CaxJAt6gr0lsvpCXgJeAl8AmlID/nMkmHJQb1yRv0G+crH1NN18CvgVeAttWArkt958z2bbju5qOeYO+Gil5Gi8BLwEvgU0uAW/LN/kA3YDmeYN+A4Tsq9ghEvDd9BLwEvASuIkS8Ab9JgrfV+0l4CXgJeAl4CWwXhLwBn29JOn5eAlsrARuJPf8OLa7wiWI7kwf9xLwEtgUEvAGfVMMg2+El8CmksCS49gliE3VXN+YWQn4ddesIHZq4A36Th15328vgW4J+Pi6S+AmWFe/7lr3UdxaDL1BX/N43YTXdc1tvYkFvZhuovB91TdTAjvVuvpX/ubNOm/Q1yz7nfq6XqPAvJiuUWDbktx3agdJwL/yN2+wvUG/ebL3NXsJeAl4CXgJeAmsmwS8QV83UXpGXgJeAjdFAjuhUr+PvRNG+br76A36dYvQM/AS8BLwEthgCfh97A0W8PZg7w369hjH7d0L751s7/Hd3L3zrfMS2DIS8AZ9ywzVDm6o90528OD7rnsJeAmsVgKbyaB7P2y1o+bpvAS8BLaHBLZ9L7xav5FDvJkMuvfDbuTI+7q8BLwEvAQ2XAJerW+4iLsq2EwGvatZPuolsPklsBl9j83Yps0/ktu2hb5jO0wC3qDvsAH33V0/CWw630PWfNO1af3E7Tl5CXgJXEUC3qBfRUA+20tgy0jAW/MtM1TboqG+E5tOAt6gb7oh8Q3yEvAS8BLwEvASuHYJeIN+7TLzJbwEvAS2ggR0BLEVmunb2FMCHrkGCXiDvgah+SJeAl4CW0AC/ghiCwySb+J6SsAb9PWUpuflJeAl4CXgJbD5JbBNW7gdDbrfaNumk9V3y0vAS8BLwEtgeQlsR4PuN9qWH2+f4yXgJeAl4CWwsRK4YdwXe6/b0aDfMGH6ijabBBZP783WPt8eLwEvAS+B9ZPAYu/VG/T1k63ndNMlsHh63/QG+QZ4CXgJeAmsrwRW4OYN+grC8VleAltIAlfZnrhK9hbqqG+ql4CXQG8JeIPeWy4e6yWw1SRwle2Jq2Rvtd769noJrCCBnbp8XQeDvoJUfZaXgJfAqiWwU5XQqgXkCb0EVimBnbp89QZ9lRPEk3kJbLQEdqoS2mi5ev5eAjtFApveoO+UgfD99BLwEvAS8BLwErgeCXiDfj3S82W9BDahBPzW/SYcFN8kL4EbIIEdbtBvgIR9FV4CN1gCfuv+BgvcV+clsEkkcJ0G3fsCm2QcfTPWLgE/idcuO1/SS8BLYBNJ4DoNuvcFVhpLn7clJOAn8RqGya+C1iA0X+T6JeAn3ooyvE6DviJvn+kl4CWwTSXgV0HbdGA3e7f8xFtxhLxBX1E8mznTt81LwEvAS8BLwEtgXgLeoM/LYmnMb+8slYnHeAl4CXgJeAlsSgl4g77SsOzg7Z2VxOLzvAS8BLwEvAQ2nwS8Qd98Y7KgRX6TYIE41pTwMlyT2DZZIT+Km2xAfHM2oQS8Qd+Eg9LdpO25SdDdw42PexluvIw3vgY/ihsvY1/DVpeAN+hbfQR9+70EvAS8BG6ABPweyQ0Q8nVW4Q36dQrQF998EvAt8hLwElh/Cfg9kvWX6Vo4rrSw8gZ9LRL1ZbwE1iyBlV7HNTP1Bb0E1iwBPyPXLLqbUnClhZU36DdlSHylW1cC19vylV7H6+Xty3sJXLsEtumM3LzrlA1smTfo1z7/fQkvAS+BNUlgAzXZmtrjC21jCWzedco1t2z174036Nt4RvuubT0JbO8WX7Mm297i8L3zEliVBFb/3niDviqBeiIvAS8BLwEvAS+BzS0Bb9A39/j41nkJrFECvbbp1sjKF/MS8BLYEhLwBn1LDJNvpJfAtUpg9dt018rZ03sJeAlsTgl4g745x8W3yktgy0nAN9hLwEvg5krAG/SbK39fu5fAlpKA38jfUsPlG7vDJOAN+g4bcN9dL4HrkcDN28i/nlb7sl4CO0MC3qDvjHH2vfQS8BLwEvAS2OYS2HIG3W/5bfMZ6bvnJXATJOCr3OIS8IYhH8AtZ9D9ll8+bv7hJeAl4CXgJVBKwBuGXBJbzqDnrfYPLwEvAS+BLSOBbd9Q7x9vkiH2Bn2TDIRvhpeAl4CXwBaVgPePN8nAeYO+SQbCN8NLwEvAS2AtEvBlvARKCXiDXkrChztPAn6jcOeNue+xl8A2loA36Nt4cH3XriIBv1F4FQH5bC+BGyqB61tiX1/pG9rRjarMG/SNkuz68fXTdP1k6TltAQn4Cb8FBmljmnh9S+zrK70xPbrBXL1Bv8ECX0N1fpquQWi+yNaVgJ/wW3fsrrXlnn59JeAN+vrK03PzEvAS8BLwEvASuCkS6GnQ/ZbXDRsLL+obJmpfkZeAl8DOksD26+3VDEZPg+63vG7YRPCivmGi9hV5CWw1CVxNfW+1/vj2Xq8ErmYwehr0663Ul/cSyCXg9VEuBv/wElibBK6mvtfG1ZdaHwlsRi7eoG/GUdkubbpJ+sivI7bLBPL98BLwErgWCXiDfi3S8rRbQgI3aR2xJWSzEY30C6iNkKrnub4S2GqzdG299wZ9bXLzpbwEvARmJeAXULOC8MEmlsDOmKXeoG/iKeib5iXgJeAl4CWwrAR2htu9bPeXZqzWoC8t6TFeAl4CXgJeAl4CN08CO8Ptvgb5eoN+DcLypF4CXgK9JOAdpV5S2aI4P5hbdOCs2ZvDoFtLPHgJeAlsUQl4R2mLDlyvZvvBlFTyVU3+UGIL3d6gb6HB8k31EvAS2FAJbEEVvqHy2LHM81VN/thaItgJBv0GjYjXBTdI0L4aL4GNksAWVOEbJQrPdytKwBv0dRu17aQL/OJk3aaFZ+Ql4CXgJXCDJOAN+vUKeluW306Lk205QL5TXgJeAl4CSyTgDfoSkXiEl4CXgJeAl4CXwNaTgDfom3vMfOu8BLwEvAS8BLwEViUBb9BXJSZP5CXgJeAlsD4S8J9QWR85blIuN3R4F1fmDfomnRU3pFm+Ei+Ba5XAYg1yreU9PfwnVLb1JLihw7u4Mm/Qt/Xc8p3zElhnCSzWIOvM3rPzEvASWLsEvEFfu+x8yZUl4HO9BG6gBPzWwQ0U9taraodMD2/Qt97U9C32EvASWCIBv3WwRCQeMS+BHTI9bo5B3yGrpfnZ5GPrLgHP0EvAS8BLwEtggQRujkHfIaulBZL2CS8BLwEvgatKwHs7VxWRJ1hWAjfHoC/bHJ/hJbApJLCxjfA6e2Plu6W5e29nSw/fTW68N+g3eQB89dh55s3r7M0/7TdwVm4g680vV9/CDZWAN+gbKl7PfBUS2HnmbRVC8SQ3WQIbOCs3kPVNFpqv/mZLwBv0mz0Cvn4vAS8BLwEvAS+BdZCAN+jrIETPwktgE0nAN8VLwEtgh0rAG/QdOvC+214CXgJeAj0l4A/5e4plKyC9Qd8Ko+Tb6CWwWSTg27H9JeAP+bfsGC8x6H5xtmXH0jfcS8BLYCdIwCvpnTDKa+rjEoPuF2drkqMvtEMl4HXrug68Z7YaCXglvRop7UiaJQZ9R0rBd9pLYI0S8Lp1jYLzxbwEvATWXQLeoK+7SD1DL4GVJeC9+pXls2G5nrGXwDaXgDfo23yAffc2nwS8V7/5xsS3yEtgO0jAG/TtMIrbpg/ed902Q7nzOuJ77CVw0yXgDfpNHwLfgHkJeN91XhY+5iXgJeAlcG0S8Ab92uTlqb0EvAS8BG68BHyNW08CN2HD0Rv0rTdNfIu9BLwEvAS8BDa7BG7ChqM36Jt9Uqy2fTdhNbjapnk6LwEvgU0tgW3euJ2jHL1B3y5T+SasBreL6Hw/5iTAC4A7fx7BeSAQlotASX97CWw1Cewc5egN+labm769XgLXKIEHHnggeu5d7+r70888M/wTb33fgT/1lrfc+mNPv+2hTz/57FsuPPWWd3/miXPf/JknnvjQZ5588rtfPXv2R8f+39s/NXrrLZ987tZbPvFdp05+73ccP/rdHzt16mPfcvjwhz507Nj7v/nYsW/40YceffqH3vSmN/3oM8/c94m3v/2W73/HO/b/8HveM3Lho+dqap4tBBT4+zoksH1keB1C8EWvTQLeoF+bvLY0tdcQW3r4lm38OSB818GDfe89fWjXO0+ePPr+U6fu+KaTtz7zweO3fM/Hbr3tr975yqX/vva5L/9PE//lS//0yv/7H/73mf/4J/+s88df+j1+5fnfbX/pq38/+erXfj19/qVfxfMv/OKuqeZf3Nts/fn97VQQ//zBTvJXD4K/eDTDLx/Osl89mOK/39tq/wO89OI/dF978R9OfO5P/pfp//xHv9/4o8/9s4n/+J9///l//dL/9NzZs7/x3N13/8xzD9z3fR+8/fbzHzh72xPvvv3229935syB82fPDtgCQ53x01FCWOHeOW7lCkLwWdcmAXdt5OtD7d/k9ZHjtXLxGuJaJbY56S9cuOB++Ny5kR964om7v+3YsfceP3r8kwfq9Z870On/6yfofv1Y5n7nSIbfOJJkP797uvXxvc32B0anZ96yt508fCDD6QNJenRsprF7YGJ8YLjVrI622xVBNDA9HQ23W+FQsxkMtZrhYLMVDrc74Wi7E42042hXnEa7M1T2M6gONVr9IzONkaMZDhyJefJIK7nj4Ezrof2TjbeOjk99aOTSlU8PvXbprxxrJ79yvJ391q1p+tvHk+RXDsXpzz42MfHDHz916t0fk5F/z73HR2ybf3NK2rdqC0jAN7FLAjfFoHvD0jUCPuolsIwEzHBfOH9+4Gfe+c5DP3HuLfd+6qFHvumH7r77Jy7+9m//zzNf+cq/a3zxy/96X5b9g/1If1bG9gdGOq1vYELePAAAEABJREFUGml3zg2123cMt9sHhuJO/1gGN+aIaqOBSmsalWYD9aSFfqQYFr7WaaEvjtGfxBhIM8U7GOgU0Bd38nS900al1UBNocUL2lhlOqjMzKDemEat2UR/u4mhTowx8dqdZJGgb7jRGBlrto7sbnfu29tK3rmv3fn4gST7SweT7H843En+1al2/V9dvOvMb/7kk4//6I89fe5tn37mmTMX3vWu3drGry4jFo/ekhLwbtyNGDZ3IyrxdXgJeAlcXQLmqT57993933rXXSf/zNNPv6Xz+//bp2b+6I//+tQff+m3s698+Xeil1/+68OvT3xm92Tj7Ydb6S1H4frkObNfBrjeaqHeaiKS4Q0NZFzDTgOdmXEEMuBRkKBeC1CNgAxttDrTaLWnkMmgOxnuMIvRHznUpBGG6hUYjNQiDFdDDAnqQYZBhRUtBIy2wgyI2wiDFAgThQkCxnBZG4ybgOp2rRmEnSZqorM29qmu/nYLg2rrcKcTjrU7Y/smG2cOT7Q/WP3SCz/tvvC1v+O+9NW/N/XFL/3t6quv/syPPP7kez/57LtOf78WNba4gb+2sASyrdn2G95qXleN7rpK+8JeAl4C1yMB6mx58IOnjtzykVvPfMPLd9xx4bZW+3f3NFv/jK9e/N34a8//7OD01IeHGs0nZLhvG+sku0bipDbUSTnU7sgjbslLjgWpIJbhFC5O0ZfG6MsS9MnjHo4i7O7vw56BOg6MDuPY/t04e/IEHrnvLrz58UfxzOOP4SmFTz/xRrz13Jtg4TMK3yJ4+k1P4Okn3yT8OTzz5BN461Pn8PSb3ohzjz6Mc489gicevB/333UW9525HWdOHcOJg/uxf3QQI/UqBlyGWtpBXQuFetJRPEFVYUXG3cC8/f52G33TTexKU6edhYE9cefgrji+u2988hvDi5c+yRdf+rszX/rj32v/58999pV/+r/+1A8+/dan3nL77QfffuqU997hr+0pgey6uuUN+nWJb0sV5pZq7fZtrHv08OH6B287cc83Hzz4seNx8ktH4+i3DiTtX93baP7pPe3Os/va8Yn+K+MDe5OUw9rmHpRnWxfUZBBrMtY1JIjkIUfyliPlm9HcLW/6+O5RnDl6CA/cfisev+9uvOXRN+Dtb3wU5+6/F2+69148cvoM7j1+EmcOHMKx4VHsqdYx2leVNx6hFhAQ/2oYIJPHnogv0kS4GKniQZbK8+6gorBfNIPy5vcM9OHI8BBO7BrD7Qf2455bTuDRO+/CUw8+hKcffRTPPv44nnr4Edx35gyO7duD0YE6+sIQUZaB4k3EqIRER9v1YdZBVca/KoM/lLQxGre4N23172vPnNjXmHxr/eUXfiz54z/6teOt9n93MM3+qw8dv+Vt7zx8+NDZs2crAAh/eQlsPQmse4vdunP0DDerBLLN2rCd0K7vP39u4LlHHzj9gWOHP3ZL2vlbezv4/f3g3+ifaXy4v9V+eKDZ2tvXbFb6Ww30aeu8T0a0zwyszrfNiPcxRZ/e1v5KgD2jQzh1/AjuPXsWb3v6HJ6VJ/3EGx7CfWfvwG1Hj+DA6BhGZKzrDBAlqbbcY4UZQhnRijbcqzKo9t0yi1Pn3ZABL0Mz5lmcyKgXkOpMPE+LTyZaJ4MuGwyDyM7gnUNN9rSeQgYZiNIUoWgqqiNSXf1RBQf27MHdauuTb3wjnjn3JN702KO47647cfstJ7F3zy4M1CJt0XeARhN1lR2NQgwqjKanJYsGBloNjnU69TFmR0fjzrMDjcanR+P27xyKov/5zrh94d133f6BZ2+//cS548drO2Eubfc+crt3cAP75zaQt2ftJbCjJWAG5j1HTt3yTQePf0v7Xz//39VeHP/dI0n0C4fC+jcPpOneapKE/YEMorztijxvyohDZ8yUIY9kwOuRw3B/DYf278Ndd5zF4zKET2kL/JGHH8IdZ0/jxLGjqMqYVgh57AWIXW5sKe+dWQKK9xxoGzwT6KAbmfhDNDZAmR5zIEOcdUFHiwCDJEmQyliXeSqS36EDDJzqceIXIIMTWGhOv7UnU9/azRba0w1kOu+vVSLskVd/9OAh3HnbaTzx8KN45k3ncP89d2Pf6CjMg6+orv4gwGAY6Rw+RtaYQaCFTl1tG9Aioh8Y2pXxvuON5EdPN/jLdyL8e48ePPxzF975znM/8b73HZj9alzeRv/YWhKwubi1Wrx5Wuu6m+Ljm1cC0tnr0rj14rMujdmeTPiu227b/U233P7UCVb/3OEg+B+PBtW/vTfj+4eanTP9jcZgNDUTVGaaGAkDUIYKzWk4GfKaDOLugT7ccuQQHrz7TrzpjY/lHu1D99+DY4cPYEjGPZDhpDzluNlAe2Y637p2SQb7bFokU1qRV16VEaxFFVSrwjjIqBOUIScVCjJ51omMbpyleiK/zFBbhCxoyCKMXIBAhrUMQzo4GVQLDdQcGAQgAjqEoq24AFEYohqEqAjUCjgtDCDPP5HHT7U3VFstf6hWQ1386ip3RJ78w/fdqx2HN+FxbdvfddspjCh/IIpQl5avxhn6xGeQwACAequD3Smq+zvJrl2Nxhv4wss/cOXzf/Jbzee/9ttHL138ofc/cNfpc+fOhfCXl8AOkYDbIf3c8t2UPluXPqwXn2UaI1W7TM72RvPtD58a+va7Tj/6A3fc81NHmsnfP96Mf2t/o/2DI43mnf2tmb5Kc4ZVed7DUYDBAKjLU420pTwkN/bgyHD+QbVH77sHD997D+7QVvS+sTH0BQ7NyXG0pqdgBjyTB+/kuQbyUp0kHcjLzg2t3mJqMWCecKo6Ep1DG8SqQ2Qw77nwxmXAVca88xJS8TMwg25QxqE6DDLlw7bbF4WWZ5BvySfyoJXPVLNLccxCpq38VAsVKh2pIRU1uqowUDrVgqQzNYPWxDic2mneeEWGPpEXn2qxM6gFyeHR3Xjs3vvw1scew9MPP4y7jh3DMAMEKldR+QHECBN5/c0JVDoNjGRtdyBJD+6eab7pFtZ+etfrjd88+MWv/tl3HT/+yLmzZ20NoNo320TchE3abCLa/O3ZNIPobpysfE07QALZDujjgi7+xW/91tGfed8737P/tfi/HpuK/4e9nfjPHmH01B66A7uBymC7wxGVGJZxrmUdGa+GDHqAWw7tx0N33YE3PfQgHrjzDtx65DB2DfRrCx3IZATjGRm7mQYila3Kg626MPeEUxl1M9ZmIOuVqogTmCGVA45AXrIZePOKzUs3gBl6GWcz1gZONCQRyJvO44AMPoXFAjB+JQQaVYurBdrOd4hUNswB8sQDVNS2yDxx88wFlmdtMbCdAmuPlTcDb+BSyHuP0F+roh4G2l3QgqDVBrUAsPP9ihYdkbbp7RgikrFno4E+AKcOHsAzjzyMtzz2MM5ou96+ojcUZfLwYwzr3MHO3WsNbc1fvMj9GfoOAg8cDSs/doyV3zoy0/nL7z1x6zNvP3VqSKw20S3hbqLW+KasSQKbZhDdmprvC3kJ7GAJ2I+eXHjHe2/7uaff/cnJf/t////cf/rCr52Is28/kGYHa5NTgZu8gqAxiX6XoI8x2JzUOXATh0aHZcTvxJOPvwF3nbkNI8MDMmgOdRnYUNvfgc6p7ezZjHjFUYaSMC87iWNA5+FONNSWc9Jpoy0PtdHQVj1DZPJaDSDDaqFBuaXuMgcDppwLOYszvNVnfOdCq0MedCaDamDevYHlW93mfZtRzhcW7Q5o3rvancoYW7vSdhsFdJDISE9duYzp8StoT04i1o6EgcVbExNoXLmCrNVC2mzmofU/lKcfqL+heJpMLN2v7fsRLV4GtS1fU/6Y4vecOol3PfUUbjt6FLu1EArEJ5ueyL8aN6AzAPPgq1PTGOy0w5E4ObEnyb5rT5L85q5O+mvvP3byHW/ff2oP/NVLAuyF9LitIQG3NZp59VZ6Ci+BjZbA+fPng0+/8anbqy9d/vGJP/nS373y+c/9ub3t+PG+y1eGxlpxOCCjYp9MH9a2en9IbZkDtxzen5+Hv+WJR2Fb6ofGRlGRUa7I6AxWq6io0aE86BzkI4cCJwNvXrd9ujySx2vxWEbOtrgDGTXzzCOdKzvnkMgAayMdmalhRxiOVEJGG7rm0orDtsQFTlvbmQyxpY23AZS2+tBJYJC1Yxg0JqYwMz6JqSvjmLh0GVcuvo5Lr76Giy+/ksPLL74Eg1e+/iIMXvr6C3j5hRfx6gsv4bUXX8aV117H+MVLuKRylxW/9OpFXHrtVbwuHgYvifaFrz2PF5//Kr721a/g61/5Mr72la/gxa99DRdfehlXXn0Fl19+WTxeQWv8shYG40imJxFqF2MwcLj75Ak8ds/d+Zb8w3feieN792BIXj+mJjDogHBmGrXWDAeTdrgb2d4D5HsOk3/rRC37xY+cOPGmTz37bL+JxsOcBDaNtznXIh9ZtQTcqik9oZfADpWAKf3vv+eex0f/zX/4G9Nf+co/ca+/9hMD7ZmHRhDXg5kpDLsA9unroN2AfT/71LGDePLRh/H0U0/grrO34/jB/eivhAjkxVZlzPtsy1mGsyaYM+CSrW1Lm3E1yAoLjcSMr+KZPGwVhRzUHGceN2c980xhIppYfFNQxl1eubz1wEVwCg1CxQN58wYOgbbNQ4Fe/zhB3GxhZmIS469fyo30KzKyJUzIGE++fhnTVyZ0nj+Njs63k2YbaGnXQO034w8tBigz4FT3HBAItMAwUACDgEBA5hA6oIRqFKKiRVAUODgg39Y3WdjRQqs5g7a23FvytqfHxzF96RImL70uY/8iXvzCF/Hyf/kiOi9dgptsYk9tEHedOIE33ncfHrr3LhzaPabt+Ax9YtaPDvriFgbaTY4krYO7ks4H9qbZ35/8whd/84cfeeTtP/YN3zCqqv3tJbClJeA2W+u52RqUt8c/dqIE7KdYf/Duu+9sfuGLfyZ49eKvjrZa37E76Rzvm5mOgqlxBq1p9MkIxc1pDNai3AN/+1NP4q5bT2FABtxpa5xmhXV2DoUuS+EsFEQypLadHMoQy97AoFvGJEHKOGcZUllxg0Tb0KnKWdwMaADmRcQCkMV08tgNAhavtRl9KwPzykVr2FTb5NPjEzKIr+CFrzwP86IvvfKajOSVwmA3WoBWBi4VS4HVYxBkgIVOvCxuvCwkkOOhy+JObbZQyfy2NlrfDAyR81BbLDTI1CfbLUglEwvtnN/am+mIgVaXaANk6p5A8gvEJBA+FDjJBtpJ6Ew3MH3xMl5/4QW88tWvY0a7AUNaZN2yfx8eufMMTuwaRZ+OEeyncfvSNvoVl8fuhpPOvn1w3xh//ZVfHP/il3/6U297+u4L/lPxkrC/t6oE7L3cVG3PNlVrfGN2ogTOnz1b+ejxU4+8dvyWX05feOUPRhqtTx1keGq40w7qrQZGZJ1GZVmCpIWh0QE8+OiDePPTT+L4kUOgtt2DVhv2NSvX6chQpxJhilQWMhGkATKfBHMAABAASURBVEEWoIz8JgnzsrshhYNBiSMDMAeVzVTMjLyMO1mm5w2/cnPvN5ILnLQ6aE5N4/JrF4utcW2RT1y+gk67icCpDvGADGWoQhWlzVs2qIQBDNRcedSQ0c7UlywPKUNqAGSwi3oYSCyiwQIwo70AKOK8nJXNYAY8B+FtYVJ++p4kyHlQ72Hg1FaaZBQap47CGIQ6gyiI4HQ0EWu3IX79CiCIJmdwYngM9x87jmNjIxhCinraQSTDHkkGtZkZHmBwYlez8/Hk81/9X8avTP2lz7zjHXd5w27S9bDVJLDpDPpWE+A1tJfL0Xr8ppEAv/n06eO7m8mP7E6yXx1td77jYKW6a6DTcdVWg/YfyqpxG2GngaO7d+HNjzysrd27sXt0DC2d1c5MTiFLOjJoKSiP0zzMUMbLvNZAXrN5zwgcMkEiS5kFIeCITLCcBEjmWWb0KK8VMuTmJTsZsVAG2Kke2W3UZIANLN2YnMBrL72C57/6ZVx+/XWMX76ExtQk7CtkamDePiuvluRGO5I3G1j7xBPyfFMZeYOkI1Mpu0uB1Q8Z8jzMWwSQFC/klxnzPKIHyTxP0ave5DwtWcSd+kUWciELXDcjk6u1w8Cp34lkHEsOtsCoBNq+d0QoQx9orCpa0KTaqq/quOOW3Xtxx5GjONA3gEH1aUR9tm8g9LfbHGl13O5WfLh68fXvmf78l/7G5Ezz2/w2fLfUfXwrSMBthUZukzZKhfTqCXshPe4GSkADwwvvfvepP/3Qw588mQT/+5648zOjnc6ZwXYcRToXDzpNNGfGZRAbOHHkIN78xsfw4NmzGKDOxeWNd6am0NE5dBAEMIPdaLfQTtqo1SqwbekoAcLUIcyUzwBxGKCpM+OZCOg4yBwBZhkL71RpdoGMuG0/wz51rrNqM7iUl2kLhYqKVWW80mYT4xdfw0vPfxUvCC6/9io6jRkYDWyXQMbOvHXzvA0iLSaMn30qPd/mFl/bmjew7XwzlAakGqI67C685652zWVRTbdECZi7SMLK5YsWZVu8hDmiRZHMBUhlaC2EZGXxEhKIXyZGkNBSatGU5fwTedyxjHdqMtLKguqf1gRwkg2Rok9n9HbEkVyZQF8nxa179uPOfYdxqN6Pujz6wSyGtt8xonHb3+n07Ys7j/VdfP2Xpj73ub/7/uNH3mq/vb+omVs/ya3fBd+DpRLQm7EU6TE3UgIyJxtanWe+kgT+wnuf3vXnnnjig80/+dLf4Suv/Jl6Y/rEYByHNXl0VcSwnxy1XzO75/RtePMTj+PuM2dQdSHMiA5WK7BPgvdFVdSiimxnB2YUq311BDLuV65ckf2V0Zn1bM1IWlvsA2wZnYyRgWFkKEVTxLqf2qqXRx6Q8qQjVHUuHwZEprbNTE9i8vLrePHLX8alF19AU15oIHzNaB1yY0552rVKgDBQPTLqiRYmZsTTVLsIMnZhGMI5twCs3YaPoggWWmvMhpIEWYDhDMr+WPxawXj2KlPyTCUPi1toYPGSvjueasESqF21ShWVaoSAyMcgliw6lhc4xO12/vW6wVoVNQTIJqe17e5wcs9BnDqwDyORQ9RqoC/rYEALgIpkG01O9g+2O287Xh/4pWNB8OM/+b73Hbtw4YLDdrm82tkuI7mgH9tngi7olk94Cawsgeeeey768be989HOH7/665XnX/zVgfGJN+3KMDgSBvI4OzLELTGIcfr0Kdx791mcPnkKI/U+uE6KqrZ1gyBCsx0DYYS2bVPL8Dow9xrjRgtKoj4wiIROXrhDIgOfCiDv0jz1KHaopESQAiqE8spmPXILu3GJtvLbOvNtz0xjZmICE5cv4/Kli7APhwVJorPjBJQBo7bJnbxOpwYE2nZuy1NP5HlSBj2UtYtCB9k4sU5hHq0i2kmf1+4pMthX4UpILS1QU9ELSBqLLrD0SjBPakadJMgCLIeSDywDBLqAwhtAOEqm0EIEulySSYbadFffk1YTcacFpzOCuoz7QF8NbRlzW6REGrNEsqHGqq/apzGsoKVjiEHhTxzYiyMH90BWH1PTl+CCGEPV0D48F/RPTt1yFOGPT/3R536j83/+n+//9LvfPQh/bR4JcPM05fpbcv2dcdffCM9hJ0tgC/ad33Lbbbvr//d/+r74S1/+27XxqbcOtlr1MXmE/TJ6WXNKhjbG8UP78aT9Itktt2DX4BAgI2kfMKPoIKMQgIjkxZq3aGCeuYVOhsaFQW782jIy+fm4vGHIaBk4hvKeVZYO9gn3uVeYKQgDKATMGDu1p0IglqGaunI5/0rZqy+9hCuXLqMtj1J2C6kMfSbjbbQizY2ZU12c5RWFIaLciBevurURurpDkiDnwfpAFmkz4iKfu0nOxcsIuRRX5pUhuZBmjq9jXrfVaUDOpjEfOsW7+ZDMk4YPJe9A+U79NaT9Sp3xiTVeU1rM2BgZ3o4SSMJk1dHCKEti9GmHJdBiiPLmh+t1nDx8EIf27ob9Ol06PY5hLYgGdZRyIHBh/8TUG1tf/fp/03nplZ+w4xnxLBqhiL9vogTm16I3sRHrVfX1d8atV1M8Hy+BzS6BC4D75sOH37A3jv/Wnouv/oWxS5fO1jutMNK5a4AEaWMagzpvfeCOM3j4rrswpjPWqt4xM6qRDE+ot8Uhg3nPZiAMIgKGD+jy7ndEH8vAmGdu58BmojPzODNl5JCoJoHObVPFZI8AGWQDOdDyHB2qMjxOBimZmcGlF17E5KsX0RifANodVIJQW+8V1RlpJ8GpNbPAII+nqssgg4OFOh6HgcUNZ2Bxit65EHAycgRUTCYxU98yWL9KMGNpIBGpPmgzQRzUlTKdyegZqMlYDsRdfNMcjG8mOVh56LK4cpSX5eCQgeJpAIWWNrC0QapFjkGmvLycKk0hCvWH6k+m0PpnYRBWYDsNRicSZLYCUsUiQeZiJDp6CCR0W1gF4mve+tGx3bjtwAEc1NiH8uCHkIET4xjJkmCo0z4YvfzyD4//l8//rZ987LEn/qZ2edQFf3sJbBoJFFpo0zTHN8RLoFsC6xd/6x2Hxz5/4vDH9ob8myOd9jtrjUb/kJR5hRlmpsYRyrieufUkHnngfhzeu09b6x1QnpuT4QhSwMCBIOfBDJ21UCwsQG4UCXHKcuOYGxLlZDJgZsiQZkoVt+ESeYcWVsIQ1SiSzSE6jQamdPY+cfF1TL6u7V8Ze6dy9uE6q0/2KDesFhonK29hWZfFDWdg8QJcHmRqYIEv0jmy60Ey75+haI9rgILvNRRYBWnZx5VI1aVc7hYaXRmW8iA51yfLB2wM5sHabeNn4xtpnGvKsp+ZPTQ6gltk2ENt4Y9UIvQDCGemMJSltdEsfYKvvvZLn/sX/+K7f/y9792lLAr87SVw0yXgbnoLfAO8BDZWAnz/8eOnjzeqf/64q/3CSIx7kumZcCpuoBVK7evM+vjhI7jvrntw5tbbsGdkDGY8Uxnbis7HzaiYwrcmBjIOAYo/krmhMIOQA41iHqyMQSyv2sLQBQjNizd3WRAoXpERD4IAZuxbjSYmroxj/PIVTCqckXfe1vmv5Rn/ec5FLCVgYKky38LFYPnXCqSYC0iF11q4i97a0pXMo+RCniRzOVomSQvm0nlCj5JPGQq17G00BssSLMqgFmzaEoCzqmcXT5ELMFDvw67hEdx64haEwkNjMVypoaKxS6emAtds3onJmT8/+fkvXPjBN73p1CK2PuklcFMk4G5Krb5SL4EbIAH7z1rfcsst33ggrP76WIzvCCamBgN5wEO1KvrqNdg568njx3DH7bfh8P59spAZ7J+emAF2INJODAtJwow5aVofIIsQukguSAu14M6Ni4yA9ndz/pEMeTVw2jJ3sMVCR4Z8Utvpl+WNT1y5gtZMw+wLQhl6+5R5t0Ene9dFEuVFsmd7yAJPFuFiepIlal3CvN/iVIaKrum+3vLLVjrbXeNv42CQo7QbQo0X4xRME/SHEW49dgyHRrXQa7VR1UKvP8sQtWPsiqLhaGLqO1svvvo3PvH448989Ny52rL1rUdG3sD1YOR5bFcJuE3ZMT9xN+WwbKVGfftttx06FVT+3MEOfnF3kr4haExXK0wx2F9DZ3oK/Snw9Bsewa1HjmGgVtdWdxNxswnap6a17Uop9kDGl2RhzBEAmVtgLM0YQCY/Ex1mLzMM3VCR8bZPXTOJgTRGQEBLBRnuaVx5/SIuXbyImYnJ/D+T2VmuGfFAxtzpcN34QO2gtWcWsOgixVA4kiCpWHGTzNNkERbY+adbBj9Pce2xQh7LlyOLtpDsSWTlS1hMYPjFOHIpH5IL+k0uk8YsXnItZWzyDlWJRhqhtubDONPRSwtBqwX7IaFbDx3EoPJrcYwRG5+pSY6Frl6bmT6XvPjKf12fuPyB84cP10WyMbe1dWM4e67bRAJuU/bDT9xNOSxboVHyyqsfPXnr+8bayW/uarW/b6jdOsipKxiu6ZzapWhqO/vMyZN49rHHMRJW4KSc42YLmTwv854p78vOtt2swnfqNEmQROaolOyyAjMwiZR+eWabZ3Q9mAG0eRwnsK32KAhBeXwzE+Ow/z42cel12G+qF3Wn+YfdjAYy4InaBPMSVSepyoC8frKIY/Yi2RM/m71ikM3mWj9KmEUtF5RFFuRb2W6EpQ26ccvFyaL93fmrLdtdplecXMq7F50tnkiNrcbdZG/1m2EPlLbPT0QKqyqYzTQxJG/99NFjODAosz49iZp2cAItDnWu7gZbrTtqlyd/fqha/YsfPHXqlguATR2V9LeXwI2TgJ90N07WvqYNlsD5s2cHjifuw/s7yV8da3XeVG82o36XcrgWIZmewGAY4KmH34AHbjuNoNnOz0NDa5M8Z/OeM3nRzFJUoxCm6Jvy2BMpdIOUgBnvxaEZgG4wo2BAnc0bZDLMZpztZ1ftp2GvXL6M8SuX0dbWvxPvigx9hQHM+KdaVBhQRt2aFcjzJ9nTaJMFvqzb6LuhxF8t7C5TxrvLlDiFFFzzXfJarqDlW56FBovjZdrCXkByTj7kfLwXbS8cWZSBrHimHZxUcyFJOrDQ6ey8Ik881Jyw3R3XaaPw1nfj9OHD6Bd9JWljCClGOm0OTs7s3dOKv2c/g597/dEHH9xWP0QDf20FCXiDvhVGybdxRQmYN/StZ87cured/M19zv3CcJIc7E9iV5NyDttNpDNTOHviGJ557DHsHx5CPDWNCNpOlcKOAr0CMqBmPG27u9PpwD6QZsal3t8HC1PRFjBr1K01rjAEll8CxMfilKG2uBnmaqUC+x75pddfz/9BSmemgaoL819+MyMuO4JUhty8citbkYG3704HMuZ2fk4W9ZC0WnMwujzS9TBcN5RZq8UZfUlr8WsBK7daepJzBnhxGeNTguV1xy29WiDn6yCL+HJlO1rE2diShJPxNiAVNwiAuG2/MpcgkFGvKb9PZyb2D3j6A4czx45hSLgB7bz0xx3Ybxn8+HWVAAAQAElEQVQccGFtYHLqPe7ilV9v/eG/fM8nPvH2KvzlJXCDJCBtdoNq8tV4CWyQBL50220P7kmD/2YYeL9M8GCQdFjVzK4xwa7+Oh67+x7ce+pW9GVAqG3SehRJeRPmbZsBJwn75x5tKWVKUQfy0HWUjnacwmmbNZMHnart5qGroHABMpUxz905IHQUBAKHSAo/Mh7KoAz8xZdfwvjrl5A028oTjc7HzYAbOPEwmgBECbYQyOTVmzFD11Wmy9DKGTjVs1ogCZLqgoPtQBhg9iKZ440XWdBBl9XXDUItuMl52gUZswmyyCeZ8yeLdN53xTF7Wb3WHgOLkwXdbHbPoGxXz8xFSLI3P6vPjlJSIp8PFi/rNxZh6HKZBVqkUcYfgqp41TWOfVqR3XPiJPbV66hrUVbLYoStBoazLBhtdW7Pnn/xz+/7Mj7gPXWTpIcbIQF3IyrxdXgJbIQE7Lz8248c/8aDCH9roN14R6XZqLYnr2BssB/yi7FraBCP3H03juzZlX/1KNEWev5fxJIOMp1tm0Eo20VKoythOIN0Nh7Li7c0HHODlInMztgtjCoBHAjmyl4l0gyQMe7Iq5vUWf1rr7wq77wN+8nRVIYAojOP3MCMsYHxNsAqL5ILKK3sSmDEi/O7cRY36KYBDLP+0F1HKllYuqzF4iUYrjtu6Y0C+xzEYt5m3DWSOdraQXnneQKZPHVovFOFKSLNDTZmcGh4BMf378OAGf/GFAZ03DKSpuybmjk9/idf+G/if/UvP37hO8+PwV9eAhssAbfB/D17L4ENkYDOyyt7mX7r8aj6l/uvTNwyEMcYrYYYHahh/NLLOHvrKTx6/30Y6etDIO8p1ta7eV+VWhW2pR2GIWpRBaQMpIw1Zi9T5gamyA0YONiWbKyz0lQemJIwyD+5rq1WSnmHKh+FDpm2+Bvazp94/TLsw29xs4HcmM8uHsyQO1AGATnk3rgMG3pcpOgEZZYtIAzK9GrDrIt/GbewhG4+Ja4Mu/PWGi95WdiLh+ENuvO602QhB7J32F2ujHeXL3EWLofP87Q0y2YBCnPInLI0rrRQ0fzOUAxelgd15dkvzO3R8cyB0VHsUhhqpydotdCvhWN9emZ3+ytf/fH2F1/5vh85f37jPgGPnhd7Yj1y20qge6Zu2076jm0vCbzrtoO7w5mpHx1N8Jf6Wq1bq502B9IU6cQEwnYLb3n8CZw8ehjaGEdLijVVntPWtBlykrDvn8c6K7dza5IgOScgM7qm+A0MaR69A7WdHuQK3Dxw42sAGUthQfPKmy00JqbyH4eZmZrIDXnoApkGIhB/+6Q7SZAFoOuyugxKFMky2jMkmfPplWl8lgOj786ztEE3zuKGMyBpAYpnHr3mB0mQBZSFe4VWbwmWX8Z7hZZfAskyuiC8WrkFxEp0c7Hdg0TeeJqDMnUbPwUoF1VGT2So2ZGM5pjT8czeoSHtBu3BWF8d1awD+wzHbuW7S5cPdL76tR+PvvrVT/+pd7xjP27cld24qjZRTTY4m6g5N7Ip7kZW5uvyErheCZw/fnz/3rjyE7uT9E/JK9+VxTPorwXA5ATuO3ES73z0CYyFNcQysIm2SmNlZTozZxAh32bXGbqO1mEG3gXKVIN0FFoYa8UhE+zkmdmLQRnsjpR16BzMmw9ApPK6Mi0QKFrKQ7cPvE2MX8brF1/FpMKs00ZoPEQrYi0EqBRy/lYPZq/cMMizn03OBYY3Q2JhN8wRdEVIa8U8ojQ685ilsW6a7vhSygJDqg4BSZDUGiZbAAXV+j6722Vxg+4aLF1CN34tcZd2ldJ4G98uTB41EoM8sehhn8GweRGprNMu0UClgoN7xrBvbAR9NommJzECYrST9POlV34g+epXf/hPP/PMMPy1cRLYmcuYXJ425fKIf3gJbHYJfPDWY2eGkf3SSJJ8fCjFWLXVoFxhJHETb33zk7jjllMIO4nOyxMM1WTU2x1A59pmIBNtuyf2STcZ61AG3rbcnQx19wtgBtegWw5Gl5kH3moD2kqN5HVXA5VSvPwamoWx5auugA4u55sVbIQzI7EYyMJAFkRLnyX90pzlMSSXz1SO8VSQG2QLDUqcxUmCpEU3HVg7Da7esGuj0PIE1BgZWMnV9t5GlyTK3R8bc9vNCbSIHNCxzt7BIewfGkJF82RAhzb9mn/1Vms3xie/f+rrz//oe2+5Za/Vt01htWLcpt2/ed1yN69qX7OXwKolwG87dcfZfVn954bbybv6O1mlX4rTvhdsXtATjz6MREpzujWDRC5XRV7S9JUJ1Big7qqI0gCQIUYUIBXEstrtVgetZjM3buaJm1cuorxBykYJFW2ZZjoDT7RFj1nFb7+7Pjk+gamJcdj3yVN5ZubFVyuRqqEWEYm8cqq6UHwyxZHXkzMHQdprR+EA0tKKO8LO7hcDSfS6yvaRC/PJ5dPkwrzFfEnOtYfk4ux1S5thLqEXU3Jp3STztpX05MJ0ib/WcE6O2g5xAggoyOOg2DEfJ8zG81D5tDFUWA2ryifsWxIMXD4Ps3aMKoC9fQM4NrYHQ5pDSaOJisa4P3ADbrLx8ZFm84e/9ejRUZFtxzu7YZ2yIbphlW3+ikyzbP5WbvMW+jm54gDzTz/+1N3DjelfHOy0315vt6J60sYAMvQJ3nj//bDtziGdW4YB4eQd2zZotVqFeV2Ud20ethljyyNNQcvIhgFq8uKhKxUsvAuMQ6oNgBaosC5jXY9CdBozuPTqa5i4dAnUuWlFytrGz87jU23nO6myQFv5JGG7AplCg7Ju0qghIyDChZXmqdLQlaEhyaKMxXsBuTCfXJjuLkMSJLtReZxcirM25JnX+TA+3XAt7EguaC+5MN2LV3ddFu9FsxyuWyEuLpsRWFwuk5FGoPFUu/Lx1uIv0PZ7pCnkkhh75Kkb1MXYPihXabc4hGzXgaj6A/1wP/aOs2dv5Jn64uZv/XTv12jr92uNPdA0W2NJX2zdJODnZG9RXgDc9xw9+ebka1/9xd1Z/Kb+zkw4XHUI4gbqiPHmNzyIsVod9injpNEA5EVnaYyUKVIZexcE4kAEUrYVeethAlBK1lmeFHGsbVCtAGCKOs5ihSlEhiAkIA5x3EYm+ih0SHU2fvm1i7j0ymvItL1ecyEC28I3BQ4icoE8cZUzL14DShIkc8NtbTGwelLxNQAy5aua2dsWAgYBiG4wo2IAXWTBU1EYrxxkPMr8HL8oneq83/KXAytTAlnwJ+fDstxyNCX+WsKSZxmWZcmiXkuTtCCXX0nXK8yJ9OjOU3LutoXUXGI2QhIkNfQO0DwwyJjBxiTTzg8FaZqobhupVLLOcrB8g4CARhZU8VbWQVtjamMRBA724UdoEUnJPRQyRAb75Pux3bswovkYTM+g3mmhFjcHRtL4e49Mx5/5yTe/8xD85SWwDhLQlFwHLp6Fl8A6S+A8EHzx2LFzQ8R/O5wkj1Y7zSBst1GVgd0zOIBH77sXo/32fXNAG9sIpI8dpWZl0KwpmcJEitlCA0jBUrgSDCeVjZLGlLqTd59qQWD/tpRZgnq1hmolRHN6Kv+Vt6mJSaSq3wxurqxdACfVbpDbA6tYYLwNFIV0ugXXB+rbahmQXEBKEuTyYJ/otgLW3m4oFwKWdz1gPFcqb/klWJ0GZdrClcp255G9+9iLR4mzsIRuXhYnC34W7wW2+LKylleMsQbJ5pcWdJZnEFha8yUiMFzvw4GRIeyqa05p4emaTfYn6dBIknz71Fe/8JlPv+UtBwHjtkGgNmwQZ892E0nAbaK2+KZ4CeQSuAC4wROnvmEXo18I4/ZZIg4qoTxiGWjzyB+/7yFUowqCIFpgrPLCmUOWUoa6gFTIRIrVwgKc/CkBlTF7myEPZZwhZWxo87YtbfH8e+Xj45icnMy30EO1w4rZmamBxbuhVPKG646Txs2wa4DrKHq12mwRVNJYe0swnMUtXAKyXUtwa0SQy3eOnM8jmY/1GqvJi3X3x+LdkBPoQRb1kEUo1IKb5FzajHY+ZySPeSyQL+40l4y/xUNZ/H4tDncNj2Lf8DD6owgV29mxz14g6W9PTX649fUXf/LCRn6lTW2Ev7a9BLxB3/ZDvLU6aMb8+WOnHt6V4C+Mpsmd1SRhII8mQoL9Y2N4+N77UGUAU5DTk1MrKnlTqNZ7kjkdSUvOxckibQbdaLMkybe7K2EkTzzB+KXLsH+mYv+j3IGIgjDPt7NS+y57tzeZM170IAmygEVZedLqzCPr/CDn6ySLOLn6sGwOyTK6MFwGXRJZv0oocd0hOc+A5JyMyOXj3eXXErf2WDkLDSxuQBZ1WnwlIHvQEdqhEch4m3E3MANe8rd4aLs+SQdot1HXonFsYAD7h4YxVKnKqMcIOm2OVit9lcnpb5v+ytc/deE97xnBBl2e7eaXAK+zie46y/viXgLrKQG+dOLM0/sy/rWxTnq2r9kJBqVIw6SN0Vodj2ibvcYw/xAcOgkG+/oBeeOQVz4HXa0htQWvg85sFlL0fl3MQGdaMAQ6HA1E02k0MX1lIoe01dGWvkMoZQxt29t2vBlyhgHMWzfl3Q0kQc4DbuJF8pprt770KtQLv1pcL37ktbetFx9rw3LQi77EWZkyvji0vBIW5y1Iy+vlIrByRuOg2aZjGzviseMg+30CdNrodyF2DwzigI6NZMhR6TQxTGAoSYaCy+Pfk7zw8g9cOH9+wHh42HkSyK6zy96gX6cAffF1kwC/87bbHtqVJD8z3OncW2u3WGk3UYvbODw2ijc++ABCedCRjK59TSzrxLnHfLXazfiWYMq2G6xsYaiz3PM2zzzTVujElXFM67xcelYeGGXMHQIZIOOTlwlDmFff1vloigzG0/CLgTQO3disO7Ep4tZ2A+ubgcW7YblGGs3ivF64xTTdaVILLh2HWLnlgOSKC6Tuct28LW55Fq4EZMH/ajSWTy6kNf4BCAPMXiRnYwCpuBaBNncqjrAfngm0zd4fOOzqH8Sh4SGMaWHopsYxmGbcFQQDyasXv6fz5a9/9MK5cyG21OUbuxkk4A36ZhiFHd6GC4D76C23v3W0hb/R32o/GDVbOh2P0V8JsHegH0/e/xDqUo6mOG2rO1PcOYd2synJ2RSeh9IbL0MR9LxJzuGjgLnhbrdamJ6aQKsxDchY24eZXCojLDBPzIx/OGvMzfhZW7DoMiVforrjBW6+ziINLQfK2NpCcinPbk7WhtWAlTE6C0sgF/JenF/SLReuhf5qZciFbSrrJufxJHNjSrLM7pm2TKvPwOIlkFxCX+ZdLcwoChnvVKEB5KkH4mcQarSp3aZKkmJA82h3Xx8OyVMf0fStph30MUG91T6UvX7pgtYB73/uuecicfO3l8CqJaCptGpaT+glsO4SMGP++dOnntiV8WeG4/juqN10oc4cayExMlDHG9/wINLmDCjPJmm3gMAhiEKpSaBSqeSKd7lGmaImmdOQ86HTYoAk5jNHbAAAEABJREFUAlnpVDsAZqhTef8Tl69gUt45ZMCjIECn1UZIByptYPxse948c+gKpZTJgq+Sc7fRGRiCLPJJWnIJ9MYuIVsRQa6dC8lcPlYBSQvydCmjsh95xuyjF242ay5YDY0Rl/WQzOsl50PLM5rFQHIORTIvVyJIltE8JLkkn2SeZw9rp4HFSyCZlyFZovL0XKIrksl4G5CiVbzM0jKwiAZOOziJ7HqKcvudaYIwjVEDsV9n6ocGh1BJ22CribFKyFq7uav10sVPH/zCVx4qmPinl8DqJOBWR+apvAQ2RAL8o1tPPH6Q4V8baLfuM898uBqhHgXoq0d49LE3wL5GFsi4B1mKivBOYaLzbgYObSnGUhmTBDkP9l30zD6llJv+FDBaed3MzzUTKdcEVravVkdjZgpXXr+IpjxzB/HIgExeVKC40eQ9l/EXFk6LgW7I83o8SC7BkktxRmR1LAeWX0JJU6Yt7IUzfAkkQa4MRkvO01i6m6/FDUfSgpyfRUr84rilSeZ0RrMS2E6H5XeXIYuyhrO8EixdAlnQlHkWWp6FBhY3sLiBxUuwdAnlWJIFP5IlWR5aPrkQRzLvm+Vlmo8GdvSiGQXzyg3MyKezBt7SQIpAc8g8dZl4BDpqsB9EGnAB9smgj/X3oap8yKgP0qE6PXPPzIsv/cXzJ08ezRviH14Cq5CAWwXN5iTh5myWb9XqJfATzz57xyFU/kzfVONsvRO7uhRaqnPz4aE+PPLwG9DpyCOXIiw5mn22Ybcw0cw1RZlvcYogk4LsBqHym6QWBTLoSpnXTTI31pDXHQUO9o9V7KtpnXYbkBE3vFiLGrnStvqw6LL6F6GWJK0tS5BCkEs5kizqmg1FtmG3tWsxlJUthy/zF4ckF6PWJW3tWC0jknOy6y5jPAy6cb3iRtMLetEuh7M5mM9FEWQlUBHdllawoI2a5obSMU8mTz1DpEXBwV270KcFQEULzmR6EsPaNgqmpx/dnQWfOH/4jrG8gH9skAS2D9tSd229HpVvytZruW+xJPCtt9568uIf/8lfHpyaeXKo3Qn6ggxEB/39dTz80AOoytgKBVOWiZSjGXAVg8sgOkABciUqBZgZUD6SAEhhQBlsA1PWJEWfwLx9SnmKNaAy7ZkGJrXN3pqeQdqJASsjWjGABalpXr0hcpgMtSJYPSWUhJYu490hqQ51IxbFSar+AhZlrSlp7ShhOQaWvzivxJFcnLXqNMm5vpBL48sxKuteLn+1+KvxsfzFYLxLnMVXApufi/NzXKaJI5MNQSZIZ8FoSVqQ7xClWYx6VEFdOz/H9u0HOk3UKspvTqHWaUejwHfvqnR+8LkHHvDn6bnU/GMlCbiVMn2el8BGSOBDZ84cGMjwU6Np9uaBdhwOpgA7bQzKmL/hofsAmV/KW846ibbG56eoGXCzsSLIb0tbhJQCtEgXkAXOtnTNgNv2eWJGW558KAtt/x3t0uuvwcI0TqRuqS1RN2d8oIvk7PJALVKcLHgqK7/zxUWmPPHMEdfwIJnXdQ1F1kxKFnWRXDOPlQtuDN9sDXLt1c7FfMiNaW+vunvhzODb3DVwDGH/7KfCADVN1MP79qCq46FAZ+yVpAU3MTFUmZn+7mqSPHv+/PmgFz+P29wSuJGtczeyMl+Xl8CH9+3r7283f3Qo7nxwIIkrQ6FD2pqRRw7cf99d+Qfd5LogabbRX+lDYFrPILOp6mDK0KRopjaQt03OK2eSYG7xtUKQKba40ZlCD2TEI9UFnaPbmXljcgLt6QacSB2BQA+RIFO5wjMnIJzV1w1Wt4EZcwsNSFqwKYGkZMK5tpHM02QRzmUsEyE5l2NyLGEOqUimcVCwpe6yVyQXyIPkdffDpmA3F0sbU1JYzanUQkMIMi1aqImXtNr51zL3DA9jt6CGGFGngyFNzDHwgLsy8ZmDX/vagyri7w2TgMZnw3jfGMamJW9MTb6WHS+BB2zbsF45X213PlZvdeoVnVvHjSlUQuDBe+9BNYzMhsKMpf0qWyaPOkyJKHW5p55Jgrb9bmGQQsYewiO/SOahPcj5uNNWpm29O2nVyAWws3L7BTj7lTmrQ0sEBCCMxs7QTcEajyxXvABJrOYimdOSzMlJ5uk8scLD6ithBbLrziKL9pDsyYtciCd51faT7MlrA5E29FdlTzJvO8k5WpPxXMIiXXmWLIHkXFmSJfqqoc1Zoy7BCuS42RaTlmNYg0wLR+iEJ0MnSfL/+mffqNAUhYtTHBobxWClqjN1IIw70Bk73fTMA53XLn3mh55+ep9xWDN0N2PNTLZrwdnB2lLdW9hYtzDpU14CGyYBHh5//c19WfBj/XBjfchY1fuT6Azx3gfuQ1+9JoMeIml34EBELkJnpo0oVjyBcFKA5sk4CwE7Xw9l1GWJxUnn51kix95AylJej+FzkMctmw77utn09DQmzTO3r78hg9jlnTVFahFT+gYWN8j00HoCpXG3uFD5TWXmQObp7ge5FNedX8ZJgpyHEr8RofWrhG7+ZFG/4cgiTtKSKwJZ0BjPFQmvkkkyl4Hx6QWLinNROi9LMg/LvG4+Ja5XSLIX+ppw1PzSjMzLmAGfB4K2tQNqwei0SCWguEGmMMvrJpy23NvtGH0D/Wg2m6iFAaC0GfXR/j5ETPPdq5GoEvbF6VPRZOujF971rj6s9crWWtCX2woSkHrcCs3c8Dba27bhlezkCt51/PjtIzH+3FCS3tqnM+tQnocOsHHHmdPor1cx1NePpNWUAnPI0hgzMzOoD9Sx+Mo0UgaGJ4lSeVt6AaTSXAJTsOaZ20Jh4tJlNCa0IxCE+QeRDOcghuh9Ge/eOcjrLfNIgpyHbnwZXxySXIxawINknl5CdI0I64PB4mKGMyjxJMvoXEguxc1lriJCXl/5VVSxQEbkwvq6+7caXkZjZUqw9GpgYa1FCWr6FTGgXAiSzNub52luWn7g9NQxUMe21wcG0Zychn0mrj+qYv/oKOz76vau1LVIjdqteufiax9vNDvvu3DhgpVUYX97CcxLYL0nRcmZZWSLhF2v3xZp8RZq5rMHbzly2FV+cn8H9+/qZK4yPQOXdrDv4B4cO3pIxjVEpzGD/OcxdR4byHsOqyFaSQstl6DDREoxhX0H3c68TSGakowVcfJwAgEzJ4/IyeNhDoH8IsZARcbbfsZ18vJlyE2XBxRB+5yw7fyKtuBNeSeq00JSZTOITq5/kuZ8bEFgEICqH3OXLSrycprpFu8FKbI5+sURq8+gxFs8TVOUYOmrQVl2LaHTtoUBSZDsyWKl+st29iw4i1xcfhadB2VentCDZN4OsgiFWnKXZRaHJaHhe8W7cUZjUOLIoj5yaWg0RrsS0IUANTu4sDycoYlMc1SjqvmbwcJMc80hg3K0y5TJ2ifQ6U4ej+Wh25yktt1t92kgqODEvgMYAOA6TVSzNgeC7MjEV77wifg//OGtQvvbS2CBBDTtFqTXK6GZul6sPJ+tLIF3HXyg70g9+K8G5FXspguCRkMeSIZbjh/DLceOSZFBhlgKy5ScZo2TwoNd2mo0o53IgpdfWaPwZlwNRKoSQujO5L0oQBAUitV+jx3ygCpRBPv1t+mpKdgZpZ2RS78ikPJ1UqkGVo40zhYDSOYAXXk94m38DYRacJNckF5LgmReH9k7XIlnrzatRH8z80guqJ5k3u8FyK4Eya7UtUfJ6yu/2hpXGoPuPFvwdfO0uWVzkfl81wJSmSRzmdi8DEGdnWcYrdfzf7kaJR0MhSGymUnU4/a9M1/5+qc++a537VYxf6+fBLh+rG4OJ3dzql1jrb7Y5pdA1yvx9lOnqgcGmt+6Jw3OD6RpPWlOI6oGOHBgD245fAh7Bgfh5LeYYrvWjpmxN4C5NwJKQ6Y6j7cPtwU6HM/SGG15/RPj42jNNND9u+uk/CO1M9WSgFRElZMEScWKm5yPF5iFT5IL6Bfmrj5FMicmmfMjizBH6kEWaZJKbexNLq2DXIq71laQ8zzI+fjKfLJcHivTzOdmWnjNp4oYudq6Cvqb8TRDb9Bdd7ngDEDtXlUx2j+A/SPafo911i7isB1XOpcn3pu89NLb4a/1lEC2nsxuBi9v0G+G1LdznV2vxK4wfN9onFzYRR2TJzHtl7DqMuh3nD2NihSwk4JyhXMyJ5FuxdwdnyNYFCGZe+bQZZ65LQ4C59BptvD6xYvoxpGFIU9Ut4FVLf0Icl7xk/NxsVxyk1xAv4TgGhGr6WPJkmQZzcNrKZsXWOODXFhvN5urtYGcL0sWcZK5DEl2s1oUXylvIenV2rCQevOkbO5lTnPSwGShkCz6rfUp8lirhf4owqFduzCo7f26tuOHFfYnyVhyaeITn37mG85snh75ltxsCXiDPj8CPraOEvjEYw/ccoD84cFO60C1MY1d1QiVJMbpE8dQD5wgQJBk+bm0Ka85sDbI4C5W0rZOMLDshZDCfgHOcLblbqF9Wnhmejr3zJ3UYiCP3cnIW56BKdI5z35WgZK5+rRsqAhu1mX97gayq12LGkUun7eI9JqTJEFyrhw5H59DzkbK9s4mewZk7/Jkb3xPJj2QVncP9ByKZN4PcmFo5QzmCNchQhZ1XBMrlVEDkc/HroIZErg00YK0gzBNUdekPTQ6hkDn7KMuQF8nYb3VvuP1z33+/EePn6t1FfXRHSwBt4P77ru+QRJ47y237K1Pt3+6Oj394CAyF8jLSJqT2D08gJNHDiFtNmBfzwkJ6Eb31dtod1MsjJtStq+kkUQkTyaR12/n5s3pGdQqVUBn6dQCwbbijdaAJMzAB0GAnlePRpAEyZ7k14O09hSABZ+cL3DZApzVQ65/G4xvCSTX3E9rc8lncbhSHrn2OhfXc7PSJOeqJufjc8hlImRBa8dHBiUZNQcN+jSHUxnxIEkwWImwp78P2dQUalocD6RJ364o/HjCr7+lLOfDnS0Bb9Bv1PjvnHq4P+C7+6cabxvqJC6S4qnJrlJn5Xdrqz1rNDHW16/z7WZuVE0sTkrN1JqBpVcDpUef6tzcfjSG8mbsv6VNT+jMvDmTf9CuGoQKU0EmmOdqitNA/s8cMpPRt8TikOSaDZzxWz1kc6SL2zCXMRshizaRnMVsXECuXx1lv6y1Fjew+FaGlfqwUl7Z55KmDEu8lndwyBBI/ExShPLYzagf3L0brtWGfRHdjHq11dhda7a//ZPvOuc/IDcvvBsd0yjd6Cp71+cNem+5eOy1SyCf1B+77ba7d6fRjwVTM7v6xYNJG3G7hfvuuRMjw4Por9YQ63w7cFJX2kYUyXXdpgjNM5cri8nxCUxNTiIAEcmY23d7neIkQS6EVAa8I2/eyi/XAMsjuSQ7y1JVt9R7XkJ4DQiSeRutCEkLcsjUzjxyEx9k0R6yCFdqyuL29kovxpX8yKvzL2nXFGZrKrWhhUwWBrZA7VVRW+9Kn1bEcaeNesXpPD3A6EAdZtwrWsTWk9RpF+zZ+EEemUwAABAASURBVMUr33Te/9Z7LxHeCNymmVnuRvR2G9exwRpo1ZLbDITZe0+f3jWWBh+Xx3Cs3klQUasa01M4ccsJ7Nm3D+24A/uvZmFQQdxJ8w+z2dY3yTljpiIL7kTnh8qEefGyonJcMgTO5WDpgFoYxAmmtA3ZmJqGba07EJl2BihjGIrWzXIki3pMgRoq0JY7SYvOAUmQ81DSzhEoQtVp7TawfAOhF9yGM1iAXCFhtAYlCUkYf5LodRmtAdk738qQBLkyGJ3xsbAEknm0xJehIckiz+JXA5IL+kAyb0/ZL5JYfJHMacgiXJxvbVkMi2ksTRblS1rDgfkzf5AEOQ85suvRXY6cp7O2dwPJvFRJX4Y5Ug+SeT2KLrjJAu8UGpDMF6KZQrLIszjM0geAHU/FOrqqadt919gwKsK7uA2nBXMtiwcar7z23aemLt0Of205CXAdW+zWkddOZJXtxE4v1+fhdvaNfZ30m4NmOxzp60PcamLP3l3Yu283AmkkO+uO5d0ycKhp270jo9/Ni2R3Mo87GeRURt2AZK4cjY9BSIcARGNmBjMy5qnOGUnRaFQCGeswDHMe5cPOJOfiilCw1tsU91rLrme57nZY3KDkb3GT22Loxpe03aHld6evJ268DIzHcqHllWA03VDiVwqNfrl8krA5RBLkwjiphZ8WfSYf41FCdxq6SryiWkMWOzPdOMMvBstfjFuctvkou5zbbItbvpUrvoExW49j/pVL64PN6U7ckqceYXR4CKG25PvDQNvvmRuIk3uufPlr3/upZ5/tNz4eto4EpK7WrbHeoK+bKLcxo1V07f0nT946nGTfHbU6A1UZ7UZjBmbEbz1xAiMDQ4h17kcZWftPLA1tH5JEYGksvGxyd4MTnbQoTMkapSlA6EzRPHGSuTJsyjtvy6gHAGxCZzqvN8UYa0syFc5AwbrfVocxJWnBAiCX4hYQXGeCnOdv7TAoWVrcoEwvDi3PYDF+tWlyvu7VlLG6usHKWNrCEixtUKaXC8nrq9vmkdXTDcvVZfiSroxbuBJ0069E151XlrGwxNtnPDJ1lTSDLk9cC1tS8XYHtWoVu0aG0SdvvdOaRkUL3hEXMJqYelfU6TwpHiqpp793nARM/+24TvsOr68Enr377v7B1H1/PU7uj+IOK4HDzPQkDh04iL2ju2D/5jTVtrhtgZuSsp9s7cibdlJSi1tCzuuiTJmm5Ejm3pXFDcjZdBrDttlbjSbM0EdBiHwBMFvOvHhFl9xGW8KSzC2IILmk1WSBI5nLjuwdmjytsIUGFjco4pnWUjYKhlkIZMFvIRZ5XZi9Ch6Yw5HEchfJnI7sHXaXI9mdzONlXXlCj+60xQ2EXnKTXFCvEZDzuDJt4Upg/A1Wolkujyzqy5x2DAjYO2K0ZtQtJIVUhFqo2rw1z7yvWtNCeQD2ew5V7TIMphnGXHi49dLLP/Tj733vGPy1IyXgDfqOHPb17fTo1NRTg2nyzZU0jogErfYMDu7dg+OHDyGUt+7iFPWogk6nhZadA9ZqeQNmf70NZjJKsAyShZJVwjwqM/whXX4+bluTZrgtTJptTF6+grTVQaB8p3KmVI3eRSGo7UhTjt0gltd0G7+VCpBcNptcPq8sZPyvBiXt4pCc50+ykNlsWNKS8/gSZyFJC0ow8ZfxrnABTRd+YZTkXN0Lc+ZTJPMEuTQkOVeeXBjPC+lBUs/5m2ReZh6zNGZyJYl8PmjxSBZlyPkQXZfRdyXzxQzJORQ5Hy+RVsagTC8OV8ozWpIL+kEWabIIrXwQRFBjYIviiA7QURUFY0MjGBkcADsdVJMMQxlCXh5/U/jqxfMXzp0Ljb+HnSUBzY6d1WHf2/WVwPuOHTsw2Gn9YDWJ9zOLmaQttJszOHPrKfSFkQx6hrTdgnkXoQtywwt5E0naQWbuxgrNIQlTaOS8crO0QSwlZj8eE2sLMtTWvUGqrccSjIYkEvaugDJhBr1zF2KNl8FC7M1MzXeKJEguaQzJHG/tXgmsoPJpoYHiuczLuIXXA+Qc6+thk5clV+Zlbc8JFz0Mb7AInffT8N1zZnG6LEOuXHdJV4bGx8DSZWjxbrCFpnnhBtpayseL1JyfrcpeDytri1k7ZnJ6byLqYEm7XRAMVivYMzSMSB56RYxrOoraFVZrHJ/4SNw/6v95i2Sy02630zrs+7t+Evj+c+cG9rngU8Pt5HFmMdpJE6m00KFDB7BreAgujpH/9ygpIvOma2GotIysPHXbI6e8pmy2OabUumEWDfOuSoVb4syY2w/HTE5OwoGwf4+qapErPfE0urYMfiIDDyWMr4L8NiNu4PLU1niYUl/Y0lJqgOUZLMxfil9MY2mDxeWuNU3OWh8VJAmSihW38Tew1HKh5V0LkPP8V1PO6r0arMTHylp+GVp8JTA6g8U0vXDkfF/sNxFSGeY036+aL53Pa70/Dprnmu2Bhj7SSiDSpKZ55X0D2K3z9Ejlgk6KfuHjyxN3v/78l75VXOYrUMLf218Cbvt30fdwoyQQtPlkvdn5aF+c1Ptsaz3p5D/pes9ddyLrxKhXqzAPuqYtdlNMFs/asdQS0V/vQ7vTnGua5c8luiKBvG9ThnYe7qTUnJRgIo/ffkSmrbNz2Aff5K10ZMCtWBRFsDKydJZUiTxY8kiXYK6OsHasREUSJFci2bA8a1s3LK6IXLldVnZxmeXSJPN+klyOZA5vfA0M0Ss0XDcYXTeQK9ch+4XFYLsyicolKppqgZc6IrN5ZGEXIHDIutKkCqhyknn/bL4xE0IG1XaVSsiyBBa3dit3TTfJvBzF22Dx/DcDH8tIJ3RoW31qJ4MQqea7U5/CyCGN2whFs290DC5JECHV1nuMsTDsqzXb73vfmTP780r8Y8dIwO2YnvqOrqsEfupt776dLz7/pwfSZLQmRdKnc/LBOMPth45gRAbczsft6zdyJnR23snrdkqQgc7CiXajjaqrwDwOJ+XmEOR/eb5oMhfAIFUZxxCmxAInJdZp48rFi5jS2flAvZ7jRYIgCPI64lYb9g9ZIhcgV5nahmSayb7PgpDmBZVgSrkX5Myu/pijIMV4NkUujJMEWcAsyVxQ1j2HUIQsaMn5UOieNzlPQ87HexGTXILurr+MW2iE5FJ6w1t+CYDRdAPmLpIgM6Xnl0/d5Ugqz27LL8B2Y4zGsCSRyGCZwc6osYfSYpcqNDAcRFMYZYdM8yN2RAFuQdgRXUfVGVh+qriBlTcQ27wuM9YG1JwOHRAFRMBMi9AUlGF1wluehVDa2roAVH/RHlGpDmu/gUpDDnUOZRyal0EW6B0wAEQOqL+Jy5CovdbOjhoRa263lG6rHYnakyiMmUDdRZC2MdZfwUh/FRXGcHo/wmYL9Vb79Giaftj+46GY+nuHSMDtkH76bq6jBJ577rkou/jqtw904gcrWcK6PAfKWz44tgu3HT2K1vQM6jK2qbbhSYKUcVUIXaSlBdKg0kvCAJRiw+wlXTYbKwKSsMVBpDpM0U6MX4F9OKi/T8sIKa+CqvfTeJFckknO40iCXApLCq0RkWkbtYTSWJVpC8mi7jWyz4sZnzyyxgfJNZacLZYVasTaYTCLXUVA2M6LyQUymc6FsN8OsMWb4VpxsRAExV+GkoGDgS3gYnmqLe0ITWu3ZrrVwqTm35VGA5enpnFpYhoXJyYEUwILJ4SbzPMmZhqincFUs4npdhONtINWGiNxaq74I4wACxkgkXHtyApbn6i0yy2oAxW3vAJPkAVYPkkxAiwvj+hBFjhFF93M6Upam695XO+DlTAwHK3DsyUNZ1GneRUqYkdaiXanRkaHlMq0ANGLpf5UktjV4uTd1Tg+oAx/7xAJuB3ST9/NdZTAwa997YHm5UvfWSXr1cDByWuJ5EXcefoMbHvd4obLlVNeb4pMCtkgT+qR5Uo6UKy452mLdPk0fCDeFtq5uX1NzeKm+C0s6VYTkqU6XA31JqBZRROuVQarYHlNJHn9THuU0ZhnSY4nl8o9L6fcKIjAzMmwp1q4JYhlzGxuUAs4J2Bom8oObeGbOlqZlvGaarcxIYN8eWYGk/JGpwyEm9HuzEy7g4aOe5o62imhpbNlw1netGinZ5oy6gYNjE9Pi5eMfKuJaS0gWjo6imW4E83rNJDJVP1xECBWW60NHe1EadMHmWY9ZNiFzm+y6KMZ4BKoNgegfVxE1FaiAKoOJw4ZM8TSwAb5bpaMtJUNU6CihYRBqPoiVRgpHQlvUFFYEa3RORn7JCX6+gcRaRHdUTtSvWuJ6gjIu4MqvhH+2jES0HTaMX31HV0HCfzlD3+4v/PqpW+ptOM9FXlJVSk7O9M+eeQI9u7eJe98Sl5CCPOwCqUt7aN6izgg3aNUcS/GlekiF7kilM7TWXwEOzO/fPkySCJwDra1vmqjTiy5yB5IQO7NEtJVIbrb3h3vLkwybz85HxptCSVtmbawxG10SHLNVcy3c15887jl2RpNaiLXeBIBsrwNDobLbMHHAK1OgplOS4Z7BuON6cIQtxowwz4jw21GtpURnZSItTBIXQg7L4cMcQmZDHOqOjLxTGVaY4g+Q75IaOSLhJY89lbOf1xe/kSzgSktHBpJjDag9gSws2zj3Q3Gz/rQC1QMTnVa2AusjOHtNxkM1AVLagsdOg/PECQF5EY7Fa4LqLYHSltoOxzMnBZEGUZGRsRDGbaQ0sKmnqUDQ1n4Te+67bbdyvD3DpCAN+g7YJDXs4vJ1189F75++ZsGssxF8hIgz2jXwADOnL4t/7paNYqQSAEHmlkh9eiq3JSYQYJMZ4kFpOwimI06KSwDU1h2htmR52WeeUd1GY60Qk6qOchLGE+DPNHrIX6klVmYSRY4KzsLnA0XbIUuLLVxqcV1L0ormc21S4k8fh2tyYuShQwsQc7HLb06yFAUy7rIU+FWx6vTTjQXCBdVEAgyjWpbRty20MflgV/RFvq4jnCmtKVuHnYrSeUtE6kLkBvqMEIayuDawlKQas4lIEqIZRgN0owqBxSGuSibuQqg+ZrK+Jtnm+8AaK6Zxz+prXmr12BCW/otzfVE/PM6rW61M1U9meoji77amJQLWZIgBRILl4GcXjSpAQgIHAD7XIkZbAOn5QRmIYXeHKaiSOfHPqVaIopmGwOVGoZqfXCtDupabNdbHY500vtrcevZC8jJ4K/tLQGbP9u7h7536yaBjx4/Xpv+2ovfVW+191TiNqra1qtI2Zy9/TYM1mvQninqNSlmzSr7YJp50Fa5dI4FkE5FppiBggW35RnClFypAHNllma4fOkSWtpirUnh57/XLlxVcTtbtzIlWNkyvtqwVxnDlbBaPkbXq0yJWy60cqsE9qIr+fbKWy2O7Ml6VcXJxWXN4BRFyfk8cj5e5MoIycbkBlJGsS1DPS1jOmGGVIbcDPq0tsGbs164GWKjhYy3hbatnGnVGMsIJpo8qXgYmCG3sIRMeAOZQM09m1GpZqztDu86AAAQAElEQVTVLdDWNLQLQO0O0Dm4MAJmebZlEM3Az+icfVqLCTPsVyamtEU/A2un7QzkiwoCmfgYoOuycelKrhhNjYfAiKiXw6lPJGE8M4WpA+IA+Tl/bHFmedzqcNarONYWfYpIC6F9gwOQZ44h9buq44XBJK3sRfSO/3zHHea+WxUetrEEND22ce9819ZVAlEUPR7NTD1bTZIg1HljJFfixJHDOHJgHxJtg9YrEbJOG7nhTVPVbaAgvzXVMgEcUimbTAosB6UzAZCKKpUqS6WiEmEUz4DJiQk0p6dgC4RA5ZxzuXdinhApJip1PTdJkAWUfEiW0Q0PSc7VTy6Nr7YBptxXS7sSHcmVspfNs0+zF8C8P1hEaUYrB1AjbaBxpEZd3q553RMy4pcnpzA+Mw3zxGN5xKnyUhtvecbUtjmDAJnal4q3QSIa63eWiZFwdpOEzRHbHTKweAnQldnMEr3WD/mxUJIkagTzc3zHEAaBi+Cc4oIUDokWkE0tNqa12JjUjsHU9Iy26Jt5O203oRMnOU0K61cBUDzLsPyVe9pFdrkbJTtdIPRMXIpU0JEh74SUQSfaFuoV6hiIv23VO71nkY4G7GujVe1gjVQrODAyiLrK1rTgHkgzN0a+eSxNHxFbf29zCWhqbPMe+u6tiwS+RedwtVb80YEo7AvSDmS6ETHF2dtug30fNnLUmXeaG14zttVKKIc9BillKVBEN5GJjixwJNF9lSlTcJAStfT4pdflNGmaKp3IW6tXqlK+QFMeuxYY3cXzuCn4PLKGB2k1FgVJ5u0tUmt/kgUfsne4ds5LS15P35dyWx2GLPq1mJos8CRhhtzyzb7JlsooIwfzume0AJxqtzAlT9jOrDvMkDonIDJwrqxmFmxexfKcLSSJSIbXjLaBzZkSZF2RyWLbv9CF5o19O6JbNmTRNmQOAYN8PjFTC3Na1S8jafTWVmpR4aIQUa2KsK65p3ndQYopLWCvTE7Azvcb2q2yD8vFwlsZcVLMntZPFpGeTy0BVG9ed1e+8TBIVDQNCAsTvQI5TlLJLDJLn9o3SXSYwKSDqvLMuB8YHdPuWYYBR9Q6HfTH2d6hjN96/vDh+mwxH2xTCWiabNOerapbemNWReeJ9vb3v0NewNshz5xSIpBRP3n0qM77UsgZgHnQWWoGPAPsQzkSWWAeVZYhE6RSkrE8Bgstrez8NmVPzo9D5AItEBJEQl25+Jr4i0xbiYGUUyjoSEE5KfxKpZIvGJS75Db+3WAElrbQwOIG1hZLG1jawOLdQBLkPHTnWdzKrARGU8Jq6cj5+sj5eMmnDI2fxcnlaSy/BKMn52lNjmVed0hyLmllDOYQiyKFsdTZrsbY6BZDnAGBfZJd42oedSpjZFvmHeEnGzO4NDWBSXmWbdWZygs3iOmQgLCyGWTcVQYyvgYuC+CyALR96DQDMzVIRt7JmNn8kP0DlM5sLiJFPhdF58SHJMhikaAWI9WctPLiiBJCBjDI1IYUBAKHVH3raFvbQDNci40A1odU8/CKdhZsO35SC0zbordFCsMIUH9j8U/VPIiO4mNgyVJGFg/UfuYw+56oHwkBg9KYQ/Peabcg0A4CUyJpaenQjhGofR0maKCDoBIgtBdRsqyROLJvf/7Buj7Jq9pJg6E0fPronsPnVCcF/t6mEnDbtF+r7JbepFVS7mSyT547tzuZmPi+wSAYbUxeQUVeSr+8lUP79iKT4jSPyBQnpTgh5VcqrDyUMir0MUEWYLK0vDzUdmUqxZcJQjrEbXka4j9+5Ur+n9QKZQcpcYh1VihwK7hKIDlHaXUalAhyPq/EXWvoTFmLD8m5/pFF3PKsvhJK3iwjCknm5RRd823811x4FQVJroJqIQlJZBr7IAgQa1s70WIuiOTh6gy8qTGesK11bWMnssD5ubA0UT5PVFUeil1msGg+CQWRzEHgHJzq0uSAzSGnORiJwHaMQs2nMHQIVUem+m17vSNjb21JHUHNs1SVddIMcZyipblo0FY6gxoUaJcpydCR65+oH/bhOdlTLTRStLXNbUcFYa2OWPVMqS927m/HBfbLbrEZZrUyU14KQGz01K16bV6Qqj9z+Xwujbpyc0OuJiGlpQTaaaDalrY6SJodRCozUOtHLaii3WyL3iFRPTm9FrlRva6dhDpctY6grw/5Qkl16fXanXXS951/4AH7wroY+3t1EigHYnXUN5vK3ewG+Po3twTOnz8fjF+6+I21Tny/azdZlSfQaEzjyKHD+c+35lubUinWC5IgC8hMIc4C5Uugx5VJWTspZDPoJGGhYwZbGExPTMq4t0EpRifIi5uiVRkrZ0oPUo45/oY82LMWa3PenrJdXaHl9SqU9ULO4sje9cxmLxtYG5bNvI4M8mrtMRUyD2QAClIZMsBGjoDGODOcxrGhY5Pc8MkAtmTobZ5k1GLNQOOZKjSYw0meefO160OkIky0uEvnIBBPJ2M9B5o/YgMDKG4fnDQDzsDBRSEYVZC6AGbErS1tMe+ojxbaJ9mbsnzNWZhR+8yQx6JPwhDdkFUqQDXEtI4MjAY6uzYeVyancPHKOMxbr9RrcEGAojHIjfpc32AyU+WzN0nAEZnAaJRQ8512C0JUEKLOCP0uQiVRj5uSQQeqvi6oiW+odmSYVsGGFk1NGfJ4bBThoUOYHOzD9EA/ZmpRMMX0bKvD/fDXNUgguwbam0+6cFbd/Pb4FmwyCewbf+VoMDn5oYEsi5y2HfvlmVeiACeOHEUqT6u7uSRBEnroZq6cFIFdpPAWEcjhAWScDQJqCioegOhIyZtXNTE+Loc/kWcVSHFDig0FvQK7TdlbaOCcw0pAztdrRs/AyhmQ83mWXhmyFbONbzesSNwjkyRI9shZPcrqXz31+lOSC9tvErMzb2rL3YzV5HQD4zJ4LXm3lIFkGEA2KG8IOV+WnI/nmV0PcmGeGWzLJjkrP21dU9NFht4WVCRBbVcX29cu967N2E61WrDvnL8yPolXJqbw8tQ0Lqp9Bq9Nz+AVtfNV5b04fhmvanH5ms7LX5+eysvM2Jk5CWhxgEoVsSNaWnC0VWeiPmVBiIbeDfuQXyy6DA4ZBVqcpEmWtyFVcaicvQsGNqdNXiXkfdJ7kWlr3SVACBVQoY48dluMtFS2rYXG5EyCJOhHPDiKib4hfDUFPq9F02tD/XC3ncTYww/ixDPn8Oj738d3f+xj93znD33iv/3t3/itX/6V3/zNv/pLv/Gbf+VX/97f/zO//Kt/9/t+9hd+8Rt/5Mc/8+RHvvvjd5w//+Gj3/d93zd6/kd+pK52qGI9/b0lJOC2RCt9I2+aBOKvvvKuvnbnoWRmmn1SVq2Zadxx22n0hRUwBiglI8sNwMlPJzKFFs8hs+klRSbFY2nKSzPlJeK527ZBnYyyKWYn5WffNb/y+qV8+7QixUikoJSlU5iphm6jZVXPMVpjxPgZkAS5FK7Glpwtoz6QRdz6Qxbx1Za/Gt1G5VvfDciiveTC8FrqNT5z9GahQIRBBWbUpxst2C+5tbXlnUpW0DmzCyIEonECypLZ3LBxNsjHXWNOQzIFHGFgv66WOaCERDPO5kGmfAtlA+WxKl8GFFo0VOp9MGNu3ridd782MYFL9utwOmueknGcYIYJ1T8p+inN02lt0U8HDjMR0QiJKXVoWkwntQgZ1yLgSqMBM+z207KvTIyjod2BpmgKLz0Cq5EMLNFMOpjUTta06O1Dc3YOT/Fl4NRi9U79lX1XyflbKJjYDAyrpiFQIlTbMnXOtvg72mXIhvrQ6K/hdRXIBnbjSlbHVzoOLw8NI7r/Phx/9ztxx7d+C+79jm/H/d/5EZz+wHux702PYuD0bf21fQfeOrR77/fu23fgEwcPHf7k8MjYT+87dPCvnbn77r/71re/4x98+KMf+Ucf/b7nfvcbv+lDv/yeJ5/68z/9c7/w0R/6qZ+6/dyFCyH8tekloFdj07fRN/AmSeDjTz+9K5ye/mitnfTVCdhX0gYrNZw8egyxFLQpHGuaKXLzhsrQPvyWSFulyMwEw/BGZ0CKkSI28QysXE3bl/b77BWF01K2FrcP2TkpWtt+F/kcD7IoL/2W44z31cDKG5AESYvmYOXyyHU8jIeBGjPHxdKLYS6zK0LOt6ULfV1Rq/e6GCwqTHKBzBZlL0la/d3gZLyn5fmaZ55oPoS1GsywdWTYk0yGWhzsB1QMbLwNynmlrLxucmEbUvEpATLkOYjY+FkdlrY6UhnoyeYMppot2E/FTsogT3c6aKjutoxkW4uKuFpDs1ZBS4a4oZ2nmSBAQ9DUYrIVRchsQaBdqVSeeKoz944Mvv0y3aS22u3o4DXtJtkH4my7PRVP+7BfW1v2qfodiPekvP1pvStNec2xvPMM6qH6o+Yi0TtioQFJQH0hack5qFarsHJtLSpQq+YLjRfa03gha2J8pI7nRc8zZ3Dqve/BPR/+EI59wzuQ3X4bXlbdX24neEF1vixul9WfGfUh1jsWa+u+nRAtef+R+hdUa0HqONhK013avTieuuCBNAzP1/oHfvCxJx7/688+87Z/+pE77vnbP/UX/sp7vvljP3Dw/PnzFbH09yaUgNuEbfJN2hwSYHb54pO1BLf2pymrUhxm0G+75SRcnMpzcAhkVUlCgVSsQ5pRSorIDHGVPpCF4gqkPM2oW2j/DtV+Ec7iZggSnWGWxsHYkUUZi5dQ5i8XlnQbFS5Xb4kv67V0Ge8OSeZGqxt3vfHl6roeviR7FjebVAJgNCW4fE5MNZpoyJAmaapsqRvt0mRwWuhpruQUhJMFNyBS7cZgAUA0BrlnLjpNMRik4mBG3Qx3kc5yvJjloQwTZpoN2Lb3xEwD5t2mmmus1AAzaorbtvUk5KGryRNIE8H0JDAxyWx8Ik2nJpOkPZ3E2ZTmeyMFWmp7GlTkhVdRkSEM++qQIcRMq4nXx6/gkjz2dtyBCwNYOzqav9bvloz/dGMGU4K2dga0MQBrczlOJGGX4ezVMciEsP7ZBwqb8vYbWYxpl+JKCIwPaKFxdC8GHrgT937vR7Dnfe/AlbtO4XPDNXwucngpqmKmOgRXH0VUGUHm6oizCB21P2YI203IdObv+vvyhY4tFhItRgxMTgba2ncuiIKLV8ZrM+3OseGRsQ/f9+CDv/Ku977zN974tnf+6Cd+/MJZNbFouCL+3hwScJujGb4Vm00Cf+od79jH8ZmPVNqdvoGwitb0DOrVGk7IO2/OzKBWDRFIuZgiti1BknBS6CRBMldYJNF9kUWapFQ3cjr715QtKbpKFOHK5dfRkvKntFmo7dLSoKPrMqVXJk0hksz5kL1DoynpyYKmTHfnlbhrDZ1Tr2f5kgV/sggtb7X8yKIMydUWWZFuPfq2uAJyadsoa25gtFaneZ0xNL4iTWUkLk1Mai44hNWqTDDz8bUFnMQGmzegLCV6X5l4WI6FOW9k4lFAJqThYAuFVBNGhIHqvF+ylgAAEABJREFUM5kbx5l2C/af19qqKJbxjmVkY3moLXm5U5VKZ6JSvXwliv6f9tjYb6W7R38627fv+8NDh78lOnb4/dGhIx+Ijh75YHj46MfSfft/LBnb/bebg/3/dqbW9+pUtdKajqJsOggxI+MYhxGySIsEhS2557aAkBHMf00uCxwyef9NyWNChny82cakvOKO2pulASgDC701anrxPqgbTv0yoEKAsA/mZYODaA7046WAmN6zG4cefxKnv+EbcfDcU3h1dBivDg3gNRnny1pkNOv9aFX7YHVOqb6mdiQ6qjNRnU5tDmXII0GlEqKqXYmRocG5X3dEpsN6jUcQUnJOtAhIEUleLgq1UE+dFiZ7wih68+Gjx/7cGx597Pf++t/9e5967M1vPoayE4r4++ZKwN3c6n3tm1UC4eWJB4db2WN9LnLtZhOhi3D7rbeiLW+kVnGI0wbAjvSxlIApAkGuarMMuaKVospMKSm7ElRgPwLClHAuzAGOQAAkcRvDUkYz8m4aU1OqxyGMAsRxDJLIpPRSuDxE5nIcui6SOY5kF7aIWjucFHqRQt4uw5VQ4i3shTM8uZQvybk6rZzRlWDpEsxwkfO0RkMuTJe03aHRlbAc3vJJWrAAyHlcWbYkIOfzDGf5ZKa+ZEqmkk+isLwpvMm7BOYZJX0eygxR426QJTIAaQoGDggDGaIMr09Owj4w1tY8kK2DGCKQcXWgdnegp+gpvg7QEMOiGiUlNIeoWA7UXMtyoIgcAwSwGBHQIXQBnOoNU8Ag6aS4dGUcTeHaEdEKgVYlQKdazdr1ajLT1//SpVr9d56Pok98ntE3V8/c9vGRkZGf+fn/8O9+5ef+7R/+zz/7h3/4z3723/7hP/uL/9f/9Xt//t/+4W/98S0nfr51cO8P/8fpqW97Kah+xyuV+t8c7xv6z43hXe2JsJI1XZQlQYgsiAABXQVxQkw02nh5fBITcscbkUOjWsWU2ntJ+MtTbTRbVC8qYFSBnbHbu1Kr9SGToIKYGKwPoNWRTCtVXA6AL2QdTB45gn1veQdqD5/DK7tuwdeqe3ClPoiGeED1BqlDZ6YN+4pbX18f9uwZw4kTR3HnHafx4IN353D/A3fjgfvvxsP33otH7xHcdw8eETx8792468xtOHX8GPaOjaKvEsFpWtg/QTJIJfsgqmrEHbX7ESIMjg3u2v2ZH/rxn/z1H/nMhQ+cO3euhm1zccv2xG3ZlvuGb5gEPvXss/3RdPO7sump3YHO4CphhJHBIewaHUPFabJLiYdSlql9B51Z/uLby79cg8zTNuO2ON8MSugCNGam0dTZOUk4gdEjzUCqLiy8rEyJIQlLl1Diy5AsypPMeZHMs0guSOfIFR4kF+SW9Vm4IOM6E8bP4DrZ5H3r5rFanuTCfpY8rLzBgrR8OJh6lwYhVc4RToY8lfFutjtoaOHXllHV7ECqbAvRdRFpnsqyVLGsGEfRkXqIF8m8H9lsqImR06s60ebR/GFb3FngQOcgQ5NvIc+I9aTmaFNb63Y+Pl2rTE5E7l9fBn/qpTh9RzLQ97Hf+cLnf+uffPnzn/+5z352/MIf/EGcM+vx+OxnP5v8ld///el/9PWv/8mv/fF//L3Dn/9PP/Jie/rNryH74MxA/19sDg/+3kQlfH6crjOlNrTDELHVC2JC5+avahP/iuTRVJ/a8orbCqeTBPYvYA2mOy2wGiGshZjUAqgqw18bGMSrOpsPd+/GZfF6vb8fBx97HKeefSvcyZO41DeAV1yEK4zQiqqwxYvWDRjuH8ZtJ0/JYN+Le2Wgb5eB3rV7FAODNYShQ4BM72oKvboFZBniVguZFs+Rxm5kYAAHtANw8thR3HH6DO65+07cqkX88PAwOvL07bgA6mMYqr1RhGq9NoggfPLJZ9/6d5775Kf/xvlv+46zMuwhtvyVbdkeuC3bct/wDZPAC89/6cHGxPgj/VqlU0oZUo7HDh1EXZ6A7DeyOIFQUqyziliKIZOiIgslDMUzwwmcFIAZcwNrMKXAkSYwPrYIqAQh7INw9lOuRksSRmvljf5agSzaQC4MSz5kgS/T1xpauwysjQaLy5NcjLquNLl6fuQ8LTkftwZYmy28FrAymY2XDIGVyzSeBhY3yFRF5gLEyrfxt3FvJzGmGw15oC0kmjuFMTfq1B4FsCteYOaexrNImFI1gGyIjBELVWX1G0AGM1Mf2wHR1BybUNsutdq4LONpn1K/AmA8CpOXkL4wM9j3V2snj3xs8J67fuHX/uSP/p9f+ff/vqPsNd0XtIr57Be+8Nrf+Y///h/efuTAfzV4++3fnd5y/GONPWN/c2Ko/oXLAePpIMpiedbUFviMzt8nmi1cakzJiDfRjjJ0Kim0hMWl1iSm5Hnbb7VPNmZQ6a/qnD7G6+1p4MBefFmyvLRrDMfe/Cz2PvQIgkNH0ajUcKXTQFiXTKqSIxPs27sbd915FvfdcxeOHTmEvmol3/myb4zY+2XvWarFRUfHEInO+BMZ57jdRkuLLpIgBRJ1IVfk6SAIUNFiYlRb+qdP34Z777sbBw/th3NELB5xp42ZqWkgzdBqNgdGRke/5Xs+/j3/3Qc/9O3f+dxzz/VhLZcvc90ScNfNwTPYVhJ4+6lTQ7UYHwni9m4nhRxKYfRFFRw/chipFIKTxx44l6/Yw7ACZDLAnBeBkvMJxcxIK8hvUrTiaYaQZK44zBtvyUuwMJJxN0JTLAyKqUkWdIa/GpBcQmK8DBZnkMzrX4xfnCa5GJWnyd54yySZ8yZpyVVBdxu741aYXD0foy+BXFhuMd+SbrUhybxfOX2m8RG0tThL6ZCBaMt4NcxwyF1McqLiMVevGXKDAp0/yYInyTzd/WAGqJZuVL6INERGILF65S1OyfBd1C7PZc2jKZVoV+uYjirNqXr19/qOnfzIlQerP/2Zf/LPP3/hs59tW9l1guwH//E/bv3k7/7uS3/hf/3n/1ttaPhHqqdOfFtjbPdfvVQJZNhda0bz2Qx7W7Jp2EJDBrQRy6gzRitI0HAJxmW8J5ozyHTM1NCOV6dWw3S9hq9pIVW/4w48/K0fRv3OO9HcvQ8v6ix8QvigXsWUFgNDQ324//57cerEcQzLq89UPtERFrTajlyAahjAcNTohJKvvV81HQtUw0h5EYzGxsbevVTvZWbjpt2DVGB4J/nX1R7oGtDi5NSpU9q+P4N9+/bAtvQHBvpAEpG8ddFXkjh7w6233v6X3vK2d/7kd33XJw6rmL9vsAQWvy83uHpf3WaTwGjEe4fhnh10QdAXOgTaED16aB/sTC2y80u9wI4hKGVqYO0npV0V0fuvZ3Fn0gaplLd8CNhvWtO0s3iZ4jCKUIsCB2JK5+ZteQtOaZKwfJIIAqu5myMWXCRBLoQFBFdJSAHBgFzIw3CLoZsVOU9ftrk7f6PiJBew7m7jgoxrTJgHXUIm76sErdTEqZf8NWpqC0nktDKgGizYf/5qasFnYJ65BgfGd46D5oK1WUx1G7YAkiKlcL1vK+O6smw+ZSqTql77AF5LnvmEDPmkDGZDc7Jdq6AhY56OjP1OMjr6qb/0z//F//4rv7J2j7yr6hWjtm1/4R/903/zpdHBP/tiFHzklcj98pUoerEZRAmiGqKwls+36ZkZXNY2/FTWRFqRd5u2Yd65ffitEVZwWf2aGBjC4F1348hTT+GVwQFc7B/ERYYIxvYglkEOa3U8/OjDOH3HbahqIeCYIZMxjzR+ffLO+2pVEKk85wbME0+Tjrim0OuMQMI0esu3MBCldczkTBJO76G9e6GII/FuarERahckULlUXvlQfx/OyGM/e+Z27Nu7F6HeU/uHSakWBLYtrwoG6wP9P/jWd73157/ru77rBDBbAW76tSMaoGHaEf30nVyFBJ574IFoMAs+VG21DmbNBjozU+ivhtrGO4yGlNBAXx3QFhukRO2lb2vrzpS6sc7ssQhIqQ296KYsyiyLOykNkojjOD83zOJECodiK8Uk3iRzxUIur+hxnRdJkLwqF2uvwWJCknPlySJOFuFi2qule/Evcb3kejV+K+WXfEuaMk2yRK0iLNWGA6XQU42e/bexpjxIC3NDLuOSyJtcyiybQ8kOzcfJOXnOIbsiTvHutqbItFDMMDPT1Hl9jESGLpU32Ypq2ZUU/666a+zCL/3Lf/PHVkxww+7P/sEfTP3G5z73r1tx58evVKIfaFTr/6gZhTMdtS+Rx267CrarMaPjAfs6naUzebgXGy282klwMapj8PQduPUtb8PM7j1ojY7hklrfrkawX6Pbd/AA7rvvPtTU1+ZMYbADvTMVCSjVTsXM9BSaAgo3pPd1bGQIu4ZGMDI0hJH+fgwKZ2AfRB0e6EdVZ/ZhaAv04v0zw5zIQ4/1bpuBNs+8kHuKmtoQOIe2jHwtCmFn7WdvPw1rh5Xp1+Kj1dbSLnADUb32/rsfeey/Pf9tH71Tzff3DZKApsENqslXs+klMH5l5vZ6K32yPwUHAoeBWoTDB/ejLqNuCoJS0PZBOPvVq0xKPAHVJyfV6vKYEjBlbmBxA8pTz8EUtnS5Qwr7qlqWK59pnfXFxXm6FEVOb3QCUyIkQdLQyBQY5IkVHiTzMmQRrkC66ixrSzdYwTJt8cVAFnWTS8OyXBkuLrs4zcWIVaRJzsmgF7nV3Y03uZbQjV8pbuOfGYEL8+94z8hDbmvL1sY+Q2EcLBvmmbt06fgJb3lGY4Z9rn4tBCAgiz6UM2u+zU68nIw50NGCsDnTQharRhnMOKxkOk9/5XKa/PWf/YM/+Krxvlnwa1/5SvPQf/lP//BiUPn4OMO/PenwYsuFGXQG7oIq4k6G6ekmZqbbaGcRZqI+vBA7jNz7AI6eewYvMsSEjPslyTXQrkNFHvOpo0dx+oScXp1h6zXCUP8wIi2ozNOmEJUowNBgP8aGZbyHBmCeekX5keQZSBAUaNWMAiwBmDF3LshR0LgFknsQOOEDRJUQnbiNShggFI9Wq4lY6UEtDAb668i0K2Dhk08+oXpHMDExARu7vv5BhFE1uOXUqbc9+ZZzP//eD3/wDLb7tUn65zZJO7ZgM7jaNq+acLUMN4LOvPM6s3f3Z9nRQAojaTfklU/h6JGD2rqbwbAURLPZzD1n5xxMcYfyLCAFYO3J9DCla6BofpPM6QMoFJiyIIu4eeeNqUkEAAIpHZIgmdNDV5qmeq58k4TVZ7CYkiz4kSuHi8stTvfibTiDxbRrSa/EZ7m85fDXUr/xsDHsLkMWsurGGd1isHzaA0TqArS0wyLPDAkyUGnjKxMOkjBDnZPmjyx/2oNkkS9PsuRv+MVAEg6iVVGKFjIsNjOMf0e7RYkWEYkqiUOHBpFMOff3Jxj/EwAqoedNvC8A6W/88f//hZfZ+TPT9b5PN/rqX5wJq0lTsz5GhMRVcaUFPD/RwAsdYO/9D2Hvg2/A6/U+jFdrmFDbMxnVeqWK06duwYnDBwnYJDIAABAASURBVBASWmjXdQRWR6vRRKB0JXCoVyL0VSvoq1RQCSIEgEkNDsUlsjzCHEvoxREAoQid3mfLTPXOGdguXD4mkq3lWZwkqpH4Bg5tHZG1dbwiFCLhbJfkrrvuwv6Dh8U2w7je606a2LcOokNHjp675/5H/uydDz10xOrwsLEScBvLfjtzX7W+WDXhzZTWRJIcGkyzD0btVtW880D68MC+3ahLSVSrETqdllbdmi5SqJmUp52T5i+/Gk0yN/CZ8kgpC+GkY5GKhxluUvlZDDuPq4RSClIgVy6/nnvnpjykBZBJmRjIoZcyIkiKC3IexitPdD0oZW5gKLKgtXgJpoRWA0bfTWfpbiCZt4Uswu48K9edtjhZ0JFFaDQGlmdAFniLrwZI5mTGowRDkMwXP2SRD11lvo1LCUKjxHeHJZ6URs8cskSylqebyTh3y3W+jJUgEs3mjhS9hVDZaRmVljxlFddoK1/PcrwsJDnbToAs2mo7NlA0zxc/5cAuq8sWBRaWQBlx284NtOiTjUCm1UKssU9VeHxiSrU5JOLbIrMJl/6n17PmL/4vzz9/2fhtFvjsl740/h8P7P2dl4Lguydqtd+TN95Oq4OYiStoRCN4JakgOH4Ktz39FlyWh/2Czrwn9SLYFrsZ6VuOHcYeed2QnG17PWvHsJ9erkcVDMr499Wr+XtakYz0pkm0SW7I9bYCkl8OWHRJZrpzpMna5oslnN5NCw1Iik8B0EUStrvm9FYWAFg5G0/jsX//fozu2gPHEDY+CNQCBtFdd9/93ife/MxfOnHnnfvgr7VIYNVlJPFV03rCbSyBgXbyVD3Lbq+CDKUEmLSxa2wE5Ysr/ZL3PjFFrJj0KgzsRV4JRIpcGXdi1ORp2Nmc/VCFQWk4jGY5IFXhcpmzeKt/NirdlS2AEr9SSF69juXKW93dYAquO71cuRJPUhJnmVwSrsTL8pYU6IEgF/Ini3SAIuxRZA5lY+ek5A1SYUmCgYPsKXIvrNXStmwMs8uZFnSGFxmguFM5i1s75wBJPj75sY0mEOlAEnrmIUkYH5J5GroCxW3BEYZhXpZk/mMsaSBanQFnMmgTjhNTLv31f/ClL31BRTbd/Qd/8Afxr33uc//HS46fHK9Vf/vlTjreHt2FFxChtfcw3vLR78SLgcOlIMNMVf3TAjjqq+DEyWPaHRvKZWFn2gaQtPurEQbkxYeSc+ACSFp5n52eJus0s+V0BlI5AqGLmwpmIVO0vJ1zMCA5V4aUfKULjF9J1x03nNZRFsDmfRAEGBoawtjuXfkZf6vVkY5w9gM5lTc/88w3PPjgG77tgQceiPIC/rEhErDx3xDGnunWkcCF8+fHamn6/iiNq4G8g1Rb7n1SFocOHAT11lPKwXqjqF5Q5GDpEuwlN4NvUOKKckA3zhSGE6/JiSuAPEGkGagCRlOCkktu0qiWoHsiSIIsoCfBMkiSy+SsjLa+G3RTWdqgxJFLeZMLcSTzdpdlytD4GJTptYZkwZ9kzoIsQkvMxyyFwmhmitv4iM7GLVMoDOACgIGGL0Oj1Uaz04b9Mx7Z5rz9JFFeJGGLAIMSl8l0GyArVA/JuXLk0rj1PZChMINhBt34aINAdXe0Ze0wofk6oYl0KWn/r5dc539QvrVcwaa8s//+v/yXP/mayz5ZP3373/oi2AhP34F3//An8XX1vTnUh3Y9RBylqNQD3H7rSQwODkICQjOJkcroMgpRrUWo1xSGKYrzcUqqyAG6SKqIAJTp13gKZ0LRcCJJMQfakMGMvP2O8RZlRmi8shxM7gakkCpPMchBY08BZmuzccm02kq1AKFeYvs6mxn1Wq0PRICW+Jthb7figfd+4AOfPnb6jvcByoK/NkICxVt1jZw9+faSwMyrr95T7bTu6dNqPLQXW0py3769sE/Ghnr3DNjVZVv7W1LvL0heFVIZ74q22hNtGYZSzhOXr0gdENLDCwy+8bxWIJnXb+VIWjAH5NI0uRA3R6wIuXyesnveJPP6yaVhzwJXQZK8CgUW1Ic1XOTCOjKNexcbqe75VKGwC1Su8EUrHxstLfpmms15wq4YybyNxpcs4uR8aKRkkTYamwcWdkM+x2SBTEFRdVoZy6fmUVsGqK36E82lWMatWa9dSfr7/87DX3jhRaPb7PA/fu5zr8/sGv21/rvO/IunP/rtnWl5ta3BPrQCh2YaIwwdHn34IVSqIey4wT67EuuMI9Q5uX26vRpFsLN0yvSWfc3svRVIqijB8hKdU5i8mp1Yi68OGjr7ntHx2XS7iUazjZYWZEmSGGkOJuMScoQepDguA5kW6KTlZyAtZP5uV7VzMjo6muOqMu6VWh/jTrbv2z70oR985Nzb7Pff4a/1l4C9L+vP1XPcMhI4f/ZsZfqFF76h1m7vremFrMgLiKRYjhw+jEzL+XxVnrnC8Eqx5opWvXNSJrlCEY5Kl3emtEGZltWWvo7zF9u22G2rPW53QCkf7ZjOe4PzBXrGyO5aChKrpwTDLBe3vGuHLC9S8ixDkiCXQk7c40GyB7ZAkUvzrJ4id/5Jckmd87mri5HzPLpL2KKsBBsfDboobZSl5KlQ41nSkwUPMwDtOMmNATVXSI0mbaSzvJ1Oc4gUQgVNwRgAlp6HFHZZ2sJeIIrZ+m1RYV661Wu8W9rmz1Sko3peb7XTpK/+B7tPnvznF6wJwm+F+//8yh9/+fBD976U7hkJ4sE62oG9URnqQYQH7rg3/2dIFaeltOTo1E/rv+1QOG2xF1JLJVHFbHwERKB0AMicGsQSUFvv73SjhZlmKzfeM4o3ZMRnBA1th5thN9naf7KjXsYcXADOgiJ6SzW24pwJtL6C7HcOtNWdagu0qCIV0V22U9H8w3IjI6OINU+gsvaztgycFim1+z/ysQ/9yEc/+tEa/LXuEijetXVnez0MfdkbKYHK+Pjearv9bF/mKqFW65D3Y575rl27YAo0yIAgXdoiCm+GwAxQCaYczCiU6TyepvImHOzsnCQmxsdh3noqj4FkvqVv9EtrKDAki8gyTytrYHVbaNAdL4uR83zI+XiZX4ZkmVeGZU7v0OpbCXqXmscuLjufU8RIglwIRc61Pa2e1ZYoacswkVqHGRIpZIt3NEc68urIAJhV7N28ScI5B1LGQMbG+PSC7nGyfONtYTeQ4iHDFNLB8DYnY3mdzgWwbf5oYGgqHBr6/b/2j/9xC1voOnD77YfufOMjT065jptOG4jTDqxDtxw+gTpC1F0Nmaxyql2tKAxQi0JUJdMKAQcgg+Sip8mEpDDFnQlnxyCNRgNTM9OwnQzz0A06SBHrxU1FY6+08bDfCjAeRemlz1TvbwlGtwCMiRZdaRbLcHc0PgnCyCHQosSplZHG6LZTtyPTQIVhhKhahxYStYMHD3/zgZNnH15a22LMfL8W5/h0bwnY3OidM4v1Ip0VxPYMODAw8P5BBmfqphSkPKjzsAMH9iEKQpgSDRDI6LocIE/dxMAMucdOJcyoK5B6sWcBhjNjbqlsVqHDlIm2+mamZxCG2tgXXq67kRSg5b/xLRLFk7QaAHJhiB4XWdD0yLpmFLl6XiTz9pG9w2uuXAVKmVmo5JLb8CUsyVyEMLpFqDxpeIM8YY9Z+dvYGXTnWdzAyMygtnUummgLmDIwpuxJIpDB1SyBXSWtxVcPBHotDjTXjIfxDGUgcu9cc0c2AqnqbGfpF8N6/f8wmq0Cn/jEJ6rvetvbv087YMfqAxGarUlU1f0Dw2M4NLIflaSKMAlRD+vItPCtBg79AUSTwBbY9p7Izur1CeBcCECLHWTo6BjCvO+mPPBOp4N8bBCABuZJS36cA72DTosCjZ3Z5UQyjcXU5IzZy+IkQRqID+cBeZz5ol8EMFqrTxQIVJexEDsLMDI8DKdFibWJ6kuCbO+99931Q9/y3HO7c4JlH7ODv2y+z1gsAbcYsTi93US6uH87Of340aMjQaP1FFtNHdbFCKQUajqn2793HxIZX72lMuQLJcS5CaGpIwNPUuX0wuvpBKTis+BgeYF4xagEFbRmGmKZAfKwSOYKB8tcJJfJWYgmKaWmmmZD51yeLkOs8SJXXz9JkL2hu3qyoOnGlXFTiCWUOAsX4yzdC2+45aAsU+Z3p80wGj6jPXtDKuOdZPLupPljGf5WJ4Glpbnz8SSpaJDL3XibYjeALpLLyoakKOZvZ9HZhlBzCwYyOs5pZsrgBEGEuNUGNc/s2xZt5WX1/n9XHR3dEmfnmL2igYFjR48efzPgOD09ibFdQ7kcTx4/hoF6H2A7Eupz0m6hXq2hT+fRgbbEMxlsaBwgWeSyoUMinh29Uk0tssyYzzQbuVduv0AXRFUtegATqUhEiTwtg6pyWf7+mWyDIICbfW9ILoiTBLkUSvpME8gW6FEUwS4bf/tqWyR+odpM7eYcPrAfDsw/+W50Viaq973h7Kk7HrQyHtZPAm79WHlOW00Cu4LgzgEX3B8i05ZZG+Z2jw4PYnSoX55BG5THnmlLzSAVjfXPScmaB5crhUwaXi+0aQlaqNdWTESmaaW0KXV5IahJIUGGYPzylXyBQFI6SSpGjIxvrnAIWKjC+W2KoRtypB4kQc6DKRaSylF5KbqyjNVtkGfoUeItVHKOh8VnQQ1ayGMWvyCw8gbdSEtfDYy+pLF4CSTn2kL2jhvt4rJkQWt5i4Es8kjC5GNAEnYZHwsNNESwTptxtLQBGYCCQEYzE4EZ8Hxc5Am2ZGjs50pjydlVKirrgCCE0PIOszw0HgYU496QaQ5kgNy3LEuRiosBVBfUkEyVuVRtyAJNR80TOrRkFBAGMLqODHogXKpdnhmHJNw39m9+7rOfnbA6twJcuHDB3X3vgx+ebLRPUzKN5IXbr8UdO3EcfUMDGJ+5gkqfA12stylBX83eTnvb1DttW2ck4IhAxlJSREuv4FS7DQP7N6qpC5BpTIwulowhwwo62JVlGaj3UK8dnGRvO3CWhhZsBhQvoynBysyDMjUCGjihUr2/apPxE+9URwNWFpoIFE1FY2VhqHjETEcHLZw4cij/505Q/cY/cMHBs3ff9cMfOP8jdTH09zpJoBjpdWLm2WwdCVyQWuh37kkXt3czThFKSdiW2AGtptta5VekbOwnJe3ly1i8xtY7vZ9gVkwb08GAxQ0sdyG4WTokyL3zomwmZSDFYomF5GtK5e2TYukubLgy3R0vccuEXAZ/3WhyedbWPoOVKiGXL79SucV5veopcflYag6UZUp8nhY+liK281gFkN013Q0rk+UE9piPWWo5MKoFvBcRFnPGyeBYhoMtyhgFkAlBSx4qbaydQ6wp1w7cFfb1/TtRGlsFm//++uXLe4bGRt9Xr/dXnd6x0EXo7+vD2NgY2kkbQeTQSVrIkCAMHUIZboKwy97DHCwhSGRA7VPqnVg7JjYwMq50AQxAlZkFkkoSTnIjF8ZxlcvGaiUoirMIyqesu1MPqEWDhVHfDFOAAAAQAElEQVTgUNUiY1Rb70YSBAEyOoaVyhN33n3wUcN5WB8JuPVh47lsNQn827vuGq6D72OS1kMpjaTTRl+9ir179sAMuynSXn3KFQqBTJmkIgpXugPqlZbimZqczMmMrwFl7HNYBY+84CoepeJZTGr4btzidHfetcavxou8uoyWq5OcL0vOx7vpyd74bprVxMmCD1mEhT+mxZclpZDtQ3BNbQHHUtLG72r9NpqeYAa5Z8Y80niXYFv7ZgDkD6IlT9TaZXGbh2El+upAGH5xvuTmj9166613uyC4zd4BA9ls7N21G8MydiRBMl/wWv/tK2oBA7i8W/Z0EEWeSuRVx9pBs3fVPtdg9KRyZ8GIDGehAUkLQDKHPLHMo7ucxVeCZVjMoUnCxs+25W3RQhbpvO9h2HfqzG3nn3vuOZ0zwF/rIAG3Djw8ixskgfWspn+mfbaa8ZT9lKR9AK7dbOLQ/gNSHkSolXzSLj5UY3XaC21hN5BSPEKYYTdIqUTXTRYIkjDFMzMzM6tIssLrEr6L/Lqji9toaYPrZnwdDMhCBtfCgmQuJ5JLipFLcUZELsQv7relDYy2G2zrVdYDBhYvN03IhfygxZcZDgMb68xR/mOWt7Ob30bFzYinyOTBxrDt5ERbyakLkr6Bgc/3TUw0Nqre9eZrH4a79ZYzz0qOoY2HQji9a/v37YHthlVDea5pgjAIEEnG1bCCUkFn6j/BvEm2JrJ3qq1zc4sbL7LIMwJLG5jRtLAEyzMo0xZa2oCcL29pyzOw+LUAuZCP9c+O3cyo9/f3o1Kp5OyMt8Ho6K439o+OnsiR/nHdEijny3Uz8gy2jgTs5xerSfZsPU4HI3N1tNIPXQD7MFyn2ZISkbGWpjCF0N0rI7U0SZgBJxe+vGW+0QCp1E8qXsg/yJR04jzODNqyR37ZC51HlnlYPkmQy8MyRZegjVc3cnG6O2818cXlLW2wmrLL0ZBcLmvN+LW2iXT5CIIBzEvu6By7kyRd7ZCJ1dZqF+Kq0au1peh9Kj4GCuyWYbNyieZjot2BLCDaWYLUsRP1VT+Hc+e6iK3A5oVGVj1Yq1WfCMMw/4CYGbf+eh9Gh4aR6v2w/tt7CO1o2c8kO9ilp14sk4GlrLNteectvbMdAUmQ82A0JS1JSy4Bch5PMi+/hGgWQRb5ZO9wlmxBQDJPk4QZdFt8WGgwMDCQ4yxuOwsucscOHj52H/y1LhLQbFkXPp7JFpLAsfHxfQNp8ni1kyCSt2OfHN63azf6ajWYt2YvYBjNTw0z3tIpeQ/J+ZfVEJZnAClecjYvA6w0ydw7t3/KQrPkKmAvsgJVIyKLzALJ2VgRlEqpSF39SS4sT3JFRWUcr7UOK7MYjIdBie+Ol7iVQrJoJ8k5MuNRwhxyNkLO082i8oBciLfyecYqHuadw85gZ2nNaNh4k8xlaN9rbuv8Glr02VhbXg4ysrNFVgysLQYrEeVtWERgdRlKS4d8cRHLkFnb7BPcgnYrSV+6cOFCZjRbAe6869YHgyC41dpq3xGHvPE9u0YhJx2BXphYRwr1agQbi1pUQaxFFEWcSc6kxfIs2PsZx0n+DlmeSPK7O05SfMUUxUUyH0tyYVjkLnwanxIW5qw+RTIndtY5xUjm7R2Ul24LGsNL9QjHgb37D7zVSAT+vk4JzI/4dTLyxbeOBOpZdldfkt1Rk0IJ9VZR4cH9+2CffK0EDrZFBin4AMy3Vrt7ZkrWwHAW5oq9eHcNhcJwm9oFzIZ3Wk00Gw1UwhA5T73YgQCrvFIps1K59Aq72ZBU/exGLYhb+QWI60xcLz8rT3LFNvdqIsle6CU4478E2YWwfBvjEkWTdT50s/y1SLMxbrY6aMdpbiDIQjFbGfOYLVwJrI6V8i1vtjaL5nPG5kliM0+euCFlurThDLTSGB3FMhcgBuIrUzOXlZ8JtsQ9Ojb2RCeJh00mBva75/kPOMnTdiikYHg7O7cOlTiLw140RRItajqi1+sJ2jslXPdt5S29XNidZ/HFUJZbjF8ubQsxA2u909ywd96gm97JqJd8K9pyN7B8kkiSxA31D77pe7/3U3sM5+H6JOCur3hZ2oazjPtws0uglmXn+rJkTNvuMINeDULsGh6SQYc8BYdAyiWW0iC5YlfIIp8swiXETHNvot1uI9C5oL3UJEFyCemyCDMyKwDJJfxILsvuWjPInryu24iYLLrbQi6tZzHN1ei7868W7+ZtCrhbEVie2fVM+ywZnYx5xxSvbAoFkFeV5eHiI5mr1blc/krCTDT2YIDMUe2QQdfiMwscYmatK5MTW+bramfPnq0MDQw/SjKIwirMmCuehzJqkmmKahjBvpY3UK8i00Lb3hmTmdFR0yNVwmRu9KnSTmfuUAZJBQWIBPn4qbzRlvEyLHFl2uhXAqNbCVYqa3lWH0nkoQaaJEJbiGhFQhKtTgcI3YH+vX3mpVsRD9chAXcdZbuKaqS6Uj66eSVw/uzZgWHn3iKVEVXkBYV6sXaPDGNwoA9EhrbO0O2FI5l3In+ZTXtIuUOQp6VkbVVuYERk8WJmCi1tCieUAqZ4T14Zl3ce5AaBJExBm2IiCaeVO0mQhF0lbwst3QtI5vRkEVpdpiysTC9YzKMXjeGMzsJuMJwBWdRFzoXUlbfD8rvB8GXaeFncwsVgdNb/bnxJa6GB0ZT5ll4Mll/ijK6Md4fdNIa3tIHVbSHkBWeaBxY3sH+JmmoewGnMFM40m2AQwIxHbMZUYw+NrfGyeWJhN5CFjLpxFrf2dYPhFoLNCtVs/JVhc8foSeaLQvvBlIwOKRy01a55xEYaBBMi3cCb68b7waeeGmQY7LEPwtmctQXz7t271be25hHy98PwFXmwcZIIRw1NmhvCYn4Did4nKw9QfwHiTpobb+gyWRV0GUjCOQe7LDQgVWYRGN4ZToQUiBksXAyGXw6667U+GRv72VmrvXsnzugsz9pvn+g3WmsvNJ7tOA327t53z/nz54tPzBmhhzVJwOS+poK+0NaUwEiavrHSSU6HnVjeuRSHFPre3bsQpEAgBR6GDqkUihnr/IXLiilSvpDWa5IWLABTDkZjUMbtv0RBXjq5lN4KZ4vQJEHSspYF49+dSRp9N6aIk7wqr4KyeC7mW2A39tmrTrJoN1mEG9sCLJCRLbYwe5GEjY+2iAujIryNKxwVW/7u1aflqZfmkAV/sgiNwtqRh3pY3CAJMJllwZRQG3hn68Z71+DgqOQ3BDjZxiyXe71fi2j1k2SeJpkbYtEVaRllssxDftkRVIIMJgOSOW69HmRvfiSL9syG3fWR83mBFn6WZ3qjnAckDZVDiTNDb33M6ZTtwoB9A4O3x/X6YE7oH2uWQKGt11zcF9xKEpB3XulLca6epvVIhjaS8TY4uH+vqRk4vXyVIJTCSfJu2QtYgiEsbj/8YcZe7yEMSnyklzmfTGkGi9uW4cz0JJgZBSDWAIoEWRgLIXreJEVfQC8Ca8diPFnQk0W4OH+j0mRRH1mE1rZu6FUvyTm0yZxk3t855KIIyUWY9UuSzOvWek7jnskDzpAJZzVkGWFfjdKxLWRpQBvjWSNj+dcCJOfIyfn4HLKMaF7CQGlyKV0KB2tPkrLZyVpb5h+yHDpyZL+MWJ/NDXUtl7V9jQvqD6D3IctgF0ml8jcJisAukhbkZax8lmm0JCP7Bcc84zoe2Wy918KCJMh5sLIkYQbdjHQJ0DXbE8WKm2QeMVrbkYg7Wp5k5ODg8OEKOZJnbucHN7Zzi+W9sbV57jdVAvU43tOXpG+og7B/k2r/U3nX6AjsqzNmeOU7wAyx/SSkGRp76dyiFpsCyCGdV0JGImVlAUia7tcWYgfmoZNKAzD+JPP8jICK54A1XnkbZpURKYaL+JDM61qEXpI0PkuQQpDUs7iv57kc/5KneVxGY1DibnRIzvbVaUwVz+hgvw/e0U6Nbf9a28iCxuIGK7XR8kvopiO57Jik7KZcGLe5YxijyfmKNqVrApUtY9D37j94u/pQkSmGNsq1KMny72THMs6JnXdDCynJn6RkJErdZhgVKE0Lcij7X5j/HLWuD3K+rjnGi1B5G/TuWVjSkITpADPSJZ4sCpoOsTE0PMm8P3Zck1jf1e92HKNar+8No2gPtvuVbWwHTdYbW4PnvmkkUI9xui/JTtc1qYgYcRbj6OGDMrZZ/jKSlCFO8rg12l5QsngB7YUsAfLCueiFdhCd+ObbaYrbV+GyOFEsg1gYuxwy5sENe5A3uMIVekZSsuAKFEuzyOXpTUGWQDLnTS4MLZ+cx1m6BJIaShkSq3bWmNiYi5EMTopWp43ciFKjK1ojs7IWzs0FS1wH9JoPqg0UT9sJcgqL22I5FpkKZZkO/tvtpMjb9E8ODgzuNQNNEiRzb5aU/GXMTaZkgSeJ8jK8QZlOZfxsPMp0onQZ34jQ6s5B73seSugWdtdl6W6wD8BammTeT4uX9N3xKIo0jlkuB7G1xU1dRn2gpPXh2iRgb8naSvpSW0oCFwAnQ/5N1STdy06neJnkou/duxeQUgkD5p9yz3SmThaKRkRYfNlLWYJUqspmIiuhWAzYB15K77wsT7KMFkZCqUzQraCU7OJV8DTc1cDasxINOV/3SnSWR66e1uivB6zdWVb0c3H8eviupSxJZDLqcEFe3DytdjuWUp5XEWUbjYC8djmRFD9a8WWBNimUS/amky3P50iaZXEahlvCoJ8/f95JtIP2gUN1LZdBtVqdfw+UScmdgfbI1O1URCYG51xOa4bcjJ4tCGwMYPSSTx4X7fXcxsNgMY9eOKMx/GIwvLWtmDNtS8La3k1Han7lnSjmuxl0I3QuzPuocQ0r5ff1LGMDQKLdAK6bi6XbXM3xrdkoCfznw3eMVBg8JhUYZjLoYeQwumsU1WolXyWTzL1z2wqzF9HaUYY2SSxuUHpNpnjJ4hWh3kZ7oS2fJDrtNhozMwjo8pfVeBmQBb3FS7Ay3VDiVxNauZKuO17iukOyd93dNIvj5NIyi2lWmyZX5kUylxVZhFfje7X+Xq18dz7J3LgYzvia5xenKTraCjXDUuItjyRMWZNqZ5mJq18k54jI+fgcckkkA90SZI5I4SCnMYkD+yhnjtrUj9dee00bWln+c68mQ3tX7NPsFlrDyUIeljZI1LkST87maaEdx9ox0a4akKKQTWZkK4LVtxKsWLhHJsm5eWrZxpvU/NF8sYV8q9XKHQOywFm+0RlYvATTMySRqBycwiRj5Co0uo2Cq0tro2peH76rEc4yr8z6NMBz2TwSqHH6ob4kORGkMdKkg1olwt7dexRPUIkCvYRpEa9Ucg9Ib6029JziUu+2spYSQQ5Fn8oP5JA2zYpVN/RyUudiqbZqbcvd6UU1apKQzc/B0t1gC4TutMXLl95CS/eCMq8Me9GshOsu1x1fqcxa8q7Gm6REzQWsSeY4kgvwa0lcrQw5X0eqcc5UIEWmkc50JJMqBXSPg+a1yQAAEABJREFUHUk4FIANuKwuY1uGFg/UKDPd5Vwp82QM5htvhJsUJicnKdkGmRqeQrLVexIF2gnR/gIzp1bbe2b4DO04RZxk+eaXug2DVPIW2l4vpHNlABZWHRt12dwlCbKAxfWQ83ijtcWIGXWjI/XOZ5n0R6a5hJxHTpP3CAi0O0gSqRYogckiTdphFK36MxHEzrtsLlyt1zabrkbj87e4BC589KO1fWH1icEkriFpoq+vAsQxDu/fh1AvWBZ3YC9IvV4XOgUCbYOFEWw7PJNRzqRJKQBT4UpAHrdfhjNwSFEJA2TiO3HpMurVGpxe2EwvdSL1lKqsSsBoRZXXG8j49xItSdEVsDjf+BkYnhSNZjm7wIHohjJPmgNl3MKShhQPAbouknnK6hHrPL74QRIk1SVRmEc1C8a7G6weS1v9i8Hy8jokozK0esq4hZZeCUjm7TDaxWDlSm/a4gZkQU/Sksifqp9qv3lNNt7UOE5OT8H+lWfmACMlqZB5f01xG1h9sHHtBiCnIzkXQpfRFgApeSFAPZiPFUmQ8wBHpLPg1K5I7StAZZnC5mO1GgQP33efWodNf508eZKMooDOqe+ZgHAJEMrA602DLVYoQTN1SNXfhna4pqZbmJhp49J0E1emGphstNBRmSCKJCvRyegHmJcZuXwcXRdJlHOCJMqrGJtMbdN8FpJkTmd4sohj9rLyBpa0djvojZaymFFbw6CCRP1KNGYGLgyNTP2KxQ/aDaTSqaZNgkDRQLyVidHh4Znnv/DVcWWu6i5auSrSHUXkdlRvd2hnZ175yu4ojh93cezMoKZaFY8Nj6AWRoCW/Hqv5l7kxSLK9GIapPIq8lBlLV5CIqNs8SyJISZoNWb0fkrpiq/hgXSOpd75ubjVqcaA5BzMZfaIkOyBharMivq62mn1ltCz0DUge9da1HsNbJaQkstxXkK6BGHjUCItblCmLSSZy9TilrcS2DrN6AxyOgLyfJGJh41XprTl9Ybe2JzP7HhYvDdVgbV8g3K85kJk+diSlOJ3iNSOQNrKySjqhoOrCqWVKTb99dodd6SdOGl39E7AWg7mc5bWchlwCCgLlcshgb2SMt5ZDolen1SDYJCpLGT4Mw1MJhwsbTyuEaye1RaZGw+9/1bGyiZJAsNbnKScgBi21W54o3EaIJIgackcpBHy8bQyOUIPFwDVKNBuYYhOp9VKo3haaH9fhwT0ilxHaV/0Zkhg/i1ZZe3TF6dPMsOtWZbQXjZ78fbu2YPQ3ijx6H7JlLy2O0ukeqWFVMqMg/1KVPmy9+IrXSTK3jfJBUqgFxXJHE0WYZ6YfVh9i2E2a0MCq2stjMn5tpPM+0wWofHshrXwL8uQXKJEy7zukGSetHotEmuXxcIScttRJhaFJOfavyhr1cmy3mULuPk6yNl4lvax3d4SBv0cZKPjzkRm3/pQ+62fJmOSiqaQu7oAsnxHK0GcdfJ3y9IlTX7UpRfNFuZii+u5rip3MTd9oSAfY4sbWNrKWpykjHHxFVXrk+UZWL6FBhbvBpL5gsB2hAJtt0fadZDOiNFWx62AhzVLwBv0NYvuphXUWv7a6m5PT98Tumy3vVQy7AhAjI2MQq6Yzs7neVn+fKqIlS9tGZIEuRCkX+CEs/LtRhNWR1G693Mlo24lyHn+ll4JrF0G5HwZkisVual55Ma3zcbBOmkhybnx6iWn7rEweoNuxUzSWF0TGI8SehUkOdcmktqKdTmQC+OaVCgvkvm8ZZbClBbTbDB1cR1b4Lpw4ULabHbGTSbWXAvb2tFKswxwnJOFjY8BSSPL8XlED5K5jCzfgOSCfPS4rJ4e6GtCmcF1NIkjr48k7CKZp60Omy8GFieZG2tzGmSk87jhyzJlaPllPwxXqVQazdZk8RF5Q3hYkwSKkVpTUV9oK0jgE29/e5WN9pNhlukYUgpEjR7o68dArY5UW2dKXvUmmdOQzF9icj40Y55n6mHfQTVQdk7Xnafshbe2DmGwENszRTLHk0WYJ8qHFKIpxW7IPcpZfCofx6A7vztOMm8r2Tssq1kutLrWDlyO7Ry+VIZziEURknn7F6GXeOYkcxKSC+gzWfQMTq5RpsORYn7Y723nxLMPkrOx9Q8K1kW9ZFEPybyNJPN+mOI3IAknoAwhs6TGNKthi1yNqanLobxRFl3Nt6nLsV08f9TJuf6X3bNiBmWaZBntGZa8e2YKebV8keR3bpSzNDfMFrdyJPP2GYFttZsxt7iNkYVGY0ASdiRn/QOcygTKdjm0OgmoJRrsSjNtvUeXL01ObvBP+Vpl2xtMutu7hzu8d5Xx1v5qEt+JNGGaxnqtUuzZvRuhrbr1ItmLt5KILL8betKKD3TY15iZQqZFAkVE4aycoktuUhSOILkkzxBW7v9j708ALEuu8kD4++7y3su19uq9urq6eu/qVUtrQ60NSSAJIWgDBiSQoMUmzPZjbGO7zW97bOOZMTZgBjAGY7BnNGNs/NsazBiLZZCELCEwCKEFtXqrrj0r97fce//vi5uR+fLVy6ysrbu6+t163z0RJ06cOBH33nMi4r58FeH8IMi1elGunw7KX4p8bO9cdJNrdtf1+l10zRl2Ppe2ouxWqdsja7sUJ+F6gwHdMhvB8hEbyWzGd93B8nW8lfvEwcIgqffpCVLFAHZ704N1L9f83Mypp7XaLfR6Ge6HV6jL3U6YRLm/gxjsx2C584MyMb/Vss3k+nWR8f6owjOrfoQ+OMD7FVsM6CRDueu6j2Q9IYvtOLA7XehGi/cYSUDOYnl54Sjm55cwOi5oBEYB/YKG77KvzMWZYy8bK6rroC0+aKbtFcI1e/ei6nU1P9YDqi74ITOUPONjvuECU8PpQVR6l+6Hm2R4qJ03BuXIVKz6tvMDrszqx7qNVcZZEiTXSZAEyXW8S5E5Fxtj++Sls2uYPSRBBcPBMpLBJLKmq9dACctqwY5eWUBZwDsoIVHLhoo6WU5kww/JcB1IniFDrudZvfVFsDqjyqoukuGeTXQfJ2XRSspqD14gx6lTs0/mSbrkYGh0ez3Mzc0F60sFuFUoxGs9rPGvAjQDR4C/3a+ySoAHKSJoOLeTx3qrNUjCwdk2kwzXwmkH87g6tz6SiIflufKcmxol6gvrepYPAV33J9WfFFX1zOFnn9V4LEcdI3p+I1B71vOrO6p1mY/AI3femRcLi/e2wCYV0CsF3UQP0LbpaQX0Qg67fsi22g2SIBnEScq5Ur6GIHTIKRUdTRK0BCEJssam2+6hWqXHuYay5/0huVqX5Gr7q8x1ifPP2Bmda22S51plqPywtvt5MU2utKfLS3J1LGpHSyR9POhwEHdgVTJ87HSBBIHHwDrjFNsyjThDaKuMRI0IpKjqkDWtxCsUvB0MbCO066ObBVrQQcG8UfVCQK+FVe9y/iy0Z0+nTBaylefDAW1+cQHuIzm8CyRXrx2ZgKzz7idZp0k6e0lB1m3E6+z7w/YvLi6GdkkG25yxjKnhNLm+zD9YZL6vq2XKshvqHjty9MinP/3prnkjnP8IJOdfdVTzch+B5V5vegK8N+sVWU4gSwD/Zyzw+ys9aA62frj6++G8YR7J8LCRNTVvEIUeSP+XqwsLC+G9oINGr92B3xdGPW4n1jPPiHmy1k1uTC3rOobTBkmTVftCZpOT6xqbiGypiOS6Nsm1PMkzdLhNO0DTiH6hyDPt58f0IH8wT3LVHo89yVh1lbqObViFJl8uJBnqmk8yBBfvsvhbxy7vR8IM1BROQoFSK7AatQ6SGHaQBMlQRNY0ZHSyXSKK0fWEznnD9thExXIXh/rmkUTZ7SFPUmRllfWWFq567LHHGIS2fjpX+a1r3kRy7vDhOYLH3Q/3sdFo4NSpU3DecIBM/Y5dE6miV8LfAPe2vGWNNdWlkpriaHJuviHGug+pllYwWE6ulfl+cUXLGCSdDTYNy1ueJGyXvyvT0y6D5QyS4Toh0XqbiZYNVZgQum+p+mXFrpfnTZw8OaNrTlhfkqRojTXbn/nMn/4+AE1BdR59znsE5OLPu+6o4mU+Alm7vadZlbckZclUDxz0nnvn9DbILSLVla//LvbCOkES1mtHqxVIWD2RDE5BJRem/CLUJglyDRdBpZyRnJUjzgbK+tlk3bZ55Fra+UHYMfbzBvP9ZU6frdwyZN0mSWdXxyJkdCLX+MqufHRzKNWvvz+tonP6xLqRknWbSHSfKEnq1KeRZLDTLJJhvEkiVWCgXL622/0OPS+X2gfw4Q/XxmLLhzRsWfaiCf7iL/7icqez9N97vU7VajXALMXs/Hz4HwkdGJvNJhwk3WCiVbx5Tm8OB/fNJTzmRpRyuh/mx7zTJEOgJQkfJEMAdzpO9Lwy9//VYDvNJ9dknR9EV7uD5vXKMujyf/rjvIO9J2fzs3PPnHj66U+aN8KFjcC5PgwX1tqo9nM6Atft2HF3VpbX2gH6F+FYFti9a6fWWfUD6BmzDSoVnOzlInW6huT0sNZpSfalzfM2aMoEdj5eYfgBt3Mwr+r7m1vLAr7VDOkJH+psiDyHH5IhWJA1PVvT7s8gzlanv5ys2yG5yia5JRvIWm614pDEoG1kXYesaX8Vkv3ZkPY1JNf4vgcK3Q+hUCfrFznvz0b1ybpNkvCvCIpoTCDUfKwcle8vBQJnG3kKeNmuiWlaate93b7rT594YsJlLwT87u/8zq9VRXnMz0q09/ixk2CWo1dB46BnSf3zNnzhPDQ2Elwftv0MGSo4h4+vQz+GVXW5+WR9DZwnWU+kRO0vHMgNp/28k7UsNjqYolDnEu3wQD7AdY1SHbQOtaE3dcv/6dd//dfrLxRspGfE39IInPudsSW1I6HnewQeeeSRdPn4zKvTspzIUoLaoptsNTE9Jv9XVlh5mGAHDh16sHQe/MiriEVS5+EfkvB/xtLz+3M5XykEKUckJ5yC+ocAbHCQ3KDkymV7rA33MFKnB0EOG5taarN6tcSZ543qhKucEC6vqvVtDmTPVHqeHLcF7bDW9EwlkU8SXsk5H1bounehFV+qutoV2tsmXzBfjPuTT/zpR7dv3/ZJP3sOatCYP3v0CEiGX1rL81zXoB7/tWBZ588cIXPO3317PCNIBhuc91gb1k4StsPb/+bNzc1hXrsKljMPQw6SgUuuUVLXUFnr8k8Ke0Lj3cFSC4xOu336C5/77G+FSqPTBY/A+d8RF9z0SMGlHIG7lpd3TGfZQ6zKJFVA97b47h075EOqENz9UOkpDib4AQ2JLZxIPZkDct4qLORkpTiUpJKxTvJMWVTiGUGyPpGUKawz53guVe1cUECTmT5s1Jzt78dGcoP6KjnpfsTyYTa6rL8Np90OyTAeJJ29qHAb66DlH1m7AU/u7LhdLjbIun3nz9cIkqt6oo6oL1LzK58Ef9/C2+pKKrjVXMtRgTyTnQoNmgdUaCSplujFjqnJyQOWvcTgxdDf6Zw6+YUvfvG3HbhL3YMOcFEnAdwAABAASURBVN6+Pn7iFDK9W+4VBTRYLtGuVwmXIxyh1/A1CdlwSsKZ3Nw0klK5MTy2VkTSJIBkaDtNNW2qqvAqwHb6+xU9vTfHyhHrrmSHkrKs+1Gob5ZfmF+ENiHgNEDoVcNnHv/iE5/C6LgoI5BcFC0XrmTtbrpwXSMNGoHF48cPJJ3ODZAj1PMJr2qu2r0H7JUh7vqBIrnyYNlHViFtvqqf8SHXLhFZp+18vbXea3dAEna6saKdUb8uy8ayjSjJjYqeU36/3VtruNqa2BApkmHs+ovOpX3LGv31nSbP1Gu+YfkI5yPMM5wn6/oxb15/2vmtgOSqGLmWXmWuJAZL3JbhYpJwYCAJBxnfS5kqZBVzdIsDjwGX2o+d/wXG2vHhD3+49//85v/zXxTc5t0PB0gkKZ588knkWp0vLbXh58YIE+4tdovkWiPnmOofY5LhXiRr6jL/aZpX5v7Sq1V7Ze5r0R/YzR8Gkqs+xf3xpMCTf5Khn9JTfeHzn/3w0SeeOIzRcVFGQOuJi6LnQpVclAfmQo24Uuo/9thjydKp0/cnRbGtQrHqDHdqhU7NuP2gppp9e9XotLFR30kOLYp15JzCDN5OSA9ocAguc35oxeeZSTLYSNZ00Bzb3s8jh8v1ywDUjAhDD5IgObTMTJKhnKSzwQE6YTsMpwexEX9QznmS6/RHnqmxkS6yrmcZVMmqXSF/DifrN1wlUqcNkiYBJNfZSTLwS69Xkzpek4S/RJWAoDxGQrIsipv+9BWvaAbhF8DpE5/+o88/8/TTv68AXjJVT5hgdnYWx48fR6J+akGrXiRIs0ybaqXS8UMlGFbp/Vwxw0dDEWj/aXC8XWZeP2I9P7vmx3wMwA7CDuoud5lhPUZ/2vlhsIzregIwMzMD54uVa6rXDkc/9xd/8asf/OAHO8PqjnjnPgKe7J57rVGNy3oETnzsY3lvYelgK8kachlw0E2ZYKI1Fh4oG++Z9sW4+JU8UFWUSChnozQpqgZIUfsgpc/lQ55HpU0aIBn6TNY0irrvRsyfCyUJjyspWqE+WJPBM8l17ZPD8/317Fgj+vnnkya5Wo1cn6buidiOJ3cFGAI3SZBUPUHBXIkzPu62cUbBAMP611h1iuSKfgRKEj5ItZ8w8Jz3qxuEHSY6C+qCpZqISkQTqAqp9m4bZXmgt7AwFQReAKfPf+xjc5/5zKd/bmlx9mjZK+BAVzHF4088hYmJCTiQlmUPE+PjqETVZd1rFVap+pgIZ/vEcTftR6wXeZ5EmFeVGntP9kVLPcft5S68Kl9e6sAymoDA/OBLdA0ajcbqdXL9flS6XBH2M72qDHVn5+eAlEoXFu8uLyz/mz/83d/9c2dGuDgjsJV74+K0NNLynI3ArrKcyHude5Oil0JOISWxZ+ceVEUlJ0H4Iat6XejRCjbpGQ7UJ/qkB9vE8Gw6beSo5EUNP9x+sBPppDz6wuwc8iyFt95DmWbfhR7gQk80k0w532IJSCKFoAa03kMlGQNy2P2o1DZJkDWcN8iVfELYDtts28KvhknXmRTBCVL6jeAQZW8iu4zVpU4JOK1mZZOTVLYPFE+QVPhQOmwvXcG6ZVfoFxj6l6h8I9iOGoCWXwG9qgfD3/SuVDHC+UK7K2pdwitGyjLnKSOSFZAEScms/3jMDMBlDH2zyetRBWddaPz8y2WQHqfTvKHA0lMdlYNhNew+G9ZpgKVUlyBVfg6AjlBfVHdFuEbqtnLuWQW3X+quUfdgZCpJFGBS7bE7mExNTSgIakGn+7dZArvTxu1lp3OVxF4on+p3P/QffzMpu7+XawyTLAOTHEvtNj7z2c/DE5bK/dUYZLrXKUpdHyWRMlFwXxlvpVI9XwkBo9K90Q8PHhMNSSoNooXKjVKDWinPLAltQRkiVTqH6fJyB6dOnsbc3AJ63RJkilLx14iylR6+oqfWxPd9mCZQH5SX3b5+FanWEnT0fHSqApSAv/zXaLXgI2+kkNIv/PEf/vdf9WsI80a4OCOgS3FxFI20XD4jsDAzsysrypv12FDvGVFpBT01MQ0/iLbSDtUgnRsOl7vETtQB3A+q80aaJPAXlPScwqsMSD90kARZw0456lARnI7ozzs9iChnOlgW87GskMMznB9GLS//E9p32rCs6VbBAcFzeWg8dhFu1yjlHU0Nyuk5oA0iBWFg5Ri0YYV9VuI2LETWGsia2jmXKqioGYjGENA0S9G+FC1EVbThhyQqImBDoWrDklCwapfkpGodzxmbZUDj47zhiYypf20tkY1pUSFZ6lw91i0Pmv9CwSc+8YnZP/rEJ/51lnIx0XVeWFqEA/np06dx8uRJTaa64e/T3X8j0Xhbzv3zuPl5NvV9FanLDOf74efXMM/lEc77eXG7isPw+/yFhSV4i73bLVDrjlemvjdi3X6qW3lFVtdCfoFkyFvGC4eGVvJHjx6FV/itRoZeZxntxaVybnbmv/zZ049/2nIjXLwRSC6eqpGmy2UEqnZxXTPLdzvg6vFCoqdu545t8sBFMNEPsxEyWzj54cY6x0okeni9Ko/OgiTIGlg5XM/tGCusQPrzTvcjCAycSA5w+rNyNgpCJQcoiEoohUjl/+FgVap6JZUGEiUEUlR8r2wMBzrDrEonTwpE4Dqubzi/VQzro511qhVSWlDbx8mGoGQSwTQCygdoLYQADD3kmrXOL4NEpT7a7kC1OrRNsRJJ9F8vkusmQVEOqmeQK+O1WjCQOEuxpfvbd34jDMplWQYZFyaqLMrxMab7N6p7mfKrv3j88d9fXm5/uKy65fZtU5idmQl/uuZfj5ufnw+BfX5hEd2iQE83rq8ZdY+naYY0y5Fq29vPIEBQ/AQJUqZI+kAkyLWKb6Q5mlkDpqnqJ0kKoL6+y8vLIYi7zYWFhfB9GOhIpd9QcuWTiOoZq1wvogJJXYtE926KRD7BSMXzhD9XW/Ozc7KCQoWTx09grNlCI0//4uMf+egv/pdf/uUFjI6LOgLJRdU2Uvb8j4Cer6TXfTBDNVV1Osj1KPnB2qatSmglTephlIydpLGZwS73A0qyfnAt7JURCCjA+xurDgJmnw3WFWHZ/rTzEZEfKam2YuEQShKJQA6hthMAK6wevuGNyIjtmEbeRrQ/qG8ksxGfJMghkG0JxBe1nf3o1+VAHPPyqYiIvI3oYL9IDhGtefFaDtZxBZIgazh/MeH2jLPpJBmudZ7nCIdeJyVFr1l12zeH/CU9XVzlH/yX//L4n3zqk3+nkSR/1u0sYfeenchThuDq1TIUDP0+fW5+EQuLS8IylrUt71cjvk6FA32vB1PDvGEgCejecpnleqrjL7k5kLcX25iXfrdnvq+Bn/dUwdyUlK/Q875xz3XnSoak3EFVT7DUluu7Tq/dweypGSwtzKFUu3t37vDi4uQzTzz145/5ZOt/WGaEizsCycVVN9L2fI/AI3fc2egtL9zXSlKO5RkyGTQ9PobxvKnnuoS/WEQyOGc/wCpe/XA1tZYgqcWQnlKxyDUJOwg7BbHDh6zlBnWGwoHTVmQGqmyYTRTZhkI1fHOnMr0f/QHT6eDtNDKmVVWGvlZ2YitQ9VAqdeHjoG6oWRiBeSEnatWjsaOoUUHjuAItzLSyVl7lVR90FdW26iUEGaGa6lCld5ZGgUor82rVskqaPLPxrkMENEBUuxYiGYKD+26QNHsoyI3LhlbYhOm2NikeWtTQClURBNQAJb1eOp01bn70wQdXovzQKpcjs/pHH/7wJ//f3/vwz02OtZbLbgcOog6sM6fn4EBeJSk6vRJLnS7mF5cxOzsf4Pfb87MLmDs9j57ec/ej9LvtPizMLWJBQdt1jHnVWVDdRfHntRPgSYMHJ1UQN0iGZ8DBP5a53Bh2rQpdg6ry/aD7UZSkbiui017C6ZmTqMoeWo0mJsbGUXR7+PznPvfb//Knfv7ff/jDj/UwOi76CCQXXeNI4fM6Amm7fVWzwh0s9LxoVpyywFW7doJy6Cl9uUvZJ2g1oARIIpHf9yOJIYcf4tIv2VRmOedJSVcV/AtxiiGwIyLFk4zLRYJesuY5X0MN1YlzPpMMOgcrhva0W2AHPwy2OYIK2JSsXE/os6nHBRqboEfKLSsSPuZRKUPkgj7WNYhSQbdKpF1988gYniwYhS6V/CO0Gy/rbCFW01Adl1kekOAQywb7YRG3D103p0meMZ7xOpuSlGjdQr88SWefM5B1e77PDE9WsqzuMzV5yXRvVu3OXc1t2/Y9Z0ZdrIY+/OHeb3zoQ//75/7s0/8lq8peqm4lILz1fezYMZyamUWaN5Bqu5xMQ3D3l9b8nturak+oT5w4AcN/9mYa4XfxhmUNyxtenTtQO2D7fjDcHbIeZ+dLj6nuE3KNZxnD5f3wPQzdj4m229M8C77Aum2bJwzuT54maGRpOXd65o/+j3/7v//NP/7j3z9qXSNc/BFILr7KkcbncwR2NZKbxrPsuqY8elMPWi5jrtmzG/6msL+U4ofVIAmSKt3aR+rWyfuhtnOItUmGcpKRBcusZkKiLiNrGlhDTiRXdZF1eojYCqtCXHH2U8DBqIK/1WsUKFHSqFDon1ergCY20kIhUbSg8kaiwG+k0uF+D4OqnNOH5Gqf+iv2ZFMnKdHVNoJRpkChBkMg1/ULgZtApHaeq+kVRSpGP2p2CfdBquCHPNAK4mGdLEn4IAnfF06vonJNgKxlsO6QMhjrmGdkyGF1zxBbYUjWbRri+P4hxVNaIxDOukx6F5yFfkCTs1zFjbK8motzD0pAOZ03/pytfOOal6jk0x//+JFf/ZVf/jEF3T/y9fIOmr8jkOjd99HjJzGn9+hepSfags9CYKeeK6Mee8tFUEE/pk1TvTsHfA0T3e4JUmYBWZIjor9bHm8jcXDWit003murVPqqPlB2liqsqDaYhnfws7OzWJyfU5ul2qvgVwmzMydnfvEXfv5/3n/t7s/0tzlKb2kEuCUpCSXC6HPljADzMjmYdLqTqd6XZwoI/lvd7dumw8PlmTIUtKLjTvTg+k4hfd58EEiCEnFgsCOF9Ht7UCyQXEXM2zEYzm8VZK1nq/KWq9THYYD4hnwNKgXNAFWItA7uOMNuUjYAIOrDAaROnd/ZYxxBEiThPEkEuwFUQqkVkakhIX8EqmTtw1AIXcsVACGNgcO1DLNJpVTP18Iwz9cwBUHS2VVUGizLGJRzXi24wAS5vp01dSv8ym5oJb1SaBvCwCgf+22eQUpW1zTRvZxWFbKyl3XnFt/ww+94x6TEN/toJDYrfl7Kqk/+3u994n/75z/1fajKL2gHqar0bHkVnaYZjhw5gtOnZ+E86B4n8BgAHjPdO+q/836mI5yPIAmSiPccScTDMulK4CYJkqty0OFykU0/lZ6zblmgrR3BTrcLf2N/ZmYGi8tL8MSk1JZ7u728+J//03/6qfbi3Ad1FJsqHBUOG4Et37f1XTFMxYh3XiPA86p1cSo9/PDDaZMMPPRSAAAQAElEQVTV1XlV5V65UA/Zrm3bkOuhy/Xgxgc+8daYmoz5amWLTax65ePECkgFHjkNkvBWmh9yOwFv7Y3p3ZjFzDOcJrnqGOxEzOuH5Yx+XkxvxB9WTtbthAAt5z5IC616jS566CkieAu71CrYCHwW6K1EjKRKkOqfqRHTNF/tJKDc53CQtR3oO9yPiNUx1hj2iawlV2z3ygxKG5V2EALkKHXp1HoFBy7vsrAoYOoJW1oClF6WhO02UvUjwr1S19fZ7rzhSZmCBxw8yPoa22ay7o/tdh46TPsh1tBPlOkvHMYbVq65BIwSlcJ0Baex8lrIOkgqW6OnwOFvS7sPle5xf1ekMz9/b1kt78YL9OjNz//3n/npn/k7jSx/OiUrB0P3reoVOHnsOJ566in4msRn0OU9vV+Hrm4VBisBmSLVqtxwWo+1RiMBmQYaZS1v1HmNdVVDQuHj8fZ1YJogSxtImEG3Yg0pDeVEuEvber/faLYgIRw+egRH9Kqg0A5Xo9GA/5tU+ZrlD3/4v/3Lj/3RJ/7Zhz/84WWMjks6Askl1f4iVL7lqdQlGJs9n/98zm5xU1YUIaDnWQL/+lSmYC4fEVpMtCp3Qs+cggCdHIqNShwMPAFAud4JDFUyhElupLkWtrOoU1s72x7D9kQEHSv2kXV7ZE2BBCSlPBH0kbNTXEQhp6ZcWP2E+sqsSKiGMvHjqjF9gdQr5WCz25a9IS2agPDvB2RqyzSXBZl4OROYprrJDKoeSQU/TbaUdh/KFYohB0mQPLNEExeoDZKhPFmhJNfL0iNllgwweQ4Qr4Vp5ZtWbZIaH42Fei6rSxTtNseK3oHy1NxdKn5Bfhzs/uMH/+2v/Otf/qUfzRIe7baXK98PaUI4OGpLHp/97GfDSr3SPev/tcxB3ZPrJD7Tvvaa8MWgTxKeBBiVyjwwJMM1JmvqugZJRErWZSTD36d7J85lhvU47x2DnqJ8q9XC6fm58Hv084sL8Ltz7365PG+kSx/56Ed+4fATj//oH/7u7x7D6LjkI5Bc8hZGDTxnIzCxe3ezVVY3Jr2enmT5Az1w23dMI00ZbCBFtY1HiuoB11lBPRQhBVfT6DtISyEEOrNJwqsGltKv1YN5m4Gs628kYwdh9Jc7b5hnGuF8PxwQHdhyxZlGRZgamfJZUSEVMi3NjVRDkvQACklBpGWi/tbblyWgVSEU1E2pNBUkVcZEPPVT5auflVgWbYo0ljsf0/10I77t9xe7Eo2n4XykTtPXKQBajQOpgm9S0oaiUv8q2VhpjFeh6+h0KaoaILkK6PADHwG1Ge0iqVLUsgoQJEMa8VgN5pFx8Wm0pV9zfzAK5bI5S1IEqO+NPEXV62KMnCrm5i/rgM7+jg1Pl3/8Bx/5Dz/3sz/7N1tZejjTLQhtWZ84fgypAntb29hPP/10+NO2sYkpdLVCb3c66CmIU9cszTIkaQpdOPgI46UESSQqJ6miGtDhcgf/Xq8Tdt+cjuPtMqfHx8eRSmdHOyHtXheV9KRafWdZDiIJrwS++MUvhnfnIYjnuf+evlrQ8fE/+IOf+vNPfebv/+Iv/uIMXuQHn6P++9l+jpoaNXOpR6DZbu9hr7hZ27NMFJbc3jZtuZMKUAoKfkj9YEMPostIgqzhfD8sa5hHOVFFdAVABPnVvz8Xnyt6oywGjkH+YD6KD+MP40V5srbbK9i0ogId1SvxFPDSMlE6lb2iKgPcfwBVCg9LJRmZLQbR9ftKrfwKyXkLvlJNyHmuIVFwl6g+EtEZZ+QDU6dBe4flI4+UrStINZ1KKinQhyWD3VVoLAEpOSSArqihYlRJWkOTs65st90l4K5Bc5VV6nRF9Z1YtTnK2Y4qtKn+KeE8KUHpAWpK1hTrjlBJnKhJyUv4sV1RfUyTFXwfaxi0Yu3o2peYYNoqZxcffuyRRxpR/oVIP/WpT838X7+y/1/8s5/8p981PzPz2bLXrcaaOapCwbSq1N8uDh8+DAf2SvcpszQEXPe11+uFcgdm5zMFeI9ZP8w3SKIeR9RjqUAdxlSUpEUC2u02rJckcgVry/j59zfon3nmGRw9elT1GWRajRwLi3NVI82effKpL/3DP/ro7/+tf/WvfubpoOi8T1dGxfjUXOreJJe6gZH+524Emklyc1ZhbwrCs2s/sOPjLTn4Ag4EJSqQ9cPKKtGKz4ACyHob7QAiJwaamKcS3XYH3nbvlxMbg3nzIlxmbJQ33+UbweURpK1YycmrV1RQEuDAB0K9RFkBpdKFUFZUPtU781QBL0OhwG70TJGKr3LVd6AsRANUJ2xhqxnrURYlgTVahhKdwsd2h8TKKeZNjRX2mUTXoZTdRhUoZWONrvrZk4PtZik6aYK2HHigTgtdlXWksVsBUdZ9MKBxgeRLlZcegwCgVN796pXeeajWXbNN7VS9S/GJbQaqsXAbIa2EKUmQhO7UGuprAiBNEuSa0GgVi4b6mbULNLrFHb2ZmRtxmR7Vlu16rHz80//jQz/1T//xe08cefYTeqXQ87fGm3kaNDjAnp6dw188/kX4T8OWOkvwNnfWzNAQ0oy6x3t6h72MEnr2haLqhXRVFdJRakwrJBpDZcI94LFeB93sRa+CCPQeHJlW5N1uDydPncKzR47gxMmT4c/rMtuk9+p6wKDt9mLH9LbPfvxjH/3+T/3+7/3EBz/4wSXrH+G5GwE/G89da6OWLuUIcHFm/oGqW0ymIEhicnpKD2KGOrgzPLjRAJIKZbUc+g4/1H3ZdXXMd7ln7aYkzVoH89cxVjLkelmSwcaV4rOSqJdkkCXVHznyru7gbpqgo3RHQayttAPfstIdplhSGFgWliR/BqSpp+3EUrKF9PQkEygoF0iUopBeozJVuakdc6Di2S5DqlY/g3kXmGfEtCnpNqAJBVDI1kL5XpKgx0T9SdBNM7SV9jeJltTtJdm5qPy8VqgLste06zrK+4t/EYXKCslDOiu/brGdypdqtGfnK+qJiQO7J3nRLpKg9Ks4fCI/ZLZ+8vBsXTpKVjI6pvsoydUcWadtF0n43XKq65cLaVFgrEquQad442MPP5ytVnqBJj796U93fue3fuv3/5f/9cff9+TjX/yVVjNfpnZjCq3Us0YO6D4vNNL+T0/8N+izs7Pe6g7Pa6J7KNPq3PCq2tTwWLmMZJDzOJa6H0wND5XLLWfEOt5Kn5mZgf823l+G9ft8y1u3aalXb5ooLJZF7zd+40Mfet/f+9G/9n/8yq/8yqz1Xe640uxLrrQOvVj7IyfWnJyYvM3vFv2QelvMDxzJEND9oIaxkeNMhFThHEgCi2Sggyc/rBGxzNvvRacbHIJ1ujyWDaMkQQ7HMHnrG8QwOfO8euhqhdDWqmSplWHJdAWLoguNFEutGsutHDWaWGw2AtqNDF0FuwJETwgrXTlJB7tK/CpNwoocSkN9MFUxAiVCmW2wLRG2PabPRksQlYK2V9SFgpLRkTNuq7229C9pi3XBVEG57X6qP8vjOdpjufqaoqN8oTLXL2W0UZiitrtUGRLFNqa1raigYq3eKk1WAJJnADpI6nzen3WVPR6bYbAVy/bzSIZ7zfwkSYK9Md3KG9rq7SCVTEv9ZKeTn3zm6a/506NHr+3X8UJO/8knP/k/fuonfv77fuFf/PwPKaB+dGJiouMA62d8cnISDrx+1r0F7m34p7QNfkKraP/vbZXGxbK9nlbnCtxhHHRvVbpCHkPrsI/IFPz7x9by1umJu7fU/adzMZCTDG1anX+oRsG83D45/bkvfeEv/uY/+yc//uhP/vj/9BHo0RBGn+dhBJLnoc1Rk5diBJp7xpcXF69rd7sKTkCSNbB9+86VbfUEfmDFlav3meIjADoclAwlz/j4wWel20QwreQNej2FIuVTpEHeMgD1EUQpGUMMVHIg8U/F/F+D+jWAAR2JZCtFyAivFm1HjRLeRpQYCjgAEYWcSY8p2gp+y2mO+ayJ0+PTODExhRPj23B8cgpHJ6dxZKrGM9PbcWzHLhzbuRfHdu2usXMXjgvHduwMZU+PTeCw8HRjDM82WzjaGsPx5gRmJiYxJ71zjXG108Cithzdbld7vKXsgOxglSAtqXGkzUSwU0n/WZxtN1xA9ZEaE6i/PUCr7zT0YSnPMN8cw+z4JE6PjeFUaxInRI+I97RseVITj2fVp8Pqz9HtO+A+nNy1Byd2C7uuUj92I/RVtj4rHc/I9sPCkbFxHBubwEnpmW2OY066FtMmltMGekmmcc1QUaOvPiilq1ghoac1JchSFspgv2vRtbPZhphDPsk63qAcpaZGojHqB5THykHZokFbyZ1JVO4bRAWUzb6HfL9RivM8xdT4BHKV+4uF42nKHY3mfVmnc6/Er5RP9fjjn5r5z7/2f/3z//V//cmv/fhHfv/nJ8fHjky2WlheXEAjS5HlGlsyTNy9ej524nj41vkXvvAFOLjPaPU+v7iI5U4H/s9ews5MQuiiowTRKysst7uYm1/UlvppHDl6HH4//qWnnlz9ljtQQU0gvmrLUmKs1VrKWX30X//yv3j0R/7Kd/yTj/zWb/l9eXmlDPyF9+O515A8902OWrwUI7C4tHhVjuy6rgKdsdDuYdv0blQdPYi9BL2CQJIgAeFvUdshYsVpw0+qnHu1AihQVSXldBP4lVsqnYpWSJmhkL4EGXK2VJYAcgaUJy+luUIulUYGlim8AuhoetFOCvTSHspE4Ywl5HoC7JibSUt1MpRVCqaqJxt7et/nd35MoR3UjlwJwjvi5STFcqOJpeYkTilYHR/bhicb0zi+5wYUt9+L1stfiz1f/g4c+Lp34873fQfu+c4P4LZHvxsHv+07cNO3fDtu+ub34aZ3vxc3f8u34db3PopbJOPym7/9O3HLe9+PG7/xW7Hn7V+D9BWvxsyNt+CpbXvwxPgkjmjSMDM+hflGC8vM1SOiqoBM40R1SeOuoZWxJIq0CihzIM0TaJA0bkSqf11dg8UygScH862mgvc4ntUE5Klt23Fkz9WYPXAQeMnLsf3Nb8ENf+kbcdN73ofbvu39sv9R3Cz7Dn7rozigftz8nm+H07eoD7b/4KPfhZvVxxvf/T7s/dqvQ+Ph12P+jkM4fO2NeHxyG57SROGYAvtsYwzL+RiKvAWyqXEHmoQCYhdJr4tGRl2HDkoWWNB72a562i27ypdAQvW5CiCp+nXe19j3ioYClfgVK5T6J6Ieq9/qr7+kmCoXkUjYt54a04coC8ArvqqSXo2r61IyRqGmNbiopNt/JgUdukV0LqWxwrRW6al2jDK1OS6l1elT265uNl9SAcSVdZSf/aOPPP1rv/pLf/XX/s2vftXs0Wf/2e6p1ud7xXKvod2nbtGBn5cAXcdKva80+ZxZmMORk8fx7PETeOKZw/js44/jc1/6Eh7XSv4LTz6Fz3/xCTz+5DN48vBhHNPKfmZuDovtZfSqEmmawqv1RAOeajiLblvPdVlkaXK04jPK6AAAEABJREFUvbz0fz/z1OPf9Xf/xt/+S//2F3/+dzTUvlIio8/zOQLJ89n4qO2LNwJJuXyjVik7HahLRV89g8jkhO0pqYfTq0U/5HWLevZUppgNwzz/9KmeViQoV+F8JV2suoAie6H3d53uklQWKMXTezM5VXkOVKEO7ZmlrDQcuMkQNNIKWskmsKNGOBLVAEhiqbesQiDLEjuPyluESZIhSZvoKBhUCkKLWROn5biPZS08pcnFM+Pj6B24Gbtf8yrc+8jX4tA7vwYH3/xWXP1lr8HE/fehc+AAvJr9klaqT05M4InJMTyl7cmnpyfw9NQUTJ1/cmIMR3Zrxb7nKpy67jos33wLsvvuxd7XvwF3/KVH8LL3fgte8u73YI/0Lt1wPU7t2ImZ6W040ZrAibyJWU0uCk0sFrqF+lGgyuT20gS5yrK0gXanBBstnO4UON6rsDgxjdMK4E8wxWHZUdxyM6553WtxxzvfhZe++924/xu+Ade9/k3gXYewuP9GLNxwA56cnpbt2/ClsQl8sdnElxSQn1aAPqyJxrMK1ke278azO3bhWe06nLrmWnRvuRXTr3gVDr7zq2ud3/iNuPWr3o4dD70CnRv34ahW/M80chzXGC5oInFa49mR3k6WYUHRc9mRVf1oiJck1HWgrlsJaOKW6nolSaIt+xL+dTAHc19T6p7R5UYCXWhA8tBRp5VAvO+kRZJSRXNrJCBIw/JlnU6cdrnyqkHSGaFSGwBRaUpZIVXjY3mGRpog0yQkKXuYTJKsWfZe+o/O/qtxeCEeerc+/y9/9qc+9vf/zt/4oV/95V/6y+2lxV9aXlz60lir0c1Swtek7PbgZ7XqFaGLpPiaJHsCTTJMyvyctbsdVLrG5keQBEk4mOtKYbzVQGd5EZ32Um+s2Xi6LJb/3Wf+5A+/87/85n/8pu9937t/6Y80yYAFdRp9ntsRGNZaMow54g2MAAfyl1+WaXd+X47l8UbSBotFtLQabuUlEuqhhQIy9ZCLVwjdrEInVdhPKwXcUitNQY5cEwLQDlRBPJGHTlUnUV1JA4kCORbQ6Z2WxAIKLgJpB2Uip0G1o/pEgV7SCSilX34BLe0OTLQztLpyvEUDqHJJpaiYwe9/0SxQ5m0g6yJXPMyrBOwAZTfX+nACJ7oNPNFN8EQ+gfYtt+OGd3wVDinQ7vuar8bEq16G5RuuwsKucRwbI55hD0/L3mNJhdOtRAE0x2wzwXwzxYLesa9C757Nm29kOJkAJ3PiuFbTR3Pg2WaGZ8YbCvotPLNjCs/s2Y7pV78S97z7m3DnN/5l7HrDG9C96y48s/dqfDbN8BRLLE80tIWeYVkv4ZOqgXKpQme+RGtsB+bV53L3tVi6+joc3r5Tde/Grd/8TTj07Y/iqre9DY0HHsDyvuvV5jieajRxatsk2nt2Y256CicUZBcVyJdaLSxo23whb2JRAWxRK6dFOe/FLMWs7F5Q8F2ensTS1CRmJlo4kib4kiZxn1OAO7l7B5Y0OfBYHdQk5dC3fSuu/Zp34tShO/AnY00c3rYDJyd2YEa7HQuaKCyiibnlHpaWllG0O8h0edOiQKpg7wBKja0nh7qxwIzwNU5QIa0qZGUZkKptagJYoYRfPxQao15SotQuTZF0UbFAmRTQjRpAySWspLKC05QuiGfdhi4RjBSS0cTCW+x5BWQAUk1Ocr2agAVVr8EUSbe8u10s36riK/ajwN75uZ/+6Y//yD/+x9/zz//5T7/xTz71h982e3rmF8ay9LcnW83DzUa25DH1tTDKrp7VXkdD3kNOBIxr7Khrmyjf0H3V0L2U6fr62nl+LXq6217+k4mx5r9eWjj9gd/+rf/2Ff/61z74vr/+/d/7a//qp37qhAZXV0Hn0eeyGYHksrHkcjbk0t62epwurPOPPPJI0u22r2Gi51TayrKDhgJTLqevKTsgR2ioCPDTKw7k+AJxAFX/9Bw7iwQEaYgpTpJA+QpBXEJqB5UCJwTKKVeIRwk5AHjV7nK5chWYV8rZQ2WUCXLXSQp/+asShWypsgrtqo3FziI6AIqxMbRbUzietvCEtuEXtW28701fgZd9y3tx8B3vQHnbbXhGq9Ynmk08nec4oT6eFhblnNreemzmWEoBTTewpADTlpNXnEVXtvfUmUL96Yn2FHTk4lBmGXqG6vcUONtjLSy2GpjNmzgh/Qt6D39U/CfThoLtTozfdz9u+cp34Ja3fZVW16/Dwr6r8SX14agc4uL4BE5rPNuNSXD7HpxgjjmtoGe0A9B88CW4/esewQ1f+ZWYueY6fD7JcWJyO55CgmNpjlO59CsQn1T+dAUsJQ308haWle5oiVtS45emqIQyocMdQr/E9xfoFrQ7siDukm6CdquJnnYkutumcSxJcFRjdUy7Cl6dz+zZi+zQvTj49q/CQ5pUbHvll+H0tfvwuR5xGDm6E9uR6BVDQ8G9kY9pFUxkulapxtirOK8AdZl0T8ge2VGJX9tjLkDZa+ugw/IyHVXiu6FAoWtRmq+q5kP1ldVHlXQGKphvOOv6JKFLVkNjqzkoUinJQKQSVDGysRwVCqirQE+T1153z8Lx069+9NFHc1zhx+Mf/vDyb3zwg5//ke/93l/+8H/8jx/4T//5//f1f/CRj33zkWee/Wu99vKvZ1X16UbCJ3ImJ0QXNT7dor1cdRaX0FteqnLqxum122V3+XSG6unxZvbpLCl/v7208M+fefKJD3zy//39r/vVf/G/fce7v+5rf+Yf//3H/vjXf+EX5jSk8YIpOfpcTiPgZ+Xi2DPS8ryNwF1AOt8tDhZJlvfkJLtVgkZrXMGVKLWiYVEh0YIoLRMEIJXj9aVPQEVqlaJknYZcJ5WuJONVdKWgVCITuyGnmaHbK+WgU5QVtYJOBVOqrSqAXpkJQCkXW6CXAp2kQtd0BV6ZlwoESBO1Iih4JdpCXp4Yx9Nq+wtaObfvvB03fu3X4IZH3oXk5S/VSnkvPpemeFLBb0Z9m9M74Tn1Z1kaelWq4EbZlyKVromxSVy1cy/2K1DdeuNBGHfeeAv6cfv+W2Dsv/Za7N25A+ONJqpCNmu7siyoFWSGKmthiRlmihQzGodT+TierXI8LXSu2oedL38Fbvnad2Hfu96G7u0H8ZQCv4P0EW3Df0l2zl53Pa5921dg3yPvxPSbvgwn9t+AJ7TVPaNJQmd8B05pcJZlb1eThTJroqN+tLU939W1airA79SW+LVXXY0brroG+7WdfkD6Dl53Aw5efz0OrGDftdfhGgXpXdM7MdmcQEO6Ko+L9Mwv9TT+TU0MxrHcmMBp9eek+nFMrzNOarxP7bwKzVe9Ajd8jV5ZaIt+7I5DOK7xPDK7jOVOhUr22Bamuv55ijKtwlWlrm9SKN2rdG2JdpqKAj0Qui2gG2Tl/oKoIHsS3ZMJdBsJ/lRQTjyoTqJKVam6ChOBKkq7vDIVSslYMSvKugTWlUpeGmRPpXu9ARUg97Kyu6xdgqqxdPr0W7Y99dQuvHiO6md/9mcXf/rHf/zZv/1Xf/C/PvqNX/9Pf/Pf/7uv/Xe/8q8e+s3/8Gsv++h//e2H/scnPvaaT/73j77+U3/48bf+yR9+6iv//NN/+tZPffwP3vAnn/r4a/7gI7/z8n/zb3/5Zf/z3/uxh/7pP/yfXv8rP/8z3/+d3/ruf/3YY3/907/8y7+88OIZxhd2T/1MvLB78MK3Xm7swjqx2G43e71qP5En6CUgU0zJYUNOj4KiL0xZVjCvkmN0i5Wcap1MADtXQw7UaeuokaGUDhaSkWPWzh3SKgeKDJVWdSgh3RBJAijPSumhmnJBxRJF0hMKVIGpCgCqhOJl6CoIdSe344RWo8/qfXPjzjtwp7bTb3r7W9G55QBO7t2Nw3rXfbzRwKJXna0xzHZLzLbb6KqflYLN2NQ2XHf9Ptx+x104pNXnXbffhZv3HcC+a27Adbv3Blyzaw+Mq3fvgeEgeI22tvddfy3uuOUgXvLgvfiyV74Cr3r5Q7jnjjtwnQLplN7BVzK31Jj478EX1bdFBf751hhOKng8DeLotm2obrkDB9/2dux785sxownCzPXX4bq3vAn3ftPXo3PrTTixawee0gr+sPp9Ok2rJQX7rgIvFbT9S2+Q/vGJCdx44414QFvwr3jZy3H/oXtwy0034dYDB3DLgRtx04034MbrrsYN11+N62XzPrVxww3XYf++G3DLzQdw6K478OD99woP4L57DuG2227DzTffjImpaWSaaJQKut0kxbLabGc5ZnXhny26eFr5p1pNpAdvwX3v1OsM7SBUmiQcl41LY2NYSDIsVBXaGodKE7ssyWGkIBJfY91DpXRBFOJR1wRqB7q+JQg6jwSsEuiioyoJqdO9QhTqt3mlyqGjEvVtVkifd1S6rCSTQLddoAUBVQeZQCKqAfg/MGnp1cOYdlO0GtWrgQIN3Vnl4vzd1cLCTUHoxXlygO/+glbUP/ETP3HkH/yDxz7/N374hz/59370R3/vx37kR37jsb/+g//5R77vA7/x13/4B377r/3QD3387/7Nv/nnv/CTP/nMr//6r8996EMfan/wgx8sNGyVMPq8gEZAT9kLwtotG6lnfsuyV4ogy+aOdDG5vqUgm3aJpui0tk3T4AlLUF7Q25cicoSlnGKJblKgxyKkK5aBbwo5VcoJG0mZyYU3YIoyB7sK4stEVuTIiwYaaqchD5xVKcAsgKKZAn6utvMSOtxGAaIrzR00xctRKZ+ikzVwvDGNx/Mp9G6+Ewe/6muwX1vB8wduwpe09X16904cU+CcV9DuKiCVigS9Xg+5VvYOxnfefhsO3XMfbrrlVuzRCnZ6ejtaCl65nHtDK8qmVvoNyRpZQvTDOrIsgVRDHUPVbaPqLaGJHnZNjOMW6bv3llvwyvsewL133olrrroKlV4+nm4vYbbqYsHv4RsNzLWmMTe1F0endqCnd+u3ftM34MA3PoL5u27FZ/UK4LAwIzu6eQOZJgPNLOd4lmHn1LhW1rvwipc+qCB+N269dT/27t2Ocb3zz9hDMwcmxzP1tUCSlIDsKsXvVB20qyUsQyi1g1otoyeUem1RyS5tl2KslWH39mlcq8nQvbLpHtl/UEF/z+5dyLIU7V4b/va6J0NzWmUvNsZwWONzWGO+41Uvwyvf/15NSN6AP9d4d/fuUV8nsOTJW5UjY0tBMw33VEPBPRc/9z2g+y7VNYfuhYqJAjBRihrO+75CqXpVBggFM8kkYhNMKmiWiMpUiH8pUKTQyr9AOyl1r5ToplVAx9Ryss/3WLMHTGvXIel0MEbq3iyRdnt7l06deJ0GbvQZjcCLZgT0RF1Zfa2urO5sqTeNJN2VFt3pVA7O32wliabem7qyV0SFAqjTpcpLIjjSSuG1CmmglDOXTw58r4IKO2KXi08FAFKCtQKt1kuVpAIDiBLSgDIletogKOTkS73MpCcFWtG6ZiIZQ4JwO0WpRRwAABAASURBVN0kw0KzgRPaGj++fTeue/1bccc7HwFuvQNPj49hfudOdHZux8myQOHIZjvkwL0Ffdftt+NVL30pbteqempyHGkjBVTeLXraJu4E9Hod+Pesy57ep6rtSlvERln29B63J04RULFEoYlGqUBJTXBgOQV2dJYV4JcBBT6WXYypX/u0Kn7wwftx6P5D2H7VTnSzEksJsFQ2MFs1sDS+HYsK6kc1oTiu1fbs1CRO5inmFLyXNNC2Z1w7EAduuAEP3nsvHrjnbtx28340Wyly6W9kVPAGUvWTsqosOnrduYxS/SoVqJlonFMgyStAshG9Sv1RPxwMKwd9yUJ1EqWzBEhZoJEBO7dP4uCBfbjvnjtxx523YfeenbocJSh1pa53O88wr5X6M7reJ3ZM4YY3vR5f/dd/GJV2CHw9/GeC81kT3aSBZU0COgJ1M2VFglxpxdigCxrZioA2iuB7wvcTdKQlNBFMtB0OJGXi+I2kSnTpKiTgSl30HRWkHj2WsI5ShlpfqWutJsWr4HYoHVW3QkOTw7JdoIk82NMsqkZndv7h73/zm93RPr2j5GgErtwRSK7crp1Dz17gon/+Z5+4PU+L6QpaYU4kWOzNIx/L0ZUz79AOH3KACbxO1mtilPKEhYJ0T6spb1t3tIrtpalWQ1QdolBwLhUNKgWkRQXHqpkgzYG59iy0M67V3SK0BEKVKGCmPdVpo5OWaCtwdBsJllV/QUElbeSoeoXiYxsSRlseelZtHpGyw2Pj4B134u6v/0Zk9z6IZ6a34dlmC7PNccwR0kk0FIm2Se7AddfiFQqCL7n7Lly7cztSBdmsKKqGbdQkpVIQNBQhAAUAoITTlYJgyUJNl6hSRS7ZV0U0CCiQMk0ABYlK9Rz0DddPlU/FT1khVzuK8IqTy5iaHsNtt9+Me++9K0wqmgpyLHMFX2qlnIEaoEKrz05ZaWuZqDoltuud/y3X34h7bj2I/VdfhXHpK4s2QpAO9vkarQBdVLpmNWS37NCwoYcqQLELvnZdEmWSoEoFAkVZQj1FpbFINP6K0YAmKIWunyldqnEznZ4cw8037cPLHrgXt9+4D1ONBqhx7CTEgoL6yYkxPD3Rwsy1V+El73sP7vzad6F7YD+eyTKc0mSsUH+WO4DuCmRVqUDdRc4SE2MNLLTn0UsLQBOtLntqtZDuEkmv1C3TRap3+w1NABqK+HkBaF6k+iUS2e9v0uvmVHjXZayIRKChzlCA0gARaU91dHup70SvoHZnJtFt9wCN+UTSQN4pHjj5+OOvBlwJo2M0Alf8CCRXfA+v8A4+/PDDWTPDzc0xpm057NPtRTT1zpY7t+Fwt4MZBc8TaYbjaYoTSY5jWQsn8ib8Ba+TcsxeTR6fmMJxvWs9NTWFk3pPfbI1hmOSP6KAsDTexDyBU9rqntWKtaNAAgXaMoVCTw9ZKwcVGNUEUijoSC5VOw0FiZnTC0gV4JiNYVntLmjlekTbutQW+W3v+GqtzN+EuZ27cEq8mSyH30/3Gk00xsZx9dVX4+47bsf9WlHu03vjZp6h7CyhUp9YASwrVh2FOeUrvQtOykpeuww2UHZAK9dKwaaGnLzTDokrtCwLlFqxW1eiWomCcJZlSDVepAJEBXh7v5RAraMEVZcKIqnamsgb2K5V+IP3PwBv/V+9Zy9aWt2W7S6oWdOEJie7tu/APXffjYMHD2o7fTfGNa6Jg7DCnPVA4+sJRKVgWkqvIpMmAWpYeTiKCyQV2KC2E1FBtrJMNKlJYJpohsJKaSFZgUxGjSpQdRSQzW5LCfHUFwkkuq5XaaV+/6G78NL778NVe3Yjb7SQa6cB0ztwXOPxeW9j33MXHv629+KOd7xV12sbTjYbyPbs0Q5FhqSltII3E0345k+j0cjUzyYWl2aRpAAU6P2jJyUqNMZaVa5r3ZWsf4e+08pxWkKndK/4ewnz4+NYHJ/EvCZ1sxqrGY3hbHMMJ3VPnMgbOKldpxnJzE1NYXZyCvPCnPKz2hVZlN7O+AS6ss0TRw9ni9lUsdx98zt23zaJ0TEagRfBCOjRehH08vnt4iVtfQ+OtpKyt19bzkzHmljKcyzIuZ2QMzyh4PyMHKR/AvXZXVfhxLU3YPamm7F0253o3H0InXvuxfyhezF79z2Y1Wp59vY7MKdgO7v/Jsxcex1O7dqDx0vgqQo4zgRzCtT+z0H8p1GFVmqUo13yKliOO1Ugn1JQnKp0Sy0u6T0rMT05jcV2iV5zCk9qVfYZLS93vPa1uPGd78Kze6/GiW07cJLEsoJLRwE2UwDZd+01ePDQIdyqFeSEnHOm7eVE767ZAKosgWKcQlqKRtLSSreFJpUGoWI0igpe5SWyJSL8bbSCSSakglTBaSPXio8dIlGESXvqhFaN0LqzVF8r6SyTBPUqsHRcQl4l2s4FGp0KEwqkOxrjyNMSe6+axt133oSXKvDdd8sB3HXjjbjHXzI7dDe26112c6KFroL9vLbDFzwp0quAotDytIfQl0TnTGNH9cVpI9NORkCRIi+zGrKx2c3RKhqryFSe9XKtctMg43yq2ZaRVKwnAaKeI3jwKqXdTkCaoDXVRLe3iIlWhgd1D7ziznuxtzWN7rxeX/RUf/deHG3k+GIObHv5S/DG7/lOTD1wHz6vfsxNtjCfVVhMOkiaRK7B9aRmafZ0uC7U9cg0ls3xMVQK3ie7bR4p2zg9mePkdIbPsYO/UNkXJ7fhie27cGTvNZjZtw8dvVZJH3gpxl/5aux8/Rux5/Vvwu43vAk7XvcGtB56Jbp3HcLR62/Al3bswF9oQvG5pMLndQ8dHm9gTpOsxYkmljVR6BVo6B3/m8e3pwcxOkYj8CIYgeRF0Mcruovzp5tj1bap3YsK4LMKsN3du7DtrrsxrUC95xWvwrUPvwHXvPYNuOrVr8WOh16DyQdfjuY99yO/8xCS2+9CfvvdaN5xCK277sfE3fdj+t6XYPtLXo5dL38V9r7yy7BfjnT3S18B3nwL5vbuxRE5zCNjYzg2PYnZ7VqtaXWV77kKeWsKpVbMTQXEcQWnsltiXsGck9txVNuhMxPbsV+OeezQ/Xgiz9HedRWOdguc7rbR1Up1156duOO2W3Hg+uvRBKpEurZpRV+09S5bK+lUOwaZ6qVZA1qXw6vnjrZXHTAyBykFyFIr9UqyQAnFfqTeepZur06hCYP8Prwqdt5ylZZxeZIqnCZQFZRaxfa0ui5ES/WjVDCqRAsQJOEJRyZ5/8lW6i3kqkRVdtDRrki3vYQkrbBz5w7suWoXxqcmUOi1g99xd9V2T/ZJNaQIaZYhUV+Qql0FbgilrFALKs4kk6FKEqUTQO0biSYTqWQCLROt0JULNFkJ2glUaQ2q6XokUTEVgNJpELocyicCMbd4GuOTTUyMjcF/mzyW5jh0y+24+7Y7MDU2iZn5BV2jAsX0NhzRAJ6ansB9X/0OPPRNfxnhC3+aCBQTY/Df/E9s24mlpTZy7cj0ZNuiIuqMxvhot4fjWYL5XdtxfMcknlB7nYP7cMNXvAkvf+978Zr3fyfe+IG/grd83w/gjd/9vXjV+74d933d1+HOr3on9r3xzQE3vemtuPnNX4m7vvpr8ZJvejde//7vwlu+9/vxpu/+HrzqW78Vt7ztrRjTTsPsnh04pongbCNHVztQbI1dX5TJl2k4KIw+oxG4okcguaJ79yLo3EzSu7q4+pod+1/zWnz19/0gvvFv/RjuftfXoX3jQZQHbsPM7mtxcsdVOD61G0fH5ZQbEziaj+PZdAwnOIY5TmCBk5gXneG4eOM4lk7gxPh2nNy2G89M7cTsDfvDaunWb/jLuOf9j+KaRx7B/H334XMKXse37dHWfobTWkVWcuSKGmAPSBR486lpHK9yzGj79uY3vhU77385jqZNzKctLPVKi2JcKzR/WevWW27CtFZWveUlpL2CjYrAUgeTzQnkzFFKvlBQLBWkk2aOopGip9VxFyUKVKi0tZtoFZzJkedy6A1tw7bGm5jaPoXpbTW2TU1hm1aDxnZNNLbJvtbEOIzmWAuZ6iXa2q8UfAoW8F8BaCGOQrp7rESBKklRGiHQApNaITbyBEVSoJN0sdQs0B6jVq09LOoVSCKbcsk3DNVJk0Q6CNu87ECvAFuqr0ZP6RoVeposdNw3Ag7AJUusR6U8AsKXxPQk91NvNhiFxquXSk7tF5SdAZROpVVnTP33hKOjXYOsmWnSIvs0EdkxMYV7b78TB6+5AZl2VzLkaExsx5FuF8c0rjte/RDu+4ZHMDs9Bf+gznJjDM+eXkRjfJcmchV6+SQK3XNzU6ojmZlrr8XEq1+Ol77/2/CWH/1ruP87vg273vRGlLfeiu71+3Bqxy48qVdBX6wSfAkpnkmbOKprf3JsCidak3hW+p9OG/CPDT2l++HZfAzHVbZw1bXo7b8J2176Mjzw9Y/gHT/0A/iqH/g+3PO2r8DkzTdhIW80OTVx7ztue9Xki8AdjLr4Ih8BPdIv8hF4AXb/4ccey978rndd803f9m0Pf/MHfuDH3v1X/j8vefU7vwaZttQXJnegt/MqzGi7+7Ac37FGE8eyXEE6xUm9ND2tVeF8lmDZX5qTY+4obSylKRa1kpuTw59V0DmVZDghB7uo98AnJibxTGsMh8enMbf3WjTuvhf73vIVePAvvwc3fvnbMX/9TTg6PR1WbEcVZJe2jWG2leCLWrWe2D6JQ1pppXqPfEJOmVrFndaq24F4SsH83rtvV5AdQ9FuIyXRajXRA9DWqg5Jip5W6pWCOcpKq+ESKHrwu2D5djRlfzPPMaY+jo+PY0Ir+gkF5jGtNhsKTg31W6pAnQygUkitoRinNNDQE9BMgZZOk2MNTLp+s6l8A60sCzalqlwpwBZqu9QOQJWU8I+sQOM5MzeLjrafHbgr5ZcVGJfUl0Jt5bLNdicK3IleA1TeQVB5qXwXBQrtHiTqc4IUhppBPKyLCVBKzigoeaFMeijVfsUeDCQVyBqe1BglS6mRjaJOu9x8SlYFqiLFTmgisdTuSg9g+0tU6BWdenwTIpdtB66/DnfcehsS3Q/zkm3u3I3Tuq+e0rv1qx98CV73re/GU0mCjnZc5senMJM1sTyxA0e06/A5TcjK/ftx/yNfhy//3u/BAd0zC1ddEwL16fEdmNP9NKNrNKtrNa8JWFv3WUeviRYbLSxop2C2JGZ13ReYYDlroJ030RZdsi3izVYJjneBuUyTUk1AfK8fbTRQ3XAd7nrT6/GO978X7/8bP4I3PvLIA9fcd+BNr371q3eo2xRe0J8XfAde0KN/eRufXN7mjawbHIHv/5EfOfg11+/7wHc++v5/9d5HH/21a246+M5kbPt4oVV1J5+Q42vhZK/QijtFR0GurRVrt5mj20rRbQCdtMASl7HYncNs+5RWkXPCAparJSwnXXSyQrRScC/kTLtYlMNtj02gp9XZklZEp5IWjmvZejqoJgozAAAQAElEQVQbx+y2vejdcQ/2fc3X4uB7vhGdlx7Cl/ZO4LMTJT43VmLupj04+K63Yumm67B89VVYmpTjVUDz1vXO7RO4/57b0KoqbGuOo5k3sNhZxqy24EsFdUyMYVkBRq/dkShgtOTgx9IMDQXWVEE1q7rIkwKT4y1MjDcV1BtoaFLSkEymiUmGRP8A0xQUTVegtAJZVgG5BteBGgqaqUJnLjQVLKdyYrvGbYcC8pT0bZNtE0o3FOQomxTnYOVeEU9u2wYq0HTaBXp6xdBQIJtMW5hMcjQ1M2kUQEPCUqmwXSHR7CBV43mDaIjp3yVvagwyoSF7MunPAi3hQAx2Ueq6DKISz3B5BNGFkQRaIZXORFveRqbAaOTSb7SUb2gcms0xMG3C3xXo9DrwKwLmFTSXET9MJbB3727ceOAm7L7qaqibSBvjqJIxHJ5bwuLuPdoq/178RZ7i2ckpHG5N4MT27dj/5i/H1/yNv4YHvumbgTvuwONJA0fScRRT16DId6LoTIDFOFq6t5gnmtx0sNxZ0KbMAgq9Zwd7yNMKrUaGLAEg20rdH1WvDVUGq576Wum6T6lwHItFjnmNtCeiRzXGR7WDc2qsqYnGDtz44H2Hvu67v+Nn/urfeuyn/84/+kff8fa3v323Kr1gP7p1X7C2jwy/tCPgR+XStjDSfsEj8Mgjj6SPfu/37vvpX/il97zpLV/xqwduvvnvtcYn3rDU7mxPkgzLCuAdBT3/+Ir/nKlSEEoaDXS1oszGckxolXz11Xtw4Jb9uOvQ7bj//nvxwEsewEtf9iBe9rKX4sGXPoD7H7gXh+69E7dpxXzgtgO47sbrsffqvUCWKtwBWrehk6QotELqNFrhG86nFaK8in9Cbft/L5t86OW491veg8nXvAqz+/fh9q/+Kixddy3mt03Df1M+r2CeaEv75pv24+677tC752VkihzdXg9trWoVq4GE6Mhu8yql0zRFqf71Om14pTshJ71LuwHbFQgmFUgzBSUvPA0qWEFBzLRSmnL5BHQGlAUUxBSzldHHXlFQTFUvKsmUYgo2QrCOVO1PaByntHrcrsnRpCYaDQWuTAEjoVqQ3MLCAirZlyvge1KSSFupVwO95R562p5OmSDR+NSQNVqdlwqyPQUo/49XnlBUtlmTFEUy2ViqC9a9HpTtlpOR+pTwylvCSm/0KaWnEGo9MldBEEKFBJCVREL1UrsfvW4BkmhqZyJrZOjJlk6hwIkSbqNU8NyzZxduueUWTGoFXcheaNLUzZqYyVs4NbEdr3vvo0i0fb7/rW/We/DvwY2vex1OaMfEX848nTcwm+WYT4i5osJSt9RGC5FUOfxdiCQFpqYncN311+C2W24Ov3p3r96H37OCe++5G/4VvJc8cB/u86/g3XIQ111zNXbu3IlGowHdAmHodDOBrXGUeQPLTLCUpQryBZYzJvPdzp4iy//SQ1/2uv/l+/7W3/k//9nP/Yv3vetd33TNww8/lmF0jEbgChmB5ArpxxXbjW949NHdD77uy7/hLW97189dfcP+f9rpFi9hko1VcseV3m1Swa/yF7PYQTKWYMe2CRzcfwPuu+NWfNnLX4KX33cIh269GTdffy2u2bET2yYnMNZsoSVn3EpbyLRyytMGxsWbkrPeqfed1+zehZu1bXnotlvwSgX61zz0Etx96y3Yu3M7Mq2mukUHnjh0FSXaan9ZAW5Gek5N7MaTU1eh+fLX485veB/mr70Z863tWEQSAstkq4WbbrgB1+zZrdVsD6lsCBMF1WeWIVXwdoBuKOBlCoq5Ar1XY42MmJocx9TUBFqNZghG1BWXVqQJoLAUAhUVYCmbzE8kZU9f2durfQkBCiiQfJ0GKv+rKiUIhAIVcgWhrNS5UHkRSscUKLZrO39agW9ctobVtcaDsheyV0rCR9cGWl6izBJ0tE3eUUDsalpUm0IFMreWopFmKGRvTzL+boCBxNarRxRVBTJXT3K1n9e0ylQ/A8tUY5qCTKVMacsPAInKmABCRQLSbTjt3YVSfU9ASBugQOvA3tXkpBKPkiWpdip4IlRqQtXKUtyqgLt753Z0uouaSHbQRgun2cTs9h14+Xveg6vf+AYc27MTRzRGC2Pj6MoGT8xktOwowKyLiekcN9y4G4fuPoiHXv5SvFRb9/fcfQg333QA11x1te7h7ZiamNTrD63gNQFsCY1GpglHjrGJFnbs2q761+O2Ow7i7vvuwEseug8ve/Ae3LpvP67ZprqaZKQaLV+WRDs70Bj5uw8Js6S91GktLbZfe9ud9/zT7/7hH/ilv/zoXd/53h/+4SlcmoOXRu1I62gEho9AMpw94j7fI6BtwfHv+7G//4q3vfMv/cwN+w/8VMnkjUjS6aIil/Ve2Ssbr/QU67BTK+ADB2/CPQred999p4Lm9dg2MQ6vaFMFuUxhycjlXnIHohVkcrZhZavVn3WhKAEFaGoVGeu5TlNRc/v0JA4e2K/V/f04dOgQ9lx9lZwztQvQARXoKjnvea2YT6YtnGxO4WQ+iWNlBuhd/nIBOeMmrtWKf+/unfD77lzBzG32FNAcNnuy03koMFJBRTXRkH3bNQGZ0Oo4z1OQVBBTgFEgUgrUP6CEg7giD1SISl68UrmvHykJwWlDNTUSElPGaVXUJ1VOH9VxPUM5qAAOarbJPJmJBETKBE31139TPjUxhrGsgTyVNa6v8YvyFSHLqjNgXZUKqffDpiUkl6i+qG0ylAQsoxaTFUBt07wVRH4lvmU3gtuDjkpwAO+HWPD1T6WDJEiatQrXzTTRskyla1J2O2joXrjuumtwvSaIFlzWpLKbjaGt639Sk4CjqDCnYF7pnsymtwFZjrzRwPT0JPZr1+a++++GccO+azCu3SPfa9T9Nwxu321sDI1eViLTQzDWbISJ4l233YoH7rkXtxw8iF27dgGy10iTHInsI1PoFtH2fm98Yan9xmtvuPHHv/y1b/m5H3rs//v6h7/lW1obt3VeJR72rVTkVoQuuczlYcUl7+aV3EByJXfuhdq317z5zde85q3v+L6HXvqyf1kU5Vc1m83pTq+XLC8vw1u7DTnIlla71113He6++274P+HYs2dPCJp2gg4qGROMaTVrapAEKdjFyIFWK8HHY5RghV8VSiEArOSaS9gJQkfU6/y0trxvvPEG3HXXXbhF27BT42NaSLeRqkarmSNNAMVitMYaKPROfEy8a6+9Gg4CY3K8pbfeLSMHm6g1NaXmFNY1kbDtJNXPVP3J5awTpAqYJFEfcuIKk1S9Ol+vZCsFPjAFkwwQrQBZA6irq1DsQUQBqNx9VELyrhNRSndEkuYIneH6oJvI9kyTkrGxFnw9HNTjl86kMXxISpN7KBuVrgSqLVL8FaSiIWBWsmUFofLAiVyrM1C0aZbkajlJkGtYLVCCpM4I5dDh6234epjmeR7KCk24PCHzD/9cddVV0DBoIHXtdD+5p5kmJ+otep0u2kvLuF7B/zZtxR/SfbpPuz6eCJWaHPj+8xiqKVh/P8wbBrK2sb/Mry1ABfU8ge+5NE0xMTGBndpFiK8Jrr32WkxOjSNV4PfkzzZ7oqI+Uf1ptsZbX/vQK179L155211/9fb7Htrfr/85SlfPUTubN3N5WLG5jc9j6Zl33/NozAZNJxvwR+znYQT0rrzxgR/6kTd+7/f94H88eNttf1vvkm+Vw8nm5uZg5zc2OYZUDmu3tjRvu+027Nt3fb3albOVHPwe2vDqnWSQdT1SaRAkw4rMztMrIqw4YTtEg6xlSCIe1ksy6LJzX1pagt8bO+2Afe01V+Hee+8NK/e9e/fCB8lgr+1wW3b8119/Pca0XW2e60JHqrvPk43UzSnyOrDnSYqmJiyejDQaGbyaUpwLTh86SIZ+KBk+wQeJJyYM50vUh1f9LtJiGEbFmo8VWirRVbuWE0G5Umxiuw2nKTlThdwwCXA6gko4oAekGVImIHkWpCvlqYIhpWH4hxxeRnKlPodXHOCSDPJmkzQJIDVJ8eCGHIIMuVbu/hvQQRKJIqHvB99j7u++ffuwY8cOZFkGB9auJm+m0OF74V7tGFlm9+7dYYLma9/pdLQJU+i6loGSDO2qSviQa3mSgbfZyTaleiZMbasnvcvLi2ovh9v1vTapV0kO6p4AT01NhfbcD+t1ueqm3aK3//Y7bv+bf+UHv+f//PK3v/31Bw8ebLp8hNEIxBGwb4npy5Uml6thLza73vve90697LWv/46HXv3Kn1judB6QY2poDDg5NYmWVsD+cyI7owcffBC3335rcKJ2YHau3V4HpVbXaZag0cwDEgJl0QO0lS23Dee9cjLNdEpXUOr9biWnbkhYzg4rkAIg6C1K6VG4y/NUQbkJB1qIJxvhAN9pL2HH9mnc4y8x3XUntstmb89SK+5rtM1uNFS3LUebapXUbOWyp7JyBPskl+pObDUybcM29T6/oQkEQbVvm01JnyUunmqGwFrp7CBseMXt4NzW6m9JQWNuURMPrRBPzS5g5vR8wKnTc6JzOBlozZtfWMKC5BbbXSx3u2hrCd+zQiaAYL2G20LfUfWlFZbRyDKNSwOJgl4sIolCNhoaYhj+QlkNlZkRhTegdV83KNwiu762tXB/2hznI5w3yHqsSYb+OGA6EBuZ+gkdDoheqR/SLs1Ve3Yh03CNaav9xhtuwN133q734Tdil96rN9JMc0X/BYDu0W5P45RiQrsarUYOX1upCp9oQ6RmOm3aD7K2LfKaWQ5PTCvt+vh1wKR0j2lnyu0280zv4VsoOm0szs0i1z2/T68Kbr7pRr2nn4InIHmeY9E7X62mVvHb0tbE1P3v/Y7v+amHv/Lt36tJ81RsZ0RHI3DOI8BzrnHBFZLz0PA8mHkeVr6AqnzX9//Iwde8+a3/4Nbb7/gHjbHxO7M855KckLswNz8f3j86kB+68w50e23Mzs6HgGeH1xprwk6WJLzaiHCZ65Nrl8srYGgpWmll7m1Py0IBp1LQr1G5SgBZ1yNrvZ44GD1/UU0SdoQTrTHtELSEcVjXwsKCAv4YDukd+ytf+Up45e7VuVfmXrm5rgNepUDmdJomoKJnqtDdlGMea7Yw1pCjTyAOpBOA2odMcZ0168QWs0KqgAn4B1qW2m3MacKwsLSIxfYyOnLw2uGQIOEvZRmJgq0pSXjFbvhHVdrdAsvtjgK7HL92IJaWO2h3S2ioQhCGjkrtcQXKrn4qj59ghvWTVB1xNcbBZvV1M+p6G2Gw3kZym/GjDl+fmI7UPNd13rQfJEPW18n3V6pVsOXdR6ddpyi6WmV3ceONN+JlL3uZrvtduOqqPeEecGVP+LpatbuO7wG/JrIOTwLbul5kPVbmWV+kTkeQtR3WNwyWsx2uSxLkik5NcM3zToLbbWqy4fq2yZMR7ywcOHAgyDtve3y/jE9NJwudzu2ve9Nb/vY3PPpd/9Ot977iOtcbYTQC5zwC1TnXHqmJAgAAEABJREFUuOAKcp3nrON5MPOcbXyhVOAP/LXHbn3dl7/un23fsetbTs7MjrU7PQUpatt5DI3mGG677Rbccccd8Op8XsHdHfMK2c7KXwBb1kq0q2BUKYAkIFImAU4b1NUyNVyWJ6lWU6lWK2mQayiQ5pnqJEBiYZRQKBUAkgGpnHneyJBplV3Iibe1IjfsrDta3S4vLMKrJAf4Rp5jWUGxq1Wyv8xmh9rVytcTCLdfaJXW0/tV6EhB5FmGZt4QMq3eZIT4FEL/5JQlEgKkWCufRBYm4V14oZX9vAK4A/Cyxq1XVCi8r84UlcAkk1wl+bpH7lmlPplGQEHeKJGobqUVeg+eTHlSsLC4DF+Prt4be5Ue65gWUFvCmmabpxK9z3XK0DzJZADu3RockCxAEmQNAGatQ6Wcv9BmeUPZc/qQPEOe5IZtxjZMC/U/0Th5Eue0eZmuW32NKuS6L1otXcNmHtLOp3qPUun6Wc6TgmXdMz3dO9bj+4nkOnuscx1DmWE8sYPNpobv2YbuOQMa8EITuUr3RQLdW9odaOQZEjVVqg+GZ2m+zSvtXlWyZ59eW119zV5keVOvrLqY147NxOQ02kU5ccsdd7/3Oz7w3f/g9pe9+la1JS06jz6jEbiMRyC5jG27ok177LHHkh/7+//oy17/xtf/dJo33lwiGd+xayfKFbcxvX1bWPFcffXVck1l2DZsyHHZUVJLx0QOMUkIO0c7TVPosMN10Cz18tkO0dTyGRN4G7Kh99MOvBMTE5iemMS4HLF51kFSGuqP6xp2wOY4TRKW9YrH1HWc9uqHJDoK4m7fZblsddr1zbcdTluPy1zH/GYz16q8qYCeuxkU2gFwAHDGfbI8pNtQuITRldP2Km92fgG9ooJ122vbnlQO3PWcD3U1RiThtg2yTpOEj0Jb7JUHXXJpkoNpAgf9nrbu22pnQbsOiwsK7FpRdj2mriQQ8V8aUmLB7ZFEkiQgjTrt/EaADtcTOeNjfsRg4Ub8QbnYLknEtCkp+wcAHYN6vbL2WHsFS1ISAMlw31nWY14oWHpyF64DNLdT3jxfh9iW05Y1SK7aQjLoI4l4kFzHIxmLzqBux+0WCtCF2rVArnvP7fV0L/ledJu2w2X9sP2u4y95+hvxE5N6vTU2HnZrGtotKsmxa2+44eu+5wMf+Ml3v/+7H3rkkUfS/vrnm964N+ercVRvNAL1CCQ1GZ2fyxGwY2hObPuyV776y34iydLX5o0WRUNAtAPdv38/7rrzdrS0TRgf/iQEiQr+8yEHvapSaHNgB1HpfXah9+iG03lKtBqZ3lU2sXPbJLYLU5NjmBxvKoDnKkvRyBPkQqaVVitv6F3jOBxkSwUtOzmSIBmCZaVtY+gwLbXqMiqFVqOUI5UBICoBqGRXqRWSqXJ6T9mR82aA1AXa1pa44fY8yfAqC+oLK8D2GO4vfLiSqE3w30gvaEfC77w7Crhx+zwEb0Ir7BKF9BiVraGCs+sKpRTUoJqirE0ApvC4V7GubK+QgImQJoBooglCScA7AN4NWNT71o4CRwX3TqfwSdDTNfAExeNXqS3DRRpODEcpfmkRW7qKwOg7JbZBiKzYbt2XKuhwm7E8UpIg1c8+W2yTUcqgSHXB1BFplZzTlIJ+9LS70tQk0DspLk+k07TUGGRpikr9hu4J8w1ITyX9pkap+0NWALoupa6Z4etsVNpVsh2Gmg32mjo/CPP7QTLIO3B7jEzjfeP7t9DqW43CQd2TzoZe5ZS6L0t/Z0R7YKVsJGXZig2e4O7Zsyd8Q566L9qy1Xp1f+Tjk1Ovf9Ob3/oPx3fufZVsoHBBH432BdV/IVW+4MF6IXX2MrBVXusysOLFZQLvvu8lX/bQK171d7W1e0+3qLKqqmDnMT4+joMHD+KGG26AHY5Xr/bliYOnHKdX2mmSBFnIQdpZdfVO3fUdGL3y9qrbzmms1UIjy5CA+ocA9B1UOhHsWO2IUzk367CTJuXoFPJsg3VvFVCdQVn3i3RrKlU/XU4y9KF2wglM++WwckTH11Vf/UW3JU0EOlo1e7vbQdbl5ZA23UbEiqpAzAuJvlPQk9T2rbE9MnWOrMtct5Kwx9yBu61A5634ngJWW5Mpv1boKDgoZiiOKdCu9LXWMvzsP1erta+Vu52YIwdLY8kaJQmSa4yVlPUYK9lV0s8jz6y3KniREv3t9avciN8vc6FpUvexrgPJcL+Rdb6/bad9HVImYUI7PTUFr9jHGk0o5sPv3PU8pZPT06/8yq98+z/6lm//rnsBEKNjSyPgZ3RLgiOhizICa57roqgbKTnLCPC97//+B+956cv+4emFxZc3x8apQwucMqxMb731Vlx/zdVIqhKTYy2Uet+cynfY2WRyOHJHcjIKZ1odheCusmaWwytsf6FsXCv6poJ4RiqQQ6UI1BfZgXsQmifAelwOHSGwMlMqQaUg6oBeSks/VBg+URdUHiHfCazkY5q2W6hkUwkFdVFoUkKv7hJqrQSZoQCowOzgrGaVQoDlHSTb3Q6WwhfVChQVAaYBldJ2yPW3xiuVCaqpEYL5Bs5y2JkbUYzuWLCotkFNIKLQdenJqI5OmoyFL98ttTvh3WtH7/C9MvSY9bdr3etRhutrntskCVJXtqqCzRTTENnSh2SoPyhsGwyyLnfaGJQbzA+V4aDUWr5ScgBYn1ffsDFUPXyGthtKNj+5XkS/JH2P6O53GUk9XznIBGHCpYkZKZs05iRByWa6J/M0w/TkFHbv2oHt26bQauaql2knK/dKP82a+Uu+4m1v+wff/t3ff2d/W6P0aAQu4gjwQnRFX34hOkZ1tzgC3/Doo7e95R1v+Vt5nj2gIJEt6b2sV6a53vnddsut2L59Gl29h/bWYaCprq22M1MQqYIfKSfkVaCWDokckB3OVHgPPoaGAiR0xAvquGSIFT6qikFIhXiU2wPUUggodoDw4chq2geSINejr/iM5KquM0oULOVMXS4SSqVVgUBnIgR5vdpGT4VLWpUvK6D3FEyhMUiyFO47SWgMFXpD9Q1PdRt1sNxQSAUk1TeHImVWPqTakA0rWZUzJlfHyit2f1M+TCJcKhtJBlmS5mwZ0db+CsN4LicZ2jhbuWUjNpLtL3facqarWD8sq+yLkehvqz99MXRbh3WSDIHZE1bnDdLXlppcJUigsVQfqWudJ6leVY1j+/Q0dm7fjpQJNIsO17vZHEubY2Ovf8Nb3vC39SzvxugYjcDFHwHdieevVHfr+Vce1dz6CNx2//3X3nvovr+ryPzWTlmlUzt2KhhVIAn/RxTbpydRaOs2o/yH3v9NjY/J2QApqH+VfIqWhgqydjhhRd5qwO8G84RIFbnlnoKcPI8cFCA2pBrxqLD2L/JMHdRNjfUrTAKOmC5YgR1h4PXxScmtlJNrabNIWVVVTp4BvwPuarsaqlLppN6hkpRpTxOW5XY3/BlZu6tVuZkylHK2lWUrQEMByA6SINfgOZBB1jypDB/qXKMENfIRUHoNUJlRidbAykESJAENrJpFhSSgFEWVIMBpUHxBQpWwUl2kDKDONaogqewZH49zLXNG0UVhWH+tyK3UqcGzZYxB/qXIn1M7AwZUytfQmHtE1SUPe6mrYGo4Td0/qXavEK+fA7Xq+uPdLyMppKnXg/eoJpotbJuawJ5dO+Fl/ZS24ksJp3kjn5zc9s43vPb1P/qKN79ZhWKOPqMRuExGQJ7oMrHkCjbjm7/5myde99o3vO/QoXvekmfNzKvNo8ePKwYQt952MPS80ZAb0erbQdX/UYq/WUxdnSxV4KgUjFWWyCk5iE9Ojms7sAEHcwdwyg9ZiSlJuTXnsEoxcEib3d0qV+pRKEK6bYq6gKSJ1EtaAna6RtxSdtqwEFnLOj2IKNPPJ+V8pdPtLWuXYqmzjI5eI3SFthyqV+RtvSvvCEwTGOBaHddTzJfKRNi4bRWe9XNm7XowyTNLrKzSTkEl2w2PhXmGA0egOrnM6C8Xe+jHcoYLybpNsqbmnQ2uawzKkdSQ1WMWy0kGMbKm0F0QGJf4FNt3MxulXXah6NdtXTHv60AybJ0neoYiP1Bdy0RlaZJorq37SXmUPSSa6OVpplX6NvhX5vzXDr7vqJ2wiml+4NY7vvH+Q/d+tdsZ4UUyAvGxuYy7m1zGtl0Rpj388MPZ3htvevQtX/GW71tYXhrvalVqp9JoNcPvsPvPZaBt9dnTp+G/204TYm72NBp5Bv99eQIizxKMa0U+MdZUIM/hFWiyMjokJSEoDulc+2il7ayCI5McBX8iz/yQVnDq6t1vW++Bwztg73NLW6KVMJECcmtViFRuLULsgU9VKnBItpRsJRrhvNGfj2nrhtpaWGpjYbkNf4Nc44NFvSvv6h2131dDYwHNaogEZIpS6VWIp2bDdwBYVYhwvwxUpcaiBIEArBxh0lNB8lg5KpWvYYV5BvEqz6iovkpptQrnlZEWCJULZFuwAWvHqkSltgLQZwNWD9KSMl0ygzpWhZRw3w2SICnO+o/rGuu5WJV1mYELOaqtVE4ktB7VyhhhyDhJ+Jw+1H1RgyB1LUqNXR+oNgrdTxDNsgYSBW7oiH0P+VIdERIQfrboe0cv26nnMhejmae47vprgv7lThtZo4njJ0/teuQvff3f/r4f/MF3Sp07KDL6XNEjoNvkcu/f6Ea8xFfongcfuvcVD736fe0edpYVaQfS0yr03nvuxoSC+unTp5DpHXqj2cT8/BzsaLwKdzAfUxD3aqGZ5ZgcG0NLco5xpW6seoVaG681NEpQ29AOOeLR0IkJ5heWMDe/iFnh9NwCjJnZefhnUI355aUQUJe1UvYKxEHCNsINSU0qvSIwNUiCjEiCvS633ZE6HRF4OjkvEj5krC+a6hZUXv4TPW159pTwhMPtkwz6Y91EzjjXZCNNU2Sq5i+WuWwzhAYvwonkOi0kwzisYypD1nyypmJt+Kmo4FPpYm4ocfYCkkPt6B+Ts2s5TwmeZ71h1S5wHIapjDzfTx4P3z9G5HtylyVpuMcK7Q5ZhuTKeCZhwkVNGFxnfGwS1113nWQZ/i+DyclJHjtx6vo3vPXtH/i697znpqhzREcj8HyOQPJ8Nn6Ft82vfve7dz3wqlf/4GKFW3tyHIlm9l6R7rvuWmxzsC46aDYbaGuLr6P35lkjh51HqbTfi6clsG18EuPiK7TJ+4uh1YPL5HdQKABqJ16BnIA+YIKu4sNip4vZhWWcUuB2erlX+Jev0JNQIZkqzVCleUCZKJ1nKNMEhYI4Rf1+u9LqJNXqhKyQamuW9ZRBGgB5NX8ENaYsWCr+ViorA6C6lvfflweobqDSZeoyw1WhGpVsgoK17TesSd1UO1SpJYwS/vZ/0K2g7/qGjIDUg4qOCdb+kQko2Elj5SAJqI8SRYCCiGUguUFUIPoBVSCkU3C61Ngb1h8BHbQxK/13OkJF4VORql4DaiNNUzD0XTzoIIE+kFT2TCiaS3AAABAASURBVKiWrgsR+u9+QIdozCeqlyYJTCWFQZhvqJaqaErous70gSQS6SBlm8rdT+ggCZJKYbU8ZAZOJMXRPUGN5Arg8VmB7y1LGGFkJe90hO2L6UilcOBTKm+I6EOytk3t6aZApZlv5jFWm6V2x1p6BvXAILSnvhUK5KoGJOojbZ1OUKkCORLd+SXR7RYSSdBqjWPXjp0SqhD+w6Qs52JVveYt7/zaD+x/+OEWznaMykcjcIlHILnE+l+06h9++LH0lS9/5TvTRvMri6rKKzmJnqKvfzjm2muuwYJW400HUgB2moYdZqFg7pWn39/5y28OgAmo2kRKpeSwoEP+VWd9khrdElhsd7Hon2IV7WoXoIcKkDOr5LgoClEjBBVprIRCMqWUSVIpBEjj6odKGSJb/pAEWeNsldwuKjnTIYIeD7ODTEjUKTq9ApLqUhLaQ99BMvBIrnKtz4gMcni7sXwYjfXJWi/JM9oha96w+oM898g6DZeZGk6fK0iuq7JVPSRDH2Jlci1vHUYsG6SxzLQflnPeNGJYXldOd2HdnmNwlDUlaXJWDEoNtkPWEiZ+zsg6HxWTDP0nawpZ5OuCqt6BajbGgqhX+hMTEzBIBXpPBtIsb0yMf/27v/Jdb5JQIrxYP3yxdvxy6veL+Qa8pNfh1rtP33HDvhs/0Gq1pu1gsiyDf+HN/51kU9vrdizmVwryJINDCXkF11TBt9nM0Whkgb/OUAU/B0DH5lQraJd5AdHudOBt87a2zv0jJw7UZK0XCS0WYEcVoFV1JQTmyim2309JBhtIrkgp6MvGKLPKPEsiykd6FvF1xWstr2OHjMeR3EwiiG35tJGmYXaT66VJhrGKjZF1ntyYWm+U70+b5/xWYNkIkjG5JUpKXh8LkzzDfrfvMoNcX26eyw2n+2HeIGJ55Md8pGStn6xp5EdKDuf7fo4y1h3TkZpHMkz8Bu8X0rVLQCv4fvj/tjfKqocst5ssUWiyPT7ewrZtU8hTBXvl/cMzVVXtOXTvoQ+86R3vuFqKnq/P892uB/L5tuFF377v1Bf9IFzsAXj4sceyB15y/9s0k78FOhzA/SdpO3fuxLVX74WDrlfqnY42wSmBlZfilYK7twcbjQbyPFcBVh2snAa8QoAO+Sada/ezsNSBvxHvXy8rwz41UCmAk1YMuakKrjsI6zL6+UHpeZ769fSnz1PdlquRdT9dIbYb06YRsSzSjfhl32TFslHO1HnD6WGIZeSaTcPkBnmuZ5g/SM3bCkiu3iskt1JlTWYTV2x7jDVhrLaDgYPk+jIOCCg7qMvzU7Ev+cftklxv3yatWn4YXEWT9PA/DJLEeGsMjSxPNAl/6dve8dUPq5zC6DMagedlBEYB/RIM+20nTtx1w4373j+3uDBe9jpaaTs4V7j55gNhlaCHf7XVVE4Beidc6j13Akq2gaYCOpVWKA5ytWNhqGtx6PBuX0f77J4ctHtd+E/hSvGhlUPi5bvrR2Hx7bMNJbf8cbtnE7aMcTa5jcpJ9VTYqNy6jc3KB8ssHzFYdj5569qonsuMWO60MZg3byNE2WF0ozqRP6zOufCsJ8o7bfTnScbsppRckyNX0lu84RzUjRK64/smVOsalM6ojlzRv04AYeI6wApZ98kImb6TeYOIxVRjAWrLO16JCvysOu3nd3p6Ovw3sYUeRH/JVXT7gZtu+pHv+f7vv1uiV95n1KMXxAj4Pn1BGPpCMdJ/c/7Slz70nlZr7Ia4yu51urjummsxOTEGvxP3j8fIASDLMiQKvHYcpo00QzPLxUOAV9Cx3yFGr2T8Zbjl5XZYmTt4GyRDqR1UcIx1FiQ3Rai0wYnkBiXnxrYWkuvsGNRArpUPlp0t7z4Pk9mIP0x2I16/DrK2cZhsv9xKuULCSuocCMkgTa5RkuvGjlyfDxUu0Ylcays2EfsaKclYtErJM3kuJLmuL+ZthKh/o/LIt5wR8/2UZAj0sZxkf/EZacsZscDB23mSYULtZ5JkWKFv27YN0O7aeGsi7KjljeYtr3n49W979NFHc4yO0Qg8DyOQPA9tXtFNPnti7parrrn6rQuLi0mr1QpBu5mn2L/vehQK7A7iHgCSwbHZISQgLNNs5cjETySgtQpIKoVAHR0MLQi0Zd9FWJU7kyagAG2z10gA1E4sbB8DWvfotPIppdLwtrwpSZBcKT2T2JlFxFKSoQ7JyAqU5CqfXEuLGcr7T2Rd3s/bLG0bBsvJup+RT9Y6yTXqeoZlyJrvtHmG05thKzKuT9JEXWUEdQTeZqfNZDYrG6Zz0Nat1O+XcdqIup2OiDy3ETGMF8tMY/kg9X08yIv52F6kQZaMxauUrHmbtWNhkuF6OG2Qa/lEs2TvDBj9ZSSdDbD+ILeyc5CnKRKVGNOTU2g1GkG/d8qWl5ebu3bteuuzc3M7JTL6bH0ERpIXaQR8X14kVSM1GgG+7vWv/fKxiYl9VZIizub97tzv0VONdtntIJVTsKOAZvf+Xpp/drKhlXlDfInAK3DXTejcWkA2v93uYFk6XN+TA8s5TRKJHFSEvAx8xHLLDMLlESRVhTG7ZUoy1CMZ6pBczZMMPJ9IDuW77GKBZCWEdgZ1mh95/enI24x63AbLzTOsy3B5pE5HmLcZopyp5SKNaec3g+WMKGObnO7nOb8ZLGtEGacN5yN1Oup2ehAu68dgecxbX8L19wK5lo9ypiRNLghkrYOsaVRGMtwn5BqNZZGS1LNYhOfKz5GxuuvW68HPtJ/tShPryfEJr9LZ6ZaHXvua17w86hjR0Qg8lyNQR4znssUruK2XveENO++459C3FSXG/fAzybTdV2D//n16Td4NaQfzTrcdnEmiAIxKjqGRYUwzfV+MsDJPqlBeViWkCz5KvSBfbC/DsO6EafhPTBTBtALXShURUN41ALJ2VtDh1bghlvhYBVaO6IxXsrK1WkXkkWv6zHOdUisXoxLDcNooZLDh9GZQtQ0/1t9f6PwgBsoZyyOfXG9zPz+MvxhkLUNSufUfkhorrmcqR/IMfmxbI7c6dqs8jdNGaalbp8vX17C8yzaDZYx++Zg3b7O6LrOsYVnTfrjcr4bMc5qkyTq4zDCT5Go/zBuEZQZ5JM0+Y7ziPUPW5UFo4ERytT0XRd1OG6SeCY27rzNZp0nCfXW/LBPrmDpfY01vygT+sqqp0e36Oa4cvCFFmJoYR5YQfo/eKXrQbtn2O+489O1vfOMbt9W6RufnfQTO1wCeb8Xnr55jyPPX+pXVcnLojrvfnKb5gU6vRJo1gpPavn07Mq28gRKK0/CPXZD1nWLHkmUZvEJfYSEeJIOzcsz3L7Iua1VuJ0SKL2bFKLk5Xe+oEGzavEZdSjmpOrV2ti5jjYNgI3mmMSRDGc7xiPojPcfq5yR+ydqozsmMy0qY5Ko9F3N8yDW9qw0osVkbm5WpavhsJjOszM9cqLjpSVMyTQSG1R+slqpfO3bsQKpnPGEWvpyaZulL7nrZyx4alB3lX2Aj8AJ8jkcB/SLdY3fe+fD4Aw/e//qiYtrzVjrrLfe9e/fCQZvihRgpSt0oZL1S8I/H5FkCuzvD5pBUvoYW5vCqoN3uole4olYMCuil3+RVicXPCjsm1VKNSoDmFDXtr00S646qzpED/JodziRBriEwdSLP5Ik99GPb+jFU6AKYl1L3BZi1aVVy6+MXFZF1nY3ykW9Kn1YQx4dkuJYr7HMmJFfrkGtpM8n1efNqMEwwbYMa10dykl259YKIy/pRaP+pH0FoCyfrsFih7XFTsm5bb2nUbhUATbqHwTKRnyjQUztnhnkktUqfCP2wXuvXSn3Hgw++9KX+fxzMG+GKHoHnvHN6SjZss9+nbyg0Kjj7CEztLq+56urr7i/B4Ba6chxJnsHfhE3kACCQKtNWdHQuJEOw95ZgfwuUDudLnQpNAPy/jnX1zs6OrAqzAsA6vEqvJDPsQzKwSYJkSPefQn05p37eYJrkat0oH6llSZoEmB8SOvWnlT3nz4XW36jBS6V3o/aeCz7J1Wvk9sj1efMGsdk9Q3KduMdsM6wTHpIh1+tbL7JmSb8U2Z9bX2OzHMl1YzEoSzK8EzefpMmGiH2OAiRr3aw5LvfEPEvS8Cx60m6ehLDc7jZ279396u709FgtPTqPRuDijcDaU3OmzlFAP3NMzouz78CBm9NGfn2hIJlkGQoFcH9hxl+i8TafZ/n+kzVUBaAg7UbsBNI0AfVPTDmGQilfrjJMCrTxB/9gjGf9JVVDwdxBvNQqxXA6OBEVDfuQhKrUkGY7ICO0bxsMrB2kG1nLD6bcljGMvxXeoIzzw/SZv2VsbvI6NeQ5CK+r+eLKkGvjRBLkxvDIkDRZB/JM3jqBlYzv9n6ssM8gvv+NwYLN7p9hZd7tIhn6NKjrXPNRv9+x79i2DX7OrSNJEvaK8o5r9+7d7fwIoxE47xE4x4rJOcqPxDcYgdtvv/O+ssA2P+R+sE13794N00rhOQlOxK4L8E9K6hy+WEMMPyoF7Z4Utv3uXOkkS4MTsj5/YShE6VBVm+maRITkkBO51gJZp8maDhE/g+X2zmCuMFxmrGTPIJuVRWHyTFtIhr5axjo2hSYlLrdsP8haB7lG+8uvlLT7bsT+OG3E/NkoWY+P5WK9SM27lCC5qv5C2hxWd5DnPMl1K3TzVg0YSJBcvQdjEVnzSEYW/INQJOEfmvEkXtvt8M7ccqe9Z9/V1z+4KjhKjEbgORiBUUC/CIN85513Nvbvv/FhBfKmV86FttXzvIHJiWkoogfHoFk7qOBDEiEtmucpJAAVwAe55igKbdl7NSGdLgo6nHAwp97PG84brBK45jAMOi2SIBlssB0YOEgOcNayJEPdNc5aiqzLyJqulWw9Ra6vS3LrlbcoSTL0gazpFqs9p2JkbRvJLbfr62zECk4bMb9VGuuQXDdO5Mb5jXST3Kgo6B4sdNsRJIMMuTkd1DGYt75+np8r50ma6PHU1FkT4kG5UNh38hPm3a1BuJ6fI5Lhz9ic9zfeVXVs77VXvfngwYNNpUef0Qg8JyOQnFsrI+lhIzC+46qbpqem7/WDnYBIE8I/KpPrHTp0EOJS78+ZIFV5kiTiABnWH/X6HV7Phy37riYAfm9O11J9+R1ANUP9REnUNbz1vpZzag12MGu5OkUSZI2as/l5mA7z3Dq5poccnq61syYbnMm1cnItvYH4ObFJnlN/z0n5C1yY5HPeA3KtTXItPWgIuXHZoOxW83GCfDZ5kuGeOZucX5uRDK/GJiYmkGWN8CXWLG1g585d96G17fqz6RiVj0bgYo1ACAsXS9mLVA9f96bXvRxMd5FUNO6h6HUQ3qn16r9ZtROpHJQFz97TEhhv5ArNDonKhIFLoPitVH1JtMhHr1siYYZKeunJQOI6mhj0CpQCUMHv5qtEqwzV9DvGStTwSt6oIPkKQXeltOF2VqGGbJ+qrX5Irq5cah1QSyoWH/0Qyx/Bp+xCAAAQAElEQVS3axSSMpw2fz2q9dmVXJpociOdGjlEqPHVNEmQG0OFMKy9H7bboPQPlpsfQejwTGkFzp8LYptuI8I86/dOjdObYVhb7n/EunJl9EE/om5ojGJ6M2q7BjFMPspodMLHEzjfJxG+48yLdpr22xXTiewynLfMIIKO0MLaiQzSElUrui6WoW7YCN3u4U9ATUmq6wRWls6VpsPGSlZlQKlXV41GAwsLC0qXIejqtlcZA7ByuJ2V5GrbgJ9HPZugNK+h0vNoeJvdq/5Uz+b26R0o9cymyNHrATu37953/0sOhf+gKeod0dEIXMoR8N16KfWfk+4XovC3fMu3NK+++tpD0Evu6BDseKYnx4NTcJ/CV93kmJyGt8flhFJWchEMLJ8qnUg7DIQfjCn8x+fi1cFccqqnLEgGgGWgJc2V0+qjDqo1F0GGZKDY4CC5aqtF3A+STq6CXJ+PBbH9mD9X6rZiHaeN/nxMny+1PuN865+tHskwtm4jItYh6zJyYxplt0R9k2xJsBYi63brXH0max5Z05q7tTPJIEiKDthCihdK15+GjYklSIZxc/piguQ6dZ6AkAyrZj9TSZKtu9eBM10gyXU6zpap+sQTpqB0JjqTHLtq9zXXAMpgdIxG4NKPQHLpm7iyW+hOTTWuuf666/Tw+gNvh6dpiqmpKXjmbofmETA1JBRkLGe+86ZlVZoE9DS9d11nYnmlAO5lSaRg7UWscxCutxEGZclaj+VjmdMGWZeRNTXvYiO2aRp1O23E/MWm5MXrD7mmyzZHkNQl4sU2fcv6yLpt2xMrkQw2kWs0lm1GB3UMypIcZK3mXTeCrOXI9XRVeIuJqM/0bFUsQzL8R0Z+rvzcOcj31yM3t6cu7a9xZjq2k+d5KCTpsc6uuvra6ccee4yBOTqNRuASj8CLKKBfmpFkO53YNj19rR0FSTiY+/25qR2HH/QIf2HOK2sk9MOOeLhcC3aIG1h2PAbJkHd5RGBscIoy/XQD0TPY/XWcjgJkbUPMPxeUvHhtui/9iPaTBMmYPW9q3bEyWesja2q+yzeDZZ4r2I7+tsg1O/v5/enBOv1lTpOb6yAZxpmkxddhI93mR6yrsMUMydU2SacTtJe7YYLt59TP5ZqqtYn0Gm99amAzYl2h7SQZeCThrX2SoX0xs917dl39p3/6p1R69BmNwCUfgeSSt3CFNzDRyieZ5DsVwMNDSzL814o9vUf3++3+7vvhdz5JEhAJNjq8OrcsydXtQecNb3FH9G+tu8z6/F7RcJqs67sswkYm4hukc5a8eHDbxkYa3WI/NpSTbaQlN5I4P77H4fxqDq9lfYZLSYKkkwGRHzKX+NTfFrnehv6yjdK1eWv16vwm53MQtRaSYWzI9fekyy4lyCQEck+Q3XeSobmq0tMTX4MFTn0i63JyPa1Lh5/Juk8kQ0C3FBnqZ1NT0zfu2LEjMW+E0Qhc6hEY3WgXOMLbdm7bBlRTDtJ2GA7G4+PjwYn4G7BW71+Kq7SlHlbhetBJOYDwvIdSkAxwzjKVHI1B0iyUyofEwKlfhqxlowhZ5y0TeYO0lhjkbj1PXqiGrbe1seS52+AxidhY79ZKrKdfklxvD8lwbcnhtL/uxUjzgpScuRYd7N+q+jNFV4tiguRq3yNvkJJnlxmscy55299ut9dNjEk9fwPPFMkN1ZIbl1m/K0bqLfeYFmWep1d3Op3UMiOMRuBSj8AooF/gCOdZ1kLFhrfTA8oS3nL3ClheRK+917b09IAr9icg6ue7gv6tOBaydhplWfPI2umQBEn48Mqc5GqepPRD2mo6bGVMEj58Npy2HRExb9oPl/fnB9MkQTH9BcB+uF4/JBI+QTakLvZp88hCEiSHNmo7hxacA5Nc0219RqxOrpVF3qWg/W0OjgbJdf0nec4m9Osnt1afrOVc1+hvlOQ6m/rLtpK2vgh4Bmz4m2n9AKVKz5AemqXFtYBe6vmMk2+SICm5s3/IM+Vsg2uSdRnJ8MrN/AiU3LGwMJ5hdIxG4DkYgeQ5aOOKbqKoqqxCmfoBJusH2ytzOw1v85E1zz4nDgRZ8yAH5HqRb9rTSt7UULEJAMgvYJ3zIWsdZE3Rd5A1j2SoQ7KvdC3pto01zvrURmVkrW8weKyvvbWc29gMW9NydimyttmSsT2na6yV1fmtn8m1uoN6SQUUTdgifxjdoKUtD611bqAjsEmu3gMkA+98T2Rdn6zpRnrItfJoX6Qkgz2uS9LkksIB3Cv02IjzZH1dIu98aOxPrBvzfu77eXmeTeR5VX9TLhaM6GgELtEIjAL6BQ6sgndSlEyioyBK5Fk9rP0Pt5shCfMMrBxOV1W/Y0uQMAszfYtYr51FP8zz39bW0L5AVft/kiDpagGu412CgMCBklWAsyRX7bEdESRX9ZB1miTiYb0RJFdlY7kpWfOpjCEy9EMmILkpXDG25zS5Jj+MbxnDZR4rU4Ncq0fSIiuox28ls0pcZzWzhQTJ0I8oeq71Yz1RCht+SIZ2SMLXjCTiQa6lzbMNw+Ayg+SqLucHQdbl5vfrcd7wyA3Cr4gi+svM89/mG04bJK0m3JNRf2DoRNZlSm74IbnOfpJhTBI9Q6gSzMzMQM8oyBRAfa/5nvC4uT0xQTLAafMinD8bSAaRNE1DH/I8D+1bhws6vW6jmizcuLMjjEbgko5Ackm1Xwrl9fNzKTSfl069H6uKoqfndy1QKhMchL8URxLefidrw+1MiqKAD5/t8CQMU2/Ou65lelqpm7rMsmRdvz9NrvHMPx+4PWNYXXJN/0Yy5m+GYXrX89zz9Zz+3Ga6XUZSQ8RQxXkjZHQiuVqmbHC4g+XmXwj69V2InnOpO9gmWfeTZFBDcl2/A/Msp0GdZxHfcjHJdbIkg21kTfvbJWveugpnyfTXj2mS4Tssy8vLq7XJWje5nq4KKEFS5+GfqHt46RqXXNNBEmOtVrK8tPTC87NrXRqlXkAj8MK70Tb3/8/50M8vLnYVoBV711bKNsJfhEtB/QP0XAuEDzsGCYcAnojlxbWmAi4KPJc7kyQp0jQL9UiGd+V+R55IykjNA1bLSSlDfQQdQfHWB8t1jFrDmq46v/GZZLAhSZKwMlml4ifCxjXPvYTkGZVIhvZJrisjGfjrmM9Dhhxuh8faOF+TYl2S61SQa3lyLb1O6DnMkAzXgazpRk2TPKMo9vGMgj6GZSJqtp4O7Xh1uwWWltpiJSsQGfJZXxfrbCVrmyyDsxwkQ12LkWtpTSqKP/vzP/fc3UUjPKcjwOe0tcuhMd/tl4MdL1gblpbbXT3witEldFpdBTqwkb6h6qBKMgQ80jyEwyXyPQrR3qgH9D4eYTvSIglXHUQQHjipzXWc/jzJdWWbZVzP6JdxdfLsOkgGG0n2Vw9pkqEMCNnzPpG1njiekZIMOsmahsyQE7lW7n4aUYxcK4u8S0XJtbb6bbiQ9qwn4lz1bKUeuWbzuerfqrztiLIkt3TPkLUcyVA16vC9YYZ2zdBut9Hr9YI+kqvU5cMQdQyWbcQflIt5cq0tktruz2PRiD7nI2AP+5w3+rw2OAroFzj8i0tLXQVix+EQ0KM6kjEZKMngVOwgtKKHf4q9/3ZzOvDlhEwjQmWdXK8fVAUj8iQSPtQ5YKU9Zdd9XCdiXQFcC6sTEuuN5f3pyCNreU9ibKupUZUljMiL8pHGtiON/AuhZG3Lhei42HVJguTFVnuGvnhtTCOikPMxvRkdJkdeHNutezNsZtdWykjC+i3rgO77Tqvi8J+lkNQ1SAMAuzrDkmv3eZ2rz1FPnTu3s+tGuCbJMIEvy6JM01RPK0bHaAQu+Qis3eGXvKkrs4HlhQWv0HurD3PlLb+155dk6LjLnTD1ysGriOXlLjrdHpa7bSxpRbHc7aBbFnJADM6ArOui73D9CLPXWnLu3LHWwnBNbutsWkkGm6McuZZ3/QtBmCTo9YF1WH8/dTrCZf2IfNPIJ9fsMq+/zPkLBVnrJ3mGqv62yDPLz6iwwuivt8I6g2xFJlYalB3MR7mtUpLh2pPD6Xo9XJ9Vjlzj2RZD7NWP8xGrzIEEWeuIz5VX5w7sZM0fEN80G9uKdFPhdYX1xML1IpsMvE6r0ykib0RHI3ApR2AU0C9wdOcXl9plWS16dUCGBzh8IccPNjncoZRaxXa7CuadDhaWFrG83IEDfHRCSZZCs/pVRxlMXFnSJqDWGoS/cAcdFC7kQ1K6eIYK22+cUTDAIBnqkwyTkDgOZM3HRT5IbqiRXCuz7caGws9RgW0wBpsjGcZtkD8sP6x+vxzJkCVrGjI6kevzUU+kErnkH5KhnyTV1vBJowpWV9lOR5CuE3PDqfviZ8WlXpkvLS2FnTKyfhb9rBmWMyxnkAx2OW247FxADtbXztTKxNN6yLpck4sl6e8Ko89oBC75CCSXvIUrvIFiubtYlb3TJJGyHk4H5sovx1EffsCdIgmkWsEnREmg52+yKzwXeoteilYCVGbZUkHfKw6nSa5zPuYBSeCRXKU1f207MbYb+VulZ6tHcp0qyw/DOqEhmb4hGlJas0iu9o88Mx3braXXnwfLyLp+lHJ5TA+nlw93I1tJBiPJNUpydcxC4ZDTRvosStLkooPkGXaRXG3HNhmrjC0k9AghYf0nY+12N7w7JwkHeT9D1heBlYPkGXasFK2SwTqrBUMSnmuvkzdDciSRZjytY7RCx+h4LkYgeS4auZLbODZzeLGVpCdzepFRodlsYnmpExxGfMgTyIH4t6NRIPG3wbUCL/WwV0pXpkhQapAqyZUVYIiAKpdWGKyIRP/IBAABobKQTyswFzpIIrTj+hg4PGEQtJ6QWiuANAGJ6/SBQOBLqG4fWJWh0pFv6nxEXVSJXcEOlSTINUgJ1JUaFjZULiH0w5YNwn+37C8rGE67nAAMNRio0xGxTzFvGSPmXY4NDpJhDEmCJAYOXdpKqip1h6sQI4zVRtRaBuE+uC/9fTKvHzIA/Yhlrue2+nU6PwiXu69pkkC3aUAipqGOgORqX33NPJE0dVlsq5+63QipwVbRb1esU2niar7ziewwdd5wmXlGmujuV3liAUXxSq+myqJAM29hebGN2Zk5dNs9TaozcOW1l58B72RFQE8ZaQXoOxKlE5BpoEASqPOGMmd8SK7yMhlU6FVZqmqtRoaF+TlkWSbzC6jdanb29NPbtm0rVyuMEs/xCKxdq+e44eelOd2Gz0u7V0yj6cJCuyi6R0s5pkaWKYghrBLSNA9OMpGDINduKjtJB1MPQCl27SgJU/MGYXkj8jdKx/JBSlKOhYPswCPX+NYbYWFyrcx5I5abOm8kdrQCyVWdkWdqmY1AF6ieySBC2SBzSJ7karsuJmmyjhcYF/dUN9Kns39M+tirSfKMKnAhyWDr4FhZn0HSYgHOGyGjE7lWpuzqp19mlamE+eT6Om7XfAdxw2nzSAa7VO3CP7q5rXcrikiuE/NzZYbrO13vl+bqjAAAEABJREFUflVI0zT8RyiLi4t63vw/qakRINhM1jrImqLvsJ6+7LokydX6JNeV9Wf6dVSaVJC1rG3zqzQF8qBHE4jeqdMzjx84cKDsrz9KP5cjUN8Xz2WLz2dbo4B+gaMvJ9g9derkkUajUY2NjYUgbidDMqTJ+mGHDjuCfoi15U+sFys4H9NboSSDkyG5Tpxcn+8vJDm0Tr9MTJOMyYtDpY88d51xXEgG28/XmKhnK/XPJktyQzUkV+0kuSpH1mmypi5wO4bTBrlW5nw/ohw5KON8jbCxo4loXAnnmpA28hyZgqUlSgcrKXV6I6j4rJ9qw+kqtJJVqQyJ9loZyTAmJEPgho5YTtplEb1eoUDexsLCQqAO9hLb0ifqsjBZt+X0IEgOslbzUYepV+SkJuXqhwO6J0QGyd7hpw4f/uAHPzgK6KsjN0pcyhHw03Ep9V/xuj/96U93jx09dqSZN/RsV/BPPxZFFb7kVmlvWZ/VMZAA+vN64FfLnAjlVe3gnDciz+lzwWb13G5Ev87BOpaJ5bEs0si3I42IZf00ym1Eh7URZfvLIm8jGtvcqPxs/FjfNMo6HRF5kdo2w+WRN4xaZhg/8lw/wjzLRzgomHd+QAiWsa7biGnrj+l+fuSZmm84PQjXj7DM2TBYf6O89QwrM9/weDh4mvpLpLOn59HtFuFLqK43zCbzh8H6+jFM5mw813ektj1u23kHdK/UnRa/e+TIMyek58W1TFSHR5/nZwRGAf3Cx71amF/8U20Bdr0y10MMP9xOO9BZvYN4gTpQ+0E3zN8MljE2k7kcymzjZrjUNm7WtsvO1r5ljLPJPV/l8R5y+763DKeN/jLnzwe6bxF1OhA5IPV6vXAPO3ieXadj1cXE+hb1qlwzE724YgYiRaX3VL1uiW6ngIO5n7V+4AIP3wv9OJu6Sg+3J/BGR+/wPYZFtwe/eyvLYi7PWs+eTceofDQCF2sERgH9IozkUmfuf+RpclirdGRMwophdnZ25csxFewgUK0NdSLXdKHNRic2qCe01cd0PqKPvZp0WcxspDOW91PXM/p5sX4/7S8flu7XEetZzmnTYXCdQQyTM896IpzfCqx7K3JnkzmbnmhXpNbnOhFbCdiWdb2zoV/O7UV58513YHcA9w6T0+a5rB+xjunFgHX363Gb/XmnPdmwXbbJwdJb7PPz89oB68FlrmNYNsL5iMg7G7UtxqDcMN46mYQoNVn3lwTb7XawqbarwtLC0p8V6P3ZOvlRZjQCl3AEkkuo+0WjekejcWJufv6/j401qwqFAnoXJ2dm0O514Qe99AMvVFgbbjucpC/IbzZYlo3lThsx30+j84m0v8xp8yOcN5w3HQaXGS5zmxHOD8Jlg7zzyVuP4bqxbae3AteL2Ir8ZjLn2vagrrPVt52uYzkjpk2NyItykRf5zseyfp75/YgyYULp+60PXu16BVz0KvS06nXaPMs6bTi9IfobOsd0tNn2RUQVLutHTzsG/q2GhYUlLC4u6515/BLc2vMU5aOOrVDXiXLRBtPIi7RfLvL6qRbpcL35pcXAdkD3ZOzEieOf7J0+fTwwR6fRCDwHI7D2RDwHjV2pTTz22GO9I888+Z/1Xm/RzscPtFcSfsdX+Wk3VjrvBx/wl23qoa/z2PDoLx9M9+cHFUQnZGoMK4/8SK0vol8+lvfznO7nOx3hsq3CdaKs247pfn7kmW7Ed91+WHYQLh/kXYr8RjbGtvrtsKzhABDLTS0T4bxhOcNpw+WmRj/f+WGwTH8dy3jl63vW9+uMJqFzc3MKmO2wq+T72DIbwpODcC9vKDG0wHYMLRCzLlNi5aNnKnzxzTtefo3lVbpt9qrdfTFWRNcR6xkc034Blzs/rL55EZYxorzT/SiqEkWlCZGox9D2WVavLuaPPHvs1z/4wQ8W/fJXStoe7Erpy5XUjzqqXEk9ep768hd/8cVPs8IxO0Q7nG7Rw9Hjx5DkWfgBGcf0Qg99kmbodLuws4kOMzoP083Mt6MYhHUM1nM+YiN9sdz1DectG/U73Y/IN41813Fd590fl5ln9POcNszvh3muH3nOR0Sey42Yj7Rfzmm3bRsMp80znO6HecOwkV7rs7xtMJyOcJ2o2+lY7jqGeVG2n8Y6pv38mHY9I+YjNc+IebfhNo1+fiw3jatsyxhu0/VMXScGcf/KmoIQ/EtrDp6Gt7atI8J1IiLPusqy0v1cQ7FNkwGX2uUTZAIKAAHB5aYRMU/J1CDCBGN+CTOnZnH69Fz4JUW3a/uTJAOQqI1qFWLAfTGctqxpzDvdj1huXulv+csI8/rhMsM80ziBiPLmebz8isL06NGj8DNeVUWwX/zDR48f/qLlrkT4WxNXYr9e6H1KXugduFzs/+Jnn/7ccmfpDycmxrTlXj/Uhw8fhh1j6r9JZxpM9cPfarXgoB9n83YaEUGo72SnZPSxQtI8I2Q2OVnGGBTZqL1BOdfdDO6PddXOtna0sV+RZ512hOabOm+dLnd6M1i3PHcQCemQwjoHbl39wMph3kpyU7KRnPnRRttt9Cty3jaZum+G867n62v0yw9LWzaiv9x6jH7esLTbjnKmzhtOW97294oCvk7mOzDZLq98HcwdPC1rGyxrOO9yB/ljx44pqJ6G8y5rNBrh77+dtpx1RZjnNg23ZVh/HBfzLdMP22O+7fNkwpMIr8T9Ptp1XXYhcL8G65sXEctiPtLId9+cjn1wn523XJKlWFxehvvgCbyCeBinRpaUi0vzvz9/9OhJy754wBdPVy/Tno4C+kW6MJOTxfzn/+wzf2hHZOdEpshbTRx+9tngTO3EMgV2Oyk7BVPzttq8HUg/Yj3rimmXx/T50H5dW63vPrhdo7+OdRl2hHbsLrNMlI9lpmdDubKCso6twm1Z1nQzWCaA4QzL1qn6HPPug1FzoTlGpVVpCTt8w3L9sJz71c/bSjrWc12nh8F6Ij+mTSNCmbfDBY+//67cwcZj3253MT+/GN5F+1vi0Ora0O4SIpyvihJFt4dUK2fTudOzOHHseIDTvU43lPnb5j29fy/0Hr4qCSINSJjByNIG0iQPcJllvGvgOq67tNiGsbiwDMO/sthp9zS+0sUUa4ddlbHG2WoqjovpYB3zjEF+zHvMnI7XI8rGfKPRwolTM+E1hSdAlteYLx87cvS/79+/v+O6Lx5UL56uXqY9Pb8n5DLtzPNp1s/+7M92P/3Hf/pv9EAf78lj+cG3k5uZkSM8eRKzC/NwQLBjNe31eiFvx9CPzfqwkZz5sZ7bjel+fuSZmh/h/IXAqxO36T4ZTjvAGU4bGhMYTlvGcPvOD+JCbOmva/3Om24GywT0+SLbFHg6xbpKop8f8y6PaZe7n4Z5cuwKTNWmsJzhuqbD0F82mI75fjvcvvmR57zhiaZfCRlOx2sXZX1djISEr5/LrSPC/fFK3e+KT58+jZO6r30fGy5zXctCB+mAzNXdKtdzwFtaWgrvxL0SN7yDZX2eCFtPrC8VZ4y3eYMg63bI4dT6+jFYP5YN8mO+v9xjSDI8t+5rhMeBZLjOaZqi1+098cd/8sf/9bHHHiujnhEdjcBzMQKjgH4RR3l29tgTC4sL/03OrfRvutsZFKjClqWd6MzcrJxUGpDnzeDsttq8dfXLOh/Rzz9b2nXOJtNfbvnNYCdsx0bWDtWy6n/om/kOCg4OJIMjtLzL7Ry9fdvfltNkrYdco+YPwu1sBsu73PRCYVvdD9Ooy2nz3Bf3sx+WIWv7nd4U2n0YVk4yTIJwlqOqSo1rEca7ki6Sq/Vsk+10sPS76NnZ+dXdIpLhXa/rYOVYTavM9UiGIOViX0P319R5X0frndGE1Th1ygF+BsePn8SxYydw9OhxHDlyDC6LcPtzcwthd6CtnYJOpyfbEQAk4bkwNWyLx9Zt1XBs7EfNPZezdQ4i1h/kx7zH0DIkTcJ4kJStDOM8Oz+HNM/R07t46JDNlSYt/+30009/QdnRZzQCz+kIJM9pa1d4Yx/84Ac7H/vYx/7t+Ph4eHdmp6gHHB1tX1YV4RWKA7vfEdo5GpAji8NCMiRJBodBMuTtXEJCJ6cjlD2nj+sNVjAvYrBsK3k7PJJhRWc9sY/up1de7qtXZy5L0xTeoaj7jRCESK7rK7ZwWNfZxKKM6WaIekjG5Drqa0jWZe6rr6fhtPW6L+6X5ZyPfCshGQKA+Rtho9cJJMO4WM/ZQDIEF7Ku47Zsh6HgElbEvhYOwC6zrWRtm2XMI+u6WDnMdz896XL/nPeq3tfSafM8ae3vP7mmwzqtynUMTwCsL/Jtg3WYGuRaXdczzDfdDNa3VQzT0193WLl5JE008fCEAmGsbTvJ8B0Z98tjUlQVGo3m0Y999KO/ZF8QKl3k00jdaAQ2G4FRQN9sdM6j7Hc+/F8/dvLUqU/EB94Ow0HOkCsIDsBbjc7bCbgJ+jQEZF1CctW5k3WaZKhh/UbIDDm5LKK/mOSqzn7+YJqs5cjh1A7d+h0sHLwN981wMPGWqoO78+6vx8VwHTt5t+e04bThdD/M6we5Zks/vz9NMmRJhn6Sw2kQWjmRXEmtEdthO90X982BsR8OVu4XyeDo+4OQ65LctH3LYOUguZKqCbk+X3PPPLtNjynJsOr2tfB4G7bVNpIM9kGHA1ClCabr9bevonUfl7lu7J+vtUEyTMYc3C1jXf0gU7Wld+hJhixrrEOa5kgFyxgIE9pE7a5HktT1VbDBx8HV2KB4hU0SZI0V1jpC1mUk1/H7M2Rd5r6ShMfaY+j7wfB4e1yE4sSJ47/5of/2Xz6D0TEagedhBPwUPQ/NXrlN/tFHPnL4o7/ze/8eZdFOWcHfaJ9fWMCRE1q0M0UleHdufnYOC3P1D1FUGg6ydhrkGnWKZHBIElmlTl8ISG6pOnl2OTs3O/3TM3Nw4PYXncxLkzzYW/SqemdidiGU+0tPDhAulwMMK9hojB2mMZg3z4j8fkoytDPI689vliY5tJis+XbcDlx23J6ILcwvact4MXyBy8HS75Jd1uv1gh6ScKCEjo1sVtHqh+QZ9sdC1ycZs+soWfNLf6kNMV2ivdyFbZyfn4fti5VIBrtIgiR8WD8SvwKqV+vOGySRajclXp9SN6z5Bqm6CcE0q0GlBawclrF8P8zrRyzz2LoaWesga2pelHH6YoGs9ZM1HaaXrMvImtpuy5GEr6vHBeq/73lPVrMswcTkGLq9NspeZ/ajf/CR//AXn/jELF6Qx8jorYwAtyL0PMmMAvrFH/jyk7/3X//9qaNHfjtlUnbl6LOxMZxSUD8pJ9uRA253C7BK4KDugOBflCPtWBXwCxlU6pYxCiKpxC/ry2TnUqL+V2myALNX4HxdUqKoiiBlXr9MTJtvWctVegdbw9MKgOQqoKOSHVz55jJks+G8+b1uiWcPH8XsaX/hD0gVxFOtvlymGADTxCstZvAKrtPuKcgoIC4s611uAeuxk0TqTuCMg4AV4VoAABAASURBVOQqL1GSqGBqOG14y9qw9aZGocYjYB2boKpcs26GpEzJ4T7GwHji+CnMaTJSaGLi/vm7D6ZAAvev6KpPc/M4pQnb6VMzYfISA1WSrPXLrfTDdhrQ+OpyIYIaYyPyC42xy8xLNY6JroXhvJGI52+J287jx06G8a3C6jtDorF32raSRP9RSan7ThIlCFUBNLBME+UrVCgAltKRBLjMMkUFlROlM5K3Duuq/8vQSrJSo27HvKU3g+uWZQ+G05b1sBnWkShBEsMOcjjfsiRB0smA2k71q1pDKFBv3KZF3Z7Thm0xskaOdrcDj0uvLDQuid6XA0vLHSwsLcnuEu32EhppUmYp/ttHfv93f0t6NUo6jz5X5AhczhdXj94VOebPa6c+/vGPP/ubH/qNf8KqOOqtWq/wJqem8IUvPY6s0ZDTS4Pj9+rdZV5JGT0H/yxDeM+cpLAT8krFnbFjS9NUdZPgqAo53G7ZDWmSq9Sy5Fqe3Dzdr9N13eYgzHf7hsu8xejVib/dCyQqNkRCej2t9Ws1JzsqBQGvbPzzna7vL1L5T6fc71BLztttkHQ2OMuYd7seC8NpkmEsYjl5Zp5k2Bp2gI31sHJYh+FVqG0kFaQ0EfD18IrbK1xPtlbEdS1sUyLqx3mtv4kCqm2wnPvh6+h6MzMzmBHcruG2DMsZJEHSyU3heyS+q7ag++Lx931lO0+c0IRjbgH+gpnH1224Pcv2w/z+PMnQfqkQZajcnzDmSqzSWIekkuq/r7EmHZqHoFSaZNCjwnUfcjh/nZAyHrsIcmt1VO2sH/fhrEJ9AlVVruaqqlpNLy8vY3x8PNxHvg6Fxsv38LPHjsJB3vfO5Ng48iw5/D/++FP/5E8/8hFtxa1Wv1wSvBwMGdlw6UcgeqZL39KLrIU//uRHPvLHf/xHH2o1m2VTU3cHiAk5hieffBLygGg0W/UqlUSvrdm+VvCWsZO2w7ZTtrMwtRN3sDC1syGpFUEDrbwF+yGj1NLJNED+KFD5qEjXla/woQBblpWct1GKlrB+9B2eXJCyUZMNOzfbZzjw2Z4+0aHJqI+sfYrzruf67qcD+6JePTjIOyi5zDKWTpNEK+YaSZIqgKehDZeXCr6WNXW+H0Go70RSQ07VTwIl19Kub1sWtJXulbjtcbD0eJNE/+E2Yp5cKyNkF1OUGs+eVtRtbXsb3pE4eWIGp06exunTc+Hvv5eW2iH49nqlgoQuFLBqE7mmEyuH7Tl9+rTq15jRJMF58w3b7j4kGivD1Zw3nLbNhtMGyXXtaUQcls2jjpA2j+6TAjdWjySkLONEP41p8yPM2wqi/OVAPU6GbamoyYuQZZme026YiHtF7jE+ceIEmCZINOa+T9IkaR89/Oy/ffozn/mU616GqG+0y9CwkUkXdwTqp/Ti6hxp0wh86lOfmvnQf/6/f7Jod55pLy1jLG8gBYNjXtasH9quLBRt7RRIhkDqmf+8tuXtsE3trFOtyg07liALORqtIOxILG9eBLnirNUOuZIWlTn/f/bO+zuqK9vze99bQRK2n/3mp1lrfpo/YtZLa9a8N2/WvJn15oXp6Dcd3N0OY3e3Uzu3seWAscGATbKN3RiDkTGCBkzOIjkBBtMmJ6Gcc0kVbnj7e0pXlIQEEqKkqtKuVbtOuCfs/TlXZ59zbkki5nQ6KBuEmPiDSYyZzSQVXGNOO3I4Xjhx7D4znV3g7ElezOn2JWrezGzC4dpnZtMPMxPaC9qGzegDfGAbHDb6RhztkLyY2dgCnZHHnE4zp8NA9yAEO8SZmVAe3MAV7ULw3D/oF3ogD/2iDuyTLkd8M7O5Bl0QYWajG+oGgv4gaBe2oj84ZZxuwDG0tLQQ/hobBPGhkqkbuKAt9MfMBNsicuIDPXF/MDNlvpjZ6MPMJps5HZqEfATtMPNAOWaWKzSQpuu8rH43gXZQDCEkiCO8kaD89eRG9TOvo52R0v2qZl42cea0vUigvpH+LGYmsE25rhyrJwisGxsbzRcPwRv3SVieoffFuk+f+NO3S+XVjXZUlMBkEVCHnkXyvS31f9q9fftLsjNvwV/WIs+nacXF1NzSRLF4H0WLikzvmPxDlk0QZjY7glisT5x/t0in+RJWKumaSTYckiN5eU5ti6NHPTgpTCwIMwV5gWTmB3FMXIijHQjaYmazsEA99IcdJhYXcEJwJsiHwqgbCNLXE2Y2eqMM6qDPIEQcNlsk/boepeSkIt6boF7ZLcORoV84Xzj0q47MEkcmDMIRmWCjRl+0FwjazBTUQ33oj8VC0C52txD8dTLYifrggAkcLNAG6pIsoNICC64Vti25LPrLIgttoARzOo020KZlWWYBg2sQlMO1gCfyIMgfKsyMS8TMpg20hTYhcCooj7agK0KkmdNlmdnUY06H1P9CGQiSCCFy4EFp8QxTtAVBGWZGYNoyEfkYzplLtnmjPUSCEPGRBGUgQ68z80B/IznjoXWQHq4t5DM+hhUZv4ExlsUyB2mSRwpEcOZgzWxT0nGppzdG8ST+Tapcd1y/KBK5VFtZ9fsFM2fqv0kdlq9mTiQB3L0T2d+U6uvo0aOpHRU711Sev3gwalt+JBQmTA6YJNrl6NSTWQaTMiZpTERmApXZC2UACo4ITgiODY61s/+b5HBOOEJHPZRjZmJmQjoQtIE4QgjiEOZ0WeZ0iD5d2YHAIcB5YhcJpwdnB4EOuIZyJC/mdD2JDrxZ8oIE89XrzFfjwfXMkJkND+gFYWbCC/pAF+xqoUOHsMKOFrtY/BMMCHayyIO+EOyuwQoC/SHgFgjSKAN2sAl9wCZmHmDHzOjeCDObfJMY4YOZjfPD2AWCoogHYdAP8pjZ2ItFQ0R21ng+jvxMoSEvXEMWQugLCdocGqJMwBFxlEXdkQRlgmvMaXuZOcga0X7mq2XQBmSgUn8EeZD+5IgBMw/0w5yOBzYws6mX/jTRUX2gX8hoCg8qJ6dmzOne5KmUGVswxs8oTtMaGhrMz1gqlSDkFZdE3YbamtUnvzlcIX3JT6586lsJTCIBdehZhl8pR++flJVNd1Puob5Yt4cJBBN5d0+X+Z10pC2yzaSGCdiVXTzJjoFtiyx59h4tLpEwLM9bXYKz6hSn3t7eTh2Qtg5z/IdJB3XRFsxhZgSmTeZ0HBm4DkFZ1IFghxqTHTGkR55lI8S3puFM4VQxcVnWtbcJ8nBN9inSNKa/QCSZ8cZECJF9Hx7ZE8mkCYFtWGhgV8jyrJZlOrSIKRAmW1I2hUNRCtkRM5GSvDL1x0KjLxanQLC7RxxhIEl5np1KOJT5bXFL2g5ZYQqbdkPSqmV2p67rC2dfJnKW/nAKEKXMF/oO0sxsotDfl2fnzDaxCIkFEMRtOUkJhSJkS2hziGCn75LRxZETF+jFzMScFjBlTseZ06HpRD6Y02lmFt2EkoTM6Tg4oi6EhrwydQ4uMbOJMjPZbInGPCDMNrEIWTZBfLYIQsO8mHlQLjMTMw/Ku1GCmU0dZh4oCp0DGci8iQjauFG1oIwMYbqo3Iue0CARjCtsT8npUX19rdwbKfkZ7KZp06bhey+pvlhs0/ETx99asmRJb7qyft4sAb7ZilpvEAFrUEoTWSFwpGLHye1bNs+bVlzSxjKjpxIJuu2226i1tdkcp2NSwY4NOzcoAIcLQT6cKhwvyyQbCoXMzoBk0sGROHab2LVit4rnsdixwtmPJLiOchDUgWDXCsEuN+gLOthypI/+4DShC/LgMCDMTNANeiH/eoJywwnqOp5LzOkfZZTxZDGDfA9esr9Rx3FkInVNf8w8pLxn8lG3vzhBv0CgfyCwB8LMpij6gW2QoD/UY756HTt5U1g+gj6CULLMG2lmHtAL7QaCa4ijfQgqMLPREbpAKOOF8hlJE0XeUEGbgZhC/R/oA/kImTl9r8g11Jdg0Js5rTPK4nqmCFXDFdcGVRohwZxuK7jMPDgd5A8XZvY7XHy4Orc6D/0GbXqcjgV5GCM8N8fPGthGo1FyUgk/5SZPnjtz8vW3X3utMV1DP8dDwB9PZa07QEAd+gCKrEb8g5fPbj6wt2JmcbSoFRte/N4teoSThePAZOHJTgCTKcSWnZ0jO0ZfdgpsY5dE5BiHJznSgCUi/pDs/p0fyUzkOT5BsBuFpGRnCsFuEPmylpANNZudokU2oS50QFuYuCDMjCwzoQeTGjIQd+VoHoI0c7oc4hBmNk7Nl04gsAHCzKYtlIFztaAv2eSJXb7ojHyzO7JsYllEWPJYgm3ZzcoChkVsW/QUsfrrMdmEBc2A0OAX9IQgFyH0zXRMyIPgOjMb58rMhBfyA2Fmc436X8xMzGlBVlAO7JBGH8gb0FfGJ0jjOjOb9piZghfqstiYKSRchkrmdcQtKyRtpQV9QNAmM0u+Rcxp5rA9uBaElPEyefIw3GePcIqCBRbCoAjGJeV4RKIjJBS++p0FLEBx38IG2A4heTGzfMoQ+b7RAwn0A0EcgjgE8ZGEmU19lIOMVC4znzldh5kNB+iGutANIWW8mNmUIYsJgjLMbBaPCVlww3bcv1VVVeZXTEl+9lju2kjY9t1kovL40a8fP3bo0BHSlxLIIQJWDulS0Kpc2Lo1sW3dqiVfHty/+LaSaQmbLYKDw8ofkwYmRzsSIjgETJbYLWM3EJJduSuOGulggnbF0QcTEDObiY/5+iFlvIZObhmXTFuZ6RvFMWlCmHlQUWYm5KOvcDhs4jgFIHkhHzZGiovkOJcItsA2hHLZ6IB6yEMIQX4gzGzKMI8cDi2bmUacOV2XkLgJgU4Q6IjqsImZjUMI8jCWuAZBWdgHwfVAcO16wsyDLqOdTBl0cZgEc7o+czrMLMIsLkpOQ9AeM5t7D3bAmRkRp4zHQ8xsHu3gHsS4wQbHcQjjyny1Hskr0y60JVkDb2Y24zaQcZ0IdIIw86BSyBsqgwr0J4Iy0IGZzaISekNwDSF0RYhxQl5SbIK9d955p7kn6+rqqKenh0hWzhbWkU5KjtrjrZcvXZr18tNP7ysvL3f7u9NACeQEAXXoEzgMp06d6vl459bXrpw/vzCV6OuxZMVfXFxMUXFsFy5dJByVw4Gb33cNh8jxPUpgEpGQ5TlsOFpMljxXx04Ku3W2QzJB2jcUIgyzJZMaJjYWi9NpknxfZu5AkIYwX21TChMzIxgkmACRgQkRcWY2ThsTKMS2bYLAAWDyd6WfUKSIXPKpqraGsIjBUb9thckS29i2hIZPsM0Ve8mS9sRWny0yIvWhJ13zsiTnWmHOtMEiljRROkQcgvTIQsIrvctkZmJOi3Q26B2ORohEV+jtkU+hSJgiRVGC7WCDwsw8UJ/5ahzXwO56gjKQoAzikCDNfLU95pHjqDOcMKfrwAZBTJ58+J7cJxC2zW9jkIxNPJWkKzXV1NTaQnLJLEaxCDVjKyc30IeZCXZblkV4BXnM/X0gU4Q5nWZmSd34zXxtObQNQW2EmYK8QJAfxJllKpXpAAAQAElEQVTZ6BfoyIw0y9j45Ju4LQuyFLW0NROO2bu7u6lIxpPk5Tty57pue1tr21NLF85fKlmeiL6VQE4RSP/k5ZRKha1MZUVFfMu6LTPF3y2RHUICTg0TIxw7Jsu6hgaCEwSFoQ4BaUxQzJiEGEWMMKfjzOnQZMoHczrNnA4lyzgptAFBOlOGy8P1zHzEAz0y4ygXSJAv9lGwq4NNOMrEN4WxU4fNeP6P/xOPRQtmRxYoaAP10AfzVb2RD0HbgQRphEMlswyuIT00RB4E+ZCR4riWKZnlYB/S2K3CUUBv2IbQsizDO7Mu4nB4EOZr7cP1oYL2gzzEIUPTyAvEXPPN58BHcC0IgwvM4rxFDeRDZ+TDYUOQB2lqaiIIbIWTa2trI4RReZ4MO1AH5YL6yGNmQhr5EJTJFORBMvOCOPKHSnAtCJlZHDEHyUFhZl3ogIsYm0AvpCEoh+uQ4Bp+LQ33JX4uS0qKzO+f93R1UDQSahZnPvO1558tk4V5EvVVlECuEVCHPgkjsm7d8talC+Y/39LUMFcmxQ44NOxgmWzCXxSrb2yito52ivX1EmGHSkxJ2an3JeKUSLlEVohYdrVyEkh4YWLKDBGHBPmI98uQaR65uAUgiF8r6V1x+jraGyqMZ7Cy78akCMH1zFbCMun3yTNJOAGcQLS0tYr+TNgRdnR1UkNTIzXLrq871kv4NvGAbdIIfr1PgiFv6JIWOS0219AnxCQyPoI8hIFkXB6I4tpAQiLpdLoPSV7zZuZBeViAwIkjZGazCyR5YfeKtgIBHwjS5Pnku1jGSMER3igHGeGyWSzgeiBBOZMmad9PDzfSuIYQEsQRplxHdqVyT0mCbZvItggnDX3xBHV191BLaxs1yP3YI+MTCkeoN95Hnd1dJN6NOjo6CPZYlkU4WUIIBhD0w8wUvJDOlCA/CEe6lpmPeFB+tCEzE/RiZsMLYxLoR/JiZvLYo3iil1plZ97a2kp4DOa6KfNHj7AQuOOOO1q3bNr81BtlK+ZfuHAhIdX0rQRykgBmrZxUbKxKXZ06xlpzcsrL87e+uTMWzDrx7bE3i6JFnaKFj6NmW47a8e1z7IgQwgliZxSW59AQKWcmUUxuvhz1Ip0pJl8mcoRBfkac5UWBBNeDEPlBfGiYeS2jPVMMaUzsSGDyhJ6BYPLErry+vt7s1vF3sTFJog4Ezr5TjjYxkcLpYxHjy2DCQUDQZqagTiDIRxzhUBmaPzSN8pl5QTwIcR2CdKYgDxLwgI4Q2I182AsWuB7kw15cRx7KBIJ2g3gQIi+QIG+kkFlAZVwcqR5zuhwzm7EPqqA89IJ+cObMLIsqxzw3xnhg3Fra2wiPfjBuqBeUh9Orl8VYY3OTKY+2gjFHGZQNBNeCeBAGeQghQT5CpANBeqgwp+1g5qGXrkkH7WBMICgA/TA2dtgyzh7PyfFzhr/1gDjqyEKbwiHLZ9+t3bd396tb/li+Ct+DQX0VJZCrBArGoaf3IrmKeXi9jh+v6Phw0YLZ+/dXPCU7pe9isZg54vuzu+6SnVDCCI7h2zo7TNwjJrYtwg4Kk44lO6PhWmbmgWyUCxLMTMwcJE3IzCaP2ZZ0+nZAnUCYg+vpUAoRMyMYCNMJ0c7yTR6cGiZ8HMviWTni+LIRdrGYKJH2XJ+KosUEJ4DdejyZpI6uLmptb6f2zk6KJ1Nip+yepHHPiC9pX2LpN0sUQgSdLek3rT/32xGEw10fdA2rB0i62UGfAYNBmRkJZnGAqfRfDQuFLFmwxM2vIjY21ouT6xJnQYT/4IVhgiBuMxEEceTRGF/MLG1elaHVmXlolkkz86B6zOk0HBvuI4wZ7j84NkhXrIf6kgnz739RxpUdP/Juv/12044npzLRaJiCP/wDZ4hjajBDebQZOFBmHqQDEszpPMQzBfUz08PFUSYQZjb6MPNwRSkohxAFoBcEO3U8+oGtWEj2xmNkhVjsjdC0acUUCduu8Di6ecvmR09/c+SdysrKOOqrKIFcJmDlsnJTQbdTp04lv9y5fenqT8oeEfd1VCb6eFtLE915x+0yGYnr9j3zZbmamhrCxIOJFxMm25Zc9wm+iDk9mTGzmdzAjTkdx0QGMXn9TtAiudYfR36mBGUz85ilfIbgGjMT4YQADrRffLLMDq9bjmdxwgCd5TiBWE4MSooiZLPvOfG+jsNffbnm1IlvN/heqpXY80Pi4cIRG82STKLGXjh27NyFgLHTM1dpwF5mJmaIGCKunkSEnSnFzAMhM5tyJkPKIES5QHzkpVcGcinoRaIZ74AJWJtssZuZjS747kN3b8x80a+mvo66xBHiEQoeJ1yprjK/DoaTF49YekqLzzJ2/WLa6/8I+ulPGruD+LWhjKLokM6X1iXOzCbJzMQ8WCzLokCY2ZSDPa58JOToHycj7bJwhIPDGIQspjtum0YJeewTDYc8N5FoPn3i+I62luYTRKlkNBLyHTdp/hOZLEapqaXZPD7p6uk2NrNtDdKfOd0nOma+Gkf6esI8vrKW2E0yXoGIuebxVSceGzS3mkcHWGiGLJtwG0hvfpitvvqa2h27tm567PJ/uHP91q1bE9fTUa8pgVwhYOWKIlNZj4qKCqdsyeK9c2a88ZPutualJRG7N9bTQZEQESbNcDgkz84T8qy5mRqbW2Qni0mTyArZ/TtcuCVXJlJHJnJfJm6SydQlx0mS+EqSqVUmK0/EHRBxriSbSkl7gv6qMLOk8b6ah9+Zd+SBvXGuchmTIsSTuGeFSXqhWMqj5vYuqq5vovrGRurq6ZHdTpHRx7Y8Yi/lhS36YveOrQ9/snHtz1e+/+lPPlu7+jfspk6Knj6JuwtJAVvEk90fvpxU11BPVTV11CPPcx3fl8WCb5734rFEIhUX+9nYFthHomMgsnYgiC/PiIM8hEh7TooQIo26Q4VlEYXfpYdOcFawFeKKDr70KB0TwpTrUm1jA1VVV1M8kSAxVsQmOxShWF/C6FtZVUM1dQ0yfi75WPiEwgQHyuEIuSw9S5vU/2Jm0dkyYpFNNodMnH3r2tBjUU9EuJE8A4a+mSIXRR1f7oO0YCHoOI6srzyy5Vl5KBQin5kSvktX6mtl3OqoW5w3xjoctqkkEiZHdq3TwrbfVFO5b+OaT+478XnFv35WvvL79ZcvLQ6x1xQJSX03SX7EIqs4TH1ekurlCP5S1RVqaWsjfOMfnIhtsdASXZikuwHxHF/UhOC+9ISsLzaTCVnGAOMTjBPiyMsU5HmOa9oQQlLXkn4k6Xnk+UxshYikb/wqPRYukI6emNjaIHq2UCwRJ196s6ScI4UidoSmRSKN3x0/Pn/ProoHVyxZcrCitNQhfSmBPCGQ/gnIE2ULXc2jX1ScWbpwfunhw4dnlITDx3pj3Ymwxb4jk6ZFTFFxAjjGxrdw21tazU4Wz6DBJRIponA4LE6dzA6EyKJIRJyGT4Sdn8xxcs0nXxyBScs86MqE6smUBjF5iEvBdJqlvCcO1Jc50aL0nzC1ybIsgkMgeaE+HHdzays1NjYRvqGP5/5oCzvXRKJP+nPo9mm3dbQ0NGzfsO6ze+fPmrmy7ujR3lOnKnqWvbto9cplS+9ra2osi9qhumRfr8PSrsVsvpAkUTl6TxD+5WzllSoTZ3FGnugo87Xo5orTdMgsNiQvrbcvLs4n6IAyzDaRxUZvhMxMQciMfJKXR3BkKXH+rpsy9SWTUB/Pjh1pOynOEHYLPsMdu3F8oQ/jUSw7WVwj2yJmTv/1P5YW0G8obB6XoGyrPI9OiQOy7BC5ni8LLodc35O+PSnc/5Y66Bf6e5S2Y1AoRaWq0RH5lowHsW36RT20gnzX9YWNFEaGtBkSB45fp8M9Ajs7OjpkzBrp4sWLRLZF0D8i948l7UVti2LdXUnL904d3Ld34fr1a3/2n//Tf9wor96yZcvOH9qz+/m9O7Y+IYp/E4mG+qArM5s2wAdpcDlz7pz5NjwWE5ZtizVk9GZp37ZCRmf0a8nClNk21wS1YeKLMbADoUSJyDLXkU4zIyknuVIX5fCl0UQqacYZdlpiBx4ZJM2YuuafquAUAfdqbzwubYkuTOY+wf1UEi2KNTc3VOzeuuPxr89892rZHxZdkU71rQTyioCVV9pOAWUPHDjQ/MaeXbNmz539s7q62gW+79XIxEph2WrfLs/2iqMRisgklpTdBSblZhwbtrZTR1cPxZOymcBEiW/AyyyYSDnEkrZCYbLDcuQtwhInyfMtmUDNJIuJ0pLJ1pJJzjLlcR31WNqxRFLiHNA2xJV2ZTMjO/Be4xBam5upR55998pRqyXjc8cdd8iz5CR1y3NwOcJMRaPRC998c/TR/XsO3btk4ZwzUqTfy0iMyPvjypVflr7x+gOrli+/x0v0bbytKNoTEQd0R0kxsWiUiPeSLTtBLGpqa6vpzLmzZuFANvT1Cb/DHykqplAkSmyHyGfJFx3JskkyCI5TTpTF6fvk+nSNoDzKgk+0uETaK6FQOEq+OJCkGNod65OFgy9OOk5XqmtEqoxzgFPBM1hmlvGw5BA6Tizbz2gkRCEZq2klRfgToeSLQ5EkOfI8ur21hWrkGB7S2dFuFmDRaJTC0Yggt4nFJmKWvolggqg7fAhHBCEyTlvUFFIsYhFs8VnassAiHXpiS0oK4R6pq2+kSjk1aGySHWosRkXSvyv3kpSmhDwuuL24iLxUsunsye/enzNrzo83lK96cusf/1hTWlrqSXfmvWLFilixHSlbVV5+d+X58/NSfb3NLKs7T2wMM8nGOUWJZB8Vl0Spua2ZKqsrqbqu1jyTZzltcqVMkl3ikE1JGZyUiCOrFIyPz2kbMJYYE5JxRB4EcQiuQSypj3EAt5CcKATppCy+Ul6KcGLR0dEmjwLqCX+Lvb29ldxUwvwsSbNE0q/npvxpRdHzRw5/NXP+W/N+9vqMFz8tX7y4xxiqH0ogzwjIT0+eaTwV1JUj+M937Pju3Vmrp6/59JOf98Riq0uKo/WJvriLCbNEJq+UHEOT5xO+ldvS1k74q1b1Mlm3ym45Hk+SSz6xHaaEHC/HHZccOR72xEv4lsymdohInAdbFvkixBa5zCSXKSVuwZGj66Q4IhxDYtJltsmRSbKnp5fwzWfsmJvEkeNLUJ6078vOqEScKhxXjzgqi7yuacXRb+trql/85ONV/9jT0rRi4cJZdSMNXeOJE7GPP3hv51uvzbhv64YND3W2dWxOxHubfcd1IqJrKBRKOz9x8vhyHZ5/1tTUEP5ATXVtvTy/bSMcy3tkEYvDYCmf8n2x3SHXEgcjtnlipy92+GI3ibMjLGxCNuH4OwFbxZukRByRpKSxu4PDDuytl6P13t5ewhf6wBzPXUtKSuRoOkpeIuXeefvtTbZHW04cPfLIiW+OPZfo7dsq7rTJd1OebUtM9IH9wkZYJqlNHp1UX7lMsAMnLmjblzIoC/EkjrFzZcvqyC4+JYLQYVmYUFpMczERUQAAEABJREFUXMbOF3FFTCiD6BETymLniW+pw4YrNdVm7LrEaZt+5B6KRCIUER6WjG1JJOr++R23N9bX1ny2dMn7d5d99Idnv9i/608j/ZoWHPzyRYvO7T1+/NUv9h36fkt9w6qIHaoi13HFWnM6FJMFg2VZFJK+8IikUnQ4ff4cIWyR+6Qj1m3uQ7JkOSGMfBkf3IcYR4eIZA1CvuQH14N8V2xMCZ+U6xPLdd+W+1fSiVSK8MXKhoYGqq2tNT8TuFeSyaTRB/9UJSynEK6bInHmTihknXcS8Q/ff/+9H370zqI3D+/fXy3deiJT6M03aevN1rvJ7rTaqAjIdDeqclpoEghUVlbE/7h8ecWiGS8/sPrTst/4TnJbUSQcT8mOSnYVhKNR4+zkmS3JhB7r7aPGpmbC8fTlyivybLeGunti1BPrpZgcM/bJxJaQyTvpuuTIBIhJ07Ns8uRn0/E9Sorjx7fLe2Wx0NsXN/XQDqQWX/iSXXhKdjXYTXl+Gkix7PAiIUt2oHF5JGC7f3b7bZcuXTg3fdvmrf9v99aNc5a+8/ZZTP7p0tf//Prrr1txJP/WjDn37Nq69YHe7q5NkbDdA6cju0aKdXWSLauGoqKImGuJW7OMzp1d3VRbV08XL102gl1op5xYJJKO7BSvSlJOLBLJFCGEwBYW+2FPtzhr/I48fhULtsKBQ1Li3CGuMIP2tm2LDuKymGX37eEPjnTIacT6Lw9+ft/GVWU/72trWXjiy4OzNm9a/6tvjh75/6lkfJ/NfixkMUkodRwKWUQSEcfuENrt6ukxpw4XL4v+lReprrGO4HgdWVglZMGUFIEOaUnJrjwtSRlLV8Yx6bjmWL+zu8f83niNsMA9cOlyJbW1dxDuC0fGjeQe8WSBgMUIFisxcbhOvE8WJZG2ZG9szblTpx9csHjBvRvXle85e/aseFvR8wbv8nnz+ubMKN2/Y8O6X+/Zuv0XrU2NnzJ57b7ojG+LkzzfT8mu2PEdihbLAqIoLGOWoJaOFqpraqTzYjN0xZildY1TSuzxyRJ1bSK2ZZxZ/C+Z/GTKpT65P2O9cWNXXUMjXawUbpcvEcYLX8qLy0mBgx269C1PrDBG5HsOxXq6CNxlcdzU09Xx8dHDR3750qzXHy1ftuz4SAsXKviXf5MW3my9m+xOq42KgDWqUlpoMgn4x48f71ixePG6p1+afveaVWX3NNfXvmN5zkk5xu1m8aw+ebInI7LE2YXE4SDELsyRnQieaTe3NFFDYyPVNdRRjexcaupqqFp2uNhp19RUUXVtDdXIkSgcWXqnX091siOFc3PEaXhylOyJI4DgVMCWPsJ2yOyak/E+N2JbzSXhcMWxI0dmvDlrxj88/fBvFi2a98bJ8vLy5E2A844erWh5f/68dW/PeOkn69Z8+oMLZ8+99ed33XX4rj+7s5N833dkJwbxRS/smBPiPLAgwcIkJTzgDKH75aorctxbNUiwUw2ksqqaKisrzW4OJw5d8ugAzgA6R2QHj78UxjJvRcNiq9jrykmE56RcwdzS1xf7ora6et678xd+r3z5sn977nePfrZkyZIWLF7EbnfJW2/Vv/jk4+vXrvjoe18cOvTTjvbWj8Ih67Tnun0uvqwojeBb5I7E0V9YmIIrGMPRYteOXaYZF4yZjFeVyJXqajn2rybEayR9Xp6BXxKHhjjqdMqiKykLN7AI2sN9kEgkKN7XaxYRts1uNBptLo6GK5K9va8fP/z1P2xau/qXv7n/V+uPySMf6DNWKSsra3/z9Vf37Nmy+f7dWzf/c21NzTLfcU5YFvWKHjJqPsUTvfLoopcSwlEyyBeH68j9FU851CO6tcvCrLGlmWrqGwhjd1EWpVdkV19VW0dVuEclH0f3uF7bUE+QuNiKNpKy8MKpCu4HLCDA0WLG7ULxWK8XtuzOu+6446uu9ra39+3e9X/2bdrw4Ixnnjh49tChUS1cBvHQhBLIUQLq0HN0YIZRy8fk897Ct1eL/O7TspU/q7586XfiHL4QR9Mtk6dsPhyyZMcmvoIsJmLZdYdDtuwIGQnyZJfiimDCS4kjgSSxm5FJ0ZOJ1ZddqMyBZMsRZkTqwZE5MvmGJS0nAyTOjBJ9MUrJCYEliwibub6zo61sx+bND73+8qs/W/buwpn7d+48T0SuyLjfJ06ciH383nvb3l750bNrV3760zNnvnvMSyS231Zc1FEkTjYqTta2bbLIJ18mdOhHEmJPFxYAstAQHl6GELE4fBYugUgx2TkTgRPsRD7acWVXmUz0EcuiwUnGhSHR7cVF9d2dHWUVu3Y/+P6CRT997feLnvtkxYd7xYEnafiXD0f38rNPrt+8dvXDFfv2/qSxtvaFokjkgJw8JHtiXdK3JeJLP57Y4Zm4HWI5Ig5RsTxbJ9mlY+ECIRk710vJbjVFKVnUQKJh2fWGwhQK2WSJMWABG0jqecICgnRIxlAcuC9jWtnT3fnBd98eu3fLxnU/+3T5sheffeKJw7IY6SXZv4qM671ixYrYvNmzD+zeuOG3a9auufvY0SPPxmPd++66/bZYcThEluhVLEfwGL+U7LSZmTBeFsZErmH8ICxxiByJEwQnNBDkoSzqhNiieG8vsYwpxtvk2UxFcmoEkbQvfXWFbWvblSsXH97y2bqf7t302TOzSku/XrZsWZz0pQQKjIBVYPZMBXP8L774om/JkkXfPHj/L97f+sdP/v7r/Yf+vr626gU/lVptW9535DnNvptIyfNb33Pi5LhJ8tyESIp8Lym7eXEclojtmy8IhWUShITkbggEjgESDTOx70pz8Zjlug3RkH1EJuiyAxX7npo/Z87/2Fi+6hdvzZm1Zv/+HdWy283KJFlZURF/5+1ZZx+/774PV37w3j/v2rXjby5fvPhYW0vL0ojNh0T9WnFaMTHQ98UReOLIXOzaZTFC4igCwTUIHHYgLA6bxFGKgeTLiQZLXTEZjq9XHHjjtJLIYXGAHx2s2PX43Dfn/O2cl6ff+9bM0jV7tq6/WCmPROSG80Vu9PZXrlzZNbu09Jv7f/nTN0ufeep/lq9e/U81VVUvC9wy9vzDTFQn0iUnAr4lz4ZJdCI5FSmKRORRRoQi4rTDdogiImHLNuMWsmTAxF6GjVI+bYsrTXokT6WTIYtaZDN+UYrt7elqX3T86JFfbVu74S8vHD/y0HOPPvTZ4rlzq8vLb+oU5Ub2krTb8+GCBaeef/TR+R8umP8PS999/x8vnj3/SsSyyt1k6pt4T6wuYnHMBn/fk6VEWmRNQpCQLEDCIZsQQmzJhLAs3qi/PMYS96gFaJ7nu44Tsz2ql/XQ8Xh3d7mcQE3fvm3nf1+xZeP3f33PPcvnz559Pg8c+Q3ZagElMBIBmRFGuqT5+UAAO6tZM57/+tuvDry+eU3ZA/v2bP/BxbNnft7d0VYqO+nNtkWnxEG1iyRZPJ2bTDgQ30m5sltyCSH7LpPnhkOWI5Osg7K3FYdj0RDV+p7zdVtr89JzZ049tmvntntffnnGD+e+WvrQ5dPH527fuPakTNzuRHKS/pJvvPDCyZbqK/PX7dz6yJpP19z91aEDd9fVXHkoEev5SPT9UhxZZdjmHhFZyTiOPLt2LPKcZLzHtWR5EwnJ0iSVcGSx4pCfSkmdZMjmLrG/ynNTX3V1tn107szJJ3bu2nFv6VPP3/3u3Dcfrjp/dv7ebZ+dxR8CGq+9WJC9v/Dt7auXL3vlpaefeHDx3Ld/tHnD+h+f/PbYg93tre+Q534lNjRFbTsu8ZQ4Z4yJscMWZSVtxkt0d/1U3GE3mZJxi5dEwk2y8z2ZjPduvHzhzPSDh/bfvfyDP3x//ozZ/7Z2+R+eevHpx5ctXjy7AY8FxmvDWOrjD7N8/MG7FRtWrnj55aefuP/dtxb+8NDeXXef/dPJR3o62j+1yD0jY9FNXjJVUhRyfDchB0lxl/2Ua7PrQSTuWTJ2RRHLgUheSiQRsa0aJxE/2t3Z/uHZMycf3bB5/Y8WvjX3h2s/Xv/AsYP7Z82bUXoEz/nHoq+WVQL5SkAder6O3BC9xbGnZPfRMWfmzDNP/PahrT//0Q9e27Vx/f99e+aM//reogV/vab80x8erNjzmxPHv31SnPOz586ceV5kenND3fTqixemd7U1v9xYV/3CpQvnnjxx7Jt7Du7d/TebN2/8L2tXbPu7e374/fuefPjX7y94843NX+/fcfno0aOd4lgn1JEPMZdKS0u98sWLez5cPLd65gvPHXj4V/cs/8n3/umXzz0857+9/sYrf7FsyZK/Xlu+6qcVu3Y+cujA3qePf/P1c5XnLzxXeenCc2dOnXimsb722e9O/OnJi2fOPPinY0d/sG/3zr/atHrVX25bv/bvf/wv//TLhx+47x3ZUW/6/PM9F7/66quubNhbUVHhoO2NG8svL5g3+8CTj/y27Mff+5dfv/jME3+3Ze3Gv9q3b+//On/65K/Onj796MXzF5+orbzyTENd3fNN9XWlTXX1L9dXV7/4xf4DT+zYsvmB5UuX/vOMl2b85fTfPfzXP16+9F8fe/CBWW+WTt+1vrzseEXFloaNGzf2CkNfZNLesBffB8HpxqI5c/ZPf/LRP/zix9+7e96rL/7V9m3b/+6rzw/94tjRw49fPH/2+ca6ulc6WppmNtbVvtHUWD+7s7V1jpwMvX7m1HfPfHPky9/t2Lr5/jWfrvzfb7z+yl9Mf+3Vv/3FD77/qxcee+yDD+bNO7Bp7drzZWXvtONnYtKMzdWOVa+CJqAOvYCHFxPa7t27WzevW3d6+XvvbZg7c+Z7rzz39NvPPfbY3Kf2V8z+3d7ds7ZvWDdr79bNs/Zv2zaz6vTp2fu2bVnw7GMPryr9/e+PL5w1q27FijdjgmhSHYH0P9q3f+HC1sRXu3c3frb2kxOfLH1/9eJ5sxbPnfHKvFd//+ybzz/12Ownfv3g7GceeWTOwZ3b5yU72+Y//ttfL53+9NOfvfHKKycXLlxYt1gWCdLZpNp79OjR3gULZl98dfqzFY/95sEVjz103+Lf3v/z+Y3Vl+bt3rT+zbJL518//vn+mScPfzlr3huvzn9v/rwP16z8aMfB3ZsvSd1OKi+f1MWW8BvL2z948GD7wlkzjsx6+cWyeHvrop7mxlm7Nq1/dcPqVaVV506/8MXundM/K//k+V2bPnvp8QcfmPPCk0/Of/etucs++fDDPV/s2VOL75aMpUMtqwQKlYA69EId2ZHtgrPyzKQvE395v8D5y67XQVqqoowEBfOGPYNkjdgt9sqDWzyUzXk7je7QF+NTUVrqYLwgojmuSVAQbx82QmAnROLGVokn++0tCEML1Ag1a5IJjMKh8ySrqN0rgVtPoJC84K2noy0qASWQjwRG4dB16svHgVWdlYASUAIFRUCNuSGBUTj0G7ahBZSAElACSiAHCOh56kiDMDXIqEMfafw1XwkoASWQZwQK6jz1lvrgGydHKGkAAAoJSURBVJLJs5EeXl116MNz0VwloASUgBKYTAJTwwffUsLq0G8pTm1MCSgBJaAExkzglu7Gx9x79itMUA/q0CcItHajBJSAElACIxDQ3fgIYMaWrQ59bLy0tBJQAkpACSiBXCIwoEtuOPTxHbeMr/YACo0oASWgBJSAEshfArnh0Md33DK+2vk7dqq5ElACSkAJKIEBAllx6AOta0QJKAEloATyjUA2Tz2z2Xa+cb7l+qpDv+VItUEloASUQF4TkFPPrPldaTuv2WRf+XGgz0OHnn2e2oMSUAJKYGoTUL87aeM/DvTq0Cdt1LRjJaAElIASUAK3joA69CEsNakElIASUAJKIB8JqEPPx1FTnZWAElACSkAJDCGgDn0IkOwmtXUloASUgBJQAtkhoA49O1y1VSWgBJSAEhgvgXF843u8Xedj/ann0Av4BsnHG7DAdNa7q8AGVM2ZZALj+Mb3JGs+Kd1PPYeuN8ik3Gij6bQAvKHeXaMZaC2jBJRAVghMPYeeFYxTodHs26jeMPuMtQcloAQKl4A69MIdW7VMCSgBJaAEphABdehTaLBz2VTVTQkoASUwyQTy/qlfYTn0vB+OSb6dtXsloASUwNQlkPdP/QrLoef9cEzdn6TsWq6tKwEloAQKn0BhOfTCHy+1UAkoASWgBJTAsARyx6EX1HF5QRkz7I2jmVcJaEwJKIE8I1CgU3TuOPSCOi4vKGPy7CdV1VUCSkAJ3IBAgU7RuePQb8BfLyuBqUlArVYCSkAJjI6AOvTRcdJSSkAJKAEloARymoA69EkdngJ9kDOpTLXzsRDQskpACRQOAXXokzqWBfogZ1KZaudKQAkogalJQB361Bx3tVoJTAAB7WKiCeiZ30QTz63+1KHn1nioNkpACSiBmyagZ343ja4gKqpDL4hhVCOUwNQjoBYrASUwmIA69ME8NKUElIASGAsBPeUeCy0tm1UC6tCzilcbVwJKID8JjFrrMZxyq++/LlXFc108o7moDn00lLSMElACSmDcBMbg+8fdVx42oHjGPWjq0MeNUBsoYAK6ZyjgwR2FaVkb/1H0rUWUwJgJqEMfMzKtMIUI6J5hCg32MKbq+A8DRbNyl4A69NwdG9VMCSgBJXATBLTKVCVwqx16ThxR5YQSU/WOUruVgBJQAkpgUgjcaoeeE0dUOaHEpAyndqoElIASyC4BbT13Cdxqh567lqpmSkAJKAEloAQKmIA69AIeXDVNCSgBJZBfBFTb8RBQhz4eelpXCSgBJaAElECOEFCHniMDoWooASWgBJTAqAnc1HefR916nhZUh56nA6dqKwEloASmMAH97vMwg68OfRgomqUElIASUAJKYGwEJr+0OvTJHwPVQAkoASWgBJTAuAmoQx83Qm1ACSiBqURAH95OpdHOHVtHo4k69NFQ0jJKIO8IqNvJ1pDpw9tskdV2x0tAHfp4CWp9JZCTBNTt5OSwqFJKIIsEbt6hZ1EpbVoJKAEloASUgBIYGwF16GPjpaWVgBJQAkpACeQkgZxz6P1P/nISliqlBJSAElACSiBXCeScQ9cnf7l6q6heSkAJKAElkMsEcs6hTwgs7UQJKAEloASyTUAPXLNNeEj76tCHANGkElACSkAJ3BICeuB6SzCOvhF16KNnNdqSWk4JKAElMDUJTOyefGJ7y4MRVYeeB4OkKioBJaAE8oLAxO7JJ7a3PBgAdeh5MEiDVNSEEriGgG5UrkGiGUpgChJQhz4FB11NLjQCulEptBFVe5TAzRBQh34z1Aq3jlqmBJRA1gjoSUrW0GrDhsC4HbreooajfuQOAb0lc2csVJNBBPQkZRAOTdxyAuN26OO7RXXuveUjmssNToxu47slJ0ZH7aUACOjsVQCDWGAmjNuhj4+Hzr3j46e1lYASmCwCOntNFnntdyQCk+zQR1JL85XAmAloBSWgBJTAlCagDn1KD78arwSUgBJQAoVCQB16oYyk2pFdAtq6EtCH5noP5DgBdeg5PkCqnhJQAjlCQB+a58hAqBojEVCHPhIZzVcCE0dAe1ICSkAJjJuAOvRxI9QGlIASUAJKQAlMPgF16JM/BqqBEsguAW1dCSiBKUFAHfqUGGY1UgkoASWgBAqdgDr0Qh9htU8JZJeAtq4ElECOEFCHniMDoWooASWgBJSAEhgPAXXo46GndZWAEsguAW1dCSiBURNQhz5qVLlQUP+yRS6MguqgBJSAEshFAurQc3FURtRJ/7LFiGj0ghIYOwGtoQQKioA69IIaTjVGCSgBJaAEpioBdeiTMvJ6dD4p2LVTJTCRBLQvJTDBBNShTzDwdHd6dJ7moJ9KQAkoASVwqwioQ79VJLUdJaAElMDEEdCe8pJAdk9n1aHn5U2hSisBJaAElED+Ecju6aw69Py7I/JT4+wuTPOTybi1VqjjRqgNDE9Ac/OSgDr0vBy2PFQ6uwvTPARyK1RWqLeCorahBAqFgDr0QhlJtUMJTAoBPSWYFOz53alqnyUC6tCzBHbim9WJdeKZa49Eekqgd0H+Eii0WVMdev7ei0M014l1CBBNKgElMBUJjMHmQps11aGPYfC1qBJQAkpACSiBXCWgDj1XR0b1UgJKQAkogVwjkNP6qEPP6eFR5ZSAElACSkAJjI6AOvTRcdJSSkAJKAEloASyS2CcratDHydAra4ElIASUAJKIBcIqEPPhVFQHZSAElACSkAJjJPADRz6OFvX6kpACSgBJaAElMCEEFCHPiGYtRMloASUgBJQAtklMKkOPbumaetKQAkoASWgBKYOAXXoU2es1VIloASUgBLIQwKj/RO1BezQ83DUVGUloASUgBJQAkMIjPZP1KpDHwJOk0pACSgBJaAEcoLAaLfm/cqqQ+8HMdZAyysBJaAElIASyCqB0W7N+5VQh94PQgMloASUgBJQAvlMQB16To6eKlVABMZ4aFZAlqspSiC/CeTdz6469Py+4VT73CcwxkOz3DeocDXMu/m7cIciNyzLu59ddei5ceNMqBbamRIYmcBUdmp5N3+PPIx6ZUoSUIc+JYddjZ5qBEbvptWpTbV7Q+0tHALq0Ec1lqOZDkdTZlSd5XkhVT8XCaibzsVRUZ2UwK0loA59VDxHMx2OpsyoOtNCSkAJKAEloATGTEAd+piRaYXJJKB9KwEloASUwPAE1KEPz0VzlYASUAJKQAnkFQF16Hk1XKpsdglo60pACWSPgH7P6NaxHZ6lOvRbR1hbUgJKQAkogREJ6PeMRkQz5gvDs1SHPmaQWkEJ3BwBraUElIASyCYBdejZpKttKwEloASUgBKYIALq0CcItHajBLJLQFtXAkpgqhNQhz7V7wC1XwkoASWQPQLDf3sre/1N6ZbVoU/p4VfjlcDoCGgpJXCTBIb/9tZNNqbVrk9AHfr1+ehVJaAElIASUAJ5QeDfAQAA//94t7RwAAAABklEQVQDAI66P1ap+w9dAAAAAElFTkSuQmCC",KE=({className:e})=>{const t=e?`block select-none object-contain ${e}`:"block select-none object-contain";return f.jsx("img",{src:GE,className:t,alt:"","aria-hidden":"true",draggable:!1,decoding:"async"})},rf=({onClick:e,isOpen:t=!1,zIndex:n=100001,assistantName:r,bubbleIconUrl:i,bubbleIconSize:a,showChristmasHat:o,callout:s})=>{const[d,p]=I.useState(!1),m=(s==null?void 0:s.text)||`Sie brauchen Hilfe? Fragen Sie ${r}!`,h=typeof i=="string"?i.trim():"",g=typeof a!="number"||!Number.isFinite(a)?32:Math.max(16,Math.min(Math.round(a),52));I.useEffect(()=>{if((s==null?void 0:s.enabled)===!1)return;const y=setTimeout(()=>p(!0),(s==null?void 0:s.delayMs)??2e3);return()=>clearTimeout(y)},[s==null?void 0:s.delayMs,s==null?void 0:s.enabled]);const b=y=>{y.stopPropagation(),p(!1)};return t?null:f.jsxs("div",{className:"fixed bottom-[30px] right-[30px] max-md:bottom-[20px] max-md:right-[20px]",style:{zIndex:n},children:[d&&(s==null?void 0:s.enabled)!==!1&&(m||(s==null?void 0:s.emoji))&&f.jsx("div",{className:"absolute bottom-[50%] right-[calc(100%+15px)] translate-y-[50%] animate-fade-in max-md:hidden",children:f.jsxs("div",{className:"relative bg-white rounded-[20px] px-5 py-3 shadow-[0_10px_40px_rgba(0,0,0,0.15)] flex items-center gap-2 whitespace-nowrap",children:[f.jsx("span",{className:"text-2xl",children:(s==null?void 0:s.emoji)||"👋"}),f.jsx("span",{className:"text-gray-800 font-semibold text-sm",children:m}),f.jsx("button",{onClick:b,"aria-label":"Hinweis schließen",className:"ml-2 p-1 hover:bg-gray-100 rounded-full transition-colors focus:outline-none focus:ring-2 focus:ring-gray-400",children:f.jsx(un,{className:"w-4 h-4 text-gray-500","aria-hidden":"true"})}),f.jsx("div",{className:"absolute right-[-8px] top-[50%] translate-y-[-50%] w-0 h-0 border-t-[8px] border-t-transparent border-b-[8px] border-b-transparent border-l-[8px] border-l-white"})]})}),f.jsxs(XE,{children:[f.jsx(ZE,{asChild:!0,children:f.jsxs("button",{onClick:e,"aria-label":`Chat mit ${r} öffnen`,"aria-haspopup":"dialog",className:"chat-launcher group relative overflow-visible w-[65px] h-[65px] rounded-full bg-primary flex items-center justify-center cursor-pointer shadow-[0_12px_40px_hsl(var(--glow-primary))] border border-white/20 transition-all duration-400 hover:scale-110 hover:-translate-y-1 hover:rotate-[10deg] hover:shadow-[0_20px_60px_hsl(var(--glow-primary))] animate-chat-pulse hover:animate-chat-float transform-gpu max-md:w-[60px] max-md:h-[60px] focus:outline-none focus:ring-4 focus:ring-primary focus:ring-offset-4",children:[o&&f.jsx("div",{className:"pointer-events-none absolute -top-[58px] -right-[35px] z-10 h-[96px] w-[96px] rotate-[15deg] scale-x-[1.15] transition-transform duration-300 group-hover:rotate-[22deg]",children:f.jsx(KE,{className:"h-full w-full drop-shadow-[0_4px_12px_rgba(0,0,0,0.3)]"})}),f.jsx("div",{className:"absolute inset-[-3px] rounded-full p-[3px] animate-rotate-border pointer-events-none","aria-hidden":"true",style:{background:"white",WebkitMask:"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)",mask:"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)",WebkitMaskComposite:"xor",maskComposite:"exclude"}}),h?f.jsx("img",{src:h,alt:"","aria-hidden":"true",className:"object-contain drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)] transition-transform group-hover:scale-110 group-hover:-rotate-[10deg]",style:{width:g,height:g}}):f.jsx(rm,{className:"text-white drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)] transition-transform group-hover:scale-110 group-hover:-rotate-[10deg]",size:g,"aria-hidden":"true"})]})}),f.jsx(nf,{children:r})]})]})};var Ia="ToastProvider",[Da,QE,YE]=Pu("Toast"),[of]=pn("Toast",[YE]),[_E,Ti]=of(Ia),af=e=>{const{__scopeToast:t,label:n="Notification",duration:r=5e3,swipeDirection:i="right",swipeThreshold:a=50,children:o}=e,[s,l]=v.useState(null),[u,c]=v.useState(0),d=v.useRef(!1),p=v.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${Ia}\`. Expected non-empty \`string\`.`),f.jsx(Da.Provider,{scope:t,children:f.jsx(_E,{scope:t,label:n,duration:r,swipeDirection:i,swipeThreshold:a,toastCount:u,viewport:s,onViewportChange:l,onToastAdd:v.useCallback(()=>c(m=>m+1),[]),onToastRemove:v.useCallback(()=>c(m=>m-1),[]),isFocusedToastEscapeKeyDownRef:d,isClosePausedRef:p,children:o})})};af.displayName=Ia;var sf="ToastViewport",$E=["F8"],Vo="toast.viewportPause",Jo="toast.viewportResume",lf=v.forwardRef((e,t)=>{const{__scopeToast:n,hotkey:r=$E,label:i="Notifications ({hotkey})",...a}=e,o=Ti(sf,n),s=QE(n),l=v.useRef(null),u=v.useRef(null),c=v.useRef(null),d=v.useRef(null),p=ot(t,d,o.onViewportChange),m=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),h=o.toastCount>0;v.useEffect(()=>{const b=y=>{var S;r.length!==0&&r.every(P=>y[P]||y.code===P)&&((S=d.current)==null||S.focus())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[r]),v.useEffect(()=>{const b=l.current,y=d.current;if(h&&b&&y){const x=()=>{if(!o.isClosePausedRef.current){const C=new CustomEvent(Vo);y.dispatchEvent(C),o.isClosePausedRef.current=!0}},S=()=>{if(o.isClosePausedRef.current){const C=new CustomEvent(Jo);y.dispatchEvent(C),o.isClosePausedRef.current=!1}},P=C=>{!b.contains(C.relatedTarget)&&S()},j=()=>{b.contains(document.activeElement)||S()};return b.addEventListener("focusin",x),b.addEventListener("focusout",P),b.addEventListener("pointermove",x),b.addEventListener("pointerleave",j),window.addEventListener("blur",x),window.addEventListener("focus",S),()=>{b.removeEventListener("focusin",x),b.removeEventListener("focusout",P),b.removeEventListener("pointermove",x),b.removeEventListener("pointerleave",j),window.removeEventListener("blur",x),window.removeEventListener("focus",S)}}},[h,o.isClosePausedRef]);const g=v.useCallback(({tabbingDirection:b})=>{const x=s().map(S=>{const P=S.ref.current,j=[P,...fP(P)];return b==="forwards"?j:j.reverse()});return(b==="forwards"?x.reverse():x).flat()},[s]);return v.useEffect(()=>{const b=d.current;if(b){const y=x=>{var j,C,E;const S=x.altKey||x.ctrlKey||x.metaKey;if(x.key==="Tab"&&!S){const R=document.activeElement,M=x.shiftKey;if(x.target===b&&M){(j=u.current)==null||j.focus();return}const T=g({tabbingDirection:M?"backwards":"forwards"}),V=T.findIndex(O=>O===R);fo(T.slice(V+1))?x.preventDefault():M?(C=u.current)==null||C.focus():(E=c.current)==null||E.focus()}};return b.addEventListener("keydown",y),()=>b.removeEventListener("keydown",y)}},[s,g]),f.jsxs(YA,{ref:l,role:"region","aria-label":i.replace("{hotkey}",m),tabIndex:-1,style:{pointerEvents:h?void 0:"none"},children:[h&&f.jsx(Ho,{ref:u,onFocusFromOutsideViewport:()=>{const b=g({tabbingDirection:"forwards"});fo(b)}}),f.jsx(Da.Slot,{scope:n,children:f.jsx(Ke.ol,{tabIndex:-1,...a,ref:p})}),h&&f.jsx(Ho,{ref:c,onFocusFromOutsideViewport:()=>{const b=g({tabbingDirection:"backwards"});fo(b)}})]})});lf.displayName=sf;var uf="ToastFocusProxy",Ho=v.forwardRef((e,t)=>{const{__scopeToast:n,onFocusFromOutsideViewport:r,...i}=e,a=Ti(uf,n);return f.jsx(Ei,{tabIndex:0,...i,ref:t,style:{position:"fixed"},onFocus:o=>{var u;const s=o.relatedTarget;!((u=a.viewport)!=null&&u.contains(s))&&r()}})});Ho.displayName=uf;var Cr="Toast",eP="toast.swipeStart",tP="toast.swipeMove",nP="toast.swipeCancel",rP="toast.swipeEnd",cf=v.forwardRef((e,t)=>{const{forceMount:n,open:r,defaultOpen:i,onOpenChange:a,...o}=e,[s,l]=yr({prop:r,defaultProp:i??!0,onChange:a,caller:Cr});return f.jsx(fi,{present:n||s,children:f.jsx(aP,{open:s,...o,ref:t,onClose:()=>l(!1),onPause:Gt(e.onPause),onResume:Gt(e.onResume),onSwipeStart:De(e.onSwipeStart,u=>{u.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:De(e.onSwipeMove,u=>{const{x:c,y:d}=u.detail.delta;u.currentTarget.setAttribute("data-swipe","move"),u.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${c}px`),u.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${d}px`)}),onSwipeCancel:De(e.onSwipeCancel,u=>{u.currentTarget.setAttribute("data-swipe","cancel"),u.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),u.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),u.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),u.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:De(e.onSwipeEnd,u=>{const{x:c,y:d}=u.detail.delta;u.currentTarget.setAttribute("data-swipe","end"),u.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),u.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),u.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${c}px`),u.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${d}px`),l(!1)})})})});cf.displayName=Cr;var[iP,oP]=of(Cr,{onClose(){}}),aP=v.forwardRef((e,t)=>{const{__scopeToast:n,type:r="foreground",duration:i,open:a,onClose:o,onEscapeKeyDown:s,onPause:l,onResume:u,onSwipeStart:c,onSwipeMove:d,onSwipeCancel:p,onSwipeEnd:m,...h}=e,g=Ti(Cr,n),[b,y]=v.useState(null),x=ot(t,O=>y(O)),S=v.useRef(null),P=v.useRef(null),j=i||g.duration,C=v.useRef(0),E=v.useRef(j),R=v.useRef(0),{onToastAdd:M,onToastRemove:k}=g,N=Gt(()=>{var F;(b==null?void 0:b.contains(document.activeElement))&&((F=g.viewport)==null||F.focus()),o()}),T=v.useCallback(O=>{!O||O===1/0||(window.clearTimeout(R.current),C.current=new Date().getTime(),R.current=window.setTimeout(N,O))},[N]);v.useEffect(()=>{const O=g.viewport;if(O){const F=()=>{T(E.current),u==null||u()},B=()=>{const Z=new Date().getTime()-C.current;E.current=E.current-Z,window.clearTimeout(R.current),l==null||l()};return O.addEventListener(Vo,B),O.addEventListener(Jo,F),()=>{O.removeEventListener(Vo,B),O.removeEventListener(Jo,F)}}},[g.viewport,j,l,u,T]),v.useEffect(()=>{a&&!g.isClosePausedRef.current&&T(j)},[a,j,g.isClosePausedRef,T]),v.useEffect(()=>(M(),()=>k()),[M,k]);const V=v.useMemo(()=>b?bf(b):null,[b]);return g.viewport?f.jsxs(f.Fragment,{children:[V&&f.jsx(sP,{__scopeToast:n,role:"status","aria-live":r==="foreground"?"assertive":"polite",children:V}),f.jsx(iP,{scope:n,onClose:N,children:Xo.createPortal(f.jsx(Da.ItemSlot,{scope:n,children:f.jsx(QA,{asChild:!0,onEscapeKeyDown:De(s,()=>{g.isFocusedToastEscapeKeyDownRef.current||N(),g.isFocusedToastEscapeKeyDownRef.current=!1}),children:f.jsx(Ke.li,{tabIndex:0,"data-state":a?"open":"closed","data-swipe-direction":g.swipeDirection,...h,ref:x,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:De(e.onKeyDown,O=>{O.key==="Escape"&&(s==null||s(O.nativeEvent),O.nativeEvent.defaultPrevented||(g.isFocusedToastEscapeKeyDownRef.current=!0,N()))}),onPointerDown:De(e.onPointerDown,O=>{O.button===0&&(S.current={x:O.clientX,y:O.clientY})}),onPointerMove:De(e.onPointerMove,O=>{if(!S.current)return;const F=O.clientX-S.current.x,B=O.clientY-S.current.y,Z=!!P.current,X=["left","right"].includes(g.swipeDirection),K=["left","up"].includes(g.swipeDirection)?Math.min:Math.max,w=X?K(0,F):0,se=X?0:K(0,B),Ee=O.pointerType==="touch"?10:2,z={x:w,y:se},Me={originalEvent:O,delta:z};Z?(P.current=z,Vr(tP,d,Me,{discrete:!1})):Gl(z,g.swipeDirection,Ee)?(P.current=z,Vr(eP,c,Me,{discrete:!1}),O.target.setPointerCapture(O.pointerId)):(Math.abs(F)>Ee||Math.abs(B)>Ee)&&(S.current=null)}),onPointerUp:De(e.onPointerUp,O=>{const F=P.current,B=O.target;if(B.hasPointerCapture(O.pointerId)&&B.releasePointerCapture(O.pointerId),P.current=null,S.current=null,F){const Z=O.currentTarget,X={originalEvent:O,delta:F};Gl(F,g.swipeDirection,g.swipeThreshold)?Vr(rP,m,X,{discrete:!0}):Vr(nP,p,X,{discrete:!0}),Z.addEventListener("click",K=>K.preventDefault(),{once:!0})}})})})}),g.viewport)})]}):null}),sP=e=>{const{__scopeToast:t,children:n,...r}=e,i=Ti(Cr,t),[a,o]=v.useState(!1),[s,l]=v.useState(!1);return cP(()=>o(!0)),v.useEffect(()=>{const u=window.setTimeout(()=>l(!0),1e3);return()=>window.clearTimeout(u)},[]),s?null:f.jsx(Zd,{asChild:!0,children:f.jsx(Ei,{...r,children:a&&f.jsxs(f.Fragment,{children:[i.label," ",n]})})})},lP="ToastTitle",df=v.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return f.jsx(Ke.div,{...r,ref:t})});df.displayName=lP;var uP="ToastDescription",ff=v.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return f.jsx(Ke.div,{...r,ref:t})});ff.displayName=uP;var mf="ToastAction",pf=v.forwardRef((e,t)=>{const{altText:n,...r}=e;return n.trim()?f.jsx(gf,{altText:n,asChild:!0,children:f.jsx(Ra,{...r,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${mf}\`. Expected non-empty \`string\`.`),null)});pf.displayName=mf;var hf="ToastClose",Ra=v.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e,i=oP(hf,n);return f.jsx(gf,{asChild:!0,children:f.jsx(Ke.button,{type:"button",...r,ref:t,onClick:De(e.onClick,i.onClose)})})});Ra.displayName=hf;var gf=v.forwardRef((e,t)=>{const{__scopeToast:n,altText:r,...i}=e;return f.jsx(Ke.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":r||void 0,...i,ref:t})});function bf(e){const t=[];return Array.from(e.childNodes).forEach(r=>{if(r.nodeType===r.TEXT_NODE&&r.textContent&&t.push(r.textContent),dP(r)){const i=r.ariaHidden||r.hidden||r.style.display==="none",a=r.dataset.radixToastAnnounceExclude==="";if(!i)if(a){const o=r.dataset.radixToastAnnounceAlt;o&&t.push(o)}else t.push(...bf(r))}}),t}function Vr(e,t,n,{discrete:r}){const i=n.originalEvent.currentTarget,a=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?Eu(i,a):i.dispatchEvent(a)}var Gl=(e,t,n=0)=>{const r=Math.abs(e.x),i=Math.abs(e.y),a=r>i;return t==="left"||t==="right"?a&&r>n:!a&&i>n};function cP(e=()=>{}){const t=Gt(e);Zt(()=>{let n=0,r=0;return n=window.requestAnimationFrame(()=>r=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(n),window.cancelAnimationFrame(r)}},[t])}function dP(e){return e.nodeType===e.ELEMENT_NODE}function fP(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const i=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||i?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function fo(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}var mP=af,yf=lf,vf=cf,xf=df,wf=ff,kf=pf,Sf=Ra;const pP=mP,Cf=v.forwardRef(({className:e,...t},n)=>f.jsx(yf,{ref:n,className:yt("fixed top-0 z-[10000] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));Cf.displayName=yf.displayName;const hP=Zo("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),zf=v.forwardRef(({className:e,variant:t,...n},r)=>f.jsx(vf,{ref:r,className:yt(hP({variant:t}),e),...n}));zf.displayName=vf.displayName;const gP=v.forwardRef(({className:e,...t},n)=>f.jsx(kf,{ref:n,className:yt("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors group-[.destructive]:border-muted/40 hover:bg-secondary group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 group-[.destructive]:focus:ring-destructive disabled:pointer-events-none disabled:opacity-50",e),...t}));gP.displayName=kf.displayName;const Af=v.forwardRef(({className:e,...t},n)=>f.jsx(Sf,{ref:n,className:yt("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity group-hover:opacity-100 group-[.destructive]:text-red-300 hover:text-foreground group-[.destructive]:hover:text-red-50 focus:opacity-100 focus:outline-none focus:ring-2 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:f.jsx(un,{className:"h-4 w-4"})}));Af.displayName=Sf.displayName;const Ef=v.forwardRef(({className:e,...t},n)=>f.jsx(xf,{ref:n,className:yt("text-sm font-semibold",e),...t}));Ef.displayName=xf.displayName;const Pf=v.forwardRef(({className:e,...t},n)=>f.jsx(wf,{ref:n,className:yt("text-sm opacity-90",e),...t}));Pf.displayName=wf.displayName;function bP(){const{toasts:e}=rh();return f.jsxs(pP,{children:[e.map(function({id:t,title:n,description:r,action:i,...a}){return f.jsxs(zf,{...a,children:[f.jsxs("div",{className:"grid gap-1",children:[n&&f.jsx(Ef,{children:n}),r&&f.jsx(Pf,{children:r})]}),i,f.jsx(Af,{})]},t)}),f.jsx(Cf,{})]})}var yP={grad:.9,turn:360,rad:360/(2*Math.PI)},Xt=function(e){return typeof e=="string"?e.length>0:typeof e=="number"},nt=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=Math.pow(10,t)),Math.round(n*e)/n+0},Pt=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=1),e>n?n:e>t?e:t},jf=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},Kl=function(e){return{r:Pt(e.r,0,255),g:Pt(e.g,0,255),b:Pt(e.b,0,255),a:Pt(e.a)}},mo=function(e){return{r:nt(e.r),g:nt(e.g),b:nt(e.b),a:nt(e.a,3)}},vP=/^#([0-9a-f]{3,8})$/i,Jr=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},Nf=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=Math.max(t,n,r),o=a-Math.min(t,n,r),s=o?a===t?(n-r)/o:a===n?2+(r-t)/o:4+(t-n)/o:0;return{h:60*(s<0?s+6:s),s:a?o/a*100:0,v:a/255*100,a:i}},Tf=function(e){var t=e.h,n=e.s,r=e.v,i=e.a;t=t/360*6,n/=100,r/=100;var a=Math.floor(t),o=r*(1-n),s=r*(1-(t-a)*n),l=r*(1-(1-t+a)*n),u=a%6;return{r:255*[r,s,o,o,l,r][u],g:255*[l,r,r,s,o,o][u],b:255*[o,o,l,r,r,s][u],a:i}},Ql=function(e){return{h:jf(e.h),s:Pt(e.s,0,100),l:Pt(e.l,0,100),a:Pt(e.a)}},Yl=function(e){return{h:nt(e.h),s:nt(e.s),l:nt(e.l),a:nt(e.a,3)}},_l=function(e){return Tf((n=(t=e).s,{h:t.h,s:(n*=((r=t.l)<50?r:100-r)/100)>0?2*n/(r+n)*100:0,v:r+n,a:t.a}));var t,n,r},cr=function(e){return{h:(t=Nf(e)).h,s:(i=(200-(n=t.s))*(r=t.v)/100)>0&&i<200?n*r/100/(i<=100?i:200-i)*100:0,l:i/2,a:t.a};var t,n,r,i},xP=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,wP=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,kP=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,SP=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,$l={string:[[function(e){var t=vP.exec(e);return t?(e=t[1]).length<=4?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?nt(parseInt(e[3]+e[3],16)/255,2):1}:e.length===6||e.length===8?{r:parseInt(e.substr(0,2),16),g:parseInt(e.substr(2,2),16),b:parseInt(e.substr(4,2),16),a:e.length===8?nt(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=kP.exec(e)||SP.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:Kl({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(e){var t=xP.exec(e)||wP.exec(e);if(!t)return null;var n,r,i=Ql({h:(n=t[1],r=t[2],r===void 0&&(r="deg"),Number(n)*(yP[r]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return _l(i)},"hsl"]],object:[[function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=i===void 0?1:i;return Xt(t)&&Xt(n)&&Xt(r)?Kl({r:Number(t),g:Number(n),b:Number(r),a:Number(a)}):null},"rgb"],[function(e){var t=e.h,n=e.s,r=e.l,i=e.a,a=i===void 0?1:i;if(!Xt(t)||!Xt(n)||!Xt(r))return null;var o=Ql({h:Number(t),s:Number(n),l:Number(r),a:Number(a)});return _l(o)},"hsl"],[function(e){var t=e.h,n=e.s,r=e.v,i=e.a,a=i===void 0?1:i;if(!Xt(t)||!Xt(n)||!Xt(r))return null;var o=function(s){return{h:jf(s.h),s:Pt(s.s,0,100),v:Pt(s.v,0,100),a:Pt(s.a)}}({h:Number(t),s:Number(n),v:Number(r),a:Number(a)});return Tf(o)},"hsv"]]},eu=function(e,t){for(var n=0;n<t.length;n++){var r=t[n][0](e);if(r)return[r,t[n][1]]}return[null,void 0]},CP=function(e){return typeof e=="string"?eu(e.trim(),$l.string):typeof e=="object"&&e!==null?eu(e,$l.object):[null,void 0]},po=function(e,t){var n=cr(e);return{h:n.h,s:Pt(n.s+100*t,0,100),l:n.l,a:n.a}},ho=function(e){return(299*e.r+587*e.g+114*e.b)/1e3/255},tu=function(e,t){var n=cr(e);return{h:n.h,s:n.s,l:Pt(n.l+100*t,0,100),a:n.a}},nu=function(){function e(t){this.parsed=CP(t)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return e.prototype.isValid=function(){return this.parsed!==null},e.prototype.brightness=function(){return nt(ho(this.rgba),2)},e.prototype.isDark=function(){return ho(this.rgba)<.5},e.prototype.isLight=function(){return ho(this.rgba)>=.5},e.prototype.toHex=function(){return t=mo(this.rgba),n=t.r,r=t.g,i=t.b,o=(a=t.a)<1?Jr(nt(255*a)):"","#"+Jr(n)+Jr(r)+Jr(i)+o;var t,n,r,i,a,o},e.prototype.toRgb=function(){return mo(this.rgba)},e.prototype.toRgbString=function(){return t=mo(this.rgba),n=t.r,r=t.g,i=t.b,(a=t.a)<1?"rgba("+n+", "+r+", "+i+", "+a+")":"rgb("+n+", "+r+", "+i+")";var t,n,r,i,a},e.prototype.toHsl=function(){return Yl(cr(this.rgba))},e.prototype.toHslString=function(){return t=Yl(cr(this.rgba)),n=t.h,r=t.s,i=t.l,(a=t.a)<1?"hsla("+n+", "+r+"%, "+i+"%, "+a+")":"hsl("+n+", "+r+"%, "+i+"%)";var t,n,r,i,a},e.prototype.toHsv=function(){return t=Nf(this.rgba),{h:nt(t.h),s:nt(t.s),v:nt(t.v),a:nt(t.a,3)};var t},e.prototype.invert=function(){return Lt({r:255-(t=this.rgba).r,g:255-t.g,b:255-t.b,a:t.a});var t},e.prototype.saturate=function(t){return t===void 0&&(t=.1),Lt(po(this.rgba,t))},e.prototype.desaturate=function(t){return t===void 0&&(t=.1),Lt(po(this.rgba,-t))},e.prototype.grayscale=function(){return Lt(po(this.rgba,-1))},e.prototype.lighten=function(t){return t===void 0&&(t=.1),Lt(tu(this.rgba,t))},e.prototype.darken=function(t){return t===void 0&&(t=.1),Lt(tu(this.rgba,-t))},e.prototype.rotate=function(t){return t===void 0&&(t=15),this.hue(this.hue()+t)},e.prototype.alpha=function(t){return typeof t=="number"?Lt({r:(n=this.rgba).r,g:n.g,b:n.b,a:t}):nt(this.rgba.a,3);var n},e.prototype.hue=function(t){var n=cr(this.rgba);return typeof t=="number"?Lt({h:t,s:n.s,l:n.l,a:n.a}):nt(n.h)},e.prototype.isEqual=function(t){return this.toHex()===Lt(t).toHex()},e}(),Lt=function(e){return e instanceof nu?e:new nu(e)};const Mf=2147483645,zP=typeof Le.zIndexBase=="number"?Le.zIndexBase:1e5,AP=e=>typeof e!="number"||!Number.isFinite(e)?zP:Math.max(0,Math.min(Math.round(e),Mf)),If=e=>{if(!e||typeof e!="object")return!1;const t=e,n=r=>r&&typeof r=="object"&&!Array.isArray(r);return n(t.light)||n(t.dark)||n(t.common)},EP=e=>{const t=e.trim();if(!t)return;if(/^\d+(\.\d+)?\s+\d+%?\s+\d+%?(\s*\/\s*[\d.]+%?)?$/.test(t))return t;const n=Lt(t);if(n.isValid()){const r=n.toHsl(),i=Math.round(r.h),a=Math.round(r.s),o=Math.round(r.l),s=`${i} ${a}% ${o}%`;if(typeof r.a=="number"&&r.a<1){const l=Math.round(r.a*1e3)/1e3;return`${s} / ${l}`}return s}return t},PP=e=>{const t=e.trim();return t&&(t.startsWith("--")?t.slice(2):t).replace(/_/g,"-").replace(/([A-Z]+)([A-Z][a-z0-9]+)/g,"$1-$2").replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()||void 0},or=e=>{if(!e||typeof e!="object"||Array.isArray(e))return;const t={};for(const[n,r]of Object.entries(e)){if(typeof r!="string")continue;const i=PP(n);if(!i)continue;const a=EP(r);a&&(t[i]=a)}return Object.keys(t).length>0?t:void 0},jP=e=>{if(!e)return;if(!If(e))return or(e)??void 0;const{common:t,light:n,dark:r,...i}=e,a=or(t),o=or(i),s=a||o?{...a??{},...o??{}}:void 0,l=or(n),u=or(r);if(!s&&!l&&!u)return;const c={};return s&&(c.common=s),l&&(c.light=l),u&&(c.dark=u),c},NP=e=>{if(!e)return{};if(!If(e))return{dark:e,light:e};const t=e,n=t.common??{},r={...n,...t.dark??{}},i={...n,...t.light??{}};return{dark:Object.keys(r).length>0?r:void 0,light:Object.keys(i).length>0?i:void 0}},TP=e=>e==="--glow-primary"||e==="--glow-secondary"||e==="--glow-accent",Df=(e,t,n)=>{const r=t.trim();return!TP(e)||/\//.test(r)?r:/^\d+(\.\d+)?\s+\d+%?\s+\d+%?$/.test(r)?`${r} / ${n}`:r},MP=(e,{dark:t,light:n})=>{const r=(l,u)=>{if(!l)return"";const c=[];for(const[d,p]of Object.entries(l)){const m=d.startsWith("--")?d:`--${d}`,h=Df(m,p,u.defaultGlowAlpha);c.push(` ${m}: ${h};`)}return c.join(`
298
+ hsl(var(--accent) / 0.4))`,WebkitMask:"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)",mask:"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)",WebkitMaskComposite:"xor",maskComposite:"exclude"}}),f.jsx(Fh,{theme:de,selectedLanguage:C,languages:a,onlineLabel:(xe==null?void 0:xe.online)||(Se==null?void 0:Se.online)||"",isLangMenuOpen:R,setIsLangMenuOpen:M,repositionLangMenu:Nn,langMenuPortalTarget:me,langMenuPos:Q,langMenuContentRef:Ce,langButtonRef:le,handleLangMenuKeyDown:Di,onSelectLanguage:E,showSettings:O,onToggleSettings:()=>F(!O),isExpanded:k,onToggleExpand:()=>N(!k),showExpandToggle:l==="floating",langMenuPositioning:u?"absolute":"fixed",langMenuZIndex:Li,showCloseButton:!u,onClose:t,logoSrc:n.branding.logoUrl||Le.branding.logoUrl,assistantName:n.branding.assistantName,assistantTagline:n.branding.tagline,presence:Mi}),bn&&fe.some(L=>L.isUser)&&f.jsx(BA,{labels:pe,disabled:Ve||p||b||te.status==="requesting"||fe.some(L=>L.delivery==="pending"),active:te.status==="queued"||te.status==="active",onStarted:()=>{var L;return(L=Re.current)==null?void 0:L.focus()},onConfirm:async()=>{const L=await ft();return L&&(d(""),z(!1),We(null)),L}}),f.jsx(OA,{messages:fe,quickActions:Ri,theme:de,isMobile:T,inputRef:Re,setInput:d,selectedLanguage:C,toolStatus:D,isTyping:Ve,lastBotMessageRef:ye,messagesEndRef:Te,scrollContainerRef:ke,onScroll:ve,showScrollButton:G,onScrollToBottom:it,handleFeedback:st,botAvatarSrc:n.branding.logoUrl||Le.branding.logoUrl,botAvatarAlt:n.branding.assistantName,scrollLabel:Pr,ttsModelId:(Ha=n.tts)==null?void 0:Ha.modelId,ttsVoiceId:(Ua=n.tts)==null?void 0:Ua.voiceId,ttsVoiceSettings:(Xa=n.tts)==null?void 0:Xa.voiceSettings,onStructuredAction:(L,J)=>void ze(L,void 0,void 0,void 0,J),handoverLabels:bn?pe:void 0,quickActionsPauseOnHover:n.quickRepliesPauseOnHover===!0}),f.jsx(Rh,{open:O,onClose:()=>F(!1),translation:gn,theme:de,setTheme:Qe,fontSize:B,onFontSizeChange:Z,highContrast:X,onHighContrastChange:K,onRevokePrivacy:q,links:Pn,poweredBy:n.branding.poweredBy}),(Za=n.humanHandover)!=null&&Za.enabled?f.jsx(FA,{status:te.status,showRequestButton:n.humanHandover.showRequestButton,operator:te.operator,labels:pe,disabled:!W&&!ie||Ve,onRequest:()=>void Ye(),onContinueWithAssistant:jt,onCancel:at}):null,f.jsx(Oh,{input:c,onInputChange:d,onSend:He,onKeyDown:Ge,inputRef:Re,isRecording:p,isTranscribing:b,isTyping:Ve,startRecording:ht,stopRecording:Jt,recordingTime:h,placeholder:Er,transcribingLabel:jr,disclaimer:Ii,poweredByText:xt==null?void 0:xt.text,poweredByUrl:(xt==null?void 0:xt.url)||Pn.poweredByUrl}),f.jsx(_p,{isOpen:Ee,onClose:()=>{z(!1),We(null)},onSubmit:Zn,language:C})]}),{isPrivacy:!1}):La(f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"relative bg-primary p-5 flex justify-between items-center rounded-t-[24px]",children:[f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx("div",{className:"w-[42px] h-[42px] bg-[hsl(var(--chat-avatar-bot))] rounded-full flex items-center justify-center border border-primary-foreground/30",role:"img","aria-label":`${n.branding.assistantName} Logo`,children:f.jsx("img",{src:n.branding.logoUrl||Le.branding.logoUrl,alt:n.branding.assistantName,className:"w-7 h-7 object-contain drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)]"})}),f.jsx("div",{id:"privacy-dialog-title",className:"text-primary-foreground text-lg font-bold",children:n.branding.assistantName})]}),!u&&f.jsx("button",{onClick:t,"aria-label":"Dialog schließen",className:"w-[38px] h-[38px] bg-primary-foreground/15 backdrop-blur-[10px] border border-primary-foreground/20 rounded-full flex items-center justify-center transition-all duration-300 hover:bg-primary-foreground/25 focus:outline-none focus:ring-2 focus:ring-primary-foreground focus:ring-offset-2 focus:ring-offset-primary",children:f.jsx(un,{className:"w-5 h-5 text-primary-foreground","aria-hidden":"true"})})]}),f.jsxs("div",{className:"p-6 space-y-4 bg-[hsl(var(--chat-bg))]",children:[f.jsx("h3",{id:"privacy-dialog-description",className:"text-lg font-bold text-foreground",children:"Datenschutzhinweis"}),f.jsx("p",{className:"text-sm text-foreground/80 leading-relaxed",children:"Mit der Nutzung des KI-Assistenten stimmen Sie der Verarbeitung Ihrer Eingaben gemäß unserer Datenschutzerklärung zu. Ihre Daten werden verschlüsselt übertragen und nur zur Beantwortung Ihrer Anfragen verwendet."}),f.jsx("a",{href:Pn.privacyUrl||"#",target:"_blank",rel:"noopener noreferrer",className:"text-sm text-primary hover:text-primary/80 underline block",children:"Datenschutzerklärung lesen →"}),f.jsx(ut,{onClick:A,className:"w-full bg-primary hover:bg-primary/90 text-primary-foreground font-semibold",children:"Akzeptieren und fortfahren"})]})]}),{isPrivacy:!0})});ka.displayName="ChatInterface";function HA(e,t=globalThis==null?void 0:globalThis.document){const n=Gt(e);v.useEffect(()=>{const r=i=>{i.key==="Escape"&&n(i)};return t.addEventListener("keydown",r,{capture:!0}),()=>t.removeEventListener("keydown",r,{capture:!0})},[n,t])}var UA="DismissableLayer",Lo="dismissableLayer.update",XA="dismissableLayer.pointerDownOutside",ZA="dismissableLayer.focusOutside",Rl,kd=v.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Sa=v.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:o,onDismiss:s,...l}=e,u=v.useContext(kd),[c,d]=v.useState(null),p=(c==null?void 0:c.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,m]=v.useState({}),h=ot(t,E=>d(E)),g=Array.from(u.layers),[b]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),y=g.indexOf(b),x=c?g.indexOf(c):-1,S=u.layersWithOutsidePointerEventsDisabled.size>0,P=x>=y,j=KA(E=>{const R=E.target,M=[...u.branches].some(k=>k.contains(R));!P||M||(i==null||i(E),o==null||o(E),E.defaultPrevented||s==null||s())},p),C=QA(E=>{const R=E.target;[...u.branches].some(k=>k.contains(R))||(a==null||a(E),o==null||o(E),E.defaultPrevented||s==null||s())},p);return HA(E=>{x===u.layers.size-1&&(r==null||r(E),!E.defaultPrevented&&s&&(E.preventDefault(),s()))},p),v.useEffect(()=>{if(c)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Rl=p.body.style.pointerEvents,p.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(c)),u.layers.add(c),Ll(),()=>{n&&u.layersWithOutsidePointerEventsDisabled.size===1&&(p.body.style.pointerEvents=Rl)}},[c,p,n,u]),v.useEffect(()=>()=>{c&&(u.layers.delete(c),u.layersWithOutsidePointerEventsDisabled.delete(c),Ll())},[c,u]),v.useEffect(()=>{const E=()=>m({});return document.addEventListener(Lo,E),()=>document.removeEventListener(Lo,E)},[]),f.jsx(Ke.div,{...l,ref:h,style:{pointerEvents:S?P?"auto":"none":void 0,...e.style},onFocusCapture:De(e.onFocusCapture,C.onFocusCapture),onBlurCapture:De(e.onBlurCapture,C.onBlurCapture),onPointerDownCapture:De(e.onPointerDownCapture,j.onPointerDownCapture)})});Sa.displayName=UA;var GA="DismissableLayerBranch",Sd=v.forwardRef((e,t)=>{const n=v.useContext(kd),r=v.useRef(null),i=ot(t,r);return v.useEffect(()=>{const a=r.current;if(a)return n.branches.add(a),()=>{n.branches.delete(a)}},[n.branches]),f.jsx(Ke.div,{...e,ref:i})});Sd.displayName=GA;function KA(e,t=globalThis==null?void 0:globalThis.document){const n=Gt(e),r=v.useRef(!1),i=v.useRef(()=>{});return v.useEffect(()=>{const a=s=>{if(s.target&&!r.current){let l=function(){Cd(XA,n,u,{discrete:!0})};const u={originalEvent:s};s.pointerType==="touch"?(t.removeEventListener("click",i.current),i.current=l,t.addEventListener("click",i.current,{once:!0})):l()}else t.removeEventListener("click",i.current);r.current=!1},o=window.setTimeout(()=>{t.addEventListener("pointerdown",a)},0);return()=>{window.clearTimeout(o),t.removeEventListener("pointerdown",a),t.removeEventListener("click",i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function QA(e,t=globalThis==null?void 0:globalThis.document){const n=Gt(e),r=v.useRef(!1);return v.useEffect(()=>{const i=a=>{a.target&&!r.current&&Cd(ZA,n,{originalEvent:a},{discrete:!1})};return t.addEventListener("focusin",i),()=>t.removeEventListener("focusin",i)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function Ll(){const e=new CustomEvent(Lo);document.dispatchEvent(e)}function Cd(e,t,n,{discrete:r}){const i=n.originalEvent.target,a=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?Eu(i,a):i.dispatchEvent(a)}var YA=Sa,_A=Sd;const $A=["top","right","bottom","left"],fn=Math.min,kt=Math.max,si=Math.round,qr=Math.floor,Bt=e=>({x:e,y:e}),e2={left:"right",right:"left",bottom:"top",top:"bottom"},t2={start:"end",end:"start"};function Oo(e,t,n){return kt(e,fn(t,n))}function Qt(e,t){return typeof e=="function"?e(t):e}function Yt(e){return e.split("-")[0]}function Hn(e){return e.split("-")[1]}function Ca(e){return e==="x"?"y":"x"}function za(e){return e==="y"?"height":"width"}const n2=new Set(["top","bottom"]);function Ft(e){return n2.has(Yt(e))?"y":"x"}function Aa(e){return Ca(Ft(e))}function r2(e,t,n){n===void 0&&(n=!1);const r=Hn(e),i=Aa(e),a=za(i);let o=i==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[a]>t.floating[a]&&(o=li(o)),[o,li(o)]}function i2(e){const t=li(e);return[Fo(e),t,Fo(t)]}function Fo(e){return e.replace(/start|end/g,t=>t2[t])}const Ol=["left","right"],Fl=["right","left"],o2=["top","bottom"],a2=["bottom","top"];function s2(e,t,n){switch(e){case"top":case"bottom":return n?t?Fl:Ol:t?Ol:Fl;case"left":case"right":return t?o2:a2;default:return[]}}function l2(e,t,n,r){const i=Hn(e);let a=s2(Yt(e),n==="start",r);return i&&(a=a.map(o=>o+"-"+i),t&&(a=a.concat(a.map(Fo)))),a}function li(e){return e.replace(/left|right|bottom|top/g,t=>e2[t])}function u2(e){return{top:0,right:0,bottom:0,left:0,...e}}function zd(e){return typeof e!="number"?u2(e):{top:e,right:e,bottom:e,left:e}}function ui(e){const{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function Bl(e,t,n){let{reference:r,floating:i}=e;const a=Ft(t),o=Aa(t),s=za(o),l=Yt(t),u=a==="y",c=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,p=r[s]/2-i[s]/2;let m;switch(l){case"top":m={x:c,y:r.y-i.height};break;case"bottom":m={x:c,y:r.y+r.height};break;case"right":m={x:r.x+r.width,y:d};break;case"left":m={x:r.x-i.width,y:d};break;default:m={x:r.x,y:r.y}}switch(Hn(t)){case"start":m[o]-=p*(n&&u?-1:1);break;case"end":m[o]+=p*(n&&u?-1:1);break}return m}const c2=async(e,t,n)=>{const{placement:r="bottom",strategy:i="absolute",middleware:a=[],platform:o}=n,s=a.filter(Boolean),l=await(o.isRTL==null?void 0:o.isRTL(t));let u=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:c,y:d}=Bl(u,r,l),p=r,m={},h=0;for(let g=0;g<s.length;g++){const{name:b,fn:y}=s[g],{x,y:S,data:P,reset:j}=await y({x:c,y:d,initialPlacement:r,placement:p,strategy:i,middlewareData:m,rects:u,platform:o,elements:{reference:e,floating:t}});c=x??c,d=S??d,m={...m,[b]:{...m[b],...P}},j&&h<=50&&(h++,typeof j=="object"&&(j.placement&&(p=j.placement),j.rects&&(u=j.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):j.rects),{x:c,y:d}=Bl(u,p,l)),g=-1)}return{x:c,y:d,placement:p,strategy:i,middlewareData:m}};async function hr(e,t){var n;t===void 0&&(t={});const{x:r,y:i,platform:a,rects:o,elements:s,strategy:l}=e,{boundary:u="clippingAncestors",rootBoundary:c="viewport",elementContext:d="floating",altBoundary:p=!1,padding:m=0}=Qt(t,e),h=zd(m),b=s[p?d==="floating"?"reference":"floating":d],y=ui(await a.getClippingRect({element:(n=await(a.isElement==null?void 0:a.isElement(b)))==null||n?b:b.contextElement||await(a.getDocumentElement==null?void 0:a.getDocumentElement(s.floating)),boundary:u,rootBoundary:c,strategy:l})),x=d==="floating"?{x:r,y:i,width:o.floating.width,height:o.floating.height}:o.reference,S=await(a.getOffsetParent==null?void 0:a.getOffsetParent(s.floating)),P=await(a.isElement==null?void 0:a.isElement(S))?await(a.getScale==null?void 0:a.getScale(S))||{x:1,y:1}:{x:1,y:1},j=ui(a.convertOffsetParentRelativeRectToViewportRelativeRect?await a.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:x,offsetParent:S,strategy:l}):x);return{top:(y.top-j.top+h.top)/P.y,bottom:(j.bottom-y.bottom+h.bottom)/P.y,left:(y.left-j.left+h.left)/P.x,right:(j.right-y.right+h.right)/P.x}}const d2=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:l}=t,{element:u,padding:c=0}=Qt(e,t)||{};if(u==null)return{};const d=zd(c),p={x:n,y:r},m=Aa(i),h=za(m),g=await o.getDimensions(u),b=m==="y",y=b?"top":"left",x=b?"bottom":"right",S=b?"clientHeight":"clientWidth",P=a.reference[h]+a.reference[m]-p[m]-a.floating[h],j=p[m]-a.reference[m],C=await(o.getOffsetParent==null?void 0:o.getOffsetParent(u));let E=C?C[S]:0;(!E||!await(o.isElement==null?void 0:o.isElement(C)))&&(E=s.floating[S]||a.floating[h]);const R=P/2-j/2,M=E/2-g[h]/2-1,k=fn(d[y],M),N=fn(d[x],M),T=k,V=E-g[h]-N,O=E/2-g[h]/2+R,F=Oo(T,O,V),B=!l.arrow&&Hn(i)!=null&&O!==F&&a.reference[h]/2-(O<T?k:N)-g[h]/2<0,Z=B?O<T?O-T:O-V:0;return{[m]:p[m]+Z,data:{[m]:F,centerOffset:O-F-Z,...B&&{alignmentOffset:Z}},reset:B}}}),f2=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,r;const{placement:i,middlewareData:a,rects:o,initialPlacement:s,platform:l,elements:u}=t,{mainAxis:c=!0,crossAxis:d=!0,fallbackPlacements:p,fallbackStrategy:m="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:g=!0,...b}=Qt(e,t);if((n=a.arrow)!=null&&n.alignmentOffset)return{};const y=Yt(i),x=Ft(s),S=Yt(s)===s,P=await(l.isRTL==null?void 0:l.isRTL(u.floating)),j=p||(S||!g?[li(s)]:i2(s)),C=h!=="none";!p&&C&&j.push(...l2(s,g,h,P));const E=[s,...j],R=await hr(t,b),M=[];let k=((r=a.flip)==null?void 0:r.overflows)||[];if(c&&M.push(R[y]),d){const O=r2(i,o,P);M.push(R[O[0]],R[O[1]])}if(k=[...k,{placement:i,overflows:M}],!M.every(O=>O<=0)){var N,T;const O=(((N=a.flip)==null?void 0:N.index)||0)+1,F=E[O];if(F&&(!(d==="alignment"?x!==Ft(F):!1)||k.every(X=>Ft(X.placement)===x?X.overflows[0]>0:!0)))return{data:{index:O,overflows:k},reset:{placement:F}};let B=(T=k.filter(Z=>Z.overflows[0]<=0).sort((Z,X)=>Z.overflows[1]-X.overflows[1])[0])==null?void 0:T.placement;if(!B)switch(m){case"bestFit":{var V;const Z=(V=k.filter(X=>{if(C){const K=Ft(X.placement);return K===x||K==="y"}return!0}).map(X=>[X.placement,X.overflows.filter(K=>K>0).reduce((K,w)=>K+w,0)]).sort((X,K)=>X[1]-K[1])[0])==null?void 0:V[0];Z&&(B=Z);break}case"initialPlacement":B=s;break}if(i!==B)return{reset:{placement:B}}}return{}}}};function Wl(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function ql(e){return $A.some(t=>e[t]>=0)}const m2=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n}=t,{strategy:r="referenceHidden",...i}=Qt(e,t);switch(r){case"referenceHidden":{const a=await hr(t,{...i,elementContext:"reference"}),o=Wl(a,n.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:ql(o)}}}case"escaped":{const a=await hr(t,{...i,altBoundary:!0}),o=Wl(a,n.floating);return{data:{escapedOffsets:o,escaped:ql(o)}}}default:return{}}}}},Ad=new Set(["left","top"]);async function p2(e,t){const{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Yt(n),s=Hn(n),l=Ft(n)==="y",u=Ad.has(o)?-1:1,c=a&&l?-1:1,d=Qt(t,e);let{mainAxis:p,crossAxis:m,alignmentAxis:h}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof h=="number"&&(m=s==="end"?h*-1:h),l?{x:m*c,y:p*u}:{x:p*u,y:m*c}}const h2=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,r;const{x:i,y:a,placement:o,middlewareData:s}=t,l=await p2(t,e);return o===((n=s.offset)==null?void 0:n.placement)&&(r=s.arrow)!=null&&r.alignmentOffset?{}:{x:i+l.x,y:a+l.y,data:{...l,placement:o}}}}},g2=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:i}=t,{mainAxis:a=!0,crossAxis:o=!1,limiter:s={fn:b=>{let{x:y,y:x}=b;return{x:y,y:x}}},...l}=Qt(e,t),u={x:n,y:r},c=await hr(t,l),d=Ft(Yt(i)),p=Ca(d);let m=u[p],h=u[d];if(a){const b=p==="y"?"top":"left",y=p==="y"?"bottom":"right",x=m+c[b],S=m-c[y];m=Oo(x,m,S)}if(o){const b=d==="y"?"top":"left",y=d==="y"?"bottom":"right",x=h+c[b],S=h-c[y];h=Oo(x,h,S)}const g=s.fn({...t,[p]:m,[d]:h});return{...g,data:{x:g.x-n,y:g.y-r,enabled:{[p]:a,[d]:o}}}}}},b2=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:i,rects:a,middlewareData:o}=t,{offset:s=0,mainAxis:l=!0,crossAxis:u=!0}=Qt(e,t),c={x:n,y:r},d=Ft(i),p=Ca(d);let m=c[p],h=c[d];const g=Qt(s,t),b=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:0,crossAxis:0,...g};if(l){const S=p==="y"?"height":"width",P=a.reference[p]-a.floating[S]+b.mainAxis,j=a.reference[p]+a.reference[S]-b.mainAxis;m<P?m=P:m>j&&(m=j)}if(u){var y,x;const S=p==="y"?"width":"height",P=Ad.has(Yt(i)),j=a.reference[d]-a.floating[S]+(P&&((y=o.offset)==null?void 0:y[d])||0)+(P?0:b.crossAxis),C=a.reference[d]+a.reference[S]+(P?0:((x=o.offset)==null?void 0:x[d])||0)-(P?b.crossAxis:0);h<j?h=j:h>C&&(h=C)}return{[p]:m,[d]:h}}}},y2=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){var n,r;const{placement:i,rects:a,platform:o,elements:s}=t,{apply:l=()=>{},...u}=Qt(e,t),c=await hr(t,u),d=Yt(i),p=Hn(i),m=Ft(i)==="y",{width:h,height:g}=a.floating;let b,y;d==="top"||d==="bottom"?(b=d,y=p===(await(o.isRTL==null?void 0:o.isRTL(s.floating))?"start":"end")?"left":"right"):(y=d,b=p==="end"?"top":"bottom");const x=g-c.top-c.bottom,S=h-c.left-c.right,P=fn(g-c[b],x),j=fn(h-c[y],S),C=!t.middlewareData.shift;let E=P,R=j;if((n=t.middlewareData.shift)!=null&&n.enabled.x&&(R=S),(r=t.middlewareData.shift)!=null&&r.enabled.y&&(E=x),C&&!p){const k=kt(c.left,0),N=kt(c.right,0),T=kt(c.top,0),V=kt(c.bottom,0);m?R=h-2*(k!==0||N!==0?k+N:kt(c.left,c.right)):E=g-2*(T!==0||V!==0?T+V:kt(c.top,c.bottom))}await l({...t,availableWidth:R,availableHeight:E});const M=await o.getDimensions(s.floating);return h!==M.width||g!==M.height?{reset:{rects:!0}}:{}}}};function Si(){return typeof window<"u"}function Un(e){return Ed(e)?(e.nodeName||"").toLowerCase():"#document"}function Ct(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Vt(e){var t;return(t=(Ed(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Ed(e){return Si()?e instanceof Node||e instanceof Ct(e).Node:!1}function Mt(e){return Si()?e instanceof Element||e instanceof Ct(e).Element:!1}function Wt(e){return Si()?e instanceof HTMLElement||e instanceof Ct(e).HTMLElement:!1}function Vl(e){return!Si()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Ct(e).ShadowRoot}const v2=new Set(["inline","contents"]);function Sr(e){const{overflow:t,overflowX:n,overflowY:r,display:i}=It(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&!v2.has(i)}const x2=new Set(["table","td","th"]);function w2(e){return x2.has(Un(e))}const k2=[":popover-open",":modal"];function Ci(e){return k2.some(t=>{try{return e.matches(t)}catch{return!1}})}const S2=["transform","translate","scale","rotate","perspective"],C2=["transform","translate","scale","rotate","perspective","filter"],z2=["paint","layout","strict","content"];function Ea(e){const t=Pa(),n=Mt(e)?It(e):e;return S2.some(r=>n[r]?n[r]!=="none":!1)||(n.containerType?n.containerType!=="normal":!1)||!t&&(n.backdropFilter?n.backdropFilter!=="none":!1)||!t&&(n.filter?n.filter!=="none":!1)||C2.some(r=>(n.willChange||"").includes(r))||z2.some(r=>(n.contain||"").includes(r))}function A2(e){let t=mn(e);for(;Wt(t)&&!Bn(t);){if(Ea(t))return t;if(Ci(t))return null;t=mn(t)}return null}function Pa(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const E2=new Set(["html","body","#document"]);function Bn(e){return E2.has(Un(e))}function It(e){return Ct(e).getComputedStyle(e)}function zi(e){return Mt(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function mn(e){if(Un(e)==="html")return e;const t=e.assignedSlot||e.parentNode||Vl(e)&&e.host||Vt(e);return Vl(t)?t.host:t}function Pd(e){const t=mn(e);return Bn(t)?e.ownerDocument?e.ownerDocument.body:e.body:Wt(t)&&Sr(t)?t:Pd(t)}function gr(e,t,n){var r;t===void 0&&(t=[]),n===void 0&&(n=!0);const i=Pd(e),a=i===((r=e.ownerDocument)==null?void 0:r.body),o=Ct(i);if(a){const s=Bo(o);return t.concat(o,o.visualViewport||[],Sr(i)?i:[],s&&n?gr(s):[])}return t.concat(i,gr(i,[],n))}function Bo(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function jd(e){const t=It(e);let n=parseFloat(t.width)||0,r=parseFloat(t.height)||0;const i=Wt(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=si(n)!==a||si(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function ja(e){return Mt(e)?e:e.contextElement}function On(e){const t=ja(e);if(!Wt(t))return Bt(1);const n=t.getBoundingClientRect(),{width:r,height:i,$:a}=jd(t);let o=(a?si(n.width):n.width)/r,s=(a?si(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}const P2=Bt(0);function Nd(e){const t=Ct(e);return!Pa()||!t.visualViewport?P2:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function j2(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Ct(e)?!1:t}function Cn(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);const i=e.getBoundingClientRect(),a=ja(e);let o=Bt(1);t&&(r?Mt(r)&&(o=On(r)):o=On(e));const s=j2(a,n,r)?Nd(a):Bt(0);let l=(i.left+s.x)/o.x,u=(i.top+s.y)/o.y,c=i.width/o.x,d=i.height/o.y;if(a){const p=Ct(a),m=r&&Mt(r)?Ct(r):r;let h=p,g=Bo(h);for(;g&&r&&m!==h;){const b=On(g),y=g.getBoundingClientRect(),x=It(g),S=y.left+(g.clientLeft+parseFloat(x.paddingLeft))*b.x,P=y.top+(g.clientTop+parseFloat(x.paddingTop))*b.y;l*=b.x,u*=b.y,c*=b.x,d*=b.y,l+=S,u+=P,h=Ct(g),g=Bo(h)}}return ui({width:c,height:d,x:l,y:u})}function Ai(e,t){const n=zi(e).scrollLeft;return t?t.left+n:Cn(Vt(e)).left+n}function Td(e,t){const n=e.getBoundingClientRect(),r=n.left+t.scrollLeft-Ai(e,n),i=n.top+t.scrollTop;return{x:r,y:i}}function N2(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e;const a=i==="fixed",o=Vt(r),s=t?Ci(t.floating):!1;if(r===o||s&&a)return n;let l={scrollLeft:0,scrollTop:0},u=Bt(1);const c=Bt(0),d=Wt(r);if((d||!d&&!a)&&((Un(r)!=="body"||Sr(o))&&(l=zi(r)),Wt(r))){const m=Cn(r);u=On(r),c.x=m.x+r.clientLeft,c.y=m.y+r.clientTop}const p=o&&!d&&!a?Td(o,l):Bt(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-l.scrollLeft*u.x+c.x+p.x,y:n.y*u.y-l.scrollTop*u.y+c.y+p.y}}function T2(e){return Array.from(e.getClientRects())}function M2(e){const t=Vt(e),n=zi(e),r=e.ownerDocument.body,i=kt(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=kt(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight);let o=-n.scrollLeft+Ai(e);const s=-n.scrollTop;return It(r).direction==="rtl"&&(o+=kt(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}const Jl=25;function I2(e,t){const n=Ct(e),r=Vt(e),i=n.visualViewport;let a=r.clientWidth,o=r.clientHeight,s=0,l=0;if(i){a=i.width,o=i.height;const c=Pa();(!c||c&&t==="fixed")&&(s=i.offsetLeft,l=i.offsetTop)}const u=Ai(r);if(u<=0){const c=r.ownerDocument,d=c.body,p=getComputedStyle(d),m=c.compatMode==="CSS1Compat"&&parseFloat(p.marginLeft)+parseFloat(p.marginRight)||0,h=Math.abs(r.clientWidth-d.clientWidth-m);h<=Jl&&(a-=h)}else u<=Jl&&(a+=u);return{width:a,height:o,x:s,y:l}}const D2=new Set(["absolute","fixed"]);function R2(e,t){const n=Cn(e,!0,t==="fixed"),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Wt(e)?On(e):Bt(1),o=e.clientWidth*a.x,s=e.clientHeight*a.y,l=i*a.x,u=r*a.y;return{width:o,height:s,x:l,y:u}}function Hl(e,t,n){let r;if(t==="viewport")r=I2(e,n);else if(t==="document")r=M2(Vt(e));else if(Mt(t))r=R2(t,n);else{const i=Nd(e);r={x:t.x-i.x,y:t.y-i.y,width:t.width,height:t.height}}return ui(r)}function Md(e,t){const n=mn(e);return n===t||!Mt(n)||Bn(n)?!1:It(n).position==="fixed"||Md(n,t)}function L2(e,t){const n=t.get(e);if(n)return n;let r=gr(e,[],!1).filter(s=>Mt(s)&&Un(s)!=="body"),i=null;const a=It(e).position==="fixed";let o=a?mn(e):e;for(;Mt(o)&&!Bn(o);){const s=It(o),l=Ea(o);!l&&s.position==="fixed"&&(i=null),(a?!l&&!i:!l&&s.position==="static"&&!!i&&D2.has(i.position)||Sr(o)&&!l&&Md(e,o))?r=r.filter(c=>c!==o):i=s,o=mn(o)}return t.set(e,r),r}function O2(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e;const o=[...n==="clippingAncestors"?Ci(t)?[]:L2(t,this._c):[].concat(n),r],s=o[0],l=o.reduce((u,c)=>{const d=Hl(t,c,i);return u.top=kt(d.top,u.top),u.right=fn(d.right,u.right),u.bottom=fn(d.bottom,u.bottom),u.left=kt(d.left,u.left),u},Hl(t,s,i));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function F2(e){const{width:t,height:n}=jd(e);return{width:t,height:n}}function B2(e,t,n){const r=Wt(t),i=Vt(t),a=n==="fixed",o=Cn(e,!0,a,t);let s={scrollLeft:0,scrollTop:0};const l=Bt(0);function u(){l.x=Ai(i)}if(r||!r&&!a)if((Un(t)!=="body"||Sr(i))&&(s=zi(t)),r){const m=Cn(t,!0,a,t);l.x=m.x+t.clientLeft,l.y=m.y+t.clientTop}else i&&u();a&&!r&&i&&u();const c=i&&!r&&!a?Td(i,s):Bt(0),d=o.left+s.scrollLeft-l.x-c.x,p=o.top+s.scrollTop-l.y-c.y;return{x:d,y:p,width:o.width,height:o.height}}function uo(e){return It(e).position==="static"}function Ul(e,t){if(!Wt(e)||It(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return Vt(e)===n&&(n=n.ownerDocument.body),n}function Id(e,t){const n=Ct(e);if(Ci(e))return n;if(!Wt(e)){let i=mn(e);for(;i&&!Bn(i);){if(Mt(i)&&!uo(i))return i;i=mn(i)}return n}let r=Ul(e,t);for(;r&&w2(r)&&uo(r);)r=Ul(r,t);return r&&Bn(r)&&uo(r)&&!Ea(r)?n:r||A2(e)||n}const W2=async function(e){const t=this.getOffsetParent||Id,n=this.getDimensions,r=await n(e.floating);return{reference:B2(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function q2(e){return It(e).direction==="rtl"}const V2={convertOffsetParentRelativeRectToViewportRelativeRect:N2,getDocumentElement:Vt,getClippingRect:O2,getOffsetParent:Id,getElementRects:W2,getClientRects:T2,getDimensions:F2,getScale:On,isElement:Mt,isRTL:q2};function Dd(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function J2(e,t){let n=null,r;const i=Vt(e);function a(){var s;clearTimeout(r),(s=n)==null||s.disconnect(),n=null}function o(s,l){s===void 0&&(s=!1),l===void 0&&(l=1),a();const u=e.getBoundingClientRect(),{left:c,top:d,width:p,height:m}=u;if(s||t(),!p||!m)return;const h=qr(d),g=qr(i.clientWidth-(c+p)),b=qr(i.clientHeight-(d+m)),y=qr(c),S={rootMargin:-h+"px "+-g+"px "+-b+"px "+-y+"px",threshold:kt(0,fn(1,l))||1};let P=!0;function j(C){const E=C[0].intersectionRatio;if(E!==l){if(!P)return o();E?o(!1,E):r=setTimeout(()=>{o(!1,1e-7)},1e3)}E===1&&!Dd(u,e.getBoundingClientRect())&&o(),P=!1}try{n=new IntersectionObserver(j,{...S,root:i.ownerDocument})}catch{n=new IntersectionObserver(j,S)}n.observe(e)}return o(!0),a}function H2(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,u=ja(e),c=i||a?[...u?gr(u):[],...gr(t)]:[];c.forEach(y=>{i&&y.addEventListener("scroll",n,{passive:!0}),a&&y.addEventListener("resize",n)});const d=u&&s?J2(u,n):null;let p=-1,m=null;o&&(m=new ResizeObserver(y=>{let[x]=y;x&&x.target===u&&m&&(m.unobserve(t),cancelAnimationFrame(p),p=requestAnimationFrame(()=>{var S;(S=m)==null||S.observe(t)})),n()}),u&&!l&&m.observe(u),m.observe(t));let h,g=l?Cn(e):null;l&&b();function b(){const y=Cn(e);g&&!Dd(g,y)&&n(),g=y,h=requestAnimationFrame(b)}return n(),()=>{var y;c.forEach(x=>{i&&x.removeEventListener("scroll",n),a&&x.removeEventListener("resize",n)}),d==null||d(),(y=m)==null||y.disconnect(),m=null,l&&cancelAnimationFrame(h)}}const U2=h2,X2=g2,Z2=f2,G2=y2,K2=m2,Xl=d2,Q2=b2,Y2=(e,t,n)=>{const r=new Map,i={platform:V2,...n},a={...i.platform,_c:r};return c2(e,t,{...i,platform:a})};var _2=typeof document<"u",$2=function(){},Qr=_2?I.useLayoutEffect:$2;function ci(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!==t.length)return!1;for(r=n;r--!==0;)if(!ci(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!{}.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){const a=i[r];if(!(a==="_owner"&&e.$$typeof)&&!ci(e[a],t[a]))return!1}return!0}return e!==e&&t!==t}function Rd(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Zl(e,t){const n=Rd(e);return Math.round(t*n)/n}function co(e){const t=v.useRef(e);return Qr(()=>{t.current=e}),t}function eE(e){e===void 0&&(e={});const{placement:t="bottom",strategy:n="absolute",middleware:r=[],platform:i,elements:{reference:a,floating:o}={},transform:s=!0,whileElementsMounted:l,open:u}=e,[c,d]=v.useState({x:0,y:0,strategy:n,placement:t,middlewareData:{},isPositioned:!1}),[p,m]=v.useState(r);ci(p,r)||m(r);const[h,g]=v.useState(null),[b,y]=v.useState(null),x=v.useCallback(X=>{X!==C.current&&(C.current=X,g(X))},[]),S=v.useCallback(X=>{X!==E.current&&(E.current=X,y(X))},[]),P=a||h,j=o||b,C=v.useRef(null),E=v.useRef(null),R=v.useRef(c),M=l!=null,k=co(l),N=co(i),T=co(u),V=v.useCallback(()=>{if(!C.current||!E.current)return;const X={placement:t,strategy:n,middleware:p};N.current&&(X.platform=N.current),Y2(C.current,E.current,X).then(K=>{const w={...K,isPositioned:T.current!==!1};O.current&&!ci(R.current,w)&&(R.current=w,Xo.flushSync(()=>{d(w)}))})},[p,t,n,N,T]);Qr(()=>{u===!1&&R.current.isPositioned&&(R.current.isPositioned=!1,d(X=>({...X,isPositioned:!1})))},[u]);const O=v.useRef(!1);Qr(()=>(O.current=!0,()=>{O.current=!1}),[]),Qr(()=>{if(P&&(C.current=P),j&&(E.current=j),P&&j){if(k.current)return k.current(P,j,V);V()}},[P,j,V,k,M]);const F=v.useMemo(()=>({reference:C,floating:E,setReference:x,setFloating:S}),[x,S]),B=v.useMemo(()=>({reference:P,floating:j}),[P,j]),Z=v.useMemo(()=>{const X={position:n,left:0,top:0};if(!B.floating)return X;const K=Zl(B.floating,c.x),w=Zl(B.floating,c.y);return s?{...X,transform:"translate("+K+"px, "+w+"px)",...Rd(B.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:K,top:w}},[n,s,B.floating,c.x,c.y]);return v.useMemo(()=>({...c,update:V,refs:F,elements:B,floatingStyles:Z}),[c,V,F,B,Z])}const tE=e=>{function t(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:e,fn(n){const{element:r,padding:i}=typeof e=="function"?e(n):e;return r&&t(r)?r.current!=null?Xl({element:r.current,padding:i}).fn(n):{}:r?Xl({element:r,padding:i}).fn(n):{}}}},nE=(e,t)=>({...U2(e),options:[e,t]}),rE=(e,t)=>({...X2(e),options:[e,t]}),iE=(e,t)=>({...Q2(e),options:[e,t]}),oE=(e,t)=>({...Z2(e),options:[e,t]}),aE=(e,t)=>({...G2(e),options:[e,t]}),sE=(e,t)=>({...K2(e),options:[e,t]}),lE=(e,t)=>({...tE(e),options:[e,t]});var uE="Arrow",Ld=v.forwardRef((e,t)=>{const{children:n,width:r=10,height:i=5,...a}=e;return f.jsx(Ke.svg,{...a,ref:t,width:r,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?n:f.jsx("polygon",{points:"0,0 30,0 15,10"})})});Ld.displayName=uE;var cE=Ld,Na="Popper",[Od,Fd]=pn(Na),[dE,Bd]=Od(Na),Wd=e=>{const{__scopePopper:t,children:n}=e,[r,i]=v.useState(null);return f.jsx(dE,{scope:t,anchor:r,onAnchorChange:i,children:n})};Wd.displayName=Na;var qd="PopperAnchor",Vd=v.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...i}=e,a=Bd(qd,n),o=v.useRef(null),s=ot(t,o),l=v.useRef(null);return v.useEffect(()=>{const u=l.current;l.current=(r==null?void 0:r.current)||o.current,u!==l.current&&a.onAnchorChange(l.current)}),r?null:f.jsx(Ke.div,{...i,ref:s})});Vd.displayName=qd;var Ta="PopperContent",[fE,mE]=Od(Ta),Jd=v.forwardRef((e,t)=>{var Re,Pe,le,Ce,Q,U;const{__scopePopper:n,side:r="bottom",sideOffset:i=0,align:a="center",alignOffset:o=0,arrowPadding:s=0,avoidCollisions:l=!0,collisionBoundary:u=[],collisionPadding:c=0,sticky:d="partial",hideWhenDetached:p=!1,updatePositionStrategy:m="optimized",onPlaced:h,...g}=e,b=Bd(Ta,n),[y,x]=v.useState(null),S=ot(t,ee=>x(ee)),[P,j]=v.useState(null),C=Qo(P),E=(C==null?void 0:C.width)??0,R=(C==null?void 0:C.height)??0,M=r+(a!=="center"?"-"+a:""),k=typeof c=="number"?c:{top:0,right:0,bottom:0,left:0,...c},N=Array.isArray(u)?u:[u],T=N.length>0,V={padding:k,boundary:N.filter(hE),altBoundary:T},{refs:O,floatingStyles:F,placement:B,isPositioned:Z,middlewareData:X}=eE({strategy:"fixed",placement:M,whileElementsMounted:(...ee)=>H2(...ee,{animationFrame:m==="always"}),elements:{reference:b.anchor},middleware:[nE({mainAxis:i+R,alignmentAxis:o}),l&&rE({mainAxis:!0,crossAxis:!1,limiter:d==="partial"?iE():void 0,...V}),l&&oE({...V}),aE({...V,apply:({elements:ee,rects:me,availableWidth:Oe,availableHeight:de})=>{const{width:Qe,height:Se}=me.reference,xe=ee.floating.style;xe.setProperty("--radix-popper-available-width",`${Oe}px`),xe.setProperty("--radix-popper-available-height",`${de}px`),xe.setProperty("--radix-popper-anchor-width",`${Qe}px`),xe.setProperty("--radix-popper-anchor-height",`${Se}px`)}}),P&&lE({element:P,padding:s}),gE({arrowWidth:E,arrowHeight:R}),p&&sE({strategy:"referenceHidden",...V})]}),[K,w]=Xd(B),se=Gt(h);Zt(()=>{Z&&(se==null||se())},[Z,se]);const Ee=(Re=X.arrow)==null?void 0:Re.x,z=(Pe=X.arrow)==null?void 0:Pe.y,Me=((le=X.arrow)==null?void 0:le.centerOffset)!==0,[We,Te]=v.useState();return Zt(()=>{y&&Te(window.getComputedStyle(y).zIndex)},[y]),f.jsx("div",{ref:O.setFloating,"data-radix-popper-content-wrapper":"",style:{...F,transform:Z?F.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:We,"--radix-popper-transform-origin":[(Ce=X.transformOrigin)==null?void 0:Ce.x,(Q=X.transformOrigin)==null?void 0:Q.y].join(" "),...((U=X.hide)==null?void 0:U.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:f.jsx(fE,{scope:n,placedSide:K,onArrowChange:j,arrowX:Ee,arrowY:z,shouldHideArrow:Me,children:f.jsx(Ke.div,{"data-side":K,"data-align":w,...g,ref:S,style:{...g.style,animation:Z?void 0:"none"}})})})});Jd.displayName=Ta;var Hd="PopperArrow",pE={top:"bottom",right:"left",bottom:"top",left:"right"},Ud=v.forwardRef(function(t,n){const{__scopePopper:r,...i}=t,a=mE(Hd,r),o=pE[a.placedSide];return f.jsx("span",{ref:a.onArrowChange,style:{position:"absolute",left:a.arrowX,top:a.arrowY,[o]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[a.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[a.placedSide],visibility:a.shouldHideArrow?"hidden":void 0},children:f.jsx(cE,{...i,ref:n,style:{...i.style,display:"block"}})})});Ud.displayName=Hd;function hE(e){return e!==null}var gE=e=>({name:"transformOrigin",options:e,fn(t){var b,y,x;const{placement:n,rects:r,middlewareData:i}=t,o=((b=i.arrow)==null?void 0:b.centerOffset)!==0,s=o?0:e.arrowWidth,l=o?0:e.arrowHeight,[u,c]=Xd(n),d={start:"0%",center:"50%",end:"100%"}[c],p=(((y=i.arrow)==null?void 0:y.x)??0)+s/2,m=(((x=i.arrow)==null?void 0:x.y)??0)+l/2;let h="",g="";return u==="bottom"?(h=o?d:`${p}px`,g=`${-l}px`):u==="top"?(h=o?d:`${p}px`,g=`${r.floating.height+l}px`):u==="right"?(h=`${-l}px`,g=o?d:`${m}px`):u==="left"&&(h=`${r.floating.width+l}px`,g=o?d:`${m}px`),{data:{x:h,y:g}}}});function Xd(e){const[t,n="center"]=e.split("-");return[t,n]}var bE=Wd,yE=Vd,vE=Jd,xE=Ud,wE="Portal",Zd=v.forwardRef((e,t)=>{var s;const{container:n,...r}=e,[i,a]=v.useState(!1);Zt(()=>a(!0),[]);const o=n||i&&((s=globalThis==null?void 0:globalThis.document)==null?void 0:s.body);return o?Uo.createPortal(f.jsx(Ke.div,{...r,ref:t}),o):null});Zd.displayName=wE;var kE=Symbol("radix.slottable");function SE(e){const t=({children:n})=>f.jsx(f.Fragment,{children:n});return t.displayName=`${e}.Slottable`,t.__radixId=kE,t}var CE=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),zE="VisuallyHidden",Ei=v.forwardRef((e,t)=>f.jsx(Ke.span,{...e,ref:t,style:{...CE,...e.style}}));Ei.displayName=zE;var AE=Ei,[Pi]=pn("Tooltip",[Fd]),ji=Fd(),Gd="TooltipProvider",EE=700,Wo="tooltip.open",[PE,Ma]=Pi(Gd),Kd=e=>{const{__scopeTooltip:t,delayDuration:n=EE,skipDelayDuration:r=300,disableHoverableContent:i=!1,children:a}=e,o=v.useRef(!0),s=v.useRef(!1),l=v.useRef(0);return v.useEffect(()=>{const u=l.current;return()=>window.clearTimeout(u)},[]),f.jsx(PE,{scope:t,isOpenDelayedRef:o,delayDuration:n,onOpen:v.useCallback(()=>{window.clearTimeout(l.current),o.current=!1},[]),onClose:v.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(()=>o.current=!0,r)},[r]),isPointerInTransitRef:s,onPointerInTransitChange:v.useCallback(u=>{s.current=u},[]),disableHoverableContent:i,children:a})};Kd.displayName=Gd;var br="Tooltip",[jE,Ni]=Pi(br),Qd=e=>{const{__scopeTooltip:t,children:n,open:r,defaultOpen:i,onOpenChange:a,disableHoverableContent:o,delayDuration:s}=e,l=Ma(br,e.__scopeTooltip),u=ji(t),[c,d]=v.useState(null),p=ju(),m=v.useRef(0),h=o??l.disableHoverableContent,g=s??l.delayDuration,b=v.useRef(!1),[y,x]=yr({prop:r,defaultProp:i??!1,onChange:E=>{E?(l.onOpen(),document.dispatchEvent(new CustomEvent(Wo))):l.onClose(),a==null||a(E)},caller:br}),S=v.useMemo(()=>y?b.current?"delayed-open":"instant-open":"closed",[y]),P=v.useCallback(()=>{window.clearTimeout(m.current),m.current=0,b.current=!1,x(!0)},[x]),j=v.useCallback(()=>{window.clearTimeout(m.current),m.current=0,x(!1)},[x]),C=v.useCallback(()=>{window.clearTimeout(m.current),m.current=window.setTimeout(()=>{b.current=!0,x(!0),m.current=0},g)},[g,x]);return v.useEffect(()=>()=>{m.current&&(window.clearTimeout(m.current),m.current=0)},[]),f.jsx(bE,{...u,children:f.jsx(jE,{scope:t,contentId:p,open:y,stateAttribute:S,trigger:c,onTriggerChange:d,onTriggerEnter:v.useCallback(()=>{l.isOpenDelayedRef.current?C():P()},[l.isOpenDelayedRef,C,P]),onTriggerLeave:v.useCallback(()=>{h?j():(window.clearTimeout(m.current),m.current=0)},[j,h]),onOpen:P,onClose:j,disableHoverableContent:h,children:n})})};Qd.displayName=br;var qo="TooltipTrigger",Yd=v.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,i=Ni(qo,n),a=Ma(qo,n),o=ji(n),s=v.useRef(null),l=ot(t,s,i.onTriggerChange),u=v.useRef(!1),c=v.useRef(!1),d=v.useCallback(()=>u.current=!1,[]);return v.useEffect(()=>()=>document.removeEventListener("pointerup",d),[d]),f.jsx(yE,{asChild:!0,...o,children:f.jsx(Ke.button,{"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute,...r,ref:l,onPointerMove:De(e.onPointerMove,p=>{p.pointerType!=="touch"&&!c.current&&!a.isPointerInTransitRef.current&&(i.onTriggerEnter(),c.current=!0)}),onPointerLeave:De(e.onPointerLeave,()=>{i.onTriggerLeave(),c.current=!1}),onPointerDown:De(e.onPointerDown,()=>{i.open&&i.onClose(),u.current=!0,document.addEventListener("pointerup",d,{once:!0})}),onFocus:De(e.onFocus,()=>{u.current||i.onOpen()}),onBlur:De(e.onBlur,i.onClose),onClick:De(e.onClick,i.onClose)})})});Yd.displayName=qo;var NE="TooltipPortal",[FP,TE]=Pi(NE,{forceMount:void 0}),Wn="TooltipContent",_d=v.forwardRef((e,t)=>{const n=TE(Wn,e.__scopeTooltip),{forceMount:r=n.forceMount,side:i="top",...a}=e,o=Ni(Wn,e.__scopeTooltip);return f.jsx(fi,{present:r||o.open,children:o.disableHoverableContent?f.jsx($d,{side:i,...a,ref:t}):f.jsx(ME,{side:i,...a,ref:t})})}),ME=v.forwardRef((e,t)=>{const n=Ni(Wn,e.__scopeTooltip),r=Ma(Wn,e.__scopeTooltip),i=v.useRef(null),a=ot(t,i),[o,s]=v.useState(null),{trigger:l,onClose:u}=n,c=i.current,{onPointerInTransitChange:d}=r,p=v.useCallback(()=>{s(null),d(!1)},[d]),m=v.useCallback((h,g)=>{const b=h.currentTarget,y={x:h.clientX,y:h.clientY},x=OE(y,b.getBoundingClientRect()),S=FE(y,x),P=BE(g.getBoundingClientRect()),j=qE([...S,...P]);s(j),d(!0)},[d]);return v.useEffect(()=>()=>p(),[p]),v.useEffect(()=>{if(l&&c){const h=b=>m(b,c),g=b=>m(b,l);return l.addEventListener("pointerleave",h),c.addEventListener("pointerleave",g),()=>{l.removeEventListener("pointerleave",h),c.removeEventListener("pointerleave",g)}}},[l,c,m,p]),v.useEffect(()=>{if(o){const h=g=>{const b=g.target,y={x:g.clientX,y:g.clientY},x=(l==null?void 0:l.contains(b))||(c==null?void 0:c.contains(b)),S=!WE(y,o);x?p():S&&(p(),u())};return document.addEventListener("pointermove",h),()=>document.removeEventListener("pointermove",h)}},[l,c,o,u,p]),f.jsx($d,{...e,ref:a})}),[IE,DE]=Pi(br,{isInside:!1}),RE=SE("TooltipContent"),$d=v.forwardRef((e,t)=>{const{__scopeTooltip:n,children:r,"aria-label":i,onEscapeKeyDown:a,onPointerDownOutside:o,...s}=e,l=Ni(Wn,n),u=ji(n),{onClose:c}=l;return v.useEffect(()=>(document.addEventListener(Wo,c),()=>document.removeEventListener(Wo,c)),[c]),v.useEffect(()=>{if(l.trigger){const d=p=>{const m=p.target;m!=null&&m.contains(l.trigger)&&c()};return window.addEventListener("scroll",d,{capture:!0}),()=>window.removeEventListener("scroll",d,{capture:!0})}},[l.trigger,c]),f.jsx(Sa,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:a,onPointerDownOutside:o,onFocusOutside:d=>d.preventDefault(),onDismiss:c,children:f.jsxs(vE,{"data-state":l.stateAttribute,...u,...s,ref:t,style:{...s.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[f.jsx(RE,{children:r}),f.jsx(IE,{scope:n,isInside:!0,children:f.jsx(AE,{id:l.contentId,role:"tooltip",children:i||r})})]})})});_d.displayName=Wn;var ef="TooltipArrow",LE=v.forwardRef((e,t)=>{const{__scopeTooltip:n,...r}=e,i=ji(n);return DE(ef,n).isInside?null:f.jsx(xE,{...i,...r,ref:t})});LE.displayName=ef;function OE(e,t){const n=Math.abs(t.top-e.y),r=Math.abs(t.bottom-e.y),i=Math.abs(t.right-e.x),a=Math.abs(t.left-e.x);switch(Math.min(n,r,i,a)){case a:return"left";case i:return"right";case n:return"top";case r:return"bottom";default:throw new Error("unreachable")}}function FE(e,t,n=5){const r=[];switch(t){case"top":r.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case"bottom":r.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case"left":r.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case"right":r.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return r}function BE(e){const{top:t,right:n,bottom:r,left:i}=e;return[{x:i,y:t},{x:n,y:t},{x:n,y:r},{x:i,y:r}]}function WE(e,t){const{x:n,y:r}=e;let i=!1;for(let a=0,o=t.length-1;a<t.length;o=a++){const s=t[a],l=t[o],u=s.x,c=s.y,d=l.x,p=l.y;c>r!=p>r&&n<(d-u)*(r-c)/(p-c)+u&&(i=!i)}return i}function qE(e){const t=e.slice();return t.sort((n,r)=>n.x<r.x?-1:n.x>r.x?1:n.y<r.y?-1:n.y>r.y?1:0),VE(t)}function VE(e){if(e.length<=1)return e.slice();const t=[];for(let r=0;r<e.length;r++){const i=e[r];for(;t.length>=2;){const a=t[t.length-1],o=t[t.length-2];if((a.x-o.x)*(i.y-o.y)>=(a.y-o.y)*(i.x-o.x))t.pop();else break}t.push(i)}t.pop();const n=[];for(let r=e.length-1;r>=0;r--){const i=e[r];for(;n.length>=2;){const a=n[n.length-1],o=n[n.length-2];if((a.x-o.x)*(i.y-o.y)>=(a.y-o.y)*(i.x-o.x))n.pop();else break}n.push(i)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var JE=Kd,HE=Qd,UE=Yd,tf=_d;const XE=JE,ZE=HE,GE=UE,nf=v.forwardRef(({className:e,sideOffset:t=4,...n},r)=>f.jsx(tf,{ref:r,sideOffset:t,className:yt("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",e),...n}));nf.displayName=tf.displayName;const KE="data:image/png;base64,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",QE=({className:e})=>{const t=e?`block select-none object-contain ${e}`:"block select-none object-contain";return f.jsx("img",{src:KE,className:t,alt:"","aria-hidden":"true",draggable:!1,decoding:"async"})},rf=({onClick:e,isOpen:t=!1,zIndex:n=100001,assistantName:r,bubbleIconUrl:i,bubbleIconSize:a,showChristmasHat:o,callout:s})=>{const[d,p]=I.useState(!1),m=(s==null?void 0:s.text)||`Sie brauchen Hilfe? Fragen Sie ${r}!`,h=typeof i=="string"?i.trim():"",g=typeof a!="number"||!Number.isFinite(a)?32:Math.max(16,Math.min(Math.round(a),52));I.useEffect(()=>{if((s==null?void 0:s.enabled)===!1)return;const y=setTimeout(()=>p(!0),(s==null?void 0:s.delayMs)??2e3);return()=>clearTimeout(y)},[s==null?void 0:s.delayMs,s==null?void 0:s.enabled]);const b=y=>{y.stopPropagation(),p(!1)};return t?null:f.jsxs("div",{className:"fixed bottom-[30px] right-[30px] max-md:bottom-[20px] max-md:right-[20px]",style:{zIndex:n},children:[d&&(s==null?void 0:s.enabled)!==!1&&(m||(s==null?void 0:s.emoji))&&f.jsx("div",{className:"absolute bottom-[50%] right-[calc(100%+15px)] translate-y-[50%] animate-fade-in max-md:hidden",children:f.jsxs("div",{className:"relative bg-white rounded-[20px] px-5 py-3 shadow-[0_10px_40px_rgba(0,0,0,0.15)] flex items-center gap-2 whitespace-nowrap",children:[f.jsx("span",{className:"text-2xl",children:(s==null?void 0:s.emoji)||"👋"}),f.jsx("span",{className:"text-gray-800 font-semibold text-sm",children:m}),f.jsx("button",{onClick:b,"aria-label":"Hinweis schließen",className:"ml-2 p-1 hover:bg-gray-100 rounded-full transition-colors focus:outline-none focus:ring-2 focus:ring-gray-400",children:f.jsx(un,{className:"w-4 h-4 text-gray-500","aria-hidden":"true"})}),f.jsx("div",{className:"absolute right-[-8px] top-[50%] translate-y-[-50%] w-0 h-0 border-t-[8px] border-t-transparent border-b-[8px] border-b-transparent border-l-[8px] border-l-white"})]})}),f.jsxs(ZE,{children:[f.jsx(GE,{asChild:!0,children:f.jsxs("button",{onClick:e,"aria-label":`Chat mit ${r} öffnen`,"aria-haspopup":"dialog",className:"chat-launcher group relative overflow-visible w-[65px] h-[65px] rounded-full bg-primary flex items-center justify-center cursor-pointer shadow-[0_12px_40px_hsl(var(--glow-primary))] border border-white/20 transition-all duration-400 hover:scale-110 hover:-translate-y-1 hover:rotate-[10deg] hover:shadow-[0_20px_60px_hsl(var(--glow-primary))] animate-chat-pulse hover:animate-chat-float transform-gpu max-md:w-[60px] max-md:h-[60px] focus:outline-none focus:ring-4 focus:ring-primary focus:ring-offset-4",children:[o&&f.jsx("div",{className:"pointer-events-none absolute -top-[58px] -right-[35px] z-10 h-[96px] w-[96px] rotate-[15deg] scale-x-[1.15] transition-transform duration-300 group-hover:rotate-[22deg]",children:f.jsx(QE,{className:"h-full w-full drop-shadow-[0_4px_12px_rgba(0,0,0,0.3)]"})}),f.jsx("div",{className:"absolute inset-[-3px] rounded-full p-[3px] animate-rotate-border pointer-events-none","aria-hidden":"true",style:{background:"white",WebkitMask:"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)",mask:"linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0)",WebkitMaskComposite:"xor",maskComposite:"exclude"}}),h?f.jsx("img",{src:h,alt:"","aria-hidden":"true",className:"object-contain drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)] transition-transform group-hover:scale-110 group-hover:-rotate-[10deg]",style:{width:g,height:g}}):f.jsx(rm,{className:"text-white drop-shadow-[0_2px_4px_rgba(0,0,0,0.2)] transition-transform group-hover:scale-110 group-hover:-rotate-[10deg]",size:g,"aria-hidden":"true"})]})}),f.jsx(nf,{children:r})]})]})};var Ia="ToastProvider",[Da,YE,_E]=Pu("Toast"),[of]=pn("Toast",[_E]),[$E,Ti]=of(Ia),af=e=>{const{__scopeToast:t,label:n="Notification",duration:r=5e3,swipeDirection:i="right",swipeThreshold:a=50,children:o}=e,[s,l]=v.useState(null),[u,c]=v.useState(0),d=v.useRef(!1),p=v.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${Ia}\`. Expected non-empty \`string\`.`),f.jsx(Da.Provider,{scope:t,children:f.jsx($E,{scope:t,label:n,duration:r,swipeDirection:i,swipeThreshold:a,toastCount:u,viewport:s,onViewportChange:l,onToastAdd:v.useCallback(()=>c(m=>m+1),[]),onToastRemove:v.useCallback(()=>c(m=>m-1),[]),isFocusedToastEscapeKeyDownRef:d,isClosePausedRef:p,children:o})})};af.displayName=Ia;var sf="ToastViewport",eP=["F8"],Vo="toast.viewportPause",Jo="toast.viewportResume",lf=v.forwardRef((e,t)=>{const{__scopeToast:n,hotkey:r=eP,label:i="Notifications ({hotkey})",...a}=e,o=Ti(sf,n),s=YE(n),l=v.useRef(null),u=v.useRef(null),c=v.useRef(null),d=v.useRef(null),p=ot(t,d,o.onViewportChange),m=r.join("+").replace(/Key/g,"").replace(/Digit/g,""),h=o.toastCount>0;v.useEffect(()=>{const b=y=>{var S;r.length!==0&&r.every(P=>y[P]||y.code===P)&&((S=d.current)==null||S.focus())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[r]),v.useEffect(()=>{const b=l.current,y=d.current;if(h&&b&&y){const x=()=>{if(!o.isClosePausedRef.current){const C=new CustomEvent(Vo);y.dispatchEvent(C),o.isClosePausedRef.current=!0}},S=()=>{if(o.isClosePausedRef.current){const C=new CustomEvent(Jo);y.dispatchEvent(C),o.isClosePausedRef.current=!1}},P=C=>{!b.contains(C.relatedTarget)&&S()},j=()=>{b.contains(document.activeElement)||S()};return b.addEventListener("focusin",x),b.addEventListener("focusout",P),b.addEventListener("pointermove",x),b.addEventListener("pointerleave",j),window.addEventListener("blur",x),window.addEventListener("focus",S),()=>{b.removeEventListener("focusin",x),b.removeEventListener("focusout",P),b.removeEventListener("pointermove",x),b.removeEventListener("pointerleave",j),window.removeEventListener("blur",x),window.removeEventListener("focus",S)}}},[h,o.isClosePausedRef]);const g=v.useCallback(({tabbingDirection:b})=>{const x=s().map(S=>{const P=S.ref.current,j=[P,...mP(P)];return b==="forwards"?j:j.reverse()});return(b==="forwards"?x.reverse():x).flat()},[s]);return v.useEffect(()=>{const b=d.current;if(b){const y=x=>{var j,C,E;const S=x.altKey||x.ctrlKey||x.metaKey;if(x.key==="Tab"&&!S){const R=document.activeElement,M=x.shiftKey;if(x.target===b&&M){(j=u.current)==null||j.focus();return}const T=g({tabbingDirection:M?"backwards":"forwards"}),V=T.findIndex(O=>O===R);fo(T.slice(V+1))?x.preventDefault():M?(C=u.current)==null||C.focus():(E=c.current)==null||E.focus()}};return b.addEventListener("keydown",y),()=>b.removeEventListener("keydown",y)}},[s,g]),f.jsxs(_A,{ref:l,role:"region","aria-label":i.replace("{hotkey}",m),tabIndex:-1,style:{pointerEvents:h?void 0:"none"},children:[h&&f.jsx(Ho,{ref:u,onFocusFromOutsideViewport:()=>{const b=g({tabbingDirection:"forwards"});fo(b)}}),f.jsx(Da.Slot,{scope:n,children:f.jsx(Ke.ol,{tabIndex:-1,...a,ref:p})}),h&&f.jsx(Ho,{ref:c,onFocusFromOutsideViewport:()=>{const b=g({tabbingDirection:"backwards"});fo(b)}})]})});lf.displayName=sf;var uf="ToastFocusProxy",Ho=v.forwardRef((e,t)=>{const{__scopeToast:n,onFocusFromOutsideViewport:r,...i}=e,a=Ti(uf,n);return f.jsx(Ei,{tabIndex:0,...i,ref:t,style:{position:"fixed"},onFocus:o=>{var u;const s=o.relatedTarget;!((u=a.viewport)!=null&&u.contains(s))&&r()}})});Ho.displayName=uf;var Cr="Toast",tP="toast.swipeStart",nP="toast.swipeMove",rP="toast.swipeCancel",iP="toast.swipeEnd",cf=v.forwardRef((e,t)=>{const{forceMount:n,open:r,defaultOpen:i,onOpenChange:a,...o}=e,[s,l]=yr({prop:r,defaultProp:i??!0,onChange:a,caller:Cr});return f.jsx(fi,{present:n||s,children:f.jsx(sP,{open:s,...o,ref:t,onClose:()=>l(!1),onPause:Gt(e.onPause),onResume:Gt(e.onResume),onSwipeStart:De(e.onSwipeStart,u=>{u.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:De(e.onSwipeMove,u=>{const{x:c,y:d}=u.detail.delta;u.currentTarget.setAttribute("data-swipe","move"),u.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${c}px`),u.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${d}px`)}),onSwipeCancel:De(e.onSwipeCancel,u=>{u.currentTarget.setAttribute("data-swipe","cancel"),u.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),u.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),u.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),u.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:De(e.onSwipeEnd,u=>{const{x:c,y:d}=u.detail.delta;u.currentTarget.setAttribute("data-swipe","end"),u.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),u.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),u.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${c}px`),u.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${d}px`),l(!1)})})})});cf.displayName=Cr;var[oP,aP]=of(Cr,{onClose(){}}),sP=v.forwardRef((e,t)=>{const{__scopeToast:n,type:r="foreground",duration:i,open:a,onClose:o,onEscapeKeyDown:s,onPause:l,onResume:u,onSwipeStart:c,onSwipeMove:d,onSwipeCancel:p,onSwipeEnd:m,...h}=e,g=Ti(Cr,n),[b,y]=v.useState(null),x=ot(t,O=>y(O)),S=v.useRef(null),P=v.useRef(null),j=i||g.duration,C=v.useRef(0),E=v.useRef(j),R=v.useRef(0),{onToastAdd:M,onToastRemove:k}=g,N=Gt(()=>{var F;(b==null?void 0:b.contains(document.activeElement))&&((F=g.viewport)==null||F.focus()),o()}),T=v.useCallback(O=>{!O||O===1/0||(window.clearTimeout(R.current),C.current=new Date().getTime(),R.current=window.setTimeout(N,O))},[N]);v.useEffect(()=>{const O=g.viewport;if(O){const F=()=>{T(E.current),u==null||u()},B=()=>{const Z=new Date().getTime()-C.current;E.current=E.current-Z,window.clearTimeout(R.current),l==null||l()};return O.addEventListener(Vo,B),O.addEventListener(Jo,F),()=>{O.removeEventListener(Vo,B),O.removeEventListener(Jo,F)}}},[g.viewport,j,l,u,T]),v.useEffect(()=>{a&&!g.isClosePausedRef.current&&T(j)},[a,j,g.isClosePausedRef,T]),v.useEffect(()=>(M(),()=>k()),[M,k]);const V=v.useMemo(()=>b?bf(b):null,[b]);return g.viewport?f.jsxs(f.Fragment,{children:[V&&f.jsx(lP,{__scopeToast:n,role:"status","aria-live":r==="foreground"?"assertive":"polite",children:V}),f.jsx(oP,{scope:n,onClose:N,children:Xo.createPortal(f.jsx(Da.ItemSlot,{scope:n,children:f.jsx(YA,{asChild:!0,onEscapeKeyDown:De(s,()=>{g.isFocusedToastEscapeKeyDownRef.current||N(),g.isFocusedToastEscapeKeyDownRef.current=!1}),children:f.jsx(Ke.li,{tabIndex:0,"data-state":a?"open":"closed","data-swipe-direction":g.swipeDirection,...h,ref:x,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:De(e.onKeyDown,O=>{O.key==="Escape"&&(s==null||s(O.nativeEvent),O.nativeEvent.defaultPrevented||(g.isFocusedToastEscapeKeyDownRef.current=!0,N()))}),onPointerDown:De(e.onPointerDown,O=>{O.button===0&&(S.current={x:O.clientX,y:O.clientY})}),onPointerMove:De(e.onPointerMove,O=>{if(!S.current)return;const F=O.clientX-S.current.x,B=O.clientY-S.current.y,Z=!!P.current,X=["left","right"].includes(g.swipeDirection),K=["left","up"].includes(g.swipeDirection)?Math.min:Math.max,w=X?K(0,F):0,se=X?0:K(0,B),Ee=O.pointerType==="touch"?10:2,z={x:w,y:se},Me={originalEvent:O,delta:z};Z?(P.current=z,Vr(nP,d,Me,{discrete:!1})):Gl(z,g.swipeDirection,Ee)?(P.current=z,Vr(tP,c,Me,{discrete:!1}),O.target.setPointerCapture(O.pointerId)):(Math.abs(F)>Ee||Math.abs(B)>Ee)&&(S.current=null)}),onPointerUp:De(e.onPointerUp,O=>{const F=P.current,B=O.target;if(B.hasPointerCapture(O.pointerId)&&B.releasePointerCapture(O.pointerId),P.current=null,S.current=null,F){const Z=O.currentTarget,X={originalEvent:O,delta:F};Gl(F,g.swipeDirection,g.swipeThreshold)?Vr(iP,m,X,{discrete:!0}):Vr(rP,p,X,{discrete:!0}),Z.addEventListener("click",K=>K.preventDefault(),{once:!0})}})})})}),g.viewport)})]}):null}),lP=e=>{const{__scopeToast:t,children:n,...r}=e,i=Ti(Cr,t),[a,o]=v.useState(!1),[s,l]=v.useState(!1);return dP(()=>o(!0)),v.useEffect(()=>{const u=window.setTimeout(()=>l(!0),1e3);return()=>window.clearTimeout(u)},[]),s?null:f.jsx(Zd,{asChild:!0,children:f.jsx(Ei,{...r,children:a&&f.jsxs(f.Fragment,{children:[i.label," ",n]})})})},uP="ToastTitle",df=v.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return f.jsx(Ke.div,{...r,ref:t})});df.displayName=uP;var cP="ToastDescription",ff=v.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e;return f.jsx(Ke.div,{...r,ref:t})});ff.displayName=cP;var mf="ToastAction",pf=v.forwardRef((e,t)=>{const{altText:n,...r}=e;return n.trim()?f.jsx(gf,{altText:n,asChild:!0,children:f.jsx(Ra,{...r,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${mf}\`. Expected non-empty \`string\`.`),null)});pf.displayName=mf;var hf="ToastClose",Ra=v.forwardRef((e,t)=>{const{__scopeToast:n,...r}=e,i=aP(hf,n);return f.jsx(gf,{asChild:!0,children:f.jsx(Ke.button,{type:"button",...r,ref:t,onClick:De(e.onClick,i.onClose)})})});Ra.displayName=hf;var gf=v.forwardRef((e,t)=>{const{__scopeToast:n,altText:r,...i}=e;return f.jsx(Ke.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":r||void 0,...i,ref:t})});function bf(e){const t=[];return Array.from(e.childNodes).forEach(r=>{if(r.nodeType===r.TEXT_NODE&&r.textContent&&t.push(r.textContent),fP(r)){const i=r.ariaHidden||r.hidden||r.style.display==="none",a=r.dataset.radixToastAnnounceExclude==="";if(!i)if(a){const o=r.dataset.radixToastAnnounceAlt;o&&t.push(o)}else t.push(...bf(r))}}),t}function Vr(e,t,n,{discrete:r}){const i=n.originalEvent.currentTarget,a=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?Eu(i,a):i.dispatchEvent(a)}var Gl=(e,t,n=0)=>{const r=Math.abs(e.x),i=Math.abs(e.y),a=r>i;return t==="left"||t==="right"?a&&r>n:!a&&i>n};function dP(e=()=>{}){const t=Gt(e);Zt(()=>{let n=0,r=0;return n=window.requestAnimationFrame(()=>r=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(n),window.cancelAnimationFrame(r)}},[t])}function fP(e){return e.nodeType===e.ELEMENT_NODE}function mP(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const i=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||i?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function fo(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}var pP=af,yf=lf,vf=cf,xf=df,wf=ff,kf=pf,Sf=Ra;const hP=pP,Cf=v.forwardRef(({className:e,...t},n)=>f.jsx(yf,{ref:n,className:yt("fixed top-0 z-[10000] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));Cf.displayName=yf.displayName;const gP=Zo("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),zf=v.forwardRef(({className:e,variant:t,...n},r)=>f.jsx(vf,{ref:r,className:yt(gP({variant:t}),e),...n}));zf.displayName=vf.displayName;const bP=v.forwardRef(({className:e,...t},n)=>f.jsx(kf,{ref:n,className:yt("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors group-[.destructive]:border-muted/40 hover:bg-secondary group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 group-[.destructive]:focus:ring-destructive disabled:pointer-events-none disabled:opacity-50",e),...t}));bP.displayName=kf.displayName;const Af=v.forwardRef(({className:e,...t},n)=>f.jsx(Sf,{ref:n,className:yt("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity group-hover:opacity-100 group-[.destructive]:text-red-300 hover:text-foreground group-[.destructive]:hover:text-red-50 focus:opacity-100 focus:outline-none focus:ring-2 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:f.jsx(un,{className:"h-4 w-4"})}));Af.displayName=Sf.displayName;const Ef=v.forwardRef(({className:e,...t},n)=>f.jsx(xf,{ref:n,className:yt("text-sm font-semibold",e),...t}));Ef.displayName=xf.displayName;const Pf=v.forwardRef(({className:e,...t},n)=>f.jsx(wf,{ref:n,className:yt("text-sm opacity-90",e),...t}));Pf.displayName=wf.displayName;function yP(){const{toasts:e}=rh();return f.jsxs(hP,{children:[e.map(function({id:t,title:n,description:r,action:i,...a}){return f.jsxs(zf,{...a,children:[f.jsxs("div",{className:"grid gap-1",children:[n&&f.jsx(Ef,{children:n}),r&&f.jsx(Pf,{children:r})]}),i,f.jsx(Af,{})]},t)}),f.jsx(Cf,{})]})}var vP={grad:.9,turn:360,rad:360/(2*Math.PI)},Xt=function(e){return typeof e=="string"?e.length>0:typeof e=="number"},nt=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=Math.pow(10,t)),Math.round(n*e)/n+0},Pt=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=1),e>n?n:e>t?e:t},jf=function(e){return(e=isFinite(e)?e%360:0)>0?e:e+360},Kl=function(e){return{r:Pt(e.r,0,255),g:Pt(e.g,0,255),b:Pt(e.b,0,255),a:Pt(e.a)}},mo=function(e){return{r:nt(e.r),g:nt(e.g),b:nt(e.b),a:nt(e.a,3)}},xP=/^#([0-9a-f]{3,8})$/i,Jr=function(e){var t=e.toString(16);return t.length<2?"0"+t:t},Nf=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=Math.max(t,n,r),o=a-Math.min(t,n,r),s=o?a===t?(n-r)/o:a===n?2+(r-t)/o:4+(t-n)/o:0;return{h:60*(s<0?s+6:s),s:a?o/a*100:0,v:a/255*100,a:i}},Tf=function(e){var t=e.h,n=e.s,r=e.v,i=e.a;t=t/360*6,n/=100,r/=100;var a=Math.floor(t),o=r*(1-n),s=r*(1-(t-a)*n),l=r*(1-(1-t+a)*n),u=a%6;return{r:255*[r,s,o,o,l,r][u],g:255*[l,r,r,s,o,o][u],b:255*[o,o,l,r,r,s][u],a:i}},Ql=function(e){return{h:jf(e.h),s:Pt(e.s,0,100),l:Pt(e.l,0,100),a:Pt(e.a)}},Yl=function(e){return{h:nt(e.h),s:nt(e.s),l:nt(e.l),a:nt(e.a,3)}},_l=function(e){return Tf((n=(t=e).s,{h:t.h,s:(n*=((r=t.l)<50?r:100-r)/100)>0?2*n/(r+n)*100:0,v:r+n,a:t.a}));var t,n,r},cr=function(e){return{h:(t=Nf(e)).h,s:(i=(200-(n=t.s))*(r=t.v)/100)>0&&i<200?n*r/100/(i<=100?i:200-i)*100:0,l:i/2,a:t.a};var t,n,r,i},wP=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,kP=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,SP=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,CP=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,$l={string:[[function(e){var t=xP.exec(e);return t?(e=t[1]).length<=4?{r:parseInt(e[0]+e[0],16),g:parseInt(e[1]+e[1],16),b:parseInt(e[2]+e[2],16),a:e.length===4?nt(parseInt(e[3]+e[3],16)/255,2):1}:e.length===6||e.length===8?{r:parseInt(e.substr(0,2),16),g:parseInt(e.substr(2,2),16),b:parseInt(e.substr(4,2),16),a:e.length===8?nt(parseInt(e.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(e){var t=SP.exec(e)||CP.exec(e);return t?t[2]!==t[4]||t[4]!==t[6]?null:Kl({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:t[7]===void 0?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(e){var t=wP.exec(e)||kP.exec(e);if(!t)return null;var n,r,i=Ql({h:(n=t[1],r=t[2],r===void 0&&(r="deg"),Number(n)*(vP[r]||1)),s:Number(t[3]),l:Number(t[4]),a:t[5]===void 0?1:Number(t[5])/(t[6]?100:1)});return _l(i)},"hsl"]],object:[[function(e){var t=e.r,n=e.g,r=e.b,i=e.a,a=i===void 0?1:i;return Xt(t)&&Xt(n)&&Xt(r)?Kl({r:Number(t),g:Number(n),b:Number(r),a:Number(a)}):null},"rgb"],[function(e){var t=e.h,n=e.s,r=e.l,i=e.a,a=i===void 0?1:i;if(!Xt(t)||!Xt(n)||!Xt(r))return null;var o=Ql({h:Number(t),s:Number(n),l:Number(r),a:Number(a)});return _l(o)},"hsl"],[function(e){var t=e.h,n=e.s,r=e.v,i=e.a,a=i===void 0?1:i;if(!Xt(t)||!Xt(n)||!Xt(r))return null;var o=function(s){return{h:jf(s.h),s:Pt(s.s,0,100),v:Pt(s.v,0,100),a:Pt(s.a)}}({h:Number(t),s:Number(n),v:Number(r),a:Number(a)});return Tf(o)},"hsv"]]},eu=function(e,t){for(var n=0;n<t.length;n++){var r=t[n][0](e);if(r)return[r,t[n][1]]}return[null,void 0]},zP=function(e){return typeof e=="string"?eu(e.trim(),$l.string):typeof e=="object"&&e!==null?eu(e,$l.object):[null,void 0]},po=function(e,t){var n=cr(e);return{h:n.h,s:Pt(n.s+100*t,0,100),l:n.l,a:n.a}},ho=function(e){return(299*e.r+587*e.g+114*e.b)/1e3/255},tu=function(e,t){var n=cr(e);return{h:n.h,s:n.s,l:Pt(n.l+100*t,0,100),a:n.a}},nu=function(){function e(t){this.parsed=zP(t)[0],this.rgba=this.parsed||{r:0,g:0,b:0,a:1}}return e.prototype.isValid=function(){return this.parsed!==null},e.prototype.brightness=function(){return nt(ho(this.rgba),2)},e.prototype.isDark=function(){return ho(this.rgba)<.5},e.prototype.isLight=function(){return ho(this.rgba)>=.5},e.prototype.toHex=function(){return t=mo(this.rgba),n=t.r,r=t.g,i=t.b,o=(a=t.a)<1?Jr(nt(255*a)):"","#"+Jr(n)+Jr(r)+Jr(i)+o;var t,n,r,i,a,o},e.prototype.toRgb=function(){return mo(this.rgba)},e.prototype.toRgbString=function(){return t=mo(this.rgba),n=t.r,r=t.g,i=t.b,(a=t.a)<1?"rgba("+n+", "+r+", "+i+", "+a+")":"rgb("+n+", "+r+", "+i+")";var t,n,r,i,a},e.prototype.toHsl=function(){return Yl(cr(this.rgba))},e.prototype.toHslString=function(){return t=Yl(cr(this.rgba)),n=t.h,r=t.s,i=t.l,(a=t.a)<1?"hsla("+n+", "+r+"%, "+i+"%, "+a+")":"hsl("+n+", "+r+"%, "+i+"%)";var t,n,r,i,a},e.prototype.toHsv=function(){return t=Nf(this.rgba),{h:nt(t.h),s:nt(t.s),v:nt(t.v),a:nt(t.a,3)};var t},e.prototype.invert=function(){return Lt({r:255-(t=this.rgba).r,g:255-t.g,b:255-t.b,a:t.a});var t},e.prototype.saturate=function(t){return t===void 0&&(t=.1),Lt(po(this.rgba,t))},e.prototype.desaturate=function(t){return t===void 0&&(t=.1),Lt(po(this.rgba,-t))},e.prototype.grayscale=function(){return Lt(po(this.rgba,-1))},e.prototype.lighten=function(t){return t===void 0&&(t=.1),Lt(tu(this.rgba,t))},e.prototype.darken=function(t){return t===void 0&&(t=.1),Lt(tu(this.rgba,-t))},e.prototype.rotate=function(t){return t===void 0&&(t=15),this.hue(this.hue()+t)},e.prototype.alpha=function(t){return typeof t=="number"?Lt({r:(n=this.rgba).r,g:n.g,b:n.b,a:t}):nt(this.rgba.a,3);var n},e.prototype.hue=function(t){var n=cr(this.rgba);return typeof t=="number"?Lt({h:t,s:n.s,l:n.l,a:n.a}):nt(n.h)},e.prototype.isEqual=function(t){return this.toHex()===Lt(t).toHex()},e}(),Lt=function(e){return e instanceof nu?e:new nu(e)};const Mf=2147483645,AP=typeof Le.zIndexBase=="number"?Le.zIndexBase:1e5,EP=e=>typeof e!="number"||!Number.isFinite(e)?AP:Math.max(0,Math.min(Math.round(e),Mf)),If=e=>{if(!e||typeof e!="object")return!1;const t=e,n=r=>r&&typeof r=="object"&&!Array.isArray(r);return n(t.light)||n(t.dark)||n(t.common)},PP=e=>{const t=e.trim();if(!t)return;if(/^\d+(\.\d+)?\s+\d+%?\s+\d+%?(\s*\/\s*[\d.]+%?)?$/.test(t))return t;const n=Lt(t);if(n.isValid()){const r=n.toHsl(),i=Math.round(r.h),a=Math.round(r.s),o=Math.round(r.l),s=`${i} ${a}% ${o}%`;if(typeof r.a=="number"&&r.a<1){const l=Math.round(r.a*1e3)/1e3;return`${s} / ${l}`}return s}return t},jP=e=>{const t=e.trim();return t&&(t.startsWith("--")?t.slice(2):t).replace(/_/g,"-").replace(/([A-Z]+)([A-Z][a-z0-9]+)/g,"$1-$2").replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()||void 0},or=e=>{if(!e||typeof e!="object"||Array.isArray(e))return;const t={};for(const[n,r]of Object.entries(e)){if(typeof r!="string")continue;const i=jP(n);if(!i)continue;const a=PP(r);a&&(t[i]=a)}return Object.keys(t).length>0?t:void 0},NP=e=>{if(!e)return;if(!If(e))return or(e)??void 0;const{common:t,light:n,dark:r,...i}=e,a=or(t),o=or(i),s=a||o?{...a??{},...o??{}}:void 0,l=or(n),u=or(r);if(!s&&!l&&!u)return;const c={};return s&&(c.common=s),l&&(c.light=l),u&&(c.dark=u),c},TP=e=>{if(!e)return{};if(!If(e))return{dark:e,light:e};const t=e,n=t.common??{},r={...n,...t.dark??{}},i={...n,...t.light??{}};return{dark:Object.keys(r).length>0?r:void 0,light:Object.keys(i).length>0?i:void 0}},MP=e=>e==="--glow-primary"||e==="--glow-secondary"||e==="--glow-accent",Df=(e,t,n)=>{const r=t.trim();return!MP(e)||/\//.test(r)?r:/^\d+(\.\d+)?\s+\d+%?\s+\d+%?$/.test(r)?`${r} / ${n}`:r},IP=(e,{dark:t,light:n})=>{const r=(l,u)=>{if(!l)return"";const c=[];for(const[d,p]of Object.entries(l)){const m=d.startsWith("--")?d:`--${d}`,h=Df(m,p,u.defaultGlowAlpha);c.push(` ${m}: ${h};`)}return c.join(`
299
299
  `)},i=r(n,{defaultGlowAlpha:.2}),a=r(n,{defaultGlowAlpha:.3}),o=r(t,{defaultGlowAlpha:.6}),s=[];return i&&s.push(`${e} .light:not(.high-contrast) {
300
300
  ${i}
301
301
  }`),a&&s.push(`${e} .light.high-contrast {
@@ -304,4 +304,4 @@ ${a}
304
304
  ${o}
305
305
  }`),s.join(`
306
306
 
307
- `)};function IP({children:e,fill:t}){const{theme:n}=Cu();return f.jsx("div",{className:`${n==="light"?"light":""} ${t?"h-full min-h-0":""}`,children:e})}function DP({promptId:e="default",apiKey:t,baseUrl:n,theme:r="dark",highContrast:i,tenant:a,config:o,bubbleless:s,registerOpenHandler:l}){var P;const[u,c]=I.useState(!1),d=I.useMemo(()=>`chat-widget-scope-${Math.random().toString(36).slice(2,10)}`,[]),p=typeof s=="boolean"?s:(o==null?void 0:o.bubbleless)??!1,m=I.useMemo(()=>{const j=ic({...o,promptId:(o==null?void 0:o.promptId)??e??"default",apiKey:(o==null?void 0:o.apiKey)??t,baseUrl:(o==null?void 0:o.baseUrl)??n,tenant:(o==null?void 0:o.tenant)??a,theme:(o==null?void 0:o.theme)??r,highContrast:(o==null?void 0:o.highContrast)??i}),C=jP(j.colors);return C?{...j,colors:C}:j},[t,n,o,i,e,a,r]),h=I.useMemo(()=>NP(m.colors),[m.colors]),g=I.useMemo(()=>{if(!h.dark)return;const j={};for(const[C,E]of Object.entries(h.dark)){const R=C.startsWith("--")?C:`--${C}`;j[R]=Df(R,E,.3)}return j},[h.dark]),b=I.useMemo(()=>MP(`.${d}`,h),[d,h]),y=m.dialogLayout==="embedded",x=I.useMemo(()=>AP(m.zIndexBase),[m.zIndexBase]),S=I.useMemo(()=>Math.min(x+1,Mf+1),[x]);return I.useEffect(()=>{ch({apiKey:m.apiKey,baseUrl:m.baseUrl,tenant:m.tenant})},[m.apiKey,m.baseUrl,m.tenant]),I.useEffect(()=>{if(typeof m.highContrast=="boolean")try{localStorage.setItem("klausHighContrast",String(m.highContrast))}catch{}},[m.highContrast]),I.useEffect(()=>{l&&l(()=>c(!0))},[l]),f.jsx(UE,{children:f.jsx(rp,{defaultTheme:m.theme,children:f.jsx(IP,{fill:y,children:f.jsxs("div",{className:y?`chat-widget-scope ${d} h-full min-h-0`:`chat-widget-scope ${d}`,style:g,children:[b?f.jsx("style",{children:b}):null,!p&&f.jsx(rf,{isOpen:u,onClick:()=>c(!0),zIndex:S,assistantName:m.branding.assistantName,callout:m.callout,bubbleIconUrl:m.bubbleIconUrl,bubbleIconSize:m.bubbleIconSize,showChristmasHat:!!((P=m.festive)!=null&&P.christmasHat)}),f.jsx(ka,{isOpen:u,onClose:()=>c(!1),config:m,floatingZIndexBase:x}),f.jsx(bP,{})]})})})})}exports.ChatButton=rf;exports.ChatDialog=ka;exports.ChatWidget=DP;exports.defaultChatConfig=Le;exports.mergeChatConfig=ic;
307
+ `)};function DP({children:e,fill:t}){const{theme:n}=Cu();return f.jsx("div",{className:`${n==="light"?"light":""} ${t?"h-full min-h-0":""}`,children:e})}function RP({promptId:e="default",apiKey:t,baseUrl:n,theme:r="dark",highContrast:i,tenant:a,config:o,bubbleless:s,registerOpenHandler:l}){var P;const[u,c]=I.useState(!1),d=I.useMemo(()=>`chat-widget-scope-${Math.random().toString(36).slice(2,10)}`,[]),p=typeof s=="boolean"?s:(o==null?void 0:o.bubbleless)??!1,m=I.useMemo(()=>{const j=ic({...o,promptId:(o==null?void 0:o.promptId)??e??"default",apiKey:(o==null?void 0:o.apiKey)??t,baseUrl:(o==null?void 0:o.baseUrl)??n,tenant:(o==null?void 0:o.tenant)??a,theme:(o==null?void 0:o.theme)??r,highContrast:(o==null?void 0:o.highContrast)??i}),C=NP(j.colors);return C?{...j,colors:C}:j},[t,n,o,i,e,a,r]),h=I.useMemo(()=>TP(m.colors),[m.colors]),g=I.useMemo(()=>{if(!h.dark)return;const j={};for(const[C,E]of Object.entries(h.dark)){const R=C.startsWith("--")?C:`--${C}`;j[R]=Df(R,E,.3)}return j},[h.dark]),b=I.useMemo(()=>IP(`.${d}`,h),[d,h]),y=m.dialogLayout==="embedded",x=I.useMemo(()=>EP(m.zIndexBase),[m.zIndexBase]),S=I.useMemo(()=>Math.min(x+1,Mf+1),[x]);return I.useEffect(()=>{ch({apiKey:m.apiKey,baseUrl:m.baseUrl,tenant:m.tenant})},[m.apiKey,m.baseUrl,m.tenant]),I.useEffect(()=>{if(typeof m.highContrast=="boolean")try{localStorage.setItem("klausHighContrast",String(m.highContrast))}catch{}},[m.highContrast]),I.useEffect(()=>{l&&l(()=>c(!0))},[l]),f.jsx(XE,{children:f.jsx(rp,{defaultTheme:m.theme,children:f.jsx(DP,{fill:y,children:f.jsxs("div",{className:y?`chat-widget-scope ${d} h-full min-h-0`:`chat-widget-scope ${d}`,style:g,children:[b?f.jsx("style",{children:b}):null,!p&&f.jsx(rf,{isOpen:u,onClick:()=>c(!0),zIndex:S,assistantName:m.branding.assistantName,callout:m.callout,bubbleIconUrl:m.bubbleIconUrl,bubbleIconSize:m.bubbleIconSize,showChristmasHat:!!((P=m.festive)!=null&&P.christmasHat)}),f.jsx(ka,{isOpen:u,onClose:()=>c(!1),config:m,floatingZIndexBase:x}),f.jsx(yP,{})]})})})})}exports.ChatButton=rf;exports.ChatDialog=ka;exports.ChatWidget=RP;exports.defaultChatConfig=Le;exports.mergeChatConfig=ic;