@ainyc/canonry 5.3.1 → 5.4.0

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.
Files changed (36) hide show
  1. package/README.md +14 -15
  2. package/assets/assets/{AuditHistoryPanel-D5cOFMKE.js → AuditHistoryPanel-DNSskBJN.js} +1 -1
  3. package/assets/assets/{BacklinksPage-BiOj8ztV.js → BacklinksPage-COtLVzT8.js} +1 -1
  4. package/assets/assets/{HistoryPage-DDBCwooU.js → HistoryPage-D9e6cGrq.js} +1 -1
  5. package/assets/assets/{MeasurementPropertyPage-CMoU2yA_.js → MeasurementPropertyPage-BSs4ba4N.js} +1 -1
  6. package/assets/assets/ProjectPage-BbpGgwgd.js +8 -0
  7. package/assets/assets/{RunRow-BLBAwIot.js → RunRow-DRjXGgeI.js} +1 -1
  8. package/assets/assets/{RunsPage-BVgBbE1M.js → RunsPage-BXyqLNMQ.js} +1 -1
  9. package/assets/assets/{SettingsPage-DYtN-1_-.js → SettingsPage-DKmzGwx3.js} +1 -1
  10. package/assets/assets/SiteHealthSection-DuSY6jzY.js +4 -0
  11. package/assets/assets/{TrafficPage-D6QT_2hU.js → TrafficPage-Bc9NGm4L.js} +1 -1
  12. package/assets/assets/{TrafficSourceDetailPage-BnLzF82w.js → TrafficSourceDetailPage-Bw8PCVl9.js} +1 -1
  13. package/assets/assets/{extract-error-message-DIzjGZxl.js → extract-error-message-rTGTNN_D.js} +1 -1
  14. package/assets/assets/index-CVK43vax.js +86 -0
  15. package/assets/assets/index-Hmnj0RO5.css +1 -0
  16. package/assets/assets/{react-sigma_core.esm.min-DTbIcdn4.js → react-sigma_core.esm.min-Xwhtf0bv.js} +1 -1
  17. package/assets/assets/{v2-overview-adapter-B_N4ilQV.js → v2-overview-adapter-BgGH6oLq.js} +1 -1
  18. package/assets/assets/vendor-lucide-CBIL4Nkq.js +1 -0
  19. package/assets/index.html +3 -3
  20. package/dist/{chunk-IACO5R7A.js → chunk-2P52FD5B.js} +15 -9
  21. package/dist/{chunk-IOP36L3C.js → chunk-67OM5KEH.js} +21 -6
  22. package/dist/{chunk-C7PITYL3.js → chunk-L3FG66O7.js} +2 -2
  23. package/dist/{chunk-3COTRCK3.js → chunk-P5YYRGFS.js} +2 -2
  24. package/dist/{chunk-TF6HFT3Q.js → chunk-SLOTTXIL.js} +15 -6
  25. package/dist/{chunk-2U5IW3G5.js → chunk-Z6RA7LWY.js} +44 -2
  26. package/dist/cli.js +132 -65
  27. package/dist/{demo-server-TXW3UX3P.js → demo-server-6QU77ZMV.js} +3 -3
  28. package/dist/index.js +5 -5
  29. package/dist/{intelligence-service-H34EOB6K.js → intelligence-service-PHCK6A35.js} +2 -2
  30. package/dist/mcp.js +3 -3
  31. package/package.json +11 -11
  32. package/assets/assets/ProjectPage-CrFybBls.js +0 -8
  33. package/assets/assets/SiteHealthSection-ElUwcAS4.js +0 -4
  34. package/assets/assets/index-CoQVOsWw.js +0 -86
  35. package/assets/assets/index-DCLmKL1s.css +0 -1
  36. package/assets/assets/vendor-lucide-nVpYViBH.js +0 -1
@@ -1,86 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./SiteHealthSection-ElUwcAS4.js","./vendor-tanstack-ZXXkndVj.js","./vendor-lucide-nVpYViBH.js","./ChartPrimitives-Bxa_vFmq.js","./vendor-recharts-D-cUuLZo.js","./ProjectPage-CrFybBls.js","./v2-overview-adapter-B_N4ilQV.js","./vendor-markdown-B-Oq2NYq.js","./RunRow-BLBAwIot.js","./extract-error-message-DIzjGZxl.js","./AuditHistoryPanel-D5cOFMKE.js","./vendor-radix-twS1M3FF.js","./vendor-yaml-GWJz5H2G.js","./RunsPage-BVgBbE1M.js","./HistoryPage-DDBCwooU.js","./SettingsPage-DYtN-1_-.js","./BacklinksPage-BiOj8ztV.js","./TrafficPage-D6QT_2hU.js","./TrafficSourceDetailPage-BnLzF82w.js","./MeasurementPropertyPage-CMoU2yA_.js"])))=>i.map(i=>d[i]);
2
- import{c as M4,d as I4,r as T,j as c,Q as V4,M as L4,q as pe,e as Dl,L as tt,a as U4,t as Io,u as Et,f as G4,h as da,k as Hs,l as Dx,m as $4,n as Ox,O as hh,o as ns,p as K4,s as St,v as qx,x as as,y as H4,z as Q4,A as F4}from"./vendor-tanstack-ZXXkndVj.js";import{S as Z4,O as Zh,P as Bx,C as Yh,a as Px,T as Xh,D as Mx,R as Ix}from"./vendor-radix-twS1M3FF.js";import{c as Vx}from"./vendor-recharts-D-cUuLZo.js";import{A as Y4,X as sr,S as X4,a as J4,G as Lx,C as Xu,L as Zo,R as du,b as Ux,M as W4,c as eA,d as tA,e as Jh,T as Gx,W as nA,f as Wh,g as $x,h as aA,i as iA,P as sA,H as oA,j as rA,k as lA,l as cA,m as uA,B as dA,F as mA,n as pA,o as hA,p as fA,q as sb,E as gA}from"./vendor-lucide-nVpYViBH.js";import{M as yA}from"./vendor-markdown-B-Oq2NYq.js";import{p as bA}from"./vendor-yaml-GWJz5H2G.js";(function(){const a=document.createElement("link").relList;if(a&&a.supports&&a.supports("modulepreload"))return;for(const u of document.querySelectorAll('link[rel="modulepreload"]'))r(u);new MutationObserver(u=>{for(const f of u)if(f.type==="childList")for(const g of f.addedNodes)g.tagName==="LINK"&&g.rel==="modulepreload"&&r(g)}).observe(document,{childList:!0,subtree:!0});function s(u){const f={};return u.integrity&&(f.integrity=u.integrity),u.referrerPolicy&&(f.referrerPolicy=u.referrerPolicy),u.crossOrigin==="use-credentials"?f.credentials="include":u.crossOrigin==="anonymous"?f.credentials="omit":f.credentials="same-origin",f}function r(u){if(u.ep)return;u.ep=!0;const f=s(u);fetch(u.href,f)}})();var Mp={exports:{}},dl={},Ip={exports:{}},Vp={};var ob;function vA(){return ob||(ob=1,(function(e){function a(P,ae){var he=P.length;P.push(ae);e:for(;0<he;){var je=he-1>>>1,X=P[je];if(0<u(X,ae))P[je]=ae,P[he]=X,he=je;else break e}}function s(P){return P.length===0?null:P[0]}function r(P){if(P.length===0)return null;var ae=P[0],he=P.pop();if(he!==ae){P[0]=he;e:for(var je=0,X=P.length,Ie=X>>>1;je<Ie;){var Ne=2*(je+1)-1,Ae=P[Ne],ne=Ne+1,V=P[ne];if(0>u(Ae,he))ne<X&&0>u(V,Ae)?(P[je]=V,P[ne]=he,je=ne):(P[je]=Ae,P[Ne]=he,je=Ne);else if(ne<X&&0>u(V,he))P[je]=V,P[ne]=he,je=ne;else break e}}return ae}function u(P,ae){var he=P.sortIndex-ae.sortIndex;return he!==0?he:P.id-ae.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var f=performance;e.unstable_now=function(){return f.now()}}else{var g=Date,b=g.now();e.unstable_now=function(){return g.now()-b}}var v=[],k=[],S=1,A=null,N=3,E=!1,Z=!1,_=!1,G=!1,K=typeof setTimeout=="function"?setTimeout:null,te=typeof clearTimeout=="function"?clearTimeout:null,Q=typeof setImmediate<"u"?setImmediate:null;function re(P){for(var ae=s(k);ae!==null;){if(ae.callback===null)r(k);else if(ae.startTime<=P)r(k),ae.sortIndex=ae.expirationTime,a(v,ae);else break;ae=s(k)}}function W(P){if(_=!1,re(P),!Z)if(s(v)!==null)Z=!0,oe||(oe=!0,Re());else{var ae=s(k);ae!==null&&be(W,ae.startTime-P)}}var oe=!1,H=-1,$=5,Te=-1;function Ke(){return G?!0:!(e.unstable_now()-Te<$)}function Fe(){if(G=!1,oe){var P=e.unstable_now();Te=P;var ae=!0;try{e:{Z=!1,_&&(_=!1,te(H),H=-1),E=!0;var he=N;try{t:{for(re(P),A=s(v);A!==null&&!(A.expirationTime>P&&Ke());){var je=A.callback;if(typeof je=="function"){A.callback=null,N=A.priorityLevel;var X=je(A.expirationTime<=P);if(P=e.unstable_now(),typeof X=="function"){A.callback=X,re(P),ae=!0;break t}A===s(v)&&r(v),re(P)}else r(v);A=s(v)}if(A!==null)ae=!0;else{var Ie=s(k);Ie!==null&&be(W,Ie.startTime-P),ae=!1}}break e}finally{A=null,N=he,E=!1}ae=void 0}}finally{ae?Re():oe=!1}}}var Re;if(typeof Q=="function")Re=function(){Q(Fe)};else if(typeof MessageChannel<"u"){var ve=new MessageChannel,Ue=ve.port2;ve.port1.onmessage=Fe,Re=function(){Ue.postMessage(null)}}else Re=function(){K(Fe,0)};function be(P,ae){H=K(function(){P(e.unstable_now())},ae)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(P){P.callback=null},e.unstable_forceFrameRate=function(P){0>P||125<P?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):$=0<P?Math.floor(1e3/P):5},e.unstable_getCurrentPriorityLevel=function(){return N},e.unstable_next=function(P){switch(N){case 1:case 2:case 3:var ae=3;break;default:ae=N}var he=N;N=ae;try{return P()}finally{N=he}},e.unstable_requestPaint=function(){G=!0},e.unstable_runWithPriority=function(P,ae){switch(P){case 1:case 2:case 3:case 4:case 5:break;default:P=3}var he=N;N=P;try{return ae()}finally{N=he}},e.unstable_scheduleCallback=function(P,ae,he){var je=e.unstable_now();switch(typeof he=="object"&&he!==null?(he=he.delay,he=typeof he=="number"&&0<he?je+he:je):he=je,P){case 1:var X=-1;break;case 2:X=250;break;case 5:X=1073741823;break;case 4:X=1e4;break;default:X=5e3}return X=he+X,P={id:S++,callback:ae,priorityLevel:P,startTime:he,expirationTime:X,sortIndex:-1},he>je?(P.sortIndex=he,a(k,P),s(v)===null&&P===s(k)&&(_?(te(H),H=-1):_=!0,be(W,he-je))):(P.sortIndex=X,a(v,P),Z||E||(Z=!0,oe||(oe=!0,Re()))),P},e.unstable_shouldYield=Ke,e.unstable_wrapCallback=function(P){var ae=N;return function(){var he=N;N=ae;try{return P.apply(this,arguments)}finally{N=he}}}})(Vp)),Vp}var rb;function xA(){return rb||(rb=1,Ip.exports=vA()),Ip.exports}var lb;function kA(){if(lb)return dl;lb=1;var e=xA(),a=M4(),s=I4();function r(t){var n="https://react.dev/errors/"+t;if(1<arguments.length){n+="?args[]="+encodeURIComponent(arguments[1]);for(var i=2;i<arguments.length;i++)n+="&args[]="+encodeURIComponent(arguments[i])}return"Minified React error #"+t+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function u(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function f(t){var n=t,i=t;if(t.alternate)for(;n.return;)n=n.return;else{t=n;do n=t,(n.flags&4098)!==0&&(i=n.return),t=n.return;while(t)}return n.tag===3?i:null}function g(t){if(t.tag===13){var n=t.memoizedState;if(n===null&&(t=t.alternate,t!==null&&(n=t.memoizedState)),n!==null)return n.dehydrated}return null}function b(t){if(t.tag===31){var n=t.memoizedState;if(n===null&&(t=t.alternate,t!==null&&(n=t.memoizedState)),n!==null)return n.dehydrated}return null}function v(t){if(f(t)!==t)throw Error(r(188))}function k(t){var n=t.alternate;if(!n){if(n=f(t),n===null)throw Error(r(188));return n!==t?null:t}for(var i=t,l=n;;){var p=i.return;if(p===null)break;var h=p.alternate;if(h===null){if(l=p.return,l!==null){i=l;continue}break}if(p.child===h.child){for(h=p.child;h;){if(h===i)return v(p),t;if(h===l)return v(p),n;h=h.sibling}throw Error(r(188))}if(i.return!==l.return)i=p,l=h;else{for(var x=!1,w=p.child;w;){if(w===i){x=!0,i=p,l=h;break}if(w===l){x=!0,l=p,i=h;break}w=w.sibling}if(!x){for(w=h.child;w;){if(w===i){x=!0,i=h,l=p;break}if(w===l){x=!0,l=h,i=p;break}w=w.sibling}if(!x)throw Error(r(189))}}if(i.alternate!==l)throw Error(r(190))}if(i.tag!==3)throw Error(r(188));return i.stateNode.current===i?t:n}function S(t){var n=t.tag;if(n===5||n===26||n===27||n===6)return t;for(t=t.child;t!==null;){if(n=S(t),n!==null)return n;t=t.sibling}return null}var A=Object.assign,N=Symbol.for("react.element"),E=Symbol.for("react.transitional.element"),Z=Symbol.for("react.portal"),_=Symbol.for("react.fragment"),G=Symbol.for("react.strict_mode"),K=Symbol.for("react.profiler"),te=Symbol.for("react.consumer"),Q=Symbol.for("react.context"),re=Symbol.for("react.forward_ref"),W=Symbol.for("react.suspense"),oe=Symbol.for("react.suspense_list"),H=Symbol.for("react.memo"),$=Symbol.for("react.lazy"),Te=Symbol.for("react.activity"),Ke=Symbol.for("react.memo_cache_sentinel"),Fe=Symbol.iterator;function Re(t){return t===null||typeof t!="object"?null:(t=Fe&&t[Fe]||t["@@iterator"],typeof t=="function"?t:null)}var ve=Symbol.for("react.client.reference");function Ue(t){if(t==null)return null;if(typeof t=="function")return t.$$typeof===ve?null:t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case _:return"Fragment";case K:return"Profiler";case G:return"StrictMode";case W:return"Suspense";case oe:return"SuspenseList";case Te:return"Activity"}if(typeof t=="object")switch(t.$$typeof){case Z:return"Portal";case Q:return t.displayName||"Context";case te:return(t._context.displayName||"Context")+".Consumer";case re:var n=t.render;return t=t.displayName,t||(t=n.displayName||n.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case H:return n=t.displayName||null,n!==null?n:Ue(t.type)||"Memo";case $:n=t._payload,t=t._init;try{return Ue(t(n))}catch{}}return null}var be=Array.isArray,P=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ae=s.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,he={pending:!1,data:null,method:null,action:null},je=[],X=-1;function Ie(t){return{current:t}}function Ne(t){0>X||(t.current=je[X],je[X]=null,X--)}function Ae(t,n){X++,je[X]=t.current,t.current=n}var ne=Ie(null),V=Ie(null),q=Ie(null),le=Ie(null);function De(t,n){switch(Ae(q,n),Ae(V,t),Ae(ne,null),n.nodeType){case 9:case 11:t=(t=n.documentElement)&&(t=t.namespaceURI)?_y(t):0;break;default:if(t=n.tagName,n=n.namespaceURI)n=_y(n),t=zy(n,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Ne(ne),Ae(ne,t)}function ye(){Ne(ne),Ne(V),Ne(q)}function Je(t){t.memoizedState!==null&&Ae(le,t);var n=ne.current,i=zy(n,t.type);n!==i&&(Ae(V,t),Ae(ne,i))}function Ge(t){V.current===t&&(Ne(ne),Ne(V)),le.current===t&&(Ne(le),rl._currentValue=he)}var Be,de;function Me(t){if(Be===void 0)try{throw Error()}catch(i){var n=i.stack.trim().match(/\n( *(at )?)/);Be=n&&n[1]||"",de=-1<i.stack.indexOf(`
3
- at`)?" (<anonymous>)":-1<i.stack.indexOf("@")?"@unknown:0:0":""}return`
4
- `+Be+t+de}var $t=!1;function Sn(t,n){if(!t||$t)return"";$t=!0;var i=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var l={DetermineComponentFrameRoot:function(){try{if(n){var ie=function(){throw Error()};if(Object.defineProperty(ie.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ie,[])}catch(F){var L=F}Reflect.construct(t,[],ie)}else{try{ie.call()}catch(F){L=F}t.call(ie.prototype)}}else{try{throw Error()}catch(F){L=F}(ie=t())&&typeof ie.catch=="function"&&ie.catch(function(){})}}catch(F){if(F&&L&&typeof F.stack=="string")return[F.stack,L.stack]}return[null,null]}};l.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var p=Object.getOwnPropertyDescriptor(l.DetermineComponentFrameRoot,"name");p&&p.configurable&&Object.defineProperty(l.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var h=l.DetermineComponentFrameRoot(),x=h[0],w=h[1];if(x&&w){var z=x.split(`
5
- `),I=w.split(`
6
- `);for(p=l=0;l<z.length&&!z[l].includes("DetermineComponentFrameRoot");)l++;for(;p<I.length&&!I[p].includes("DetermineComponentFrameRoot");)p++;if(l===z.length||p===I.length)for(l=z.length-1,p=I.length-1;1<=l&&0<=p&&z[l]!==I[p];)p--;for(;1<=l&&0<=p;l--,p--)if(z[l]!==I[p]){if(l!==1||p!==1)do if(l--,p--,0>p||z[l]!==I[p]){var Y=`
7
- `+z[l].replace(" at new "," at ");return t.displayName&&Y.includes("<anonymous>")&&(Y=Y.replace("<anonymous>",t.displayName)),Y}while(1<=l&&0<=p);break}}}finally{$t=!1,Error.prepareStackTrace=i}return(i=t?t.displayName||t.name:"")?Me(i):""}function ga(t,n){switch(t.tag){case 26:case 27:case 5:return Me(t.type);case 16:return Me("Lazy");case 13:return t.child!==n&&n!==null?Me("Suspense Fallback"):Me("Suspense");case 19:return Me("SuspenseList");case 0:case 15:return Sn(t.type,!1);case 11:return Sn(t.type.render,!1);case 1:return Sn(t.type,!0);case 31:return Me("Activity");default:return""}}function ln(t){try{var n="",i=null;do n+=ga(t,i),i=t,t=t.return;while(t);return n}catch(l){return`
8
- Error generating stack: `+l.message+`
9
- `+l.stack}}var Ve=Object.prototype.hasOwnProperty,ut=e.unstable_scheduleCallback,Jt=e.unstable_cancelCallback,us=e.unstable_shouldYield,Hl=e.unstable_requestPaint,cn=e.unstable_now,Ql=e.unstable_getCurrentPriorityLevel,gr=e.unstable_ImmediatePriority,Fl=e.unstable_UserBlockingPriority,Js=e.unstable_NormalPriority,Zl=e.unstable_LowPriority,Xn=e.unstable_IdlePriority,Pn=e.log,Rd=e.unstable_setDisableYieldValue,ds=null,Wt=null;function un(t){if(typeof Pn=="function"&&Rd(t),Wt&&typeof Wt.setStrictMode=="function")try{Wt.setStrictMode(ds,t)}catch{}}var Rt=Math.clz32?Math.clz32:Ws,Yl=Math.log,yr=Math.LN2;function Ws(t){return t>>>=0,t===0?32:31-(Yl(t)/yr|0)|0}var Ka=256,Kt=262144,bi=4194304;function jn(t){var n=t&42;if(n!==0)return n;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Ha(t,n,i){var l=t.pendingLanes;if(l===0)return 0;var p=0,h=t.suspendedLanes,x=t.pingedLanes;t=t.warmLanes;var w=l&134217727;return w!==0?(l=w&~h,l!==0?p=jn(l):(x&=w,x!==0?p=jn(x):i||(i=w&~t,i!==0&&(p=jn(i))))):(w=l&~h,w!==0?p=jn(w):x!==0?p=jn(x):i||(i=l&~t,i!==0&&(p=jn(i)))),p===0?0:n!==0&&n!==p&&(n&h)===0&&(h=p&-p,i=n&-n,h>=i||h===32&&(i&4194048)!==0)?n:p}function vi(t,n){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&n)===0}function Dd(t,n){switch(t){case 1:case 2:case 4:case 8:case 64:return n+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function br(){var t=bi;return bi<<=1,(bi&62914560)===0&&(bi=4194304),t}function eo(t){for(var n=[],i=0;31>i;i++)n.push(t);return n}function xi(t,n){t.pendingLanes|=n,n!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function Xl(t,n,i,l,p,h){var x=t.pendingLanes;t.pendingLanes=i,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=i,t.entangledLanes&=i,t.errorRecoveryDisabledLanes&=i,t.shellSuspendCounter=0;var w=t.entanglements,z=t.expirationTimes,I=t.hiddenUpdates;for(i=x&~i;0<i;){var Y=31-Rt(i),ie=1<<Y;w[Y]=0,z[Y]=-1;var L=I[Y];if(L!==null)for(I[Y]=null,Y=0;Y<L.length;Y++){var F=L[Y];F!==null&&(F.lane&=-536870913)}i&=~ie}l!==0&&Jl(t,l,0),h!==0&&p===0&&t.tag!==0&&(t.suspendedLanes|=h&~(x&~n))}function Jl(t,n,i){t.pendingLanes|=n,t.suspendedLanes&=~n;var l=31-Rt(n);t.entangledLanes|=n,t.entanglements[l]=t.entanglements[l]|1073741824|i&261930}function Wl(t,n){var i=t.entangledLanes|=n;for(t=t.entanglements;i;){var l=31-Rt(i),p=1<<l;p&n|t[l]&n&&(t[l]|=n),i&=~p}}function to(t,n){var i=n&-n;return i=(i&42)!==0?1:vr(i),(i&(t.suspendedLanes|n))!==0?0:i}function vr(t){switch(t){case 2:t=1;break;case 8:t=4;break;case 32:t=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:t=128;break;case 268435456:t=134217728;break;default:t=0}return t}function ms(t){return t&=-t,2<t?8<t?(t&134217727)!==0?32:268435456:8:2}function xr(){var t=ae.p;return t!==0?t:(t=window.event,t===void 0?32:Jy(t.type))}function ec(t,n){var i=ae.p;try{return ae.p=t,n()}finally{ae.p=i}}var Ta=Math.random().toString(36).slice(2),Mt="__reactFiber$"+Ta,en="__reactProps$"+Ta,ya="__reactContainer$"+Ta,An="__reactEvents$"+Ta,tc="__reactListeners$"+Ta,Od="__reactHandles$"+Ta,kr="__reactResources$"+Ta,ps="__reactMarker$"+Ta;function no(t){delete t[Mt],delete t[en],delete t[An],delete t[tc],delete t[Od]}function ki(t){var n=t[Mt];if(n)return n;for(var i=t.parentNode;i;){if(n=i[ya]||i[Mt]){if(i=n.alternate,n.child!==null||i!==null&&i.child!==null)for(t=By(t);t!==null;){if(i=t[Mt])return i;t=By(t)}return n}t=i,i=t.parentNode}return null}function Qa(t){if(t=t[Mt]||t[ya]){var n=t.tag;if(n===5||n===6||n===13||n===31||n===26||n===27||n===3)return t}return null}function wi(t){var n=t.tag;if(n===5||n===26||n===27||n===6)return t.stateNode;throw Error(r(33))}function Fa(t){var n=t[kr];return n||(n=t[kr]={hoistableStyles:new Map,hoistableScripts:new Map}),n}function qt(t){t[ps]=!0}var qd=new Set,ao={};function Ra(t,n){Cn(t,n),Cn(t+"Capture",n)}function Cn(t,n){for(ao[t]=n,t=0;t<n.length;t++)qd.add(n[t])}var Bd=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),hs={},wr={};function Za(t){return Ve.call(wr,t)?!0:Ve.call(hs,t)?!1:Bd.test(t)?wr[t]=!0:(hs[t]=!0,!1)}function Si(t,n,i){if(Za(n))if(i===null)t.removeAttribute(n);else{switch(typeof i){case"undefined":case"function":case"symbol":t.removeAttribute(n);return;case"boolean":var l=n.toLowerCase().slice(0,5);if(l!=="data-"&&l!=="aria-"){t.removeAttribute(n);return}}t.setAttribute(n,""+i)}}function Da(t,n,i){if(i===null)t.removeAttribute(n);else{switch(typeof i){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(n);return}t.setAttribute(n,""+i)}}function ba(t,n,i,l){if(l===null)t.removeAttribute(i);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":t.removeAttribute(i);return}t.setAttributeNS(n,i,""+l)}}function Nn(t){switch(typeof t){case"bigint":case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function Oa(t){var n=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function Sr(t,n,i){var l=Object.getOwnPropertyDescriptor(t.constructor.prototype,n);if(!t.hasOwnProperty(n)&&typeof l<"u"&&typeof l.get=="function"&&typeof l.set=="function"){var p=l.get,h=l.set;return Object.defineProperty(t,n,{configurable:!0,get:function(){return p.call(this)},set:function(x){i=""+x,h.call(this,x)}}),Object.defineProperty(t,n,{enumerable:l.enumerable}),{getValue:function(){return i},setValue:function(x){i=""+x},stopTracking:function(){t._valueTracker=null,delete t[n]}}}}function io(t){if(!t._valueTracker){var n=Oa(t)?"checked":"value";t._valueTracker=Sr(t,n,""+t[n])}}function so(t){if(!t)return!1;var n=t._valueTracker;if(!n)return!0;var i=n.getValue(),l="";return t&&(l=Oa(t)?t.checked?"true":"false":t.value),t=l,t!==i?(n.setValue(t),!0):!1}function fs(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var nc=/[\n"\\]/g;function gn(t){return t.replace(nc,function(n){return"\\"+n.charCodeAt(0).toString(16)+" "})}function va(t,n,i,l,p,h,x,w){t.name="",x!=null&&typeof x!="function"&&typeof x!="symbol"&&typeof x!="boolean"?t.type=x:t.removeAttribute("type"),n!=null?x==="number"?(n===0&&t.value===""||t.value!=n)&&(t.value=""+Nn(n)):t.value!==""+Nn(n)&&(t.value=""+Nn(n)):x!=="submit"&&x!=="reset"||t.removeAttribute("value"),n!=null?qa(t,x,Nn(n)):i!=null?qa(t,x,Nn(i)):l!=null&&t.removeAttribute("value"),p==null&&h!=null&&(t.defaultChecked=!!h),p!=null&&(t.checked=p&&typeof p!="function"&&typeof p!="symbol"),w!=null&&typeof w!="function"&&typeof w!="symbol"&&typeof w!="boolean"?t.name=""+Nn(w):t.removeAttribute("name")}function Mn(t,n,i,l,p,h,x,w){if(h!=null&&typeof h!="function"&&typeof h!="symbol"&&typeof h!="boolean"&&(t.type=h),n!=null||i!=null){if(!(h!=="submit"&&h!=="reset"||n!=null)){io(t);return}i=i!=null?""+Nn(i):"",n=n!=null?""+Nn(n):i,w||n===t.value||(t.value=n),t.defaultValue=n}l=l??p,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=w?t.checked:!!l,t.defaultChecked=!!l,x!=null&&typeof x!="function"&&typeof x!="symbol"&&typeof x!="boolean"&&(t.name=x),io(t)}function qa(t,n,i){n==="number"&&fs(t.ownerDocument)===t||t.defaultValue===""+i||(t.defaultValue=""+i)}function Jn(t,n,i,l){if(t=t.options,n){n={};for(var p=0;p<i.length;p++)n["$"+i[p]]=!0;for(i=0;i<t.length;i++)p=n.hasOwnProperty("$"+t[i].value),t[i].selected!==p&&(t[i].selected=p),p&&l&&(t[i].defaultSelected=!0)}else{for(i=""+Nn(i),n=null,p=0;p<t.length;p++){if(t[p].value===i){t[p].selected=!0,l&&(t[p].defaultSelected=!0);return}n!==null||t[p].disabled||(n=t[p])}n!==null&&(n.selected=!0)}}function In(t,n,i){if(n!=null&&(n=""+Nn(n),n!==t.value&&(t.value=n),i==null)){t.defaultValue!==n&&(t.defaultValue=n);return}t.defaultValue=i!=null?""+Nn(i):""}function Pd(t,n,i,l){if(n==null){if(l!=null){if(i!=null)throw Error(r(92));if(be(l)){if(1<l.length)throw Error(r(93));l=l[0]}i=l}i==null&&(i=""),n=i}i=Nn(n),t.defaultValue=i,l=t.textContent,l===i&&l!==""&&l!==null&&(t.value=l),io(t)}function _n(t,n){if(n){var i=t.firstChild;if(i&&i===t.lastChild&&i.nodeType===3){i.nodeValue=n;return}}t.textContent=n}var Ya=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function gs(t,n,i){var l=n.indexOf("--")===0;i==null||typeof i=="boolean"||i===""?l?t.setProperty(n,""):n==="float"?t.cssFloat="":t[n]="":l?t.setProperty(n,i):typeof i!="number"||i===0||Ya.has(n)?n==="float"?t.cssFloat=i:t[n]=(""+i).trim():t[n]=i+"px"}function ac(t,n,i){if(n!=null&&typeof n!="object")throw Error(r(62));if(t=t.style,i!=null){for(var l in i)!i.hasOwnProperty(l)||n!=null&&n.hasOwnProperty(l)||(l.indexOf("--")===0?t.setProperty(l,""):l==="float"?t.cssFloat="":t[l]="");for(var p in n)l=n[p],n.hasOwnProperty(p)&&i[p]!==l&&gs(t,p,l)}else for(var h in n)n.hasOwnProperty(h)&&gs(t,h,n[h])}function jr(t){if(t.indexOf("-")===-1)return!1;switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Md=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["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"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["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"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["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"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),Id=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function oo(t){return Id.test(""+t)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":t}function Wn(){}var ea=null;function ys(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var ji=null,Ai=null;function ic(t){var n=Qa(t);if(n&&(t=n.stateNode)){var i=t[en]||null;e:switch(t=n.stateNode,n.type){case"input":if(va(t,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name),n=i.name,i.type==="radio"&&n!=null){for(i=t;i.parentNode;)i=i.parentNode;for(i=i.querySelectorAll('input[name="'+gn(""+n)+'"][type="radio"]'),n=0;n<i.length;n++){var l=i[n];if(l!==t&&l.form===t.form){var p=l[en]||null;if(!p)throw Error(r(90));va(l,p.value,p.defaultValue,p.defaultValue,p.checked,p.defaultChecked,p.type,p.name)}}for(n=0;n<i.length;n++)l=i[n],l.form===t.form&&so(l)}break e;case"textarea":In(t,i.value,i.defaultValue);break e;case"select":n=i.value,n!=null&&Jn(t,!!i.multiple,n,!1)}}}var ro=!1;function sc(t,n,i){if(ro)return t(n,i);ro=!0;try{var l=t(n);return l}finally{if(ro=!1,(ji!==null||Ai!==null)&&(Gc(),ji&&(n=ji,t=Ai,Ai=ji=null,ic(n),t)))for(n=0;n<t.length;n++)ic(t[n])}}function bs(t,n){var i=t.stateNode;if(i===null)return null;var l=i[en]||null;if(l===null)return null;i=l[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(l=!l.disabled)||(t=t.type,l=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!l;break e;default:t=!1}if(t)return null;if(i&&typeof i!="function")throw Error(r(231,n,typeof i));return i}var xa=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),U=!1;if(xa)try{var Pe={};Object.defineProperty(Pe,"passive",{get:function(){U=!0}}),window.addEventListener("test",Pe,Pe),window.removeEventListener("test",Pe,Pe)}catch{U=!1}var yn=null,Ba=null,lo=null;function oc(){if(lo)return lo;var t,n=Ba,i=n.length,l,p="value"in yn?yn.value:yn.textContent,h=p.length;for(t=0;t<i&&n[t]===p[t];t++);var x=i-t;for(l=1;l<=x&&n[i-l]===p[h-l];l++);return lo=p.slice(t,1<l?1-l:void 0)}function vs(t){var n=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&n===13&&(t=13)):t=n,t===10&&(t=13),32<=t||t===13?t:0}function xs(){return!0}function Ar(){return!1}function dn(t){function n(i,l,p,h,x){this._reactName=i,this._targetInst=p,this.type=l,this.nativeEvent=h,this.target=x,this.currentTarget=null;for(var w in t)t.hasOwnProperty(w)&&(i=t[w],this[w]=i?i(h):h[w]);return this.isDefaultPrevented=(h.defaultPrevented!=null?h.defaultPrevented:h.returnValue===!1)?xs:Ar,this.isPropagationStopped=Ar,this}return A(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var i=this.nativeEvent;i&&(i.preventDefault?i.preventDefault():typeof i.returnValue!="unknown"&&(i.returnValue=!1),this.isDefaultPrevented=xs)},stopPropagation:function(){var i=this.nativeEvent;i&&(i.stopPropagation?i.stopPropagation():typeof i.cancelBubble!="unknown"&&(i.cancelBubble=!0),this.isPropagationStopped=xs)},persist:function(){},isPersistent:xs}),n}var Vn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},ta=dn(Vn),Cr=A({},Vn,{view:0,detail:0}),B3=dn(Cr),Vd,Ld,Nr,rc=A({},Cr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Gd,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==Nr&&(Nr&&t.type==="mousemove"?(Vd=t.screenX-Nr.screenX,Ld=t.screenY-Nr.screenY):Ld=Vd=0,Nr=t),Vd)},movementY:function(t){return"movementY"in t?t.movementY:Ld}}),Tf=dn(rc),P3=A({},rc,{dataTransfer:0}),M3=dn(P3),I3=A({},Cr,{relatedTarget:0}),Ud=dn(I3),V3=A({},Vn,{animationName:0,elapsedTime:0,pseudoElement:0}),L3=dn(V3),U3=A({},Vn,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),G3=dn(U3),$3=A({},Vn,{data:0}),Rf=dn($3),K3={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},H3={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Q3={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function F3(t){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(t):(t=Q3[t])?!!n[t]:!1}function Gd(){return F3}var Z3=A({},Cr,{key:function(t){if(t.key){var n=K3[t.key]||t.key;if(n!=="Unidentified")return n}return t.type==="keypress"?(t=vs(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?H3[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Gd,charCode:function(t){return t.type==="keypress"?vs(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?vs(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),Y3=dn(Z3),X3=A({},rc,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Df=dn(X3),J3=A({},Cr,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Gd}),W3=dn(J3),ej=A({},Vn,{propertyName:0,elapsedTime:0,pseudoElement:0}),tj=dn(ej),nj=A({},rc,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),aj=dn(nj),ij=A({},Vn,{newState:0,oldState:0}),sj=dn(ij),oj=[9,13,27,32],$d=xa&&"CompositionEvent"in window,_r=null;xa&&"documentMode"in document&&(_r=document.documentMode);var rj=xa&&"TextEvent"in window&&!_r,Of=xa&&(!$d||_r&&8<_r&&11>=_r),qf=" ",Bf=!1;function Pf(t,n){switch(t){case"keyup":return oj.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Mf(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var co=!1;function lj(t,n){switch(t){case"compositionend":return Mf(n);case"keypress":return n.which!==32?null:(Bf=!0,qf);case"textInput":return t=n.data,t===qf&&Bf?null:t;default:return null}}function cj(t,n){if(co)return t==="compositionend"||!$d&&Pf(t,n)?(t=oc(),lo=Ba=yn=null,co=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return Of&&n.locale!=="ko"?null:n.data;default:return null}}var uj={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function If(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n==="input"?!!uj[t.type]:n==="textarea"}function Vf(t,n,i,l){ji?Ai?Ai.push(l):Ai=[l]:ji=l,n=Yc(n,"onChange"),0<n.length&&(i=new ta("onChange","change",null,i,l),t.push({event:i,listeners:n}))}var zr=null,Er=null;function dj(t){wy(t,0)}function lc(t){var n=wi(t);if(so(n))return t}function Lf(t,n){if(t==="change")return n}var Uf=!1;if(xa){var Kd;if(xa){var Hd="oninput"in document;if(!Hd){var Gf=document.createElement("div");Gf.setAttribute("oninput","return;"),Hd=typeof Gf.oninput=="function"}Kd=Hd}else Kd=!1;Uf=Kd&&(!document.documentMode||9<document.documentMode)}function $f(){zr&&(zr.detachEvent("onpropertychange",Kf),Er=zr=null)}function Kf(t){if(t.propertyName==="value"&&lc(Er)){var n=[];Vf(n,Er,t,ys(t)),sc(dj,n)}}function mj(t,n,i){t==="focusin"?($f(),zr=n,Er=i,zr.attachEvent("onpropertychange",Kf)):t==="focusout"&&$f()}function pj(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return lc(Er)}function hj(t,n){if(t==="click")return lc(n)}function fj(t,n){if(t==="input"||t==="change")return lc(n)}function gj(t,n){return t===n&&(t!==0||1/t===1/n)||t!==t&&n!==n}var Ln=typeof Object.is=="function"?Object.is:gj;function Tr(t,n){if(Ln(t,n))return!0;if(typeof t!="object"||t===null||typeof n!="object"||n===null)return!1;var i=Object.keys(t),l=Object.keys(n);if(i.length!==l.length)return!1;for(l=0;l<i.length;l++){var p=i[l];if(!Ve.call(n,p)||!Ln(t[p],n[p]))return!1}return!0}function Hf(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function Qf(t,n){var i=Hf(t);t=0;for(var l;i;){if(i.nodeType===3){if(l=t+i.textContent.length,t<=n&&l>=n)return{node:i,offset:n-t};t=l}e:{for(;i;){if(i.nextSibling){i=i.nextSibling;break e}i=i.parentNode}i=void 0}i=Hf(i)}}function Ff(t,n){return t&&n?t===n?!0:t&&t.nodeType===3?!1:n&&n.nodeType===3?Ff(t,n.parentNode):"contains"in t?t.contains(n):t.compareDocumentPosition?!!(t.compareDocumentPosition(n)&16):!1:!1}function Zf(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var n=fs(t.document);n instanceof t.HTMLIFrameElement;){try{var i=typeof n.contentWindow.location.href=="string"}catch{i=!1}if(i)t=n.contentWindow;else break;n=fs(t.document)}return n}function Qd(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n&&(n==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||n==="textarea"||t.contentEditable==="true")}var yj=xa&&"documentMode"in document&&11>=document.documentMode,uo=null,Fd=null,Rr=null,Zd=!1;function Yf(t,n,i){var l=i.window===i?i.document:i.nodeType===9?i:i.ownerDocument;Zd||uo==null||uo!==fs(l)||(l=uo,"selectionStart"in l&&Qd(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),Rr&&Tr(Rr,l)||(Rr=l,l=Yc(Fd,"onSelect"),0<l.length&&(n=new ta("onSelect","select",null,n,i),t.push({event:n,listeners:l}),n.target=uo)))}function ks(t,n){var i={};return i[t.toLowerCase()]=n.toLowerCase(),i["Webkit"+t]="webkit"+n,i["Moz"+t]="moz"+n,i}var mo={animationend:ks("Animation","AnimationEnd"),animationiteration:ks("Animation","AnimationIteration"),animationstart:ks("Animation","AnimationStart"),transitionrun:ks("Transition","TransitionRun"),transitionstart:ks("Transition","TransitionStart"),transitioncancel:ks("Transition","TransitionCancel"),transitionend:ks("Transition","TransitionEnd")},Yd={},Xf={};xa&&(Xf=document.createElement("div").style,"AnimationEvent"in window||(delete mo.animationend.animation,delete mo.animationiteration.animation,delete mo.animationstart.animation),"TransitionEvent"in window||delete mo.transitionend.transition);function ws(t){if(Yd[t])return Yd[t];if(!mo[t])return t;var n=mo[t],i;for(i in n)if(n.hasOwnProperty(i)&&i in Xf)return Yd[t]=n[i];return t}var Jf=ws("animationend"),Wf=ws("animationiteration"),eg=ws("animationstart"),bj=ws("transitionrun"),vj=ws("transitionstart"),xj=ws("transitioncancel"),tg=ws("transitionend"),ng=new Map,Xd="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Xd.push("scrollEnd");function ka(t,n){ng.set(t,n),Ra(n,[t])}var cc=typeof reportError=="function"?reportError:function(t){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var n=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof t=="object"&&t!==null&&typeof t.message=="string"?String(t.message):String(t),error:t});if(!window.dispatchEvent(n))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",t);return}console.error(t)},na=[],po=0,Jd=0;function uc(){for(var t=po,n=Jd=po=0;n<t;){var i=na[n];na[n++]=null;var l=na[n];na[n++]=null;var p=na[n];na[n++]=null;var h=na[n];if(na[n++]=null,l!==null&&p!==null){var x=l.pending;x===null?p.next=p:(p.next=x.next,x.next=p),l.pending=p}h!==0&&ag(i,p,h)}}function dc(t,n,i,l){na[po++]=t,na[po++]=n,na[po++]=i,na[po++]=l,Jd|=l,t.lanes|=l,t=t.alternate,t!==null&&(t.lanes|=l)}function Wd(t,n,i,l){return dc(t,n,i,l),mc(t)}function Ss(t,n){return dc(t,null,null,n),mc(t)}function ag(t,n,i){t.lanes|=i;var l=t.alternate;l!==null&&(l.lanes|=i);for(var p=!1,h=t.return;h!==null;)h.childLanes|=i,l=h.alternate,l!==null&&(l.childLanes|=i),h.tag===22&&(t=h.stateNode,t===null||t._visibility&1||(p=!0)),t=h,h=h.return;return t.tag===3?(h=t.stateNode,p&&n!==null&&(p=31-Rt(i),t=h.hiddenUpdates,l=t[p],l===null?t[p]=[n]:l.push(n),n.lane=i|536870912),h):null}function mc(t){if(50<el)throw el=0,lp=null,Error(r(185));for(var n=t.return;n!==null;)t=n,n=t.return;return t.tag===3?t.stateNode:null}var ho={};function kj(t,n,i,l){this.tag=t,this.key=i,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=l,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Un(t,n,i,l){return new kj(t,n,i,l)}function em(t){return t=t.prototype,!(!t||!t.isReactComponent)}function Xa(t,n){var i=t.alternate;return i===null?(i=Un(t.tag,n,t.key,t.mode),i.elementType=t.elementType,i.type=t.type,i.stateNode=t.stateNode,i.alternate=t,t.alternate=i):(i.pendingProps=n,i.type=t.type,i.flags=0,i.subtreeFlags=0,i.deletions=null),i.flags=t.flags&65011712,i.childLanes=t.childLanes,i.lanes=t.lanes,i.child=t.child,i.memoizedProps=t.memoizedProps,i.memoizedState=t.memoizedState,i.updateQueue=t.updateQueue,n=t.dependencies,i.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},i.sibling=t.sibling,i.index=t.index,i.ref=t.ref,i.refCleanup=t.refCleanup,i}function ig(t,n){t.flags&=65011714;var i=t.alternate;return i===null?(t.childLanes=0,t.lanes=n,t.child=null,t.subtreeFlags=0,t.memoizedProps=null,t.memoizedState=null,t.updateQueue=null,t.dependencies=null,t.stateNode=null):(t.childLanes=i.childLanes,t.lanes=i.lanes,t.child=i.child,t.subtreeFlags=0,t.deletions=null,t.memoizedProps=i.memoizedProps,t.memoizedState=i.memoizedState,t.updateQueue=i.updateQueue,t.type=i.type,n=i.dependencies,t.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext}),t}function pc(t,n,i,l,p,h){var x=0;if(l=t,typeof t=="function")em(t)&&(x=1);else if(typeof t=="string")x=C4(t,i,ne.current)?26:t==="html"||t==="head"||t==="body"?27:5;else e:switch(t){case Te:return t=Un(31,i,n,p),t.elementType=Te,t.lanes=h,t;case _:return js(i.children,p,h,n);case G:x=8,p|=24;break;case K:return t=Un(12,i,n,p|2),t.elementType=K,t.lanes=h,t;case W:return t=Un(13,i,n,p),t.elementType=W,t.lanes=h,t;case oe:return t=Un(19,i,n,p),t.elementType=oe,t.lanes=h,t;default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case Q:x=10;break e;case te:x=9;break e;case re:x=11;break e;case H:x=14;break e;case $:x=16,l=null;break e}x=29,i=Error(r(130,t===null?"null":typeof t,"")),l=null}return n=Un(x,i,n,p),n.elementType=t,n.type=l,n.lanes=h,n}function js(t,n,i,l){return t=Un(7,t,l,n),t.lanes=i,t}function tm(t,n,i){return t=Un(6,t,null,n),t.lanes=i,t}function sg(t){var n=Un(18,null,null,0);return n.stateNode=t,n}function nm(t,n,i){return n=Un(4,t.children!==null?t.children:[],t.key,n),n.lanes=i,n.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},n}var og=new WeakMap;function aa(t,n){if(typeof t=="object"&&t!==null){var i=og.get(t);return i!==void 0?i:(n={value:t,source:n,stack:ln(n)},og.set(t,n),n)}return{value:t,source:n,stack:ln(n)}}var fo=[],go=0,hc=null,Dr=0,ia=[],sa=0,Ci=null,Pa=1,Ma="";function Ja(t,n){fo[go++]=Dr,fo[go++]=hc,hc=t,Dr=n}function rg(t,n,i){ia[sa++]=Pa,ia[sa++]=Ma,ia[sa++]=Ci,Ci=t;var l=Pa;t=Ma;var p=32-Rt(l)-1;l&=~(1<<p),i+=1;var h=32-Rt(n)+p;if(30<h){var x=p-p%5;h=(l&(1<<x)-1).toString(32),l>>=x,p-=x,Pa=1<<32-Rt(n)+p|i<<p|l,Ma=h+t}else Pa=1<<h|i<<p|l,Ma=t}function am(t){t.return!==null&&(Ja(t,1),rg(t,1,0))}function im(t){for(;t===hc;)hc=fo[--go],fo[go]=null,Dr=fo[--go],fo[go]=null;for(;t===Ci;)Ci=ia[--sa],ia[sa]=null,Ma=ia[--sa],ia[sa]=null,Pa=ia[--sa],ia[sa]=null}function lg(t,n){ia[sa++]=Pa,ia[sa++]=Ma,ia[sa++]=Ci,Pa=n.id,Ma=n.overflow,Ci=t}var tn=null,kt=null,it=!1,Ni=null,oa=!1,sm=Error(r(519));function _i(t){var n=Error(r(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Or(aa(n,t)),sm}function cg(t){var n=t.stateNode,i=t.type,l=t.memoizedProps;switch(n[Mt]=t,n[en]=l,i){case"dialog":Xe("cancel",n),Xe("close",n);break;case"iframe":case"object":case"embed":Xe("load",n);break;case"video":case"audio":for(i=0;i<nl.length;i++)Xe(nl[i],n);break;case"source":Xe("error",n);break;case"img":case"image":case"link":Xe("error",n),Xe("load",n);break;case"details":Xe("toggle",n);break;case"input":Xe("invalid",n),Mn(n,l.value,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name,!0);break;case"select":Xe("invalid",n);break;case"textarea":Xe("invalid",n),Pd(n,l.value,l.defaultValue,l.children)}i=l.children,typeof i!="string"&&typeof i!="number"&&typeof i!="bigint"||n.textContent===""+i||l.suppressHydrationWarning===!0||Cy(n.textContent,i)?(l.popover!=null&&(Xe("beforetoggle",n),Xe("toggle",n)),l.onScroll!=null&&Xe("scroll",n),l.onScrollEnd!=null&&Xe("scrollend",n),l.onClick!=null&&(n.onclick=Wn),n=!0):n=!1,n||_i(t,!0)}function ug(t){for(tn=t.return;tn;)switch(tn.tag){case 5:case 31:case 13:oa=!1;return;case 27:case 3:oa=!0;return;default:tn=tn.return}}function yo(t){if(t!==tn)return!1;if(!it)return ug(t),it=!0,!1;var n=t.tag,i;if((i=n!==3&&n!==27)&&((i=n===5)&&(i=t.type,i=!(i!=="form"&&i!=="button")||Sp(t.type,t.memoizedProps)),i=!i),i&&kt&&_i(t),ug(t),n===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(317));kt=qy(t)}else if(n===31){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(317));kt=qy(t)}else n===27?(n=kt,Ui(t.type)?(t=_p,_p=null,kt=t):kt=n):kt=tn?la(t.stateNode.nextSibling):null;return!0}function As(){kt=tn=null,it=!1}function om(){var t=Ni;return t!==null&&(Rn===null?Rn=t:Rn.push.apply(Rn,t),Ni=null),t}function Or(t){Ni===null?Ni=[t]:Ni.push(t)}var rm=Ie(null),Cs=null,Wa=null;function zi(t,n,i){Ae(rm,n._currentValue),n._currentValue=i}function ei(t){t._currentValue=rm.current,Ne(rm)}function lm(t,n,i){for(;t!==null;){var l=t.alternate;if((t.childLanes&n)!==n?(t.childLanes|=n,l!==null&&(l.childLanes|=n)):l!==null&&(l.childLanes&n)!==n&&(l.childLanes|=n),t===i)break;t=t.return}}function cm(t,n,i,l){var p=t.child;for(p!==null&&(p.return=t);p!==null;){var h=p.dependencies;if(h!==null){var x=p.child;h=h.firstContext;e:for(;h!==null;){var w=h;h=p;for(var z=0;z<n.length;z++)if(w.context===n[z]){h.lanes|=i,w=h.alternate,w!==null&&(w.lanes|=i),lm(h.return,i,t),l||(x=null);break e}h=w.next}}else if(p.tag===18){if(x=p.return,x===null)throw Error(r(341));x.lanes|=i,h=x.alternate,h!==null&&(h.lanes|=i),lm(x,i,t),x=null}else x=p.child;if(x!==null)x.return=p;else for(x=p;x!==null;){if(x===t){x=null;break}if(p=x.sibling,p!==null){p.return=x.return,x=p;break}x=x.return}p=x}}function bo(t,n,i,l){t=null;for(var p=n,h=!1;p!==null;){if(!h){if((p.flags&524288)!==0)h=!0;else if((p.flags&262144)!==0)break}if(p.tag===10){var x=p.alternate;if(x===null)throw Error(r(387));if(x=x.memoizedProps,x!==null){var w=p.type;Ln(p.pendingProps.value,x.value)||(t!==null?t.push(w):t=[w])}}else if(p===le.current){if(x=p.alternate,x===null)throw Error(r(387));x.memoizedState.memoizedState!==p.memoizedState.memoizedState&&(t!==null?t.push(rl):t=[rl])}p=p.return}t!==null&&cm(n,t,i,l),n.flags|=262144}function fc(t){for(t=t.firstContext;t!==null;){if(!Ln(t.context._currentValue,t.memoizedValue))return!0;t=t.next}return!1}function Ns(t){Cs=t,Wa=null,t=t.dependencies,t!==null&&(t.firstContext=null)}function nn(t){return dg(Cs,t)}function gc(t,n){return Cs===null&&Ns(t),dg(t,n)}function dg(t,n){var i=n._currentValue;if(n={context:n,memoizedValue:i,next:null},Wa===null){if(t===null)throw Error(r(308));Wa=n,t.dependencies={lanes:0,firstContext:n},t.flags|=524288}else Wa=Wa.next=n;return i}var wj=typeof AbortController<"u"?AbortController:function(){var t=[],n=this.signal={aborted:!1,addEventListener:function(i,l){t.push(l)}};this.abort=function(){n.aborted=!0,t.forEach(function(i){return i()})}},Sj=e.unstable_scheduleCallback,jj=e.unstable_NormalPriority,It={$$typeof:Q,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function um(){return{controller:new wj,data:new Map,refCount:0}}function qr(t){t.refCount--,t.refCount===0&&Sj(jj,function(){t.controller.abort()})}var Br=null,dm=0,vo=0,xo=null;function Aj(t,n){if(Br===null){var i=Br=[];dm=0,vo=hp(),xo={status:"pending",value:void 0,then:function(l){i.push(l)}}}return dm++,n.then(mg,mg),n}function mg(){if(--dm===0&&Br!==null){xo!==null&&(xo.status="fulfilled");var t=Br;Br=null,vo=0,xo=null;for(var n=0;n<t.length;n++)(0,t[n])()}}function Cj(t,n){var i=[],l={status:"pending",value:null,reason:null,then:function(p){i.push(p)}};return t.then(function(){l.status="fulfilled",l.value=n;for(var p=0;p<i.length;p++)(0,i[p])(n)},function(p){for(l.status="rejected",l.reason=p,p=0;p<i.length;p++)(0,i[p])(void 0)}),l}var pg=P.S;P.S=function(t,n){Y1=cn(),typeof n=="object"&&n!==null&&typeof n.then=="function"&&Aj(t,n),pg!==null&&pg(t,n)};var _s=Ie(null);function mm(){var t=_s.current;return t!==null?t:vt.pooledCache}function yc(t,n){n===null?Ae(_s,_s.current):Ae(_s,n.pool)}function hg(){var t=mm();return t===null?null:{parent:It._currentValue,pool:t}}var ko=Error(r(460)),pm=Error(r(474)),bc=Error(r(542)),vc={then:function(){}};function fg(t){return t=t.status,t==="fulfilled"||t==="rejected"}function gg(t,n,i){switch(i=t[i],i===void 0?t.push(n):i!==n&&(n.then(Wn,Wn),n=i),n.status){case"fulfilled":return n.value;case"rejected":throw t=n.reason,bg(t),t;default:if(typeof n.status=="string")n.then(Wn,Wn);else{if(t=vt,t!==null&&100<t.shellSuspendCounter)throw Error(r(482));t=n,t.status="pending",t.then(function(l){if(n.status==="pending"){var p=n;p.status="fulfilled",p.value=l}},function(l){if(n.status==="pending"){var p=n;p.status="rejected",p.reason=l}})}switch(n.status){case"fulfilled":return n.value;case"rejected":throw t=n.reason,bg(t),t}throw Es=n,ko}}function zs(t){try{var n=t._init;return n(t._payload)}catch(i){throw i!==null&&typeof i=="object"&&typeof i.then=="function"?(Es=i,ko):i}}var Es=null;function yg(){if(Es===null)throw Error(r(459));var t=Es;return Es=null,t}function bg(t){if(t===ko||t===bc)throw Error(r(483))}var wo=null,Pr=0;function xc(t){var n=Pr;return Pr+=1,wo===null&&(wo=[]),gg(wo,t,n)}function Mr(t,n){n=n.props.ref,t.ref=n!==void 0?n:null}function kc(t,n){throw n.$$typeof===N?Error(r(525)):(t=Object.prototype.toString.call(n),Error(r(31,t==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":t)))}function vg(t){function n(B,R){if(t){var M=B.deletions;M===null?(B.deletions=[R],B.flags|=16):M.push(R)}}function i(B,R){if(!t)return null;for(;R!==null;)n(B,R),R=R.sibling;return null}function l(B){for(var R=new Map;B!==null;)B.key!==null?R.set(B.key,B):R.set(B.index,B),B=B.sibling;return R}function p(B,R){return B=Xa(B,R),B.index=0,B.sibling=null,B}function h(B,R,M){return B.index=M,t?(M=B.alternate,M!==null?(M=M.index,M<R?(B.flags|=67108866,R):M):(B.flags|=67108866,R)):(B.flags|=1048576,R)}function x(B){return t&&B.alternate===null&&(B.flags|=67108866),B}function w(B,R,M,ee){return R===null||R.tag!==6?(R=tm(M,B.mode,ee),R.return=B,R):(R=p(R,M),R.return=B,R)}function z(B,R,M,ee){var Ee=M.type;return Ee===_?Y(B,R,M.props.children,ee,M.key):R!==null&&(R.elementType===Ee||typeof Ee=="object"&&Ee!==null&&Ee.$$typeof===$&&zs(Ee)===R.type)?(R=p(R,M.props),Mr(R,M),R.return=B,R):(R=pc(M.type,M.key,M.props,null,B.mode,ee),Mr(R,M),R.return=B,R)}function I(B,R,M,ee){return R===null||R.tag!==4||R.stateNode.containerInfo!==M.containerInfo||R.stateNode.implementation!==M.implementation?(R=nm(M,B.mode,ee),R.return=B,R):(R=p(R,M.children||[]),R.return=B,R)}function Y(B,R,M,ee,Ee){return R===null||R.tag!==7?(R=js(M,B.mode,ee,Ee),R.return=B,R):(R=p(R,M),R.return=B,R)}function ie(B,R,M){if(typeof R=="string"&&R!==""||typeof R=="number"||typeof R=="bigint")return R=tm(""+R,B.mode,M),R.return=B,R;if(typeof R=="object"&&R!==null){switch(R.$$typeof){case E:return M=pc(R.type,R.key,R.props,null,B.mode,M),Mr(M,R),M.return=B,M;case Z:return R=nm(R,B.mode,M),R.return=B,R;case $:return R=zs(R),ie(B,R,M)}if(be(R)||Re(R))return R=js(R,B.mode,M,null),R.return=B,R;if(typeof R.then=="function")return ie(B,xc(R),M);if(R.$$typeof===Q)return ie(B,gc(B,R),M);kc(B,R)}return null}function L(B,R,M,ee){var Ee=R!==null?R.key:null;if(typeof M=="string"&&M!==""||typeof M=="number"||typeof M=="bigint")return Ee!==null?null:w(B,R,""+M,ee);if(typeof M=="object"&&M!==null){switch(M.$$typeof){case E:return M.key===Ee?z(B,R,M,ee):null;case Z:return M.key===Ee?I(B,R,M,ee):null;case $:return M=zs(M),L(B,R,M,ee)}if(be(M)||Re(M))return Ee!==null?null:Y(B,R,M,ee,null);if(typeof M.then=="function")return L(B,R,xc(M),ee);if(M.$$typeof===Q)return L(B,R,gc(B,M),ee);kc(B,M)}return null}function F(B,R,M,ee,Ee){if(typeof ee=="string"&&ee!==""||typeof ee=="number"||typeof ee=="bigint")return B=B.get(M)||null,w(R,B,""+ee,Ee);if(typeof ee=="object"&&ee!==null){switch(ee.$$typeof){case E:return B=B.get(ee.key===null?M:ee.key)||null,z(R,B,ee,Ee);case Z:return B=B.get(ee.key===null?M:ee.key)||null,I(R,B,ee,Ee);case $:return ee=zs(ee),F(B,R,M,ee,Ee)}if(be(ee)||Re(ee))return B=B.get(M)||null,Y(R,B,ee,Ee,null);if(typeof ee.then=="function")return F(B,R,M,xc(ee),Ee);if(ee.$$typeof===Q)return F(B,R,M,gc(R,ee),Ee);kc(R,ee)}return null}function xe(B,R,M,ee){for(var Ee=null,rt=null,Ce=R,He=R=0,et=null;Ce!==null&&He<M.length;He++){Ce.index>He?(et=Ce,Ce=null):et=Ce.sibling;var lt=L(B,Ce,M[He],ee);if(lt===null){Ce===null&&(Ce=et);break}t&&Ce&&lt.alternate===null&&n(B,Ce),R=h(lt,R,He),rt===null?Ee=lt:rt.sibling=lt,rt=lt,Ce=et}if(He===M.length)return i(B,Ce),it&&Ja(B,He),Ee;if(Ce===null){for(;He<M.length;He++)Ce=ie(B,M[He],ee),Ce!==null&&(R=h(Ce,R,He),rt===null?Ee=Ce:rt.sibling=Ce,rt=Ce);return it&&Ja(B,He),Ee}for(Ce=l(Ce);He<M.length;He++)et=F(Ce,B,He,M[He],ee),et!==null&&(t&&et.alternate!==null&&Ce.delete(et.key===null?He:et.key),R=h(et,R,He),rt===null?Ee=et:rt.sibling=et,rt=et);return t&&Ce.forEach(function(Qi){return n(B,Qi)}),it&&Ja(B,He),Ee}function Oe(B,R,M,ee){if(M==null)throw Error(r(151));for(var Ee=null,rt=null,Ce=R,He=R=0,et=null,lt=M.next();Ce!==null&&!lt.done;He++,lt=M.next()){Ce.index>He?(et=Ce,Ce=null):et=Ce.sibling;var Qi=L(B,Ce,lt.value,ee);if(Qi===null){Ce===null&&(Ce=et);break}t&&Ce&&Qi.alternate===null&&n(B,Ce),R=h(Qi,R,He),rt===null?Ee=Qi:rt.sibling=Qi,rt=Qi,Ce=et}if(lt.done)return i(B,Ce),it&&Ja(B,He),Ee;if(Ce===null){for(;!lt.done;He++,lt=M.next())lt=ie(B,lt.value,ee),lt!==null&&(R=h(lt,R,He),rt===null?Ee=lt:rt.sibling=lt,rt=lt);return it&&Ja(B,He),Ee}for(Ce=l(Ce);!lt.done;He++,lt=M.next())lt=F(Ce,B,He,lt.value,ee),lt!==null&&(t&&lt.alternate!==null&&Ce.delete(lt.key===null?He:lt.key),R=h(lt,R,He),rt===null?Ee=lt:rt.sibling=lt,rt=lt);return t&&Ce.forEach(function(P4){return n(B,P4)}),it&&Ja(B,He),Ee}function yt(B,R,M,ee){if(typeof M=="object"&&M!==null&&M.type===_&&M.key===null&&(M=M.props.children),typeof M=="object"&&M!==null){switch(M.$$typeof){case E:e:{for(var Ee=M.key;R!==null;){if(R.key===Ee){if(Ee=M.type,Ee===_){if(R.tag===7){i(B,R.sibling),ee=p(R,M.props.children),ee.return=B,B=ee;break e}}else if(R.elementType===Ee||typeof Ee=="object"&&Ee!==null&&Ee.$$typeof===$&&zs(Ee)===R.type){i(B,R.sibling),ee=p(R,M.props),Mr(ee,M),ee.return=B,B=ee;break e}i(B,R);break}else n(B,R);R=R.sibling}M.type===_?(ee=js(M.props.children,B.mode,ee,M.key),ee.return=B,B=ee):(ee=pc(M.type,M.key,M.props,null,B.mode,ee),Mr(ee,M),ee.return=B,B=ee)}return x(B);case Z:e:{for(Ee=M.key;R!==null;){if(R.key===Ee)if(R.tag===4&&R.stateNode.containerInfo===M.containerInfo&&R.stateNode.implementation===M.implementation){i(B,R.sibling),ee=p(R,M.children||[]),ee.return=B,B=ee;break e}else{i(B,R);break}else n(B,R);R=R.sibling}ee=nm(M,B.mode,ee),ee.return=B,B=ee}return x(B);case $:return M=zs(M),yt(B,R,M,ee)}if(be(M))return xe(B,R,M,ee);if(Re(M)){if(Ee=Re(M),typeof Ee!="function")throw Error(r(150));return M=Ee.call(M),Oe(B,R,M,ee)}if(typeof M.then=="function")return yt(B,R,xc(M),ee);if(M.$$typeof===Q)return yt(B,R,gc(B,M),ee);kc(B,M)}return typeof M=="string"&&M!==""||typeof M=="number"||typeof M=="bigint"?(M=""+M,R!==null&&R.tag===6?(i(B,R.sibling),ee=p(R,M),ee.return=B,B=ee):(i(B,R),ee=tm(M,B.mode,ee),ee.return=B,B=ee),x(B)):i(B,R)}return function(B,R,M,ee){try{Pr=0;var Ee=yt(B,R,M,ee);return wo=null,Ee}catch(Ce){if(Ce===ko||Ce===bc)throw Ce;var rt=Un(29,Ce,null,B.mode);return rt.lanes=ee,rt.return=B,rt}}}var Ts=vg(!0),xg=vg(!1),Ei=!1;function hm(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function fm(t,n){t=t.updateQueue,n.updateQueue===t&&(n.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function Ti(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function Ri(t,n,i){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,(ct&2)!==0){var p=l.pending;return p===null?n.next=n:(n.next=p.next,p.next=n),l.pending=n,n=mc(t),ag(t,null,i),n}return dc(t,l,n,i),mc(t)}function Ir(t,n,i){if(n=n.updateQueue,n!==null&&(n=n.shared,(i&4194048)!==0)){var l=n.lanes;l&=t.pendingLanes,i|=l,n.lanes=i,Wl(t,i)}}function gm(t,n){var i=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,i===l)){var p=null,h=null;if(i=i.firstBaseUpdate,i!==null){do{var x={lane:i.lane,tag:i.tag,payload:i.payload,callback:null,next:null};h===null?p=h=x:h=h.next=x,i=i.next}while(i!==null);h===null?p=h=n:h=h.next=n}else p=h=n;i={baseState:l.baseState,firstBaseUpdate:p,lastBaseUpdate:h,shared:l.shared,callbacks:l.callbacks},t.updateQueue=i;return}t=i.lastBaseUpdate,t===null?i.firstBaseUpdate=n:t.next=n,i.lastBaseUpdate=n}var ym=!1;function Vr(){if(ym){var t=xo;if(t!==null)throw t}}function Lr(t,n,i,l){ym=!1;var p=t.updateQueue;Ei=!1;var h=p.firstBaseUpdate,x=p.lastBaseUpdate,w=p.shared.pending;if(w!==null){p.shared.pending=null;var z=w,I=z.next;z.next=null,x===null?h=I:x.next=I,x=z;var Y=t.alternate;Y!==null&&(Y=Y.updateQueue,w=Y.lastBaseUpdate,w!==x&&(w===null?Y.firstBaseUpdate=I:w.next=I,Y.lastBaseUpdate=z))}if(h!==null){var ie=p.baseState;x=0,Y=I=z=null,w=h;do{var L=w.lane&-536870913,F=L!==w.lane;if(F?(We&L)===L:(l&L)===L){L!==0&&L===vo&&(ym=!0),Y!==null&&(Y=Y.next={lane:0,tag:w.tag,payload:w.payload,callback:null,next:null});e:{var xe=t,Oe=w;L=n;var yt=i;switch(Oe.tag){case 1:if(xe=Oe.payload,typeof xe=="function"){ie=xe.call(yt,ie,L);break e}ie=xe;break e;case 3:xe.flags=xe.flags&-65537|128;case 0:if(xe=Oe.payload,L=typeof xe=="function"?xe.call(yt,ie,L):xe,L==null)break e;ie=A({},ie,L);break e;case 2:Ei=!0}}L=w.callback,L!==null&&(t.flags|=64,F&&(t.flags|=8192),F=p.callbacks,F===null?p.callbacks=[L]:F.push(L))}else F={lane:L,tag:w.tag,payload:w.payload,callback:w.callback,next:null},Y===null?(I=Y=F,z=ie):Y=Y.next=F,x|=L;if(w=w.next,w===null){if(w=p.shared.pending,w===null)break;F=w,w=F.next,F.next=null,p.lastBaseUpdate=F,p.shared.pending=null}}while(!0);Y===null&&(z=ie),p.baseState=z,p.firstBaseUpdate=I,p.lastBaseUpdate=Y,h===null&&(p.shared.lanes=0),Pi|=x,t.lanes=x,t.memoizedState=ie}}function kg(t,n){if(typeof t!="function")throw Error(r(191,t));t.call(n)}function wg(t,n){var i=t.callbacks;if(i!==null)for(t.callbacks=null,t=0;t<i.length;t++)kg(i[t],n)}var So=Ie(null),wc=Ie(0);function Sg(t,n){t=ci,Ae(wc,t),Ae(So,n),ci=t|n.baseLanes}function bm(){Ae(wc,ci),Ae(So,So.current)}function vm(){ci=wc.current,Ne(So),Ne(wc)}var Gn=Ie(null),ra=null;function Di(t){var n=t.alternate;Ae(Bt,Bt.current&1),Ae(Gn,t),ra===null&&(n===null||So.current!==null||n.memoizedState!==null)&&(ra=t)}function xm(t){Ae(Bt,Bt.current),Ae(Gn,t),ra===null&&(ra=t)}function jg(t){t.tag===22?(Ae(Bt,Bt.current),Ae(Gn,t),ra===null&&(ra=t)):Oi()}function Oi(){Ae(Bt,Bt.current),Ae(Gn,Gn.current)}function $n(t){Ne(Gn),ra===t&&(ra=null),Ne(Bt)}var Bt=Ie(0);function Sc(t){for(var n=t;n!==null;){if(n.tag===13){var i=n.memoizedState;if(i!==null&&(i=i.dehydrated,i===null||Cp(i)||Np(i)))return n}else if(n.tag===19&&(n.memoizedProps.revealOrder==="forwards"||n.memoizedProps.revealOrder==="backwards"||n.memoizedProps.revealOrder==="unstable_legacy-backwards"||n.memoizedProps.revealOrder==="together")){if((n.flags&128)!==0)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var ti=0,$e=null,ft=null,Vt=null,jc=!1,jo=!1,Rs=!1,Ac=0,Ur=0,Ao=null,Nj=0;function Dt(){throw Error(r(321))}function km(t,n){if(n===null)return!1;for(var i=0;i<n.length&&i<t.length;i++)if(!Ln(t[i],n[i]))return!1;return!0}function wm(t,n,i,l,p,h){return ti=h,$e=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,P.H=t===null||t.memoizedState===null?r1:Pm,Rs=!1,h=i(l,p),Rs=!1,jo&&(h=Cg(n,i,l,p)),Ag(t),h}function Ag(t){P.H=Kr;var n=ft!==null&&ft.next!==null;if(ti=0,Vt=ft=$e=null,jc=!1,Ur=0,Ao=null,n)throw Error(r(300));t===null||Lt||(t=t.dependencies,t!==null&&fc(t)&&(Lt=!0))}function Cg(t,n,i,l){$e=t;var p=0;do{if(jo&&(Ao=null),Ur=0,jo=!1,25<=p)throw Error(r(301));if(p+=1,Vt=ft=null,t.updateQueue!=null){var h=t.updateQueue;h.lastEffect=null,h.events=null,h.stores=null,h.memoCache!=null&&(h.memoCache.index=0)}P.H=l1,h=n(i,l)}while(jo);return h}function _j(){var t=P.H,n=t.useState()[0];return n=typeof n.then=="function"?Gr(n):n,t=t.useState()[0],(ft!==null?ft.memoizedState:null)!==t&&($e.flags|=1024),n}function Sm(){var t=Ac!==0;return Ac=0,t}function jm(t,n,i){n.updateQueue=t.updateQueue,n.flags&=-2053,t.lanes&=~i}function Am(t){if(jc){for(t=t.memoizedState;t!==null;){var n=t.queue;n!==null&&(n.pending=null),t=t.next}jc=!1}ti=0,Vt=ft=$e=null,jo=!1,Ur=Ac=0,Ao=null}function bn(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Vt===null?$e.memoizedState=Vt=t:Vt=Vt.next=t,Vt}function Pt(){if(ft===null){var t=$e.alternate;t=t!==null?t.memoizedState:null}else t=ft.next;var n=Vt===null?$e.memoizedState:Vt.next;if(n!==null)Vt=n,ft=t;else{if(t===null)throw $e.alternate===null?Error(r(467)):Error(r(310));ft=t,t={memoizedState:ft.memoizedState,baseState:ft.baseState,baseQueue:ft.baseQueue,queue:ft.queue,next:null},Vt===null?$e.memoizedState=Vt=t:Vt=Vt.next=t}return Vt}function Cc(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Gr(t){var n=Ur;return Ur+=1,Ao===null&&(Ao=[]),t=gg(Ao,t,n),n=$e,(Vt===null?n.memoizedState:Vt.next)===null&&(n=n.alternate,P.H=n===null||n.memoizedState===null?r1:Pm),t}function Nc(t){if(t!==null&&typeof t=="object"){if(typeof t.then=="function")return Gr(t);if(t.$$typeof===Q)return nn(t)}throw Error(r(438,String(t)))}function Cm(t){var n=null,i=$e.updateQueue;if(i!==null&&(n=i.memoCache),n==null){var l=$e.alternate;l!==null&&(l=l.updateQueue,l!==null&&(l=l.memoCache,l!=null&&(n={data:l.data.map(function(p){return p.slice()}),index:0})))}if(n==null&&(n={data:[],index:0}),i===null&&(i=Cc(),$e.updateQueue=i),i.memoCache=n,i=n.data[n.index],i===void 0)for(i=n.data[n.index]=Array(t),l=0;l<t;l++)i[l]=Ke;return n.index++,i}function ni(t,n){return typeof n=="function"?n(t):n}function _c(t){var n=Pt();return Nm(n,ft,t)}function Nm(t,n,i){var l=t.queue;if(l===null)throw Error(r(311));l.lastRenderedReducer=i;var p=t.baseQueue,h=l.pending;if(h!==null){if(p!==null){var x=p.next;p.next=h.next,h.next=x}n.baseQueue=p=h,l.pending=null}if(h=t.baseState,p===null)t.memoizedState=h;else{n=p.next;var w=x=null,z=null,I=n,Y=!1;do{var ie=I.lane&-536870913;if(ie!==I.lane?(We&ie)===ie:(ti&ie)===ie){var L=I.revertLane;if(L===0)z!==null&&(z=z.next={lane:0,revertLane:0,gesture:null,action:I.action,hasEagerState:I.hasEagerState,eagerState:I.eagerState,next:null}),ie===vo&&(Y=!0);else if((ti&L)===L){I=I.next,L===vo&&(Y=!0);continue}else ie={lane:0,revertLane:I.revertLane,gesture:null,action:I.action,hasEagerState:I.hasEagerState,eagerState:I.eagerState,next:null},z===null?(w=z=ie,x=h):z=z.next=ie,$e.lanes|=L,Pi|=L;ie=I.action,Rs&&i(h,ie),h=I.hasEagerState?I.eagerState:i(h,ie)}else L={lane:ie,revertLane:I.revertLane,gesture:I.gesture,action:I.action,hasEagerState:I.hasEagerState,eagerState:I.eagerState,next:null},z===null?(w=z=L,x=h):z=z.next=L,$e.lanes|=ie,Pi|=ie;I=I.next}while(I!==null&&I!==n);if(z===null?x=h:z.next=w,!Ln(h,t.memoizedState)&&(Lt=!0,Y&&(i=xo,i!==null)))throw i;t.memoizedState=h,t.baseState=x,t.baseQueue=z,l.lastRenderedState=h}return p===null&&(l.lanes=0),[t.memoizedState,l.dispatch]}function _m(t){var n=Pt(),i=n.queue;if(i===null)throw Error(r(311));i.lastRenderedReducer=t;var l=i.dispatch,p=i.pending,h=n.memoizedState;if(p!==null){i.pending=null;var x=p=p.next;do h=t(h,x.action),x=x.next;while(x!==p);Ln(h,n.memoizedState)||(Lt=!0),n.memoizedState=h,n.baseQueue===null&&(n.baseState=h),i.lastRenderedState=h}return[h,l]}function Ng(t,n,i){var l=$e,p=Pt(),h=it;if(h){if(i===void 0)throw Error(r(407));i=i()}else i=n();var x=!Ln((ft||p).memoizedState,i);if(x&&(p.memoizedState=i,Lt=!0),p=p.queue,Tm(Eg.bind(null,l,p,t),[t]),p.getSnapshot!==n||x||Vt!==null&&Vt.memoizedState.tag&1){if(l.flags|=2048,Co(9,{destroy:void 0},zg.bind(null,l,p,i,n),null),vt===null)throw Error(r(349));h||(ti&127)!==0||_g(l,n,i)}return i}function _g(t,n,i){t.flags|=16384,t={getSnapshot:n,value:i},n=$e.updateQueue,n===null?(n=Cc(),$e.updateQueue=n,n.stores=[t]):(i=n.stores,i===null?n.stores=[t]:i.push(t))}function zg(t,n,i,l){n.value=i,n.getSnapshot=l,Tg(n)&&Rg(t)}function Eg(t,n,i){return i(function(){Tg(n)&&Rg(t)})}function Tg(t){var n=t.getSnapshot;t=t.value;try{var i=n();return!Ln(t,i)}catch{return!0}}function Rg(t){var n=Ss(t,2);n!==null&&Dn(n,t,2)}function zm(t){var n=bn();if(typeof t=="function"){var i=t;if(t=i(),Rs){un(!0);try{i()}finally{un(!1)}}}return n.memoizedState=n.baseState=t,n.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ni,lastRenderedState:t},n}function Dg(t,n,i,l){return t.baseState=i,Nm(t,ft,typeof l=="function"?l:ni)}function zj(t,n,i,l,p){if(Tc(t))throw Error(r(485));if(t=n.action,t!==null){var h={payload:p,action:t,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(x){h.listeners.push(x)}};P.T!==null?i(!0):h.isTransition=!1,l(h),i=n.pending,i===null?(h.next=n.pending=h,Og(n,h)):(h.next=i.next,n.pending=i.next=h)}}function Og(t,n){var i=n.action,l=n.payload,p=t.state;if(n.isTransition){var h=P.T,x={};P.T=x;try{var w=i(p,l),z=P.S;z!==null&&z(x,w),qg(t,n,w)}catch(I){Em(t,n,I)}finally{h!==null&&x.types!==null&&(h.types=x.types),P.T=h}}else try{h=i(p,l),qg(t,n,h)}catch(I){Em(t,n,I)}}function qg(t,n,i){i!==null&&typeof i=="object"&&typeof i.then=="function"?i.then(function(l){Bg(t,n,l)},function(l){return Em(t,n,l)}):Bg(t,n,i)}function Bg(t,n,i){n.status="fulfilled",n.value=i,Pg(n),t.state=i,n=t.pending,n!==null&&(i=n.next,i===n?t.pending=null:(i=i.next,n.next=i,Og(t,i)))}function Em(t,n,i){var l=t.pending;if(t.pending=null,l!==null){l=l.next;do n.status="rejected",n.reason=i,Pg(n),n=n.next;while(n!==l)}t.action=null}function Pg(t){t=t.listeners;for(var n=0;n<t.length;n++)(0,t[n])()}function Mg(t,n){return n}function Ig(t,n){if(it){var i=vt.formState;if(i!==null){e:{var l=$e;if(it){if(kt){t:{for(var p=kt,h=oa;p.nodeType!==8;){if(!h){p=null;break t}if(p=la(p.nextSibling),p===null){p=null;break t}}h=p.data,p=h==="F!"||h==="F"?p:null}if(p){kt=la(p.nextSibling),l=p.data==="F!";break e}}_i(l)}l=!1}l&&(n=i[0])}}return i=bn(),i.memoizedState=i.baseState=n,l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Mg,lastRenderedState:n},i.queue=l,i=i1.bind(null,$e,l),l.dispatch=i,l=zm(!1),h=Bm.bind(null,$e,!1,l.queue),l=bn(),p={state:n,dispatch:null,action:t,pending:null},l.queue=p,i=zj.bind(null,$e,p,h,i),p.dispatch=i,l.memoizedState=t,[n,i,!1]}function Vg(t){var n=Pt();return Lg(n,ft,t)}function Lg(t,n,i){if(n=Nm(t,n,Mg)[0],t=_c(ni)[0],typeof n=="object"&&n!==null&&typeof n.then=="function")try{var l=Gr(n)}catch(x){throw x===ko?bc:x}else l=n;n=Pt();var p=n.queue,h=p.dispatch;return i!==n.memoizedState&&($e.flags|=2048,Co(9,{destroy:void 0},Ej.bind(null,p,i),null)),[l,h,t]}function Ej(t,n){t.action=n}function Ug(t){var n=Pt(),i=ft;if(i!==null)return Lg(n,i,t);Pt(),n=n.memoizedState,i=Pt();var l=i.queue.dispatch;return i.memoizedState=t,[n,l,!1]}function Co(t,n,i,l){return t={tag:t,create:i,deps:l,inst:n,next:null},n=$e.updateQueue,n===null&&(n=Cc(),$e.updateQueue=n),i=n.lastEffect,i===null?n.lastEffect=t.next=t:(l=i.next,i.next=t,t.next=l,n.lastEffect=t),t}function Gg(){return Pt().memoizedState}function zc(t,n,i,l){var p=bn();$e.flags|=t,p.memoizedState=Co(1|n,{destroy:void 0},i,l===void 0?null:l)}function Ec(t,n,i,l){var p=Pt();l=l===void 0?null:l;var h=p.memoizedState.inst;ft!==null&&l!==null&&km(l,ft.memoizedState.deps)?p.memoizedState=Co(n,h,i,l):($e.flags|=t,p.memoizedState=Co(1|n,h,i,l))}function $g(t,n){zc(8390656,8,t,n)}function Tm(t,n){Ec(2048,8,t,n)}function Tj(t){$e.flags|=4;var n=$e.updateQueue;if(n===null)n=Cc(),$e.updateQueue=n,n.events=[t];else{var i=n.events;i===null?n.events=[t]:i.push(t)}}function Kg(t){var n=Pt().memoizedState;return Tj({ref:n,nextImpl:t}),function(){if((ct&2)!==0)throw Error(r(440));return n.impl.apply(void 0,arguments)}}function Hg(t,n){return Ec(4,2,t,n)}function Qg(t,n){return Ec(4,4,t,n)}function Fg(t,n){if(typeof n=="function"){t=t();var i=n(t);return function(){typeof i=="function"?i():n(null)}}if(n!=null)return t=t(),n.current=t,function(){n.current=null}}function Zg(t,n,i){i=i!=null?i.concat([t]):null,Ec(4,4,Fg.bind(null,n,t),i)}function Rm(){}function Yg(t,n){var i=Pt();n=n===void 0?null:n;var l=i.memoizedState;return n!==null&&km(n,l[1])?l[0]:(i.memoizedState=[t,n],t)}function Xg(t,n){var i=Pt();n=n===void 0?null:n;var l=i.memoizedState;if(n!==null&&km(n,l[1]))return l[0];if(l=t(),Rs){un(!0);try{t()}finally{un(!1)}}return i.memoizedState=[l,n],l}function Dm(t,n,i){return i===void 0||(ti&1073741824)!==0&&(We&261930)===0?t.memoizedState=n:(t.memoizedState=i,t=J1(),$e.lanes|=t,Pi|=t,i)}function Jg(t,n,i,l){return Ln(i,n)?i:So.current!==null?(t=Dm(t,i,l),Ln(t,n)||(Lt=!0),t):(ti&42)===0||(ti&1073741824)!==0&&(We&261930)===0?(Lt=!0,t.memoizedState=i):(t=J1(),$e.lanes|=t,Pi|=t,n)}function Wg(t,n,i,l,p){var h=ae.p;ae.p=h!==0&&8>h?h:8;var x=P.T,w={};P.T=w,Bm(t,!1,n,i);try{var z=p(),I=P.S;if(I!==null&&I(w,z),z!==null&&typeof z=="object"&&typeof z.then=="function"){var Y=Cj(z,l);$r(t,n,Y,Qn(t))}else $r(t,n,l,Qn(t))}catch(ie){$r(t,n,{then:function(){},status:"rejected",reason:ie},Qn())}finally{ae.p=h,x!==null&&w.types!==null&&(x.types=w.types),P.T=x}}function Rj(){}function Om(t,n,i,l){if(t.tag!==5)throw Error(r(476));var p=e1(t).queue;Wg(t,p,n,he,i===null?Rj:function(){return t1(t),i(l)})}function e1(t){var n=t.memoizedState;if(n!==null)return n;n={memoizedState:he,baseState:he,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ni,lastRenderedState:he},next:null};var i={};return n.next={memoizedState:i,baseState:i,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ni,lastRenderedState:i},next:null},t.memoizedState=n,t=t.alternate,t!==null&&(t.memoizedState=n),n}function t1(t){var n=e1(t);n.next===null&&(n=t.alternate.memoizedState),$r(t,n.next.queue,{},Qn())}function qm(){return nn(rl)}function n1(){return Pt().memoizedState}function a1(){return Pt().memoizedState}function Dj(t){for(var n=t.return;n!==null;){switch(n.tag){case 24:case 3:var i=Qn();t=Ti(i);var l=Ri(n,t,i);l!==null&&(Dn(l,n,i),Ir(l,n,i)),n={cache:um()},t.payload=n;return}n=n.return}}function Oj(t,n,i){var l=Qn();i={lane:l,revertLane:0,gesture:null,action:i,hasEagerState:!1,eagerState:null,next:null},Tc(t)?s1(n,i):(i=Wd(t,n,i,l),i!==null&&(Dn(i,t,l),o1(i,n,l)))}function i1(t,n,i){var l=Qn();$r(t,n,i,l)}function $r(t,n,i,l){var p={lane:l,revertLane:0,gesture:null,action:i,hasEagerState:!1,eagerState:null,next:null};if(Tc(t))s1(n,p);else{var h=t.alternate;if(t.lanes===0&&(h===null||h.lanes===0)&&(h=n.lastRenderedReducer,h!==null))try{var x=n.lastRenderedState,w=h(x,i);if(p.hasEagerState=!0,p.eagerState=w,Ln(w,x))return dc(t,n,p,0),vt===null&&uc(),!1}catch{}if(i=Wd(t,n,p,l),i!==null)return Dn(i,t,l),o1(i,n,l),!0}return!1}function Bm(t,n,i,l){if(l={lane:2,revertLane:hp(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Tc(t)){if(n)throw Error(r(479))}else n=Wd(t,i,l,2),n!==null&&Dn(n,t,2)}function Tc(t){var n=t.alternate;return t===$e||n!==null&&n===$e}function s1(t,n){jo=jc=!0;var i=t.pending;i===null?n.next=n:(n.next=i.next,i.next=n),t.pending=n}function o1(t,n,i){if((i&4194048)!==0){var l=n.lanes;l&=t.pendingLanes,i|=l,n.lanes=i,Wl(t,i)}}var Kr={readContext:nn,use:Nc,useCallback:Dt,useContext:Dt,useEffect:Dt,useImperativeHandle:Dt,useLayoutEffect:Dt,useInsertionEffect:Dt,useMemo:Dt,useReducer:Dt,useRef:Dt,useState:Dt,useDebugValue:Dt,useDeferredValue:Dt,useTransition:Dt,useSyncExternalStore:Dt,useId:Dt,useHostTransitionStatus:Dt,useFormState:Dt,useActionState:Dt,useOptimistic:Dt,useMemoCache:Dt,useCacheRefresh:Dt};Kr.useEffectEvent=Dt;var r1={readContext:nn,use:Nc,useCallback:function(t,n){return bn().memoizedState=[t,n===void 0?null:n],t},useContext:nn,useEffect:$g,useImperativeHandle:function(t,n,i){i=i!=null?i.concat([t]):null,zc(4194308,4,Fg.bind(null,n,t),i)},useLayoutEffect:function(t,n){return zc(4194308,4,t,n)},useInsertionEffect:function(t,n){zc(4,2,t,n)},useMemo:function(t,n){var i=bn();n=n===void 0?null:n;var l=t();if(Rs){un(!0);try{t()}finally{un(!1)}}return i.memoizedState=[l,n],l},useReducer:function(t,n,i){var l=bn();if(i!==void 0){var p=i(n);if(Rs){un(!0);try{i(n)}finally{un(!1)}}}else p=n;return l.memoizedState=l.baseState=p,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:p},l.queue=t,t=t.dispatch=Oj.bind(null,$e,t),[l.memoizedState,t]},useRef:function(t){var n=bn();return t={current:t},n.memoizedState=t},useState:function(t){t=zm(t);var n=t.queue,i=i1.bind(null,$e,n);return n.dispatch=i,[t.memoizedState,i]},useDebugValue:Rm,useDeferredValue:function(t,n){var i=bn();return Dm(i,t,n)},useTransition:function(){var t=zm(!1);return t=Wg.bind(null,$e,t.queue,!0,!1),bn().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,n,i){var l=$e,p=bn();if(it){if(i===void 0)throw Error(r(407));i=i()}else{if(i=n(),vt===null)throw Error(r(349));(We&127)!==0||_g(l,n,i)}p.memoizedState=i;var h={value:i,getSnapshot:n};return p.queue=h,$g(Eg.bind(null,l,h,t),[t]),l.flags|=2048,Co(9,{destroy:void 0},zg.bind(null,l,h,i,n),null),i},useId:function(){var t=bn(),n=vt.identifierPrefix;if(it){var i=Ma,l=Pa;i=(l&~(1<<32-Rt(l)-1)).toString(32)+i,n="_"+n+"R_"+i,i=Ac++,0<i&&(n+="H"+i.toString(32)),n+="_"}else i=Nj++,n="_"+n+"r_"+i.toString(32)+"_";return t.memoizedState=n},useHostTransitionStatus:qm,useFormState:Ig,useActionState:Ig,useOptimistic:function(t){var n=bn();n.memoizedState=n.baseState=t;var i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return n.queue=i,n=Bm.bind(null,$e,!0,i),i.dispatch=n,[t,n]},useMemoCache:Cm,useCacheRefresh:function(){return bn().memoizedState=Dj.bind(null,$e)},useEffectEvent:function(t){var n=bn(),i={impl:t};return n.memoizedState=i,function(){if((ct&2)!==0)throw Error(r(440));return i.impl.apply(void 0,arguments)}}},Pm={readContext:nn,use:Nc,useCallback:Yg,useContext:nn,useEffect:Tm,useImperativeHandle:Zg,useInsertionEffect:Hg,useLayoutEffect:Qg,useMemo:Xg,useReducer:_c,useRef:Gg,useState:function(){return _c(ni)},useDebugValue:Rm,useDeferredValue:function(t,n){var i=Pt();return Jg(i,ft.memoizedState,t,n)},useTransition:function(){var t=_c(ni)[0],n=Pt().memoizedState;return[typeof t=="boolean"?t:Gr(t),n]},useSyncExternalStore:Ng,useId:n1,useHostTransitionStatus:qm,useFormState:Vg,useActionState:Vg,useOptimistic:function(t,n){var i=Pt();return Dg(i,ft,t,n)},useMemoCache:Cm,useCacheRefresh:a1};Pm.useEffectEvent=Kg;var l1={readContext:nn,use:Nc,useCallback:Yg,useContext:nn,useEffect:Tm,useImperativeHandle:Zg,useInsertionEffect:Hg,useLayoutEffect:Qg,useMemo:Xg,useReducer:_m,useRef:Gg,useState:function(){return _m(ni)},useDebugValue:Rm,useDeferredValue:function(t,n){var i=Pt();return ft===null?Dm(i,t,n):Jg(i,ft.memoizedState,t,n)},useTransition:function(){var t=_m(ni)[0],n=Pt().memoizedState;return[typeof t=="boolean"?t:Gr(t),n]},useSyncExternalStore:Ng,useId:n1,useHostTransitionStatus:qm,useFormState:Ug,useActionState:Ug,useOptimistic:function(t,n){var i=Pt();return ft!==null?Dg(i,ft,t,n):(i.baseState=t,[t,i.queue.dispatch])},useMemoCache:Cm,useCacheRefresh:a1};l1.useEffectEvent=Kg;function Mm(t,n,i,l){n=t.memoizedState,i=i(l,n),i=i==null?n:A({},n,i),t.memoizedState=i,t.lanes===0&&(t.updateQueue.baseState=i)}var Im={enqueueSetState:function(t,n,i){t=t._reactInternals;var l=Qn(),p=Ti(l);p.payload=n,i!=null&&(p.callback=i),n=Ri(t,p,l),n!==null&&(Dn(n,t,l),Ir(n,t,l))},enqueueReplaceState:function(t,n,i){t=t._reactInternals;var l=Qn(),p=Ti(l);p.tag=1,p.payload=n,i!=null&&(p.callback=i),n=Ri(t,p,l),n!==null&&(Dn(n,t,l),Ir(n,t,l))},enqueueForceUpdate:function(t,n){t=t._reactInternals;var i=Qn(),l=Ti(i);l.tag=2,n!=null&&(l.callback=n),n=Ri(t,l,i),n!==null&&(Dn(n,t,i),Ir(n,t,i))}};function c1(t,n,i,l,p,h,x){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(l,h,x):n.prototype&&n.prototype.isPureReactComponent?!Tr(i,l)||!Tr(p,h):!0}function u1(t,n,i,l){t=n.state,typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(i,l),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(i,l),n.state!==t&&Im.enqueueReplaceState(n,n.state,null)}function Ds(t,n){var i=n;if("ref"in n){i={};for(var l in n)l!=="ref"&&(i[l]=n[l])}if(t=t.defaultProps){i===n&&(i=A({},i));for(var p in t)i[p]===void 0&&(i[p]=t[p])}return i}function d1(t){cc(t)}function m1(t){console.error(t)}function p1(t){cc(t)}function Rc(t,n){try{var i=t.onUncaughtError;i(n.value,{componentStack:n.stack})}catch(l){setTimeout(function(){throw l})}}function h1(t,n,i){try{var l=t.onCaughtError;l(i.value,{componentStack:i.stack,errorBoundary:n.tag===1?n.stateNode:null})}catch(p){setTimeout(function(){throw p})}}function Vm(t,n,i){return i=Ti(i),i.tag=3,i.payload={element:null},i.callback=function(){Rc(t,n)},i}function f1(t){return t=Ti(t),t.tag=3,t}function g1(t,n,i,l){var p=i.type.getDerivedStateFromError;if(typeof p=="function"){var h=l.value;t.payload=function(){return p(h)},t.callback=function(){h1(n,i,l)}}var x=i.stateNode;x!==null&&typeof x.componentDidCatch=="function"&&(t.callback=function(){h1(n,i,l),typeof p!="function"&&(Mi===null?Mi=new Set([this]):Mi.add(this));var w=l.stack;this.componentDidCatch(l.value,{componentStack:w!==null?w:""})})}function qj(t,n,i,l,p){if(i.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){if(n=i.alternate,n!==null&&bo(n,i,p,!0),i=Gn.current,i!==null){switch(i.tag){case 31:case 13:return ra===null?$c():i.alternate===null&&Ot===0&&(Ot=3),i.flags&=-257,i.flags|=65536,i.lanes=p,l===vc?i.flags|=16384:(n=i.updateQueue,n===null?i.updateQueue=new Set([l]):n.add(l),dp(t,l,p)),!1;case 22:return i.flags|=65536,l===vc?i.flags|=16384:(n=i.updateQueue,n===null?(n={transitions:null,markerInstances:null,retryQueue:new Set([l])},i.updateQueue=n):(i=n.retryQueue,i===null?n.retryQueue=new Set([l]):i.add(l)),dp(t,l,p)),!1}throw Error(r(435,i.tag))}return dp(t,l,p),$c(),!1}if(it)return n=Gn.current,n!==null?((n.flags&65536)===0&&(n.flags|=256),n.flags|=65536,n.lanes=p,l!==sm&&(t=Error(r(422),{cause:l}),Or(aa(t,i)))):(l!==sm&&(n=Error(r(423),{cause:l}),Or(aa(n,i))),t=t.current.alternate,t.flags|=65536,p&=-p,t.lanes|=p,l=aa(l,i),p=Vm(t.stateNode,l,p),gm(t,p),Ot!==4&&(Ot=2)),!1;var h=Error(r(520),{cause:l});if(h=aa(h,i),Wr===null?Wr=[h]:Wr.push(h),Ot!==4&&(Ot=2),n===null)return!0;l=aa(l,i),i=n;do{switch(i.tag){case 3:return i.flags|=65536,t=p&-p,i.lanes|=t,t=Vm(i.stateNode,l,t),gm(i,t),!1;case 1:if(n=i.type,h=i.stateNode,(i.flags&128)===0&&(typeof n.getDerivedStateFromError=="function"||h!==null&&typeof h.componentDidCatch=="function"&&(Mi===null||!Mi.has(h))))return i.flags|=65536,p&=-p,i.lanes|=p,p=f1(p),g1(p,t,i,l),gm(i,p),!1}i=i.return}while(i!==null);return!1}var Lm=Error(r(461)),Lt=!1;function an(t,n,i,l){n.child=t===null?xg(n,null,i,l):Ts(n,t.child,i,l)}function y1(t,n,i,l,p){i=i.render;var h=n.ref;if("ref"in l){var x={};for(var w in l)w!=="ref"&&(x[w]=l[w])}else x=l;return Ns(n),l=wm(t,n,i,x,h,p),w=Sm(),t!==null&&!Lt?(jm(t,n,p),ai(t,n,p)):(it&&w&&am(n),n.flags|=1,an(t,n,l,p),n.child)}function b1(t,n,i,l,p){if(t===null){var h=i.type;return typeof h=="function"&&!em(h)&&h.defaultProps===void 0&&i.compare===null?(n.tag=15,n.type=h,v1(t,n,h,l,p)):(t=pc(i.type,null,l,n,n.mode,p),t.ref=n.ref,t.return=n,n.child=t)}if(h=t.child,!Zm(t,p)){var x=h.memoizedProps;if(i=i.compare,i=i!==null?i:Tr,i(x,l)&&t.ref===n.ref)return ai(t,n,p)}return n.flags|=1,t=Xa(h,l),t.ref=n.ref,t.return=n,n.child=t}function v1(t,n,i,l,p){if(t!==null){var h=t.memoizedProps;if(Tr(h,l)&&t.ref===n.ref)if(Lt=!1,n.pendingProps=l=h,Zm(t,p))(t.flags&131072)!==0&&(Lt=!0);else return n.lanes=t.lanes,ai(t,n,p)}return Um(t,n,i,l,p)}function x1(t,n,i,l){var p=l.children,h=t!==null?t.memoizedState:null;if(t===null&&n.stateNode===null&&(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),l.mode==="hidden"){if((n.flags&128)!==0){if(h=h!==null?h.baseLanes|i:i,t!==null){for(l=n.child=t.child,p=0;l!==null;)p=p|l.lanes|l.childLanes,l=l.sibling;l=p&~h}else l=0,n.child=null;return k1(t,n,h,i,l)}if((i&536870912)!==0)n.memoizedState={baseLanes:0,cachePool:null},t!==null&&yc(n,h!==null?h.cachePool:null),h!==null?Sg(n,h):bm(),jg(n);else return l=n.lanes=536870912,k1(t,n,h!==null?h.baseLanes|i:i,i,l)}else h!==null?(yc(n,h.cachePool),Sg(n,h),Oi(),n.memoizedState=null):(t!==null&&yc(n,null),bm(),Oi());return an(t,n,p,i),n.child}function Hr(t,n){return t!==null&&t.tag===22||n.stateNode!==null||(n.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.sibling}function k1(t,n,i,l,p){var h=mm();return h=h===null?null:{parent:It._currentValue,pool:h},n.memoizedState={baseLanes:i,cachePool:h},t!==null&&yc(n,null),bm(),jg(n),t!==null&&bo(t,n,l,!0),n.childLanes=p,null}function Dc(t,n){return n=qc({mode:n.mode,children:n.children},t.mode),n.ref=t.ref,t.child=n,n.return=t,n}function w1(t,n,i){return Ts(n,t.child,null,i),t=Dc(n,n.pendingProps),t.flags|=2,$n(n),n.memoizedState=null,t}function Bj(t,n,i){var l=n.pendingProps,p=(n.flags&128)!==0;if(n.flags&=-129,t===null){if(it){if(l.mode==="hidden")return t=Dc(n,l),n.lanes=536870912,Hr(null,t);if(xm(n),(t=kt)?(t=Oy(t,oa),t=t!==null&&t.data==="&"?t:null,t!==null&&(n.memoizedState={dehydrated:t,treeContext:Ci!==null?{id:Pa,overflow:Ma}:null,retryLane:536870912,hydrationErrors:null},i=sg(t),i.return=n,n.child=i,tn=n,kt=null)):t=null,t===null)throw _i(n);return n.lanes=536870912,null}return Dc(n,l)}var h=t.memoizedState;if(h!==null){var x=h.dehydrated;if(xm(n),p)if(n.flags&256)n.flags&=-257,n=w1(t,n,i);else if(n.memoizedState!==null)n.child=t.child,n.flags|=128,n=null;else throw Error(r(558));else if(Lt||bo(t,n,i,!1),p=(i&t.childLanes)!==0,Lt||p){if(l=vt,l!==null&&(x=to(l,i),x!==0&&x!==h.retryLane))throw h.retryLane=x,Ss(t,x),Dn(l,t,x),Lm;$c(),n=w1(t,n,i)}else t=h.treeContext,kt=la(x.nextSibling),tn=n,it=!0,Ni=null,oa=!1,t!==null&&lg(n,t),n=Dc(n,l),n.flags|=4096;return n}return t=Xa(t.child,{mode:l.mode,children:l.children}),t.ref=n.ref,n.child=t,t.return=n,t}function Oc(t,n){var i=n.ref;if(i===null)t!==null&&t.ref!==null&&(n.flags|=4194816);else{if(typeof i!="function"&&typeof i!="object")throw Error(r(284));(t===null||t.ref!==i)&&(n.flags|=4194816)}}function Um(t,n,i,l,p){return Ns(n),i=wm(t,n,i,l,void 0,p),l=Sm(),t!==null&&!Lt?(jm(t,n,p),ai(t,n,p)):(it&&l&&am(n),n.flags|=1,an(t,n,i,p),n.child)}function S1(t,n,i,l,p,h){return Ns(n),n.updateQueue=null,i=Cg(n,l,i,p),Ag(t),l=Sm(),t!==null&&!Lt?(jm(t,n,h),ai(t,n,h)):(it&&l&&am(n),n.flags|=1,an(t,n,i,h),n.child)}function j1(t,n,i,l,p){if(Ns(n),n.stateNode===null){var h=ho,x=i.contextType;typeof x=="object"&&x!==null&&(h=nn(x)),h=new i(l,h),n.memoizedState=h.state!==null&&h.state!==void 0?h.state:null,h.updater=Im,n.stateNode=h,h._reactInternals=n,h=n.stateNode,h.props=l,h.state=n.memoizedState,h.refs={},hm(n),x=i.contextType,h.context=typeof x=="object"&&x!==null?nn(x):ho,h.state=n.memoizedState,x=i.getDerivedStateFromProps,typeof x=="function"&&(Mm(n,i,x,l),h.state=n.memoizedState),typeof i.getDerivedStateFromProps=="function"||typeof h.getSnapshotBeforeUpdate=="function"||typeof h.UNSAFE_componentWillMount!="function"&&typeof h.componentWillMount!="function"||(x=h.state,typeof h.componentWillMount=="function"&&h.componentWillMount(),typeof h.UNSAFE_componentWillMount=="function"&&h.UNSAFE_componentWillMount(),x!==h.state&&Im.enqueueReplaceState(h,h.state,null),Lr(n,l,h,p),Vr(),h.state=n.memoizedState),typeof h.componentDidMount=="function"&&(n.flags|=4194308),l=!0}else if(t===null){h=n.stateNode;var w=n.memoizedProps,z=Ds(i,w);h.props=z;var I=h.context,Y=i.contextType;x=ho,typeof Y=="object"&&Y!==null&&(x=nn(Y));var ie=i.getDerivedStateFromProps;Y=typeof ie=="function"||typeof h.getSnapshotBeforeUpdate=="function",w=n.pendingProps!==w,Y||typeof h.UNSAFE_componentWillReceiveProps!="function"&&typeof h.componentWillReceiveProps!="function"||(w||I!==x)&&u1(n,h,l,x),Ei=!1;var L=n.memoizedState;h.state=L,Lr(n,l,h,p),Vr(),I=n.memoizedState,w||L!==I||Ei?(typeof ie=="function"&&(Mm(n,i,ie,l),I=n.memoizedState),(z=Ei||c1(n,i,z,l,L,I,x))?(Y||typeof h.UNSAFE_componentWillMount!="function"&&typeof h.componentWillMount!="function"||(typeof h.componentWillMount=="function"&&h.componentWillMount(),typeof h.UNSAFE_componentWillMount=="function"&&h.UNSAFE_componentWillMount()),typeof h.componentDidMount=="function"&&(n.flags|=4194308)):(typeof h.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=l,n.memoizedState=I),h.props=l,h.state=I,h.context=x,l=z):(typeof h.componentDidMount=="function"&&(n.flags|=4194308),l=!1)}else{h=n.stateNode,fm(t,n),x=n.memoizedProps,Y=Ds(i,x),h.props=Y,ie=n.pendingProps,L=h.context,I=i.contextType,z=ho,typeof I=="object"&&I!==null&&(z=nn(I)),w=i.getDerivedStateFromProps,(I=typeof w=="function"||typeof h.getSnapshotBeforeUpdate=="function")||typeof h.UNSAFE_componentWillReceiveProps!="function"&&typeof h.componentWillReceiveProps!="function"||(x!==ie||L!==z)&&u1(n,h,l,z),Ei=!1,L=n.memoizedState,h.state=L,Lr(n,l,h,p),Vr();var F=n.memoizedState;x!==ie||L!==F||Ei||t!==null&&t.dependencies!==null&&fc(t.dependencies)?(typeof w=="function"&&(Mm(n,i,w,l),F=n.memoizedState),(Y=Ei||c1(n,i,Y,l,L,F,z)||t!==null&&t.dependencies!==null&&fc(t.dependencies))?(I||typeof h.UNSAFE_componentWillUpdate!="function"&&typeof h.componentWillUpdate!="function"||(typeof h.componentWillUpdate=="function"&&h.componentWillUpdate(l,F,z),typeof h.UNSAFE_componentWillUpdate=="function"&&h.UNSAFE_componentWillUpdate(l,F,z)),typeof h.componentDidUpdate=="function"&&(n.flags|=4),typeof h.getSnapshotBeforeUpdate=="function"&&(n.flags|=1024)):(typeof h.componentDidUpdate!="function"||x===t.memoizedProps&&L===t.memoizedState||(n.flags|=4),typeof h.getSnapshotBeforeUpdate!="function"||x===t.memoizedProps&&L===t.memoizedState||(n.flags|=1024),n.memoizedProps=l,n.memoizedState=F),h.props=l,h.state=F,h.context=z,l=Y):(typeof h.componentDidUpdate!="function"||x===t.memoizedProps&&L===t.memoizedState||(n.flags|=4),typeof h.getSnapshotBeforeUpdate!="function"||x===t.memoizedProps&&L===t.memoizedState||(n.flags|=1024),l=!1)}return h=l,Oc(t,n),l=(n.flags&128)!==0,h||l?(h=n.stateNode,i=l&&typeof i.getDerivedStateFromError!="function"?null:h.render(),n.flags|=1,t!==null&&l?(n.child=Ts(n,t.child,null,p),n.child=Ts(n,null,i,p)):an(t,n,i,p),n.memoizedState=h.state,t=n.child):t=ai(t,n,p),t}function A1(t,n,i,l){return As(),n.flags|=256,an(t,n,i,l),n.child}var Gm={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function $m(t){return{baseLanes:t,cachePool:hg()}}function Km(t,n,i){return t=t!==null?t.childLanes&~i:0,n&&(t|=Hn),t}function C1(t,n,i){var l=n.pendingProps,p=!1,h=(n.flags&128)!==0,x;if((x=h)||(x=t!==null&&t.memoizedState===null?!1:(Bt.current&2)!==0),x&&(p=!0,n.flags&=-129),x=(n.flags&32)!==0,n.flags&=-33,t===null){if(it){if(p?Di(n):Oi(),(t=kt)?(t=Oy(t,oa),t=t!==null&&t.data!=="&"?t:null,t!==null&&(n.memoizedState={dehydrated:t,treeContext:Ci!==null?{id:Pa,overflow:Ma}:null,retryLane:536870912,hydrationErrors:null},i=sg(t),i.return=n,n.child=i,tn=n,kt=null)):t=null,t===null)throw _i(n);return Np(t)?n.lanes=32:n.lanes=536870912,null}var w=l.children;return l=l.fallback,p?(Oi(),p=n.mode,w=qc({mode:"hidden",children:w},p),l=js(l,p,i,null),w.return=n,l.return=n,w.sibling=l,n.child=w,l=n.child,l.memoizedState=$m(i),l.childLanes=Km(t,x,i),n.memoizedState=Gm,Hr(null,l)):(Di(n),Hm(n,w))}var z=t.memoizedState;if(z!==null&&(w=z.dehydrated,w!==null)){if(h)n.flags&256?(Di(n),n.flags&=-257,n=Qm(t,n,i)):n.memoizedState!==null?(Oi(),n.child=t.child,n.flags|=128,n=null):(Oi(),w=l.fallback,p=n.mode,l=qc({mode:"visible",children:l.children},p),w=js(w,p,i,null),w.flags|=2,l.return=n,w.return=n,l.sibling=w,n.child=l,Ts(n,t.child,null,i),l=n.child,l.memoizedState=$m(i),l.childLanes=Km(t,x,i),n.memoizedState=Gm,n=Hr(null,l));else if(Di(n),Np(w)){if(x=w.nextSibling&&w.nextSibling.dataset,x)var I=x.dgst;x=I,l=Error(r(419)),l.stack="",l.digest=x,Or({value:l,source:null,stack:null}),n=Qm(t,n,i)}else if(Lt||bo(t,n,i,!1),x=(i&t.childLanes)!==0,Lt||x){if(x=vt,x!==null&&(l=to(x,i),l!==0&&l!==z.retryLane))throw z.retryLane=l,Ss(t,l),Dn(x,t,l),Lm;Cp(w)||$c(),n=Qm(t,n,i)}else Cp(w)?(n.flags|=192,n.child=t.child,n=null):(t=z.treeContext,kt=la(w.nextSibling),tn=n,it=!0,Ni=null,oa=!1,t!==null&&lg(n,t),n=Hm(n,l.children),n.flags|=4096);return n}return p?(Oi(),w=l.fallback,p=n.mode,z=t.child,I=z.sibling,l=Xa(z,{mode:"hidden",children:l.children}),l.subtreeFlags=z.subtreeFlags&65011712,I!==null?w=Xa(I,w):(w=js(w,p,i,null),w.flags|=2),w.return=n,l.return=n,l.sibling=w,n.child=l,Hr(null,l),l=n.child,w=t.child.memoizedState,w===null?w=$m(i):(p=w.cachePool,p!==null?(z=It._currentValue,p=p.parent!==z?{parent:z,pool:z}:p):p=hg(),w={baseLanes:w.baseLanes|i,cachePool:p}),l.memoizedState=w,l.childLanes=Km(t,x,i),n.memoizedState=Gm,Hr(t.child,l)):(Di(n),i=t.child,t=i.sibling,i=Xa(i,{mode:"visible",children:l.children}),i.return=n,i.sibling=null,t!==null&&(x=n.deletions,x===null?(n.deletions=[t],n.flags|=16):x.push(t)),n.child=i,n.memoizedState=null,i)}function Hm(t,n){return n=qc({mode:"visible",children:n},t.mode),n.return=t,t.child=n}function qc(t,n){return t=Un(22,t,null,n),t.lanes=0,t}function Qm(t,n,i){return Ts(n,t.child,null,i),t=Hm(n,n.pendingProps.children),t.flags|=2,n.memoizedState=null,t}function N1(t,n,i){t.lanes|=n;var l=t.alternate;l!==null&&(l.lanes|=n),lm(t.return,n,i)}function Fm(t,n,i,l,p,h){var x=t.memoizedState;x===null?t.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:l,tail:i,tailMode:p,treeForkCount:h}:(x.isBackwards=n,x.rendering=null,x.renderingStartTime=0,x.last=l,x.tail=i,x.tailMode=p,x.treeForkCount=h)}function _1(t,n,i){var l=n.pendingProps,p=l.revealOrder,h=l.tail;l=l.children;var x=Bt.current,w=(x&2)!==0;if(w?(x=x&1|2,n.flags|=128):x&=1,Ae(Bt,x),an(t,n,l,i),l=it?Dr:0,!w&&t!==null&&(t.flags&128)!==0)e:for(t=n.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&N1(t,i,n);else if(t.tag===19)N1(t,i,n);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===n)break e;for(;t.sibling===null;){if(t.return===null||t.return===n)break e;t=t.return}t.sibling.return=t.return,t=t.sibling}switch(p){case"forwards":for(i=n.child,p=null;i!==null;)t=i.alternate,t!==null&&Sc(t)===null&&(p=i),i=i.sibling;i=p,i===null?(p=n.child,n.child=null):(p=i.sibling,i.sibling=null),Fm(n,!1,p,i,h,l);break;case"backwards":case"unstable_legacy-backwards":for(i=null,p=n.child,n.child=null;p!==null;){if(t=p.alternate,t!==null&&Sc(t)===null){n.child=p;break}t=p.sibling,p.sibling=i,i=p,p=t}Fm(n,!0,i,null,h,l);break;case"together":Fm(n,!1,null,null,void 0,l);break;default:n.memoizedState=null}return n.child}function ai(t,n,i){if(t!==null&&(n.dependencies=t.dependencies),Pi|=n.lanes,(i&n.childLanes)===0)if(t!==null){if(bo(t,n,i,!1),(i&n.childLanes)===0)return null}else return null;if(t!==null&&n.child!==t.child)throw Error(r(153));if(n.child!==null){for(t=n.child,i=Xa(t,t.pendingProps),n.child=i,i.return=n;t.sibling!==null;)t=t.sibling,i=i.sibling=Xa(t,t.pendingProps),i.return=n;i.sibling=null}return n.child}function Zm(t,n){return(t.lanes&n)!==0?!0:(t=t.dependencies,!!(t!==null&&fc(t)))}function Pj(t,n,i){switch(n.tag){case 3:De(n,n.stateNode.containerInfo),zi(n,It,t.memoizedState.cache),As();break;case 27:case 5:Je(n);break;case 4:De(n,n.stateNode.containerInfo);break;case 10:zi(n,n.type,n.memoizedProps.value);break;case 31:if(n.memoizedState!==null)return n.flags|=128,xm(n),null;break;case 13:var l=n.memoizedState;if(l!==null)return l.dehydrated!==null?(Di(n),n.flags|=128,null):(i&n.child.childLanes)!==0?C1(t,n,i):(Di(n),t=ai(t,n,i),t!==null?t.sibling:null);Di(n);break;case 19:var p=(t.flags&128)!==0;if(l=(i&n.childLanes)!==0,l||(bo(t,n,i,!1),l=(i&n.childLanes)!==0),p){if(l)return _1(t,n,i);n.flags|=128}if(p=n.memoizedState,p!==null&&(p.rendering=null,p.tail=null,p.lastEffect=null),Ae(Bt,Bt.current),l)break;return null;case 22:return n.lanes=0,x1(t,n,i,n.pendingProps);case 24:zi(n,It,t.memoizedState.cache)}return ai(t,n,i)}function z1(t,n,i){if(t!==null)if(t.memoizedProps!==n.pendingProps)Lt=!0;else{if(!Zm(t,i)&&(n.flags&128)===0)return Lt=!1,Pj(t,n,i);Lt=(t.flags&131072)!==0}else Lt=!1,it&&(n.flags&1048576)!==0&&rg(n,Dr,n.index);switch(n.lanes=0,n.tag){case 16:e:{var l=n.pendingProps;if(t=zs(n.elementType),n.type=t,typeof t=="function")em(t)?(l=Ds(t,l),n.tag=1,n=j1(null,n,t,l,i)):(n.tag=0,n=Um(null,n,t,l,i));else{if(t!=null){var p=t.$$typeof;if(p===re){n.tag=11,n=y1(null,n,t,l,i);break e}else if(p===H){n.tag=14,n=b1(null,n,t,l,i);break e}}throw n=Ue(t)||t,Error(r(306,n,""))}}return n;case 0:return Um(t,n,n.type,n.pendingProps,i);case 1:return l=n.type,p=Ds(l,n.pendingProps),j1(t,n,l,p,i);case 3:e:{if(De(n,n.stateNode.containerInfo),t===null)throw Error(r(387));l=n.pendingProps;var h=n.memoizedState;p=h.element,fm(t,n),Lr(n,l,null,i);var x=n.memoizedState;if(l=x.cache,zi(n,It,l),l!==h.cache&&cm(n,[It],i,!0),Vr(),l=x.element,h.isDehydrated)if(h={element:l,isDehydrated:!1,cache:x.cache},n.updateQueue.baseState=h,n.memoizedState=h,n.flags&256){n=A1(t,n,l,i);break e}else if(l!==p){p=aa(Error(r(424)),n),Or(p),n=A1(t,n,l,i);break e}else for(t=n.stateNode.containerInfo,t.nodeType===9?t=t.body:t=t.nodeName==="HTML"?t.ownerDocument.body:t,kt=la(t.firstChild),tn=n,it=!0,Ni=null,oa=!0,i=xg(n,null,l,i),n.child=i;i;)i.flags=i.flags&-3|4096,i=i.sibling;else{if(As(),l===p){n=ai(t,n,i);break e}an(t,n,l,i)}n=n.child}return n;case 26:return Oc(t,n),t===null?(i=Vy(n.type,null,n.pendingProps,null))?n.memoizedState=i:it||(i=n.type,t=n.pendingProps,l=Xc(q.current).createElement(i),l[Mt]=n,l[en]=t,sn(l,i,t),qt(l),n.stateNode=l):n.memoizedState=Vy(n.type,t.memoizedProps,n.pendingProps,t.memoizedState),null;case 27:return Je(n),t===null&&it&&(l=n.stateNode=Py(n.type,n.pendingProps,q.current),tn=n,oa=!0,p=kt,Ui(n.type)?(_p=p,kt=la(l.firstChild)):kt=p),an(t,n,n.pendingProps.children,i),Oc(t,n),t===null&&(n.flags|=4194304),n.child;case 5:return t===null&&it&&((p=l=kt)&&(l=p4(l,n.type,n.pendingProps,oa),l!==null?(n.stateNode=l,tn=n,kt=la(l.firstChild),oa=!1,p=!0):p=!1),p||_i(n)),Je(n),p=n.type,h=n.pendingProps,x=t!==null?t.memoizedProps:null,l=h.children,Sp(p,h)?l=null:x!==null&&Sp(p,x)&&(n.flags|=32),n.memoizedState!==null&&(p=wm(t,n,_j,null,null,i),rl._currentValue=p),Oc(t,n),an(t,n,l,i),n.child;case 6:return t===null&&it&&((t=i=kt)&&(i=h4(i,n.pendingProps,oa),i!==null?(n.stateNode=i,tn=n,kt=null,t=!0):t=!1),t||_i(n)),null;case 13:return C1(t,n,i);case 4:return De(n,n.stateNode.containerInfo),l=n.pendingProps,t===null?n.child=Ts(n,null,l,i):an(t,n,l,i),n.child;case 11:return y1(t,n,n.type,n.pendingProps,i);case 7:return an(t,n,n.pendingProps,i),n.child;case 8:return an(t,n,n.pendingProps.children,i),n.child;case 12:return an(t,n,n.pendingProps.children,i),n.child;case 10:return l=n.pendingProps,zi(n,n.type,l.value),an(t,n,l.children,i),n.child;case 9:return p=n.type._context,l=n.pendingProps.children,Ns(n),p=nn(p),l=l(p),n.flags|=1,an(t,n,l,i),n.child;case 14:return b1(t,n,n.type,n.pendingProps,i);case 15:return v1(t,n,n.type,n.pendingProps,i);case 19:return _1(t,n,i);case 31:return Bj(t,n,i);case 22:return x1(t,n,i,n.pendingProps);case 24:return Ns(n),l=nn(It),t===null?(p=mm(),p===null&&(p=vt,h=um(),p.pooledCache=h,h.refCount++,h!==null&&(p.pooledCacheLanes|=i),p=h),n.memoizedState={parent:l,cache:p},hm(n),zi(n,It,p)):((t.lanes&i)!==0&&(fm(t,n),Lr(n,null,null,i),Vr()),p=t.memoizedState,h=n.memoizedState,p.parent!==l?(p={parent:l,cache:l},n.memoizedState=p,n.lanes===0&&(n.memoizedState=n.updateQueue.baseState=p),zi(n,It,l)):(l=h.cache,zi(n,It,l),l!==p.cache&&cm(n,[It],i,!0))),an(t,n,n.pendingProps.children,i),n.child;case 29:throw n.pendingProps}throw Error(r(156,n.tag))}function ii(t){t.flags|=4}function Ym(t,n,i,l,p){if((n=(t.mode&32)!==0)&&(n=!1),n){if(t.flags|=16777216,(p&335544128)===p)if(t.stateNode.complete)t.flags|=8192;else if(ny())t.flags|=8192;else throw Es=vc,pm}else t.flags&=-16777217}function E1(t,n){if(n.type!=="stylesheet"||(n.state.loading&4)!==0)t.flags&=-16777217;else if(t.flags|=16777216,!Ky(n))if(ny())t.flags|=8192;else throw Es=vc,pm}function Bc(t,n){n!==null&&(t.flags|=4),t.flags&16384&&(n=t.tag!==22?br():536870912,t.lanes|=n,Eo|=n)}function Qr(t,n){if(!it)switch(t.tailMode){case"hidden":n=t.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?t.tail=null:i.sibling=null;break;case"collapsed":i=t.tail;for(var l=null;i!==null;)i.alternate!==null&&(l=i),i=i.sibling;l===null?n||t.tail===null?t.tail=null:t.tail.sibling=null:l.sibling=null}}function wt(t){var n=t.alternate!==null&&t.alternate.child===t.child,i=0,l=0;if(n)for(var p=t.child;p!==null;)i|=p.lanes|p.childLanes,l|=p.subtreeFlags&65011712,l|=p.flags&65011712,p.return=t,p=p.sibling;else for(p=t.child;p!==null;)i|=p.lanes|p.childLanes,l|=p.subtreeFlags,l|=p.flags,p.return=t,p=p.sibling;return t.subtreeFlags|=l,t.childLanes=i,n}function Mj(t,n,i){var l=n.pendingProps;switch(im(n),n.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return wt(n),null;case 1:return wt(n),null;case 3:return i=n.stateNode,l=null,t!==null&&(l=t.memoizedState.cache),n.memoizedState.cache!==l&&(n.flags|=2048),ei(It),ye(),i.pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(t===null||t.child===null)&&(yo(n)?ii(n):t===null||t.memoizedState.isDehydrated&&(n.flags&256)===0||(n.flags|=1024,om())),wt(n),null;case 26:var p=n.type,h=n.memoizedState;return t===null?(ii(n),h!==null?(wt(n),E1(n,h)):(wt(n),Ym(n,p,null,l,i))):h?h!==t.memoizedState?(ii(n),wt(n),E1(n,h)):(wt(n),n.flags&=-16777217):(t=t.memoizedProps,t!==l&&ii(n),wt(n),Ym(n,p,t,l,i)),null;case 27:if(Ge(n),i=q.current,p=n.type,t!==null&&n.stateNode!=null)t.memoizedProps!==l&&ii(n);else{if(!l){if(n.stateNode===null)throw Error(r(166));return wt(n),null}t=ne.current,yo(n)?cg(n):(t=Py(p,l,i),n.stateNode=t,ii(n))}return wt(n),null;case 5:if(Ge(n),p=n.type,t!==null&&n.stateNode!=null)t.memoizedProps!==l&&ii(n);else{if(!l){if(n.stateNode===null)throw Error(r(166));return wt(n),null}if(h=ne.current,yo(n))cg(n);else{var x=Xc(q.current);switch(h){case 1:h=x.createElementNS("http://www.w3.org/2000/svg",p);break;case 2:h=x.createElementNS("http://www.w3.org/1998/Math/MathML",p);break;default:switch(p){case"svg":h=x.createElementNS("http://www.w3.org/2000/svg",p);break;case"math":h=x.createElementNS("http://www.w3.org/1998/Math/MathML",p);break;case"script":h=x.createElement("div"),h.innerHTML="<script><\/script>",h=h.removeChild(h.firstChild);break;case"select":h=typeof l.is=="string"?x.createElement("select",{is:l.is}):x.createElement("select"),l.multiple?h.multiple=!0:l.size&&(h.size=l.size);break;default:h=typeof l.is=="string"?x.createElement(p,{is:l.is}):x.createElement(p)}}h[Mt]=n,h[en]=l;e:for(x=n.child;x!==null;){if(x.tag===5||x.tag===6)h.appendChild(x.stateNode);else if(x.tag!==4&&x.tag!==27&&x.child!==null){x.child.return=x,x=x.child;continue}if(x===n)break e;for(;x.sibling===null;){if(x.return===null||x.return===n)break e;x=x.return}x.sibling.return=x.return,x=x.sibling}n.stateNode=h;e:switch(sn(h,p,l),p){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&ii(n)}}return wt(n),Ym(n,n.type,t===null?null:t.memoizedProps,n.pendingProps,i),null;case 6:if(t&&n.stateNode!=null)t.memoizedProps!==l&&ii(n);else{if(typeof l!="string"&&n.stateNode===null)throw Error(r(166));if(t=q.current,yo(n)){if(t=n.stateNode,i=n.memoizedProps,l=null,p=tn,p!==null)switch(p.tag){case 27:case 5:l=p.memoizedProps}t[Mt]=n,t=!!(t.nodeValue===i||l!==null&&l.suppressHydrationWarning===!0||Cy(t.nodeValue,i)),t||_i(n,!0)}else t=Xc(t).createTextNode(l),t[Mt]=n,n.stateNode=t}return wt(n),null;case 31:if(i=n.memoizedState,t===null||t.memoizedState!==null){if(l=yo(n),i!==null){if(t===null){if(!l)throw Error(r(318));if(t=n.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(r(557));t[Mt]=n}else As(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;wt(n),t=!1}else i=om(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=i),t=!0;if(!t)return n.flags&256?($n(n),n):($n(n),null);if((n.flags&128)!==0)throw Error(r(558))}return wt(n),null;case 13:if(l=n.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(p=yo(n),l!==null&&l.dehydrated!==null){if(t===null){if(!p)throw Error(r(318));if(p=n.memoizedState,p=p!==null?p.dehydrated:null,!p)throw Error(r(317));p[Mt]=n}else As(),(n.flags&128)===0&&(n.memoizedState=null),n.flags|=4;wt(n),p=!1}else p=om(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=p),p=!0;if(!p)return n.flags&256?($n(n),n):($n(n),null)}return $n(n),(n.flags&128)!==0?(n.lanes=i,n):(i=l!==null,t=t!==null&&t.memoizedState!==null,i&&(l=n.child,p=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(p=l.alternate.memoizedState.cachePool.pool),h=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(h=l.memoizedState.cachePool.pool),h!==p&&(l.flags|=2048)),i!==t&&i&&(n.child.flags|=8192),Bc(n,n.updateQueue),wt(n),null);case 4:return ye(),t===null&&bp(n.stateNode.containerInfo),wt(n),null;case 10:return ei(n.type),wt(n),null;case 19:if(Ne(Bt),l=n.memoizedState,l===null)return wt(n),null;if(p=(n.flags&128)!==0,h=l.rendering,h===null)if(p)Qr(l,!1);else{if(Ot!==0||t!==null&&(t.flags&128)!==0)for(t=n.child;t!==null;){if(h=Sc(t),h!==null){for(n.flags|=128,Qr(l,!1),t=h.updateQueue,n.updateQueue=t,Bc(n,t),n.subtreeFlags=0,t=i,i=n.child;i!==null;)ig(i,t),i=i.sibling;return Ae(Bt,Bt.current&1|2),it&&Ja(n,l.treeForkCount),n.child}t=t.sibling}l.tail!==null&&cn()>Lc&&(n.flags|=128,p=!0,Qr(l,!1),n.lanes=4194304)}else{if(!p)if(t=Sc(h),t!==null){if(n.flags|=128,p=!0,t=t.updateQueue,n.updateQueue=t,Bc(n,t),Qr(l,!0),l.tail===null&&l.tailMode==="hidden"&&!h.alternate&&!it)return wt(n),null}else 2*cn()-l.renderingStartTime>Lc&&i!==536870912&&(n.flags|=128,p=!0,Qr(l,!1),n.lanes=4194304);l.isBackwards?(h.sibling=n.child,n.child=h):(t=l.last,t!==null?t.sibling=h:n.child=h,l.last=h)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=cn(),t.sibling=null,i=Bt.current,Ae(Bt,p?i&1|2:i&1),it&&Ja(n,l.treeForkCount),t):(wt(n),null);case 22:case 23:return $n(n),vm(),l=n.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(n.flags|=8192):l&&(n.flags|=8192),l?(i&536870912)!==0&&(n.flags&128)===0&&(wt(n),n.subtreeFlags&6&&(n.flags|=8192)):wt(n),i=n.updateQueue,i!==null&&Bc(n,i.retryQueue),i=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(i=t.memoizedState.cachePool.pool),l=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(l=n.memoizedState.cachePool.pool),l!==i&&(n.flags|=2048),t!==null&&Ne(_s),null;case 24:return i=null,t!==null&&(i=t.memoizedState.cache),n.memoizedState.cache!==i&&(n.flags|=2048),ei(It),wt(n),null;case 25:return null;case 30:return null}throw Error(r(156,n.tag))}function Ij(t,n){switch(im(n),n.tag){case 1:return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 3:return ei(It),ye(),t=n.flags,(t&65536)!==0&&(t&128)===0?(n.flags=t&-65537|128,n):null;case 26:case 27:case 5:return Ge(n),null;case 31:if(n.memoizedState!==null){if($n(n),n.alternate===null)throw Error(r(340));As()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 13:if($n(n),t=n.memoizedState,t!==null&&t.dehydrated!==null){if(n.alternate===null)throw Error(r(340));As()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 19:return Ne(Bt),null;case 4:return ye(),null;case 10:return ei(n.type),null;case 22:case 23:return $n(n),vm(),t!==null&&Ne(_s),t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 24:return ei(It),null;case 25:return null;default:return null}}function T1(t,n){switch(im(n),n.tag){case 3:ei(It),ye();break;case 26:case 27:case 5:Ge(n);break;case 4:ye();break;case 31:n.memoizedState!==null&&$n(n);break;case 13:$n(n);break;case 19:Ne(Bt);break;case 10:ei(n.type);break;case 22:case 23:$n(n),vm(),t!==null&&Ne(_s);break;case 24:ei(It)}}function Fr(t,n){try{var i=n.updateQueue,l=i!==null?i.lastEffect:null;if(l!==null){var p=l.next;i=p;do{if((i.tag&t)===t){l=void 0;var h=i.create,x=i.inst;l=h(),x.destroy=l}i=i.next}while(i!==p)}}catch(w){pt(n,n.return,w)}}function qi(t,n,i){try{var l=n.updateQueue,p=l!==null?l.lastEffect:null;if(p!==null){var h=p.next;l=h;do{if((l.tag&t)===t){var x=l.inst,w=x.destroy;if(w!==void 0){x.destroy=void 0,p=n;var z=i,I=w;try{I()}catch(Y){pt(p,z,Y)}}}l=l.next}while(l!==h)}}catch(Y){pt(n,n.return,Y)}}function R1(t){var n=t.updateQueue;if(n!==null){var i=t.stateNode;try{wg(n,i)}catch(l){pt(t,t.return,l)}}}function D1(t,n,i){i.props=Ds(t.type,t.memoizedProps),i.state=t.memoizedState;try{i.componentWillUnmount()}catch(l){pt(t,n,l)}}function Zr(t,n){try{var i=t.ref;if(i!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:l=t.stateNode;break;default:l=t.stateNode}typeof i=="function"?t.refCleanup=i(l):i.current=l}}catch(p){pt(t,n,p)}}function Ia(t,n){var i=t.ref,l=t.refCleanup;if(i!==null)if(typeof l=="function")try{l()}catch(p){pt(t,n,p)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof i=="function")try{i(null)}catch(p){pt(t,n,p)}else i.current=null}function O1(t){var n=t.type,i=t.memoizedProps,l=t.stateNode;try{e:switch(n){case"button":case"input":case"select":case"textarea":i.autoFocus&&l.focus();break e;case"img":i.src?l.src=i.src:i.srcSet&&(l.srcset=i.srcSet)}}catch(p){pt(t,t.return,p)}}function Xm(t,n,i){try{var l=t.stateNode;r4(l,t.type,i,n),l[en]=n}catch(p){pt(t,t.return,p)}}function q1(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&Ui(t.type)||t.tag===4}function Jm(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||q1(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&Ui(t.type)||t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Wm(t,n,i){var l=t.tag;if(l===5||l===6)t=t.stateNode,n?(i.nodeType===9?i.body:i.nodeName==="HTML"?i.ownerDocument.body:i).insertBefore(t,n):(n=i.nodeType===9?i.body:i.nodeName==="HTML"?i.ownerDocument.body:i,n.appendChild(t),i=i._reactRootContainer,i!=null||n.onclick!==null||(n.onclick=Wn));else if(l!==4&&(l===27&&Ui(t.type)&&(i=t.stateNode,n=null),t=t.child,t!==null))for(Wm(t,n,i),t=t.sibling;t!==null;)Wm(t,n,i),t=t.sibling}function Pc(t,n,i){var l=t.tag;if(l===5||l===6)t=t.stateNode,n?i.insertBefore(t,n):i.appendChild(t);else if(l!==4&&(l===27&&Ui(t.type)&&(i=t.stateNode),t=t.child,t!==null))for(Pc(t,n,i),t=t.sibling;t!==null;)Pc(t,n,i),t=t.sibling}function B1(t){var n=t.stateNode,i=t.memoizedProps;try{for(var l=t.type,p=n.attributes;p.length;)n.removeAttributeNode(p[0]);sn(n,l,i),n[Mt]=t,n[en]=i}catch(h){pt(t,t.return,h)}}var si=!1,Ut=!1,ep=!1,P1=typeof WeakSet=="function"?WeakSet:Set,Xt=null;function Vj(t,n){if(t=t.containerInfo,kp=iu,t=Zf(t),Qd(t)){if("selectionStart"in t)var i={start:t.selectionStart,end:t.selectionEnd};else e:{i=(i=t.ownerDocument)&&i.defaultView||window;var l=i.getSelection&&i.getSelection();if(l&&l.rangeCount!==0){i=l.anchorNode;var p=l.anchorOffset,h=l.focusNode;l=l.focusOffset;try{i.nodeType,h.nodeType}catch{i=null;break e}var x=0,w=-1,z=-1,I=0,Y=0,ie=t,L=null;t:for(;;){for(var F;ie!==i||p!==0&&ie.nodeType!==3||(w=x+p),ie!==h||l!==0&&ie.nodeType!==3||(z=x+l),ie.nodeType===3&&(x+=ie.nodeValue.length),(F=ie.firstChild)!==null;)L=ie,ie=F;for(;;){if(ie===t)break t;if(L===i&&++I===p&&(w=x),L===h&&++Y===l&&(z=x),(F=ie.nextSibling)!==null)break;ie=L,L=ie.parentNode}ie=F}i=w===-1||z===-1?null:{start:w,end:z}}else i=null}i=i||{start:0,end:0}}else i=null;for(wp={focusedElem:t,selectionRange:i},iu=!1,Xt=n;Xt!==null;)if(n=Xt,t=n.child,(n.subtreeFlags&1028)!==0&&t!==null)t.return=n,Xt=t;else for(;Xt!==null;){switch(n=Xt,h=n.alternate,t=n.flags,n.tag){case 0:if((t&4)!==0&&(t=n.updateQueue,t=t!==null?t.events:null,t!==null))for(i=0;i<t.length;i++)p=t[i],p.ref.impl=p.nextImpl;break;case 11:case 15:break;case 1:if((t&1024)!==0&&h!==null){t=void 0,i=n,p=h.memoizedProps,h=h.memoizedState,l=i.stateNode;try{var xe=Ds(i.type,p);t=l.getSnapshotBeforeUpdate(xe,h),l.__reactInternalSnapshotBeforeUpdate=t}catch(Oe){pt(i,i.return,Oe)}}break;case 3:if((t&1024)!==0){if(t=n.stateNode.containerInfo,i=t.nodeType,i===9)Ap(t);else if(i===1)switch(t.nodeName){case"HEAD":case"HTML":case"BODY":Ap(t);break;default:t.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((t&1024)!==0)throw Error(r(163))}if(t=n.sibling,t!==null){t.return=n.return,Xt=t;break}Xt=n.return}}function M1(t,n,i){var l=i.flags;switch(i.tag){case 0:case 11:case 15:ri(t,i),l&4&&Fr(5,i);break;case 1:if(ri(t,i),l&4)if(t=i.stateNode,n===null)try{t.componentDidMount()}catch(x){pt(i,i.return,x)}else{var p=Ds(i.type,n.memoizedProps);n=n.memoizedState;try{t.componentDidUpdate(p,n,t.__reactInternalSnapshotBeforeUpdate)}catch(x){pt(i,i.return,x)}}l&64&&R1(i),l&512&&Zr(i,i.return);break;case 3:if(ri(t,i),l&64&&(t=i.updateQueue,t!==null)){if(n=null,i.child!==null)switch(i.child.tag){case 27:case 5:n=i.child.stateNode;break;case 1:n=i.child.stateNode}try{wg(t,n)}catch(x){pt(i,i.return,x)}}break;case 27:n===null&&l&4&&B1(i);case 26:case 5:ri(t,i),n===null&&l&4&&O1(i),l&512&&Zr(i,i.return);break;case 12:ri(t,i);break;case 31:ri(t,i),l&4&&L1(t,i);break;case 13:ri(t,i),l&4&&U1(t,i),l&64&&(t=i.memoizedState,t!==null&&(t=t.dehydrated,t!==null&&(i=Zj.bind(null,i),f4(t,i))));break;case 22:if(l=i.memoizedState!==null||si,!l){n=n!==null&&n.memoizedState!==null||Ut,p=si;var h=Ut;si=l,(Ut=n)&&!h?li(t,i,(i.subtreeFlags&8772)!==0):ri(t,i),si=p,Ut=h}break;case 30:break;default:ri(t,i)}}function I1(t){var n=t.alternate;n!==null&&(t.alternate=null,I1(n)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(n=t.stateNode,n!==null&&no(n)),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}var jt=null,zn=!1;function oi(t,n,i){for(i=i.child;i!==null;)V1(t,n,i),i=i.sibling}function V1(t,n,i){if(Wt&&typeof Wt.onCommitFiberUnmount=="function")try{Wt.onCommitFiberUnmount(ds,i)}catch{}switch(i.tag){case 26:Ut||Ia(i,n),oi(t,n,i),i.memoizedState?i.memoizedState.count--:i.stateNode&&(i=i.stateNode,i.parentNode.removeChild(i));break;case 27:Ut||Ia(i,n);var l=jt,p=zn;Ui(i.type)&&(jt=i.stateNode,zn=!1),oi(t,n,i),il(i.stateNode),jt=l,zn=p;break;case 5:Ut||Ia(i,n);case 6:if(l=jt,p=zn,jt=null,oi(t,n,i),jt=l,zn=p,jt!==null)if(zn)try{(jt.nodeType===9?jt.body:jt.nodeName==="HTML"?jt.ownerDocument.body:jt).removeChild(i.stateNode)}catch(h){pt(i,n,h)}else try{jt.removeChild(i.stateNode)}catch(h){pt(i,n,h)}break;case 18:jt!==null&&(zn?(t=jt,Ry(t.nodeType===9?t.body:t.nodeName==="HTML"?t.ownerDocument.body:t,i.stateNode),Mo(t)):Ry(jt,i.stateNode));break;case 4:l=jt,p=zn,jt=i.stateNode.containerInfo,zn=!0,oi(t,n,i),jt=l,zn=p;break;case 0:case 11:case 14:case 15:qi(2,i,n),Ut||qi(4,i,n),oi(t,n,i);break;case 1:Ut||(Ia(i,n),l=i.stateNode,typeof l.componentWillUnmount=="function"&&D1(i,n,l)),oi(t,n,i);break;case 21:oi(t,n,i);break;case 22:Ut=(l=Ut)||i.memoizedState!==null,oi(t,n,i),Ut=l;break;default:oi(t,n,i)}}function L1(t,n){if(n.memoizedState===null&&(t=n.alternate,t!==null&&(t=t.memoizedState,t!==null))){t=t.dehydrated;try{Mo(t)}catch(i){pt(n,n.return,i)}}}function U1(t,n){if(n.memoizedState===null&&(t=n.alternate,t!==null&&(t=t.memoizedState,t!==null&&(t=t.dehydrated,t!==null))))try{Mo(t)}catch(i){pt(n,n.return,i)}}function Lj(t){switch(t.tag){case 31:case 13:case 19:var n=t.stateNode;return n===null&&(n=t.stateNode=new P1),n;case 22:return t=t.stateNode,n=t._retryCache,n===null&&(n=t._retryCache=new P1),n;default:throw Error(r(435,t.tag))}}function Mc(t,n){var i=Lj(t);n.forEach(function(l){if(!i.has(l)){i.add(l);var p=Yj.bind(null,t,l);l.then(p,p)}})}function En(t,n){var i=n.deletions;if(i!==null)for(var l=0;l<i.length;l++){var p=i[l],h=t,x=n,w=x;e:for(;w!==null;){switch(w.tag){case 27:if(Ui(w.type)){jt=w.stateNode,zn=!1;break e}break;case 5:jt=w.stateNode,zn=!1;break e;case 3:case 4:jt=w.stateNode.containerInfo,zn=!0;break e}w=w.return}if(jt===null)throw Error(r(160));V1(h,x,p),jt=null,zn=!1,h=p.alternate,h!==null&&(h.return=null),p.return=null}if(n.subtreeFlags&13886)for(n=n.child;n!==null;)G1(n,t),n=n.sibling}var wa=null;function G1(t,n){var i=t.alternate,l=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:En(n,t),Tn(t),l&4&&(qi(3,t,t.return),Fr(3,t),qi(5,t,t.return));break;case 1:En(n,t),Tn(t),l&512&&(Ut||i===null||Ia(i,i.return)),l&64&&si&&(t=t.updateQueue,t!==null&&(l=t.callbacks,l!==null&&(i=t.shared.hiddenCallbacks,t.shared.hiddenCallbacks=i===null?l:i.concat(l))));break;case 26:var p=wa;if(En(n,t),Tn(t),l&512&&(Ut||i===null||Ia(i,i.return)),l&4){var h=i!==null?i.memoizedState:null;if(l=t.memoizedState,i===null)if(l===null)if(t.stateNode===null){e:{l=t.type,i=t.memoizedProps,p=p.ownerDocument||p;t:switch(l){case"title":h=p.getElementsByTagName("title")[0],(!h||h[ps]||h[Mt]||h.namespaceURI==="http://www.w3.org/2000/svg"||h.hasAttribute("itemprop"))&&(h=p.createElement(l),p.head.insertBefore(h,p.querySelector("head > title"))),sn(h,l,i),h[Mt]=t,qt(h),l=h;break e;case"link":var x=Gy("link","href",p).get(l+(i.href||""));if(x){for(var w=0;w<x.length;w++)if(h=x[w],h.getAttribute("href")===(i.href==null||i.href===""?null:i.href)&&h.getAttribute("rel")===(i.rel==null?null:i.rel)&&h.getAttribute("title")===(i.title==null?null:i.title)&&h.getAttribute("crossorigin")===(i.crossOrigin==null?null:i.crossOrigin)){x.splice(w,1);break t}}h=p.createElement(l),sn(h,l,i),p.head.appendChild(h);break;case"meta":if(x=Gy("meta","content",p).get(l+(i.content||""))){for(w=0;w<x.length;w++)if(h=x[w],h.getAttribute("content")===(i.content==null?null:""+i.content)&&h.getAttribute("name")===(i.name==null?null:i.name)&&h.getAttribute("property")===(i.property==null?null:i.property)&&h.getAttribute("http-equiv")===(i.httpEquiv==null?null:i.httpEquiv)&&h.getAttribute("charset")===(i.charSet==null?null:i.charSet)){x.splice(w,1);break t}}h=p.createElement(l),sn(h,l,i),p.head.appendChild(h);break;default:throw Error(r(468,l))}h[Mt]=t,qt(h),l=h}t.stateNode=l}else $y(p,t.type,t.stateNode);else t.stateNode=Uy(p,l,t.memoizedProps);else h!==l?(h===null?i.stateNode!==null&&(i=i.stateNode,i.parentNode.removeChild(i)):h.count--,l===null?$y(p,t.type,t.stateNode):Uy(p,l,t.memoizedProps)):l===null&&t.stateNode!==null&&Xm(t,t.memoizedProps,i.memoizedProps)}break;case 27:En(n,t),Tn(t),l&512&&(Ut||i===null||Ia(i,i.return)),i!==null&&l&4&&Xm(t,t.memoizedProps,i.memoizedProps);break;case 5:if(En(n,t),Tn(t),l&512&&(Ut||i===null||Ia(i,i.return)),t.flags&32){p=t.stateNode;try{_n(p,"")}catch(xe){pt(t,t.return,xe)}}l&4&&t.stateNode!=null&&(p=t.memoizedProps,Xm(t,p,i!==null?i.memoizedProps:p)),l&1024&&(ep=!0);break;case 6:if(En(n,t),Tn(t),l&4){if(t.stateNode===null)throw Error(r(162));l=t.memoizedProps,i=t.stateNode;try{i.nodeValue=l}catch(xe){pt(t,t.return,xe)}}break;case 3:if(eu=null,p=wa,wa=Jc(n.containerInfo),En(n,t),wa=p,Tn(t),l&4&&i!==null&&i.memoizedState.isDehydrated)try{Mo(n.containerInfo)}catch(xe){pt(t,t.return,xe)}ep&&(ep=!1,$1(t));break;case 4:l=wa,wa=Jc(t.stateNode.containerInfo),En(n,t),Tn(t),wa=l;break;case 12:En(n,t),Tn(t);break;case 31:En(n,t),Tn(t),l&4&&(l=t.updateQueue,l!==null&&(t.updateQueue=null,Mc(t,l)));break;case 13:En(n,t),Tn(t),t.child.flags&8192&&t.memoizedState!==null!=(i!==null&&i.memoizedState!==null)&&(Vc=cn()),l&4&&(l=t.updateQueue,l!==null&&(t.updateQueue=null,Mc(t,l)));break;case 22:p=t.memoizedState!==null;var z=i!==null&&i.memoizedState!==null,I=si,Y=Ut;if(si=I||p,Ut=Y||z,En(n,t),Ut=Y,si=I,Tn(t),l&8192)e:for(n=t.stateNode,n._visibility=p?n._visibility&-2:n._visibility|1,p&&(i===null||z||si||Ut||Os(t)),i=null,n=t;;){if(n.tag===5||n.tag===26){if(i===null){z=i=n;try{if(h=z.stateNode,p)x=h.style,typeof x.setProperty=="function"?x.setProperty("display","none","important"):x.display="none";else{w=z.stateNode;var ie=z.memoizedProps.style,L=ie!=null&&ie.hasOwnProperty("display")?ie.display:null;w.style.display=L==null||typeof L=="boolean"?"":(""+L).trim()}}catch(xe){pt(z,z.return,xe)}}}else if(n.tag===6){if(i===null){z=n;try{z.stateNode.nodeValue=p?"":z.memoizedProps}catch(xe){pt(z,z.return,xe)}}}else if(n.tag===18){if(i===null){z=n;try{var F=z.stateNode;p?Dy(F,!0):Dy(z.stateNode,!1)}catch(xe){pt(z,z.return,xe)}}}else if((n.tag!==22&&n.tag!==23||n.memoizedState===null||n===t)&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break e;for(;n.sibling===null;){if(n.return===null||n.return===t)break e;i===n&&(i=null),n=n.return}i===n&&(i=null),n.sibling.return=n.return,n=n.sibling}l&4&&(l=t.updateQueue,l!==null&&(i=l.retryQueue,i!==null&&(l.retryQueue=null,Mc(t,i))));break;case 19:En(n,t),Tn(t),l&4&&(l=t.updateQueue,l!==null&&(t.updateQueue=null,Mc(t,l)));break;case 30:break;case 21:break;default:En(n,t),Tn(t)}}function Tn(t){var n=t.flags;if(n&2){try{for(var i,l=t.return;l!==null;){if(q1(l)){i=l;break}l=l.return}if(i==null)throw Error(r(160));switch(i.tag){case 27:var p=i.stateNode,h=Jm(t);Pc(t,h,p);break;case 5:var x=i.stateNode;i.flags&32&&(_n(x,""),i.flags&=-33);var w=Jm(t);Pc(t,w,x);break;case 3:case 4:var z=i.stateNode.containerInfo,I=Jm(t);Wm(t,I,z);break;default:throw Error(r(161))}}catch(Y){pt(t,t.return,Y)}t.flags&=-3}n&4096&&(t.flags&=-4097)}function $1(t){if(t.subtreeFlags&1024)for(t=t.child;t!==null;){var n=t;$1(n),n.tag===5&&n.flags&1024&&n.stateNode.reset(),t=t.sibling}}function ri(t,n){if(n.subtreeFlags&8772)for(n=n.child;n!==null;)M1(t,n.alternate,n),n=n.sibling}function Os(t){for(t=t.child;t!==null;){var n=t;switch(n.tag){case 0:case 11:case 14:case 15:qi(4,n,n.return),Os(n);break;case 1:Ia(n,n.return);var i=n.stateNode;typeof i.componentWillUnmount=="function"&&D1(n,n.return,i),Os(n);break;case 27:il(n.stateNode);case 26:case 5:Ia(n,n.return),Os(n);break;case 22:n.memoizedState===null&&Os(n);break;case 30:Os(n);break;default:Os(n)}t=t.sibling}}function li(t,n,i){for(i=i&&(n.subtreeFlags&8772)!==0,n=n.child;n!==null;){var l=n.alternate,p=t,h=n,x=h.flags;switch(h.tag){case 0:case 11:case 15:li(p,h,i),Fr(4,h);break;case 1:if(li(p,h,i),l=h,p=l.stateNode,typeof p.componentDidMount=="function")try{p.componentDidMount()}catch(I){pt(l,l.return,I)}if(l=h,p=l.updateQueue,p!==null){var w=l.stateNode;try{var z=p.shared.hiddenCallbacks;if(z!==null)for(p.shared.hiddenCallbacks=null,p=0;p<z.length;p++)kg(z[p],w)}catch(I){pt(l,l.return,I)}}i&&x&64&&R1(h),Zr(h,h.return);break;case 27:B1(h);case 26:case 5:li(p,h,i),i&&l===null&&x&4&&O1(h),Zr(h,h.return);break;case 12:li(p,h,i);break;case 31:li(p,h,i),i&&x&4&&L1(p,h);break;case 13:li(p,h,i),i&&x&4&&U1(p,h);break;case 22:h.memoizedState===null&&li(p,h,i),Zr(h,h.return);break;case 30:break;default:li(p,h,i)}n=n.sibling}}function tp(t,n){var i=null;t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(i=t.memoizedState.cachePool.pool),t=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(t=n.memoizedState.cachePool.pool),t!==i&&(t!=null&&t.refCount++,i!=null&&qr(i))}function np(t,n){t=null,n.alternate!==null&&(t=n.alternate.memoizedState.cache),n=n.memoizedState.cache,n!==t&&(n.refCount++,t!=null&&qr(t))}function Sa(t,n,i,l){if(n.subtreeFlags&10256)for(n=n.child;n!==null;)K1(t,n,i,l),n=n.sibling}function K1(t,n,i,l){var p=n.flags;switch(n.tag){case 0:case 11:case 15:Sa(t,n,i,l),p&2048&&Fr(9,n);break;case 1:Sa(t,n,i,l);break;case 3:Sa(t,n,i,l),p&2048&&(t=null,n.alternate!==null&&(t=n.alternate.memoizedState.cache),n=n.memoizedState.cache,n!==t&&(n.refCount++,t!=null&&qr(t)));break;case 12:if(p&2048){Sa(t,n,i,l),t=n.stateNode;try{var h=n.memoizedProps,x=h.id,w=h.onPostCommit;typeof w=="function"&&w(x,n.alternate===null?"mount":"update",t.passiveEffectDuration,-0)}catch(z){pt(n,n.return,z)}}else Sa(t,n,i,l);break;case 31:Sa(t,n,i,l);break;case 13:Sa(t,n,i,l);break;case 23:break;case 22:h=n.stateNode,x=n.alternate,n.memoizedState!==null?h._visibility&2?Sa(t,n,i,l):Yr(t,n):h._visibility&2?Sa(t,n,i,l):(h._visibility|=2,No(t,n,i,l,(n.subtreeFlags&10256)!==0||!1)),p&2048&&tp(x,n);break;case 24:Sa(t,n,i,l),p&2048&&np(n.alternate,n);break;default:Sa(t,n,i,l)}}function No(t,n,i,l,p){for(p=p&&((n.subtreeFlags&10256)!==0||!1),n=n.child;n!==null;){var h=t,x=n,w=i,z=l,I=x.flags;switch(x.tag){case 0:case 11:case 15:No(h,x,w,z,p),Fr(8,x);break;case 23:break;case 22:var Y=x.stateNode;x.memoizedState!==null?Y._visibility&2?No(h,x,w,z,p):Yr(h,x):(Y._visibility|=2,No(h,x,w,z,p)),p&&I&2048&&tp(x.alternate,x);break;case 24:No(h,x,w,z,p),p&&I&2048&&np(x.alternate,x);break;default:No(h,x,w,z,p)}n=n.sibling}}function Yr(t,n){if(n.subtreeFlags&10256)for(n=n.child;n!==null;){var i=t,l=n,p=l.flags;switch(l.tag){case 22:Yr(i,l),p&2048&&tp(l.alternate,l);break;case 24:Yr(i,l),p&2048&&np(l.alternate,l);break;default:Yr(i,l)}n=n.sibling}}var Xr=8192;function _o(t,n,i){if(t.subtreeFlags&Xr)for(t=t.child;t!==null;)H1(t,n,i),t=t.sibling}function H1(t,n,i){switch(t.tag){case 26:_o(t,n,i),t.flags&Xr&&t.memoizedState!==null&&N4(i,wa,t.memoizedState,t.memoizedProps);break;case 5:_o(t,n,i);break;case 3:case 4:var l=wa;wa=Jc(t.stateNode.containerInfo),_o(t,n,i),wa=l;break;case 22:t.memoizedState===null&&(l=t.alternate,l!==null&&l.memoizedState!==null?(l=Xr,Xr=16777216,_o(t,n,i),Xr=l):_o(t,n,i));break;default:_o(t,n,i)}}function Q1(t){var n=t.alternate;if(n!==null&&(t=n.child,t!==null)){n.child=null;do n=t.sibling,t.sibling=null,t=n;while(t!==null)}}function Jr(t){var n=t.deletions;if((t.flags&16)!==0){if(n!==null)for(var i=0;i<n.length;i++){var l=n[i];Xt=l,Z1(l,t)}Q1(t)}if(t.subtreeFlags&10256)for(t=t.child;t!==null;)F1(t),t=t.sibling}function F1(t){switch(t.tag){case 0:case 11:case 15:Jr(t),t.flags&2048&&qi(9,t,t.return);break;case 3:Jr(t);break;case 12:Jr(t);break;case 22:var n=t.stateNode;t.memoizedState!==null&&n._visibility&2&&(t.return===null||t.return.tag!==13)?(n._visibility&=-3,Ic(t)):Jr(t);break;default:Jr(t)}}function Ic(t){var n=t.deletions;if((t.flags&16)!==0){if(n!==null)for(var i=0;i<n.length;i++){var l=n[i];Xt=l,Z1(l,t)}Q1(t)}for(t=t.child;t!==null;){switch(n=t,n.tag){case 0:case 11:case 15:qi(8,n,n.return),Ic(n);break;case 22:i=n.stateNode,i._visibility&2&&(i._visibility&=-3,Ic(n));break;default:Ic(n)}t=t.sibling}}function Z1(t,n){for(;Xt!==null;){var i=Xt;switch(i.tag){case 0:case 11:case 15:qi(8,i,n);break;case 23:case 22:if(i.memoizedState!==null&&i.memoizedState.cachePool!==null){var l=i.memoizedState.cachePool.pool;l!=null&&l.refCount++}break;case 24:qr(i.memoizedState.cache)}if(l=i.child,l!==null)l.return=i,Xt=l;else e:for(i=t;Xt!==null;){l=Xt;var p=l.sibling,h=l.return;if(I1(l),l===i){Xt=null;break e}if(p!==null){p.return=h,Xt=p;break e}Xt=h}}}var Uj={getCacheForType:function(t){var n=nn(It),i=n.data.get(t);return i===void 0&&(i=t(),n.data.set(t,i)),i},cacheSignal:function(){return nn(It).controller.signal}},Gj=typeof WeakMap=="function"?WeakMap:Map,ct=0,vt=null,Ye=null,We=0,mt=0,Kn=null,Bi=!1,zo=!1,ap=!1,ci=0,Ot=0,Pi=0,qs=0,ip=0,Hn=0,Eo=0,Wr=null,Rn=null,sp=!1,Vc=0,Y1=0,Lc=1/0,Uc=null,Mi=null,Ht=0,Ii=null,To=null,ui=0,op=0,rp=null,X1=null,el=0,lp=null;function Qn(){return(ct&2)!==0&&We!==0?We&-We:P.T!==null?hp():xr()}function J1(){if(Hn===0)if((We&536870912)===0||it){var t=Kt;Kt<<=1,(Kt&3932160)===0&&(Kt=262144),Hn=t}else Hn=536870912;return t=Gn.current,t!==null&&(t.flags|=32),Hn}function Dn(t,n,i){(t===vt&&(mt===2||mt===9)||t.cancelPendingCommit!==null)&&(Ro(t,0),Vi(t,We,Hn,!1)),xi(t,i),((ct&2)===0||t!==vt)&&(t===vt&&((ct&2)===0&&(qs|=i),Ot===4&&Vi(t,We,Hn,!1)),Va(t))}function W1(t,n,i){if((ct&6)!==0)throw Error(r(327));var l=!i&&(n&127)===0&&(n&t.expiredLanes)===0||vi(t,n),p=l?Hj(t,n):up(t,n,!0),h=l;do{if(p===0){zo&&!l&&Vi(t,n,0,!1);break}else{if(i=t.current.alternate,h&&!$j(i)){p=up(t,n,!1),h=!1;continue}if(p===2){if(h=n,t.errorRecoveryDisabledLanes&h)var x=0;else x=t.pendingLanes&-536870913,x=x!==0?x:x&536870912?536870912:0;if(x!==0){n=x;e:{var w=t;p=Wr;var z=w.current.memoizedState.isDehydrated;if(z&&(Ro(w,x).flags|=256),x=up(w,x,!1),x!==2){if(ap&&!z){w.errorRecoveryDisabledLanes|=h,qs|=h,p=4;break e}h=Rn,Rn=p,h!==null&&(Rn===null?Rn=h:Rn.push.apply(Rn,h))}p=x}if(h=!1,p!==2)continue}}if(p===1){Ro(t,0),Vi(t,n,0,!0);break}e:{switch(l=t,h=p,h){case 0:case 1:throw Error(r(345));case 4:if((n&4194048)!==n)break;case 6:Vi(l,n,Hn,!Bi);break e;case 2:Rn=null;break;case 3:case 5:break;default:throw Error(r(329))}if((n&62914560)===n&&(p=Vc+300-cn(),10<p)){if(Vi(l,n,Hn,!Bi),Ha(l,0,!0)!==0)break e;ui=n,l.timeoutHandle=Ey(ey.bind(null,l,i,Rn,Uc,sp,n,Hn,qs,Eo,Bi,h,"Throttled",-0,0),p);break e}ey(l,i,Rn,Uc,sp,n,Hn,qs,Eo,Bi,h,null,-0,0)}}break}while(!0);Va(t)}function ey(t,n,i,l,p,h,x,w,z,I,Y,ie,L,F){if(t.timeoutHandle=-1,ie=n.subtreeFlags,ie&8192||(ie&16785408)===16785408){ie={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Wn},H1(n,h,ie);var xe=(h&62914560)===h?Vc-cn():(h&4194048)===h?Y1-cn():0;if(xe=_4(ie,xe),xe!==null){ui=h,t.cancelPendingCommit=xe(ly.bind(null,t,n,h,i,l,p,x,w,z,Y,ie,null,L,F)),Vi(t,h,x,!I);return}}ly(t,n,h,i,l,p,x,w,z)}function $j(t){for(var n=t;;){var i=n.tag;if((i===0||i===11||i===15)&&n.flags&16384&&(i=n.updateQueue,i!==null&&(i=i.stores,i!==null)))for(var l=0;l<i.length;l++){var p=i[l],h=p.getSnapshot;p=p.value;try{if(!Ln(h(),p))return!1}catch{return!1}}if(i=n.child,n.subtreeFlags&16384&&i!==null)i.return=n,n=i;else{if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function Vi(t,n,i,l){n&=~ip,n&=~qs,t.suspendedLanes|=n,t.pingedLanes&=~n,l&&(t.warmLanes|=n),l=t.expirationTimes;for(var p=n;0<p;){var h=31-Rt(p),x=1<<h;l[h]=-1,p&=~x}i!==0&&Jl(t,i,n)}function Gc(){return(ct&6)===0?(tl(0),!1):!0}function cp(){if(Ye!==null){if(mt===0)var t=Ye.return;else t=Ye,Wa=Cs=null,Am(t),wo=null,Pr=0,t=Ye;for(;t!==null;)T1(t.alternate,t),t=t.return;Ye=null}}function Ro(t,n){var i=t.timeoutHandle;i!==-1&&(t.timeoutHandle=-1,u4(i)),i=t.cancelPendingCommit,i!==null&&(t.cancelPendingCommit=null,i()),ui=0,cp(),vt=t,Ye=i=Xa(t.current,null),We=n,mt=0,Kn=null,Bi=!1,zo=vi(t,n),ap=!1,Eo=Hn=ip=qs=Pi=Ot=0,Rn=Wr=null,sp=!1,(n&8)!==0&&(n|=n&32);var l=t.entangledLanes;if(l!==0)for(t=t.entanglements,l&=n;0<l;){var p=31-Rt(l),h=1<<p;n|=t[p],l&=~h}return ci=n,uc(),i}function ty(t,n){$e=null,P.H=Kr,n===ko||n===bc?(n=yg(),mt=3):n===pm?(n=yg(),mt=4):mt=n===Lm?8:n!==null&&typeof n=="object"&&typeof n.then=="function"?6:1,Kn=n,Ye===null&&(Ot=1,Rc(t,aa(n,t.current)))}function ny(){var t=Gn.current;return t===null?!0:(We&4194048)===We?ra===null:(We&62914560)===We||(We&536870912)!==0?t===ra:!1}function ay(){var t=P.H;return P.H=Kr,t===null?Kr:t}function iy(){var t=P.A;return P.A=Uj,t}function $c(){Ot=4,Bi||(We&4194048)!==We&&Gn.current!==null||(zo=!0),(Pi&134217727)===0&&(qs&134217727)===0||vt===null||Vi(vt,We,Hn,!1)}function up(t,n,i){var l=ct;ct|=2;var p=ay(),h=iy();(vt!==t||We!==n)&&(Uc=null,Ro(t,n)),n=!1;var x=Ot;e:do try{if(mt!==0&&Ye!==null){var w=Ye,z=Kn;switch(mt){case 8:cp(),x=6;break e;case 3:case 2:case 9:case 6:Gn.current===null&&(n=!0);var I=mt;if(mt=0,Kn=null,Do(t,w,z,I),i&&zo){x=0;break e}break;default:I=mt,mt=0,Kn=null,Do(t,w,z,I)}}Kj(),x=Ot;break}catch(Y){ty(t,Y)}while(!0);return n&&t.shellSuspendCounter++,Wa=Cs=null,ct=l,P.H=p,P.A=h,Ye===null&&(vt=null,We=0,uc()),x}function Kj(){for(;Ye!==null;)sy(Ye)}function Hj(t,n){var i=ct;ct|=2;var l=ay(),p=iy();vt!==t||We!==n?(Uc=null,Lc=cn()+500,Ro(t,n)):zo=vi(t,n);e:do try{if(mt!==0&&Ye!==null){n=Ye;var h=Kn;t:switch(mt){case 1:mt=0,Kn=null,Do(t,n,h,1);break;case 2:case 9:if(fg(h)){mt=0,Kn=null,oy(n);break}n=function(){mt!==2&&mt!==9||vt!==t||(mt=7),Va(t)},h.then(n,n);break e;case 3:mt=7;break e;case 4:mt=5;break e;case 7:fg(h)?(mt=0,Kn=null,oy(n)):(mt=0,Kn=null,Do(t,n,h,7));break;case 5:var x=null;switch(Ye.tag){case 26:x=Ye.memoizedState;case 5:case 27:var w=Ye;if(x?Ky(x):w.stateNode.complete){mt=0,Kn=null;var z=w.sibling;if(z!==null)Ye=z;else{var I=w.return;I!==null?(Ye=I,Kc(I)):Ye=null}break t}}mt=0,Kn=null,Do(t,n,h,5);break;case 6:mt=0,Kn=null,Do(t,n,h,6);break;case 8:cp(),Ot=6;break e;default:throw Error(r(462))}}Qj();break}catch(Y){ty(t,Y)}while(!0);return Wa=Cs=null,P.H=l,P.A=p,ct=i,Ye!==null?0:(vt=null,We=0,uc(),Ot)}function Qj(){for(;Ye!==null&&!us();)sy(Ye)}function sy(t){var n=z1(t.alternate,t,ci);t.memoizedProps=t.pendingProps,n===null?Kc(t):Ye=n}function oy(t){var n=t,i=n.alternate;switch(n.tag){case 15:case 0:n=S1(i,n,n.pendingProps,n.type,void 0,We);break;case 11:n=S1(i,n,n.pendingProps,n.type.render,n.ref,We);break;case 5:Am(n);default:T1(i,n),n=Ye=ig(n,ci),n=z1(i,n,ci)}t.memoizedProps=t.pendingProps,n===null?Kc(t):Ye=n}function Do(t,n,i,l){Wa=Cs=null,Am(n),wo=null,Pr=0;var p=n.return;try{if(qj(t,p,n,i,We)){Ot=1,Rc(t,aa(i,t.current)),Ye=null;return}}catch(h){if(p!==null)throw Ye=p,h;Ot=1,Rc(t,aa(i,t.current)),Ye=null;return}n.flags&32768?(it||l===1?t=!0:zo||(We&536870912)!==0?t=!1:(Bi=t=!0,(l===2||l===9||l===3||l===6)&&(l=Gn.current,l!==null&&l.tag===13&&(l.flags|=16384))),ry(n,t)):Kc(n)}function Kc(t){var n=t;do{if((n.flags&32768)!==0){ry(n,Bi);return}t=n.return;var i=Mj(n.alternate,n,ci);if(i!==null){Ye=i;return}if(n=n.sibling,n!==null){Ye=n;return}Ye=n=t}while(n!==null);Ot===0&&(Ot=5)}function ry(t,n){do{var i=Ij(t.alternate,t);if(i!==null){i.flags&=32767,Ye=i;return}if(i=t.return,i!==null&&(i.flags|=32768,i.subtreeFlags=0,i.deletions=null),!n&&(t=t.sibling,t!==null)){Ye=t;return}Ye=t=i}while(t!==null);Ot=6,Ye=null}function ly(t,n,i,l,p,h,x,w,z){t.cancelPendingCommit=null;do Hc();while(Ht!==0);if((ct&6)!==0)throw Error(r(327));if(n!==null){if(n===t.current)throw Error(r(177));if(h=n.lanes|n.childLanes,h|=Jd,Xl(t,i,h,x,w,z),t===vt&&(Ye=vt=null,We=0),To=n,Ii=t,ui=i,op=h,rp=p,X1=l,(n.subtreeFlags&10256)!==0||(n.flags&10256)!==0?(t.callbackNode=null,t.callbackPriority=0,Xj(Js,function(){return py(),null})):(t.callbackNode=null,t.callbackPriority=0),l=(n.flags&13878)!==0,(n.subtreeFlags&13878)!==0||l){l=P.T,P.T=null,p=ae.p,ae.p=2,x=ct,ct|=4;try{Vj(t,n,i)}finally{ct=x,ae.p=p,P.T=l}}Ht=1,cy(),uy(),dy()}}function cy(){if(Ht===1){Ht=0;var t=Ii,n=To,i=(n.flags&13878)!==0;if((n.subtreeFlags&13878)!==0||i){i=P.T,P.T=null;var l=ae.p;ae.p=2;var p=ct;ct|=4;try{G1(n,t);var h=wp,x=Zf(t.containerInfo),w=h.focusedElem,z=h.selectionRange;if(x!==w&&w&&w.ownerDocument&&Ff(w.ownerDocument.documentElement,w)){if(z!==null&&Qd(w)){var I=z.start,Y=z.end;if(Y===void 0&&(Y=I),"selectionStart"in w)w.selectionStart=I,w.selectionEnd=Math.min(Y,w.value.length);else{var ie=w.ownerDocument||document,L=ie&&ie.defaultView||window;if(L.getSelection){var F=L.getSelection(),xe=w.textContent.length,Oe=Math.min(z.start,xe),yt=z.end===void 0?Oe:Math.min(z.end,xe);!F.extend&&Oe>yt&&(x=yt,yt=Oe,Oe=x);var B=Qf(w,Oe),R=Qf(w,yt);if(B&&R&&(F.rangeCount!==1||F.anchorNode!==B.node||F.anchorOffset!==B.offset||F.focusNode!==R.node||F.focusOffset!==R.offset)){var M=ie.createRange();M.setStart(B.node,B.offset),F.removeAllRanges(),Oe>yt?(F.addRange(M),F.extend(R.node,R.offset)):(M.setEnd(R.node,R.offset),F.addRange(M))}}}}for(ie=[],F=w;F=F.parentNode;)F.nodeType===1&&ie.push({element:F,left:F.scrollLeft,top:F.scrollTop});for(typeof w.focus=="function"&&w.focus(),w=0;w<ie.length;w++){var ee=ie[w];ee.element.scrollLeft=ee.left,ee.element.scrollTop=ee.top}}iu=!!kp,wp=kp=null}finally{ct=p,ae.p=l,P.T=i}}t.current=n,Ht=2}}function uy(){if(Ht===2){Ht=0;var t=Ii,n=To,i=(n.flags&8772)!==0;if((n.subtreeFlags&8772)!==0||i){i=P.T,P.T=null;var l=ae.p;ae.p=2;var p=ct;ct|=4;try{M1(t,n.alternate,n)}finally{ct=p,ae.p=l,P.T=i}}Ht=3}}function dy(){if(Ht===4||Ht===3){Ht=0,Hl();var t=Ii,n=To,i=ui,l=X1;(n.subtreeFlags&10256)!==0||(n.flags&10256)!==0?Ht=5:(Ht=0,To=Ii=null,my(t,t.pendingLanes));var p=t.pendingLanes;if(p===0&&(Mi=null),ms(i),n=n.stateNode,Wt&&typeof Wt.onCommitFiberRoot=="function")try{Wt.onCommitFiberRoot(ds,n,void 0,(n.current.flags&128)===128)}catch{}if(l!==null){n=P.T,p=ae.p,ae.p=2,P.T=null;try{for(var h=t.onRecoverableError,x=0;x<l.length;x++){var w=l[x];h(w.value,{componentStack:w.stack})}}finally{P.T=n,ae.p=p}}(ui&3)!==0&&Hc(),Va(t),p=t.pendingLanes,(i&261930)!==0&&(p&42)!==0?t===lp?el++:(el=0,lp=t):el=0,tl(0)}}function my(t,n){(t.pooledCacheLanes&=n)===0&&(n=t.pooledCache,n!=null&&(t.pooledCache=null,qr(n)))}function Hc(){return cy(),uy(),dy(),py()}function py(){if(Ht!==5)return!1;var t=Ii,n=op;op=0;var i=ms(ui),l=P.T,p=ae.p;try{ae.p=32>i?32:i,P.T=null,i=rp,rp=null;var h=Ii,x=ui;if(Ht=0,To=Ii=null,ui=0,(ct&6)!==0)throw Error(r(331));var w=ct;if(ct|=4,F1(h.current),K1(h,h.current,x,i),ct=w,tl(0,!1),Wt&&typeof Wt.onPostCommitFiberRoot=="function")try{Wt.onPostCommitFiberRoot(ds,h)}catch{}return!0}finally{ae.p=p,P.T=l,my(t,n)}}function hy(t,n,i){n=aa(i,n),n=Vm(t.stateNode,n,2),t=Ri(t,n,2),t!==null&&(xi(t,2),Va(t))}function pt(t,n,i){if(t.tag===3)hy(t,t,i);else for(;n!==null;){if(n.tag===3){hy(n,t,i);break}else if(n.tag===1){var l=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(Mi===null||!Mi.has(l))){t=aa(i,t),i=f1(2),l=Ri(n,i,2),l!==null&&(g1(i,l,n,t),xi(l,2),Va(l));break}}n=n.return}}function dp(t,n,i){var l=t.pingCache;if(l===null){l=t.pingCache=new Gj;var p=new Set;l.set(n,p)}else p=l.get(n),p===void 0&&(p=new Set,l.set(n,p));p.has(i)||(ap=!0,p.add(i),t=Fj.bind(null,t,n,i),n.then(t,t))}function Fj(t,n,i){var l=t.pingCache;l!==null&&l.delete(n),t.pingedLanes|=t.suspendedLanes&i,t.warmLanes&=~i,vt===t&&(We&i)===i&&(Ot===4||Ot===3&&(We&62914560)===We&&300>cn()-Vc?(ct&2)===0&&Ro(t,0):ip|=i,Eo===We&&(Eo=0)),Va(t)}function fy(t,n){n===0&&(n=br()),t=Ss(t,n),t!==null&&(xi(t,n),Va(t))}function Zj(t){var n=t.memoizedState,i=0;n!==null&&(i=n.retryLane),fy(t,i)}function Yj(t,n){var i=0;switch(t.tag){case 31:case 13:var l=t.stateNode,p=t.memoizedState;p!==null&&(i=p.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(r(314))}l!==null&&l.delete(n),fy(t,i)}function Xj(t,n){return ut(t,n)}var Qc=null,Oo=null,mp=!1,Fc=!1,pp=!1,Li=0;function Va(t){t!==Oo&&t.next===null&&(Oo===null?Qc=Oo=t:Oo=Oo.next=t),Fc=!0,mp||(mp=!0,Wj())}function tl(t,n){if(!pp&&Fc){pp=!0;do for(var i=!1,l=Qc;l!==null;){if(t!==0){var p=l.pendingLanes;if(p===0)var h=0;else{var x=l.suspendedLanes,w=l.pingedLanes;h=(1<<31-Rt(42|t)+1)-1,h&=p&~(x&~w),h=h&201326741?h&201326741|1:h?h|2:0}h!==0&&(i=!0,vy(l,h))}else h=We,h=Ha(l,l===vt?h:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(h&3)===0||vi(l,h)||(i=!0,vy(l,h));l=l.next}while(i);pp=!1}}function Jj(){gy()}function gy(){Fc=mp=!1;var t=0;Li!==0&&c4()&&(t=Li);for(var n=cn(),i=null,l=Qc;l!==null;){var p=l.next,h=yy(l,n);h===0?(l.next=null,i===null?Qc=p:i.next=p,p===null&&(Oo=i)):(i=l,(t!==0||(h&3)!==0)&&(Fc=!0)),l=p}Ht!==0&&Ht!==5||tl(t),Li!==0&&(Li=0)}function yy(t,n){for(var i=t.suspendedLanes,l=t.pingedLanes,p=t.expirationTimes,h=t.pendingLanes&-62914561;0<h;){var x=31-Rt(h),w=1<<x,z=p[x];z===-1?((w&i)===0||(w&l)!==0)&&(p[x]=Dd(w,n)):z<=n&&(t.expiredLanes|=w),h&=~w}if(n=vt,i=We,i=Ha(t,t===n?i:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),l=t.callbackNode,i===0||t===n&&(mt===2||mt===9)||t.cancelPendingCommit!==null)return l!==null&&l!==null&&Jt(l),t.callbackNode=null,t.callbackPriority=0;if((i&3)===0||vi(t,i)){if(n=i&-i,n===t.callbackPriority)return n;switch(l!==null&&Jt(l),ms(i)){case 2:case 8:i=Fl;break;case 32:i=Js;break;case 268435456:i=Xn;break;default:i=Js}return l=by.bind(null,t),i=ut(i,l),t.callbackPriority=n,t.callbackNode=i,n}return l!==null&&l!==null&&Jt(l),t.callbackPriority=2,t.callbackNode=null,2}function by(t,n){if(Ht!==0&&Ht!==5)return t.callbackNode=null,t.callbackPriority=0,null;var i=t.callbackNode;if(Hc()&&t.callbackNode!==i)return null;var l=We;return l=Ha(t,t===vt?l:0,t.cancelPendingCommit!==null||t.timeoutHandle!==-1),l===0?null:(W1(t,l,n),yy(t,cn()),t.callbackNode!=null&&t.callbackNode===i?by.bind(null,t):null)}function vy(t,n){if(Hc())return null;W1(t,n,!0)}function Wj(){d4(function(){(ct&6)!==0?ut(gr,Jj):gy()})}function hp(){if(Li===0){var t=vo;t===0&&(t=Ka,Ka<<=1,(Ka&261888)===0&&(Ka=256)),Li=t}return Li}function xy(t){return t==null||typeof t=="symbol"||typeof t=="boolean"?null:typeof t=="function"?t:oo(""+t)}function ky(t,n){var i=n.ownerDocument.createElement("input");return i.name=n.name,i.value=n.value,t.id&&i.setAttribute("form",t.id),n.parentNode.insertBefore(i,n),t=new FormData(t),i.parentNode.removeChild(i),t}function e4(t,n,i,l,p){if(n==="submit"&&i&&i.stateNode===p){var h=xy((p[en]||null).action),x=l.submitter;x&&(n=(n=x[en]||null)?xy(n.formAction):x.getAttribute("formAction"),n!==null&&(h=n,x=null));var w=new ta("action","action",null,l,p);t.push({event:w,listeners:[{instance:null,listener:function(){if(l.defaultPrevented){if(Li!==0){var z=x?ky(p,x):new FormData(p);Om(i,{pending:!0,data:z,method:p.method,action:h},null,z)}}else typeof h=="function"&&(w.preventDefault(),z=x?ky(p,x):new FormData(p),Om(i,{pending:!0,data:z,method:p.method,action:h},h,z))},currentTarget:p}]})}}for(var fp=0;fp<Xd.length;fp++){var gp=Xd[fp],t4=gp.toLowerCase(),n4=gp[0].toUpperCase()+gp.slice(1);ka(t4,"on"+n4)}ka(Jf,"onAnimationEnd"),ka(Wf,"onAnimationIteration"),ka(eg,"onAnimationStart"),ka("dblclick","onDoubleClick"),ka("focusin","onFocus"),ka("focusout","onBlur"),ka(bj,"onTransitionRun"),ka(vj,"onTransitionStart"),ka(xj,"onTransitionCancel"),ka(tg,"onTransitionEnd"),Cn("onMouseEnter",["mouseout","mouseover"]),Cn("onMouseLeave",["mouseout","mouseover"]),Cn("onPointerEnter",["pointerout","pointerover"]),Cn("onPointerLeave",["pointerout","pointerover"]),Ra("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Ra("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Ra("onBeforeInput",["compositionend","keypress","textInput","paste"]),Ra("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Ra("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Ra("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var nl="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),a4=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(nl));function wy(t,n){n=(n&4)!==0;for(var i=0;i<t.length;i++){var l=t[i],p=l.event;l=l.listeners;e:{var h=void 0;if(n)for(var x=l.length-1;0<=x;x--){var w=l[x],z=w.instance,I=w.currentTarget;if(w=w.listener,z!==h&&p.isPropagationStopped())break e;h=w,p.currentTarget=I;try{h(p)}catch(Y){cc(Y)}p.currentTarget=null,h=z}else for(x=0;x<l.length;x++){if(w=l[x],z=w.instance,I=w.currentTarget,w=w.listener,z!==h&&p.isPropagationStopped())break e;h=w,p.currentTarget=I;try{h(p)}catch(Y){cc(Y)}p.currentTarget=null,h=z}}}}function Xe(t,n){var i=n[An];i===void 0&&(i=n[An]=new Set);var l=t+"__bubble";i.has(l)||(Sy(n,t,2,!1),i.add(l))}function yp(t,n,i){var l=0;n&&(l|=4),Sy(i,t,l,n)}var Zc="_reactListening"+Math.random().toString(36).slice(2);function bp(t){if(!t[Zc]){t[Zc]=!0,qd.forEach(function(i){i!=="selectionchange"&&(a4.has(i)||yp(i,!1,t),yp(i,!0,t))});var n=t.nodeType===9?t:t.ownerDocument;n===null||n[Zc]||(n[Zc]=!0,yp("selectionchange",!1,n))}}function Sy(t,n,i,l){switch(Jy(n)){case 2:var p=T4;break;case 8:p=R4;break;default:p=Dp}i=p.bind(null,n,i,t),p=void 0,!U||n!=="touchstart"&&n!=="touchmove"&&n!=="wheel"||(p=!0),l?p!==void 0?t.addEventListener(n,i,{capture:!0,passive:p}):t.addEventListener(n,i,!0):p!==void 0?t.addEventListener(n,i,{passive:p}):t.addEventListener(n,i,!1)}function vp(t,n,i,l,p){var h=l;if((n&1)===0&&(n&2)===0&&l!==null)e:for(;;){if(l===null)return;var x=l.tag;if(x===3||x===4){var w=l.stateNode.containerInfo;if(w===p)break;if(x===4)for(x=l.return;x!==null;){var z=x.tag;if((z===3||z===4)&&x.stateNode.containerInfo===p)return;x=x.return}for(;w!==null;){if(x=ki(w),x===null)return;if(z=x.tag,z===5||z===6||z===26||z===27){l=h=x;continue e}w=w.parentNode}}l=l.return}sc(function(){var I=h,Y=ys(i),ie=[];e:{var L=ng.get(t);if(L!==void 0){var F=ta,xe=t;switch(t){case"keypress":if(vs(i)===0)break e;case"keydown":case"keyup":F=Y3;break;case"focusin":xe="focus",F=Ud;break;case"focusout":xe="blur",F=Ud;break;case"beforeblur":case"afterblur":F=Ud;break;case"click":if(i.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":F=Tf;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":F=M3;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":F=W3;break;case Jf:case Wf:case eg:F=L3;break;case tg:F=tj;break;case"scroll":case"scrollend":F=B3;break;case"wheel":F=aj;break;case"copy":case"cut":case"paste":F=G3;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":F=Df;break;case"toggle":case"beforetoggle":F=sj}var Oe=(n&4)!==0,yt=!Oe&&(t==="scroll"||t==="scrollend"),B=Oe?L!==null?L+"Capture":null:L;Oe=[];for(var R=I,M;R!==null;){var ee=R;if(M=ee.stateNode,ee=ee.tag,ee!==5&&ee!==26&&ee!==27||M===null||B===null||(ee=bs(R,B),ee!=null&&Oe.push(al(R,ee,M))),yt)break;R=R.return}0<Oe.length&&(L=new F(L,xe,null,i,Y),ie.push({event:L,listeners:Oe}))}}if((n&7)===0){e:{if(L=t==="mouseover"||t==="pointerover",F=t==="mouseout"||t==="pointerout",L&&i!==ea&&(xe=i.relatedTarget||i.fromElement)&&(ki(xe)||xe[ya]))break e;if((F||L)&&(L=Y.window===Y?Y:(L=Y.ownerDocument)?L.defaultView||L.parentWindow:window,F?(xe=i.relatedTarget||i.toElement,F=I,xe=xe?ki(xe):null,xe!==null&&(yt=f(xe),Oe=xe.tag,xe!==yt||Oe!==5&&Oe!==27&&Oe!==6)&&(xe=null)):(F=null,xe=I),F!==xe)){if(Oe=Tf,ee="onMouseLeave",B="onMouseEnter",R="mouse",(t==="pointerout"||t==="pointerover")&&(Oe=Df,ee="onPointerLeave",B="onPointerEnter",R="pointer"),yt=F==null?L:wi(F),M=xe==null?L:wi(xe),L=new Oe(ee,R+"leave",F,i,Y),L.target=yt,L.relatedTarget=M,ee=null,ki(Y)===I&&(Oe=new Oe(B,R+"enter",xe,i,Y),Oe.target=M,Oe.relatedTarget=yt,ee=Oe),yt=ee,F&&xe)t:{for(Oe=i4,B=F,R=xe,M=0,ee=B;ee;ee=Oe(ee))M++;ee=0;for(var Ee=R;Ee;Ee=Oe(Ee))ee++;for(;0<M-ee;)B=Oe(B),M--;for(;0<ee-M;)R=Oe(R),ee--;for(;M--;){if(B===R||R!==null&&B===R.alternate){Oe=B;break t}B=Oe(B),R=Oe(R)}Oe=null}else Oe=null;F!==null&&jy(ie,L,F,Oe,!1),xe!==null&&yt!==null&&jy(ie,yt,xe,Oe,!0)}}e:{if(L=I?wi(I):window,F=L.nodeName&&L.nodeName.toLowerCase(),F==="select"||F==="input"&&L.type==="file")var rt=Lf;else if(If(L))if(Uf)rt=fj;else{rt=pj;var Ce=mj}else F=L.nodeName,!F||F.toLowerCase()!=="input"||L.type!=="checkbox"&&L.type!=="radio"?I&&jr(I.elementType)&&(rt=Lf):rt=hj;if(rt&&(rt=rt(t,I))){Vf(ie,rt,i,Y);break e}Ce&&Ce(t,L,I),t==="focusout"&&I&&L.type==="number"&&I.memoizedProps.value!=null&&qa(L,"number",L.value)}switch(Ce=I?wi(I):window,t){case"focusin":(If(Ce)||Ce.contentEditable==="true")&&(uo=Ce,Fd=I,Rr=null);break;case"focusout":Rr=Fd=uo=null;break;case"mousedown":Zd=!0;break;case"contextmenu":case"mouseup":case"dragend":Zd=!1,Yf(ie,i,Y);break;case"selectionchange":if(yj)break;case"keydown":case"keyup":Yf(ie,i,Y)}var He;if($d)e:{switch(t){case"compositionstart":var et="onCompositionStart";break e;case"compositionend":et="onCompositionEnd";break e;case"compositionupdate":et="onCompositionUpdate";break e}et=void 0}else co?Pf(t,i)&&(et="onCompositionEnd"):t==="keydown"&&i.keyCode===229&&(et="onCompositionStart");et&&(Of&&i.locale!=="ko"&&(co||et!=="onCompositionStart"?et==="onCompositionEnd"&&co&&(He=oc()):(yn=Y,Ba="value"in yn?yn.value:yn.textContent,co=!0)),Ce=Yc(I,et),0<Ce.length&&(et=new Rf(et,t,null,i,Y),ie.push({event:et,listeners:Ce}),He?et.data=He:(He=Mf(i),He!==null&&(et.data=He)))),(He=rj?lj(t,i):cj(t,i))&&(et=Yc(I,"onBeforeInput"),0<et.length&&(Ce=new Rf("onBeforeInput","beforeinput",null,i,Y),ie.push({event:Ce,listeners:et}),Ce.data=He)),e4(ie,t,I,i,Y)}wy(ie,n)})}function al(t,n,i){return{instance:t,listener:n,currentTarget:i}}function Yc(t,n){for(var i=n+"Capture",l=[];t!==null;){var p=t,h=p.stateNode;if(p=p.tag,p!==5&&p!==26&&p!==27||h===null||(p=bs(t,i),p!=null&&l.unshift(al(t,p,h)),p=bs(t,n),p!=null&&l.push(al(t,p,h))),t.tag===3)return l;t=t.return}return[]}function i4(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5&&t.tag!==27);return t||null}function jy(t,n,i,l,p){for(var h=n._reactName,x=[];i!==null&&i!==l;){var w=i,z=w.alternate,I=w.stateNode;if(w=w.tag,z!==null&&z===l)break;w!==5&&w!==26&&w!==27||I===null||(z=I,p?(I=bs(i,h),I!=null&&x.unshift(al(i,I,z))):p||(I=bs(i,h),I!=null&&x.push(al(i,I,z)))),i=i.return}x.length!==0&&t.push({event:n,listeners:x})}var s4=/\r\n?/g,o4=/\u0000|\uFFFD/g;function Ay(t){return(typeof t=="string"?t:""+t).replace(s4,`
10
- `).replace(o4,"")}function Cy(t,n){return n=Ay(n),Ay(t)===n}function gt(t,n,i,l,p,h){switch(i){case"children":typeof l=="string"?n==="body"||n==="textarea"&&l===""||_n(t,l):(typeof l=="number"||typeof l=="bigint")&&n!=="body"&&_n(t,""+l);break;case"className":Da(t,"class",l);break;case"tabIndex":Da(t,"tabindex",l);break;case"dir":case"role":case"viewBox":case"width":case"height":Da(t,i,l);break;case"style":ac(t,l,h);break;case"data":if(n!=="object"){Da(t,"data",l);break}case"src":case"href":if(l===""&&(n!=="a"||i!=="href")){t.removeAttribute(i);break}if(l==null||typeof l=="function"||typeof l=="symbol"||typeof l=="boolean"){t.removeAttribute(i);break}l=oo(""+l),t.setAttribute(i,l);break;case"action":case"formAction":if(typeof l=="function"){t.setAttribute(i,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof h=="function"&&(i==="formAction"?(n!=="input"&&gt(t,n,"name",p.name,p,null),gt(t,n,"formEncType",p.formEncType,p,null),gt(t,n,"formMethod",p.formMethod,p,null),gt(t,n,"formTarget",p.formTarget,p,null)):(gt(t,n,"encType",p.encType,p,null),gt(t,n,"method",p.method,p,null),gt(t,n,"target",p.target,p,null)));if(l==null||typeof l=="symbol"||typeof l=="boolean"){t.removeAttribute(i);break}l=oo(""+l),t.setAttribute(i,l);break;case"onClick":l!=null&&(t.onclick=Wn);break;case"onScroll":l!=null&&Xe("scroll",t);break;case"onScrollEnd":l!=null&&Xe("scrollend",t);break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(r(61));if(i=l.__html,i!=null){if(p.children!=null)throw Error(r(60));t.innerHTML=i}}break;case"multiple":t.multiple=l&&typeof l!="function"&&typeof l!="symbol";break;case"muted":t.muted=l&&typeof l!="function"&&typeof l!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(l==null||typeof l=="function"||typeof l=="boolean"||typeof l=="symbol"){t.removeAttribute("xlink:href");break}i=oo(""+l),t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",i);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":l!=null&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(i,""+l):t.removeAttribute(i);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":l&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(i,""):t.removeAttribute(i);break;case"capture":case"download":l===!0?t.setAttribute(i,""):l!==!1&&l!=null&&typeof l!="function"&&typeof l!="symbol"?t.setAttribute(i,l):t.removeAttribute(i);break;case"cols":case"rows":case"size":case"span":l!=null&&typeof l!="function"&&typeof l!="symbol"&&!isNaN(l)&&1<=l?t.setAttribute(i,l):t.removeAttribute(i);break;case"rowSpan":case"start":l==null||typeof l=="function"||typeof l=="symbol"||isNaN(l)?t.removeAttribute(i):t.setAttribute(i,l);break;case"popover":Xe("beforetoggle",t),Xe("toggle",t),Si(t,"popover",l);break;case"xlinkActuate":ba(t,"http://www.w3.org/1999/xlink","xlink:actuate",l);break;case"xlinkArcrole":ba(t,"http://www.w3.org/1999/xlink","xlink:arcrole",l);break;case"xlinkRole":ba(t,"http://www.w3.org/1999/xlink","xlink:role",l);break;case"xlinkShow":ba(t,"http://www.w3.org/1999/xlink","xlink:show",l);break;case"xlinkTitle":ba(t,"http://www.w3.org/1999/xlink","xlink:title",l);break;case"xlinkType":ba(t,"http://www.w3.org/1999/xlink","xlink:type",l);break;case"xmlBase":ba(t,"http://www.w3.org/XML/1998/namespace","xml:base",l);break;case"xmlLang":ba(t,"http://www.w3.org/XML/1998/namespace","xml:lang",l);break;case"xmlSpace":ba(t,"http://www.w3.org/XML/1998/namespace","xml:space",l);break;case"is":Si(t,"is",l);break;case"innerText":case"textContent":break;default:(!(2<i.length)||i[0]!=="o"&&i[0]!=="O"||i[1]!=="n"&&i[1]!=="N")&&(i=Md.get(i)||i,Si(t,i,l))}}function xp(t,n,i,l,p,h){switch(i){case"style":ac(t,l,h);break;case"dangerouslySetInnerHTML":if(l!=null){if(typeof l!="object"||!("__html"in l))throw Error(r(61));if(i=l.__html,i!=null){if(p.children!=null)throw Error(r(60));t.innerHTML=i}}break;case"children":typeof l=="string"?_n(t,l):(typeof l=="number"||typeof l=="bigint")&&_n(t,""+l);break;case"onScroll":l!=null&&Xe("scroll",t);break;case"onScrollEnd":l!=null&&Xe("scrollend",t);break;case"onClick":l!=null&&(t.onclick=Wn);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!ao.hasOwnProperty(i))e:{if(i[0]==="o"&&i[1]==="n"&&(p=i.endsWith("Capture"),n=i.slice(2,p?i.length-7:void 0),h=t[en]||null,h=h!=null?h[i]:null,typeof h=="function"&&t.removeEventListener(n,h,p),typeof l=="function")){typeof h!="function"&&h!==null&&(i in t?t[i]=null:t.hasAttribute(i)&&t.removeAttribute(i)),t.addEventListener(n,l,p);break e}i in t?t[i]=l:l===!0?t.setAttribute(i,""):Si(t,i,l)}}}function sn(t,n,i){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Xe("error",t),Xe("load",t);var l=!1,p=!1,h;for(h in i)if(i.hasOwnProperty(h)){var x=i[h];if(x!=null)switch(h){case"src":l=!0;break;case"srcSet":p=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(r(137,n));default:gt(t,n,h,x,i,null)}}p&&gt(t,n,"srcSet",i.srcSet,i,null),l&&gt(t,n,"src",i.src,i,null);return;case"input":Xe("invalid",t);var w=h=x=p=null,z=null,I=null;for(l in i)if(i.hasOwnProperty(l)){var Y=i[l];if(Y!=null)switch(l){case"name":p=Y;break;case"type":x=Y;break;case"checked":z=Y;break;case"defaultChecked":I=Y;break;case"value":h=Y;break;case"defaultValue":w=Y;break;case"children":case"dangerouslySetInnerHTML":if(Y!=null)throw Error(r(137,n));break;default:gt(t,n,l,Y,i,null)}}Mn(t,h,w,z,I,x,p,!1);return;case"select":Xe("invalid",t),l=x=h=null;for(p in i)if(i.hasOwnProperty(p)&&(w=i[p],w!=null))switch(p){case"value":h=w;break;case"defaultValue":x=w;break;case"multiple":l=w;default:gt(t,n,p,w,i,null)}n=h,i=x,t.multiple=!!l,n!=null?Jn(t,!!l,n,!1):i!=null&&Jn(t,!!l,i,!0);return;case"textarea":Xe("invalid",t),h=p=l=null;for(x in i)if(i.hasOwnProperty(x)&&(w=i[x],w!=null))switch(x){case"value":l=w;break;case"defaultValue":p=w;break;case"children":h=w;break;case"dangerouslySetInnerHTML":if(w!=null)throw Error(r(91));break;default:gt(t,n,x,w,i,null)}Pd(t,l,p,h);return;case"option":for(z in i)i.hasOwnProperty(z)&&(l=i[z],l!=null)&&(z==="selected"?t.selected=l&&typeof l!="function"&&typeof l!="symbol":gt(t,n,z,l,i,null));return;case"dialog":Xe("beforetoggle",t),Xe("toggle",t),Xe("cancel",t),Xe("close",t);break;case"iframe":case"object":Xe("load",t);break;case"video":case"audio":for(l=0;l<nl.length;l++)Xe(nl[l],t);break;case"image":Xe("error",t),Xe("load",t);break;case"details":Xe("toggle",t);break;case"embed":case"source":case"link":Xe("error",t),Xe("load",t);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(I in i)if(i.hasOwnProperty(I)&&(l=i[I],l!=null))switch(I){case"children":case"dangerouslySetInnerHTML":throw Error(r(137,n));default:gt(t,n,I,l,i,null)}return;default:if(jr(n)){for(Y in i)i.hasOwnProperty(Y)&&(l=i[Y],l!==void 0&&xp(t,n,Y,l,i,void 0));return}}for(w in i)i.hasOwnProperty(w)&&(l=i[w],l!=null&&gt(t,n,w,l,i,null))}function r4(t,n,i,l){switch(n){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var p=null,h=null,x=null,w=null,z=null,I=null,Y=null;for(F in i){var ie=i[F];if(i.hasOwnProperty(F)&&ie!=null)switch(F){case"checked":break;case"value":break;case"defaultValue":z=ie;default:l.hasOwnProperty(F)||gt(t,n,F,null,l,ie)}}for(var L in l){var F=l[L];if(ie=i[L],l.hasOwnProperty(L)&&(F!=null||ie!=null))switch(L){case"type":h=F;break;case"name":p=F;break;case"checked":I=F;break;case"defaultChecked":Y=F;break;case"value":x=F;break;case"defaultValue":w=F;break;case"children":case"dangerouslySetInnerHTML":if(F!=null)throw Error(r(137,n));break;default:F!==ie&&gt(t,n,L,F,l,ie)}}va(t,x,w,z,I,Y,h,p);return;case"select":F=x=w=L=null;for(h in i)if(z=i[h],i.hasOwnProperty(h)&&z!=null)switch(h){case"value":break;case"multiple":F=z;default:l.hasOwnProperty(h)||gt(t,n,h,null,l,z)}for(p in l)if(h=l[p],z=i[p],l.hasOwnProperty(p)&&(h!=null||z!=null))switch(p){case"value":L=h;break;case"defaultValue":w=h;break;case"multiple":x=h;default:h!==z&&gt(t,n,p,h,l,z)}n=w,i=x,l=F,L!=null?Jn(t,!!i,L,!1):!!l!=!!i&&(n!=null?Jn(t,!!i,n,!0):Jn(t,!!i,i?[]:"",!1));return;case"textarea":F=L=null;for(w in i)if(p=i[w],i.hasOwnProperty(w)&&p!=null&&!l.hasOwnProperty(w))switch(w){case"value":break;case"children":break;default:gt(t,n,w,null,l,p)}for(x in l)if(p=l[x],h=i[x],l.hasOwnProperty(x)&&(p!=null||h!=null))switch(x){case"value":L=p;break;case"defaultValue":F=p;break;case"children":break;case"dangerouslySetInnerHTML":if(p!=null)throw Error(r(91));break;default:p!==h&&gt(t,n,x,p,l,h)}In(t,L,F);return;case"option":for(var xe in i)L=i[xe],i.hasOwnProperty(xe)&&L!=null&&!l.hasOwnProperty(xe)&&(xe==="selected"?t.selected=!1:gt(t,n,xe,null,l,L));for(z in l)L=l[z],F=i[z],l.hasOwnProperty(z)&&L!==F&&(L!=null||F!=null)&&(z==="selected"?t.selected=L&&typeof L!="function"&&typeof L!="symbol":gt(t,n,z,L,l,F));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var Oe in i)L=i[Oe],i.hasOwnProperty(Oe)&&L!=null&&!l.hasOwnProperty(Oe)&&gt(t,n,Oe,null,l,L);for(I in l)if(L=l[I],F=i[I],l.hasOwnProperty(I)&&L!==F&&(L!=null||F!=null))switch(I){case"children":case"dangerouslySetInnerHTML":if(L!=null)throw Error(r(137,n));break;default:gt(t,n,I,L,l,F)}return;default:if(jr(n)){for(var yt in i)L=i[yt],i.hasOwnProperty(yt)&&L!==void 0&&!l.hasOwnProperty(yt)&&xp(t,n,yt,void 0,l,L);for(Y in l)L=l[Y],F=i[Y],!l.hasOwnProperty(Y)||L===F||L===void 0&&F===void 0||xp(t,n,Y,L,l,F);return}}for(var B in i)L=i[B],i.hasOwnProperty(B)&&L!=null&&!l.hasOwnProperty(B)&&gt(t,n,B,null,l,L);for(ie in l)L=l[ie],F=i[ie],!l.hasOwnProperty(ie)||L===F||L==null&&F==null||gt(t,n,ie,L,l,F)}function Ny(t){switch(t){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function l4(){if(typeof performance.getEntriesByType=="function"){for(var t=0,n=0,i=performance.getEntriesByType("resource"),l=0;l<i.length;l++){var p=i[l],h=p.transferSize,x=p.initiatorType,w=p.duration;if(h&&w&&Ny(x)){for(x=0,w=p.responseEnd,l+=1;l<i.length;l++){var z=i[l],I=z.startTime;if(I>w)break;var Y=z.transferSize,ie=z.initiatorType;Y&&Ny(ie)&&(z=z.responseEnd,x+=Y*(z<w?1:(w-I)/(z-I)))}if(--l,n+=8*(h+x)/(p.duration/1e3),t++,10<t)break}}if(0<t)return n/t/1e6}return navigator.connection&&(t=navigator.connection.downlink,typeof t=="number")?t:5}var kp=null,wp=null;function Xc(t){return t.nodeType===9?t:t.ownerDocument}function _y(t){switch(t){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function zy(t,n){if(t===0)switch(n){case"svg":return 1;case"math":return 2;default:return 0}return t===1&&n==="foreignObject"?0:t}function Sp(t,n){return t==="textarea"||t==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.children=="bigint"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var jp=null;function c4(){var t=window.event;return t&&t.type==="popstate"?t===jp?!1:(jp=t,!0):(jp=null,!1)}var Ey=typeof setTimeout=="function"?setTimeout:void 0,u4=typeof clearTimeout=="function"?clearTimeout:void 0,Ty=typeof Promise=="function"?Promise:void 0,d4=typeof queueMicrotask=="function"?queueMicrotask:typeof Ty<"u"?function(t){return Ty.resolve(null).then(t).catch(m4)}:Ey;function m4(t){setTimeout(function(){throw t})}function Ui(t){return t==="head"}function Ry(t,n){var i=n,l=0;do{var p=i.nextSibling;if(t.removeChild(i),p&&p.nodeType===8)if(i=p.data,i==="/$"||i==="/&"){if(l===0){t.removeChild(p),Mo(n);return}l--}else if(i==="$"||i==="$?"||i==="$~"||i==="$!"||i==="&")l++;else if(i==="html")il(t.ownerDocument.documentElement);else if(i==="head"){i=t.ownerDocument.head,il(i);for(var h=i.firstChild;h;){var x=h.nextSibling,w=h.nodeName;h[ps]||w==="SCRIPT"||w==="STYLE"||w==="LINK"&&h.rel.toLowerCase()==="stylesheet"||i.removeChild(h),h=x}}else i==="body"&&il(t.ownerDocument.body);i=p}while(i);Mo(n)}function Dy(t,n){var i=t;t=0;do{var l=i.nextSibling;if(i.nodeType===1?n?(i._stashedDisplay=i.style.display,i.style.display="none"):(i.style.display=i._stashedDisplay||"",i.getAttribute("style")===""&&i.removeAttribute("style")):i.nodeType===3&&(n?(i._stashedText=i.nodeValue,i.nodeValue=""):i.nodeValue=i._stashedText||""),l&&l.nodeType===8)if(i=l.data,i==="/$"){if(t===0)break;t--}else i!=="$"&&i!=="$?"&&i!=="$~"&&i!=="$!"||t++;i=l}while(i)}function Ap(t){var n=t.firstChild;for(n&&n.nodeType===10&&(n=n.nextSibling);n;){var i=n;switch(n=n.nextSibling,i.nodeName){case"HTML":case"HEAD":case"BODY":Ap(i),no(i);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(i.rel.toLowerCase()==="stylesheet")continue}t.removeChild(i)}}function p4(t,n,i,l){for(;t.nodeType===1;){var p=i;if(t.nodeName.toLowerCase()!==n.toLowerCase()){if(!l&&(t.nodeName!=="INPUT"||t.type!=="hidden"))break}else if(l){if(!t[ps])switch(n){case"meta":if(!t.hasAttribute("itemprop"))break;return t;case"link":if(h=t.getAttribute("rel"),h==="stylesheet"&&t.hasAttribute("data-precedence"))break;if(h!==p.rel||t.getAttribute("href")!==(p.href==null||p.href===""?null:p.href)||t.getAttribute("crossorigin")!==(p.crossOrigin==null?null:p.crossOrigin)||t.getAttribute("title")!==(p.title==null?null:p.title))break;return t;case"style":if(t.hasAttribute("data-precedence"))break;return t;case"script":if(h=t.getAttribute("src"),(h!==(p.src==null?null:p.src)||t.getAttribute("type")!==(p.type==null?null:p.type)||t.getAttribute("crossorigin")!==(p.crossOrigin==null?null:p.crossOrigin))&&h&&t.hasAttribute("async")&&!t.hasAttribute("itemprop"))break;return t;default:return t}}else if(n==="input"&&t.type==="hidden"){var h=p.name==null?null:""+p.name;if(p.type==="hidden"&&t.getAttribute("name")===h)return t}else return t;if(t=la(t.nextSibling),t===null)break}return null}function h4(t,n,i){if(n==="")return null;for(;t.nodeType!==3;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!i||(t=la(t.nextSibling),t===null))return null;return t}function Oy(t,n){for(;t.nodeType!==8;)if((t.nodeType!==1||t.nodeName!=="INPUT"||t.type!=="hidden")&&!n||(t=la(t.nextSibling),t===null))return null;return t}function Cp(t){return t.data==="$?"||t.data==="$~"}function Np(t){return t.data==="$!"||t.data==="$?"&&t.ownerDocument.readyState!=="loading"}function f4(t,n){var i=t.ownerDocument;if(t.data==="$~")t._reactRetry=n;else if(t.data!=="$?"||i.readyState!=="loading")n();else{var l=function(){n(),i.removeEventListener("DOMContentLoaded",l)};i.addEventListener("DOMContentLoaded",l),t._reactRetry=l}}function la(t){for(;t!=null;t=t.nextSibling){var n=t.nodeType;if(n===1||n===3)break;if(n===8){if(n=t.data,n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"||n==="F!"||n==="F")break;if(n==="/$"||n==="/&")return null}}return t}var _p=null;function qy(t){t=t.nextSibling;for(var n=0;t;){if(t.nodeType===8){var i=t.data;if(i==="/$"||i==="/&"){if(n===0)return la(t.nextSibling);n--}else i!=="$"&&i!=="$!"&&i!=="$?"&&i!=="$~"&&i!=="&"||n++}t=t.nextSibling}return null}function By(t){t=t.previousSibling;for(var n=0;t;){if(t.nodeType===8){var i=t.data;if(i==="$"||i==="$!"||i==="$?"||i==="$~"||i==="&"){if(n===0)return t;n--}else i!=="/$"&&i!=="/&"||n++}t=t.previousSibling}return null}function Py(t,n,i){switch(n=Xc(i),t){case"html":if(t=n.documentElement,!t)throw Error(r(452));return t;case"head":if(t=n.head,!t)throw Error(r(453));return t;case"body":if(t=n.body,!t)throw Error(r(454));return t;default:throw Error(r(451))}}function il(t){for(var n=t.attributes;n.length;)t.removeAttributeNode(n[0]);no(t)}var ca=new Map,My=new Set;function Jc(t){return typeof t.getRootNode=="function"?t.getRootNode():t.nodeType===9?t:t.ownerDocument}var di=ae.d;ae.d={f:g4,r:y4,D:b4,C:v4,L:x4,m:k4,X:S4,S:w4,M:j4};function g4(){var t=di.f(),n=Gc();return t||n}function y4(t){var n=Qa(t);n!==null&&n.tag===5&&n.type==="form"?t1(n):di.r(t)}var qo=typeof document>"u"?null:document;function Iy(t,n,i){var l=qo;if(l&&typeof n=="string"&&n){var p=gn(n);p='link[rel="'+t+'"][href="'+p+'"]',typeof i=="string"&&(p+='[crossorigin="'+i+'"]'),My.has(p)||(My.add(p),t={rel:t,crossOrigin:i,href:n},l.querySelector(p)===null&&(n=l.createElement("link"),sn(n,"link",t),qt(n),l.head.appendChild(n)))}}function b4(t){di.D(t),Iy("dns-prefetch",t,null)}function v4(t,n){di.C(t,n),Iy("preconnect",t,n)}function x4(t,n,i){di.L(t,n,i);var l=qo;if(l&&t&&n){var p='link[rel="preload"][as="'+gn(n)+'"]';n==="image"&&i&&i.imageSrcSet?(p+='[imagesrcset="'+gn(i.imageSrcSet)+'"]',typeof i.imageSizes=="string"&&(p+='[imagesizes="'+gn(i.imageSizes)+'"]')):p+='[href="'+gn(t)+'"]';var h=p;switch(n){case"style":h=Bo(t);break;case"script":h=Po(t)}ca.has(h)||(t=A({rel:"preload",href:n==="image"&&i&&i.imageSrcSet?void 0:t,as:n},i),ca.set(h,t),l.querySelector(p)!==null||n==="style"&&l.querySelector(sl(h))||n==="script"&&l.querySelector(ol(h))||(n=l.createElement("link"),sn(n,"link",t),qt(n),l.head.appendChild(n)))}}function k4(t,n){di.m(t,n);var i=qo;if(i&&t){var l=n&&typeof n.as=="string"?n.as:"script",p='link[rel="modulepreload"][as="'+gn(l)+'"][href="'+gn(t)+'"]',h=p;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":h=Po(t)}if(!ca.has(h)&&(t=A({rel:"modulepreload",href:t},n),ca.set(h,t),i.querySelector(p)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(i.querySelector(ol(h)))return}l=i.createElement("link"),sn(l,"link",t),qt(l),i.head.appendChild(l)}}}function w4(t,n,i){di.S(t,n,i);var l=qo;if(l&&t){var p=Fa(l).hoistableStyles,h=Bo(t);n=n||"default";var x=p.get(h);if(!x){var w={loading:0,preload:null};if(x=l.querySelector(sl(h)))w.loading=5;else{t=A({rel:"stylesheet",href:t,"data-precedence":n},i),(i=ca.get(h))&&zp(t,i);var z=x=l.createElement("link");qt(z),sn(z,"link",t),z._p=new Promise(function(I,Y){z.onload=I,z.onerror=Y}),z.addEventListener("load",function(){w.loading|=1}),z.addEventListener("error",function(){w.loading|=2}),w.loading|=4,Wc(x,n,l)}x={type:"stylesheet",instance:x,count:1,state:w},p.set(h,x)}}}function S4(t,n){di.X(t,n);var i=qo;if(i&&t){var l=Fa(i).hoistableScripts,p=Po(t),h=l.get(p);h||(h=i.querySelector(ol(p)),h||(t=A({src:t,async:!0},n),(n=ca.get(p))&&Ep(t,n),h=i.createElement("script"),qt(h),sn(h,"link",t),i.head.appendChild(h)),h={type:"script",instance:h,count:1,state:null},l.set(p,h))}}function j4(t,n){di.M(t,n);var i=qo;if(i&&t){var l=Fa(i).hoistableScripts,p=Po(t),h=l.get(p);h||(h=i.querySelector(ol(p)),h||(t=A({src:t,async:!0,type:"module"},n),(n=ca.get(p))&&Ep(t,n),h=i.createElement("script"),qt(h),sn(h,"link",t),i.head.appendChild(h)),h={type:"script",instance:h,count:1,state:null},l.set(p,h))}}function Vy(t,n,i,l){var p=(p=q.current)?Jc(p):null;if(!p)throw Error(r(446));switch(t){case"meta":case"title":return null;case"style":return typeof i.precedence=="string"&&typeof i.href=="string"?(n=Bo(i.href),i=Fa(p).hoistableStyles,l=i.get(n),l||(l={type:"style",instance:null,count:0,state:null},i.set(n,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(i.rel==="stylesheet"&&typeof i.href=="string"&&typeof i.precedence=="string"){t=Bo(i.href);var h=Fa(p).hoistableStyles,x=h.get(t);if(x||(p=p.ownerDocument||p,x={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},h.set(t,x),(h=p.querySelector(sl(t)))&&!h._p&&(x.instance=h,x.state.loading=5),ca.has(t)||(i={rel:"preload",as:"style",href:i.href,crossOrigin:i.crossOrigin,integrity:i.integrity,media:i.media,hrefLang:i.hrefLang,referrerPolicy:i.referrerPolicy},ca.set(t,i),h||A4(p,t,i,x.state))),n&&l===null)throw Error(r(528,""));return x}if(n&&l!==null)throw Error(r(529,""));return null;case"script":return n=i.async,i=i.src,typeof i=="string"&&n&&typeof n!="function"&&typeof n!="symbol"?(n=Po(i),i=Fa(p).hoistableScripts,l=i.get(n),l||(l={type:"script",instance:null,count:0,state:null},i.set(n,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,t))}}function Bo(t){return'href="'+gn(t)+'"'}function sl(t){return'link[rel="stylesheet"]['+t+"]"}function Ly(t){return A({},t,{"data-precedence":t.precedence,precedence:null})}function A4(t,n,i,l){t.querySelector('link[rel="preload"][as="style"]['+n+"]")?l.loading=1:(n=t.createElement("link"),l.preload=n,n.addEventListener("load",function(){return l.loading|=1}),n.addEventListener("error",function(){return l.loading|=2}),sn(n,"link",i),qt(n),t.head.appendChild(n))}function Po(t){return'[src="'+gn(t)+'"]'}function ol(t){return"script[async]"+t}function Uy(t,n,i){if(n.count++,n.instance===null)switch(n.type){case"style":var l=t.querySelector('style[data-href~="'+gn(i.href)+'"]');if(l)return n.instance=l,qt(l),l;var p=A({},i,{"data-href":i.href,"data-precedence":i.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),qt(l),sn(l,"style",p),Wc(l,i.precedence,t),n.instance=l;case"stylesheet":p=Bo(i.href);var h=t.querySelector(sl(p));if(h)return n.state.loading|=4,n.instance=h,qt(h),h;l=Ly(i),(p=ca.get(p))&&zp(l,p),h=(t.ownerDocument||t).createElement("link"),qt(h);var x=h;return x._p=new Promise(function(w,z){x.onload=w,x.onerror=z}),sn(h,"link",l),n.state.loading|=4,Wc(h,i.precedence,t),n.instance=h;case"script":return h=Po(i.src),(p=t.querySelector(ol(h)))?(n.instance=p,qt(p),p):(l=i,(p=ca.get(h))&&(l=A({},i),Ep(l,p)),t=t.ownerDocument||t,p=t.createElement("script"),qt(p),sn(p,"link",l),t.head.appendChild(p),n.instance=p);case"void":return null;default:throw Error(r(443,n.type))}else n.type==="stylesheet"&&(n.state.loading&4)===0&&(l=n.instance,n.state.loading|=4,Wc(l,i.precedence,t));return n.instance}function Wc(t,n,i){for(var l=i.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),p=l.length?l[l.length-1]:null,h=p,x=0;x<l.length;x++){var w=l[x];if(w.dataset.precedence===n)h=w;else if(h!==p)break}h?h.parentNode.insertBefore(t,h.nextSibling):(n=i.nodeType===9?i.head:i,n.insertBefore(t,n.firstChild))}function zp(t,n){t.crossOrigin==null&&(t.crossOrigin=n.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=n.referrerPolicy),t.title==null&&(t.title=n.title)}function Ep(t,n){t.crossOrigin==null&&(t.crossOrigin=n.crossOrigin),t.referrerPolicy==null&&(t.referrerPolicy=n.referrerPolicy),t.integrity==null&&(t.integrity=n.integrity)}var eu=null;function Gy(t,n,i){if(eu===null){var l=new Map,p=eu=new Map;p.set(i,l)}else p=eu,l=p.get(i),l||(l=new Map,p.set(i,l));if(l.has(t))return l;for(l.set(t,null),i=i.getElementsByTagName(t),p=0;p<i.length;p++){var h=i[p];if(!(h[ps]||h[Mt]||t==="link"&&h.getAttribute("rel")==="stylesheet")&&h.namespaceURI!=="http://www.w3.org/2000/svg"){var x=h.getAttribute(n)||"";x=t+x;var w=l.get(x);w?w.push(h):l.set(x,[h])}}return l}function $y(t,n,i){t=t.ownerDocument||t,t.head.insertBefore(i,n==="title"?t.querySelector("head > title"):null)}function C4(t,n,i){if(i===1||n.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof n.precedence!="string"||typeof n.href!="string"||n.href==="")break;return!0;case"link":if(typeof n.rel!="string"||typeof n.href!="string"||n.href===""||n.onLoad||n.onError)break;return n.rel==="stylesheet"?(t=n.disabled,typeof n.precedence=="string"&&t==null):!0;case"script":if(n.async&&typeof n.async!="function"&&typeof n.async!="symbol"&&!n.onLoad&&!n.onError&&n.src&&typeof n.src=="string")return!0}return!1}function Ky(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function N4(t,n,i,l){if(i.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(i.state.loading&4)===0){if(i.instance===null){var p=Bo(l.href),h=n.querySelector(sl(p));if(h){n=h._p,n!==null&&typeof n=="object"&&typeof n.then=="function"&&(t.count++,t=tu.bind(t),n.then(t,t)),i.state.loading|=4,i.instance=h,qt(h);return}h=n.ownerDocument||n,l=Ly(l),(p=ca.get(p))&&zp(l,p),h=h.createElement("link"),qt(h);var x=h;x._p=new Promise(function(w,z){x.onload=w,x.onerror=z}),sn(h,"link",l),i.instance=h}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(i,n),(n=i.state.preload)&&(i.state.loading&3)===0&&(t.count++,i=tu.bind(t),n.addEventListener("load",i),n.addEventListener("error",i))}}var Tp=0;function _4(t,n){return t.stylesheets&&t.count===0&&au(t,t.stylesheets),0<t.count||0<t.imgCount?function(i){var l=setTimeout(function(){if(t.stylesheets&&au(t,t.stylesheets),t.unsuspend){var h=t.unsuspend;t.unsuspend=null,h()}},6e4+n);0<t.imgBytes&&Tp===0&&(Tp=62500*l4());var p=setTimeout(function(){if(t.waitingForImages=!1,t.count===0&&(t.stylesheets&&au(t,t.stylesheets),t.unsuspend)){var h=t.unsuspend;t.unsuspend=null,h()}},(t.imgBytes>Tp?50:800)+n);return t.unsuspend=i,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(p)}}:null}function tu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)au(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var nu=null;function au(t,n){t.stylesheets=null,t.unsuspend!==null&&(t.count++,nu=new Map,n.forEach(z4,t),nu=null,tu.call(t))}function z4(t,n){if(!(n.state.loading&4)){var i=nu.get(t);if(i)var l=i.get(null);else{i=new Map,nu.set(t,i);for(var p=t.querySelectorAll("link[data-precedence],style[data-precedence]"),h=0;h<p.length;h++){var x=p[h];(x.nodeName==="LINK"||x.getAttribute("media")!=="not all")&&(i.set(x.dataset.precedence,x),l=x)}l&&i.set(null,l)}p=n.instance,x=p.getAttribute("data-precedence"),h=i.get(x)||l,h===l&&i.set(null,p),i.set(x,p),this.count++,l=tu.bind(this),p.addEventListener("load",l),p.addEventListener("error",l),h?h.parentNode.insertBefore(p,h.nextSibling):(t=t.nodeType===9?t.head:t,t.insertBefore(p,t.firstChild)),n.state.loading|=4}}var rl={$$typeof:Q,Provider:null,Consumer:null,_currentValue:he,_currentValue2:he,_threadCount:0};function E4(t,n,i,l,p,h,x,w,z){this.tag=1,this.containerInfo=t,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=eo(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=eo(0),this.hiddenUpdates=eo(null),this.identifierPrefix=l,this.onUncaughtError=p,this.onCaughtError=h,this.onRecoverableError=x,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=z,this.incompleteTransitions=new Map}function Hy(t,n,i,l,p,h,x,w,z,I,Y,ie){return t=new E4(t,n,i,x,z,I,Y,ie,w),n=1,h===!0&&(n|=24),h=Un(3,null,null,n),t.current=h,h.stateNode=t,n=um(),n.refCount++,t.pooledCache=n,n.refCount++,h.memoizedState={element:l,isDehydrated:i,cache:n},hm(h),t}function Qy(t){return t?(t=ho,t):ho}function Fy(t,n,i,l,p,h){p=Qy(p),l.context===null?l.context=p:l.pendingContext=p,l=Ti(n),l.payload={element:i},h=h===void 0?null:h,h!==null&&(l.callback=h),i=Ri(t,l,n),i!==null&&(Dn(i,t,n),Ir(i,t,n))}function Zy(t,n){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var i=t.retryLane;t.retryLane=i!==0&&i<n?i:n}}function Rp(t,n){Zy(t,n),(t=t.alternate)&&Zy(t,n)}function Yy(t){if(t.tag===13||t.tag===31){var n=Ss(t,67108864);n!==null&&Dn(n,t,67108864),Rp(t,67108864)}}function Xy(t){if(t.tag===13||t.tag===31){var n=Qn();n=vr(n);var i=Ss(t,n);i!==null&&Dn(i,t,n),Rp(t,n)}}var iu=!0;function T4(t,n,i,l){var p=P.T;P.T=null;var h=ae.p;try{ae.p=2,Dp(t,n,i,l)}finally{ae.p=h,P.T=p}}function R4(t,n,i,l){var p=P.T;P.T=null;var h=ae.p;try{ae.p=8,Dp(t,n,i,l)}finally{ae.p=h,P.T=p}}function Dp(t,n,i,l){if(iu){var p=Op(l);if(p===null)vp(t,n,l,su,i),Wy(t,l);else if(O4(p,t,n,i,l))l.stopPropagation();else if(Wy(t,l),n&4&&-1<D4.indexOf(t)){for(;p!==null;){var h=Qa(p);if(h!==null)switch(h.tag){case 3:if(h=h.stateNode,h.current.memoizedState.isDehydrated){var x=jn(h.pendingLanes);if(x!==0){var w=h;for(w.pendingLanes|=2,w.entangledLanes|=2;x;){var z=1<<31-Rt(x);w.entanglements[1]|=z,x&=~z}Va(h),(ct&6)===0&&(Lc=cn()+500,tl(0))}}break;case 31:case 13:w=Ss(h,2),w!==null&&Dn(w,h,2),Gc(),Rp(h,2)}if(h=Op(l),h===null&&vp(t,n,l,su,i),h===p)break;p=h}p!==null&&l.stopPropagation()}else vp(t,n,l,null,i)}}function Op(t){return t=ys(t),qp(t)}var su=null;function qp(t){if(su=null,t=ki(t),t!==null){var n=f(t);if(n===null)t=null;else{var i=n.tag;if(i===13){if(t=g(n),t!==null)return t;t=null}else if(i===31){if(t=b(n),t!==null)return t;t=null}else if(i===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;t=null}else n!==t&&(t=null)}}return su=t,null}function Jy(t){switch(t){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(Ql()){case gr:return 2;case Fl:return 8;case Js:case Zl:return 32;case Xn:return 268435456;default:return 32}default:return 32}}var Bp=!1,Gi=null,$i=null,Ki=null,ll=new Map,cl=new Map,Hi=[],D4="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function Wy(t,n){switch(t){case"focusin":case"focusout":Gi=null;break;case"dragenter":case"dragleave":$i=null;break;case"mouseover":case"mouseout":Ki=null;break;case"pointerover":case"pointerout":ll.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":cl.delete(n.pointerId)}}function ul(t,n,i,l,p,h){return t===null||t.nativeEvent!==h?(t={blockedOn:n,domEventName:i,eventSystemFlags:l,nativeEvent:h,targetContainers:[p]},n!==null&&(n=Qa(n),n!==null&&Yy(n)),t):(t.eventSystemFlags|=l,n=t.targetContainers,p!==null&&n.indexOf(p)===-1&&n.push(p),t)}function O4(t,n,i,l,p){switch(n){case"focusin":return Gi=ul(Gi,t,n,i,l,p),!0;case"dragenter":return $i=ul($i,t,n,i,l,p),!0;case"mouseover":return Ki=ul(Ki,t,n,i,l,p),!0;case"pointerover":var h=p.pointerId;return ll.set(h,ul(ll.get(h)||null,t,n,i,l,p)),!0;case"gotpointercapture":return h=p.pointerId,cl.set(h,ul(cl.get(h)||null,t,n,i,l,p)),!0}return!1}function eb(t){var n=ki(t.target);if(n!==null){var i=f(n);if(i!==null){if(n=i.tag,n===13){if(n=g(i),n!==null){t.blockedOn=n,ec(t.priority,function(){Xy(i)});return}}else if(n===31){if(n=b(i),n!==null){t.blockedOn=n,ec(t.priority,function(){Xy(i)});return}}else if(n===3&&i.stateNode.current.memoizedState.isDehydrated){t.blockedOn=i.tag===3?i.stateNode.containerInfo:null;return}}}t.blockedOn=null}function ou(t){if(t.blockedOn!==null)return!1;for(var n=t.targetContainers;0<n.length;){var i=Op(t.nativeEvent);if(i===null){i=t.nativeEvent;var l=new i.constructor(i.type,i);ea=l,i.target.dispatchEvent(l),ea=null}else return n=Qa(i),n!==null&&Yy(n),t.blockedOn=i,!1;n.shift()}return!0}function tb(t,n,i){ou(t)&&i.delete(n)}function q4(){Bp=!1,Gi!==null&&ou(Gi)&&(Gi=null),$i!==null&&ou($i)&&($i=null),Ki!==null&&ou(Ki)&&(Ki=null),ll.forEach(tb),cl.forEach(tb)}function ru(t,n){t.blockedOn===n&&(t.blockedOn=null,Bp||(Bp=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,q4)))}var lu=null;function nb(t){lu!==t&&(lu=t,e.unstable_scheduleCallback(e.unstable_NormalPriority,function(){lu===t&&(lu=null);for(var n=0;n<t.length;n+=3){var i=t[n],l=t[n+1],p=t[n+2];if(typeof l!="function"){if(qp(l||i)===null)continue;break}var h=Qa(i);h!==null&&(t.splice(n,3),n-=3,Om(h,{pending:!0,data:p,method:i.method,action:l},l,p))}}))}function Mo(t){function n(z){return ru(z,t)}Gi!==null&&ru(Gi,t),$i!==null&&ru($i,t),Ki!==null&&ru(Ki,t),ll.forEach(n),cl.forEach(n);for(var i=0;i<Hi.length;i++){var l=Hi[i];l.blockedOn===t&&(l.blockedOn=null)}for(;0<Hi.length&&(i=Hi[0],i.blockedOn===null);)eb(i),i.blockedOn===null&&Hi.shift();if(i=(t.ownerDocument||t).$$reactFormReplay,i!=null)for(l=0;l<i.length;l+=3){var p=i[l],h=i[l+1],x=p[en]||null;if(typeof h=="function")x||nb(i);else if(x){var w=null;if(h&&h.hasAttribute("formAction")){if(p=h,x=h[en]||null)w=x.formAction;else if(qp(p)!==null)continue}else w=x.action;typeof w=="function"?i[l+1]=w:(i.splice(l,3),l-=3),nb(i)}}}function ab(){function t(h){h.canIntercept&&h.info==="react-transition"&&h.intercept({handler:function(){return new Promise(function(x){return p=x})},focusReset:"manual",scroll:"manual"})}function n(){p!==null&&(p(),p=null),l||setTimeout(i,20)}function i(){if(!l&&!navigation.transition){var h=navigation.currentEntry;h&&h.url!=null&&navigation.navigate(h.url,{state:h.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var l=!1,p=null;return navigation.addEventListener("navigate",t),navigation.addEventListener("navigatesuccess",n),navigation.addEventListener("navigateerror",n),setTimeout(i,100),function(){l=!0,navigation.removeEventListener("navigate",t),navigation.removeEventListener("navigatesuccess",n),navigation.removeEventListener("navigateerror",n),p!==null&&(p(),p=null)}}}function Pp(t){this._internalRoot=t}cu.prototype.render=Pp.prototype.render=function(t){var n=this._internalRoot;if(n===null)throw Error(r(409));var i=n.current,l=Qn();Fy(i,l,t,n,null,null)},cu.prototype.unmount=Pp.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var n=t.containerInfo;Fy(t.current,2,null,t,null,null),Gc(),n[ya]=null}};function cu(t){this._internalRoot=t}cu.prototype.unstable_scheduleHydration=function(t){if(t){var n=xr();t={blockedOn:null,target:t,priority:n};for(var i=0;i<Hi.length&&n!==0&&n<Hi[i].priority;i++);Hi.splice(i,0,t),i===0&&eb(t)}};var ib=a.version;if(ib!=="19.2.4")throw Error(r(527,ib,"19.2.4"));ae.findDOMNode=function(t){var n=t._reactInternals;if(n===void 0)throw typeof t.render=="function"?Error(r(188)):(t=Object.keys(t).join(","),Error(r(268,t)));return t=k(n),t=t!==null?S(t):null,t=t===null?null:t.stateNode,t};var B4={bundleType:0,version:"19.2.4",rendererPackageName:"react-dom",currentDispatcherRef:P,reconcilerVersion:"19.2.4"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var uu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!uu.isDisabled&&uu.supportsFiber)try{ds=uu.inject(B4),Wt=uu}catch{}}return dl.createRoot=function(t,n){if(!u(t))throw Error(r(299));var i=!1,l="",p=d1,h=m1,x=p1;return n!=null&&(n.unstable_strictMode===!0&&(i=!0),n.identifierPrefix!==void 0&&(l=n.identifierPrefix),n.onUncaughtError!==void 0&&(p=n.onUncaughtError),n.onCaughtError!==void 0&&(h=n.onCaughtError),n.onRecoverableError!==void 0&&(x=n.onRecoverableError)),n=Hy(t,1,!1,null,null,i,l,null,p,h,x,ab),t[ya]=n.current,bp(t),new Pp(n)},dl.hydrateRoot=function(t,n,i){if(!u(t))throw Error(r(299));var l=!1,p="",h=d1,x=m1,w=p1,z=null;return i!=null&&(i.unstable_strictMode===!0&&(l=!0),i.identifierPrefix!==void 0&&(p=i.identifierPrefix),i.onUncaughtError!==void 0&&(h=i.onUncaughtError),i.onCaughtError!==void 0&&(x=i.onCaughtError),i.onRecoverableError!==void 0&&(w=i.onRecoverableError),i.formState!==void 0&&(z=i.formState)),n=Hy(t,1,!0,n,i??null,l,p,z,h,x,w,ab),n.context=Qy(null),i=n.current,l=Qn(),l=vr(l),p=Ti(l),p.callback=null,Ri(i,p,l),i=l,n.current.lanes=i,xi(n,i),Va(n),t[ya]=n.current,bp(t),new cu(n)},dl.version="19.2.4",dl}var cb;function wA(){if(cb)return Mp.exports;cb=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(a){console.error(a)}}return e(),Mp.exports=kA(),Mp.exports}var SA=wA();function J(e,a,s){function r(b,v){if(b._zod||Object.defineProperty(b,"_zod",{value:{def:v,constr:g,traits:new Set},enumerable:!1}),b._zod.traits.has(e))return;b._zod.traits.add(e),a(b,v);const k=g.prototype,S=Object.keys(k);for(let A=0;A<S.length;A++){const N=S[A];N in b||(b[N]=k[N].bind(b))}}const u=s?.Parent??Object;class f extends u{}Object.defineProperty(f,"name",{value:e});function g(b){var v;const k=s?.Parent?new f:this;r(k,b),(v=k._zod).deferred??(v.deferred=[]);for(const S of k._zod.deferred)S();return k}return Object.defineProperty(g,"init",{value:r}),Object.defineProperty(g,Symbol.hasInstance,{value:b=>s?.Parent&&b instanceof s.Parent?!0:b?._zod?.traits?.has(e)}),Object.defineProperty(g,"name",{value:e}),g}class Ho extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Kx extends Error{constructor(a){super(`Encountered unidirectional transform during encode: ${a}`),this.name="ZodEncodeError"}}const Hx={};function Wi(e){return Hx}function Qx(e){const a=Object.values(e).filter(r=>typeof r=="number");return Object.entries(e).filter(([r,u])=>a.indexOf(+r)===-1).map(([r,u])=>u)}function fh(e,a){return typeof a=="bigint"?a.toString():a}function Ju(e){return{get value(){{const a=e();return Object.defineProperty(this,"value",{value:a}),a}}}}function e0(e){return e==null}function t0(e){const a=e.startsWith("^")?1:0,s=e.endsWith("$")?e.length-1:e.length;return e.slice(a,s)}function jA(e,a){const s=(e.toString().split(".")[1]||"").length,r=a.toString();let u=(r.split(".")[1]||"").length;if(u===0&&/\d?e-\d?/.test(r)){const v=r.match(/\d?e-(\d?)/);v?.[1]&&(u=Number.parseInt(v[1]))}const f=s>u?s:u,g=Number.parseInt(e.toFixed(f).replace(".","")),b=Number.parseInt(a.toFixed(f).replace(".",""));return g%b/10**f}const ub=Symbol("evaluating");function dt(e,a,s){let r;Object.defineProperty(e,a,{get(){if(r!==ub)return r===void 0&&(r=ub,r=s()),r},set(u){Object.defineProperty(e,a,{value:u})},configurable:!0})}function Qs(e,a,s){Object.defineProperty(e,a,{value:s,writable:!0,enumerable:!0,configurable:!0})}function is(...e){const a={};for(const s of e){const r=Object.getOwnPropertyDescriptors(s);Object.assign(a,r)}return Object.defineProperties({},a)}function db(e){return JSON.stringify(e)}function AA(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const Fx="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function Cl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const CA=Ju(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function Yo(e){if(Cl(e)===!1)return!1;const a=e.constructor;if(a===void 0||typeof a!="function")return!0;const s=a.prototype;return!(Cl(s)===!1||Object.prototype.hasOwnProperty.call(s,"isPrototypeOf")===!1)}function Zx(e){return Yo(e)?{...e}:Array.isArray(e)?[...e]:e}const NA=new Set(["string","number","symbol"]);function Xo(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ss(e,a,s){const r=new e._zod.constr(a??e._zod.def);return(!a||s?.parent)&&(r._zod.parent=e),r}function _e(e){const a=e;if(!a)return{};if(typeof a=="string")return{error:()=>a};if(a?.message!==void 0){if(a?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");a.error=a.message}return delete a.message,typeof a.error=="string"?{...a,error:()=>a.error}:a}function _A(e){return Object.keys(e).filter(a=>e[a]._zod.optin==="optional"&&e[a]._zod.optout==="optional")}const zA={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function EA(e,a){const s=e._zod.def,r=s.checks;if(r&&r.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const f=is(e._zod.def,{get shape(){const g={};for(const b in a){if(!(b in s.shape))throw new Error(`Unrecognized key: "${b}"`);a[b]&&(g[b]=s.shape[b])}return Qs(this,"shape",g),g},checks:[]});return ss(e,f)}function TA(e,a){const s=e._zod.def,r=s.checks;if(r&&r.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const f=is(e._zod.def,{get shape(){const g={...e._zod.def.shape};for(const b in a){if(!(b in s.shape))throw new Error(`Unrecognized key: "${b}"`);a[b]&&delete g[b]}return Qs(this,"shape",g),g},checks:[]});return ss(e,f)}function RA(e,a){if(!Yo(a))throw new Error("Invalid input to extend: expected a plain object");const s=e._zod.def.checks;if(s&&s.length>0){const f=e._zod.def.shape;for(const g in a)if(Object.getOwnPropertyDescriptor(f,g)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const u=is(e._zod.def,{get shape(){const f={...e._zod.def.shape,...a};return Qs(this,"shape",f),f}});return ss(e,u)}function DA(e,a){if(!Yo(a))throw new Error("Invalid input to safeExtend: expected a plain object");const s=is(e._zod.def,{get shape(){const r={...e._zod.def.shape,...a};return Qs(this,"shape",r),r}});return ss(e,s)}function OA(e,a){const s=is(e._zod.def,{get shape(){const r={...e._zod.def.shape,...a._zod.def.shape};return Qs(this,"shape",r),r},get catchall(){return a._zod.def.catchall},checks:[]});return ss(e,s)}function qA(e,a,s){const u=a._zod.def.checks;if(u&&u.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const g=is(a._zod.def,{get shape(){const b=a._zod.def.shape,v={...b};if(s)for(const k in s){if(!(k in b))throw new Error(`Unrecognized key: "${k}"`);s[k]&&(v[k]=e?new e({type:"optional",innerType:b[k]}):b[k])}else for(const k in b)v[k]=e?new e({type:"optional",innerType:b[k]}):b[k];return Qs(this,"shape",v),v},checks:[]});return ss(a,g)}function BA(e,a,s){const r=is(a._zod.def,{get shape(){const u=a._zod.def.shape,f={...u};if(s)for(const g in s){if(!(g in f))throw new Error(`Unrecognized key: "${g}"`);s[g]&&(f[g]=new e({type:"nonoptional",innerType:u[g]}))}else for(const g in u)f[g]=new e({type:"nonoptional",innerType:u[g]});return Qs(this,"shape",f),f}});return ss(a,r)}function Go(e,a=0){if(e.aborted===!0)return!0;for(let s=a;s<e.issues.length;s++)if(e.issues[s]?.continue!==!0)return!0;return!1}function $o(e,a){return a.map(s=>{var r;return(r=s).path??(r.path=[]),s.path.unshift(e),s})}function mu(e){return typeof e=="string"?e:e?.message}function es(e,a,s){const r={...e,path:e.path??[]};if(!e.message){const u=mu(e.inst?._zod.def?.error?.(e))??mu(a?.error?.(e))??mu(s.customError?.(e))??mu(s.localeError?.(e))??"Invalid input";r.message=u}return delete r.inst,delete r.continue,a?.reportInput||delete r.input,r}function n0(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Nl(...e){const[a,s,r]=e;return typeof a=="string"?{message:a,code:"custom",input:s,inst:r}:{...a}}const Yx=(e,a)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:a,enumerable:!1}),e.message=JSON.stringify(a,fh,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Xx=J("$ZodError",Yx),Jx=J("$ZodError",Yx,{Parent:Error});function PA(e,a=s=>s.message){const s={},r=[];for(const u of e.issues)u.path.length>0?(s[u.path[0]]=s[u.path[0]]||[],s[u.path[0]].push(a(u))):r.push(a(u));return{formErrors:r,fieldErrors:s}}function MA(e,a=s=>s.message){const s={_errors:[]},r=u=>{for(const f of u.issues)if(f.code==="invalid_union"&&f.errors.length)f.errors.map(g=>r({issues:g}));else if(f.code==="invalid_key")r({issues:f.issues});else if(f.code==="invalid_element")r({issues:f.issues});else if(f.path.length===0)s._errors.push(a(f));else{let g=s,b=0;for(;b<f.path.length;){const v=f.path[b];b===f.path.length-1?(g[v]=g[v]||{_errors:[]},g[v]._errors.push(a(f))):g[v]=g[v]||{_errors:[]},g=g[v],b++}}};return r(e),s}const a0=e=>(a,s,r,u)=>{const f=r?Object.assign(r,{async:!1}):{async:!1},g=a._zod.run({value:s,issues:[]},f);if(g instanceof Promise)throw new Ho;if(g.issues.length){const b=new(u?.Err??e)(g.issues.map(v=>es(v,f,Wi())));throw Fx(b,u?.callee),b}return g.value},i0=e=>async(a,s,r,u)=>{const f=r?Object.assign(r,{async:!0}):{async:!0};let g=a._zod.run({value:s,issues:[]},f);if(g instanceof Promise&&(g=await g),g.issues.length){const b=new(u?.Err??e)(g.issues.map(v=>es(v,f,Wi())));throw Fx(b,u?.callee),b}return g.value},Wu=e=>(a,s,r)=>{const u=r?{...r,async:!1}:{async:!1},f=a._zod.run({value:s,issues:[]},u);if(f instanceof Promise)throw new Ho;return f.issues.length?{success:!1,error:new(e??Xx)(f.issues.map(g=>es(g,u,Wi())))}:{success:!0,data:f.value}},IA=Wu(Jx),ed=e=>async(a,s,r)=>{const u=r?Object.assign(r,{async:!0}):{async:!0};let f=a._zod.run({value:s,issues:[]},u);return f instanceof Promise&&(f=await f),f.issues.length?{success:!1,error:new e(f.issues.map(g=>es(g,u,Wi())))}:{success:!0,data:f.value}},VA=ed(Jx),LA=e=>(a,s,r)=>{const u=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return a0(e)(a,s,u)},UA=e=>(a,s,r)=>a0(e)(a,s,r),GA=e=>async(a,s,r)=>{const u=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return i0(e)(a,s,u)},$A=e=>async(a,s,r)=>i0(e)(a,s,r),KA=e=>(a,s,r)=>{const u=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return Wu(e)(a,s,u)},HA=e=>(a,s,r)=>Wu(e)(a,s,r),QA=e=>async(a,s,r)=>{const u=r?Object.assign(r,{direction:"backward"}):{direction:"backward"};return ed(e)(a,s,u)},FA=e=>async(a,s,r)=>ed(e)(a,s,r),ZA=/^[cC][^\s-]{8,}$/,YA=/^[0-9a-z]+$/,XA=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,JA=/^[0-9a-vA-V]{20}$/,WA=/^[A-Za-z0-9]{27}$/,e5=/^[a-zA-Z0-9_-]{21}$/,t5=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,n5=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,mb=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,a5=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,i5="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function s5(){return new RegExp(i5,"u")}const o5=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,r5=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,l5=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,c5=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,u5=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Wx=/^[A-Za-z0-9_-]*$/,d5=/^\+[1-9]\d{6,14}$/,e2="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",m5=new RegExp(`^${e2}$`);function t2(e){const a="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${a}`:e.precision===0?`${a}:[0-5]\\d`:`${a}:[0-5]\\d\\.\\d{${e.precision}}`:`${a}(?::[0-5]\\d(?:\\.\\d+)?)?`}function p5(e){return new RegExp(`^${t2(e)}$`)}function h5(e){const a=t2({precision:e.precision}),s=["Z"];e.local&&s.push(""),e.offset&&s.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const r=`${a}(?:${s.join("|")})`;return new RegExp(`^${e2}T(?:${r})$`)}const f5=e=>{const a=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${a}$`)},g5=/^-?\d+$/,n2=/^-?\d+(?:\.\d+)?$/,y5=/^(?:true|false)$/i,b5=/^null$/i,v5=/^[^A-Z]*$/,x5=/^[^a-z]*$/,Bn=J("$ZodCheck",(e,a)=>{var s;e._zod??(e._zod={}),e._zod.def=a,(s=e._zod).onattach??(s.onattach=[])}),a2={number:"number",bigint:"bigint",object:"date"},i2=J("$ZodCheckLessThan",(e,a)=>{Bn.init(e,a);const s=a2[typeof a.value];e._zod.onattach.push(r=>{const u=r._zod.bag,f=(a.inclusive?u.maximum:u.exclusiveMaximum)??Number.POSITIVE_INFINITY;a.value<f&&(a.inclusive?u.maximum=a.value:u.exclusiveMaximum=a.value)}),e._zod.check=r=>{(a.inclusive?r.value<=a.value:r.value<a.value)||r.issues.push({origin:s,code:"too_big",maximum:typeof a.value=="object"?a.value.getTime():a.value,input:r.value,inclusive:a.inclusive,inst:e,continue:!a.abort})}}),s2=J("$ZodCheckGreaterThan",(e,a)=>{Bn.init(e,a);const s=a2[typeof a.value];e._zod.onattach.push(r=>{const u=r._zod.bag,f=(a.inclusive?u.minimum:u.exclusiveMinimum)??Number.NEGATIVE_INFINITY;a.value>f&&(a.inclusive?u.minimum=a.value:u.exclusiveMinimum=a.value)}),e._zod.check=r=>{(a.inclusive?r.value>=a.value:r.value>a.value)||r.issues.push({origin:s,code:"too_small",minimum:typeof a.value=="object"?a.value.getTime():a.value,input:r.value,inclusive:a.inclusive,inst:e,continue:!a.abort})}}),k5=J("$ZodCheckMultipleOf",(e,a)=>{Bn.init(e,a),e._zod.onattach.push(s=>{var r;(r=s._zod.bag).multipleOf??(r.multipleOf=a.value)}),e._zod.check=s=>{if(typeof s.value!=typeof a.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof s.value=="bigint"?s.value%a.value===BigInt(0):jA(s.value,a.value)===0)||s.issues.push({origin:typeof s.value,code:"not_multiple_of",divisor:a.value,input:s.value,inst:e,continue:!a.abort})}}),w5=J("$ZodCheckNumberFormat",(e,a)=>{Bn.init(e,a),a.format=a.format||"float64";const s=a.format?.includes("int"),r=s?"int":"number",[u,f]=zA[a.format];e._zod.onattach.push(g=>{const b=g._zod.bag;b.format=a.format,b.minimum=u,b.maximum=f,s&&(b.pattern=g5)}),e._zod.check=g=>{const b=g.value;if(s){if(!Number.isInteger(b)){g.issues.push({expected:r,format:a.format,code:"invalid_type",continue:!1,input:b,inst:e});return}if(!Number.isSafeInteger(b)){b>0?g.issues.push({input:b,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!a.abort}):g.issues.push({input:b,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:r,inclusive:!0,continue:!a.abort});return}}b<u&&g.issues.push({origin:"number",input:b,code:"too_small",minimum:u,inclusive:!0,inst:e,continue:!a.abort}),b>f&&g.issues.push({origin:"number",input:b,code:"too_big",maximum:f,inclusive:!0,inst:e,continue:!a.abort})}}),S5=J("$ZodCheckMaxLength",(e,a)=>{var s;Bn.init(e,a),(s=e._zod.def).when??(s.when=r=>{const u=r.value;return!e0(u)&&u.length!==void 0}),e._zod.onattach.push(r=>{const u=r._zod.bag.maximum??Number.POSITIVE_INFINITY;a.maximum<u&&(r._zod.bag.maximum=a.maximum)}),e._zod.check=r=>{const u=r.value;if(u.length<=a.maximum)return;const g=n0(u);r.issues.push({origin:g,code:"too_big",maximum:a.maximum,inclusive:!0,input:u,inst:e,continue:!a.abort})}}),j5=J("$ZodCheckMinLength",(e,a)=>{var s;Bn.init(e,a),(s=e._zod.def).when??(s.when=r=>{const u=r.value;return!e0(u)&&u.length!==void 0}),e._zod.onattach.push(r=>{const u=r._zod.bag.minimum??Number.NEGATIVE_INFINITY;a.minimum>u&&(r._zod.bag.minimum=a.minimum)}),e._zod.check=r=>{const u=r.value;if(u.length>=a.minimum)return;const g=n0(u);r.issues.push({origin:g,code:"too_small",minimum:a.minimum,inclusive:!0,input:u,inst:e,continue:!a.abort})}}),A5=J("$ZodCheckLengthEquals",(e,a)=>{var s;Bn.init(e,a),(s=e._zod.def).when??(s.when=r=>{const u=r.value;return!e0(u)&&u.length!==void 0}),e._zod.onattach.push(r=>{const u=r._zod.bag;u.minimum=a.length,u.maximum=a.length,u.length=a.length}),e._zod.check=r=>{const u=r.value,f=u.length;if(f===a.length)return;const g=n0(u),b=f>a.length;r.issues.push({origin:g,...b?{code:"too_big",maximum:a.length}:{code:"too_small",minimum:a.length},inclusive:!0,exact:!0,input:r.value,inst:e,continue:!a.abort})}}),td=J("$ZodCheckStringFormat",(e,a)=>{var s,r;Bn.init(e,a),e._zod.onattach.push(u=>{const f=u._zod.bag;f.format=a.format,a.pattern&&(f.patterns??(f.patterns=new Set),f.patterns.add(a.pattern))}),a.pattern?(s=e._zod).check??(s.check=u=>{a.pattern.lastIndex=0,!a.pattern.test(u.value)&&u.issues.push({origin:"string",code:"invalid_format",format:a.format,input:u.value,...a.pattern?{pattern:a.pattern.toString()}:{},inst:e,continue:!a.abort})}):(r=e._zod).check??(r.check=()=>{})}),C5=J("$ZodCheckRegex",(e,a)=>{td.init(e,a),e._zod.check=s=>{a.pattern.lastIndex=0,!a.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:"regex",input:s.value,pattern:a.pattern.toString(),inst:e,continue:!a.abort})}}),N5=J("$ZodCheckLowerCase",(e,a)=>{a.pattern??(a.pattern=v5),td.init(e,a)}),_5=J("$ZodCheckUpperCase",(e,a)=>{a.pattern??(a.pattern=x5),td.init(e,a)}),z5=J("$ZodCheckIncludes",(e,a)=>{Bn.init(e,a);const s=Xo(a.includes),r=new RegExp(typeof a.position=="number"?`^.{${a.position}}${s}`:s);a.pattern=r,e._zod.onattach.push(u=>{const f=u._zod.bag;f.patterns??(f.patterns=new Set),f.patterns.add(r)}),e._zod.check=u=>{u.value.includes(a.includes,a.position)||u.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:a.includes,input:u.value,inst:e,continue:!a.abort})}}),E5=J("$ZodCheckStartsWith",(e,a)=>{Bn.init(e,a);const s=new RegExp(`^${Xo(a.prefix)}.*`);a.pattern??(a.pattern=s),e._zod.onattach.push(r=>{const u=r._zod.bag;u.patterns??(u.patterns=new Set),u.patterns.add(s)}),e._zod.check=r=>{r.value.startsWith(a.prefix)||r.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:a.prefix,input:r.value,inst:e,continue:!a.abort})}}),T5=J("$ZodCheckEndsWith",(e,a)=>{Bn.init(e,a);const s=new RegExp(`.*${Xo(a.suffix)}$`);a.pattern??(a.pattern=s),e._zod.onattach.push(r=>{const u=r._zod.bag;u.patterns??(u.patterns=new Set),u.patterns.add(s)}),e._zod.check=r=>{r.value.endsWith(a.suffix)||r.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:a.suffix,input:r.value,inst:e,continue:!a.abort})}}),R5=J("$ZodCheckOverwrite",(e,a)=>{Bn.init(e,a),e._zod.check=s=>{s.value=a.tx(s.value)}});class D5{constructor(a=[]){this.content=[],this.indent=0,this&&(this.args=a)}indented(a){this.indent+=1,a(this),this.indent-=1}write(a){if(typeof a=="function"){a(this,{execution:"sync"}),a(this,{execution:"async"});return}const r=a.split(`
11
- `).filter(g=>g),u=Math.min(...r.map(g=>g.length-g.trimStart().length)),f=r.map(g=>g.slice(u)).map(g=>" ".repeat(this.indent*2)+g);for(const g of f)this.content.push(g)}compile(){const a=Function,s=this?.args,u=[...(this?.content??[""]).map(f=>` ${f}`)];return new a(...s,u.join(`
12
- `))}}const O5={major:4,minor:3,patch:6},Ct=J("$ZodType",(e,a)=>{var s;e??(e={}),e._zod.def=a,e._zod.bag=e._zod.bag||{},e._zod.version=O5;const r=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&r.unshift(e);for(const u of r)for(const f of u._zod.onattach)f(e);if(r.length===0)(s=e._zod).deferred??(s.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const u=(g,b,v)=>{let k=Go(g),S;for(const A of b){if(A._zod.def.when){if(!A._zod.def.when(g))continue}else if(k)continue;const N=g.issues.length,E=A._zod.check(g);if(E instanceof Promise&&v?.async===!1)throw new Ho;if(S||E instanceof Promise)S=(S??Promise.resolve()).then(async()=>{await E,g.issues.length!==N&&(k||(k=Go(g,N)))});else{if(g.issues.length===N)continue;k||(k=Go(g,N))}}return S?S.then(()=>g):g},f=(g,b,v)=>{if(Go(g))return g.aborted=!0,g;const k=u(b,r,v);if(k instanceof Promise){if(v.async===!1)throw new Ho;return k.then(S=>e._zod.parse(S,v))}return e._zod.parse(k,v)};e._zod.run=(g,b)=>{if(b.skipChecks)return e._zod.parse(g,b);if(b.direction==="backward"){const k=e._zod.parse({value:g.value,issues:[]},{...b,skipChecks:!0});return k instanceof Promise?k.then(S=>f(S,g,b)):f(k,g,b)}const v=e._zod.parse(g,b);if(v instanceof Promise){if(b.async===!1)throw new Ho;return v.then(k=>u(k,r,b))}return u(v,r,b)}}dt(e,"~standard",()=>({validate:u=>{try{const f=IA(e,u);return f.success?{value:f.data}:{issues:f.error?.issues}}catch{return VA(e,u).then(g=>g.success?{value:g.data}:{issues:g.error?.issues})}},vendor:"zod",version:1}))}),s0=J("$ZodString",(e,a)=>{Ct.init(e,a),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??f5(e._zod.bag),e._zod.parse=(s,r)=>{if(a.coerce)try{s.value=String(s.value)}catch{}return typeof s.value=="string"||s.issues.push({expected:"string",code:"invalid_type",input:s.value,inst:e}),s}}),Nt=J("$ZodStringFormat",(e,a)=>{td.init(e,a),s0.init(e,a)}),q5=J("$ZodGUID",(e,a)=>{a.pattern??(a.pattern=n5),Nt.init(e,a)}),B5=J("$ZodUUID",(e,a)=>{if(a.version){const r={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[a.version];if(r===void 0)throw new Error(`Invalid UUID version: "${a.version}"`);a.pattern??(a.pattern=mb(r))}else a.pattern??(a.pattern=mb());Nt.init(e,a)}),P5=J("$ZodEmail",(e,a)=>{a.pattern??(a.pattern=a5),Nt.init(e,a)}),M5=J("$ZodURL",(e,a)=>{Nt.init(e,a),e._zod.check=s=>{try{const r=s.value.trim(),u=new URL(r);a.hostname&&(a.hostname.lastIndex=0,a.hostname.test(u.hostname)||s.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:a.hostname.source,input:s.value,inst:e,continue:!a.abort})),a.protocol&&(a.protocol.lastIndex=0,a.protocol.test(u.protocol.endsWith(":")?u.protocol.slice(0,-1):u.protocol)||s.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:a.protocol.source,input:s.value,inst:e,continue:!a.abort})),a.normalize?s.value=u.href:s.value=r;return}catch{s.issues.push({code:"invalid_format",format:"url",input:s.value,inst:e,continue:!a.abort})}}}),I5=J("$ZodEmoji",(e,a)=>{a.pattern??(a.pattern=s5()),Nt.init(e,a)}),V5=J("$ZodNanoID",(e,a)=>{a.pattern??(a.pattern=e5),Nt.init(e,a)}),L5=J("$ZodCUID",(e,a)=>{a.pattern??(a.pattern=ZA),Nt.init(e,a)}),U5=J("$ZodCUID2",(e,a)=>{a.pattern??(a.pattern=YA),Nt.init(e,a)}),G5=J("$ZodULID",(e,a)=>{a.pattern??(a.pattern=XA),Nt.init(e,a)}),$5=J("$ZodXID",(e,a)=>{a.pattern??(a.pattern=JA),Nt.init(e,a)}),K5=J("$ZodKSUID",(e,a)=>{a.pattern??(a.pattern=WA),Nt.init(e,a)}),H5=J("$ZodISODateTime",(e,a)=>{a.pattern??(a.pattern=h5(a)),Nt.init(e,a)}),Q5=J("$ZodISODate",(e,a)=>{a.pattern??(a.pattern=m5),Nt.init(e,a)}),F5=J("$ZodISOTime",(e,a)=>{a.pattern??(a.pattern=p5(a)),Nt.init(e,a)}),Z5=J("$ZodISODuration",(e,a)=>{a.pattern??(a.pattern=t5),Nt.init(e,a)}),Y5=J("$ZodIPv4",(e,a)=>{a.pattern??(a.pattern=o5),Nt.init(e,a),e._zod.bag.format="ipv4"}),X5=J("$ZodIPv6",(e,a)=>{a.pattern??(a.pattern=r5),Nt.init(e,a),e._zod.bag.format="ipv6",e._zod.check=s=>{try{new URL(`http://[${s.value}]`)}catch{s.issues.push({code:"invalid_format",format:"ipv6",input:s.value,inst:e,continue:!a.abort})}}}),J5=J("$ZodCIDRv4",(e,a)=>{a.pattern??(a.pattern=l5),Nt.init(e,a)}),W5=J("$ZodCIDRv6",(e,a)=>{a.pattern??(a.pattern=c5),Nt.init(e,a),e._zod.check=s=>{const r=s.value.split("/");try{if(r.length!==2)throw new Error;const[u,f]=r;if(!f)throw new Error;const g=Number(f);if(`${g}`!==f)throw new Error;if(g<0||g>128)throw new Error;new URL(`http://[${u}]`)}catch{s.issues.push({code:"invalid_format",format:"cidrv6",input:s.value,inst:e,continue:!a.abort})}}});function o2(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const eC=J("$ZodBase64",(e,a)=>{a.pattern??(a.pattern=u5),Nt.init(e,a),e._zod.bag.contentEncoding="base64",e._zod.check=s=>{o2(s.value)||s.issues.push({code:"invalid_format",format:"base64",input:s.value,inst:e,continue:!a.abort})}});function tC(e){if(!Wx.test(e))return!1;const a=e.replace(/[-_]/g,r=>r==="-"?"+":"/"),s=a.padEnd(Math.ceil(a.length/4)*4,"=");return o2(s)}const nC=J("$ZodBase64URL",(e,a)=>{a.pattern??(a.pattern=Wx),Nt.init(e,a),e._zod.bag.contentEncoding="base64url",e._zod.check=s=>{tC(s.value)||s.issues.push({code:"invalid_format",format:"base64url",input:s.value,inst:e,continue:!a.abort})}}),aC=J("$ZodE164",(e,a)=>{a.pattern??(a.pattern=d5),Nt.init(e,a)});function iC(e,a=null){try{const s=e.split(".");if(s.length!==3)return!1;const[r]=s;if(!r)return!1;const u=JSON.parse(atob(r));return!("typ"in u&&u?.typ!=="JWT"||!u.alg||a&&(!("alg"in u)||u.alg!==a))}catch{return!1}}const sC=J("$ZodJWT",(e,a)=>{Nt.init(e,a),e._zod.check=s=>{iC(s.value,a.alg)||s.issues.push({code:"invalid_format",format:"jwt",input:s.value,inst:e,continue:!a.abort})}}),r2=J("$ZodNumber",(e,a)=>{Ct.init(e,a),e._zod.pattern=e._zod.bag.pattern??n2,e._zod.parse=(s,r)=>{if(a.coerce)try{s.value=Number(s.value)}catch{}const u=s.value;if(typeof u=="number"&&!Number.isNaN(u)&&Number.isFinite(u))return s;const f=typeof u=="number"?Number.isNaN(u)?"NaN":Number.isFinite(u)?void 0:"Infinity":void 0;return s.issues.push({expected:"number",code:"invalid_type",input:u,inst:e,...f?{received:f}:{}}),s}}),oC=J("$ZodNumberFormat",(e,a)=>{w5.init(e,a),r2.init(e,a)}),rC=J("$ZodBoolean",(e,a)=>{Ct.init(e,a),e._zod.pattern=y5,e._zod.parse=(s,r)=>{if(a.coerce)try{s.value=!!s.value}catch{}const u=s.value;return typeof u=="boolean"||s.issues.push({expected:"boolean",code:"invalid_type",input:u,inst:e}),s}}),lC=J("$ZodNull",(e,a)=>{Ct.init(e,a),e._zod.pattern=b5,e._zod.values=new Set([null]),e._zod.parse=(s,r)=>{const u=s.value;return u===null||s.issues.push({expected:"null",code:"invalid_type",input:u,inst:e}),s}}),cC=J("$ZodUnknown",(e,a)=>{Ct.init(e,a),e._zod.parse=s=>s}),uC=J("$ZodNever",(e,a)=>{Ct.init(e,a),e._zod.parse=(s,r)=>(s.issues.push({expected:"never",code:"invalid_type",input:s.value,inst:e}),s)});function pb(e,a,s){e.issues.length&&a.issues.push(...$o(s,e.issues)),a.value[s]=e.value}const dC=J("$ZodArray",(e,a)=>{Ct.init(e,a),e._zod.parse=(s,r)=>{const u=s.value;if(!Array.isArray(u))return s.issues.push({expected:"array",code:"invalid_type",input:u,inst:e}),s;s.value=Array(u.length);const f=[];for(let g=0;g<u.length;g++){const b=u[g],v=a.element._zod.run({value:b,issues:[]},r);v instanceof Promise?f.push(v.then(k=>pb(k,s,g))):pb(v,s,g)}return f.length?Promise.all(f).then(()=>s):s}});function Ru(e,a,s,r,u){if(e.issues.length){if(u&&!(s in r))return;a.issues.push(...$o(s,e.issues))}e.value===void 0?s in r&&(a.value[s]=void 0):a.value[s]=e.value}function l2(e){const a=Object.keys(e.shape);for(const r of a)if(!e.shape?.[r]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${r}": expected a Zod schema`);const s=_A(e.shape);return{...e,keys:a,keySet:new Set(a),numKeys:a.length,optionalKeys:new Set(s)}}function c2(e,a,s,r,u,f){const g=[],b=u.keySet,v=u.catchall._zod,k=v.def.type,S=v.optout==="optional";for(const A in a){if(b.has(A))continue;if(k==="never"){g.push(A);continue}const N=v.run({value:a[A],issues:[]},r);N instanceof Promise?e.push(N.then(E=>Ru(E,s,A,a,S))):Ru(N,s,A,a,S)}return g.length&&s.issues.push({code:"unrecognized_keys",keys:g,input:a,inst:f}),e.length?Promise.all(e).then(()=>s):s}const mC=J("$ZodObject",(e,a)=>{if(Ct.init(e,a),!Object.getOwnPropertyDescriptor(a,"shape")?.get){const b=a.shape;Object.defineProperty(a,"shape",{get:()=>{const v={...b};return Object.defineProperty(a,"shape",{value:v}),v}})}const r=Ju(()=>l2(a));dt(e._zod,"propValues",()=>{const b=a.shape,v={};for(const k in b){const S=b[k]._zod;if(S.values){v[k]??(v[k]=new Set);for(const A of S.values)v[k].add(A)}}return v});const u=Cl,f=a.catchall;let g;e._zod.parse=(b,v)=>{g??(g=r.value);const k=b.value;if(!u(k))return b.issues.push({expected:"object",code:"invalid_type",input:k,inst:e}),b;b.value={};const S=[],A=g.shape;for(const N of g.keys){const E=A[N],Z=E._zod.optout==="optional",_=E._zod.run({value:k[N],issues:[]},v);_ instanceof Promise?S.push(_.then(G=>Ru(G,b,N,k,Z))):Ru(_,b,N,k,Z)}return f?c2(S,k,b,v,r.value,e):S.length?Promise.all(S).then(()=>b):b}}),pC=J("$ZodObjectJIT",(e,a)=>{mC.init(e,a);const s=e._zod.parse,r=Ju(()=>l2(a)),u=N=>{const E=new D5(["shape","payload","ctx"]),Z=r.value,_=Q=>{const re=db(Q);return`shape[${re}]._zod.run({ value: input[${re}], issues: [] }, ctx)`};E.write("const input = payload.value;");const G=Object.create(null);let K=0;for(const Q of Z.keys)G[Q]=`key_${K++}`;E.write("const newResult = {};");for(const Q of Z.keys){const re=G[Q],W=db(Q),H=N[Q]?._zod?.optout==="optional";E.write(`const ${re} = ${_(Q)};`),H?E.write(`
13
- if (${re}.issues.length) {
14
- if (${W} in input) {
15
- payload.issues = payload.issues.concat(${re}.issues.map(iss => ({
16
- ...iss,
17
- path: iss.path ? [${W}, ...iss.path] : [${W}]
18
- })));
19
- }
20
- }
21
-
22
- if (${re}.value === undefined) {
23
- if (${W} in input) {
24
- newResult[${W}] = undefined;
25
- }
26
- } else {
27
- newResult[${W}] = ${re}.value;
28
- }
29
-
30
- `):E.write(`
31
- if (${re}.issues.length) {
32
- payload.issues = payload.issues.concat(${re}.issues.map(iss => ({
33
- ...iss,
34
- path: iss.path ? [${W}, ...iss.path] : [${W}]
35
- })));
36
- }
37
-
38
- if (${re}.value === undefined) {
39
- if (${W} in input) {
40
- newResult[${W}] = undefined;
41
- }
42
- } else {
43
- newResult[${W}] = ${re}.value;
44
- }
45
-
46
- `)}E.write("payload.value = newResult;"),E.write("return payload;");const te=E.compile();return(Q,re)=>te(N,Q,re)};let f;const g=Cl,b=!Hx.jitless,k=b&&CA.value,S=a.catchall;let A;e._zod.parse=(N,E)=>{A??(A=r.value);const Z=N.value;return g(Z)?b&&k&&E?.async===!1&&E.jitless!==!0?(f||(f=u(a.shape)),N=f(N,E),S?c2([],Z,N,E,A,e):N):s(N,E):(N.issues.push({expected:"object",code:"invalid_type",input:Z,inst:e}),N)}});function hb(e,a,s,r){for(const f of e)if(f.issues.length===0)return a.value=f.value,a;const u=e.filter(f=>!Go(f));return u.length===1?(a.value=u[0].value,u[0]):(a.issues.push({code:"invalid_union",input:a.value,inst:s,errors:e.map(f=>f.issues.map(g=>es(g,r,Wi())))}),a)}const u2=J("$ZodUnion",(e,a)=>{Ct.init(e,a),dt(e._zod,"optin",()=>a.options.some(u=>u._zod.optin==="optional")?"optional":void 0),dt(e._zod,"optout",()=>a.options.some(u=>u._zod.optout==="optional")?"optional":void 0),dt(e._zod,"values",()=>{if(a.options.every(u=>u._zod.values))return new Set(a.options.flatMap(u=>Array.from(u._zod.values)))}),dt(e._zod,"pattern",()=>{if(a.options.every(u=>u._zod.pattern)){const u=a.options.map(f=>f._zod.pattern);return new RegExp(`^(${u.map(f=>t0(f.source)).join("|")})$`)}});const s=a.options.length===1,r=a.options[0]._zod.run;e._zod.parse=(u,f)=>{if(s)return r(u,f);let g=!1;const b=[];for(const v of a.options){const k=v._zod.run({value:u.value,issues:[]},f);if(k instanceof Promise)b.push(k),g=!0;else{if(k.issues.length===0)return k;b.push(k)}}return g?Promise.all(b).then(v=>hb(v,u,e,f)):hb(b,u,e,f)}}),hC=J("$ZodDiscriminatedUnion",(e,a)=>{a.inclusive=!1,u2.init(e,a);const s=e._zod.parse;dt(e._zod,"propValues",()=>{const u={};for(const f of a.options){const g=f._zod.propValues;if(!g||Object.keys(g).length===0)throw new Error(`Invalid discriminated union option at index "${a.options.indexOf(f)}"`);for(const[b,v]of Object.entries(g)){u[b]||(u[b]=new Set);for(const k of v)u[b].add(k)}}return u});const r=Ju(()=>{const u=a.options,f=new Map;for(const g of u){const b=g._zod.propValues?.[a.discriminator];if(!b||b.size===0)throw new Error(`Invalid discriminated union option at index "${a.options.indexOf(g)}"`);for(const v of b){if(f.has(v))throw new Error(`Duplicate discriminator value "${String(v)}"`);f.set(v,g)}}return f});e._zod.parse=(u,f)=>{const g=u.value;if(!Cl(g))return u.issues.push({code:"invalid_type",expected:"object",input:g,inst:e}),u;const b=r.value.get(g?.[a.discriminator]);return b?b._zod.run(u,f):a.unionFallback?s(u,f):(u.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:a.discriminator,input:g,path:[a.discriminator],inst:e}),u)}}),fC=J("$ZodIntersection",(e,a)=>{Ct.init(e,a),e._zod.parse=(s,r)=>{const u=s.value,f=a.left._zod.run({value:u,issues:[]},r),g=a.right._zod.run({value:u,issues:[]},r);return f instanceof Promise||g instanceof Promise?Promise.all([f,g]).then(([v,k])=>fb(s,v,k)):fb(s,f,g)}});function gh(e,a){if(e===a)return{valid:!0,data:e};if(e instanceof Date&&a instanceof Date&&+e==+a)return{valid:!0,data:e};if(Yo(e)&&Yo(a)){const s=Object.keys(a),r=Object.keys(e).filter(f=>s.indexOf(f)!==-1),u={...e,...a};for(const f of r){const g=gh(e[f],a[f]);if(!g.valid)return{valid:!1,mergeErrorPath:[f,...g.mergeErrorPath]};u[f]=g.data}return{valid:!0,data:u}}if(Array.isArray(e)&&Array.isArray(a)){if(e.length!==a.length)return{valid:!1,mergeErrorPath:[]};const s=[];for(let r=0;r<e.length;r++){const u=e[r],f=a[r],g=gh(u,f);if(!g.valid)return{valid:!1,mergeErrorPath:[r,...g.mergeErrorPath]};s.push(g.data)}return{valid:!0,data:s}}return{valid:!1,mergeErrorPath:[]}}function fb(e,a,s){const r=new Map;let u;for(const b of a.issues)if(b.code==="unrecognized_keys"){u??(u=b);for(const v of b.keys)r.has(v)||r.set(v,{}),r.get(v).l=!0}else e.issues.push(b);for(const b of s.issues)if(b.code==="unrecognized_keys")for(const v of b.keys)r.has(v)||r.set(v,{}),r.get(v).r=!0;else e.issues.push(b);const f=[...r].filter(([,b])=>b.l&&b.r).map(([b])=>b);if(f.length&&u&&e.issues.push({...u,keys:f}),Go(e))return e;const g=gh(a.value,s.value);if(!g.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(g.mergeErrorPath)}`);return e.value=g.data,e}const gC=J("$ZodRecord",(e,a)=>{Ct.init(e,a),e._zod.parse=(s,r)=>{const u=s.value;if(!Yo(u))return s.issues.push({expected:"record",code:"invalid_type",input:u,inst:e}),s;const f=[],g=a.keyType._zod.values;if(g){s.value={};const b=new Set;for(const k of g)if(typeof k=="string"||typeof k=="number"||typeof k=="symbol"){b.add(typeof k=="number"?k.toString():k);const S=a.valueType._zod.run({value:u[k],issues:[]},r);S instanceof Promise?f.push(S.then(A=>{A.issues.length&&s.issues.push(...$o(k,A.issues)),s.value[k]=A.value})):(S.issues.length&&s.issues.push(...$o(k,S.issues)),s.value[k]=S.value)}let v;for(const k in u)b.has(k)||(v=v??[],v.push(k));v&&v.length>0&&s.issues.push({code:"unrecognized_keys",input:u,inst:e,keys:v})}else{s.value={};for(const b of Reflect.ownKeys(u)){if(b==="__proto__")continue;let v=a.keyType._zod.run({value:b,issues:[]},r);if(v instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof b=="string"&&n2.test(b)&&v.issues.length){const A=a.keyType._zod.run({value:Number(b),issues:[]},r);if(A instanceof Promise)throw new Error("Async schemas not supported in object keys currently");A.issues.length===0&&(v=A)}if(v.issues.length){a.mode==="loose"?s.value[b]=u[b]:s.issues.push({code:"invalid_key",origin:"record",issues:v.issues.map(A=>es(A,r,Wi())),input:b,path:[b],inst:e});continue}const S=a.valueType._zod.run({value:u[b],issues:[]},r);S instanceof Promise?f.push(S.then(A=>{A.issues.length&&s.issues.push(...$o(b,A.issues)),s.value[v.value]=A.value})):(S.issues.length&&s.issues.push(...$o(b,S.issues)),s.value[v.value]=S.value)}}return f.length?Promise.all(f).then(()=>s):s}}),yC=J("$ZodEnum",(e,a)=>{Ct.init(e,a);const s=Qx(a.entries),r=new Set(s);e._zod.values=r,e._zod.pattern=new RegExp(`^(${s.filter(u=>NA.has(typeof u)).map(u=>typeof u=="string"?Xo(u):u.toString()).join("|")})$`),e._zod.parse=(u,f)=>{const g=u.value;return r.has(g)||u.issues.push({code:"invalid_value",values:s,input:g,inst:e}),u}}),bC=J("$ZodLiteral",(e,a)=>{if(Ct.init(e,a),a.values.length===0)throw new Error("Cannot create literal schema with no valid values");const s=new Set(a.values);e._zod.values=s,e._zod.pattern=new RegExp(`^(${a.values.map(r=>typeof r=="string"?Xo(r):r?Xo(r.toString()):String(r)).join("|")})$`),e._zod.parse=(r,u)=>{const f=r.value;return s.has(f)||r.issues.push({code:"invalid_value",values:a.values,input:f,inst:e}),r}}),vC=J("$ZodTransform",(e,a)=>{Ct.init(e,a),e._zod.parse=(s,r)=>{if(r.direction==="backward")throw new Kx(e.constructor.name);const u=a.transform(s.value,s);if(r.async)return(u instanceof Promise?u:Promise.resolve(u)).then(g=>(s.value=g,s));if(u instanceof Promise)throw new Ho;return s.value=u,s}});function gb(e,a){return e.issues.length&&a===void 0?{issues:[],value:void 0}:e}const d2=J("$ZodOptional",(e,a)=>{Ct.init(e,a),e._zod.optin="optional",e._zod.optout="optional",dt(e._zod,"values",()=>a.innerType._zod.values?new Set([...a.innerType._zod.values,void 0]):void 0),dt(e._zod,"pattern",()=>{const s=a.innerType._zod.pattern;return s?new RegExp(`^(${t0(s.source)})?$`):void 0}),e._zod.parse=(s,r)=>{if(a.innerType._zod.optin==="optional"){const u=a.innerType._zod.run(s,r);return u instanceof Promise?u.then(f=>gb(f,s.value)):gb(u,s.value)}return s.value===void 0?s:a.innerType._zod.run(s,r)}}),xC=J("$ZodExactOptional",(e,a)=>{d2.init(e,a),dt(e._zod,"values",()=>a.innerType._zod.values),dt(e._zod,"pattern",()=>a.innerType._zod.pattern),e._zod.parse=(s,r)=>a.innerType._zod.run(s,r)}),kC=J("$ZodNullable",(e,a)=>{Ct.init(e,a),dt(e._zod,"optin",()=>a.innerType._zod.optin),dt(e._zod,"optout",()=>a.innerType._zod.optout),dt(e._zod,"pattern",()=>{const s=a.innerType._zod.pattern;return s?new RegExp(`^(${t0(s.source)}|null)$`):void 0}),dt(e._zod,"values",()=>a.innerType._zod.values?new Set([...a.innerType._zod.values,null]):void 0),e._zod.parse=(s,r)=>s.value===null?s:a.innerType._zod.run(s,r)}),wC=J("$ZodDefault",(e,a)=>{Ct.init(e,a),e._zod.optin="optional",dt(e._zod,"values",()=>a.innerType._zod.values),e._zod.parse=(s,r)=>{if(r.direction==="backward")return a.innerType._zod.run(s,r);if(s.value===void 0)return s.value=a.defaultValue,s;const u=a.innerType._zod.run(s,r);return u instanceof Promise?u.then(f=>yb(f,a)):yb(u,a)}});function yb(e,a){return e.value===void 0&&(e.value=a.defaultValue),e}const SC=J("$ZodPrefault",(e,a)=>{Ct.init(e,a),e._zod.optin="optional",dt(e._zod,"values",()=>a.innerType._zod.values),e._zod.parse=(s,r)=>(r.direction==="backward"||s.value===void 0&&(s.value=a.defaultValue),a.innerType._zod.run(s,r))}),jC=J("$ZodNonOptional",(e,a)=>{Ct.init(e,a),dt(e._zod,"values",()=>{const s=a.innerType._zod.values;return s?new Set([...s].filter(r=>r!==void 0)):void 0}),e._zod.parse=(s,r)=>{const u=a.innerType._zod.run(s,r);return u instanceof Promise?u.then(f=>bb(f,e)):bb(u,e)}});function bb(e,a){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:a}),e}const AC=J("$ZodCatch",(e,a)=>{Ct.init(e,a),dt(e._zod,"optin",()=>a.innerType._zod.optin),dt(e._zod,"optout",()=>a.innerType._zod.optout),dt(e._zod,"values",()=>a.innerType._zod.values),e._zod.parse=(s,r)=>{if(r.direction==="backward")return a.innerType._zod.run(s,r);const u=a.innerType._zod.run(s,r);return u instanceof Promise?u.then(f=>(s.value=f.value,f.issues.length&&(s.value=a.catchValue({...s,error:{issues:f.issues.map(g=>es(g,r,Wi()))},input:s.value}),s.issues=[]),s)):(s.value=u.value,u.issues.length&&(s.value=a.catchValue({...s,error:{issues:u.issues.map(f=>es(f,r,Wi()))},input:s.value}),s.issues=[]),s)}}),CC=J("$ZodPipe",(e,a)=>{Ct.init(e,a),dt(e._zod,"values",()=>a.in._zod.values),dt(e._zod,"optin",()=>a.in._zod.optin),dt(e._zod,"optout",()=>a.out._zod.optout),dt(e._zod,"propValues",()=>a.in._zod.propValues),e._zod.parse=(s,r)=>{if(r.direction==="backward"){const f=a.out._zod.run(s,r);return f instanceof Promise?f.then(g=>pu(g,a.in,r)):pu(f,a.in,r)}const u=a.in._zod.run(s,r);return u instanceof Promise?u.then(f=>pu(f,a.out,r)):pu(u,a.out,r)}});function pu(e,a,s){return e.issues.length?(e.aborted=!0,e):a._zod.run({value:e.value,issues:e.issues},s)}const NC=J("$ZodReadonly",(e,a)=>{Ct.init(e,a),dt(e._zod,"propValues",()=>a.innerType._zod.propValues),dt(e._zod,"values",()=>a.innerType._zod.values),dt(e._zod,"optin",()=>a.innerType?._zod?.optin),dt(e._zod,"optout",()=>a.innerType?._zod?.optout),e._zod.parse=(s,r)=>{if(r.direction==="backward")return a.innerType._zod.run(s,r);const u=a.innerType._zod.run(s,r);return u instanceof Promise?u.then(vb):vb(u)}});function vb(e){return e.value=Object.freeze(e.value),e}const _C=J("$ZodCustom",(e,a)=>{Bn.init(e,a),Ct.init(e,a),e._zod.parse=(s,r)=>s,e._zod.check=s=>{const r=s.value,u=a.fn(r);if(u instanceof Promise)return u.then(f=>xb(f,s,r,e));xb(u,s,r,e)}});function xb(e,a,s,r){if(!e){const u={code:"custom",input:s,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(u.params=r._zod.def.params),a.issues.push(Nl(u))}}var kb;class zC{constructor(){this._map=new WeakMap,this._idmap=new Map}add(a,...s){const r=s[0];return this._map.set(a,r),r&&typeof r=="object"&&"id"in r&&this._idmap.set(r.id,a),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(a){const s=this._map.get(a);return s&&typeof s=="object"&&"id"in s&&this._idmap.delete(s.id),this._map.delete(a),this}get(a){const s=a._zod.parent;if(s){const r={...this.get(s)??{}};delete r.id;const u={...r,...this._map.get(a)};return Object.keys(u).length?u:void 0}return this._map.get(a)}has(a){return this._map.has(a)}}function EC(){return new zC}(kb=globalThis).__zod_globalRegistry??(kb.__zod_globalRegistry=EC());const vl=globalThis.__zod_globalRegistry;function TC(e,a){return new e({type:"string",..._e(a)})}function RC(e,a){return new e({type:"string",format:"email",check:"string_format",abort:!1,..._e(a)})}function wb(e,a){return new e({type:"string",format:"guid",check:"string_format",abort:!1,..._e(a)})}function DC(e,a){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,..._e(a)})}function OC(e,a){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",..._e(a)})}function qC(e,a){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",..._e(a)})}function BC(e,a){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",..._e(a)})}function PC(e,a){return new e({type:"string",format:"url",check:"string_format",abort:!1,..._e(a)})}function MC(e,a){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,..._e(a)})}function IC(e,a){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,..._e(a)})}function VC(e,a){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,..._e(a)})}function LC(e,a){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,..._e(a)})}function UC(e,a){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,..._e(a)})}function GC(e,a){return new e({type:"string",format:"xid",check:"string_format",abort:!1,..._e(a)})}function $C(e,a){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,..._e(a)})}function KC(e,a){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,..._e(a)})}function HC(e,a){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,..._e(a)})}function QC(e,a){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,..._e(a)})}function FC(e,a){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,..._e(a)})}function ZC(e,a){return new e({type:"string",format:"base64",check:"string_format",abort:!1,..._e(a)})}function YC(e,a){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,..._e(a)})}function XC(e,a){return new e({type:"string",format:"e164",check:"string_format",abort:!1,..._e(a)})}function JC(e,a){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,..._e(a)})}function WC(e,a){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,..._e(a)})}function e6(e,a){return new e({type:"string",format:"date",check:"string_format",..._e(a)})}function t6(e,a){return new e({type:"string",format:"time",check:"string_format",precision:null,..._e(a)})}function n6(e,a){return new e({type:"string",format:"duration",check:"string_format",..._e(a)})}function a6(e,a){return new e({type:"number",checks:[],..._e(a)})}function i6(e,a){return new e({type:"number",coerce:!0,checks:[],..._e(a)})}function s6(e,a){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",..._e(a)})}function o6(e,a){return new e({type:"boolean",..._e(a)})}function r6(e,a){return new e({type:"null",..._e(a)})}function l6(e){return new e({type:"unknown"})}function c6(e,a){return new e({type:"never",..._e(a)})}function Sb(e,a){return new i2({check:"less_than",..._e(a),value:e,inclusive:!1})}function Lp(e,a){return new i2({check:"less_than",..._e(a),value:e,inclusive:!0})}function jb(e,a){return new s2({check:"greater_than",..._e(a),value:e,inclusive:!1})}function Up(e,a){return new s2({check:"greater_than",..._e(a),value:e,inclusive:!0})}function Ab(e,a){return new k5({check:"multiple_of",..._e(a),value:e})}function m2(e,a){return new S5({check:"max_length",..._e(a),maximum:e})}function Du(e,a){return new j5({check:"min_length",..._e(a),minimum:e})}function p2(e,a){return new A5({check:"length_equals",..._e(a),length:e})}function u6(e,a){return new C5({check:"string_format",format:"regex",..._e(a),pattern:e})}function d6(e){return new N5({check:"string_format",format:"lowercase",..._e(e)})}function m6(e){return new _5({check:"string_format",format:"uppercase",..._e(e)})}function p6(e,a){return new z5({check:"string_format",format:"includes",..._e(a),includes:e})}function h6(e,a){return new E5({check:"string_format",format:"starts_with",..._e(a),prefix:e})}function f6(e,a){return new T5({check:"string_format",format:"ends_with",..._e(a),suffix:e})}function or(e){return new R5({check:"overwrite",tx:e})}function g6(e){return or(a=>a.normalize(e))}function y6(){return or(e=>e.trim())}function b6(){return or(e=>e.toLowerCase())}function v6(){return or(e=>e.toUpperCase())}function x6(){return or(e=>AA(e))}function k6(e,a,s){return new e({type:"array",element:a,..._e(s)})}function w6(e,a,s){return new e({type:"custom",check:"custom",fn:a,..._e(s)})}function S6(e){const a=j6(s=>(s.addIssue=r=>{if(typeof r=="string")s.issues.push(Nl(r,s.value,a._zod.def));else{const u=r;u.fatal&&(u.continue=!1),u.code??(u.code="custom"),u.input??(u.input=s.value),u.inst??(u.inst=a),u.continue??(u.continue=!a._zod.def.abort),s.issues.push(Nl(u))}},e(s.value,s)));return a}function j6(e,a){const s=new Bn({check:"custom",..._e(a)});return s._zod.check=e,s}function h2(e){let a=e?.target??"draft-2020-12";return a==="draft-4"&&(a="draft-04"),a==="draft-7"&&(a="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??vl,target:a,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function Gt(e,a,s={path:[],schemaPath:[]}){var r;const u=e._zod.def,f=a.seen.get(e);if(f)return f.count++,s.schemaPath.includes(e)&&(f.cycle=s.path),f.schema;const g={schema:{},count:1,cycle:void 0,path:s.path};a.seen.set(e,g);const b=e._zod.toJSONSchema?.();if(b)g.schema=b;else{const S={...s,schemaPath:[...s.schemaPath,e],path:s.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(a,g.schema,S);else{const N=g.schema,E=a.processors[u.type];if(!E)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${u.type}`);E(e,a,N,S)}const A=e._zod.parent;A&&(g.ref||(g.ref=A),Gt(A,a,S),a.seen.get(A).isParent=!0)}const v=a.metadataRegistry.get(e);return v&&Object.assign(g.schema,v),a.io==="input"&&vn(e)&&(delete g.schema.examples,delete g.schema.default),a.io==="input"&&g.schema._prefault&&((r=g.schema).default??(r.default=g.schema._prefault)),delete g.schema._prefault,a.seen.get(e).schema}function f2(e,a){const s=e.seen.get(a);if(!s)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=new Map;for(const g of e.seen.entries()){const b=e.metadataRegistry.get(g[0])?.id;if(b){const v=r.get(b);if(v&&v!==g[0])throw new Error(`Duplicate schema id "${b}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(b,g[0])}}const u=g=>{const b=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const A=e.external.registry.get(g[0])?.id,N=e.external.uri??(Z=>Z);if(A)return{ref:N(A)};const E=g[1].defId??g[1].schema.id??`schema${e.counter++}`;return g[1].defId=E,{defId:E,ref:`${N("__shared")}#/${b}/${E}`}}if(g[1]===s)return{ref:"#"};const k=`#/${b}/`,S=g[1].schema.id??`__schema${e.counter++}`;return{defId:S,ref:k+S}},f=g=>{if(g[1].schema.$ref)return;const b=g[1],{ref:v,defId:k}=u(g);b.def={...b.schema},k&&(b.defId=k);const S=b.schema;for(const A in S)delete S[A];S.$ref=v};if(e.cycles==="throw")for(const g of e.seen.entries()){const b=g[1];if(b.cycle)throw new Error(`Cycle detected: #/${b.cycle?.join("/")}/<root>
47
-
48
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const g of e.seen.entries()){const b=g[1];if(a===g[0]){f(g);continue}if(e.external){const k=e.external.registry.get(g[0])?.id;if(a!==g[0]&&k){f(g);continue}}if(e.metadataRegistry.get(g[0])?.id){f(g);continue}if(b.cycle){f(g);continue}if(b.count>1&&e.reused==="ref"){f(g);continue}}}function g2(e,a){const s=e.seen.get(a);if(!s)throw new Error("Unprocessed schema. This is a bug in Zod.");const r=g=>{const b=e.seen.get(g);if(b.ref===null)return;const v=b.def??b.schema,k={...v},S=b.ref;if(b.ref=null,S){r(S);const N=e.seen.get(S),E=N.schema;if(E.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(v.allOf=v.allOf??[],v.allOf.push(E)):Object.assign(v,E),Object.assign(v,k),g._zod.parent===S)for(const _ in v)_==="$ref"||_==="allOf"||_ in k||delete v[_];if(E.$ref&&N.def)for(const _ in v)_==="$ref"||_==="allOf"||_ in N.def&&JSON.stringify(v[_])===JSON.stringify(N.def[_])&&delete v[_]}const A=g._zod.parent;if(A&&A!==S){r(A);const N=e.seen.get(A);if(N?.schema.$ref&&(v.$ref=N.schema.$ref,N.def))for(const E in v)E==="$ref"||E==="allOf"||E in N.def&&JSON.stringify(v[E])===JSON.stringify(N.def[E])&&delete v[E]}e.override({zodSchema:g,jsonSchema:v,path:b.path??[]})};for(const g of[...e.seen.entries()].reverse())r(g[0]);const u={};if(e.target==="draft-2020-12"?u.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?u.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?u.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const g=e.external.registry.get(a)?.id;if(!g)throw new Error("Schema is missing an `id` property");u.$id=e.external.uri(g)}Object.assign(u,s.def??s.schema);const f=e.external?.defs??{};for(const g of e.seen.entries()){const b=g[1];b.def&&b.defId&&(f[b.defId]=b.def)}e.external||Object.keys(f).length>0&&(e.target==="draft-2020-12"?u.$defs=f:u.definitions=f);try{const g=JSON.parse(JSON.stringify(u));return Object.defineProperty(g,"~standard",{value:{...a["~standard"],jsonSchema:{input:Ou(a,"input",e.processors),output:Ou(a,"output",e.processors)}},enumerable:!1,writable:!1}),g}catch{throw new Error("Error converting schema to JSON.")}}function vn(e,a){const s=a??{seen:new Set};if(s.seen.has(e))return!1;s.seen.add(e);const r=e._zod.def;if(r.type==="transform")return!0;if(r.type==="array")return vn(r.element,s);if(r.type==="set")return vn(r.valueType,s);if(r.type==="lazy")return vn(r.getter(),s);if(r.type==="promise"||r.type==="optional"||r.type==="nonoptional"||r.type==="nullable"||r.type==="readonly"||r.type==="default"||r.type==="prefault")return vn(r.innerType,s);if(r.type==="intersection")return vn(r.left,s)||vn(r.right,s);if(r.type==="record"||r.type==="map")return vn(r.keyType,s)||vn(r.valueType,s);if(r.type==="pipe")return vn(r.in,s)||vn(r.out,s);if(r.type==="object"){for(const u in r.shape)if(vn(r.shape[u],s))return!0;return!1}if(r.type==="union"){for(const u of r.options)if(vn(u,s))return!0;return!1}if(r.type==="tuple"){for(const u of r.items)if(vn(u,s))return!0;return!!(r.rest&&vn(r.rest,s))}return!1}const A6=(e,a={})=>s=>{const r=h2({...s,processors:a});return Gt(e,r),f2(r,e),g2(r,e)},Ou=(e,a,s={})=>r=>{const{libraryOptions:u,target:f}=r??{},g=h2({...u??{},target:f,io:a,processors:s});return Gt(e,g),f2(g,e),g2(g,e)},C6={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},N6=(e,a,s,r)=>{const u=s;u.type="string";const{minimum:f,maximum:g,format:b,patterns:v,contentEncoding:k}=e._zod.bag;if(typeof f=="number"&&(u.minLength=f),typeof g=="number"&&(u.maxLength=g),b&&(u.format=C6[b]??b,u.format===""&&delete u.format,b==="time"&&delete u.format),k&&(u.contentEncoding=k),v&&v.size>0){const S=[...v];S.length===1?u.pattern=S[0].source:S.length>1&&(u.allOf=[...S.map(A=>({...a.target==="draft-07"||a.target==="draft-04"||a.target==="openapi-3.0"?{type:"string"}:{},pattern:A.source}))])}},_6=(e,a,s,r)=>{const u=s,{minimum:f,maximum:g,format:b,multipleOf:v,exclusiveMaximum:k,exclusiveMinimum:S}=e._zod.bag;typeof b=="string"&&b.includes("int")?u.type="integer":u.type="number",typeof S=="number"&&(a.target==="draft-04"||a.target==="openapi-3.0"?(u.minimum=S,u.exclusiveMinimum=!0):u.exclusiveMinimum=S),typeof f=="number"&&(u.minimum=f,typeof S=="number"&&a.target!=="draft-04"&&(S>=f?delete u.minimum:delete u.exclusiveMinimum)),typeof k=="number"&&(a.target==="draft-04"||a.target==="openapi-3.0"?(u.maximum=k,u.exclusiveMaximum=!0):u.exclusiveMaximum=k),typeof g=="number"&&(u.maximum=g,typeof k=="number"&&a.target!=="draft-04"&&(k<=g?delete u.maximum:delete u.exclusiveMaximum)),typeof v=="number"&&(u.multipleOf=v)},z6=(e,a,s,r)=>{s.type="boolean"},E6=(e,a,s,r)=>{a.target==="openapi-3.0"?(s.type="string",s.nullable=!0,s.enum=[null]):s.type="null"},T6=(e,a,s,r)=>{s.not={}},R6=(e,a,s,r)=>{},D6=(e,a,s,r)=>{const u=e._zod.def,f=Qx(u.entries);f.every(g=>typeof g=="number")&&(s.type="number"),f.every(g=>typeof g=="string")&&(s.type="string"),s.enum=f},O6=(e,a,s,r)=>{const u=e._zod.def,f=[];for(const g of u.values)if(g===void 0){if(a.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(a.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");f.push(Number(g))}else f.push(g);if(f.length!==0)if(f.length===1){const g=f[0];s.type=g===null?"null":typeof g,a.target==="draft-04"||a.target==="openapi-3.0"?s.enum=[g]:s.const=g}else f.every(g=>typeof g=="number")&&(s.type="number"),f.every(g=>typeof g=="string")&&(s.type="string"),f.every(g=>typeof g=="boolean")&&(s.type="boolean"),f.every(g=>g===null)&&(s.type="null"),s.enum=f},q6=(e,a,s,r)=>{if(a.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},B6=(e,a,s,r)=>{if(a.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},P6=(e,a,s,r)=>{const u=s,f=e._zod.def,{minimum:g,maximum:b}=e._zod.bag;typeof g=="number"&&(u.minItems=g),typeof b=="number"&&(u.maxItems=b),u.type="array",u.items=Gt(f.element,a,{...r,path:[...r.path,"items"]})},M6=(e,a,s,r)=>{const u=s,f=e._zod.def;u.type="object",u.properties={};const g=f.shape;for(const k in g)u.properties[k]=Gt(g[k],a,{...r,path:[...r.path,"properties",k]});const b=new Set(Object.keys(g)),v=new Set([...b].filter(k=>{const S=f.shape[k]._zod;return a.io==="input"?S.optin===void 0:S.optout===void 0}));v.size>0&&(u.required=Array.from(v)),f.catchall?._zod.def.type==="never"?u.additionalProperties=!1:f.catchall?f.catchall&&(u.additionalProperties=Gt(f.catchall,a,{...r,path:[...r.path,"additionalProperties"]})):a.io==="output"&&(u.additionalProperties=!1)},I6=(e,a,s,r)=>{const u=e._zod.def,f=u.inclusive===!1,g=u.options.map((b,v)=>Gt(b,a,{...r,path:[...r.path,f?"oneOf":"anyOf",v]}));f?s.oneOf=g:s.anyOf=g},V6=(e,a,s,r)=>{const u=e._zod.def,f=Gt(u.left,a,{...r,path:[...r.path,"allOf",0]}),g=Gt(u.right,a,{...r,path:[...r.path,"allOf",1]}),b=k=>"allOf"in k&&Object.keys(k).length===1,v=[...b(f)?f.allOf:[f],...b(g)?g.allOf:[g]];s.allOf=v},L6=(e,a,s,r)=>{const u=s,f=e._zod.def;u.type="object";const g=f.keyType,v=g._zod.bag?.patterns;if(f.mode==="loose"&&v&&v.size>0){const S=Gt(f.valueType,a,{...r,path:[...r.path,"patternProperties","*"]});u.patternProperties={};for(const A of v)u.patternProperties[A.source]=S}else(a.target==="draft-07"||a.target==="draft-2020-12")&&(u.propertyNames=Gt(f.keyType,a,{...r,path:[...r.path,"propertyNames"]})),u.additionalProperties=Gt(f.valueType,a,{...r,path:[...r.path,"additionalProperties"]});const k=g._zod.values;if(k){const S=[...k].filter(A=>typeof A=="string"||typeof A=="number");S.length>0&&(u.required=S)}},U6=(e,a,s,r)=>{const u=e._zod.def,f=Gt(u.innerType,a,r),g=a.seen.get(e);a.target==="openapi-3.0"?(g.ref=u.innerType,s.nullable=!0):s.anyOf=[f,{type:"null"}]},G6=(e,a,s,r)=>{const u=e._zod.def;Gt(u.innerType,a,r);const f=a.seen.get(e);f.ref=u.innerType},$6=(e,a,s,r)=>{const u=e._zod.def;Gt(u.innerType,a,r);const f=a.seen.get(e);f.ref=u.innerType,s.default=JSON.parse(JSON.stringify(u.defaultValue))},K6=(e,a,s,r)=>{const u=e._zod.def;Gt(u.innerType,a,r);const f=a.seen.get(e);f.ref=u.innerType,a.io==="input"&&(s._prefault=JSON.parse(JSON.stringify(u.defaultValue)))},H6=(e,a,s,r)=>{const u=e._zod.def;Gt(u.innerType,a,r);const f=a.seen.get(e);f.ref=u.innerType;let g;try{g=u.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}s.default=g},Q6=(e,a,s,r)=>{const u=e._zod.def,f=a.io==="input"?u.in._zod.def.type==="transform"?u.out:u.in:u.out;Gt(f,a,r);const g=a.seen.get(e);g.ref=f},F6=(e,a,s,r)=>{const u=e._zod.def;Gt(u.innerType,a,r);const f=a.seen.get(e);f.ref=u.innerType,s.readOnly=!0},y2=(e,a,s,r)=>{const u=e._zod.def;Gt(u.innerType,a,r);const f=a.seen.get(e);f.ref=u.innerType},Z6=J("ZodISODateTime",(e,a)=>{H5.init(e,a),Tt.init(e,a)});function b2(e){return WC(Z6,e)}const Y6=J("ZodISODate",(e,a)=>{Q5.init(e,a),Tt.init(e,a)});function v2(e){return e6(Y6,e)}const X6=J("ZodISOTime",(e,a)=>{F5.init(e,a),Tt.init(e,a)});function J6(e){return t6(X6,e)}const W6=J("ZodISODuration",(e,a)=>{Z5.init(e,a),Tt.init(e,a)});function eN(e){return n6(W6,e)}const tN=(e,a)=>{Xx.init(e,a),e.name="ZodError",Object.defineProperties(e,{format:{value:s=>MA(e,s)},flatten:{value:s=>PA(e,s)},addIssue:{value:s=>{e.issues.push(s),e.message=JSON.stringify(e.issues,fh,2)}},addIssues:{value:s=>{e.issues.push(...s),e.message=JSON.stringify(e.issues,fh,2)}},isEmpty:{get(){return e.issues.length===0}}})},ma=J("ZodError",tN,{Parent:Error}),nN=a0(ma),aN=i0(ma),iN=Wu(ma),sN=ed(ma),oN=LA(ma),rN=UA(ma),lN=GA(ma),cN=$A(ma),uN=KA(ma),dN=HA(ma),mN=QA(ma),pN=FA(ma),_t=J("ZodType",(e,a)=>(Ct.init(e,a),Object.assign(e["~standard"],{jsonSchema:{input:Ou(e,"input"),output:Ou(e,"output")}}),e.toJSONSchema=A6(e,{}),e.def=a,e.type=a.type,Object.defineProperty(e,"_def",{value:a}),e.check=(...s)=>e.clone(is(a,{checks:[...a.checks??[],...s.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0}),e.with=e.check,e.clone=(s,r)=>ss(e,s,r),e.brand=()=>e,e.register=((s,r)=>(s.add(e,r),e)),e.parse=(s,r)=>nN(e,s,r,{callee:e.parse}),e.safeParse=(s,r)=>iN(e,s,r),e.parseAsync=async(s,r)=>aN(e,s,r,{callee:e.parseAsync}),e.safeParseAsync=async(s,r)=>sN(e,s,r),e.spa=e.safeParseAsync,e.encode=(s,r)=>oN(e,s,r),e.decode=(s,r)=>rN(e,s,r),e.encodeAsync=async(s,r)=>lN(e,s,r),e.decodeAsync=async(s,r)=>cN(e,s,r),e.safeEncode=(s,r)=>uN(e,s,r),e.safeDecode=(s,r)=>dN(e,s,r),e.safeEncodeAsync=async(s,r)=>mN(e,s,r),e.safeDecodeAsync=async(s,r)=>pN(e,s,r),e.refine=(s,r)=>e.check(o_(s,r)),e.superRefine=s=>e.check(r_(s)),e.overwrite=s=>e.check(or(s)),e.optional=()=>_b(e),e.exactOptional=()=>QN(e),e.nullable=()=>zb(e),e.nullish=()=>_b(zb(e)),e.nonoptional=s=>WN(e,s),e.array=()=>y(e),e.or=s=>Qe([e,s]),e.and=s=>UN(e,s),e.transform=s=>bh(e,w2(s)),e.default=s=>YN(e,s),e.prefault=s=>JN(e,s),e.catch=s=>t_(e,s),e.pipe=s=>bh(e,s),e.readonly=()=>i_(e),e.describe=s=>{const r=e.clone();return vl.add(r,{description:s}),r},Object.defineProperty(e,"description",{get(){return vl.get(e)?.description},configurable:!0}),e.meta=(...s)=>{if(s.length===0)return vl.get(e);const r=e.clone();return vl.add(r,s[0]),r},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=s=>s(e),e)),x2=J("_ZodString",(e,a)=>{s0.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(r,u,f)=>N6(e,r,u);const s=e._zod.bag;e.format=s.format??null,e.minLength=s.minimum??null,e.maxLength=s.maximum??null,e.regex=(...r)=>e.check(u6(...r)),e.includes=(...r)=>e.check(p6(...r)),e.startsWith=(...r)=>e.check(h6(...r)),e.endsWith=(...r)=>e.check(f6(...r)),e.min=(...r)=>e.check(Du(...r)),e.max=(...r)=>e.check(m2(...r)),e.length=(...r)=>e.check(p2(...r)),e.nonempty=(...r)=>e.check(Du(1,...r)),e.lowercase=r=>e.check(d6(r)),e.uppercase=r=>e.check(m6(r)),e.trim=()=>e.check(y6()),e.normalize=(...r)=>e.check(g6(...r)),e.toLowerCase=()=>e.check(b6()),e.toUpperCase=()=>e.check(v6()),e.slugify=()=>e.check(x6())}),hN=J("ZodString",(e,a)=>{s0.init(e,a),x2.init(e,a),e.email=s=>e.check(RC(fN,s)),e.url=s=>e.check(PC(gN,s)),e.jwt=s=>e.check(JC(TN,s)),e.emoji=s=>e.check(MC(yN,s)),e.guid=s=>e.check(wb(Cb,s)),e.uuid=s=>e.check(DC(hu,s)),e.uuidv4=s=>e.check(OC(hu,s)),e.uuidv6=s=>e.check(qC(hu,s)),e.uuidv7=s=>e.check(BC(hu,s)),e.nanoid=s=>e.check(IC(bN,s)),e.guid=s=>e.check(wb(Cb,s)),e.cuid=s=>e.check(VC(vN,s)),e.cuid2=s=>e.check(LC(xN,s)),e.ulid=s=>e.check(UC(kN,s)),e.base64=s=>e.check(ZC(_N,s)),e.base64url=s=>e.check(YC(zN,s)),e.xid=s=>e.check(GC(wN,s)),e.ksuid=s=>e.check($C(SN,s)),e.ipv4=s=>e.check(KC(jN,s)),e.ipv6=s=>e.check(HC(AN,s)),e.cidrv4=s=>e.check(QC(CN,s)),e.cidrv6=s=>e.check(FC(NN,s)),e.e164=s=>e.check(XC(EN,s)),e.datetime=s=>e.check(b2(s)),e.date=s=>e.check(v2(s)),e.time=s=>e.check(J6(s)),e.duration=s=>e.check(eN(s))});function o(e){return TC(hN,e)}const Tt=J("ZodStringFormat",(e,a)=>{Nt.init(e,a),x2.init(e,a)}),fN=J("ZodEmail",(e,a)=>{P5.init(e,a),Tt.init(e,a)}),Cb=J("ZodGUID",(e,a)=>{q5.init(e,a),Tt.init(e,a)}),hu=J("ZodUUID",(e,a)=>{B5.init(e,a),Tt.init(e,a)}),gN=J("ZodURL",(e,a)=>{M5.init(e,a),Tt.init(e,a)}),yN=J("ZodEmoji",(e,a)=>{I5.init(e,a),Tt.init(e,a)}),bN=J("ZodNanoID",(e,a)=>{V5.init(e,a),Tt.init(e,a)}),vN=J("ZodCUID",(e,a)=>{L5.init(e,a),Tt.init(e,a)}),xN=J("ZodCUID2",(e,a)=>{U5.init(e,a),Tt.init(e,a)}),kN=J("ZodULID",(e,a)=>{G5.init(e,a),Tt.init(e,a)}),wN=J("ZodXID",(e,a)=>{$5.init(e,a),Tt.init(e,a)}),SN=J("ZodKSUID",(e,a)=>{K5.init(e,a),Tt.init(e,a)}),jN=J("ZodIPv4",(e,a)=>{Y5.init(e,a),Tt.init(e,a)}),AN=J("ZodIPv6",(e,a)=>{X5.init(e,a),Tt.init(e,a)}),CN=J("ZodCIDRv4",(e,a)=>{J5.init(e,a),Tt.init(e,a)}),NN=J("ZodCIDRv6",(e,a)=>{W5.init(e,a),Tt.init(e,a)}),_N=J("ZodBase64",(e,a)=>{eC.init(e,a),Tt.init(e,a)}),zN=J("ZodBase64URL",(e,a)=>{nC.init(e,a),Tt.init(e,a)}),EN=J("ZodE164",(e,a)=>{aC.init(e,a),Tt.init(e,a)}),TN=J("ZodJWT",(e,a)=>{sC.init(e,a),Tt.init(e,a)}),o0=J("ZodNumber",(e,a)=>{r2.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(r,u,f)=>_6(e,r,u),e.gt=(r,u)=>e.check(jb(r,u)),e.gte=(r,u)=>e.check(Up(r,u)),e.min=(r,u)=>e.check(Up(r,u)),e.lt=(r,u)=>e.check(Sb(r,u)),e.lte=(r,u)=>e.check(Lp(r,u)),e.max=(r,u)=>e.check(Lp(r,u)),e.int=r=>e.check(Nb(r)),e.safe=r=>e.check(Nb(r)),e.positive=r=>e.check(jb(0,r)),e.nonnegative=r=>e.check(Up(0,r)),e.negative=r=>e.check(Sb(0,r)),e.nonpositive=r=>e.check(Lp(0,r)),e.multipleOf=(r,u)=>e.check(Ab(r,u)),e.step=(r,u)=>e.check(Ab(r,u)),e.finite=()=>e;const s=e._zod.bag;e.minValue=Math.max(s.minimum??Number.NEGATIVE_INFINITY,s.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(s.maximum??Number.POSITIVE_INFINITY,s.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(s.format??"").includes("int")||Number.isSafeInteger(s.multipleOf??.5),e.isFinite=!0,e.format=s.format??null});function d(e){return a6(o0,e)}const RN=J("ZodNumberFormat",(e,a)=>{oC.init(e,a),o0.init(e,a)});function Nb(e){return s6(RN,e)}const DN=J("ZodBoolean",(e,a)=>{rC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>z6(e,s,r)});function C(e){return o6(DN,e)}const ON=J("ZodNull",(e,a)=>{lC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>E6(e,s,r)});function ce(e){return r6(ON,e)}const qN=J("ZodUnknown",(e,a)=>{cC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>R6()});function qn(){return l6(qN)}const BN=J("ZodNever",(e,a)=>{uC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>T6(e,s,r)});function PN(e){return c6(BN,e)}const MN=J("ZodArray",(e,a)=>{dC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>P6(e,s,r,u),e.element=a.element,e.min=(s,r)=>e.check(Du(s,r)),e.nonempty=s=>e.check(Du(1,s)),e.max=(s,r)=>e.check(m2(s,r)),e.length=(s,r)=>e.check(p2(s,r)),e.unwrap=()=>e.element});function y(e,a){return k6(MN,e,a)}const IN=J("ZodObject",(e,a)=>{pC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>M6(e,s,r,u),dt(e,"shape",()=>a.shape),e.keyof=()=>j(Object.keys(e._zod.def.shape)),e.catchall=s=>e.clone({...e._zod.def,catchall:s}),e.passthrough=()=>e.clone({...e._zod.def,catchall:qn()}),e.loose=()=>e.clone({...e._zod.def,catchall:qn()}),e.strict=()=>e.clone({...e._zod.def,catchall:PN()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=s=>RA(e,s),e.safeExtend=s=>DA(e,s),e.merge=s=>OA(e,s),e.pick=s=>EA(e,s),e.omit=s=>TA(e,s),e.partial=(...s)=>qA(S2,e,s[0]),e.required=(...s)=>BA(j2,e,s[0])});function m(e,a){const s={type:"object",shape:e??{},..._e(a)};return new IN(s)}const k2=J("ZodUnion",(e,a)=>{u2.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>I6(e,s,r,u),e.options=a.options});function Qe(e,a){return new k2({type:"union",options:e,..._e(a)})}const VN=J("ZodDiscriminatedUnion",(e,a)=>{k2.init(e,a),hC.init(e,a)});function qe(e,a,s){return new VN({type:"union",options:a,discriminator:e,..._e(s)})}const LN=J("ZodIntersection",(e,a)=>{fC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>V6(e,s,r,u)});function UN(e,a){return new LN({type:"intersection",left:e,right:a})}const GN=J("ZodRecord",(e,a)=>{gC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>L6(e,s,r,u),e.keyType=a.keyType,e.valueType=a.valueType});function Le(e,a,s){return new GN({type:"record",keyType:e,valueType:a,..._e(s)})}const yh=J("ZodEnum",(e,a)=>{yC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(r,u,f)=>D6(e,r,u),e.enum=a.entries,e.options=Object.values(a.entries);const s=new Set(Object.keys(a.entries));e.extract=(r,u)=>{const f={};for(const g of r)if(s.has(g))f[g]=a.entries[g];else throw new Error(`Key ${g} not found in enum`);return new yh({...a,checks:[],..._e(u),entries:f})},e.exclude=(r,u)=>{const f={...a.entries};for(const g of r)if(s.has(g))delete f[g];else throw new Error(`Key ${g} not found in enum`);return new yh({...a,checks:[],..._e(u),entries:f})}});function j(e,a){const s=Array.isArray(e)?Object.fromEntries(e.map(r=>[r,r])):e;return new yh({type:"enum",entries:s,..._e(a)})}const $N=J("ZodLiteral",(e,a)=>{bC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>O6(e,s,r),e.values=new Set(a.values),Object.defineProperty(e,"value",{get(){if(a.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return a.values[0]}})});function D(e,a){return new $N({type:"literal",values:Array.isArray(e)?e:[e],..._e(a)})}const KN=J("ZodTransform",(e,a)=>{vC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>B6(e,s),e._zod.parse=(s,r)=>{if(r.direction==="backward")throw new Kx(e.constructor.name);s.addIssue=f=>{if(typeof f=="string")s.issues.push(Nl(f,s.value,a));else{const g=f;g.fatal&&(g.continue=!1),g.code??(g.code="custom"),g.input??(g.input=s.value),g.inst??(g.inst=e),s.issues.push(Nl(g))}};const u=a.transform(s.value,s);return u instanceof Promise?u.then(f=>(s.value=f,s)):(s.value=u,s)}});function w2(e){return new KN({type:"transform",transform:e})}const S2=J("ZodOptional",(e,a)=>{d2.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>y2(e,s,r,u),e.unwrap=()=>e._zod.def.innerType});function _b(e){return new S2({type:"optional",innerType:e})}const HN=J("ZodExactOptional",(e,a)=>{xC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>y2(e,s,r,u),e.unwrap=()=>e._zod.def.innerType});function QN(e){return new HN({type:"optional",innerType:e})}const FN=J("ZodNullable",(e,a)=>{kC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>U6(e,s,r,u),e.unwrap=()=>e._zod.def.innerType});function zb(e){return new FN({type:"nullable",innerType:e})}const ZN=J("ZodDefault",(e,a)=>{wC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>$6(e,s,r,u),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function YN(e,a){return new ZN({type:"default",innerType:e,get defaultValue(){return typeof a=="function"?a():Zx(a)}})}const XN=J("ZodPrefault",(e,a)=>{SC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>K6(e,s,r,u),e.unwrap=()=>e._zod.def.innerType});function JN(e,a){return new XN({type:"prefault",innerType:e,get defaultValue(){return typeof a=="function"?a():Zx(a)}})}const j2=J("ZodNonOptional",(e,a)=>{jC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>G6(e,s,r,u),e.unwrap=()=>e._zod.def.innerType});function WN(e,a){return new j2({type:"nonoptional",innerType:e,..._e(a)})}const e_=J("ZodCatch",(e,a)=>{AC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>H6(e,s,r,u),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function t_(e,a){return new e_({type:"catch",innerType:e,catchValue:typeof a=="function"?a:()=>a})}const n_=J("ZodPipe",(e,a)=>{CC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>Q6(e,s,r,u),e.in=a.in,e.out=a.out});function bh(e,a){return new n_({type:"pipe",in:e,out:a})}const a_=J("ZodReadonly",(e,a)=>{NC.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>F6(e,s,r,u),e.unwrap=()=>e._zod.def.innerType});function i_(e){return new a_({type:"readonly",innerType:e})}const s_=J("ZodCustom",(e,a)=>{_C.init(e,a),_t.init(e,a),e._zod.processJSONSchema=(s,r,u)=>q6(e,s)});function o_(e,a={}){return w6(s_,e,a)}function r_(e){return S6(e)}function r0(e,a){return bh(w2(e),a)}const Se={custom:"custom"};function l0(e){return i6(o0,e)}const A2=m({id:o(),name:o(),keyPrefix:o(),scopes:y(o()),projectId:o().nullable(),projectName:o().nullable(),readOnly:C(),operator:C().optional(),createdAt:o(),lastUsedAt:o().nullable(),revokedAt:o().nullable()});m({keys:y(A2)});m({name:o().min(1).max(100),scopes:y(o()).min(1).optional(),projectId:o().optional()});A2.extend({key:o()});const l_=m({maxConcurrency:d().int().positive(),maxRequestsPerMinute:d().int().positive(),maxRequestsPerDay:d().int().positive()}),ht=o().min(1),c0=Le(o(),o().trim().min(1));o().min(1);const Yt=m({label:o().min(1),city:o().min(1),region:o().min(1),country:o().length(2),timezone:o().optional()}),u0=j(["answer-visibility","traffic-sync","gbp-sync","data-refresh","backlinks-sync","site-audit","ads-sync","doctor"]);u0.enum;const d0=m({everyDays:d().int().min(1).max(3650),startDate:o().date(),time:o().regex(/^([01]\d|2[0-3]):[0-5]\d$/,"Time must be HH:mm")}).strict();m({id:o(),projectId:o(),kind:u0,cronExpr:o(),recurrence:d0.nullable().optional(),preset:o().nullable().optional(),timezone:o().default("UTC"),enabled:C().default(!0),providers:y(ht).default([]),sourceId:o().nullable().optional(),lastRunAt:o().nullable().optional(),nextRunAt:o().nullable().optional(),createdAt:o(),updatedAt:o()});const c_=o().datetime();m({kind:u0.optional(),preset:o().min(1).optional(),cron:o().min(1).optional(),recurrence:d0.optional(),timezone:o().optional().default("UTC"),enabled:C().optional().default(!0),providers:y(ht).optional().default([]),sourceId:o().optional(),expectedUpdatedAt:c_.nullable().optional()}).refine(e=>[e.preset,e.cron,e.recurrence].filter(a=>a!==void 0).length===1,{message:'Exactly one of "preset", "cron", or "recurrence" must be provided'});const m0=j(["citation.lost","citation.gained","run.completed","run.failed","insight.critical","insight.high","health.degraded","health.recovered"]);m({id:o(),projectId:o(),channel:D("webhook"),url:o().url(),urlDisplay:o(),urlHost:o(),events:y(m0),enabled:C().default(!0),source:o().optional(),webhookSecret:o().optional(),createdAt:o(),updatedAt:o()});m({channel:D("webhook"),url:o().url(),events:y(m0).min(1),source:o().optional()});class u_ extends Error{code;statusCode;details;constructor(a,s,r,u){super(s),this.name="AppError",this.code=a,this.statusCode=r,this.details=u}toJSON(){return{error:{code:this.code,message:this.message,...this.details?{details:this.details}:{}}}}}function Eb(e,a){return new u_("VALIDATION_ERROR",e,400,a)}function d_(e){if(e instanceof Error)return e.message;if(typeof e=="string")return e;if(e==null)return"unknown error";try{const a=JSON.stringify(e);if(a!==void 0)return a}catch{}try{return String(e)}catch{return"unknown error"}}function Gp(e,a=!1){const s=new Set,r=[];for(const u of e){const f=a?u.toLowerCase():u;s.has(f)||(s.add(f),r.push(u))}return r}function Tb(e){try{const a=e.includes("://"),s=new URL(a?e:`https://${e}`);if(!a&&(s.pathname!=="/"||s.search||s.hash)||s.username||s.password||s.port)return null;const r=s.hostname.trim().toLowerCase().replace(/^www\./,"");return!r||r.includes("/")||r.includes("?")||r.includes("#")?null:r}catch{return null}}const m_=o().trim().min(1).refine(e=>Tb(e)!==null,{message:"Marketing hosts must be valid hostnames without credentials or ports"}).overwrite(e=>Tb(e)??e),p_=o().trim().min(1),h_=o().trim().regex(/^[a-z]\w{0,39}$/i,{message:"GA4 event names must start with a letter and contain only letters, numbers, or underscores"}),p0=m({marketingHosts:y(m_).overwrite(e=>Gp(e,!0)),brandTerms:y(p_).overwrite(e=>Gp(e,!0)),leadEventNames:y(h_).overwrite(e=>Gp(e))});function f_(){return{marketingHosts:[],brandTerms:[],leadEventNames:["generate_lead"]}}const $p=Object.freeze({marketingHosts:Object.freeze([]),brandTerms:Object.freeze([]),leadEventNames:Object.freeze(["generate_lead"])}),C2=()=>f_(),Rb=j(["never-synced","ready","error"]),g_=j(["landing-page","channel"]),y_=j(["30d","60d","90d"]),b_=j(["marketing","all"]),xl=v2(),Ol=m({label:j(["earliest","middle","previous","latest"]),startDate:xl,endDate:xl}),Kp=Ol.extend({sessions:d().int().nonnegative()}),Db=Ol.extend({eventCount:d().int().nonnegative()}),Ob=Ol.extend({clicks:d().int().nonnegative(),impressions:d().int().nonnegative()}),v_=Ol.extend({propertyClicks:d().int().nonnegative(),propertyImpressions:d().int().nonnegative(),reportedQueryClicks:d().int().nonnegative(),reportedQueryImpressions:d().int().nonnegative(),brandedClicks:d().int().nonnegative(),brandedImpressions:d().int().nonnegative(),nonBrandedClicks:d().int().nonnegative(),nonBrandedImpressions:d().int().nonnegative(),unreportedClicks:d().int().nonnegative(),unreportedImpressions:d().int().nonnegative()}),x_=Ol.extend({sessions:d().int().nonnegative(),engagementRate:d().min(0).max(1).nullable(),dailyTotalUsers:d().int().nonnegative().nullable(),dailyNewUsers:d().int().nonnegative().nullable(),metricsAvailable:C(),daysInPeriod:d().int().nonnegative(),daysWithEngagementRate:d().int().nonnegative(),daysWithUserSplit:d().int().nonnegative()}),k_=m({window:y_,bucketDays:D(30),filters:m({hostScope:b_,marketingHosts:y(o()),pathPrefix:o().nullable(),brandTerms:y(o()),queryMixScope:D("property")}),acquisition:m({status:Rb,error:o().nullable(),syncedAt:o().datetime().nullable(),periods:y(Kp),channels:y(m({channelGroup:o(),periods:y(Kp)})),pages:y(m({hostName:o(),landingPage:o(),periods:y(Kp)}))}),leads:m({status:Rb,error:o().nullable(),syncedAt:o().datetime().nullable(),attributionScope:g_.nullable(),hostAndPathFiltersApplied:C(),periods:y(Db),channels:y(m({channelGroup:o(),periods:y(Db)}))}),engagement:m({status:j(["ready","unavailable"]),availableFromDate:xl.nullable(),latestDate:xl.nullable(),periods:y(x_)}),searchDemand:m({status:j(["ready","unavailable"]),periods:y(v_),queries:y(m({query:o(),classification:j(["branded","non-branded"]),periods:y(Ob)})),pages:y(m({hostName:o(),landingPage:o(),periods:y(Ob)})),latestDate:xl.nullable()})}),w_=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,S_=/[\0-\x1F\x7F-\x9F]/,j_=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B60\u1B7D-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDEAD\uDED0\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]/,A_=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;var C_=class{src_Any=w_.source;src_Cc=S_.source;src_Z=A_.source;src_P=j_.source;src_ZPCc=[this.src_Z,this.src_P,this.src_Cc].join("|");src_ZCc=[this.src_Z,this.src_Cc].join("|");cache={};opts={maxLength:1e4,urlAuth:!1,schema_names:[]};constructor(e={}){this.opts={...this.opts,...e}}set(e={}){return this.opts={...this.opts,...e},this.cache={},this}escapeRE(e){return e.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}nestedPairRE(e,a,s=4){const r=this.escapeRE(e),u=this.escapeRE(a),f=`(?:(?!${this.src_ZCc}|${r}|${u}).)`;let g=`${r}${f}{0,1000}${u}`;for(let b=2;b<=s;b++)g=`${r}(?:${f}|${g}){0,1000}${u}`;return g}get_text_separators(){return this.cache.text_separators??=/[><\uff5c]/}get_pseudo_letter(){return this.cache.src_pseudo_letter??=new RegExp(`(?:(?!${this.get_text_separators().source}|${this.src_ZPCc})${this.src_Any})`)}get_ipv4_addr(){return this.cache.src_ip4??=new RegExp("(?:(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])[.]){3}(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])")}get_ipv6_addr(){const e="[0-9A-Fa-f]{1,4}",a=`(?:(?:${e}:${e})|${this.get_ipv4_addr().source})`;return this.cache.src_ip6_addr??=new RegExp(`(?:(?:${e}:){6}${a}|::(?:${e}:){5}${a}|(?:${e})?::(?:${e}:){4}${a}|(?:(?:${e}:){0,1}${e})?::(?:${e}:){3}${a}|(?:(?:${e}:){0,2}${e})?::(?:${e}:){2}${a}|(?:(?:${e}:){0,3}${e})?::${e}:${a}|(?:(?:${e}:){0,4}${e})?::${a}|(?:(?:${e}:){0,5}${e})?::${e}|(?:(?:${e}:){0,6}${e})?::)`)}get_ipv6_url_host(){return this.cache.src_ip6_host??=new RegExp(`\\[${this.get_ipv6_addr().source}\\]`)}get_ipv6_mail_host(){return this.cache.src_ipv6_mail_host??=new RegExp(`\\[IPv6:${this.get_ipv6_addr().source}\\]`)}get_auth(){return this.cache.src_auth??=new RegExp(`(?:(?:(?!${this.src_ZCc}|[@/\\[\\]()]).){1,50}@)?`)}get_port(){return this.cache.src_port??=new RegExp("(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?")}get_host_terminator(){return this.cache.src_host_terminator??=new RegExp(`(?=$|${this.get_text_separators().source}|${this.src_ZPCc})(?!${this.opts["---"]?"-(?!--)|":"-|"}_|:\\d|\\.-|\\.(?!$|${this.src_ZPCc}))`)}get_path_terminator(){return this.cache.src_path_terminator??=new RegExp(`${this.src_ZPCc}|${this.get_text_separators().source}`)}get_path(){return this.cache.src_path??=new RegExp(`(?:[/?#](?:${this.nestedPairRE("[","]")}|${this.nestedPairRE("(",")")}|${this.nestedPairRE("{","}")}|\\"(?:(?!${this.src_ZCc}|["]).){1,100}\\"|\\'(?:(?!${this.src_ZCc}|[']).){1,100}\\'|\\'(?=${this.get_pseudo_letter().source}|[-])|\\.{2,20}[:]?[a-zA-Z0-9%/&]|\\.(?!${this.src_ZCc}|[.]|$)|`+(this.opts["---"]?"\\-(?!--(?:[^-]|$))(?:-{0,19})|":"\\-{1,20}|")+`,(?!${this.src_ZCc}|$)|;(?!${this.src_ZCc}|$)|\\!{1,20}(?!${this.src_ZCc}|[!]|$)|\\?(?!${this.src_ZCc}|[?]|$)|`+this.get_path_extra().source+`[\\\\/:%@#&=_~*]|(?!${this.get_path_terminator().source}).){1,${this.opts.maxLength}}|\\/)?`)}get_mail_name(){return this.cache.src_mail_name??=new RegExp("[-!#$%&'*+/=?^_`{|}~a-zA-Z0-9](?:[-!#$%&'*+/=?^_`{|}~a-zA-Z0-9]|[.](?=[-!#$%&'*+/=?^_`{|}~a-zA-Z0-9])){0,63}")}get_xn(){return this.cache.src_xn??=new RegExp("xn--[a-z0-9\\-]{1,59}")}get_tld(){if(this.cache.tld)return this.cache.tld;const e=[...new Set(this.opts.tlds||[])].sort().reverse().join("|");return this.cache.tld=new RegExp(`${e||"$#none#$"}|${this.get_xn().source}`),this.cache.tld}get_domain_root(){return this.cache.src_domain_root??=new RegExp("(?:"+this.get_xn().source+`|${this.get_pseudo_letter().source}{1,63})`)}get_domain(){return this.cache.src_domain??=new RegExp("(?:"+this.get_xn().source+`|(?:${this.get_pseudo_letter().source})|(?:${this.get_pseudo_letter().source}(?:-|${this.get_pseudo_letter().source}){0,61}${this.get_pseudo_letter().source}))`)}get_url_host_port(){return this.cache.url_host_port??=new RegExp("(?:"+this.get_ipv6_url_host().source+`|(?:(?:(?:${this.get_domain().source})\\.){0,10}${this.get_domain().source}))`+this.get_port().source+this.get_host_terminator().source)}get_fuzzy_url_host_port(){return this.cache.fuzzy_url_host_port??=new RegExp("(?:"+(this.opts.fuzzyIP?this.get_ipv4_addr().source+"|":"")+`(?:(?:(?:${this.get_domain().source})\\.){1,10}(?:${this.get_tld().source})))`+this.get_host_terminator().source)}get_mail_host(){return this.cache.src_mail_host??=new RegExp("(?:"+this.get_ipv6_mail_host().source+`|(?:(?:(?:${this.get_domain().source})\\.){0,4}${this.get_domain().source}))`+this.get_host_terminator().source)}get_fuzzy_mail_host(){return this.cache.src_fuzzy_mail_host??=new RegExp("(?:"+this.get_ipv6_mail_host().source+`|(?:(?:(?:${this.get_domain().source})[.]){1,4}${this.get_domain_root().source}))`+this.get_host_terminator().source)}get_path_extra(){return this.cache.src_path_extra??=new RegExp("")}get_fuzzy_mail_host_search(){return this.cache.mail_fuzzy_host_search??=new RegExp(`@${this.get_fuzzy_mail_host().source}`,"ig")}get_fuzzy_link_search(){return this.cache.link_fuzzy_search??=new RegExp(`(^|(?![.:/\\-_@])(?:[$+<=>^\`||]|${this.src_ZPCc}))(?:(?![$+<=>^\`||])${this.get_fuzzy_url_host_port().source}${this.get_path().source})`,"ig")}get_http_validator(){return this.cache.http_validator??=new RegExp("\\/\\/"+(this.opts.urlAuth?this.get_auth().source:"")+this.get_url_host_port().source+this.get_path().source,"iy")}get_relative_proto_validator(){return this.cache.relative_proto_validator??=new RegExp((this.opts.urlAuth?this.get_auth().source:"")+`(?:localhost|${this.get_ipv6_url_host().source}|(?:(?:${this.get_domain().source})[.]){1,10}${this.get_domain_root().source})`+this.get_port().source+this.get_host_terminator().source+this.get_path().source,"iy")}get_mail_name_validator(){return this.cache.mail_name_validator??=new RegExp(`(?:^|${this.get_text_separators().source}|"|\\(|${this.src_ZCc})(${this.get_mail_name().source})$`)}get_mailto_validator(){return this.cache.mailto_validator??=new RegExp(`${this.get_mail_name().source}@${this.get_mail_host().source}`,"iy")}get_schema_names(){return this.cache.schema_names??=new RegExp((this.opts.schema_names||[]).map(e=>this.escapeRE(e)).join("|"))}get_schema_search(){return this.cache.schema_search??=new RegExp(`(^|(?!_)(?:[><|]|${this.src_ZPCc}))(${this.get_schema_names().source})`,"ig")}get_schema_at_start(){return this.cache.schema_at_start??=new RegExp(`^${this.get_schema_search().source}`,"i")}},Hp={validate:(e,a,s)=>{const r=s.re.get_http_validator();r.lastIndex=a;const u=r.exec(e);return u?u[0].length:0},normalize:(e,a)=>a.normalize(e)},N_={"http:":Hp,"https:":Hp,"ftp:":Hp,"//":{validate:function(e,a,s){const r=s.re.get_relative_proto_validator();r.lastIndex=a;const u=r.exec(e);return u?a>=3&&e[a-3]===":"||a>=3&&e[a-3]==="/"?0:u[0].length:0},normalize:(e,a)=>a.normalize(e)},"mailto:":{validate:function(e,a,s){const r=s.re.get_mailto_validator();r.lastIndex=a;const u=r.exec(e);return u?u[0].length:0},normalize:(e,a)=>a.normalize(e)}},__="a:cdefgilmnoqrstuwxz|b:abdefghijmnorstvwyz|c:acdfghiklmnoruvwxyz|d:ejkmoz|e:cegrstu|f:ijkmor|g:abdefghilmnpqrstuwy|h:kmnrtu|i:delmnoqrst|j:emop|k:eghimnprwyz|l:abcikrstuvy|m:acdeghklmnopqrstuvwxyz|n:acefgilopruz|o:m|p:aefghklmnrstwy|q:a|r:eosuw|s:abcdeghijklmnortuvxyz|t:cdfghjklmnortvwz|u:agksyz|v:aceginu|w:fs|y:et|z:amw",z_="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф";function E_(){const e=z_.split("|");return __.split("|").forEach(a=>{const s=a.indexOf(":"),r=a.slice(0,s);for(const u of a.slice(s+1))e.push(r+u)}),e}var T_={fuzzyLink:!1,fuzzyEmail:!0,fuzzyIP:!1,"---":!1,tlds:E_(),urlAuth:!1,maxLength:1e4},qb=class{schema;index;lastIndex;raw;text;url;constructor(e,a,s,r){const u=e.slice(s,r);this.schema=a.toLowerCase(),this.index=s,this.lastIndex=r,this.raw=u,this.text=u,this.url=u}},R_=class{__opts__;__schemas__;re;constructor(e={}){const{rebuilder:a,...s}=e;this.__opts__={...T_,...s},this.__schemas__={...N_},this.re=a||new C_,this.re.set({...this.__opts__,schema_names:Object.keys(this.__schemas__)})}add(e,a=null){if(!a)delete this.__schemas__[e];else{const s={normalize:(r,u)=>u.normalize(r),...a};this.__schemas__[e]=s}return this.re.set({...this.__opts__,schema_names:Object.keys(this.__schemas__)}),this}set(e={}){return this.__opts__={...this.__opts__,...e},this.re.set({...this.__opts__,schema_names:Object.keys(this.__schemas__)}),this}test(e){if(!e.length)return!1;let a,s;for(s=this.re.get_schema_search(),s.lastIndex=0;(a=s.exec(e))!==null;)if(this.testSchemaAt(e,a[2],s.lastIndex))return!0;if(this.__opts__.fuzzyLink&&this.__schemas__["http:"]&&(s=this.re.get_fuzzy_link_search(),s.lastIndex=0,s.exec(e)!==null))return!0;if(this.__opts__.fuzzyEmail&&this.__schemas__["mailto:"]&&e.indexOf("@")>=0){const r=this.re.get_fuzzy_mail_host_search(),u=this.re.get_mail_name_validator();for(r.lastIndex=0;(a=r.exec(e))!==null;){const f=e.slice(Math.max(0,a.index-65),a.index);if(u.test(f))return!0}}return!1}testSchemaAt(e,a,s){return this.__schemas__[a.toLowerCase()]?this.__schemas__[a.toLowerCase()].validate(e.slice(0,s+this.__opts__.maxLength),s,this):0}match(e){const a=[],s=this.re.get_schema_search();let r,u,f,g,b,v,k=!1,S=!1,A=!1,N=0;if(!e.length)return null;for(s.lastIndex=0,this.__opts__.fuzzyLink&&this.__schemas__["http:"]&&(r=this.re.get_fuzzy_link_search(),r.lastIndex=0),this.__opts__.fuzzyEmail&&this.__schemas__["mailto:"]&&(u=this.re.get_fuzzy_mail_host_search(),u.lastIndex=0,f=this.re.get_mail_name_validator());;){const E=Math.max(N-1,0);if(u&&f&&!A&&(!b||b.index<N))for(u.lastIndex<E&&(u.lastIndex=E);;){const te=u.exec(e);if(!te){A=!0,b=void 0;break}const Q=f.exec(e.slice(Math.max(0,te.index-65),te.index));if(Q){if(b={schema:"mailto:",index:te.index-Q[1].length,lastIndex:te.index+te[0].length},b.index>=N)break;u.lastIndex<E&&(u.lastIndex=E)}}if(r&&!S&&(!g||g.index<N))for(r.lastIndex<E&&(r.lastIndex=E);;){const te=r.exec(e);if(!te){S=!0,g=void 0;break}if(g={schema:"",index:te.index+te[1].length,lastIndex:te.index+te[0].length},g.index>=N)break;r.lastIndex<E&&(r.lastIndex=E)}let Z=b;(!Z||g&&(g.index<Z.index||g.index===Z.index&&g.lastIndex>Z.lastIndex))&&(Z=g);let _;if(!k)for(;;){if(!v){s.lastIndex<E&&(s.lastIndex=E);const re=s.exec(e);if(!re){k=!0;break}v={schema:re[2],index:re.index+re[1].length,lastIndex:re.index+re[0].length}}if(v.index<N){v=void 0;continue}if(Z&&v.index>Z.index)break;const te=v;v=void 0;const Q=this.testSchemaAt(e,te.schema,te.lastIndex);if(Q){_={schema:te.schema,index:te.index,lastIndex:te.lastIndex+Q};break}}let G=_;if((!G||b&&(b.index<G.index||b.index===G.index&&b.lastIndex>G.lastIndex))&&(G=b),(!G||g&&(g.index<G.index||g.index===G.index&&g.lastIndex>G.lastIndex))&&(G=g),!G)break;G===b?b=void 0:G===g&&(g=void 0);const K=new qb(e,G.schema,G.index,G.lastIndex);K.schema?this.__schemas__[K.schema].normalize(K,this):this.normalize(K),a.push(K),N=G.lastIndex}return a.length?a:null}matchAtStart(e){if(!e.length)return null;const a=this.re.get_schema_at_start().exec(e);if(!a)return null;const s=this.testSchemaAt(e,a[2],a[0].length);if(!s)return null;const r=new qb(e,a[2],a.index+a[1].length,a.index+a[0].length+s);return this.__schemas__[r.schema].normalize(r,this),r}tlds(e,a=!1){return e=Array.isArray(e)?e:[e],a?this.__opts__.tlds=this.__opts__.tlds.concat(e):this.__opts__.tlds=e,this.re.set({...this.__opts__,schema_names:Object.keys(this.__schemas__)}),this}normalize(e){e.schema||(e.url=`http://${e.url}`),e.schema==="mailto:"&&!/^mailto:/i.test(e.url)&&(e.url=`mailto:${e.url}`)}};const D_=JSON.parse('["aaa","aarp","abb","abbott","abbvie","abc","able","abogado","abudhabi","ac","academy","accenture","accountant","accountants","aco","actor","ad","ads","adult","ae","aeg","aero","aetna","af","afl","africa","ag","agakhan","agency","ai","aig","airbus","airforce","airtel","akdn","al","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","am","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","ao","aol","apartments","app","apple","aq","aquarelle","ar","arab","aramco","archi","army","arpa","art","arte","as","asda","asia","associates","at","athleta","attorney","au","auction","audi","audible","audio","auspost","author","auto","autos","aw","aws","ax","axa","az","azure","ba","baby","baidu","banamex","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bb","bbc","bbt","bbva","bcg","bcn","bd","be","beats","beauty","beer","berlin","best","bestbuy","bet","bf","bg","bh","bharti","bi","bible","bid","bike","bing","bingo","bio","biz","bj","black","blackfriday","blockbuster","blog","bloomberg","blue","bm","bms","bmw","bn","bnpparibas","bo","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","br","bradesco","bridgestone","broadway","broker","brother","brussels","bs","bt","build","builders","business","buy","buzz","bv","bw","by","bz","bzh","ca","cab","cafe","cal","call","calvinklein","cam","camera","camp","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","cash","casino","cat","catering","catholic","cba","cbn","cbre","cc","cd","center","ceo","cern","cf","cfa","cfd","cg","ch","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","ci","cipriani","circle","cisco","citadel","citi","citic","city","ck","cl","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","cm","cn","co","coach","codes","coffee","college","cologne","com","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cool","coop","corsica","country","coupon","coupons","courses","cpa","cr","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","cu","cuisinella","cv","cw","cx","cy","cymru","cyou","cz","dad","dance","data","date","dating","datsun","day","dclk","dds","de","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dj","dk","dm","dnp","do","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","dupont","durban","dvag","dvr","dz","earth","eat","ec","eco","edeka","edu","education","ee","eg","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","er","ericsson","erni","es","esq","estate","et","eu","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fi","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","fj","fk","flickr","flights","flir","florist","flowers","fly","fm","fo","foo","food","football","ford","forex","forsale","forum","foundation","fox","fr","free","fresenius","frl","frogans","frontier","ftr","fujitsu","fun","fund","furniture","futbol","fyi","ga","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gb","gbiz","gd","gdn","ge","gea","gent","genting","george","gf","gg","ggee","gh","gi","gift","gifts","gives","giving","gl","glass","gle","global","globo","gm","gmail","gmbh","gmo","gmx","gn","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","gov","gp","gq","gr","grainger","graphics","gratis","green","gripe","grocery","group","gs","gt","gu","gucci","guge","guide","guitars","guru","gw","gy","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hiphop","hisamitsu","hitachi","hiv","hk","hkt","hm","hn","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hotels","hotmail","house","how","hr","hsbc","ht","hu","hughes","hyatt","hyundai","ibm","icbc","ice","icu","id","ie","ieee","ifm","ikano","il","im","imamat","imdb","immo","immobilien","in","inc","industries","infiniti","info","ing","ink","institute","insurance","insure","int","international","intuit","investments","io","ipiranga","iq","ir","irish","is","ismaili","ist","istanbul","it","itau","itv","jaguar","java","jcb","je","jeep","jetzt","jewelry","jio","jll","jm","jmp","jnj","jo","jobs","joburg","jot","joy","jp","jpmorgan","jprs","juegos","juniper","kaufen","kddi","ke","kerryhotels","kerryproperties","kfh","kg","kh","ki","kia","kids","kim","kindle","kitchen","kiwi","km","kn","koeln","komatsu","kosher","kp","kpmg","kpn","kr","krd","kred","kuokgroup","kw","ky","kyoto","kz","la","lacaixa","lamborghini","lamer","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lb","lc","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","li","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","link","live","living","lk","llc","llp","loan","loans","locker","locus","lol","london","lotte","lotto","love","lpl","lplfinancial","lr","ls","lt","ltd","ltda","lu","lundbeck","luxe","luxury","lv","ly","ma","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","mattel","mba","mc","mckinsey","md","me","med","media","meet","melbourne","meme","memorial","men","menu","merckmsd","mg","mh","miami","microsoft","mil","mini","mint","mit","mitsubishi","mk","ml","mlb","mls","mm","mma","mn","mo","mobi","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","mp","mq","mr","ms","msd","mt","mtn","mtr","mu","museum","music","mv","mw","mx","my","mz","na","nab","nagoya","name","navy","nba","nc","ne","nec","net","netbank","netflix","network","neustar","new","news","next","nextdirect","nexus","nf","nfl","ng","ngo","nhk","ni","nico","nike","nikon","ninja","nissan","nissay","nl","no","nokia","norton","now","nowruz","nowtv","np","nr","nra","nrw","ntt","nu","nyc","nz","obi","observer","office","okinawa","olayan","olayangroup","ollo","om","omega","one","ong","onl","online","ooo","open","oracle","orange","org","organic","origins","osaka","otsuka","ott","ovh","pa","page","panasonic","paris","pars","partners","parts","party","pay","pccw","pe","pet","pf","pfizer","pg","ph","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","pk","pl","place","play","playstation","plumbing","plus","pm","pn","pnc","pohl","poker","politie","porn","post","pr","praxi","press","prime","pro","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","ps","pt","pub","pw","pwc","py","qa","qpon","quebec","quest","racing","radio","re","read","realestate","realtor","realty","recipes","red","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","ril","rio","rip","ro","rocks","rodeo","rogers","room","rs","rsvp","ru","rugby","ruhr","run","rw","rwe","ryukyu","sa","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sb","sbi","sbs","sc","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scot","sd","se","search","seat","secure","security","seek","select","sener","services","seven","sew","sex","sexy","sfr","sg","sh","shangrila","sharp","shell","shia","shiksha","shoes","shop","shopping","shouji","show","si","silk","sina","singles","site","sj","sk","ski","skin","sky","skype","sl","sling","sm","smart","smile","sn","sncf","so","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","sr","srl","ss","st","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","su","sucks","supplies","supply","support","surf","surgery","suzuki","sv","swatch","swiss","sx","sy","sydney","systems","sz","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tc","tci","td","tdk","team","tech","technology","tel","temasek","tennis","teva","tf","tg","th","thd","theater","theatre","tiaa","tickets","tienda","tips","tires","tirol","tj","tjmaxx","tjx","tk","tkmaxx","tl","tm","tmall","tn","to","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","tr","trade","trading","training","travel","travelers","travelersinsurance","trust","trv","tt","tube","tui","tunes","tushu","tv","tvs","tw","tz","ua","ubank","ubs","ug","uk","unicom","university","uno","uol","ups","us","uy","uz","va","vacations","vana","vanguard","vc","ve","vegas","ventures","verisign","vermögensberater","vermögensberatung","versicherung","vet","vg","vi","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vn","vodka","volvo","vote","voting","voto","voyage","vu","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wed","wedding","weibo","weir","wf","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","ws","wtc","wtf","xbox","xerox","xihuan","xin","xxx","xyz","yachts","yahoo","yamaxun","yandex","ye","yodobashi","yoga","yokohama","you","youtube","yt","yun","za","zappos","zara","zero","zip","zm","zone","zuerich","zw","ελ","ευ","бг","бел","дети","ею","католик","ком","мкд","мон","москва","онлайн","орг","рус","рф","сайт","срб","укр","қаз","հայ","ישראל","קום","ابوظبي","ارامكو","الاردن","البحرين","الجزائر","السعودية","العليان","المغرب","امارات","ایران","بارت","بازار","بيتك","بھارت","تونس","سودان","سورية","شبكة","عراق","عرب","عمان","فلسطين","قطر","كاثوليك","كوم","مصر","مليسيا","موريتانيا","موقع","همراه","پاکستان","ڀارت","कॉम","नेट","भारत","भारतम्","भारोत","संगठन","বাংলা","ভারত","ভাৰত","ਭਾਰਤ","ભારત","ଭାରତ","இந்தியா","இலங்கை","சிங்கப்பூர்","భారత్","ಭಾರತ","ഭാരതം","ලංකා","คอม","ไทย","ລາວ","გე","みんな","アマゾン","クラウド","グーグル","コム","ストア","セール","ファッション","ポイント","世界","中信","中国","中國","中文网","亚马逊","企业","佛山","信息","健康","八卦","公司","公益","台湾","台灣","商城","商店","商标","嘉里","嘉里大酒店","在线","大拿","天主教","娱乐","家電","广东","微博","慈善","我爱你","手机","招聘","政务","政府","新加坡","新闻","时尚","書籍","机构","淡马锡","游戏","澳門","点看","移动","组织机构","网址","网店","网站","网络","联通","谷歌","购物","通販","集团","電訊盈科","飞利浦","食品","餐厅","香格里拉","香港","닷넷","닷컴","삼성","한국"]');function O_(e,a){return e.endsWith(a)?e.length===a.length||e[e.length-a.length-1]===".":!1}function q_(e,a){const s=e.length-a.length-2,r=e.lastIndexOf(".",s);return r===-1?e:e.slice(r+1)}function B_(e,a,s){if(s.validHosts!==null){const u=s.validHosts;for(const f of u)if(O_(a,f))return f}let r=0;if(a.startsWith("."))for(;r<a.length&&a[r]===".";)r+=1;return e.length===a.length-r?null:q_(a,e)}function P_(e,a){return e.slice(0,-a.length-1)}const Qp=/[\t\n\r]/g;let vh=!1;function Bb(e){return e>=97&&e<=122||e>=48&&e<=57||e>127||e>=65&&e<=90||e===45||e===95}function Pb(e,a,s){const r=s-a,u=e.charCodeAt(a)|32;if(r===2)return u===119&&(e.charCodeAt(a+1)|32)===115?1:0;if(r===3){const f=e.charCodeAt(a+1)|32,g=e.charCodeAt(a+2)|32;return u===119&&f===115&&g===115||u===102&&f===116&&g===112?1:0}else if(r===4){const f=e.charCodeAt(a+1)|32,g=e.charCodeAt(a+2)|32,b=e.charCodeAt(a+3)|32;return u===104&&f===116&&g===116&&b===112?1:u===102&&f===105&&g===108&&b===101?2:0}else if(r===5)return u===104&&(e.charCodeAt(a+1)|32)===116&&(e.charCodeAt(a+2)|32)===116&&(e.charCodeAt(a+3)|32)===112&&(e.charCodeAt(a+4)|32)===115?1:0;return 0}function kl(e,a,s=!1){let r=0,u=e.length,f=!1,g=!1;if(vh=!1,!a){if(e.startsWith("data:"))return null;for(;r<e.length&&e.charCodeAt(r)<=32;)r+=1;for(;u>r+1&&e.charCodeAt(u-1)<=32;)u-=1;if(e.charCodeAt(r)===47&&e.charCodeAt(r+1)===47)r+=2;else{const G=e.indexOf(":/",r);if(G!==-1){const K=Pb(e,r,G);if(K===1)for(g=!0,r=G+2;e.charCodeAt(r)===47||e.charCodeAt(r)===92;)r+=1;else if(K===2){g=!0,r=G+1;let te=0;for(;(e.charCodeAt(r)===47||e.charCodeAt(r)===92)&&te<2;)r+=1,te+=1;if(te<2)return null}else{for(let te=r;te<G;te+=1){const Q=e.charCodeAt(te)|32;if(!(Q>=97&&Q<=122||Q>=48&&Q<=57||Q===46||Q===45||Q===43)){const re=e.charCodeAt(te);return re===9||re===10||re===13?kl(e.replace(Qp,""),a,s):null}}if(e.charCodeAt(G+2)===47)r=G+3;else return null}}else if(e.charCodeAt(r)!==91){let K=-1;for(let te=r;te<u;te+=1){const Q=e.charCodeAt(te);if(Q===9||Q===10||Q===13)return kl(e.replace(Qp,""),a,s);if(Q===58){K=te;break}if(Q===47||Q===92||Q===63||Q===35)break}if(K!==-1){let te=!1;for(let Q=K+1;Q<u;Q+=1){const re=e.charCodeAt(Q);if(re===47||re===92||re===63||re===35)break;if(re===64){te=!0;break}}if(!te){let Q=!0,re=K+1;for(;re<u;re+=1){const W=e.charCodeAt(re);if(W===47||W===92||W===63||W===35)break;if(W<48||W>57){Q=!1;break}}if(re===K+1&&(Q=!1),!Q){const W=Pb(e,r,K);if(W===0){let oe=!1;for(let H=K+1;H<u;H+=1){const $=e.charCodeAt(H);if($===47||$===92||$===63||$===35)break;if($===58){oe=!0;break}}if(!oe)return null}else if(g=!0,r=K+1,W===2){let oe=0;for(;(e.charCodeAt(r)===47||e.charCodeAt(r)===92)&&oe<2;)r+=1,oe+=1;if(oe<2)return null}else for(;e.charCodeAt(r)===47||e.charCodeAt(r)===92;)r+=1}}}}}let v=-1,k=-1,S=-1,A=-1,N=!1,E=s,Z=r-1,_=-1;if(s&&r<u){const G=e.charCodeAt(r);(!(Bb(G)||G===46||G===95)||G===45)&&(E=!1)}for(let G=r;G<u;G+=1){const K=e.charCodeAt(G);if(K<64)if(K===47||K===35||K===63){u=G;break}else K===58?(A===-1&&(A=G),S=G):K===9||K===10||K===13?N=!0:s&&(K===46?((G-Z>64||_===46||_===45)&&(E=!1),Z=G):(K<48||K>57)&&(K!==45||_===46)&&(E=!1));else if(g&&K===92){u=G;break}else K===64?(v=G,A=-1):K===93?k=G:K>=65&&K<=90?f=!0:s&&!Bb(K)&&(E=!1);s&&(_=K)}if(N)return kl(e.replace(Qp,""),a,s);if(v!==-1&&v>=r&&v<u&&(r=v+1),e.charCodeAt(r)===91)return k!==-1?e.slice(r+1,k).toLowerCase():null;if(S!==-1&&S>r&&S<u&&A===S&&(u=S),r>=u)return null;s&&E&&v===-1&&S===-1&&k===-1&&e.charCodeAt(u-1)!==46&&u-r<=255&&u-Z-1<=63&&_!==45&&(vh=!0)}for(;u>r+1&&e.charCodeAt(u-1)===46;)u-=1;const b=r!==0||u!==e.length?e.slice(r,u):e;return f?b.toLowerCase():b}function M_(e){if(e.length<7||e.length>15)return!1;let a=0;for(let s=0;s<e.length;s+=1){const r=e.charCodeAt(s);if(r===46)a+=1;else if(r<48||r>57)return!1}return a===3&&e.charCodeAt(0)!==46&&e.charCodeAt(e.length-1)!==46}function I_(e){if(e.length<3)return!1;let a=e.startsWith("[")?1:0,s=e.length;if(e[s-1]==="]"&&(s-=1),s-a>39)return!1;let r=!1;for(;a<s;a+=1){const u=e.charCodeAt(a);if(u===58)r=!0;else if(!(u>=48&&u<=57||u>=97&&u<=102||u>=65&&u<=70))return!1}return r}function V_(e){return I_(e)||M_(e)}const L_=["test","localhost","invalid","example","example.com","example.net","example.org","local","onion","alt","home.arpa","ipv4only.arpa","resolver.arpa","service.arpa","6tisch.arpa","eap.arpa"];function U_(e){for(const a of L_)if(e.endsWith(a)&&(e.length===a.length||e.charCodeAt(e.length-a.length-1)===46))return!0;return!1}function Mb(e){return e>=97&&e<=122||e>=48&&e<=57||e>127}function Ib(e){if(e.length>255||e.length===0||!Mb(e.charCodeAt(0))&&e.charCodeAt(0)!==46&&e.charCodeAt(0)!==95)return!1;let a=-1,s=-1;const r=e.length;for(let u=0;u<r;u+=1){const f=e.charCodeAt(u);if(f===46){if(u-a>64||s===46||s===45)return!1;a=u}else if(!(Mb(f)||f===45||f===95)||f===45&&s===46)return!1;s=f}return r-a-1<=63&&s!==45}function N2({allowIcannDomains:e=!0,allowPrivateDomains:a=!1,detectIp:s=!0,detectSpecialUse:r=!1,extractHostname:u=!0,mixedInputs:f=!0,validHosts:g=null,validateHostname:b=!0}){return{allowIcannDomains:e,allowPrivateDomains:a,detectIp:s,detectSpecialUse:r,extractHostname:u,mixedInputs:f,validHosts:g,validateHostname:b}}const G_=N2({});function $_(e){return e===void 0?G_:N2(e)}function K_(e,a){return a.length===e.length?"":e.slice(0,-a.length-1)}function H_(){return{domain:null,domainWithoutSuffix:null,hostname:null,isIcann:null,isIp:null,isPrivate:null,isSpecialUse:null,publicSuffix:null,subdomain:null}}function _2(e){e.domain=null,e.domainWithoutSuffix=null,e.hostname=null,e.isIcann=null,e.isIp=null,e.isPrivate=null,e.isSpecialUse=null,e.publicSuffix=null,e.subdomain=null}function z2(e,a,s,r,u){const f=$_(r);if(typeof e!="string")return u;let g=!1;return f.extractHostname?f.mixedInputs?(g=Ib(e),u.hostname=kl(e,g,f.validateHostname)):u.hostname=kl(e,!1,f.validateHostname):u.hostname=e,f.detectIp&&u.hostname!==null&&(u.isIp=V_(u.hostname),u.isIp)?u:f.validateHostname&&f.extractHostname&&u.hostname!==null&&!(g&&u.hostname===e)&&!vh&&!Ib(u.hostname)?(u.hostname=null,u):(a===0||u.hostname===null||(a===5&&f.detectSpecialUse&&(u.isSpecialUse=U_(u.hostname)),s(u.hostname,f,u),a===2||u.publicSuffix===null)||(u.domain=B_(u.publicSuffix,u.hostname,f),a===3||u.domain===null)||(u.subdomain=K_(u.hostname,u.domain),a===4)||(u.domainWithoutSuffix=P_(u.domain,u.publicSuffix)),u)}function Q_(e,a,s){if(!a.allowPrivateDomains&&e.length>3){const r=e.length-1,u=e.charCodeAt(r),f=e.charCodeAt(r-1),g=e.charCodeAt(r-2),b=e.charCodeAt(r-3);if(u===109&&f===111&&g===99&&b===46)return s.isIcann=!0,s.isPrivate=!1,s.publicSuffix="com",!0;if(u===103&&f===114&&g===111&&b===46)return s.isIcann=!0,s.isPrivate=!1,s.publicSuffix="org",!0;if(u===117&&f===100&&g===101&&b===46)return s.isIcann=!0,s.isPrivate=!1,s.publicSuffix="edu",!0;if(u===118&&f===111&&g===103&&b===46)return s.isIcann=!0,s.isPrivate=!1,s.publicSuffix="gov",!0;if(u===116&&f===101&&g===110&&b===46)return s.isIcann=!0,s.isPrivate=!1,s.publicSuffix="net",!0;if(u===101&&f===100&&g===46)return s.isIcann=!0,s.isPrivate=!1,s.publicSuffix="de",!0}return!1}const Vs=new Uint8Array([1,2,1,1,1,1,1,1,1,1,1,1,0,2,2,2,0,2,2,0,2,0,0,1,0,0,2,1,1,1,1,1,1,0,0,0,1,0,1,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,0,1,0,1,1,0,1,1,0,0,0,0,0,0,1,1,1,0,2,0,0,0,0,0,0,0,2,0,2,2,0,0,2,2,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,2,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,2,0,0,0,0,2,0,0,0,0,0,0,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,2,2,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,0,1,0,2,2,0,0,0,2,0,1,1,0,2,0,2,2,0,1,1,1,1,1,1,1,1,0,1,1,1,0,1,1,1,1,0,0,0,0,1,0,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,1,2,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,2,2,0,2,2,0,0,0,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,0,2,0,2,2,2,2,0,0,0,0,2,0,0,0,0,0,0,2,2,0,0,0,2,2,1,1,1,1,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,2,2,0,0,2,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,2,2,1,2,1,1,1,2,1,1,1,1,1,0,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,0,1,1,1,1,1,2,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,0,0,0,0,0]),qu=new Uint16Array([0,0,0,10,11,18,106,111,117,124,130,136,145,146,147,148,149,150,151,153,154,155,157,159,226,239,241,242,243,258,265,266,269,270,271,274,276,295,296,298,307,312,313,331,332,335,337,338,340,374,375,377,380,381,385,387,391,394,426,429,442,443,451,452,454,464,478,479,480,489,490,527,532,548,568,574,615,616,643,670,671,819,825,828,829,830,835,840,849,871,872,873,874,875,876,877,895,897,898,901,903,904,906,908,923,938,943,944,946,947,948,949,950,952,955,960,961,962,964,965,968,971,972,973,986,988,1e3,1011,1019,1021,1061,1064,1068,1069,1071,1074,1085,1087,1097,1099,1105,1107,1108,1110,1113,1114,1115,1167,1169,1171,1191,1192,1193,1194,1196,1207,1238,1249,1261,1270,1277,1282,1295,1306,1319,1320,1331,1365,1366,1367,1382,1397,1469,1470,1472,1473,1507,1508,1509,1512,1516,1518,1547,1548,1556,1557,1558,1560,1562,1563,1565,1566,1567,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1594,1595,1596,1598,2053,2056,2057,2059,2066,2073,2083,2087,2098,2099,2100,2112,2113,2115,2117,2118,2125,2126,2128,2129,2131,2132,2133,2134,2135,2209,2211,2232,2233,2234,2236,2262,2263,2314,2315,2317,2324,2330,2340,2350,2403,2404,2405,2415,2429,2430,2433,2440,2441,2449,2450,2451,2452,2453,2464,2465,2466,2468,2469,2470,2471,2473,2483,2495,2501,2533,2537,2539,2540,2542,2543,2554,2555,2557,2565,2572,2578,2583,2584,2590,2593,2599,2606,2607,2614,2622,2623,2624,2662,2668,2683,2684,2689,2707,2738,2756,2758,2761,2769,2771,2778,2830,2854,2855,2856,2857,2858,2859,2860,2861,2868,2869,2870,2871,2872,2873,2875,2876,2880,2964,2977,2978,3414,3418,3432,3484,3512,3534,3592,3614,3629,3692,3743,3781,3817,3842,3984,4030,4081,4100,4134,4149,4169,4199,4230,4253,4284,4314,4346,4373,4448,4470,4508,4518,4552,4571,4597,4639,4689,4715,4784,4785,4787,4810,4833,4869,4900,4917,4974,4987,5011,5040,5042,5076,5092,5120,5425,5434,5443,5450,5467,5471,5477,5516,5518,5525,5532,5541,5548,5549,5560,5563,5578,5579,5588,5589,5598,5607,5613,5615,5616,5617,5653,5654,5656,5664,5671,5684,5688,5690,5691,5697,5704,5718,5728,5733,5741,5749,5755,5756,5760,5762,5763,5775,5776,5777,5778,5780,5781,5784,5786,5789,5793,5794,5800,5801,5802,5804,5806,5808,5809,5810,5813,5815,5818,5819,5821,6019,6026,6027,6037,6042,6059,6073,6082,6083,6084,6088,6089,6091,6093,6099,6100,6103,6104,6106,6107,6108,7008,7009,7013,7031,7040,7043,7050,7051,7053,7054,7055,7057,7109,7110,7113,7114,7231,7232,7243,7254,7261,7264,7273,7274,7275,7290,7345,7536,7538,7539,7541,7546,7559,7574,7581,7590,7593,7596,7603,7611,7615,7616,7617,7631,7635,7644,7645,7646,7650,7685,7686,7703,7710,7718,7719,7724,7732,7776,7777,7783,7786,7797,7802,7803,7806,7839,7840,7846,7853,7854,7863,7872,7887,7891,7943,7944,7949,7951,7954,7956,7957,7958,7967,7981,7989,8003,8015,8016,8018,8020,8042,8053,8059,8060,8072,8084,8171,8183,8185,8194,8197,8203,8228,8231,8232,8233,8235,8238,8241,8252,8254,8256,8284,8358,8365,8369,8370,8379,8401,8402,8407,8408,8487,8489,8491,8500,8504,8510,8516,8522,8532,8537,8538,8556,8567,8572,8577,8587,8593,8597,8603,8609,10217,10218,10219,10226,10228]),Bu=new Uint8Array([3,3,3,3,3,3,3,3,5,8,8,2,2,3,3,3,3,3,8,5,5,5,5,5,3,3,5,5,9,12,19,8,19,8,11,9,9,8,7,7,6,8,9,16,10,7,7,11,8,6,6,9,7,11,7,14,4,4,4,4,4,4,10,7,6,6,6,6,10,10,6,10,10,22,11,9,10,10,10,9,10,8,7,7,7,8,21,13,11,11,9,10,9,13,10,8,8,9,12,9,7,10,7,7,13,7,3,3,3,3,3,2,3,3,3,3,3,3,3,3,3,3,8,6,3,3,3,3,3,3,2,5,3,3,3,7,2,2,2,2,2,2,3,3,3,1,1,7,8,5,2,2,7,2,2,1,4,1,11,9,9,5,5,8,5,5,5,5,5,5,5,3,3,3,3,3,5,11,9,9,13,7,14,7,6,6,6,7,6,6,6,6,6,10,7,11,9,4,4,4,4,4,4,6,6,6,6,6,8,7,10,9,9,9,8,9,8,10,6,9,9,8,10,10,7,8,1,9,10,12,12,12,10,9,9,10,10,9,9,1,1,5,3,3,3,3,3,3,3,3,3,3,3,3,6,6,6,4,3,3,3,7,4,4,4,3,3,6,7,3,4,1,2,2,2,6,1,2,2,2,2,2,12,5,3,8,9,13,4,4,13,9,9,11,7,3,12,9,2,2,2,3,3,3,3,3,8,2,2,3,3,3,3,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,4,4,3,7,10,15,7,15,15,20,15,9,10,10,12,14,14,14,12,12,12,12,12,14,14,10,10,10,10,14,9,9,9,10,14,14,14,13,13,9,9,9,9,9,9,7,8,6,8,8,6,8,13,8,8,6,13,8,11,13,8,6,13,8,6,9,10,10,12,14,14,14,12,12,12,12,14,14,10,10,10,10,9,9,9,10,14,14,11,13,13,9,9,9,9,9,9,2,6,9,2,2,3,3,3,3,3,3,3,3,3,4,4,4,2,3,3,3,3,3,3,7,7,2,3,2,2,5,3,3,3,3,3,3,4,2,2,2,2,2,2,3,3,3,3,3,3,3,4,5,7,2,2,12,8,10,8,10,7,18,4,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,5,2,2,3,3,3,5,5,3,8,8,6,8,6,6,4,6,7,7,7,10,11,2,5,5,3,3,3,3,3,3,5,5,6,11,10,7,7,7,4,4,4,2,3,3,3,3,3,2,7,5,5,3,3,3,3,3,3,3,3,7,7,7,11,7,6,9,6,6,8,10,8,6,8,13,4,4,4,4,4,10,8,11,8,8,8,10,10,7,10,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,2,2,2,2,2,2,5,5,5,5,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,7,10,13,7,8,7,11,8,8,6,9,8,8,6,6,6,8,8,6,6,6,6,6,9,7,6,4,4,4,4,4,4,4,6,6,6,9,7,8,10,8,8,2,3,3,3,3,3,2,8,9,9,2,2,2,3,3,3,2,3,3,3,9,2,2,3,3,3,3,3,3,5,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,12,5,5,3,5,4,2,3,2,4,3,9,2,2,2,2,2,5,5,3,8,8,13,6,10,9,4,7,9,11,2,3,7,3,3,4,1,3,4,2,9,3,3,12,5,3,7,10,10,7,4,4,6,14,7,9,7,13,2,2,2,2,2,2,3,3,3,3,3,8,15,4,4,2,3,3,3,7,4,9,9,2,3,3,3,5,3,2,2,7,2,7,6,6,7,2,4,2,2,2,2,2,2,8,8,8,9,5,2,3,3,3,3,3,3,10,7,4,4,4,4,3,4,2,3,3,3,3,3,10,7,4,4,4,4,2,3,3,3,3,10,7,4,4,4,4,3,9,6,6,6,9,13,9,2,2,2,8,7,9,5,3,3,3,5,5,12,9,10,7,8,7,6,8,6,11,12,7,9,10,4,4,7,8,11,6,7,9,8,7,10,8,9,15,7,8,5,4,7,2,3,3,3,2,14,10,2,14,10,2,14,3,9,13,13,10,14,16,17,11,2,14,2,14,3,9,13,10,14,16,17,11,14,10,14,2,7,3,10,7,14,10,2,14,10,9,9,17,6,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,10,10,10,12,9,4,10,11,8,8,8,7,9,5,3,3,3,3,3,3,3,3,5,8,4,4,4,4,4,4,6,16,3,3,14,3,14,2,14,9,13,10,10,14,16,17,11,6,9,10,10,12,14,14,14,12,12,12,12,14,14,10,10,10,10,14,9,9,9,10,14,14,14,9,9,9,9,9,9,2,14,9,13,10,10,14,16,17,11,6,2,14,9,17,13,10,10,14,16,17,11,6,2,14,9,13,10,14,16,17,11,2,14,9,13,10,16,11,2,14,10,19,7,2,14,9,13,10,19,10,7,14,16,17,11,6,2,14,9,13,10,19,7,14,16,17,11,2,14,9,13,17,13,10,10,14,16,17,11,6,3,2,14,9,13,10,10,14,16,17,11,6,9,10,12,14,14,14,12,12,12,12,12,14,14,14,10,10,10,14,9,9,9,9,14,14,14,13,13,14,9,9,9,9,9,9,4,11,2,14,9,13,17,13,10,19,10,7,14,16,17,11,6,2,14,9,13,17,13,10,19,10,7,14,16,17,11,6,2,9,10,10,7,17,3,3,12,12,16,15,15,12,14,14,14,20,20,13,12,12,12,12,12,12,20,25,14,14,12,12,10,10,10,10,9,9,9,25,4,9,17,10,7,14,16,21,13,13,14,20,14,13,17,24,9,12,13,25,13,21,20,17,9,9,9,9,9,9,12,17,4,4,9,9,9,10,10,12,14,14,14,12,12,12,12,12,14,14,10,10,10,10,14,9,9,9,10,14,14,14,13,13,9,9,9,9,9,9,1,8,7,11,11,1,3,3,3,4,8,9,10,14,14,12,12,12,12,14,14,10,10,10,10,14,9,9,9,10,14,14,14,13,13,9,9,9,9,9,7,4,4,4,4,4,4,4,4,4,4,9,12,6,14,4,12,7,2,2,1,2,7,6,4,4,4,6,8,8,7,4,5,6,3,3,3,3,4,16,8,3,5,4,3,3,3,5,2,2,8,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,11,12,7,7,13,9,10,12,8,9,7,8,5,12,10,13,14,5,5,5,13,5,5,5,3,3,3,5,16,5,5,5,5,5,7,12,14,8,12,8,10,12,9,11,7,9,7,10,7,13,9,7,12,8,17,7,7,16,10,13,13,8,10,10,14,17,7,16,16,15,8,10,10,12,17,7,17,14,7,10,17,8,7,7,7,8,15,15,7,14,10,10,10,11,11,7,7,13,8,10,7,16,7,8,7,14,17,12,10,11,21,8,9,7,13,9,8,13,6,12,7,6,13,10,10,10,8,18,9,17,13,10,12,6,13,6,11,8,13,10,13,18,13,11,13,8,16,7,10,8,16,12,10,8,8,6,14,11,8,15,8,8,7,7,12,7,8,9,14,15,8,9,10,9,15,7,8,8,12,13,9,10,15,15,13,7,10,10,20,7,6,9,6,6,14,11,14,11,12,9,10,16,16,12,7,11,28,8,11,10,7,21,8,7,9,4,4,4,17,7,8,6,9,6,6,13,6,6,6,6,18,20,14,8,11,12,9,10,13,15,19,8,9,12,7,10,16,12,9,9,9,14,12,11,9,12,11,18,9,9,9,10,7,7,16,8,9,7,13,12,10,18,7,8,11,7,7,8,8,13,7,7,7,11,15,13,11,7,8,15,11,7,8,18,14,13,18,15,10,12,12,9,7,11,11,8,7,10,8,14,12,10,18,7,10,9,7,8,13,10,14,9,10,8,8,23,7,7,11,12,12,17,7,7,11,11,17,16,16,7,8,11,14,14,8,10,7,7,16,16,13,9,11,9,15,15,11,11,7,7,14,7,9,7,7,16,10,13,10,11,14,7,11,10,11,7,11,10,11,15,11,15,10,12,17,10,14,13,11,11,12,13,10,7,13,10,16,12,21,9,10,10,7,11,14,17,7,7,8,11,12,8,15,14,14,8,17,12,10,10,7,9,11,7,10,7,11,18,7,11,7,12,11,8,8,14,12,7,8,15,3,7,7,5,2,9,2,2,2,2,2,2,2,3,3,3,3,3,3,3,2,5,3,3,3,3,3,3,4,4,3,3,3,3,3,3,5,11,6,4,7,10,7,7,11,1,10,2,2,3,3,3,3,3,3,3,3,5,7,3,5,6,3,3,5,2,2,5,3,4,13,11,3,3,6,3,5,14,2,2,3,8,2,2,12,5,18,5,3,3,3,16,5,5,5,10,7,13,12,13,9,12,14,19,9,9,21,9,9,10,6,9,6,15,10,6,12,8,6,10,15,4,4,6,6,9,9,12,16,14,23,7,7,7,14,9,7,7,11,14,10,7,10,10,10,12,6,11,10,13,11,15,11,7,12,10,3,7,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,4,3,7,2,5,5,3,3,5,5,5,5,7,6,6,6,4,4,4,4,4,4,6,6,6,6,6,7,10,2,2,2,5,5,5,5,3,3,3,3,3,5,5,10,9,11,8,7,12,8,9,7,6,13,11,6,13,7,9,9,4,4,4,4,4,4,6,10,7,8,13,8,8,9,14,8,10,7,7,7,9,6,9,7,2,12,5,3,3,13,4,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,3,3,3,3,4,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,8,4,4,4,4,4,4,4,4,4,4,4,4,9,3,3,3,3,3,3,3,3,3,3,4,2,2,2,5,3,3,3,3,3,3,3,3,4,4,1,7,6,4,12,3,3,3,3,3,8,7,3,3,3,3,3,3,4,4,11,14,2,8,3,5,5,8,10,8,6,4,7,17,7,4,5,2,6,3,5,2,4,4,2,12,5,5,3,15,13,10,8,11,2,2,3,3,3,3,3,3,3,3,4,4,5,3,3,3,3,4,18,2,12,5,3,3,3,3,3,5,16,8,8,9,6,6,4,4,4,4,31,6,6,10,11,21,10,9,7,10,7,7,2,4,4,4,4,6,5,3,3,4,3,3,3,3,3,3,3,3,3,6,6,6,2,2,2,5,3,3,3,7,7,4,3,3,3,3,3,3,3,3,3,3,3,3,3,2,3,3,3,3,8,2,3,3,3,3,3,5,9,11,3,3,3,3,4,4,3,3,3,3,3,5,10,9,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,2,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,11,10,10,10,10,10,11,10,11,10,11,10,9,9,11,3,3,3,3,3,3,5,3,7,8,8,7,6,6,11,4,4,4,7,8,9,9,2,3,7,4,4,2,5,5,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,2,2,5,5,5,5,5,3,3,5,5,5,7,7,6,6,6,4,4,4,4,4,4,4,4,4,4,6,6,8,8,1,2,2,2,2,2,2,3,3,3,3,3,3,3,4,4,6,9,12,3,7,10,7,2,2,3,3,3,3,3,4,3,3,2,2,2,2,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,8,8,6,6,8,6,7,4,4,4,4,4,4,6,7,5,5,20,19,8,10,9,7,10,6,8,11,6,6,6,6,13,12,8,6,7,14,11,9,2,5,3,3,6,2,3,2,2,2,2,2,2,2,5,4,3,7,6,4,7,4,3,6,4,7,2,7,7,7,5,5,5,5,3,3,3,3,3,3,3,3,3,3,5,9,10,10,8,11,7,8,20,7,8,9,8,12,6,6,6,8,9,8,12,6,6,8,13,10,12,6,6,7,7,8,9,6,4,4,4,4,4,4,4,10,6,6,6,7,14,11,10,7,8,10,8,11,14,11,11,9,7,9,8,11,9,17,10,9,2,2,2,9,3,3,3,3,15,14,9,5,5,2,8,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,15,12,22,19,17,18,18,19,21,7,16,16,5,5,5,5,5,5,5,5,5,5,5,7,5,5,5,5,5,5,5,5,5,5,5,9,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,7,16,11,11,7,7,7,7,17,7,8,12,15,9,19,7,19,8,16,21,11,12,19,14,22,7,7,7,7,7,7,7,7,7,7,7,16,16,19,24,12,7,14,7,12,7,8,10,10,13,7,12,12,7,7,10,18,15,12,16,7,14,12,17,10,16,17,12,17,25,7,7,7,13,6,9,6,9,18,6,6,11,20,10,6,6,6,6,6,6,6,17,6,6,6,15,6,6,6,6,6,8,14,11,12,15,13,19,17,21,7,18,8,13,13,8,12,8,6,6,13,6,15,15,16,6,6,16,6,6,6,14,6,18,6,6,6,17,18,9,13,15,8,19,8,15,15,18,14,16,4,4,4,4,4,4,4,4,4,4,4,4,6,11,10,11,6,21,23,12,17,12,11,14,13,22,15,15,11,12,14,12,7,12,8,14,12,18,10,8,16,19,17,12,14,15,8,9,19,17,12,13,13,15,18,13,23,24,23,21,17,24,8,21,8,14,14,16,14,8,8,15,20,8,19,21,9,8,13,12,13,15,11,8,11,9,9,8,11,8,21,14,21,15,15,13,7,19,7,7,7,7,7,7,16,12,17,18,7,7,11,11,7,9,9,2,2,3,3,2,2,2,3,3,3,3,3,3,3,3,3,3,4,5,5,5,5,5,5,5,5,3,3,10,10,7,9,7,7,7,6,8,6,6,6,6,6,6,6,7,6,8,6,6,9,7,7,7,4,4,4,4,4,4,4,4,8,9,8,7,8,7,8,10,7,5,5,5,5,5,5,3,9,7,7,8,6,6,6,6,6,6,6,6,9,6,6,9,11,13,7,8,9,9,5,5,5,7,8,6,6,6,6,6,6,6,7,8,9,7,10,9,10,7,8,5,5,5,5,5,5,7,7,9,8,7,7,6,6,6,6,6,6,10,6,6,6,6,6,6,6,6,6,6,6,9,10,4,4,4,4,8,7,7,10,10,9,8,8,15,9,8,8,8,8,8,9,10,9,10,7,8,13,5,5,5,5,5,3,3,7,7,8,6,6,6,4,4,11,9,7,8,9,10,7,5,5,5,5,5,3,3,7,6,6,13,7,9,8,7,5,5,5,5,5,5,5,5,3,3,3,3,7,8,7,8,13,6,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,6,6,6,6,7,6,7,6,6,9,7,4,4,4,4,4,4,4,7,8,7,8,9,8,8,8,7,10,7,8,5,5,5,5,5,5,5,5,3,7,7,7,7,9,7,10,9,6,6,6,6,6,8,8,6,6,6,7,6,6,6,9,9,4,4,13,7,10,9,9,12,7,8,8,10,8,8,8,8,8,8,5,5,5,5,3,7,7,11,7,9,8,8,6,6,10,6,8,8,8,6,7,6,6,12,4,4,4,4,4,4,4,4,4,9,8,8,16,8,9,8,7,5,5,5,5,5,3,3,7,7,7,10,15,8,9,8,9,9,6,6,6,6,6,6,7,4,8,7,8,8,7,8,11,8,5,5,5,5,5,3,7,7,6,11,16,7,6,4,4,4,4,9,9,8,8,8,13,12,8,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,11,7,8,8,9,13,7,7,7,9,8,8,9,12,7,12,7,12,8,7,10,12,9,9,6,6,8,8,6,6,6,6,6,6,6,9,8,9,11,8,6,6,6,6,6,12,7,6,6,6,9,7,7,6,6,6,6,6,11,9,6,6,6,6,6,7,9,4,4,4,4,4,4,4,4,9,9,9,9,7,7,7,7,7,11,7,7,8,8,8,8,8,8,9,8,9,9,7,7,11,11,7,12,8,8,8,8,8,7,8,8,8,8,8,13,12,8,8,8,8,7,7,7,9,5,5,5,5,5,5,5,3,3,7,7,11,7,8,8,8,6,6,6,6,6,6,6,6,6,6,6,10,11,6,7,9,4,4,4,4,4,4,9,9,8,9,8,8,8,7,7,5,5,5,5,5,5,5,5,5,5,3,3,11,7,7,7,9,6,6,11,8,10,6,6,6,12,8,8,7,6,6,8,7,4,4,4,4,4,4,4,4,9,10,9,9,8,10,9,11,8,5,5,5,7,6,6,8,7,4,4,4,4,8,7,7,8,7,8,8,5,5,5,5,7,7,8,8,8,6,6,6,6,6,10,8,9,13,6,7,6,6,8,7,8,4,4,4,4,11,8,8,8,10,5,5,8,7,8,13,8,7,6,8,6,9,7,8,7,5,5,5,5,5,5,3,3,7,8,9,6,4,8,10,10,8,12,9,13,2,7,5,5,5,5,5,7,7,10,6,6,6,6,6,6,6,8,4,4,9,8,8,8,14,8,8,8,9,8,5,5,5,5,5,3,3,9,6,6,6,6,10,12,6,6,6,6,6,6,6,4,4,4,4,11,8,7,8,8,8,5,5,3,3,3,3,7,7,6,8,6,8,11,7,6,6,6,7,4,8,11,9,10,5,5,5,3,3,3,7,7,8,9,8,15,9,6,6,6,6,6,6,11,11,4,4,4,4,4,7,9,9,10,8,7,5,5,5,5,5,5,3,3,8,6,6,6,6,6,6,6,6,6,9,7,4,4,4,4,4,9,9,8,8,10,13,5,5,5,3,17,7,7,7,7,7,8,6,8,13,6,6,6,6,6,6,6,6,4,4,4,9,10,8,8,8,5,5,5,5,3,7,7,7,8,8,6,6,6,8,8,8,9,10,8,4,8,10,9,8,8,8,9,13,10,5,5,5,5,5,5,5,5,5,5,3,3,7,8,9,9,7,7,7,10,9,9,8,9,8,8,8,6,6,6,6,6,6,6,6,6,6,6,6,6,8,12,6,6,6,6,6,6,6,6,6,12,4,4,4,4,4,4,4,4,4,4,4,11,8,8,9,9,10,8,9,7,7,5,5,5,5,5,5,3,7,8,7,6,6,8,6,6,10,4,7,8,9,12,8,7,7,5,5,5,5,5,5,3,3,7,14,7,9,8,8,6,6,8,12,12,6,6,7,7,10,4,4,4,4,4,9,9,14,9,13,8,7,5,5,5,6,6,6,7,4,8,7,5,5,5,5,5,5,5,5,3,3,7,7,7,8,6,6,6,6,6,6,12,6,6,6,6,4,4,9,9,8,8,11,7,7,7,5,5,5,3,9,8,6,6,7,4,4,4,4,4,4,8,8,11,5,5,5,7,7,7,9,6,6,6,6,6,6,9,8,4,4,4,4,7,12,9,8,8,8,7,10,10,5,5,5,5,5,5,5,3,11,14,8,7,8,8,6,6,6,6,6,8,7,6,6,6,7,6,8,9,4,4,4,7,8,9,7,9,7,7,9,8,5,5,5,5,5,5,5,5,5,11,3,9,7,7,12,14,8,6,6,12,11,8,6,6,6,6,6,6,6,6,6,15,7,4,4,4,16,9,9,9,8,9,9,9,9,9,8,8,8,13,11,8,5,5,5,5,3,7,6,6,8,8,8,6,6,7,10,7,4,4,4,4,9,7,8,7,7,7,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,7,7,7,9,6,6,6,6,6,8,8,7,7,9,6,6,6,7,6,6,6,6,6,15,4,4,4,4,4,8,8,7,8,12,9,8,8,8,8,8,9,8,8,10,8,8,8,8,16,9,10,2,5,5,5,5,5,5,5,9,7,6,8,9,4,4,4,4,4,7,8,8,8,9,8,11,10,5,5,5,5,3,7,8,6,6,6,6,6,8,6,6,6,6,4,12,10,12,7,7,7,7,7,7,7,5,5,5,5,3,3,7,7,10,8,9,7,6,10,7,6,6,4,4,8,9,7,9,9,9,9,8,8,8,8,10,5,5,5,5,5,5,8,7,6,6,6,10,6,7,10,7,4,4,4,4,4,4,4,12,9,10,7,7,10,8,10,5,12,9,6,6,6,6,6,7,6,4,4,4,10,9,9,8,7,7,5,5,5,5,5,5,3,3,13,7,7,9,7,7,7,8,9,9,7,8,6,6,6,6,6,6,6,6,6,6,6,6,6,7,13,9,15,15,4,4,4,4,4,10,10,9,8,9,8,8,9,7,8,7,8,5,5,7,6,6,6,4,4,4,7,8,11,8,5,5,5,5,5,5,5,7,6,6,6,6,6,6,9,11,10,7,4,4,4,9,8,8,5,5,5,5,5,9,9,6,6,6,6,6,6,6,9,9,4,4,4,4,8,8,8,9,9,8,8,8,13,2,4,2,7,5,5,5,5,5,5,9,9,6,6,6,6,10,8,8,8,6,6,6,4,4,9,8,10,8,9,8,8,8,9,8,8,5,3,3,3,11,6,6,6,7,6,6,6,4,4,9,8,5,5,5,5,5,3,11,8,6,6,6,6,6,9,7,4,4,14,10,9,8,12,8,8,8,11,15,8,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,11,11,11,10,10,7,7,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,5,5,5,3,3,3,7,11,7,7,11,11,7,8,9,10,7,7,9,9,9,9,7,7,10,8,13,8,8,8,8,11,10,6,6,8,10,11,14,14,6,6,6,6,6,6,9,11,7,7,6,8,12,11,11,6,6,10,6,6,6,6,6,10,7,7,6,6,11,6,6,6,11,8,9,7,6,10,11,9,10,11,7,11,8,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,8,6,6,8,9,10,9,6,6,6,10,6,6,6,6,11,10,11,10,9,8,7,7,7,7,11,14,8,10,9,9,8,8,7,11,8,8,8,11,11,10,10,9,10,8,11,10,8,11,9,12,8,10,8,11,8,9,9,11,11,10,11,13,8,7,8,8,9,7,8,8,8,8,7,8,2,2,2,2,2,2,2,4,4,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,4,2,3,3,3,3,3,3,3,3,8,6,4,4,4,11,7,11,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,5,5,5,5,3,3,3,3,8,7,7,8,8,4,8,7,7,7,9,7,8,9,8,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,6,3,3,3,3,3,3,3,3,4,2,2,3,3,3,3,3,4,5,5,3,8,8,6,9,4,4,10,7,3,3,3,2,5,3,3,3,3,3,3,3,3,3,3,3,3,4,3,2,2,2,3,3,3,3,3,4,10,2,3,3,3,3,3,3,3,4,2,3,3,3,3,3,3,3,3,2,2,3,3,3,5,2,4,2,6,2,2,9,5,5,3,3,3,3,3,3,3,5,5,5,9,8,7,6,6,11,4,4,4,4,4,4,4,4,6,6,7,7,11,8,8,6,5,11,2,3,3,3,3,3,3,3,3,3,3,3,3,3,4,2,2,3,3,3,3,3,3,6,4,4,4,4,3,3,3,3,5,7,2,3,3,3,3,3,8,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,6,4,4,4,4,2,2,3,3,3,3,3,3,3,4,3,3,3,3,3,3,3,3,3,3,3,3,4,2,2,3,3,3,3,3,3,2,3,3,3,3,3,6,3,3,8,10,3,4,4,1,1,1,1,1,1,1,8,9,10,7,7,1,1,3,8,7,7,8,8,8,1,6,1,1,6,3,3,4,7,3,5,5,4,4,4,4,4,2,7,7,8,12,3,4,5,1,3,4,4,10,4,3,3,3,8,7,7,2,2,2,2,2,2,2,2,2,12,9,20,7,5,5,5,9,13,5,5,5,5,5,3,3,3,16,5,5,5,13,7,8,8,11,8,7,9,7,11,12,9,9,8,8,11,10,14,7,12,10,11,13,7,9,11,17,17,14,13,7,8,7,10,10,7,16,13,7,8,17,12,9,8,6,7,10,6,6,12,6,8,10,8,8,8,6,8,6,14,6,6,6,13,6,10,6,6,7,14,8,6,6,10,11,10,9,9,7,7,6,6,6,9,9,7,9,10,9,13,12,4,4,4,4,4,4,4,4,4,6,6,6,8,8,6,8,9,10,9,7,10,10,8,7,8,7,10,12,9,8,15,8,7,8,8,7,7,15,13,7,10,9,14,18,16,7,24,7,8,10,11,16,8,14,7,9,9,9,11,13,19,14,15,14,11,7,13,9,10,7,13,9,10,11,12,8,9,2,3,5,8,7,4,4,10,5,3,3,3,3,3,5,4,4,4,2,2,2,2,2,1,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,2,2,2,3,3,3,3,3,3,3,3,3,3,4,2,12,5,3,8,10,15,6,7,2,3,2,5,5,12,2,5,5,5,5,2,2,5,5,12,9,5,2,2,9,5,5,12,12,5,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,9,12,5,8,8,9,5,5,5,8,19,7,16,15,14,9,9,9,9,7,11,11,11,7,14,10,10,5,5,5,5,5,5,5,5,5,15,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,9,9,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,14,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,15,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,12,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,9,9,12,9,9,12,12,12,15,7,11,7,14,11,18,13,8,18,15,18,12,14,12,8,8,8,8,9,9,9,12,7,10,10,8,8,12,12,12,7,12,12,9,7,7,7,7,7,8,15,12,9,10,10,7,10,10,13,11,10,9,22,11,9,8,8,8,8,8,13,18,13,9,15,19,9,7,7,10,7,7,7,11,8,13,17,7,7,10,10,10,7,20,16,7,7,7,7,7,7,11,21,12,12,13,11,14,16,8,8,13,11,7,7,13,7,7,14,15,15,6,6,6,6,6,6,6,6,6,6,13,10,18,6,6,6,6,6,6,6,6,6,11,8,8,12,12,11,11,8,12,9,9,9,13,13,9,9,9,9,9,9,6,10,12,6,6,6,6,17,11,7,7,7,7,14,14,12,6,7,7,6,6,15,10,13,10,6,8,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,13,9,9,15,13,6,12,12,6,19,11,10,7,7,16,8,19,17,9,9,9,9,9,6,6,6,10,8,16,8,6,6,9,6,6,6,6,6,6,6,6,8,8,8,6,7,6,6,6,6,6,6,6,6,6,6,6,14,6,6,6,6,20,6,9,6,14,9,9,9,6,9,8,8,12,9,8,8,8,8,7,8,12,7,8,8,8,6,8,6,6,6,6,6,6,6,9,8,8,6,6,13,9,12,13,12,14,13,12,11,11,6,8,8,8,6,13,12,11,11,12,6,11,12,11,13,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,15,6,6,6,6,6,6,6,13,6,6,6,6,6,6,6,6,6,6,6,6,6,8,8,8,8,6,18,6,12,13,13,13,9,10,15,9,12,6,6,6,6,6,6,6,6,9,15,10,9,10,13,9,19,8,18,17,10,10,8,8,6,6,6,6,6,6,10,14,8,16,16,9,8,15,8,8,10,12,14,7,7,8,8,7,7,7,7,8,13,13,11,9,9,9,12,10,17,8,11,9,7,7,14,8,14,14,7,7,7,7,7,7,14,7,7,7,7,7,10,10,8,14,7,7,7,7,8,8,8,8,8,17,9,7,15,7,8,12,7,9,14,7,7,7,9,13,8,14,7,16,18,13,15,14,12,13,10,15,9,7,7,7,10,13,15,15,9,9,9,9,19,11,7,11,11,13,8,8,8,8,7,12,19,17,9,9,13,7,7,7,9,7,7,7,12,13,15,10,8,8,14,15,12,13,13,8,12,14,7,11,7,14,15,13,12,8,8,8,8,11,13,15,15,8,13,12,8,8,8,13,10,16,14,11,8,8,12,12,9,15,15,12,12,13,8,8,9,12,13,9,8,8,8,8,8,8,8,8,8,8,8,11,12,11,7,14,7,13,13,13,12,18,16,7,12,11,10,10,15,9,9,9,21,7,7,7,11,16,8,8,11,11,7,7,7,7,7,19,7,7,7,7,7,7,7,7,7,12,8,9,12,14,11,9,9,9,22,12,3,8,8,15,4,2,2,5,5,3,3,3,3,3,3,6,6,4,4,4,12,7,10,2,3,3,3,3,3,3,3,6,7,3,7,5,14,4,4,7,8,10,4,1,3,3,6,2,4,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,4,2,2,5,3,4,2,2,2,2,2,2,11,5,5,5,11,5,5,3,5,5,5,5,11,14,13,9,11,9,12,8,11,11,8,11,16,9,9,7,10,9,12,8,15,6,7,6,6,13,10,8,11,8,6,6,6,12,16,6,11,7,8,9,18,6,6,9,4,4,6,13,6,6,6,6,8,8,9,16,7,7,14,7,8,8,8,7,7,7,7,7,7,15,13,7,10,7,7,10,12,16,15,7,9,9,14,11,11,10,9,10,8,12,7,8,7,7,10,12,7,12,8,7,2,3,3,3,3,3,3,3,3,3,3,5,3,3,5,5,5,10,4,8,7,10,3,3,3,3,3,3,3,3,3,3,1,3,3,3,3,3,3,3,7,4,5,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,6,6,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,9,8,2,2,2,8,12,7,7,5,5,5,5,5,5,5,5,5,5,5,5,8,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,5,7,11,9,8,8,8,7,8,9,7,7,9,7,7,7,10,7,7,10,9,10,6,6,6,6,6,6,15,7,8,9,9,8,6,6,10,9,6,8,13,9,7,6,6,6,6,6,6,12,6,6,7,6,7,6,6,6,10,10,7,6,6,6,4,4,4,4,4,4,4,4,4,4,4,4,4,4,6,14,6,6,7,7,9,6,6,6,6,9,9,8,9,10,9,8,9,12,7,7,7,8,7,10,12,11,9,10,7,7,7,9,10,10,8,12,9,7,7,9,8,8,8,10,7,7,8,9,9,7,7,7,8,2,4,6,3,4,2,3,3,3,3,2,3,3,3,3,3,3,3,3,4,4,4,4,5,5,3,3,3,3,3,3,3,3,5,8,6,4,7,3,3,3,3,3,3,3,12,3,3,3,3,3,3,4,4,2,3,5,3,4,7,3,3,3,3,3,3,4,3,3,3,3,3,3,3,4,3,3,6,4,3,4,2,2,2,5,3,3,3,3,3,5,4,4,4,4,7,6,8,9,2,2,2,2,3,3,3,5,7,2,3,3,8,7,7,2,2,8,5,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,8,8,7,7,6,10,6,9,7,11,4,6,8,8,7,8,4,5,5,5,3,3,11,8,9,6,6,8,7,4,4,7,8,7,2,2,3,3,3,3,4,3,3,3,3,3,3,3,3,7,2,2,5,3,3,2,3,3,3,3,3,3,4,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,12,5,5,3,3,3,5,10,12,6,15,4,6,6,7,14,9,3,3,3,3,3,8,2,2,3,5,3,3,3,3,3,3,8,8,8,7,5,8,4,6,11,2,2,6,7,2,9,8,5,5,3,3,5,5,7,7,6,6,10,6,6,8,9,7,4,4,4,4,7,6,6,7,7,10,9,8,11,8,3,3,3,3,3,4,4,2,3,3,3,3,3,7,6,2,5,6,7,6,4,8,9,11,2,2,3,3,3,3,3,3,3,2,2,5,3,3,3,3,3,9,9,6,4,8,7,7,5,9,8,6,8,7,8,5,5,5,5,5,3,3,3,16,8,7,7,7,8,7,7,7,7,9,6,9,6,10,7,7,7,6,10,8,9,11,11,8,4,4,10,8,8,6,9,6,11,8,8,8,15,7,8,9,5,3,3,3,3,3,5,11,2,2,3,8,9,10,3,2,2,2,2,2,2,3,6,4,2,2,3,3,3,3,3,3,3,3,3,3,4,4,2,3,3,3,3,3,3,3,11,5,3,3,3,3,3,3,3,3,6,7,4,4,2,3,3,3,3,3,3,3,3,12,7,4,12,4,6,5,4,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,2,3,3,3,3,3,3,3,3,4,4,11,10,6,4,6,10,8,3,3,3,3,3,3,3,3,5,4,4,4,2,2,2,2,2,2,2,2,5,3,4,4,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,10,5,5,5,5,5,5,3,3,3,3,3,3,3,3,7,8,8,7,13,12,10,10,8,8,7,7,9,12,11,6,6,8,8,9,7,7,7,10,15,10,4,4,4,4,4,11,8,8,9,7,9,14,14,12,2,2,2,2,2,2,2,3,3,3,3,3,2,2,12,5,5,5,8,11,10,7,9,3,8,7,3,15,13,11,4,4,2,2,2,19,7,5,5,3,3,3,3,3,3,3,5,22,18,6,14,17,4,4,19,16,18,2,3,3,2,3,2,3,3,6,4,2,3,3,2,5,3,3,3,3,3,3,3,9,9,2,3,2,2,2,3,3,3,5,7,14,7,7,12,9,13,6,11,6,10,9,7,7,8,12,12,8,8,8,10,7,7,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,5,8,10,7,8,11,8,12,9,4,7,7,9,13,2,3,3,3,3,3,3,2,3,3,3,1,2,2,3,3,3,3,3,3,5,2,2,5,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,8,4,4,4,3,2,3,3,3,3,5,2,2,2,2,5,5,5,5,3,3,3,3,3,3,3,3,3,7,7,7,7,7,8,8,8,8,8,12,9,8,8,9,8,6,17,6,6,6,8,8,6,6,6,6,6,6,6,6,6,6,6,7,4,4,8,8,9,9,9,7,7,7,7,7,7,7,9,9,9,7,8,8,8,10,7,13,10,8,9,3,3,5,13,3,3,3,3,3,7,7,6,6,10,13,11,11,8,8,9,8,9,9,10,10,10,11,10,10,13,13,16,15,11,12,9,9,10,9,11,10,9,9,14,7,8,3,10,7,7,3,2,2,2,5,3,3,3,3,3,3,3,3,3,3,3,3,6,7,2,2,3,3,3,3,3,3,3,3,4,11,6,7,4,6,2,2,3,3,3,1,3,3,3,3,3,3,6,4,4,2,2,2,3,3,3,3,4,4,6,6,6,6,5,4,4,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,9,11,6,10,9,12,7,7,11,14,9,7,12,3,3,7,12,11,12,7,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,9,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,3,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,11,5,5,5,5,5,5,5,5,11,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,3,3,3,5,5,5,5,5,5,5,5,5,5,5,3,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,5,5,5,5,5,5,5,5,5,5,5,5,5,3,10,3,3,3,11,3,5,9,11,8,12,14,9,7,8,7,7,11,11,7,7,10,9,8,10,9,7,7,7,7,7,7,8,8,7,11,8,8,8,7,7,10,8,7,13,12,7,17,10,8,8,11,7,11,11,14,7,11,7,8,6,9,20,8,7,9,16,7,10,6,11,10,8,9,7,16,11,11,9,8,9,8,8,8,11,8,15,8,8,9,7,8,8,11,10,7,5,7,10,10,15,7,7,7,8,7,8,8,10,11,10,10,10,11,11,7,8,6,8,8,8,10,6,8,6,6,7,8,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,16,6,15,6,7,11,11,7,9,10,11,13,10,6,16,8,10,12,11,6,6,6,6,6,6,6,10,6,10,7,7,7,7,11,7,11,6,6,6,6,6,6,17,7,7,6,6,12,22,6,6,6,6,6,8,6,6,6,6,7,6,6,5,6,6,8,11,6,9,14,11,9,11,7,7,8,6,6,6,8,10,9,6,6,6,6,9,7,6,6,6,6,6,15,6,4,4,4,6,4,17,8,11,6,6,9,6,6,6,6,6,6,6,6,6,6,6,6,6,6,7,6,6,6,6,10,6,10,6,6,6,6,12,8,6,6,6,6,6,6,6,6,6,9,6,6,6,6,18,6,6,6,8,9,10,7,8,9,10,11,7,13,6,8,8,6,6,14,7,7,7,7,10,7,14,9,6,6,9,15,9,7,14,6,11,14,13,7,12,8,7,7,7,7,7,12,7,10,9,16,6,8,6,5,17,6,8,10,4,6,4,10,15,17,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,8,4,4,11,7,4,4,7,7,7,6,6,6,6,6,6,6,6,6,6,6,6,19,17,6,10,11,6,6,6,6,18,6,6,11,4,4,4,5,6,6,6,9,5,6,4,6,6,4,6,6,6,6,10,6,6,4,6,6,10,6,10,6,6,6,6,11,6,6,10,6,6,8,6,6,6,8,6,11,4,11,9,10,9,11,4,8,4,11,12,7,9,8,6,7,7,8,12,12,11,13,10,11,7,7,7,9,7,11,10,7,7,7,16,11,10,11,17,9,9,8,8,7,7,7,9,7,7,7,14,7,13,9,11,10,14,10,10,12,11,10,7,10,5,14,8,8,8,9,7,8,7,7,9,8,7,8,7,7,7,7,7,7,7,11,8,10,8,7,8,14,11,8,9,9,9,8,24,10,10,12,7,7,15,11,8,8,12,11,8,9,9,7,8,9,10,11,10,11,7,12,7,7,11,9,8,14,13,12,8,11,10,8,8,7,7,14,9,10,8,9,11,7,14,8,8,13,8,8,12,7,10,14,14,11,9,10,9,9,7,7,11,11,13,9,13,5,5,5,7,9,5,11,12,14,8,7,7,11,10,9,7,8,8,7,10,11,11,5,5,7,5,5,5,7,7,15,7,7,8,7,15,12,12,10,7,8,7,11,7,7,7,23,11,8,8,11,10,7,8,11,7,19,7,7,6,9,9,9,11,3,4,7,8,6,6,4,10,8,2,2]),Vb=new Uint16Array([0,0,0,1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,12,1,1,1,1,1,17,1,1,1,12,1,12,1,12,13,1,1,1,1,12,1,12,1,1,1,1,1,14,21,1,1,1,1,1,1,1,19,12,1,1,1,1,1,1,1,20,1,1,1,16,1,18,1,1,15,1,1,1,1,12,1,1,1,1,1,1,22,1,1,1,12,1,1,1,1,1,1,1,1,1,12,12,12,12,12,12,12,12,12,12,12,12,1,24,25,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,1,12,12,12,12,1,32,0,0,0,1,1,1,1,35,34,1,1,1,1,1,33,1,1,1,1,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,38,0,0,0,0,39,40,0,0,0,41,0,12,1,1,12,1,1,1,1,44,45,45,45,44,45,44,44,46,45,44,45,44,44,44,44,44,44,46,44,44,44,44,44,44,45,47,47,45,44,44,44,44,44,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,50,52,50,50,50,52,50,51,50,53,50,51,51,50,50,50,51,53,51,53,50,51,51,12,55,55,54,56,51,53,50,50,48,49,57,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,60,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,67,1,12,1,1,66,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,78,0,0,0,0,0,0,0,0,0,0,0,0,0,76,79,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,77,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,12,1,1,1,1,89,1,91,1,1,1,1,1,1,1,1,94,1,1,1,1,1,1,1,1,1,1,1,1,0,1,97,97,1,1,12,1,100,1,1,1,1,1,1,1,98,1,99,1,101,1,1,1,1,1,102,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,110,111,1,1,1,1,1,1,113,113,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,121,122,1,1,1,1,1,1,1,1,1,1,1,1,1,122,1,1,1,1,1,1,1,1,1,1,122,1,1,1,1,1,1,1,1,1,126,123,125,120,1,124,1,1,114,1,1,1,1,117,1,127,1,1,1,1,1,119,1,108,1,109,1,12,128,106,1,112,1,1,1,1,1,107,115,1,12,12,12,118,116,1,1,1,1,1,1,0,0,0,0,1,12,12,1,1,1,1,1,12,134,1,1,1,1,1,1,1,1,1,1,1,12,136,1,1,1,1,1,1,1,1,137,138,12,12,135,133,45,45,140,50,50,139,142,141,1,1,0,0,0,0,0,0,0,0,0,0,0,0,145,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,143,0,0,0,0,1,0,144,132,1,0,1,12,12,1,1,1,1,1,0,0,0,0,0,0,0,1,148,147,20,1,1,12,12,1,20,12,12,1,1,1,1,1,134,1,1,152,1,1,1,1,153,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,1,1,136,1,1,152,1,1,1,1,153,1,1,134,1,1,1,152,1,1,1,1,153,1,1,134,1,1,1,1,1,1,1,1,134,1,1,1,1,1,1,1,1,1,1,1,160,1,1,1,152,1,1,1,1,1,153,1,1,160,1,1,1,1,1,1,1,1,1,1,134,1,1,1,1,152,1,1,1,1,153,1,1,1,134,1,1,152,1,1,1,1,164,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,1,167,1,1,160,1,1,1,1,1,152,1,1,1,1,1,153,1,1,160,1,1,1,1,1,152,1,1,1,1,1,153,1,154,158,158,12,1,12,166,1,1,1,1,1,158,158,158,154,1,1,1,157,158,161,165,1,1,1,1,157,157,1,1,156,154,154,157,170,156,170,1,1,168,1,156,155,157,1,1,1,1,157,1,159,1,1,1,12,1,162,1,162,1,1,1,162,161,163,169,156,154,1,1,1,1,1,1,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,172,173,172,173,172,172,172,172,174,174,172,173,172,173,172,172,12,12,12,12,12,1,12,12,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,193,1,1,1,1,12,199,200,201,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,151,1,1,1,1,1,1,1,1,1,1,1,196,1,1,1,184,1,210,1,1,1,208,1,1,205,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,12,1,1,1,1,1,1,1,1,190,1,1,1,186,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,182,1,1,1,1,1,1,1,191,1,1,1,1,195,1,1,1,1,171,1,1,189,1,1,1,192,1,1,1,12,1,1,1,1,1,1,1,1,1,1,1,1,180,1,12,1,1,12,1,1,1,1,183,1,1,1,188,1,203,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,209,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,194,1,1,1,1,1,12,1,1,1,1,1,1,1,1,176,12,1,1,1,178,12,1,1,1,1,1,1,1,198,1,1,1,1,1,1,1,1,1,1,177,1,1,1,1,1,1,204,1,1,1,181,1,1,1,187,1,12,1,1,12,1,1,1,1,1,1,1,1,1,1,191,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,175,1,1,1,1,1,1,1,1,1,1,185,1,1,1,1,1,1,1,1,1,1,1,206,1,1,1,1,1,1,1,1,1,1,1,1,1,207,1,1,12,1,1,1,1,179,1,1,1,185,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,1,1,197,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,12,1,1,1,1,1,1,1,1,1,202,1,1,12,1,1,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,220,0,0,0,0,0,221,0,0,0,0,0,0,1,12,1,1,1,225,1,1,1,0,226,223,224,1,1,1,1,1,1,231,1,233,1,1,1,1,1,1,1,1,1,1,1,229,1,1,1,1,1,235,1,1,12,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,234,1,1,1,12,1,1,1,1,230,1,1,1,228,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,232,1,1,1,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,241,13,1,1,1,12,12,238,239,1,1,1,1,240,1,1,12,1,1,1,1,1,1,1,242,1,1,12,16,1,1,1,1,1,1,1,243,1,1,1,12,12,1,1,1,1,1,243,12,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,256,256,1,0,0,0,0,0,1,12,0,0,0,0,0,0,0,0,172,261,262,1,12,1,1,1,1,12,264,1,1,263,1,1,266,1,1,1,1,1,1,1,1,1,0,1,1,1,271,272,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,12,1,0,1,0,0,0,0,1,0,1,0,1,1,1,1,1,0,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,12,0,283,0,0,284,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,12,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,60,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,1,1,0,308,0,0,0,0,0,0,0,0,0,310,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,12,1,1,1,1,1,1,1,1,1,12,1,1,1,1,1,327,327,328,327,0,185,1,1,13,323,1,321,0,0,0,0,1,0,0,0,324,1,1,329,1,205,1,1,1,1,1,322,1,319,1,325,1,317,1,326,1,318,1,1,1,1,1,1,1,12,1,1,1,12,1,12,320,320,1,1,1,316,184,1,1,12,1,1,1,1,1,1,1,1,1,1,12,1,1,1,1,12,1,1,1,1,315,1,0,0,0,1,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,332,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,266,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,372,372,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,364,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,0,1,340,351,1,1,339,374,1,345,1,1,337,369,1,1,355,336,341,1,1,1,348,379,357,1,1,1,1,1,1,358,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0,367,371,0,0,79,1,1,0,365,342,378,343,346,353,1,368,0,1,0,79,362,360,1,0,0,1,1,1,0,0,0,0,381,1,1,352,1,79,1,0,1,1,1,384,1,0,0,79,359,0,1,338,1,1,1,0,1,1,361,1,0,1,1,1,0,1,386,349,1,1,0,1,0,0,377,0,1,1,1,79,370,1,1,366,363,1,1,1,1,1,1,1,1,1,1,1,344,1,1,1,1,1,1,1,1,1,1,1,376,0,79,1,1,1,1,0,1,1,1,1,1,1,0,0,1,1,380,1,1,1,0,0,383,0,0,0,1,356,1,0,79,382,1,0,0,0,0,385,1,1,0,0,1,0,1,0,354,0,350,0,1,1,1,0,1,1,0,373,347,375,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,1,400,400,1,1,12,12,1,400,1,1,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,412,1,1,0,1,1,1,1,205,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,430,430,1,1,0,0,317,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,442,1,441,1,1,1,1,1,1,1,1,445,1,12,12,1,1,1,1,1,12,1,1,1,1,453,1,1,1,455,1,1,1,1,1,1,1,1,1,1,452,1,447,1,1,1,1,435,1,1,1,1,1,1,1,1,448,12,1,1,1,1,454,1,1,1,449,444,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,317,1,433,1,1,12,451,1,1,317,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,437,1,1,1,1,1,1,1,1,1,1,1,454,1,1,1,1,317,1,450,1,1,1,439,1,1,1,1,1,440,1,456,443,1,1,1,1,1,438,1,1,1,1,1,1,1,1,1,434,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,446,1,1,1,1,1,1,1,12,1,1,1,1,1,436,1,1,1,1,1,1,1,220,457,1,1,1,1,1,12,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,1,0,0,1,0,1,0,1,1,0,0,0,462,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,12,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,466,0,466,466,466,466,466,466,466,0,466,466,466,466,466,1,466,466,466,0,466,466,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,471,470,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,475,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,468,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,469,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,477,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,466,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,474,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,467,0,0,478,473,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,472,0,0,0,0,0,0,0,0,0,0,0,0,0,466,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,467,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,466,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,476,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,12,1,1,1,1,1,1,1,1,1,1,1,1,488,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,198,198,1,492,1,1,1,491,1,1,1,1,487,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,489,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,493,1,1,490,1,1,1,1,1,1,1,1,372,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,494,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,0,1,0,0,0,505,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,1,0,1,0,0,0,1,0,0,0,1,0,0,0,0,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0,0,0,0,1,0,1,0,0,12,1,507,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,12,12,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,1,0,1,0,0,0,0,0,0,0,1,0,0,1,0,1,1,1,1,0,0,0,1,0,0,0,1,60,1,1,12,12,12,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,526,1,1,1,1,1,1,1,527,1,1,1,1,1,1,1,525,1,1,12,1,529,239,1,1,12,12,1,1,12,1,12,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,533,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,1,1,0,0,0,1,0,0,0,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,1,1,539,1,1,1,1,1,1,1,1,1,1,1,1,1,1,132,1,12,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,107,1,1,12,1,1,1,12,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,548,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,144,1,1,1,228,1,1,12,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,1,572,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,577,1,220,1,328,1,1,1,1,1,1,1,1,1,0,0,578,1,1,1,1,0,580,0,79,0,579,0,1,1,1,0,1,1,1,1,1,1,12,0,0,0,0,1,0,0,0,0,0,0,586,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,582,582,0,585,583,582,582,582,582,582,587,582,582,591,582,582,582,582,582,582,582,582,582,582,588,585,582,582,585,582,582,582,582,582,582,582,582,582,582,582,582,582,583,582,582,582,582,582,589,582,582,582,582,582,582,0,0,0,1,590,1,1,1,1,584,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,12,595,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,1,12,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,12,1,1,12,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,65,280,306,411,535,0,4,68,236,254,282,307,334,388,413,0,499,519,536,597,9,0,61,88,398,409,429,575,0,497,518,532,612,0,30,6,0,461,500,602,560,70,0,7,285,255,389,463,416,538,79,598,0,576,309,418,465,9,105,288,506,6,30,0,311,79,391,79,483,10,6,131,248,275,0,613,509,0,563,0,64,6,6,251,95,2,432,399,410,596,0,6,0,6,286,103,6,561,501,540,0,464,390,273,287,8,71,104,599,543,392,312,300,419,146,74,290,546,510,601,564,335,330,479,6,75,149,11,0,249,522,547,565,514,551,570,611,36,6,260,295,333,304,218,30,528,553,218,42,216,265,296,305,406,423,481,274,0,73,562,0,403,417,299,79,247,79,0,581,545,504,292,421,79,393,387,0,0,0,9,555,571,217,0,424,407,531,516,573,615,85,218,43,297,396,425,569,0,511,293,276,79,215,80,28,390,30,6,394,331,303,604,592,524,550,513,0,258,81,30,405,422,0,30,426,0,219,593,517,9,408,427,218,248,86,222,594,574,557,482,428,397,250,227,87,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,620,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,414,0,0,0,0,0,0,0,0,82,0,129,0,0,84,549,0,0,0,0,0,0,0,27,0,552,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,414,0,0,0,0,503,0,257,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,294,0,0,0,0,0,0,0,617,0,0,0,0,0,616,0,0,0,0,0,0,0,0,0,0,0,0,0,0,395,0,0,0,484,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,0,0,0,0,0,0,495,0,0,0,0,0,0,404,0,0,0,0,0,0,0,0,0,0,0,0,0,211,0,0,0,0,0,0,0,0,0,0,515,0,0,0,0,0,0,0,0,0,0,0,0,496,0,0,0,0,0,0,0,0,0,0,0,0,0,0,269,281,0,0,0,0,0,530,277,0,0,0,0,0,0,0,0,0,0,0,0,0,512,0,0,0,0,0,0,0,0,0,0,0,458,0,0,0,314,0,0,0,0,0,0,253,0,0,0,0,0,0,23,0,0,0,0,568,0,0,0,0,600,521,0,0,0,0,244,0,0,0,0,0,0,0,0,0,480,0,0,0,0,0,62,0,0,0,267,58,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,246,0,0,0,0,0,279,610,0,72,0,0,0,0,0,0,0,0,0,619,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,150,0,278,0,0,0,0,0,0,567,0,0,0,0,0,0,523,0,0,0,0,0,0,0,0,0,566,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,213,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,0,502,0,0,0,0,0,554,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,84,83,0,0,0,0,0,0,0,0,0,0,0,0,486,0,485,0,0,0,0,0,0,0,0,0,0,259,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,459,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,289,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,537,0,0,0,0,0,0,0,0,298,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,237,0,0,0,0,0,0,0,0,0,0,84,0,606,0,0,0,0,0,0,0,0,0,0,0,0,245,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,609,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,520,0,0,0,84,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,498,0,614,0,0,431,0,0,0,0,0,0,0,0,0,0,0,0,402,0,0,0,544,0,93,0,0,0,0,0,0,0,0,0,0,31,0,0,0,0,0,0,29,92,0,0,0,0,0,0,0,0,0,0,0,0,291,0,0,0,214,0,0,0,0,0,0,558,0,270,0,0,130,0,0,0,0,0,559,0,0,0,0,0,0,0,414,420,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,313,0,0,0,0,0,5,0,0,0,0,0,0,0,301,0,0,0,0,0,0,0,0,0,0,0,0,0,534,0,0,0,415,0,0,401,0,0,0,0,0,0,603,0,0,0,541,0,0,90,0,542,0,0,0,0,0,0,0,0,0,0,508,460,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,268,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,414,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,608,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,607,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,618,0,0,0,0,0,556,0,0,0,0,0,0,0,0,0,0,302,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,605,0,0,212,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,623,623,623,623,623,623,623,622,624]),xh="orgmilcomschnetedugovdrrformsfeedbackofficialaccoorgmilschnetgovmagazinemediaunioncargopilotgroupcaarespressworksaerodromeworkinggroupair-traffic-controlaircraftaccident-preventioneducatormarketplaceambulanceinsurancecateringairportrepbodyenginesoftwaremodellingair-surveillanceconsultingchartertrainermaintenanceservicesdesignflightskydivingfreightassociationstudentgroundhandlingdgcafuelclubtaxicrewshowballooningexpresstraderbrokerauthoragentsairtrafficjournalistsafetyconsultantmicrolightaccident-investigationparachutingequipmentproductionfederationrecreationscientistnavigationengineertradingglidingleasingresearchpassenger-associationentertainmentparaglidinghangglidingaerobaticrotorcraftemergencycertificationgovernmentaeroclubexchangelogisticschampionshiphomebuiltcouncilconferencecontrolairlinecivilaviationjournalorgcomnetedugovcoorgcomnomnetobjofforgcomnetuwukiloappsframerorgmilcomnetedugovcoradioorgcomnetcommuneedogpbcoitgvorgedugov*spreviewfrontendrelayononstagingupid*mtls*privatelinktypedreamdeveloperbravemochawindsurfaivenmirenupsunwnextbegetngrokclerkwale2bwebcsbrunputerflutterflowspawnbaseshiptodaymagicpatternsnetlifyondigitaloceanrailwayhostedclaudehasurabotdashvercelgithubluyanigadgetreplitcloudflaretelebitedgecomputeevervaultdetaexponyatnoopencrpplxzeaburwasmerframerzeropsconvexmedusajsspritesonherculeseasypanelstreamlitsnowflakemesserliloginlinehackclubnorthflankbase44corespeedadaptableleapcellngrok-freeclerkstagelovableon-fleek*us-west-3ap-south-2us-central-2us-central-1eu-central-1ap-south-1us-west-2us-east-2eu-north-1ap-north-1us-west-1us-east-1*rcloudintsegorgmilcomgobbetnetintedugovturmusicasenasamutualcoopip6uriurnin-addre164homeirisgovdixdaemoncloudnssthwien*inexexkunden4accogvormymyspreadshop4lima2ixortsinfofuturecmsfuturehosting12hpprivfuturemailinglima-cityfunkfeuer123webseitednshomemelmyspreadshopcloudletswasantqldvicactnswtascatholicwasaqldvictasvpsidwasantozqldorgcomvicasnactnetedugovnswtasconfhrsncomairflowlambda-urltransfer-webappairflowtransfer-webapptransfer-webapptransfer-webapp-fipstransfer-webappeu-west-3ap-south-2eu-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1mx-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1ap-southeast-7us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2ap-southeast-5us-gov-west-1us-gov-east-1ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1privatenotebookstudiolabelingnotebookstudionotebooknotebook-fipslabelingnotebookstudionotebook-fipsnotebookstudio-fipsnotebook-fipsnotebookstudionotebook-fipsnotebookstudioeu-west-3ap-south-2eu-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2experimentsus-gov-west-1us-gov-east-1ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1onrepostsagemakercopporgmilcompronetintedugovbiznameinfoshoprsorgmilcomnetedugovbrendlyresolvenzauscotvstoreorgcomnetedugovbizinfoidacaicoittvorgmilcomschnetedugovinfocloudezproxyacmymyspreadshopkuleuvenwebhostingtransurl123websitecloudnsinterhostsolutionsddns5476103298edgfacbmlonihkjutwvqpsryxzbarsycoororgcomedumyftpno-iporxcloud-ipfor-somemmafanfor-morewebhopselfipjozidyndnscloudnsdscloudfor-thefor-betteractivetrailcoeconorestooteorgcomeconeteduassurmoneyafricaarchitectesrestaurantloisirstourismavocatsinfoagrounivcoorgcomnetedugovtvdeportesaludtksatorgmilcomwebgobnetinteducienciaboliviarevistacooperativaempresanombreindustriamusicapatriamedicinademocraciapoliticapuebloindigenaplurinacionalarteblogwikiinfoagrotransportenoticiasprofesionalacademiaeconomiaecologiamovimientotecnologianaturalsimplesitecepesebamapadfmgalampbacscpirngorotomtrjspaprrprrsesmscepesebamapadfmgalampbacscpirngorotomtrjspaprrprrsesms*biaamfmtcmptvfeirasampajampanatalbelemananiradiog12medindfndbmdtrdthepoaggfjdfdefinfenflegsegongengcngorgzlgslglogppgmillelqslcimcomnomadmjabimbbibbsbabcrectecsjcetcpscpvhudieticriapipsiecnbiorioecogeoteoodoproatoartfstmatvetdetbetnetcntnotfotgrueduajuespappreptmpemparqsrvadvdevgovntrturagrjorfarjusmusdesvixxyzcozfozslzbhzmaringasantamariacampinagrandegoianiasorocabafloripasaobernardocuritibaboavistarecifeaparecidasaogoncasalvadorcuiabamorenamacapalondrinacontagemsocialfortalmaceioleilaoosascoriobranconiteroi9guacutcheblogflogvlogwikitaxicoopmanauspalmascaxiasjoinvillebaruericampinassantoandreribeiraoriopretoweorgcomnetedugovv0windsurfshiptodaycloudsitecoaccoorgnetgovofmilcomgovmediatechzacoorgcomnetedugsjgovmydnspenfnlabnbmbgcbcqconcontnuyksknsmyspreadshopno-ipawdevboxbarsyonidatemfuinabusavinstanceseceuguukussryzespawncsxcloud-ipmyphotosfantasyleaguetwmailcleverappsscrappingccwucloudnsftpaccessgame-serverccgovobjectsrmalpgcust*svcalp1aeappenginermalpgmyspreadshop4lima2ixsquare7cloudscale123websitefirenet12hpflowgotdnslinkyard-cloudcloudnslima-citydnskingobjectstorageedaccogoorusorgcomnetinteduaéroportxn--aroport-byaassogouvcomilgobgovcloudnses-1eu-west-1us-east-1euvipit1eurarubait1s3lbwebsites3websiteru-spbru-mskelasticcsrunstnukukcaukusnl-ams-1fr-par-1fr-par-2functionsnodess3ddlwhmrdbfnck8sifrs3-websitecockpitscblmgdbdtwhkafkpubprivs3ddlwhmrdbk8sifrs3-websitecockpitscblmgdbdtwhkafks3ddlrdbk8sifrs3-websitecockpitscblmgdbdtwhkafkk8sscalebookpl-wawfr-parnl-amsbaremetalsmartlabelinginstancesdechk2kuleuvenlaravelvoorloperurownoxazapscwhstgrvaporobservablehqelementorantagonistreclaimjoteluluencowaydiademjelasticmatlabmagentositetrendhostingaxarnetperspectajenv-arubajelejoteravendbemergenttrafficplexconvexkeliwebserveboltbegetcdnstaticson-rancherprimetelonstackitunison-servicesdnshomelinkyardbarsyjelecloudnscocomnetgovmycn-northwest-1cn-north-1s3s3-accesspoints3-websites3s3-accesspointrdsdualstacks3-deprecatedemrappui-prods3-websiteemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apis3s3-accesspoints3s3-accesspointrdsdualstackemrappui-prods3-websiteemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicn-northwest-1cn-north-1cn-northwest-1ebcomputeelbcn-north-1airflowcn-northwest-1cn-north-1oncn-northwest-1cn-north-1amazonawssagemakeramazonwebservicesdirectasgdsdhehahljlnmhbacscahqhshhihnlnynsnmofjbjzjxjtjhkcqtwgsjssxnxjxgxxzgz網絡网络公司orgmilcomnetedugovxn--55qx5dcanva-appsxn--io0a7iquickconnectcanvasitekhsjxn--od0algmyqnapcloudsrvrlessclustersrealtimestorageleadpagescarrdcrdorgmilcomnomnetedugovhidnssupabaserdpareplmypiumsoxmitotaplpagesfirewalledreplitowodevwebview-assetsvfswebview-assetss3s3-accesspointdualstackemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9eu-west-3ap-south-2eu-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1ap-southeast-7us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2ap-southeast-5ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1s3s3-accesspointdualstackemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3s3-accesspointdualstackanalytics-gatewayemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3s3-accesspointdualstackemrappui-prods3-websiteemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apis3s3-accesspointdualstacks3-deprecateds3-websites3-object-lambdaexecute-apis3s3-accesspoints3-websites3-accesspoint-fipss3-fipss3s3-accesspointdualstackemrappui-prods3-websites3-accesspoint-fipsaws-cloud9s3-fipsemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3s3-accesspointdualstackemrappui-prods3-websites3-accesspoint-fipss3-fipsemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apis3s3-accesspointdualstacks3-deprecatedanalytics-gatewayemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9vfss3s3-accesspointdualstackemrappui-prods3-websiteaws-cloud9emrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9eu-west-3ap-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1mx-central-1me-central-1ca-central-1il-central-1ap-northeast-1us-northeast-1ap-southeast-1me-south-1af-south-1ap-south-1ap-southeast-7us-west-2eu-west-2ap-east-2us-east-2ap-southeast-2ap-northeast-2ap-southeast-5us-gov-west-1us-gov-east-1ap-southeast-6ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1mrapaccesspoints3s3-accesspointdualstacks3-deprecatedanalytics-gatewayemrappui-prods3-websites3-accesspoint-fipsaws-cloud9s3-fipsemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3s3-accesspointdualstacks3-deprecatedanalytics-gatewayemrappui-prods3-websites3-accesspoint-fipsaws-cloud9s3-fipsemrstudio-prods3-object-lambdaemrnotebooks-prodexecute-apicloud9s3eu-west-3ap-south-2eu-south-2computes3-ap-northeast-2elbrdss3-ap-east-1s3-sa-east-1s3-us-gov-west-1s3-eu-central-1s3-ca-central-1eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3s3-website-us-west-2s3-website-eu-west-1s3-external-1eu-central-1me-central-1ca-central-1il-central-1s3-us-west-1s3-eu-west-1s3-website-sa-east-1s3-website-ap-southeast-2ap-northeast-1ap-southeast-1s3-us-west-2s3-eu-west-2me-south-1af-south-1eu-south-1ap-south-1us-west-2eu-west-2us-east-2s3-website-ap-southeast-1s3-1s3-globals3-ap-northeast-3eu-north-1airflowap-southeast-2s3-us-gov-east-1s3-fips-us-gov-east-1s3-me-south-1s3-ap-south-1ap-northeast-2s3-website-us-west-1ap-southeast-5s3-eu-north-1s3-ap-southeast-1s3-website-us-gov-west-1compute-1s3-eu-west-3us-gov-west-1s3-website-ap-northeast-1us-gov-east-1s3-fips-us-gov-west-1s3-website-us-east-1s3-ap-southeast-2ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1s3-us-east-2s3-ap-northeast-1authauthauth-fipsauth-fipseu-west-3ap-south-2eu-south-2eu-central-2ap-southeast-3ap-southeast-4ap-northeast-3eu-central-1mx-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1ap-southeast-7us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2ap-southeast-5us-gov-west-1us-gov-east-1ca-west-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1rservicesbuilderstg-builderdev-builder*ociocpocsdemoinstanceeu-west-3eu-south-2ap-southeast-3ap-northeast-3eu-central-1me-central-1ca-central-1il-central-1ap-northeast-1ap-southeast-1me-south-1af-south-1eu-south-1ap-south-1ap-southeast-7us-west-2eu-west-2us-east-2eu-north-1ap-southeast-2ap-northeast-2ap-southeast-5us-gov-west-1us-gov-east-1us-west-1eu-west-1us-east-1ap-east-1sa-east-1previeweu-4us-4us-1eu-1us-2eu-2us-3eu-3appspaasrag-cloudrag-cloud-chjcloudjcloud-ver-jpcdemonodebalancermembersipeuxvsoncillaocelotonzayalilynxsphinxfentigercustomercaracalo365cloudstaticxendevapp001testcode-builder-stgplatformapimediasiteprojedrydpagesjsu2u2-localx0desazacncoitrueu4uhkukgrbrushatenadiarymyspreadshopfrom-flfrom-wvwebspace-hosttheworkpchatenablogservesarcasmapplinzisakuratanwixsiteappchizigiizeis-into-carsdnsiskinkyadobeaemcloudis-a-therapistpgfogmyvncdojinis-an-actress1kappfldrvkozowqa2jpnmexprgmrfirewall-gatewaydynnscafjsfbsbxooguyxnbayfrom-gawoltlab-demois-a-anarchistwiardwebteaches-yogadattowebtb-hostinglive-websiteservegamegotpantheonfrom-nhsubsc-payfrom-ohvipsinaappfrom-cadyndns-officehomelinuxfrom-mahercules-appservebbsstreakusercontentfrom-okfrom-wyfastly-terrariumis-a-llamaqualyhqportalserveexchangeon-vaporvivenushopciscofreakgrayjayleaguesmetaaiusercontentfrom-iais-a-libertariansaves-the-whalestaveusercontentyolasiteoperaunitepoint2thisis-a-catererlinodeusercontentfrom-vagithubusercontentsells-for-lesshosteurcanva-appsplaystation-cloudddnsfreefrom-pafrom-prfrom-waddnskingoutsystemscloudhotelwithflightmydattois-a-nascarfanmydbserverminiserverdamnserverservehumouris-a-playerfrom-nvfrom-nmemergentagentgentappsamplifyappfrom-kyis-an-accountantnfshostserveircfrom-akpythonanywherestackhero-networkpostman-echolikescandydyndns-mailobservableusercontentserveftpfreeboxosfrom-utcdn77-storageamazonawsneat-urldyndns-serverlinodeis-a-teacherfrom-vtgleezemythic-beastsus1-pleniteu1-plenitla1-plenitpaywhirlservecounterstrikejdevcloudhealth-carereformis-into-animegoogleapisis-a-painterafricaisa-hockeynutatmetais-an-actora2hostedis-a-democratdatadetectest-le-patrondigitaloceanspacesis-a-designeris-a-hunterlinodeobjectstemp-dnsissmarterthanyoufrom-arsimplesiteevennodetownnews-stagingis-a-liberalgooglecodejelasticservemp3stdlibqualyhqpartnerdyndns-free1cooldnsest-a-la-masiondrayddnsdynuddnsfrom-orfrom-miis-a-bloggerfrom-himydobisscanvacodeis-an-engineerest-a-la-maisonupsunappdevinappswafflecellmyasustorwpenginepoweredfrom-ctservep2psame-appmyshopblocksthingdustdatalikes-piediscordsezis-with-thebanddev-myqnapcloudlpusercontentis-leetshopitsite3utilitiesis-a-personaltrainersinaappladeskis-a-cheflogoipselfipbase44-sandboxnospamproxyalibabacloudcsmesswithdnsauthgearappsiamallamawithgooglelutrausercontentmochausercontentframercanvasmytabitdyndns-homew-credentialless-staticblitzcpserverdiscordsaysis-a-nurseappspotatlassian-isolated-3premotewdfrom-mtwixstudiocode0emm180rmyactivedirectoryawsappsmytuleapdnsabrpolyspaceqbuserrenderbuiltwithdarkboutirgotdnsabrdnsdopaascanva-hosted-embedawsglobalacceleratorhomesecuritypcmyiphostditchyouripclever-clouddyndns-ipon-aptibleis-a-musiciansecuritytacticsappspaceusercontenthomeunixstrapiappsame-previewcf-ipfsmycloudnaselasticbeanstalkis-certifieddontexistkasserverik-serverdrive-platformatlassian-3pfirebaseappherokuappawsapprunnerbarsycenteris-a-cubicle-slaveservehttpmyshopifyis-a-guruquicksytessiiitesorsitesmagicpatternsappis-a-cpameteorappfrom-wiis-a-rockstarbumbleshrimpdattolocalreadthedocs-hostedfrom-rifamilydsdyndns-picsplesknsbplaceddnsaliasdynaliasdyndns-remotedoomdnsip-ddnsblogdnsis-a-doctorroutingthecloudamazoncognitobarsyonlinedsmynasddnsgurucloudflare-ipfsdeus-canvasfrom-idsmushcdnpagespeedmobilizerdyndns-at-homeunusualpersonhosted-by-previderis-a-republicandyn-o-saurstreamlitappworkisboringonthewificprapidqualifioappis-uberleetis-slickgetmyipwpdevcloudtypeformdyndns-at-workgentlentapismynascloudw-corp-staticblitzfrom-ingeekgalaxyservebeerfrom-mdonrenderspace-to-rentaivencloudappspacehostedonfabricawafaicloudcodespotblogspotatlassian-3p-us-gov-modfrom-ndfrom-msis-a-techieis-a-studentcustomer-ociis-a-photographerdurumisfrom-ksmassivegriddyndns-wikiis-an-entertaineris-a-hard-workermysecuritycamerafrom-mnrackmazedyndns-blogis-a-bulls-fanwritesthisblogfreemyipsimple-urlfrom-sdreservdauthgear-stagingest-mon-blogueuris-into-gamesrice-labsxtooldevicesakurawebis-an-anarchistoraclecloudappsdyndns-worksells-for-urhcloudfrom-dcfastvps-serverwpmucdnis-a-geekscrysecfrom-txis-into-cartoonsmodelscapetrycloudflarelocaltonetstreak-linkbalena-devicesfrom-njforgeblocksfreebox-oswebadorsitefrom-ncdoesntexisthobby-sitestreaklinkshomesecuritymacownprovidertuleap-partnersdattorelaywphostedmailalpha-myqnapcloudservequakeis-a-socialistservehalflifepivohostingdynuhostingquipelementsw-staticblitzdyndns-webfrom-deproject-studyaliases121is-not-certifiedhercules-devis-a-financialadvisorservepicsis-a-greenloseyouripfrom-ilwithyoutubemwcloudnonprodwiredbladehostingdnsdojofrom-tnpixolinomyqnapcloudis-an-artisthostedpiis-a-landscaperauiusercontentoaiusercontenton-forgeis-a-conservativedreamhostersnet-freaksapps-1and1is-goneencoreapifastly-edgefrom-nesalesforcefrom-scdeployagentoraclegovcloudappsfrom-alis-a-lawyercechirevultrobjectsstufftoreadisa-geekddnsgeeklovableprojecttry-snowplowfrom-moblogsyteis-a-bookkeepernogmyforumravendbmyboxdeelementoredsaacficogoorinforgcomgobnatneteduidstoreorgcomnetintedudevnomepublorgcomneteduathgovtestscalculatorspaynowinfoquizzesresearchedcloudnsfunnelsassessmentsjscaleforcetmacltdorgmilcompronetgovbizpresseklogesrsccloudcustomfltusrcloude4corealmgovmunicontentproxy9metacentrumdyndyndyndnsdynpagespages-researchitionoccustomercomymyspreadshopipv64diskussionsbereich4limacomrub2ixfirewall-gatewayddnssspdnsbarsykeymachinesquare7myhome-serverspeedpartnercommunity-proschuldockxenonconnectgünstigliefernbwcloud-os-instancedyndnssecmy-routerxn--gnstigliefern-wobin-butterl-o-g-i-nisteingeekin-dslin-berlinin-brbfuettertdasnetzleitungsenin-vpnlcube-serverdyn-ip24logoipdyn-berlinruhr-uni-bochum12hpgoipsrvdnsfruskygit-repossvn-reposinternet-dnsgünstigbestellenhome-webserverxn--gnstigbestellen-zvbbplacedheimdnscosidnswebspaceconfiglima-citydyndns1istmeinvirtualuserschulplattformmy-gatewayddnsseclebtimnetztest-iservmein-iservvirtual-userhome64iservschuletaifun-dnstraeumtgeradeschulserverdynamisches-dns123webseitednshomehs-heilbronndnsupdaterbssgraphicdwadpdwdaepeweaawapaafpfwfabwbpbacwcpcciwebuserapiobjectsidsiskospockkimodorikerbonesteamsparisjanewaypicardglobaltarpitreedpikekiraworfsulukirkarchertuckerhackercanarywesleystagingprereleaset3r2lpbravepanelngrokiservstglclcrmerpflypagesbarsyvivenushoplocalcertlocalplayerbearbloggatewaydeno-stagingis-not-ais-a-goodbotdashvercelmocha-sandboxplatter-appreplitgithubpreviewworkersinbrowserevervaultdetais-ahrsndenoxmitmodxmyaddrstorageapipayloadgrebedocruncontainersstgstagelclstageloginlineis-a-fullstackleapcellngrok-freeis-coolstoragewebharemediatechlibp2pdiscourseimaginecomyspreadshopstoreregbiz123hjemmesidefirmcoorgcomnetedugovsldorgmilcomwebgobartnetedugovtmorgpolcomsocartnetedugovassoagrondiscoodontk12medcuegyecpaabgengorgmilgalsaltulcomadmesmgobpubdocmonfindgnriouioproartlatvetnetfotedulojgovntrturibrbarxxxofficialbasechefprofmktgpsictechinfoarqtcontdentrrpppsiqgit-pagesritmedfieorgcomlibprieduaipgovriikmeactvsportorgmilcomscieunnetedugovnameinfopintouchtawktotawkmyspreadshoporgcomnomgobedu123miwebcomputeorgcomnetedugovbiznameinfocognito-idpeusc-de-east-1onjelasticnxaspdnsbarsydirectwpdeuxfleurstransurldogadoprvwcloudnsamazonwebservicesdnshomeuserpartycokoobinmkmstorjfidemopaasdymyspreadshopalandkapsiikixn--hkkinen-5wacloudplatformdatacenterhäkkinen123kotisivuidacorgmilcompronetedugovbiznameinforadioorgcomneteduuserexperts-comptablestmmyspreadshopgretaprdcomnomynhccifbxoshuissier-justicenotairesaeroportfreeboxoson-webavocatassoportgouvkdnschirurgiens-dentistes-en-franceavouesfbx-os123sitewebveterinairechirurgiens-dentistespharmacienchambagrimedecinfreebox-osdediboxgoupilemszicpyicpvicppleysheezypagesedugovcnpyorgcomcybllcpvtnetedugovtnxonlineschooldaemond6atcopanelorgnetplybotdashstackitkaasorgmilcomnetedugovbizmodltdorgcomedugovcoorgcomneteduappwriteacorgcomnetedugovcloudtranslateusercontentorgcomnetedumobiassoorgcomnetedugovbarsysimplesitediscourseindorgmilcomgobneteduorgcomwebnetedugovguaminfonxhra教育敎育網絡网絡组織組織网络網络组织組织公司政府個人个人箇人ltdorgcomincneteduidvgovxn--uc0ay4axn--55qx5dxn--mk0axixn--io0a7ixn--uc0atvxn--zf0avxxn--lcvr32dxn--od0algxn--wcvs22dxn--gmqw5axn--od0aq3bxn--mxtq1mxn--ciqpnxn--tn0agxn--gmq050iorgmilcomgobneteduiservwp2tempurlmircloudfreesitewpmudevmyfastgadgetcloudaccessjelehalfboltfastvpsemergenteasypanelopencraftizcombrendlynamefromrtpersoadultmedorgpolrelcomproartnetedufirminfoassoshopcoopgouvtmcomediahotelforumvideosportorgsexagrargameslakaseroticaerotikatozsdereklamcasino2000filmsuliinfoboltshopprivnewsszexcityutazasjogaszkonyveloingatlaneacaicogoormyᬩᬮᬶmilwebschnetkopbizzonedesaponpesxn--9tfkymyspreadshopgovmytabittabitorderravpageaccok12idforgnetgovmuniltdplcaccotttvorgcomnetmeca6g5gpgamubacaicniocoukuptverdruscsdelhiindorgmilcomwebnicfingenpronetintedugovresbizbiharbarsyinternetbusinessschooltravelsupabasealumnigujaratfirminfoaeropostbankcoopindevscloudnsno-ipbarsybarrell-of-knowledgebarrel-of-knowledgensupdategroks-thisdnsupdatefor-ourknowsitalldvrcammittwalddynamic-dnsv-infowebhopselfipdyndnshere-for-moreilovecollegemayfirstforumzcloudnsmittwaldservertypo3servergroks-theeusekd1uk0cdndyndnsidrawsainaueuapjpusstagemocksysdevicesclientcustreservdcustdevdisrecprodtestingcobeebyteutwenteboxfusebravepstmndedynngrokorgmilcomnomhzcnetedugovqcxqzzbarsythingdustmo-siemensrb-hostingprotonetfh-muenstergitbookbluebitecloudbeesusercontentnodeartkiloappsforgerockdarklangresinstagingapigeebubbleb-datascryptedhypernodedappnodepantheonsitegitlabgithubkeeneticvirtualservercleverappshostyhostingon-rioedugitticketstelebiton-acornwixstudioon-k3sicp0icp12038jeleqotobigvlairbubbleappsmyaddrstolosmyrdbxwebflowdrive-platformbeagleboardhasura-applolipopdefinimavaporcloudmusicianwebflowtestazurecontainerresindevicereadthedocsloginlineeditorxmoonscalesandcatsbasicserverwebthingsbrowsersafetymarkbeebyteappbitbucketidaccovistablogorgschnetgovxn--mgba3a4f16axn--mgba3a4fraarvanedgeايرانایرانjclaspeziapdudcefegelemeperetevebacanatavaparasabgagfgogrgpgalclblimfmrmcbmbvbfclcmcvcrcpcchlimifibicivipirisimncnbnanenrnpntnnolomobocoaogorosopotoptvtatctbtmtltotpulunutpspapaqsvpvvvtvavvrtrsrprgrfrcrbrarorkrvstsssbscsmsispzczbzbozen-suedtirolmyspreadshopxn--bulsan-sdtirol-nsbxn--valledaoste-ebbtrentinoaltoadigetrentin-sued-tirolxn--forlcesena-c8axn--forl-cesena-fcbxn--bozen-sdtirol-2obtriestetrentinsuedtiroltrentino-s-tirollecceudineaostesienaparmaluccapaviagenoapaduaaostamonzaabruzzoternirietiturinmilanbozenlaziofermoleccocuneonuoropratola-speziavdataaligfvgpugmolcalcamlomumbsicpmnvenvaoedugovabrsarmaremrbastoslazibxosfirenzetrentinosüdtirolval-d-aostavalle-aostamessinacremonaravennatoscanatrentin-suedtirolbolognacalabriaurbinopesarofriuli-v-giuliaogliastraxn--valle-aoste-ebblaquilaandriatranibarlettasyncloudtrentinosudtirolxn--valle-d-aoste-ehbaostavalleyvalled-aostatrentino-alto-adigevallee-d-aostexn--balsan-sdtirol-nsbpistoiasicilialucaniacataniaiserniaperugiabresciaveneziagorizialiguriaimperiabulsan-suedtirolbalsan-suedtirolbarlettatraniandriaxn--trentino-sdtirol-szbforlì-cesenatuscanyvallée-d-aostemantovavallée-aostecasertapiemontevalleaostaval-daostafriulivgiuliatrevisoforli-cesenavalléedaosteferrarapescaravald-aostatrentino-altoadigefriuli-vegiuliavallee-aostecarboniaiglesiastarantomediocampidanovalleedaostetrentinosud-tirolcampobassotrentinsüd-tiroltrentinosüd-tirolmonzabrianzatrentino-südtirolxn--trentino-sd-tirol-c3bpotenzacosenzavicenzaemiliaromagnavenicefrosinonemarchepordenonetrentinosued-tirolvaresemolisevalléeaostefriuli-veneziagiuliabasilicatalatinaanconasavonaveronamodenaaquilabiellabolzano-altoadigepugliafoggiaumbriatrentino-stirolgenovapadovamateranovararagusapiacenzatrentinostirolvalleeaostetempio-olbiatrentinsudtirolmassa-carrarafriuliveneziagiuliatrentinosuedtirolandria-barletta-tranitrapanixn--cesenaforl-i8amaceratacaltanissettaascoli-picenobrindisicarraramassacagliaririmininapolivibo-valentiachietibulsan-sudtirolbalsan-sudtiroltrentino-a-adigebulsanbalsaniglesiascarboniamilanotorinoteramodell-ogliastraarezzotrentinoalto-adigerovigotrentovenetoiglesias-carboniatrentino-sud-tirolaltoadigereggio-emiliareggio-calabriasardegnatranibarlettaandriapiedmontxn--sdtirol-n2amedio-campidanotrentino-süd-tirolfriuli-vgiuliafriuli-ve-giuliaromeennaromapisa32-b16-b64-blodiastibarineencomonaplesforlicesenailiadboxosalessandriasicilytrani-barletta-andriaxn--trentin-sdtirol-7vbpesarourbinotrentinsued-tirolcesena-forliforlìcesenaemilia-romagnamonzaebrianzaxn--trentinsdtirol-nsbtrentinos-tiroltrentinsüdtirolvalledaostaolbia-tempiocampidanomediovibovalentiasassarivalle-daostalombardyfriulivegiuliareggioemiliamonzaedellabrianzaalto-adigevercellitrentin-sudtiroltraniandriabarlettatrentino-sudtirolascolipicenobozen-südtirolfriulive-giuliaflorencevaldaostaxn--cesena-forl-mcbcarbonia-iglesiasaosta-valleycarrara-massadellogliastratrentinoa-adigexn--valleaoste-e7apesaro-urbinoxn--trentinosdtirol-7vbxn--trentin-sd-tirol-rzbxn--trentinsd-tirol-6vbtrani-andria-barlettatrentin-süd-tirolxn--trentinosd-tirol-rzbgrossetomonza-e-della-brianzasüdtirolreggiocalabriatrentinoaadigetrentin-südtirolfriuliv-giuliaverbaniacampaniatrentino-aadigefriulivenezia-giuliasardiniaandriabarlettatranibarletta-trani-andriacatanzarooristanourbino-pesarocesena-forlìvalle-d-aostacampidano-medio123homepagesiracusatempioolbiasuedtirollombardiaavellinocesenaforlìtrentinofriuli-venezia-giuliabozen-sudtirolandria-trani-barlettabulsan-südtirolbalsan-südtirolmonza-brianzabolzanotrentino-sued-tirolbellunosalernolivornocrotonesondriodnshometrentinsud-tirolmassacarraratrentin-sud-tiroltrentino-suedtirolviterbobergamocesenaforliolbiatempiopalermobeneventoagrigentoofcoorgnetfmaitvphdengorgmilcomschnetedugovperagrikanieasukehandachitatokaiaisaikonanoharuamaobuhigashiuraowariasahiinuyamatobishimaiwakurashitarainazawatoyonegamagorimihamatoyotataharakariyayatomioguchikomakimiyoshinishiotokonamekiyosuchiryutoyohashiokazakiisshikikasugaikotakiratoeianjotogofusosetohazutsushimashinshirotakahamanisshinshikatsuhekinantoyokawaichinomiyatoyoakeodateogataakitaikawakyowahonjoogayurihonjonoshirokamiokakatagamimitanegojomeyokotekosakadaisenkazunonikahohonjyomoriyoshimisatohappoukamikoanihachirogatahigashinarusesembokufujisatokitaakitaitayanagiowanitakkomutsutsurutahirosakigonoheoirasetowadamisawanohejiaomorishingohiranairokunohehashikamitsugarushichinohehachinohenakadomarisannohekuroishisakaeisumiasahiotakiinzaiabikomatsudoyachiyomutsuzawakujukuriomigawakashiwatoganemihamanaritasakuranagaramobarahanamigawachoshishiroichoseikozakishisuikatorimidorichonankyonanfuttsuonjukufunabashinagareyamanodasosatakochuotohnoshourayasukimitsuyokaichibayotsukaidosodegauratateyamakamagayayokoshibahikariyachimatakatsuuratomisatokisarazukamogawaichikawanarashinoichinomiyashimofusaminamibososhirakoichiharaoamishirasatoikatahonaiainansaijoseiyoiyoozuuwajimaniihamanamikatamasakiuchikokihokutobetoonshikokuchuomatsuyamaimabarikamijimakumakogenyawatahamamatsunosabaeikedaobamasakaifukuiohionotsurugamihamawakasaminamiechizeneiheijikatsuyamatakahamaechizensoedaukihaomutaokawanishiogoribuzenonojosueumiokiotochikugosasagurisaigawamizumakishinyoshitomikurumekurateyamadakasuganakamamiyamanogatatakatahakataiizukakawaratagawakasuyaashiyainatsukimunakataminamitsuikishonaikurogifukuchikeisenhigashimiyakoshinguyukuhashiokagakiyamekogaongausuikahotohochuotoyotsumiyawakadazaifuhisayamatachiaraiyanagawanakagawahirokawachikujochikushinochikuhochikuzennamieotamaokumashowateneiiwakikoorinangoononishigoshimogoomotegomishimafukushimaasakawakagamiishishirakawaiitatefutabahiratayugawahanawakitakatakawamatakunimiyabukibandaihigashihironoyamatomiharuyamatsuriaizubangedatesomaaizuwakamatsuyanaizuaizumisatonishiaizuizumizakikitashiobarataishinkaneyamakoriyamainawashirotanagurafurudonosamegawasukagawaishikawatamakawaikedaogakitaruiginanenahashimahichisonakatsugawaibigawashirakawamizunamiminokamomitakekawauesekigaharatomikasakahogikitagatayamagatatajimianpachimotosuyaotsukakamigaharahidakanisekitokigujominogodoyorogifukasamatsutakayamawanouchihigashishirakawakasaharashimonitatsumagoichiyodakannakanrashowameiwakiryuotaoratomiokafujiokaitakuranaganoharahigashiagatsumatakasakishibukawaminakamikatashinatsukiyonokawabanumataannakaoizumimidorishintoisesakiuenoyoshiokakusatsutakayamanakanojonanmokutamamuratatebayashimaebashiotakekaitadaiwahongofuchukuietajimashobaramiharahatsukaichihigashihiroshimamiyoshikumanokurenakasakaseraseranishiasaminamifukuyamashinichionomichiosakikamijimajinsekikogentakeharaotobenanaeikedatohmaozoraobiraabirakyowaeniwataikibibaisharirebunerimohiroooketootarupippunishiokoppechitosefurubirahakodateshiranukakitahiroshimakushiroobihironanporoiwamizawaniikappukunneppufukushimanakasatsunaitoyourakuromatsunaiakabirakamisunagawashibechaurakawakamifuranonakatombetsuasahikawashimokawakayabeokoppebiratoriabashirisaromaatsumanumatahidakabifukamukawamikasahorokanaitoyotomisarufutsuhigashikawaishikarikitamiyoichiesashiiwanaitomariminamifuranoakkeshifuranotoyakoyakumootoineppushikaoishiraoinemuronayorohaboroashorobihororishirifujiutashinaihokutotakasuebetsuurausuassabukikonaishimamakinaiedatetoyabieinikiesanuryuoumuteshikagarikubetsuashibetsukimobetsuaibetsutobetsusobetsuembetsushimizuchippubetsurishirihokuryuhoronobeshintokutsubetsushibetsuhonbetsumombetsutsukigatakuriyamakoshimizushiriuchikutchanmurorannoboribetsukamishihorowassamushinshinotsukembuchiwakkanaikamoenaikiyosatotakinoueshikabesunagawafukagawanakagawatakikawakamikawahigashikagurahamatonbetsumatsumaemoseushirankoshishakotanimakanemashikeotofuketomakomaisandatambaitamiawajikasaiasagoshisoonoakoyashirotoyookaminamiawajiinagawafukusakitakasagokamigorikasugaharimayokawaashiyahimejiakashitaishiaogakisannantakinosumototakarazukanishinomiyashingugoshikinishiwakiyokatakaaioimikisayoyabukawanishiamagasakisasayamashinonsenkakogawaichikawakamikawatatsunotsukubaiwamaogawaasahisakaitokaioaraiitakobandodaigosuifuinaamikasumigaurakashimaomitamayachiyoshimodatetomobetoridehitachinakainashikisakuragawakasamayawaramoriyahitachiomiyanamegatayamagatahitachikamisuushikutakahagiibarakitonekoganakasowayukimihojosomitoryugasakishimotsumafujishirotsuchiurachikuseihitachiotashirosatotamatsukuriuchiharashikahakuinanaotsubatawajimakahokukawakitatsurugikaganominotosuzuuchinadakomatsuanamizunakanotohakusannonoichikanazawaiwateshiwafudaikawaimoriokaofunatohanamakikuzumakikitakamininohekunoheyamadayahabasumitaichinosekitanohatahiraizumirikuzentakatajobojiotsuchihironomiyakoiwaizumikarumaiichinohenodakujitonooshushizukuishifujisawamizusawakamaishikanegasakimannoutazukotohiraayagawazentsujihigashikagawauchinomikanonjisanukimarugamemitoyotakamatsutadotsunaoshimatonoshoakuneamamiizumihiokiyusuikinkoisasookouyamanakatanekagoshimakanoyaisenkawanabeminamitanemakurazakitarumizunishinoomotematsumotosatsumasendaioimatsudaayaseebinamiurazushinakaiodawaraiseharasagamiharahakoneaikawakaiseiatsugitsukuihadanoyamatoyamakitazamaoisochigasakininomiyayokosukakamakuraminamiashigarafujisawasamukawakiyokawahiratsukayugawaraokawaumajikochitsunootoyoakiinonishitosayasudahidakamiharasakawaniyodogawahigashitsunokagamigeiseisusakiotsukinaharisukumomurototosakamiochitoyotosashimizumotoyamanankokunakamurakitagawayusuharaogunichoyoukiasoutoozugyokutoamakusamifunetakamoriyamagaminamataminamiogunikikuchisumotoyamatonagasumashikiaraokumamotokamiamakusanishiharayatsushiroayabeseikasakyoideineujinakagyokameokakyotangokyotanabekyotambaminamiyamashiroyamashinatanabeyawatawazukaminaminantanmiyazuhigashiyamafukuchiyamakitamukokamojoyokizumaizuruujitawaraoyamazakinagaokakyokumiyamakawagoeinabeshimameiwaasahitaikiudonoisetsukisosakikuwanamihamamiyamasuzukatamakimisuginabarikumanokomonominamiisewataraitobakiwatakikihotadomatsusakayokkaichikameyamaureshinoishinomakishichikashukuohirataiwaosakizaohigashimatsushimashikamaiwanumashibataogawaraonagawakawasakiseminemarumoriminamisanrikukakudamuratawakuyatomiyanatoriwataritagajomisatotomekamirifushiroishimatsushimayamamotoshiogamafurukawahyugaebinotsunosaitoayakushimanobeokakitauramiyazakitakazakigokaseshiibamimatashintomikunitomikitakatakobayashikawaminamitakaharukijotakanabemiyakonojonishimeranichinankitagawakadogawamorotsukakisofukushimaminamimakisakaeobuseikedaogawamiasaokayaasahiotakiotarichinoinaomichikumakomaganechikuhokukaruizawayasuokaooshikaikusakaminamiaikitogakushimatsukawakawakamitateshinatakamorikitaaikishiojirimiyadahakubaiizunaiijimaiiyamamiyotasuzakayasakatoguraookuwanagawaminowahirayayamagataminamiminowafujimiomachisakakitakaginaganonakanosakuhokomoronagisoshinanomachiwadauedaiidaharasuwatomiachiaokianankisosakunozawaonsenagematsutakayamashimosuwamatsumotoyamanouchinakagawamochizukiazuminotatsunoobamaomuraseihiunzenosetofutsuikichijiwanagasakiisahayahasamisaikaikawatanasasebohiradokuchinotsugototogitsutsushimashimabarashinkamigotomatsuurayamazoekashibaikomakawaitenrioyodosangokoryoudaojiikarugayamatokoriyamatenkawakatsuragikurotakikawakamimiyakemitsuetakatorikamikitayamayamatotakadahegurishinjokanmakisakuraitawaramotogoseoudanarasoniandokawanishishimoichihigashiyoshinokashiharashimokitayamanosegawayoshinomintsivorytopazsakuragehirnsumomoaseinetopalmail-boxmokurenyoitamuikaojiyagosensanjoaganomyokoseiroagaomishibataniigatanagaokamurakamiuonumayuzawakariwatagamitainaitsunanminamiuonumatochioyahikojoetsuseiroukamosadoizumozakitokamachiitoigawasekikawakashiwazakitsubamemitsukekokonoesaikiusukibeppuusahimeshimakunisakihasamataketatsukumihitaoitahijikusuyufukujukamitsuebungoonobungotakadaibaraniimibizentsuyamaokayamakasaokahayashimayakagemaniwaakaiwamisakishinjotamanotakahashikibichuowakesojanagishookumenannishiawakurakurashikiasakuchisetouchikagaminosatoshotomigusukunakagusukuyaeseizenaurumaiheyaaguniogiminanjokinminamidaitokitanakagusukuyonaguniokinawaishigakikunigamiurasoekadenataramahiraraginozataketomishimojizamamitonakiitomanhigashimotobuyonabarugushikamionnanahanagohaebarukumejimakitadaitonakijinnishiharayomitanginowantokashikiishikawaikedasuitaminohizuminishisakaikananabenodaitoosakasayamayaokishiwadatadaokakaizukatondabayashichihayaakasakakumatorikadomasayamahigashiosakashijonawatehirakatataishimisakitajirihannansennankatanotoyonominatosettsuhigashiyodogawaibarakinosekitachuohigashisumiyoshifujiiderakashiwaraizumiotsutoyonakamatsubaramoriguchiizumisanoshimamototakatsukineyagawahabikinotakaishikawachinaganoyoshinogarikamiminearitaouchiimarihizenogikashimaariakekiyamafukudomikitagatakitahataomachigenkaikanzakinishiaritakyuragisagataratosutakushiroishikaratsuhamatamakouhokukawagoeyoshidasatteogoseirumaasakaurawaogawaniizaomiyayoriiotakishikihonjooganohannohanyuinasaitamaokegawaarakawayoshikawayokozehasudasayamahidakafukayachichibuiwatsukiryokamiyoshimikamiizumifujimiwarabiranzanmiyoshiminanoyashiosakadosugitomisatohigashichichibutodasokakukiyonokazoshiraokakasukabekounosukawajimatsurugashimamiyashirokitamotohatoyamamoroyamahatogayakumagayakawaguchinagatorokamisatomatsubushinamegawatokigawakamikawafujiminohigashimatsuyamakoshigayatokorozawas3isk01isk02ryuohkoseikonanaishorittotakashimamaibarahikonetorahimenishiazaikokagamokotoyasuotsukusatsunagahamamoriyamatoyosatotakatsukinotogawaomihachimanhigashiomiakagiunnanizumogotsuamayatsukakakinokimatsuehamadamasudahikawahikimiokuizumoyasugiyakumomisatotamayuohdahigashiizumookinoshimanishinoshimatsuwanoshimaneshimadafujiedayoshidashimodagotembaiwataatamikosaiyaizuitoizumishimahaibaramakinoharaomaezakikawanehonkannamisusonohigashiizufukuroinumazukawazufujiaraishizuokahamamatsushimizuizunokunimatsuzakimorimachiminamiizunishiizukikugawakakegawafujikawafujinomiyaujiietsugaoyamayaitaohiranikkoashikagakuroisokanumasakurashioyakarasuyamamotegiichikaikaminokawatochigihagamokanogisanobatonasumibunasushiobaranishikatautsunomiyaiwafunemashikoshimotsukeohtawaratakanezawaitanokomatsushimatokushimaichibaminamiaizumiwajikikainanmiyoshinarutomimamugiananmatsushigesanagochishishikuinakagawamachidachiyodakomaefussainagitaitochofufuchuomeotahigashiyamatotoshimaokutamaaogashimakodairaedogawaarakawahachiojishinagawatachikawashibuyasuginamihinodekiyosesumidaoshimanerimamitakahamuraadachinakanomizuhobunkyomegurominatokoganeihigashikurumekokubunjihigashimurayamamusashimurayamatamakitahinochuokotokatsushikakouzushimaogasawaraakishimakunitachishinjukusetagayamusashinohachijoitabashiakirunohinoharachizunanbukotouramisasawakasayonagokogehinoyazutottorinichinansakaiminatokawaharaoyabetairainamiasahinantoimizufuchutakaokakurobeyamadajohanatoyamatonaminyuzenfunahashinakaniikawanamerikawaunazukitogahimiuozufukumitsutateyamakamiichiiwadearidayuasainamitaijikatsuragiaridagawatanabemihamahidakakainankiminomisatoshingushirahamakamitondayurakozakoyagobokitayamawakayamakudoyamahashimotokushimotokozagawahirogawakinokawanachikatsuurarsuseroeoishidasagaeoguniasahinagaitendonanyoobanazawanishikawasakataohkuratozawamikawamamurogawayamagatafunagatatakahatashonaishinjokahokuiideyuzakawanishitsuruokakaminoyamayamanobeshiratakamurayamanakayamakaneyamahigashineyonezawasakegawamitouubeyuuabushimonosekitabuseoshimatoyotaiwakunihikarishunannagatohagihofukudamatsutokuyamashowadoshitsurunanbukoshukaiminami-alpsnirasakikosugeotsukioshinohokutominobuyamanashifuefukichuokofuichikawamisatoyamanakakonakamichitabayamanishikatsuranarusawafujikawahayakawafujiyoshidafujikawaguchikouenohara長野京都岐阜大阪三重群馬千葉滋賀佐賀奈良adednelgaccogogror秋田愛知高知埼玉沖縄栃木熊本岩手青森山梨新潟島根鳥取長崎香川宮城石川大分宮崎茨城山口兵庫山形徳島広島福島福岡岡山富山静岡愛媛福井東京xn--4it168dhatenadiaryxn--vgu402ckawaiishophatenablogcocottenamaste北海道penneehimeiwateversestabachibashigagonnagunmapermahaccaakitaosakauh-ohblushkochiaichifukuikuroncapooitigohyogotokyokyotopunyuthickcheap0t00g00j0mie2-ddaapyawjg0amfemsubxiiboomoobutchueekpgwrgrherskrboyrdyupperunderflierchipsmydnsheavyangryhippygirlyrulez神奈川鹿児島和歌山bambinaxn--nit225kokayamasaitamaxn--k7yn95exn--1lqs03nsapporoparasitelolipopmcxn--efvn9sniigatafukuokatokushimafukushimahiroshimakagoshimafakefurokinawaxn--8pvr4ucoolblogxn--0trq7p7nnkawasakinagasakimiyazakichilloutxn--8ltr62kxn--klty5xpeeweezombiecutegirlxn--rny31hxn--uuwu58axn--ntso0iqx3axn--djrs72d6uytoyamanikitanyantakagawamimozanagoyaboyfriendxn--2m4a15egreaterchowderegoismyamagatafashionstorexn--elqq16hxn--pssu33lsendaimiyagixn--rht27zpecoriaomorisaloonwatsonvivianxn--djty4knobushipigboatnaganopinokoxn--f6qx53asadistvelvetsecretxn--5js045dchicappayamanashiibarakidigickgirlfriendxn--1lqs71dmongolianxn--c3s14mxn--qqqt11mtochigixn--5rtq34kparallelo0o0mondkobesagabonadecaoitanarafoolkilldecimainhiholomosblokilociaoundopupugifutankcrapflopnooroopsmodsholyjeezstripperpepperbittershizuokaxn--rht3dkitakyushureadymadeicurusversusmatrixxn--rht61ehungryfloppygloomycrankyhandcraftedlittlestarxn--klt787dxn--kltx9awhitesnowsunnydaytottorilovepoptheshopbuyshopxn--5rtp49cxn--d5qv7z876cwebaccelxn--kbrq7oxn--4pvxsxn--1ctwolovesickkumamotocatfoodxn--tor131oyokohamawakayamatonkotsuxn--ehqz56nxn--uist22hxn--6btw5axn--kltp7dyamaguchifrenchkisspussycatxn--4it797kxn--uisz3gbabybluexn--zbx025dnetgamersxn--7t0a264ckanagawaxn--6orx2rishikawaxn--ntsq17ghalfmoonschoolbusjellybeanxn--mkru45iusercontentlolitapunkxn--32vp30hsakurastoragehokkaidoshimanecandypopbabymilksupersaleweblikeraindropbackdropwebsozaikikirarahateblodaynightmeneacsccogoormobiinfoaeusxxorgmilcomnetedugovorgcomnetedugovbizinfotmprdorgmilcomnomedugovassnotairespresseassocoopgouvveterinairemedecinpharmaciensorgnetedugovtraorgcomedurepgovmeneperekgacscaiiocogoitoresmshsseoulbusanulsandaeguc01milvkimmvchungnamjeonnamjeonbukeliv-dnsgyeonggijejueliv-cdnincheondaejeongangwongyeongbukgwangjuchungbukgyeongnameliv-apicoeduindorgcomembnetedugovorgmilcomnetedugovjcloudorgcomnetintedugovperbnrinfocooyorgcomnetedugovipfscanvamypepw3sstorachakeeneticjoinmcinbrowserdwebcyonnftstoragemyfritzaemewphlxachotelltdorgcomwebsocschngonetintedugrpgovassnomgacsccoorgnetedugovbizinfo123websiteidorgmilcomasnnetedugovconfidmedorgcomplcschnetedugovaccoorgnetgovpresstmassoirseproxaccosoundcasthoptocraftvp4c66orgnetedugovitsmcdirmyboxbarsyedgestacksynologylogintonohostwebhopdiskstationi234tcp4hoocgroknoipprivmydsddnsdnsforlohmustransipdscloudfilegear-sgbrasiliafilegearframerbarsybarsyonlinecoprdorgmilcomnomedugovinforgcomnetedugovnameacprorgcomartnetedugovpresseinfoassoinstgouvorgnycedugovbarsydscloudjuorgcomnetedugovminisiteaccoororgcomnetgovorgmilcompronetintedugovbizmuseumnameinfoaerocoopaccoorgcomnetintedugovbizcooporgcomgobneteduorgmilcomnetedugovbiznameaccoorgmilneteduadvgovcoorgcomnetaltgovforgotherhiskeeneticispmanagernomassoprod5476132eastasiacentraluswesteuropewestus2eastus2rucdnwest1-usfra1-desandboxjls-sto1jls-sto3jls-sto2aglobalabglobalsslmapprodfreetlsmaplon-1lon-2ny-1fr-1sg-1ny-2paassnwebpaashostingjelasticnordeste-idcsocuserpagescwebfileblobservicebuscoreatlricnjsjelasticwebsitestoragesezagbinruhuukjptsmyspreadshopmynetnameakamaiorigin-stagingfrom-coipv64dynv6cdn77serveblogadobeaemcloudhicamsprytdnsupno-ipownipde5ovhicpfirewall-gatewaysytesmypsxbarsyusgovcloudapimyamazemyradwebakamaihdsaveincloudfastlylbfrom-lasubsc-paysquare7in-the-bandblackbaudcdnhomelinuxoninfernoctfcloudservebbsdns-dynamiccloudfrontakamai-stagingipifonyham-radio-opsenseeringclickrisingcommunity-profrom-nylocalcertgrafana-devedgesuite-stagingcloudflareanycasteating-organicatlassian-devmydattofeste-iplocaltotorprojectknx-serveredgekeycloudflareglobalcloudyclustercasacamserveftpakamaized-stagingakamaiorigindns-cloudmyeffectboomlabotdashbuyshousestwmailhetemlazure-mobilein-dslthruhereredirectmedynuddnsbouncemesupabaseluyanicloudappakamaicloudfunctionsdebiannhlfanpgafanstatic-accessin-vpnmysynologymafeloappudohomeftptrafficmanagersiteleafseidatmemsetcloudflarecloudaccesskeyword-onazure-apiis-a-chefdoes-itgets-itwebhopselfiphomeipkicks-assedgesuitewindowsserver-ontunnelmolemydissentscrapper-sitecloudflarecnuni5srcfggffiobbzabcdenodynuopikddnsvpndnsakadnselastxkinghostvps-hostfastlyhomeunixazureedgeshopselectdontexistmyfritzcloudjiffyalwaysdatasells-itsquaresbroke-itazurefddattolocalat-band-campmeinforumfamilydsazurestaticappsdefinimabplaceddnsaliasdynaliasnow-dnsblogdnsroutingthecloudendofinternetdsmynasakamaiedgemymediapcadobeio-staticakamaiedge-stagingakamaihd-stagingddns-ipprivatizehealthinsurancelive-onkrellianschokokeksmassivegridmysecuritycamerarackmazeserveminecraftfrom-azis-a-geekakamaizedmoonscalecryptonomicoffice-on-theusgovtrafficmanageradobeioruntimeedgekey-stagingreserve-onlinechannelsdvrdnsdojousgovcloudappcdn77-sslapps-1and1podzoneazurewebsitesdynathomescaleforceyandexcloudvusercontentisa-geekcdn-edgescoaemalcesappwriteazimuthtlonarvonoticeablestorecomwebrecnetperotherfirminfoartslgdloncogoiltdorgmilcolcomplcschgenngonetedugovbiznamefirmmobiacincoorgmilcomnomwebgobnetintedubizinfocomyspreadshopdemongovtransurl123websitehosting-clusterkhplaycistrongsnesosvalervålerxn--vler-qoaossandeheroysandeherøybøboheroyherøyxn--hery-iraxn--b-5gavalerbøboxn--b-5gasandesandexn--hery-iraxn--vler-qoavålerhåreålaahavaofsfvfhlolnlalrlhmfmtmahcostntbuåstrmreigersundmyspreadshopgálsáeidsvolltingvollgildeskalflorøvadsøvardøvanylvenxn--bhccavuotna-k7astrandaxn--kvnangen-k0axn--sknland-fxaxn--mosjen-eyarakkestadhyllestadnannestadvevelstadvaapstenordre-landsondre-landsøndre-landtjieltexn--vrggt-xqadsør-aurdalsor-aurdalheradstordmoldefordeførdeseljefedjeryggehemnexn--krehamn-dxasognegranesøgnebrynetjomevallebykletokkegiskedovretjømehobølvoldasaudatolgasømnaviknadønnasomnadonnatranafrananesnaraumasmolatrænafrænalesjasmølaørstaorstahitrafloraaukraloppafrøyarissasnasahalsagalsaromsaraisaráisafroyasnåsagronghobolfjelltydalårdalardalaskimharamkraanghkekråanghkesorumbarumhurumbærumsørummodumsálátbálátfrognbjugnvåganvagangulenskienløtenlotenstrynvefsnxn--merker-kuaskaunsveiobømlobomloskjåkvardoflorovadsosalatbalatsálatklæbuklabuselbubarduulvikskjakklepprisørxn--nttery-byaeflåeidflahofmilgolholsellomskifetvikdepvgsfhsaskerrisorhamarasnesåsnesrørosrorosxn--slat-5namasoynaroyvaroyluroydyroyaskoyradoyandoyrodoymeloyradøyandøyrødøymeløyaskøylurøydyrøymåsøyværøynærøyhoylandethøylandetdivtasvuodnalørenskoglorenskognesoddtangenxn--tjme-hraxn--smla-hraxn--stjrdal-s1aunjargalillehammerunjárgaxn--hamary-fyadavvenjargaxn--bearalvhki-y4a123hjemmesidegjerdrumxn--brnnysund-m8acxn--tnsberg-q1axn--mlatvuopmi-s4axn--snsa-roaxn--skierv-utaxn--brum-voatysfjordkvafjordeidfjordkvæfjordsongdalenmjondalenmjøndalenxn--gls-elackragerogáŋgaviikagangaviikasørreisasorreisasør-varangersor-varangerxn--risr-iraskiervaxn--frna-woaxn--trna-woakvinesdalleksvikleirvikrøyrvikroyrviksvelvikvenneslaevje-og-hornnessandnessjøenmarnardalvindafjordsandefjordenebakksnillfjordullensvangxn--trany-yuabrønnøysundnamsskoganaustevollxn--stjrdalshalsen-sqbnord-aurdalnord-frontrøgstadtrogstadgrimstadflakstadgjerstadxn--sandy-yuaxn--leagaviika-52bnore-og-uvdalvegarsheixn--rlingen-mxaxn--ggaviika-8ya47hvegårsheikarlsoykvitsoymasfjordenhamaroyinderoyosteroydavvenjárgasauheradguovdageaidnuxn--vre-eiker-k8abronnoysiellakkrødsheradkrodsheradkvinnheradbrønnøyxn--mtta-vrjjat-k7afxn--lrenskog-54akvitsøyvárggátkarlsøyosterøyinderøyhamarøybronnoysundxn--aurskog-hland-jnbbahccavuotnabáhccavuotnagiehtavuoatnastor-elvdalmidtre-gauldalxn--gildeskl-g0akarasjokevenassixn--bievt-0qaxn--yer-znalebesbynessebyxn--hbmer-xqamalselvmålselvxn--unjrga-rtamøre-og-romsdalmore-og-romsdalhareidmelandørlandorlandstrandålgårdsolundalgardafjordåfjorddielddanuorrikautokeinoxn--stre-toten-zcbskodjeaejriestangeliernebamblestokkefauskesnåasesnaasekongsvingerlangevagberlevagxn--flor-jrahattfjelldalostre-totenøstre-totenvestfoldxn--mely-iraálaheadjualaheadjunordreisaxn--troms-zuaxn--lgrd-poacporsangerflatangerstavangerleikangerbremangersamnangergieldakarasjohkaxn--rdy-0nabfrostautsirasnoasatromsaxn--sr-aurdal-l8aflekkefjordjølsterjolsteraremarkhedmarknååmesjevuemienaamesjevuemiexn--vard-jrarollagmeråkermerakerorskogørskogxn--bdddj-mrabdákŋoluoktaxn--osyro-wuaaknoluoktatrysilskjervøymandaljondalbindalrindalmeldalsuldalorkdalsigdalalvdallærdalhurdalsirdalverdallerdallardaloppdalåseralaseralhadselkragerødivttasvuotnaoverhallasteinkjerxn--hnefoss-q1askedsmokorsettromsøxn--dyry-iravestre-totenmuseumxn--sandnessjen-ogbrahkkeravjufylkesbiblbájddarbajddarxn--laheadju-7yarennesøyxn--koluokta-7ya57hxn--hgebostad-g3aleirfjordstorfjordbalsfjordbåtsfjordbatsfjordmuosátbievátloabátkárášjohkanøtterøyxn--mjndalen-64anordkappláhppilahppialstahaugsiljanverranrøykenroykenhaldenlyngenbergenhortenhønefosshonefosstroandinbeiarnvarggatosoyroosøyrotromsoidrettmuosatbievatruovatloabatvoagattynsetnessetxn--indery-fyaskánitskanitraholtråholtxn--ystre-slidre-ujbandebusarpsborgbearduxn--karlsy-fyahordalandjorpelandjørpelanddeatnuringsakersør-odalsor-odalxn--slt-elabringerikeaudnedalnittedalnissedalhemsedalslattumsurnadalxn--blt-elabelverumstjørdalnaustdalhjartdalgjøvikfyresdalhasviknarviklarvikgjovikmalvikgamviklenvikporsgrunnstjordalengerdaldrobakdrøbakxn--msy-ula0hvestvagoyxn--vgan-qoaxn--ryken-vuaxn--lten-graxn--stfold-9xaxn--hpmir-xqaxn--lury-iramálatvuopmimalatvuopmitysværkirkenesbirkenesmoskenesbáidárxn--fjord-lraxn--rdal-poabahcavuotnabáhcavuotnaxn--frde-gralindåsbearalvahkixn--hobl-iraráhkkerávjuxn--loabt-0qavågåáltábodøsundlundraderådeetnetimeholeauregrueoddavagavegaranatanaarnasolasulaaltalekafusavangbergkvamåmliamlibokntinnroangranosenoslobodorøstroststatåmotamotivguprivøyeroyerliermossvossxn--nvuotna-hwalusterlunnermarkerhábmerhabmerhvalerfjalerxn--rholt-mratysvarbaidarfitjargaularhápmirhapmirmelhusfosnesøksnesoksnestysneshemnesevenesflesbergeidsbergtonsbergtønsberglindasxn--sndre-land-0cbnamsosxn--srum-graøystre-slidreoystre-slidrevestre-slidretrondheimbalestrandxn--langevg-jxaaustrheimxn--skjk-soavagsoyaveroysandoykarmoyfinnoytranoyvestbytranbysykkylvenxn--hyanger-q1aspjelkavikandasuoloxn--fl-ziaxn--drbak-wuastathellexn--sr-varanger-ggbtelemarkxn--bhcavuotna-s4axn--porsgu-sta26fčáhcesuolocahcesuoloakrehamnåkrehamnsandøykarmøyfinnøytranøyvågsøyaverøynamdalseidxn--lesund-huabadaddjaxn--vegrshei-c0axn--btsfjord-9zagildeskålporsanguxn--trgstad-r1anávuotnanavuotnahammerfestxn--sgne-graxn--brnny-wuacibestadharstadnarviikaevenáššivestnesgjemnessandnesagdenesrennesoyxn--avery-yuaxn--tysvr-vrabearalváhkikongsbergspydebergrandabergxn--andy-iradavvesiidaxn--krdsherad-m8aporsáŋgufredrikstadbjerkreimringeburennebuaurskog-holandnotteroyxn--vgsy-qoa0jxn--rmskog-byaskierváivelandbyglandfrolandaurlandforsandxn--bjddar-ptamidsundålesundalesundfetsundfarsundovre-eikerøvre-eikerakershusxn--moreke-juasørfoldøstfoldostfoldsorfoldhøyangerhoyangerlevangerorkangertanangerxn--vestvgy-ixa6olillesandulsteinxn--rennesy-v1agranvinskjervoyxn--klbu-woalavagisxn--h-2faxn--ryrvik-byakafjordkåfjordseljordfolkebiblxn--gjvik-wuajevnakerxn--kfjord-iuabudejjuxn--kranghke-b0axn--davvenjrga-y4axn--rland-uuaxn--ldingen-q1axn--mlselv-iuaxn--rady-iraxn--linds-prabrumunddalxn--ygarden-p1amo-i-ranaeidskogrømskogromskoghjelmelandxn--finny-yuaxn--sr-odal-q1axn--skjervy-v1aballangenkvanangenkvænangengratangenxn--hmmrfeasta-s4acvossevangensuohkanxn--rde-ulaxn--mli-tlaxn--ksnes-uuanordlandskanlandskånlandsortlandfuoiskuxn--rros-graxn--hcesuolo-7ya35bxn--eveni-0qa01gagaivuotnagáivuotnaxn--seral-lradrammenmodalenmosjoenjan-mayentorskensteigengloppenxn--snes-poamatta-varjjatxn--sr-fron-q1aomasvuotnajessheimbådåddjåxn--krager-gyaxn--kvfjord-nxaxn--asky-iraxn--snase-nraxn--bidr-5nacholtålenxn--vads-jraxn--jlster-byamosjøenxn--rst-0nastavernxn--ostery-fyaxn--oppegrd-ixaxn--sknit-yqaxn--risa-5naoppegårdskiptvetrendalenholtalenxn--mot-tlaxn--lhppi-xqaxn--holtlen-hxaxn--srreisa-q1akopervikxn--muost-0qaxn--bmlo-grahokksundkvalsundegersundxn--karmy-yuaullensakerxn--hylandet-54axn--kvitsy-fyaxn--bod-2nalangevågberlevågkristiansandxn--rsta-frahornindalstjørdalshalsenstjordalshalsensandnessjoenhámmárfeastaxn--lrdal-srasør-fronsor-fronnord-odalkristiansundmátta-várjjatvestvågøynesoddennotoddenbuskerudøygardenoygardensalangenlavangenralingenrælingenlodingenlødingenleaŋgaviikalaakesvuemieleangaviikauenorgexn--srfold-byaaskvollxn--rskog-uuaxn--nry-yla5gxn--vry-yla5ghammarfeastaxn--rhkkervju-01afxn--givuotna-8yakommunekrokstadelvanedre-eikerhagebostadhægebostadxn--berlevg-jxakviteseidxn--s-1faxn--l-1faxn--nmesjevuemie-tcbafuosskomoårekemoarekexn--lt-liacxn--jrpeland-54asvalbardoppegardholmestrandtvedestrandsogndalsokndalarendalsunndalfolldalxn--krjohka-hwab49jlyngdaletnedalnorddalsaltdalgausdalskedsmovaksdalgjesdalstordalxn--frya-hraaarbortedrangedalxn--smna-graaurskog-hølandxn--vg-yiabtjeldsundhaugesundlindesnesxn--mre-og-romsdal-qqbxn--dnna-gradynmerseineshacknetenterprisecloudmineaccomaorimāoriorgmilcriiwigennetschoolhealthkiwigovtgeekxn--mori-qsacloudnsparliamentcomedorgcompronetedugovmuseumwebsitekinservicebarsywebsitebuildereerobookheimdnsleapcelleero-stagetechcrscsslorigingohomecdbedeeeiemesecabgngilnlalplchfisiincnnoroptatitmtltruauhulumkdkukskjplvtrgrfrkrhrusesismycynzcznetinteduassoososcloudstgbetaaezaeuhkusjshatenadiarycdn77hoptozaptois-a-knightmyftpno-ipjpnddnssdpdnsspdnsbarsysweetpepperis-a-bruinsfanis-very-sweetservegameis-a-soxfanhomelinuxcdn77-secureservebbsmisconfusedwebredirectblogsitefreedesktopcouchpotatofriestoolforgeaccesscamis-lostreadmyblogsmall-webfedorapeopleserveftpis-a-celticsfanmywirepotagertwmailin-dslsellsyourhomeread-booksfreeddnscable-modemis-savednflfanufcfanmlbfanstuff-4-saleendoftheinternetin-vpnmy-firewallhomeftpis-localis-a-chefboldlygoingnowherewebhopselfipkicks-assroxatunkcamdvrfedoraprojectgotdnsdvrdnsdyndnspubtlspimientahomeunixdontexistfedorainfracloudwmflabsfspagesbmoattachmentsteckidsfamilydsdnsaliasdynaliasnow-dnscloudnsdoomdnsduckdnsblogdnshomednsroutingthecloudendofinternetdsmynasip-dynamicpoivronhttpbinmyfirewallis-very-evilmysecuritycamerais-a-linux-userwmcloudis-a-geektuxfamilyis-a-candidatedoesntexistis-very-badhobby-sitegame-hostaltervistais-foundis-a-patsfandnsdojohepforgepodzonedynservcollegefanis-very-goodfrom-meis-very-niceisa-geeknerdpolacmedsldingorgcomnomgobabonetedupleskaemhlxmyboxrockyprvcydeuxfleurspdnscodebergheyflowstatichostorgmilcomnomgobneteduorgcomeduiorgmilcomngonetedugovcloudns1337ngrokacorggogfamcomwebgobnetedugokgopgkpgovgosbizpasaugumicsopozpapuwmwsrprusiskwpspkppspkmpspokeoiawsawifoumsdnskokwpmuppuppsppiwwiwoowuzswkzoschrzpisdnwzmiuwwitdpssewsseumigugimoirmpinbwinbwiihupporzgwgriwupowwskrwioswuozstarostwokonsulattmpccopruszkowmyspreadshopostrodakartuzyopolegminamediaustkazgorajgoraolawailawalomzawloclradombytomjaworznotargilubinkoninzagantorunkutnokepnonakloczestsopotsanokturekplockslasksklepzarowlukowmedaidgdaorgmilrelcomnomatmgsmartneteduelkgovwawsossexbiztgorysejnytychypomorzeboleslawiechomesklepsdscloudunicloudzakopanelegnicarawa-mazbydgoszczswidnikkrasnikwloclawekbielawamragowograjeworealestatebeskidykaszubymalopolskaprzeworskswiebodzinlecznadfirmaszkolawarmiagdyniamiastakazimierz-dolnymalborkswidnicadlugolekaostrolekapodlasieelblagtravelsimplesitezachpomormielecszczecinnieruchomosciwalbrzychlezajsklublinbedzinpoznanwielunmielnooleckostarachowicedkontopowiatwroclawrybniksuwalkileborkslupskgdanskostrowwlkptarnobrzegtourismwegrowkrakowglogowyou2pilanysamailwrocinfoagroautobeepshopprivlapypiszlodzcfolksecommerce-shopmazurypulawyskoczowrzeszowpomorskiezgierzkaliszolkuszlowiczostrowiecsosnowiecmazowszewodzislawbialowiezazgorzeleckatowicepabianicejelenia-gorawolominkarpaczsieradznowarudaczeladzkonskowolaskierniewiceswinoujscieturystykabieszczadycieszynketrzynolsztynbialystokbabia-goraprochowicewarszawastalowa-wolapolkowicegorlicegliwiceponiatowalimanowalubartowaugustowkobierzyceopocznognieznoszczytnokolobrzegshoparenapodhalebielskoklodzkostargardatwithplayitownnamecoorgnetedugovacorgcomproestnetedugovbiznameislaprofinforechtngrokmedaaaacacpaenglawjurbarbarsykeeneticavocatacctcloudnsorgcomsecplonetedugov123paginaweborgcomnetintedugovnomepublidkinbarsygovx443cloudnsorgmilcomnetedugovcooporgmilcomschnetedugovnamecomcannetlibassoaemclantmcontstoreorgcomnomrecwwwbarsyfirminfoshopartsstackitmyddnswebspacelima-cityacincooxorgedugovbarsybrendlyhbvpsvpsspectrumlandinghostingacppmordoviamcprecbgorgmilcomspbnetintedumsknovgovbirrasmcdirmytismircloudvladimirnalchikadygeyamarinepyatigorskmyjinobashkiriaeurodirvladikavkazna4ugroznykustanaikalmykiacldmaildagestaniranbuildcanvaliaravalwixdevelopmentappwritemigrationneedleverceldatabasestackitcodereplravendbonporterlovableaccoorgmilnetgovcoopmedorgcompubschnetedugovservicemecomygovorggovtvmedorgcomnetedugovinfoedgfacbmlonihkutwpsryxzbdtmacfhppmyspreadshopbrandpartiorgcomfhvpress123minsidaitcouldbeworlanbibkommunalforbundfhskiopsyskomvuxkomforbnaturbruksgymnloginlineorgcomnetedugovenscaledeuusentbotdaorgmilcomnetgovnowteleporthashbangplatformlovablebarsyshopwarebasehoplixbarsyonlinemsf5gitappgitpagecofigma-govcaffeinefigmacanvasoltstputerbarsysupportchatgptsquareomniweopensocialcpanelnotionnovecorewpsquaredpreviewjelecyonbyensrhtfastvpspieboxconvexjouwwebheyflowplatformshloginlinemadethissourcecraftclouderaorgorgcomartedugouvunivmeorgcomnetedugovsurveysstatichfheiyuxs4allprojectmyfastubervibehostapp-ionosdeployagentmecoorgcomschnetedugovbizcncostoreorgmilcomneteduembaixadaconsuladokiraranohoprincipesaotomeheliohobarsystorebaseshopwaresellfyabkhaziavologdamordoviapenzalenugsochinavoiexnetspbmsknovnorth-kazakhstanashgabadkareliaarmeniageorgiavladimirnalchikivanovobukharaadygeyakhakassiakalugakrasnodarjambylaktyubinsktroitskbryanskobninskkurganazerbaijanpokrovskbashkiriatselinogradvladikavkazmurmansktulatuvamangyshlaktashkentchimkentgroznykaragandatermezarkhangelskkustanaikalmykiabalashoveast-kazakhstankaracoldagestantogliattibarsyredorgcomgobedumirenknightpointaccoorgjelasticdiscoursecleverappsschacmiincogoornetonlineshopcogoorgmilcomwebnicnetintedugovbiznametestcoorgmilcomnomnetedugovorangecloudpersoindorgcomfinnatnetgovensmincomtourismintlinfox0611oyaorgmilcomnetedugovquickconnectvpnplusnettprequalifymeaddrmyaddrntdllwadlnctvavdrk12orgmilpolbeltelcomwebgennetedutskkepgovbbsbiznameinfocoorgmilcompronetedugovbiznameinfobetter-thanworse-thansakurafromdyndnson-the-webmymailerorgmilurlcomneteduidvgovmydnsgameclubebizmeneacsccogotvorhotelmilmobiinfovodteiflgplkmsmsbcckhincndnvncoztltmkckppzpdprvcvkvlvcrkrkscxuzchernovtsyrivneyaltaodesavolynrovnolutskltdinforgcomnetedugovbizvinnicazhitomirternopilpoltavakropyvnytskyizaporizhzhiasevastopolsebastopoluzhgoroduzhhorodkharkovkharkivvinnytsiakhmelnytskyizaporizhzhecrimeaodessazhytomyrnikolaevcherkassydonetskluganskluhanskkirovogradivano-frankivskchernivtsikrymkievkyivlvivsumyzakarpattiamykolaivcherkasychernigovkhersonchernihivdnipropetrovskdnepropetrovskkhmelnitskiyneacsccogoorusorgmilcomedugovvmdhmyspreadshopadimono-ipbarsybytemarkbarsyonlinelayershiftnh-servretrosnubapicampaignservicelugaffinitylotteryweeklylotteryraffleentrygluglugsmeaccoindependent-inquestnimsitecopropymntltdorgplcschnetgovnhsbarsyindependent-commissionindependent-reviewpolicepublic-inquiryindependent-panelconnhospindependent-inquiryroyal-commissionoraclegovcloudappscck12libccphxcclibpvtparochchtrcck12libcceatonk12coglibtecgendstmusann-arborwashtenawcck12glghcck12sealibforksolympiabainbridge-islkeyporthoquiamyarrow-pointcentraliaport-townsendsequimport-ludlowrentonsilverdalebremertonredmondsheltonbellevueport-orchardport-angeleskingstonchehalisaberdeengig-harborseattlepoulsboidmdndsddemenegacalamaiavawapailalflnmdcncscohnhmihiviwiriinmntnmocoutvtctmtgunjokakwvnvprarorasmskstxwynykyazisadninsnngosrvis-bymircloudservernamepointtoenscaledland-4-salefreeddnsstuff-4-saleazure-apinoipcloudnsgolffanheliohostazurewebsitesgvorgmilcomgubneteducoorgcomnetd0egvorgmilcomnetedugovmydnsiacostoree12orgmilcomnomwebgobbibrectecnetintedugovraremprendefirminfoartseducok12orgcomnethidnsidacaiiosonlahanamhanoicamauhueorgcompronetintedugovbizbacninhtayninhhoabinhnamdinhtravinhhaiphongvinhlonghaiduongquangnamquangtrithuathienhuequangninhbacgianghaugiangquangbinhsoctrangbentrethanhphohochiminhdanangkontumhatinhkhanhhoathanhhoahealthgialailaocaiyenbaibackanngheanlonganphuyenphuthocanthodaklakdongnainameinfovinhphucdongthapkiengiangtiengiangquangngailaichaulangsonlamdongdaknonghagiangangiangcaobangbinhduongninhthuanbinhthuanbaclieuthaibinhninhbinhbinhdinhtuyenquanghungyenbaria-vungtauthainguyendienbienbinhphuocschbizputerimagine-proxyorgcomnetedugovcloud66advisormypetsdyndnsxn--8dbq2axn--4dbgdty6cxn--5dbhl8dxn--hebda8bxn--80auxn--d1atxn--c1avgxn--o1acxn--o1achxn--90azhxn--55qx5dxn--uc0atvxn--od0algxn--wcvs22dxn--gmqw5axn--mxtq1mxn--12c1fe0brxn--h3cuzk1dixn--12co0c3b4evaxn--12cfi8ixb8lxn--o3cyx2axn--m3ch0j3axn--j1adpxn--90amcxn--90a1afxn--h1ahnxn--j1ael8bxn--h1alizxn--c1avgxn--j1aefxn--80aaa0cvacxn--41acaffeineexeopentunnelbotdashtelebitorgtmaccoagricorgmilnomwebnicngonetaltedugovlawnisschoolgrondaraccoorgmilcomschnetedugovbizinfoprg1-zeropstritonstackitlimazeropsaccoorgmilgovяспборгкоммскбизмирсамаракрымсочиакодпроргобрупрצהלממשלישובאקדמיהองค์กรธุรกิจรัฐบาลศึกษาทหารเน็ต教育網絡組織公司政府個人닷넷한국澳门新闻澳門联通家電嘉里招聘通販닷컴삼성コムგეбгрфеюadcdbdgdidmdsdtdaebedeeegeiejekemenepereseveyegabacalamanauavapaqasazacfbfafgfnfpfwftfbgcgagggegkgngmgsgpgvgtgugilmlnlalclglplsltlhmimjmkmmmomambmcmdmfmgmzmpmsmtmgbbblbsbecccacnclcmcvctcscmhkhghchbhthphshlinikifigiaibicivisikninhnmncnbngnsnpnvntnjoionomobocoaofodorosotoptstttytatbtetgtithtmtltrusuvuaucueuguhulumunufjdjbjtjsjlkmkhkfkdkcktkukskpkgpmpnpkpjpgqaqmqiqsvtvcvbvmvlvrwpwtwzwbwcwawgwkwmwtrsrprgrfrercrbrarnrmrlrkrirhrwsusrssspsgsesbsaslsmsissxmxaxcxuypysylymykygybycyuztzsznzmzkzdzczbzazελευ世界台灣购物公益点看臺灣网络書籍在线网站手机机构大拿游戏信息台湾谷歌慈善商标香港中国餐厅网址中國商城食品微博政务移动集团公司八卦商店健康网店政府时尚佛山中信娱乐广东企业homedepotengineeringاماراتrepublicankuokgroupversicherungchannelcitadelxn--pgbs0dhxn--b4w605ferdstatebankwebsitexn--mgb9awbf亚马逊淡马锡alibabaxn--ngbc5azdxn--mgbbh1axn--45br5cyltoshibabuildworldcloudtradeguideplacespacedancemoviephoneprimesmilebiblestyleappleazurestoreskypegripexn--l1accdrivelottehorsehouseleasechasereisestadahondaomegaaetnaamicaninjanokiamediadeltavodkaedekaosakapizzaslingemailgmailtirolshelltmallfinallegaltotalhotelamfamforumrehabmusicciticricohcoachwatchboschearthfaithirishmiamiarchidubaiguccipraxiみんなストアセールcanonsalononionnikonepsonkoelngreensevencrownikanoradioaudioweiboglobopromogalloyahoociscorodeovideomangobingotokyovolvolottokyotophotosmartsportquesttrusthyattjetztadultcymrubaidutushuxn--kprw13dubankclickblackmerckgroupsharpcheapnowtvxn--h2brj9cקוםհայоргсрбмонкомбелмкдқазрусукрمصرقطرعربكومdadcfdmedwedredphdthdbidpidkrdmsdltdiceonewmeglemoerwecfageacbanbambaaaammakianraspacpaaxawtfbcgaegongingaigvigorgdogdhlmilrilonlaolloluoljllcalgalnflafltelsrlfrllplkimibmcamcombommomifmabbjcbscbcabnabtabmlbpubabcbbcnecincpncllcstcwtcpwcnyckfhbzhovhmoiskiobisbitcifyituipinvinwinxincbnbcnmanfangdnmenrenkpnmtnyunrunfununobiojioriohbogmofooboooooacoecoceongoproartistottnttbbtcateatlatvetpetbetnethktmitfitintjothotgotdotbotprueduicujnjyouinknhktdkappsapgapmapdnptopgopllpjmpzipvipripesqtrvdtvitvdevmovgovhivnrwlawsewnewbmwwownowhowdvrftrmtrsfrbarcartvscrseusawsupsubssbsadsddsldssasbmsmlsxxxboxfoxgmxtjxsextaxbuyflydiysoyjoyskypaydaygayxyzanzbizwebersenerpokerlameractortatarsolarລາວคอมไทยtourslocusnexuslexusgiftsbeatsboatspartspressglassswissकॉमनेटtiresgivescodeshomesgamestunesshoescardswalesloansvegastoolsdealsautosparisファッションworkssucksrocksxeroxforexfedexpartylillymoneystudyrugbytoraytoday中文网xn--unup4y天主教飞利浦新加坡enterprises我爱你嘉里大酒店christmasxn--fct429kholdingsxn--8y0a063axn--mgbx4cd0ablifestyleabogadoallstatenetbankكاثوليكxn--s9brj9cxn--gk3at1ebestbuycharityxn--55qx5dmicrosoftpropertybasketballhomegoodscorsicajewelrygallerygrocerysurgerycountrybrusselsverisignferreroxn--czr694bhdfcbankcommbanksoftbankپاكستانپاکستانnextdirectالسعوديهالعليانxn--h2brj9c8cxn--80adxhksshikshaxn--mgbai9azgqp6jcuisinellabarclayscatholicxn--kpry57dcompanyxn--xhq521bblackfridayxn--mgba3a3ejtsandvikxn--d1acj3bacademydownloadمليسياxn--j1amhxn--w4r85el8fhu5dnraipirangaathletaxn--fhbeixn--mgbqly7cvafrzuerichxn--c2br7gஇலங்கைcontractorsxn--io0a7igraphicsinsurancetemasekxn--xkc2al3hye2amotorcyclesphotographydirectoryplumbingxn--vhquvclothingtrainingcleaningwilliamhilllightingxn--mgba3a4f16ashoppingcateringeducationokinawapicturesventuresproductionsxn--9et52uwalmartഭാരതംsupportrealestatecapitalonexn--nqv7fs00emaauspostfloristdentistxn--qxamgodaddybradescobargainsmitsubishikerryhotelsxn--9dbq2axn--3pxu8kimmobilienxn--fjq720axn--mgbtx2bholidaymckinseymadridbusinessbuildershelsinkixn--4gbrimмоскваالسعودیةcoffeedegreelacaixapartnersalsaceofficeabbvievoyageorangegeorgeonlinechromemobilekindlegoogleoraclecircleschulesecureinsurexn--mgba7c0bbn0aestatexn--mgbc0a9azcgcruisehangoutxn--vuq861bxn--42c2d9arexrothfirestoneuniversityxn--nnx388alifeinsuranceextraspaceонлайнvermögensberatersoftwarexn--fiqs8sxn--mgbab2bdxn--w4rs40ltiendaभारतम्africatoyotaotsukasakuracameracreditcardnagoyaconsultingnetworkjunipertheatermonsterprogressivepioneerxn--55qw42gracingdatingvotingvikinglivinggivingxn--bck1b9a5dre4cbrotherweatherjoburgفلسطينlplfinancialxn--clchc0ea0b2g2a9gcdfutbolschoolsocialglobaldentalwoodsidechanelairtelmatteltravelrealtorwebcamstreamభారత్unicomalstomxn--nodexn--6frz82gmuseumfurniturexn--rvc1e0am3exn--mix891faccenturexn--11b4c3dismailineustardiscountquebeccomsecclinicservicesxn--y9a3aqxn--c1avgswatchchurchsearchالاردنmarketingcontacthealthmonashshoujisanofitaipeiamericanexpresssuzukiアマゾンクラウドポイントbhartiグーグルxn--mgberp4a5d4armemorialxn--1qqw23alondonmormoninstitutevisionbostonnortoncouponmaisonamazonvirginberlindesigndurbanolayannissananquanxihuanhitachikaufengardenreisenbayerntechnologydatsunxn--90a3aclatinocasinostudiophysioxn--ngbe9e0apharmacytattootaobaoaramcoexpertreportabbottdirectselectimamatfairwindspictettargetmarketintuittravelersinsurancecreditdupontryukyusuppliesxn--tckwebnpparibasschmidtmerckmsdyodobashirestaurantbridgestonecricketxn--fpcrj9c3dbostikbroadwayattorneylefrakemerckxn--fiq228c5hscareersfarmerswinnersflowersxn--wgbh1cguitarsxn--54b7fta0ccxn--p1acfmakeupgalluplandroverxn--kcrx77d1x4agoldpointbauhausxn--mgbayh7gpahiphopplaystationxn--mgba3a4fraxn--eckvdtc9dhyundaixn--gckr3f0fistanbulticketsmarketsflightschintaireviewsxn--3e0b707ewindowsxn--fiqz9sfinancialxn--fzys8d69uvgmابوظبيdiscoverreviewবাংলাxn--5su34j936bgsgmoscowobserverapartmentsдетиارامكوсайтeurovisionxn--i1b6b1a6a2exn--xkc2dl3a5ee0hتونسموقعبارتڀارتشبكةعمانبيتكعراقreadkredbondlandbandfundfoodprodgoldfordtubecafesafelifeggeeieeefreefagepagegugezonewinememenamegamesaleablebikenikelikecarecbreherefiresaveloveliveblueartedatesitevotecaseluxebofamodaltdaasdatiaayogasinavanashiaasiajavabbvatevavivadatazaraarpacasavisasncfprofmaifsurfgolfdvagsongbingpingwangkpmggoogblogpohlfailcooldellcalldeallidlsarlfilmteamroomfarmimdbarabclubhdfcicbchsbcgmbhrichtechfishdishcashminiernikddiaudiwikimobitaxicitikiwidesiqponskinloanakdnwienopenporncerntownimmolimoolloinfonicofidolegosaxozeroaerovivoautovotomotofastbestresthostpostnextlgbtchatseatgiftmeetdietreitmintrentgentspotscotguruitausohumenucyoubanklinkpinkdclktalksilkbookseekworkrsvpaarpjeepshopcoophelpcamppccwshowbeerstarruhrflirweirhaircarsparsjprshausplusnewstipstoysjobskidsfanspicsdocsxboxamexsexynavycitysonyarmyallybabyplaydeliverybuzzgbizlamborghiniphilipsලංකාಭಾರತfitnessexpresslanxesspfizercenterwalterlawyersoccercareerkosherbrokerlockerdealerdoctorauthorxn--mgbqly7c0a67fbcvermögensberatungjaguarxn--pssy2uxn--hxt814eflickrrepairrogersairbusxn--mgbai9a5eva00beventsyachtsxn--t60b56aভাৰতভারতभारतभारोतviajeshermeshughesxn--j1aefसंगठनvillasଭାରତclaimshotelsભારતzapposphotosjuegoscondostatamotorsgratistennisਭਾਰਤtkmaxxtjmaxxschaeffleryandexxn--80aswgrealtysafetybeautyluxuryxn--3ds443gsupplyfamilyxn--o3cw4hhockeysydneyxn--90aenissayalipayenergycomputeragencyxn--rovu88b電訊盈科xn--gecrj9cstatefarmaccountantaquarelleolayangroup香格里拉xn--p1ai组织机构xn--1ck2e1bxn--mgbt3dhdschwarzموريتانياabudhabinowruzkomatsufujitsuhospitalxn--80asehdbxn--mgbtf8flxn--j6w193gxn--yfro4i67oprudentialxn--flw351ecruisescoursesrecipesxn--e1a4cferrarixn--ses554gxn--wgbl6awatchesstaplessinglesxn--mgbcpq6gpa1axn--otu796dpropertiescreditunionxn--mgbah1a3hjkrdstockholmhisamitsuالسعوديةstcgroupdomainsoriginscouponsbloombergclubmedfroganslimitedxn--80aqecdr1aexposedinternationalequipmentbarclaycardxn--q7ce6axn--mgbi4ecexpprotectionassociatesconstructionxn--cck2b3bxn--45q11candroidfoundationישראלxn--mgbca7dzdocliniqueboutiqueengineerxn--qxa6asystemsfirmdalefashionauctionxn--nqv7finfinitirentalsreliancetradingweddingfishinghostinggentingbookingcookingxn--3hcrj9cgraingerxn--czrs0tdemocratsamsungyokohamaxn--h2breg3evexn--nyqy26alundbeckmelbournevacationssolutionsfrontierxn--vermgensberatung-pwbmanagementxn--cg4bkixn--mgb2ddeslincolnhamburgsandvikcoromantblockbusterairforcebarefootxn--4dbrk0ceinvestmentsfeedbackcommunityxn--ngbrxالبحرينdiamondsamsterdamhealthcareredumbrellaxn--mxtq1mxn--2scrj9cagakhanxn--mgbpl2fhкатоликcaravanசிங்கப்பூர்richardlimortgageamericanfamilyxn--fzc2c9e2cscholarshipssaarlandxn--imr513nvlaanderensamsclubgoodyearkitchenஇந்தியாweatherchannelallfinanzxn--kput3iالسعودیۃxn--90aisxn--efvy88hالجزائرxn--mgbaam7a8hexchangejpmorganxn--tiq49xqyjfidelitysecurityxn--mk1bu44cwanggouxn--fiq64bxn--6qq986b3xlxn--mgbbh1a71exn--80ao21amarshallsxn--5tzm5gtravelerspanasoniclatrobeyoutubeaccountantsxn--rhqv96gxn--cckwcxetdanalyticsxn--ygbi2ammxبازاربھارتسوريةorganicfreseniusسورياxn--9krt00axn--qcka1pmcxn--jlq480n2rgdeloittesciencefinancexn--jvr189mxn--30rr7yhomesensehotmailbaseballfootballleclercboehringerxn--q9jyb4cxn--mix082fاليمنهمراهpolitieسودانايرانایرانnetflixyamaxunxn--lgbbat1ad8jcollegestoragecapetowncolognekerrypropertiesxn--mgbgu82axn--ogbpf8flxn--czru2dwhoswhociprianilasallexn--g2xx48cforsalebanamexaudiblexn--vermgensberater-ctbxn--zfr164bericssonvanguardxn--45brj9cindustriestheatremarriottxn--3bst00mcomparexn--mgberp4a5d4a87gcapitaldigitalالمغربbarcelonashangrilaxn--d1alfcalvinkleinwwwcitysapporokawasakinagoyasendaikobekitakyushuyokohamackjp",F_=621,Z_=625,E2=Vs.length,T2=Bu.length,R2=new Uint32Array(T2),_u=new Uint32Array(T2),kh=new Int32Array(E2).fill(-1);for(let e=0,a=0;e<E2;e+=1)for(let s=qu[e];s<qu[e+1];s+=1){R2[s]=a;const r=a+Bu[s];let u=5381;for(let f=r-1;f>=a;f-=1)u=u*33^xh.charCodeAt(f);_u[s]=u>>>0,Bu[s]===1&&xh.charCodeAt(a)===42&&(kh[e]=s),a=r}let pi=-1,wh=0,Sh=0;function Lb(e,a,s,r){if(Bu[e]!==r)return!1;const u=R2[e];for(let f=0;f<r;f+=1)if(xh.charCodeAt(u+f)!==a.charCodeAt(s+f))return!1;return!0}function Ub(e,a,s,r,u){let f=qu[e],g=qu[e+1];for(;f<g;){const b=f+g>>>1,v=_u[b];if(v<a)f=b+1;else if(v>a)g=b;else{for(let k=b;k>=f&&_u[k]===a;k-=1)if(Lb(k,s,r,u))return k;for(let k=b+1;k<g&&_u[k]===a;k+=1)if(Lb(k,s,r,u))return k;return-1}}return-1}function Gb(e,a,s){let r=a,u=e.length,f=5381;pi=-1;for(let b=e.length-1;b>=0;b-=1){const v=e.charCodeAt(b);if(v===46){const k=b+1;let S=Ub(r,f>>>0,e,k,u-k);if(S===-1&&(S=kh[r]),S===-1)return pi!==-1;r=Vb[S],(Vs[r]&s)!==0&&(pi=r,wh=k,Sh=u),u=b,f=5381}else f=f*33^v}let g=Ub(r,f>>>0,e,0,u);return g===-1&&(g=kh[r]),g!==-1&&(r=Vb[g],(Vs[r]&s)!==0&&(pi=r,wh=0,Sh=u)),pi!==-1}function D2(e,a,s){if(Q_(e,a,s))return;const r=(a.allowPrivateDomains?2:0)|(a.allowIcannDomains?1:0);if(Gb(e,Z_,r)){s.isIcann=(Vs[pi]&1)!==0,s.isPrivate=(Vs[pi]&2)!==0,s.publicSuffix=e.slice(Sh+1);return}if(Gb(e,F_,r)){s.isIcann=(Vs[pi]&1)!==0,s.isPrivate=(Vs[pi]&2)!==0,s.publicSuffix=e.slice(wh);return}s.isIcann=!1,s.isPrivate=!1;const u=e.lastIndexOf(".");s.publicSuffix=u===-1?e:e.slice(u+1)}const Pu=H_();function Y_(e,a){return _2(Pu),z2(e,0,D2,a,Pu).hostname}function X_(e,a){return _2(Pu),z2(e,5,D2,a,Pu).domainWithoutSuffix}const J_={allowPrivateDomains:!0};new R_({fuzzyLink:!0,fuzzyEmail:!1}).tlds(D_);function ql(e){if(e==null)return null;const a=e.trim();if(!a)return null;const s=Y_(a);return s?s.replace(/^www\./i,"").toLowerCase():null}function O2(e){return e==null||e.trim()===""?"":X_(e,J_)?.toLowerCase()??""}const W_=new Intl.Segmenter("en",{granularity:"word"}),e8=/[^\p{L}\p{N}]+/gu,t8=/[\p{L}\p{N}]+/gu,n8=/[\p{Script=Latin}\p{Script=Greek}\p{Script=Cyrillic}]/u,a8=new RegExp("\\P{ASCII}","u");function i8(e){if(!a8.test(e))return e;let a="";for(const s of e){if(s.charCodeAt(0)<128){a+=s;continue}const r=s.normalize("NFD"),u=r[0];a+=r.length>1&&n8.test(u)?u:s}return a}function q2(e){return i8(e.normalize("NFKC")).toLocaleLowerCase("en")}function B2(e){const a=[];for(const s of W_.segment(e))if(s.isWordLike)for(const r of s.segment.match(t8)??[])a.push(r);return a}function s8(e){return B2(q2(e))}function Ca(e){return s8(e).join("")}const $b=new WeakMap;function o8(e){if(!e)return null;const a=q2(e);return{normalized:a,stripped:a.replace(e8,"")}}function r8(e){const a=$b.get(e);if(a)return a;const s=B2(e.normalized);return $b.set(e,s),s}function l8(e){const a=new Set;let s=0;for(const r of e){if(!r)continue;const u=Ca(r);u&&(a.add(u),u.length>s&&(s=u.length))}return{keys:a,longest:s}}function c8(e,a){if(!a||e.keys.size===0)return!1;const s=typeof a=="string"?o8(a):a;if(!s)return!1;let r=!1;for(const f of e.keys)if(s.stripped.includes(f)){r=!0;break}if(!r)return!1;const u=r8(s);for(let f=0;f<u.length;f++){let g="";for(let b=f;b<u.length;b++){if(g+=u[b],e.keys.has(g))return!0;if(g.length>=e.longest)break}}return!1}const u8=4,P2=j(["cli","api","config-file"]);function d8(e){const a=new Set,s=new Set;for(const r of e){if(a.has(r.label)){s.add(r.label);continue}a.add(r.label)}return[...s]}function m8(e,a){return a?e.some(s=>s.label===a):!0}const p8=m({displayName:o().min(1),canonicalDomain:o().min(1),ownedDomains:y(o().min(1)).optional(),aliases:y(o()).optional(),country:o().length(2),language:o().min(2),tags:y(o()).optional(),labels:Le(o(),o()).optional(),providers:y(ht).optional(),providerModels:c0.optional(),locations:y(Yt).optional(),defaultLocation:o().nullable().optional(),measurement:p0.optional(),autoExtractBacklinks:C().optional(),configSource:P2.optional()});p8.extend({name:o().trim().min(1).max(120)});const h8=m({id:o(),name:o(),displayName:o().optional(),canonicalDomain:o(),ownedDomains:y(o()).default([]),aliases:y(o()).default([]),country:o().length(2),language:o().min(2),tags:y(o()).default([]),labels:Le(o(),o()).default({}),providers:y(o()).default([]),providerModels:c0.default({}),locations:y(Yt).default([]),defaultLocation:o().nullable().optional(),measurement:p0.default(C2),autoExtractBacklinks:C().default(!1),configSource:P2.default("cli"),configRevision:d().int().positive().default(1),createdAt:o().optional(),updatedAt:o().optional()});m({id:o(),query:o(),createdAt:o()});m({id:o(),keyword:o(),createdAt:o()});m({queries:y(o().trim().min(1)).min(1)});m({keywords:y(o().trim().min(1)).min(1)});m({provider:ht,count:d().int().min(1).max(20).optional()});m({id:o(),domain:o(),createdAt:o()});m({competitors:y(o().trim().min(1)).min(1)});function Mu(e){return ql(e)??e.trim().toLowerCase().replace(/^www\./,"")}function M2(e){const a=[e.canonicalDomain,...e.ownedDomains??[]],s=new Set,r=[];for(const u of a){const f=u.trim();if(!f)continue;const g=Mu(f);s.has(g)||(s.add(g),r.push(f))}return r}function f8(e,a){if(!a||a.length===0)return[];const s=e?.trim().toLowerCase()??"",r=new Set,u=[];for(const f of a){const g=f.trim();if(!g)continue;const b=g.toLowerCase();b!==s&&(r.has(b)||(r.add(b),u.push(g)))}return u}function g8(e){const a=[],s=new Set,r=f=>{const g=Ca(f);!g||s.has(g)||(s.add(g),a.push(f))},u=e.displayName?.trim()??"";u&&r(u);for(const f of f8(e.displayName,e.aliases))r(f);for(const f of M2({canonicalDomain:e.canonicalDomain??"",ownedDomains:e.ownedDomains??[]})){const g=O2(f);if(Ca(g).length>=u8)r(g);else{const b=Mu(f);b.includes(".")&&r(b)}}return a}const y8=m({name:o().min(1).max(63).regex(/^[a-z0-9]([a-z0-9-]*[a-z0-9])?$/,{message:"Name must be a lowercase slug (letters, numbers, hyphens)"}),labels:Le(o(),o()).optional().default({})}),b8=m({preset:o().min(1).optional(),cron:o().min(1).optional(),recurrence:d0.optional(),timezone:o().optional().default("UTC"),providers:y(ht).optional().default([]),enabled:C().optional()}).refine(e=>[e.preset,e.cron,e.recurrence].filter(a=>a!==void 0).length===1,{message:'Exactly one of "preset", "cron", or "recurrence" must be provided'}).optional(),v8=m({channel:D("webhook"),url:o().url(),events:y(m0).min(1)}),x8=m({gsc:m({propertyUrl:o()}).optional(),syncSchedule:m({preset:o().optional(),cron:o().optional()}).optional()}).optional(),Kb=y(o().min(1)),k8=m({displayName:o().min(1),canonicalDomain:o().min(1),ownedDomains:y(o().min(1)).optional().default([]),aliases:y(o().min(1)).optional().default([]),country:o().length(2),language:o().min(2),queries:Kb.optional(),keywords:Kb.optional(),competitors:y(o().min(1)).optional().default([]),providers:y(ht).optional().default([]),providerModels:c0.optional().default({}),locations:y(Yt).optional().default([]),defaultLocation:o().optional(),measurement:p0.optional().default(C2),schedule:b8,notifications:y(v8).optional().default([]),google:x8,autoExtractBacklinks:C().optional().default(!1)}).superRefine((e,a)=>{e.queries!==void 0&&e.keywords!==void 0&&a.addIssue({code:"custom",message:"Use spec.queries; spec.keywords is accepted only as a legacy alias when spec.queries is omitted",path:["keywords"]});const s=d8(e.locations);s.length>0&&a.addIssue({code:"custom",message:`Duplicate location labels are not allowed: ${s.join(", ")}`,path:["locations"]}),m8(e.locations,e.defaultLocation)||a.addIssue({code:"custom",message:`defaultLocation "${e.defaultLocation}" must match a configured location label`,path:["defaultLocation"]})});m({apiVersion:D("canonry/v1"),kind:D("Project"),metadata:y8,spec:k8});const w8=["branded","non-brand"],rr=j(w8),S8=j(["all","branded","non-brand"]);function j8(e){const a=e.filter(r=>Ca(r).length>0);if(a.length===0)return null;const s=l8(a);return s.keys.size===0?null:{matcher:s,classify(r){return c8(s,r)?"branded":"non-brand"}}}const A8=2,C8=o().regex(/^[a-f0-9]{64}$/),nd=o().trim().min(1).max(256),Hb=j(["sensitive","insensitive"]),me=o().trim().min(1).max(128).regex(/^[a-z0-9][\w.~-]*$/i,"Must be a URL-safe stable key"),N8=o().trim().min(1).refine(e=>ql(e)!==null,"A competitor domain must be a valid hostname"),_8=qe("kind",[m({kind:D("exact"),url:o().min(1),pathCase:Hb}).strict(),m({kind:D("prefix"),host:o().min(1),pathPrefix:o().min(1),pathCase:Hb}).strict(),m({kind:D("host"),host:o().min(1)}).strict()]),z8=m({canonicalHost:o().min(1),ownedHosts:y(o().min(1)),names:y(o().min(1))}).strict(),E8=m({projectBrand:z8}).strict(),T8=m({stableKey:me,label:o().trim().min(1),aliases:y(o().min(1)),identityAliases:y(o().trim().min(1)).optional(),urlMatchers:y(_8),mentionNotApplicable:C(),discoveryIdentity:o().min(1).nullable()}).strict(),I2=m({stableKey:me,label:o().trim().min(1),domain:N8,aliases:y(o().min(1))}).strict(),R8=m({stableKey:me,label:o().trim().min(1),parentGroupKey:me.optional(),targetKeys:y(me),competitors:y(I2)}).strict(),D8=j(["manual","query-set","template","discovery","research"]),O8=m({templateId:o().trim().min(1).max(256),templateVersion:o().trim().min(1).max(256),template:o().trim().min(1).max(4e3),bindings:Le(o().trim().min(1).max(128),o().trim().min(1).max(128)),output:o().trim().min(1).max(4e3)}).strict(),V2=m({source:D8,sourceId:o().min(1).nullable(),capturedAt:o().datetime(),template:O8.optional()}).strict(),q8=m({queryId:nd,queryText:o().min(1),provenance:V2}).strict(),ad=m({providers:y(ht).min(1),models:Le(ht,o().min(1)),location:Yt.nullable()}).strict(),B8=m({stableKey:o().min(1),queryId:nd,queryText:o().min(1),context:ad,expectedSnapshots:d().int().nonnegative()}).strict(),h0=rr,P8=m({targetKey:me,queryId:nd,queryClass:h0,classificationSource:j(["server","operator"]).optional(),executionNodeKey:o().min(1)}).strict(),f0=m({executionNodeKey:o().min(1),targetKey:me,queryId:nd}).strict(),L2=m({stableKey:me,label:o().trim().min(1),kind:D("market"),groupKey:me.optional(),usageEdges:y(f0)}).strict();function Qb(e){return[e.executionNodeKey,e.targetKey,e.queryId].join("\0")}const id=m({schemaVersion:D(A8),identities:E8,targets:y(T8),groups:y(R8),querySnapshots:y(q8),assignments:y(P8),executionNodes:y(B8),usageEdges:y(f0),reportingScopes:y(L2).optional(),compiledChecksum:C8}).strict().superRefine((e,a)=>{const s=new Set;for(const b of e.executionNodes)s.has(b.stableKey)&&a.addIssue({code:Se.custom,path:["executionNodes"],message:`Duplicate execution node key "${b.stableKey}"`}),s.add(b.stableKey);const r=new Set(e.targets.map(b=>b.stableKey));e.usageEdges.forEach((b,v)=>{s.has(b.executionNodeKey)||a.addIssue({code:Se.custom,path:["usageEdges",v,"executionNodeKey"],message:`Usage edge references unknown execution node "${b.executionNodeKey}"`}),r.has(b.targetKey)||a.addIssue({code:Se.custom,path:["usageEdges",v,"targetKey"],message:`Usage edge references unknown Target "${b.targetKey}"`})});const u=new Set(e.usageEdges.map(Qb)),f=new Set;e.reportingScopes?.forEach((b,v)=>{if(f.has(b.stableKey)&&a.addIssue({code:Se.custom,path:["reportingScopes",v,"stableKey"],message:`Duplicate reporting scope key "${b.stableKey}"`}),f.add(b.stableKey),b.groupKey!==void 0){const S=e.groups.find(A=>A.stableKey===b.groupKey);(!S||b.usageEdges.some(A=>!S.targetKeys.includes(A.targetKey)))&&a.addIssue({code:Se.custom,path:["reportingScopes",v,"groupKey"],message:"A market must link to an existing group containing all its assigned properties."})}const k=new Set;b.usageEdges.forEach((S,A)=>{const N=Qb(S);u.has(N)||a.addIssue({code:Se.custom,path:["reportingScopes",v,"usageEdges",A],message:`Reporting scope "${b.stableKey}" references a usage edge that this revision does not contain.`}),k.has(N)&&a.addIssue({code:Se.custom,path:["reportingScopes",v,"usageEdges",A],message:`Reporting scope "${b.stableKey}" repeats a usage edge.`}),k.add(N)})}),e.assignments.forEach((b,v)=>{r.has(b.targetKey)||a.addIssue({code:Se.custom,path:["assignments",v,"targetKey"],message:`Assignment references unknown Target "${b.targetKey}"`})});const g=new Map;e.groups.forEach((b,v)=>{g.has(b.stableKey)&&a.addIssue({code:Se.custom,path:["groups",v,"stableKey"],message:"Duplicate group stable key "+b.stableKey}),g.set(b.stableKey,b)}),e.groups.forEach((b,v)=>{const k=b.parentGroupKey;if(k===void 0)return;if(k===b.stableKey){a.addIssue({code:Se.custom,path:["groups",v,"parentGroupKey"],message:"A group cannot be its own parent."});return}const S=g.get(k);if(!S){a.addIssue({code:Se.custom,path:["groups",v,"parentGroupKey"],message:"Group parent does not exist: "+k});return}const A=new Set(S.targetKeys);b.targetKeys.forEach((Z,_)=>{A.has(Z)||a.addIssue({code:Se.custom,path:["groups",v,"targetKeys",_],message:"Group target membership must be a subset of its parent."})});const N=new Set([b.stableKey]);let E=S;for(;E.parentGroupKey!==void 0;){if(N.has(E.stableKey)){a.addIssue({code:Se.custom,path:["groups",v,"parentGroupKey"],message:"Group parent relationships cannot contain a cycle."});break}N.add(E.stableKey);const Z=g.get(E.parentGroupKey);if(!Z)break;E=Z}});for(const b of e.groups)for(const v of b.targetKeys)r.has(v)||a.addIssue({code:Se.custom,path:["groups"],message:`Group "${b.stableKey}" references unknown Target "${v}"`})}),g0=100;function Jo(e){return m({items:y(e),nextCursor:o().min(1).nullable(),totalEstimate:d().int().nonnegative().optional()}).strict()}const sd=j(["no_completed_run","plan_v1","no_population","evidence_incomplete","identity_ambiguous","not_applicable"]),zt=qe("state",[m({state:D("available"),value:d(),numerator:d().int().nonnegative().optional(),denominator:d().int().positive().optional()}).strict(),m({state:D("unavailable"),reason:sd}).strict()]),y0=j(["all","group","property"]),Ea=S8,M8=j(["label-asc","label-desc","citationCoverage-asc","citationCoverage-desc","mentionCoverage-asc","mentionCoverage-desc"]),b0=j(["not_measured","queued","running","complete","partial","failed"]),I8=j(["run_measurement","review_flags","complete_setup","republish_setup","none"]);m({scope:y0,groupKey:me.optional(),targetKey:me.optional(),queryClass:Ea.optional(),provider:ht.optional(),location:o().trim().min(1).optional(),from:o().trim().min(1).optional(),to:o().trim().min(1).optional(),runId:o().trim().min(1).optional(),search:o().optional(),sort:M8.optional(),cursor:o().trim().min(1).optional(),limit:d().int().positive().max(g0).optional()}).strict();const V8=m({provider:ht,mentionCoverage:zt,citationCoverage:zt}).strict(),L8=m({bothSignals:d().int().nonnegative(),mentionedOnly:d().int().nonnegative(),citedOnly:d().int().nonnegative(),neither:d().int().nonnegative(),notMeasured:d().int().nonnegative(),total:d().int().nonnegative()}).strict(),U8=m({targetKey:me,label:o().min(1),mentionCoverage:zt,citationCoverage:zt,providers:y(V8),flags:d().int().nonnegative()}).strict(),G8=m({kind:j(["project","competitor"]),stableKey:o().min(1),label:o().min(1),domain:o().min(1),credits:d().int().nonnegative(),share:d().min(0).max(1)}).strict(),$8=m({groupKey:me,queryClass:D("non-brand"),denominator:d().int().positive(),entries:y(G8)}).strict();m({mode:j(["active-v1","active-v2"]),scope:m({kind:y0,key:o().min(1).optional(),label:o().min(1)}).strict(),queryClass:Ea,measurement:m({state:b0,currentRunId:o().min(1).optional(),displayedRunId:o().min(1).optional(),completed:d().int().nonnegative(),expected:d().int().nonnegative(),completedAt:o().datetime().optional(),includesHistoricalData:C().optional()}).strict(),nextAction:m({kind:I8,count:d().int().nonnegative().optional()}).strict(),metrics:m({propertiesMentioned:zt,mentionCoverage:zt,citationCoverage:zt,brandPresence:zt,sov:zt.describe("Deprecated alias of brandPresence carrying the identical value. Remove once the browser migrates.")}).strict(),properties:Jo(U8),outcomes:L8,flags:m({total:d().int().nonnegative()}).strict(),namedShareOfVoice:$8.optional()}).strict();const U2=j(["sources","answers"]),K8=U2.enum;K8.sources;m({targetKey:me,queryClass:Ea.optional(),provider:ht.optional(),location:o().trim().min(1).optional(),runId:o().trim().min(1).optional(),shape:U2.optional(),cursor:o().trim().min(1).optional(),limit:d().int().positive().max(g0).optional()}).strict();const G2=1,Bl=d().int().positive(),Zt=o().trim().min(1).max(128).regex(/^[a-z0-9][\w.~-]*$/i,"Must be a URL-safe stable key"),Pl=o().trim().min(1).max(256),Fb=j(["sensitive","insensitive"]);function Iu(e){const a=ql(e);if(!a)throw new Error(`Invalid measurement host: ${e}`);return a}function H8(e){const a=[];let s=!1;for(let r=0;r<e.length;r++){const u=e[r];u==="/"?(s||a.push(u),s=!0):(a.push(u),s=!1)}for(;a.length>1&&a.at(-1)==="/";)a.pop();return a.length?a.join(""):"/"}function Zb(e){try{return decodeURI(e).normalize("NFC").toLowerCase()}catch{return e.normalize("NFC").toLowerCase()}}function $2(e){const a=new URL(`https://measurement.invalid${e}`).pathname;return H8(a.replace(/%[0-9a-f]{2}/gi,s=>s.toUpperCase()))}function jh(e){const a=e.trim();if(!a||a.includes("?")||a.includes("#")||a.includes("://")||a.includes("\\"))throw new Error(`Invalid measurement path prefix: ${e}`);const s=a.startsWith("/")?a:`/${a}`;for(const r of s.split("/")){let u;try{u=decodeURIComponent(r)}catch{throw new Error(`Invalid measurement path prefix: ${e}`)}if(u==="."||u==="..")throw new Error(`Invalid measurement path prefix: ${e}`)}try{return $2(s)}catch{throw new Error(`Invalid measurement path prefix: ${e}`)}}function Q8(e){const a=/^[a-z][a-z0-9+.-]*:\/\/[^/?#]*/i.exec(e);if(!a)throw new Error(`Invalid exact measurement URL: ${e}`);return e.slice(a[0].length).split(/[?#]/,1)[0]||"/"}function Yb(e){const a=e.trim();if(!a||a.includes("\\"))throw new Error(`Invalid exact measurement URL: ${e}`);let s;try{s=new URL(a)}catch{throw new Error(`Invalid exact measurement URL: ${e}`)}if(s.protocol!=="http:"&&s.protocol!=="https:"||s.username||s.password||s.port||s.search||s.hash)throw new Error(`Invalid exact measurement URL: ${e}`);const r=Iu(s.hostname),u=jh(Q8(a));return`https://${r}${u}`}const _l=o().trim().min(1).refine(e=>{try{return Iu(e),!0}catch{return!1}},"A target URL matcher host must be a valid hostname").overwrite(e=>Iu(e)),F8=o().trim().min(1).refine(e=>{try{return jh(e),!0}catch{return!1}},"A target URL matcher pathPrefix must be an absolute path without query or fragment").overwrite(e=>jh(e)),Z8=o().trim().min(1).refine(e=>{try{return Yb(e),!0}catch{return!1}},"A target exact matcher must be an HTTP(S) URL without credentials, port, query, or fragment").overwrite(e=>Yb(e)),Y8=qe("kind",[m({kind:D("exact"),url:Z8,pathCase:Fb}).strict(),m({kind:D("prefix"),host:_l,pathPrefix:F8,pathCase:Fb}).strict(),m({kind:D("host"),host:_l}).strict()]),K2=o().trim().min(1).max(256).refine(e=>Ca(e).length>0,"A target alias must contain mention text"),X8=Le(o().trim().min(1),o()),J8=_l,H2=m({stableKey:Zt,label:o().trim().min(1),urls:y(Y8).min(1),aliases:y(K2),metadata:X8.optional()}).strict(),v0=m({stableKey:Zt,label:o().trim().min(1),targetKeys:y(Zt).min(1),competitors:y(J8).optional()}).strict(),Q2=m({targetKey:Zt,queryIds:y(Pl).min(1),context:Yt.nullable().optional()}).strict();function W8(e,a){return e<a?-1:e>a?1:0}function e7(e,a=s=>s){const s=new Set,r=new Set;for(const u of e){const f=a(u);s.has(f)&&r.add(f),s.add(f)}return r}function Fp(e,a,s,r,u){for(const f of e7(a,u))e.addIssue({code:"custom",path:[...s],message:`Duplicate ${r}: ${f}`})}function Xb(e){if(e.kind==="host")return{host:e.host,pathname:null};if(e.kind==="prefix")return{host:e.host,pathname:e.pathPrefix};const a=new URL(e.url);return{host:Iu(a.hostname),pathname:$2(a.pathname||"/")}}function t7(e,a,s,r){return e===s||(a==="insensitive"||r==="insensitive")&&Zb(e)===Zb(s)}function n7(e,a){if(e.kind!==a.kind)return!1;const s=Xb(e),r=Xb(a);return s.host!==r.host?!1:e.kind==="host"||a.kind==="host"?!0:t7(s.pathname,e.pathCase,r.pathname,a.pathCase)}function a7(e){const a=new Set;return[...e].sort(W8).filter(s=>{const r=Ca(s);return a.has(r)?!1:(a.add(r),!0)})}const F2=m({schemaVersion:D(G2),targets:y(H2).min(1),groups:y(v0).optional(),targetQuerySelections:y(Q2).optional()}).strict().superRefine((e,a)=>{const s=e.groups??[],r=e.targetQuerySelections??[];Fp(a,e.targets.map(v=>v.stableKey),["targets"],"target stable key"),Fp(a,s.map(v=>v.stableKey),["groups"],"group stable key");const u=new Set(e.targets.map(v=>v.stableKey)),f=new Set(s.map(v=>v.stableKey));for(const v of u)f.has(v)&&a.addIssue({code:"custom",path:["groups"],message:`Target and group stable keys must be globally unique: ${v}`});const g=new Map,b=[];e.targets.forEach((v,k)=>{for(const S of a7(v.aliases)){const A=Ca(S),N=g.get(A);N&&N!==v.stableKey&&a.addIssue({code:"custom",path:["targets",k,"aliases"],message:`Target alias is already assigned to target ${N}: ${S}`}),g.set(A,v.stableKey)}v.urls.forEach((S,A)=>{b.find(E=>E.targetKey!==v.stableKey&&n7(E.matcher,S))&&a.addIssue({code:"custom",path:["targets",k,"urls",A],message:"Target URL matcher has an equal-specificity cross-target tie"}),b.push({targetKey:v.stableKey,matcher:S})})}),s.forEach((v,k)=>{Fp(a,v.targetKeys,["groups",k,"targetKeys"],"group target key");for(let S=0;S<v.targetKeys.length;S++){const A=v.targetKeys[S];u.has(A)||a.addIssue({code:"custom",path:["groups",k,"targetKeys",S],message:`Unknown target: ${A}`})}}),r.forEach((v,k)=>{u.has(v.targetKey)||a.addIssue({code:"custom",path:["targetQuerySelections",k,"targetKey"],message:`Unknown target: ${v.targetKey}`})})});F2.transform(e=>({...e,groups:e.groups??[],targetQuerySelections:e.targetQuerySelections??[]}));m({expectedActiveRevision:Bl.nullable(),plan:F2}).strict();const i7=m({queryId:Pl,queryText:o().min(1)}).strict(),x0=m({stableKey:o().min(1),queryText:o().min(1),context:Yt.nullable(),expectedSnapshots:d().int().nonnegative()}).strict(),s7=m({kind:D("baseline"),executionNodeKey:o().min(1),queryId:Pl}).strict(),o7=m({kind:D("target"),executionNodeKey:o().min(1),queryId:Pl,targetKey:Zt}).strict(),Ah=qe("kind",[s7,o7]),Z2=m({code:D("target-alias-prefix-overlap"),message:o().min(1),targetKeys:y(Zt).min(1),aliases:y(o().min(1)).min(1)}).strict(),Y2=H2.extend({mentionNotApplicable:C()}),X2=m({schemaVersion:D(G2),defaultContext:Yt.nullable(),effectiveOwnedHosts:y(_l),projectCanonicalHost:_l,projectBrandNames:y(K2),targets:y(Y2),groups:y(v0),targetQuerySelections:y(Q2),querySnapshots:y(i7),executionNodes:y(x0),usageEdges:y(Ah),warnings:y(Z2)}).strict(),r7=X2,J2=qe("schemaVersion",[X2,id]),k0=o().regex(/^[a-f0-9]{64}$/),w0=o().datetime(),W2=m({schemaVersion:D(1),providers:y(o().min(1)).min(1),models:Le(o().min(1),o().min(1)),checksum:o().regex(/^[a-f0-9]{64}$/)}).strict(),l7=m({groups:y(Zt).optional(),targets:y(Zt).optional()}).strict(),c7=m({groups:y(Zt),targets:y(Zt),queries:y(o().min(1)),resolvedTargets:y(Zt)}).strict().superRefine((e,a)=>{e.resolvedTargets.length===0&&e.queries.length===0&&a.addIssue({code:"custom",path:["resolvedTargets"],message:"A recorded scope must name something it measured"})});m({stableKey:Zt,retiredAt:o().datetime()});m({active:m({revision:Bl,checksum:k0,createdAt:w0,plan:J2}).nullable()});m({versions:y(m({revision:Bl,checksum:k0,createdAt:w0,active:C()}))});m({version:m({revision:Bl,checksum:k0,createdAt:w0,active:C(),plan:J2})});const zu=m({targets:d().int(),groups:d().int(),queries:d().int(),executionNodes:d().int(),usageEdges:d().int(),baselineEdges:d().int(),targetEdges:d().int(),dedupSavings:d().int()}).strict(),u7=j(["invalid-authoring","duplicate-identity","unknown-target","unknown-query","invalid-project-context","unowned-target-url","owned-competitor","target-query-context-conflict","target-url-ownership-tie","target-alias-cross-target-collision","target-alias-project-brand-collision","target-alias-prefix-overlap"]),ek=m({id:u7,severity:j(["fail","warn"]),message:o().min(1),path:y(Qe([o(),d().int()]))}).strict(),d7=m({baseline:d().int().nonnegative(),target:d().int().nonnegative()}).strict(),tk=m({ok:D(!0),checks:y(ek),executionNodes:y(x0),dedupSaved:d().int().nonnegative(),usageEdges:d7,estCostUsd:ce(),plan:r7,warnings:y(Z2),counts:zu}).strict(),nk=m({ok:D(!1),checks:y(ek).min(1),executionNodes:y(x0).length(0),dedupSaved:D(0),usageEdges:m({baseline:D(0),target:D(0)}).strict(),estCostUsd:ce()}).strict();qe("ok",[tk,nk]);const fu=m({targetKey:Zt,context:Yt.nullable(),queryIds:y(Pl)}).strict();function Jb(e){return m({added:y(e),removed:y(e),changed:y(m({stableKey:Zt,before:e,after:e}).strict()),unchanged:y(Zt)}).strict()}const m7=tk.extend({diff:m({activeRevision:Bl.nullable(),targets:Jb(Y2),groups:Jb(v0),querySelections:m({added:y(fu),removed:y(fu),changed:y(m({targetKey:Zt,before:fu,after:fu}).strict()),unchanged:y(m({targetKey:Zt,context:Yt.nullable()}).strict())}).strict(),execution:m({addedNodeKeys:y(o().min(1)),removedNodeKeys:y(o().min(1)),addedUsageEdges:y(Ah),removedUsageEdges:y(Ah),counts:m({before:zu.nullable(),after:zu,delta:zu.nullable()}).strict()}).strict()}).strict()}).strict(),p7=nk.extend({diff:ce()}).strict();qe("ok",[m7,p7]);const h7=1,f7=o().refine(e=>e.trim().length>0,{message:"Must not be blank"}),ak=m({displayName:o(),aliases:y(o()),canonicalDomain:o(),ownedDomains:y(o())}).strict(),ik=m({provider:ht.refine(e=>e.trim().length>0,{message:"Provider must not be blank"}),requestedModel:o().nullable()}).strict(),sk=m({domain:o(),label:o(),aliases:y(o())}).strict(),ok=m({queryId:f7,queryText:o(),provenance:o().nullable()}).strict(),g7=ok.extend({queryClass:rr.nullable()}).strict();function rk(e,a){const s=new Set;e.engines.forEach((f,g)=>{const b=f.provider.trim().toLocaleLowerCase("en");s.has(b)&&a.addIssue({code:Se.custom,path:["engines",g,"provider"],message:`Duplicate engine provider "${f.provider}"`}),s.add(b)});const r=new Set;e.queries.forEach((f,g)=>{r.has(f.queryId)&&a.addIssue({code:Se.custom,path:["queries",g,"queryId"],message:`Duplicate query id "${f.queryId}"`}),r.add(f.queryId)});const u=new Set;e.competitors?.forEach((f,g)=>{const b=f.domain;u.has(b)&&a.addIssue({code:Se.custom,path:["competitors",g,"domain"],message:`Duplicate competitor domain "${f.domain}"`}),u.add(b)})}m({capturedAt:o().datetime(),identity:ak,country:o(),language:o(),location:Yt.nullable(),engines:y(ik).min(1),competitors:y(sk).optional(),queries:y(ok)}).strict().superRefine(rk);m({schemaVersion:D(h7),capturedAt:o().datetime(),identity:ak,country:o(),language:o(),location:Yt.nullable(),engines:y(ik).min(1),competitors:y(sk).optional(),queries:y(g7)}).strict().superRefine(rk);const y7=j(["auto","simple","advanced"]),b7=j(["simple","advanced"]),lk=j(["branded","non-brand","unknown","all"]),v7=j(["branded","non-brand","unknown"]),ck=j(["project","group","market","property"]),uk=qe("kind",[m({kind:D("all")}).strict(),m({kind:D("none")}).strict(),m({kind:D("exact"),value:o().trim().min(1)}).strict()]);function x7(e){if(e===void 0||e==="")return{kind:"all"};const a=e.normalize("NFKC").trim();return a===""?{kind:"all"}:a.toLocaleLowerCase("en")==="none"?{kind:"none"}:{kind:"exact",value:a}}const bt=o().trim().min(1),Us=o().datetime(),k7={mode:y7.default("auto"),queryClass:lk.default("non-brand"),scope:ck.default("project"),scopeKey:bt.optional(),marketKey:bt.optional(),provider:bt.optional(),model:bt.optional(),location:o().trim().min(1).optional(),from:Us.optional(),to:Us.optional(),revision:d().int().positive().optional(),runId:bt.optional(),queryKey:bt.optional(),queryId:bt.optional(),search:o().trim().min(1).optional(),cursor:bt.optional(),limit:d().int().min(1).max(100).default(50)},w7=m(k7).strict().superRefine((e,a)=>{e.scope!=="project"&&e.scopeKey===void 0&&a.addIssue({code:Se.custom,path:["scopeKey"],message:`scopeKey is required for ${e.scope} scope`}),e.scope==="project"&&e.scopeKey!==void 0&&a.addIssue({code:Se.custom,path:["scopeKey"],message:"scopeKey is not valid for project scope"}),e.scope==="market"&&e.marketKey!==void 0&&a.addIssue({code:Se.custom,path:["marketKey"],message:"marketKey is not valid for market scope"}),e.from!==void 0&&e.to!==void 0&&e.from>e.to&&a.addIssue({code:Se.custom,path:["to"],message:"to must be on or after from"}),e.queryKey!==void 0&&e.queryId!==void 0&&a.addIssue({code:Se.custom,path:["queryId"],message:"queryKey and queryId cannot both be supplied"})});w7.transform(e=>({...e,location:x7(e.location)}));const Aa=m({numerator:d().int().nonnegative().nullable(),denominator:d().int().nonnegative().nullable(),rate:d().min(0).max(1).nullable(),reason:j(["no-population","incomplete","evidence-incomplete","identity-ambiguous","not-applicable"]).optional()}).strict().superRefine((e,a)=>{if(e.numerator===null||e.denominator===null||e.rate===null){(e.numerator!==null||e.denominator!==null||e.rate!==null||e.reason===void 0)&&a.addIssue({code:Se.custom,message:"Unavailable rates require null values and a reason"});return}e.reason!==void 0&&a.addIssue({code:Se.custom,message:"Available rates cannot carry a reason"});const{numerator:r,denominator:u}=e;u===null||r===null||(u===0&&a.addIssue({code:Se.custom,path:["denominator"],message:"Available rates require a positive denominator"}),r>u&&a.addIssue({code:Se.custom,path:["numerator"],message:"Numerator cannot exceed denominator"}))}),dk=qe("kind",[m({kind:D("frozen-simple"),definitionRevision:ce()}).strict(),m({kind:D("legacy-simple"),definitionRevision:ce()}).strict(),m({kind:D("frozen-advanced"),definitionRevision:d().int().positive()}).strict(),m({kind:D("unsupported-advanced-v1"),definitionRevision:d().int().positive()}).strict()]),Ch=m({id:bt,label:o().trim().min(1),kind:ck,targetCount:d().int().nonnegative(),parentGroupIds:y(bt).optional(),marketKeys:y(bt).optional()}).strict(),S7=m({provider:bt,model:bt}).strict(),j7=m({providers:y(bt),models:y(S7),locations:y(uk)}).strict(),A7=m({queryCount:d().int().nonnegative(),answerCount:d().int().nonnegative(),mentionCoverage:Aa,citationCoverage:Aa,propertyReach:Aa,outcomes:m({bothSignals:d().int().nonnegative(),mentionedOnly:d().int().nonnegative(),citedOnly:d().int().nonnegative(),neither:d().int().nonnegative(),notMeasured:d().int().nonnegative(),total:d().int().nonnegative()}).strict().superRefine((e,a)=>{e.bothSignals+e.mentionedOnly+e.citedOnly+e.neither+e.notMeasured!==e.total&&a.addIssue({code:Se.custom,message:"Outcome partition must sum to total"})})}).strict(),C7=m({runId:bt,createdAt:Us,revision:d().int().positive().nullable(),provenance:dk,queryCount:d().int().nonnegative(),answerCount:d().int().nonnegative(),mentionCoverage:Aa,citationCoverage:Aa,continuity:m({state:j(["first","comparable","definition-changed","model-changed","legacy-unknown"]),comparedRunId:o().nullable()}).strict()}).strict(),N7=m({queryKey:bt,queryId:o().nullable(),query:o(),provider:bt,model:o().nullable(),location:o().nullable(),targetKeys:y(bt),marketKeys:y(bt).optional(),answerCount:d().int().nonnegative(),mentionCoverage:Aa,citationCoverage:Aa}).strict(),_7=m({answerId:bt,runId:bt,queryKey:bt,query:o(),provider:bt,model:o().nullable(),location:o().nullable(),targetKeys:y(bt),mentioned:C().nullable(),mentionUnavailableReason:D("identity-ambiguous").optional(),cited:C().nullable(),answerText:o().nullable(),createdAt:Us,sources:y(o()),observedCompetitors:y(bt)}).strict(),z7=m({domain:bt,answerCount:d().int().nonnegative(),mentionCoverage:Aa,citationCoverage:Aa}).strict(),E7=m({name:bt,answerCount:d().int().nonnegative()}).strict(),T7=qe("state",[m({state:D("available")}).strict(),m({state:D("unavailable"),reason:D("frozen-competitor-identity-missing")}).strict()]),Wb=m({id:bt,label:o().trim().min(1),queryCount:d().int().nonnegative(),mentionCoverage:Aa,citationCoverage:Aa}).strict();function ev(e){return m({items:y(e),nextCursor:o().nullable(),total:d().int().nonnegative()}).strict()}const mk=m({queryClass:v7,summary:A7,trend:y(C7),queries:ev(N7),evidence:ev(_7),competitorAvailability:T7,competitors:y(z7),observedCompetitors:y(E7),breakdown:m({properties:y(Wb),groups:y(Wb)}).strict()}).strict(),R7=j(["measured","not-measured","partial"]),D7=m({state:R7,activeRevision:d().int().positive().nullable(),measuredRevision:d().int().positive().nullable(),awaitingSweep:C(),pendingAssignmentCount:d().int().nonnegative(),completedAt:Us.nullable()}).strict(),pk=m({mode:b7,queryClass:lk,scope:Ch,market:Ch.optional(),provider:o().nullable(),model:o().nullable(),location:uk,time:m({from:Us.nullable(),to:Us.nullable()}).strict(),revision:d().int().positive().nullable(),run:m({id:o().nullable(),explicit:C()}).strict(),provenance:dk,measurement:D7,availability:qe("state",[m({state:D("available")}).strict(),m({state:D("unsupported"),reason:D("advanced-v1")}).strict()])}).strict();m({selection:pk,scopeOptions:y(Ch),filterOptions:j7,populations:y(mk).min(1)}).strict().superRefine((e,a)=>{const s=e.selection.queryClass==="all"?["branded","non-brand","unknown"]:[e.selection.queryClass],r=e.populations.map(u=>u.queryClass);(r.length!==s.length||r.some((u,f)=>u!==s[f]))&&a.addIssue({code:Se.custom,path:["populations"],message:"Populations must exactly match the selected query class order"})});function O7(e,a){let s=e;for(const[r,u]of Object.entries(a))s=s.split(`{${r}}`).join(u);return s.trim()}const S0=o().regex(/^[a-f0-9]{64}$/),Fn=o().trim().min(1).max(256),Na=o().trim().min(1).max(4e3),j0=o().datetime(),od=o().regex(/^qtw_[a-f0-9]{64}$/),hk=o().regex(/^qtp_[a-f0-9]{64}$/),A0=j(["simple","advanced"]),fk=m({templateId:Fn,templateVersion:o().trim().min(1).max(256),template:Na,bindings:Le(o().trim().min(1).max(128),o().trim().min(1).max(128)),output:Na}).strict(),q7=m({source:j(["manual","query-set","template","research","discovery"]),sourceId:Fn.nullable(),capturedAt:o().datetime(),template:fk.optional()}).strict().superRefine((e,a)=>{e.source==="template"&&e.template===void 0&&a.addIssue({code:Se.custom,path:["template"],message:"Template provenance is required for a template query."}),e.source!=="template"&&e.template!==void 0&&a.addIssue({code:Se.custom,path:["template"],message:"Only a template query may carry template provenance."})}),B7=qe("source",[m({source:D("manual"),text:Na}).strict(),m({source:D("template"),templateId:Fn,templateVersion:o().trim().min(1).max(256),template:Na}).strict(),m({source:D("research"),researchRunQueryId:Fn}).strict(),m({source:D("discovery"),discoveryProbeId:Fn}).strict()]),C0=m({targetKeys:y(me).optional(),groupKeys:y(me).optional(),marketKeys:y(me).optional()}).strict(),P7=m({providers:y(ht).min(1),models:Le(ht,o().trim().min(1)),location:o().trim().min(1).nullable()}).strict(),M7=m({input:B7,audience:C0.optional(),contexts:y(P7).min(1).optional(),queryClass:rr.optional()}).strict(),I7=m({queryId:Fn.optional(),queryText:Na.optional(),audience:C0.optional()}).strict().superRefine((e,a)=>{e.queryId===void 0==(e.queryText===void 0)&&a.addIssue({code:Se.custom,message:"Provide exactly one of queryId or queryText."})}),V7=m({queryId:Fn,audience:C0.optional(),text:Na.optional(),queryClass:Qe([rr,ce()]).optional()}).strict().superRefine((e,a)=>{e.text===void 0&&e.queryClass===void 0&&a.addIssue({code:Se.custom,message:"Provide query text or a classification change."})}),L7=m({additions:y(M7),removals:y(I7),edits:y(V7).optional()}).strict(),U7=L7.extend({expectedWorkspaceVersion:od}).strict();U7.extend({previewToken:hk,reviewedAt:j0}).strict();const G7=m({stableKey:me,label:o().trim().min(1)}).strict(),$7=m({stableKey:me,parentGroupKey:me.optional(),label:o().trim().min(1),targetKeys:y(me)}).strict(),K7=m({stableKey:me,groupKey:me.optional(),label:o().trim().min(1),usageEdges:y(f0)}).strict(),H7=m({targetKey:me,groupKeys:y(me),marketKeys:y(me),queryClass:rr.nullable(),classificationSource:j(["frozen","server","operator"]),contexts:y(ad).min(1)}).strict(),gk=m({queryId:Fn,queryText:Na,normalizedText:Na,provenance:q7.nullable(),state:j(["tracked","awaiting-sweep"]),lastMeasuredAt:o().datetime().nullable(),assignments:y(H7)}).strict(),Q7=m({researchRunId:Fn,researchRunQueryId:Fn,queryText:Na,createdAt:o().datetime()}).strict(),F7=m({discoverySessionId:Fn,discoveryProbeId:Fn,queryText:Na,createdAt:o().datetime()}).strict();m({mode:A0,workspaceVersion:od,active:m({revision:d().int().positive(),compiledChecksum:S0}).strict().nullable(),defaultContexts:y(ad),targets:y(G7),groups:y($7),markets:y(K7),tracked:y(gk),savedSources:m({research:y(Q7),discovery:y(F7)}).strict()}).strict();const gu=m({queryId:Fn,queryText:Na,assignmentCount:d().int().nonnegative()}).strict(),yk=m({added:y(gu),removed:y(gu),reused:y(gu),unchanged:y(gu),noOp:C()}).strict(),bk=m({existingNodes:d().int().nonnegative(),existingProviderCalls:d().int().nonnegative(),nextSweepNodes:d().int().nonnegative(),nextSweepProviderCalls:d().int().nonnegative(),addedNodes:d().int().nonnegative(),addedProviderCalls:d().int().nonnegative(),removedNodes:d().int().nonnegative(),removedProviderCalls:d().int().nonnegative()}).strict();m({mode:A0,workspaceVersion:od,previewToken:hk,reviewedAt:j0,active:m({revision:d().int().positive(),compiledChecksum:S0}).strict().nullable(),tracked:y(gk),diff:yk,workload:bk}).strict();m({committed:C(),mode:A0,workspaceVersion:od,reviewedAt:j0,active:m({revision:d().int().positive(),compiledChecksum:S0}).strict().nullable(),diff:yk,workload:bk}).strict();const rd=j(["complete","partial","failed","unsupported"]);rd.enum;j(["proposed","alias","shared","unmatched","excluded"]);j(["primary-match","exact-slug-match","excluded-slug","shared-path","unmatched-path","alias-without-primary","unsupported-slug"]);const Z7=j(["invalid-url","unowned-host","duplicate-url","url-cap-reached"]),Y7=m({kind:j(["exact","prefix","suffix","contains"]),value:o().trim().min(1)}).strict(),tv=m({host:o().trim().min(1),pathTemplate:o().trim().min(1)}).strict(),N0=m({primary:tv,aliases:y(tv).optional(),excludedSlugSuffixes:y(o().trim().min(1)).optional(),excludedSlugPatterns:y(Y7).optional()}).strict();m({sitemapUrl:o().url().refine(e=>{try{const a=new URL(e).protocol;return a==="http:"||a==="https:"}catch{return!1}},"Sitemap URL must use http or https"),rule:N0,maxUrls:d().int().positive().max(1e4).optional()}).strict();const Zp=m({url:o(),canonicalUrl:o().nullable(),classification:j(["shared","unmatched","excluded"]),reason:j(["excluded-slug","shared-path","unmatched-path","alias-without-primary","unsupported-slug"])}).strict().superRefine((e,a)=>{({shared:["shared-path"],unmatched:["unmatched-path","alias-without-primary","unsupported-slug"],excluded:["excluded-slug"]})[e.classification].includes(e.reason)||a.addIssue({code:"custom",message:"Discovery classification and reason do not match"})}),X7=m({classification:D("proposed"),reason:D("primary-match"),stableKey:Zt,slug:o().trim().min(1),label:o().trim().min(1),primaryUrl:o().url(),aliasCoverageUrls:y(o().url())}).strict(),J7=m({classification:D("alias"),reason:D("exact-slug-match"),slug:o().trim().min(1),url:o().url(),targetStableKey:Zt}).strict(),W7=m({kind:Z7,url:o(),canonicalUrl:o().nullable(),duplicateOf:o().optional()}).strict();m({proposed:y(X7),aliases:y(J7),shared:y(Zp),unmatched:y(Zp),excluded:y(Zp),diagnostics:y(W7)}).strict().superRefine((e,a)=>{const s=[["shared",["shared"]],["unmatched",["unmatched"]],["excluded",["excluded"]]];for(const[r,u]of s)for(const f of e[r])u.includes(f.classification)||a.addIssue({code:"custom",path:[r],message:"Discovery item is in the wrong result bucket"})});const _0=j(["assigned","sibling","ownedUnmapped","external","ambiguous","invalid"]),vk=j(["baseline","target"]),xk=j(["incomplete","evidence-incomplete","identity-ambiguous","no-population","aliasless","no-competitors","no-project-aliases"]),Gs=Qe([m({numerator:d().int().nonnegative(),denominator:d().int().positive(),rate:d().min(0).max(1)}).strict(),m({numerator:ce(),denominator:ce(),rate:ce(),reason:xk}).strict()]).superRefine((e,a)=>{e.numerator!==null&&e.numerator>e.denominator&&a.addIssue({code:"custom",path:["numerator"],message:"Rate numerator cannot exceed denominator"})}),ez=o().trim().min(1).overwrite(e=>e.toLocaleLowerCase("en")),tz=m({executionId:o().trim().min(1),queryText:o().trim().min(1),provider:ez,context:Yt.nullable(),requestedModel:o().trim().min(1).optional()}).strict();m({schemaVersion:D(1),expectedSlots:y(tz)}).strict().superRefine((e,a)=>{const s=new Set;for(const[r,u]of e.expectedSlots.entries()){const f=[u.executionId,u.provider].join("\0");s.has(f)&&a.addIssue({code:"custom",path:["expectedSlots",r],message:"Duplicate expected provider slot"}),s.add(f)}});const ld=m({executed:d().int().nonnegative(),expected:d().int().nonnegative(),complete:C(),sourceComplete:C(),sourceCompleteObservations:d().int().nonnegative(),answerComplete:C()}).strict(),nv=Qe([m({domain:o().trim().min(1),own:C(),presentIn:d().int().nonnegative(),of:d().int().positive()}).strict(),m({domain:o().trim().min(1),own:C(),presentIn:ce(),of:ce(),reason:xk}).strict()]),nz=m({domains:y(nv),providers:y(m({provider:ht,domains:y(nv)}).strict())}).strict(),az=m({provider:ht,completeness:ld,answerCoverage:Gs}).strict(),iz=m({id:o().trim().min(1),label:o().trim().min(1),targetIds:y(o().trim().min(1)),completeness:ld,answerCoverage:Gs,targetCoverage:Gs,sov:nz,providers:y(az)}).strict(),sz=m({provider:ht,completeness:ld,citationCoverage:Gs,mentionCoverage:Gs}).strict(),oz=m({id:o().trim().min(1),label:o().trim().min(1),completeness:ld,citationCoverage:Gs,mentionCoverage:Gs,providers:y(sz)}).strict(),kk=m({observationId:o().trim().min(1),expectedSlotId:o().trim().min(1),executionId:o().trim().min(1),usageEdgeId:o().trim().min(1),usageEdgeType:vk,provider:ht,queryText:o().trim().min(1),location:o().nullable(),sourceUrl:o(),bridged:C(),historical:C(),evidenceComplete:C(),classification:_0,normalizedUrl:o().nullable(),matchedTargetIds:y(o().trim().min(1)),matchedUrlIds:y(o().trim().min(1))}).strict(),rz=m({sourceUrl:o(),normalizedUrl:o().nullable(),classification:_0,matchedTargetIds:y(o().trim().min(1)),matchedUrlIds:y(o().trim().min(1))}).strict(),lz=m({observationId:o().trim().min(1),expectedSlotId:o().trim().min(1),executionId:o().trim().min(1),usageEdgeId:o().trim().min(1),usageEdgeType:vk,provider:ht,queryText:o().trim().min(1),location:o().nullable(),queryClass:Qe([j(["branded","non-brand"]),ce()]),mentioned:C().nullable(),cited:C().nullable(),sources:y(rz),sourceCount:d().int().nonnegative(),sourcesTruncated:C(),bridged:C(),historical:C(),evidenceComplete:C()}).strict(),cz=m({bridgedObservationIds:y(o()),historicalObservationIds:y(o()),evidenceIncompleteObservationIds:y(o()),ambiguousObservationIds:y(o()),unmatchedObservationIds:y(o())}).strict(),uz=m({id:o().trim().min(1),status:j(["completed","partial"]),createdAt:o().datetime(),startedAt:o().datetime().nullable(),finishedAt:o().datetime().nullable()}).strict();m({revision:d().int().positive(),run:uz.nullable(),groups:y(iz),targets:y(oz),evidence:y(kk),diagnostics:cz}).strict();m({property:m({targetKey:me,label:o().min(1)}).strict(),queryClass:Ea,measurement:m({state:b0,displayedRunId:o().min(1).optional(),completedAt:o().datetime().optional()}).strict(),evidence:Jo(kk).optional(),answers:Jo(lz).optional()}).strict().refine(e=>e.evidence===void 0!=(e.answers===void 0),{message:"Exactly one of evidence or answers is present, naming the shape that was served."});const z0=j(["used","not-used","unknown","not-applicable"]);z0.enum;const E0=j(["native-auto-v1","search-required-v1"]);E0.enum;const _a=o().trim().min(1),Ml=o().trim().min(1),dz=o().trim().min(1),ot=d().int().nonnegative(),Il=m({state:b0,displayedRunId:_a.nullable(),planRevision:d().int().positive(),completedAt:o().datetime().nullable()}).strict(),Ji=m({targetKey:me,label:Ml}).strict(),Zn={runId:_a.optional(),provider:ht.optional(),location:dz.optional()},zl=o().trim().min(1);m({runId:Zn.runId,groupKey:me.optional(),queryClass:Ea.default("non-brand"),provider:Zn.provider,location:Zn.location,limit:d().int().positive().max(50).optional()}).strict();const mz=Ji.extend({mentionCoverage:zt,citationCoverage:zt,flags:ot,recommendedInstead:y(m({name:zl,occurrences:ot}).strict()).max(5),recommendedInsteadTotal:ot,recommendedInsteadTruncated:C()}).strict().superRefine((e,a)=>{e.recommendedInstead.length>e.recommendedInsteadTotal&&a.addIssue({code:Se.custom,path:["recommendedInsteadTotal"],message:"Total cannot be smaller than the returned replacements"}),e.recommendedInsteadTruncated!==e.recommendedInstead.length<e.recommendedInsteadTotal&&a.addIssue({code:Se.custom,path:["recommendedInsteadTruncated"],message:"Truncation must agree with the replacement total"})}),pz=m({groupKey:me,label:Ml,propertyCount:ot,propertiesMentioned:zt,mentionCoverage:zt,citationCoverage:zt}).strict(),hz=m({eligiblePropertyCount:ot,strongest:y(Ji.extend({mentionCoverage:zt.options[0],citationCoverage:zt}).strict()).max(50),weakest:y(Ji.extend({mentionCoverage:zt.options[0],citationCoverage:zt}).strict()).max(50),excluded:y(Ji.extend({reason:sd}).strict()),truncated:C()}).strict();m({portfolio:m({groupKey:me.nullable(),label:Ml.nullable(),measurementScope:Qe([j(["full","spot_check"]),ce()])}).strict(),measurement:Il,queryClass:Ea,metrics:m({propertiesMentioned:zt,mentionCoverage:zt,citationCoverage:zt}).strict(),weakestProperties:y(mz),mentionRanking:hz,markets:y(pz),totalProperties:ot,truncated:C()}).strict();m({targetKey:me,runId:Zn.runId,provider:Zn.provider,location:Zn.location,queryClass:Ea.optional(),offset:d().int().nonnegative().optional(),limit:d().int().positive().max(100).optional()}).strict();j(["answered","missing"]);const Nh={queryId:_a,text:Ml,class:h0,provider:ht,requestedModel:o().nullable(),servedModel:o().nullable(),location:o().nullable()},fz=qe("status",[m({resultId:_a,...Nh,status:D("answered"),mentioned:C().nullable(),cited:C().nullable(),recommendedInstead:y(zl),answerExcerpt:o().nullable()}).strict(),m({resultId:ce(),...Nh,status:D("missing"),mentioned:ce(),cited:ce(),recommendedInstead:y(zl).length(0),answerExcerpt:ce()}).strict()]);m({property:Ji,measurement:Il,queryClass:Ea,questions:y(fz),total:ot,truncated:C()}).strict();m({targetKey:me,resultId:_a}).strict();const gz=m({url:_a,classification:_0,matchedTargetKeys:y(me),assigned:C(),historical:C(),evidenceComplete:C()}).strict().superRefine((e,a)=>{e.assigned!==(e.classification==="assigned")&&a.addIssue({code:Se.custom,path:["assigned"],message:"Assigned must agree with the source attribution classification"})});m({property:Ji,measurement:Il,question:m({resultId:_a,...Nh,status:D("answered")}).strict(),mentioned:C().nullable(),cited:C().nullable(),recommendedInstead:y(zl),answer:o().nullable(),sources:y(gz),captureStatus:Qe([rd,ce()]),retrievalStatus:Qe([z0,ce()]),retrievalContract:Qe([E0,ce()])}).strict();m({targetKey:me,runId:Zn.runId,provider:Zn.provider,location:Zn.location,queryClass:Ea.optional(),limit:d().int().positive().max(50).optional()}).strict();const yz=qe("state",[m({state:D("available"),answeredResults:ot,targetMissResults:ot,recommendationOccurrences:ot}).strict(),m({state:D("unavailable"),reason:sd}).strict()]),bz=m({name:zl,occurrences:ot,providers:y(ht).max(5),providerTotal:ot,providersTruncated:C(),questions:y(Ml).max(5),questionTotal:ot,questionsTruncated:C()}).strict().superRefine((e,a)=>{(e.providers.length>e.providerTotal||e.questions.length>e.questionTotal)&&a.addIssue({code:Se.custom,message:"Evidence totals cannot be smaller than returned evidence"}),e.providersTruncated!==e.providers.length<e.providerTotal&&a.addIssue({code:Se.custom,path:["providersTruncated"],message:"Provider truncation must agree with its total"}),e.questionsTruncated!==e.questions.length<e.questionTotal&&a.addIssue({code:Se.custom,path:["questionsTruncated"],message:"Question truncation must agree with its total"})});m({property:Ji,measurement:Il,queryClass:Ea,basis:yz,competitors:y(bz),total:ot,truncated:C()}).strict();m({runId:Zn.runId,scope:y0.default("all"),groupKey:me.optional(),targetKey:me.optional(),queryClass:Ea.default("all"),provider:Zn.provider,location:Zn.location,limit:d().int().positive().max(50).optional()}).strict().superRefine((e,a)=>{e.scope==="all"&&(e.groupKey!==void 0||e.targetKey!==void 0)&&a.addIssue({code:Se.custom,path:["scope"],message:"All scope cannot name a group or Property"}),e.scope==="group"&&(e.groupKey===void 0||e.targetKey!==void 0)&&a.addIssue({code:Se.custom,path:["groupKey"],message:"Group scope requires groupKey only"}),e.scope==="property"&&(e.targetKey===void 0||e.groupKey!==void 0)&&a.addIssue({code:Se.custom,path:["targetKey"],message:"Property scope requires targetKey only"})});const wk=j(["no_previous_run","execution_identity_changed","incomplete","not_comparable"]),Sk=Il.extend({executionIdentity:_a.nullable(),measurementScope:Qe([j(["full","spot_check"]),ce()])}).strict(),ml=qe("state",[m({state:D("available"),previous:zt,current:zt,delta:d()}).strict().superRefine((e,a)=>{if(e.previous.state!=="available"||e.current.state!=="available"){a.addIssue({code:Se.custom,message:"Available deltas require two available metrics"});return}Math.abs(e.delta-(e.current.value-e.previous.value))>Number.EPSILON&&a.addIssue({code:Se.custom,path:["delta"],message:"Delta must equal current minus previous"})}),m({state:D("unavailable"),reason:sd}).strict()]);m({current:Sk,comparison:qe("state",[m({state:D("available"),previous:m({displayedRunId:_a,planRevision:d().int().positive(),completedAt:o().datetime().nullable(),executionIdentity:_a,measurementScope:j(["full","spot_check"])}).strict(),metrics:m({propertiesMentioned:ml,mentionCoverage:ml,citationCoverage:ml}).strict(),changedProperties:y(Ji.extend({mentionCoverage:ml,citationCoverage:ml,flags:ot}).strict()),totalProperties:ot,truncated:C()}).strict(),m({state:D("unavailable"),reason:wk}).strict()])}).strict().superRefine((e,a)=>{if(e.comparison.state==="available"){if(e.current.displayedRunId===null||e.current.executionIdentity===null){a.addIssue({code:Se.custom,path:["current"],message:"A comparison requires an identified current run"});return}e.comparison.previous.planRevision!==e.current.planRevision&&a.addIssue({code:Se.custom,path:["comparison","previous","planRevision"],message:"Comparisons cannot cross plan revisions"}),e.comparison.previous.executionIdentity!==e.current.executionIdentity&&a.addIssue({code:Se.custom,path:["comparison","previous","executionIdentity"],message:"Comparisons cannot cross execution identities"})}});m({runId:Zn.runId}).strict();const vz=j(["no_completed_run","incomplete","evidence_incomplete","no_population","not_applicable"]),cd=m({state:D("unavailable"),reason:vz}).strict(),xz=m({state:D("available"),expected:ot,executed:ot,answered:ot,missing:ot}).strict(),kz=qe("state",[xz,cd]).superRefine((e,a)=>{e.state==="available"&&(e.executed+e.missing!==e.expected&&a.addIssue({code:Se.custom,message:"Expected must equal executed plus missing"}),e.answered>e.executed&&a.addIssue({code:Se.custom,path:["answered"],message:"Answered cannot exceed executed"}))}),wz=m({state:D("available"),complete:ot,partial:ot,failed:ot,unsupported:ot,notRecorded:ot}).strict(),Sz=qe("state",[wz,cd]),jz=m({state:D("available"),used:ot,notUsed:ot,unknown:ot,notApplicable:ot,notRecorded:ot}).strict(),Az=qe("state",[jz,cd]),Cz=m({state:D("available"),expectedQuestions:ot,answeredQuestions:ot,missingQuestions:ot}).strict(),Nz=qe("state",[Cz,cd]).superRefine((e,a)=>{e.state==="available"&&e.answeredQuestions+e.missingQuestions!==e.expectedQuestions&&a.addIssue({code:Se.custom,message:"Expected questions must equal answered plus missing"})});m({run:Sk,completeness:kz,capture:Sz,retrieval:Az,population:Nz,comparison:qe("state",[m({state:D("available"),previousDisplayedRunId:_a}).strict(),m({state:D("unavailable"),reason:wk}).strict()])}).strict().superRefine((e,a)=>{if(e.completeness.state!=="available")return;const s=e.completeness.executed;e.capture.state==="available"&&e.capture.complete+e.capture.partial+e.capture.failed+e.capture.unsupported+e.capture.notRecorded!==s&&a.addIssue({code:Se.custom,path:["capture"],message:"Capture counts must total executed snapshots"}),e.retrieval.state==="available"&&e.retrieval.used+e.retrieval.notUsed+e.retrieval.unknown+e.retrieval.notApplicable+e.retrieval.notRecorded!==s&&a.addIssue({code:Se.custom,path:["retrieval"],message:"Retrieval counts must total executed snapshots"})});const Wo=o().regex(/^[a-f0-9]{64}$/),za=o().trim().min(1).max(256),Ga=d().int().positive(),av=m({kind:j(["user","api-key","system"]),id:o().trim().min(1),label:o().trim().min(1)}).strict(),_z=j(["proposed","included","excluded"]),zz=j(["manual","sitemap"]),T0=m({stableKey:me,label:o().trim().min(1),status:_z,aliases:y(o().trim().min(1)),identityAliases:y(o().trim().min(1)).optional(),urlMatchers:y(o().trim().min(1)),source:zz,discoveredUrl:o().trim().min(1).optional(),discoveryIdentity:o().trim().min(1).optional()}).strict(),ud=m({providers:y(ht).optional(),models:Le(ht,o().trim().min(1)).optional(),locations:y(o().trim().min(1)).optional()}).strict(),Ez=j(["branded","non-brand","unclassified"]),Tz=j(["rule","operator"]),jk=m({targetKey:me,queryId:za,contextOverride:ud.optional(),executionContexts:y(ad.extend({executionNodeKey:o().min(1).optional()})).min(1).optional(),queryProvenance:V2.optional(),queryClass:Ez,classificationSource:Tz}).strict().superRefine((e,a)=>{e.contextOverride!==void 0&&e.executionContexts!==void 0&&a.addIssue({code:"custom",path:["executionContexts"],message:"Use either frozen execution contexts or a context override, not both."})}),dd=I2,Ak=m({stableKey:me,label:o().trim().min(1),parentGroupKey:me.optional(),targetKeys:y(me),competitors:y(dd)}).strict(),Rz=m({sitemapUrl:o().url(),rule:N0,exclusions:y(o().trim().min(1)),inputChecksum:Wo,reviewedAt:o().datetime().optional()}).strict(),Dz=m({providers:y(ht),models:Le(ht,o().trim().min(1)).optional(),locations:y(o().trim().min(1))}).strict(),Ck=L2,Oz=m({defaultContext:Dz,targets:y(T0),assignments:y(jk),groups:y(Ak),reportingScopes:y(Ck).optional(),discovery:Rz.optional()}).strict(),qz=m({id:o().trim().min(1),projectId:o().trim().min(1),schemaVersion:D(2),baseActiveVersionId:o().trim().min(1).nullable(),baseActiveRevision:Ga.nullable(),authoring:Oz,createdBy:av,updatedBy:av,createdAt:o().datetime(),updatedAt:o().datetime()}).strict(),R0=m({targets:d().int().nonnegative(),includedTargets:d().int().nonnegative(),assignments:d().int().nonnegative(),unclassifiedAssignments:d().int().nonnegative(),groups:d().int().nonnegative(),competitors:d().int().nonnegative()}).strict(),Bz=m({code:o().trim().min(1),message:o().trim().min(1),path:y(Qe([o(),d().int()]))}).strict(),Nk=m({etag:o().trim().min(1),changed:C(),warnings:y(Bz),counts:R0}).strict();m({draft:qz.nullable(),etag:o().trim().min(1).nullable()}).strict();Jo(T0);Jo(jk);Jo(Ak);m({search:o().optional(),cursor:o().trim().min(1).optional(),limit:d().int().positive().max(g0).optional()}).strict();m({expectedActiveRevision:Ga.nullable()}).strict();m({sitemapUrl:o().url(),rule:N0,exclusions:y(o().trim().min(1)).optional()}).strict();const Pz=m({discoveryIdentity:o().trim().min(1),action:j(["create","rebind","ignore"]),targetKey:me.optional(),label:o().trim().min(1).optional()}).strict();m({selections:y(Pz),selectedTargetKeys:y(me).optional()}).strict().superRefine((e,a)=>{e.selections.length===0&&e.selectedTargetKeys===void 0&&a.addIssue({code:"custom",message:"A proposal or reviewed Property selection is required."}),e.selectedTargetKeys&&new Set(e.selectedTargetKeys).size!==e.selectedTargetKeys.length&&a.addIssue({code:"custom",path:["selectedTargetKeys"],message:"Property keys must be unique."})});m({target:T0}).strict();m({targetKey:me,label:o().trim().min(1)}).strict();m({targetKey:me,mergedKeys:y(me).min(1)}).strict();m({targetKey:me,cleanup:D("assignments-and-group-memberships").optional()}).strict();m({targetKey:me,discoveryIdentity:o().trim().min(1),discoveredUrl:o().url()}).strict();const _k={targetKeys:y(me).optional(),groupKeys:y(me).optional()};function zk(e,a){(e.targetKeys?.length??0)===0&&(e.groupKeys?.length??0)===0&&a.addIssue({code:"custom",message:"At least one Target or group selector is required."})}m(_k).strict().superRefine(zk);const Mz=m({..._k,queryIds:y(za).min(1),contextOverride:ud.optional()}).strict().superRefine(zk);Qe([m({targetKey:me,queryIds:y(za).min(1),contextOverride:ud.optional()}).strict(),Mz]);const Iz=m({groupKey:me,label:o().trim().min(1),memberCount:d().int().positive()}).strict();m({draftEtag:o().trim().min(1),groups:y(Iz),resolvedTargetKeys:y(me),overlapCount:d().int().nonnegative(),assignments:m({requested:d().int().nonnegative(),added:d().int().nonnegative(),alreadyPresent:d().int().nonnegative()}).strict(),execution:m({addedNodes:d().int().nonnegative(),addedProviderCalls:d().int().nonnegative(),fullRunNodes:d().int().nonnegative(),fullRunProviderCalls:d().int().nonnegative()}).strict()}).strict();m({pairs:y(m({targetKey:me,queryId:za}).strict()).min(1),contextOverride:ud.optional()}).strict();Qe([m({targetKey:me,queryId:za}).strict(),m({targetKeys:y(me).min(1),queryId:za}).strict()]);m({targetKey:me}).strict();m({queryClass:h0,assignments:y(m({targetKey:me,queryId:za}).strict()).min(1)}).strict();m({group:m({stableKey:me,label:o().trim().min(1),parentGroupKey:me.nullable().optional(),targetKeys:y(me),competitors:y(dd).optional()}).strict()}).strict();m({market:Ck}).strict();m({groupKey:me}).strict();m({groupKey:me,competitor:dd}).strict();m({expectedActiveRevision:Ga,groupKey:me,domain:o().trim().min(1).refine(e=>ql(e)!==null,"A competitor domain must be a valid hostname"),label:o().trim().min(1).optional(),aliases:y(o().trim().min(1)).optional()}).strict();Nk.extend({groupKey:me,competitor:dd,draftCreated:C(),published:m({revision:Ga,competitorsChanged:D(!1)}).strict()}).strict();m({groupKey:me,competitorKey:me}).strict();const Vu=m({ruleId:o().trim().min(1),severity:j(["fail","warn"]),message:o().trim().min(1),path:y(Qe([o(),d().int()]))}).strict();qe("ok",[m({ok:D(!0),compiledChecksum:Wo,checks:y(Vu),counts:R0,plan:id}).strict(),m({ok:D(!1),compiledChecksum:ce(),checks:y(Vu).min(1)}).strict()]);const iv=m({added:y(o().trim().min(1)),removed:y(o().trim().min(1)),changed:y(o().trim().min(1)),unchanged:y(o().trim().min(1))}).strict(),Vz=m({activeRevision:Ga.nullable(),targets:iv,groups:iv,assignments:m({added:d().int().nonnegative(),removed:d().int().nonnegative(),reclassified:d().int().nonnegative()}).strict(),execution:m({addedNodeKeys:y(o().trim().min(1)),removedNodeKeys:y(o().trim().min(1))}).strict()}).strict();qe("ok",[m({ok:D(!0),compiledChecksum:Wo,checks:y(Vu),counts:R0,plan:id,diff:Vz}).strict(),m({ok:D(!1),compiledChecksum:ce(),checks:y(Vu).min(1),diff:ce()}).strict()]);m({expectedActiveRevision:Ga.nullable(),expectedCompiledChecksum:Wo}).strict();m({published:C(),active:m({revision:Ga,checksum:Wo,compiledChecksum:Wo,createdAt:o().datetime(),plan:id}).strict()}).strict();m({discarded:C()}).strict();m({expectedActiveRevision:Ga}).strict();m({deactivated:C(),previousRevision:Ga.nullable()}).strict();const Lz=j(["republish_required","setup_in_progress","awaiting_first_run","operational","simple"]),Uz=j(["republish_setup","continue_setup","run_measurement","view_measurement","start_setup"]),Gz=j(["simple","draft-only","active-v1","active-v2"]);m({state:Lz,nextAction:Uz,mode:Gz,answerVisibilityProviderReady:C(),activeRevision:Ga.nullable(),activeSchemaVersion:Qe([D(1),D(2)]).nullable(),draft:m({etag:o().trim().min(1),updatedAt:o().datetime()}).strict().nullable()}).strict();const Ek=m({id:o().trim().min(1),projectId:o().trim().min(1),name:o().trim().min(1),description:o().nullable(),itemCount:d().int().nonnegative(),createdAt:o().datetime(),updatedAt:o().datetime()}).strict(),$z=m({queryId:za,queryText:o().min(1),position:d().int().nonnegative()}).strict();Ek.extend({items:y($z)}).strict();m({querySets:y(Ek)}).strict();m({name:o().trim().min(1),description:o().nullable().optional(),queryIds:y(za)}).strict();const Kz=m({id:o().trim().min(1),projectId:o().trim().min(1),name:o().trim().min(1),description:o().nullable(),pattern:o().trim().min(1),variables:y(o().trim().min(1)),createdAt:o().datetime(),updatedAt:o().datetime()}).strict();m({templates:y(Kz)}).strict();m({name:o().trim().min(1),description:o().nullable().optional(),pattern:o().trim().min(1),variables:y(o().trim().min(1))}).strict();m({bindings:y(Le(o().trim().min(1),o().trim().min(1))).min(1),querySetId:o().trim().min(1).optional()}).strict();m({created:y(m({queryId:za,queryText:o().min(1)}).strict()),existing:y(m({queryId:za,queryText:o().min(1)}).strict())}).strict();const Lu=o().regex(/^[a-f0-9]{64}$/),md=d().int().positive();m({stableKey:me,kind:j(["target","group"]),retiredAt:o().datetime().nullable()}).strict();m({csv:o()}).strict();j(["matched","ambiguous","unmatched","invalid","duplicate","proposed","excluded"]);const Hz=j(["column-count","missing-property","missing-group","invalid-url","property-not-found","property-label-ambiguous","url-not-exact-match","target-proposed","target-excluded","group-label-ambiguous","group-key-conflict"]),_h=m({dataRow:md,property:o(),group:o(),url:o().nullable(),normalizedProperty:o(),normalizedGroupLabel:o()}).strict(),pl=_h.extend({reason:Hz}),Qz=m({source:j(["draft-target","draft-group","persisted-segment","retired-segment","proposed-group"]),stableKey:me,kind:j(["target","group"]).optional(),retiredAt:o().datetime().nullable().optional(),normalizedGroupLabel:o().optional()}).strict(),Fz=m({proposedGroupKey:me,evidence:y(Qz).min(1)}).strict(),Zz=qe("status",[_h.extend({status:D("matched"),targetKey:me,groupKey:me}).strict(),pl.extend({status:D("ambiguous"),candidateTargetKeys:y(me).min(1).optional(),candidateGroupKeys:y(me).min(1).optional()}).strict(),pl.extend({status:D("unmatched")}).strict(),pl.extend({status:D("invalid"),groupKeyConflict:Fz.optional()}).strict(),_h.extend({status:D("duplicate"),duplicateOfRow:md,targetKey:me,groupKey:me}).strict(),pl.extend({status:D("proposed"),targetKey:me}).strict(),pl.extend({status:D("excluded"),targetKey:me}).strict()]),Yz=m({normalizedGroupLabel:o(),groupKey:me,label:o().trim().min(1),action:j(["create","extend"]),matchedRows:y(md),targetKeys:y(me),addedTargetKeys:y(me),unchangedTargetKeys:y(me)}).strict(),Xz=m({dataRows:d().int().nonnegative(),matchedRows:d().int().nonnegative(),ambiguousRows:d().int().nonnegative(),unmatchedRows:d().int().nonnegative(),invalidRows:d().int().nonnegative(),duplicateRows:d().int().nonnegative(),proposedRows:d().int().nonnegative(),excludedRows:d().int().nonnegative(),needsAttention:d().int().nonnegative(),groupsReady:d().int().nonnegative(),groupsToCreate:d().int().nonnegative(),groupsToExtend:d().int().nonnegative(),membershipsReady:d().int().nonnegative(),addedMemberships:d().int().nonnegative(),unchangedMemberships:d().int().nonnegative()}).strict();m({draftEtag:o().trim().min(1),sourceChecksum:Lu,previewChecksum:Lu,rows:y(Zz),groupChanges:y(Yz),counts:Xz}).strict();m({csv:o(),sourceChecksum:Lu,previewChecksum:Lu,acceptedRows:y(md).min(1)}).strict().superRefine((e,a)=>{new Set(e.acceptedRows).size!==e.acceptedRows.length&&a.addIssue({code:"custom",path:["acceptedRows"],message:"Accepted CSV data rows must be unique."})});Nk.extend({appliedRows:d().int().nonnegative(),addedMemberships:d().int().nonnegative(),unchangedMemberships:d().int().nonnegative()}).strict();const Tk=j(["introduced","repointed","retired"]),Jz=Tk.enum;m({modelId:o().trim().min(1),date:o().regex(/^\d{4}-\d{2}-\d{2}$/,"date must be YYYY-MM-DD"),kind:Tk,confirmed:C(),sourceUrl:o().url(),note:o().min(1)});const Wz=[{modelId:"chatgpt-4o-latest",date:"2024-08-15",kind:"introduced",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:'Verbatim: "Released dynamic model for chatgpt-4o-latest—this model will point to the latest GPT-4o model used by ChatGPT." First moving id in the lineage.'},{modelId:"chatgpt-4o-latest",date:"2026-02-17",kind:"retired",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/deprecations.md",note:'Shutdown 2026-02-17, replacement gpt-5.1-chat-latest. Announced under the heading "2025-11-18: chatgpt-4o-latest snapshot".'},{modelId:"gpt-5.1-chat-latest",date:"2025-11-13",kind:"introduced",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:"Introduced inside the GPT-5.1 launch entry, not as a standalone entry."},{modelId:"gpt-5.2-chat-latest",date:"2025-12-11",kind:"introduced",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:"Introduced inside the GPT-5.2 launch entry."},{modelId:"gpt-5.2-chat-latest",date:"2026-02-10",kind:"repointed",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:'Verbatim: "Updated the gpt-5.2-chat-latest slug to point to the latest model currently used in ChatGPT." Target model NOT named.'},{modelId:"gpt-5.3-chat-latest",date:"2026-03-03",kind:"introduced",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:'Verbatim: "Released gpt-5.3-chat-latest to the Chat Completions and Responses API. This model points to the GPT-5.3 Instant snapshot currently used in ChatGPT."'},{modelId:"gpt-5.3-chat-latest",date:"2026-03-16",kind:"repointed",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:'Verbatim: "Updated the gpt-5.3-chat-latest slug to point to the latest model currently used in ChatGPT." Target model NOT named.'},{modelId:"chat-latest",date:"2026-05-05",kind:"introduced",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:'Verbatim: "Released chat-latest snapshot which points to the latest Instant model currently used in ChatGPT... The underlying model snapshot will be regularly updated."'},{modelId:"chat-latest",date:"2026-05-28",kind:"repointed",confirmed:!1,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:'UNCONFIRMED. The entry reads "Released chat-latest snapshot..." — the verb is "Released", the same boilerplate as the 2026-05-05 entry, not "Updated" as used on 2026-06-24. Only "the latest improvements" vs "our latest improvements" differs. Either a real change logged with copy-pasted text, or a duplicated entry; the record does not disambiguate.'},{modelId:"chat-latest",date:"2026-06-24",kind:"repointed",confirmed:!0,sourceUrl:"https://developers.openai.com/api/docs/changelog",note:'Verbatim (re-read at source 2026-07-20): "Updated the chat-latest snapshot, which points to the latest Instant model currently used in ChatGPT." The verb is "Updated", unlike the "Released" boilerplate of 2026-05-05 and 2026-05-28, which is the wording the changelog reserves for a real change. Target model NOT named. The only unambiguous chat-latest change on record.'}];Jz.repointed;new Set(Wz.map(e=>e.modelId.toLowerCase()));const eE=j(["not-exposed","no-known-change","known-change"]);eE.enum;const tE=m({modelId:o().trim().min(1),date:o().regex(/^\d{4}-\d{2}-\d{2}$/),confirmed:C(),sourceUrl:o().url()}),nE=m({status:j(["no-known-change","known-change"]),modelIds:y(o().trim().min(1)).min(1),changes:y(tE),changeCount:d().int().nonnegative(),unverifiedChangeCount:d().int().nonnegative(),firstChangeDate:o().optional(),lastChangeDate:o().optional(),knownGoodAsOf:o(),checkedThroughPeriodEnd:C()}),aE={openai:"ChatGPT",chatgpt:"ChatGPT",anthropic:"Claude",claude:"Claude",google:"Gemini",gemini:"Gemini",perplexity:"Perplexity"};function iE(e){const a=e.trim().toLowerCase();return aE[a]??e.charAt(0).toUpperCase()+e.slice(1)}function Yp(e){return typeof e=="number"&&Number.isFinite(e)&&e>0?Math.floor(e):0}function hl(e){return typeof e=="string"&&e.trim().length>=10?e.trim().slice(0,10):null}function Xp(e){return[...new Set(e.filter(a=>a!==null))].sort()}function sE(e,a){const s=iE(e),r=Array.isArray(a.changes)?a.changes:[],u=Yp(a.changeCount)||r.length,f=Math.min(u,Yp(a.unverifiedChangeCount)||Yp(a.unconfirmedChangeCount)||r.filter(S=>S.confirmed===!1).length),g=hl(a.knownGoodAsOf),b=a.checkedThroughPeriodEnd!==!1,v={engine:s,confirmedCount:u-f,unconfirmedCount:f,knownGoodAsOf:g,checkedThroughPeriodEnd:b};if(r.length>0)return{...v,confirmedDates:Xp(r.filter(S=>S.confirmed!==!1).map(S=>hl(S.date))),unconfirmedDates:Xp(r.filter(S=>S.confirmed===!1).map(S=>hl(S.date)))};const k=Xp([hl(a.firstChangeDate),hl(a.lastChangeDate)]);return u===0?{...v,confirmedDates:[],unconfirmedDates:[]}:f===0?{...v,confirmedDates:k,unconfirmedDates:[]}:v.confirmedCount===0?{...v,confirmedDates:[],unconfirmedDates:k}:{...v,confirmedDates:[],unconfirmedDates:[]}}function oE(e){return e.length===1?e[0]:e.length===2?`${e[0]} and ${e[1]}`:`${e.slice(0,-1).join(", ")}, and ${e[e.length-1]}`}function sv(e,a){return e.length===0?null:e.length===1&&a<=1?`on ${e[0]}`:`more than once between ${e[0]} and ${e[e.length-1]}`}function rE(e){const a=sv(e.confirmedDates,e.confirmedCount),s=sv(e.unconfirmedDates,e.unconfirmedCount),r=`The model behind ${e.engine}`;if(e.confirmedCount>0&&e.unconfirmedCount===0)return a?`${r} was updated ${a}, inside this period.`:`${r} was updated inside this period.`;if(e.confirmedCount===0)return s?`${r} may have been updated ${s}, inside this period, though that is not confirmed.`:`${r} may have been updated inside this period, though that is not confirmed.`;if(a&&s)return`${r} was updated ${a}, inside this period, and may also have been updated ${s}.`;const u=e.unconfirmedCount>1?"more times":"once more";return`${r} was updated inside this period, and may have been updated ${u}, though that is not confirmed.`}function ov(e){const a=e.filter(r=>!r.checkedThroughPeriodEnd&&r.knownGoodAsOf!==null);return a.length===0?null:`We last checked for model updates on ${a.map(r=>r.knownGoodAsOf).sort()[0]}, and this period runs past that date, so there may be later updates we do not know about.`}function RH(e){const a=Object.entries(e??{}).map(([v,k])=>sE(v,k??{})).sort((v,k)=>v.engine.localeCompare(k.engine));if(a.length===0)return null;const s=a.filter(v=>v.confirmedCount+v.unconfirmedCount>0);if(s.length===0){const v=[...new Set(a.map(E=>E.engine))],k=v.length>1,S=ov(a),A=[...new Set(a.map(E=>E.knownGoodAsOf).filter(E=>E!==null))].sort(),N=S??(A.length>0?`We last checked for model updates on ${A[0]}.`:null);return{kind:"no-known-change",text:`No model updates are on record for ${oE(v)} in this period.`,detail:`${k?"These engines":"This engine"} can be moved onto a different underlying model without the data ever showing a different model name, so we check each period against a record of known updates. Nothing is listed inside this one.${N?` ${N}`:""}`}}const r=s.reduce((v,k)=>v+k.confirmedCount+k.unconfirmedCount,0),u=s.some(v=>v.confirmedCount>0),f=r===1?"this update":"these updates",g=u?`Some of the movement in these numbers may come from ${f} rather than from a real change in how AI answers about you, so compare periods carefully.`:`If so, some of the movement in these numbers may come from ${f} rather than from a real change in how AI answers about you, so compare periods carefully.`,b=ov(a);return{kind:"change",text:`${s.map(rE).join(" ")} ${g}${b?` ${b}`:""}`}}const Ls=m({slope:d(),intercept:d(),r2:d(),start:d(),end:d(),n:d(),startIndex:d(),endIndex:d()}),lE=j(["gsc","ga4","gbp"]);m({id:o(),domain:o(),connectionType:lE,propertyId:o().nullable().optional(),sitemapUrl:o().nullable().optional(),scopes:y(o()).default([]),createdAt:o(),updatedAt:o()});const cE=m({date:o(),query:o(),page:o(),country:o().nullable().optional(),device:o().nullable().optional(),clicks:d(),impressions:d(),ctr:d(),position:d()});j(["clicks","impressions","date"]);m({rows:y(cE),totalMatching:d(),truncated:C(),latestAvailableDate:o().nullable()});const uE=m({date:o(),clicks:d(),impressions:d(),ctr:d(),position:d().nullable()}),dE=m({startDate:o().nullable(),endDate:o().nullable(),latestDataDate:o().nullable(),daysSinceLatestData:d().nullable()}),mE=m({clicks:Ls.nullable(),impressions:Ls.nullable(),ctr:Ls.nullable(),position:Ls.nullable()}),rv=m({startDate:o(),endDate:o(),clicks:d(),impressions:d(),ctr:d().nullable(),position:d().nullable(),source:j(["property-daily","dimensioned","mixed","empty"])}),pE=m({days:d(),basis:j(["prior-window","split-window"]).optional(),prior:rv,trailing:rv,comparable:C(),change:m({clicks:d().nullable(),impressions:d().nullable(),ctr:d().nullable(),position:d().nullable()})});m({totals:m({clicks:d(),impressions:d(),ctr:d(),position:d().nullable(),positionDays:d(),days:d()}),daily:y(uE),window:dE.optional(),trends:mE.optional(),periodComparison:pE.nullable().optional()});const hE=m({page:o(),clicks:d(),impressions:d(),ctr:d()});m({rows:y(hE),totals:m({clicks:d(),impressions:d(),ctr:d(),days:d(),coveredFrom:o().nullable(),coveredThrough:o().nullable(),complete:C()}).nullable(),totalsSource:D("property-daily"),rankedFrom:o().nullable(),rankedThrough:o().nullable()});const zh=m({id:o(),url:o(),indexingState:o().nullable().optional(),verdict:o().nullable().optional(),coverageState:o().nullable().optional(),pageFetchState:o().nullable().optional(),robotsTxtState:o().nullable().optional(),crawlTime:o().nullable().optional(),lastCrawlResult:o().nullable().optional(),isMobileFriendly:C().nullable().optional(),richResults:y(o()).default([]),referringUrls:y(o()).default([]),inspectedAt:o()});j(["stable","reindexed","deindexed","still-missing","new"]);const fE=m({url:o(),previousState:o().nullable(),currentState:o().nullable(),transitionDate:o()}),gE=m({reason:o(),count:d(),urls:y(zh).default([])});m({summary:m({total:d(),indexed:d(),notIndexed:d(),deindexed:d(),percentage:d()}),lastInspectedAt:o().nullable(),lastSyncedAt:o().nullable(),indexed:y(zh).default([]),notIndexed:y(zh).default([]),deindexed:y(fE).default([]),reasonGroups:y(gE).default([])});m({url:o(),type:j(["URL_UPDATED","URL_DELETED"]),notifiedAt:o()});const yE=m({url:o(),type:j(["URL_UPDATED","URL_DELETED"]),notifiedAt:o(),status:j(["success","error"]),error:o().optional()});m({summary:m({total:d().int().nonnegative(),succeeded:d().int().nonnegative(),failed:d().int().nonnegative()}),results:y(yE).default([])});m({date:o(),indexed:d(),notIndexed:d(),unknownPages:d().default(0),verifiedByInspection:d().default(0),derivedFromImpressions:d().default(0),reasonBreakdown:Le(o(),d()).default({})});const bE=m({siteUrl:o(),permissionLevel:o()});m({sites:y(bE).default([])});const vE=m({type:o(),submitted:o(),indexed:o().optional().describe("Deprecated compatibility field.")}),Rk=m({path:o(),parentSitemapUrl:o().optional(),lastSubmitted:o().optional(),isPending:C().optional(),isSitemapsIndex:C().optional(),type:o().optional(),lastDownloaded:o().optional(),warnings:o().optional(),errors:o().optional(),contents:y(vE).optional()});m({sitemaps:y(Rk).default([]),summary:m({total:d().int().nonnegative(),indexes:d().int().nonnegative(),files:d().int().nonnegative()}),preferredSubmissionUrls:y(o()).default([])});m({sitemapUrls:y(o().url().refine(e=>{const a=new URL(e).protocol;return a==="http:"||a==="https:"},{message:"Sitemap URL must use http or https."})).min(1).max(50)});const xE=m({sitemapUrl:o(),status:j(["accepted","error"]),submittedAt:o().optional(),error:o().optional()});m({summary:m({total:d().int().nonnegative(),accepted:d().int().nonnegative(),failed:d().int().nonnegative()}),results:y(xE)});m({sitemaps:y(Rk),primarySitemapUrl:o(),run:m({id:o(),projectId:o(),kind:o(),status:o(),trigger:o(),createdAt:o()}).nullable()});const at=o().trim().min(1),lv=o().regex(/^[a-f0-9]{64}$/i);function kE(e){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))return!1;const a=new Date(`${e}T00:00:00.000Z`);return!Number.isNaN(a.getTime())&&a.toISOString().slice(0,10)===e}const Ua=o().refine(kE,{message:"Expected a calendar date as YYYY-MM-DD."});function wE(e,a){const s=Date.parse(`${e}T00:00:00.000Z`),r=Date.parse(`${a}T00:00:00.000Z`);return Math.floor((r-s)/864e5)+1}const SE=j(["not-connected","selection-required","connected","stale"]),yu=SE.enum,Dk=j(["enabled","suspended","closed","canceled","unspecified","unknown"]);Dk.enum;const D0=j(["enabled","paused","removed","unknown"]);D0.enum;const Ok=j(["enabled","hidden","removed","unknown"]);Ok.enum;const O0=j(["customer","campaign"]);O0.enum;const qk=j(["customer-goal","campaign-goal","custom-goal"]);qk.enum;const Bk=m({loginCustomerId:at.nullable(),customerId:at.nullable(),selectedAt:o().nullable()}).strict(),Jp=m({id:at,projectId:at,scopes:y(o()).default([]),selection:Bk,lastValidatedAt:o().nullable(),lastInventorySnapshotAt:o().nullable(),lastMetricsSnapshotAt:o().nullable(),createdAt:o(),updatedAt:o()}).strict(),Eh=m({resourceName:at,customerId:at,parentCustomerId:at.nullable(),descriptiveName:o().nullable(),currencyCode:o().nullable(),timeZone:o().nullable(),manager:C(),hidden:C(),testAccount:C(),level:d().int().nonnegative(),status:Dk}).strict(),jE=m({customers:y(Eh),totalAccessible:d().int().nonnegative(),truncated:C(),selection:Bk,fetchedAt:o()}).strict();qe("status",[m({connected:D(!1),status:D(yu["not-connected"]),connection:ce(),selectedCustomer:ce()}).strict(),m({connected:D(!0),status:D(yu["selection-required"]),connection:Jp,selectedCustomer:ce()}).strict(),m({connected:D(!0),status:D(yu.connected),connection:Jp,selectedCustomer:Eh}).strict(),m({connected:D(!0),status:D(yu.stale),connection:Jp,selectedCustomer:Eh}).strict()]);const AE=m({id:at,resourceName:at,name:o(),status:D0,advertisingChannelType:o().nullable(),biddingStrategyType:o().nullable()}).strict(),CE=m({id:at,resourceName:at,name:o(),status:Ok,category:o(),origin:o(),primaryForGoal:C(),includeInConversionsMetric:C()}).strict(),NE=m({category:o(),origin:o(),biddable:C()}).strict(),_E=m({campaignId:at,category:o(),origin:o(),biddable:C()}).strict(),zE=m({id:at,name:o(),conversionActionIds:y(at)}).strict(),EE=m({campaignId:at,goalConfigLevel:O0,customGoalId:at.nullable()}).strict(),TE=m({customerId:at,fetchedAt:o(),campaigns:y(AE),conversionActions:y(CE),customerConversionGoals:y(NE),campaignConversionGoals:y(_E),campaignConversionGoalsComplete:C().optional(),customConversionGoals:y(zE),campaignGoalConfigurations:y(EE)}).strict(),RE=m({source:qk,category:o().nullable(),origin:o().nullable(),customGoalId:at.nullable(),biddable:C().nullable(),conversionActionIds:y(at),primaryConversionActionIds:y(at),secondaryConversionActionIds:y(at),missingConversionActionIds:y(at)}).strict(),DE=m({campaignId:at,goalConfigLevel:O0,customGoalId:at.nullable(),missingCustomGoalId:at.nullable(),goals:y(RE)}).strict();m({customerId:at,derivedAt:o(),campaigns:y(DE)}).strict();const Pk=50,Th=31,OE=Pk*Th,qE=m({campaignIds:y(at).min(1).max(Pk),startDate:Ua,endDate:Ua}).strict().superRefine((e,a)=>{if(new Set(e.campaignIds).size!==e.campaignIds.length&&a.addIssue({code:Se.custom,path:["campaignIds"],message:"Campaign IDs must be unique."}),e.endDate<e.startDate){a.addIssue({code:Se.custom,path:["endDate"],message:"endDate must not precede startDate."});return}wE(e.startDate,e.endDate)>Th&&a.addIssue({code:Se.custom,path:["endDate"],message:`Campaign metrics may cover at most ${Th} calendar days.`})}),BE=m({campaignId:at,date:Ua,impressions:d().int().nonnegative(),clicks:d().int().nonnegative(),costMicros:d().int().nonnegative(),conversions:d().nonnegative(),conversionValueMicros:d().int().nonnegative().nullable()}).strict(),PE=m({query:qE,rows:y(BE).max(OE),truncated:C(),fetchedAt:o()}).strict(),Mk=j(["accessible-customers","inventory","campaign-metrics"]),Wp=Mk.enum,q0=m({id:at,projectId:at,connectionId:at,runId:at,kind:Mk,customerId:at.nullable(),payloadChecksum:lv,rawPayloadSha256:lv.nullable(),rawPayloadBytes:d().int().nonnegative().nullable(),redactedFieldCount:d().int().nonnegative(),capturedAt:o(),createdAt:o()}).strict(),ME=qe("kind",[m({kind:D(Wp["accessible-customers"]),data:jE}).strict(),m({kind:D(Wp.inventory),data:TE}).strict(),m({kind:D(Wp["campaign-metrics"]),data:PE}).strict()]),IE=m({metadata:q0,payload:ME}).strict().superRefine((e,a)=>{e.metadata.kind!==e.payload.kind&&a.addIssue({code:Se.custom,path:["payload","kind"],message:"Snapshot metadata and payload kinds must match."})}),VE=j(["7d","14d","30d"]),B0=m({impressions:d().int().nonnegative(),clicks:d().int().nonnegative(),costMicros:d().int().nonnegative(),conversions:d().nonnegative(),conversionValueMicros:d().int().nonnegative().nullable(),ctr:d().nullable(),cpcMicros:d().int().nonnegative().nullable(),conversionRate:d().nullable(),costPerConversionMicros:d().int().nonnegative().nullable()}),LE=m({date:Ua,origin:j(["provider","filled"]),impressions:d().int().nonnegative(),clicks:d().int().nonnegative(),costMicros:d().int().nonnegative(),conversions:d().nonnegative(),ctr:d().nullable()}),UE=m({campaignId:at,name:o().nullable(),status:D0,totals:B0}),GE=m({snapshotId:at,capturedAt:o(),customerId:at,currencyCode:o().nullable(),timeZone:o().nullable(),asOfDate:Ua,openDate:Ua.nullable(),truncated:C(),campaignsQueried:d().int().nonnegative(),campaignsInInventory:d().int().nonnegative()}),$E=m({startDate:Ua,endDate:Ua,days:d().int().positive(),totals:B0}),KE=m({days:d().int().positive(),prior:$E,change:m({impressions:d().nullable(),clicks:d().nullable(),costMicros:d().nullable(),conversions:d().nullable(),ctr:d().nullable(),conversionRate:d().nullable()})});m({window:VE,startDate:Ua,endDate:Ua,days:d().int().positive(),totals:B0,daily:y(LE),campaigns:y(UE),comparison:KE.nullable(),comparisonUnavailableReason:j(["insufficient-history","no-snapshot"]).nullable(),source:GE.nullable()});const nt=o().trim().min(1),cv=o().regex(/^[a-f0-9]{64}$/i),HE=j(["not-connected","selection-required","connected","stale"]),bu=HE.enum,QE=j(["live","draft"]),Ik=QE.enum,Eu=m({accountId:nt.nullable(),containerId:nt.nullable(),workspaceId:nt.nullable(),selectedAt:o().nullable()}).strict(),eh=m({id:nt,projectId:nt,scopes:y(o()).default([]),selection:Eu,lastValidatedAt:o().nullable(),lastSnapshotAt:o().nullable(),createdAt:o(),updatedAt:o()}).strict(),Vk=m({id:nt,path:o(),name:o(),shareData:C().nullable()}).strict(),Lk=m({accountId:nt,id:nt,path:o(),name:o(),publicId:o().nullable(),domainName:o().nullable(),usageContexts:y(o())}).strict(),P0=m({accountId:nt,containerId:nt,id:nt,path:o(),name:o(),description:o().nullable(),fingerprint:o().nullable()}).strict(),FE=m({accounts:y(Vk),totalAccessible:d().int().nonnegative(),truncated:C(),fetchedAt:o()}).strict();m({accountId:nt,containers:y(Lk),totalAccessible:d().int().nonnegative(),truncated:C(),fetchedAt:o()}).strict();m({accountId:nt,containerId:nt,workspaces:y(P0),totalAccessible:d().int().nonnegative(),truncated:C(),fetchedAt:o()}).strict();const ZE=m({id:nt,name:o(),type:o(),paused:C(),firingTriggerIds:y(nt),blockingTriggerIds:y(nt),referencedVariableIds:y(nt),parameterKeys:y(o()),fingerprint:o().nullable()}).strict(),YE=m({id:nt,name:o(),type:o(),customEventNames:y(o()),filterKeys:y(o()),autoEventFilterKeys:y(o()),fingerprint:o().nullable()}).strict(),XE=m({id:nt,name:o(),type:o(),dataLayerVariableName:o().nullable(),parameterKeys:y(o()),fingerprint:o().nullable()}).strict(),Uk=j(["recognized","unknown"]),uv=Uk.enum,JE=j(["literal","variable-ref","absent","unknown"]),pd=JE.enum,WE=o().trim().min(5).max(132).regex(/^\{\{\w[\w ./-]{0,127}\}\}$/),lr=m({source:D(pd.absent),literal:ce(),variableRef:ce()}).strict(),cr=m({source:D(pd.unknown),literal:ce(),variableRef:ce()}).strict(),ur=m({source:D(pd["variable-ref"]),literal:ce(),variableRef:WE}).strict();function Vl(e){return m({source:D(pd.literal),literal:e,variableRef:ce()}).strict()}const eT=o().trim().max(23).regex(/^(?:AW-)?\d{1,20}$/i),tT=o().trim().min(1).max(128).regex(/^[\w-]+$/),nT=o().trim().min(1).max(20).regex(/^(?:0|[1-9]\d{0,11})(?:\.\d{1,6})?$/),aT=o().trim().length(3).regex(/^[a-z]{3}$/i);qe("source",[Vl(o().trim().min(1).max(256)),ur,lr,cr]);const iT=qe("source",[Vl(eT),ur,lr,cr]),sT=qe("source",[Vl(tT),ur,lr,cr]),oT=qe("source",[Vl(nT),ur,lr,cr]),rT=qe("source",[ur,lr,cr]),lT=qe("source",[Vl(aT),ur,lr,cr]),Gk=j(["all-pages","custom-event","filtered","unknown"]);Gk.enum;const dv=m({operator:o().trim().min(1).max(64),value:o().max(2048),negated:C(),ignoreCase:C()}).strict(),cT=m({triggerId:nt,triggerType:o(),eventPredicates:y(dv),hostnamePredicates:y(dv),unsupportedConditionCount:d().int().nonnegative()}).strict(),$k=j(["not-google-ads-tag","unsupported-tag-type","custom-html-opaque","conversion-id-unresolved","conversion-label-unresolved","value-mapping-missing","transaction-id-mapping-missing","currency-mapping-missing","trigger-unresolved","hostname-filter-unresolved"]);$k.enum;const uT=m({tagId:nt,tagType:o(),recognition:Uk,recognitionReason:o().nullable(),conversionId:iT,conversionLabel:sT,value:oT,transactionId:rT,currency:lT,triggerStrategy:Gk,triggerIds:y(nt),triggerPredicates:y(cT),reviewReasons:y($k)}).strict().superRefine((e,a)=>{e.recognition===uv.recognized&&e.recognitionReason!==null&&a.addIssue({code:Se.custom,path:["recognitionReason"],message:"Recognized assessments cannot carry an unknown-recognition reason."}),e.recognition===uv.unknown&&!e.recognitionReason&&a.addIssue({code:Se.custom,path:["recognitionReason"],message:"Unknown assessments require a recognition reason."})}),Kk=m({accountId:nt,containerId:nt,workspaceId:nt.nullable(),tags:y(ZE),triggers:y(YE),variables:y(XE),googleAdsTagAssessments:y(uT).default([])}).strict(),dT=m({accountId:nt,containerId:nt,id:nt,path:o(),name:o(),description:o().nullable(),fingerprint:o().nullable(),deleted:C()}).strict(),Hk=m({source:D(Ik.live),version:dT,graph:Kk,fetchedAt:o()}).strict(),Qk=m({source:D(Ik.draft),workspace:P0,graph:Kk,conflictCount:d().int().nonnegative(),fetchedAt:o()}).strict(),mT=m({account:Vk,container:Lk,workspaces:y(P0),live:Hk.nullable(),draft:Qk.nullable(),fetchedAt:o()}).strict();qe("status",[m({connected:D(!1),status:D(bu["not-connected"]),connection:ce(),selection:ce()}).strict(),m({connected:D(!0),status:D(bu["selection-required"]),connection:eh,selection:Eu}).strict(),m({connected:D(!0),status:D(bu.connected),connection:eh,selection:Eu}).strict(),m({connected:D(!0),status:D(bu.stale),connection:eh,selection:Eu}).strict()]);const Fk=j(["accounts","container","live","draft"]),vu=Fk.enum,M0=m({id:nt,projectId:nt,connectionId:nt,runId:nt,kind:Fk,accountId:nt.nullable(),containerId:nt.nullable(),workspaceId:nt.nullable(),payloadChecksum:cv,rawPayloadSha256:cv.nullable(),rawPayloadBytes:d().int().nonnegative().nullable(),redactedFieldCount:d().int().nonnegative(),capturedAt:o(),createdAt:o()}).strict(),pT=qe("kind",[m({kind:D(vu.accounts),data:FE}).strict(),m({kind:D(vu.container),data:mT}).strict(),m({kind:D(vu.live),data:Hk}).strict(),m({kind:D(vu.draft),data:Qk}).strict()]),hT=m({metadata:M0,payload:pT}).strict().superRefine((e,a)=>{e.metadata.kind!==e.payload.kind&&a.addIssue({code:Se.custom,path:["payload","kind"],message:"Snapshot metadata and payload kinds must match."})}),On=o().trim().min(1),fT=o().trim().min(1).refine(e=>ql(e)!==null,"Expected a hostname or http(s) URL."),I0=j(["configured","statically-consistent","runtime-unverified","observed"]);I0.enum;const Zk=j(["pass","fail","unknown"]);Zk.enum;const Yk=j(["ads-connection-missing","ads-conversion-action-missing","ads-goal-missing","ads-goal-not-biddable","ads-action-not-primary","gtm-connection-missing","gtm-live-graph-missing","gtm-tag-missing","gtm-tag-unrecognized","gtm-tag-paused","gtm-trigger-missing","gtm-variable-missing","gtm-event-mismatch","gtm-hostname-mismatch","gtm-value-mapping-missing","gtm-transaction-id-mapping-missing","gtm-currency-mapping-missing","gtm-conversion-id-mismatch","gtm-conversion-label-mismatch","runtime-event-not-observed","runtime-gtm-not-observed","runtime-ads-not-observed"]);Yk.enum;const Xk=m({id:On,projectId:On,name:o().trim().min(1),eventName:o().trim().min(1),googleAds:m({customerId:On,conversionActionId:On,conversionId:o().trim().min(1).optional(),conversionLabel:o().trim().min(1).optional(),campaignIds:y(On).max(50).default([]),requireBiddableGoal:C().default(!0),requirePrimaryAction:C().default(!0)}).strict(),gtm:m({accountId:On,containerId:On,tagId:On,triggerIds:y(On).default([]),variableIds:y(On).default([])}).strict(),runtime:m({verificationRequired:C().default(!0),requireTransactionId:C().default(!0),requireValue:C().default(!0),requireCurrency:C().default(!0),productionHosts:y(fT).default([])}).strict(),createdAt:o(),updatedAt:o()}).strict();Xk.omit({id:!0,projectId:!0,createdAt:!0,updatedAt:!0});const Jk=j(["not-run","consistent","inconsistent"]);Jk.enum;const Wk=j(["not-run","not-observed","observed"]);Wk.enum;m({staticCheck:Jk,runtimeVerificationRequired:C(),runtimeObservation:Wk}).strict();const gT=m({code:Yk,subject:o().trim().min(1),outcome:Zk,status:I0,evidenceIds:y(On).default([])}).strict(),yT=m({contract:Xk,status:I0,findings:y(gT),evaluatedAt:o()}).strict(),mv=m({id:On,name:o(),detail:o(),active:C()});m({googleAds:m({customerId:On.nullable(),syncedAt:o().nullable(),conversionActions:y(mv)}),gtm:m({containerId:On.nullable(),syncedAt:o().nullable(),tags:y(mv)})});const wl=o().trim().min(1);function pv(e){const a=e.trim();return/^\d{10}$/.test(a)?a:/^\d{3}-\d{3}-\d{4}$/.test(a)?a.replaceAll("-",""):null}const bT=/^[\w-]+$/;function V0(e){const a=e.trim();return bT.test(a)?a:null}function vT(e){const a=e.trim();return/^accounts\/([\w-]+)$/.exec(a)?.[1]??V0(a)}function xT(e,a){const s=e.trim(),r=/^accounts\/([\w-]+)\/containers\/([\w-]+)$/.exec(s);return r?r[1]===a?r[2]:null:V0(s)}function kT(e,a,s){const r=e.trim(),u=/^accounts\/([\w-]+)\/containers\/([\w-]+)\/workspaces\/([\w-]+)$/.exec(r);return u?u[1]===a&&u[2]===s?u[3]:null:V0(r)}function wT(e){const a=pv(e.customerId);if(!a)return null;if(e.loginCustomerId===null)return{loginCustomerId:null,customerId:a};if(e.loginCustomerId===void 0)return{customerId:a};const s=pv(e.loginCustomerId);return s?{loginCustomerId:s,customerId:a}:null}function ST(e){const a=vT(e.accountId);if(!a)return null;const s=xT(e.containerId,a);if(!s)return null;if(e.workspaceId===void 0)return{accountId:a,containerId:s};const r=kT(e.workspaceId,a,s);return r?{accountId:a,containerId:s,workspaceId:r}:null}const hd=j(["google-ads","gtm"]);hd.enum;m({provider:hd,publicUrl:o().url().optional(),developerToken:o().trim().min(1).max(512).optional()}).strict();m({provider:hd,authorizationUrl:o().url(),redirectUri:o().url(),expiresAt:o().nullable()}).strict();m({loginCustomerId:wl.nullable().optional(),customerId:wl}).strict().superRefine((e,a)=>{wT(e)||a.addIssue({code:Se.custom,message:"Expected ten-digit Google Ads customer IDs, with optional 3-3-4 display hyphens."})});m({accountId:wl,containerId:wl,workspaceId:wl.optional()}).strict().superRefine((e,a)=>{ST(e)||a.addIssue({code:Se.custom,message:"GTM resource paths must match the selected account and container."})});m({provider:hd,disconnected:C()}).strict();const ew=100;m({snapshots:y(q0).max(ew),nextCursor:o().nullable(),total:d().int().nonnegative()}).strict();m({snapshot:IE}).strict();m({snapshots:y(M0).max(ew),nextCursor:o().nullable(),total:d().int().nonnegative()}).strict();m({snapshot:hT}).strict();m({assessment:yT,googleAdsSnapshot:q0.nullable(),gtmSnapshot:M0.nullable()}).strict();const jT=m({name:o(),accountName:o().nullable(),type:o().nullable(),role:o().nullable()});m({accounts:y(jT),total:d().int().nonnegative()});const AT=m({id:o(),projectId:o(),accountName:o(),locationName:o(),displayName:o(),primaryCategoryDisplayName:o().nullable(),storefrontAddress:o().nullable(),websiteUri:o().nullable(),placeId:o().nullable(),mapsUri:o().nullable(),additionalCategories:y(o()),description:o().nullable(),serviceArea:Le(o(),qn()).nullable(),regularHours:Le(o(),qn()).nullable(),primaryPhone:o().nullable(),openStatus:o().nullable(),openingDate:o().nullable(),selected:C(),syncedAt:o().nullable(),createdAt:o(),updatedAt:o()});m({locations:y(AT),totalDiscovered:d().int().nonnegative(),totalSelected:d().int().nonnegative()});m({selectAllNew:C().default(!0),accountName:o().optional(),switchAccount:C().default(!1)});m({selected:C()});m({locationNames:y(o()).optional(),daysOfMetrics:d().int().positive().max(540).optional(),monthsOfKeywords:d().int().positive().max(18).optional()});m({runId:o(),status:o()});const CT=m({locationName:o(),date:o(),metric:o(),value:d().int()});m({metrics:y(CT),total:d().int().nonnegative()});const NT=m({locationName:o(),periodStart:o(),periodEnd:o(),keyword:o(),valueCount:d().int().nullable(),valueThreshold:d().int().nullable()});m({keywords:y(NT),total:d().int().nonnegative(),thresholdedPct:d().int().min(0).max(100)});const _T=m({locationName:o(),placeActionLinkName:o(),placeActionType:o(),uri:o().nullable(),isPreferred:C(),providerType:o().nullable()});m({placeActions:y(_T),total:d().int().nonnegative()});const zT=m({locationName:o(),populatedGroupCount:d().int().nonnegative(),syncedAt:o(),attributes:Le(o(),qn())});m({lodging:y(zT),total:d().int().nonnegative()});const ET=m({name:o(),valueType:o(),values:y(Qe([C(),o()])),unsetValues:y(o()),uris:y(o())}),TT=m({locationName:o(),attributeCount:d().int().nonnegative(),syncedAt:o(),attributes:y(ET)});m({attributes:y(TT),total:d().int().nonnegative()});const RT=m({locationName:o(),placeId:o(),tier:o(),amenities:y(o()),syncedAt:o(),place:Le(o(),qn())});m({places:y(RT),total:d().int().nonnegative()});m({scope:m({locationName:o().nullable(),locationCount:d().int().nonnegative()}),performance:m({totals:Le(o(),d()),recent7d:Le(o(),d()),prior7d:Le(o(),d()),deltaPct:Le(o(),d().nullable())}),freshness:m({dataThroughDate:o().nullable(),latestStoredDate:o().nullable(),pendingDays:d().int().nonnegative()}),timeseries:y(m({date:o(),pending:C(),metrics:Le(o(),d())})),keywords:m({total:d().int().nonnegative(),thresholdedCount:d().int().nonnegative(),thresholdedPct:d().int().min(0).max(100)}),placeActions:m({total:d().int().nonnegative(),hasReservationCta:C(),hasBookingCta:C(),hasDirectMerchantCta:C()}),lodging:m({lodgingLocationCount:d().int().nonnegative(),populatedLodgingCount:d().int().nonnegative(),emptyLodgingCount:d().int().nonnegative()}),profileCompleteness:m({locationCount:d().int().nonnegative(),withSecondaryCategories:d().int().nonnegative(),secondaryCategoryTotal:d().int().nonnegative(),withDescription:d().int().nonnegative(),withServiceArea:d().int().nonnegative(),withHours:d().int().nonnegative(),withPrimaryPhone:d().int().nonnegative(),permanentlyClosed:d().int().nonnegative(),temporarilyClosed:d().int().nonnegative()})});const DT={BUSINESS_DIRECTION_REQUESTS:"Direction requests",WEBSITE_CLICKS:"Website clicks",CALL_CLICKS:"Call clicks",BUSINESS_BOOKINGS:"Bookings",BUSINESS_CONVERSATIONS:"Conversations",BUSINESS_FOOD_ORDERS:"Food orders",BUSINESS_FOOD_MENU_CLICKS:"Food menu clicks",BUSINESS_IMPRESSIONS_DESKTOP_SEARCH:"Search impressions (desktop)",BUSINESS_IMPRESSIONS_MOBILE_SEARCH:"Search impressions (mobile)",BUSINESS_IMPRESSIONS_DESKTOP_MAPS:"Maps impressions (desktop)",BUSINESS_IMPRESSIONS_MOBILE_MAPS:"Maps impressions (mobile)"};function OT(e){const a=e.replace(/^BUSINESS_/,"").split("_").filter(Boolean).map(r=>r.toLowerCase());if(a.length===0)return e;const s=a.join(" ");return s.charAt(0).toUpperCase()+s.slice(1)}function DH(e){return DT[e]??OT(e)}const qT=["BUSINESS_DIRECTION_REQUESTS","WEBSITE_CLICKS","CALL_CLICKS"],BT=["BUSINESS_IMPRESSIONS_DESKTOP_SEARCH","BUSINESS_IMPRESSIONS_MOBILE_SEARCH","BUSINESS_IMPRESSIONS_DESKTOP_MAPS","BUSINESS_IMPRESSIONS_MOBILE_MAPS"];function OH(e){return qT.includes(e)?"conversion":BT.includes(e)?"reach":"other"}m({id:o(),domain:o(),siteUrl:o().nullable().optional(),createdAt:o(),updatedAt:o()});const th=m({id:o(),url:o(),httpCode:d().nullable().optional(),inIndex:C().nullable().optional(),lastCrawledDate:o().nullable().optional(),inIndexDate:o().nullable().optional(),inspectedAt:o(),documentSize:d().nullable().optional(),anchorCount:d().nullable().optional(),discoveryDate:o().nullable().optional()});m({summary:m({total:d(),indexed:d(),notIndexed:d(),unknown:d().optional(),percentage:d()}),lastInspectedAt:o().nullable(),indexed:y(th).default([]),notIndexed:y(th).default([]),unknown:y(th).default([]).optional()});m({query:o(),impressions:d(),clicks:d(),ctr:d(),averagePosition:d()});m({date:o(),indexed:d(),notIndexed:d(),unknown:d()});const PT=m({url:o(),status:j(["success","error"]),submittedAt:o(),error:o().optional()});m({summary:m({total:d().int().nonnegative(),succeeded:d().int().nonnegative(),failed:d().int().nonnegative()}),results:y(PT).default([])});const tw=m({url:o(),verified:C()});m({sites:y(tw).default([])});m({connected:C(),domain:o(),siteUrl:o().nullable(),createdAt:o().nullable(),updatedAt:o().nullable()});m({connected:C(),domain:o(),siteUrl:o().nullable(),availableSites:y(tw).default([])});m({siteUrl:o()});const MT=m({name:o(),alive:C(),lastUsed:o().nullable()});m({connected:C(),endpoint:o(),version:o().optional(),browserVersion:o().optional(),targets:y(MT).default([])});const dr=j(["live","staging"]);m({projectName:o(),url:o(),stagingUrl:o().optional(),username:o(),defaultEnv:dr,createdAt:o(),updatedAt:o()});const hv=m({url:o(),reachable:C(),pageCount:d().nullable().optional(),version:o().nullable().optional(),error:o().nullable().optional(),plugins:y(o()).optional(),authenticatedUser:m({id:d(),slug:o()}).nullable().optional()});m({connected:C(),projectName:o(),defaultEnv:dr,live:hv.nullable(),staging:hv.nullable(),adminUrl:o().nullable().optional()});const IT=m({id:d(),slug:o(),title:o(),status:o(),modifiedAt:o().nullable().optional(),link:o().nullable().optional()}),nw=m({title:o().nullable(),description:o().nullable(),noindex:C().nullable(),writable:C().default(!1),writeTargets:y(o()).default([])}),VT=m({type:o(),json:Le(o(),qn())}),LT=IT.extend({env:dr,content:o(),seo:nw,schemaBlocks:y(VT).default([])}),fv=LT.extend({contentHash:o(),contentSnippet:o()}),aw=m({manualRequired:D(!0),targetUrl:o(),adminUrl:o().nullable().optional(),content:o(),nextSteps:y(o()).default([])}),UT=m({slug:o(),severity:j(["high","medium","low"]),code:j(["noindex","missing-seo-title","missing-meta-description","missing-schema","thin-content"]),message:o()});m({slug:o(),title:o(),status:o(),wordCount:d(),seo:nw,schemaPresent:C(),issues:y(UT).default([])});const GT=m({slug:o(),status:j(["applied","skipped","manual"]),error:o().optional(),manualAssist:aw.optional()});m({env:dr,strategy:j(["plugin","manual"]),results:y(GT)});const $T=m({slug:o(),status:j(["deployed","stripped","skipped","failed"]),schemasInjected:y(o()).optional(),manualAssist:aw.optional(),error:o().optional()});m({env:dr,results:y($T)});const KT=m({slug:o(),title:o(),canonrySchemas:y(o()),thirdPartySchemas:y(o()),hasCanonrySchema:C()});m({env:dr,pages:y(KT)});const HT=m({name:o(),status:j(["completed","skipped","failed"]),summary:o().optional(),error:o().optional()});m({projectName:o(),steps:y(HT)});m({slug:o(),live:fv,staging:fv,hasDifferences:C(),differences:m({title:C(),slug:C(),content:C(),seoTitle:C(),seoDescription:C(),noindex:C(),schema:C()})});const QT=m({name:o(),displayName:o().optional(),keyUrl:o().optional(),modelHint:o().optional(),model:o().optional(),defaultModel:o().optional(),configured:C(),quota:l_.optional(),vertexConfigured:C().optional()}),FT=m({name:o(),displayName:o(),mode:j(["api","browser"]),modelConfigurable:C(),defaultModel:o(),knownModels:y(m({id:o(),displayName:o(),tier:j(["flagship","standard","fast","economy"])})).default([]),modelValidationPattern:m({source:o(),flags:o()}),modelValidationHint:o()}),gv=m({configured:C()});m({providers:y(QT).default([]),providerCatalog:y(FT).default([]),google:gv,bing:gv});const pa=j(["queued","running","completed","partial","failed","cancelled"]),xn=pa.enum,L0=j(["answer-visibility","site-audit","gsc-sync","inspect-sitemap","ga-sync","bing-inspect","bing-inspect-sitemap","backlink-extract","traffic-sync","aeo-discover-seed","aeo-discover-probe","gbp-sync","ads-sync","google-ads-sync","gtm-sync"]),ze=L0.enum;m({kind:L0.optional(),status:pa.optional()});const U0=j(["manual","scheduled","config-apply","backfill","probe"]),Qo=U0.enum,fi=j(["cited","not-cited"]),Uu=fi.enum,Gu=j(["visible","not-visible"]);Gu.enum;const El=j(["mentioned","not-mentioned"]);El.enum;const iw=j(["new","cited","lost","emerging","not-cited"]);iw.enum;const ZT=j(["new","mentioned","lost","emerging","not-mentioned"]);ZT.enum;const YT=j([Qo.manual,Qo.probe]);m({kind:D(ze["answer-visibility"]).optional(),trigger:YT.optional(),providers:y(ht).optional(),queries:y(o().min(1)).min(1).optional(),measurementScope:l7.optional(),location:o().min(1).optional(),allLocations:C().optional(),noLocation:C().optional()}).refine(e=>+!!e.location+ +!!e.allLocations+ +!!e.noLocation<=1,{message:'Only one of "location", "allLocations", or "noLocation" may be provided'});const XT=m({message:o(),raw:qn().optional()}),JT=m({message:o().optional(),providers:Le(o(),XT).optional()}),WT=m({id:o(),projectId:o(),kind:L0,status:pa,trigger:U0.default("manual"),measurementPlanVersionId:o().nullable().optional(),measurementManifest:Le(o(),qn()).nullable().optional(),measurementScope:c7.nullable().optional(),measurementExecutionIdentity:W2.nullable().optional(),location:o().nullable().optional(),queries:y(o()).nullable().optional(),startedAt:o().nullable().optional(),finishedAt:o().nullable().optional(),error:JT.nullable().optional(),queryBasketRevision:d().int().nullable().optional(),createdAt:o()});function G0(e){if(e.providers){const a=Object.entries(e.providers);if(a.length===1){const[s,r]=a[0];return`${s}: ${r.message}`}if(a.length>1)return a.map(([s,r])=>`${s}: ${r.message}`).join(" • ")}return e.message??"Run failed."}const fd=m({uri:o(),title:o()}),e9=m({status:j(["applied","ignored","browser-implicit","unknown"]),resolved:Yt.nullable().optional()}),sw=m({id:o(),runId:o(),queryId:o(),query:o().optional(),provider:ht,citationState:fi,answerMentioned:C().optional(),visibilityState:Gu.optional(),mentionState:El.optional(),transition:iw.optional(),answerText:o().nullable().optional(),citedDomains:y(o()).default([]),citedUrls:y(o()).nullable().default(null),captureStatus:Qe([rd,ce()]).default(null),sourceCount:d().int().nonnegative().nullable().default(null),resolvedCount:d().int().nonnegative().nullable().default(null),captureVersion:d().int().positive().nullable().default(null),retrievalStatus:Qe([z0,ce()]).default(null),retrievalContract:Qe([E0,ce()]).default(null),competitorOverlap:y(o()).default([]),citedCompetitorDomains:y(o()).default([]),mentionedCompetitorDomains:y(o()).default([]),recommendedCompetitors:y(o()).default([]),matchedTerms:y(o()).default([]),groundingSources:y(fd).default([]),searchQueries:y(o()).default([]),model:o().nullable().optional(),servedModel:o().nullable().optional(),location:o().nullable().optional(),requestedContext:Yt.nullable().optional(),supportedContext:e9.nullable().optional(),createdAt:o()});m({snapshots:y(sw),total:d().int().nonnegative()});const t9=m({queryId:o().nullable(),query:o().nullable(),run1State:fi.nullable(),run2State:fi.nullable(),run1AnswerMentioned:C().nullable(),run2AnswerMentioned:C().nullable(),run1VisibilityState:Gu.nullable(),run2VisibilityState:Gu.nullable(),run1MentionState:El.nullable().optional(),run2MentionState:El.nullable().optional(),changed:C(),visibilityChanged:C()});m({run1:o(),run2:o(),diff:y(t9)});const n9=WT.extend({snapshots:y(sw).optional()}),a9=m({totalRuns:d().int().nonnegative(),run:n9.nullable()});m({id:o(),projectId:o().nullable().optional(),actor:o(),action:o(),entityType:o(),entityId:o().nullable().optional(),diff:qn().optional(),userAgent:o().nullable().optional(),actorSession:o().nullable().optional(),requestId:o().nullable().optional(),credentialId:o().nullable().optional(),createdAt:o()});const ow=j(["all","api","browser"]);ow.enum;const i9=j(["yes","no","unknown","not-mentioned"]),yv=y(o().min(1)),bv=m({companyName:o().min(1),domain:o().min(1),queries:yv.optional(),phrases:yv.optional(),competitors:y(o().min(1)).optional(),providers:y(o().trim().min(1)).min(1).optional().describe("Configured provider names to use for both answers and analysis. Omit to use all providers matching providerMode."),providerMode:ow.optional().describe("Filter providers by transport; defaults to all. Browser-only selection requires manual queries and uses no API provider for analysis.")}).superRefine((e,a)=>{e.queries!==void 0&&e.phrases!==void 0&&a.addIssue({code:"custom",message:"Use queries; phrases is accepted only as a legacy alias when queries is omitted",path:["phrases"]})});bv.safeExtend({competitors:bv.shape.competitors.default([])});const s9=m({name:o(),count:d().int().nonnegative()}),o9=m({id:o(),name:o(),weight:d(),score:d(),findings:y(m({type:o(),message:o()})).default([]),recommendations:y(o()).default([])}),r9=m({url:o(),finalUrl:o(),auditedAt:o(),overallScore:d(),summary:o(),factors:y(o9).default([])}),l9=m({industry:o(),summary:o(),services:y(o()).default([]),categoryTerms:y(o()).default([])}),c9=m({provider:o(),displayName:o(),model:o().nullable().optional(),mentioned:C(),cited:C(),describedAccurately:i9,accuracyNotes:o().nullable().optional(),incorrectClaims:y(o()).default([]),recommendedCompetitors:y(o()).default([]),citedDomains:y(o()).default([]),groundingSources:y(fd).default([]),searchQueries:y(o()).default([]),answerText:o(),error:o().nullable().optional()}),u9=m({query:o(),providerResults:y(c9).default([])}),d9=m({totalQueries:d().int().nonnegative(),totalProviders:d().int().nonnegative(),totalComparisons:d().int().nonnegative(),mentionCount:d().int().nonnegative(),citationCount:d().int().nonnegative(),topCompetitors:y(s9).default([]),visibilityGap:o(),whatThisMeans:y(o()).default([]),recommendedActions:y(o()).default([])});m({companyName:o(),domain:o(),homepageUrl:o(),generatedAt:o(),queries:y(o()).default([]),competitors:y(o()).default([]),profile:l9,audit:r9,queryResults:y(u9).default([]),summary:d9});const rw=Qe([pa,ce()]),$0=j(["pass","partial","fail"]);$0.enum;const lw=j(["up","down","flat"]);lw.enum;const m9=m({id:o(),name:o(),weight:d(),avgScore:d(),status:$0,pagesPassing:d().int().nonnegative(),pagesPartial:d().int().nonnegative(),pagesFailing:d().int().nonnegative()}),p9=m({factorId:o(),factorName:o(),avgScore:d(),affectedPages:d().int().nonnegative(),totalPages:d().int().nonnegative(),affectedPct:d().int().nonnegative(),topRecommendations:y(o()).default([])});m({project:o(),hasData:C(),runId:o().nullable(),runStatus:rw,sitemapUrl:o().nullable(),auditedAt:o().nullable(),aggregateScore:d(),pagesDiscovered:d().int().nonnegative(),pagesAudited:d().int().nonnegative(),pagesSkipped:d().int().nonnegative(),pagesErrored:d().int().nonnegative(),deltaScore:d().nullable(),trend:Qe([lw,ce()]),previousScore:d().nullable(),previousAuditedAt:o().nullable(),factors:y(m9).default([]),crossCuttingIssues:y(p9).default([]),prioritizedFixes:y(o()).default([])});const cw=m({id:o(),name:o(),weight:d(),score:d()}),h9=m({url:o(),overallScore:d(),status:j(["success","error"]),error:o().nullable().optional(),factors:y(cw).default([])});m({project:o(),runId:o().nullable(),auditedAt:o().nullable(),total:d().int().nonnegative(),pages:y(h9).default([])});const f9=m({runId:o(),auditedAt:o(),aggregateScore:d(),pagesAudited:d().int().nonnegative()});m({project:o(),points:y(f9).default([])});const g9=j(["disabled","complete","partial","unavailable"]);g9.enum;const y9=m({pagesDiscovered:d().int().nonnegative(),pagesFetched:d().int().nonnegative(),pagesEligible:d().int().nonnegative(),edges:d().int().nonnegative(),findings:d().int().nonnegative()}),b9=qe("state",[m({state:D("unavailable")}),m({state:D("disabled")}),m({state:D("complete"),checked:d().int().nonnegative(),found:d().int().nonnegative(),unverified:d().int().nonnegative()}),m({state:D("partial"),checked:d().int().nonnegative(),found:d().int().nonnegative(),unverified:d().int().nonnegative()})]);m({project:o(),hasCrawlData:C(),legacyAuditAvailable:C(),runId:o().nullable(),runStatus:rw,requestedRootUrl:o().nullable(),rootUrl:o().nullable(),crawlSchemaVersion:o().nullable().optional(),engineVersion:o().nullable().optional(),normalizationVersion:o().nullable().optional(),indexabilityVersion:o().nullable().optional(),linkScoreVersion:o().nullable().optional(),effectiveOptions:Le(o(),qn()).default({}),complete:C(),termination:o().nullable(),detailsAvailable:C(),counts:y9,deadLinks:b9});j(["complete","unknown","max-pages","max-edges","max-fetches","max-duration","max-bytes","max-page-bytes","max-depth","max-links-per-page","max-query-variants","max-sitemap-fanout","max-sitemap-urls","root-host-redirect"]);const gd=j(["eligible","hidden","resource","redirect","failed","unchecked"]),qH=gd.enum,BH=gd.options,Vo={discovered:"discovered",robotsBlocked:"robots-blocked",html:"html",redirect:"redirect",nonHtml:"non-html",fetchError:"fetch-error"},xu={indexable:"indexable",noindex:"noindex",blocked:"blocked",unknown:"unknown"},v9={robotsDisallow:"robots-disallow",redirectTerminal:"redirect-terminal",metaRobotsNoindex:"meta-robots-noindex",xRobotsNoindex:"x-robots-noindex",canonicalToOther:"canonical-to-other",notHtmlOrUnavailable:"not-html-or-unavailable"};function x9(e){return e.indexabilityReasons?.some(a=>a===v9.canonicalToOther)===!0||e.nodeKey!==void 0&&e.canonicalNodeKey!==null&&e.canonicalNodeKey!==void 0&&e.canonicalNodeKey!==e.nodeKey}function PH(e){switch(e.fetchState){case Vo.fetchError:return"failed";case Vo.discovered:return"unchecked";case Vo.nonHtml:return"resource";case Vo.redirect:return"redirect";case Vo.robotsBlocked:return"hidden";case Vo.html:break;default:return"unchecked"}if(x9(e))return"hidden";switch(e.indexabilityState){case xu.indexable:return"eligible";case xu.noindex:case xu.blocked:return"hidden";case xu.unknown:default:return"unchecked"}}const MH=15,k9=j(["navigation","content","unknown"]);k9.enum;const w9=m({navigation:d().int().nonnegative(),content:d().int().nonnegative(),unknown:d().int().nonnegative()}),uw=j(["placement","ubiquity","unmeasured"]);uw.enum;const yd=j(["applied","applied-placement","applied-placement-with-ubiquity","applied-placement-partial","unavailable-too-few-pages","unavailable-legacy-scan"]);yd.enum;function IH(e){switch(e){case"applied":case"applied-placement":case"applied-placement-with-ubiquity":case"applied-placement-partial":return!0;case"unavailable-too-few-pages":case"unavailable-legacy-scan":return!1}}const bd=j(["all","content","template"]);bd.enum;const S9=j(["anchor","redirect","canonical","link"]);S9.enum;const Tl=m({nodeKey:o(),url:o(),finalUrl:o().nullable(),path:o(),parentPath:o(),discoverySource:o(),fetchState:o(),httpStatus:d().int().nullable(),canonicalUrl:o().nullable(),indexabilityState:o(),indexabilityReasons:y(o()).default([]),auditState:o(),auditScore:d().nullable(),inventoryEligible:C(),depth:d().int().nullable(),inboundUniqueEdges:d().int().nonnegative(),outboundUniqueEdges:d().int().nonnegative(),inboundOccurrences:d().int().nonnegative(),outboundOccurrences:d().int().nonnegative(),linkScoreRaw:d().nullable(),linkScoreNormalized:d().nullable(),healthState:gd}),j9=m({type:j(["found","missing","info","timeout","unreachable"]),code:o().min(1),message:o().min(1)}),vv=cw.extend({status:$0,applicable:C().nullable(),findings:y(j9).default([]),recommendations:y(o()).default([])}),xv=m({id:o().min(1),severity:j(["critical","warning"]),detail:o().min(1),recommendation:o().min(1)}),ku=m({project:o(),runId:o(),complete:C(),termination:o().nullable()}),kv=m({nodeKey:o(),url:o(),auditState:o()});qe("state",[m({state:D("no-crawl"),project:o(),runId:ce()}),ku.extend({state:D("details-unavailable")}),ku.extend({state:D("not-found")}),ku.merge(kv).extend({state:D("not-audited"),auditScore:ce(),factors:y(vv).length(0).default([]),criticalDefects:y(xv).length(0).default([])}),ku.merge(kv).extend({state:D("ready"),auditScore:d(),evidenceState:j(["complete","scores-only"]),factors:y(vv).default([]),criticalDefects:y(xv).default([])})]);const A9=j(["applied","unavailable-legacy-scan"]);m({project:o(),hasCrawlData:C(),runId:o().nullable(),total:d().int().nonnegative(),nextCursor:o().nullable(),healthStateFilter:Qe([A9,ce()]).default(null),pages:y(Tl).default([])});const C9=m({path:o(),url:o().nullable(),hasPage:C(),pageCount:d().int().positive(),inventoryEligibleCount:d().int().nonnegative(),fetchedCount:d().int().nonnegative()});m({project:o(),hasCrawlData:C(),runId:o().nullable(),parentPath:o(),nextCursor:o().nullable(),children:y(C9).default([])});const $s=m({edgeKey:o(),sourceNodeKey:o(),sourceUrl:o(),targetNodeKey:o().nullable(),targetUrl:o(),relation:o(),internal:C(),followable:C(),occurrences:d().int().positive(),followableOccurrences:d().int().nonnegative(),nofollowOccurrences:d().int().nonnegative(),anchors:y(o()).default([]),isTemplate:Qe([C(),ce()]),templateRatio:Qe([d(),ce()]),templateSource:uw,placementOccurrences:Qe([w9,ce()])}),N9=m({nodeKey:o(),url:o(),path:o(),depth:d().int().nonnegative().nullable(),indexabilityState:o(),fetchState:o(),auditState:o(),auditScore:d().nullable(),inventoryEligible:C(),inboundUniqueEdges:d().int().nonnegative(),outboundUniqueEdges:d().int().nonnegative(),linkScoreNormalized:d().nullable(),healthState:gd,x:d(),y:d()}),_9=m({edgeKey:o(),sourceNodeKey:o(),targetNodeKey:o(),followable:C(),occurrences:d().int().positive(),isTemplate:C()}),z9=j(["no-crawl","legacy-snapshot","details-unavailable","layout-failed","empty-crawl"]),E9=qe("state",[m({state:D("ready"),version:o().min(1),computedAt:o().min(1),templateLinksExcluded:C()}),m({state:D("unavailable"),version:ce(),reason:z9})]);m({project:o(),hasCrawlData:C(),runId:o().nullable(),rootNodeKey:o().nullable(),layout:E9,templateDetection:yd,linkKind:bd,totalNodes:d().int().nonnegative(),totalEdges:d().int().nonnegative(),totalTemplateEdges:d().int().nonnegative(),totalContentEdges:d().int().nonnegative(),nodes:y(N9).default([]),edges:y(_9).default([]),omittedNodes:d().int().nonnegative(),omittedEdges:d().int().nonnegative(),sampled:C()});const VH=2e4,LH=5e4,T9=j(["focus","inbound","outbound","both","transitive"]),R9=Tl.extend({distance:d().int().nonnegative(),relationToFocus:T9});m({project:o(),hasCrawlData:C(),runId:o().nullable(),complete:C(),termination:o().nullable(),state:j(["no-crawl","details-unavailable","ready"]),focusNodeKey:o().nullable(),focusUrl:o().nullable(),hops:d().int().min(0).max(3),totalNodes:d().int().nonnegative(),totalEdges:d().int().nonnegative(),nodes:y(R9).default([]),edges:y($s).default([]),omittedNodes:d().int().nonnegative(),omittedEdges:d().int().nonnegative(),countAccuracy:j(["exact","lower-bound"]),truncated:C()});const wv=m({nodeKey:o(),url:o(),path:o()});m({project:o(),runId:o().nullable(),complete:C(),termination:o().nullable(),state:j(["no-crawl","details-unavailable","found","unreachable","truncated"]),from:wv.nullable(),to:wv.nullable(),maxDepth:d().int().positive(),visitedNodes:d().int().nonnegative(),nodes:y(Tl).default([]),edges:y($s).default([])});const dw=j(["added","removed","changed"]),D9=m({entity:D("page"),change:dw,key:o(),changedFields:y(o()).default([]),before:Tl.nullable(),after:Tl.nullable()}),O9=m({entity:D("link"),change:dw,key:o(),changedFields:y(o()).default([]),before:$s.nullable(),after:$s.nullable()}),q9=qe("entity",[D9,O9]),Sv=m({added:d().int().nonnegative(),removed:d().int().nonnegative(),changed:d().int().nonnegative()}),B9=m({scope:j(["all","pages","links"]),change:j(["all","added","removed","changed"])});qe("state",[m({project:o(),state:D("unavailable"),reason:j(["no-crawl","insufficient-history","details-unavailable","partial-not-comparable"]),fromRunId:o().nullable(),toRunId:o().nullable()}),m({project:o(),state:D("incompatible"),reason:D("incompatible-versions"),fromRunId:o(),toRunId:o(),mismatchedVersions:y(o()).min(1)}),m({project:o(),state:D("ready"),fromRunId:o(),toRunId:o(),versions:m({crawlSchema:o(),normalization:o(),indexability:o(),linkScore:o()}),filters:B9,summaryState:j(["exact","omitted-on-continuation"]),summary:m({pages:Sv,links:Sv}).nullable(),total:d().int().nonnegative().nullable(),nextCursor:o().nullable(),changes:y(q9).default([])})]);m({project:o(),hasCrawlData:C(),runId:o().nullable(),total:d().int().nonnegative(),nextCursor:o().nullable(),templateDetection:yd,linkKind:bd,edges:y($s).default([])});m({project:o(),hasCrawlData:C(),runId:o().nullable(),nodeKey:o().nullable(),url:o().nullable(),templateDetection:yd,linkKind:bd,inbound:y($s).default([]),outbound:y($s).default([]),inboundTruncated:C(),outboundTruncated:C()});const jv=m({findingKey:o(),severity:o(),sourceNodeKey:o().nullable(),sourceUrl:o().nullable(),targetNodeKey:o().nullable(),targetUrl:o().nullable(),evidence:Le(o(),qn()).default({})});qe("state",[m({project:o(),runId:o().nullable(),state:D("unavailable"),legacyAuditAvailable:C()}),m({project:o(),runId:o(),state:D("disabled"),checkDeadLinks:D(!1)}),m({project:o(),runId:o(),state:D("complete"),checkDeadLinks:D(!0),checked:d().int().nonnegative(),found:d().int().nonnegative(),unverified:d().int().nonnegative(),total:d().int().nonnegative(),nextCursor:o().nullable(),deadLinks:y(jv).default([])}),m({project:o(),runId:o(),state:D("partial"),checkDeadLinks:D(!0),checked:d().int().nonnegative(),found:d().int().nonnegative(),unverified:d().int().nonnegative(),total:d().int().nonnegative(),nextCursor:o().nullable(),deadLinks:y(jv).default([])})]);m({sitemapUrl:o().url().optional(),limit:d().int().positive().max(2e3).optional(),maxPages:d().int().positive().max(5e4).optional(),maxEdges:d().int().positive().max(1e6).optional(),maxDepth:d().int().min(0).max(100).optional(),checkDeadLinks:C().default(!1)});m({runId:o(),status:pa});const P9=m({runId:o(),status:pa,createdAt:o(),startedAt:o().nullable(),finishedAt:o().nullable(),hasCrawlData:C()});m({project:o(),scans:y(P9).default([])});const M9=j(["queued","discovering","checking","arranging-map","completed","partial","failed","cancelled"]),I9=m({state:j(["pending","ready","unavailable"]),layoutVersion:o().nullable(),failureCode:o().nullable(),updatedAt:o().nullable()}),V9=m({id:o(),state:o(),pagesDiscovered:d().int().nonnegative(),pagesFetched:d().int().nonnegative(),pagesEligible:d().int().nonnegative(),pagesErrored:d().int().nonnegative(),edgesDiscovered:d().int().nonnegative(),lastUpdatedAt:o(),startedAt:o().nullable(),finishedAt:o().nullable(),error:o().nullable()});m({project:o(),runId:o(),status:pa,phase:M9,attempt:V9.nullable(),layout:I9,error:o().nullable()});const L9=j(["waiting","collecting","terminal"]),U9=m({nodeKey:o(),url:o(),auditScore:d(),checksNeedingAttention:d().int().nonnegative()});m({project:o(),runId:o(),status:pa,state:L9,attemptId:o().nullable(),pagesAudited:d().int().nonnegative(),updatedAt:o().nullable(),examples:y(U9).max(12).default([])});const G9=m({basis:j(["tracked","observed"]).nullable(),availability:j(["measured","not-measured","unavailable"]),reason:j(["select-query-class","no-competitors","insufficient-observed","no-answers","no-mentions","unavailable"]).nullable()}),K0=G9.partial().shape;function UH(e){switch(e){case"select-query-class":return"Select a query class.";case"no-competitors":return"No competitors configured.";case"insufficient-observed":return"Requires 3 observed competitors mentioned in at least 3 answers each.";case"no-answers":return"No answer text in scope.";case"no-mentions":return"No brands mentioned in scope.";case"unavailable":return"Competitor evidence is unavailable.";default:return""}}function $9(e,a){const s=a?.availability==="unavailable"?"Unavailable":a?.availability==="not-measured"||e===null?"Not measured":`${e.toFixed(1)}%`;return a?.basis?`${s} · ${a.basis} competitors`:s}function GH(e,a,s){return`Share of voice · ${a} queries: ${$9(e,s)}${s?.measurementScope==="all-markets"?" · all markets":""}`}const H0=j(["competitor","directory","social","forum","news","reference","blog","ecommerce","video","academic","other"]);H0.enum;const Q0=j(["cited","aspirational","wasted-surface"]),Av=Q0.enum;Av.cited,Av.aspirational;const vd=j(["direct-competitor","ota-aggregator","editorial-media","other","unknown"]),K9=vd.enum;K9["direct-competitor"];const xd=j(["queued","seeding","probing","completed","failed"]);xd.enum;const mw=m({domain:o().min(1),hits:d().int().positive(),competitorType:vd.default("unknown")}),H9=m({id:o(),sessionId:o(),projectId:o(),query:o(),bucket:Q0.nullable().default(null),citationState:fi,citedDomains:y(o()).default([]),answerMentioned:C().nullable().default(null),createdAt:o()}),Q9=m({id:o(),projectId:o(),status:xd,icpDescription:o().nullable().optional(),seedProvider:o().nullable().optional(),seedCountRaw:d().int().nullable().optional(),seedCount:d().int().nullable().optional(),seedFromAnswerCount:d().int().nullable().optional(),seedFromGroundingCount:d().int().nullable().optional(),seedBrandFilteredCount:d().int().nullable().optional(),buyerDescription:o().nullable().optional(),locations:y(Yt).nullable().optional(),seedRawCandidates:y(o()).nullable().optional(),dedupClusterMinSims:y(d()).nullable().optional(),dedupBandPairFraction:d().nullable().optional(),dedupPairsTotal:d().int().nullable().optional(),seedProviders:y(o()).nullable().optional(),seedProviderCounts:Le(o(),d().int()).nullable().optional(),canonicalCount:d().int().nullable().optional(),dedupThreshold:d().nullable().optional(),probeCount:d().int().nullable().optional(),citedCount:d().int().nullable().default(null),aspirationalCount:d().int().nullable().default(null),wastedCount:d().int().nullable().default(null),competitorMap:y(mw).default([]),warning:o().nullable().optional(),error:o().nullable().optional(),startedAt:o().nullable().optional(),finishedAt:o().nullable().optional(),createdAt:o()});Q9.extend({probes:y(H9).default([])});const F9=500,Z9=8,Y9=["gemini","openai"],X9=j(Y9);m({icpDescription:o().min(1).optional(),buyerDescription:o().min(1).optional(),seedProviders:y(X9).min(1).transform(e=>[...new Set(e)].sort()).optional(),dedupThreshold:d().min(0).max(1).optional(),maxProbes:d().int().positive().max(F9).optional(),probeConcurrency:d().int().min(1).max(Z9).optional(),locations:y(o().min(1)).optional()});m({buckets:y(Q0).min(1).optional(),includeCompetitors:C().optional(),competitorTypes:y(vd).min(1).optional()});m({sessionId:o(),projectId:o(),status:xd,queriesByBucket:m({cited:y(o()),aspirational:y(o()),"wasted-surface":y(o())}),suggestedCompetitors:y(mw)});m({sessionId:o(),projectId:o(),promoted:m({queries:y(o()),competitors:y(o())}),skipped:m({queries:y(o()),competitors:y(o())})});Qe([D("cli"),o().regex(/^discovery:.+$/)]);const J9=m({query:o().min(1),probeHits:d().int().positive()}),W9=m({rawCandidates:d().int().nonnegative(),admitted:d().int().nonnegative(),rejected:m({belowFloor:d().int().nonnegative(),length:d().int().nonnegative(),navigational:d().int().nonnegative(),duplicate:d().int().nonnegative(),offAnchor:d().int().nonnegative(),semanticDuplicate:d().int().nonnegative()})});m({sessionId:o(),projectId:o(),provider:o(),status:xd,minProbeHits:d().int().positive(),anchorApplied:C(),semanticNoveltyApplied:C(),candidates:y(J9),stats:W9});const F0=j(["own","direct-competitor","ota-aggregator","editorial-media","other"]);F0.enum;const kd=j(["7d","30d","90d","all"]),Cv=j(["improving","declining","stable"]),eR=j(["mentioned","cited"]);eR.enum;const Rh=m({citationRate:d(),cited:d().int(),total:d().int(),mentionRate:d(),mentionedCount:d().int()}),mr=o().trim().min(1),tR=y(mr).min(1).superRefine((e,a)=>{for(let s=1;s<e.length;s+=1)e[s-1]>=e[s]&&a.addIssue({code:"custom",message:"mixed model IDs must be sorted and unique",path:[s]})}),Ks=qe("status",[m({status:D("known"),model:mr}),m({status:D("unknown")}),m({status:D("mixed"),models:tR,includesUnknown:C()})]),nR=m({observedAt:o(),bucketStartDate:o(),from:Ks,to:Ks,fromPreWindowAnchor:C().optional(),anchorObservedAt:o().optional()}),pw=m({latestObservation:m({observedAt:o(),state:Ks}),events:y(nR),eventTotal:d().int().nonnegative().optional(),anchorUnavailable:C().optional()}),aR=Le(o(),pw),iR=pw.extend({latestServedModelIds:y(mr).default([])}),sR=Le(o(),iR),oR=m({observedAt:o(),configured:Ks,served:Ks}),rR=m({scope:j(["non-brand","pooled"]),rate:d().nullable(),projectMentionSnapshots:d().int().nonnegative(),competitorMentionSnapshots:d().int().nonnegative()}),lR=m({startDate:o(),endDate:o(),dataStartDate:o(),dataEndDate:o(),sweepCount:d().int().nonnegative(),citationRate:d(),cited:d().int(),total:d().int(),queryCount:d().int(),mentionRate:d(),mentionedCount:d().int(),mentionShare:rR,byProvider:Le(o(),Rh),modelEvidenceByProvider:Le(o(),Ks).default({}),basketRevision:d().int().nullable().default(null)}),cR=m({revision:d().int(),at:o(),added:y(o()),removed:y(o())}),uR=m({date:o(),delta:d().int(),label:o()}),dR=m({at:o(),identity:W2});m({window:kd,mentionShareScope:j(["non-brand","pooled"]),buckets:y(lR),overall:Rh,byProvider:Le(o(),Rh),trend:Cv,mentionTrend:Cv,queryChanges:y(uR),basketChanges:y(cR).default([]),executionIdentityChanges:y(dR).default([]),referenceBasketRevision:d().int().nullable().default(null),modelAttribution:aR.default({}),servedModelAttribution:sR.default({}),modelServiceMismatch:Le(o(),oR).default({}),modelPointerChanges:Le(o(),nE).default({})});const Nv=m({category:H0,label:o(),count:d().int(),percentage:d(),topDomains:y(m({domain:o(),count:d().int()}))}),mR=m({domain:o(),count:d().int(),percentage:d(),category:H0,label:o(),surfaceClass:F0}),pR=m({surfaceClass:F0,label:o(),count:d().int(),percentage:d(),domainCount:d().int()}),_v=m({totalCitedSlots:d().int(),domainTotal:d().int(),entries:y(mR),truncatedDomainCount:d().int(),truncatedCitedSlots:d().int(),bySurfaceClass:y(pR)});m({overall:y(Nv),byQuery:Le(o(),y(Nv)),ranked:_v,byProvider:Le(o(),_v),runId:o(),window:kd,limit:d().int().nullable()});const hR=j(["own","direct-competitor","ota-aggregator","editorial-media","other","unknown"]),fR=qe("kind",[m({kind:D("project")}).strict(),m({kind:D("group"),groupKey:o().trim().min(1)}).strict(),m({kind:D("all-markets")}).strict()]),hw=j(["all","branded","non-brand"]),fw=j(["project","all-markets"]);m({window:kd.optional(),groupKey:o().trim().min(1).optional(),scope:fw.optional(),provider:o().trim().min(1).optional(),model:mr.optional(),groupBy:D("model").optional(),queryClass:hw.optional(),location:o().trim().min(1).optional(),runId:o().trim().min(1).optional()}).strict().superRefine((e,a)=>{e.scope==="all-markets"&&e.groupKey!==void 0&&a.addIssue({code:"custom",path:["groupKey"],message:"groupKey cannot be combined with scope=all-markets"}),e.model!==void 0&&e.provider===void 0&&a.addIssue({code:"custom",path:["provider"],message:"provider is required when filtering by model"})});const Xi=m({domain:o().trim().min(1),label:o().trim().min(1),surfaceClass:hR,pinned:C(),mentionCount:d().int().nonnegative(),shareOfVoice:d().min(0).max(100).nullable(),citationCount:d().int().nonnegative(),answeredResults:d().int().nonnegative(),firstSeenAt:o().datetime().nullable(),lastSeenAt:o().datetime().nullable(),sampleUrls:y(o().url()).max(3)}).strict(),gw=m({answeredResults:d().int().nonnegative(),sourceResults:d().int().nonnegative(),missingAnswerTextResults:d().int().nonnegative(),mentionCredits:d().int().nonnegative(),incompleteSourceResults:d().int().nonnegative(),excludedProbeResults:d().int().nonnegative(),excludedNonCompletedResults:d().int().nonnegative()}).strict(),gR=50,yR=m({...K0,comparison:y(m({domain:o(),mentions:d().int().nonnegative()})).optional(),observedNames:y(m({name:o(),answerCount:d().int().nonnegative()})).optional(),provider:o().trim().min(1),model:mr.nullable(),servedModels:Ks,snapshotCount:d().int().positive(),project:Xi,pinned:y(Xi),observed:y(Xi),otherSources:y(Xi),evidence:gw,truncated:C()}).strict(),bR=m({basis:D("requested-model"),groups:y(yR).max(gR),totalGroups:d().int().nonnegative(),truncated:C()}).strict();m({...K0,comparison:y(m({domain:o(),mentions:d().int().nonnegative()})).optional(),observedNames:y(m({name:o(),answerCount:d().int().nonnegative()})).optional(),window:kd,scope:fR,project:Xi,pinned:y(Xi),observed:y(Xi),otherSources:y(Xi),evidence:gw,modelComparison:bR.optional(),marketState:m({activeRevision:d().int().positive(),draft:m({etag:o().trim().min(1),pendingCompetitorDomains:y(o().trim().min(1))}).strict().nullable()}).strict().nullable(),filters:m({scope:fw,groupKey:o().nullable(),provider:o().nullable(),model:mr.optional(),groupBy:D("model").optional(),queryClass:hw,location:o().nullable(),runId:o().nullable()}).strict(),truncated:C()}).strict();const Z0=m({total:d().int(),checked:d().int(),mentioned:d().int(),cited:d().int(),mentionRate:d().nullable(),citedRate:d().nullable()}),yw=Z0.extend({provider:o(),firstObserved:o(),lastObserved:o()}),vR=Z0.extend({queryId:o().nullable(),query:o(),firstObserved:o(),lastObserved:o(),providers:y(yw).optional()}),xR=m({since:o().nullable(),until:o().nullable(),lastRuns:d().int().nullable(),runCount:d().int()}),kR=j(["provider"]),Dh=m({domain:o(),mentions:d().int()}),bw=m({...K0,measurementScope:j(["project","all-markets"]).optional(),queryClass:j(["branded","non-brand","pooled"]),percent:d().nullable(),competitorCount:d().int().nonnegative(),projectMentions:d().int(),competitorMentions:d().int(),snapshotsWithAnswerText:d().int(),perCompetitor:y(Dh)});m({project:o(),groupBy:kR.optional(),window:xR,totals:Z0,byProvider:y(yw).optional(),queries:y(vR),shareOfVoice:bw.optional()});const wR=j(["within-noise","moved","insufficient-data","model-discontinuous","model-unknown"]),SR=j(["up","down","flat"]),zv=m({availability:j(["available","no-observations","no-competitive-frame"]),point:d().nullable(),ciLow:d().nullable(),ciHigh:d().nullable(),numerator:d().int(),denominator:d().int()}),jR=j(["mention-share-of-voice","cited-share-of-voice","mention-rate","cited-rate"]),AR=m({key:jR,label:o(),queryClass:j(["all","non-brand","pooled"]),driftRobust:C(),from:zv,to:zv,rateRatio:d().nullable(),direction:Qe([SR,ce()]),verdict:wR}),Ev=m({month:o(),since:o(),until:o(),runCount:d().int(),lowRunCount:C()}),CR=m({queryCount:d().int(),excludedFromOnly:d().int(),excludedToOnly:d().int(),providers:y(o()),excludedProviders:y(o())}),NR=m({provider:o(),fromModels:y(o()),toModels:y(o())}),_R=j(["included","model-discontinuous","model-unknown"]),zR=m({provider:o(),status:_R,fromModels:y(o()),toModels:y(o())}),ER=j(["comparable","model-discontinuous","model-unknown","insufficient-data"]),TR=m({status:ER,comparedProviders:y(o()),providers:y(zR)}),RR=m({provider:o(),from:m({checked:d().int(),mentioned:d().int(),cited:d().int()}),to:m({checked:d().int(),mentioned:d().int(),cited:d().int()})}),DR=m({from:m({count:d().int(),of:d().int()}),to:m({count:d().int(),of:d().int()})});m({project:o(),from:Ev,to:Ev,basket:CR,metrics:y(AR),queriesMentioned:DR,byProvider:y(RR),modelChanges:y(NR),continuity:TR,competitors:m({from:y(Dh),to:y(Dh)})});j(["json","csv"]);const OR=m({runId:o(),runKind:D("answer-visibility"),runStatus:pa,runTrigger:U0,runCreatedAt:o(),runStartedAt:o().nullable(),runFinishedAt:o().nullable(),snapshotId:o(),snapshotCreatedAt:o(),queryId:o().nullable(),query:o().nullable(),provider:o(),model:o().nullable(),location:o().nullable(),citationState:fi,cited:C(),answerMentioned:C().nullable(),mentionState:Qe([El,ce()]),citedDomains:y(o()),citedUrls:y(o()).nullable(),captureStatus:Qe([rd,ce()]),sourceCount:d().int().nonnegative().nullable(),resolvedCount:d().int().nonnegative().nullable(),captureVersion:d().int().positive().nullable(),competitorOverlap:y(o()),recommendedCompetitors:y(o()),answerText:o().nullable(),groundingSources:y(fd),searchQueries:y(o())}),qR=m({since:o().nullable(),until:o().nullable(),includeProbes:C()});m({schemaVersion:D("canonry.results-export/v1"),generatedAt:o(),project:m({id:o(),name:o(),displayName:o(),canonicalDomain:o(),country:o(),language:o()}),filters:qR,recordCount:d().int().nonnegative(),records:y(OR)});m({runIds:y(o().trim().min(1)).max(100).default([]),researchRunIds:y(o().trim().min(1)).max(100).default([]),confirm:C().default(!1)}).strict().superRefine((e,a)=>{e.runIds.length+e.researchRunIds.length===0&&a.addIssue({code:"custom",message:"Select at least one saved run."}),(new Set(e.runIds).size!==e.runIds.length||new Set(e.researchRunIds).size!==e.researchRunIds.length)&&a.addIssue({code:"custom",message:"Run IDs must be unique."})});m({dryRun:C(),runIds:y(o()),researchRunIds:y(o()),querySnapshots:d().int().nonnegative(),researchQueries:d().int().nonnegative(),insights:d().int().nonnegative(),healthSnapshots:d().int().nonnegative()});const wd=j(["organic","paid"]);wd.enum;m({id:o(),projectId:o(),propertyId:o(),clientEmail:o(),connected:C(),createdAt:o(),updatedAt:o()});m({date:o(),landingPage:o(),sessions:d(),organicSessions:d(),users:d()});const Y0=j(["session","first_user","manual_utm"]),BR=m({source:o(),medium:o(),trafficClass:wd,sessions:d(),users:d().optional(),sourceDimension:Y0}),PR=m({source:o(),medium:o(),trafficClass:wd,sourceDimension:Y0,landingPage:o(),sessions:d(),users:d().optional()}),MR=m({source:o(),medium:o(),sessions:d(),users:d(),channelGroup:o()}),fl=m({sessions:d(),sharePct:d(),sharePctDisplay:o()}),IR=m({organic:fl,social:fl,direct:fl,ai:fl,other:fl});m({totalSessions:d(),totalOrganicSessions:d(),totalDirectSessions:d(),totalUsers:d().nullable(),topPages:y(m({landingPage:o(),sessions:d(),organicSessions:d(),directSessions:d(),users:d()})),aiReferrals:y(BR),aiReferralLandingPages:y(PR),aiSessionsDeduped:d(),aiUsersDeduped:d().optional(),paidAiSessionsDeduped:d(),paidAiUsersDeduped:d().optional(),organicAiSessionsDeduped:d(),organicAiUsersDeduped:d().optional(),aiSessionsBySession:d(),aiUsersBySession:d().optional(),paidAiSessionsBySession:d(),paidAiUsersBySession:d().optional(),organicAiSessionsBySession:d(),organicAiUsersBySession:d().optional(),socialReferrals:y(MR),socialSessions:d(),socialUsers:d().optional(),channelBreakdown:IR,organicSharePct:d(),aiSharePct:d(),aiSharePctBySession:d(),paidAiSharePct:d(),paidAiSharePctBySession:d(),organicAiSharePct:d(),organicAiSharePctBySession:d(),directSharePct:d(),socialSharePct:d(),organicSharePctDisplay:o(),aiSharePctDisplay:o(),aiSharePctBySessionDisplay:o(),paidAiSharePctDisplay:o(),paidAiSharePctBySessionDisplay:o(),organicAiSharePctDisplay:o(),organicAiSharePctBySessionDisplay:o(),directSharePctDisplay:o(),socialSharePctDisplay:o(),otherSessions:d(),otherSharePct:d(),otherSharePctDisplay:o(),lastSyncedAt:o().nullable()});m({connected:C(),propertyId:o().nullable(),clientEmail:o().nullable(),authMethod:j(["service-account","oauth"]).nullable(),lastSyncedAt:o().nullable(),createdAt:o().nullable().optional(),updatedAt:o().nullable().optional()});const VR=m({propertyId:o(),displayName:o(),accountName:o()});m({properties:y(VR)});m({synced:C(),rowCount:d().int().nonnegative(),aiReferralCount:d().int().nonnegative(),socialReferralCount:d().int().nonnegative(),days:d().int().nonnegative(),requestedDays:d().int().nonnegative(),clamped:C(),syncedAt:o(),measurement:m({acquisition:m({days:d().int().nonnegative(),status:j(["ready","error"]),rowCount:d().int().nonnegative(),error:o().optional()}),leads:m({days:d().int().nonnegative(),status:j(["ready","error","not-configured"]),rowCount:d().int().nonnegative(),attributionScope:j(["landing-page","channel"]).optional(),error:o().optional()})}),syncedComponents:y(o()).optional()});m({date:o(),source:o(),medium:o(),trafficClass:wd,landingPage:o(),sessions:d(),users:d(),sourceDimension:Y0});const LR=m({source:o(),sessions:d(),paidSessions:d(),organicSessions:d()}),UR=m({date:o(),sessions:d(),paidSessions:d(),organicSessions:d(),bySource:y(LR)});m({days:y(UR),sources:y(o()),totalSessions:d(),totalPaidSessions:d(),totalOrganicSessions:d()});m({date:o(),source:o(),medium:o(),sessions:d(),users:d(),channelGroup:o()});m({date:o(),sessions:d(),organicSessions:d(),users:d(),usersSource:j(["deduplicated","landing-page-sum"])});m({id:o(),projectId:o(),runId:o().nullable(),overallCitedRate:d(),overallMentionRate:d(),totalPairs:d().int().nonnegative(),citedPairs:d().int().nonnegative(),mentionedPairs:d().int().nonnegative(),providerBreakdown:Le(o(),m({citedRate:d(),mentionRate:d(),cited:d().int().nonnegative(),mentioned:d().int().nonnegative(),total:d().int().nonnegative()})),createdAt:o(),status:j(["ready","no-data"]),reason:D("no-runs-yet").optional()});const vw=j(["claude","openai","gemini","zai","deepinfra"]),GR=m({id:vw,label:o(),defaultModel:o(),configured:C(),keySource:j(["config","env"]).nullable()});m({providers:y(GR).default([]),defaultProvider:vw.nullable()});const $R=j(["aero","user","compaction"]);$R.enum;const xw=128;m({key:o().min(1).max(xw),value:o().min(1)});m({key:o().min(1).max(xw)});const pr=j(["commoncrawl","bing-webmaster"]);pr.enum;const X0=j(["queued","downloading","querying","ready","failed"]);X0.enum;m({id:o(),release:o(),status:X0,phaseDetail:o().nullable().optional(),vertexPath:o().nullable().optional(),edgesPath:o().nullable().optional(),vertexSha256:o().nullable().optional(),edgesSha256:o().nullable().optional(),vertexBytes:d().int().nullable().optional(),edgesBytes:d().int().nullable().optional(),projectsProcessed:d().int().nullable().optional(),domainsDiscovered:d().int().nullable().optional(),downloadStartedAt:o().nullable().optional(),downloadFinishedAt:o().nullable().optional(),queryStartedAt:o().nullable().optional(),queryFinishedAt:o().nullable().optional(),error:o().nullable().optional(),createdAt:o(),updatedAt:o()});const KR=m({linkingDomain:o(),numHosts:d().int(),source:pr}),HR=m({projectId:o(),release:o(),targetDomain:o(),totalLinkingDomains:d().int(),totalHosts:d().int(),top10HostsShare:o(),queriedAt:o(),source:pr,excludedLinkingDomains:d().int().optional(),excludedHosts:d().int().optional()});m({source:pr,summary:HR.nullable(),total:d().int(),rows:y(KR)});m({release:o(),totalLinkingDomains:d().int(),totalHosts:d().int(),top10HostsShare:o(),queriedAt:o(),source:pr});const QR=m({source:pr,connected:C(),hasData:C(),latestRelease:o().nullable(),totalLinkingDomains:d().int(),lastSyncedAt:o().nullable()});m({projectId:o(),targetDomain:o(),sources:y(QR),anyConnected:C(),anyData:C()});m({duckdbInstalled:C(),duckdbVersion:o().nullable().optional(),duckdbSpec:o(),pluginDir:o()});m({installed:C(),version:o(),path:o(),alreadyPresent:C()});m({release:o(),vertexUrl:o(),edgesUrl:o(),vertexBytes:d().int().nullable(),edgesBytes:d().int().nullable(),lastModified:o().nullable()});m({release:o(),syncStatus:X0.nullable(),bytes:d().int(),lastUsedAt:o().nullable()});const J0=j(["positive","caution","negative","neutral"]),Yi=m({label:o(),value:o(),delta:o(),tone:J0,description:o(),tooltip:o().optional(),trend:y(d()),progress:d().optional(),providerCoverage:o().optional()}),Tv=m({projectMentionSnapshots:d().int().nonnegative(),competitorMentionSnapshots:d().int().nonnegative(),perCompetitor:y(m({domain:o(),mentionSnapshots:d().int().nonnegative(),shareOfCompetitiveTotal:d()})),snapshotsWithAnswerText:d().int().nonnegative(),snapshotsTotal:d().int().nonnegative(),score:d().int().min(0).max(100).nullable()}),FR=Yi.extend({breakdown:Tv,scope:j(["non-brand","pooled"]),branded:Tv}),nh=m({gained:d().int().nonnegative(),lost:d().int().nonnegative(),tone:J0,hasPreviousRun:C(),gainedQueries:y(o()).optional(),lostQueries:y(o()).optional()}),ZR=m({hasPreviousRun:C(),comparable:C(),querySetChanged:C(),previousRunAt:o().nullable(),currentQueryCount:d().int().nonnegative(),previousQueryCount:d().int().nonnegative(),comparableQueryCount:d().int().nonnegative(),addedQueryCount:d().int().nonnegative(),removedQueryCount:d().int().nonnegative(),addedQueries:y(o()),removedQueries:y(o())}),YR=m({id:o(),projectId:o(),runId:o().nullable(),type:j(["regression","gain","opportunity","first-citation","provider-pickup","persistent-gap","competitor-gained","competitor-lost","gbp-lodging-gap","gbp-listing-discrepancy","gbp-cta-gap","gbp-description-missing","gbp-metric-drop","gbp-keyword-drop"]),severity:j(["critical","high","medium","low"]),title:o(),query:o(),provider:o(),recommendation:m({action:o(),target:o().optional(),reason:o()}).optional(),cause:m({cause:o(),competitorDomain:o().optional(),details:o().optional()}).optional(),dismissed:C(),createdAt:o()}),XR=m({id:o(),projectId:o(),runId:o().nullable(),overallCitedRate:d(),overallMentionRate:d(),totalPairs:d().int().nonnegative(),citedPairs:d().int().nonnegative(),mentionedPairs:d().int().nonnegative(),providerBreakdown:Le(o(),m({citedRate:d(),mentionRate:d(),cited:d().int().nonnegative(),mentioned:d().int().nonnegative(),total:d().int().nonnegative()})),createdAt:o(),status:j(["ready","no-data"]),reason:D("no-runs-yet").optional()});m({project:h8,latestRun:a9,health:XR.nullable(),topInsights:y(YR),queryCounts:m({totalQueries:d().int().nonnegative(),citedQueries:d().int().nonnegative(),notCitedQueries:d().int().nonnegative(),citedRate:d(),mentionedQueries:d().int().nonnegative(),notMentionedQueries:d().int().nonnegative(),mentionRate:d()}),providers:y(m({provider:o(),citedRate:d(),cited:d().int().nonnegative(),total:d().int().nonnegative()})),transitions:m({since:o().nullable(),gained:d().int().nonnegative(),lost:d().int().nonnegative(),emerging:d().int().nonnegative()}),scores:m({mention:Yi,visibility:Yi,mentionShare:FR,gapQueries:Yi,mentionGaps:Yi,indexCoverage:Yi,competitorPressure:Yi,runStatus:Yi}),movementSummary:nh,citationMovement:nh,mentionMovement:nh,movementComparison:ZR,competitors:y(m({id:o(),domain:o(),citationCount:d().int().nonnegative(),totalQueries:d().int().nonnegative(),pressureLabel:j(["None","Low","Moderate","High"]),citedQueries:y(o())})),providerScores:y(m({provider:o(),model:o().nullable(),score:d(),cited:d().int().nonnegative(),total:d().int().nonnegative(),trend:y(d()).optional()})),attentionItems:y(m({id:o(),tone:J0,title:o(),detail:o(),actionLabel:o(),href:o()})),runHistory:y(m({runId:o(),createdAt:o(),citedCount:d().int().nonnegative(),totalCount:d().int().nonnegative(),citationRate:d(),mentionedCount:d().int().nonnegative(),mentionRate:d(),status:o()})),suggestedQueries:m({rows:y(m({query:o(),impressions:d(),clicks:d(),avgPosition:d(),reason:o()})),totalCandidates:d().int().nonnegative(),skippedAlreadyTracked:d().int().nonnegative()}),dateRangeLabel:o(),contextLabel:o()});j(["snapshot","insight"]);const JR=m({kind:D("snapshot"),id:o(),runId:o(),query:o(),provider:o(),model:o().nullable(),citationState:fi,matchedField:j(["answerText","citedDomains","citedUrls","searchQueries","query"]),snippet:o(),createdAt:o()}),WR=m({kind:D("insight"),id:o(),runId:o().nullable(),type:j(["regression","gain","opportunity","first-citation","provider-pickup","persistent-gap","competitor-gained","competitor-lost","gbp-lodging-gap","gbp-listing-discrepancy","gbp-cta-gap","gbp-description-missing","gbp-metric-drop","gbp-keyword-drop"]),severity:j(["critical","high","medium","low"]),title:o(),query:o(),provider:o(),matchedField:j(["title","query","recommendation","cause"]),snippet:o(),dismissed:C(),createdAt:o()}),eD=qe("kind",[JR,WR]);m({query:o(),totalHits:d().int().nonnegative(),truncated:C(),hits:y(eD)});const kw=j(["create","expand","refresh","add-schema"]);kw.enum;function $H(e){switch(e){case"create":return"Create";case"expand":return"Expand";case"refresh":return"Refresh";case"add-schema":return"Add schema"}}const ww=j(["gsc","competitor-evidence","both"]);ww.enum;const Sw=j(["high","medium","low"]);Sw.enum;const tD=j(["blog-post","comparison","listicle","how-to","guide","glossary"]);tD.enum;const jw=j(["proposed","briefed","payload-generated","draft-created","published","validated","dismissed"]);jw.enum;const W0=j(["ownable","ceded"]);W0.enum;const nD=m({url:o(),gscImpressions:d().nonnegative(),gscClicks:d().nonnegative(),gscAvgPosition:d().nonnegative().nullable(),organicSessions:d().nonnegative()}),aD=m({domain:o(),url:o(),title:o(),citationCount:d().int().nonnegative()}),iD=m({demand:d(),competitor:d(),absence:d(),gapSeverity:d()}),sD=m({actionId:o(),state:jw,lastUpdated:o()}),Aw=m({targetRef:o(),query:o(),action:kw,ourBestPage:nD.nullable(),winningCompetitor:aD.nullable(),score:d(),scoreBreakdown:iD,drivers:y(o()),demandSource:ww,actionConfidence:Sw,existingAction:sD.nullable(),winnabilityClass:W0,winnability:d().min(0).max(1).nullable()});m({targets:y(Aw),contextMetrics:m({totalAiReferralSessions:d().int().nonnegative(),latestRunId:o(),runTimestamp:o()})});const oD=m({targetRef:o(),addressedUrl:o().nullable(),note:o().nullable(),dismissedAt:o()});m({dismissals:y(oD)});m({targetRef:o().min(1),addressedUrl:o().url().optional(),note:o().max(500).optional()});m({targetRef:o(),promptVersion:o(),provider:o(),model:o(),responseText:o(),costMillicents:d().int().nonnegative(),generatedAt:o()});m({provider:o().optional(),model:o().optional(),forceRefresh:C().optional()});const rD=m({targetQuery:o().trim().min(1),winnabilityClass:W0,angle:o().trim().min(1),whyWinnable:o().trim().min(1),schemaHookup:o().trim().min(1),controllableSurfaceRationale:o().trim().min(1)});m({targetRef:o(),promptVersion:o(),provider:o(),model:o(),brief:rD,costMillicents:d().int().nonnegative(),generatedAt:o()});const lD=m({domain:o(),competitorType:vd,hits:d().int().nonnegative(),updatedAt:o()});m({classifications:y(lD)});const cD=m({uri:o(),title:o(),domain:o(),isOurDomain:C(),isCompetitor:C(),citationCount:d().int().nonnegative(),providers:y(ht)}),Cw=m({query:o(),groundingSources:y(cD)});m({sources:y(Cw),latestRunId:o()});const Nw=m({query:o(),competitorDomains:y(o()),competitorCount:d().int().nonnegative(),missRate:d().min(0).max(1),lastSeenInRunId:o()});m({gaps:y(Nw),latestRunId:o()});const _w=j(["ok","warn","fail","skipped"]);_w.enum;const ef=j(["global","project"]);ef.enum;const zw=j(["auth","config","providers","integrations","database","schedules","agent"]);zw.enum;const uD=m({id:o(),category:zw,scope:ef,title:o(),status:_w,code:o().describe('Stable machine-readable code (e.g. "google.token.refresh-failed"). Use this for filtering and remediation logic.'),summary:o(),remediation:o().nullable().optional().describe('Operator-facing next step. Null when status is "ok" or no specific remediation applies.'),details:Le(o(),qn()).optional().describe("Structured context — principal email, redirect URI, missing scopes, etc. Stable per check id."),durationMs:d().int().nonnegative().describe("How long the check took to execute.")});m({scope:ef,project:o().nullable().describe('Project name when scope is "project", null otherwise.'),generatedAt:o().describe("ISO-8601 timestamp when this doctor run started."),durationMs:d().int().nonnegative(),summary:m({total:d().int().nonnegative(),ok:d().int().nonnegative(),warn:d().int().nonnegative(),fail:d().int().nonnegative(),skipped:d().int().nonnegative()}),checks:y(uD)});function dD(e){return e.trim().toLowerCase()}const mD=m({provider:o(),citationState:fi,cited:C(),mentioned:C(),runId:o(),runCreatedAt:o()}),pD=m({queryId:o(),query:o(),providers:y(mD),citedCount:d().int().nonnegative(),mentionedCount:d().int().nonnegative(),totalProviders:d().int().nonnegative()}),hD=m({queryId:o(),query:o(),provider:o(),citingCompetitors:y(o()),runId:o(),runCreatedAt:o()}),fD=m({providersConfigured:d().int().nonnegative(),providersCiting:d().int().nonnegative(),providersMentioning:d().int().nonnegative(),totalQueries:d().int().nonnegative(),queriesCitedAndMentioned:d().int().nonnegative(),queriesCitedOnly:d().int().nonnegative(),queriesMentionedOnly:d().int().nonnegative(),queriesInvisible:d().int().nonnegative(),latestRunId:o().nullable(),latestRunAt:o().nullable()});m({summary:fD,byQuery:y(pD),competitorGaps:y(hD),status:j(["ready","no-data"]),reason:j(["no-runs-yet","no-queries"]).optional()});const gD=m({selection:pk,historyWindow:m({from:o().datetime(),to:o().datetime()}).optional(),populations:y(mk.pick({queryClass:!0,summary:!0,trend:!0}))}),on={title:"AI visibility",description:"Each answer is counted once for its assigned properties. Branded and non-brand queries are measured separately.",simpleDescription:"Each saved answer is counted once. Branded and non-brand queries are measured separately.",queryType:"Query type",queries:"Queries measured",answers:"Answers measured",mentioned:"Mentioned",cited:"Cited",history:"Measurement history",latestMeasurement:"Latest measurement",allLocations:"All measured locations",noLocation:"No provider location",location:"Location",previousOutsideWindow:"Previous measurement outside this period",date:"Date",comparison:"Comparison",notMeasured:"Not measured",incomplete:"Evidence incomplete",ambiguous:"Property identity unverified",noPopulation:"No measured answers",notApplicable:"Not applicable",comparable:"Comparable",baseline:"Baseline",changed:"Measurement changed",unknownHistory:"Comparison unavailable"};function KH(e){return{branded:"Branded","non-brand":"Non-brand",unknown:"Unclassified"}[e]}function HH(e){return e.rate===null?on.notMeasured:`${Number((e.rate*100).toFixed(1))}%`}function QH(e){if(e.numerator!==null&&e.denominator!==null)return`${e.numerator} of ${e.denominator} answers`;switch(e.reason){case"no-population":return on.noPopulation;case"not-applicable":return on.notApplicable;case"identity-ambiguous":return on.ambiguous;default:return on.incomplete}}function FH(e,a=!1){const s=e==="first"?on.baseline:e==="comparable"?on.comparable:e==="legacy-unknown"?on.unknownHistory:on.changed;return a?`${s} · ${on.previousOutsideWindow}`:s}function ZH(e){const a=e.selection.measurement.completedAt?.slice(0,10)??on.notMeasured;return`${on.latestMeasurement}: ${a}`}function YH(e){const a=e.historyWindow;return a===void 0?on.history:`${on.history} (${a.from.slice(0,10)} – ${a.to.slice(0,10)})`}function XH(e){const a=e.selection.location;return a.kind==="all"?on.allLocations:a.kind==="none"?on.noLocation:`${on.location}: ${a.value}`}const JH=[7,14,30,90],WH=30;Qe([D(7),D(14),D(30),D(90)]).describe("Report window in days (7, 14, 30, or 90). Defaults to 30 when omitted.");const yD=j(["prompt","request-param","browser-geo","ignored"]),bD=m({label:o(),city:o(),region:o(),country:o(),otherConfiguredLabels:y(o())}),vD=m({provider:o(),treatment:yD,description:o()}),xD=m({generatedAt:o(),project:m({id:o(),name:o(),displayName:o(),canonicalDomain:o(),country:o(),language:o()}),location:bD.nullable(),providerLocationHandling:y(vD),periodStart:o().nullable(),periodEnd:o().nullable(),periodDays:d().int().positive()}),kD=m({visibilityBasis:j(["legacy-project-queries","frozen-populations"]).optional(),citationRate:d().nullable(),citedQueryCount:d().nullable(),totalQueryCount:d().nullable(),mentionRate:d().nullable(),mentionedQueryCount:d().nullable(),trend:j(["up","down","flat","unknown"]),queryCount:d(),competitorCount:d(),providerCount:d(),gsc:m({clicks:d(),impressions:d(),ctr:d(),avgPosition:d(),periodStart:o(),periodEnd:o()}).nullable(),ga:m({sessions:d(),users:d(),periodStart:o(),periodEnd:o()}).nullable(),findings:y(m({title:o(),detail:o(),tone:j(["positive","caution","negative","neutral"])}))}),wD=m({citationState:j(["cited","not-cited","pending"]),answerMentioned:C().nullable(),model:o().nullable()}),SD=m({queries:y(o()),providers:y(o()),matrix:y(y(wD.nullable())),providerRates:y(m({provider:o(),citedCount:d(),mentionedCount:d(),totalCount:d(),citationRate:d(),mentionRate:d()}))}),jD=m({domain:o(),citationCount:d(),totalCount:d(),pressureLabel:j(["High","Moderate","Low","None"]),citedQueries:y(o()),sharePct:d(),theirCitedPages:y(m({url:o(),citedFor:y(o())}))}),AD=m({projectCitationCount:d(),competitors:y(jD)}),CD=m({domain:o(),mentionCount:d(),totalCount:d(),pressureLabel:j(["High","Moderate","Low","None"]),mentionedQueries:y(o()),sharePct:d().nullable()}),ah=m({shareOfVoice:bw.optional(),projectMentionCount:d(),totalAnswerSnapshots:d(),competitors:y(CD)}),ND=ah.extend({scope:j(["non-brand","pooled"]),nonBrand:ah,branded:ah}),_D=m({category:o(),label:o(),count:d(),sharePct:d()}),zD=m({categories:y(_D),topDomains:y(m({domain:o(),count:d(),isCompetitor:C()}))}),ED=m({query:o(),clicks:d(),impressions:d(),ctr:d(),avgPosition:d(),category:j(["brand","lead-gen","industry","other"])}),TD=m({periodStart:o(),periodEnd:o(),totalClicks:d(),totalImpressions:d(),ctr:d(),avgPosition:d(),topQueries:y(ED),categoryBreakdown:y(m({category:j(["brand","lead-gen","industry","other"]),clicks:d(),impressions:d(),sharePct:d()})),trend:y(m({date:o(),clicks:d(),impressions:d()})),trackedButNoGsc:y(o()),gscButNotTracked:y(o())}),RD=m({totalSessions:d(),totalUsers:d(),totalOrganicSessions:d(),periodStart:o(),periodEnd:o(),topLandingPages:y(m({page:o(),sessions:d(),users:d().optional(),organicSessions:d()})),channelBreakdown:y(m({channel:o(),sessions:d(),sharePct:d()}))}),DD=m({totalSessions:d(),organicSessions:d(),paidSessions:d(),channels:y(m({channelGroup:o(),sessions:d(),sharePct:d()})),topCampaigns:y(m({source:o(),medium:o(),sessions:d()}))}),OD=m({totalSessions:d(),paidSessions:d(),organicSessions:d(),totalUsers:d().optional(),paidUsers:d().optional(),organicUsers:d().optional(),bySource:y(m({source:o(),sessions:d(),users:d().optional(),paidSessions:d(),organicSessions:d(),sharePct:d()})),trend:y(m({date:o(),sessions:d()})),topLandingPages:y(m({page:o(),sessions:d(),users:d().optional()}))}),qD=m({windowStart:o(),windowEnd:o(),hasData:C(),verifiedCrawlerHits:m({current:d(),prior:d(),deltaPct:d().nullable()}),unverifiedCrawlerHits:m({current:d(),prior:d(),deltaPct:d().nullable()}),aiUserFetchHits:m({current:d(),prior:d(),deltaPct:d().nullable()}),referralArrivals:m({current:d(),prior:d(),deltaPct:d().nullable()}),referralRedirects:d().int().nonnegative(),referralArrivalsByClass:m({paid:m({current:d(),prior:d(),deltaPct:d().nullable()}),organic:m({current:d(),prior:d(),deltaPct:d().nullable()}),unclassified:m({current:d(),prior:d(),deltaPct:d().nullable()})}),referralArrivalsClassSummary:o(),byOperator:y(m({operator:o(),verifiedHits:d(),unverifiedHits:d(),userFetchHits:d(),referralArrivals:d(),deltaPct:d().nullable()})),topCrawledPaths:y(m({path:o(),verifiedHits:d(),unverifiedHits:d().default(0),distinctOperators:d()})),referralProducts:y(m({product:o(),arrivals:d(),distinctLandingPaths:d()})),dailyTrend:y(m({date:o(),verifiedCrawlerHits:d(),unverifiedCrawlerHits:d().default(0),userFetchHits:d(),referralArrivals:d()})),topReferralLandingPaths:y(m({path:o(),arrivals:d(),distinctProducts:d()}))}),BD=m({provider:j(["google","bing"]).nullable(),total:d(),indexed:d(),notIndexed:d(),deindexed:d(),unknown:d(),indexedPct:d()}),PD=m({runId:o(),date:o(),citationRate:d(),citedQueryCount:d(),totalQueryCount:d(),mentionRate:d(),mentionedQueryCount:d(),providerRates:y(m({provider:o(),citationRate:d(),mentionRate:d()}))}),Oh=m({id:o(),type:j(["regression","gain","opportunity"]),severity:j(["critical","high","medium","low"]),title:o(),query:o(),provider:o(),recommendation:o().nullable(),createdAt:o(),instanceCount:d()}),MD=m({horizon:j(["immediate","short-term","medium-term"]),title:o(),rationale:o()}),Lo=m({current:d(),prior:d(),deltaAbs:d(),deltaPct:d().nullable(),direction:j(["up","down","flat"]),window:d().optional()}),ID=m({provider:o(),current:d(),prior:d(),deltaAbs:d(),direction:j(["up","down","flat"])}),VD=m({enoughHistory:C(),headline:o(),citationRate:Lo.nullable(),mentionRate:Lo.nullable(),citedQueryCount:Lo.nullable(),mentionedQueryCount:Lo.nullable(),gscClicksDelta:Lo.nullable(),aiReferralsDelta:Lo.nullable(),comparisonWindowDays:d().int().positive(),providerMovements:y(ID),wins:y(Oh),regressions:y(Oh)});j(["agency","client"]);const LD=j(["agency","client","both"]),UD=j(["immediate","short-term","medium-term"]),GD=j(["high","medium","low"]);j(["positive","caution","negative","neutral"]);const $D=j(["content","competitors","provider","search-demand","indexing","location","monitoring"]),tf=m({audience:LD,priority:d(),horizon:UD,category:$D,title:o(),action:o(),why:y(o()),evidence:y(o()),successMetric:o(),confidence:GD,targetRef:o().optional()}),KD=m({headline:o(),overview:o(),actionItems:y(tf),confidenceNotes:y(o())}),HD=m({title:o(),detail:o(),severity:j(["positive","caution","negative","neutral"]),evidence:y(o())}),QD=m({priorities:y(tf),diagnostics:y(HD)});function eQ(e){return e.horizon==="immediate"?"negative":e.confidence==="high"?"caution":e.confidence==="low"?"neutral":"caution"}function tQ(e){switch(e){case"critical":return"Critical";case"high":return"High";case"medium":return"Medium";case"low":return"Low"}}function nQ(e){switch(e){case"immediate":return"Immediate";case"short-term":return"Short term";case"medium-term":return"Medium term"}}function aQ(e){switch(e){case"content":return"Content";case"competitors":return"Competitors";case"provider":return"Provider";case"search-demand":return"Search demand";case"indexing":return"Indexing";case"location":return"Location";case"monitoring":return"Monitoring"}}function iQ(e){switch(e){case"high":return"High";case"medium":return"Medium";case"low":return"Low"}}m({visibility:gD.optional(),meta:xD,executiveSummary:kD,citationScorecard:SD,competitorLandscape:AD,mentionLandscape:ND,aiSourceOrigin:zD,gsc:TD.nullable(),ga:RD.nullable(),socialReferrals:DD.nullable(),aiReferrals:OD.nullable(),serverActivity:qD.nullable(),indexingHealth:BD.nullable(),citationsTrend:y(PD),whatsChanged:VD,insights:y(Oh),recommendedNextSteps:y(MD),actionPlan:y(tf),clientSummary:KD,agencyDiagnostics:QD,contentOpportunities:y(Aw),contentGaps:y(Nw),groundingSources:y(Cw)});const FD=Qe([D(60),D(90)]),ZD=j(["earliest","middle","prior","latest"]),Uo=m({clicks:d().int().nonnegative(),impressions:d().int().nonnegative()}),Ew=m({name:ZD,startDate:o(),endDate:o()}),YD=Ew.extend({totals:Uo}),XD=Ew.extend({organicSessions:d().int().nonnegative()}),ih=m({startDate:o(),endDate:o(),observedDays:d().int().nonnegative()}),wu=m({verified:d().int().nonnegative(),claimedUnverified:d().int().nonnegative(),unknownAiLike:d().int().nonnegative()}),Rv=m({total:d().int().nonnegative(),paid:d().int().nonnegative(),organic:d().int().nonnegative(),unknown:d().int().nonnegative()});m({contractVersion:D("organic-evidence/v1"),periodDays:FD,asOfDate:o().nullable(),coverage:m({gsc:C(),ga4:C(),server:C(),visibility:C()}),sourceCoverage:m({gsc:ih.nullable(),ga4:ih.nullable(),server:ih.nullable(),visibility:m({completedAt:o(),ageDays:d().nonnegative()}).nullable()}),gsc:m({propertyTotals:Uo,namedBrand:Uo,namedNonBrand:Uo,suppressedOrUnreportedResidual:Uo,cohorts:y(YD)}).nullable(),ga4:m({organicSessions:d().int().nonnegative(),cohorts:y(XD)}).nullable(),gaAiReferrals:m({paidSessions:d().int().nonnegative(),organicSessions:d().int().nonnegative()}).nullable(),server:m({crawlerHits:wu,userFetchHits:wu,referralSessions:Rv}).nullable(),visibility:m({runId:o(),completedAt:o(),ageDays:d().nonnegative(),answerPairs:d().int().nonnegative(),mentionedPairs:d().int().nonnegative(),citedPairs:d().int().nonnegative()}).nullable(),measurement:k_,pages:y(m({path:o(),gsc:Uo,ga4OrganicSessions:d().int().nonnegative(),server:m({crawlerHits:wu,userFetchHits:wu,referralSessions:Rv})})),findings:y(m({tone:j(["positive","caution","neutral"]),title:o(),detail:o()})),limitations:y(m({code:o(),detail:o()}))});const JD=j(["claude","codex"]);JD.enum;const WD=j(["claude","codex","all"]);WD.enum;const Tw=m({content:d().int().nonnegative(),sitemap:d().int().nonnegative(),robots:d().int().nonnegative(),asset:d().int().nonnegative(),other:d().int().nonnegative()}),eO=j(["content","sitemap","robots","asset","other"]),nf=j(["cloud-run","wordpress","cloudflare","vercel","generic-log"]);nf.enum;const tO=j(["raw-request-events","aggregate-request-metrics","request-url","status-code","user-agent","remote-ip","referer","cursor-pull"]);tO.enum;const nO=j(["raw-request","aggregate-bucket"]),aO=nO.enum,iO=j(["observed","provider-aggregated","inferred"]),sO=iO.enum,oO=m({type:o().nullable(),labels:Le(o(),o())}),rO=m({sourceType:nf,evidenceKind:D(aO["raw-request"]),confidence:D(sO.observed),eventId:o().min(1),observedAt:o().min(1),method:o().nullable(),requestUrl:o().nullable(),host:o().nullable(),path:o().min(1),queryString:o().nullable(),status:d().int().nullable(),userAgent:o().nullable(),remoteIp:o().nullable(),referer:o().nullable(),latencyMs:d().nullable(),requestSizeBytes:d().int().nullable(),responseSizeBytes:d().int().nullable(),providerResource:oO,providerLabels:Le(o(),o())});m({events:y(rO),rawEntryCount:d().int().nonnegative(),skippedEntryCount:d().int().nonnegative(),nextPageToken:o().optional(),filter:o()});const Rw=j(["connected","paused","error","archived"]),sQ=Rw.enum,Dw=j(["oauth","service-account"]);Dw.enum;const lO=j(["verified","claimed_unverified","unknown_ai_like"]),oQ=lO.enum,cO=m({id:o().min(1),source:o().min(1),version:o().min(1)}),Ow=m({manifestId:o().min(1),manifest:cO.nullable(),hits:d().int().nonnegative()});m({gcpProjectId:o().min(1),serviceName:o().nullable().optional(),location:o().nullable().optional(),authMode:Dw});m({baseUrl:o().url(),username:o().min(1)});const af=j(["production","preview"]);af.enum;m({projectId:o().min(1),teamId:o().min(1),environment:af});const qw=m({id:o(),projectId:o(),sourceType:nf,displayName:o(),status:Rw,lastSyncedAt:o().nullable(),lastCursor:o().nullable(),lastError:o().nullable(),skippedThroughAt:o().nullable(),queueBacklogCount:d().int().nonnegative().nullable(),queueBacklogObservedAt:o().nullable(),archivedAt:o().nullable(),config:Le(o(),qn()),createdAt:o(),updatedAt:o()});m({gcpProjectId:o().min(1),serviceName:o().min(1).optional(),location:o().min(1).optional(),displayName:o().min(1).optional(),keyJson:o().optional()});m({baseUrl:o().url(),username:o().min(1),applicationPassword:o().min(1),displayName:o().min(1).optional()});m({projectId:o().min(1),teamId:o().min(1),token:o().min(1),environment:af.optional(),displayName:o().min(1).optional()});const uO=j(["direct-push","queue-pull"]),hr=uO.enum,sf=o().regex(/^(?=.{1,63}$)[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,"Cloudflare Queue name must be 1-63 characters, use only letters, numbers, or dashes, and start and end with a letter or number"),Bw=m({schemaVersion:D(1),workerVersion:o().min(1),expectedBotListVersion:o().min(1),zoneId:o().nullable()}),dO=Bw.extend({deliveryMode:D(hr["direct-push"]),accountId:o().nullable()}),mO=Bw.extend({deliveryMode:D(hr["queue-pull"]),accountId:o().min(1),queueId:o().min(1),queueName:sf,retentionSeconds:d().int().min(60).max(1209600)});function Pw(e){if(typeof e!="object"||e===null||Array.isArray(e))return e;const a=e;return"deliveryMode"in a?e:{...a,deliveryMode:"direct-push"}}r0(Pw,qe("deliveryMode",[dO,mO]));const Mw=m({displayName:o().min(1).optional(),zoneId:o().min(1).optional()}),pO=Mw.extend({deliveryMode:D(hr["direct-push"]),accountId:o().min(1).optional()}),hO=Mw.extend({deliveryMode:D(hr["queue-pull"]),accountId:o().min(1),queueId:o().min(1),queueName:sf,retentionSeconds:d().int().min(60).max(1209600),apiToken:o().min(1)});r0(Pw,qe("deliveryMode",[pO,hO]));const Iw=m({sourceId:o().min(1),workerScript:o().min(1),wranglerToml:o().min(1),workerVersion:o().min(1),instructions:o().min(1)}),fO=Iw.extend({deliveryMode:D(hr["direct-push"]),activationRequired:C().default(!1)}),gO=Iw.extend({deliveryMode:D(hr["queue-pull"]),activationRequired:C().default(!1),accountId:o().min(1),queueId:o().min(1),queueName:sf,retentionSeconds:d().int().min(60).max(1209600)});qe("deliveryMode",[fO,gO]);const yO=m({eventId:o().min(1),observedAt:o().datetime(),method:o().nullable(),host:o().nullable(),path:o().min(1),queryString:o().nullable(),status:d().int().nullable(),userAgent:o().nullable(),remoteIp:o().nullable(),referer:o().nullable(),cf:m({verifiedBot:C().nullable(),botScore:d().int().nullable(),country:o().nullable(),asn:d().int().nullable(),asOrganization:o().nullable()}).nullable()});m({schemaVersion:D(1),workerVersion:o().min(1),events:y(yO).min(1).max(100)});m({acceptedEvents:d().int(),droppedEvents:d().int(),workerVersionAck:o(),crawlerBucketRows:d().int(),aiUserFetchBucketRows:d().int(),aiReferralBucketRows:d().int(),sampleRows:d().int()});m({sourceId:o(),runId:o(),syncedAt:o(),pulledEvents:d().int().nonnegative(),selfTrafficExcluded:d().int().nonnegative(),crawlerHits:d().int().nonnegative(),aiUserFetchHits:d().int().nonnegative(),aiReferralHits:d().int().nonnegative(),unknownHits:d().int().nonnegative(),crawlerBucketRows:d().int().nonnegative(),aiUserFetchBucketRows:d().int().nonnegative(),aiReferralBucketRows:d().int().nonnegative(),sampleRows:d().int().nonnegative(),remainingBacklogCount:d().int().nonnegative().optional(),windowStart:o(),windowEnd:o()});m({days:d().int().positive().optional()});m({advanceToNow:D(!0)});m({sourceId:o(),runId:o(),status:pa,windowStart:o(),windowEnd:o(),daysRequested:d().int().positive(),daysApplied:d().int().positive()});const bO=m({crawlerHits:d().int().nonnegative(),crawlerContentHits:d().int().nonnegative(),crawlerInfraHits:d().int().nonnegative(),crawlerSegments:Tw,aiUserFetchHits:d().int().nonnegative(),aiReferralHits:d().int().nonnegative(),aiReferralLandedHits:d().int().nonnegative(),aiReferralRedirectedHits:d().int().nonnegative(),sampleCount:d().int().nonnegative()});m({sources:y(qw)});const vO=qw.extend({totals24h:bO,latestRun:m({runId:o(),status:pa,startedAt:o().nullable(),finishedAt:o().nullable(),error:o().nullable()}).nullable()});m({sources:y(vO)});const xO=j(["crawler","ai-user-fetch","ai-referral"]),of=xO.enum,Vw=j(["hour","day"]);Vw.enum;const kO=m({bucket:o(),crawlerHits:d().int().nonnegative(),aiUserFetchHits:d().int().nonnegative(),aiReferralHits:d().int().nonnegative(),aiReferralLandedHits:d().int().nonnegative(),crawlerContentHits:d().int().nonnegative(),measured:C()}),wO=m({kind:D(of.crawler),sourceId:o(),tsHour:o(),botId:o(),operator:o(),verificationStatus:o(),verificationManifests:y(Ow).optional(),verificationUnattributedHits:d().int().nonnegative().optional(),pathNormalized:o(),pathClass:eO,status:d().int(),hits:d().int().nonnegative()}),SO=m({kind:D(of["ai-user-fetch"]),sourceId:o(),tsHour:o(),botId:o(),operator:o(),verificationStatus:o(),verificationManifests:y(Ow).optional(),verificationUnattributedHits:d().int().nonnegative().optional(),pathNormalized:o(),status:d().int(),hits:d().int().nonnegative()}),jO=m({kind:D(of["ai-referral"]),sourceId:o(),tsHour:o(),product:o(),operator:o(),sourceDomain:o(),evidenceType:o(),landingPathNormalized:o(),status:d().int(),hits:d().int().nonnegative(),paidHits:d().int().nonnegative(),organicHits:d().int().nonnegative(),unknownHits:d().int().nonnegative()}),AO=qe("kind",[wO,SO,jO]);m({windowStart:o(),windowEnd:o(),series:m({granularity:Vw,points:y(kO),coverageStart:o().nullable(),trends:m({crawlerContentHits:Ls.nullable(),aiUserFetchHits:Ls.nullable(),aiReferralLandedHits:Ls.nullable()})}),totals:m({crawlerHits:d().int().nonnegative(),crawlerContentHits:d().int().nonnegative(),crawlerInfraHits:d().int().nonnegative(),crawlerSegments:Tw,aiUserFetchHits:d().int().nonnegative(),aiReferralHits:d().int().nonnegative(),aiReferralLandedHits:d().int().nonnegative(),aiReferralRedirectedHits:d().int().nonnegative(),aiReferralPaidHits:d().int().nonnegative(),aiReferralOrganicHits:d().int().nonnegative(),aiReferralUnknownHits:d().int().nonnegative()}),eventRows:m({total:d().int().nonnegative(),returned:d().int().nonnegative(),truncated:C()}),events:y(AO)});const rf=j(["admin","viewer"]),CO=/^[a-z\d][\w.-]{0,63}$/i,NO=o().regex(CO,"A name may use letters, digits, dots, dashes and underscores, and must start with a letter or digit."),Dv=12,_O=o().min(Dv,`A password must be at least ${Dv} characters.`),Lw=m({id:o(),name:o(),role:rf,createdAt:o(),lastLoginAt:o().nullable()});m({users:y(Lw)});m({name:NO,password:_O,role:rf});m({name:o().min(1),password:o().min(1)});m({authRequired:C(),user:Lw.pick({name:!0,role:!0}).nullable()});const Uw=j(["queued","running","completed","partial","failed"]),rQ=Uw.enum,Gw=j(["queued","running","completed","failed"]),lQ=Gw.enum,zO=20,EO=20,qh=50,$w=m({kind:j(["market","property"]),key:me,expectedPlanRevision:d().int().positive().optional()}).strict(),TO=m({kind:j(["market","property"]),key:me,label:o().trim().min(1),planRevision:d().int().positive()}).strict(),Kw=o().min(1).max(4e3).refine(e=>e.trim().length>0,"Research queries cannot be blank.");function cQ(e){const a=new Set;return e.filter(s=>{const r=dD(s);return!r||a.has(r)?!1:(a.add(r),!0)})}function RO(e,a){const s=e?e.kind==="market"?{market:e.label,submarket:e.label}:{property:e.label,propertyBrand:e.label}:{};return a?{...s,location:a.label}:s}function uQ(e,a,s){const r=new Set(e.variables),u=[...e.pattern.matchAll(/\{([^{}]+)\}/g)].map(k=>k[1]),f=[...new Set(u.filter(k=>!r.has(k)))];if(f.length)throw Eb("The selected research template contains undeclared placeholders: "+f.join(", "));const g=RO(a,s),b=e.variables.filter(k=>g[k]===void 0);if(b.length)throw Eb("The selected research template requires unavailable bindings: "+b.join(", "));const v=Object.fromEntries(e.variables.map(k=>[k,g[k]]));return{bindings:v,output:O7(e.pattern,v)}}const Hw=m({templateId:o().trim().min(1).max(256),templateVersion:o().trim().min(1).max(256),bindingLocation:Yt.nullable().optional()}).strict();m({queries:y(Kw).min(1).max(50),provider:o().trim().min(1).optional(),model:o().trim().min(1).max(200).optional(),location:Yt.nullable().optional(),scope:$w.optional(),template:Hw.optional(),idempotencyKey:o().trim().min(1).max(128).optional()}).superRefine((e,a)=>{e.model&&!e.provider&&a.addIssue({code:Se.custom,path:["provider"],message:"provider is required when model is supplied"})});const DO=$w.extend({expectedPlanRevision:d().int().positive()}).strict(),OO=m({queries:y(Kw).min(1).max(qh),provider:o().trim().min(1),model:o().trim().min(1).max(200),location:Yt.nullable(),scope:DO.optional(),template:Hw.optional()}).strict();m({idempotencyKey:o().trim().min(1).max(128),runs:y(OO).min(1).max(EO)}).strict().superRefine((e,a)=>{e.runs.reduce((r,u)=>r+u.queries.length,0)>qh&&a.addIssue({code:Se.custom,path:["runs"],message:`A research batch may contain at most ${qh} concrete queries across all destinations`})});const qO=m({kind:j(["api-key","user"]),id:o(),name:o(),role:rf.nullable(),limited:C().optional()}),Qw=m({id:o(),projectId:o(),status:Uw,provider:o(),requestedModel:o().nullable(),resolvedModel:o(),location:Yt.nullable(),scope:TO.nullable().optional(),template:fk.nullable().optional(),totalQueries:d().int(),completedQueries:d().int(),failedQueries:d().int(),error:o().nullable(),initiatedBy:qO.nullable(),startedAt:o().nullable(),finishedAt:o().nullable(),createdAt:o()}),BO=m({id:o(),position:d().int(),query:o(),queryClass:rr.nullable().optional(),status:Gw,requestedModel:o().nullable(),resolvedModel:o(),servedModel:o().nullable(),answerText:o().nullable(),groundingSources:y(fd),citedDomains:y(o()),searchQueries:y(o()),namedCompetitors:y(o()).default([]),citedCompetitorDomains:y(o()).default([]),answerMentioned:C().nullable(),citationState:fi.nullable(),error:o().nullable(),startedAt:o().nullable(),finishedAt:o().nullable(),createdAt:o()}),PO=Qw.extend({queries:y(BO)});m({runs:y(PO)});const MO=m({name:o(),displayName:o(),modelConfigurable:C(),defaultModel:o(),knownModels:y(m({id:o(),displayName:o()}))});m({runs:y(Qw),nextCursor:o().nullable().optional(),providers:y(MO).optional(),access:m({canRun:C(),dailyRunLimit:d().int().positive().nullable()}).optional()});m({apiKey:o().min(1)});m({id:o(),name:o(),status:o(),currencyCode:o().nullable(),timezone:o().nullable(),url:o().nullable(),reviewStatus:o().nullable(),integrityReviewStatus:o().nullable(),integrityDecision:o().nullable()});m({q:o().trim().min(1).max(200),limit:d().int().min(1).max(100).default(20)});const IO=m({id:o(),type:o(),canonicalName:o(),countryCode:o(),name:o(),regionCode:o().nullable()});m({count:d().int().nonnegative(),query:o(),results:y(IO)});const VO=m({id:o(),clientType:o().optional(),name:o().optional(),pixelId:o().optional()});m({pixels:y(VO)});const LO=m({id:o(),name:o().optional()}),UO=m({id:o(),name:o().optional(),eventType:o().optional(),customEventName:o().nullable().optional(),attributionWindowDays:d().int().positive().optional(),adAccountId:o().optional(),sourceIds:y(o()).optional(),sources:y(LO).optional(),archived:C().optional(),version:d().int().nonnegative().optional()});m({eventSettings:y(UO)});m({connected:C(),adAccountId:o().nullable().optional(),displayName:o().nullable().optional(),currencyCode:o().nullable().optional(),timezone:o().nullable().optional(),status:o().nullable().optional(),reviewStatus:o().nullable().optional(),integrityReviewStatus:o().nullable().optional(),integrityDecision:o().nullable().optional(),lastSyncedAt:o().nullable().optional(),conversionTrackingConfigured:C().optional()});m({disconnected:C()});m({runId:o(),status:o()});const GO=m({type:o().nullable().optional(),title:o().nullable().optional(),body:o().nullable().optional(),targetUrl:o().nullable().optional(),fileId:o().nullable().optional()}),Ll=j(["impressions","clicks"]);Ll.enum;const Ul=j(["impression","click"]);Ul.enum;const $O=m({id:o(),adGroupId:o(),name:o(),status:o(),reviewStatus:o().nullable().optional(),creative:GO.nullable().optional(),upstreamUpdatedAt:d().int().nullable().optional(),syncedAt:o().optional()}),KO=m({id:o(),campaignId:o(),name:o(),description:o().nullable().optional(),status:o(),billingEventType:Qe([Ul,ce()]).optional(),maxBidMicros:d().int().nullable().optional(),contextHints:y(o()).default([]),ads:y($O).default([]),upstreamUpdatedAt:d().int().nullable().optional(),syncedAt:o().optional()}),HO=m({id:o(),name:o(),description:o().nullable().optional(),status:o(),startTime:d().int().nullable().optional(),endTime:d().int().nullable().optional(),biddingType:Qe([Ll,ce()]).optional(),dailySpendLimitMicros:d().int().nullable().optional(),lifetimeSpendLimitMicros:d().int().nullable().optional(),conversionEventSettingIds:y(o()).default([]),locationIds:y(o()).optional(),adGroups:y(KO).default([]),upstreamUpdatedAt:d().int().nullable().optional(),syncedAt:o().optional()});m({campaigns:y(HO)});const Fw=j(["campaign","ad_group"]);Fw.enum;const QO=m({level:Fw,entityId:o(),date:o(),impressions:d().int(),clicks:d().int(),spendMicros:d().int(),conversions:d().int(),ctr:d().nullable(),cpcMicros:d().int().nullable(),inProgress:C()});m({rows:y(QO),currencyCode:o().nullable().optional()});const Zw=m({from:o().nullable(),to:o().nullable(),inProgressDate:o().nullable()}),Yw=m({impressions:d().int(),clicks:d().int(),spendMicros:d().int(),conversions:d().int(),ctr:d().nullable(),cpcMicros:d().int().nullable()});m({connected:C(),displayName:o().nullable().optional(),currencyCode:o().nullable().optional(),lastSyncedAt:o().nullable().optional(),campaignCount:d().int(),adGroupCount:d().int(),adCount:d().int(),window:Zw,totals:Yw});const Xw=j(["unavailable","partial","complete"]);Xw.enum;const Jw=j(["no_ads_connection","connection_not_synced","no_ads_sync","entity_rows_missing_sync_run_id","entity_rows_span_multiple_sync_runs","source_sync_missing","source_sync_not_ads_sync","source_sync_not_completed"]);Jw.enum;const Ww=j(["unavailable","reported"]);Ww.enum;const FO={storedSnapshot:"stored_ads_snapshot"},eS=j(["unavailable","partial_snapshot","metrics_unavailable","observed_activity","no_observed_activity"]);eS.enum;const ZO=m({id:o(),name:o(),status:o(),reviewStatus:o().nullable()}),YO=m({id:o(),name:o(),status:o(),billingEventType:Qe([Ul,ce()]),maxBidMicros:d().int().nullable(),contextHints:y(o()),ads:y(ZO)}),XO=m({id:o(),name:o(),status:o(),biddingType:Qe([Ll,ce()]),dailySpendLimitMicros:d().int().nullable(),lifetimeSpendLimitMicros:d().int().nullable(),conversionEventSettingIds:y(o()),adGroups:y(YO)});m({snapshot:m({status:Xw,issue:Qe([Jw,ce()]),lastSyncedAt:o().nullable(),campaignCount:d().int().nonnegative(),adGroupCount:d().int().nonnegative(),adCount:d().int().nonnegative(),sourceSync:m({runId:o(),status:pa}).nullable()}),historicalCampaignRollups:m({status:Ww,window:Zw,totals:Yw.nullable()}),storedConfiguration:m({basis:D(FO.storedSnapshot),connection:m({status:o().nullable(),reviewStatus:o().nullable(),integrityReviewStatus:o().nullable(),integrityDecision:o().nullable(),conversionTrackingConfigured:C()}).nullable(),campaigns:y(XO)}),assessment:m({state:eS})});const $a=o().min(8).max(128).regex(/^[\w.:-]+$/,"operationKey may contain letters, numbers, dot, underscore, colon, and hyphen"),At=o().min(1).max(200),Fs=o().min(3).max(1e3).refine(e=>e.trim().length>0),er=d().int().min(946684800).max(4102444800),tr=d().int().positive().max(Number.MAX_SAFE_INTEGER),lf=o().regex(/^[a-f0-9]{64}$/),tS=y(At).max(100).refine(e=>new Set(e).size===e.length,"conversionEventSettingIds must be unique"),nS=o().url().refine(e=>new URL(e).protocol==="https:",{message:"URL must use https"}),aS=j(["image_upload","campaign_create","campaign_update","campaign_pause","campaign_archive","campaign_tree_activate","ad_group_create","ad_group_update","ad_group_pause","ad_group_archive","ad_create","ad_update","ad_pause","ad_archive"]);aS.enum;const iS=j(["pending","reconciling","succeeded","failed","unknown"]),Fo=iS.enum,sS=j(["known_entity","create_fingerprint","manual_only"]);sS.enum;const oS=j([Fo.pending,Fo.unknown,Fo.reconciling]);oS.enum;const rS=j(["active","paused","archived"]);rS.enum;const lS=j(["file","campaign","ad_group","ad"]);lS.enum;const cS=j(["campaign","ad_group","ad"]);cS.enum;const cf=m({id:At,expectedUpdatedAt:d().int().nonnegative()}).strict(),JO=cf,$u=1e3;function WO(e){return 1+e.campaign.adGroups.reduce((a,s)=>a+1+s.ads.length,0)}const eq=cf.extend({ads:y(JO).min(1).max($u-1)}).strict(),tq=cf.extend({adGroups:y(eq).min(1).max($u-1)}).strict();function nq(e,a){return e<a?-1:e>a?1:0}function Ov(e,a,s){for(let r=1;r<e.length;r+=1)if(nq(e[r-1].id,e[r].id)>=0){s.addIssue({code:"custom",path:a,message:"Activation manifest entities must be uniquely sorted by id"});return}}const uS=m({campaign:tq}).strict().superRefine((e,a)=>{WO(e)>$u&&a.addIssue({code:"custom",path:["campaign"],message:`Activation manifests may contain at most ${$u} entities`}),Ov(e.campaign.adGroups,["campaign","adGroups"],a);const r=new Set;for(let u=0;u<e.campaign.adGroups.length;u+=1){const f=e.campaign.adGroups[u];Ov(f.ads,["campaign","adGroups",u,"ads"],a);for(let g=0;g<f.ads.length;g+=1){const b=f.ads[g];r.has(b.id)&&a.addIssue({code:"custom",path:["campaign","adGroups",u,"ads",g,"id"],message:"An ad may appear only once in an activation manifest"}),r.add(b.id)}}}),dS=lf,aq=j(["approved","executing","consumed","revoked","expired","unknown"]),hi=aq.enum,iq=j(["pending","executing","active","failed","rollback_executing","rolled_back","rollback_failed","unknown"]),os=iq.enum,sq=m({name:Fs.optional(),description:o().max(4e3).nullable().optional(),status:rS.optional(),startTime:er.nullable().optional(),endTime:er.nullable().optional(),lifetimeSpendLimitMicros:tr.min(1e6).optional(),locationIds:y(At).max(100).optional(),biddingType:Ll.optional(),conversionEventSettingIds:tS.optional(),campaignId:At.optional(),contextHints:y(o().min(1).max(1e3)).max(100).optional(),maxBidMicros:tr.max(1e8).optional(),billingEventType:Ul.optional(),adGroupId:At.optional(),creativeFingerprint:lf.optional()}).strict();m({operationKey:$a,imageUrl:nS});m({operationKey:$a,name:Fs,description:o().max(4e3).optional(),startTime:er.optional(),endTime:er.optional(),lifetimeSpendLimitMicros:tr.min(1e6),locationIds:y(At).min(1).max(100),biddingType:Ll.optional(),conversionEventSettingIds:tS.optional()}).superRefine((e,a)=>{e.startTime!==void 0&&e.endTime!==void 0&&e.endTime<=e.startTime&&a.addIssue({code:"custom",path:["endTime"],message:"endTime must be after startTime"})});m({operationKey:$a,campaignId:At,name:Fs,description:o().max(4e3).optional(),contextHints:y(o().min(1).max(1e3)).min(1).max(100),maxBidMicros:tr.max(1e8),billingEventType:Ul.optional()});const mS=m({title:o().min(3).max(50),body:o().min(1).max(100),targetUrl:nS,fileId:At});m({operationKey:$a,adGroupId:At,name:Fs,creative:mS});function uf(e){return Object.keys(e).some(a=>a!=="operationKey"&&a!=="expectedUpdatedAt")}m({operationKey:$a,expectedUpdatedAt:d().int().nonnegative(),name:Fs.optional(),description:o().max(4e3).nullable().optional(),startTime:er.nullable().optional(),endTime:er.nullable().optional(),lifetimeSpendLimitMicros:tr.min(1e6).optional(),locationIds:y(At).min(1).max(100).optional()}).refine(uf,{message:"At least one campaign field must be updated"});m({operationKey:$a,expectedUpdatedAt:d().int().nonnegative(),name:Fs.optional(),description:o().max(4e3).nullable().optional(),contextHints:y(o().min(1).max(1e3)).min(1).max(100).optional(),maxBidMicros:tr.max(1e8).optional()}).refine(uf,{message:"At least one ad group field must be updated"});m({operationKey:$a,expectedUpdatedAt:d().int().nonnegative(),name:Fs.optional(),creative:mS.optional()}).refine(uf,{message:"At least one ad field must be updated"});m({operationKey:$a});m({operationKey:$a,expectedUpdatedAt:d().int().nonnegative()});const Sd=m({id:o(),adAccountId:o().nullable(),operationKey:o(),kind:aS,state:iS,entityType:Qe([lS,ce()]),entityId:o().nullable(),upstreamUpdatedAt:d().int().nullable(),errorCode:o().nullable(),errorMessage:o().nullable(),reconcileStrategy:Qe([sS,ce()]),reconcileParentId:At.nullable(),reconcileFingerprint:lf.nullable(),reconcileFields:sq.nullable(),reconcileAttempts:d().int().nonnegative(),lastReconciledAt:o().nullable(),createdAt:o(),updatedAt:o()});m({operation:Sd,replayed:C()});const xt=b2({offset:!0}),fr={id:At,projectId:At,adAccountId:At,manifestHash:dS,manifest:uS,executorApiKeyId:At,approverApiKeyId:At,expiresAt:xt,approvedAt:xt,createdAt:xt,updatedAt:xt,revocationRequestedAt:xt.nullable()},oq=m({...fr,state:D(hi.approved),operationId:ce(),executionStartedAt:ce(),consumedAt:ce(),revokedAt:ce(),expiredAt:ce()}).strict(),rq=m({...fr,state:D(hi.executing),operationId:At,executionStartedAt:xt,consumedAt:ce(),revokedAt:ce(),expiredAt:ce()}).strict(),lq=m({...fr,state:D(hi.consumed),operationId:At,executionStartedAt:xt,consumedAt:xt,revokedAt:ce(),expiredAt:ce()}).strict(),cq=m({...fr,state:D(hi.revoked),operationId:ce(),executionStartedAt:ce(),consumedAt:ce(),revokedAt:xt,expiredAt:ce()}).strict(),uq=m({...fr,state:D(hi.expired),operationId:ce(),executionStartedAt:ce(),consumedAt:ce(),revokedAt:ce(),expiredAt:xt}).strict(),dq=m({...fr,state:D(hi.unknown),operationId:At,executionStartedAt:xt,consumedAt:ce(),revokedAt:ce(),expiredAt:ce()}).strict(),pS=qe("state",[oq,rq,lq,cq,uq,dq]).superRefine((e,a)=>{e.executorApiKeyId===e.approverApiKeyId&&a.addIssue({code:"custom",path:["executorApiKeyId"],message:"The activation executor must use a different API key from the approver"}),e.revocationRequestedAt!==null&&e.state!==hi.executing&&e.state!==hi.unknown&&e.state!==hi.consumed&&a.addIssue({code:"custom",path:["revocationRequestedAt"],message:"Only an executing, cancelled, or unresolved activation can carry a cancellation request"})}),rs={id:At,operationId:At,ordinal:d().int().nonnegative(),entityType:cS,entityId:At,expectedUpdatedAt:d().int().nonnegative(),createdAt:xt,updatedAt:xt},Gl={errorCode:ce(),errorMessage:ce()},df={errorCode:o().min(1).max(100),errorMessage:o().min(1).max(500),remediation:o().min(1).max(500)},mq=m({...rs,...Gl,state:D(os.pending),providerUpdatedAt:ce(),remediation:ce(),startedAt:ce(),finishedAt:ce()}).strict(),pq=m({...rs,...Gl,state:D(os.executing),providerUpdatedAt:ce(),remediation:ce(),startedAt:xt,finishedAt:ce()}).strict(),hq=m({...rs,...Gl,state:D(os.active),providerUpdatedAt:d().int().nonnegative(),remediation:ce(),startedAt:xt,finishedAt:xt}).strict(),fq=m({...rs,...df,state:D(os.failed),providerUpdatedAt:Qe([d().int().nonnegative(),ce()]),startedAt:xt,finishedAt:xt}).strict(),gq=m({...rs,...Gl,state:D(os.rollback_executing),providerUpdatedAt:d().int().nonnegative(),remediation:o().min(1).max(500),startedAt:xt,finishedAt:ce()}).strict(),yq=m({...rs,...Gl,state:D(os.rolled_back),providerUpdatedAt:d().int().nonnegative(),remediation:o().min(1).max(500),startedAt:xt,finishedAt:xt}).strict(),bq=m({...rs,...df,state:D(os.rollback_failed),providerUpdatedAt:d().int().nonnegative(),startedAt:xt,finishedAt:xt}).strict(),vq=m({...rs,...df,state:D(os.unknown),providerUpdatedAt:Qe([d().int().nonnegative(),ce()]),startedAt:xt,finishedAt:xt}).strict(),xq=qe("state",[mq,pq,hq,fq,gq,yq,bq,vq]),Bh={exact:"exact",refreshSemanticallyUnchanged:"refresh_semantically_unchanged"},kq=j([Bh.exact,Bh.refreshSemanticallyUnchanged]);m({manifest:uS,executorApiKeyId:At,expiresAt:xt,versionPolicy:kq.default(Bh.exact)}).strict();m({grant:pS}).strict();m({}).strict();m({operationKey:$a,grantId:At,manifestHash:dS}).strict();m({grant:pS,operation:Sd,steps:y(xq)}).strict();const wq=[Fo.pending,Fo.unknown,Fo.reconciling];function Sq(e){if(e===void 0||e==="")return wq;if(Array.isArray(e)){const a=[];for(const s of e)typeof s=="string"?a.push(...s.split(",")):a.push(s);return a}return typeof e=="string"?e.split(",").filter(Boolean):e}m({state:r0(Sq,y(oS).min(1).max(3).refine(e=>new Set(e).size===e.length,"state values must be unique")),limit:l0().int().min(1).max(200).default(100),cursor:o().min(1).max(1e3).optional()});m({operations:y(Sd),count:d().int().nonnegative(),nextCursor:o().nullable()});m({}).strict();m({operation:Sd,resolved:C()});m({campaignId:o().min(1).max(200).optional(),lookbackDays:l0().int().min(1).max(30).default(7)});const hS=j(["campaign","ad_group","ad"]);hS.enum;const fS=j(["both","live-only","stored-only"]);fS.enum;const jq=D("live-provider-read"),Aq=m({date:o().nullable(),startTime:d().nullable(),endTime:d().nullable(),impressions:d().nullable(),clicks:d().nullable(),spend:d().nullable(),conversions:d().nullable(),ctr:d().nullable(),cpc:d().nullable(),cpm:d().nullable()}),qv=m({impressions:d().int(),clicks:d().int(),spendMicros:d().int(),conversions:d().int()}),Cq=m({date:o(),live:qv.nullable(),stored:qv.nullable(),drifted:C()}),Nq=m({field:o(),live:o().nullable(),stored:o().nullable()}),_q=m({name:o().nullable(),status:o(),reviewStatus:o().nullable(),mode:o().nullable(),updatedAt:d().nullable()}),zq=m({name:o(),status:o(),reviewStatus:o().nullable(),upstreamUpdatedAt:d().nullable(),syncedAt:o()}),Eq=m({entityType:hS,id:o(),parentId:o().nullable(),presence:fS,live:_q.nullable(),stored:zq.nullable(),fieldDeltas:y(Nq),liveMetrics:y(Aq).nullable(),metricDeltas:y(Cq).nullable(),drifted:C()}),Tq=m({surface:o(),entityId:o().nullable(),upstreamStatus:d().int().nullable()});m({basis:jq,fetchedAt:o(),adAccountId:o(),storedSnapshotSyncedAt:o().nullable(),metricsWindow:m({lookbackDays:d().int().positive()}),bounds:m({maxCampaigns:d().int().positive(),maxAdGroupsPerCampaign:d().int().positive(),maxAdsPerAdGroup:d().int().positive(),maxReaderCalls:d().int().positive(),readerCalls:d().int().nonnegative(),maxPagesPerReaderCall:d().int().positive(),maxUpstreamHttpRequests:d().int().positive(),truncated:C()}),entities:y(Eq),drift:m({entitiesCompared:d().int().nonnegative(),driftedEntities:d().int().nonnegative(),statusDrifted:d().int().nonnegative(),metricsDrifted:d().int().nonnegative()}),errors:y(Tq)});const Rq=m({status:j(["available","unavailable","not-supported"])}),Bv="*",Dq=j(["enabled","configured_disabled","CANONRY_TELEMETRY_DISABLED","DO_NOT_TRACK","CI","NO_CONFIG","CONFIG_UNAVAILABLE"]),Oq=j(["server","local"]);m({enabled:C(),configuredEnabled:C(),reason:Dq,anonymousId:o().regex(/^[0-9a-f]{8}\.\.\.$/i).optional(),target:Oq.optional()}).strict();const st=1,sh=j(["system","project","queries","competitors","run"]),oh=j(["0","1","2-3","4-5","6-10","11+"]);function La(e){return!Number.isFinite(e)||e<=0?"0":e<2?"1":e<4?"2-3":e<6?"4-5":e<11?"6-10":"11+"}const Pv=j(["api_unavailable","database_unavailable","worker_unavailable","no_provider","no_queries","provider_save_failed","project_create_failed","query_save_failed","run_rejected","run_failed","run_cancelled","rate_limited","provider_auth","network","unknown"]),qq=j(["wizard","platform","site_health"]),Su=m({eventId:o().uuid(),flowVersion:D(st),onboardingSessionId:o().uuid(),surface:qq.optional()});qe("event",[Su.extend({event:D("onboarding.started"),step:sh,resumed:C()}).strict(),Su.extend({event:D("onboarding.step_completed"),step:sh,method:j(["existing","inline","manual","generated","skipped","automatic"]),countBucket:oh.optional()}).strict(),Su.extend({event:D("onboarding.blocked"),step:sh,action:j(["continue","configure_provider","generate_queries","save","launch_run","retry_run"]),reasonCode:Pv}).strict(),Su.extend({event:D("run.requested"),origin:D("dashboard_setup"),result:j(["queued","rejected"]),kind:j(["answer_visibility","site_health"]).optional(),providerCountBucket:oh,queryCountBucket:oh,reasonCode:Pv.optional()}).strict()]);m({accepted:C()});j(["cli","mcp-stdio","mcp-http","aero","api","dashboard"]);const Bq=4;function Pq(e){return e.length<Bq}const gS=j(["trace","debug","info","warn","error","fatal"]),Mq=m({runId:o().min(1).max(256).optional(),projectId:o().min(1).max(256).optional(),requestId:o().min(1).max(256).optional(),actor:o().min(1).max(512).optional(),credentialId:o().min(1).max(512).optional(),userAgent:o().min(1).max(512).optional(),actorSession:o().min(1).max(512).optional(),method:o().min(1).max(16).optional(),route:o().min(1).max(256).optional(),operationId:o().min(1).max(256).optional(),jobId:o().min(1).max(256).optional(),taskId:o().min(1).max(256).optional(),traceId:o().min(1).max(256).optional(),errorCode:o().min(1).max(128).optional(),attempt:d().finite().optional(),count:d().finite().optional(),total:d().finite().optional(),progress:d().finite().optional(),httpStatus:d().finite().optional(),statusCode:d().finite().optional(),durationMs:d().finite().optional(),bytes:d().finite().optional(),retryAfterMs:d().finite().optional(),retriable:C().optional(),retrying:C().optional(),cancelled:C().optional(),success:C().optional()}).strict(),Iq=m({cursor:o().min(1).max(512),ts:o().datetime(),level:gS,module:o().min(1).max(256),action:o().min(1).max(256),message:o().max(4096).optional(),runId:o().min(1).max(256).optional(),projectId:o().min(1).max(256).optional(),context:Mq}).strict();m({level:gS.optional(),module:o().trim().min(1).max(256).optional(),runId:o().trim().min(1).max(256).optional(),projectId:o().trim().min(1).max(256).optional(),actor:o().trim().min(1).max(512).optional(),requestId:o().trim().min(1).max(256).optional(),since:o().datetime().optional(),until:o().datetime().optional(),limit:l0().int().min(1).max(200).default(100),cursor:o().trim().min(1).max(512).optional()}).strict().superRefine((e,a)=>{e.since&&e.until&&Date.parse(e.since)>Date.parse(e.until)&&a.addIssue({code:Se.custom,path:["until"],message:'"until" must be on or after "since".'})});m({entries:y(Iq),nextCursor:o().min(1).max(512).nullable(),truncated:d().int().nonnegative(),dropped:d().int().nonnegative(),retention:j(["process","durable"]),retentionPolicy:m({maxEntries:d().int().positive(),maxAgeSeconds:d().int().positive()}).strict().optional(),captureErrors:d().int().nonnegative().optional(),observedAt:o().datetime()}).strict();const Vq={bodySerializer:e=>JSON.stringify(e,(a,s)=>typeof s=="bigint"?s.toString():s)},Lq=({onRequest:e,onSseError:a,onSseEvent:s,responseTransformer:r,responseValidator:u,sseDefaultRetryDelay:f,sseMaxRetryAttempts:g,sseMaxRetryDelay:b,sseSleepFn:v,url:k,...S})=>{let A;const N=v??(_=>new Promise(G=>setTimeout(G,_)));return{stream:async function*(){let _=f??3e3,G=0;const K=S.signal??new AbortController().signal;for(;!K.aborted;){G++;const te=S.headers instanceof Headers?S.headers:new Headers(S.headers);A!==void 0&&te.set("Last-Event-ID",A);try{const Q={redirect:"follow",...S,body:S.serializedBody,headers:te,signal:K};let re=new Request(k,Q);e&&(re=await e(k,Q));const oe=await(S.fetch??globalThis.fetch)(re);if(!oe.ok)throw new Error(`SSE failed: ${oe.status} ${oe.statusText}`);if(!oe.body)throw new Error("No body in SSE response");const H=oe.body.pipeThrough(new TextDecoderStream).getReader();let $="";const Te=()=>{try{H.cancel()}catch{}};K.addEventListener("abort",Te);try{for(;;){const{done:Ke,value:Fe}=await H.read();if(Ke)break;$+=Fe;const Re=$.split(`
49
-
50
- `);$=Re.pop()??"";for(const ve of Re){const Ue=ve.split(`
51
- `),be=[];let P;for(const je of Ue)if(je.startsWith("data:"))be.push(je.replace(/^data:\s*/,""));else if(je.startsWith("event:"))P=je.replace(/^event:\s*/,"");else if(je.startsWith("id:"))A=je.replace(/^id:\s*/,"");else if(je.startsWith("retry:")){const X=Number.parseInt(je.replace(/^retry:\s*/,""),10);Number.isNaN(X)||(_=X)}let ae,he=!1;if(be.length){const je=be.join(`
52
- `);try{ae=JSON.parse(je),he=!0}catch{ae=je}}he&&(u&&await u(ae),r&&(ae=await r(ae))),s?.({data:ae,event:P,id:A,retry:_}),be.length&&(yield ae)}}}finally{K.removeEventListener("abort",Te),H.releaseLock()}break}catch(Q){if(a?.(Q),g!==void 0&&G>=g)break;const re=Math.min(_*2**(G-1),b??3e4);await N(re)}}}()}},Uq=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},Gq=e=>{switch(e){case"form":return",";case"pipeDelimited":return"|";case"spaceDelimited":return"%20";default:return","}},$q=e=>{switch(e){case"label":return".";case"matrix":return";";case"simple":return",";default:return"&"}},yS=({allowReserved:e,explode:a,name:s,style:r,value:u})=>{if(!a){const b=(e?u:u.map(v=>encodeURIComponent(v))).join(Gq(r));switch(r){case"label":return`.${b}`;case"matrix":return`;${s}=${b}`;case"simple":return b;default:return`${s}=${b}`}}const f=Uq(r),g=u.map(b=>r==="label"||r==="simple"?e?b:encodeURIComponent(b):jd({allowReserved:e,name:s,value:b})).join(f);return r==="label"||r==="matrix"?f+g:g},jd=({allowReserved:e,name:a,value:s})=>{if(s==null)return"";if(typeof s=="object")throw new Error("Deeply-nested arrays/objects aren’t supported. Provide your own `querySerializer()` to handle these.");return`${a}=${e?s:encodeURIComponent(s)}`},bS=({allowReserved:e,explode:a,name:s,style:r,value:u,valueOnly:f})=>{if(u instanceof Date)return f?u.toISOString():`${s}=${u.toISOString()}`;if(r!=="deepObject"&&!a){let v=[];Object.entries(u).forEach(([S,A])=>{v=[...v,S,e?A:encodeURIComponent(A)]});const k=v.join(",");switch(r){case"form":return`${s}=${k}`;case"label":return`.${k}`;case"matrix":return`;${s}=${k}`;default:return k}}const g=$q(r),b=Object.entries(u).map(([v,k])=>jd({allowReserved:e,name:r==="deepObject"?`${s}[${v}]`:v,value:k})).join(g);return r==="label"||r==="matrix"?g+b:b},Kq=/\{[^{}]+\}/g,Hq=({path:e,url:a})=>{let s=a;const r=a.match(Kq);if(r)for(const u of r){let f=!1,g=u.substring(1,u.length-1),b="simple";g.endsWith("*")&&(f=!0,g=g.substring(0,g.length-1)),g.startsWith(".")?(g=g.substring(1),b="label"):g.startsWith(";")&&(g=g.substring(1),b="matrix");const v=e[g];if(v==null)continue;if(Array.isArray(v)){s=s.replace(u,yS({explode:f,name:g,style:b,value:v}));continue}if(typeof v=="object"){s=s.replace(u,bS({explode:f,name:g,style:b,value:v,valueOnly:!0}));continue}if(b==="matrix"){s=s.replace(u,`;${jd({name:g,value:v})}`);continue}const k=encodeURIComponent(b==="label"?`.${v}`:v);s=s.replace(u,k)}return s},Qq=({baseUrl:e,path:a,query:s,querySerializer:r,url:u})=>{const f=u.startsWith("/")?u:`/${u}`;let g=(e??"")+f;a&&(g=Hq({path:a,url:g}));let b=s?r(s):"";return b.startsWith("?")&&(b=b.substring(1)),b&&(g+=`?${b}`),g};function Fq(e){const a=e.body!==void 0;if(a&&e.bodySerializer)return"serializedBody"in e?e.serializedBody!==void 0&&e.serializedBody!==""?e.serializedBody:null:e.body!==""?e.body:null;if(a)return e.body}const Zq=async(e,a)=>{const s=typeof a=="function"?await a(e):a;if(s)return e.scheme==="bearer"?`Bearer ${s}`:e.scheme==="basic"?`Basic ${btoa(s)}`:s},vS=({allowReserved:e,array:a,object:s}={})=>u=>{const f=[];if(u&&typeof u=="object")for(const g in u){const b=u[g];if(b!=null)if(Array.isArray(b)){const v=yS({allowReserved:e,explode:!0,name:g,style:"form",value:b,...a});v&&f.push(v)}else if(typeof b=="object"){const v=bS({allowReserved:e,explode:!0,name:g,style:"deepObject",value:b,...s});v&&f.push(v)}else{const v=jd({allowReserved:e,name:g,value:b});v&&f.push(v)}}return f.join("&")},Yq=e=>{if(!e)return"stream";const a=e.split(";")[0]?.trim();if(a){if(a.startsWith("application/json")||a.endsWith("+json"))return"json";if(a==="multipart/form-data")return"formData";if(["application/","audio/","image/","video/"].some(s=>a.startsWith(s)))return"blob";if(a.startsWith("text/"))return"text"}},Xq=(e,a)=>a?!!(e.headers.has(a)||e.query?.[a]||e.headers.get("Cookie")?.includes(`${a}=`)):!1,Jq=async({security:e,...a})=>{for(const s of e){if(Xq(a,s.name))continue;const r=await Zq(s,a.auth);if(!r)continue;const u=s.name??"Authorization";switch(s.in){case"query":a.query||(a.query={}),a.query[u]=r;break;case"cookie":a.headers.append("Cookie",`${u}=${r}`);break;default:a.headers.set(u,r);break}}},Mv=e=>Qq({baseUrl:e.baseUrl,path:e.path,query:e.query,querySerializer:typeof e.querySerializer=="function"?e.querySerializer:vS(e.querySerializer),url:e.url}),Iv=(e,a)=>{const s={...e,...a};return s.baseUrl?.endsWith("/")&&(s.baseUrl=s.baseUrl.substring(0,s.baseUrl.length-1)),s.headers=xS(e.headers,a.headers),s},Wq=e=>{const a=[];return e.forEach((s,r)=>{a.push([r,s])}),a},xS=(...e)=>{const a=new Headers;for(const s of e){if(!s)continue;const r=s instanceof Headers?Wq(s):Object.entries(s);for(const[u,f]of r)if(f===null)a.delete(u);else if(Array.isArray(f))for(const g of f)a.append(u,g);else f!==void 0&&a.set(u,typeof f=="object"?JSON.stringify(f):f)}return a};class rh{fns=[];clear(){this.fns=[]}eject(a){const s=this.getInterceptorIndex(a);this.fns[s]&&(this.fns[s]=null)}exists(a){const s=this.getInterceptorIndex(a);return!!this.fns[s]}getInterceptorIndex(a){return typeof a=="number"?this.fns[a]?a:-1:this.fns.indexOf(a)}update(a,s){const r=this.getInterceptorIndex(a);return this.fns[r]?(this.fns[r]=s,a):!1}use(a){return this.fns.push(a),this.fns.length-1}}const eB=()=>({error:new rh,request:new rh,response:new rh}),tB=vS({allowReserved:!1,array:{explode:!0,style:"form"},object:{explode:!0,style:"deepObject"}}),nB={"Content-Type":"application/json"},kS=(e={})=>({...Vq,headers:nB,parseAs:"auto",querySerializer:tB,...e}),wS=(e={})=>{let a=Iv(kS(),e);const s=()=>({...a}),r=k=>(a=Iv(a,k),s()),u=eB(),f=async k=>{const S={...a,...k,fetch:k.fetch??a.fetch??globalThis.fetch,headers:xS(a.headers,k.headers),serializedBody:void 0};S.security&&await Jq({...S,security:S.security}),S.requestValidator&&await S.requestValidator(S),S.body!==void 0&&S.bodySerializer&&(S.serializedBody=S.bodySerializer(S.body)),(S.body===void 0||S.serializedBody==="")&&S.headers.delete("Content-Type");const A=Mv(S);return{opts:S,url:A}},g=async k=>{const{opts:S,url:A}=await f(k),N={redirect:"follow",...S,body:Fq(S)};let E=new Request(A,N);for(const W of u.request.fns)W&&(E=await W(E,S));const Z=S.fetch;let _=await Z(E);for(const W of u.response.fns)W&&(_=await W(_,E,S));const G={request:E,response:_};if(_.ok){const W=(S.parseAs==="auto"?Yq(_.headers.get("Content-Type")):S.parseAs)??"json";if(_.status===204||_.headers.get("Content-Length")==="0"){let H;switch(W){case"arrayBuffer":case"blob":case"text":H=await _[W]();break;case"formData":H=new FormData;break;case"stream":H=_.body;break;default:H={};break}return S.responseStyle==="data"?H:{data:H,...G}}let oe;switch(W){case"arrayBuffer":case"blob":case"formData":case"json":case"text":oe=await _[W]();break;case"stream":return S.responseStyle==="data"?_.body:{data:_.body,...G}}return W==="json"&&(S.responseValidator&&await S.responseValidator(oe),S.responseTransformer&&(oe=await S.responseTransformer(oe))),S.responseStyle==="data"?oe:{data:oe,...G}}const K=await _.text();let te;try{te=JSON.parse(K)}catch{}const Q=te??K;let re=Q;for(const W of u.error.fns)W&&(re=await W(Q,_,E,S));if(re=re||{},S.throwOnError)throw re;return S.responseStyle==="data"?void 0:{error:re,...G}},b=k=>S=>g({...S,method:k}),v=k=>async S=>{const{opts:A,url:N}=await f(S);return Lq({...A,body:A.body,headers:A.headers,method:k,onRequest:async(E,Z)=>{let _=new Request(E,Z);for(const G of u.request.fns)G&&(_=await G(_,A));return _},url:N})};return{buildUrl:Mv,connect:b("CONNECT"),delete:b("DELETE"),get:b("GET"),getConfig:s,head:b("HEAD"),interceptors:u,options:b("OPTIONS"),patch:b("PATCH"),post:b("POST"),put:b("PUT"),request:g,setConfig:r,sse:{connect:v("CONNECT"),delete:v("DELETE"),get:v("GET"),head:v("HEAD"),options:v("OPTIONS"),patch:v("PATCH"),post:v("POST"),put:v("PUT"),trace:v("TRACE")},trace:b("TRACE")}},O=wS(kS()),aB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/sitemaps/submit",...e,headers:{"Content-Type":"application/json",...e.headers}}),iB=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects",...e}),sB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects",...e,headers:{"Content-Type":"application/json",...e.headers}}),oB=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}",...e}),SS=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}",...e}),rB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}",...e,headers:{"Content-Type":"application/json",...e.headers}}),lB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan",...e}),cB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-report",...e}),uB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-setup",...e}),dQ=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft",...e}),mQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/create",...e,headers:{"Content-Type":"application/json",...e.headers}}),pQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/import-sitemap",...e,headers:{"Content-Type":"application/json",...e.headers}}),hQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/apply-sitemap-selection",...e,headers:{"Content-Type":"application/json",...e.headers}}),fQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/upsert-target",...e,headers:{"Content-Type":"application/json",...e.headers}}),gQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/exclude-target",...e,headers:{"Content-Type":"application/json",...e.headers}}),yQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/apply-assignments",...e,headers:{"Content-Type":"application/json",...e.headers}}),bQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/preview-assignments",...e,headers:{"Content-Type":"application/json",...e.headers}}),vQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/replace-assignments",...e,headers:{"Content-Type":"application/json",...e.headers}}),xQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/apply-paired-assignments",...e,headers:{"Content-Type":"application/json",...e.headers}}),kQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/remove-assignment",...e,headers:{"Content-Type":"application/json",...e.headers}}),wQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/upsert-group",...e,headers:{"Content-Type":"application/json",...e.headers}}),SQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/remove-group",...e,headers:{"Content-Type":"application/json",...e.headers}}),jQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/preview-group-membership",...e,headers:{"Content-Type":"application/json",...e.headers}}),AQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/apply-group-membership",...e,headers:{"Content-Type":"application/json",...e.headers}}),CQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/upsert-competitor",...e,headers:{"Content-Type":"application/json",...e.headers}}),dB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/pin-competitor",...e,headers:{"Content-Type":"application/json",...e.headers}}),NQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/remove-competitor",...e,headers:{"Content-Type":"application/json",...e.headers}}),_Q=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/compile-preview",...e}),zQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/diff-preview",...e}),EQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/publish",...e,headers:{"Content-Type":"application/json",...e.headers}}),TQ=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-plan/draft/actions/discard",...e}),jS=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-overview",...e}),mB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/visibility-report",...e}),pB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-property-evidence",...e}),hB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-question-result",...e}),fB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-property-competitors",...e}),gB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-query-templates",...e}),yB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/measurement-query-templates/{templateId}",...e,headers:{"Content-Type":"application/json",...e.headers}}),bB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/research/runs",...e}),vB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/research/batches",...e,headers:{"Content-Type":"application/json",...e.headers}}),xB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/query-tracking",...e}),kB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/query-tracking/preview",...e,headers:{"Content-Type":"application/json",...e.headers}}),wB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/query-tracking/commit",...e,headers:{"Content-Type":"application/json",...e.headers}}),SB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/research/runs/{runId}",...e}),jB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/locations",...e,headers:{"Content-Type":"application/json",...e.headers}}),AB=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/locations/{label}",...e}),CB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/locations/default",...e,headers:{"Content-Type":"application/json",...e.headers}}),NB=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/queries",...e,headers:{"Content-Type":"application/json",...e.headers}}),AS=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/queries",...e}),_B=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/queries",...e,headers:{"Content-Type":"application/json",...e.headers}}),zB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/queries",...e,headers:{"Content-Type":"application/json",...e.headers}}),EB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/queries/generate",...e,headers:{"Content-Type":"application/json",...e.headers}}),TB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/competitors",...e,headers:{"Content-Type":"application/json",...e.headers}}),RB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/competitors",...e,headers:{"Content-Type":"application/json",...e.headers}}),DB=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/competitors/{id}",...e}),OB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/analytics/competitors",...e}),CS=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/runs",...e}),qB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/runs",...e,headers:{"Content-Type":"application/json",...e.headers}}),BB=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/runs",...e}),PB=e=>(e?.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/runs",...e,headers:{"Content-Type":"application/json",...e?.headers}}),NS=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/runs/{id}",...e}),MB=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/apply",...e,headers:{"Content-Type":"application/json",...e.headers}}),IB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/history",...e}),VB=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/history",...e}),LB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/timeline",...e}),UB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/analytics/metrics",...e}),GB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/snapshots/diff",...e}),_S=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/settings",...e}),$B=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/settings/providers/{name}",...e,headers:{"Content-Type":"application/json",...e.headers}}),KB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/settings/google",...e,headers:{"Content-Type":"application/json",...e.headers}}),HB=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/keys/self",...e}),QB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/settings/bing",...e,headers:{"Content-Type":"application/json",...e.headers}}),FB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/settings/cdp",...e,headers:{"Content-Type":"application/json",...e.headers}}),ZB=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/schedule",...e}),YB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/schedule",...e}),XB=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/schedule",...e,headers:{"Content-Type":"application/json",...e.headers}}),JB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/schedules",...e}),WB=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/notifications",...e}),eP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/notifications",...e,headers:{"Content-Type":"application/json",...e.headers}}),tP=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/notifications/{id}",...e}),nP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/notifications/{id}/test",...e}),aP=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/telemetry",...e}),iP=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/telemetry",...e,headers:{"Content-Type":"application/json",...e.headers}}),sP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/telemetry/onboarding",...e,headers:{"Content-Type":"application/json",...e.headers}}),zS=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/cdp/status",...e}),oP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google-ads/status",...e}),rP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google-ads/oauth/connect",...e,headers:{"Content-Type":"application/json",...e.headers}}),lP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google-ads/customers",...e}),cP=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google-ads/selection",...e,headers:{"Content-Type":"application/json",...e.headers}}),uP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google-ads/sync",...e}),dP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google-ads/performance",...e}),mP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google-ads/snapshots",...e}),pP=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google-ads/connection",...e}),hP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/status",...e}),fP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/oauth/connect",...e,headers:{"Content-Type":"application/json",...e.headers}}),gP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/accounts",...e}),yP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/accounts/{accountId}/containers",...e}),bP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/accounts/{accountId}/containers/{containerId}/workspaces",...e}),vP=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/selection",...e,headers:{"Content-Type":"application/json",...e.headers}}),xP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/sync",...e}),kP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/snapshots",...e}),wP=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gtm/connection",...e}),SP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/conversion-tracking/options",...e}),jP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/conversion-tracking/contracts",...e}),AP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/conversion-tracking/contracts",...e,headers:{"Content-Type":"application/json",...e.headers}}),CP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/conversion-tracking/contracts/{contractId}/integrity",...e}),NP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/connections",...e}),_P=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/connect",...e,headers:{"Content-Type":"application/json",...e.headers}}),zP=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/connections/{type}",...e}),EP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/properties",...e}),TP=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/connections/{type}/property",...e,headers:{"Content-Type":"application/json",...e.headers}}),RP=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/connections/{type}/sitemap",...e,headers:{"Content-Type":"application/json",...e.headers}}),DP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/sync",...e,headers:{"Content-Type":"application/json",...e.headers}}),OP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/performance",...e}),qP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/performance/daily",...e}),BP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/inspect",...e,headers:{"Content-Type":"application/json",...e.headers}}),PP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/inspections",...e}),MP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/deindexed",...e}),IP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/coverage",...e}),VP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/coverage/history",...e}),LP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/sitemaps",...e}),UP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/gsc/inspect-sitemap",...e,headers:{"Content-Type":"application/json",...e.headers}}),GP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/google/indexing/request",...e,headers:{"Content-Type":"application/json",...e.headers}}),$P=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gbp/locations",...e}),KP=e=>(e.client??O).put({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gbp/locations/{locationName}/selection",...e,headers:{"Content-Type":"application/json",...e.headers}}),HP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gbp/sync",...e,headers:{"Content-Type":"application/json",...e.headers}}),QP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gbp/keywords",...e}),FP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gbp/place-actions",...e}),ZP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gbp/lodging",...e}),YP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gbp/places",...e}),XP=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/gbp/summary",...e}),JP=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/connect",...e,headers:{"Content-Type":"application/json",...e.headers}}),WP=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/disconnect",...e}),eM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/status",...e}),tM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/sites",...e}),nM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/set-site",...e,headers:{"Content-Type":"application/json",...e.headers}}),aM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/coverage",...e}),iM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/inspections",...e}),sM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/inspect-url",...e,headers:{"Content-Type":"application/json",...e.headers}}),oM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/inspect-sitemap",...e,headers:{"Content-Type":"application/json",...e.headers}}),rM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/request-indexing",...e,headers:{"Content-Type":"application/json",...e.headers}}),lM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/bing/performance",...e}),cM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/ga/connect",...e,headers:{"Content-Type":"application/json",...e.headers}}),uM=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/ga/disconnect",...e}),dM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/ga/status",...e}),mM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/ga/sync",...e,headers:{"Content-Type":"application/json",...e.headers}}),pM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/ga/traffic",...e}),hM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/ga/ai-referral-daily",...e}),fM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/ga/social-referral-history",...e}),gM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/ga/session-history",...e}),yM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/insights",...e}),bM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/report",...e}),vM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/health/history",...e}),xM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/citations/visibility",...e}),kM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/content/dismissals",...e,headers:{"Content-Type":"application/json",...e.headers}}),wM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/overview",...e}),SM=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/backlinks/status",...e}),jM=e=>(e?.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/backlinks/install",...e}),AM=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/backlinks/syncs",...e}),CM=e=>(e?.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/backlinks/syncs",...e,headers:{"Content-Type":"application/json",...e?.headers}}),NM=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/backlinks/syncs/latest",...e}),_M=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/backlinks/releases",...e}),zM=e=>(e?.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/backlinks/latest-release",...e}),EM=e=>(e.client??O).delete({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/backlinks/cache/{release}",...e}),TM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/backlinks/extract",...e,headers:{"Content-Type":"application/json",...e.headers}}),RM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/backlinks/summary",...e}),DM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/backlinks/domains",...e}),OM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/backlinks/history",...e}),qM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/connect/cloud-run",...e,headers:{"Content-Type":"application/json",...e.headers}}),BM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/connect/wordpress",...e,headers:{"Content-Type":"application/json",...e.headers}}),PM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/connect/vercel",...e,headers:{"Content-Type":"application/json",...e.headers}}),MM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/sources/{id}/sync",...e,headers:{"Content-Type":"application/json",...e.headers}}),IM=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/sources/{id}/backfill",...e,headers:{"Content-Type":"application/json",...e.headers}}),VM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/sources",...e}),LM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/status",...e}),UM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/sources/{id}",...e}),GM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/traffic/events",...e}),$M=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/discover/run",...e,headers:{"Content-Type":"application/json",...e.headers}}),KM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/discover/sessions",...e}),HM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/discover/sessions/{id}",...e}),QM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo",...e}),FM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/pages",...e}),ZM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/trend",...e}),YM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/crawl",...e}),XM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/graph",...e}),JM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/crawl/pages/audit",...e}),ES=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/crawl/pages",...e}),WM=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/structure",...e}),eI=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/internal-links/neighbors",...e}),tI=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/dead-links",...e}),nI=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/runs",...e}),aI=e=>(e.client??O).post({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/runs",...e,headers:{"Content-Type":"application/json",...e.headers}}),iI=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/runs/{runId}/progress",...e}),sI=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/technical-aeo/runs/{runId}/page-health-preview",...e}),oI=e=>(e.client??O).get({security:[{scheme:"bearer",type:"http"}],url:"/api/v1/projects/{name}/agent/providers",...e});function rI(e){const a={baseUrl:e.baseUrl,fetch:e.fetch,headers:{...e.headers??{}}};return wS(a)}class fn extends Error{code;statusCode;details;constructor(a,s,r,u){super(a),this.name="ApiError",this.code=r??"UNKNOWN",this.statusCode=s,this.details=u}}function Sl(){if(typeof window>"u")return!1;const e=window.__CANONRY_CONFIG__?.demo;return e?.enabled===!0&&e.readOnly===!0&&e.sampleData===!0}function lI(){if(typeof window>"u")return"legacy";const e=window.__CANONRY_CONFIG__?.dashboard?.onboardingMode??window.__CANONRY_CONFIG__?.onboardingMode;return e==="platform"||e==="auto"||e==="legacy"?e:"auto"}function cI(){if(typeof window>"u")return;const e=window.__CANONRY_CONFIG__?.embed?.renderToken;return typeof e=="string"&&e.length>0?e:void 0}function mf(e){const a=cI();if(!a)return e;let s;const r=typeof window<"u"&&window.location?window.location.href:"http://localhost/";try{s=new URL(e,r)}catch{return e}const u=new URL(r).origin;if(s.origin!==u)return e;const g=`${Ad().replace(/\/$/,"")}/api/v1`;return s.pathname!==g&&!s.pathname.startsWith(`${g}/`)?e:(s.searchParams.set("token",a),/^[a-z][a-z\d+.-]*:/i.test(e)?s.toString():`${s.pathname}${s.search}${s.hash}`)}function uI(e,a){const s={method:e.method,headers:e.headers,cache:e.cache,credentials:e.credentials,integrity:e.integrity,keepalive:e.keepalive,mode:e.mode,redirect:e.redirect,referrer:e.referrer,referrerPolicy:e.referrerPolicy,signal:e.signal};return e.body&&(s.body=e.body,s.duplex="half"),new Request(a,s)}function TS(){if(typeof window>"u")return null;const e=window.__CANONRY_CONFIG__?.embed;return e?.enabled?e:null}function dI(){return typeof window>"u"?!0:window.__CANONRY_CONFIG__?.dashboard?.showResourceLinks!==!1}function mI(){return typeof window>"u"?!0:window.__CANONRY_CONFIG__?.dashboard?.showAgentBar!==!1}function pI(){return typeof window>"u"?!0:window.__CANONRY_CONFIG__?.dashboard?.showUpdateNotification!==!1}function Ps(){return hI(ze["answer-visibility"])}function hI(e){if(typeof window>"u")return!1;const a=window.__CANONRY_CONFIG__?.dashboard;return a?.managedRunKinds!==void 0?a.managedRunKinds.includes(e):e===ze["answer-visibility"]&&a?.managedSweeps===!0}function fI(){if(typeof window>"u")return null;const e=window.__CANONRY_CONFIG__?.research;if(e?.allowViewers!==!0)return null;const a=e.viewerDailyRunLimit;return{allowViewers:!0,viewerDailyRunLimit:Number.isInteger(a)&&(a??0)>0?a:zO}}function Vv(){return fI()?"Analyst":"View only"}function gI(){return TS()!==null}function yI(){return typeof window<"u"&&window.__CANONRY_CONFIG__?.basePath?window.__CANONRY_CONFIG__.basePath.replace(/\/$/,"")+"/api/v1":"/api/v1"}const pf=yI();function bI(){const e=typeof window<"u"&&window.location?window.location.origin:"";return typeof window<"u"&&window.__CANONRY_CONFIG__?.basePath?e+window.__CANONRY_CONFIG__.basePath.replace(/\/$/,""):e}function Ad(){return typeof window<"u"&&window.__CANONRY_CONFIG__?.basePath?window.__CANONRY_CONFIG__.basePath.replace(/\/$/,""):""}function vI(e){const a=e.trim().toLowerCase().replace(/^\[|\]$/g,"");return a==="localhost"||a==="::1"?!0:/^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(a)}function xI(e,a){if(e.protocol!=="http:"&&e.protocol!=="https:"||!vI(e.hostname))return;const s=e.port?`:${e.port}`:"",r=a?a.replace(/\/$/,""):"";return`${e.protocol}//localhost${s}${r}`}function RQ(e){return`${e.replace(/\/$/,"")}/api/v1/google/callback`}function DQ(e){return`${e.replace(/\/$/,"")}/api/v1/google-marketing/callback`}function kI(){if(!(typeof window>"u"))return xI(window.location,Ad())}function wI(e){return`${Ad()}${e}`}function SI(e,a){if(a===404)return"Health endpoint returned 404. Check basePath or reverse-proxy configuration and make sure the dashboard reaches /health instead of an API-prefixed route."}function jI(){return""}function AI(){return!!jI()}let RS=null;function Lv(e){RS=e}function hf(){RS?.()}const se=rI({baseUrl:bI()});se.interceptors.response.use((e,a)=>(e.status===401&&!a.url.includes("/api/v1/session")&&hf(),e));se.interceptors.request.use(e=>{const a=mf(e.url);return a===e.url?e:uI(e,a)});async function ge(e){const a=await e();if(a.error!==void 0&&a.error!==null){const s=a.response.status;let r=`API ${s}: ${a.response.statusText}`,u,f;if(typeof a.error=="object"&&a.error!==null){const g=a.error.error;if(typeof g=="string")r=g;else if(g&&typeof g=="object"){const b=g;b.message&&(r=b.message),b.code&&(u=b.code),b.details&&(f=b.details)}else{const b=a.error;b.message&&(r=b.message),b.code&&(u=b.code),b.details&&(f=b.details)}}else typeof a.error=="string"&&(r=a.error);throw new fn(r,s,u,f)}if(a.response.status!==204)return a.data}async function ls(e,a){const s=a?.body!=null,r=await fetch(mf(`${pf}${e}`),{...a,credentials:a?.credentials??"same-origin",headers:{...s?{"Content-Type":"application/json"}:{},...a?.headers}});if(!r.ok){const u=await r.text();let f=`API ${r.status}: ${r.statusText}`,g,b;if(u)try{const v=JSON.parse(u);typeof v.error=="string"?f=v.error:v.error?.message?(f=v.error.message,g=v.error.code,b=v.error.details):v.message&&(f=v.message)}catch{f=u}throw r.status===401&&!e.startsWith("/session")&&!e.startsWith("/auth/")&&hf(),new fn(f,r.status,g,b)}if(r.status!==204)return r.json()}function CI(e){return ge(()=>SS({client:se,path:{name:e}}))}function OQ(e){return ge(()=>CS({client:se,path:{name:e}}))}function Ph(e){return ge(()=>NS({client:se,path:{id:e}}))}function DS(e){return ge(()=>AS({client:se,path:{name:e}}))}function NI(e,a,s){return ge(()=>LB({client:se,path:{name:e},query:{location:a,limit:s}}))}function OS(e,a){return ge(()=>wM({client:se,path:{name:e},query:{location:a?.location,since:a?.since}}))}function qS(e,a){return ge(()=>rB({client:se,path:{name:e},body:a}))}function _I(e){return ge(()=>sB({client:se,body:e}))}function zI(e,a){return ge(()=>zB({client:se,path:{name:e},body:{queries:a}}))}function EI(e,a){return ge(()=>_B({client:se,path:{name:e},body:{queries:a}}))}function qQ(e,a){return ge(()=>NB({client:se,path:{name:e},body:{queries:a}}))}function TI(e,a){return ge(()=>kM({client:se,path:{name:e},body:a}))}function RI(e,a){return ge(()=>RB({client:se,path:{name:e},body:{competitors:a}}))}function BQ(e,a){return ge(()=>TB({client:se,path:{name:e},body:{competitors:a}}))}function PQ(e,a){return ge(()=>DB({client:se,path:{name:e,id:a}}))}async function MQ(e,a){const s=await CI(e);return qS(e,{displayName:a.displayName??s.displayName??s.name,canonicalDomain:a.canonicalDomain??s.canonicalDomain,ownedDomains:a.ownedDomains??s.ownedDomains,aliases:a.aliases??s.aliases,country:a.country??s.country,language:a.language??s.language,tags:s.tags,labels:s.labels,providers:a.providers??s.providers,providerModels:a.providerModels??s.providerModels??{},locations:a.locations??s.locations,defaultLocation:a.defaultLocation!==void 0?a.defaultLocation:s.defaultLocation,autoExtractBacklinks:s.autoExtractBacklinks})}function DI(e,a){const s={};return a?.location&&(s.location=a.location),a?.allLocations&&(s.allLocations=!0),a?.noLocation&&(s.noLocation=!0),ge(()=>qB({client:se,path:{name:e},body:s}))}function IQ(e,a){return ge(()=>jB({client:se,path:{name:e},body:a}))}async function VQ(e,a){await ge(()=>AB({client:se,path:{name:e,label:a}}))}function LQ(e,a){return ge(()=>CB({client:se,path:{name:e},body:{label:a}}))}async function UQ(e){await ge(()=>oB({client:se,path:{name:e}}))}function GQ(){return ge(()=>_S({client:se}))}function Uv(){return ls("/session")}function OI(e){return ls("/session/setup",{method:"POST",body:JSON.stringify({password:e})})}function qI(e){return ls("/session",{method:"POST",body:JSON.stringify({password:e})})}function BI(e){return ls("/session",{method:"POST",body:JSON.stringify({apiKey:e})})}function PI(){return ls("/session",{method:"DELETE"})}function lh(){return ge(()=>HB({client:se}))}function Gv(){return ls("/auth/session")}function MI(e,a){return ls("/auth/login",{method:"POST",body:JSON.stringify({name:e,password:a})})}function $v(){return ls("/auth/logout",{method:"POST"})}function BS(e,a){return ge(()=>$B({client:se,path:{name:e},body:a}))}async function PS(e){for(let a=0;a<2;a+=1)try{await ge(()=>sP({client:se,body:e}));return}catch(s){if(!(!(s instanceof fn)||s.statusCode>=500)||a===1)return}}function $Q(e){return ge(()=>KB({client:se,body:e}))}function KQ(e,a){return ge(()=>XB({client:se,path:{name:e},body:a}))}async function HQ(e,a){await ge(()=>ZB({client:se,path:{name:e},query:a===void 0?void 0:{expectedUpdatedAt:a}}))}function QQ(e){return ge(()=>WB({client:se,path:{name:e}}))}function FQ(e,a){return ge(()=>eP({client:se,path:{name:e},body:a}))}async function ZQ(e,a){await ge(()=>tP({client:se,path:{name:e,id:a}}))}function YQ(e,a){return ge(()=>nP({client:se,path:{name:e,id:a}}))}function II(e,a,s){return ge(()=>EB({client:se,path:{name:e},body:{provider:a,count:s}}))}function VI(e){return ge(()=>MB({client:se,body:e}))}function LI(e){return ge(()=>PB({client:se,body:e??{}}))}function XQ(e,a){const s=kI();return ge(()=>_P({client:se,path:{name:e},body:{type:a,...s?{publicUrl:s}:{}}}))}function JQ(e,a){return ge(()=>zP({client:se,path:{name:e,type:a}}))}function WQ(e,a,s){return ge(()=>TP({client:se,path:{name:e,type:a},body:{propertyId:s}}))}function eF(e,a,s){return ge(()=>RP({client:se,path:{name:e,type:a},body:{sitemapUrl:s}}))}function UI(e,a){return ge(()=>DP({client:se,path:{name:e},body:a??{}}))}function tF(e,a){const s={};return a&&a!=="all"&&(s.window=a),ge(()=>UB({client:se,path:{name:e},query:s}))}function nF(e,a){return ge(()=>BP({client:se,path:{name:e},body:{url:a}}))}function GI(e,a){return ge(()=>UP({client:se,path:{name:e},body:a??{}}))}function aF(e,a){return ge(()=>LP({client:se,path:{name:e},query:a?{sitemapIndex:a}:void 0}))}function iF(e,a){return ge(()=>aB({client:se,path:{name:e},body:{sitemapUrls:a}}))}function $I(e,a){return ge(()=>aI({client:se,path:{name:e},body:a??{}}))}function sF(e,a){return ge(()=>$M({client:se,path:{name:e},body:a??{}}))}function oF(){return ge(()=>zS({client:se}))}function rF(e,a){return ge(()=>FB({client:se,body:{host:e,port:a}}))}function lF(e,a){return ge(()=>GP({client:se,path:{name:e},body:a}))}function cF(e,a){return ge(()=>JP({client:se,path:{name:e},body:{apiKey:a}}))}function uF(e){return ge(()=>WP({client:se,path:{name:e}}))}function dF(e,a){return ge(()=>nM({client:se,path:{name:e},body:{siteUrl:a}}))}function mF(e,a){return ge(()=>sM({client:se,path:{name:e},body:{url:a}}))}function pF(e,a){return ge(()=>oM({client:se,path:{name:e},body:{}}))}function hF(e,a){return ge(()=>rM({client:se,path:{name:e},body:a}))}function fF(e){return ge(()=>QB({client:se,body:{apiKey:e}}))}function MS(e){return e?/filename\s*=\s*"?([^";]+)"?/i.exec(e)?.[1]??null:null}async function gF(e,a="agency",s){const r=new URLSearchParams({audience:a});s!==void 0&&r.set("period",String(s));const u=await fetch(mf(`${pf}/projects/${encodeURIComponent(e)}/report.html?${r.toString()}`),{credentials:"same-origin",headers:{}});if(!u.ok)throw new fn(`Failed to download report: ${u.status}`,u.status);const f=await u.blob(),g=URL.createObjectURL(f),b=MS(u.headers.get("Content-Disposition"))??`canonry-report-${e}.html`,v=document.createElement("a");v.href=g,v.download=b,document.body.appendChild(v),v.click(),document.body.removeChild(v),URL.revokeObjectURL(g)}async function yF(e,a){const s=await fetch(`${pf}/projects/${encodeURIComponent(e)}/results/export?format=${a}`,{credentials:"same-origin",headers:{}});if(!s.ok)throw new fn(`Failed to download results: ${s.status}`,s.status);const r=await s.blob(),u=URL.createObjectURL(r),f=MS(s.headers.get("Content-Disposition"))??`canonry-results-${e}.${a}`,g=document.createElement("a");g.href=u,g.download=f,document.body.appendChild(g),g.click(),document.body.removeChild(g),URL.revokeObjectURL(u)}function bF(e,a){return ge(()=>mM({client:se,path:{name:e},body:{}}))}function vF(e,a){return ge(()=>cM({client:se,path:{name:e},body:a}))}function xF(e){return ge(()=>uM({client:se,path:{name:e}}))}function kF(e,a){return ge(()=>qM({client:se,path:{name:e},body:a}))}function wF(e,a){return ge(()=>BM({client:se,path:{name:e},body:a}))}function SF(e,a){return ge(()=>PM({client:se,path:{name:e},body:a}))}function jF(e,a,s){return ge(()=>MM({client:se,path:{name:e,id:a},body:s??{}}))}function AF(e,a,s){return ge(()=>IM({client:se,path:{name:e,id:a},body:{}}))}function CF(e,a){return ge(()=>yM({client:se,path:{name:e},query:{runId:a}}))}function KI(e){if(!e||typeof e!="object")return;const a=e;if(!(typeof a.current!="string"||typeof a.latest!="string"||typeof a.url!="string"||typeof a.upgradeCommand!="string"))return{current:a.current,latest:a.latest,url:a.url,upgradeCommand:a.upgradeCommand}}async function HI(e,a){const s=wI(e);try{const r=await fetch(s,{credentials:"same-origin"});if(!r.ok)return{label:a,state:"error",detail:`${a} ${r.status}: ${r.statusText}`,statusCode:r.status,hint:SI(e,r.status)};const u=await r.json(),f=typeof u.version=="string"?u.version:"unknown",g=typeof u.databaseUrlConfigured=="boolean"?u.databaseUrlConfigured:void 0,b=typeof u.lastHeartbeatAt=="string"?u.lastHeartbeatAt:void 0,v=KI(u.updateAvailable),k=Rq.safeParse(u.mcp),S=[f,g===!1?"database not configured":"database configured",b?`heartbeat ${b}`:void 0].filter(Boolean).join(" · ");return{label:a,state:"ok",detail:S,version:f,databaseConfigured:g,lastHeartbeatAt:b,...v?{updateAvailable:v}:{},...k.success?{mcp:k.data}:{}}}catch(r){return{label:a,state:"error",detail:r instanceof Error?r.message:"unreachable",hint:e==="/health"?`Request failed while checking ${s}. If this instance is served behind a sub-path, verify the dashboard basePath and reverse-proxy rewrites.`:void 0}}}function NF(){return ge(()=>SM({client:se}))}function _F(){return ge(()=>jM({client:se}))}function zF(){return ge(()=>NM({client:se}))}function EF(){return ge(()=>AM({client:se}))}function TF(e){return ge(()=>CM({client:se,body:e?{release:e}:{}}))}function RF(){return ge(()=>_M({client:se}))}function DF(){return ge(()=>zM({client:se}))}function OF(e){return ge(()=>EM({client:se,path:{release:e}}))}function qF(e,a={}){return ge(()=>RM({client:se,path:{name:e},query:{release:a.release,excludeCrawlers:a.excludeCrawlers?"1":void 0,source:a.source}}))}function BF(e,a={}){return ge(()=>DM({client:se,path:{name:e},query:{limit:a.limit!==void 0?String(a.limit):void 0,offset:a.offset!==void 0?String(a.offset):void 0,release:a.release,excludeCrawlers:a.excludeCrawlers?"1":void 0,source:a.source}}))}function PF(e,a={}){return ge(()=>OM({client:se,path:{name:e},query:{source:a.source}}))}function MF(e,a){return ge(()=>TM({client:se,path:{name:e},body:{release:void 0}}))}const IS={account:null,canWrite:!0,isAdmin:!0},QI={account:null,canWrite:!1,isAdmin:!1};function FI(e){const a=e.scopes.includes(Bv);return{account:null,canWrite:!e.readOnly&&a,isAdmin:e.projectId===null&&e.scopes.includes(Bv)}}const VS=T.createContext(IS);function ZI({account:e,apiKey:a,apiKeyPending:s=!1,children:r}){const u=s?QI:a?FI(a):e?{account:e,canWrite:e.role==="admin",isAdmin:e.role==="admin"}:IS;return c.jsx(VS.Provider,{value:u,children:r})}function ha(){return T.useContext(VS)}const LS="View only — your account cannot change this.";function Ft(e){return(...a)=>{e(...a)}}const YI=6e3,XI=5,JI=180;let hn=[],WI=0;const Mh=new Set,Ih=new Map,Vh=new Map;function Ku(){const e=[...hn];for(const a of Mh)a(e)}function ff(e){const a=Ih.get(e);a&&(clearTimeout(a),Ih.delete(e));const s=Vh.get(e);s&&(clearTimeout(s),Vh.delete(e))}function US(e){ff(e);const a=hn.length;hn=hn.filter(s=>s.id!==e),hn.length!==a&&Ku()}function Kv(e){ff(e.id),Ih.set(e.id,setTimeout(()=>{Lh(e.id)},e.durationMs))}function eV(e,a,s){return typeof e=="string"?{title:e,tone:a,durationMs:s}:e}function rn(e,a="negative",s=YI){const r=eV(e,a,s),u={id:String(++WI),title:r.title,detail:r.detail,tone:r.tone??a,durationMs:r.durationMs??s,dedupeKey:r.dedupeKey,cta:r.cta,state:"open"};if(r.dedupeKey){const f=hn.find(g=>g.dedupeKey===r.dedupeKey);if(f){if((r.dedupeMode??"drop")==="drop")return f.id;const g={...f,title:u.title,detail:u.detail,tone:u.tone,durationMs:u.durationMs,cta:u.cta,state:"open"};return hn=hn.map(b=>b.id===f.id?g:b),Ku(),Kv(g),f.id}}return hn.length>=XI&&US(hn[0].id),hn=[...hn,u],Ku(),Kv(u),u.id}function Lh(e){const a=hn.find(s=>s.id===e);!a||a.state==="closing"||(ff(e),hn=hn.map(s=>s.id===e?{...s,state:"closing"}:s),Ku(),Vh.set(e,setTimeout(()=>{US(e)},JI)))}function tV(e){return Mh.add(e),()=>{Mh.delete(e)}}function Hv(){return hn}const nV=5*6e4,Tu=30*6e4,IF=3e4,VF=6e4,nr=3e4,aV=2e3,iV=3e4;function sV(){return new V4({defaultOptions:{queries:{staleTime:nV,retry:1,refetchOnWindowFocus:!1}},mutationCache:new L4({onError:(a,s,r,u)=>{u.meta?.skipGlobalErrorToast||rn({title:a instanceof Error?a.message:"An unexpected error occurred",tone:"negative"})}})})}const oV="modulepreload",rV=function(e,a){return new URL(e,a).href},Qv={},yi=function(a,s,r){let u=Promise.resolve();if(s&&s.length>0){let k=function(S){return Promise.all(S.map(A=>Promise.resolve(A).then(N=>({status:"fulfilled",value:N}),N=>({status:"rejected",reason:N}))))};const g=document.getElementsByTagName("link"),b=document.querySelector("meta[property=csp-nonce]"),v=b?.nonce||b?.getAttribute("nonce");u=k(s.map(S=>{if(S=rV(S,r),S in Qv)return;Qv[S]=!0;const A=S.endsWith(".css"),N=A?'[rel="stylesheet"]':"";if(r)for(let Z=g.length-1;Z>=0;Z--){const _=g[Z];if(_.href===S&&(!A||_.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${S}"]${N}`))return;const E=document.createElement("link");if(E.rel=A?"stylesheet":oV,A||(E.as="script"),E.crossOrigin="",E.href=S,v&&E.setAttribute("nonce",v),document.head.appendChild(E),A)return new Promise((Z,_)=>{E.addEventListener("load",Z),E.addEventListener("error",()=>_(new Error(`Unable to preload CSS for ${S}`)))})}))}function f(g){const b=new Event("vite:preloadError",{cancelable:!0});if(b.payload=g,window.dispatchEvent(b),!b.defaultPrevented)throw g}return u.then(g=>{for(const b of g||[])b.status==="rejected"&&f(b.reason);return a().catch(f)})};var lV=(e=>(e.Clicks="clicks",e.Impressions="impressions",e.CTR="ctr",e.Position="position",e))(lV||{});const LF={clicks:"Clicks",impressions:"Impressions",ctr:"CTR",position:"Position"},UF={clicks:"Clicks",impressions:"Impr",ctr:"CTR",position:"Pos"},cV=G0;function uV(e){const a=[];if(e.message&&a.push(e.message),e.providers)for(const[s,r]of Object.entries(e.providers)){const u=`[${s}] ${r.message}`;r.raw!==void 0?a.push(`${u}
53
-
54
- ${JSON.stringify(r.raw,null,2)}`):a.push(u)}return a.length>0?a.join(`
55
-
56
- `):"Run failed."}function dV(e){return e.split("-").map(a=>a.charAt(0).toUpperCase()+a.slice(1)).join(" ")}function GF(e){if(!e)return"—";try{return new Date(e).toLocaleString()}catch{return e}}function $F(e){return e===null?"Unknown":e?"Pass":"Fail"}function Fv(e){return e===0?"12:00 AM":e<12?`${e}:00 AM`:e===12?"12:00 PM":`${e-12}:00 PM`}function KF(e,a){return e==="twice-daily"?"twice-daily":e.startsWith("weekly@")?`${e}@${a}`:`daily@${a}`}function HF(e,a){if(!e)return{freq:"custom",hour:6,customCron:a};if(e==="twice-daily")return{freq:"twice-daily",hour:6,customCron:""};const s=e.match(/^daily(?:@(\d+))?$/);if(s)return{freq:"daily",hour:s[1]?parseInt(s[1]):6,customCron:""};const r=e.match(/^(weekly@(?:mon|tue|wed|thu|fri|sat|sun))(?:@(\d+))?$/);return r?{freq:r[1],hour:r[2]?parseInt(r[2]):6,customCron:""}:{freq:"custom",hour:6,customCron:a}}function QF(e,a,s){const r=s==="UTC"?"UTC":s.split("/").pop()?.replace(/_/g," ")??s;if(!e)return`Custom: ${a} · ${r}`;if(e==="twice-daily")return`Twice a day (6am & 6pm) · ${r}`;const u=e.match(/^daily(?:@(\d+))?$/);if(u){const g=u[1]?parseInt(u[1]):6;return`Every day at ${Fv(g)} · ${r}`}const f=e.match(/^weekly@(mon|tue|wed|thu|fri|sat|sun)(?:@(\d+))?$/);if(f){const g={mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday",sun:"Sunday"},b=f[2]?parseInt(f[2]):6;return`Every ${g[f[1]]} at ${Fv(b)} · ${r}`}return`${e} · ${r}`}function mV(e,a){return a&&a!==e?`${e} · ${a}`:e}function FF(){const e=Intl.DateTimeFormat().resolvedOptions().timeZone,a=new Intl.DateTimeFormat("en-US",{timeZoneName:"short"}).formatToParts().find(s=>s.type==="timeZoneName")?.value;return mV(e,a)}function pV(e){const a=e.replace(/\/+$/,"")||"/";return a==="/"?"overview":a==="/projects"?"projects":a.startsWith("/projects/")?"project":a==="/runs"?"runs":a==="/traffic"||a.startsWith("/traffic/")?"traffic":a==="/backlinks"?"backlinks":a==="/settings"?"settings":a==="/setup"?"setup":"other"}function hV(e,a){return!a||a.includes(e)}const GS=["overview","search-console","local","report","activity","backlinks","technical-aeo","history","settings"],fV=new Set(GS);function gV(e){const a=e??GS,s=[...new Set(a.filter(r=>fV.has(r)))];return s.length>0?s:["overview"]}function ZF(e){return e?gV(e.projectTabs):void 0}function YF(e,a){return hV(e,a)||!a?e:a.includes("overview")?"overview":a[0]??"overview"}const Zv={bg:"--canonry-embed-bg",fg:"--canonry-embed-fg",accent:"--color-link"},yV=/^(?:#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})|rgba?\([0-9.,%\s/]+\)|hsla?\([0-9.,%\s/a-z]+\))$/i;function bV(e){const a=e?.mode?.trim();return a==="light"||a==="dark"?a:void 0}function vV(e){if(!e)return{};const a={};for(const[s,r]of Object.entries(e)){const u=Object.hasOwn(Zv,s)?Zv[s]:void 0;if(!u||typeof r!="string")continue;const f=r.trim();yV.test(f)&&(a[u]=f)}return a}const ue=(e,a,s,r)=>{const u={_id:e,baseUrl:a?.baseUrl||(a?.client??O).getConfig().baseUrl};return s&&(u._infinite=s),a?.body&&(u.body=a.body),a?.headers&&(u.headers=a.headers),a?.path&&(u.path=a.path),a?.query&&(u.query=a.query),[u]},ts=e=>ue("getApiV1Projects",e),Zs=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await iB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:ts(e)}),xV=e=>ue("getApiV1ProjectsByName",e),kV=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await SS({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:xV(e)}),wV=e=>ue("getApiV1ProjectsByNameMeasurementPlan",e),XF=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await lB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:wV(e)}),SV=e=>ue("getApiV1ProjectsByNameMeasurementReport",e),JF=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await cB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:SV(e)}),jV=e=>ue("getApiV1ProjectsByNameMeasurementSetup",e),AV=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await uB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:jV(e)}),$l=(e,a)=>{const s={...e[0]};return a.body&&(s.body={...e[0].body,...a.body}),a.headers&&(s.headers={...e[0].headers,...a.headers}),a.path&&(s.path={...e[0].path,...a.path}),a.query&&(s.query={...e[0].query,...a.query}),s},WF=e=>({mutationFn:async s=>{const{data:r}=await dB({...e,...s,throwOnError:!0});return r}}),CV=e=>ue("getApiV1ProjectsByNameMeasurementOverview",e),eZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await jS({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:CV(e)}),NV=e=>ue("getApiV1ProjectsByNameMeasurementOverview",e,!0),tZ=e=>Dl({queryFn:async({pageParam:a,queryKey:s,signal:r})=>{const f=$l(s,typeof a=="object"?a:{query:{cursor:a}}),{data:g}=await jS({...e,...f,signal:r,throwOnError:!0});return g},queryKey:NV(e)}),_V=e=>ue("getApiV1ProjectsByNameVisibilityReport",e),nZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await mB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:_V(e)}),zV=e=>ue("getApiV1ProjectsByNameMeasurementPropertyEvidence",e,!0),aZ=e=>Dl({queryFn:async({pageParam:a,queryKey:s,signal:r})=>{const f=$l(s,typeof a=="object"?a:{query:{cursor:a}}),{data:g}=await pB({...e,...f,signal:r,throwOnError:!0});return g},queryKey:zV(e)}),EV=e=>ue("getApiV1ProjectsByNameMeasurementQuestionResult",e),iZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await hB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:EV(e)}),TV=e=>ue("getApiV1ProjectsByNameMeasurementPropertyCompetitors",e),sZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await fB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:TV(e)}),RV=e=>ue("getApiV1ProjectsByNameMeasurementQueryTemplates",e),oZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await gB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:RV(e)}),rZ=e=>({mutationFn:async s=>{const{data:r}=await yB({...e,...s,throwOnError:!0});return r}}),DV=e=>ue("getApiV1ProjectsByNameResearchRuns",e,!0),lZ=e=>Dl({queryFn:async({pageParam:a,queryKey:s,signal:r})=>{const f=$l(s,typeof a=="object"?a:{query:{cursor:a}}),{data:g}=await bB({...e,...f,signal:r,throwOnError:!0});return g},queryKey:DV(e)}),cZ=e=>({mutationFn:async s=>{const{data:r}=await vB({...e,...s,throwOnError:!0});return r}}),OV=e=>ue("getApiV1ProjectsByNameQueryTracking",e),uZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await xB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:OV(e)}),dZ=e=>({mutationFn:async s=>{const{data:r}=await kB({...e,...s,throwOnError:!0});return r}}),mZ=e=>({mutationFn:async s=>{const{data:r}=await wB({...e,...s,throwOnError:!0});return r}}),qV=e=>ue("getApiV1ProjectsByNameResearchRunsByRunId",e),pZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await SB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:qV(e)}),$S=e=>ue("getApiV1ProjectsByNameQueries",e),hZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await AS({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:$S(e)}),BV=e=>ue("getApiV1ProjectsByNameAnalyticsCompetitors",e),fZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await OB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:BV(e)}),PV=e=>ue("getApiV1ProjectsByNameRuns",e),MV=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await CS({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:PV(e)}),gf=e=>ue("getApiV1Runs",e),yf=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await BB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:gf(e)}),IV=e=>ue("getApiV1RunsById",e),bf=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await NS({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:IV(e)}),VV=e=>ue("getApiV1ProjectsByNameHistory",e),gZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await IB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:VV(e)}),LV=e=>ue("getApiV1History",e),yZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await VB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:LV(e)}),UV=e=>ue("getApiV1ProjectsByNameSnapshotsDiff",e),bZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await GB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:UV(e)}),GV=e=>ue("getApiV1Settings",e),$V=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await _S({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:GV(e)}),KV=e=>ue("getApiV1ProjectsByNameSchedule",e),HV=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await YB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:KV(e)}),QV=e=>ue("getApiV1ProjectsByNameSchedules",e),vZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await JB({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:QV(e)}),KS=e=>ue("getApiV1Telemetry",e),FV=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await aP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:KS(e)}),ZV=e=>({mutationFn:async s=>{const{data:r}=await iP({...e,...s,throwOnError:!0});return r}}),YV=e=>ue("getApiV1CdpStatus",e),XV=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await zS({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:YV(e)}),JV=e=>ue("getApiV1ProjectsByNameGoogleAdsStatus",e),xZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await oP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:JV(e)}),kZ=e=>({mutationFn:async s=>{const{data:r}=await rP({...e,...s,throwOnError:!0});return r}}),WV=e=>ue("getApiV1ProjectsByNameGoogleAdsCustomers",e),wZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await lP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:WV(e)}),SZ=e=>({mutationFn:async s=>{const{data:r}=await cP({...e,...s,throwOnError:!0});return r}}),jZ=e=>({mutationFn:async s=>{const{data:r}=await uP({...e,...s,throwOnError:!0});return r}}),eL=e=>ue("getApiV1ProjectsByNameGoogleAdsPerformance",e),AZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await dP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:eL(e)}),tL=e=>ue("getApiV1ProjectsByNameGoogleAdsSnapshots",e),CZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await mP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:tL(e)}),NZ=e=>({mutationFn:async s=>{const{data:r}=await pP({...e,...s,throwOnError:!0});return r}}),nL=e=>ue("getApiV1ProjectsByNameGtmStatus",e),_Z=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await hP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:nL(e)}),zZ=e=>({mutationFn:async s=>{const{data:r}=await fP({...e,...s,throwOnError:!0});return r}}),aL=e=>ue("getApiV1ProjectsByNameGtmAccounts",e),EZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await gP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:aL(e)}),iL=e=>ue("getApiV1ProjectsByNameGtmAccountsByAccountIdContainers",e),TZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await yP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:iL(e)}),sL=e=>ue("getApiV1ProjectsByNameGtmAccountsByAccountIdContainersByContainerIdWorkspaces",e),RZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await bP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:sL(e)}),DZ=e=>({mutationFn:async s=>{const{data:r}=await vP({...e,...s,throwOnError:!0});return r}}),OZ=e=>({mutationFn:async s=>{const{data:r}=await xP({...e,...s,throwOnError:!0});return r}}),oL=e=>ue("getApiV1ProjectsByNameGtmSnapshots",e),qZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await kP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:oL(e)}),BZ=e=>({mutationFn:async s=>{const{data:r}=await wP({...e,...s,throwOnError:!0});return r}}),rL=e=>ue("getApiV1ProjectsByNameConversionTrackingOptions",e),PZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await SP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:rL(e)}),lL=e=>ue("getApiV1ProjectsByNameConversionTrackingContracts",e),MZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await jP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:lL(e)}),IZ=e=>({mutationFn:async s=>{const{data:r}=await AP({...e,...s,throwOnError:!0});return r}}),cL=e=>ue("getApiV1ProjectsByNameConversionTrackingContractsByContractIdIntegrity",e),VZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await CP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:cL(e)}),uL=e=>ue("getApiV1ProjectsByNameGoogleConnections",e),LZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await NP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:uL(e)}),dL=e=>ue("getApiV1ProjectsByNameGoogleProperties",e),UZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await EP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:dL(e)}),mL=e=>ue("getApiV1ProjectsByNameGoogleGscPerformance",e),GZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await OP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:mL(e)}),pL=e=>ue("getApiV1ProjectsByNameGoogleGscPerformanceDaily",e),$Z=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await qP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:pL(e)}),hL=e=>ue("getApiV1ProjectsByNameGoogleGscInspections",e),KZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await PP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:hL(e)}),fL=e=>ue("getApiV1ProjectsByNameGoogleGscDeindexed",e),HZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await MP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:fL(e)}),gL=e=>ue("getApiV1ProjectsByNameGoogleGscCoverage",e),QZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await IP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:gL(e)}),yL=e=>ue("getApiV1ProjectsByNameGoogleGscCoverageHistory",e),FZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await VP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:yL(e)}),ZZ=e=>ue("getApiV1ProjectsByNameGoogleGscSitemaps",e),bL=e=>ue("getApiV1ProjectsByNameGbpLocations",e),YZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await $P({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:bL(e)}),XZ=e=>({mutationFn:async s=>{const{data:r}=await KP({...e,...s,throwOnError:!0});return r}}),JZ=e=>({mutationFn:async s=>{const{data:r}=await HP({...e,...s,throwOnError:!0});return r}}),vL=e=>ue("getApiV1ProjectsByNameGbpKeywords",e),WZ=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await QP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:vL(e)}),xL=e=>ue("getApiV1ProjectsByNameGbpPlaceActions",e),eY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await FP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:xL(e)}),kL=e=>ue("getApiV1ProjectsByNameGbpLodging",e),tY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await ZP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:kL(e)}),wL=e=>ue("getApiV1ProjectsByNameGbpPlaces",e),nY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await YP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:wL(e)}),SL=e=>ue("getApiV1ProjectsByNameGbpSummary",e),aY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await XP({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:SL(e)}),jL=e=>ue("getApiV1ProjectsByNameBingStatus",e),iY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await eM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:jL(e)}),AL=e=>ue("getApiV1ProjectsByNameBingSites",e),sY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await tM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:AL(e)}),CL=e=>ue("getApiV1ProjectsByNameBingCoverage",e),oY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await aM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:CL(e)}),NL=e=>ue("getApiV1ProjectsByNameBingInspections",e),rY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await iM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:NL(e)}),_L=e=>ue("getApiV1ProjectsByNameBingPerformance",e),lY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await lM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:_L(e)}),zL=e=>ue("getApiV1ProjectsByNameGaStatus",e),cY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await dM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:zL(e)}),EL=e=>ue("getApiV1ProjectsByNameGaTraffic",e),uY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await pM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:EL(e)}),TL=e=>ue("getApiV1ProjectsByNameGaAiReferralDaily",e),dY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await hM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:TL(e)}),RL=e=>ue("getApiV1ProjectsByNameGaSocialReferralHistory",e),mY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await fM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:RL(e)}),DL=e=>ue("getApiV1ProjectsByNameGaSessionHistory",e),pY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await gM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:DL(e)}),OL=e=>ue("getApiV1ProjectsByNameReport",e),hY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await bM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:OL(e)}),qL=e=>ue("getApiV1ProjectsByNameHealthHistory",e),fY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await vM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:qL(e)}),BL=e=>ue("getApiV1ProjectsByNameCitationsVisibility",e),gY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await xM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:BL(e)}),PL=e=>ue("getApiV1ProjectsByNameTrafficSources",e),yY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await VM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:PL(e)}),ML=e=>ue("getApiV1ProjectsByNameTrafficStatus",e),bY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await LM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:ML(e)}),IL=e=>ue("getApiV1ProjectsByNameTrafficSourcesById",e),vY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await UM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:IL(e)}),VL=e=>ue("getApiV1ProjectsByNameTrafficEvents",e),xY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await GM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:VL(e)}),LL=e=>ue("getApiV1ProjectsByNameDiscoverSessions",e),kY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await KM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:LL(e)}),UL=e=>ue("getApiV1ProjectsByNameDiscoverSessionsById",e),wY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await HM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:UL(e)}),GL=e=>ue("getApiV1ProjectsByNameTechnicalAeo",e),SY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await QM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:GL(e)}),$L=e=>ue("getApiV1ProjectsByNameTechnicalAeoPages",e),jY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await FM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:$L(e)}),KL=e=>ue("getApiV1ProjectsByNameTechnicalAeoTrend",e),AY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await ZM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:KL(e)}),HL=e=>ue("getApiV1ProjectsByNameTechnicalAeoCrawl",e),CY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await YM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:HL(e)}),QL=e=>ue("getApiV1ProjectsByNameTechnicalAeoGraph",e),NY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await XM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:QL(e)}),FL=e=>ue("getApiV1ProjectsByNameTechnicalAeoCrawlPagesAudit",e),_Y=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await JM({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:FL(e)}),ZL=e=>ue("getApiV1ProjectsByNameTechnicalAeoCrawlPages",e),zY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await ES({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:ZL(e)}),YL=e=>ue("getApiV1ProjectsByNameTechnicalAeoCrawlPages",e,!0),EY=e=>Dl({queryFn:async({pageParam:a,queryKey:s,signal:r})=>{const f=$l(s,typeof a=="object"?a:{query:{cursor:a}}),{data:g}=await ES({...e,...f,signal:r,throwOnError:!0});return g},queryKey:YL(e)}),XL=e=>ue("getApiV1ProjectsByNameTechnicalAeoStructure",e,!0),TY=e=>Dl({queryFn:async({pageParam:a,queryKey:s,signal:r})=>{const f=$l(s,typeof a=="object"?a:{query:{cursor:a}}),{data:g}=await WM({...e,...f,signal:r,throwOnError:!0});return g},queryKey:XL(e)}),JL=e=>ue("getApiV1ProjectsByNameTechnicalAeoInternalLinksNeighbors",e),RY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await eI({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:JL(e)}),WL=e=>ue("getApiV1ProjectsByNameTechnicalAeoDeadLinks",e),DY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await tI({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:WL(e)}),eU=e=>ue("getApiV1ProjectsByNameTechnicalAeoRuns",e),OY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await nI({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:eU(e)}),tU=e=>ue("getApiV1ProjectsByNameTechnicalAeoRunsByRunIdProgress",e),qY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await iI({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:tU(e)}),nU=e=>ue("getApiV1ProjectsByNameTechnicalAeoRunsByRunIdPageHealthPreview",e),BY=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await sI({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:nU(e)}),aU=e=>ue("getApiV1ProjectsByNameAgentProviders",e),iU=e=>pe({queryFn:async({queryKey:a,signal:s})=>{const{data:r}=await oI({...e,...a[0],signal:s,throwOnError:!0});return r},queryKey:aU(e)});function Yv(e){return e.state==="ok"?"positive":e.state==="checking"||e.state==="disabled"?"neutral":"negative"}function HS(e){switch(e){case"completed":return"positive";case"partial":return"caution";case"failed":return"negative";case"cancelled":return"caution";case"queued":case"running":return"neutral";default:return"neutral"}}function PY(e){switch(e){case"cited":return"positive";case"emerging":return"caution";case"not-cited":return"caution";case"lost":return"negative";case"pending":return"neutral";default:return"neutral"}}const MY={positive:"text-positive-400",caution:"text-caution-400",negative:"text-negative-400",neutral:"text-secondary"};function sU(e){return e.displayName??e.name.charAt(0).toUpperCase()+e.name.slice(1)}function ar(e){const a=[e.detail,e.hint].filter(Boolean);return a.length>0?a.join(`
57
- `):void 0}function oU(e,a,s){const r=e.filter(g=>g.id!=="mcp").map(g=>{if(g.id==="api")return{...g,tone:Yv(a.apiStatus),detail:a.apiStatus.state==="ok"?"Healthy":"Needs attention",meta:a.apiStatus.detail};if(g.id==="worker")return{...g,tone:Yv(a.workerStatus),detail:a.workerStatus.state==="ok"?"Healthy":a.workerStatus.state==="disabled"?"Disabled":"Needs attention",meta:a.workerStatus.detail};const b=s.providerStatuses.filter(A=>A.state==="ready").length,v=s.providerStatuses.length,k=b>0,S=s.providerStatuses.filter(A=>A.state==="ready").map(A=>sU(A)).join(" · ");return{...g,label:"Providers",tone:k?"positive":"caution",detail:`${b} of ${v} configured`,meta:S||"None configured"}}),u=a.apiStatus.mcp,f={id:"mcp",label:"MCP",tone:"neutral",detail:"Unknown",meta:"MCP status is not available from this server."};return a.apiStatus.state==="checking"?(f.detail="Checking",f.meta="Checking MCP availability."):a.apiStatus.state==="ok"&&u&&(u.status==="available"?(f.tone="positive",f.detail="Available",f.meta="MCP is available for agent connections. This checks the server transport, not an individual client connection."):u.status==="unavailable"?(f.tone="negative",f.detail="Unavailable",f.meta="The MCP transport is not fully available. Contact your Canonry team."):(f.detail="Not enabled",f.meta="This server does not provide an MCP endpoint.")),r.splice(Math.max(0,r.findIndex(g=>g.id==="api")+1),0,f),r}function rU(e,a){if(e.apiStatus.state!=="ok")return"Launch is blocked until the API responds cleanly.";if(e.apiStatus.databaseConfigured===!1)return"Launch is blocked until the API has a database connection configured.";if(e.workerStatus.state!=="ok")return"Launch is blocked until the worker is healthy and heartbeats are current.";if(!a.providerStatuses.some(s=>s.state==="ready"))return"Launch is blocked until at least one provider is configured."}function lU(e,a,s){const r=rU(a,s),u=structuredClone(e);return u.healthChecks=u.healthChecks.map(f=>{if(f.id==="api")return{...f,detail:a.apiStatus.detail,state:a.apiStatus.state==="ok"?"ready":"attention"};if(f.id==="worker")return{...f,detail:a.workerStatus.detail,state:a.workerStatus.state==="ok"?"ready":"attention"};const g=s.providerStatuses.some(b=>b.state==="ready");return{...f,detail:g?"At least one provider configured.":"No providers configured.",state:g?"ready":"attention"}}),u.launchState.enabled=r===void 0,u.launchState.blockedReason=r,u.launchState.summary=r??"Queue a visibility sweep first, then follow with a site audit to explain movement.",u}const QS="canonry.run-tracker",Uh=new Set;let Xv=!1,cU=0,Cd={runs:{},batches:{}};function uU(){const e=gi();for(const a of Uh)a(e)}function dU(e){if(!e)return{runs:{},batches:{}};try{const a=JSON.parse(e);return{runs:a.runs??{},batches:a.batches??{}}}catch{return{runs:{},batches:{}}}}function mU(){typeof window>"u"||window.sessionStorage.setItem(QS,JSON.stringify(Cd))}function FS(){Xv||(Xv=!0,!(typeof window>"u")&&(Cd=dU(window.sessionStorage.getItem(QS))))}function Nd(e){Cd=e,mU(),uU()}function gi(){return FS(),Cd}function ZS(e){return FS(),Uh.add(e),()=>{Uh.delete(e)}}function vf(e){const a=gi();Nd({...a,runs:{...a.runs,[e.id]:{runId:e.id,projectId:e.projectId,projectLabel:e.projectLabel,kind:e.kind,sourceAction:e.sourceAction,lastAnnouncedStatus:e.lastAnnouncedStatus??"queued",trackedAt:e.trackedAt??Date.now()}}})}function ch(e){const a=gi();if(!a.runs[e])return;const{[e]:s,...r}=a.runs;Nd({...a,runs:r})}function pU(e){const a=gi(),s=`batch_${Date.now()}_${++cU}`;return Nd({...a,batches:{...a.batches,[s]:{batchId:s,runIds:e.runIds,queuedCount:e.queuedCount,skippedCount:e.skippedCount}}}),s}function hU(e){const a=gi();if(!a.batches[e])return;const{[e]:s,...r}=a.batches;Nd({...a,batches:r})}function fU(e){return e==="completed"||e==="partial"||e==="failed"||e==="cancelled"}const gU=10*6e4;function yU(e,a,s,r){return e.filter(u=>!a.has(u.runId)&&s-(u.trackedAt??0)>=r)}function bU(e,a){let s=0,r=0,u=0,f=0,g=0;for(const b of e){const v=a[b]?.status;v==="completed"?s+=1:v==="partial"?r+=1:v==="failed"?u+=1:v==="cancelled"?f+=1:g+=1}return{completed:s,partial:r,failed:u,cancelled:f,pending:g,finished:g===0}}const Jv=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Wv=Vx,YS=(e,a)=>s=>{var r;if(a?.variants==null)return Wv(e,s?.class,s?.className);const{variants:u,defaultVariants:f}=a,g=Object.keys(u).map(k=>{const S=s?.[k],A=f?.[k];if(S===null)return null;const N=Jv(S)||Jv(A);return u[k][N]}),b=s&&Object.entries(s).reduce((k,S)=>{let[A,N]=S;return N===void 0||(k[A]=N),k},{}),v=a==null||(r=a.compoundVariants)===null||r===void 0?void 0:r.reduce((k,S)=>{let{class:A,className:N,...E}=S;return Object.entries(E).every(Z=>{let[_,G]=Z;return Array.isArray(G)?G.includes({...f,...b}[_]):{...f,...b}[_]===G})?[...k,A,N]:k},[]);return Wv(e,g,v,s?.class,s?.className)},vU=(e,a)=>{const s=new Array(e.length+a.length);for(let r=0;r<e.length;r++)s[r]=e[r];for(let r=0;r<a.length;r++)s[e.length+r]=a[r];return s},xU=(e,a)=>({classGroupId:e,validator:a}),XS=(e=new Map,a=null,s)=>({nextPart:e,validators:a,classGroupId:s}),Hu="-",ex=[],kU="arbitrary..",wU=e=>{const a=jU(e),{conflictingClassGroups:s,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:g=>{if(g.startsWith("[")&&g.endsWith("]"))return SU(g);const b=g.split(Hu),v=b[0]===""&&b.length>1?1:0;return JS(b,v,a)},getConflictingClassGroupIds:(g,b)=>{if(b){const v=r[g],k=s[g];return v?k?vU(k,v):v:k||ex}return s[g]||ex}}},JS=(e,a,s)=>{if(e.length-a===0)return s.classGroupId;const u=e[a],f=s.nextPart.get(u);if(f){const k=JS(e,a+1,f);if(k)return k}const g=s.validators;if(g===null)return;const b=a===0?e.join(Hu):e.slice(a).join(Hu),v=g.length;for(let k=0;k<v;k++){const S=g[k];if(S.validator(b))return S.classGroupId}},SU=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const a=e.slice(1,-1),s=a.indexOf(":"),r=a.slice(0,s);return r?kU+r:void 0})(),jU=e=>{const{theme:a,classGroups:s}=e;return AU(s,a)},AU=(e,a)=>{const s=XS();for(const r in e){const u=e[r];xf(u,s,r,a)}return s},xf=(e,a,s,r)=>{const u=e.length;for(let f=0;f<u;f++){const g=e[f];CU(g,a,s,r)}},CU=(e,a,s,r)=>{if(typeof e=="string"){NU(e,a,s);return}if(typeof e=="function"){_U(e,a,s,r);return}zU(e,a,s,r)},NU=(e,a,s)=>{const r=e===""?a:WS(a,e);r.classGroupId=s},_U=(e,a,s,r)=>{if(EU(e)){xf(e(r),a,s,r);return}a.validators===null&&(a.validators=[]),a.validators.push(xU(s,e))},zU=(e,a,s,r)=>{const u=Object.entries(e),f=u.length;for(let g=0;g<f;g++){const[b,v]=u[g];xf(v,WS(a,b),s,r)}},WS=(e,a)=>{let s=e;const r=a.split(Hu),u=r.length;for(let f=0;f<u;f++){const g=r[f];let b=s.nextPart.get(g);b||(b=XS(),s.nextPart.set(g,b)),s=b}return s},EU=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,TU=e=>{if(e<1)return{get:()=>{},set:()=>{}};let a=0,s=Object.create(null),r=Object.create(null);const u=(f,g)=>{s[f]=g,a++,a>e&&(a=0,r=s,s=Object.create(null))};return{get(f){let g=s[f];if(g!==void 0)return g;if((g=r[f])!==void 0)return u(f,g),g},set(f,g){f in s?s[f]=g:u(f,g)}}},Gh="!",tx=":",RU=[],nx=(e,a,s,r,u)=>({modifiers:e,hasImportantModifier:a,baseClassName:s,maybePostfixModifierPosition:r,isExternal:u}),DU=e=>{const{prefix:a,experimentalParseClassName:s}=e;let r=u=>{const f=[];let g=0,b=0,v=0,k;const S=u.length;for(let _=0;_<S;_++){const G=u[_];if(g===0&&b===0){if(G===tx){f.push(u.slice(v,_)),v=_+1;continue}if(G==="/"){k=_;continue}}G==="["?g++:G==="]"?g--:G==="("?b++:G===")"&&b--}const A=f.length===0?u:u.slice(v);let N=A,E=!1;A.endsWith(Gh)?(N=A.slice(0,-1),E=!0):A.startsWith(Gh)&&(N=A.slice(1),E=!0);const Z=k&&k>v?k-v:void 0;return nx(f,E,N,Z)};if(a){const u=a+tx,f=r;r=g=>g.startsWith(u)?f(g.slice(u.length)):nx(RU,!1,g,void 0,!0)}if(s){const u=r;r=f=>s({className:f,parseClassName:u})}return r},OU=e=>{const a=new Map;return e.orderSensitiveModifiers.forEach((s,r)=>{a.set(s,1e6+r)}),s=>{const r=[];let u=[];for(let f=0;f<s.length;f++){const g=s[f],b=g[0]==="[",v=a.has(g);b||v?(u.length>0&&(u.sort(),r.push(...u),u=[]),r.push(g)):u.push(g)}return u.length>0&&(u.sort(),r.push(...u)),r}},qU=e=>({cache:TU(e.cacheSize),parseClassName:DU(e),sortModifiers:OU(e),...wU(e)}),BU=/\s+/,PU=(e,a)=>{const{parseClassName:s,getClassGroupId:r,getConflictingClassGroupIds:u,sortModifiers:f}=a,g=[],b=e.trim().split(BU);let v="";for(let k=b.length-1;k>=0;k-=1){const S=b[k],{isExternal:A,modifiers:N,hasImportantModifier:E,baseClassName:Z,maybePostfixModifierPosition:_}=s(S);if(A){v=S+(v.length>0?" "+v:v);continue}let G=!!_,K=r(G?Z.substring(0,_):Z);if(!K){if(!G){v=S+(v.length>0?" "+v:v);continue}if(K=r(Z),!K){v=S+(v.length>0?" "+v:v);continue}G=!1}const te=N.length===0?"":N.length===1?N[0]:f(N).join(":"),Q=E?te+Gh:te,re=Q+K;if(g.indexOf(re)>-1)continue;g.push(re);const W=u(K,G);for(let oe=0;oe<W.length;++oe){const H=W[oe];g.push(Q+H)}v=S+(v.length>0?" "+v:v)}return v},MU=(...e)=>{let a=0,s,r,u="";for(;a<e.length;)(s=e[a++])&&(r=e3(s))&&(u&&(u+=" "),u+=r);return u},e3=e=>{if(typeof e=="string")return e;let a,s="";for(let r=0;r<e.length;r++)e[r]&&(a=e3(e[r]))&&(s&&(s+=" "),s+=a);return s},IU=(e,...a)=>{let s,r,u,f;const g=v=>{const k=a.reduce((S,A)=>A(S),e());return s=qU(k),r=s.cache.get,u=s.cache.set,f=b,b(v)},b=v=>{const k=r(v);if(k)return k;const S=PU(v,s);return u(v,S),S};return f=g,(...v)=>f(MU(...v))},VU=[],Qt=e=>{const a=s=>s[e]||VU;return a.isThemeGetter=!0,a},t3=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,n3=/^\((?:(\w[\w-]*):)?(.+)\)$/i,LU=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,UU=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,GU=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,$U=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,KU=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,HU=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Fi=e=>LU.test(e),Ze=e=>!!e&&!Number.isNaN(Number(e)),Zi=e=>!!e&&Number.isInteger(Number(e)),uh=e=>e.endsWith("%")&&Ze(e.slice(0,-1)),mi=e=>UU.test(e),a3=()=>!0,QU=e=>GU.test(e)&&!$U.test(e),kf=()=>!1,FU=e=>KU.test(e),ZU=e=>HU.test(e),YU=e=>!ke(e)&&!we(e),XU=e=>cs(e,o3,kf),ke=e=>t3.test(e),Bs=e=>cs(e,r3,QU),ax=e=>cs(e,sG,Ze),JU=e=>cs(e,c3,a3),WU=e=>cs(e,l3,kf),ix=e=>cs(e,i3,kf),eG=e=>cs(e,s3,ZU),ju=e=>cs(e,u3,FU),we=e=>n3.test(e),gl=e=>Ys(e,r3),tG=e=>Ys(e,l3),sx=e=>Ys(e,i3),nG=e=>Ys(e,o3),aG=e=>Ys(e,s3),Au=e=>Ys(e,u3,!0),iG=e=>Ys(e,c3,!0),cs=(e,a,s)=>{const r=t3.exec(e);return r?r[1]?a(r[1]):s(r[2]):!1},Ys=(e,a,s=!1)=>{const r=n3.exec(e);return r?r[1]?a(r[1]):s:!1},i3=e=>e==="position"||e==="percentage",s3=e=>e==="image"||e==="url",o3=e=>e==="length"||e==="size"||e==="bg-size",r3=e=>e==="length",sG=e=>e==="number",l3=e=>e==="family-name",c3=e=>e==="number"||e==="weight",u3=e=>e==="shadow",oG=()=>{const e=Qt("color"),a=Qt("font"),s=Qt("text"),r=Qt("font-weight"),u=Qt("tracking"),f=Qt("leading"),g=Qt("breakpoint"),b=Qt("container"),v=Qt("spacing"),k=Qt("radius"),S=Qt("shadow"),A=Qt("inset-shadow"),N=Qt("text-shadow"),E=Qt("drop-shadow"),Z=Qt("blur"),_=Qt("perspective"),G=Qt("aspect"),K=Qt("ease"),te=Qt("animate"),Q=()=>["auto","avoid","all","avoid-page","page","left","right","column"],re=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],W=()=>[...re(),we,ke],oe=()=>["auto","hidden","clip","visible","scroll"],H=()=>["auto","contain","none"],$=()=>[we,ke,v],Te=()=>[Fi,"full","auto",...$()],Ke=()=>[Zi,"none","subgrid",we,ke],Fe=()=>["auto",{span:["full",Zi,we,ke]},Zi,we,ke],Re=()=>[Zi,"auto",we,ke],ve=()=>["auto","min","max","fr",we,ke],Ue=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],be=()=>["start","end","center","stretch","center-safe","end-safe"],P=()=>["auto",...$()],ae=()=>[Fi,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...$()],he=()=>[Fi,"screen","full","dvw","lvw","svw","min","max","fit",...$()],je=()=>[Fi,"screen","full","lh","dvh","lvh","svh","min","max","fit",...$()],X=()=>[e,we,ke],Ie=()=>[...re(),sx,ix,{position:[we,ke]}],Ne=()=>["no-repeat",{repeat:["","x","y","space","round"]}],Ae=()=>["auto","cover","contain",nG,XU,{size:[we,ke]}],ne=()=>[uh,gl,Bs],V=()=>["","none","full",k,we,ke],q=()=>["",Ze,gl,Bs],le=()=>["solid","dashed","dotted","double"],De=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],ye=()=>[Ze,uh,sx,ix],Je=()=>["","none",Z,we,ke],Ge=()=>["none",Ze,we,ke],Be=()=>["none",Ze,we,ke],de=()=>[Ze,we,ke],Me=()=>[Fi,"full",...$()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[mi],breakpoint:[mi],color:[a3],container:[mi],"drop-shadow":[mi],ease:["in","out","in-out"],font:[YU],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[mi],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[mi],shadow:[mi],spacing:["px",Ze],text:[mi],"text-shadow":[mi],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Fi,ke,we,G]}],container:["container"],columns:[{columns:[Ze,ke,we,b]}],"break-after":[{"break-after":Q()}],"break-before":[{"break-before":Q()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:W()}],overflow:[{overflow:oe()}],"overflow-x":[{"overflow-x":oe()}],"overflow-y":[{"overflow-y":oe()}],overscroll:[{overscroll:H()}],"overscroll-x":[{"overscroll-x":H()}],"overscroll-y":[{"overscroll-y":H()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:Te()}],"inset-x":[{"inset-x":Te()}],"inset-y":[{"inset-y":Te()}],start:[{"inset-s":Te(),start:Te()}],end:[{"inset-e":Te(),end:Te()}],"inset-bs":[{"inset-bs":Te()}],"inset-be":[{"inset-be":Te()}],top:[{top:Te()}],right:[{right:Te()}],bottom:[{bottom:Te()}],left:[{left:Te()}],visibility:["visible","invisible","collapse"],z:[{z:[Zi,"auto",we,ke]}],basis:[{basis:[Fi,"full","auto",b,...$()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ze,Fi,"auto","initial","none",ke]}],grow:[{grow:["",Ze,we,ke]}],shrink:[{shrink:["",Ze,we,ke]}],order:[{order:[Zi,"first","last","none",we,ke]}],"grid-cols":[{"grid-cols":Ke()}],"col-start-end":[{col:Fe()}],"col-start":[{"col-start":Re()}],"col-end":[{"col-end":Re()}],"grid-rows":[{"grid-rows":Ke()}],"row-start-end":[{row:Fe()}],"row-start":[{"row-start":Re()}],"row-end":[{"row-end":Re()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":ve()}],"auto-rows":[{"auto-rows":ve()}],gap:[{gap:$()}],"gap-x":[{"gap-x":$()}],"gap-y":[{"gap-y":$()}],"justify-content":[{justify:[...Ue(),"normal"]}],"justify-items":[{"justify-items":[...be(),"normal"]}],"justify-self":[{"justify-self":["auto",...be()]}],"align-content":[{content:["normal",...Ue()]}],"align-items":[{items:[...be(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...be(),{baseline:["","last"]}]}],"place-content":[{"place-content":Ue()}],"place-items":[{"place-items":[...be(),"baseline"]}],"place-self":[{"place-self":["auto",...be()]}],p:[{p:$()}],px:[{px:$()}],py:[{py:$()}],ps:[{ps:$()}],pe:[{pe:$()}],pbs:[{pbs:$()}],pbe:[{pbe:$()}],pt:[{pt:$()}],pr:[{pr:$()}],pb:[{pb:$()}],pl:[{pl:$()}],m:[{m:P()}],mx:[{mx:P()}],my:[{my:P()}],ms:[{ms:P()}],me:[{me:P()}],mbs:[{mbs:P()}],mbe:[{mbe:P()}],mt:[{mt:P()}],mr:[{mr:P()}],mb:[{mb:P()}],ml:[{ml:P()}],"space-x":[{"space-x":$()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":$()}],"space-y-reverse":["space-y-reverse"],size:[{size:ae()}],"inline-size":[{inline:["auto",...he()]}],"min-inline-size":[{"min-inline":["auto",...he()]}],"max-inline-size":[{"max-inline":["none",...he()]}],"block-size":[{block:["auto",...je()]}],"min-block-size":[{"min-block":["auto",...je()]}],"max-block-size":[{"max-block":["none",...je()]}],w:[{w:[b,"screen",...ae()]}],"min-w":[{"min-w":[b,"screen","none",...ae()]}],"max-w":[{"max-w":[b,"screen","none","prose",{screen:[g]},...ae()]}],h:[{h:["screen","lh",...ae()]}],"min-h":[{"min-h":["screen","lh","none",...ae()]}],"max-h":[{"max-h":["screen","lh",...ae()]}],"font-size":[{text:["base",s,gl,Bs]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,iG,JU]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",uh,ke]}],"font-family":[{font:[tG,WU,a]}],"font-features":[{"font-features":[ke]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[u,we,ke]}],"line-clamp":[{"line-clamp":[Ze,"none",we,ax]}],leading:[{leading:[f,...$()]}],"list-image":[{"list-image":["none",we,ke]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",we,ke]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:X()}],"text-color":[{text:X()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...le(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ze,"from-font","auto",we,Bs]}],"text-decoration-color":[{decoration:X()}],"underline-offset":[{"underline-offset":[Ze,"auto",we,ke]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:$()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",we,ke]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",we,ke]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ie()}],"bg-repeat":[{bg:Ne()}],"bg-size":[{bg:Ae()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Zi,we,ke],radial:["",we,ke],conic:[Zi,we,ke]},aG,eG]}],"bg-color":[{bg:X()}],"gradient-from-pos":[{from:ne()}],"gradient-via-pos":[{via:ne()}],"gradient-to-pos":[{to:ne()}],"gradient-from":[{from:X()}],"gradient-via":[{via:X()}],"gradient-to":[{to:X()}],rounded:[{rounded:V()}],"rounded-s":[{"rounded-s":V()}],"rounded-e":[{"rounded-e":V()}],"rounded-t":[{"rounded-t":V()}],"rounded-r":[{"rounded-r":V()}],"rounded-b":[{"rounded-b":V()}],"rounded-l":[{"rounded-l":V()}],"rounded-ss":[{"rounded-ss":V()}],"rounded-se":[{"rounded-se":V()}],"rounded-ee":[{"rounded-ee":V()}],"rounded-es":[{"rounded-es":V()}],"rounded-tl":[{"rounded-tl":V()}],"rounded-tr":[{"rounded-tr":V()}],"rounded-br":[{"rounded-br":V()}],"rounded-bl":[{"rounded-bl":V()}],"border-w":[{border:q()}],"border-w-x":[{"border-x":q()}],"border-w-y":[{"border-y":q()}],"border-w-s":[{"border-s":q()}],"border-w-e":[{"border-e":q()}],"border-w-bs":[{"border-bs":q()}],"border-w-be":[{"border-be":q()}],"border-w-t":[{"border-t":q()}],"border-w-r":[{"border-r":q()}],"border-w-b":[{"border-b":q()}],"border-w-l":[{"border-l":q()}],"divide-x":[{"divide-x":q()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":q()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...le(),"hidden","none"]}],"divide-style":[{divide:[...le(),"hidden","none"]}],"border-color":[{border:X()}],"border-color-x":[{"border-x":X()}],"border-color-y":[{"border-y":X()}],"border-color-s":[{"border-s":X()}],"border-color-e":[{"border-e":X()}],"border-color-bs":[{"border-bs":X()}],"border-color-be":[{"border-be":X()}],"border-color-t":[{"border-t":X()}],"border-color-r":[{"border-r":X()}],"border-color-b":[{"border-b":X()}],"border-color-l":[{"border-l":X()}],"divide-color":[{divide:X()}],"outline-style":[{outline:[...le(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ze,we,ke]}],"outline-w":[{outline:["",Ze,gl,Bs]}],"outline-color":[{outline:X()}],shadow:[{shadow:["","none",S,Au,ju]}],"shadow-color":[{shadow:X()}],"inset-shadow":[{"inset-shadow":["none",A,Au,ju]}],"inset-shadow-color":[{"inset-shadow":X()}],"ring-w":[{ring:q()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:X()}],"ring-offset-w":[{"ring-offset":[Ze,Bs]}],"ring-offset-color":[{"ring-offset":X()}],"inset-ring-w":[{"inset-ring":q()}],"inset-ring-color":[{"inset-ring":X()}],"text-shadow":[{"text-shadow":["none",N,Au,ju]}],"text-shadow-color":[{"text-shadow":X()}],opacity:[{opacity:[Ze,we,ke]}],"mix-blend":[{"mix-blend":[...De(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":De()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Ze]}],"mask-image-linear-from-pos":[{"mask-linear-from":ye()}],"mask-image-linear-to-pos":[{"mask-linear-to":ye()}],"mask-image-linear-from-color":[{"mask-linear-from":X()}],"mask-image-linear-to-color":[{"mask-linear-to":X()}],"mask-image-t-from-pos":[{"mask-t-from":ye()}],"mask-image-t-to-pos":[{"mask-t-to":ye()}],"mask-image-t-from-color":[{"mask-t-from":X()}],"mask-image-t-to-color":[{"mask-t-to":X()}],"mask-image-r-from-pos":[{"mask-r-from":ye()}],"mask-image-r-to-pos":[{"mask-r-to":ye()}],"mask-image-r-from-color":[{"mask-r-from":X()}],"mask-image-r-to-color":[{"mask-r-to":X()}],"mask-image-b-from-pos":[{"mask-b-from":ye()}],"mask-image-b-to-pos":[{"mask-b-to":ye()}],"mask-image-b-from-color":[{"mask-b-from":X()}],"mask-image-b-to-color":[{"mask-b-to":X()}],"mask-image-l-from-pos":[{"mask-l-from":ye()}],"mask-image-l-to-pos":[{"mask-l-to":ye()}],"mask-image-l-from-color":[{"mask-l-from":X()}],"mask-image-l-to-color":[{"mask-l-to":X()}],"mask-image-x-from-pos":[{"mask-x-from":ye()}],"mask-image-x-to-pos":[{"mask-x-to":ye()}],"mask-image-x-from-color":[{"mask-x-from":X()}],"mask-image-x-to-color":[{"mask-x-to":X()}],"mask-image-y-from-pos":[{"mask-y-from":ye()}],"mask-image-y-to-pos":[{"mask-y-to":ye()}],"mask-image-y-from-color":[{"mask-y-from":X()}],"mask-image-y-to-color":[{"mask-y-to":X()}],"mask-image-radial":[{"mask-radial":[we,ke]}],"mask-image-radial-from-pos":[{"mask-radial-from":ye()}],"mask-image-radial-to-pos":[{"mask-radial-to":ye()}],"mask-image-radial-from-color":[{"mask-radial-from":X()}],"mask-image-radial-to-color":[{"mask-radial-to":X()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":re()}],"mask-image-conic-pos":[{"mask-conic":[Ze]}],"mask-image-conic-from-pos":[{"mask-conic-from":ye()}],"mask-image-conic-to-pos":[{"mask-conic-to":ye()}],"mask-image-conic-from-color":[{"mask-conic-from":X()}],"mask-image-conic-to-color":[{"mask-conic-to":X()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ie()}],"mask-repeat":[{mask:Ne()}],"mask-size":[{mask:Ae()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",we,ke]}],filter:[{filter:["","none",we,ke]}],blur:[{blur:Je()}],brightness:[{brightness:[Ze,we,ke]}],contrast:[{contrast:[Ze,we,ke]}],"drop-shadow":[{"drop-shadow":["","none",E,Au,ju]}],"drop-shadow-color":[{"drop-shadow":X()}],grayscale:[{grayscale:["",Ze,we,ke]}],"hue-rotate":[{"hue-rotate":[Ze,we,ke]}],invert:[{invert:["",Ze,we,ke]}],saturate:[{saturate:[Ze,we,ke]}],sepia:[{sepia:["",Ze,we,ke]}],"backdrop-filter":[{"backdrop-filter":["","none",we,ke]}],"backdrop-blur":[{"backdrop-blur":Je()}],"backdrop-brightness":[{"backdrop-brightness":[Ze,we,ke]}],"backdrop-contrast":[{"backdrop-contrast":[Ze,we,ke]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ze,we,ke]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ze,we,ke]}],"backdrop-invert":[{"backdrop-invert":["",Ze,we,ke]}],"backdrop-opacity":[{"backdrop-opacity":[Ze,we,ke]}],"backdrop-saturate":[{"backdrop-saturate":[Ze,we,ke]}],"backdrop-sepia":[{"backdrop-sepia":["",Ze,we,ke]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":$()}],"border-spacing-x":[{"border-spacing-x":$()}],"border-spacing-y":[{"border-spacing-y":$()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",we,ke]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ze,"initial",we,ke]}],ease:[{ease:["linear","initial",K,we,ke]}],delay:[{delay:[Ze,we,ke]}],animate:[{animate:["none",te,we,ke]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[_,we,ke]}],"perspective-origin":[{"perspective-origin":W()}],rotate:[{rotate:Ge()}],"rotate-x":[{"rotate-x":Ge()}],"rotate-y":[{"rotate-y":Ge()}],"rotate-z":[{"rotate-z":Ge()}],scale:[{scale:Be()}],"scale-x":[{"scale-x":Be()}],"scale-y":[{"scale-y":Be()}],"scale-z":[{"scale-z":Be()}],"scale-3d":["scale-3d"],skew:[{skew:de()}],"skew-x":[{"skew-x":de()}],"skew-y":[{"skew-y":de()}],transform:[{transform:[we,ke,"","none","gpu","cpu"]}],"transform-origin":[{origin:W()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Me()}],"translate-x":[{"translate-x":Me()}],"translate-y":[{"translate-y":Me()}],"translate-z":[{"translate-z":Me()}],"translate-none":["translate-none"],accent:[{accent:X()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:X()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",we,ke]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":$()}],"scroll-mx":[{"scroll-mx":$()}],"scroll-my":[{"scroll-my":$()}],"scroll-ms":[{"scroll-ms":$()}],"scroll-me":[{"scroll-me":$()}],"scroll-mbs":[{"scroll-mbs":$()}],"scroll-mbe":[{"scroll-mbe":$()}],"scroll-mt":[{"scroll-mt":$()}],"scroll-mr":[{"scroll-mr":$()}],"scroll-mb":[{"scroll-mb":$()}],"scroll-ml":[{"scroll-ml":$()}],"scroll-p":[{"scroll-p":$()}],"scroll-px":[{"scroll-px":$()}],"scroll-py":[{"scroll-py":$()}],"scroll-ps":[{"scroll-ps":$()}],"scroll-pe":[{"scroll-pe":$()}],"scroll-pbs":[{"scroll-pbs":$()}],"scroll-pbe":[{"scroll-pbe":$()}],"scroll-pt":[{"scroll-pt":$()}],"scroll-pr":[{"scroll-pr":$()}],"scroll-pb":[{"scroll-pb":$()}],"scroll-pl":[{"scroll-pl":$()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",we,ke]}],fill:[{fill:["none",...X()]}],"stroke-w":[{stroke:[Ze,gl,Bs,ax]}],stroke:[{stroke:["none",...X()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},rG=IU(oG);function fa(...e){return rG(Vx(e))}const lG=YS("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-mono-400 focus-visible:ring-offset-2 focus-visible:ring-offset-overlay-scrim disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-accent text-on-inverse hover:bg-mono-200",secondary:"border border-base bg-bg text-heading hover:bg-bg-elevated",ghost:"text-secondary hover:bg-bg-elevated hover:text-primary",outline:"border border-base bg-transparent text-heading hover:bg-bg-elevated",destructive:"bg-negative-600 text-on-emphasis hover:bg-negative-700"},size:{default:"h-10 px-4 md:h-9",sm:"h-9 px-3 text-xs md:h-8",icon:"size-10 md:size-9"}},defaultVariants:{variant:"default",size:"default"}}),fe=T.forwardRef(({className:e,variant:a,size:s,asChild:r=!1,...u},f)=>{const g=r?Z4:"button";return c.jsx(g,{ref:f,className:fa(lG({variant:a,size:s,className:e})),...u})});fe.displayName="Button";const cG=YS("inline-flex items-center rounded-md border px-2 py-0.5 text-[11px] font-medium tracking-wide",{variants:{variant:{neutral:"border-base bg-bg text-neutral",success:"border-positive bg-positive-soft text-positive",warning:"border-caution-500/25 bg-caution-soft text-caution",destructive:"border-negative bg-negative-soft text-negative"}},defaultVariants:{variant:"neutral"}});function d3({className:e,variant:a,...s}){return c.jsx("div",{className:fa(cG({variant:a}),e),...s})}const uG=220;function ox({compact:e=!1,version:a,updateAvailable:s,onDismissUpdate:r}){const u=!e&&a&&a!=="unknown",[f,g]=T.useState(!1),b=!e&&s&&r,v=()=>{g(!0),window.setTimeout(()=>{r?.(),g(!1)},uG)};return e?c.jsxs(tt,{to:"/",className:"brand-lockup brand-lockup-compact","aria-label":"Canonry home",children:[c.jsx("img",{className:"brand-icon",src:"./favicon.svg",alt:"","aria-hidden":"true"}),c.jsx("span",{className:"brand-copy",children:c.jsx("span",{className:"brand-mark",children:"Canonry"})})]}):c.jsxs("div",{className:"brand-lockup brand-lockup-wrapper",children:[c.jsx(tt,{to:"/",className:"brand-icon-link","aria-label":"Canonry home",tabIndex:-1,children:c.jsx("img",{className:"brand-icon",src:"./favicon.svg",alt:"","aria-hidden":"true"})}),c.jsxs("div",{className:"brand-copy",children:[c.jsx(tt,{to:"/",className:"brand-mark",children:"Canonry"}),!b&&u?c.jsxs("span",{className:"brand-version",children:["v",a]}):null]}),b?c.jsxs("span",{className:`brand-update-bubble ${f?"brand-update-bubble-closing":""}`,role:"status","aria-live":"polite",children:[c.jsxs("a",{className:"brand-update-bubble-link",href:s.url,target:"_blank",rel:"noopener noreferrer",title:`Open release: ${s.upgradeCommand}`,"aria-label":`New version v${s.latest} available — open release page`,children:[c.jsxs("span",{className:"brand-update-bubble-from",children:["v",s.current]}),c.jsx(Y4,{className:"brand-update-bubble-arrow size-3","aria-hidden":"true"}),c.jsxs("span",{className:"brand-update-bubble-to",children:["v",s.latest]})]}),c.jsx("button",{type:"button",className:"brand-update-bubble-dismiss",onClick:v,"aria-label":`Dismiss update notification for v${s.latest}`,children:c.jsx(sr,{className:"size-3","aria-hidden":"true"})})]}):null]})}function dG({provider:e}){const a={gemini:"border-blue-800/50 bg-blue-950/40 text-blue-300",openai:"border-green-800/50 bg-green-950/40 text-green-300",claude:"border-amber-800/50 bg-amber-950/40 text-amber-300",perplexity:"border-teal-800/50 bg-teal-950/40 text-teal-300",local:"border-purple-800/50 bg-purple-950/40 text-purple-300"},r=Object.hasOwn(a,e)?`provider-badge--${e} ${a[e]}`:"border-zinc-700 bg-zinc-800 text-zinc-300";return c.jsx("span",{className:`inline-flex items-center rounded-full border px-2 py-0.5 text-[10px] font-medium uppercase tracking-wide ${r}`,children:e})}function pn({tone:e,children:a,...s}){const r=e==="positive"?"success":e==="caution"?"warning":e==="negative"?"destructive":"neutral";return c.jsx(d3,{variant:r,...s,children:a})}function wf({status:e}){return c.jsx(pn,{tone:HS(e),children:dV(e)})}const mG=Ix,pG=Bx,m3=T.forwardRef(({className:e,...a},s)=>c.jsx(Zh,{ref:s,className:fa("fixed inset-0 z-50 bg-overlay-scrim/70 backdrop-blur-sm",e),...a}));m3.displayName=Zh.displayName;const hG=400,fG=1200,gG=720,p3=T.forwardRef(({className:e,children:a,...s},r)=>{const[u,f]=T.useState(gG),g=T.useRef(!1),b=T.useRef(0),v=T.useRef(0),k=T.useCallback(N=>{g.current=!0,b.current=N.clientX,v.current=u,N.target.setPointerCapture(N.pointerId),N.preventDefault()},[u]),S=T.useCallback(N=>{if(!g.current)return;const E=b.current-N.clientX,Z=Math.min(fG,Math.max(hG,v.current+E));f(Z)},[]),A=T.useCallback(()=>{g.current=!1},[]);return c.jsxs(pG,{children:[c.jsx(m3,{}),c.jsxs(Yh,{ref:r,className:fa("fixed z-50 flex flex-col bg-bg px-5 py-4 shadow-2xl overflow-hidden","max-md:inset-x-0 max-md:bottom-0 max-md:top-auto max-md:max-h-[88vh] max-md:rounded-t-2xl max-md:border-t","md:inset-y-0 md:right-0 md:h-full md:border-l","border-base",e),style:{width:`min(${u}px, 100vw)`},...s,children:[c.jsx("div",{className:"absolute inset-y-0 left-0 w-1.5 cursor-col-resize hover:bg-mono-700/50 active:bg-mono-600/50 transition-colors max-md:hidden",onPointerDown:k,onPointerMove:S,onPointerUp:A}),a,c.jsxs(Px,{className:"absolute right-4 top-4 inline-flex size-8 items-center justify-center rounded-md text-muted transition hover:bg-bg-elevated hover:text-heading focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-mono-400",children:[c.jsx(sr,{className:"size-4"}),c.jsx("span",{className:"sr-only",children:"Close"})]})]})]})});p3.displayName=Yh.displayName;const yG=({className:e,...a})=>c.jsx("div",{className:fa("flex flex-col gap-1.5 pr-10",e),...a}),h3=T.forwardRef(({className:e,...a},s)=>c.jsx(Xh,{ref:s,className:fa("text-lg font-medium text-primary",e),...a}));h3.displayName=Xh.displayName;const f3=T.forwardRef(({className:e,...a},s)=>c.jsx(Mx,{ref:s,className:fa("text-sm text-muted",e),...a}));f3.displayName=Mx.displayName;function Cu({title:e,subtitle:a,children:s,open:r,onClose:u}){return c.jsx(mG,{open:r,onOpenChange:f=>f?void 0:u(),children:c.jsxs(p3,{children:[c.jsxs(yG,{className:"drawer-head",children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:a}),c.jsx(h3,{id:"drawer-title",children:e}),c.jsx(f3,{className:"sr-only",children:a})]}),c.jsx("div",{className:"drawer-body",children:s})]})})}function yl({text:e}){const[a,s]=T.useState(null),r=T.useRef(null),u=T.useCallback(()=>{if(!r.current)return;const b=r.current.getBoundingClientRect();s({top:b.top,left:b.left+b.width/2})},[]),f=T.useCallback(()=>s(null),[]),g=T.useCallback(()=>{a===null?u():f()},[a,u,f]);return c.jsxs("span",{className:"info-tooltip-wrapper",onMouseEnter:u,onMouseLeave:f,children:[c.jsx("button",{ref:r,type:"button",className:"info-tooltip-trigger","aria-label":e,"aria-expanded":a!==null,onFocus:u,onBlur:f,onClick:g,onKeyDown:b=>{b.key==="Escape"&&f()},children:c.jsxs("svg",{className:"info-tooltip-icon",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[c.jsx("circle",{cx:"8",cy:"8",r:"7",stroke:"currentColor",strokeWidth:"1.5"}),c.jsx("path",{d:"M8 7v4M8 5.5v0",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}),a!==null&&U4.createPortal(c.jsx("span",{"aria-hidden":"true",style:{position:"fixed",top:a.top,left:a.left,transform:"translateX(-50%) translateY(calc(-100% - 8px))",zIndex:9999,pointerEvents:"none",width:"14rem",padding:"0.5rem 0.75rem",fontSize:"11px",fontWeight:400,textTransform:"none",letterSpacing:"normal",lineHeight:"1rem",color:"var(--color-neutral-text)",backgroundColor:"var(--color-bg-elevated)",border:"1px solid color-mix(in oklab, var(--color-border-strong) 60%, transparent)",borderRadius:"0.5rem",boxShadow:"0 10px 15px -3px var(--color-shadow-tooltip), 0 4px 6px -4px var(--color-shadow-tooltip)"},children:e}),document.body)]})}const bG=/[\s\-_]+/;function vG(e){const a=e.split(bG).filter(Boolean);return a.length===0?null:a.map(s=>s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("[\\s\\-_]*")}function rx(e,a){const s=xG(a),r=e.split(/(\*\*[^*]+\*\*)/).filter(Boolean).map(k=>k.startsWith("**")&&k.endsWith("**")?{type:"bold",value:k.slice(2,-2)}:{type:"text",value:k}),u=s.flatMap(k=>k.terms).filter(k=>k.trim().length>1);if(u.length===0)return r.map((k,S)=>k.type==="bold"?Io.createElement("strong",{key:`b-${S}`,className:"text-strong font-semibold"},k.value):k.value).filter(Boolean);const g=[...u].sort((k,S)=>S.length-k.length).map(vG).filter(k=>!!k);if(g.length===0)return r.map((k,S)=>k.type==="bold"?Io.createElement("strong",{key:`b-${S}`,className:"text-strong font-semibold"},k.value):k.value).filter(Boolean);const b=new RegExp(`(${g.join("|")})`,"gi"),v=new Map;for(const k of s)for(const S of k.terms){const A=Ca(S);A&&!v.has(A)&&v.set(A,k.className)}return r.flatMap((k,S)=>k.value.split(b).map((N,E)=>{if(!N)return null;if(E%2===1){const _=v.get(Ca(N))??"answer-highlight";return k.type==="bold"?Io.createElement("mark",{key:`hl-${S}-${E}`,className:_},Io.createElement("strong",{className:"text-strong font-semibold"},N)):Io.createElement("mark",{key:`hl-${S}-${E}`,className:_},N)}return k.type==="bold"?Io.createElement("strong",{key:`b-${S}-${E}`,className:"text-strong font-semibold"},N):N})).filter(Boolean)}function xG(e){return e.length===0?[]:typeof e[0]=="string"?[{terms:e,className:"answer-highlight"}]:e}function $h(e){const a=(e??"").trim();return a&&(a.startsWith("/")||/^https?:\/\//i.test(a)||/^mailto:/i.test(a))?a:null}function dh(e,a){return{citedCompetitorDomains:[...e.citedCompetitorDomains??a?.citedCompetitorDomains??[]],mentionedCompetitorDomains:[...e.mentionedCompetitorDomains??a?.mentionedCompetitorDomains??[]]}}function mh(e,a){switch(e){case"new":return"First observation";case"emerging":return"First mention";case"lost":return"Lost since last run";default:return a==="mentioned"||a==="visible"?"Mentioned in latest run":a==="pending"?"Awaiting first run":"Not mentioned in latest run"}}function kG({evidence:e,project:a,onClose:s}){const[r,u]=T.useState(!1),[f,g]=T.useState("mentions"),[b,v]=T.useState(-1),[k,S]=T.useState(null),[A,N]=T.useState(!1),[E,Z]=T.useState({}),_=M2(a.project),G=new Set(_.map(Mu)),K=e.runHistory,te=K.length>1,[Q,re]=T.useState(null),W=T.useRef(!1);T.useEffect(()=>{if(W.current||e.answerSnippet&&(e.visibilityState!=null||e.answerMentioned!=null))return;const ne=K.at(-1);ne&&(W.current=!0,Ph(ne.runId).then(V=>{const q=V.snapshots?.find(le=>le.query===e.query&&le.provider===e.provider);q&&re({citationState:q.citationState,answerMentioned:q.answerMentioned,visibilityState:q.visibilityState,visibilityTransition:ne.visibilityTransition,provider:q.provider,model:q.model??e.model,answerSnippet:q.answerText??e.answerSnippet,citedDomains:q.citedDomains??e.citedDomains,...dh(q,e),recommendedCompetitors:q.recommendedCompetitors??e.recommendedCompetitors??[],matchedTerms:q.matchedTerms??e.matchedTerms??[],groundingSources:q.groundingSources??e.groundingSources,searchQueries:q.searchQueries,evidenceUrls:[],changeLabel:e.visibilityChangeLabel??e.changeLabel,summary:e.summary})}).catch(()=>{}))},[e,K]);const oe=b>=0&&k!==null,H=oe?k:Q||{citationState:e.citationState,answerMentioned:e.answerMentioned,visibilityState:e.visibilityState,visibilityTransition:K.at(-1)?.visibilityTransition,provider:e.provider,model:e.model,answerSnippet:e.answerSnippet,citedDomains:e.citedDomains,...dh(e),recommendedCompetitors:e.recommendedCompetitors??[],matchedTerms:e.matchedTerms??[],groundingSources:e.groundingSources,searchQueries:e.searchQueries??[],evidenceUrls:e.evidenceUrls,changeLabel:e.visibilityChangeLabel??e.changeLabel,summary:e.summary},$=H.visibilityState==="pending"||H.citationState==="pending",Te=$?!1:H.visibilityState!=null?H.visibilityState==="visible":H.answerMentioned!=null?H.answerMentioned:H.citationState===Uu.cited||H.citationState==="emerging",Ke=H.answerMentioned!=null||H.visibilityState!=null||H.mentionedCompetitorDomains.length>0||H.recommendedCompetitors.length>0,Fe=H.citedDomains.length>0||H.citedCompetitorDomains.length>0||H.groundingSources.length>0||H.evidenceUrls.length>0,Re=a.project.displayName||a.project.name,ve=[..._.map(Mu),Re,Re.split(" ").slice(0,2).join(" "),...H.matchedTerms].filter(ne=>ne.trim().length>2),Ue=[...H.mentionedCompetitorDomains.flatMap(ne=>{const V=O2(ne);return V.length>=4?[V]:[]}),...H.recommendedCompetitors].filter(ne=>ne.trim().length>2),be=[{terms:ve,className:"answer-highlight-brand"},...Ue.length>0?[{terms:Ue,className:"answer-highlight-competitor"}]:[]],P=$?"pending":H.visibilityTransition==="lost"?"lost":Te?"mentioned":"not-mentioned",ae=T.useRef(0),he=T.useCallback(async ne=>{const V=++ae.current;if(ne===-1||ne===K.length-1){v(-1),S(null),u(!1);return}v(ne),u(!1);const q=K[ne],le=`${q.runId}::${e.query}::${e.provider}`;if(E[le]){S(E[le]);return}N(!0);try{const De=await Ph(q.runId);if(V!==ae.current)return;const ye=De.snapshots?.find(Ge=>Ge.query===e.query&&Ge.provider===e.provider)??De.snapshots?.find(Ge=>Ge.query===e.query),Je=ye?{citationState:ye.citationState,answerMentioned:ye.answerMentioned,visibilityState:ye.visibilityState,visibilityTransition:q.visibilityTransition,provider:ye.provider,model:ye.model??null,answerSnippet:ye.answerText??"",citedDomains:ye.citedDomains,...dh(ye),recommendedCompetitors:ye.recommendedCompetitors??[],matchedTerms:ye.matchedTerms??[],groundingSources:ye.groundingSources,searchQueries:ye.searchQueries,evidenceUrls:[],changeLabel:mh(q.mentionTransition??q.visibilityTransition,q.mentionState??q.visibilityState),summary:""}:{citationState:q.citationState,answerMentioned:q.answerMentioned,visibilityState:q.visibilityState,visibilityTransition:q.visibilityTransition,provider:e.provider,model:q.model??null,answerSnippet:"",citedDomains:[],citedCompetitorDomains:[],mentionedCompetitorDomains:[],recommendedCompetitors:[],matchedTerms:[],groundingSources:[],searchQueries:[],evidenceUrls:[],changeLabel:mh(q.mentionTransition??q.visibilityTransition,q.mentionState??q.visibilityState),summary:"Snapshot data not available for this run."};Z(Ge=>({...Ge,[le]:Je})),S(Je)}catch{if(V!==ae.current)return;S({citationState:q.citationState,answerMentioned:q.answerMentioned,visibilityState:q.visibilityState,visibilityTransition:q.visibilityTransition,provider:e.provider,model:q.model??null,answerSnippet:"",citedDomains:[],citedCompetitorDomains:[],mentionedCompetitorDomains:[],recommendedCompetitors:[],matchedTerms:[],groundingSources:[],searchQueries:[],evidenceUrls:[],changeLabel:mh(q.mentionTransition??q.visibilityTransition,q.mentionState??q.visibilityState),summary:"Failed to load historical run data."})}finally{V===ae.current&&N(!1)}},[K,e.query,e.provider,E]),X=(oe||e.historyScope!=="provider")&&H.model?`${H.provider} (${H.model}) · ${H.changeLabel.toLowerCase()}`:`${H.provider} · ${H.changeLabel.toLowerCase()}`,Ie=!oe&&e.historyScope==="provider"?[e.model?`Current model: ${e.model}`:null,e.modelsSeen&&e.modelsSeen.length>1?`History spans ${e.modelsSeen.length} models`:null].filter(Boolean).join(" · "):"",Ne=Te?{label:"Mentioned in answer",title:"Your brand or domain is mentioned in this answer",meta:X}:H.visibilityTransition==="lost"?{label:"Mention lost",title:"Your brand no longer appears in this answer",meta:X}:$?{label:"Pending",title:"Awaiting first run",meta:"No provider data yet"}:{label:"Not mentioned in answer",title:"Your brand or domain was not mentioned in this answer",meta:X},Ae=()=>{if(!H.answerSnippet)return null;const ne=H.answerSnippet.split(`
58
- `),V=[];let q=[],le=0;const De=()=>{if(q.length===0)return;const ye=q.join(" ").trim();ye&&V.push(c.jsx("p",{className:V.length>0?"mt-2.5":"",children:rx(ye,be)},le++)),q=[]};for(const ye of ne){const Je=ye.trim();if(/^[-\u2013\u2014]{3,}$/.test(Je)){De(),V.push(c.jsx("hr",{className:"border-default my-3"},le++));continue}const Ge=Je.match(/^(#{1,3})\s+(\S.*)$/);if(Ge){De();const Be=Ge[1].length,de=Ge[2].replace(/^[\p{Emoji}\p{Emoji_Component}\s]+/u,"").trim()||Ge[2],Me=Be===1?"text-[13px] font-semibold text-heading mt-4 mb-1":Be===2?"text-xs font-semibold text-strong mt-3 mb-0.5":"text-xs font-medium text-neutral mt-2";V.push(c.jsx("p",{className:Me,children:rx(de,be)},le++));continue}if(Je===""){De();continue}q.push(Je)}return De(),V};return c.jsx(Ix,{open:!0,onOpenChange:ne=>{ne||s()},children:c.jsxs(Bx,{children:[c.jsx(Zh,{className:"fixed inset-0 z-50 bg-overlay-scrim/80 backdrop-blur-sm"}),c.jsxs(Yh,{className:"evidence-modal","aria-describedby":void 0,children:[c.jsxs("div",{className:"evidence-modal-header",children:[c.jsxs("div",{className:"min-w-0 flex-1",children:[c.jsxs("p",{className:"eyebrow eyebrow-soft",children:[a.project.name," ","·"," ",H.provider||"All providers"]}),c.jsx(Xh,{className:"text-lg font-semibold text-primary truncate",children:e.query})]}),c.jsxs(Px,{className:"inline-flex size-8 items-center justify-center rounded-md text-muted transition hover:bg-mono-800 hover:text-heading focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-mono-400 shrink-0",children:[c.jsx(sr,{className:"size-4"}),c.jsx("span",{className:"sr-only",children:"Close"})]})]}),te&&c.jsxs("div",{className:"evidence-modal-timeline",children:[c.jsx("p",{className:"drawer-section-label mb-1.5",children:"Run history"}),c.jsx("div",{className:"flex items-center gap-1 overflow-x-auto pb-1",children:K.map((ne,V)=>{const q=b===-1&&V===K.length-1||b===V,le=ne.visibilityState??(ne.answerMentioned?"visible":"not-visible"),De=ne.visibilityTransition??le,ye=le==="visible"?"bg-positive-400":De==="emerging"?"bg-caution-400":De==="lost"?"bg-negative-400":"bg-mono-600",Ge=new Date(ne.createdAt).toLocaleDateString(void 0,{month:"short",day:"numeric"}),Be=!!(ne.model&&V>0&&K[V-1]?.model&&K[V-1].model!==ne.model);return c.jsxs("button",{type:"button",className:`evidence-run-dot ${q?"evidence-run-dot--selected":""}`,onClick:()=>{he(V===K.length-1?-1:V)},"aria-label":[`Run ${Ge}: ${le}`,ne.model?`model ${ne.model}`:null,Be?"model changed":null].filter(Boolean).join(" — "),"aria-pressed":q,children:[c.jsx("span",{className:`size-2 rounded-full ${ye} ${Be?"ring-1 ring-caution-300/80 ring-offset-2 ring-offset-bg":""}`,"aria-hidden":"true"}),c.jsx("span",{className:"text-[10px] text-muted",children:Ge})]},V)})}),b>=0&&b<K.length&&c.jsxs("p",{className:"text-[11px] text-muted mt-1",children:["Viewing run from ",new Date(K[b].createdAt).toLocaleString()," ","—"," ",c.jsx("span",{className:"capitalize",children:K[b].visibilityState??(K[b].answerMentioned?"visible":"not-visible")}),c.jsxs("button",{type:"button",className:"text-secondary hover:text-strong ml-2",onClick:()=>{he(-1)},children:["←"," Back to latest"]})]}),!oe&&(e.modelTransitions?.length??0)>0&&c.jsx("div",{className:"mt-2 flex flex-wrap gap-2",children:e.modelTransitions.map(ne=>c.jsx("span",{className:"inline-flex items-center rounded-full border border-caution-400/30 bg-caution-400/10 px-2 py-1 text-[10px] text-caution-100",children:`${ne.fromModel??"unknown"} -> ${ne.toModel??"unknown"} on ${new Date(ne.createdAt).toLocaleDateString()}`},`${ne.runId}:${ne.toModel??"unknown"}`))})]}),c.jsxs("div",{className:"evidence-modal-body",children:[A&&c.jsxs("div",{className:"md:col-span-2 flex items-center justify-center py-12 text-muted text-sm",children:["Loading historical run data","…"]}),!A&&c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"evidence-modal-main",children:[c.jsxs("div",{className:`evidence-position-hero evidence-position-hero--${P}`,children:[c.jsx("p",{className:`evidence-position-label evidence-position-label--${P}`,children:Ne.label}),c.jsx("p",{className:`evidence-position-title evidence-position-title--${P}`,children:Ne.title}),c.jsx("p",{className:"evidence-position-meta",children:Ne.meta}),Ie&&c.jsx("p",{className:"mt-1 text-[11px] text-muted",children:Ie})]}),H.answerSnippet&&c.jsxs("div",{children:[c.jsx("p",{className:"drawer-section-label",children:"What the AI said"}),c.jsx("div",{className:`answer-snippet-block ${r?"evidence-answer-expanded":"evidence-answer-collapsed"}`,children:Ae()}),H.answerSnippet.length>280&&c.jsx("button",{type:"button",className:"mt-1.5 text-xs text-muted hover:text-neutral transition-colors",onClick:()=>u(!r),children:r?"↑ Collapse":"↓ Show full answer"})]}),!H.answerSnippet&&!A&&c.jsx("div",{className:"rounded-lg border border-subtle bg-surface-subtle px-4 py-8 text-center text-faint text-sm",children:"No answer text recorded for this run"}),H.searchQueries.length>0&&c.jsxs("div",{children:[c.jsxs("div",{className:"drawer-section-label flex items-center",children:[c.jsx("span",{children:"Web searches the model ran"}),c.jsx(yl,{text:"The search queries this AI model issued while researching your prompt. They reveal how the model reformulated your query — the phrasings worth optimizing your content for. Distinct from grounding sources (what it found) and citations (what it linked)."})]}),c.jsx("ul",{className:"grid gap-1",children:H.searchQueries.map((ne,V)=>c.jsxs("li",{className:"flex items-start gap-2 text-sm text-neutral",children:[c.jsx(X4,{className:"size-3.5 mt-0.5 shrink-0 text-faint","aria-hidden":"true"}),c.jsx("span",{className:"break-words",children:ne})]},`${V}-${ne}`))})]}),!oe&&e.relatedTechnicalSignals.length>0&&c.jsxs("div",{children:[c.jsx("p",{className:"drawer-section-label",children:Te?"Why you're visible":"What to fix"}),c.jsx("div",{className:"action-items-list",children:e.relatedTechnicalSignals.map((ne,V)=>c.jsxs("div",{className:"action-item",children:[c.jsx("svg",{className:`action-item-icon ${Te?"text-positive-400":"text-caution-400"}`,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:Te?c.jsx("path",{d:"M3 8l3.5 3.5L13 4.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}):c.jsxs(c.Fragment,{children:[c.jsx("circle",{cx:"8",cy:"8",r:"7",stroke:"currentColor",strokeWidth:"1.5"}),c.jsx("path",{d:"M8 5v3.5M8 10.5v0",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]})}),c.jsx("span",{className:"action-item-text",children:ne})]},V))})]}),H.summary&&c.jsx("p",{className:"text-xs text-faint border-t border-subtle pt-3 mt-1",children:H.summary})]}),c.jsxs("div",{className:"evidence-modal-sidebar",children:[(Ke||Fe)&&c.jsxs("div",{className:"sidebar-tabs",children:[c.jsx("button",{className:`sidebar-tab ${f==="mentions"?"sidebar-tab--active":""}`,onClick:()=>g("mentions"),type:"button",title:"Canonry's answer-level visibility assessment and any company names extracted from the answer text.",children:"Mentions"}),c.jsx("button",{className:`sidebar-tab ${f==="sources"?"sidebar-tab--active":""}`,onClick:()=>g("sources"),type:"button",title:"Grounding links the model used to build the answer. These are supporting sources, not the primary visibility signal.",children:"Sources"})]}),f==="mentions"&&c.jsxs(c.Fragment,{children:[c.jsxs("div",{children:[c.jsxs("div",{className:"drawer-section-label flex items-center",children:[c.jsx("span",{children:"Mention in answer"}),c.jsx(yl,{text:"Canonry scans the AI answer for your owned domains and project name. This is independent from grounding or citation sources."})]}),c.jsxs("div",{className:`mention-status mention-status--${Te?"mentioned":"not-mentioned"}`,children:[c.jsx("span",{className:"mention-status-icon",children:$?"…":Te?"✓":"—"}),c.jsx("span",{className:"mention-status-label",children:$?"Pending":Te?"Mentioned":"Not mentioned"})]}),H.matchedTerms.length>0&&c.jsxs("div",{className:"mt-2",children:[c.jsx("p",{className:"text-[10px] uppercase tracking-wide text-muted mb-1.5",children:"Matched in answer"}),c.jsx("div",{className:"flex flex-wrap gap-1.5",children:H.matchedTerms.map(ne=>c.jsx("span",{className:"mention-chip mention-chip--brand",children:ne},ne))})]}),!$&&!Te&&H.matchedTerms.length===0&&c.jsxs("div",{className:"mt-2",children:[c.jsx("p",{className:"text-[10px] uppercase tracking-wide text-muted mb-1.5",children:"Searched for"}),c.jsx("div",{className:"flex flex-wrap gap-1.5",children:ve.map(ne=>c.jsx("span",{className:"mention-chip mention-chip--muted",children:ne},ne))}),c.jsx("p",{className:"text-[11px] text-faint mt-1.5",children:"None of these appear in the answer text."})]})]}),(H.recommendedCompetitors.length>0||H.mentionedCompetitorDomains.length>0)&&c.jsxs("div",{children:[c.jsxs("div",{className:"drawer-section-label flex items-center",children:[c.jsx("span",{children:"Competitors in answer"}),c.jsx(yl,{text:"Competitors detected in the answer text. Includes tracked competitor brands and names extracted by Canonry; source-link competitors stay in the Sources tab."})]}),c.jsx("div",{className:"flex flex-wrap gap-1.5",children:(()=>{const ne=H.mentionedCompetitorDomains.map(le=>le.replace(/^www\./,"")),V=new Set(ne.map(le=>Ca(le.replace(/\.[^.]+$/,""))));return[...H.recommendedCompetitors.filter(le=>!V.has(Ca(le))),...ne].map(le=>c.jsx("span",{className:"mention-chip mention-chip--competitor",children:le},le))})()})]})]}),f==="sources"&&c.jsxs(c.Fragment,{children:[H.citedDomains.length>0&&c.jsxs("div",{children:[c.jsxs("div",{className:"drawer-section-label flex items-center",children:[c.jsx("span",{children:"Domains from source links"}),c.jsx(yl,{text:"These domains were extracted from grounding or citation URLs. They are supporting-source metadata, not proof that the answer text mentioned them."})]}),c.jsx("div",{className:"citation-leaderboard",children:H.citedDomains.map((ne,V)=>{const q=ne.toLowerCase().replace(/^www\./,""),le=G.has(q),De=!le&&H.citedCompetitorDomains.some(Je=>Je.toLowerCase().replace(/^www\./,"")===q),ye=le?"you":De?"competitor":"other";return c.jsxs("div",{className:`citation-leaderboard-item citation-leaderboard-item--${ye}`,children:[c.jsxs("span",{className:"citation-leaderboard-rank",children:["#",V+1]}),c.jsx("span",{className:"citation-leaderboard-domain",children:ne}),le&&c.jsx("span",{className:"citation-leaderboard-tag",children:"You"}),De&&c.jsx("span",{className:"citation-leaderboard-tag",children:"Competitor"})]},ne)})})]}),H.groundingSources.length>0&&c.jsxs("div",{children:[c.jsxs("div",{className:"drawer-section-label flex items-center",children:[c.jsxs("span",{children:["Grounding source links (",H.groundingSources.length,")"]}),c.jsx(yl,{text:"Links the model used as grounding or supporting context while producing the answer. These are not the same thing as answer visibility."})]}),c.jsx("ul",{className:"grid gap-0.5",children:H.groundingSources.map((ne,V)=>{const q=$h(ne.uri),le=ne.title||ne.uri;return c.jsx("li",{className:"truncate text-sm",children:q?c.jsx("a",{href:q,target:"_blank",rel:"noopener noreferrer",className:"text-secondary hover:text-strong transition-colors",children:le}):c.jsx("span",{className:"text-secondary",children:le})},V)})})]}),H.evidenceUrls.length>0&&c.jsxs("div",{children:[c.jsx("p",{className:"drawer-section-label",children:"Evidence URLs"}),c.jsx("ul",{className:"grid gap-1",children:H.evidenceUrls.map(ne=>{const V=$h(ne);return c.jsx("li",{className:"truncate text-sm",children:V?c.jsx("a",{href:V,target:"_blank",rel:"noopener noreferrer",className:"text-secondary hover:text-strong transition-colors",children:ne}):c.jsx("span",{className:"text-secondary",children:ne})},ne)})})]}),H.citedDomains.length===0&&H.groundingSources.length===0&&H.evidenceUrls.length===0&&c.jsxs("div",{className:"flex items-center justify-center h-24 text-faint text-sm",children:["No source data ",oe?"for this run":"yet"]})]}),!Ke&&!Fe&&c.jsxs("div",{className:"flex items-center justify-center h-24 text-faint text-sm",children:["No answer visibility data ",oe?"for this run":"yet"]})]})]})]})]})]})})}function wG(e){const a=e.match(/^\/projects\/([^/]+)/);if(!a)return null;try{return decodeURIComponent(a[1])}catch{return a[1]}}function SG(e,a){return e?a?.projects.find(r=>r.project.name===e||r.project.id===e)?.project.name??e:null}function jG(e,a){return SG(wG(e),a)}function ja(e){const a=new Date("2026-02-20");return e.map((s,r)=>({runId:`run_mock_${r+1}`,citationState:s,createdAt:new Date(a.getTime()+r*2*24*60*60*1e3).toISOString()}))}const ph=[{id:"project_citypoint",name:"Citypoint Dental NYC",canonicalDomain:"citypointdental.com",ownedDomains:[],aliases:[],country:"US",language:"en",tags:["local intent","priority"],labels:{},providers:[],providerModels:{},measurement:$p,locations:[],defaultLocation:null,autoExtractBacklinks:!1,configSource:"cli",configRevision:1},{id:"project_harbor",name:"Harbor Legal Group",canonicalDomain:"harborlegal.com",ownedDomains:[],aliases:[],country:"US",language:"en",tags:["lead gen"],labels:{},providers:[],providerModels:{},measurement:$p,locations:[],defaultLocation:null,autoExtractBacklinks:!1,configSource:"cli",configRevision:1},{id:"project_northstar",name:"Northstar Orthopedics",canonicalDomain:"northstarortho.com",ownedDomains:[],aliases:[],country:"US",language:"en",tags:["multi-location"],labels:{},providers:[],providerModels:{},measurement:$p,locations:[],defaultLocation:null,autoExtractBacklinks:!1,configSource:"cli",configRevision:1}];function _d(e){return{id:e.id,projectId:e.projectId,projectName:e.projectName,kind:e.kind,kindLabel:e.kindLabel,status:e.status,trigger:e.trigger??"manual",createdAt:e.createdAt,startedAt:e.startedAt,duration:e.duration,statusDetail:e.statusDetail,summary:e.summary,triggerLabel:e.triggerLabel}}const AG=_d({id:"run_citypoint_visibility_20260308",projectId:"project_citypoint",projectName:"Citypoint Dental NYC",kind:"answer-visibility",kindLabel:"Answer visibility sweep",status:"completed",createdAt:"2026-03-08T12:15:00.000Z",startedAt:"Mar 8, 12:15 PM",duration:"6m 12s",statusDetail:"18 tracked queries checked; 3 citation losses detected on emergency-intent prompts.",summary:"Citation losses on emergency-intent prompts",triggerLabel:"Scheduled"}),CG=_d({id:"run_citypoint_queued_20260309",projectId:"project_citypoint",projectName:"Citypoint Dental NYC",kind:"answer-visibility",kindLabel:"Answer visibility sweep",status:"queued",createdAt:"2026-03-09T08:05:00.000Z",startedAt:"Mar 9, 8:05 AM",duration:"Waiting for slot",statusDetail:"Ready to enqueue after the next provider rate window clears.",summary:"Queued follow-up after local ranking movement",triggerLabel:"Manual"}),NG=_d({id:"run_harbor_visibility_20260308",projectId:"project_harbor",projectName:"Harbor Legal Group",kind:"answer-visibility",kindLabel:"Answer visibility sweep",status:"completed",createdAt:"2026-03-08T11:05:00.000Z",startedAt:"Mar 8, 11:05 AM",duration:"5m 07s",statusDetail:"12 tracked queries checked; local-intent visibility held steady across branded prompts.",summary:"Branded prompts remain stable",triggerLabel:"Scheduled"}),_G=_d({id:"run_northstar_visibility_20260308",projectId:"project_northstar",projectName:"Northstar Orthopedics",kind:"answer-visibility",kindLabel:"Answer visibility sweep",status:"running",createdAt:"2026-03-08T13:40:00.000Z",startedAt:"Mar 8, 1:40 PM",duration:"3m 10s",statusDetail:"Provider responses still in flight for 9 multi-location prompts.",summary:"Mid-run on treatment-location prompts",triggerLabel:"Manual"}),zG=[{id:"evidence_citypoint_emergency_gemini",query:"emergency dentist brooklyn",provider:"gemini",model:"gemini-2.5-flash",location:null,citationState:"lost",changeLabel:"Lost since Mar 5",answerSnippet:"For urgent dental care in Brooklyn, Downtown Smiles and Harbor Dental are now cited first for emergency availability and same-day booking.",citedDomains:["downtownsmiles.com","harbordental.com"],evidenceUrls:["https://downtownsmiles.com/emergency-dentist-brooklyn","https://harbordental.com/same-day-emergency-care"],competitorDomains:["downtownsmiles.com","harbordental.com"],groundingSources:[],relatedTechnicalSignals:["FAQ schema missing on the emergency service page","llms.txt not found during latest site audit","Location pages link weakly into the emergency care hub"],summary:"AI answers now cite two competitors while your emergency page is no longer grounded.",runHistory:ja(["cited","cited","cited","cited","cited","cited","cited","not-cited","not-cited"])},{id:"evidence_citypoint_emergency_openai",query:"emergency dentist brooklyn",provider:"openai",model:"gpt-5.4",location:null,citationState:"cited",changeLabel:"Cited for 6 runs",answerSnippet:"Citypoint Dental is listed as a top emergency dentist in Brooklyn for same-day appointments and walk-in availability.",citedDomains:["citypointdental.com","downtownsmiles.com"],evidenceUrls:["https://citypointdental.com/emergency-dentist-brooklyn"],competitorDomains:["downtownsmiles.com"],groundingSources:[],relatedTechnicalSignals:["Emergency page indexed with structured data"],summary:"OpenAI cites your emergency page consistently alongside one competitor.",runHistory:ja(["not-cited","cited","cited","cited","cited","cited","cited"])},{id:"evidence_citypoint_emergency_claude",query:"emergency dentist brooklyn",provider:"claude",model:"claude-sonnet-4-6",location:null,citationState:"not-cited",changeLabel:"No citation across 12 runs",answerSnippet:"Based on the search results, top-rated emergency dental practices in Brooklyn include Downtown Smiles and Harbor Dental.",citedDomains:["downtownsmiles.com","harbordental.com"],evidenceUrls:[],competitorDomains:["downtownsmiles.com","harbordental.com"],groundingSources:[],relatedTechnicalSignals:["FAQ schema missing","llms.txt not found"],summary:"Claude does not cite your domain for this emergency query.",runHistory:ja(["not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited"])},{id:"evidence_citypoint_invisalign_openai",query:"best invisalign dentist downtown brooklyn",provider:"openai",model:"gpt-5.4",location:null,citationState:"emerging",changeLabel:"First citation in 7 days",answerSnippet:"Citypoint Dental appears as an emerging recommendation for Invisalign in Downtown Brooklyn, supported by recent before-and-after case pages.",citedDomains:["citypointdental.com","clearlineortho.com"],evidenceUrls:["https://citypointdental.com/invisalign-downtown-brooklyn","https://citypointdental.com/case-studies/invisalign-open-bite"],competitorDomains:["clearlineortho.com"],groundingSources:[],relatedTechnicalSignals:["Structured data now present on two case-study pages","Internal links from service pages to case studies improved crawl depth"],summary:"Fresh case-study content is starting to earn citations on Invisalign prompts.",runHistory:ja(["not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","cited"])},{id:"evidence_citypoint_invisalign_gemini",query:"best invisalign dentist downtown brooklyn",provider:"gemini",model:"gemini-2.5-flash",location:null,citationState:"cited",changeLabel:"Cited for 8 runs",answerSnippet:"Citypoint Dental in Downtown Brooklyn is highlighted for its Invisalign expertise and patient outcomes.",citedDomains:["citypointdental.com"],evidenceUrls:["https://citypointdental.com/invisalign-downtown-brooklyn"],competitorDomains:[],groundingSources:[],relatedTechnicalSignals:["Case study pages well-indexed"],summary:"Gemini consistently cites your Invisalign page with no competitor overlap.",runHistory:ja(["cited","cited","cited","cited","cited","cited","cited","cited"])},{id:"evidence_citypoint_invisalign_claude",query:"best invisalign dentist downtown brooklyn",provider:"claude",model:"claude-sonnet-4-6",location:null,citationState:"not-cited",changeLabel:"No citation across 12 runs",answerSnippet:"For Invisalign in Downtown Brooklyn, Clear Line Ortho and Brooklyn Smiles are frequently recommended for their experienced orthodontists.",citedDomains:["clearlineortho.com","brooklynsmiles.com"],evidenceUrls:[],competitorDomains:["clearlineortho.com"],groundingSources:[],relatedTechnicalSignals:["No before/after schema on case study pages"],summary:"Claude does not surface your Invisalign content despite strong page quality.",runHistory:ja(["not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited"])},{id:"evidence_citypoint_children_claude",query:"pediatric dentist brooklyn heights",provider:"claude",model:"claude-sonnet-4-6",location:null,citationState:"not-cited",changeLabel:"No citation across 4 runs",answerSnippet:"Answers cite neighborhood-specific pediatric practices with stronger family-focused FAQ content and clearer insurance details.",citedDomains:["brightkidsdental.com","parkpediatricdental.com"],evidenceUrls:["https://brightkidsdental.com/pediatric-dentist-brooklyn-heights","https://parkpediatricdental.com/insurance"],competitorDomains:["brightkidsdental.com","parkpediatricdental.com"],groundingSources:[],relatedTechnicalSignals:["No dedicated pediatric service page exists for Brooklyn Heights","Insurance content is buried three clicks deep"],summary:"Coverage gap is content-driven, not purely technical.",runHistory:ja(["not-cited","not-cited","not-cited","not-cited"])},{id:"evidence_citypoint_children_gemini",query:"pediatric dentist brooklyn heights",provider:"gemini",model:"gemini-2.5-flash",location:null,citationState:"not-cited",changeLabel:"No citation across 12 runs",answerSnippet:"For pediatric dentistry in Brooklyn Heights, Bright Kids Dental and Park Pediatric Dental are cited for family-friendly care.",citedDomains:["brightkidsdental.com","parkpediatricdental.com"],evidenceUrls:[],competitorDomains:["brightkidsdental.com","parkpediatricdental.com"],groundingSources:[],relatedTechnicalSignals:["No dedicated pediatric page for Brooklyn Heights"],summary:"Gemini does not surface your domain for pediatric queries in this area.",runHistory:ja(["not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited","not-cited"])},{id:"evidence_citypoint_children_openai",query:"pediatric dentist brooklyn heights",provider:"openai",model:"gpt-5.4",location:null,citationState:"cited",changeLabel:"First citation this month",answerSnippet:"Citypoint Dental is mentioned as offering pediatric services in Brooklyn, though specialized pediatric-only practices are also highlighted.",citedDomains:["citypointdental.com","brightkidsdental.com"],evidenceUrls:["https://citypointdental.com/family-dentistry"],competitorDomains:["brightkidsdental.com"],groundingSources:[],relatedTechnicalSignals:["Family dentistry page recently updated"],summary:"OpenAI recently started citing your family dentistry page for this query.",runHistory:ja(["not-cited","not-cited","not-cited","not-cited","not-cited","cited"])}];ph[0],Math.round(1/9*100),Math.round(2/9*100),ph[1],ja(["cited","cited","cited","cited","cited"]),ph[2],Math.round(2/7*100),Math.round(3/7*100),ja(["not-cited","not-cited","not-cited","cited"]);function EG(e,a){return e.runs.find(s=>s.id===a)}function TG(e,a){for(const s of e.projects){const r=s.visibilityEvidence.find(u=>u.id===a);if(r)return{project:s,evidence:r}}}function RG(e,a,s){if(e){const r=e.visibilityEvidence.find(u=>u.id===s);if(r)return{project:e,evidence:r}}if(a)return TG(a,s)}const DG={regression:"negative",gain:"positive",opportunity:"caution","first-citation":"positive","provider-pickup":"positive","persistent-gap":"caution","competitor-gained":"negative","competitor-lost":"neutral","gbp-lodging-gap":"negative","gbp-listing-discrepancy":"negative","gbp-cta-gap":"caution","gbp-description-missing":"caution","gbp-metric-drop":"negative","gbp-keyword-drop":"negative"},OG={opportunity:"write","persistent-gap":"write","competitor-gained":"write","competitor-lost":"write",regression:"investigate",gain:"monitor","first-citation":"monitor","provider-pickup":"monitor","gbp-lodging-gap":"write","gbp-listing-discrepancy":"write","gbp-cta-gap":"write","gbp-description-missing":"write","gbp-metric-drop":"investigate","gbp-keyword-drop":"investigate"},qG={regression:"lost",gain:"emerging",opportunity:"not-cited","first-citation":"emerging","provider-pickup":"emerging","persistent-gap":"not-cited","competitor-gained":"cited","competitor-lost":"not-cited","gbp-lodging-gap":"not-cited","gbp-listing-discrepancy":"not-cited","gbp-cta-gap":"not-cited","gbp-description-missing":"not-cited","gbp-metric-drop":"lost","gbp-keyword-drop":"lost"},BG={regression:"Regression",gain:"Gain",opportunity:"Opportunity","first-citation":"First citation","provider-pickup":"Pickup","persistent-gap":"Gap","competitor-gained":"Competitor","competitor-lost":"Competitor","gbp-lodging-gap":"Lodging gap","gbp-listing-discrepancy":"Listing gap","gbp-cta-gap":"Booking CTA","gbp-description-missing":"Description gap","gbp-metric-drop":"Metric drop","gbp-keyword-drop":"Keyword drop"};function PG(e){return{id:e.id,tone:DG[e.type],title:e.title,detail:e.cause?.details??e.cause?.cause??"",actionLabel:e.recommendation?.action??BG[e.type],actionGroup:OG[e.type],affectedPhrases:[{query:e.query,evidenceId:"",provider:e.provider,citationState:qG[e.type]}]}}function MG(e){return e.filter(a=>!a.dismissed).map(PG)}function g3(e){return{id:e.id,name:e.name,displayName:e.displayName,canonicalDomain:e.canonicalDomain,ownedDomains:e.ownedDomains??[],aliases:e.aliases??[],country:e.country,language:e.language,tags:e.tags,labels:e.labels,providers:e.providers??[],providerModels:e.providerModels??{},measurement:e.measurement,locations:e.locations??[],defaultLocation:e.defaultLocation??null,autoExtractBacklinks:e.autoExtractBacklinks??!1,configSource:e.configSource,configRevision:e.configRevision,createdAt:e.createdAt,updatedAt:e.updatedAt}}function lx(e){try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}catch{return e}}function IG(e,a){if(!e)return"Waiting";if(!a)return"Running";const s=new Date(a).getTime()-new Date(e).getTime();if(s<1e3)return"<1s";const r=Math.floor(s/1e3);if(r<60)return`${r}s`;const u=Math.floor(r/60),f=r%60;return`${u}m ${f}s`}function y3(e){switch(e){case ze["answer-visibility"]:return"Answer visibility sweep";case ze["gsc-sync"]:return"GSC sync";case ze["inspect-sitemap"]:return"Sitemap inspection";case ze["ga-sync"]:return"GA sync";case ze["traffic-sync"]:return"Traffic sync";case ze["bing-inspect"]:return"Bing URL inspection";case ze["bing-inspect-sitemap"]:return"Bing sitemap inspection";case ze["site-audit"]:return"Site audit";case ze["backlink-extract"]:return"Backlink extract";case ze["aeo-discover-seed"]:return"Discovery (seed phase)";case ze["aeo-discover-probe"]:return"Discovery (probe phase)";case ze["gbp-sync"]:return"Business Profile sync";case ze["ads-sync"]:return"ChatGPT ads sync";case ze["google-ads-sync"]:return"Google Ads sync";case ze["gtm-sync"]:return"Tag Manager sync"}}function VG(e){return e===Qo.manual?"Manual":e===Qo.scheduled?"Scheduled":e===Qo["config-apply"]?"Config apply":e}function zd(e,a){return{id:e.id,projectId:e.projectId,projectName:a,kind:e.kind,kindLabel:y3(e.kind),status:e.status,trigger:e.trigger??"manual",location:e.location??null,createdAt:e.createdAt,startedAt:e.startedAt?lx(e.startedAt):lx(e.createdAt),duration:IG(e.startedAt??null,e.finishedAt??null),statusDetail:e.error?b3(e.error):LG(e),summary:UG(e),triggerLabel:VG(e.trigger)}}function b3(e){const a=G0(e);return a.length>200?a.slice(0,200)+"…":a}function LG(e){switch(e.status){case xn.queued:return"Waiting for execution slot.";case xn.running:return"Provider queries in progress.";case xn.completed:return"All queries checked.";case xn.partial:return"Run completed with some queries skipped.";case xn.failed:return e.error?b3(e.error):"Run failed.";case xn.cancelled:return"Run was cancelled.";default:return""}}function UG(e){const a=y3(e.kind);switch(e.status){case xn.queued:return`${a} queued`;case xn.running:return`${a} in progress`;case xn.completed:return`${a} completed`;case xn.partial:return`${a} partially completed`;case xn.failed:return`${a} failed`;case xn.cancelled:return`${a} cancelled`;default:return e.status}}function GG(e,a,s,r,u){const f=[];let g=0;const b=new Set;if(s.length>0){const v=s.flatMap(_=>_.snapshots??[]),k=new Map;for(const _ of v)if(_.query){const G=`${_.query}::${_.provider}::${_.location??""}`;k.set(G,_)}const S=new Set(v.map(_=>_.location??null));S.size===0&&S.add(null);const A=new Set(v.map(_=>_.provider)),N=new Set(a.flatMap(_=>Object.keys(_.providerRuns??{}))),E=[...new Set([...A,...N])].sort(),Z=E.length>0?E:["gemini"];for(const _ of a){if(_.runs.length===0)continue;b.add(_.query);const G=_.runs.at(-1),K=G?.transition??"not-cited";for(const te of Z){const Q=[...S].filter(oe=>k.has(`${_.query}::${te}::${oe??""}`)),re=(_.providerRuns?.[te]?.length??0)>0,W=Q.length>0?Q:re?[null]:[];for(const oe of W){const H=oe??"",$=k.get(`${_.query}::${te}::${H}`),Te=$?.model??null,Ke=Te?`${te}:${Te}`:null,Fe=_.providerRuns?.[te],Re=Ke?_.modelRuns?.[Ke]:void 0,ve=Me=>Me?.filter($t=>($t.location??null)===oe),Ue=Q.length>0?ve(Fe):Fe,be=Q.length>0?ve(Re):Re,P=(Ue?.length?Ue:null)??(be?.length?be:null),ae=Ue?.length?"provider":be?.length?"model":"query",he=P?P.at(-1).transition:K,je=P?P.at(-1).visibilityTransition??(P.at(-1).visibilityState==="visible"?"visible":"not-visible"):G?.visibilityTransition??(G?.visibilityState==="visible"?"visible":"not-visible"),X=P?.at(-1)?.citationState,Ie=P?.at(-1)?.visibilityState,Ne=$?he==="lost"?"lost":he==="emerging"?"emerging":$.citationState===Uu.cited?"cited":"not-cited":X===Uu.cited?"cited":"not-cited",Ae=$?.visibilityState??(Ie==="visible"?"visible":Ie==="pending"?"pending":"not-visible"),ne=cx(P||_.runs),V=ux(P||_.runs),q=$G(_,te),le=(P??_.runs).map(Me=>({runId:Me.runId,citationState:Me.citationState,createdAt:Me.createdAt,model:q.get(Me.runId)??null,answerMentioned:Me.answerMentioned,visibilityState:Me.visibilityState,visibilityTransition:Me.visibilityTransition,mentionState:Me.mentionState,mentionTransition:Me.mentionTransition})),De=KG(le),ye=ae==="provider"&&De.length<=1?"model":ae,Je=HG(le),Ge=$?.citedCompetitorDomains??[],Be=$?.mentionedCompetitorDomains??[],de=[...new Set([...Ge,...Be,...$?.competitorOverlap??[]])];f.push({id:`evidence_${e}_${g++}`,query:_.query,queryClass:u?.classify(_.query)??null,provider:$?.provider??te,model:$?.model??null,location:$?.location??oe,citationState:Ne,answerMentioned:$?.answerMentioned,visibilityState:Ae,visibilityChangeLabel:dx(je,V,{positive:"visible",negative:"not visible",first:"first visibility"}),changeLabel:dx(he,ne),answerSnippet:$?.answerText??"",citedDomains:$?.citedDomains??[],evidenceUrls:[],citedCompetitorDomains:Ge,mentionedCompetitorDomains:Be,competitorDomains:de,recommendedCompetitors:$?.recommendedCompetitors??[],matchedTerms:$?.matchedTerms??[],relatedTechnicalSignals:[],groundingSources:$?.groundingSources??[],searchQueries:$?.searchQueries??[],summary:QG(Ae,je,_.query),runHistory:le,historyScope:ye,modelsSeen:De,modelTransitions:Je})}}}}for(const v of r)b.has(v.query)||f.push({id:`evidence_${e}_${g++}`,query:v.query,queryClass:u?.classify(v.query)??null,provider:"",model:null,location:null,citationState:"pending",visibilityState:"pending",visibilityChangeLabel:"Awaiting first run",changeLabel:"Awaiting first run",answerSnippet:"",citedDomains:[],evidenceUrls:[],citedCompetitorDomains:[],mentionedCompetitorDomains:[],competitorDomains:[],recommendedCompetitors:[],matchedTerms:[],relatedTechnicalSignals:[],groundingSources:[],searchQueries:[],summary:`"${v.query}" has been added but no visibility run has been triggered yet.`,runHistory:[],historyScope:"query",modelsSeen:[],modelTransitions:[]});return f}function $G(e,a){const s=new Map,r=`${a}:`;for(const[u,f]of Object.entries(e.modelRuns??{})){if(!u.startsWith(r))continue;const g=u.slice(r.length),b=g==="unknown"?null:g;for(const v of f)s.set(v.runId,b)}return s}function KG(e){const a=new Set;for(const s of e)s.model&&a.add(s.model);return[...a]}function HG(e){const a=[];let s=null;for(const r of e){const u=r.model??null;u!==s&&s!==null&&a.push({runId:r.runId,createdAt:r.createdAt,fromModel:s,toModel:u}),s=u}return a}function cx(e){if(e.length===0)return 0;const a=e[e.length-1].citationState;let s=0;for(let r=e.length-1;r>=0&&e[r].citationState===a;r--)s++;return s}function ux(e){if(e.length===0)return 0;const a=e[e.length-1].visibilityState??"not-visible";let s=0;for(let r=e.length-1;r>=0&&(e[r].visibilityState??"not-visible")===a;r--)s++;return s}function dx(e,a,s){const r={positive:s?.positive??"cited",negative:s?.negative??"not cited",first:s?.first??"first citation"};switch(e){case"new":return"First observation";case"cited":case"visible":return a<=1?`${bl(r.positive)} in latest run`:`${bl(r.positive)} for ${a} runs`;case"lost":return"Lost since last run";case"emerging":return bl(r.first);case"not-cited":case"not-visible":return a<=1?`${bl(r.negative)} in latest run`:`${bl(r.negative)} across ${a} runs`;default:return e}}function bl(e){return e.charAt(0).toUpperCase()+e.slice(1)}function QG(e,a,s){switch(a){case"lost":return`Mention was lost for "${s}". Your brand no longer appeared in the latest answer.`;case"emerging":return`Your brand started appearing in AI answers for "${s}".`}switch(e){case"visible":return`Your brand or domain is mentioned in AI answers for "${s}".`;case"pending":return`"${s}" has been added but no run has been triggered yet.`;default:return`Your brand or domain was not mentioned in AI answers for "${s}".`}}function v3(e){const a=g3(e.project),s=j8(g8(e.project)),r=GG(a.name,e.timeline,e.latestRunDetails,e.queries,s),f=[...e.runs].sort((g,b)=>b.createdAt.localeCompare(g.createdAt)).map(g=>zd(g,e.project.displayName||e.project.name));return e.overview?FG(a,e.overview,r,f):ZG(a,r,f)}function FG(e,a,s,r){const u=MG(a.topInsights);for(const f of a.attentionItems)f.id.startsWith("insight_")||u.push({id:f.id,tone:f.tone,title:f.title,detail:f.detail,actionLabel:f.actionLabel,actionGroup:"investigate",affectedPhrases:[]});return{project:e,dateRangeLabel:a.dateRangeLabel,contextLabel:a.contextLabel,mentionSummary:a.scores.mention,visibilitySummary:a.scores.visibility,mentionShareSummary:a.scores.mentionShare,queryCounts:{cited:a.queryCounts.citedQueries,total:a.queryCounts.totalQueries},gapQueries:a.scores.gapQueries,mentionGaps:a.scores.mentionGaps,indexCoverage:a.scores.indexCoverage,providerScores:a.providerScores,competitorPressure:a.scores.competitorPressure,runStatus:a.scores.runStatus,citationMovement:a.citationMovement,mentionMovement:a.mentionMovement,movementComparison:a.movementComparison,insights:u,visibilityEvidence:s,competitors:a.competitors.map(f=>({id:f.id,domain:f.domain,citationCount:f.citationCount,totalQueries:f.totalQueries,pressureLabel:f.pressureLabel,citedQueries:f.citedQueries,movement:"",notes:""})),recentRuns:r.slice(0,5),suggestedQueries:a.suggestedQueries}}function mx(){return{projectMentionSnapshots:0,competitorMentionSnapshots:0,perCompetitor:[],snapshotsWithAnswerText:0,snapshotsTotal:0,score:null}}function ZG(e,a,s){const r={label:"",value:"No data",delta:"Loading…",tone:"neutral",description:"",tooltip:"",trend:[]};return{project:e,dateRangeLabel:"All time",contextLabel:`${e.country} / ${e.language.toUpperCase()}`,mentionSummary:{...r,label:"Mention Coverage"},visibilitySummary:{...r,label:"Citation Coverage"},mentionShareSummary:{...r,label:"Mention Share",scope:"non-brand",unavailable:!0,breakdown:mx(),branded:mx()},queryCounts:{cited:0,total:0},gapQueries:{...r,label:"Citation Gaps"},mentionGaps:{...r,label:"Mention Gaps"},indexCoverage:{...r,label:"Index Coverage"},providerScores:[],competitorPressure:{...r,label:"Competitor Pressure"},runStatus:{...r,label:"Run Status"},citationMovement:{gained:0,lost:0,tone:"neutral",hasPreviousRun:!1},mentionMovement:{gained:0,lost:0,tone:"neutral",hasPreviousRun:!1},movementComparison:{hasPreviousRun:!1,comparable:!1,querySetChanged:!1,previousRunAt:null,currentQueryCount:0,previousQueryCount:0,comparableQueryCount:0,addedQueryCount:0,removedQueryCount:0,addedQueries:[],removedQueries:[]},insights:[],visibilityEvidence:a,competitors:[],recentRuns:s.slice(0,5),suggestedQueries:{rows:[],totalCandidates:0,skippedAlreadyTracked:0}}}function YG(e){const a=g3(e.project),s=[...e.runs].sort((N,E)=>E.createdAt.localeCompare(N.createdAt)),r=s.find(N=>N.kind===ze["answer-visibility"])??s[0]??e.overview?.latestRun?.run??void 0,u=e.project.displayName||e.project.name,f=r?zd(r,u):XG(e.project.id,u),g=e.overview;if(!g)return{project:a,hasMeasurement:!1,mentionScore:0,mentionDelta:"No data",mentionTone:"neutral",lastRun:f,insight:"No runs completed yet.",trend:[],competitorPressureLabel:"None"};const b=g.scores.mention,v=b.progress??0,k=g.queryCounts.mentionedQueries,S=g.queryCounts.totalQueries,A=g.providers.length;return{project:a,hasMeasurement:S>0&&b.progress!=null,mentionScore:v,mentionDelta:S>0?`${k} of ${S} queries`:"No data",mentionTone:b.tone,providerCoverage:b.providerCoverage,lastRun:f,insight:S>0?`${k} of ${S} queries mentioned across ${A} provider${A===1?"":"s"}.`:"No runs completed yet.",trend:b.trend??[],competitorPressureLabel:g.scores.competitorPressure.value}}function XG(e,a){return{id:"none",projectId:e,projectName:a,kind:ze["answer-visibility"],kindLabel:"No runs yet",status:xn.queued,trigger:Qo.manual,createdAt:"",startedAt:"",duration:"",statusDetail:"",summary:"No runs yet",triggerLabel:""}}function JG(e,a){const s=[],r=[],u=[];for(const g of e){r.push(v3(g)),u.push(YG(g));const b=[...g.runs].sort((v,k)=>k.createdAt.localeCompare(v.createdAt));for(const v of b)s.push(zd(v,g.project.displayName||g.project.name))}s.sort((g,b)=>b.createdAt.localeCompare(g.createdAt));const f=e.length>0;return{portfolioOverview:{projects:u,attentionItems:f?WG(r):[{id:"attention_setup",tone:"neutral",title:"No projects yet",detail:"Create your first project using the setup wizard, CLI, or API.",actionLabel:"Open setup",href:"/setup"}],recentRuns:s.slice(0,5),systemHealth:[{id:"api",label:"API",tone:"positive",detail:"Connected",meta:"Real-time data"},{id:"provider",label:"Gemini",tone:"positive",detail:"Configured",meta:"Provider active"}],...f?{}:{emptyState:{title:"No projects yet",detail:"Canonry becomes useful after one project, a small query set, and one competitor list are in place.",ctaLabel:"Launch setup",ctaHref:"/setup"}}},projects:r,runs:s,setup:{healthChecks:[{id:"api",label:"API reachable",detail:"API is responding.",state:"ready",guidance:"Required for project creation and run history."},{id:"provider",label:"Provider configured",detail:"Gemini key is configured.",state:"ready",guidance:"Required for answer-visibility sweeps."}],projectDraft:{name:"",canonicalDomain:"",country:"US",language:"en"},queryImportState:{mode:"paste",queryCount:0,preview:[]},competitorDraft:{domains:[],notes:"Use the CLI to add competitors."},launchState:{enabled:f,ctaLabel:f?"Trigger run":"Create a project first",summary:f?"Ready to run.":"Create a project first to launch a run."}},settings:{providerStatuses:(a?.providers??[]).map(g=>({name:g.name,displayName:g.displayName,keyUrl:g.keyUrl,modelHint:g.modelHint,model:g.model,defaultModel:g.defaultModel,state:g.configured?"ready":"needs-config",detail:g.configured?"Provider is configured.":g.name.toLowerCase()==="local"?"Base URL is missing.":"API key is missing.",quota:g.quota})),google:{state:a?.google?.configured?"ready":"needs-config",detail:a?.google?.configured?"Google OAuth app credentials are configured. Project-level GSC connections can be created from the dashboard.":"Google OAuth client ID and client secret are not configured yet."},bing:{state:a?.bing?.configured?"ready":"needs-config",detail:a?.bing?.configured?"Bing Webmaster Tools API key is configured. Project-level Bing connections can be created from the dashboard.":"Bing Webmaster Tools API key is not configured yet."},selfHostNotes:["Configuration is stored in ~/.canonry/config.yaml.","The local config file is the source of truth for authentication credentials.","Google OAuth app credentials and per-domain Google tokens are stored in local config, not the database.","Database is SQLite at ~/.canonry/data.db.","API key was auto-generated during canonry init."],bootstrapNote:"Use the UI, CLI, or ~/.canonry/config.yaml to manage settings. Authentication credentials persist to local config."}}}function WG(e){const a=[];for(const s of e){const r=s.visibilityEvidence.filter(f=>f.citationState==="lost");r.length>0&&a.push({id:`attention_${s.project.id}_lost`,tone:"negative",title:`${s.project.displayName||s.project.name} lost citations`,detail:`${r.length} quer${r.length>1?"ies":"y"} lost citation.`,actionLabel:"Open project",href:`/projects/${encodeURIComponent(s.project.name)}`});const u=s.recentRuns.filter(f=>f.status===xn.running||f.status===xn.queued);u.length>0&&a.push({id:`attention_${s.project.id}_active`,tone:"neutral",title:`${s.project.displayName||s.project.name} has active runs`,detail:`${u.length} run${u.length>1?"s":""} in progress.`,actionLabel:"View runs",href:"/runs"})}return a.length===0&&a.push({id:"attention_stable",tone:"positive",title:"All projects stable",detail:"No citation losses or active runs to flag."}),a}const x3=T.createContext(null);x3.Provider;function Kl(){return T.useContext(x3)}function Ed(e,a={}){const r=Kl()?.dashboard??null,u=a.includeSettings??!0,f=a.includeOverviews??!0,g=a.pauseProjectPolling??!1,{isAdmin:b}=ha(),v=Et({...yf({client:se,query:{kind:"answer-visibility"}}),enabled:!r,staleTime:nr,refetchInterval:Q=>Q.state.data?.some(oe=>oe.status==="running"||oe.status==="queued")?3e3:nr}),k=Et({...Zs({client:se}),enabled:!r,refetchInterval:g?!1:Q=>{const re=Q.state.data,W=v.data?.some(H=>H.status==="running"||H.status==="queued");return(re?.length??0)===0||!!W?aV:iV}}),S=Et({...$V({client:se}),enabled:!r&&u&&b}),A=k.data??[],N=v.data??[],E=G4({queries:A.map(Q=>{const re=N.filter(H=>H.projectId===Q.id),W=re.filter(H=>(H.status==="completed"||H.status==="partial")&&H.kind==="answer-visibility"&&H.trigger!=="probe").sort((H,$)=>$.createdAt.localeCompare(H.createdAt)),oe=W.length>0?W[0].id:"no-run";return{queryKey:["project-overview-slim",Q.id,oe],queryFn:async()=>{const H=await OS(Q.name).catch(()=>null);return{project:Q,runs:re,queries:[],competitors:[],timeline:[],latestRunDetails:[],previousRunDetails:[],gscCoverage:null,bingCoverage:null,dbInsights:null,overview:H}},enabled:!r&&f&&k.isSuccess&&v.isSuccess,staleTime:Tu}})}),Z=!f||E.every(Q=>Q.isSuccess),_=T.useMemo(()=>{if(r)return r;if(!k.data||!v.data||A.length>0&&!Z)return null;const Q=f?E.map(re=>re.data?{...re.data,runs:N.filter(W=>W.projectId===re.data.project.id)}:null).filter(re=>re!=null):A.map((re,W)=>{const oe=E[W]?.data;return{project:re,runs:N.filter(H=>H.projectId===re.id),queries:[],competitors:[],timeline:[],latestRunDetails:[],previousRunDetails:[],gscCoverage:null,bingCoverage:null,dbInsights:null,overview:oe?.overview??null}});return JG(Q,S.data??null)},[r,k.data,v.data,S.data,f,Z,E,A,N]),G=!r&&(k.isError||v.isError),K=!r&&!_&&!G,te=T.useCallback(async()=>{const Q=[k.refetch(),v.refetch(),...f?E.map(re=>re.refetch()):[]];u&&Q.push(S.refetch()),await Promise.all(Q)},[u,f,E,k.refetch,v.refetch,S.refetch]);return{dashboard:_,isLoading:K,isError:G,refetch:te}}function e$(e){return JSON.stringify(e.filter(a=>a.kind==="answer-visibility"&&a.trigger!=="probe"&&(a.status==="completed"||a.status==="partial")).map(a=>[a.id,a.status]).sort(([a],[s])=>a.localeCompare(s)))}async function Kh(e,a,s="active"){const r=u=>{const f=u.queryKey[0];return f?._id==="getApiV1ProjectsByNameAnalyticsCompetitors"&&f.path?.name===a};return s==="active"&&await e.cancelQueries({predicate:r}),e.invalidateQueries({predicate:r,refetchType:s})}function IY(e,a,s){const r=da(),u=T.useRef({projectName:e,revision:a,enabled:s});T.useEffect(()=>{const f=u.current;u.current={projectName:e,revision:a,enabled:s},!(!s||!f.enabled||f.projectName!==e||f.revision===a)&&Kh(r,e)},[s,e,r,a])}const t$=20;function n$(e,a={}){const s=da(),r=Kl(),u=T.useMemo(()=>!r||!e?null:r.dashboard.projects.find(W=>W.project.name===e)??null,[r,e]),f=Et({...kV({client:se,path:{name:e??""}}),enabled:!!e&&!u,staleTime:Tu,refetchOnWindowFocus:"always"}),g=Et({...MV({client:se,path:{name:e??""},query:{kind:"answer-visibility"}}),enabled:!!e,staleTime:nr,refetchOnWindowFocus:"always",refetchInterval:W=>W.state.data?.some($=>$.projectId===f.data?.id&&($.status==="running"||$.status==="queued"))?3e3:nr}),b=f.data??null,v=T.useMemo(()=>b?(g.data??[]).filter(W=>W.projectId===b.id):[],[b,g.data]),{latestRunIds:k,latestRunIdsKey:S,latestVisibilityRevision:A}=T.useMemo(()=>{const W=v.filter($=>($.status==="completed"||$.status==="partial")&&$.kind==="answer-visibility"&&$.trigger!=="probe").sort(($,Te)=>Te.createdAt.localeCompare($.createdAt)),oe=W[0]?.createdAt??null,H=oe?W.filter($=>$.createdAt===oe).map($=>$.id):[];return{latestRunIds:H,latestRunIdsKey:[...H].sort().join(","),latestVisibilityRevision:oe?`${oe}:${[...H].sort().join(",")}`:"none"}},[v]),N=!!b&&!!e&&g.isSuccess,E=Et({queryKey:["project-dashboard-full",b?.id??null,S||"none","overview"],queryFn:async()=>({project:b,overview:await OS(e)}),enabled:N&&a.overview===!0,staleTime:Tu,refetchOnWindowFocus:"always"}),Z=Et({queryKey:["project-dashboard-full",b?.id??null,S||"none","evidence"],queryFn:async()=>{const[W,oe,H]=await Promise.all([DS(e),NI(e,void 0,t$),Promise.all(k.map($=>Ph($)))]);return{project:b,queries:W,timeline:oe,latestRunDetails:H}},enabled:N&&a.evidence===!0,staleTime:Tu,refetchOnWindowFocus:"always"}),_=T.useMemo(()=>{if(!b||!g.data)return u;const W=a.evidence?Z.data:void 0,oe={project:b,runs:v,queries:W?.queries??[],timeline:W?.timeline??[],latestRunDetails:W?.latestRunDetails??[],overview:a.overview?E.data?.overview??null:null},H=v3(oe);return u&&!(a.overview&&E.data)?{...u,project:H.project,recentRuns:g.data?H.recentRuns:u.recentRuns,visibilityEvidence:W?H.visibilityEvidence:u.visibilityEvidence}:H},[b,v,Z.data,E.data,u,a.evidence,a.overview,g.data]),G=T.useCallback(async()=>{await Promise.all([f.refetch(),g.refetch(),s.invalidateQueries({queryKey:["project-dashboard-full",b?.id??null]})])},[f.refetch,g.refetch,s,b?.id]),K=f.isError||g.isError,te=!u&&(f.isLoading||g.isLoading),Q=!!e&&a.overview===!0&&!u&&!K&&E.isPending,re=!!e&&a.evidence===!0&&!u&&!K&&Z.isPending;return{commandCenter:_,project:b,isLoading:te,isError:K,overviewLoading:Q,overviewError:a.overview===!0&&E.isError&&!E.data,evidenceLoading:re,evidenceError:a.evidence===!0&&Z.isError&&!Z.data,latestVisibilityRevision:A,competitorHistoryRevision:e$(v),refetch:G}}const a$=["health"];async function i$(){const e=await HI("/health","API"),a=Sl()&&e.state==="ok"?{label:"Worker",state:"disabled",detail:"Background execution is disabled in this public demo."}:e.state==="ok"?{label:"Worker",state:"ok",detail:"In-process job runner"}:{label:"Worker",state:e.state,detail:`Depends on API health check · ${e.detail}`,statusCode:e.statusCode,hint:e.hint?`Worker status is inferred from API health in this deployment mode. ${e.hint}`:"Worker status is inferred from API health in this deployment mode."};return{apiStatus:e,workerStatus:a}}function Sf(e,a){return Et({queryKey:a$,queryFn:i$,enabled:e,refetchInterval:15e3,initialData:a})}function s$(e){return Et({...bf({client:se,path:{id:e??""}}),enabled:!!e,refetchInterval:a=>{const s=a.state.data?.status;return s==="running"||s==="queued"?3e3:!1}})}function jf(){const e=Hs(),a=Dx({strict:!1}),s=$4({select:v=>v.location.pathname}),r=a.runId??null,u=a.evidenceId??null;return{runId:r,evidenceId:u,openRun:v=>{e({to:s,from:kn.to,search:k=>({...k,runId:v,evidenceId:void 0})})},openEvidence:v=>{e({to:s,from:kn.to,search:k=>({...k,evidenceId:v,runId:void 0})})},closeDrawer:()=>{e({to:s,from:kn.to,search:v=>({...v,runId:void 0,evidenceId:void 0})})}}}const o$={negative:"toast-card-negative",caution:"toast-card-caution",positive:"toast-card-positive",neutral:"toast-card-neutral"};function r$(e){if(e.cta)return`${e.cta.label}: ${e.title}`}function l$(){const e=T.useSyncExternalStore(tV,Hv,Hv),a=Hs(),{openRun:s}=jf(),r=T.useCallback(f=>{Lh(f)},[]),u=T.useCallback(f=>{f.cta&&(f.cta.intent==="open-run-drawer"?s(f.cta.runId):a({to:"/runs"}),Lh(f.id))},[a,s]);return e.length===0?null:c.jsx("div",{className:"toast-viewport","aria-label":"Notifications",children:e.map(f=>c.jsxs("section",{role:f.tone==="negative"?"alert":"status","aria-live":f.tone==="negative"?"assertive":"polite","data-state":f.state,className:`toast-card ${o$[f.tone]}`,children:[c.jsxs("div",{className:"toast-copy",children:[c.jsx("p",{className:"toast-title",children:f.title}),f.detail?c.jsx("p",{className:"toast-detail",children:f.detail}):null,f.cta?c.jsx("button",{type:"button",className:"toast-action",onClick:()=>u(f),"aria-label":r$(f),children:f.cta.label}):null]}),c.jsx("button",{type:"button",onClick:()=>r(f.id),className:"toast-dismiss","aria-label":"Dismiss",children:c.jsx(sr,{className:"size-3.5"})})]},f.id))})}const c$="https://github.com/Canonry/canonry",u$="https://canonry.ai",px="Run it from your agent with the MCP server, API, CLI, and plugins for Claude Code and Codex.",d$=[{title:"Visibility",links:[["AI visibility","/projects/summit-roofing"],["Search engines","/projects/summit-roofing/search-console"],["Traffic & conversions","/projects/summit-roofing/conversions"],["Reports","/projects/harbor-resorts/report"]]},{title:"Portfolio",links:[["Properties & markets","/projects/harbor-resorts"],["Queries & research","/projects/harbor-resorts/queries"],["Activity","/projects/harbor-resorts/activity"]]},{title:"Website",links:[["Site health","/projects/summit-roofing/technical-aeo"],["Local presence","/projects/summit-roofing/local"],["Backlinks","/projects/summit-roofing/backlinks"]]}];function m$(){const e=T.useId();if(!Sl())return null;const a=Ad(),s=`${e}-new-tab`,r={target:"_blank",rel:"noopener noreferrer","aria-describedby":s};return c.jsxs("aside",{className:"demo-banner","aria-label":"Public demo",children:[c.jsx("p",{className:"demo-banner-name",children:"Canonry demo"}),c.jsx("p",{className:"demo-banner-facts",children:"No sign-in. View only. Fictional data."}),c.jsx("p",{className:"demo-banner-agent",children:px}),c.jsxs("div",{className:"demo-banner-actions",children:[c.jsxs("a",{className:"demo-banner-primary",href:u$,...r,children:["canonry.ai",c.jsx(J4,{"aria-hidden":"true",size:14})]}),c.jsxs("a",{className:"demo-banner-secondary",href:c$,...r,children:[c.jsx(Lx,{"aria-hidden":"true",size:15}),"GitHub"]}),c.jsxs("details",{onKeyDown:u=>{u.key==="Escape"&&(u.currentTarget.open=!1,u.currentTarget.querySelector("summary")?.focus())},children:[c.jsxs("summary",{children:["Explore ",c.jsx(Xu,{"aria-hidden":"true",size:14})]}),c.jsxs("div",{className:"demo-banner-panel",children:[c.jsx("p",{className:"demo-banner-panel-agent",children:px}),c.jsxs("nav",{className:"demo-banner-examples","aria-label":"Demo examples",children:[c.jsx("a",{href:`${a}/projects/summit-roofing`,children:"Standard business"}),c.jsx("a",{href:`${a}/projects/harbor-resorts`,children:"Property portfolio"})]}),c.jsx("nav",{className:"demo-banner-features","aria-label":"Demo feature directory",children:d$.map(({title:u,links:f})=>c.jsxs("section",{"aria-label":u,children:[c.jsx("h2",{children:u}),c.jsx("ul",{children:f.map(([g,b])=>c.jsx("li",{children:c.jsx("a",{href:`${a}${b}`,children:g})},b))})]},u))})]})]})]}),c.jsx("span",{id:s,hidden:!0,children:"Opens in a new tab"})]})}function jl(e){switch(e){case ze["answer-visibility"]:return"Visibility sweep";case ze["gsc-sync"]:return"GSC sync";case ze["inspect-sitemap"]:return"Sitemap inspection";case ze["ga-sync"]:return"GA sync";case ze["traffic-sync"]:return"Traffic sync";case ze["bing-inspect"]:return"Bing URL inspection";case ze["bing-inspect-sitemap"]:return"Bing sitemap inspection";case ze["site-audit"]:return"Technical audit";case ze["backlink-extract"]:return"Backlink extract";case ze["aeo-discover-seed"]:return"Discovery (seed phase)";case ze["aeo-discover-probe"]:return"Discovery (probe phase)";case ze["gbp-sync"]:return"Business Profile sync";case ze["ads-sync"]:return"ChatGPT ads sync";case ze["google-ads-sync"]:return"Google Ads sync";case ze["gtm-sync"]:return"Tag Manager sync"}}function hx(e){return e==="running"?"Running":e==="queued"?"Queued":e==="partial"?"Partial":e==="completed"?"Completed":e==="failed"?"Failed":e==="cancelled"?"Cancelled":"Starting"}function p$(){const e=T.useSyncExternalStore(ZS,gi,gi),a=T.useMemo(()=>Object.values(e.runs),[e.runs]),s=a.length>0,r=Et({...yf({client:se}),enabled:s,staleTime:nr}),u=T.useMemo(()=>new Map((r.data??[]).map(b=>[b.id,b.status])),[r.data]);if(!s)return null;const f=a.map(b=>({...b,status:u.get(b.runId)??b.lastAnnouncedStatus})),g=f.length===1?jl(f[0].kind):`${f.length} active tasks`;return c.jsxs("div",{className:"task-center",children:[c.jsxs("p",{className:"sr-only",role:"status","aria-live":"polite",children:[f.length," active ",f.length===1?"task":"tasks","."," ",f.map(b=>`${jl(b.kind)} ${hx(b.status)}`).join(". "),"."]}),c.jsxs("details",{className:"task-center-details",children:[c.jsxs("summary",{className:"task-center-trigger",children:[c.jsx(Zo,{className:"size-3.5 shrink-0 motion-safe:animate-spin","aria-hidden":"true"}),c.jsx("span",{className:"task-center-summary",children:g}),c.jsx("span",{className:"task-center-count","aria-hidden":"true",children:f.length}),c.jsx(Xu,{className:"task-center-chevron size-3.5 shrink-0","aria-hidden":"true"})]}),c.jsxs("div",{className:"task-center-panel",children:[c.jsxs("div",{className:"task-center-heading",children:[c.jsx("span",{children:"Active tasks"}),c.jsx("span",{className:"tabular-nums text-faint",children:f.length})]}),c.jsx("ul",{className:"task-center-list",children:f.map(b=>c.jsxs("li",{className:"task-center-item",children:[c.jsxs("div",{className:"min-w-0",children:[c.jsx("p",{className:"truncate text-[13px] font-medium text-strong",children:jl(b.kind)}),c.jsx("p",{className:"mt-0.5 truncate text-xs text-muted",children:b.projectLabel??b.projectId})]}),c.jsx(pn,{tone:b.status==="failed"?"negative":b.status==="partial"?"caution":"neutral",children:hx(b.status)})]},b.runId))}),c.jsx(tt,{to:"/runs",className:"task-center-footer-link",children:"View all runs"})]})]})]})}function h$(e,a={}){const{threshold:s=80}=a,r=T.useRef(null),u=T.useRef({scrollHeight:0,wasAtEnd:!0});function f(v){return v.scrollHeight-v.scrollTop-v.clientHeight}function g(){const v=r.current;return v?f(v)<=s:!0}function b(){const v=r.current;v&&(v.scrollTop=v.scrollHeight,u.current.wasAtEnd=!0,u.current.scrollHeight=v.scrollHeight)}return T.useEffect(()=>{const v=r.current;if(!v)return;const k=()=>{u.current.wasAtEnd=f(v)<=s};return v.addEventListener("scroll",k,{passive:!0}),()=>v.removeEventListener("scroll",k)},[s]),T.useLayoutEffect(()=>{const v=r.current;if(!v)return;const k=v.scrollHeight;k>u.current.scrollHeight&&u.current.wasAtEnd&&(v.scrollTop=k),u.current.scrollHeight=k},e),T.useEffect(()=>{const v=r.current;if(!v||typeof ResizeObserver>"u")return;const k=new ResizeObserver(()=>{const S=v.scrollHeight;S>u.current.scrollHeight&&u.current.wasAtEnd&&(v.scrollTop=S),u.current.scrollHeight=S});return k.observe(v),v.firstElementChild&&k.observe(v.firstElementChild),()=>k.disconnect()},[]),{ref:r,scrollToEnd:b,isAtEnd:g}}const Hh="Sweeps are run by your Canonry team",f$="Scans are run by your Canonry team",fx="Next sweep unavailable",g$="Sweep running…",y$="Next sweep:";function b$(e,a){try{return new Intl.DateTimeFormat("en-US",{month:"short",day:"numeric",timeZone:a??"UTC"}).format(new Date(e))}catch{return null}}function v$({projectName:e,kind:a=ze["answer-visibility"],running:s=!1,loadSchedule:r=!0}){const u=a===ze["site-audit"],f=Et({...HV({client:se,path:{name:e},query:{kind:a}}),enabled:r&&!!e,retry:!1,refetchInterval:6e4}),g=f.isError?void 0:f.data,b=g?.enabled&&g.nextRunAt?new Date(g.nextRunAt):null,v=b&&Number.isFinite(b.getTime())?u?b.toLocaleString("en-GB",{weekday:"long",day:"numeric",month:"short",hour:"2-digit",minute:"2-digit",timeZone:"UTC",hourCycle:"h23"}):b$(b.toISOString(),g?.timezone):null,S=(f.error instanceof fn?f.error.code:f.error?.error?.code)==="NOT_FOUND",A=!v||S||!g?.enabled;return c.jsx("p",{className:"text-sm text-secondary",role:"status",children:u?c.jsxs(c.Fragment,{children:[s&&c.jsx("span",{className:"text-neutral",children:"Scan running… · "}),v&&b?c.jsxs(c.Fragment,{children:["Next scan ",c.jsxs("time",{dateTime:b.toISOString(),children:[v," UTC"]})," · managed by your Canonry team"]}):f$]}):s?g$:A?fx:v&&b?c.jsxs(c.Fragment,{children:[y$," ",c.jsx("time",{dateTime:b.toISOString(),children:v})]}):fx})}async function Af(e){try{return await e.json()}catch{return{}}}function x$(){return typeof window<"u"&&window.__CANONRY_CONFIG__?.basePath?window.__CANONRY_CONFIG__.basePath.replace(/\/$/,"")+"/api/v1":"/api/v1"}const Cf=x$();function Nf(e){e===401&&hf()}async function gx(e){const a=await fetch(`${Cf}/projects/${encodeURIComponent(e)}/agent/transcript`,{credentials:"include"});if(!a.ok){Nf(a.status);const s=await Af(a);throw new fn(s.error?.message??`transcript fetch failed: ${a.status}`,a.status,s.error?.code)}return await a.json()}async function k$(e){const a=await fetch(`${Cf}/projects/${encodeURIComponent(e)}/agent/transcript`,{method:"DELETE",credentials:"include"});if(!a.ok){Nf(a.status);const s=await Af(a);throw new fn(s.error?.message??`reset failed: ${a.status}`,a.status,s.error?.code)}}async function w$({project:e,prompt:a,provider:s,modelId:r,scope:u,profile:f,signal:g,onEvent:b}){const v={prompt:a};s&&(v.provider=s),r&&(v.modelId=r),u&&(v.scope=u),f&&(v.profile=f);const k=await fetch(`${Cf}/projects/${encodeURIComponent(e)}/agent/prompt`,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json"},body:JSON.stringify(v),signal:g});if(!k.ok||!k.body){Nf(k.status);const Z=await Af(k);throw new fn(Z.error?.message??`prompt failed: ${k.status}`,k.status,Z.error?.code)}const S=k.body.getReader(),A=new TextDecoder;let N="";const E=()=>{S.cancel().catch(()=>{})};g?.addEventListener("abort",E,{once:!0});try{for(;;){const{value:Z,done:_}=await S.read();if(_)break;N+=A.decode(Z,{stream:!0});let G=N.indexOf(`
59
-
60
- `);for(;G!==-1;){const K=N.slice(0,G);N=N.slice(G+2);for(const te of K.split(`
61
- `)){if(!te.startsWith("data:"))continue;const Q=te.slice(5).trim();if(Q)try{b(JSON.parse(Q))}catch{}}G=N.indexOf(`
62
-
63
- `)}}}finally{g?.removeEventListener("abort",E);try{S.releaseLock()}catch{}}}function k3(e){return!e||e.role!=="assistant"?"":e.content.filter(a=>a.type==="text").map(a=>a.text).join("")}const S$=[{label:"Status",prompt:"Quick status overview for this project — latest runs, current health, anything unusual."},{label:"Top insights",prompt:"Walk me through the 3 most severe active insights and what to do about each."},{label:"Last failed run",prompt:"If the latest run failed, dig into it and tell me what went wrong plus how to fix it."},{label:"Schedule",prompt:"What is the current sweep schedule, and is it appropriate given recent volatility?"}],j$=[{command:"/status",label:"Status",prompt:"Quick status overview for this project — latest runs, current health, anything unusual."},{command:"/insights",label:"Top insights",prompt:"Walk me through the 3 most severe active insights and what to do about each."},{command:"/last-run",label:"Last run",prompt:"Summarize the latest run for this project — provider mix, visibility changes, and anything that moved."},{command:"/last-failed",label:"Last failed run",prompt:"If the latest run failed, dig into it and tell me what went wrong plus how to fix it."},{command:"/run-sweep",label:"Run sweep now",prompt:"Run a new answer-visibility sweep for this project now and tell me when it lands."},{command:"/schedule",label:"Schedule",prompt:"What is the current sweep schedule, and is it appropriate given recent volatility?"},{command:"/queries",label:"Queries",prompt:"List the tracked queries for this project and flag any that are obvious duplicates or underperformers."},{command:"/competitors",label:"Competitors",prompt:"List this project's tracked competitors and call out which ones are showing up in answer citations."},{command:"/clear",label:"Clear conversation",action:"clear"}],Nu=e=>`canonry:aero:provider:${e}`,yx=e=>`canonry:aero:scope:${e}`;function bx(e){if(typeof window>"u")return null;try{return window.localStorage.getItem(e)}catch{return null}}function vx(e,a){if(!(typeof window>"u"))try{window.localStorage.setItem(e,a)}catch{}}function xx(e){if(!(typeof window>"u"))try{window.localStorage.removeItem(e)}catch{}}function A$({projectName:e}){const a=Ps(),{canWrite:s}=ha(),[r,u]=T.useState(!1),[f,g]=T.useState(!1),[b,v]=T.useState([]),[k,S]=T.useState(""),[A,N]=T.useState(!1),[E,Z]=T.useState([]),[_,G]=T.useState(""),[K,te]=T.useState(null),[Q,re]=T.useState(()=>bx(Nu(e))??null),[W,oe]=T.useState(()=>bx(yx(e))==="all"?"all":"read-only"),H=a?"read-only":W,$=T.useRef(null),{ref:Te}=h$([b,_,E]),Ke=T.useRef(null),[Fe,Re]=T.useState(0),ve=T.useMemo(()=>{const V=k.trimStart();if(!V.startsWith("/"))return[];if(/\s/.test(V))return[];const q=V.toLowerCase();return j$.filter(le=>(!a||le.command!=="/run-sweep")&&(le.command.startsWith(q)||le.label.toLowerCase().includes(q.slice(1))))},[k,a]);T.useEffect(()=>{Re(V=>ve.length===0?0:Math.min(V,ve.length-1))},[ve.length]);const Ue=Et({...iU({client:se,path:{name:e}}),staleTime:6e4}),be=T.useMemo(()=>{const V=Ue.data?.providers??[];if(Q){const le=V.find(De=>De.id===Q&&De.configured);if(le)return le}const q=Ue.data?.defaultProvider;return q?V.find(le=>le.id===q)??null:null},[Q,Ue.data]);T.useEffect(()=>{if(!Ue.data||!Q)return;Ue.data.providers.find(q=>q.id===Q&&q.configured)||(re(null),xx(Nu(e)))},[Ue.data,Q,e]);const P=T.useCallback(V=>{re(V),V?vx(Nu(e),V):xx(Nu(e))},[e]),ae=T.useCallback(()=>{a||oe(V=>{const q=V==="all"?"read-only":"all";return vx(yx(e),q),q})},[e,a]);T.useEffect(()=>{if(!r)return;const V=q=>{q.key==="Escape"&&(f?g(!1):u(!1))};return window.addEventListener("keydown",V),()=>window.removeEventListener("keydown",V)},[r,f]),T.useEffect(()=>{if(!r||!be)return;let V=!1;te(null);const q=()=>{V||A||gx(e).then(ye=>{V||v(ye.messages)}).catch(ye=>{V||te(ye instanceof Error?ye.message:"Failed to load transcript")})};q();const De=window.setInterval(q,15e3);return()=>{V=!0,window.clearInterval(De)}},[r,e,A,be]),T.useEffect(()=>()=>{$.current?.abort()},[e]);async function he(V){const q=V.trim();if(!q||A||!be)return;if(a&&/^\/run-sweep(?:\s|$)/i.test(q)){te(Hh);return}te(null),S(""),N(!0),G(""),Z([]);const le={role:"user",content:q,timestamp:Date.now()};v(ye=>[...ye,le]);const De=new AbortController;$.current=De;try{await w$({project:e,prompt:q,provider:Q??void 0,scope:H,signal:De.signal,onEvent:je});const ye=await gx(e);v(ye.messages)}catch(ye){ye.name!=="AbortError"&&te(ye instanceof Error?ye.message:"Prompt failed")}finally{N(!1),G(""),$.current=null}}function je(V){switch(V.type){case"message_update":G(k3(V.message));break;case"message_end":V.message.role==="assistant"&&G("");break;case"tool_execution_start":Z(q=>[...q,{id:V.toolCallId,name:V.toolName,args:V.args,startedAt:Date.now()}]);break;case"tool_execution_end":Z(q=>q.map(le=>le.id===V.toolCallId?{...le,endedAt:Date.now(),isError:V.isError,result:V.result}:le));break;case"error":te(V.message);break}}async function X(){$.current?.abort();try{await k$(e),v([]),te(null)}catch(V){te(V instanceof Error?V.message:"Reset failed")}}const Ie=b.length===0;if(Ue.isPending)return null;if(Ue.isError)return c.jsx("div",{className:"pointer-events-none fixed inset-x-0 bottom-0 z-40 flex justify-center p-3",children:c.jsxs("div",{role:"status",className:"flex w-full max-w-3xl flex-wrap items-center gap-x-2 gap-y-1 rounded-lg border border-base bg-bg/95 px-4 py-2 text-sm shadow-lg",children:[c.jsx(du,{className:"h-4 w-4 text-muted","aria-hidden":"true"}),c.jsx("span",{className:"font-medium text-strong",children:"Aero could not check provider availability."}),c.jsx(fe,{variant:"outline",size:"sm",className:"pointer-events-auto ml-auto",onClick:()=>{Ue.refetch()},children:"Try again"})]})});if(!be)return c.jsx("div",{className:"pointer-events-none fixed inset-x-0 bottom-0 z-40 flex justify-center p-3",children:c.jsxs("div",{role:"status",className:"flex w-full max-w-3xl flex-wrap items-center gap-x-2 gap-y-1 rounded-lg border border-base bg-bg/95 px-4 py-2 text-sm shadow-lg",children:[c.jsx(du,{className:"h-4 w-4 text-muted","aria-hidden":"true"}),c.jsx("span",{className:"font-medium text-strong",children:"Aero needs an agent provider."}),s?c.jsx(fe,{asChild:!0,variant:"outline",size:"sm",className:"pointer-events-auto ml-auto",children:c.jsx(tt,{to:"/settings",children:"Open Settings"})}):c.jsx("span",{className:"ml-auto text-secondary",children:"Ask an administrator to configure one."})]})});const Ne=r&&f?"pointer-events-auto fixed inset-0 z-40 flex items-stretch justify-center bg-bg/70 p-4 sm:p-8 backdrop-blur-sm":"pointer-events-none fixed inset-x-0 bottom-0 z-40 flex justify-center p-3",Ae=f?"pointer-events-auto flex h-full w-full max-w-5xl flex-col overflow-hidden rounded-2xl border border-mono-800/80 bg-bg/95 shadow-2xl":"pointer-events-auto w-full max-w-3xl",ne=f?"flex-1 overflow-y-auto px-6 py-5 text-sm text-strong":"max-h-[40vh] min-h-[120px] overflow-y-auto px-4 py-3 text-sm text-strong";return c.jsx("div",{className:Ne,onClick:V=>{f&&V.target===V.currentTarget&&g(!1)},children:c.jsx("div",{className:Ae,children:r?c.jsxs("div",{className:f?"flex h-full flex-col":"flex flex-col overflow-hidden rounded-2xl border border-mono-800/80 bg-bg/95 shadow-xl backdrop-blur",children:[c.jsxs("div",{className:"flex items-center justify-between gap-2 border-b border-mono-800/70 px-4 py-2.5",children:[c.jsxs("div",{className:"flex items-center gap-2",children:[c.jsx(du,{className:"h-4 w-4 text-positive-400","aria-hidden":"true"}),c.jsx("span",{className:"text-sm font-medium text-heading",children:"Aero"}),c.jsx("span",{className:"text-[10px] uppercase tracking-wider text-muted",children:A?"working…":e})]}),c.jsxs("div",{className:"flex items-center gap-1",children:[c.jsx(C$,{providers:Ue.data?.providers??[],active:be,override:Q,onPick:P,disabled:A}),c.jsx("button",{type:"button",onClick:Ft(X),className:"rounded-md p-1.5 text-muted transition hover:bg-surface-inset hover:text-strong","aria-label":"Reset conversation",title:"Reset conversation",children:c.jsx(Ux,{className:"h-3.5 w-3.5","aria-hidden":"true"})}),c.jsx("button",{type:"button",onClick:()=>g(V=>!V),className:"rounded-md p-1.5 text-muted transition hover:bg-surface-inset hover:text-strong","aria-label":f?"Collapse":"Expand",title:f?"Collapse":"Expand",children:f?c.jsx(W4,{className:"h-3.5 w-3.5","aria-hidden":"true"}):c.jsx(eA,{className:"h-3.5 w-3.5","aria-hidden":"true"})}),c.jsx("button",{type:"button",onClick:()=>{g(!1),u(!1)},className:"rounded-md p-1.5 text-muted transition hover:bg-surface-inset hover:text-strong","aria-label":"Close Aero",children:c.jsx(sr,{className:"h-4 w-4","aria-hidden":"true"})})]})]}),c.jsxs("div",{ref:Te,className:ne,children:[K&&c.jsx("div",{className:"mb-2 rounded-md border border-negative-700/40 bg-negative-950/40 px-3 py-2 text-xs text-negative-200",children:K}),Ie&&!A&&c.jsxs("div",{className:"flex flex-col gap-3 py-2",children:[c.jsxs("p",{className:"text-sm text-secondary",children:["Ask about ",c.jsx("span",{className:"text-strong",children:e})," or choose a starting point."]}),c.jsx("div",{className:"flex flex-wrap gap-1.5",children:S$.map(V=>c.jsx("button",{type:"button",onClick:()=>{he(V.prompt)},className:"rounded-md border border-base bg-bg-elevated/70 px-3 py-1.5 text-sm text-neutral transition hover:border-strong hover:bg-mono-800/70 hover:text-heading",children:V.label},V.label))})]}),T$(b,e,Q,H),E.length>0&&c.jsx("div",{className:"mt-3 space-y-1.5",children:E.map(V=>c.jsx(w3,{trail:V},V.id))}),A&&_&&c.jsxs("div",{className:"mt-3",children:[c.jsx("div",{className:"mb-0.5 text-[10px] uppercase tracking-wider text-positive-400",children:"Aero"}),c.jsx(S3,{content:_})]}),A&&!_&&E.every(V=>V.endedAt!==void 0)&&c.jsx(q$,{})]}),c.jsx(N$,{projectName:e,activeProvider:be,scope:H,onToggleScope:ae,scopeLocked:a,disabled:A}),c.jsxs("div",{className:"relative",children:[ve.length>0&&c.jsx(_$,{matches:ve,selectedIndex:Fe,onHover:Re,onPick:V=>{S(""),Ke.current?.focus(),V.action==="clear"?X():he(V.prompt)}}),c.jsxs("form",{className:"flex items-end gap-2 border-t border-mono-800/70 bg-bg/80 px-3 py-2.5",onSubmit:V=>{if(V.preventDefault(),ve.length>0){const q=ve[Fe];S(""),q.action==="clear"?X():he(q.prompt);return}he(k)},children:[c.jsx("textarea",{ref:Ke,value:k,onChange:V=>S(V.target.value),onKeyDown:V=>{if(ve.length>0){if(V.key==="ArrowDown"){V.preventDefault(),Re(q=>(q+1)%ve.length);return}if(V.key==="ArrowUp"){V.preventDefault(),Re(q=>(q-1+ve.length)%ve.length);return}if(V.key==="Tab"){V.preventDefault();const q=ve[Fe];S(`${q.command} `);return}if(V.key==="Escape"){V.preventDefault(),S("");return}}if(V.key==="Enter"&&!V.shiftKey)if(V.preventDefault(),ve.length>0){const q=ve[Fe];S(""),q.action==="clear"?X():he(q.prompt)}else he(k)},placeholder:"Ask Aero, or / for commands…",disabled:A,rows:f?3:1,className:"flex-1 resize-none bg-transparent text-sm text-heading placeholder:text-mono-600 focus:outline-none disabled:opacity-60"}),c.jsx("button",{type:"submit",disabled:A||!k.trim(),className:"inline-flex h-7 w-7 items-center justify-center rounded-md bg-positive-500 text-accent-fg transition hover:bg-positive-400 disabled:opacity-40","aria-label":"Send",children:c.jsx(tA,{className:"h-3.5 w-3.5","aria-hidden":"true"})})]})]})]}):c.jsx("button",{type:"button",onClick:()=>u(!0),className:"flex w-full items-center justify-between rounded-lg border border-mono-800/80 bg-bg/95 px-4 py-2 text-left text-sm text-secondary shadow-lg transition hover:border-strong hover:bg-bg-elevated/90 hover:text-strong",children:c.jsxs("span",{className:"flex items-center gap-2",children:[c.jsx(du,{className:"h-4 w-4 text-positive-400","aria-hidden":"true"}),"Ask Aero about ",e,"…"]})})})})}function C$({providers:e,active:a,override:s,onPick:r,disabled:u}){const[f,g]=T.useState(!1),b=T.useRef(null);if(T.useEffect(()=>{if(!f)return;const k=A=>{b.current?.contains(A.target)||g(!1)},S=A=>{A.key==="Escape"&&g(!1)};return window.addEventListener("mousedown",k),window.addEventListener("keydown",S),()=>{window.removeEventListener("mousedown",k),window.removeEventListener("keydown",S)}},[f]),e.length===0)return null;const v=a?.label.replace(/\s+\(.+\)$/,"")??"No provider";return c.jsxs("div",{ref:b,className:"relative",children:[c.jsxs("button",{type:"button",onClick:()=>g(k=>!k),disabled:u,className:"flex items-center gap-1 rounded-md px-2 py-1 text-sm text-secondary transition hover:bg-surface-inset hover:text-strong disabled:opacity-50","aria-label":"Switch agent model","aria-haspopup":"listbox","aria-expanded":f,title:a?`${a.label} · ${a.defaultModel}`:"Pick a provider",children:[c.jsx("span",{className:"font-medium text-strong",children:v}),c.jsx(Xu,{className:"h-3 w-3","aria-hidden":"true"})]}),f&&c.jsxs("div",{role:"listbox",className:"absolute right-0 top-full z-50 mt-1 w-64 overflow-hidden rounded-lg border border-base bg-bg shadow-xl",children:[c.jsx("div",{className:"border-b border-default px-3 py-2 text-sm font-medium text-secondary",children:"Answer engine"}),c.jsx("ul",{className:"max-h-72 overflow-y-auto py-1",children:e.map(k=>{const S=a?.id===k.id,A=s===k.id;return c.jsx("li",{children:c.jsxs("button",{type:"button",role:"option","aria-selected":S,disabled:!k.configured,onClick:()=>{k.configured&&(r(A?null:k.id),g(!1))},className:"flex w-full items-center gap-2 px-3 py-2.5 text-left text-sm transition enabled:hover:bg-bg-elevated disabled:cursor-not-allowed disabled:opacity-60",title:k.configured?k.defaultModel:`Add ${z$(k.id)} in Settings or your environment`,children:[c.jsx("span",{className:"flex h-4 w-4 shrink-0 items-center justify-center",children:S?c.jsx(Jh,{className:"h-3 w-3 text-positive-400","aria-hidden":"true"}):null}),c.jsx("span",{className:"min-w-0 flex-1 truncate font-medium text-heading",children:k.label.replace(/\s+\(.+\)$/,"")}),A&&c.jsx("span",{className:"rounded-md border border-positive-800/60 bg-positive-950/60 px-2 py-0.5 text-[11px] text-positive",children:"Pinned"}),!k.configured&&c.jsx("span",{className:"rounded-md border border-base px-2 py-0.5 text-[11px] text-secondary",children:"Needs setup"})]})},k.id)})}),s&&c.jsx("button",{type:"button",onClick:()=>{r(null),g(!1)},className:"w-full border-t border-default px-3 py-2 text-left text-[11px] text-secondary transition hover:bg-bg-elevated hover:text-heading",children:"Reset to auto-detected default"})]})]})}function N$({projectName:e,activeProvider:a,scope:s,onToggleScope:r,scopeLocked:u,disabled:f}){const g=a?.label.replace(/\s+\(.+\)$/,"")??null,b=s==="all";return c.jsxs("div",{className:"flex flex-wrap items-center gap-2 border-t border-mono-800/70 bg-bg/80 px-3 pt-2 text-sm text-secondary",children:[c.jsx("span",{className:"font-medium text-strong",children:e}),g&&c.jsxs(c.Fragment,{children:[c.jsx("span",{"aria-hidden":"true",children:"·"}),c.jsx("span",{children:g})]}),u?c.jsx("span",{className:"ml-auto",children:"Read only"}):c.jsx("button",{type:"button",onClick:r,disabled:f,className:`ml-auto inline-flex items-center rounded-md border px-2 py-1 text-sm font-medium transition disabled:opacity-50 ${b?"border-caution-800/60 bg-caution-950/40 text-caution hover:border-caution-700 hover:text-caution-200":"border-base bg-bg-elevated/70 text-secondary hover:border-strong hover:text-strong"}`,title:b?"Aero can invoke write tools (run sweep, dismiss insight, etc). Click to restrict.":"Aero is restricted to read-only tools. Click to allow writes.",children:b?"Can make changes":"Read only"})]})}function _$({matches:e,selectedIndex:a,onHover:s,onPick:r}){return c.jsxs("div",{className:"absolute inset-x-3 bottom-full mb-2 overflow-hidden rounded-lg border border-base bg-bg/98 shadow-2xl",children:[c.jsx("div",{className:"border-b border-default px-3 py-1.5 text-[10px] uppercase tracking-wider text-muted",children:"Commands"}),c.jsx("ul",{role:"listbox",className:"max-h-72 overflow-y-auto py-1",children:e.map((u,f)=>{const g=f===a;return c.jsx("li",{children:c.jsxs("button",{type:"button",role:"option","aria-selected":g,onMouseEnter:()=>s(f),onClick:()=>r(u),className:`flex w-full items-center gap-3 px-3 py-2 text-left text-sm transition ${g?"bg-bg-elevated text-heading":"text-neutral hover:bg-bg-elevated/60"}`,children:[c.jsx("span",{className:"font-medium",children:u.label}),c.jsx("span",{className:"ml-auto font-mono text-[11px] text-secondary",children:u.command})]})},u.command)})})]})}function z$(e){switch(e){case"claude":return"ANTHROPIC_API_KEY";case"openai":return"OPENAI_API_KEY";case"gemini":return"GOOGLE_API_KEY";case"zai":return"ZAI_API_KEY";case"deepinfra":return"DEEPINFRA_TOKEN"}}function E$(e,a){const s=e.timestamp??0;return`${e.role}:${s}:${a}`}function T$(e,a,s,r){const u=[];for(let f=0;f<e.length;f++){const g=e[f],b=E$(g,f);if(g.role==="user"){const v=typeof g.content=="string"?g.content:JSON.stringify(g.content);if(v.startsWith("[system]"))continue;u.push(c.jsx(R$,{text:v,projectName:a,providerOverride:s,scope:r},b));continue}if(g.role==="assistant"){const v=new Map;let k=f+1;for(;k<e.length&&e[k].role==="toolResult";){const N=e[k];v.set(N.toolCallId,N),k++}const S=O$(g,v,g.timestamp??0),A=k3(g);u.push(c.jsxs(T.Fragment,{children:[S.length>0&&c.jsx("div",{className:"mt-3 space-y-1.5",children:S.map(N=>c.jsx(w3,{trail:N},N.id))}),A.trim()&&c.jsxs("div",{className:"mt-3",children:[c.jsx("div",{className:"mb-0.5 text-[10px] uppercase tracking-wider text-positive-400",children:"Aero"}),c.jsx(S3,{content:A})]})]},b)),f=k-1;continue}}return u}function R$({text:e,projectName:a,providerOverride:s,scope:r}){const[u,f]=T.useState(!1),g=T.useMemo(()=>D$(a,e,s,r),[a,e,s,r]);async function b(){try{await navigator.clipboard.writeText(g),f(!0),window.setTimeout(()=>f(!1),1500)}catch{}}return c.jsxs("div",{className:"group relative mt-3 rounded-md bg-bg-elevated/60 px-3 py-2 text-strong",children:[c.jsxs("div",{className:"flex items-center justify-between gap-2",children:[c.jsx("div",{className:"text-[10px] uppercase tracking-wider text-muted",children:"You"}),c.jsx("button",{type:"button",onClick:Ft(b),className:"inline-flex items-center gap-1 rounded border border-mono-800/70 bg-bg/60 px-1.5 py-0.5 text-[10px] text-secondary opacity-0 transition hover:border-strong hover:text-heading group-hover:opacity-100 focus:opacity-100","aria-label":"Copy as CLI command",title:g,children:u?c.jsxs(c.Fragment,{children:[c.jsx(Jh,{className:"h-2.5 w-2.5 text-positive-400","aria-hidden":"true"}),"Copied"]}):c.jsxs(c.Fragment,{children:[c.jsx($x,{className:"h-2.5 w-2.5","aria-hidden":"true"}),"Copy as CLI"]})})]}),c.jsx("div",{className:"whitespace-pre-wrap",children:e})]})}function D$(e,a,s,r){const u=["canonry","agent","ask",kx(e),kx(a)];return s&&u.push("--provider",s),r==="read-only"&&u.push("--scope","read-only"),u.join(" ")}function kx(e){return`'${e.replace(/'/g,"'\\''")}'`}function O$(e,a,s){const r=[];for(const u of e.content){if(u.type!=="toolCall")continue;const f=u,g=a.get(f.id);r.push({id:f.id,name:f.name,args:f.arguments,startedAt:s,endedAt:g?.timestamp,isError:g?.isError,result:g?.content})}return r}function w3({trail:e}){const[a,s]=T.useState(!1),r=e.endedAt===void 0,u=!r&&e.isError===!0,f=e.endedAt!=null?e.endedAt-e.startedAt:null,g=f==null||f<0?null:f<1e3?`${f}ms`:`${(f/1e3).toFixed(1)}s`,b=u?"border-negative-800/50":r?"border-positive-800/50":"border-mono-800/70",v=u?"bg-negative-950/20":r?"bg-positive-950/20":"bg-surface-hover";return c.jsxs("div",{className:`rounded-md border ${b} ${v} font-mono`,children:[c.jsxs("button",{type:"button",onClick:()=>s(k=>!k),className:"flex w-full items-center gap-2 px-2.5 py-1.5 text-left","aria-expanded":a,children:[c.jsx("span",{className:"flex h-3.5 w-3.5 shrink-0 items-center justify-center",children:r?c.jsx(Zo,{className:"h-3 w-3 animate-spin text-positive-400","aria-hidden":"true"}):u?c.jsx(Gx,{className:"h-3 w-3 text-negative-400","aria-hidden":"true"}):c.jsx(nA,{className:"h-3 w-3 text-muted","aria-hidden":"true"})}),c.jsx("span",{className:"text-[11px] font-semibold text-heading",children:e.name}),c.jsxs("span",{className:"ml-auto flex items-center gap-2 text-[10px] text-muted",children:[r?c.jsx("span",{className:"text-positive-400",children:"running…"}):c.jsxs(c.Fragment,{children:[c.jsx("span",{children:u?"failed":"ok"}),g&&c.jsx("span",{children:g})]}),c.jsx(Wh,{className:`h-3 w-3 transition-transform ${a?"rotate-90":""}`,"aria-hidden":"true"})]})]}),a&&c.jsxs("div",{className:"border-t border-default px-2.5 py-2 text-[11px] text-secondary",children:[c.jsx("div",{className:"mb-1 text-[9px] uppercase tracking-wider text-faint",children:"Args"}),c.jsx("pre",{className:"mb-2 overflow-x-auto whitespace-pre-wrap break-all text-[10px] text-neutral",children:wx(e.args)}),!r&&e.result!==void 0&&c.jsxs(c.Fragment,{children:[c.jsx("div",{className:"mb-1 text-[9px] uppercase tracking-wider text-faint",children:u?"Error":"Result"}),c.jsx("pre",{className:"overflow-x-auto whitespace-pre-wrap break-all text-[10px] text-neutral",children:wx(e.result)})]})]})]})}function wx(e){try{const a=typeof e=="string"?e:JSON.stringify(e,null,2);return a.length>2e3?`${a.slice(0,2e3)}
64
- … (${a.length-2e3} more chars)`:a}catch{return String(e)}}function S3({content:e}){return c.jsx("div",{className:"text-heading",children:c.jsx(yA,{components:{h1:a=>c.jsx("h1",{...a,className:"mt-3 mb-2 text-base font-semibold text-primary"}),h2:a=>c.jsx("h2",{...a,className:"mt-3 mb-2 text-sm font-semibold text-primary"}),h3:a=>c.jsx("h3",{...a,className:"mt-3 mb-1.5 text-sm font-semibold text-heading"}),h4:a=>c.jsx("h4",{...a,className:"mt-2 mb-1 text-xs font-semibold uppercase tracking-wide text-neutral"}),p:a=>c.jsx("p",{...a,className:"mb-2 leading-relaxed"}),ul:a=>c.jsx("ul",{...a,className:"mb-2 ml-4 list-disc space-y-1"}),ol:a=>c.jsx("ol",{...a,className:"mb-2 ml-4 list-decimal space-y-1"}),li:a=>c.jsx("li",{...a,className:"marker:text-mono-600"}),strong:a=>c.jsx("strong",{...a,className:"font-semibold text-primary"}),em:a=>c.jsx("em",{...a,className:"text-strong"}),code:({children:a,...s})=>c.jsx("code",{...s,className:"rounded bg-mono-800/70 px-1 py-0.5 font-mono text-[12px] text-positive-200",children:a}),pre:a=>c.jsx("pre",{...a,className:"mb-2 overflow-x-auto rounded-md border border-base bg-bg-elevated/70 p-3 font-mono text-xs text-strong"}),a:a=>c.jsx("a",{...a,className:"text-positive-400 underline decoration-positive-700 hover:decoration-positive-400",target:"_blank",rel:"noopener noreferrer"}),table:a=>c.jsx("div",{className:"mb-2 overflow-x-auto",children:c.jsx("table",{...a,className:"w-full border-collapse text-xs"})}),thead:a=>c.jsx("thead",{...a,className:"border-b border-base"}),th:a=>c.jsx("th",{...a,className:"px-2 py-1 text-left font-semibold text-neutral"}),tr:a=>c.jsx("tr",{...a,className:"border-b border-mono-900"}),td:a=>c.jsx("td",{...a,className:"px-2 py-1 text-strong"}),blockquote:a=>c.jsx("blockquote",{...a,className:"mb-2 border-l-2 border-strong pl-3 italic text-secondary"}),hr:()=>c.jsx("hr",{className:"my-3 border-base"})},children:e})})}function q$(){return c.jsxs("div",{className:"mt-3 flex items-center gap-2",children:[c.jsx("div",{className:"text-[10px] uppercase tracking-wider text-positive-400",children:"Aero"}),c.jsxs("div",{className:"flex items-center gap-1","aria-label":"Aero is thinking",children:[c.jsx("span",{className:"aero-dot h-1.5 w-1.5 rounded-full bg-positive-400/80"}),c.jsx("span",{className:"aero-dot aero-dot-2 h-1.5 w-1.5 rounded-full bg-positive-400/60"}),c.jsx("span",{className:"aero-dot aero-dot-3 h-1.5 w-1.5 rounded-full bg-positive-400/40"})]})]})}function B$(){const e=Ox(),a=/^\/projects\/([^/]+)/.exec(e.pathname),s=a?decodeURIComponent(a[1]):null,r=Et({...Zs({client:se}),enabled:s!==null,staleTime:6e4});if(!s)return null;const u=r.data??[],f=u.find(g=>g.id===s)??u.find(g=>g.name===s);return f?c.jsx(A$,{projectName:f.name},f.name):null}const Qh={project:"getApiV1ProjectsByName",google:"getApiV1ProjectsByNameGoogle",gsc:"getApiV1ProjectsByNameGoogleGsc",bing:"getApiV1ProjectsByNameBing",ga:"getApiV1ProjectsByNameGa",gbp:"getApiV1ProjectsByNameGbp",ads:"getApiV1ProjectsByNameAds",googleAds:"getApiV1ProjectsByNameGoogleAds",gtm:"getApiV1ProjectsByNameGtm",conversionTracking:"getApiV1ProjectsByNameConversionTracking",traffic:"getApiV1ProjectsByNameTraffic",discovery:"getApiV1ProjectsByNameDiscover",researchRuns:"getApiV1ProjectsByNameResearchRuns",visibilityReport:"getApiV1ProjectsByNameVisibilityReport",queryTracking:"getApiV1ProjectsByNameQueryTracking",technicalAeo:"getApiV1ProjectsByNameTechnicalAeo",runs:"getApiV1ProjectsByNameRuns"};function mn(e,a){const s=Qh[a];return e.invalidateQueries({predicate:r=>{const u=r.queryKey[0];return typeof u?._id=="string"&&u._id.startsWith(s)}})}function VY(e,a){return e.invalidateQueries({predicate:s=>{const r=s.queryKey[0];return r?.path?.name!==a||typeof r._id!="string"?!1:r._id.startsWith("getApiV1ProjectsByNameMeasurement")||r._id===Qh.queryTracking||r._id===Qh.visibilityReport||r._id==="getApiV1ProjectsByNameQueries"||r._id==="getApiV1ProjectsByName"}})}function Rl(e,a,s){switch(e.invalidateQueries({queryKey:gf({client:se})}),e.invalidateQueries({queryKey:ts({client:se})}),mn(e,"runs"),a){case ze["answer-visibility"]:Kh(e,s,"none"),mn(e,"visibilityReport"),mn(e,"queryTracking");return;case ze["backlink-extract"]:return;case ze["site-audit"]:mn(e,"technicalAeo");return;case ze["gsc-sync"]:case ze["inspect-sitemap"]:mn(e,"gsc");return;case ze["ga-sync"]:mn(e,"ga");return;case ze["traffic-sync"]:mn(e,"ga"),mn(e,"traffic");return;case ze["bing-inspect"]:case ze["bing-inspect-sitemap"]:mn(e,"bing");return;case ze["aeo-discover-seed"]:case ze["aeo-discover-probe"]:Kh(e,s);return;case ze["gbp-sync"]:mn(e,"gbp");return;case ze["ads-sync"]:mn(e,"ads");return;case ze["google-ads-sync"]:mn(e,"googleAds"),mn(e,"conversionTracking");return;case ze["gtm-sync"]:mn(e,"gtm"),mn(e,"conversionTracking");return;default:return a}}const Sx=[{label:"GitHub",href:"https://github.com/Canonry/canonry",Icon:Lx},{label:"Docs",href:"https://github.com/Canonry/canonry/tree/main/docs",Icon:dA},{label:"Changelog",href:"https://github.com/Canonry/canonry/releases",Icon:mA}],jx=e=>({label:e,state:"checking",detail:"Checking service health"}),P$={apiStatus:jx("API"),workerStatus:jx("Worker")};function M$(e){return e==="completed"?"positive":e==="partial"?"caution":"negative"}function I$(e){const a=jl(e.kind);return e.status==="completed"?`${a} completed`:e.status==="partial"?`${a} completed with partial results`:e.status==="cancelled"?`${a} cancelled`:`${a} failed`}function V$(e,a){return e.error?`${a}: ${G0(e.error)}`:e.location?`${a} · ${e.location}`:a}function Ax(e,a,s){if(a)return a;const r=s.find(u=>u.id===e);return r?.displayName||r?.name||e}function L$(e,a){return[e.completed>0?`${e.completed} completed`:null,e.partial>0?`${e.partial} partial`:null,e.failed>0?`${e.failed} failed`:null,e.cancelled>0?`${e.cancelled} cancelled`:null,a>0?`${a} skipped at queue time`:null].filter(Boolean).join(", ")}function U$(e){return e.failed>0||e.cancelled>0?"negative":e.partial>0?"caution":"positive"}function G$(){const e=da(),a=T.useSyncExternalStore(ZS,gi,gi),s=Object.keys(a.runs).length>0||Object.keys(a.batches).length>0,r=Et({...yf({client:se}),enabled:s,staleTime:nr,refetchInterval:3e3}),u=Et({...Zs({client:se}),enabled:s}),f=T.useRef({}),g=T.useCallback(()=>{r.refetch()},[r.refetch]);return T.useEffect(()=>{s&&g()},[s,g]),T.useEffect(()=>{if(!s||typeof window>"u")return;const b=()=>{document.visibilityState==="visible"&&g()};return window.addEventListener("focus",g),document.addEventListener("visibilitychange",b),()=>{window.removeEventListener("focus",g),document.removeEventListener("visibilitychange",b)}},[s,g]),T.useEffect(()=>{const b=r.data??[],v=u.data??[],k=Object.fromEntries(b.map(A=>[A.id,A])),S=Object.fromEntries(b.map(A=>[A.id,A.status]));for(const A of Object.values(a.runs)){const N=k[A.runId];if(!N||!fU(N.status)||(f.current[N.id]??A.lastAnnouncedStatus)===N.status)continue;const Z=v.find(G=>G.id===N.projectId);if(Z&&Rl(e,N.kind,Z.name),A.sourceAction==="run-all"){ch(N.id);continue}const _=Ax(N.projectId,A.projectLabel,v);rn({title:I$(N),detail:V$(N,_),tone:M$(N.status),dedupeKey:`run:${N.id}`,dedupeMode:"replace",cta:{label:"View run",intent:"open-run-drawer",runId:N.id}}),ch(N.id)}if(r.data!==void 0){const A=new Set(b.map(E=>E.id)),N=yU(Object.values(a.runs),A,Date.now(),gU);for(const E of N){const Z=v.find(_=>_.id===E.projectId);Z&&Rl(e,E.kind,Z.name),E.sourceAction!=="run-all"&&rn({title:`${jl(E.kind)} status unavailable`,detail:Ax(E.projectId,E.projectLabel,v),tone:"neutral",dedupeKey:`run-stale:${E.runId}`,dedupeMode:"replace"}),ch(E.runId)}}for(const A of Object.values(a.batches)){const N=bU(A.runIds,k);N.finished&&(rn({title:"Run-all batch finished",detail:L$(N,A.skippedCount),tone:U$(N),dedupeKey:`batch:${A.batchId}`,dedupeMode:"replace",cta:{label:"View runs",intent:"go-to-runs"}}),hU(A.batchId))}f.current=S},[u.data,r.data,a,e]),null}function $$(){const{account:e,isAdmin:a}=ha(),s=Kl(),r=T.useMemo(()=>TS(),[]),u=T.useMemo(dI,[]),f=T.useMemo(mI,[]),g=T.useMemo(pI,[]),b=Ox(),{dashboard:v,isLoading:k,refetch:S}=Ed(void 0,{includeSettings:!r,includeOverviews:!1,pauseProjectPolling:b.pathname==="/setup"}),E=Sf(!s,s?.health).data??s?.health??P$,{runId:Z,evidenceId:_,closeDrawer:G}=jf(),[K,te]=T.useState(!1),[Q,re]=T.useState(()=>{if(typeof window>"u")return!1;try{return window.localStorage.getItem("canonry:sidebarHidden")==="true"}catch{return!1}}),[W,oe]=T.useState(()=>{if(typeof window>"u")return null;try{return window.localStorage.getItem("canonry:dismissedUpdateVersion")}catch{return null}}),[H]=T.useState(()=>typeof window>"u"?null:new URLSearchParams(window.location.search).get("force-update")),$=H?{current:E.apiStatus.version??"0.0.0",latest:H,url:"https://www.npmjs.com/package/@canonry/canonry",upgradeCommand:"npm install -g @canonry/canonry"}:E.apiStatus.updateAvailable,Te=g&&$&&$.latest!==W,Ke=()=>{if($){try{window.localStorage.setItem("canonry:dismissedUpdateVersion",$.latest)}catch{}oe($.latest)}},Fe=()=>{const de=!Q;try{de?window.localStorage.setItem("canonry:sidebarHidden","true"):window.localStorage.removeItem("canonry:sidebarHidden")}catch{}re(de)},Re=s$(Z),ve=Re.data??null,Ue=Re.isLoading;T.useEffect(()=>{ve&&ve.status!=="running"&&ve.status!=="queued"&&S()},[ve?.status,S]),T.useEffect(()=>{te(!1)},[b.pathname]),T.useEffect(()=>{if(typeof window>"u"||!Z&&!_)return;const de=Me=>{Me.key==="Escape"&&G()};return window.addEventListener("keydown",de),()=>{window.removeEventListener("keydown",de)}},[Z,_,G]);const be=v??s?.dashboard??null,P=b.pathname==="/setup",ae=P&&be!==null&&be.portfolioOverview.projects.length===0,he=P&&(b.search.onboarding==="site-health"||b.search.onboarding==="first-run"),[je,X]=T.useState(ae);T.useEffect(()=>{P?ae&&X(!0):X(!1)},[ae,P]);const Ne=P&&(he||ae||je||P&&be===null),Ae=Ne?"app-shell-focus":Q?"app-shell-sidebar-hidden":"",ne=Z?(be?EG(be,Z):void 0)??(ve?zd(ve,be?.projects.find(de=>de.project.id===ve.projectId)?.project.displayName??be?.projects.find(de=>de.project.id===ve.projectId)?.project.name??"Unknown project"):void 0):void 0,V=T.useMemo(()=>jG(b.pathname,be),[b.pathname,be]),{commandCenter:q,evidenceLoading:le,evidenceError:De,isError:ye,refetch:Je}=n$(_?V:null,{evidence:!0}),Ge=T.useMemo(()=>{if(_)return RG(q,be,_)},[_,q,be]),Be=(()=>{const de=b.pathname;if(de==="/")return"Portfolio";if(de==="/projects")return"Projects";if(de==="/runs")return"Runs";if(de==="/history")return"History";if(de==="/settings")return"Settings";if(de==="/setup")return"Setup";if(de==="/backlinks")return"Backlink data";if(de==="/traffic"||de.startsWith("/traffic/"))return"Traffic sources";if(de.startsWith("/projects/")){const $t=de.split("/").filter(Boolean)[1];if($t&&be){const Sn=be.projects.find(ga=>ga.project.id===$t);if(Sn)return Sn.project.name}return"Project"}return"Not found"})();if(r){const de=!r.views||r.views.includes(pV(b.pathname));return c.jsxs("div",{className:"app-shell app-shell-embed","data-theme":bV(r.theme),style:vV(r.theme),children:[c.jsx("a",{className:"skip-link",href:"#content",children:"Skip to content"}),c.jsx("main",{id:"content",className:"page-shell",children:de?c.jsx(hh,{}):c.jsx("div",{className:"embed-view-unavailable",role:"status",children:"This view is not available in embed mode."})})]})}return c.jsxs(c.Fragment,{children:[c.jsx("a",{className:"skip-link",href:"#content",children:"Skip to content"}),c.jsx(m$,{}),c.jsxs("div",{className:`app-shell ${Ae}${Sl()?" app-shell-demo":""}`,children:[!Ne&&!Q&&c.jsxs("aside",{id:"desktop-sidebar",className:"sidebar","aria-label":"Primary navigation",children:[c.jsx("div",{className:"sidebar-brand",children:c.jsx(ox,{version:E.apiStatus.version,updateAvailable:Te?$:null,onDismissUpdate:Ke})}),c.jsxs("nav",{className:"sidebar-nav",children:[c.jsxs(tt,{to:"/",className:"sidebar-link",activeProps:{className:"sidebar-link sidebar-link-active"},activeOptions:{exact:!0},children:[c.jsx(aA,{className:"sidebar-icon"}),c.jsx("span",{children:"Portfolio"})]}),c.jsxs(tt,{to:"/projects",className:"sidebar-link",activeProps:{className:"sidebar-link sidebar-link-active"},activeOptions:{exact:!1},children:[c.jsx(iA,{className:"sidebar-icon"}),c.jsx("span",{children:"Projects"})]}),c.jsxs(tt,{to:"/runs",className:"sidebar-link",activeProps:{className:"sidebar-link sidebar-link-active"},activeOptions:{exact:!0},children:[c.jsx(sA,{className:"sidebar-icon"}),c.jsx("span",{children:"Runs"})]}),c.jsxs(tt,{to:"/history",className:"sidebar-link",activeProps:{className:"sidebar-link sidebar-link-active"},activeOptions:{exact:!0},children:[c.jsx(oA,{className:"sidebar-icon"}),c.jsx("span",{children:"History"})]}),c.jsxs(tt,{to:"/traffic",className:"sidebar-link",activeProps:{className:"sidebar-link sidebar-link-active"},activeOptions:{exact:!1},children:[c.jsx(rA,{className:"sidebar-icon"}),c.jsx("span",{children:"Traffic sources"})]}),!Sl()&&c.jsxs(tt,{to:"/backlinks",className:"sidebar-link",activeProps:{className:"sidebar-link sidebar-link-active"},activeOptions:{exact:!0},children:[c.jsx(lA,{className:"sidebar-icon"}),c.jsx("span",{children:"Backlink data"})]}),a&&c.jsxs(tt,{to:"/settings",className:"sidebar-link",activeProps:{className:"sidebar-link sidebar-link-active"},activeOptions:{exact:!0},children:[c.jsx(cA,{className:"sidebar-icon"}),c.jsx("span",{children:"Settings"})]}),k?c.jsxs(c.Fragment,{children:[c.jsx("p",{className:"sidebar-section-title",children:"Tracked projects"}),[1,2,3].map(de=>c.jsxs("div",{className:"sidebar-skeleton-item",children:[c.jsx("span",{className:"skeleton-circle size-2"}),c.jsx("span",{className:"skeleton-text flex-1",style:{width:`${50+de*15}%`}})]},de))]}):be&&be.projects.length>0?c.jsxs(c.Fragment,{children:[c.jsx("p",{className:"sidebar-section-title",children:"Tracked projects"}),be.projects.map(de=>{const Me=de.visibilitySummary.tone;return c.jsxs(tt,{to:"/projects/$projectName",params:{projectName:de.project.name},className:"sidebar-project",activeProps:{className:"sidebar-project sidebar-project-active"},children:[c.jsx("span",{className:`sidebar-dot sidebar-dot-${Me}`}),c.jsx("span",{children:de.project.displayName||de.project.name})]},de.project.id)})]}):k?null:c.jsxs(c.Fragment,{children:[c.jsx("p",{className:"sidebar-section-title",children:"Resources"}),a&&c.jsxs(tt,{to:"/setup",className:"sidebar-link",activeProps:{className:"sidebar-link sidebar-link-active"},activeOptions:{exact:!0},children:[c.jsx(uA,{className:"sidebar-icon"}),c.jsx("span",{children:"Setup"})]})]})]}),e&&c.jsxs("div",{className:"sidebar-account",children:[c.jsxs("div",{className:"sidebar-account-identity",children:[c.jsx("span",{className:"sidebar-account-name",children:e.name}),e.role==="viewer"?c.jsx("span",{className:"sidebar-account-role",children:Vv()}):null]}),c.jsx(fe,{type:"button",variant:"ghost",size:"sm",onClick:Ft(async()=>{await $v(),window.location.reload()}),children:"Sign out"})]}),u?c.jsx("div",{className:"sidebar-footer",children:Sx.map(({label:de,href:Me,Icon:$t})=>c.jsx("a",{className:"sidebar-footer-icon",href:Me,target:"_blank",rel:"noopener noreferrer",title:de,"aria-label":de,children:c.jsx($t,{className:"size-4"})},Me))}):null]}),c.jsxs("div",{className:"main-area",children:[c.jsxs("header",{className:"topbar",children:[c.jsxs("div",{className:"topbar-left",children:[!Ne&&c.jsx(fe,{className:"sidebar-privacy-toggle",variant:"ghost",size:"icon",type:"button","aria-label":Q?"Show sidebar":"Hide sidebar","aria-controls":Q?void 0:"desktop-sidebar","aria-expanded":!Q,title:Q?"Show sidebar":"Hide sidebar",onClick:Fe,children:Q?c.jsx(pA,{className:"size-4"}):c.jsx(hA,{className:"size-4"})}),c.jsx("div",{className:"topbar-brand-mobile",children:c.jsx(ox,{compact:!0})}),c.jsxs("nav",{className:"breadcrumb","aria-label":"Breadcrumb",children:[c.jsx(tt,{to:"/",children:"Home"}),c.jsx(Wh,{className:"breadcrumb-sep size-3"}),c.jsx("span",{className:"breadcrumb-current",children:Be})]})]}),c.jsxs("div",{className:"topbar-actions",children:[c.jsx(p$,{}),c.jsxs("div",{className:"health-pill-row",children:[c.jsxs("span",{className:`health-pill health-pill-${E.apiStatus.state}`,title:ar(E.apiStatus),children:["API ",E.apiStatus.state==="ok"?"ok":E.apiStatus.state]}),c.jsx("span",{className:`health-pill health-pill-${E.workerStatus.state}`,title:ar(E.workerStatus),children:`Worker ${E.workerStatus.state==="ok"?"ok":E.workerStatus.state}`})]}),Ne?null:c.jsxs(fe,{className:"nav-toggle",variant:"secondary",size:"icon",type:"button","aria-expanded":K,"aria-controls":"mobile-nav",onClick:()=>te(de=>!de),children:[c.jsx(fA,{className:"size-4"}),c.jsx("span",{className:"sr-only",children:"Open navigation"})]})]})]}),Ne?null:c.jsxs("div",{id:"mobile-nav",className:`mobile-nav ${K?"mobile-nav-open":""}`,children:[c.jsxs(fe,{className:"mobile-nav-close",variant:"ghost",size:"icon",type:"button",onClick:()=>te(!1),children:[c.jsx(sr,{className:"size-5"}),c.jsx("span",{className:"sr-only",children:"Close navigation"})]}),c.jsx(tt,{to:"/",className:"mobile-nav-link",activeProps:{className:"mobile-nav-link mobile-nav-link-active"},activeOptions:{exact:!0},children:"Portfolio"}),c.jsx(tt,{to:"/projects",className:"mobile-nav-link",activeProps:{className:"mobile-nav-link mobile-nav-link-active"},activeOptions:{exact:!1},children:"Projects"}),c.jsx(tt,{to:"/runs",className:"mobile-nav-link",activeProps:{className:"mobile-nav-link mobile-nav-link-active"},activeOptions:{exact:!0},children:"Runs"}),c.jsx(tt,{to:"/history",className:"mobile-nav-link",activeProps:{className:"mobile-nav-link mobile-nav-link-active"},activeOptions:{exact:!0},children:"History"}),c.jsx(tt,{to:"/traffic",className:"mobile-nav-link",activeProps:{className:"mobile-nav-link mobile-nav-link-active"},activeOptions:{exact:!1},children:"Traffic sources"}),!Sl()&&c.jsx(tt,{to:"/backlinks",className:"mobile-nav-link",activeProps:{className:"mobile-nav-link mobile-nav-link-active"},activeOptions:{exact:!0},children:"Backlink data"}),a&&c.jsx(tt,{to:"/settings",className:"mobile-nav-link",activeProps:{className:"mobile-nav-link mobile-nav-link-active"},activeOptions:{exact:!0},children:"Settings"}),be&&be.projects.length>0?c.jsxs("div",{className:"mobile-nav-section",children:[c.jsx("p",{className:"mobile-nav-section-title",children:"Tracked projects"}),be.projects.map(de=>c.jsx(tt,{to:"/projects/$projectName",params:{projectName:de.project.name},className:"mobile-nav-link",children:de.project.name},de.project.id))]}):null,e&&c.jsxs("div",{className:"mobile-nav-section",children:[c.jsx("p",{className:"mobile-nav-section-title",children:"Signed in"}),c.jsxs("div",{className:"sidebar-account",children:[c.jsxs("div",{className:"sidebar-account-identity",children:[c.jsx("span",{className:"sidebar-account-name",children:e.name}),e.role==="viewer"?c.jsx("span",{className:"sidebar-account-role",children:Vv()}):null]}),c.jsx(fe,{type:"button",variant:"ghost",size:"sm","data-testid":"mobile-sign-out",onClick:Ft(async()=>{await $v(),window.location.reload()}),children:"Sign out"})]})]})]}),c.jsx("main",{id:"content",className:`page-shell ${f&&V?"pb-20":""}`.trim(),children:k&&!s?c.jsxs("div",{className:"page-skeleton",children:[c.jsxs("div",{className:"page-skeleton-header",children:[c.jsx("div",{className:"skeleton-text h-6 w-40"}),c.jsx("div",{className:"skeleton-text-sm w-72"})]}),c.jsx("div",{className:"page-skeleton-grid",children:[1,2,3].map(de=>c.jsxs("div",{className:"page-skeleton-card",children:[c.jsx("div",{className:"skeleton-text w-24"}),c.jsx("div",{className:"skeleton-text w-full"}),c.jsx("div",{className:"skeleton-text-sm w-3/4"})]},de))}),c.jsx("div",{className:"page-skeleton-grid",style:{gridTemplateColumns:"1fr 1fr"},children:[1,2].map(de=>c.jsxs("div",{className:"page-skeleton-card",children:[c.jsx("div",{className:"skeleton-text w-20"}),c.jsx("div",{className:"space-y-2",children:[1,2,3].map(Me=>c.jsx("div",{className:"skeleton-text-sm w-full"},Me))})]},de))})]}):c.jsx(hh,{})}),c.jsxs("footer",{className:"footer",children:[c.jsxs("span",{className:"footer-brand",children:[c.jsx("span",{children:c.jsx("a",{href:"https://canonry.ai",children:"Canonry"})}),E.apiStatus.version&&E.apiStatus.version!=="unknown"?c.jsxs("span",{className:"footer-version",children:["v",E.apiStatus.version]}):null]}),u?c.jsx("div",{className:"footer-links",children:Sx.map(({label:de,href:Me,Icon:$t})=>c.jsx("a",{href:Me,target:"_blank",rel:"noopener noreferrer",title:de,"aria-label":de,className:"footer-icon",children:c.jsx($t,{className:"size-3.5"})},Me))}):null]})]}),Z&&!ne&&Ue?c.jsx(Cu,{open:!0,title:"Loading run details",subtitle:"Fetching the durable run record",onClose:G,children:c.jsx("p",{className:"text-sm text-muted",role:"status",children:"Loading run details…"})}):null,Z&&!ne&&Re.isError?c.jsx(Cu,{open:!0,title:"Run unavailable",subtitle:"The run could not be loaded",onClose:G,children:c.jsx("p",{className:"text-sm text-negative",children:Re.error instanceof Error?Re.error.message:"Run details are unavailable."})}):null,ne?c.jsxs(Cu,{open:!0,title:ne.summary,subtitle:`${ne.projectName} · ${ne.kindLabel}`,onClose:G,children:[c.jsxs("div",{className:"flex flex-wrap items-center gap-x-5 gap-y-1 text-sm",children:[c.jsx(wf,{status:ne.status}),c.jsx("span",{className:"text-secondary",children:ne.startedAt}),c.jsx("span",{className:"text-muted",children:ne.duration}),c.jsx("span",{className:"text-faint",children:ne.triggerLabel})]}),ne.status==="failed"&&ne.statusDetail&&c.jsx("p",{className:"mt-2 text-sm text-negative",children:ne.statusDetail}),c.jsxs("div",{className:"mt-4",children:[c.jsx("p",{className:"text-[10px] font-semibold uppercase tracking-wider text-muted mb-2",children:"Activity Log"}),Ue?c.jsx("p",{className:"text-sm text-muted",children:"Loading run details..."}):ve?.snapshots&&ve.snapshots.length>0?c.jsxs("div",{className:"space-y-2",children:[ve.snapshots.map(de=>c.jsxs("div",{className:"rounded-lg border border-default bg-surface p-3",children:[c.jsxs("div",{className:"flex items-center justify-between gap-2 mb-1",children:[c.jsx("p",{className:"text-sm font-medium text-strong truncate",children:de.query??"Unknown query"}),c.jsxs("div",{className:"flex items-center gap-1.5",children:[c.jsx(dG,{provider:de.provider}),c.jsx(d3,{variant:de.citationState===Uu.cited?"success":"neutral",children:de.citationState})]})]}),de.model&&c.jsx("p",{className:"text-[11px] text-muted font-mono",children:de.model}),de.citedDomains.length>0&&c.jsxs("p",{className:"text-xs text-muted mt-1",children:[c.jsx("span",{className:"text-secondary",children:"Sources:"})," ",de.citedDomains.join(", ")]}),de.citedCompetitorDomains.length>0&&c.jsxs("p",{className:"text-xs text-negative-400/80 mt-0.5",children:["Competitor cited: ",de.citedCompetitorDomains.join(", ")]}),de.mentionedCompetitorDomains.length>0&&c.jsxs("p",{className:"text-xs text-negative-400/80 mt-0.5",children:["Competitor mentioned: ",de.mentionedCompetitorDomains.join(", ")]}),de.groundingSources&&de.groundingSources.length>0&&c.jsxs("details",{className:"mt-2",children:[c.jsxs("summary",{className:"text-xs text-muted cursor-pointer hover:text-secondary",children:[de.groundingSources.length," grounding source",de.groundingSources.length!==1?"s":""]}),c.jsx("ul",{className:"mt-1 space-y-0.5",children:de.groundingSources.map((Me,$t)=>{const Sn=$h(Me.uri),ga=Me.title||Me.uri;return c.jsx("li",{className:"text-xs text-muted truncate",children:Sn?c.jsx("a",{href:Sn,target:"_blank",rel:"noopener noreferrer",className:"hover:text-neutral",children:ga}):c.jsx("span",{children:ga})},$t)})})]}),de.answerText&&c.jsxs("details",{className:"mt-1",children:[c.jsx("summary",{className:"text-xs text-muted cursor-pointer hover:text-secondary",children:"Answer preview"}),c.jsx("p",{className:"mt-1 text-xs text-secondary leading-relaxed whitespace-pre-wrap",children:de.answerText})]})]},de.id)),ve.status==="running"&&c.jsxs("div",{className:"flex items-center gap-2 p-3 text-sm text-muted",children:[c.jsx("span",{className:"inline-block h-2 w-2 rounded-full bg-caution-500 animate-pulse"}),"Running remaining queries..."]})]}):ve&&ve.status==="running"?c.jsxs("div",{className:"flex items-center gap-2 p-3 text-sm text-muted",children:[c.jsx("span",{className:"inline-block h-2 w-2 rounded-full bg-caution-500 animate-pulse"}),"Waiting for first query result..."]}):ve&&ve.status==="queued"?c.jsxs("div",{className:"flex items-center gap-2 p-3 text-sm text-muted",children:[c.jsx("span",{className:"inline-block h-2 w-2 rounded-full bg-mono-500 animate-pulse"}),"Run queued, waiting for execution slot..."]}):ve&&ve.error?c.jsxs("div",{className:"rounded-lg border border-negative-800/40 bg-negative-950/20 p-3",children:[c.jsx("p",{className:"text-sm font-medium text-negative mb-2",children:"Run failed"}),c.jsx("pre",{className:"max-h-48 overflow-y-auto whitespace-pre-wrap break-words font-mono text-xs leading-5 text-negative",children:uV(ve.error)})]}):c.jsx("p",{className:"text-sm text-muted",children:"No snapshot data available."})]})]}):null,_&&!Ge?c.jsx(Cu,{open:!0,title:le?"Loading answer":"Answer unavailable",subtitle:"Query evidence",onClose:G,children:le?c.jsx("p",{role:"status",className:"text-sm text-secondary",children:"Loading answer…"}):c.jsxs(c.Fragment,{children:[c.jsx("p",{role:"alert",className:"text-sm text-secondary",children:De||ye?"Could not load this answer.":"This answer is not in the available query evidence."}),c.jsx(fe,{type:"button",variant:"outline",onClick:()=>{Je()},children:"Retry"})]})}):null,Ge?c.jsx(kG,{evidence:Ge.evidence,project:Ge.project,onClose:G}):null,c.jsx(G$,{}),c.jsx(l$,{}),f?c.jsx(B$,{}):null]})]})}class K$ extends T.Component{state={error:null};static getDerivedStateFromError(a){return{error:a}}componentDidCatch(a,s){console.error("[ErrorBoundary]",a,s.componentStack)}handleReset=()=>{this.setState({error:null})};render(){return this.state.error?c.jsx("div",{className:"page-container",children:c.jsxs("div",{className:"flex flex-col items-center justify-center gap-4 py-20 text-center",children:[c.jsx("div",{className:"rounded-full bg-negative-950/40 p-3",children:c.jsx(Gx,{className:"size-6 text-negative-400"})}),c.jsx("h2",{className:"text-lg font-semibold text-heading",children:"Something went wrong"}),c.jsx("p",{className:"text-sm text-secondary max-w-md",children:this.state.error.message||"An unexpected error occurred while rendering this page."}),c.jsxs("div",{className:"flex gap-3 mt-2",children:[c.jsxs(fe,{variant:"secondary",size:"sm",onClick:this.handleReset,children:[c.jsx(Ux,{className:"size-3.5 mr-1.5"}),"Try again"]}),c.jsx(fe,{variant:"secondary",size:"sm",onClick:()=>{const a=window.__CANONRY_CONFIG__?.basePath?.replace(/\/$/,"")??"";window.location.href=a||"/"},children:"Go home"})]})]})}):this.props.children}}const ua=T.forwardRef(({className:e,...a},s)=>c.jsx("div",{ref:s,className:fa("rounded-xl border border-base bg-bg/75 shadow-[0_0_0_1px_var(--color-shadow-hairline)]",e),...a}));ua.displayName="Card";const Ko=T.forwardRef(({className:e,...a},s)=>c.jsx("div",{ref:s,className:fa("flex flex-col gap-1.5 p-5",e),...a}));Ko.displayName="CardHeader";const j3=T.forwardRef(({className:e,...a},s)=>c.jsx("h3",{ref:s,className:fa("font-medium tracking-tight text-primary",e),...a}));j3.displayName="CardTitle";const Qu=T.forwardRef(({className:e,...a},s)=>c.jsx("p",{ref:s,className:fa("text-sm text-muted",e),...a}));Qu.displayName="CardDescription";const Ms=T.forwardRef(({className:e,...a},s)=>c.jsx("div",{ref:s,className:fa("p-5 pt-0",e),...a}));Ms.displayName="CardContent";const H$=20,Q$=6;function F$({points:e,tone:a}){const s=T.useId();if(e.length===0)return null;const r=42,u=132,f=5,g=u-f*2,b=r-f*2,v=b-Q$,k=G=>f+G/Math.max(e.length-1,1)*g,S=Pq(e),A=Math.min(...e),N=Math.max(...e),E=Math.max(N-A,H$),Z=(N+A)/2-E/2,_=e.map((G,K)=>({x:k(K),y:f+(1-(G-Z)/E)*v}));return c.jsxs("svg",{className:`sparkline sparkline-${a}${S?" sparkline-provisional":""}`,viewBox:`0 0 ${u} ${r}`,"aria-hidden":"true",children:[c.jsx("defs",{children:c.jsx("clipPath",{id:s,children:c.jsx("rect",{x:f,y:f,width:g,height:b,rx:"8"})})}),c.jsx("line",{className:"sparkline-guide",x1:f,x2:u-f,y1:r-f,y2:r-f}),_.length===1?c.jsx("circle",{className:"sparkline-point",cx:_[0].x,cy:_[0].y,r:"3"}):c.jsx("polyline",{clipPath:`url(#${s})`,points:_.map(G=>`${G.x},${G.y}`).join(" "),vectorEffect:"non-scaling-stroke"})]})}function Z$({project:e}){return c.jsxs(tt,{to:"/projects/$projectName",params:{projectName:e.project.name},className:"project-row cursor-pointer",children:[c.jsx("div",{className:"project-row-chart",children:c.jsx(F$,{points:e.trend,tone:HS(e.lastRun.status)})}),c.jsxs("div",{className:"project-row-primary",children:[c.jsxs("div",{children:[c.jsx("p",{className:"project-name",children:e.project.name}),c.jsx("p",{className:"project-domain",children:e.project.canonicalDomain})]}),c.jsx("p",{className:"project-insight",children:e.insight})]}),c.jsx("div",{className:"project-row-stat",children:c.jsxs("div",{className:"metric-inline-block",children:[c.jsx("p",{className:"metric-inline-label",children:"Mentioned"}),c.jsx("p",{className:`metric-inline-value ${e.mentionTone==="caution"?"text-caution-400":""}`,children:e.hasMeasurement===!1?"Not measured":e.mentionScore}),c.jsx("p",{className:`metric-inline-caption${e.providerCoverage?" text-caution":""}`,title:e.providerCoverage,children:e.providerCoverage?c.jsxs(c.Fragment,{children:[c.jsx("span",{className:"sr-only",children:"Partial sweep: "}),e.providerCoverage]}):e.mentionDelta})]})}),c.jsx("div",{className:"project-row-stat",children:c.jsxs("div",{className:"metric-inline-block",children:[c.jsxs("p",{className:"metric-inline-label",children:[c.jsx("span",{"aria-hidden":"true",children:"Pressure"}),c.jsx("span",{className:"sr-only",children:"Competitor pressure"})]}),c.jsx("p",{className:"metric-inline-value",children:e.hasMeasurement===!1?"Not measured":e.competitorPressureLabel}),c.jsx("p",{className:"metric-inline-caption","aria-hidden":"true"})]})}),c.jsx("span",{className:"project-row-link",children:c.jsx(Wh,{className:"h-4 w-4 text-muted"})})]})}function Y$(){const{isAdmin:e}=ha(),a=Kl(),{dashboard:s,isLoading:r,isError:u,refetch:f}=Ed(),g=s??a?.dashboard,v=Sf(!a,a?.health),{openRun:k}=jf();if(u&&!g)return c.jsxs("div",{className:"page-container",children:[c.jsx("div",{className:"page-header",children:c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Portfolio unavailable"}),c.jsx("p",{className:"page-subtitle",children:"Canonry could not load the project list."})]})}),c.jsxs("div",{className:"max-w-xl rounded-lg border border-negative bg-negative-soft p-4",role:"alert",children:[c.jsx("p",{className:"text-sm font-medium text-heading",children:"Your projects have not been changed."}),c.jsx("p",{className:"mt-1 text-sm text-secondary",children:"Check the connection or sign in again, then retry."}),c.jsx(fe,{type:"button",variant:"secondary",className:"mt-4",onClick:()=>{f()},children:"Retry loading portfolio"})]})]});if(!g||r)return c.jsxs("div",{className:"page-skeleton",children:[c.jsxs("div",{className:"page-skeleton-header",children:[c.jsx("div",{className:"skeleton-text h-6 w-32"}),c.jsx("div",{className:"skeleton-text-sm w-64"})]}),c.jsx("div",{className:"space-y-3",children:[1,2,3].map(_=>c.jsxs("div",{className:"rounded-xl border border-default bg-surface p-4 flex items-center gap-4",children:[c.jsxs("div",{className:"flex-1 space-y-2",children:[c.jsx("div",{className:"skeleton-text w-36"}),c.jsx("div",{className:"skeleton-text-sm w-48"})]}),c.jsx("div",{className:"skeleton-text w-16"}),c.jsx("div",{className:"skeleton-text w-16"}),c.jsx("div",{className:"skeleton h-8 w-20 rounded"})]},_))})]});const S=g.portfolioOverview,A=S.projects.length>0&&S.projects.every(_=>_.hasMeasurement===!1),N=S.attentionItems.map(_=>A&&_.id==="attention_stable"?{..._,tone:"neutral",title:"Awaiting first measurement",detail:"Visibility results will appear after the first sweep."}:_),E=v.data??a?.health??{apiStatus:{label:"API",state:"checking",detail:"Checking service health"},workerStatus:{label:"Worker",state:"checking",detail:"Checking service health"}},Z=oU(S.systemHealth.filter(_=>e||_.id==="api"||_.id==="worker"),E,g.settings);return c.jsxs("div",{className:"page-container",children:[c.jsx("div",{className:"page-header",children:c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Portfolio"}),c.jsx("p",{className:"page-subtitle",children:"Visibility across all projects."})]})}),S.projects.length>0?c.jsx("div",{className:"project-list project-list-scrollable",children:S.projects.map(_=>c.jsx(Z$,{project:_},_.project.id))}):c.jsxs(ua,{className:"surface-card empty-card",children:[c.jsx("h3",{children:S.emptyState?.title??"No projects yet"}),c.jsx("p",{className:"supporting-copy",children:S.emptyState?.detail}),c.jsx(fe,{size:"sm",asChild:!0,children:c.jsx(tt,{to:S.emptyState?.ctaHref==="/setup"||!S.emptyState?.ctaHref?"/setup":"/",children:S.emptyState?.ctaLabel??"Launch setup"})})]}),c.jsxs("div",{className:"overview-secondary-grid",children:[N.length>0&&c.jsxs("section",{className:"overview-secondary-section",children:[c.jsx("div",{className:"section-head section-head-inline",children:c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Needs attention"}),c.jsx("h2",{className:"section-title-sm",children:"What changed"})]})}),c.jsx("div",{className:"attention-list attention-list-scrollable",children:N.map(_=>_.href?c.jsxs(tt,{to:_.href,className:`attention-item attention-item-${_.tone}`,children:[c.jsxs("div",{children:[c.jsx("p",{className:"attention-title",children:_.title}),c.jsx("p",{className:"attention-detail",children:_.detail})]}),_.actionLabel&&c.jsx("span",{className:"attention-action",children:_.actionLabel})]},_.id):c.jsxs("div",{className:`attention-item attention-item-static attention-item-${_.tone}`,children:[c.jsxs("div",{children:[c.jsx("p",{className:"attention-title",children:_.title}),c.jsx("p",{className:"attention-detail",children:_.detail})]}),_.actionLabel&&c.jsx("span",{className:"attention-action",children:_.actionLabel})]},_.id))})]}),c.jsxs("section",{className:"overview-secondary-section",children:[c.jsx("div",{className:"section-head section-head-inline",children:c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Recent runs"}),c.jsx("h2",{className:"section-title-sm",children:"Activity"})]})}),c.jsx("div",{className:"compact-stack compact-stack-scrollable",children:S.recentRuns.length>0?S.recentRuns.map(_=>c.jsxs("button",{className:"compact-run",type:"button",onClick:()=>k(_.id),children:[c.jsxs("div",{children:[c.jsx("p",{className:"compact-run-title",children:_.projectName}),c.jsx("p",{className:"compact-run-detail",children:_.summary})]}),c.jsx(wf,{status:_.status})]},_.id)):c.jsx("p",{className:"supporting-copy",children:"Run history appears here after the first launch."})})]})]}),c.jsxs("section",{className:"page-section",children:[c.jsx("div",{className:"section-head section-head-inline",children:c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"System health"}),c.jsx("h2",{className:"section-title-sm",children:"Infrastructure"})]})}),c.jsx("div",{className:"divide-y divide-default border-y border-default",children:Z.map(_=>{const G=_.id==="api"?E.apiStatus:_.id==="worker"?E.workerStatus:void 0,K=G?G.state==="ok"?void 0:ar(G):_.tone==="positive"?void 0:_.meta;return c.jsxs("div",{className:"flex items-start justify-between gap-4 py-3",children:[c.jsxs("div",{children:[c.jsx("p",{className:"text-sm font-medium text-heading",children:_.label}),K&&c.jsx("p",{className:"mt-1 text-sm text-secondary",children:K})]}),c.jsx(pn,{tone:_.tone,title:G?ar(G):_.meta,children:_.detail})]},_.id)})})]})]})}const X$='a, button, input, select, textarea, label, [role="button"], [role="link"], [role="checkbox"], [role="menuitem"]';function J$(e){if(e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return!1;const a=e.target;if(a&&typeof a.closest=="function"&&a.closest(X$))return!1;const s=typeof window<"u"?window.getSelection():null;return!(s&&!s.isCollapsed&&s.toString().trim()!=="")}function W$({onApplied:e}){const{canWrite:a}=ha(),[s,r]=T.useState(""),[u,f]=T.useState(!1),[g,b]=T.useState([]),[v,k]=T.useState([]);if(gI()||!a)return null;const S=async()=>{if(!s.trim())return;f(!0),b([]),k([]);const A=bA(s),N=[],E=[];for(let Z=0;Z<A.length;Z++){const _=A[Z];if(_.errors.length>0){N.push(`Document ${Z+1}: ${_.errors[0]?.message}`);continue}const G=_.toJSON();if(!(!G||typeof G!="object"))try{const K=await VI(G);E.push(`Applied "${K.displayName||K.name}" (revision ${K.configRevision})`)}catch(K){N.push(`Document ${Z+1}: ${d_(K)}`)}}b(E),k(N),f(!1),E.length>0&&(rn({title:"YAML applied",detail:`Applied ${E.length} document${E.length===1?"":"s"} successfully.`,tone:N.length>0?"caution":"positive",dedupeKey:"yaml:apply",dedupeMode:"replace"}),e())};return c.jsxs("section",{className:"mt-8",children:[c.jsx("div",{className:"page-section-divider"}),c.jsx("div",{className:"section-head mt-6",children:c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Config as code"}),c.jsx("h2",{className:"text-sm font-medium text-strong",children:"Apply YAML"})]})}),c.jsxs("p",{className:"text-muted text-sm mb-3",children:["Paste a ",c.jsx("code",{className:"text-secondary",children:"canonry.yaml"})," config (multi-document YAML with ",c.jsx("code",{className:"text-secondary",children:"---"})," separators supported)."]}),c.jsx("textarea",{className:"setup-input w-full font-mono text-xs",rows:10,placeholder:`apiVersion: canonry/v1
65
- kind: Project
66
- metadata:
67
- name: my-project
68
- spec:
69
- canonicalDomain: example.com
70
- country: US
71
- language: en
72
- queries: []`,value:s,onChange:A=>r(A.target.value)}),g.length>0&&c.jsx("ul",{className:"mt-2 space-y-1",children:g.map((A,N)=>c.jsx("li",{className:"text-positive-400 text-sm",children:A},N))}),v.length>0&&c.jsx("ul",{className:"mt-2 space-y-1",children:v.map((A,N)=>c.jsx("li",{className:"text-negative-400 text-sm",children:A},N))}),c.jsx("div",{className:"mt-3",children:c.jsx(fe,{type:"button",disabled:!s.trim()||u,onClick:Ft(S),children:u?"Applying...":"Apply"})})]})}function eK(){const{dashboard:e,isLoading:a,refetch:s}=Ed(),{canWrite:r,isAdmin:u}=ha(),f=Hs();if(!e||a)return c.jsxs("div",{className:"page-skeleton",children:[c.jsxs("div",{className:"page-skeleton-header",children:[c.jsx("div",{className:"skeleton-text h-6 w-28"}),c.jsx("div",{className:"skeleton-text-sm w-40"})]}),c.jsxs("div",{className:"rounded-xl border border-default bg-surface overflow-hidden",children:[c.jsx("div",{className:"p-3 border-b border-default flex gap-8",children:["Name","Domain","Mentions","Last run","Country"].map(b=>c.jsx("div",{className:"skeleton-text-sm w-16"},b))}),[1,2,3].map(b=>c.jsxs("div",{className:"p-3 border-b border-subtle flex gap-8 items-center",children:[c.jsxs("div",{className:"flex-1 space-y-1",children:[c.jsx("div",{className:"skeleton-text w-28"}),c.jsx("div",{className:"skeleton-text-sm w-16"})]}),c.jsx("div",{className:"skeleton-text w-24"}),c.jsx("div",{className:"skeleton h-5 w-14 rounded-full"}),c.jsx("div",{className:"skeleton h-5 w-16 rounded-full"}),c.jsx("div",{className:"skeleton-text-sm w-8"})]},b))]})]});const g=e.projects;return c.jsxs("div",{className:"page-container",children:[c.jsxs("div",{className:"page-header",children:[c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Projects"}),c.jsxs("p",{className:"page-subtitle",children:[g.length," project",g.length!==1?"s":""," tracked"]})]}),u?c.jsx("div",{className:"page-header-right",children:c.jsxs(fe,{type:"button",onClick:()=>{f({to:"/setup",search:{experience:"platform"}})},children:[c.jsx(sb,{className:"size-4 mr-1.5"}),g.length===0?"Map a site":"Add project"]})}):null]}),g.length>0?c.jsx("div",{className:"data-table-wrapper",children:c.jsxs("table",{className:"data-table",children:[c.jsx("thead",{children:c.jsxs("tr",{children:[c.jsx("th",{children:"Name"}),c.jsx("th",{children:"Domain"}),c.jsx("th",{children:"Mentions"}),c.jsx("th",{children:"Last run"}),c.jsx("th",{className:"text-right",children:"Country"})]})}),c.jsx("tbody",{children:g.map(b=>{const v=b.recentRuns[0];return c.jsxs("tr",{className:"cursor-pointer",onClick:k=>{J$(k)&&f({to:"/projects/$projectName",params:{projectName:b.project.name}})},children:[c.jsxs("td",{children:[c.jsx(tt,{to:"/projects/$projectName",params:{projectName:b.project.name},className:"text-heading font-medium hover:underline",children:b.project.displayName||b.project.name}),c.jsx("p",{className:"text-[11px] text-muted",children:b.project.name})]}),c.jsx("td",{className:"text-secondary",children:b.project.canonicalDomain}),c.jsx("td",{children:c.jsx(pn,{tone:b.mentionSummary.tone,children:b.mentionSummary.value})}),c.jsx("td",{className:"text-muted text-sm",children:v?c.jsx(wf,{status:v.status}):c.jsx("span",{className:"text-faint",children:"No runs"})}),c.jsx("td",{className:"text-right text-muted",children:b.project.country})]},b.project.id)})})]})}):c.jsxs(ua,{className:"surface-card empty-card",children:[c.jsx("h3",{children:"No projects yet"}),c.jsx("p",{className:"supporting-copy",children:"Map a public site to capture its Page Health baseline and exact fixes."}),u?c.jsxs(fe,{type:"button",onClick:()=>{f({to:"/setup",search:{experience:"platform"}})},children:[c.jsx(sb,{className:"size-4 mr-1.5"}),"Map a site"]}):null]}),r?c.jsx(W$,{onApplied:()=>{s()}}):null]})}const Cx="canonry.onboarding-session.v1",Fu="canonry.onboarding-launched-run.v1",tK=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,nK=["system","project","queries","competitors","run"];function aK(e){return nK[e]??"system"}function iK(e){if(!e.apiReady)return"api_unavailable";if(e.databaseConfigured===!1)return"database_unavailable";if(!e.workerReady)return"worker_unavailable";if(!e.providerReady)return"no_provider"}function sK(e){return e.apiStatus.state!=="checking"&&e.workerStatus.state!=="checking"}const oK={NO_PROVIDER:"no_provider",NO_QUERIES:"no_queries",RATE_LIMITED:"rate_limited",QUOTA_EXCEEDED:"rate_limited",PROVIDER_AUTH:"provider_auth",AUTH_INVALID:"provider_auth",FORBIDDEN:"provider_auth",NETWORK:"network",CONNECTION_ERROR:"network",RUN_IN_PROGRESS:"run_rejected",RUN_CANCELLED:"run_cancelled"};function Al(e,a){const s=e&&typeof e=="object"&&"code"in e?String(e.code):"";return oK[s]??a}function A3(){try{const e=typeof window<"u"?window.sessionStorage.getItem(Cx):null;if(e&&tK.test(e))return e;const a=Fh();return typeof window<"u"&&window.sessionStorage.setItem(Cx,a),a}catch{return Fh()}}function C3(){return Fh()}function N3(e){if(!e||typeof e!="object")return!1;const a=e;return typeof a.projectName=="string"&&a.projectName.length>0&&typeof a.runId=="string"&&a.runId.length>0&&typeof a.handled=="boolean"}function _3(e,a){try{typeof window<"u"&&window.sessionStorage.setItem(Fu,JSON.stringify({projectName:e,runId:a,handled:!1}))}catch{}}function z3(e){if(!e)return null;try{if(typeof window>"u")return null;const a=window.sessionStorage.getItem(Fu);if(!a)return null;const s=JSON.parse(a);return!N3(s)||s.projectName!==e||s.handled?null:s}catch{return null}}function Zu(e){try{if(typeof window>"u")return;const a=window.sessionStorage.getItem(Fu);if(!a)return;const s=JSON.parse(a);if(!N3(s)||s.runId!==e)return;window.sessionStorage.setItem(Fu,JSON.stringify({...s,handled:!0}))}catch{}}function Fh(){const e=globalThis.crypto;if(e.randomUUID)return e.randomUUID();const a=new Uint8Array(16);if(e.getRandomValues)e.getRandomValues(a);else for(let r=0;r<a.length;r+=1)a[r]=Math.floor(Math.random()*256);a[6]=a[6]&15|64,a[8]=a[8]&63|128;const s=[...a].map(r=>r.toString(16).padStart(2,"0")).join("");return`${s.slice(0,8)}-${s.slice(8,12)}-${s.slice(12,16)}-${s.slice(16,20)}-${s.slice(20)}`}class rK extends Error{constructor(){super(LS),this.name="ViewOnlyError"}}function lK(e){if(!e.canWrite)throw new rK}function E3(e){e.invalidateQueries({queryKey:gf({client:se})}),e.invalidateQueries({queryKey:ts({client:se})})}function Xs(){const e=ha();return()=>{lK(e)}}function cK(e){return e==="gsc-sync"?"GSC sync queued":e==="inspect-sitemap"?"Sitemap inspection queued":"Visibility sweep queued"}function uK(e,a){const s=e??"Project";return a==="gsc-sync"?`${s} will refresh after the sync completes.`:a==="inspect-sitemap"?`${s} will notify you when sitemap inspection finishes.`:`${s} will notify you when the run finishes.`}function _f(e,a){vf({id:e.id,projectId:e.projectId,kind:e.kind,projectLabel:a.projectLabel,sourceAction:a.sourceAction,lastAnnouncedStatus:"queued"}),rn({title:cK(e.kind),detail:uK(a.projectLabel,e.kind),tone:"neutral",dedupeKey:`run:${e.id}`,dedupeMode:"replace"})}function dK(e){const a=e.filter(g=>g.status!=="conflict"&&g.status!=="error"),s=e.filter(g=>g.status==="conflict"),r=e.filter(g=>g.status==="error"),u=s.length+r.length;if(a.length===0){const g=[r.length>0?`${r.length} need provider or query setup`:null,s.length>0?`${s.length} already have an active run`:null].filter(b=>b!==null);rn({title:"No runs queued",detail:g.length>0?`${g.join("; ")}.`:"No projects were available to queue.",tone:"caution",durationMs:8e3,dedupeKey:"run-all:conflict",dedupeMode:"replace"});return}for(const g of a)vf({id:g.id,projectId:g.projectId,kind:g.kind,projectLabel:g.projectName,sourceAction:"run-all",lastAnnouncedStatus:"queued"});const f=pU({runIds:a.map(g=>g.id),queuedCount:a.length,skippedCount:u});rn({title:"Run-all batch queued",detail:u>0?`${a.length} project${a.length===1?"":"s"} queued; ${u} need attention or already have an active run.`:`${a.length} project${a.length===1?"":"s"} queued.`,tone:u>0?"caution":"neutral",dedupeKey:`batch:${f}`,dedupeMode:"replace"})}function Td(e,a){if(e instanceof fn&&e.code==="RUN_IN_PROGRESS"){rn({title:"Run already in progress",detail:a?.projectLabel?`${a.projectLabel} already has an active run. Wait for it to finish, then retry.`:"This project already has an active run. Wait for it to finish, then retry.",tone:"caution",durationMs:8e3,dedupeKey:`run-in-progress:${a?.projectKey??"project"}:${a?.sourceAction??"run"}`,dedupeMode:"replace"});return}rn({title:e instanceof Error?e.message:"Failed to queue run",tone:"negative"})}function mK(){const e=Xs(),a=da();return ns({onMutate:e,meta:{skipGlobalErrorToast:!0},mutationFn:({projectName:s,opts:r})=>DI(s,r),onSuccess:(s,r)=>{E3(a),_f(s,{projectLabel:r.projectLabel??r.projectName,sourceAction:r.sourceAction})},onError:(s,r)=>{r.sourceAction!=="setup-launch"&&Td(s,{projectKey:r.projectName,projectLabel:r.projectLabel??r.projectName,sourceAction:r.sourceAction})}})}function LY(){const e=Xs(),a=da();return ns({onMutate:e,meta:{skipGlobalErrorToast:!0},mutationFn:s=>LI(s),onSuccess:s=>{E3(a),dK(s)},onError:s=>{rn({title:s instanceof Error?s.message:"Failed to queue runs",tone:"negative"})}})}function pK(){const e=Xs(),a=da();return ns({onMutate:e,meta:{skipGlobalErrorToast:!0},mutationFn:({projectName:s,body:r})=>$I(s,r),onSuccess:(s,r)=>{Rl(a,ze["site-audit"],r.projectName),vf({id:s.runId,projectId:r.projectId,kind:ze["site-audit"],projectLabel:r.projectLabel??r.projectName,sourceAction:"site-audit",lastAnnouncedStatus:s.status}),rn({title:s.status==="running"?"Site Health scan already running":"Site Health scan queued",detail:`${r.projectLabel??r.projectName} will refresh automatically when the scan finishes.`,tone:"neutral",dedupeKey:`run:${s.runId}`,dedupeMode:"replace"})},onError:(s,r)=>{r.suppressErrorToast||Td(s,{projectKey:r.projectName,projectLabel:r.projectLabel??r.projectName,sourceAction:"site-audit"})}})}function UY(){const e=Xs(),a=da();return ns({onMutate:e,meta:{skipGlobalErrorToast:!0},mutationFn:({projectName:s,opts:r})=>UI(s,r),onSuccess:(s,r)=>{Rl(a,ze["gsc-sync"],r.projectName),_f(s,{projectLabel:r.projectLabel??r.projectName,sourceAction:"gsc-sync"})},onError:(s,r)=>{Td(s,{projectKey:r.projectName,projectLabel:r.projectLabel??r.projectName,sourceAction:"gsc-sync"})}})}function GY(){const e=Xs(),a=da();return ns({onMutate:e,meta:{skipGlobalErrorToast:!0},mutationFn:({projectName:s,opts:r})=>GI(s,r),onSuccess:(s,r)=>{Rl(a,ze["inspect-sitemap"],r.projectName),_f(s,{projectLabel:r.projectLabel??r.projectName,sourceAction:"inspect-sitemap"})},onError:(s,r)=>{Td(s,{projectKey:r.projectName,projectLabel:r.projectLabel??r.projectName,sourceAction:"inspect-sitemap"})}})}function zf(e){if(!Array.isArray(e.queryKey)||e.queryKey.length<=1)return!1;const a=e.queryKey[0];return a==="projects"||a==="project-dashboard-full"}function $Y(){const e=Xs(),a=da();return ns({onMutate:e,mutationFn:({projectName:s,queries:r})=>EI(s,r),onSuccess:()=>{a.invalidateQueries({queryKey:ts({client:se})}),a.invalidateQueries({predicate:zf})}})}function KY(){const e=Xs(),a=da();return ns({onMutate:e,mutationFn:({projectName:s,body:r})=>TI(s,r),onSuccess:()=>{mn(a,"project"),a.invalidateQueries({predicate:zf})}})}function HY({disabled:e,title:a,...s}){const{canWrite:r}=ha();return r?c.jsx(fe,{disabled:e,title:a,...s}):c.jsx(fe,{...s,disabled:!0,title:LS})}function Ef({title:e,children:a}){const{isAdmin:s}=ha();return s?c.jsx(c.Fragment,{children:a}):c.jsxs(ua,{className:"surface-card mx-auto mt-8 max-w-lg",children:[c.jsxs(Ko,{children:[c.jsxs(j3,{children:[e," is for administrators"]}),c.jsx(Qu,{children:"Your account has view-only access. You can read everything this install has measured; changing how it is set up needs an administrator account."})]}),c.jsx(Ms,{children:c.jsx("p",{className:"supporting-copy",children:"If you need to make a change here, ask an administrator on this install."})})]})}const Nx=[{id:"site",label:"Site audit",optional:!1},{id:"fixes",label:"Page health",optional:!1},{id:"visibility",label:"AI Visibility",optional:!0}];function ir({current:e}){const a=Nx.findIndex(s=>s.id===e);return c.jsx("ol",{"aria-label":"Onboarding progress",className:"grid border-y border-default sm:grid-cols-3 sm:divide-x sm:divide-default",children:Nx.map((s,r)=>{const u=r<a,f=r===a;return c.jsxs("li",{"aria-current":f?"step":void 0,className:"flex min-h-12 items-center gap-3 py-2 sm:px-3 sm:first:pl-0 sm:last:pr-0",children:[c.jsx("span",{"aria-hidden":"true",className:`flex size-6 shrink-0 items-center justify-center rounded-full border text-xs font-semibold tabular-nums ${f?"border-accent bg-accent text-on-inverse":u?"border-positive bg-positive-soft text-positive":"border-default bg-surface-subtle text-muted"}`,children:u?"✓":r+1}),c.jsxs("span",{className:"flex min-w-0 flex-wrap items-baseline gap-x-2",children:[c.jsx("span",{className:`text-sm font-medium ${f||u?"text-heading":"text-secondary"}`,children:s.label}),s.optional?c.jsx("span",{className:"text-[13px] text-secondary",children:"Optional"}):null,u?c.jsx("span",{className:"sr-only",children:"Complete"}):null]})]},s.id)})})}function hK({providerName:e,keyUrl:a,modelHint:s,compact:r=!1,leadingField:u,secondaryActions:f,onSaved:g}){const b=e.toLowerCase()==="local",v=r&&e.toLowerCase()==="gemini"&&!!a,[k,S]=T.useState(""),[A,N]=T.useState(""),[E,Z]=T.useState(""),[_,G]=T.useState(""),[K,te]=T.useState(""),[Q,re]=T.useState(""),[W,oe]=T.useState(!1),[H,$]=T.useState(null),[Te,Ke]=T.useState(!1),Fe=b?A.trim().length>0:k.trim().length>0;async function Re(){if(Fe){oe(!0),$(null),Ke(!1);try{const X=V=>{const q=parseInt(V.trim(),10);return Number.isFinite(q)&&q>0?q:void 0},Ie={},Ne=X(_);Ne!==void 0&&(Ie.maxConcurrency=Ne);const Ae=X(K);Ae!==void 0&&(Ie.maxRequestsPerMinute=Ae);const ne=X(Q);ne!==void 0&&(Ie.maxRequestsPerDay=ne),await BS(e.toLowerCase(),{...k.trim()?{apiKey:k.trim()}:{},...A.trim()?{baseUrl:A.trim()}:{},...E.trim()?{model:E.trim()}:{},...Object.keys(Ie).length>0?{quota:Ie}:{}}),S(""),N(""),Z(""),G(""),te(""),re(""),Ke(!0),rn({title:"Provider updated",detail:`${e} configuration saved.`,tone:"positive",dedupeKey:`settings:provider:${e}`,dedupeMode:"replace"}),g()}catch(X){$(X instanceof Error?X.message:"Failed to update provider")}finally{oe(!1)}}}const ve=s??"Use default model",Ue=r?"block text-sm font-medium text-secondary":"text-sm text-secondary",be=r?"setup-input min-h-11 w-full":"mt-0.5 w-full rounded border border-strong bg-transparent px-2 py-1.5 text-sm text-strong placeholder-mono-600 focus:border-mono-500 focus:outline-none",P=c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:r?"space-y-1.5":void 0,children:[c.jsx("label",{className:Ue,htmlFor:`model-${e}`,children:"Model (optional)"}),c.jsx("input",{id:`model-${e}`,type:"text",className:be,placeholder:ve,value:E,onChange:X=>Z(X.target.value)})]}),c.jsxs("div",{children:[c.jsx("label",{className:Ue,children:"Quota (optional)"}),c.jsxs("div",{className:"mt-0.5 grid grid-cols-3 gap-1.5",children:[c.jsxs("div",{children:[c.jsx("input",{type:"number",min:"1",className:r?"setup-input min-h-11 w-full":"w-full rounded border border-strong bg-transparent px-2 py-1.5 text-sm text-strong placeholder-mono-600 focus:border-mono-500 focus:outline-none",placeholder:"Concurrent",value:_,onChange:X=>G(X.target.value)}),c.jsx("p",{className:"mt-1 text-sm text-secondary",children:"Max concurrent"})]}),c.jsxs("div",{children:[c.jsx("input",{type:"number",min:"1",className:r?"setup-input min-h-11 w-full":"w-full rounded border border-strong bg-transparent px-2 py-1.5 text-sm text-strong placeholder-mono-600 focus:border-mono-500 focus:outline-none",placeholder:"/min",value:K,onChange:X=>te(X.target.value)}),c.jsx("p",{className:"mt-1 text-sm text-secondary",children:"Per minute"})]}),c.jsxs("div",{children:[c.jsx("input",{type:"number",min:"1",className:r?"setup-input min-h-11 w-full":"w-full rounded border border-strong bg-transparent px-2 py-1.5 text-sm text-strong placeholder-mono-600 focus:border-mono-500 focus:outline-none",placeholder:"/day",value:Q,onChange:X=>re(X.target.value)}),c.jsx("p",{className:"mt-1 text-sm text-secondary",children:"Per day"})]})]})]})]}),ae=b?c.jsxs("div",{className:r?"space-y-1.5":void 0,children:[c.jsx("label",{className:Ue,htmlFor:`base-url-${e}`,children:"Base URL"}),c.jsx("input",{id:`base-url-${e}`,type:"text",className:be,placeholder:"http://localhost:11434/v1",value:A,onChange:X=>N(X.target.value)}),c.jsx("p",{className:"mt-1 text-sm text-secondary",children:"Use any OpenAI-compatible endpoint, such as Ollama or vLLM."})]}):null,he=c.jsxs("div",{className:r?"min-w-0 space-y-1.5":void 0,children:[c.jsxs("div",{className:r?"flex items-center justify-between gap-3":"flex items-center justify-between",children:[c.jsxs("label",{className:Ue,htmlFor:`api-key-${e}`,children:["API key",b?" (optional)":""]}),a&&!v&&c.jsxs("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"text-sm text-secondary hover:text-neutral underline underline-offset-2",children:["Get API key ","↗"]})]}),c.jsx("input",{id:`api-key-${e}`,type:"password",autoComplete:"new-password",autoCapitalize:"none",spellCheck:!1,className:be,placeholder:b?"Optional. Most local servers do not need one.":`Enter ${e} API key`,value:k,onChange:X=>S(X.target.value)})]}),je=c.jsx(fe,{type:"button",size:r?"default":"sm",className:r?"min-h-11":void 0,disabled:!Fe||W,onClick:Ft(Re),children:W?"Saving...":r?"Save connection":"Save"});return c.jsxs("div",{className:r?"space-y-3":"mt-3 rounded-lg border border-base bg-bg-elevated/40 p-3 space-y-2",children:[v&&c.jsxs("div",{className:"flex flex-wrap items-start gap-x-6 gap-y-3 pb-2",children:[c.jsxs("div",{className:"min-w-0 flex-1 basis-72 space-y-1",children:[c.jsx("h3",{className:"text-base font-semibold text-heading",children:"Start with Gemini’s free tier"}),c.jsxs("p",{className:"max-w-prose text-sm text-secondary",children:["Get a key in Google AI Studio, then paste it below. Free usage has model and rate limits; paid usage is billed by Google."," ",c.jsx("a",{href:"https://ai.google.dev/gemini-api/docs/pricing",target:"_blank",rel:"noopener noreferrer",className:"text-link underline underline-offset-2 focus-visible:outline-2 focus-visible:outline-offset-2",children:"Pricing and limits"})]})]}),c.jsx(fe,{variant:"outline",className:"min-h-11",asChild:!0,children:c.jsxs("a",{href:a,target:"_blank",rel:"noopener noreferrer",children:["Get a free Gemini API key ","↗"]})})]}),r?c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:u?"grid items-start gap-3 sm:grid-cols-[minmax(0,0.7fr)_minmax(0,1.3fr)]":void 0,children:[u,he]}),ae]}):c.jsxs(c.Fragment,{children:[ae,he]}),r?c.jsxs("details",{children:[c.jsx("summary",{className:"min-h-11 cursor-pointer text-sm text-secondary py-3",children:"Advanced provider settings"}),c.jsx("div",{className:"space-y-3 pt-2",children:P})]}):P,H&&c.jsx("p",{role:"alert",className:"text-sm text-negative-400",children:H}),Te&&c.jsx("p",{className:"text-sm text-positive-400",children:"Provider updated."}),r?c.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[je,f]}):je]})}const Yu="cdp:chatgpt";function Is(e){return e.trim().toLowerCase()}function fK({projectProviders:e,configuredApiProviders:a,cdpConfigured:s}){const r=e.map(Is),u=new Set(r),f=r.length===0||r.some(k=>k!==Yu),g=r.length===0||u.has(Yu);if(f&&a!==void 0&&a.map(Is).some(S=>r.length===0||u.has(S))||g&&s===!0)return!0;if(!(f&&a===void 0||g&&s===void 0))return!1}const gK=[{label:"System check",description:"Verify your instance is ready"},{label:"Create project",description:"Name, domain, and locale"},{label:"Queries",description:"Add queries to track"},{label:"Competitors",description:"Add competitor domains"},{label:"Launch",description:"Start your first visibility sweep"}],yK=[{label:"Queries"},{label:"First sweep"}];function _x(e,a){return(e==="completed"||e==="partial")&&a>0}function zx(e){return e.launchReady?e.hasProject?e.queryCount===0?2:e.competitorCount===0&&!e.hasRunAttempt?3:4:1:0}function T3(e){return e.queryCounts.total>0}function bK(e,a){return a?e.find(s=>s.project.name===a)??null:e.find(s=>!T3(s))??e.at(0)??null}function vK({current:e,labels:a}){return c.jsx("div",{className:"setup-steps",role:"list","aria-label":"Setup progress",children:a.map((s,r)=>{const u=r<e,f=r===e;return c.jsxs("div",{className:`setup-step ${u?"setup-step-done":""} ${f?"setup-step-active":""}`,role:"listitem","aria-current":f?"step":void 0,children:[c.jsx("span",{className:"setup-step-number",children:u?"✓":r+1}),c.jsx("span",{children:s.label})]},s.label)})})}function xK({visibilityProjectName:e,siteHealthOnboarding:a=!1}={}){const{canWrite:s}=ha();return e&&s?c.jsx(Ex,{visibilityProjectName:e,siteHealthOnboarding:a}):c.jsx(Ef,{title:e?"Set up AI Visibility":"Setup",children:c.jsx(Ex,{visibilityProjectName:e,siteHealthOnboarding:a})})}function Ex({visibilityProjectName:e,siteHealthOnboarding:a}){const s=Kl(),{isAdmin:r}=ha(),{dashboard:u,isLoading:f,refetch:g}=Ed(void 0,{pauseProjectPolling:!0,includeSettings:r}),b=u??s?.dashboard,v=Hs(),k=T.useCallback(A=>{A&&e&&A.focus()},[e]),S=()=>{if(!e){v({to:"/",replace:!0});return}v({to:a?"/projects/$projectName/technical-aeo":"/projects/$projectName",params:{projectName:e},replace:!0})};return!b||f?c.jsxs("div",{className:"page-skeleton",children:[c.jsxs("div",{className:"page-skeleton-header",children:[c.jsx("div",{className:"skeleton-text h-6 w-24"}),c.jsx("div",{className:"skeleton-text-sm w-80"})]}),c.jsxs("div",{className:"page-skeleton-card",children:[c.jsx("div",{className:"skeleton-text w-32"}),c.jsx("div",{className:"space-y-3 mt-3",children:[1,2,3].map(A=>c.jsxs("div",{className:"flex items-center justify-between",children:[c.jsxs("div",{className:"space-y-1 flex-1",children:[c.jsx("div",{className:"skeleton-text w-24"}),c.jsx("div",{className:"skeleton-text-sm w-48"})]}),c.jsx("div",{className:"skeleton h-6 w-16 rounded-full"})]},A))})]})]}):e&&!b.projects.some(A=>A.project.name===e)?c.jsxs("div",{className:"page-container",children:[a?c.jsx(ir,{current:"visibility"}):null,c.jsxs("div",{className:"page-header",children:[c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{ref:k,tabIndex:-1,className:"page-title",children:"Set up AI Visibility"}),c.jsx("p",{className:"page-subtitle",children:"Choose what to track, then run your first visibility sweep."})]}),a?c.jsx("div",{className:"page-header-right",children:c.jsx(fe,{type:"button",variant:"outline",onClick:S,children:"Skip AI Visibility"})}):null]}),c.jsxs(ua,{role:"alert",className:"compact-stack",children:[c.jsx("h2",{children:"Project not found"}),c.jsx("p",{className:"text-secondary",children:"Canonry could not find the project handed off from Site Health. Refresh the project list or choose a project to continue."}),c.jsxs("div",{className:"flex flex-wrap gap-2",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:()=>{g()},children:"Retry"}),c.jsx(fe,{type:"button",asChild:!0,children:c.jsx(tt,{to:"/projects",children:"View projects"})})]})]})]}):c.jsx(kK,{dashboard:b,initialHealth:s?.health,enableLiveStatus:!s,refetch:g,visibilityProjectName:e,visibilityHeadingRef:k,siteHealthOnboarding:a})}function kK({dashboard:e,initialHealth:a,enableLiveStatus:s,refetch:r,visibilityProjectName:u,visibilityHeadingRef:f,siteHealthOnboarding:g}){const b=e.settings,{isAdmin:v}=ha(),S=Sf(s,a).data??a??{apiStatus:{label:"API",state:"checking",detail:"Checking service health"},workerStatus:{label:"Worker",state:"checking",detail:"Checking service health"}},A=lU(e.setup,S,b),N=!!u,E=Hs(),Z=da(),_=T.useRef(A3()).current,G=T.useRef(new Set),K=T.useCallback((U,Pe)=>{if(Pe){if(G.current.has(Pe))return;G.current.add(Pe)}PS({surface:"wizard",...U,eventId:C3()})},[]),te=bK(e.projects,u),Q=te?e.runs.filter(U=>U.projectId===te.project.id).sort((U,Pe)=>Pe.createdAt.localeCompare(U.createdAt)):[],re=te?.queryCounts.total??0,W=te?.project.name,oe=Et({queryKey:["setup","resume-queries",W],queryFn:()=>W?DS(W):Promise.resolve([]),enabled:!!W}),H=oe.data??[],$=oe.data?.length??re,Te=te?.competitors.map(U=>U.domain)??[],Ke=Q.at(0)??null,Fe=!!te&&T3(te),Re=!!te&&oe.isPending,ve=N?2:zx({launchReady:A.launchState.enabled,hasProject:!!te,queryCount:$,competitorCount:Te.length,hasRunAttempt:Q.length>0||Fe}),Ue=zx({launchReady:!0,hasProject:!!te,queryCount:$,competitorCount:Te.length,hasRunAttempt:Q.length>0||Fe}),[be,P]=T.useState(ve),[ae,he]=T.useState(!Re),je=N&&(Re||!ae),[X,Ie]=T.useState(te?.project.name??""),[Ne,Ae]=T.useState(te?.project.displayName??""),[ne,V]=T.useState(te?.project.canonicalDomain??""),[q,le]=T.useState(te?.project.country??"US"),[De,ye]=T.useState(te?.project.language??"en"),[Je,Ge]=T.useState(te?.project.autoExtractBacklinks??!1),[Be,de]=T.useState(te?.project.name??null),[Me,$t]=T.useState(null),[Sn,ga]=T.useState(!1),ln=()=>{if(!Be){E({to:"/",replace:!!u});return}E({to:g?"/projects/$projectName/technical-aeo":"/projects/$projectName",params:{projectName:Be},replace:!!u})},[Ve,ut]=T.useState(H.map(U=>U.query).join(`
73
- `)),[Jt,us]=T.useState($>0),[Hl,cn]=T.useState(null),[Ql,gr]=T.useState(!1),[Fl,Js]=T.useState(!1),Zl=b.providerStatuses.filter(U=>U.state==="ready"),Xn=te?.project.providers.map(Is)??[],Pn=Zl.filter(U=>Xn.length===0||Xn.includes(Is(U.name))),Rd=Zl.map(U=>Is(U.name)),ds=Pn.length>0,Wt=Xn.length===0||Xn.includes(Yu),un=N&&!v,Rt=Et({...AV({client:se,path:{name:W??""}}),enabled:un&&!!W,staleTime:0,refetchOnMount:"always",refetchOnWindowFocus:"always",retry:!1}),Yl=Rt.data?.answerVisibilityProviderReady,yr=un&&(Rt.isError||Rt.isSuccess&&typeof Yl!="boolean"),Ws=Et({...XV({client:se}),enabled:!un&&Wt&&!ds,staleTime:6e4,retry:!1}),Ka=Wt?Ws.isSuccess?typeof Ws.data.browserVersion=="string":Ws.isError?!1:void 0:!1,Kt=un?Rt.isSuccess&&Rt.isFetchedAfterMount&&!Rt.isFetching?Yl:void 0:fK({projectProviders:Xn,configuredApiProviders:Rd,cdpConfigured:Ka}),bi=Pn.length+(Ka===!0?1:0),[jn,Ha]=T.useState(Pn[0]?.name??""),[vi,Dd]=T.useState(5),[br,eo]=T.useState(!1),[xi,Xl]=T.useState(null),[Jl,Wl]=T.useState(""),to=T.useRef(!1),vr=T.useCallback(U=>{!U||!to.current||(to.current=!1,U.focus({preventScroll:!0}))},[]),[ms,xr]=T.useState(!1),[ec,Ta]=T.useState(!1),[Mt,en]=T.useState(!1),ya=b.providerStatuses.filter(U=>Is(U.name)!==Yu&&(Xn.length===0||Xn.includes(Is(U.name)))),An=ya.find(U=>U.name===Jl)??ya.find(U=>U.state!=="ready")??ya.at(0),tc=`Help me choose AI Visibility queries for Canonry project ${JSON.stringify(Be??X)} (${ne}).
74
- 1. Read the project, its existing tracked queries, and Site Health findings. Ask about my customers, services, and locations if needed, then propose relevant customer queries.
75
- 2. Check the configured connection's capabilities, then use Canonry's Research flow to test a small approved batch. Retrieve saved answers and any available sources. Compare brand mentions separately from site citations; unavailable citation evidence is not a "not cited" result. Text-only routes can inform query research but cannot establish an AI Visibility baseline. Research does not add queries to tracking. If more candidates are needed, propose ICP Discovery separately.
76
- 3. Recommend a short list with reasons. Ask before provider usage. Once I approve, preserve existing queries and return the combined list, one query per line, for me to paste into setup. Do not change tracked queries or launch a visibility sweep.`,Od=async()=>{en(!1);try{await navigator.clipboard.writeText(tc),Ta(!0)}catch{en(!0)}},[kr,ps]=T.useState(Te.join(`
77
- `)),[no,ki]=T.useState(Te.length>0),[Qa,wi]=T.useState(null),[Fa,qt]=T.useState(!1),ao=T.useRef(z3(W)).current?.runId??null,Ra=T.useRef(ao),[Cn,Bd]=T.useState(!!ao||!!Ke&&!Fe),[hs,wr]=T.useState(!1),[Za,Si]=T.useState(null),[Da,ba]=T.useState(ao??(Fe?null:Ke?.id??null)),Nn=mK(),Oa=Et({...bf({client:se,path:{id:Da??""}}),enabled:!!Da,refetchInterval:({state:U})=>{const Pe=U.data?.status;return Pe==="completed"||Pe==="partial"||Pe==="failed"||Pe==="cancelled"?!1:2e3},refetchIntervalInBackground:!0}),[Sr,io]=T.useState(""),[so,fs]=T.useState(!1),[nc,gn]=T.useState(null),va=X.toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,""),Mn=Ve.split(`
78
- `).map(U=>U.trim()).filter(Boolean),qa=kr.split(`
79
- `).map(U=>U.trim()).filter(Boolean),Jn=Math.max($,Jt?Mn.length:0),In=iK({apiReady:S.apiStatus.state==="ok",databaseConfigured:S.apiStatus.databaseConfigured,workerReady:S.workerStatus.state==="ok",providerReady:Kt!==!1}),_n=(In&&In!=="no_provider"?A.launchState.blockedReason:yr?"Provider readiness could not be checked. Try again.":Kt===void 0?"Checking provider readiness before launch.":In==="no_provider"?"Launch is blocked until a provider allowed by this project is configured.":void 0)??(Be?Jn===0?"Add at least one query before launching the first sweep.":void 0:"Create a project before launching the first sweep.");T.useEffect(()=>{ae||Re||(N||P(ve),H.length>0&&(ut(H.map(U=>U.query).join(`
80
- `)),us(!0)),he(!0))},[H,ve,N,ae,Re]),T.useEffect(()=>{if(Pn.length===0){Ha("");return}Pn.some(U=>U.name===jn)||Ha(Pn[0].name)},[Pn,jn]),T.useEffect(()=>{ae&&(K({flowVersion:st,onboardingSessionId:_,event:"onboarding.started",step:aK(ve),resumed:!!te},"onboarding.started"),!te&&ve>0&&K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"system",method:"automatic"},"onboarding.step_completed:system"))},[K,ve,_,ae,te]),T.useEffect(()=>{N||!sK(S)||!In||K({flowVersion:st,onboardingSessionId:_,event:"onboarding.blocked",step:"system",action:In==="no_provider"?"configure_provider":"continue",reasonCode:In},`onboarding.blocked:system:${In}`)},[K,S,N,_,In]);const Ya=Oa.data?.status,gs=Oa.data?.snapshots?.length??0;T.useEffect(()=>{if(!Cn||!Ya)return;const U=Ra.current;if(!U||U!==Da)return;if(_x(Ya,gs)){K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"run",method:"automatic",countBucket:La(gs)},"onboarding.step_completed:run"),Zu(U);return}const Pe=Ya==="cancelled"?"run_cancelled":Ya==="failed"||(Ya==="completed"||Ya==="partial")&&gs===0?"run_failed":void 0;Pe&&(K({flowVersion:st,onboardingSessionId:_,event:"onboarding.blocked",step:"run",action:"retry_run",reasonCode:Pe},`onboarding.blocked:run:${Pe}`),Zu(U))},[K,Da,_,Ya,gs,Cn]);const ac=async()=>{if(!(!va||!ne)){ga(!0),$t(null);try{const U=await qS(va,{displayName:Ne||X,canonicalDomain:ne,country:q,language:De,autoExtractBacklinks:Je});de(va),rn({title:"Project created",detail:`${U.displayName||U.name} is ready for setup.`,tone:"positive",dedupeKey:`project:create:${U.name}`,dedupeMode:"drop"}),await r(),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"project",method:"manual"},"onboarding.step_completed:project"),P(2)}catch(U){$t(U instanceof Error?U.message:"Failed to create project"),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.blocked",step:"project",action:"save",reasonCode:"project_create_failed"},"onboarding.blocked:project:project_create_failed")}finally{ga(!1)}}},jr=async()=>{if(!Be)return;const U=Mn;if(U.length!==0){gr(!0),cn(null);try{await zI(Be,U),us(!0),N?await Promise.all([Z.invalidateQueries({queryKey:$S({client:se,path:{name:Be}})}),Z.invalidateQueries({predicate:zf}),Z.invalidateQueries({queryKey:["setup","resume-queries",Be]})]):await r(),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"queries",method:Fl?"generated":"manual",countBucket:La(U.length)},"onboarding.step_completed:queries"),P(N?4:3)}catch(Pe){cn(Pe instanceof Error?Pe.message:"Failed to save queries"),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.blocked",step:"queries",action:"save",reasonCode:"query_save_failed"},"onboarding.blocked:queries:query_save_failed")}finally{gr(!1)}}},Md=async()=>{if(!(!Be||!jn)){eo(!0),Xl(null);try{const U=await II(Be,jn,vi);if(U.queries.length>0){const Pe=Ve?Ve.trimEnd()+`
81
- `+U.queries.join(`
82
- `):U.queries.join(`
83
- `);ut(Pe),Js(!0)}}catch(U){Xl(U instanceof Error?U.message:"Failed to generate queries"),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.blocked",step:"queries",action:"generate_queries",reasonCode:Al(U,"unknown")},"onboarding.blocked:queries:generate")}finally{eo(!1)}}},Id=async()=>{if(!Be)return;const U=qa;if(U.length!==0){qt(!0),wi(null);try{await RI(Be,U),ki(!0),await r(),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"competitors",method:"manual",countBucket:La(U.length)},"onboarding.step_completed:competitors"),P(4)}catch(Pe){wi(Pe instanceof Error?Pe.message:"Failed to save competitors"),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.blocked",step:"competitors",action:"save",reasonCode:"unknown"},"onboarding.blocked:competitors:save")}finally{qt(!1)}}},oo=async()=>{const U=Sr.trim();if(U){fs(!0),gn(null);try{await BS("gemini",{apiKey:U}),rn({title:"Gemini configured",detail:"Provider is ready — continuing setup.",tone:"positive",dedupeKey:"setup:gemini:configured",dedupeMode:"drop"}),io(""),await r(),Ha(b.providerStatuses.find(Pe=>Pe.name.toLowerCase()==="gemini")?.name??"gemini"),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"system",method:"inline"},"onboarding.step_completed:system")}catch(Pe){gn(Pe instanceof Error?Pe.message:"Failed to save Gemini key"),K({flowVersion:st,onboardingSessionId:_,event:"onboarding.blocked",step:"system",action:"configure_provider",reasonCode:"provider_save_failed"},"onboarding.blocked:system:provider_save_failed")}finally{fs(!1)}}},Wn=async()=>{if(!Ps()){if(!Be||_n){Si(_n??"Complete setup before launching the first sweep.");const U=In??(Be?Jn===0?"no_queries":"run_rejected":"unknown");un||K({flowVersion:st,onboardingSessionId:_,event:"run.requested",origin:"dashboard_setup",result:"rejected",providerCountBucket:La(bi),queryCountBucket:La(Jn),reasonCode:U});return}wr(!0),Si(null);try{const U=await Nn.mutateAsync({projectName:Be,projectLabel:Ne||X||Be,sourceAction:"setup-launch"});ba(U.id),Bd(!0),_3(Be,U.id),Ra.current=U.id,un||K({flowVersion:st,onboardingSessionId:_,event:"run.requested",origin:"dashboard_setup",result:"queued",providerCountBucket:La(bi),queryCountBucket:La(Jn)}),await r()}catch(U){Si(U instanceof Error?U.message:"Failed to queue the visibility sweep. Retry when the instance is ready."),un||K({flowVersion:st,onboardingSessionId:_,event:"run.requested",origin:"dashboard_setup",result:"rejected",providerCountBucket:La(bi),queryCountBucket:La(Jn),reasonCode:Al(U,"run_rejected")})}finally{wr(!1)}}},ea=()=>P(U=>N?2:Math.max(0,U-1)),ys=(U,Pe,yn)=>{K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:U,method:"existing",...yn===void 0?{}:{countBucket:La(yn)}},`onboarding.step_completed:${U}`),P(Pe)},ji=()=>{if(K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"queries",method:"skipped",countBucket:"0"},"onboarding.step_completed:queries"),N){ln();return}P(3)},Ai=()=>{K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"competitors",method:"skipped",countBucket:"0"},"onboarding.step_completed:competitors"),P(4)},ic=N?"section":ua,ro=Kt!==!0||Ka===!0?c.jsx(fe,{type:"button",variant:"ghost",size:"sm",className:"min-h-11",onClick:()=>{r(),Wt&&Ws.refetch()},children:"Check again"}):null,sc=(Kt===!1||ms)&&!!An,bs=N&&(be===2||be===4)?v?c.jsxs("section",{"aria-labelledby":"setup-provider-heading",className:"space-y-3 border-b border-default pb-6 mb-6",children:[c.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[c.jsx("h2",{id:"setup-provider-heading",className:"text-lg font-semibold text-heading",children:Kt===!1?"Connect a provider":"Answer engine provider"}),c.jsx(pn,{tone:Kt===!0?"positive":"neutral",children:Kt===!0?"Configured":Kt===!1?"Not connected":"Checking"})]}),c.jsx("p",{className:"max-w-prose text-sm text-secondary",children:Kt===!0?Pn.length>0?`${Pn.map(U=>U.displayName??U.name).join(", ")} available for this project. Research and sweeps use your provider account.`:"ChatGPT in Chrome is configured for sweeps. Query Research needs an API provider.":Kt===!1?"An answer engine is required for visibility sweeps. You can save queries now and connect later.":"Checking available providers. You can choose queries while this finishes."}),Kt===!1||ms?An?c.jsx("div",{children:c.jsx(hK,{compact:!0,leadingField:c.jsxs("div",{className:"min-w-0 space-y-1.5",children:[c.jsx("label",{className:"block text-sm font-medium text-secondary",htmlFor:"setup-provider",children:"Provider to connect"}),c.jsx("select",{ref:vr,id:"setup-provider",className:"setup-input",value:An.name,onChange:U=>{U.target.value!==An.name&&(to.current=document.activeElement===U.currentTarget,Wl(U.target.value))},children:ya.map(U=>c.jsx("option",{value:U.name,children:U.displayName??U.name},U.name))})]}),secondaryActions:ro,providerName:An.name,keyUrl:An.keyUrl,modelHint:An.modelHint,onSaved:()=>{xr(!1),r()}},An.name)}):c.jsx("p",{className:"max-w-prose text-sm text-secondary",children:Xn.length>0?`This project's provider selection is ${Xn.join(", ")}. Configure an allowed provider in Settings, or change the selection in project Settings.`:"Provider configuration is unavailable here. Open Settings to connect an answer engine, then check again."}):null,c.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[Kt===!0&&!ms&&An?c.jsx(fe,{type:"button",variant:"outline",size:"sm",onClick:()=>xr(!0),children:"Configure a provider"}):null,!An||Ka===!0?c.jsx(fe,{type:"button",variant:"outline",size:"sm",asChild:!0,children:c.jsx(tt,{to:"/settings",target:"_blank",rel:"noopener noreferrer",children:"Open provider settings"})}):null,sc?null:ro]})]}):c.jsxs("section",{"aria-labelledby":"setup-provider-heading",className:"space-y-2 border-b border-default pb-6 mb-6",children:[c.jsx("h2",{id:"setup-provider-heading",className:"text-lg font-semibold text-heading",children:"Answer engine provider"}),c.jsx("p",{className:"max-w-prose text-sm text-secondary",children:"Provider settings are managed by an administrator."}),yr?c.jsx("p",{role:"alert",className:"text-sm text-negative",children:"Provider readiness could not be checked. Try again."}):c.jsx("p",{className:"max-w-prose text-sm text-secondary",role:"status",children:Kt===!0?"An answer engine is available for this project.":Kt===!1?"Ask an administrator to connect an answer engine for this project. You can save queries now.":"Checking provider readiness. You can save queries now."}),c.jsx(fe,{type:"button",variant:"ghost",size:"sm",className:"min-h-11",disabled:Rt.isFetching,onClick:()=>{Rt.refetch()},children:yr?"Retry provider check":"Check again"})]}):null,xa=(()=>{switch(be){case 0:return c.jsxs(ua,{className:"surface-card step-card",children:[c.jsx("div",{className:"section-head",children:c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Step 1 of 5"}),c.jsx("h2",{children:"System check"})]})}),c.jsx("p",{className:"supporting-copy",children:"Checking that your Canonry instance is configured and reachable."}),c.jsx("div",{className:"compact-stack",children:A.healthChecks.map(U=>c.jsxs("div",{className:"health-check-row",children:[c.jsxs("div",{children:[c.jsx("p",{className:"run-row-title",children:U.label}),c.jsx("p",{className:"supporting-copy",children:U.detail}),U.id==="provider"&&U.state!=="ready"&&c.jsxs("div",{className:"mt-3 rounded-md border border-default bg-bg-elevated/40 p-3 space-y-2",children:[c.jsxs("p",{className:"text-xs text-secondary",children:["Paste a Gemini key to enable visibility checks (free at"," ",c.jsx("a",{href:"https://aistudio.google.com/apikey",target:"_blank",rel:"noreferrer",className:"text-positive-400 hover:text-positive underline underline-offset-2",children:"aistudio.google.com"}),")."]}),c.jsxs("div",{className:"flex items-center gap-2",children:[c.jsx("input",{type:"password",value:Sr,onChange:Pe=>io(Pe.target.value),placeholder:"AI... (paste here)",className:"flex-1 rounded-md border border-base bg-bg px-2.5 py-1.5 text-sm text-heading placeholder:text-faint focus:border-mono-600 focus:outline-none font-mono",disabled:so}),c.jsx(fe,{type:"button",size:"sm",disabled:so||!Sr.trim(),onClick:Ft(oo),children:so?"Saving...":"Save"})]}),nc&&c.jsxs("div",{role:"alert",className:"space-y-1 text-xs text-negative",children:[c.jsx("p",{children:nc}),c.jsx("p",{children:"Check that the key is complete, then retry Save."})]}),c.jsxs("p",{className:"text-sm text-secondary",children:["Connect more answer engines later in"," ",c.jsx(tt,{to:"/settings",className:"text-link hover:underline",children:"Settings"}),"."]})]})]}),c.jsx(pn,{tone:U.state==="ready"?"positive":"caution",title:U.id==="api"?ar(S.apiStatus):U.id==="worker"?ar(S.workerStatus):U.detail,children:U.state==="ready"?"Ready":"Attention"})]},U.id))}),c.jsxs("div",{className:"setup-nav",children:[A.launchState.blockedReason?c.jsx("p",{role:"status",className:"supporting-copy text-negative",children:A.launchState.blockedReason}):c.jsx("span",{}),c.jsx(fe,{type:"button",disabled:!A.launchState.enabled,title:A.launchState.blockedReason,onClick:()=>{K({flowVersion:st,onboardingSessionId:_,event:"onboarding.step_completed",step:"system",method:"automatic"},"onboarding.step_completed:system"),P(Ue)},children:"Continue"})]})]});case 1:return c.jsxs(ua,{className:"surface-card step-card",children:[c.jsxs("div",{className:"section-head",children:[c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Step 2 of 5"}),c.jsx("h2",{children:"Create project"})]}),Be?c.jsx(pn,{tone:"positive",children:"Created"}):null]}),Be?c.jsxs("div",{className:"compact-stack",children:[c.jsxs("p",{className:"text-neutral",children:["Project ",c.jsx("span",{className:"text-heading font-medium",children:Be})," created successfully."]}),c.jsxs("div",{className:"setup-nav",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:ea,children:"Back"}),c.jsx(fe,{type:"button",onClick:()=>ys("project",2),children:"Continue"})]})]}):c.jsxs("div",{className:"compact-stack",children:[c.jsxs("div",{className:"setup-field",children:[c.jsx("label",{className:"setup-label",htmlFor:"project-name",children:"Project name"}),c.jsx("input",{id:"project-name",className:"setup-input",type:"text",placeholder:"my-website",value:X,onChange:U=>Ie(U.target.value)}),va&&va!==X?c.jsxs("p",{className:"supporting-copy",children:["Slug: ",va]}):null]}),c.jsxs("div",{className:"setup-field",children:[c.jsx("label",{className:"setup-label",htmlFor:"display-name",children:"Display name (optional)"}),c.jsx("input",{id:"display-name",className:"setup-input",type:"text",placeholder:"My Website",value:Ne,onChange:U=>Ae(U.target.value)})]}),c.jsxs("div",{className:"setup-field",children:[c.jsx("label",{className:"setup-label",htmlFor:"domain",children:"Canonical domain"}),c.jsx("input",{id:"domain",className:"setup-input",type:"text",placeholder:"example.com",value:ne,onChange:U=>V(U.target.value)})]}),c.jsxs("div",{className:"setup-field-row",children:[c.jsxs("div",{className:"setup-field",children:[c.jsx("label",{className:"setup-label",htmlFor:"country",children:"Country"}),c.jsx("input",{id:"country",className:"setup-input",type:"text",placeholder:"US",maxLength:2,value:q,onChange:U=>le(U.target.value.toUpperCase())})]}),c.jsxs("div",{className:"setup-field",children:[c.jsx("label",{className:"setup-label",htmlFor:"language",children:"Language"}),c.jsx("input",{id:"language",className:"setup-input",type:"text",placeholder:"en",maxLength:5,value:De,onChange:U=>ye(U.target.value.toLowerCase())})]})]}),c.jsxs("label",{className:"flex items-start gap-3 rounded-md border border-default bg-surface p-3 cursor-pointer hover:border-strong",children:[c.jsx("input",{type:"checkbox",className:"mt-0.5 h-4 w-4 rounded border-strong bg-bg",checked:Je,onChange:U=>Ge(U.target.checked)}),c.jsxs("span",{className:"flex-1",children:[c.jsx("span",{className:"block text-sm text-heading",children:"Auto-extract backlinks"}),c.jsxs("span",{className:"block text-xs text-muted mt-0.5",children:["When a new Common Crawl release syncs, automatically extract backlinks for this project."," ",c.jsx(tt,{to:"/backlinks",className:"text-positive-400 hover:text-positive underline underline-offset-2",children:"Manage backlinks"})]})]})]}),Me?c.jsx("p",{className:"text-negative-400 text-sm",children:Me}):null,c.jsxs("div",{className:"setup-nav",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:ea,children:"Back"}),c.jsx(fe,{type:"button",disabled:!va||!ne||Sn,onClick:Ft(ac),children:Sn?"Creating...":"Create project"})]})]})]});case 2:return c.jsxs(ic,{className:N?"visibility-setup-section step-card":"surface-card step-card","aria-labelledby":"setup-queries-heading",children:[c.jsxs("div",{className:"section-head",children:[c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:N?"Step 1 of 2":"Step 3 of 5"}),c.jsx("h2",{id:"setup-queries-heading",children:"Add queries"})]}),je?c.jsx(pn,{tone:"neutral",children:"Loading"}):oe.isError?c.jsx(pn,{tone:"negative",children:"Load failed"}):Jt?c.jsxs(pn,{tone:"positive",children:[Mn.length," saved"]}):c.jsxs(pn,{tone:"neutral",children:[Mn.length," quer",Mn.length!==1?"ies":"y"]})]}),c.jsx("p",{className:"supporting-copy",children:"Add the queries your customers use, one per line. You can refine your list later."}),c.jsxs("div",{className:"space-y-2 border-b border-default pb-4",children:[c.jsxs("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",children:[c.jsxs("div",{className:"min-w-0 space-y-1",children:[c.jsx("h3",{className:"text-sm font-semibold text-heading",children:"Research queries with your agent"}),c.jsx("p",{className:"max-w-prose text-sm text-secondary",children:"Ask your agent to compare answers and available sources with Canonry Research, then recommend queries. Research does not change your tracked queries."})]}),c.jsx(fe,{type:"button",variant:"outline",size:"sm",className:"min-h-11 shrink-0 self-start",onClick:Ft(Od),children:ec?"Research prompt copied":"Copy research prompt"})]}),c.jsxs("details",{open:Mt||void 0,className:"text-sm text-secondary",children:[c.jsx("summary",{className:"min-h-11 cursor-pointer py-3 text-link",children:"View agent prompt"}),c.jsx("textarea",{"aria-label":"Agent query research prompt",readOnly:!0,className:"setup-textarea mt-2 w-full",rows:8,value:tc})]}),Mt?c.jsx("p",{role:"alert",className:"text-sm text-negative",children:"Could not copy. Select and copy the prompt above."}):null]}),je?c.jsx("div",{className:"rounded-md border border-default bg-bg-elevated/40 p-4 text-sm text-secondary",role:"status",children:"Loading saved queries…"}):oe.isError?c.jsxs("div",{className:"compact-stack",children:[c.jsx("div",{role:"alert",className:"rounded-md border border-negative bg-negative-soft p-3 text-sm text-negative",children:"Saved queries could not be loaded. Retry before changing the query basket."}),c.jsxs("div",{className:"setup-nav",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:N?ln:ea,children:"Back"}),c.jsx(fe,{type:"button",onClick:()=>{oe.refetch()},children:"Retry loading queries"})]})]}):Jt?c.jsxs("div",{className:"compact-stack",children:[c.jsx("ul",{className:"detail-list",children:Mn.map(U=>c.jsx("li",{children:U},U))}),c.jsxs("div",{className:"setup-nav",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:N?ln:ea,children:"Back"}),c.jsx(fe,{type:"button",variant:"outline",onClick:()=>us(!1),children:"Edit queries"}),c.jsx(fe,{type:"button",onClick:()=>ys("queries",N?4:3,Mn.length),children:"Continue"})]})]}):c.jsxs("div",{className:"compact-stack",children:[Pn.length>0?c.jsxs("div",{className:"compact-stack",children:[c.jsxs("div",{className:"flex items-center gap-2 text-muted text-xs uppercase tracking-wide",children:[c.jsx("span",{className:"flex-1 border-t border-base"}),"auto-generate",c.jsx("span",{className:"flex-1 border-t border-base"})]}),c.jsxs("div",{className:"flex items-end gap-2",children:[c.jsxs("div",{className:"setup-field flex-1",children:[c.jsx("label",{className:"setup-label",htmlFor:"gen-provider",children:"Provider"}),c.jsx("select",{id:"gen-provider",className:"setup-input",value:jn,onChange:U=>Ha(U.target.value),children:Pn.map(U=>c.jsxs("option",{value:U.name,children:[U.displayName??U.name,U.model?` (${U.model})`:""]},U.name))})]}),c.jsxs("div",{className:"setup-field",children:[c.jsx("label",{className:"setup-label",htmlFor:"gen-count",children:"Count"}),c.jsx("select",{id:"gen-count",className:"setup-input",value:vi,onChange:U=>Dd(Number(U.target.value)),children:[3,5,10,15,20].map(U=>c.jsx("option",{value:U,children:U},U))})]}),c.jsx(fe,{type:"button",variant:"outline",disabled:br||!jn,onClick:Ft(Md),children:br?"Analyzing site...":"Generate"})]}),xi?c.jsx("p",{className:"text-negative-400 text-sm",children:xi}):null]}):null,N?null:c.jsxs("div",{className:"flex items-center gap-2 text-muted text-xs uppercase tracking-wide",children:[c.jsx("span",{className:"flex-1 border-t border-base"}),"or type manually",c.jsx("span",{className:"flex-1 border-t border-base"})]}),c.jsxs("div",{className:"setup-field",children:[c.jsx("label",{className:"setup-label",htmlFor:"queries",children:"Queries (one per line)"}),c.jsx("textarea",{id:"queries",className:"setup-textarea",rows:6,placeholder:`emergency dentist brooklyn
84
- best invisalign downtown brooklyn
85
- pediatric dentist brooklyn heights`,value:Ve,onChange:U=>ut(U.target.value)})]}),Hl?c.jsx("p",{className:"text-negative-400 text-sm",children:Hl}):null,c.jsxs("div",{className:"setup-nav",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:N?ln:ea,children:"Back"}),c.jsx(fe,{type:"button",variant:"ghost",onClick:ji,children:N?"Finish without AI Visibility":"Skip for now"}),c.jsx(fe,{type:"button",disabled:Mn.length===0||Ql,onClick:Ft(jr),children:Ql?"Saving...":`Save ${Mn.length} quer${Mn.length!==1?"ies":"y"}`})]})]})]});case 3:return c.jsxs(ua,{className:"surface-card step-card",children:[c.jsxs("div",{className:"section-head",children:[c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Step 4 of 5"}),c.jsx("h2",{children:"Add competitors"})]}),no?c.jsx(pn,{tone:"positive",children:"Saved"}):null]}),c.jsx("p",{className:"supporting-copy",children:"Domains that compete for the same queries. One per line."}),no?c.jsxs("div",{className:"compact-stack",children:[c.jsx("ul",{className:"detail-list",children:qa.map(U=>c.jsx("li",{children:U},U))}),c.jsxs("div",{className:"setup-nav",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:ea,children:"Back"}),c.jsx(fe,{type:"button",onClick:()=>ys("competitors",4,qa.length),children:"Continue"})]})]}):c.jsxs("div",{className:"compact-stack",children:[c.jsxs("div",{className:"setup-field",children:[c.jsx("label",{className:"setup-label",htmlFor:"competitors",children:"Competitor domains (one per line)"}),c.jsx("textarea",{id:"competitors",className:"setup-textarea",rows:4,placeholder:`competitor1.com
86
- competitor2.com`,value:kr,onChange:U=>ps(U.target.value)})]}),Qa?c.jsx("p",{className:"text-negative-400 text-sm",children:Qa}):null,c.jsxs("div",{className:"setup-nav",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:ea,children:"Back"}),c.jsxs("div",{className:"flex gap-2",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:Ai,children:"Skip"}),c.jsx(fe,{type:"button",disabled:qa.length===0||Fa,onClick:Ft(Id),children:Fa?"Saving...":`Save ${qa.length} competitor${qa.length!==1?"s":""}`})]})]})]})]});case 4:{const U=Oa.data,Pe=U?.status??(Da===Ke?.id?Ke.status:void 0),yn=Pe==="completed"||Pe==="partial"||Pe==="failed"||Pe==="cancelled",Ba=U?.snapshots??[],lo=Ba.filter(ta=>ta.citationState==="cited").length,oc=Ba.filter(ta=>ta.answerMentioned===!0).length,vs=new Set(Ba.map(ta=>ta.query).filter(ta=>!!ta)).size,xs=Pe?_x(Pe,Ba.length):!1,Ar=Fe&&!Cn,dn=Za??(U?.error?cV(U.error):Pe==="cancelled"?"The sweep was cancelled before it produced a baseline.":(Pe==="completed"||Pe==="partial")&&Ba.length===0?"The sweep finished without producing any snapshots.":Ke?.statusDetail||"The sweep did not produce a baseline.");let Vn=null;return Ar||xs?Vn=c.jsx(pn,{tone:"positive",children:"Complete"}):Za&&!Cn?Vn=c.jsx(pn,{tone:"negative",children:"Failed"}):yn?Vn=c.jsx(pn,{tone:"negative",children:Pe==="cancelled"?"Cancelled":"Failed"}):Cn&&(Vn=c.jsx(pn,{tone:"caution",children:"Running"})),c.jsxs(ua,{className:"surface-card step-card",children:[c.jsxs("div",{className:"section-head",children:[c.jsxs("div",{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:N?"Step 2 of 2":"Step 5 of 5"}),c.jsx("h2",{children:Ps()?"AI Visibility":"Launch first run"})]}),Vn]}),Ar?c.jsxs("div",{className:"compact-stack",children:[c.jsxs("p",{className:"text-secondary",children:["Setup is complete. ",c.jsx("span",{className:"text-strong font-medium",children:Be})," already has a successful answer-visibility baseline."]}),c.jsxs("div",{className:"setup-nav",children:[c.jsx("span",{}),c.jsx(fe,{type:"button",onClick:ln,children:g?"Finish and open project":"Open project dashboard →"})]})]}):!Cn&&Ps()?c.jsxs("div",{className:"compact-stack",children:[Be?c.jsx(v$,{projectName:Be}):c.jsx("p",{className:"text-sm text-secondary",children:Hh}),Za&&c.jsx("p",{role:"alert",className:"text-sm text-negative",children:Za}),c.jsxs("div",{className:"setup-nav",children:[c.jsx("span",{}),c.jsx(fe,{type:"button",onClick:ln,children:"Open project dashboard →"})]})]}):Cn?yn?xs?c.jsxs("div",{className:"compact-stack",children:[c.jsxs("p",{className:"text-neutral",children:["Sweep complete. Your first answer-visibility snapshot for"," ",c.jsx("span",{className:"text-heading font-medium",children:Be}),":"]}),c.jsxs("div",{className:"grid grid-cols-3 gap-2 mt-1",children:[c.jsxs("div",{className:"rounded-md border border-default bg-surface p-3",children:[c.jsx("p",{className:"text-xs font-medium text-secondary",children:"Mentioned"}),c.jsxs("p",{className:"text-2xl font-bold tabular-nums text-primary mt-1",children:[oc,c.jsxs("span",{className:"text-faint text-lg",children:[" / ",vs]})]}),c.jsx("p",{className:"mt-0.5 text-sm text-secondary",children:"queries naming your brand"})]}),c.jsxs("div",{className:"rounded-md border border-default bg-surface p-3",children:[c.jsx("p",{className:"text-xs font-medium text-secondary",children:"Cited"}),c.jsxs("p",{className:"text-2xl font-bold tabular-nums text-primary mt-1",children:[lo,c.jsxs("span",{className:"text-faint text-lg",children:[" / ",vs]})]}),c.jsx("p",{className:"mt-0.5 text-sm text-secondary",children:"queries citing your site"})]}),c.jsxs("div",{className:"rounded-md border border-default bg-surface p-3",children:[c.jsx("p",{className:"text-xs font-medium text-secondary",children:"Results"}),c.jsx("p",{className:"text-2xl font-bold tabular-nums text-primary mt-1",children:Ba.length}),c.jsx("p",{className:"mt-0.5 text-sm text-secondary",children:"completed engine checks"})]})]}),c.jsx("p",{className:"mt-1 text-sm text-secondary",children:g?"Your project is ready. Review the evidence in the project.":"Open the project to review the evidence."}),c.jsxs("div",{className:"setup-nav",children:[c.jsx("span",{}),c.jsx(fe,{type:"button",onClick:ln,children:g?"Finish and open project":"Open project dashboard →"})]})]}):c.jsxs("div",{className:"compact-stack",children:[c.jsxs("div",{role:"alert",className:"rounded-md border border-negative bg-negative-soft p-3 text-sm text-negative",children:[c.jsx("p",{children:dn}),c.jsx("p",{className:"mt-1 text-xs text-secondary",children:Ps()?Hh:v?"Fix provider or query configuration if needed, then retry without leaving setup.":"Ask an administrator to review the provider and query configuration."})]}),c.jsxs("div",{className:"setup-nav",children:[v&&!Ps()?c.jsx(fe,{type:"button",variant:"outline",asChild:!0,children:c.jsx(tt,{to:"/settings",children:"Configure providers"})}):c.jsx("span",{}),Ps()||!v?c.jsx(fe,{type:"button",onClick:ln,children:"Open project dashboard →"}):c.jsx(fe,{type:"button",disabled:hs||!!_n,onClick:Ft(Wn),children:hs?"Retrying...":"Retry visibility sweep"})]})]}):c.jsxs("div",{className:"compact-stack",children:[c.jsx("p",{className:"text-neutral",children:"Sweep running. This usually takes 30 to 60 seconds."}),c.jsx("div",{className:"rounded-md border border-default bg-surface p-3 text-xs text-muted",children:c.jsxs("p",{children:["Status: ",c.jsx("span",{className:"text-neutral",children:Pe??"queued"})]})}),Oa.isError&&c.jsxs("div",{role:"alert",className:"rounded-md border border-negative bg-negative-soft p-3 text-sm text-negative",children:[c.jsx("p",{children:Oa.error instanceof Error?Oa.error.message:"Could not refresh the sweep status."}),c.jsx(fe,{type:"button",variant:"outline",size:"sm",className:"mt-2",onClick:()=>{Oa.refetch()},children:"Retry status check"})]}),c.jsxs("div",{className:"setup-nav",children:[c.jsx("span",{}),c.jsx(fe,{type:"button",variant:"outline",onClick:ln,children:g?"Finish and open project":"Watch on project page"})]})]}):c.jsxs("div",{className:"compact-stack",children:[c.jsxs("p",{className:"supporting-copy",children:["Your queries are saved. Run a first sweep to get a baseline for"," ",c.jsx("span",{className:"text-heading font-medium",children:Be}),", or finish and run it later from the project. A sweep calls the answer engines, so it costs provider usage."]}),(_n||Za)&&c.jsxs("div",{role:"alert",className:"rounded-md border border-negative bg-negative-soft p-3 text-sm text-negative",children:[c.jsx("p",{children:Za??_n}),c.jsx("p",{className:"mt-1 text-xs text-secondary",children:"Resolve the blocker above, then retry the sweep here."})]}),c.jsxs("div",{className:"setup-nav",children:[c.jsx(fe,{type:"button",variant:"outline",onClick:ea,children:"Back"}),c.jsx(fe,{type:"button",variant:"ghost",onClick:ln,children:"Finish without running"}),In==="no_provider"&&!N?c.jsx(fe,{type:"button",asChild:!0,children:c.jsx(tt,{to:"/settings",children:"Configure a provider"})}):c.jsx(fe,{type:"button",disabled:hs||!!_n,title:_n,onClick:Ft(Wn),children:hs?"Launching...":Za?"Retry visibility sweep":"Launch visibility sweep"})]})]})]})}default:return null}})();return c.jsxs("div",{className:N?"page-container visibility-setup":"page-container",children:[g?c.jsx(ir,{current:"visibility"}):null,c.jsxs("div",{className:"page-header",children:[c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{ref:u?f:void 0,tabIndex:u?-1:void 0,className:"page-title",children:u?"Set up AI Visibility":"Setup"}),c.jsx("p",{className:"page-subtitle",children:u?"Connect an answer engine, then choose queries for your first sweep.":"Create a project and run its first visibility check."})]}),g?c.jsx("div",{className:"page-header-right",children:c.jsx(fe,{type:"button",variant:"outline",className:"min-h-11",onClick:ln,children:"Skip AI Visibility"})}):null]}),g?null:c.jsx(vK,{current:N?be===4?1:0:be,labels:N?yK:gK}),c.jsxs("section",{className:"setup-wizard",children:[bs,xa]})]})}const wK=T.lazy(async()=>({default:(await yi(()=>import("./SiteHealthSection-ElUwcAS4.js").then(a=>a.d),__vite__mapDeps([0,1,2,3,4]),import.meta.url)).SiteHealthSection})),SK=1800,jK="https://github.com/Canonry/canonry#or-use-any-shell-capable-coding-agent",AK="Help me set up Canonry for my public site.\n\nUse Canonry's official docs:\n- Agent quickstart: https://github.com/Canonry/canonry#or-use-any-shell-capable-coding-agent\n- CLI reference: https://github.com/Canonry/canonry/blob/main/skills/canonry/references/canonry-cli.md\n- Plugin setup: https://github.com/Canonry/canonry/blob/main/docs/plugins.md\n- MCP setup: https://github.com/Canonry/canonry/blob/main/docs/mcp.md\n\nUse an existing Canonry installation or connected plugin/MCP if one is already available. Do not create a duplicate. The `cnry` and `canonry` commands are interchangeable.\n\n1. Ask for my public domain, country, and language. Do not create or scan anything yet.\n2. Check the local setup with `command -v cnry`, `cnry --version`, `cnry doctor --format json`, and `cnry project list --format json`. If Canonry is missing, propose `npm install -g @canonry/canonry` and wait for approval. If initialization is required, tell me to run `cnry bootstrap` in my private terminal and wait. Never ask me to paste passwords, API keys, OAuth credentials, or `cnry bootstrap` output.\n3. Show the normalized domain, proposed project name, exact `cnry project create ...` command, and wait for explicit approval before creating it.\n4. Propose a bounded Site Health scan, including `--max-pages` and whether dead-link checking is enabled. Show the exact `cnry technical-aeo run ... --wait --format json` command and wait for separate approval before scanning.\n5. After the crawl, summarize the findings and propose AI Visibility setup. Ask before adding queries, connecting providers, starting any provider-backed or quota-consuming run, editing files, or publishing.";function CK(e,a){return e==="legacy"?"legacy":e==="platform"?"platform":a.state==="success"?a.projectCount===0?"platform":"legacy":a.state==="error"?"retry":"loading"}const R3=[{value:"US",label:"United States"},{value:"CA",label:"Canada"},{value:"GB",label:"United Kingdom"},{value:"AU",label:"Australia"},{value:"NZ",label:"New Zealand"},{value:"IE",label:"Ireland"},{value:"DE",label:"Germany"},{value:"FR",label:"France"},{value:"ES",label:"Spain"},{value:"IT",label:"Italy"},{value:"NL",label:"Netherlands"},{value:"BR",label:"Brazil"},{value:"MX",label:"Mexico"},{value:"IN",label:"India"},{value:"SG",label:"Singapore"},{value:"JP",label:"Japan"}],D3=[{value:"en",label:"English"},{value:"es",label:"Spanish"},{value:"fr",label:"French"},{value:"de",label:"German"},{value:"it",label:"Italian"},{value:"pt",label:"Portuguese"},{value:"nl",label:"Dutch"},{value:"ja",label:"Japanese"}];function NK(e,a){try{const s=new Intl.DisplayNames(["en"],{type:"region"}),r=new Intl.DisplayNames(["en"],{type:"language"}),u=e.length===2?s.of(e.toUpperCase()):void 0,f=a?r.of(a.toLowerCase()):void 0;return`${u??(e||"Country")} · ${f??(a||"Language")}`}catch{return`${e||"Country"} · ${a||"Language"}`}}function _K(e,a){const s=e.trim().toUpperCase(),r=a.trim().toLowerCase();return{countryValid:R3.some(u=>u.value===s),languageValid:D3.some(u=>u.value===r)}}function zK(e){const a=e.replace(/^\[|\]$/g,"");return/^(?:\d{1,3}\.){3}\d{1,3}$/.test(a)||a.includes(":")}function EK(e){const a=e.trim();if(!a)return null;const s=/^[a-z][a-z\d+.-]*:\/\//i.test(a)?a:`https://${a}`;let r;try{r=new URL(s)}catch{return null}if(r.protocol!=="http:"&&r.protocol!=="https:")return null;const u=r.hostname.toLowerCase().replace(/^www\./,"");if(!u||u==="localhost"||zK(u)||!u.includes("."))return null;const f=u.replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"");return f?{canonicalDomain:u,projectName:f,displayName:u}:null}async function TK(e,a=SK){let s;const r=new Promise(f=>{s=setTimeout(()=>f({state:"timed-out"}),a)}),u=await Promise.race([e.then(f=>({state:"queued",run:f})),r]);return s&&clearTimeout(s),u}function RK(e,a){e.catch(()=>{rn({title:"Site Health scan did not start",detail:"The project is safe. Choose Run scan in Site Health to retry.",tone:"negative",dedupeKey:`site-health-dispatch:${a}`})})}function O3(e){const a=T.useRef(A3()).current,s=T.useRef(new Set),r=T.useCallback((u,f)=>{if(f){if(s.current.has(f))return;s.current.add(f)}PS({...u,surface:e,eventId:C3()})},[e]);return{onboardingSessionId:a,emit:r}}function Tx(e,a){return e instanceof fn&&e.statusCode===409?"A project with this name already exists. Change the project name, or open the existing project.":e instanceof Error&&e.message?e.message:a}function DK(){return c.jsxs("div",{className:"page-container max-w-3xl","aria-busy":"true","aria-live":"polite",children:[c.jsx("div",{className:"page-header",children:c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Preparing setup"}),c.jsx("p",{className:"page-subtitle",children:"Checking the projects already on this install."})]})}),c.jsxs("div",{className:"flex items-center gap-3 rounded-lg border border-default bg-surface p-4 text-sm text-secondary",role:"status",children:[c.jsx(Zo,{className:"size-4 motion-safe:animate-spin","aria-hidden":"true"}),"Loading projects…"]})]})}function OK({onRetry:e}){return c.jsxs("div",{className:"page-container max-w-3xl",children:[c.jsx("div",{className:"page-header",children:c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Can’t load projects"}),c.jsx("p",{className:"page-subtitle",children:"Canonry could not confirm whether this install already has a project."})]})}),c.jsxs("div",{className:"rounded-lg border border-negative bg-negative-soft p-4",role:"alert",tabIndex:-1,children:[c.jsx("p",{className:"text-sm font-medium text-heading",children:"Setup is paused to protect existing projects."}),c.jsx("p",{className:"mt-1 text-sm text-secondary",children:"Check the connection or sign in again, then retry."}),c.jsx(fe,{type:"button",className:"mt-4",variant:"secondary",onClick:e,children:"Retry project check"})]})]})}function qK({projectName:e,initialRunId:a}){return c.jsx(Ef,{title:"Site Health setup",children:c.jsx(BK,{projectName:e,initialRunId:a})})}function BK({projectName:e,initialRunId:a}){const s=Hs(),r=Et({...Zs({client:se}),enabled:!!e,retry:!1,refetchOnMount:"always"}),{onboardingSessionId:u,emit:f}=O3("site_health");T.useEffect(()=>{e&&f({flowVersion:st,onboardingSessionId:u,event:"onboarding.started",step:"run",resumed:!!a},"onboarding.started")},[f,a,u,e]),T.useEffect(()=>{!e||!a||z3(e)?.runId!==a&&_3(e,a)},[a,e]);const b=Et({...bf({client:se,path:{id:a??""}}),enabled:!!a,refetchInterval:({state:N})=>{const E=N.data?.status;return E==="completed"||E==="partial"||E==="failed"||E==="cancelled"?!1:2e3},refetchIntervalInBackground:!0}).data?.status;if(T.useEffect(()=>{if(!e||!a||!b)return;if(b==="completed"||b==="partial"){f({flowVersion:st,onboardingSessionId:u,event:"onboarding.step_completed",step:"run",method:"automatic"},"onboarding.step_completed:run"),Zu(a);return}if(b!=="failed"&&b!=="cancelled")return;const N=b==="cancelled"?"run_cancelled":"run_failed";f({flowVersion:st,onboardingSessionId:u,event:"onboarding.blocked",step:"run",action:"retry_run",reasonCode:N},`onboarding.blocked:run:${N}`),Zu(a)},[f,a,u,e,b]),!e)return c.jsxs("div",{className:"page-container max-w-3xl",children:[c.jsx("div",{className:"page-header",children:c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Project not found"}),c.jsx("p",{className:"page-subtitle",children:"This setup link does not identify a project."})]})}),c.jsx(fe,{type:"button",variant:"secondary",onClick:()=>{s({to:"/projects"})},children:"View projects"})]});if(r.isPending)return c.jsxs("div",{className:"page-container max-w-3xl","aria-busy":"true","aria-live":"polite",children:[c.jsx(ir,{current:"site"}),c.jsxs("div",{className:"mt-8 flex items-center gap-3 text-sm text-secondary",role:"status",children:[c.jsx(Zo,{className:"size-4 motion-safe:animate-spin","aria-hidden":"true"}),"Loading Site Health setup…"]})]});if(r.isError)return c.jsxs("div",{className:"page-container max-w-3xl",children:[c.jsx("div",{className:"page-header",children:c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Can’t resume setup"}),c.jsx("p",{className:"page-subtitle",children:"Canonry could not load the project for this Site Health scan."})]})}),c.jsxs("div",{className:"rounded-lg border border-negative bg-negative-soft p-4",role:"alert",children:[c.jsx("p",{className:"text-sm text-secondary",children:"Check the connection or sign in again, then retry."}),c.jsx(fe,{type:"button",className:"mt-4",variant:"secondary",onClick:()=>{r.refetch()},children:"Retry project check"})]})]});const v=r.data.find(N=>N.name===e);if(!v)return c.jsxs("div",{className:"page-container max-w-3xl",children:[c.jsx("div",{className:"page-header",children:c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Project not found"}),c.jsxs("p",{className:"page-subtitle",children:["Canonry could not find ",e,". It will not open a different project."]})]})}),c.jsx(fe,{type:"button",variant:"secondary",onClick:()=>{s({to:"/projects"})},children:"View projects"})]});const k=()=>{s({to:"/setup",search:{onboarding:"site-health",setupProject:v.name},replace:!0})},S=()=>{s({to:"/setup",search:{experience:"legacy",onboarding:"site-health",setupProject:v.name},replace:!0})},A=()=>{f({flowVersion:st,onboardingSessionId:u,event:"onboarding.step_completed",step:"run",method:"skipped"},"onboarding.step_completed:run"),s({to:"/projects/$projectName/technical-aeo",params:{projectName:v.name},replace:!0})};return c.jsxs("div",{className:"page-container max-w-7xl py-8 md:py-10",children:[c.jsx("h1",{className:"sr-only",children:"Set up Canonry"}),c.jsx(T.Suspense,{fallback:c.jsxs("div",{className:"space-y-5",children:[c.jsx(ir,{current:"site"}),c.jsxs("div",{className:"flex min-h-72 items-center justify-center gap-3 text-sm text-secondary",role:"status",children:[c.jsx(Zo,{className:"size-4 motion-safe:animate-spin","aria-hidden":"true"}),"Loading Site Health…"]})]}),children:c.jsx(wK,{projectName:v.name,projectId:v.id,initialRunId:a,onReleaseInitialRun:k,showOnboardingActions:!0,onContinueOnboarding:S,onSkipOnboarding:A})})]})}function PK(){const e=Dx({from:"/setup"}),a=e.onboarding==="site-health"&&!e.setupProject,s=e.onboarding==="site-health"&&e.experience!=="legacy",r=lI(),u=e.experience==="legacy"?"legacy":e.experience==="platform"?"platform":r,[f,g]=T.useState(!1),b=Et({...Zs({client:se}),enabled:u==="auto",retry:!1,refetchOnMount:"always"}),v=u==="auto"&&b.isSuccess&&b.isFetchedAfterMount&&b.data.length===0;T.useEffect(()=>{v&&g(!0)},[v]);const k=u!=="auto"?{state:"idle"}:b.isSuccess&&b.isFetchedAfterMount?{state:"success",projectCount:b.data.length}:b.isError?{state:"error"}:{state:"loading"},S=u==="legacy"?"legacy":f||v?"platform":CK(u,k);return a||s?c.jsx(qK,{projectName:e.setupProject,initialRunId:e.siteHealthRunId}):S==="legacy"?c.jsx(xK,{visibilityProjectName:e.setupProject,siteHealthOnboarding:e.onboarding==="site-health"}):S==="loading"?c.jsx(DK,{}):S==="retry"?c.jsx(OK,{onRetry:()=>{b.refetch()}}):c.jsx(MK,{onActivationStarted:()=>g(!0),skipSiteScan:e.siteScan==="skip"})}function MK({onActivationStarted:e,skipSiteScan:a}){return c.jsx(Ef,{title:"Site Health setup",children:c.jsx(IK,{onActivationStarted:e,skipSiteScan:a})})}function IK({onActivationStarted:e,skipSiteScan:a}){const s=Hs(),r=da(),u=pK(),f=Et({...FV({client:se}),retry:!1}),g=ns(ZV()),[b,v]=T.useState(""),[k,S]=T.useState(""),[A,N]=T.useState(""),[E,Z]=T.useState("US"),[_,G]=T.useState("en"),[K,te]=T.useState(!1),[Q,re]=T.useState("idle"),[W,oe]=T.useState(null),[H,$]=T.useState(null),[Te,Ke]=T.useState(!1),[Fe,Re]=T.useState(null),[ve,Ue]=T.useState(!1),be=f.isError?void 0:f.data,P=typeof be?.enabled=="boolean"?be.enabled:null,ae=g.isPending?g.variables.body.enabled:P,[he,je]=T.useState(null),X=T.useRef(null),{onboardingSessionId:Ie,emit:Ne}=O3("platform");T.useEffect(()=>{Ne({flowVersion:st,onboardingSessionId:Ie,event:"onboarding.started",step:"project",resumed:!1},"onboarding.started")},[Ne,Ie]);const Ae=EK(b),ne=k||Ae?.projectName||"",V=A||Ae?.displayName||"",q=Q==="creating"||Q==="dispatching",le=H??Fe,De=NK(E,_),{countryValid:ye,languageValid:Je}=_K(E,_),Ge=ye&&Je;T.useEffect(()=>{le&&X.current?.focus()},[le]);const Be=(Ve,ut)=>s({to:"/setup",search:{...ut?{siteHealthRunId:ut}:{},onboarding:"site-health",setupProject:Ve.name},replace:!0}),de=async Ve=>{re("dispatching"),Re(null);try{const ut=u.mutateAsync({projectName:Ve.name,projectId:Ve.id,projectLabel:Ve.displayName||Ve.name,suppressErrorToast:!0,body:{checkDeadLinks:!0}}),Jt=await TK(ut);if(Jt.state==="queued"){Ne({flowVersion:st,onboardingSessionId:Ie,event:"run.requested",origin:"dashboard_setup",result:"queued",kind:"site_health",providerCountBucket:"0",queryCountBucket:"0"}),await Be(Ve,Jt.run.runId);return}ut.then(()=>{Ne({flowVersion:st,onboardingSessionId:Ie,event:"run.requested",origin:"dashboard_setup",result:"queued",kind:"site_health",providerCountBucket:"0",queryCountBucket:"0"})},us=>{Ne({flowVersion:st,onboardingSessionId:Ie,event:"run.requested",origin:"dashboard_setup",result:"rejected",kind:"site_health",providerCountBucket:"0",queryCountBucket:"0",reasonCode:Al(us,"run_rejected")})}),RK(ut,Ve.id),await Be(Ve)}catch(ut){re("recovery"),Re(Tx(ut,"The project was created, but the Site Health scan could not be started."));const Jt=Al(ut,"run_rejected");Ne({flowVersion:st,onboardingSessionId:Ie,event:"run.requested",origin:"dashboard_setup",result:"rejected",kind:"site_health",providerCountBucket:"0",queryCountBucket:"0",reasonCode:Jt}),Ne({flowVersion:st,onboardingSessionId:Ie,event:"onboarding.blocked",step:"run",action:"retry_run",reasonCode:Jt},`onboarding.blocked:run:${Jt}`)}},Me=async Ve=>{if(Ve.preventDefault(),!(!Ae||!a&&!K||!Ge||q)){re("creating"),$(null),Ke(!1),Re(null);try{const ut=await _I({name:ne,displayName:V,canonicalDomain:Ae.canonicalDomain,country:E,language:_});if(e(),oe(ut),Ne({flowVersion:st,onboardingSessionId:Ie,event:"onboarding.step_completed",step:"project",method:"manual"},"onboarding.step_completed:project"),await r.invalidateQueries({queryKey:ts({client:se})}),a){await s({to:"/setup",search:{experience:"legacy",onboarding:"first-run",setupProject:ut.name},replace:!0});return}await de(ut)}catch(ut){re("idle");const Jt=ut instanceof fn&&ut.statusCode===409;Ke(Jt),$(Tx(ut,"Could not create the project. Try again.")),Ne({flowVersion:st,onboardingSessionId:Ie,event:"onboarding.blocked",step:"project",action:"save",reasonCode:Al(ut,"project_create_failed")},"onboarding.blocked:project"),Jt&&(e(),r.invalidateQueries({queryKey:ts({client:se})}))}}},$t=()=>{W&&!q&&de(W)},Sn=()=>{q||s({to:"/projects"})},ga=async()=>{try{await navigator.clipboard.writeText(AK),Ue(!0)}catch{rn({tone:"negative",title:"Could not copy setup request",detail:"Open the agent quickstart to continue with the CLI instead."})}},ln=async Ve=>{je(null);try{const ut=await g.mutateAsync({client:se,body:{enabled:Ve}});r.setQueryData(KS({client:se}),ut),ut.enabled!==Ve&&je(`The server kept telemetry ${ut.enabled?"on":"off"}. Check its telemetry settings.`)}catch{je("Could not update telemetry. Try again.")}};return W&&Q==="recovery"?c.jsxs("div",{className:"page-container max-w-3xl",children:[c.jsx(ir,{current:"site"}),c.jsx("div",{className:"page-header mt-8",children:c.jsxs("div",{className:"page-header-left",children:[c.jsx("h1",{className:"page-title",children:"Project created"}),c.jsxs("p",{className:"page-subtitle",children:[W.displayName||W.name," is ready. The Site Health scan needs another try."]})]})}),c.jsxs("div",{ref:X,className:"rounded-lg border border-negative bg-negative-soft p-4",role:"alert",tabIndex:-1,children:[c.jsx("p",{className:"text-sm font-medium text-heading",children:Fe}),c.jsx("p",{className:"mt-1 text-sm text-secondary",children:"You can retry the scan or continue setup and retry from Site Health."}),c.jsxs("div",{className:"mt-4 flex flex-wrap gap-3",children:[c.jsx(fe,{type:"button",onClick:$t,children:"Retry Site Health scan"}),c.jsx(fe,{type:"button",variant:"secondary",onClick:()=>{Be(W)},children:"Continue setup"})]})]})]}):c.jsxs("div",{className:"page-container max-w-xl py-8 md:py-12",children:[a?null:c.jsx(ir,{current:"site"}),c.jsxs("header",{className:`mb-8 ${a?"":"mt-8"}`,children:[c.jsx("h1",{id:"site-map-setup-title",className:"text-2xl font-semibold tracking-[-0.025em] text-heading",children:a?"Create a project":"Map your site"}),c.jsx("p",{className:"mt-2 max-w-lg text-sm leading-6 text-secondary",children:a?"Add a public domain, then choose the queries you want to track. No site scan will run.":"Enter your public website to see its pages, structure, internal links, and technical SEO scores."})]}),c.jsxs("form",{"aria-labelledby":"site-map-setup-title",className:"space-y-6",onSubmit:Ft(Me),noValidate:!0,children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx("label",{className:"text-sm font-medium text-heading",htmlFor:"launchpad-domain",children:"Website URL"}),c.jsx("input",{id:"launchpad-domain",className:"h-11 w-full rounded-md border border-strong bg-bg-elevated/50 px-3 text-base text-heading outline-none transition placeholder:text-muted focus:border-mono-500 focus:ring-1 focus:ring-mono-500",type:"text",inputMode:"url",autoComplete:"url",autoCapitalize:"none",spellCheck:!1,required:!0,"aria-invalid":!!(b&&!Ae),"aria-describedby":b&&!Ae?"launchpad-domain-hint launchpad-domain-error":"launchpad-domain-hint",placeholder:"https://example.com",value:b,onChange:Ve=>{v(Ve.target.value),$(null),Ke(!1)}}),c.jsx("p",{id:"launchpad-domain-hint",className:"text-sm text-secondary",children:a?c.jsxs(c.Fragment,{children:["A public domain is still required."," ",c.jsx(tt,{to:"/setup",search:{experience:"platform"},className:"font-medium text-link underline-offset-4 hover:underline",children:"Map with Site Health instead"})]}):c.jsxs(c.Fragment,{children:["Only public pages are scanned."," ",c.jsx(tt,{to:"/setup",search:{experience:"platform",onboarding:"first-run",siteScan:"skip"},className:"font-medium text-link underline-offset-4 hover:underline",children:"Set up without a site scan"})]})}),b&&!Ae?c.jsx("p",{id:"launchpad-domain-error",className:"text-sm text-negative",role:"alert",children:"Enter a public domain, such as example.com."}):null]}),c.jsxs("details",{className:"group border-y border-default",children:[c.jsxs("summary",{className:"flex min-h-11 cursor-pointer list-none items-center justify-between gap-4 py-3 text-sm [&::-webkit-details-marker]:hidden",children:[c.jsx("span",{className:"font-medium text-heading",children:"Advanced settings"}),c.jsxs("span",{className:"flex items-center gap-2 text-secondary",children:[De,c.jsx(Xu,{className:"size-4 transition-transform group-open:rotate-180 motion-reduce:transition-none","aria-hidden":"true"})]})]}),c.jsxs("div",{className:"space-y-5 border-t border-default py-4",children:[Ae?c.jsxs("div",{children:[c.jsx("p",{className:"mb-3 text-sm font-medium text-heading",children:"Project"}),c.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx("label",{className:"text-sm text-secondary",htmlFor:"launchpad-project-name",children:"Project name"}),c.jsx("input",{id:"launchpad-project-name",className:"setup-input h-10",type:"text",value:ne,onChange:Ve=>S(Ve.target.value)})]}),c.jsxs("div",{className:"grid gap-2",children:[c.jsx("label",{className:"text-sm text-secondary",htmlFor:"launchpad-display-name",children:"Display name"}),c.jsx("input",{id:"launchpad-display-name",className:"setup-input h-10",type:"text",value:V,onChange:Ve=>N(Ve.target.value)})]})]})]}):null,c.jsxs("div",{children:[c.jsx("p",{className:"mb-3 text-sm font-medium text-heading",children:"Locale"}),c.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx("label",{className:"text-sm text-secondary",htmlFor:"launchpad-country",children:"Country"}),c.jsx("select",{id:"launchpad-country",className:"setup-input h-10",value:E,onChange:Ve=>Z(Ve.target.value),children:R3.map(Ve=>c.jsx("option",{value:Ve.value,children:Ve.label},Ve.value))})]}),c.jsxs("div",{className:"grid gap-2",children:[c.jsx("label",{className:"text-sm text-secondary",htmlFor:"launchpad-language",children:"Language"}),c.jsx("select",{id:"launchpad-language",className:"setup-input h-10",value:_,onChange:Ve=>G(Ve.target.value),children:D3.map(Ve=>c.jsx("option",{value:Ve.value,children:Ve.label},Ve.value))})]})]})]})]})]}),a?null:c.jsxs("label",{className:"flex min-h-11 cursor-pointer items-start gap-3 py-2",children:[c.jsx("input",{className:"mt-0.5 size-4 shrink-0 rounded border-strong bg-bg",type:"checkbox",checked:K,onChange:Ve=>te(Ve.target.checked),"aria-label":"Allow Canonry to scan this public site.","aria-describedby":"local-crawl-note"}),c.jsxs("span",{className:"grid gap-0.5",children:[c.jsx("span",{className:"text-sm leading-5 text-heading",children:"Allow Canonry to scan this public site."}),c.jsx("span",{id:"local-crawl-note",className:"text-sm leading-5 text-secondary",children:"The crawl runs on this Canonry instance, follows internal links, and stores its results locally."})]})]}),le?c.jsxs("div",{ref:X,className:"rounded-md border border-negative bg-negative-soft p-3",role:"alert",tabIndex:-1,children:[c.jsx("p",{className:"text-sm font-medium text-heading",children:le}),Te?c.jsx(fe,{type:"button",variant:"secondary",size:"sm",className:"mt-3",onClick:Sn,children:"View projects"}):null]}):null,c.jsxs("div",{className:"grid gap-2",children:[c.jsx(fe,{className:"h-11 w-full",type:"submit",disabled:!Ae||!a&&!K||!Ge||q,children:Q==="creating"||Q==="dispatching"?c.jsxs(c.Fragment,{children:[c.jsx(Zo,{className:"size-4 motion-safe:animate-spin","aria-hidden":"true"})," ",a?"Creating project…":"Mapping site…"]}):a?"Create project":"Map site"}),Q==="dispatching"?c.jsx("span",{className:"text-center text-sm text-secondary",role:"status",children:"Opening Site Health when the scan is ready."}):null]})]}),c.jsxs("section",{className:"mt-8 border-t border-default pt-6","aria-labelledby":"agent-setup-title",children:[c.jsx("p",{id:"agent-setup-title",className:"text-sm font-medium text-heading",children:"Use your agent instead"}),c.jsx("p",{className:"mt-1 text-sm leading-5 text-secondary",children:"Copy a complete CLI setup request into any coding agent."}),c.jsxs("div",{className:"mt-3 flex flex-wrap items-center gap-1",children:[c.jsxs(fe,{type:"button",variant:"ghost",size:"sm",className:"-ml-3",onClick:Ft(ga),children:[ve?c.jsx(Jh,{className:"size-3.5","aria-hidden":"true"}):c.jsx($x,{className:"size-3.5","aria-hidden":"true"}),c.jsx("span",{"aria-live":"polite",children:ve?"Copied setup request":"Copy setup request"})]}),c.jsx(fe,{asChild:!0,variant:"ghost",size:"sm",children:c.jsxs("a",{href:jK,target:"_blank",rel:"noopener noreferrer",children:["Agent quickstart",c.jsx(gA,{className:"size-3.5","aria-hidden":"true"}),c.jsx("span",{className:"sr-only",children:" (opens in a new tab)"})]})})]})]}),P!==null?c.jsxs("section",{className:"mt-6 border-t border-default pt-5","aria-labelledby":"telemetry-title",children:[c.jsxs("label",{className:`flex min-h-11 items-start gap-3 py-2 ${g.isPending?"cursor-wait":"cursor-pointer"}`,children:[c.jsx("input",{className:"mt-0.5 size-4 shrink-0 rounded border-strong bg-bg accent-accent focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-mono-500 disabled:cursor-wait",type:"checkbox",checked:ae??!1,disabled:g.isPending,onChange:Ve=>{ln(Ve.target.checked)},"aria-describedby":"telemetry-detail"}),c.jsxs("span",{className:"grid gap-0.5",children:[c.jsx("span",{id:"telemetry-title",className:"text-sm leading-5 text-heading",children:"Share anonymous product telemetry"}),c.jsx("span",{id:"telemetry-detail",className:"max-w-[70ch] text-sm leading-5 text-secondary",children:"Helps prioritize improvements. Canonry does not send raw domains, URLs, queries, answer content, or credentials."})]})]}),g.isPending?c.jsx("p",{className:"mt-1 text-sm text-secondary",role:"status",children:"Saving preference…"}):null,he?c.jsx("p",{className:"mt-1 text-sm text-negative",role:"alert",children:he}):null]}):null]})}function VK(){return c.jsx("div",{className:"page-container",children:c.jsx("section",{className:"page-section",children:c.jsxs(ua,{className:"surface-card empty-card",children:[c.jsx("h1",{children:"Route not found"}),c.jsx("p",{children:"The current path does not map to a dashboard view."}),c.jsx(fe,{asChild:!0,children:c.jsx(tt,{to:"/",children:"Return to overview"})})]})})})}const Yn=as(()=>yi(()=>import("./ProjectPage-CrFybBls.js"),__vite__mapDeps([5,1,6,2,7,8,0,3,4,9,10,11,12]),import.meta.url),"ProjectPage"),LK=as(()=>yi(()=>import("./RunsPage-BVgBbE1M.js"),__vite__mapDeps([13,1,8,11,4,2,7,12]),import.meta.url),"RunsPage"),UK=as(()=>yi(()=>import("./HistoryPage-DDBCwooU.js"),__vite__mapDeps([14,1,10,11,4,2,7,12]),import.meta.url),"HistoryPage"),GK=as(()=>yi(()=>import("./SettingsPage-DYtN-1_-.js"),__vite__mapDeps([15,1,11,4,2,7,12]),import.meta.url),"SettingsPage"),$K=as(()=>yi(()=>import("./BacklinksPage-BiOj8ztV.js"),__vite__mapDeps([16,1,2,11,4,7,12]),import.meta.url),"BacklinksPage"),KK=as(()=>yi(()=>import("./TrafficPage-D6QT_2hU.js"),__vite__mapDeps([17,1,9,2,11,4,7,12]),import.meta.url),"TrafficPage"),HK=as(()=>yi(()=>import("./TrafficSourceDetailPage-BnLzF82w.js"),__vite__mapDeps([18,1,9,3,4,2,11,7,12]),import.meta.url),"TrafficSourceDetailPage"),QK=as(()=>yi(()=>import("./MeasurementPropertyPage-CMoU2yA_.js"),__vite__mapDeps([19,1,3,4,6,2,7,11,12]),import.meta.url),"MeasurementPropertyPage");function FK(){return c.jsx(K$,{children:c.jsx($$,{})})}const kn=K4()({component:FK,validateSearch:e=>({manageQueries:e.manageQueries===!0||e.manageQueries==="true"?!0:void 0,runId:typeof e.runId=="string"?e.runId:void 0,siteHealthRunId:typeof e.siteHealthRunId=="string"?e.siteHealthRunId:void 0,evidenceId:typeof e.evidenceId=="string"?e.evidenceId:void 0,runStatus:typeof e.runStatus=="string"?e.runStatus:void 0,runKind:typeof e.runKind=="string"?e.runKind:void 0,runProject:typeof e.runProject=="string"?e.runProject:void 0,runWindow:typeof e.runWindow=="string"?e.runWindow:void 0,runQuery:typeof e.runQuery=="string"?e.runQuery:void 0,onboarding:e.onboarding==="site-health"||e.onboarding==="first-run"?e.onboarding:void 0,experience:e.experience==="legacy"||e.experience==="platform"?e.experience:void 0,siteScan:e.siteScan==="skip"?"skip":void 0,setupProject:typeof e.setupProject=="string"?e.setupProject:void 0,scope:typeof e.scope=="string"?e.scope:void 0,class:typeof e.class=="string"?e.class:void 0,...Object.fromEntries(["queryWorkspace","researchMode","trackingQueryId","measurementScope","measurementScopeKey","measurementMarketKey","queryClass","measurementProvider","measurementModel","measurementLocation","measurementFrom","measurementTo","measurementRevision","measurementRunId","measurementQueryKey","measurementAnswer"].map(a=>[a,typeof e[a]=="string"?e[a]:void 0]))})}),ZK=St({getParentRoute:()=>kn,path:"/",component:Y$,beforeLoad:async({context:e})=>{let a=e.queryClient.getQueryData(ts({client:se}));if(a===void 0)try{a=await e.queryClient.ensureQueryData(Zs({client:se}))}catch{return}if(a.length===0)throw qx({to:"/setup"})}}),YK=St({getParentRoute:()=>kn,path:"/projects",component:eK}),XK=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,wn=St({getParentRoute:()=>kn,path:"/projects/$projectName",component:()=>c.jsx(hh,{}),beforeLoad:async({context:e,params:a,location:s})=>{const r=a.projectName;if(!XK.test(r))return;let u=e.queryClient.getQueryData(ts({client:se}));if(!u)try{u=await e.queryClient.ensureQueryData(Zs({client:se}))}catch{return}const f=u.find(g=>g.id===r);if(f)throw qx({to:s.pathname.replace(`/projects/${r}`,`/projects/${encodeURIComponent(f.name)}`),replace:!0})}}),JK=St({getParentRoute:()=>wn,path:"/",component:()=>c.jsx(Yn,{tab:"overview"})}),WK=St({getParentRoute:()=>wn,path:"/portfolio",component:()=>c.jsx(Yn,{tab:"portfolio"})}),eH=St({getParentRoute:()=>wn,path:"/search-console",component:()=>c.jsx(Yn,{tab:"search-console"})}),tH=St({getParentRoute:()=>wn,path:"/conversions",component:()=>c.jsx(Yn,{tab:"conversions"})}),nH=St({getParentRoute:()=>wn,path:"/local",component:()=>c.jsx(Yn,{tab:"local"})}),aH=St({getParentRoute:()=>wn,path:"/discovery",component:()=>c.jsx(Yn,{tab:"discovery"})}),iH=St({getParentRoute:()=>wn,path:"/queries",component:()=>c.jsx(Yn,{tab:"queries"})}),sH=St({getParentRoute:()=>wn,path:"/properties/$targetKey",component:()=>c.jsx(QK,{})}),oH=St({getParentRoute:()=>wn,path:"/report",component:()=>c.jsx(Yn,{tab:"report"})}),rH=St({getParentRoute:()=>wn,path:"/activity",component:()=>c.jsx(Yn,{tab:"activity"})}),lH=St({getParentRoute:()=>wn,path:"/backlinks",component:()=>c.jsx(Yn,{tab:"backlinks"})}),cH=St({getParentRoute:()=>wn,path:"/technical-aeo",component:()=>c.jsx(Yn,{tab:"technical-aeo"})}),uH=St({getParentRoute:()=>wn,path:"/history",component:()=>c.jsx(Yn,{tab:"history"})}),dH=St({getParentRoute:()=>wn,path:"/settings",component:()=>c.jsx(Yn,{tab:"settings"})}),mH=St({getParentRoute:()=>kn,path:"/runs",component:LK}),pH=St({getParentRoute:()=>kn,path:"/history",component:UK}),hH=St({getParentRoute:()=>kn,path:"/settings",component:GK,beforeLoad:({context:e})=>{}}),fH=St({getParentRoute:()=>kn,path:"/setup",component:PK}),gH=St({getParentRoute:()=>kn,path:"/backlinks",component:$K}),yH=St({getParentRoute:()=>kn,path:"/traffic",component:KK}),bH=St({getParentRoute:()=>kn,path:"/traffic/$projectName/$sourceId",component:HK}),vH=St({getParentRoute:()=>kn,path:"*",component:VK}),xH=kn.addChildren([ZK,YK,wn.addChildren([JK,WK,eH,tH,nH,aH,iH,sH,oH,rH,lH,cH,uH,dH]),mH,pH,hH,fH,gH,yH,bH,vH]);function kH(){return typeof window<"u"&&window.__CANONRY_CONFIG__?.basePath?window.__CANONRY_CONFIG__.basePath:"/"}const Rx=kH(),wH=Rx==="/"?"":Rx.replace(/\/$/,"");function SH(e,a){return H4({routeTree:xH,basepath:wH||"/",context:{queryClient:e},...a?.initialEntries})}const jH=6e4;function AH(){const e=T.useRef(AI()).current,[a,s]=T.useState(e?"ready":"checking"),[r,u]=T.useState(null),[f,g]=T.useState(null),[b,v]=T.useState(e),[k,S]=T.useState(!1),[A,N]=T.useState(""),[E,Z]=T.useState(""),[_,G]=T.useState(""),[K,te]=T.useState(!1),[Q,re]=T.useState("password"),[W,oe]=T.useState(null),[H,$]=T.useState(!1),[Te,Ke]=T.useState(!1),Fe=T.useRef(null),Re=T.useRef(null),ve=T.useRef(null),Ue=()=>{const q=r?`${r.name}:${r.role}`:e?"api-key:explicit":f?`api-key:${f.id}`:"no-accounts";if(!Fe.current||ve.current!==q){Re.current?.clear();const le=sV();Re.current=le,Fe.current=SH(le),ve.current=q}return{queryClient:Re.current,router:Fe.current}},be=q=>q.authRequired?(S(!0),u(q.user),g(null),v(!1),s(q.user?"ready":"account-login"),!0):!1;T.useEffect(()=>{let q=!1;const le=async(De,ye=!1)=>{try{const Je=await lh();if(q)return;g(Je),v(!1),s("ready")}catch(Je){if(q)return;if(ye&&Je instanceof fn&&Je.statusCode===401)return PI().then(()=>{q||(oe(null),g(null),v(!1),Ke(!0),s("login"))}).catch(Ge=>{q||(oe(Ge instanceof Error?Ge.message:"Could not clear the invalid session"),s(De))});oe(Je instanceof Error?Je.message:"Could not verify API key access"),s(De)}};return e?(le("api-key-error"),()=>{q=!0}):(Promise.allSettled([Gv(),Uv()]).then(([De,ye])=>{if(q||De.status==="fulfilled"&&be(De.value))return;if(ye.status==="rejected"){const Ge=ye.reason;oe(Ge instanceof Error?Ge.message:"Failed to reach the Canonry API"),s("login");return}const Je=ye.value;Je.authenticated?(v(!0),le("api-key-error",!0)):(g(null),v(!1),s(Je.setupRequired?"setup":"login"))}),()=>{q=!0})},[]),T.useEffect(()=>{if(a!=="ready"||e)return;const q=setInterval(()=>{if(k){Gv().then(le=>{le.authRequired&&!le.user&&(Ke(!0),u(null),g(null),s("account-login"))}).catch(()=>{});return}Uv().then(le=>{le.authenticated||(Ke(!0),g(null),s(le.setupRequired?"setup":"login"))}).catch(()=>{})},jH);return Lv(()=>{Ke(!0),u(null),g(null),v(!1),s(k?"account-login":"login")}),()=>{clearInterval(q),Lv(null)}},[a,k,e]);const P=async q=>{if(q.preventDefault(),!E.trim()||E.trim().length<8){oe("Password must be at least 8 characters");return}if(E!==_){oe("Passwords do not match");return}$(!0),oe(null);try{if(!(await OI(E.trim())).authenticated){oe("Setup failed");return}Z(""),G(""),te(!1),Ke(!1),g(null),v(!0),s("checking");try{const De=await lh();g(De),v(!1),s("ready")}catch(De){oe(De instanceof Error?De.message:"Could not verify API key access"),s("api-key-error")}}catch(le){oe(le instanceof fn||le instanceof Error?le.message:"Setup failed")}finally{$(!1)}},ae=q=>{Z(q),oe(null)},he=q=>{G(q),oe(null)},je=async q=>{if(q.preventDefault(),!!E.trim()){$(!0),oe(null);try{if(!(Q==="api-key"?await BI(E.trim()):await qI(E.trim())).authenticated){oe(Q==="api-key"?"Invalid API key":"Incorrect password");return}const De=await lh();g(De),v(!1),Z(""),te(!1),Ke(!1),s("ready")}catch(le){oe(le instanceof fn||le instanceof Error?le.message:"Authentication failed")}finally{$(!1)}}},X=q=>{re(q),Z(""),te(!1),oe(null)},Ie=async q=>{if(q.preventDefault(),!(!A.trim()||!E)){$(!0),oe(null);try{const le=await MI(A.trim(),E);if(!le.user){oe("Incorrect name or password.");return}Z(""),Ke(!1),u(le.user),g(null),v(!1),s("ready")}catch(le){oe(le instanceof fn?le.message:"Incorrect name or password.")}finally{$(!1)}}};if(a==="ready"){const{queryClient:q,router:le}=Ue();return c.jsx(ZI,{account:r,apiKey:f,apiKeyPending:b,children:c.jsx(Q4,{client:q,children:c.jsx(F4,{router:le})})})}const Ne=E.trim(),Ae=E.length>0&&Ne.length<8,ne=_.length>0&&E!==_,V=Ne.length>=8&&E===_;return c.jsx("div",{className:"min-h-screen bg-bg px-4 py-8",children:c.jsxs("div",{className:"mx-auto flex min-h-[calc(100vh-4rem)] max-w-md flex-col items-center justify-center gap-5",children:[c.jsxs("div",{"data-testid":"auth-brand",className:"flex items-center gap-2.5",children:[c.jsx("img",{className:"size-7",src:"./favicon.svg",alt:"","aria-hidden":"true"}),c.jsx("span",{className:"text-lg font-semibold tracking-tight text-heading",children:"Canonry"})]}),c.jsx(ua,{className:"surface-card w-full",children:a==="checking"?c.jsx(Ms,{className:"py-8",children:c.jsx("p",{className:"supporting-copy text-center",children:"Connecting to Canonry…"})}):a==="api-key-error"?c.jsxs(c.Fragment,{children:[c.jsxs(Ko,{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Dashboard access"}),c.jsx("h1",{className:"font-medium tracking-tight text-primary",children:"Could not verify API key access"})]}),c.jsxs(Ms,{className:"space-y-4",children:[c.jsx("p",{className:"supporting-copy",children:W??"Canonry could not verify this session’s access, so the dashboard stayed locked."}),c.jsx(fe,{type:"button",className:"w-full",onClick:()=>{window.location.reload()},children:"Try again"})]})]}):a==="account-login"?c.jsxs(c.Fragment,{children:[c.jsxs(Ko,{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Dashboard access"}),c.jsx("h1",{className:"font-medium tracking-tight text-primary",children:"Sign in to Canonry"})]}),c.jsxs(Ms,{children:[Te?c.jsx("p",{className:"mb-4 rounded-md border border-caution bg-caution-soft px-3 py-2 text-sm text-caution",children:"You were signed out — please sign in again."}):null,c.jsxs("form",{className:"space-y-4",onSubmit:Ft(Ie),children:[c.jsxs("label",{className:"block space-y-1.5",htmlFor:"account-name",children:[c.jsx("span",{className:"text-xs font-medium text-secondary",children:"Name"}),c.jsx("input",{autoFocus:!0,id:"account-name",className:"w-full rounded-md border border-base bg-bg px-3 py-2 text-sm text-heading outline-none transition focus:border-mono-600",type:"text",name:"username",autoComplete:"username",value:A,onChange:q=>{N(q.target.value),oe(null)},"aria-invalid":!!W,"aria-describedby":W?"account-login-error":void 0})]}),c.jsxs("label",{className:"block space-y-1.5",htmlFor:"account-password",children:[c.jsx("span",{className:"text-xs font-medium text-secondary",children:"Password"}),c.jsx("input",{id:"account-password",className:"w-full rounded-md border border-base bg-bg px-3 py-2 text-sm text-heading outline-none transition focus:border-mono-600",type:"password",name:"password",autoComplete:"current-password",value:E,onChange:q=>ae(q.target.value),"aria-invalid":!!W,"aria-describedby":W?"account-login-error":void 0})]}),W?c.jsx("p",{id:"account-login-error",role:"alert",className:"text-sm text-negative-400",children:W}):null,c.jsx(fe,{type:"submit",disabled:H||!A.trim()||!E,children:H?"Signing in…":"Sign in"})]})]})]}):a==="setup"?c.jsxs(c.Fragment,{children:[c.jsxs(Ko,{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"First-time setup"}),c.jsx("h1",{className:"font-medium tracking-tight text-primary",children:"Create a dashboard password"}),c.jsx(Qu,{children:"Stored on this Canonry install as a salted, one-way hash. Canonry cannot recover it."})]}),c.jsx(Ms,{children:c.jsxs("form",{className:"space-y-4",onSubmit:Ft(P),children:[c.jsxs("div",{className:"space-y-1.5",children:[c.jsx("label",{className:"block text-xs font-medium text-secondary",htmlFor:"dashboard-password-new",children:"Password"}),c.jsx("input",{autoFocus:!0,id:"dashboard-password-new",className:"w-full rounded-md border border-base bg-bg px-3 py-2 text-sm text-heading outline-none transition focus:border-mono-600",type:K?"text":"password",name:"new-password",autoComplete:"new-password",minLength:8,required:!0,value:E,onChange:q=>ae(q.target.value),"aria-invalid":Ae,"aria-describedby":"dashboard-password-new-help"}),c.jsx("span",{id:"dashboard-password-new-help","aria-live":"polite",className:Ae?"block text-sm text-negative-400":"block text-sm text-secondary",children:Ae?"Enter at least 8 characters.":"Use at least 8 characters."})]}),c.jsxs("div",{className:"space-y-1.5",children:[c.jsx("label",{className:"block text-xs font-medium text-secondary",htmlFor:"dashboard-password-confirm",children:"Confirm password"}),c.jsx("input",{id:"dashboard-password-confirm",className:"w-full rounded-md border border-base bg-bg px-3 py-2 text-sm text-heading outline-none transition focus:border-mono-600",type:K?"text":"password",name:"confirm-password",autoComplete:"new-password",minLength:8,required:!0,value:_,onChange:q=>he(q.target.value),"aria-invalid":ne,"aria-describedby":"dashboard-password-confirm-help"}),c.jsx("span",{id:"dashboard-password-confirm-help","aria-live":"polite",className:ne?"block text-sm text-negative-400":"block text-sm text-secondary",children:ne?"Passwords do not match.":"Enter the same password again."})]}),c.jsxs("label",{className:"flex min-h-10 cursor-pointer items-center gap-2 text-sm text-secondary",htmlFor:"dashboard-password-show",children:[c.jsx("input",{id:"dashboard-password-show",type:"checkbox",checked:K,onChange:q=>te(q.target.checked)}),"Show passwords"]}),W?c.jsx("p",{id:"dashboard-password-setup-error",role:"alert",className:"text-sm text-negative-400",children:W}):null,c.jsx(fe,{type:"submit",disabled:H||!V,children:H?"Creating password…":"Create password and continue"})]})})]}):c.jsxs(c.Fragment,{children:[c.jsxs(Ko,{children:[c.jsx("p",{className:"eyebrow eyebrow-soft",children:"Dashboard access"}),c.jsx("h1",{className:"font-medium tracking-tight text-primary",children:"Sign in to Canonry"}),c.jsx(Qu,{children:Q==="api-key"?"Enter an API key from this Canonry install. This opens the dashboard with that key’s access and does not change the password.":"Enter your dashboard password to continue."})]}),c.jsxs(Ms,{children:[Te?c.jsx("p",{className:"mb-4 rounded-md border border-caution bg-caution-soft px-3 py-2 text-sm text-caution",children:"Your session expired — please sign in again."}):null,c.jsxs("form",{className:"space-y-4",onSubmit:Ft(je),children:[c.jsxs("label",{className:"block space-y-1.5",htmlFor:"dashboard-password-current",children:[c.jsx("span",{className:"text-xs font-medium text-secondary",children:Q==="api-key"?"Canonry API key":"Password"}),c.jsx("input",{autoFocus:!0,id:"dashboard-password-current",className:"w-full rounded-md border border-base bg-bg px-3 py-2 text-sm text-heading outline-none transition focus:border-mono-600",type:K?"text":"password",name:Q==="api-key"?"apiKey":"password",autoComplete:Q==="api-key"?"off":"current-password",spellCheck:!1,required:!0,value:E,onChange:q=>ae(q.target.value),"aria-invalid":!!W,"aria-describedby":W?"dashboard-password-login-error":void 0})]}),c.jsxs("label",{className:"flex min-h-10 cursor-pointer items-center gap-2 text-sm text-secondary",htmlFor:"dashboard-login-password-show",children:[c.jsx("input",{id:"dashboard-login-password-show",type:"checkbox",checked:K,onChange:q=>te(q.target.checked)}),Q==="api-key"?"Show API key":"Show password"]}),W?c.jsx("p",{id:"dashboard-password-login-error",role:"alert",className:"text-sm text-negative-400",children:W}):null,c.jsx(fe,{type:"submit",disabled:H||!E.trim(),children:H?"Signing in…":"Open dashboard"}),c.jsx(fe,{type:"button",variant:"ghost",onClick:()=>X(Q==="api-key"?"password":"api-key"),children:Q==="api-key"?"Use dashboard password instead":"Forgot password? Use API key"})]})]})]})})]})})}const q3=document.getElementById("root");if(!q3)throw new Error("Expected #root element for web app bootstrap.");SA.createRoot(q3).render(c.jsx(T.StrictMode,{children:c.jsx(AH,{})}));export{HZ as $,GF as A,fe as B,Uu as C,LF as D,$F as E,GQ as F,VF as G,LZ as H,yl as I,$Z as J,GZ as K,JQ as L,MY as M,XQ as N,lF as O,dG as P,rn as Q,QZ as R,lV as S,pn as T,FZ as U,aF as V,ZZ as W,iF as X,eF as Y,nF as Z,KZ as _,PY as a,sF as a$,UZ as a0,WQ as a1,YZ as a2,aY as a3,WZ as a4,tY as a5,eY as a6,nY as a7,CF as a8,vf as a9,RH as aA,nV as aB,nZ as aC,on as aD,kV as aE,$V as aF,lZ as aG,pZ as aH,cZ as aI,rQ as aJ,cQ as aK,EO as aL,uQ as aM,RV as aN,rZ as aO,RO as aP,qh as aQ,lQ as aR,fI as aS,uZ as aT,oZ as aU,OV as aV,dZ as aW,VY as aX,mZ as aY,kY as aZ,wY as a_,ze as aa,JZ as ab,ZS as ac,gi as ad,XZ as ae,HY as af,qT as ag,BT as ah,OH as ai,DH as aj,zF as ak,qF as al,BF as am,fn as an,PF as ao,OQ as ap,cV as aq,fU as ar,Ph as as,MF as at,Tu as au,gY as av,d_ as aw,Hh as ax,Ps as ay,tF as az,$9 as b,eQ as b$,gf as b0,fY as b1,MV as b2,bZ as b3,xZ as b4,_Z as b5,MZ as b6,PZ as b7,CZ as b8,qZ as b9,wQ as bA,fQ as bB,gQ as bC,kQ as bD,xQ as bE,vQ as bF,yQ as bG,bQ as bH,hQ as bI,pQ as bJ,mQ as bK,dQ as bL,uB as bM,ZH as bN,KH as bO,HH as bP,QH as bQ,YH as bR,FH as bS,WH as bT,hY as bU,XH as bV,JH as bW,gF as bX,GH as bY,KY as bZ,nQ as b_,VZ as ba,wZ as bb,EZ as bc,TZ as bd,RZ as be,kZ as bf,zZ as bg,SZ as bh,DZ as bi,jZ as bj,OZ as bk,NZ as bl,BZ as bm,IZ as bn,lK as bo,AZ as bp,ge as bq,TQ as br,EQ as bs,zQ as bt,_Q as bu,AQ as bv,jQ as bw,NQ as bx,CQ as by,SQ as bz,O2 as c,lY as c$,aQ as c0,iQ as c1,$H as c2,tQ as c3,LQ as c4,VQ as c5,IQ as c6,yF as c7,QV as c8,vZ as c9,$Y as cA,mK as cB,hZ as cC,XF as cD,tZ as cE,JF as cF,fZ as cG,IY as cH,WF as cI,xn as cJ,NI as cK,hV as cL,v$ as cM,qQ as cN,EI as cO,BQ as cP,PQ as cQ,MQ as cR,ts as cS,xV as cT,jV as cU,UQ as cV,iY as cW,UI as cX,pF as cY,oY as cZ,rY as c_,QF as ca,Fv as cb,KQ as cc,HQ as cd,KF as ce,HF as cf,QQ as cg,FQ as ch,YQ as ci,ZQ as cj,Kl as ck,Zs as cl,TS as cm,YF as cn,ZF as co,n$ as cp,mG as cq,p3 as cr,yG as cs,h3 as ct,f3 as cu,AV as cv,Is as cw,Yu as cx,XV as cy,fK as cz,IF as d,_Y as d$,sY as d0,UF as d1,cF as d2,uF as d3,dF as d4,hF as d5,mF as d6,nr as d7,yf as d8,LY as d9,vY as dA,J$ as dB,oQ as dC,of as dD,FF as dE,yY as dF,xY as dG,jF as dH,sQ as dI,wF as dJ,SF as dK,kF as dL,bY as dM,K8 as dN,aZ as dO,eZ as dP,sZ as dQ,iZ as dR,PH as dS,yi as dT,fa as dU,BH as dV,hI as dW,SY as dX,AY as dY,jY as dZ,pK as d_,zd as da,wf as db,gZ as dc,yZ as dd,xI as de,RQ as df,DQ as dg,$Q as dh,oF as di,rF as dj,Ef as dk,Ed as dl,Sf as dm,hK as dn,fF as dp,ar as dq,Yv as dr,NF as ds,EF as dt,RF as du,DF as dv,_F as dw,TF as dx,OF as dy,AF as dz,dY as e,f$ as e0,MH as e1,OY as e2,qY as e3,BY as e4,CY as e5,NY as e6,qH as e7,EY as e8,DY as e9,zY as ea,RY as eb,ir as ec,IH as ed,TY as ee,v9 as ef,LH as eg,VH as eh,ua as f,cY as g,rx as h,se as i,gI as j,Sl as k,mn as l,Ft as m,uY as n,pY as o,mY as p,bF as q,xF as r,UH as s,dV as t,jf as u,vF as v,ha as w,UY as x,GY as y,$h as z};