PageSourceSearch

https://www.privatequity.ai/assets/index-DKF9NEHe.js

js privatequity.ai collected 2026-10-05 12:34:43 UTC 2,227,199 bytes, 1,779 lines download raw bytes

vendor: 6,400 bytes, lines 1-9
1var oB=Object.defineProperty;var wA=e=>{throw TypeError(e)};var lB=(e,t,n)=>t in e?oB(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var M=(e,t,n)=>lB(e,typeof t!="symbol"?t+"":t,n),ex=(e,t,n)=>t.has(e)||wA("Cannot "+n);var T=(e,t,n)=>(ex(e,t,"read from private field"),n?n.call(e):t.get(e)),me=(e,t,n)=>t.has(e)?wA("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),se=(e,t,n,i)=>(ex(e,t,"write to private field"),i?i.call(e,n):t.set(e,n),n),Ce=(e,t,n)=>(ex(e,t,"access private method"),n);var bp=(e,t,n,i)=>({set _(a){se(e,t,a,n)},get _(){return T(e,t,i)}});function cB(e,t){for(var n=0;n<t.length;n++){const i=t[n];if(typeof i!="string"&&!Array.isArray(i)){for(const a in i)if(a!=="default"&&!(a in e)){const s=Object.getOwnPropertyDescriptor(i,a);s&&Object.defineProperty(e,a,s.get?s:{enumerable:!0,get:()=>i[a]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))i(a);new MutationObserver(a=>{for(const s of a)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function n(a){const s={};return a.integrity&&(s.integrity=a.integrity),a.referrerPolicy&&(s.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?s.credentials="include":a.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function i(a){if(a.ep)return;a.ep=!0;const s=n(a);fetch(a.href,s)}})();var wp=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Qe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var K2={exports:{}},Mf={},Y2={exports:{}},Pe={};/**
2 * @license React
3 * react.production.min.js
4 *
5 * Copyright (c) Facebook, Inc. and its affiliates.
6 *
7 * This source code is licensed under the MIT license found in the
8 * LICENSE file in the root directory of this source tree.
9 */var Ku=Symbol.for("react.element"),dB=Symbol.for("react.portal"),uB=Symbol.for("react.fragment"),pB=Symbol.for("react.strict_mode"),mB=Symbol.for("react.profiler"),hB=Symbol.for("react.provider"),fB=Symbol.for("react.context"),gB=Symbol.for("react.forward_ref"),xB=Symbol.for("react.suspense"),yB=Symbol.for("react.memo"),vB=Symbol.for("react.lazy"),AA=Symbol.iterator;function bB(e){return e===null||typeof e!="object"?null:(e=AA&&e[AA]||e["@@iterator"],typeof e=="function"?e:null)}var Q2={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},X2=Object.assign,Z2={};function Jl(e,t,n){this.props=e,this.context=t,this.refs=Z2,this.updater=n||Q2}Jl.prototype.isReactComponent={};Jl.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Jl.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function J2(){}J2.prototype=Jl.prototype;function Fw(e,t,n){this.props=e,this.context=t,this.refs=Z2,this.updater=n||Q2}var Bw=Fw.prototype=new J2;Bw.constructor=Fw;X2(Bw,Jl.prototype);Bw.isPureReactComponent=!0;var jA=Array.isArray,eP=Object.prototype.hasOwnProperty,$w={current:null},tP={key:!0,ref:!0,__self:!0,__source:!0};function nP(e,t,n){var i,a={},s=null,o=null;if(t!=null)for(i in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(s=""+t.key),t)eP.call(t,i)&&!tP.hasOwnProperty(i)&&(a[i]=t[i]);var l=arguments.length-2;if(l===1)a.children=n;else if(1<l){for(var c=Array(l),d=0;d<l;d++)c[d]=arguments[d+2];a.children=c}if(e&&e.defaultProps)for(i in l=e.defaultProps,l)a[i]===void 0&&(a[i]=l[i]);return{$$typeof:Ku,type:e,key:s,ref:o,props:a,_owner:$w.current}}function wB(e,t){return{$$typeof:Ku,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function Uw(e){return typeof e=="object"&&e!==null&&e.$$typeof===Ku}function AB(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var kA=/\/+/g;function tx(e,t){return typeof e=="object"&&e!==null&&e.key!=null?AB(""+e.key):t.toString(36)}function xm(e,t,n,i,a){var s=typeof e;(s==="undefined"||s==="boolean")&&(e=null);var o=!1;if(e===null)o=!0;else switch(s){case"string":case"number":o=!0;break;case"object":switch(e.$$typeof){case Ku:case dB:o=!0}}if(o)return o=e,a=a(o),e=i===""?"."+tx(o,0):i,jA(a)?(n="",e!=null&&(n=e.replace(kA,"$&/")+"/"),xm(a,t,n,"",function(d){return d})):a!=null&&(Uw(a)&&(a=wB(a,n+(!a.key||o&&o.key===a.key?"":(""+a.key).replace(kA,"$&/")+"/")+e)),t.push(a)),1;if(o=0,i=i===""?".":i+":",jA(e))for(var l=0;l<e.length;l++){s=e[l];var c=i+tx(s,l);o+=xm(s,t,n,c,a)}else if(c=bB(e),typeof c=="function")for(e=c.call(e),l=0;!(s=e.next()).done;)s=s.value,c=i+tx(s,l++),o+=xm(s,t,n,c,a);else if(s==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return o}function Ap(e,t,n){if(e==null)return e;var i=[],a=0;return xm(e,i,"","",function(s){return t.call(n,s,a++)}),i}function jB(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var Sn={current:null},ym={transition:null},kB={ReactCurrentDispatcher:Sn,ReactCurrentBatchConfig:ym,ReactCurrentOwner:$w};function rP(){throw Error("act(...) is not supported in production builds of React.")}Pe.Children={map:Ap,forEach:function(e,t,n){Ap(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return Ap(e,function(){t++}),t},toArray:function(e){return Ap(e,function(t){return t})||[]},only:function(e){if(!Uw(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};Pe.Component=Jl;Pe.Fragment=uB;Pe.Profiler=mB;Pe.PureComponent=Fw;Pe.StrictMode=pB;Pe.Suspense=xB;
vendor: 6,037 bytes, lines 9-25
9Pe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=kB;Pe.act=rP;Pe.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var i=X2({},e.props),a=e.key,s=e.ref,o=e._owner;if(t!=null){if(t.ref!==void 0&&(s=t.ref,o=$w.current),t.key!==void 0&&(a=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(c in t)eP.call(t,c)&&!tP.hasOwnProperty(c)&&(i[c]=t[c]===void 0&&l!==void 0?l[c]:t[c])}var c=arguments.length-2;if(c===1)i.children=n;else if(1<c){l=Array(c);for(var d=0;d<c;d++)l[d]=arguments[d+2];i.children=l}return{$$typeof:Ku,type:e.type,key:a,ref:s,props:i,_owner:o}};Pe.createContext=function(e){return e={$$typeof:fB,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:hB,_context:e},e.Consumer=e};Pe.createElement=nP;Pe.createFactory=function(e){var t=nP.bind(null,e);return t.type=e,t};Pe.createRef=function(){return{current:null}};Pe.forwardRef=function(e){return{$$typeof:gB,render:e}};Pe.isValidElement=Uw;Pe.lazy=function(e){return{$$typeof:vB,_payload:{_status:-1,_result:e},_init:jB}};Pe.memo=function(e,t){return{$$typeof:yB,type:e,compare:t===void 0?null:t}};Pe.startTransition=function(e){var t=ym.transition;ym.transition={};try{e()}finally{ym.transition=t}};Pe.unstable_act=rP;Pe.useCallback=function(e,t){return Sn.current.useCallback(e,t)};Pe.useContext=function(e){return Sn.current.useContext(e)};Pe.useDebugValue=function(){};Pe.useDeferredValue=function(e){return Sn.current.useDeferredValue(e)};Pe.useEffect=function(e,t){return Sn.current.useEffect(e,t)};Pe.useId=function(){return Sn.current.useId()};Pe.useImperativeHandle=function(e,t,n){return Sn.current.useImperativeHandle(e,t,n)};Pe.useInsertionEffect=function(e,t){return Sn.current.useInsertionEffect(e,t)};Pe.useLayoutEffect=function(e,t){return Sn.current.useLayoutEffect(e,t)};Pe.useMemo=function(e,t){return Sn.current.useMemo(e,t)};Pe.useReducer=function(e,t,n){return Sn.current.useReducer(e,t,n)};Pe.useRef=function(e){return Sn.current.useRef(e)};Pe.useState=function(e){return Sn.current.useState(e)};Pe.useSyncExternalStore=function(e,t,n){return Sn.current.useSyncExternalStore(e,t,n)};Pe.useTransition=function(){return Sn.current.useTransition()};Pe.version="18.3.1";Y2.exports=Pe;var j=Y2.exports;const F=Qe(j),iP=cB({__proto__:null,default:F},[j]);/**
10 * @license React
11 * react-jsx-runtime.production.min.js
12 *
13 * Copyright (c) Facebook, Inc. and its affiliates.
14 *
15 * This source code is licensed under the MIT license found in the
16 * LICENSE file in the root directory of this source tree.
17 */var NB=j,IB=Symbol.for("react.element"),SB=Symbol.for("react.fragment"),CB=Object.prototype.hasOwnProperty,EB=NB.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,_B={key:!0,ref:!0,__self:!0,__source:!0};function aP(e,t,n){var i,a={},s=null,o=null;n!==void 0&&(s=""+n),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(o=t.ref);for(i in t)CB.call(t,i)&&!_B.hasOwnProperty(i)&&(a[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps,t)a[i]===void 0&&(a[i]=t[i]);return{$$typeof:IB,type:e,key:s,ref:o,props:a,_owner:EB.current}}Mf.Fragment=SB;Mf.jsx=aP;Mf.jsxs=aP;K2.exports=Mf;var r=K2.exports,sP={exports:{}},Yn={},oP={exports:{}},lP={};/**
18 * @license React
19 * scheduler.production.min.js
20 *
21 * Copyright (c) Facebook, Inc. and its affiliates.
22 *
23 * This source code is licensed under the MIT license found in the
24 * LICENSE file in the root directory of this source tree.
25 */(function(e){function t(B,$){var z=B.length;B.push($);e:for(;0<z;){var Q=z-1>>>1,V=B[Q];if(0<a(V,$))B[Q]=$,B[z]=V,z=Q;else break e}}function n(B){return B.length===0?null:B[0]}function i(B){if(B.length===0)return null;var $=B[0],z=B.pop();if(z!==$){B[0]=z;e:for(var Q=0,V=B.length,ne=V>>>1;Q<ne;){var Se=2*(Q+1)-1,He=B[Se],at=Se+1,tn=B[at];if(0>a(He,z))at<V&&0>a(tn,He)?(B[Q]=tn,B[at]=z,Q=at):(B[Q]=He,B[Se]=z,Q=Se);else if(at<V&&0>a(tn,z))B[Q]=tn,B[at]=z,Q=at;else break e}}return $}function a(B,$){var z=B.sortIndex-$.sortIndex;return z!==0?z:B.id-$.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;e.unstable_now=function(){return s.now()}}else{var o=Date,l=o.now();e.unstable_now=function(){return o.now()-l}}var c=[],d=[],u=1,p=null,m=3,f=!1,x=!1,h=!1,g=typeof setTimeout=="function"?setTimeout:null,y=typeof clearTimeout=="function"?clearTimeout:null,v=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function b(B){for(var $=n(d);$!==null;){if($.callback===null)i(d);else if($.startTime<=B)i(d),$.sortIndex=$.expirationTime,t(c,$);else break;$=n(d)}}function A(B){if(h=!1,b(B),!x)if(n(c)!==null)x=!0,U(w);else{var $=n(d);$!==null&&W(A,$.startTime-B)}}function w(B,$){x=!1,h&&(h=!1,y(I),I=-1),f=!0;var z=m;try{for(b($),p=n(c);p!==null&&(!(p.expirationTime>$)||B&&!_());){var Q=p.callback;if(typeof Q=="function"){p.callback=null,m=p.priorityLevel;var V=Q(p.expirationTime<=$);$=e.unstable_now(),typeof V=="function"?p.callback=V:p===n(c)&&i(c),b($)}else i(c);p=n(c)}if(p!==null)var ne=!0;else{var Se=n(d);Se!==null&&W(A,Se.startTime-$),ne=!1}return ne}finally{p=null,m=z,f=!1}}var k=!1,N=null,I=-1,C=5,O=-1;function _(){return!(e.unstable_now()-O<C)}function D(){if(N!==null){var B=e.unstable_now();O=B;var $=!0;try{$=N(!0,B)}finally{$?G():(k=!1,N=null)}}else k=!1}var G;if(typeof v=="function")G=function(){v(D)};else if(typeof MessageChannel<"u"){var P=new MessageChannel,L=P.port2;P.port1.onmessage=D,G=function(){L.postMessage(null)}}else G=function(){g(D,0)};function U(B){N=B,k||(k=!0,G())}function W(B,$){I=g(function(){B(e.unstable_now())},$)}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(B){B.
vendor: 4,154 bytes, lines 25-33
25callback=null},e.unstable_continueExecution=function(){x||f||(x=!0,U(w))},e.unstable_forceFrameRate=function(B){0>B||125<B?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):C=0<B?Math.floor(1e3/B):5},e.unstable_getCurrentPriorityLevel=function(){return m},e.unstable_getFirstCallbackNode=function(){return n(c)},e.unstable_next=function(B){switch(m){case 1:case 2:case 3:var $=3;break;default:$=m}var z=m;m=$;try{return B()}finally{m=z}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(B,$){switch(B){case 1:case 2:case 3:case 4:case 5:break;default:B=3}var z=m;m=B;try{return $()}finally{m=z}},e.unstable_scheduleCallback=function(B,$,z){var Q=e.unstable_now();switch(typeof z=="object"&&z!==null?(z=z.delay,z=typeof z=="number"&&0<z?Q+z:Q):z=Q,B){case 1:var V=-1;break;case 2:V=250;break;case 5:V=1073741823;break;case 4:V=1e4;break;default:V=5e3}return V=z+V,B={id:u++,callback:$,priorityLevel:B,startTime:z,expirationTime:V,sortIndex:-1},z>Q?(B.sortIndex=z,t(d,B),n(c)===null&&B===n(d)&&(h?(y(I),I=-1):h=!0,W(A,z-Q))):(B.sortIndex=V,t(c,B),x||f||(x=!0,U(w))),B},e.unstable_shouldYield=_,e.unstable_wrapCallback=function(B){var $=m;return function(){var z=m;m=$;try{return B.apply(this,arguments)}finally{m=z}}}})(lP);oP.exports=lP;var PB=oP.exports;/**
26 * @license React
27 * react-dom.production.min.js
28 *
29 * Copyright (c) Facebook, Inc. and its affiliates.
30 *
31 * This source code is licensed under the MIT license found in the
32 * LICENSE file in the root directory of this source tree.
33 */var TB=j,Kn=PB;function J(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var cP=new Set,Id={};function no(e,t){vl(e,t),vl(e+"Capture",t)}function vl(e,t){for(Id[e]=t,e=0;e<t.length;e++)cP.add(t[e])}var Gi=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),My=Object.prototype.hasOwnProperty,DB=/^[: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]*$/,NA={},IA={};function OB(e){return My.call(IA,e)?!0:My.call(NA,e)?!1:DB.test(e)?IA[e]=!0:(NA[e]=!0,!1)}function MB(e,t,n,i){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return i?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function RB(e,t,n,i){if(t===null||typeof t>"u"||MB(e,t,n,i))return!0;if(i)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Cn(e,t,n,i,a,s,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=i,this.attributeNamespace=a,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=o}var cn={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){cn[e]=new Cn(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];cn[t]=new Cn(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){cn[e]=new Cn(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){cn[e]=new Cn(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInl
33ine readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){cn[e]=new Cn(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){cn[e]=new Cn(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){cn[e]=new Cn(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){cn[e]=new Cn(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){cn[e]=new Cn(e,5,!1,e.toLowerCase(),null,!1,!1)});var qw=/[\-:]([a-z])/g;function Gw(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(qw,Gw);cn[t]=new Cn(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(qw,Gw);cn[t]=new Cn(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(qw,Gw);cn[t]=new Cn(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){cn[e]=new Cn(e,1,!1,e.toLowerCase(),null,!1,!1)});cn.xlinkHref=new Cn("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){cn[e]=new Cn(e,1,!1,e.toLowerCase(),null,!0,!0)});function Hw(e,t,n,i){var a=cn.hasOwnProperty(t)?cn[t]:null;(a!==null?a.type!==0:i||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(RB(t,n,a,i)&&(n=null),i||a===null?OB(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):a.mustUseProperty?e[a.propertyName]=n===null?a.type===3?!1:"":n:(t=a.attributeName,i=a.attributeNamespace,n===null?e.removeAttribute(t):(a=a.type,n=a===3||a===4&&n===!0?"":""+n,i?e.setAttributeNS(i,t,n):e.setAttribute(t,n))))}var Xi=TB.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,jp=Symbol.for("react.element"),Io=Symbol.for("react.portal"),So=Symbol.for("react.fragment"),zw=Symbol.for("react.strict_mode"),Ry=Symbol.for("react.profiler"),dP=Symbol.for("react.provider"),uP=Symbol.for("react.context"),Ww=Symbol.for("react.forward_ref"),Ly=Symbol.for("react.suspense"),Fy=Symbol.for("react.suspense_list"),Vw=Symbol.for("react.memo"),ca=Symbol.for("react.lazy"),pP=Symbol.for("react.offscreen"),SA=Symbol.iterator;function wc(e){return e===null||typeof e!="object"?null:(e=SA&&e[SA]||e["@@iterator"],typeof e=="function"?e:null)}var jt=Object.assign,nx;function td(e){if(nx===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);nx=t&&t[1]||""}return`
34`+nx+e}var rx=!1;function ix(e,t){if(!e||rx)return"";rx=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(d){var i=d}Reflect.construct(e,[],t)}else{try{t.call()}catch(d){i=d}e.call(t.prototype)}else{try{throw Error()}catch(d){i=d}e()}}catch(d){if(d&&i&&typeof d.stack=="string"){for(var a=d.stack.split(`
35`),s=i.stack.split(`
36`),o=a.length-1,l=s.length-1;1<=o&&0<=l&&a[o]!==s[l];)l--;for(;1<=o&&0<=l;o--,l--)if(a[o]!==s[l]){if(o!==1||l!==1)do if(o--,l--,0>l||a[o]!==s[l]){var c=`
37`+a[o].replace(" at new "," at ");return e.displayName&&c.includes("<anonymous>")&&(c=c.replace("<anonymous>",e.displayName)),c}while(1<=o&&0<=l);break}}}finally{rx=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?td(e):""}function LB(e){switch(e.tag){case 5:return td(e.type);case 16:return td("Lazy");case 13:return td("Suspense");case 19:return td("SuspenseList");case 0:case 2:case 15:return e=ix(e.type,!1),e;case 11:return e=ix(e.type.render,!1),e;case 1:return e=ix(e.type,!0),e;default:return""}}function By(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case So:return"Fragment";case Io:return"Portal";case Ry:return"Profiler";case zw:return"StrictMode";case Ly:return"Suspense";case Fy:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case uP:return(e.displayName||"Context")+".Consumer";case dP:return(e._context.displayName||"Context")+".Provider";case Ww:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Vw:return t=e.displayName||null,t!==null?t:By(e.type)||"Memo";case ca:t=e._payload,e=e._init;try{return By(e(t))}catch{}}return null}function FB(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return By(t);case 8:return t===zw?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Ua(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function mP(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function BB(e){var t=mP(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),i=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var a=n.get,s=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(o){i=""+o,s.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return i},setValue:function(o){i=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function kp(e){e._valueTracker||(e._valueTracker=BB(e))}function hP(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),i="";return e&&(i=mP(e)?e.checked?"true":"false":e.value),e=i,e!==n?(t.setValue(e),!0):!1}function $m(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function $y(e,t){var n=t.checked;return jt({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function CA(e,t){var n=t.defaultValue==null?"":t.defaultValue,i=t.checked!=null?t.checked:t.defaultChecked;n=Ua(t.value!=null?t.value:n),e._wrapperState={initialChecked:i,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function fP(e,t){t=t.checked,t!=null&&Hw(e,"checked",t,!1)}function Uy(e,t){fP(e,t);var n=Ua(t.value),i=t.type;if(n!=null)i==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(i==="submit"||i==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?qy(e,t.type,n):t.hasOwnProperty("defaultValue")&&qy(e,t.type,Ua(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function EA(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var i=t.type;if(!(i!=="submit"&&i!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}
vendor: 10,125 bytes, line 37
37function qy(e,t,n){(t!=="number"||$m(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var nd=Array.isArray;function qo(e,t,n,i){if(e=e.options,t){t={};for(var a=0;a<n.length;a++)t["$"+n[a]]=!0;for(n=0;n<e.length;n++)a=t.hasOwnProperty("$"+e[n].value),e[n].selected!==a&&(e[n].selected=a),a&&i&&(e[n].defaultSelected=!0)}else{for(n=""+Ua(n),t=null,a=0;a<e.length;a++){if(e[a].value===n){e[a].selected=!0,i&&(e[a].defaultSelected=!0);return}t!==null||e[a].disabled||(t=e[a])}t!==null&&(t.selected=!0)}}function Gy(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(J(91));return jt({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function _A(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(J(92));if(nd(n)){if(1<n.length)throw Error(J(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Ua(n)}}function gP(e,t){var n=Ua(t.value),i=Ua(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),i!=null&&(e.defaultValue=""+i)}function PA(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function xP(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Hy(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?xP(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Np,yP=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,i,a){MSApp.execUnsafeLocalFunction(function(){return e(t,n,i,a)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(Np=Np||document.createElement("div"),Np.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Np.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Sd(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var ud={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},$B=["Webkit","ms","Moz","O"];Object.keys(ud).forEach(function(e){$B.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ud[t]=ud[e]})});function vP(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||ud.hasOwnProperty(e)&&ud[e]?(""+t).trim():t+"px"}function bP(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var i=n.indexOf("--")===0,a=vP(n,t[n],i);n==="float"&&(n="cssFloat"),i?e.setProperty(n,a):e[n]=a}}var UB=jt({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function zy(e,t){if(t){if(UB[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(J(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(J(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(J(61))}if(t.style!=null&&typeof t.style!="object")throw Error(J(62))}}function Wy(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){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 Vy=null;function Kw(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ky=null,Go=null,Ho=null;function TA(e){if(e=Xu(e)){if(typeof Ky!="function")throw Error(J(280));var t=e.stateNode;t&&(t=$f(t),Ky(e.stateNode,e.type,t))}}function wP(e){Go?Ho?Ho.push(e):Ho=[e]:Go=e}function AP(){if(Go){var e=Go,t=Ho;if(Ho=Go=null,TA(e),t)for(e=0;e<t.length;e++)TA(t[e])}}function jP(e,t){return e(t)}function kP(){}var ax=!1;function NP(e,t,n){if(ax)return e(t,n);ax=!0;try{return jP(e,t,n)}finally{ax=!1,(Go!==null||Ho!==null)&&(kP(),AP())}}function Cd(e,t){var n=e.stateNode;if(n===null)return null;var i=$f(n);if(i===null)return null;n=i[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(i=!i.disabled)||(e=e.type,i=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!i;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(J(231,t,typeof n));return n}var Yy=!1;if(Gi)try{var Ac={};Object.defineProperty(Ac,"passive",{get:function(){Yy=!0}}),window.addEventListener("test",Ac,Ac),window.removeEventListener("test",Ac,Ac)}catch{Yy=!1}function qB(e,t,n,i,a,s,o,l,c){var d=Array.prototype.slice.call(arguments,3);try{t.apply(n,d)}catch(u){this.onError(u)}}var pd=!1,Um=null,qm=!1,Qy=null,GB={onError:function(e){pd=!0,Um=e}};function HB(e,t,n,i,a,s,o,l,c){pd=!1,Um=null,qB.apply(GB,arguments)}function zB(e,t,n,i,a,s,o,l,c){if(HB.apply(this,arguments),pd){if(pd){var d=Um;pd=!1,Um=null}else throw Error(J(198));qm||(qm=!0,Qy=d)}}function ro(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function IP(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function DA(e){if(ro(e)!==e)throw Error(J(188))}function WB(e){var t=e.alternate;if(!t){if(t=ro(e),t===null)throw Error(J(188));return t!==e?null:e}for(var n=e,i=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(i=a.return,i!==null){n=i;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return DA(a),e;if(s===i)return DA(a),t;s=s.sibling}throw Error(J(188))}if(n.return!==i.return)n=a,i=s;else{for(var o=!1,l=a.child;l;){if(l===n){o=!0,n=a,i=s;break}if(l===i){o=!0,i=a,n=s;break}l=l.sibling}if(!o){for(l=s.child;l;){if(l===n){o=!0,n=s,i=a;break}if(l===i){o=!0,i=s,n=a;break}l=l.sibling}if(!o)throw Error(J(189))}}if(n.alternate!==i)throw Error(J(190))}if(n.tag!==3)throw Error(J(188));return n.stateNode.current===n?e:t}function SP(e){return e=WB(e),e!==null?CP(e):null}function CP(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=CP(e);if(t!==null)return t;e=e.sibling}return null}var EP=Kn.unstable_scheduleCallback,OA=Kn.unstable_cancelCallback,VB=Kn.unstable_shouldYield,KB=Kn.unstable_requestPaint,Pt=Kn.unstable_now,YB=Kn.unstable_getCurrentPriorityLevel,Yw=Kn.unstable_ImmediatePriority,_P=Kn.unstable_UserBlockingPriority,Gm=Kn.unstable_NormalPriority,QB=Kn.unstable_LowPriority,PP=Kn.unstable_IdlePriority,Rf=null,oi=null;function XB(e){if(oi&&typeof oi.onCommitFiberRoot=="function")try{oi.onCommitFiberRoot(Rf,e,void 0,(e.current.flags&128)===128)}catch{}}var Lr=Math.clz32?Math.clz32:e$,ZB=Math.log,JB=Math.LN2;function e$(e){return e>>>=0,e===0?32:31-(ZB(e)/JB|0)|0}var Ip=64,Sp=4194304;function rd(e){switch(e&-e){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: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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Hm(e,t){var n=e.pendingLanes;if(n===0)return 0;var i=0,a=e.suspendedLanes,s=e.pingedLanes,o=n&268435455;if(o!==0){var l=o&~a;l!==0?i=rd(l):(s&=o,s!==0&&(i=rd(s)))}else o=n&~a,o!==0?i=rd(o):s!==0&&(i=rd(s));if(i===0)return 0;if(t!==0&&t!==i&&!(t&a)&&(a=i&-i,s=t&-t,a>=s||a===16&&(s&4194240)!==0))return t;if(i&4&&(i|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=i;0<t;)n=31-Lr(t),a=1<<n,i|=e[n],t&=~a;return i}function t$(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64: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 t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function n$(e,t){for(var n=e.suspendedLanes,i=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes;0<s;){var o=31-Lr(s),l=1<<o,c=a[o];c===-1?(!(l&n)||l&i)&&(a[o]=t$(l,t)):c<=t&&(e.expiredLanes|=l),s&=~l}}function Xy(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function TP(){var e=Ip;return Ip<<=1,!(Ip&4194240)&&(Ip=64),e}function sx(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Yu(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Lr(t),e[t]=n}function r$(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var i=e.eventTimes;for(e=e.expirationTimes;0<n;){var a=31-Lr(n),s=1<<a;t[a]=0,i[a]=-1,e[a]=-1,n&=~s}}function Qw(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var i=31-Lr(n),a=1<<i;a&t|e[i]&t&&(e[i]|=t),n&=~a}}var Ze=0;function DP(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var OP,Xw,MP,RP,LP,Zy=!1,Cp=[],Ea=null,_a=null,Pa=null,Ed=new Map,_d=new Map,ma=[],i$="mou
37sedown 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 submit".split(" ");function MA(e,t){switch(e){case"focusin":case"focusout":Ea=null;break;case"dragenter":case"dragleave":_a=null;break;case"mouseover":case"mouseout":Pa=null;break;case"pointerover":case"pointerout":Ed.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":_d.delete(t.pointerId)}}function jc(e,t,n,i,a,s){return e===null||e.nativeEvent!==s?(e={blockedOn:t,domEventName:n,eventSystemFlags:i,nativeEvent:s,targetContainers:[a]},t!==null&&(t=Xu(t),t!==null&&Xw(t)),e):(e.eventSystemFlags|=i,t=e.targetContainers,a!==null&&t.indexOf(a)===-1&&t.push(a),e)}function a$(e,t,n,i,a){switch(t){case"focusin":return Ea=jc(Ea,e,t,n,i,a),!0;case"dragenter":return _a=jc(_a,e,t,n,i,a),!0;case"mouseover":return Pa=jc(Pa,e,t,n,i,a),!0;case"pointerover":var s=a.pointerId;return Ed.set(s,jc(Ed.get(s)||null,e,t,n,i,a)),!0;case"gotpointercapture":return s=a.pointerId,_d.set(s,jc(_d.get(s)||null,e,t,n,i,a)),!0}return!1}function FP(e){var t=hs(e.target);if(t!==null){var n=ro(t);if(n!==null){if(t=n.tag,t===13){if(t=IP(n),t!==null){e.blockedOn=t,LP(e.priority,function(){MP(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function vm(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Jy(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var i=new n.constructor(n.type,n);Vy=i,n.target.dispatchEvent(i),Vy=null}else return t=Xu(n),t!==null&&Xw(t),e.blockedOn=n,!1;t.shift()}return!0}function RA(e,t,n){vm(e)&&n.delete(t)}function s$(){Zy=!1,Ea!==null&&vm(Ea)&&(Ea=null),_a!==null&&vm(_a)&&(_a=null),Pa!==null&&vm(Pa)&&(Pa=null),Ed.forEach(RA),_d.forEach(RA)}function kc(e,t){e.blockedOn===t&&(e.blockedOn=null,Zy||(Zy=!0,Kn.unstable_scheduleCallback(Kn.unstable_NormalPriority,s$)))}function Pd(e){function t(a){return kc(a,e)}if(0<Cp.length){kc(Cp[0],e);for(var n=1;n<Cp.length;n++){var i=Cp[n];i.blockedOn===e&&(i.blockedOn=null)}}for(Ea!==null&&kc(Ea,e),_a!==null&&kc(_a,e),Pa!==null&&kc(Pa,e),Ed.forEach(t),_d.forEach(t),n=0;n<ma.length;n++)i=ma[n],i.blockedOn===e&&(i.blockedOn=null);for(;0<ma.length&&(n=ma[0],n.blockedOn===null);)FP(n),n.blockedOn===null&&ma.shift()}var zo=Xi.ReactCurrentBatchConfig,zm=!0;function o$(e,t,n,i){var a=Ze,s=zo.transition;zo.transition=null;try{Ze=1,Zw(e,t,n,i)}finally{Ze=a,zo.transition=s}}function l$(e,t,n,i){var a=Ze,s=zo.transition;zo.transition=null;try{Ze=4,Zw(e,t,n,i)}finally{Ze=a,zo.transition=s}}function Zw(e,t,n,i){if(zm){var a=Jy(e,t,n,i);if(a===null)gx(e,t,i,Wm,n),MA(e,i);else if(a$(a,e,t,n,i))i.stopPropagation();else if(MA(e,i),t&4&&-1<i$.indexOf(e)){for(;a!==null;){var s=Xu(a);if(s!==null&&OP(s),s=Jy(e,t,n,i),s===null&&gx(e,t,i,Wm,n),s===a)break;a=s}a!==null&&i.stopPropagation()}else gx(e,t,i,null,n)}}var Wm=null;function Jy(e,t,n,i){if(Wm=null,e=Kw(i),e=hs(e),e!==null)if(t=ro(e),t===null)e=null;else if(n=t.tag,n===13){if(e=IP(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Wm=e,null}function BP(e){switch(e){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"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 1;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"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(YB()){case Yw:return 1;case _P:return 4;case Gm:case QB:return 16;case PP:return 536870912;default:return 16}default:return 16}}var ka=null,Jw=null,bm=null;function $P(){if(bm)return bm;var e,t=Jw,n=t.length,i,a="value"in ka?ka.value:ka.textContent,s=a.length;for(e=0;e<n&&t[e]===a[e];e++);var o=n-e;for(i=1;i<=o&&t[n-i]===a[s-i];i++);return bm=a.slice(e,1<i?1-i:void 0)}function wm(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Ep(){return!0}function LA(){return!1}function Qn(e){function t(n,i,a,s,o){this._reactName=n,this._targetInst=a,this.type=i,this.nativeEvent=s,this.target=o,this.currentTarget=null;for(var l in e)e.hasOwnProperty(l)&&(n=e[l],this[l]=n?n(s):s[l]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?Ep:LA,this.isPropagationStopped=LA,this}return jt(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Ep)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Ep)},persist:function(){},isPersistent:Ep}),t}var ec={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0}
vendor: 9,510 bytes, line 37
37,e0=Qn(ec),Qu=jt({},ec,{view:0,detail:0}),c$=Qn(Qu),ox,lx,Nc,Lf=jt({},Qu,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:t0,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==Nc&&(Nc&&e.type==="mousemove"?(ox=e.screenX-Nc.screenX,lx=e.screenY-Nc.screenY):lx=ox=0,Nc=e),ox)},movementY:function(e){return"movementY"in e?e.movementY:lx}}),FA=Qn(Lf),d$=jt({},Lf,{dataTransfer:0}),u$=Qn(d$),p$=jt({},Qu,{relatedTarget:0}),cx=Qn(p$),m$=jt({},ec,{animationName:0,elapsedTime:0,pseudoElement:0}),h$=Qn(m$),f$=jt({},ec,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),g$=Qn(f$),x$=jt({},ec,{data:0}),BA=Qn(x$),y$={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},v$={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"},b$={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function w$(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=b$[e])?!!t[e]:!1}function t0(){return w$}var A$=jt({},Qu,{key:function(e){if(e.key){var t=y$[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=wm(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?v$[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:t0,charCode:function(e){return e.type==="keypress"?wm(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?wm(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),j$=Qn(A$),k$=jt({},Lf,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),$A=Qn(k$),N$=jt({},Qu,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:t0}),I$=Qn(N$),S$=jt({},ec,{propertyName:0,elapsedTime:0,pseudoElement:0}),C$=Qn(S$),E$=jt({},Lf,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),_$=Qn(E$),P$=[9,13,27,32],n0=Gi&&"CompositionEvent"in window,md=null;Gi&&"documentMode"in document&&(md=document.documentMode);var T$=Gi&&"TextEvent"in window&&!md,UP=Gi&&(!n0||md&&8<md&&11>=md),UA=" ",qA=!1;function qP(e,t){switch(e){case"keyup":return P$.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function GP(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Co=!1;function D$(e,t){switch(e){case"compositionend":return GP(t);case"keypress":return t.which!==32?null:(qA=!0,UA);case"textInput":return e=t.data,e===UA&&qA?null:e;default:return null}}function O$(e,t){if(Co)return e==="compositionend"||!n0&&qP(e,t)?(e=$P(),bm=Jw=ka=null,Co=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return UP&&t.locale!=="ko"?null:t.data;default:return null}}var M$={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 GA(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!M$[e.type]:t==="textarea"}function HP(e,t,n,i){wP(i),t=Vm(t,"onChange"),0<t.length&&(n=new e0("onChange","change",null,n,i),e.push({event:n,listeners:t}))}var hd=null,Td=null;function R$(e){tT(e,0)}function Ff(e){var t=Po(e);if(hP(t))return e}function L$(e,t){if(e==="change")return t}var zP=!1;if(Gi){var dx;if(Gi){var ux="oninput"in document;if(!ux){var HA=document.createElement("div");HA.setAttribute("oninput","return;"),ux=typeof HA.oninput=="function"}dx=ux}else dx=!1;zP=dx&&(!document.documentMode||9<document.documentMode)}function zA(){hd&&(hd.detachEvent("onpropertychange",WP),Td=hd=null)}function WP(e){if(e.propertyName==="value"&&Ff(Td)){var t=[];HP(t,Td,e,Kw(e)),NP(R$,t)}}function F$(e,t,n){e==="focusin"?(zA(),hd=t,Td=n,hd.attachEvent("onpropertychange",WP)):e==="focusout"&&zA()}function B$(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Ff(Td)}function $$(e,t){if(e==="click")return Ff(t)}function U$(e,t){if(e==="input"||e==="change")return Ff(t)}function q$(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var qr=typeof Object.is=="function"?Object.is:q$;function Dd(e,t){if(qr(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),i=Object.keys(t);if(n.length!==i.length)return!1;for(i=0;i<n.length;i++){var a=n[i];if(!My.call(t,a)||!qr(e[a],t[a]))return!1}return!0}function WA(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function VA(e,t){var n=WA(e);e=0;for(var i;n;){if(n.nodeType===3){if(i=e+n.textContent.length,e<=t&&i>=t)return{node:n,offset:t-e};e=i}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=WA(n)}}function VP(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?VP(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function KP(){for(var e=window,t=$m();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=$m(e.document)}return t}function r0(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function G$(e){var t=KP(),n=e.focusedElem,i=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&VP(n.ownerDocument.documentElement,n)){if(i!==null&&r0(n)){if(t=i.start,e=i.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var a=n.textContent.length,s=Math.min(i.start,a);i=i.end===void 0?s:Math.min(i.end,a),!e.extend&&s>i&&(a=i,i=s,s=a),a=VA(n,s);var o=VA(n,i);a&&o&&(e.rangeCount!==1||e.anchorNode!==a.node||e.anchorOffset!==a.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(a.node,a.offset),e.removeAllRanges(),s>i?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var H$=Gi&&"documentMode"in document&&11>=document.documentMode,Eo=null,ev=null,fd=null,tv=!1;function KA(e,t,n){var i=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;tv||Eo==null||Eo!==$m(i)||(i=Eo,"selectionStart"in i&&r0(i)?i={start:i.selectionStart,end:i.selectionEnd}:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection(),i={anchorNode:i.anchorNode,anchorOffset:i.anchorOffset,focusNode:i.focusNode,focusOffset:i.focusOffset}),fd&&Dd(fd,i)||(fd=i,i=Vm(ev,"onSelect"),0<i.length&&(t=new e0("onSelect","select",null,t,n),e.push({event:t,listeners:i}),t.target=Eo)))}function _p(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var _o={animationend:_p("Animation","AnimationEnd"),animationiteration:_p("Animation","AnimationIteration"),animationstart:_p("Animation","AnimationStart"),transitionend:_p("Transition","TransitionEnd")},px={},YP={};Gi&&(YP=document.createElement("div").style,"AnimationEvent"in window||(delete _o.animationend.animation,delete _o.animationiteration.animation,delete _o.animationstart.animation),"TransitionEvent"in window||delete _o.transitionend.transition);function Bf(e){if(px[e])return px[e];if(!_o[e])return e;var t=_o[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in YP)return px[e]=t[n];return e}var QP=Bf("animationend"),XP=Bf("animationiteration"),ZP=Bf("animationstart"),JP=Bf("transitionend"),eT=new Map,YA="abort auxClick 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(" ");function Qa(e,t){eT.set(e,t),no(t,[e])}for(var mx=0;mx<YA.length;
vendor: 5,326 bytes, line 37
37mx++){var hx=YA[mx],z$=hx.toLowerCase(),W$=hx[0].toUpperCase()+hx.slice(1);Qa(z$,"on"+W$)}Qa(QP,"onAnimationEnd");Qa(XP,"onAnimationIteration");Qa(ZP,"onAnimationStart");Qa("dblclick","onDoubleClick");Qa("focusin","onFocus");Qa("focusout","onBlur");Qa(JP,"onTransitionEnd");vl("onMouseEnter",["mouseout","mouseover"]);vl("onMouseLeave",["mouseout","mouseover"]);vl("onPointerEnter",["pointerout","pointerover"]);vl("onPointerLeave",["pointerout","pointerover"]);no("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));no("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));no("onBeforeInput",["compositionend","keypress","textInput","paste"]);no("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));no("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));no("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var id="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(" "),V$=new Set("cancel close invalid load scroll toggle".split(" ").concat(id));function QA(e,t,n){var i=e.type||"unknown-event";e.currentTarget=n,zB(i,t,void 0,e),e.currentTarget=null}function tT(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var i=e[n],a=i.event;i=i.listeners;e:{var s=void 0;if(t)for(var o=i.length-1;0<=o;o--){var l=i[o],c=l.instance,d=l.currentTarget;if(l=l.listener,c!==s&&a.isPropagationStopped())break e;QA(a,l,d),s=c}else for(o=0;o<i.length;o++){if(l=i[o],c=l.instance,d=l.currentTarget,l=l.listener,c!==s&&a.isPropagationStopped())break e;QA(a,l,d),s=c}}}if(qm)throw e=Qy,qm=!1,Qy=null,e}function dt(e,t){var n=t[sv];n===void 0&&(n=t[sv]=new Set);var i=e+"__bubble";n.has(i)||(nT(t,e,2,!1),n.add(i))}function fx(e,t,n){var i=0;t&&(i|=4),nT(n,e,i,t)}var Pp="_reactListening"+Math.random().toString(36).slice(2);function Od(e){if(!e[Pp]){e[Pp]=!0,cP.forEach(function(n){n!=="selectionchange"&&(V$.has(n)||fx(n,!1,e),fx(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Pp]||(t[Pp]=!0,fx("selectionchange",!1,t))}}function nT(e,t,n,i){switch(BP(t)){case 1:var a=o$;break;case 4:a=l$;break;default:a=Zw}n=a.bind(null,t,n,e),a=void 0,!Yy||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(a=!0),i?a!==void 0?e.addEventListener(t,n,{capture:!0,passive:a}):e.addEventListener(t,n,!0):a!==void 0?e.addEventListener(t,n,{passive:a}):e.addEventListener(t,n,!1)}function gx(e,t,n,i,a){var s=i;if(!(t&1)&&!(t&2)&&i!==null)e:for(;;){if(i===null)return;var o=i.tag;if(o===3||o===4){var l=i.stateNode.containerInfo;if(l===a||l.nodeType===8&&l.parentNode===a)break;if(o===4)for(o=i.return;o!==null;){var c=o.tag;if((c===3||c===4)&&(c=o.stateNode.containerInfo,c===a||c.nodeType===8&&c.parentNode===a))return;o=o.return}for(;l!==null;){if(o=hs(l),o===null)return;if(c=o.tag,c===5||c===6){i=s=o;continue e}l=l.parentNode}}i=i.return}NP(function(){var d=s,u=Kw(n),p=[];e:{var m=eT.get(e);if(m!==void 0){var f=e0,x=e;switch(e){case"keypress":if(wm(n)===0)break e;case"keydown":case"keyup":f=j$;break;case"focusin":x="focus",f=cx;break;case"focusout":x="blur",f=cx;break;case"beforeblur":case"afterblur":f=cx;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":f=FA;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":f=u$;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":f=I$;break;case QP:case XP:case ZP:f=h$;break;case JP:f=C$;break;case"scroll":f=c$;break;case"wheel":f=_$;break;case"copy":case"cut":case"paste":f=g$;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":f=$A}var h=(t&4)!==0,g=!h&&e==="scroll",y=h?m!==null?m+"Capture":null:m;h=[];for(var v=d,b;v!==null;){b=v;var A=b.stateNode;if(b.tag===5&&A!==null&&(b=A,y!==null&&(A=Cd(v,y),A!=null&&h.push(Md(v,A,b)))),g)break;v=v.return}0<h.length&&(m=new f(m,x,null,n,u),p.push({event:m,listeners:h}))}}if(!(t&7)){e:{if(m=e==="mouseover"||e==="pointerover",f=e==="mouseout"||e==="pointerout",m&&n!==Vy&&(x=n.relatedTarget||n.fromElement)&&(hs(x)||x[Hi]))break e;if((f||m)&&(m=u.window===u?u:(m=u.ownerDocument)?m.defaultView||m.parentWindow:window,f?(x=n.relatedTarget||n.toElement,f=d,x=x?hs(x):null,x!==null&&(g=ro(x),x!==g||x.tag!==5&&x.tag!==6)&&(x=null)):(f=null,x=d),f!==x)){if(h=FA,A="onMouseLeave",y="onMouseEnter",v="mouse",(e==="pointerout"||e==="pointerover")&&(h=$A,A="onPointerLeave",y="onPointerEnter",v="pointer"),g=f==null?m:Po(f),b=x==null?m:Po(x),m=new h(A,v+"leave",f,n,u),m.target=g,m.relatedTarget=b,A=null,hs(u)===d&&(h=new h(y,v+"enter",x,n,u),h.target=b,h.relatedTarget=g,A=h),g=A,f&&x)t:{for(h=f,y=x,v=0,b=h;b;b=oo(b))v++;for(b=0,A=y;A;A=oo(A))b++;for(;0<v-b;)h=oo(h),v--;for(;0<b-v;)y=oo(y),b--;for(;v--;){if(h===y||y!==null&&h===y.alternate)break t;h=oo(h),y=oo(y)}h=null}else h=null;f!==null&&XA(p,m,f,h,!1),x!==null&&g!==null&&XA(p,g,x,h,!0)}}
vendor: 4,574 bytes, lines 37-38
37e:{if(m=d?Po(d):window,f=m.nodeName&&m.nodeName.toLowerCase(),f==="select"||f==="input"&&m.type==="file")var w=L$;else if(GA(m))if(zP)w=U$;else{w=B$;var k=F$}else(f=m.nodeName)&&f.toLowerCase()==="input"&&(m.type==="checkbox"||m.type==="radio")&&(w=$$);if(w&&(w=w(e,d))){HP(p,w,n,u);break e}k&&k(e,m,d),e==="focusout"&&(k=m._wrapperState)&&k.controlled&&m.type==="number"&&qy(m,"number",m.value)}switch(k=d?Po(d):window,e){case"focusin":(GA(k)||k.contentEditable==="true")&&(Eo=k,ev=d,fd=null);break;case"focusout":fd=ev=Eo=null;break;case"mousedown":tv=!0;break;case"contextmenu":case"mouseup":case"dragend":tv=!1,KA(p,n,u);break;case"selectionchange":if(H$)break;case"keydown":case"keyup":KA(p,n,u)}var N;if(n0)e:{switch(e){case"compositionstart":var I="onCompositionStart";break e;case"compositionend":I="onCompositionEnd";break e;case"compositionupdate":I="onCompositionUpdate";break e}I=void 0}else Co?qP(e,n)&&(I="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(I="onCompositionStart");I&&(UP&&n.locale!=="ko"&&(Co||I!=="onCompositionStart"?I==="onCompositionEnd"&&Co&&(N=$P()):(ka=u,Jw="value"in ka?ka.value:ka.textContent,Co=!0)),k=Vm(d,I),0<k.length&&(I=new BA(I,e,null,n,u),p.push({event:I,listeners:k}),N?I.data=N:(N=GP(n),N!==null&&(I.data=N)))),(N=T$?D$(e,n):O$(e,n))&&(d=Vm(d,"onBeforeInput"),0<d.length&&(u=new BA("onBeforeInput","beforeinput",null,n,u),p.push({event:u,listeners:d}),u.data=N))}tT(p,t)})}function Md(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Vm(e,t){for(var n=t+"Capture",i=[];e!==null;){var a=e,s=a.stateNode;a.tag===5&&s!==null&&(a=s,s=Cd(e,n),s!=null&&i.unshift(Md(e,s,a)),s=Cd(e,t),s!=null&&i.push(Md(e,s,a))),e=e.return}return i}function oo(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function XA(e,t,n,i,a){for(var s=t._reactName,o=[];n!==null&&n!==i;){var l=n,c=l.alternate,d=l.stateNode;if(c!==null&&c===i)break;l.tag===5&&d!==null&&(l=d,a?(c=Cd(n,s),c!=null&&o.unshift(Md(n,c,l))):a||(c=Cd(n,s),c!=null&&o.push(Md(n,c,l)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var K$=/\r\n?/g,Y$=/\u0000|\uFFFD/g;function ZA(e){return(typeof e=="string"?e:""+e).replace(K$,`
38`).replace(Y$,"")}function Tp(e,t,n){if(t=ZA(t),ZA(e)!==t&&n)throw Error(J(425))}function Km(){}var nv=null,rv=null;function iv(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var av=typeof setTimeout=="function"?setTimeout:void 0,Q$=typeof clearTimeout=="function"?clearTimeout:void 0,JA=typeof Promise=="function"?Promise:void 0,X$=typeof queueMicrotask=="function"?queueMicrotask:typeof JA<"u"?function(e){return JA.resolve(null).then(e).catch(Z$)}:av;function Z$(e){setTimeout(function(){throw e})}function xx(e,t){var n=t,i=0;do{var a=n.nextSibling;if(e.removeChild(n),a&&a.nodeType===8)if(n=a.data,n==="/$"){if(i===0){e.removeChild(a),Pd(t);return}i--}else n!=="$"&&n!=="$?"&&n!=="$!"||i++;n=a}while(n);Pd(t)}function Ta(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function ej(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var tc=Math.random().toString(36).slice(2),ri="__reactFiber$"+tc,Rd="__reactProps$"+tc,Hi="__reactContainer$"+tc,sv="__reactEvents$"+tc,J$="__reactListeners$"+tc,e6="__reactHandles$"+tc;function hs(e){var t=e[ri];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Hi]||n[ri]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=ej(e);e!==null;){if(n=e[ri])return n;e=ej(e)}return t}e=n,n=e.parentNode}return null}function Xu(e){return e=e[ri]||e[Hi],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Po(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(J(33))}function $f(e){return e[Rd]||null}var ov=[],To=-1;function Xa(e){return{current:e}}function mt(e){0>To||(e.current=ov[To],ov[To]=null,To--)}function ot(e,t){To++,ov[To]=e.current,e.current=t}var qa={},gn=Xa(qa),On=Xa(!1),Us=qa;function bl(e,t){var n=e.type.contextTypes;if(!n)return qa;var i=e.stateNode;if(i&&i.__reactInternalMemoizedUnmaskedChildContext===t)return i.__reactInternalMemoizedMaskedChildContext;var a={},s;for(s in n)a[s]=t[s];return i&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a
vendor: 15,590 bytes, line 38
38),a}function Mn(e){return e=e.childContextTypes,e!=null}function Ym(){mt(On),mt(gn)}function tj(e,t,n){if(gn.current!==qa)throw Error(J(168));ot(gn,t),ot(On,n)}function rT(e,t,n){var i=e.stateNode;if(t=t.childContextTypes,typeof i.getChildContext!="function")return n;i=i.getChildContext();for(var a in i)if(!(a in t))throw Error(J(108,FB(e)||"Unknown",a));return jt({},n,i)}function Qm(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||qa,Us=gn.current,ot(gn,e),ot(On,On.current),!0}function nj(e,t,n){var i=e.stateNode;if(!i)throw Error(J(169));n?(e=rT(e,t,Us),i.__reactInternalMemoizedMergedChildContext=e,mt(On),mt(gn),ot(gn,e)):mt(On),ot(On,n)}var Si=null,Uf=!1,yx=!1;function iT(e){Si===null?Si=[e]:Si.push(e)}function t6(e){Uf=!0,iT(e)}function Za(){if(!yx&&Si!==null){yx=!0;var e=0,t=Ze;try{var n=Si;for(Ze=1;e<n.length;e++){var i=n[e];do i=i(!0);while(i!==null)}Si=null,Uf=!1}catch(a){throw Si!==null&&(Si=Si.slice(e+1)),EP(Yw,Za),a}finally{Ze=t,yx=!1}}return null}var Do=[],Oo=0,Xm=null,Zm=0,cr=[],dr=0,qs=null,Di=1,Oi="";function os(e,t){Do[Oo++]=Zm,Do[Oo++]=Xm,Xm=e,Zm=t}function aT(e,t,n){cr[dr++]=Di,cr[dr++]=Oi,cr[dr++]=qs,qs=e;var i=Di;e=Oi;var a=32-Lr(i)-1;i&=~(1<<a),n+=1;var s=32-Lr(t)+a;if(30<s){var o=a-a%5;s=(i&(1<<o)-1).toString(32),i>>=o,a-=o,Di=1<<32-Lr(t)+a|n<<a|i,Oi=s+e}else Di=1<<s|n<<a|i,Oi=e}function i0(e){e.return!==null&&(os(e,1),aT(e,1,0))}function a0(e){for(;e===Xm;)Xm=Do[--Oo],Do[Oo]=null,Zm=Do[--Oo],Do[Oo]=null;for(;e===qs;)qs=cr[--dr],cr[dr]=null,Oi=cr[--dr],cr[dr]=null,Di=cr[--dr],cr[dr]=null}var Wn=null,zn=null,gt=!1,Er=null;function sT(e,t){var n=ur(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function rj(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,Wn=e,zn=Ta(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,Wn=e,zn=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=qs!==null?{id:Di,overflow:Oi}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=ur(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,Wn=e,zn=null,!0):!1;default:return!1}}function lv(e){return(e.mode&1)!==0&&(e.flags&128)===0}function cv(e){if(gt){var t=zn;if(t){var n=t;if(!rj(e,t)){if(lv(e))throw Error(J(418));t=Ta(n.nextSibling);var i=Wn;t&&rj(e,t)?sT(i,n):(e.flags=e.flags&-4097|2,gt=!1,Wn=e)}}else{if(lv(e))throw Error(J(418));e.flags=e.flags&-4097|2,gt=!1,Wn=e}}}function ij(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;Wn=e}function Dp(e){if(e!==Wn)return!1;if(!gt)return ij(e),gt=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!iv(e.type,e.memoizedProps)),t&&(t=zn)){if(lv(e))throw oT(),Error(J(418));for(;t;)sT(e,t),t=Ta(t.nextSibling)}if(ij(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(J(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){zn=Ta(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}zn=null}}else zn=Wn?Ta(e.stateNode.nextSibling):null;return!0}function oT(){for(var e=zn;e;)e=Ta(e.nextSibling)}function wl(){zn=Wn=null,gt=!1}function s0(e){Er===null?Er=[e]:Er.push(e)}var n6=Xi.ReactCurrentBatchConfig;function Ic(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(J(309));var i=n.stateNode}if(!i)throw Error(J(147,e));var a=i,s=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===s?t.ref:(t=function(o){var l=a.refs;o===null?delete l[s]:l[s]=o},t._stringRef=s,t)}if(typeof e!="string")throw Error(J(284));if(!n._owner)throw Error(J(290,e))}return e}function Op(e,t){throw e=Object.prototype.toString.call(t),Error(J(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function aj(e){var t=e._init;return t(e._payload)}function lT(e){function t(y,v){if(e){var b=y.deletions;b===null?(y.deletions=[v],y.flags|=16):b.push(v)}}function n(y,v){if(!e)return null;for(;v!==null;)t(y,v),v=v.sibling;return null}function i(y,v){for(y=new Map;v!==null;)v.key!==null?y.set(v.key,v):y.set(v.index,v),v=v.sibling;return y}function a(y,v){return y=Ra(y,v),y.index=0,y.sibling=null,y}function s(y,v,b){return y.index=b,e?(b=y.alternate,b!==null?(b=b.index,b<v?(y.flags|=2,v):b):(y.flags|=2,v)):(y.flags|=1048576,v)}function o(y){return e&&y.alternate===null&&(y.flags|=2),y}function l(y,v,b,A){return v===null||v.tag!==6?(v=Nx(b,y.mode,A),v.return=y,v):(v=a(v,b),v.return=y,v)}function c(y,v,b,A){var w=b.type;return w===So?u(y,v,b.props.children,A,b.key):v!==null&&(v.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===ca&&aj(w)===v.type)?(A=a(v,b.props),A.ref=Ic(y,v,b),A.return=y,A):(A=Cm(b.type,b.key,b.props,null,y.mode,A),A.ref=Ic(y,v,b),A.return=y,A)}function d(y,v,b,A){return v===null||v.tag!==4||v.stateNode.containerInfo!==b.containerInfo||v.stateNode.implementation!==b.implementation?(v=Ix(b,y.mode,A),v.return=y,v):(v=a(v,b.children||[]),v.return=y,v)}function u(y,v,b,A,w){return v===null||v.tag!==7?(v=Ds(b,y.mode,A,w),v.return=y,v):(v=a(v,b),v.return=y,v)}function p(y,v,b){if(typeof v=="string"&&v!==""||typeof v=="number")return v=Nx(""+v,y.mode,b),v.return=y,v;if(typeof v=="object"&&v!==null){switch(v.$$typeof){case jp:return b=Cm(v.type,v.key,v.props,null,y.mode,b),b.ref=Ic(y,null,v),b.return=y,b;case Io:return v=Ix(v,y.mode,b),v.return=y,v;case ca:var A=v._init;return p(y,A(v._payload),b)}if(nd(v)||wc(v))return v=Ds(v,y.mode,b,null),v.return=y,v;Op(y,v)}return null}function m(y,v,b,A){var w=v!==null?v.key:null;if(typeof b=="string"&&b!==""||typeof b=="number")return w!==null?null:l(y,v,""+b,A);if(typeof b=="object"&&b!==null){switch(b.$$typeof){case jp:return b.key===w?c(y,v,b,A):null;case Io:return b.key===w?d(y,v,b,A):null;case ca:return w=b._init,m(y,v,w(b._payload),A)}if(nd(b)||wc(b))return w!==null?null:u(y,v,b,A,null);Op(y,b)}return null}function f(y,v,b,A,w){if(typeof A=="string"&&A!==""||typeof A=="number")return y=y.get(b)||null,l(v,y,""+A,w);if(typeof A=="object"&&A!==null){switch(A.$$typeof){case jp:return y=y.get(A.key===null?b:A.key)||null,c(v,y,A,w);case Io:return y=y.get(A.key===null?b:A.key)||null,d(v,y,A,w);case ca:var k=A._init;return f(y,v,b,k(A._payload),w)}if(nd(A)||wc(A))return y=y.get(b)||null,u(v,y,A,w,null);Op(v,A)}return null}function x(y,v,b,A){for(var w=null,k=null,N=v,I=v=0,C=null;N!==null&&I<b.length;I++){N.index>I?(C=N,N=null):C=N.sibling;var O=m(y,N,b[I],A);if(O===null){N===null&&(N=C);break}e&&N&&O.alternate===null&&t(y,N),v=s(O,v,I),k===null?w=O:k.sibling=O,k=O,N=C}if(I===b.length)return n(y,N),gt&&os(y,I),w;if(N===null){for(;I<b.length;I++)N=p(y,b[I],A),N!==null&&(v=s(N,v,I),k===null?w=N:k.sibling=N,k=N);return gt&&os(y,I),w}for(N=i(y,N);I<b.length;I++)C=f(N,y,I,b[I],A),C!==null&&(e&&C.alternate!==null&&N.delete(C.key===null?I:C.key),v=s(C,v,I),k===null?w=C:k.sibling=C,k=C);return e&&N.forEach(function(_){return t(y,_)}),gt&&os(y,I),w}function h(y,v,b,A){var w=wc(b);if(typeof w!="function")throw Error(J(150));if(b=w.call(b),b==null)throw Error(J(151));for(var k=w=null,N=v,I=v=0,C=null,O=b.next();N!==null&&!O.done;I++,O=b.next()){N.index>I?(C=N,N=null):C=N.sibling;var _=m(y,N,O.value,A);if(_===null){N===null&&(N=C);break}e&&N&&_.alternate===null&&t(y,N),v=s(_,v,I),k===null?w=_:k.sibling=_,k=_,N=C}if(O.done)return n(y,N),gt&&os(y,I),w;if(N===null){for(;!O.done;I++,O=b.next())O=p(y,O.value,A),O!==null&&(v=s(O,v,I),k===null?w=O:k.sibling=O,k=O);return gt&&os(y,I),w}for(N=i(y,N);!O.done;I++,O=b.next())O=f(N,y,I,O.value,A),O!==null&&(e&&O.alternate!==null&&N.delete(O.key===null?I:O.key),v=s(O,v,I),k===null?w=O:k.sibling=O,k=O);return e&&N.forEach(function(D){return t(y,D)}),gt&&os(y,I),w}function g(y,v,b,A){if(typeof b=="object"&&b!==null&&b.type===So&&b.key===null&&(b=b.props.children),typeof b=="object"&&b!==null){switch(b.$$typeof){case jp:e:{for(var w=b.key,k=v;k!==null;){if(k.key===w){if(w=b.type,w===So){if(k.tag===7){n(y,k.sibling),v=a(k,b.props.children),v.return=y,y=v;break e}}else if(k.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===ca&&aj(w)===k.type){n(y,k.sibling),v=a(k,b.props),v.ref=Ic(y,k,b),v.return=y,y=v;break e}n(y,k);break}else t(y,k);k=k.sibling}b.type===So?(v=Ds(b.props.children,y.mode,A,b.key),v.return=y,y=v):(A=Cm(b.type,b.key,b.props,null,y.mode,A),A.ref=Ic(y,v,b),A.return=y,y=A)}return o(y);case Io:e:{for(k=b.key;v!==null;){if(v.key===k)if(v.tag===4&&v.stateNode.containerInfo===b.containerInfo&&v.stateNode.implementation===b.implementation){n(y,v.sibling),v=a(v,b.children||[]),v.return=y,y=v;break e}else{n(y,v);break}else t(y,v);v=v.sibling}v=Ix(b,y.mode,A),v.return=y,y=v}return o(y);case ca:return k=b._init,g(y,v,k(b._payload),A)}if(nd(b))return x(y,v,b,A);if(wc(b))return h(y,v,b,A);Op(y,b)}return typeof b=="string"&&b!==""||typeof b=="number"?(b=""+b,v!==null&&v.tag===6?(n(y,v.sibling),v=a(v,b),v.return=y,y=v):(n(y,v),v=Nx(b,y.mode,A),v.return=y,y=v),o(y)):n(y,v)}return g}var Al=lT(!0),cT=lT(!1),Jm=Xa(null),eh=null,Mo=null,o0=null;function l0(){o0=Mo=eh=null}function c0(e){var t=Jm.current;mt(Jm),e._currentValue=t}function dv(e,t,n){for(;e!==null;){var i=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,i!==null&&(i.childLanes|=t)):i!==null&&(i.childLanes&t)!==t&&(i.childLanes|=t),e===n)break;e=e.return}}function Wo(e,t){eh=e,o0=Mo=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Tn=!0),e.firstContext=null)}function fr(e){var t=e._currentValue;if(o0!==e)if(e={context:e,memoizedValue:t,next:null},Mo===null){if(eh===null)throw Error(J(308));Mo=e,eh.dependencies={lanes:0,firstContext:e}}else Mo=Mo.next=e;return t}var fs=null;function d0(e){fs===null?fs=[e]:fs.push(e)}function dT(e,t,n,i){var a=t.interleaved;return a===null?(n.next=n,d0(t)):(n.next=a.next,a.next=n),t.interleaved=n,zi(e,i)}function zi(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var da=!1;function u0(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function uT(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Fi(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Da(e,t,n){var i=e.updateQueue;if(i===null)return null;if(i=i.shared,$e&2){var a=i.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),i.pending=t,zi(e,n)}return a=i.interleaved,a===null?(t.next=t,d0(i)):(t.next=a.next,a.next=t),i.interleaved=t,zi(e,n)}function Am(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var i=t.lanes;i&=e.pendingLanes,n|=i,t.lanes=n,Qw(e,n)}}function sj(e,t){var n=e.updateQueue,i=e.alternate;if(i!==null&&(i=i.updateQueue,n===i)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:i.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:i.shared,effects:i.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function th(e,t,n,i){var a=e.updateQueue;da=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,l=a.shared.pending;if(l!==null){a.shared.pending=null;var c=l,d=c.next;c.next=null,o===null?s=d:o.next=d,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,l=u.lastBaseUpdate,l!==o&&(l===null?u.firstBaseUpdate=d:l.next=d,u.lastBaseUpdate=c))}if(s!==null){var p=a.baseState;o=0,u=d=c=null,l=s;do{var m=l.lane,f=l.eventTime;if((i&m)===m){u!==null&&(u=u.next={eventTime:f,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var x=e,h=l;switch(m=t,f=n,h.tag){case 1:if(x=h.payload,typeof x=="function"){p=x.call(f,p,m);break e}p=x;break e;case 3:x.flags=x.flags&-65537|128;case 0:if(x=h.payload,m=typeof x=="function"?x.call(f,p,m):x,m==null)break e;p=jt({},p,m);break e;case 2:da=!0}}l.callback!==null&&l.lane!==0&&(e.flags|=64,m=a.effects,m===null?a.effects=[l]:m.push(l))}else f={eventTime:f,lane:m,tag:l.tag,payload:l.payload,callback:l.callback,next:null},u===null?(d=u=f,c=p):u=u.next=f,o|=m;if(l=l.next,l===null){if(l=a.shared.pending,l===null)break;m=l,l=m.next,m.next=null,a.lastBaseUpdate=m,a.shared.pending=null}}while(!0);if(u===null&&(c=p),a.baseState=c,a.firstBaseUpdate=d,a.lastBaseUpdate=u,t=a.shared.interleaved,t!==null){a=t;do o|=a.lane,a=a.next;while(a!==t)}else s===null&&(a.shared.lanes=0);Hs|=o,e.lanes=o,e.memoizedState=p}}function oj(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var i=e[t],a=i.callback;if(a!==null){if(i.callback=null,i=n,typeof a!="function")throw Error(J(191,a));a.call(i)}}}var Zu={},li=Xa(Zu),Ld=Xa(Zu),Fd=Xa(Zu);function gs(e){if(e===Zu)throw Error(J(174));return e}function p0(e,t){switch(ot(Fd,t),ot(Ld,e),ot(li,Zu),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Hy(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Hy(t,e)}mt(li),ot(li,t)}function jl(){mt(li),mt(Ld),mt(Fd)}function pT(e){gs(Fd.current);var t=gs(li.current),n=Hy(t,e.type);t!==n&&(ot(Ld,e),ot(li,n))}function m0(e){Ld.current===e&&(mt(li),mt(Ld))}var wt=Xa(0);function nh(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var vx=[];function h0(){for(var e=0;e<vx.length;e++)vx[e]._workInProgressVersionPrimary=null;vx.length=0}var jm=Xi.ReactCurrentDispatcher,bx=Xi.ReactCurrentBatchConfig,Gs=0,At=null,Bt=null,Kt=null,rh=!1,gd=!1,Bd=0,r6=0;function dn(){throw Error(J(321))}function f0(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!qr(e[n],t[n]))return!1;return!0}function g0(e,t,n,i,a,s){if(Gs=s,At=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,jm.current=e===null||e.memoizedState===null?o6:l6,e=n(i,a),gd){s=0;do{if(gd=!1,Bd=0,25<=s)throw Error(J(301));s+=1,Kt=Bt=null,t.updateQueue=null,jm.current=c6,e=n(i,a)}while(gd)}if(jm.current=ih,t=Bt!==null&&Bt.next!==null,Gs=0,Kt=Bt=At=null,rh=!1,t)throw Error(J(300));return e}function x0(){var e=Bd!==0;return Bd=0,e}function Zr(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Kt===null?At.memoizedState=Kt=e:Kt=Kt.next=e,Kt}function gr(){if(Bt===null){var e=At.alternate;e=e!==null?e.memoizedState:null}else e=Bt.next;var t=Kt===null?At.memoizedState:Kt.next;if(t!==null)Kt=t,Bt=e;else{if(e===null)throw Error(J(310));Bt=e,e={memoizedState:Bt.memoizedState,baseState:Bt.baseState,baseQueue:Bt.baseQueue,queue:Bt.queue,next:null},Kt===null?At.memoizedState=Kt=e:Kt=Kt.next=e}return Kt}function $d(e,t){return typeof t=="function"?t(e):t}function wx(e){var t=gr(),n=t.queue;if(n===null)throw Error(J(311));n.lastRenderedReducer=e;var i=Bt,a=i.baseQueue,s=n.pending;if(s!==null){if(a!==null){var o=a.next;
vendor: 5,614 bytes, line 38
38a.next=s.next,s.next=o}i.baseQueue=a=s,n.pending=null}if(a!==null){s=a.next,i=i.baseState;var l=o=null,c=null,d=s;do{var u=d.lane;if((Gs&u)===u)c!==null&&(c=c.next={lane:0,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null}),i=d.hasEagerState?d.eagerState:e(i,d.action);else{var p={lane:u,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null};c===null?(l=c=p,o=i):c=c.next=p,At.lanes|=u,Hs|=u}d=d.next}while(d!==null&&d!==s);c===null?o=i:c.next=l,qr(i,t.memoizedState)||(Tn=!0),t.memoizedState=i,t.baseState=o,t.baseQueue=c,n.lastRenderedState=i}if(e=n.interleaved,e!==null){a=e;do s=a.lane,At.lanes|=s,Hs|=s,a=a.next;while(a!==e)}else a===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Ax(e){var t=gr(),n=t.queue;if(n===null)throw Error(J(311));n.lastRenderedReducer=e;var i=n.dispatch,a=n.pending,s=t.memoizedState;if(a!==null){n.pending=null;var o=a=a.next;do s=e(s,o.action),o=o.next;while(o!==a);qr(s,t.memoizedState)||(Tn=!0),t.memoizedState=s,t.baseQueue===null&&(t.baseState=s),n.lastRenderedState=s}return[s,i]}function mT(){}function hT(e,t){var n=At,i=gr(),a=t(),s=!qr(i.memoizedState,a);if(s&&(i.memoizedState=a,Tn=!0),i=i.queue,y0(xT.bind(null,n,i,e),[e]),i.getSnapshot!==t||s||Kt!==null&&Kt.memoizedState.tag&1){if(n.flags|=2048,Ud(9,gT.bind(null,n,i,a,t),void 0,null),Xt===null)throw Error(J(349));Gs&30||fT(n,t,a)}return a}function fT(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=At.updateQueue,t===null?(t={lastEffect:null,stores:null},At.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function gT(e,t,n,i){t.value=n,t.getSnapshot=i,yT(t)&&vT(e)}function xT(e,t,n){return n(function(){yT(t)&&vT(e)})}function yT(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!qr(e,n)}catch{return!0}}function vT(e){var t=zi(e,1);t!==null&&Fr(t,e,1,-1)}function lj(e){var t=Zr();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:$d,lastRenderedState:e},t.queue=e,e=e.dispatch=s6.bind(null,At,e),[t.memoizedState,e]}function Ud(e,t,n,i){return e={tag:e,create:t,destroy:n,deps:i,next:null},t=At.updateQueue,t===null?(t={lastEffect:null,stores:null},At.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(i=n.next,n.next=e,e.next=i,t.lastEffect=e)),e}function bT(){return gr().memoizedState}function km(e,t,n,i){var a=Zr();At.flags|=e,a.memoizedState=Ud(1|t,n,void 0,i===void 0?null:i)}function qf(e,t,n,i){var a=gr();i=i===void 0?null:i;var s=void 0;if(Bt!==null){var o=Bt.memoizedState;if(s=o.destroy,i!==null&&f0(i,o.deps)){a.memoizedState=Ud(t,n,s,i);return}}At.flags|=e,a.memoizedState=Ud(1|t,n,s,i)}function cj(e,t){return km(8390656,8,e,t)}function y0(e,t){return qf(2048,8,e,t)}function wT(e,t){return qf(4,2,e,t)}function AT(e,t){return qf(4,4,e,t)}function jT(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function kT(e,t,n){return n=n!=null?n.concat([e]):null,qf(4,4,jT.bind(null,t,e),n)}function v0(){}function NT(e,t){var n=gr();t=t===void 0?null:t;var i=n.memoizedState;return i!==null&&t!==null&&f0(t,i[1])?i[0]:(n.memoizedState=[e,t],e)}function IT(e,t){var n=gr();t=t===void 0?null:t;var i=n.memoizedState;return i!==null&&t!==null&&f0(t,i[1])?i[0]:(e=e(),n.memoizedState=[e,t],e)}function ST(e,t,n){return Gs&21?(qr(n,t)||(n=TP(),At.lanes|=n,Hs|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Tn=!0),e.memoizedState=n)}function i6(e,t){var n=Ze;Ze=n!==0&&4>n?n:4,e(!0);var i=bx.transition;bx.transition={};try{e(!1),t()}finally{Ze=n,bx.transition=i}}function CT(){return gr().memoizedState}function a6(e,t,n){var i=Ma(e);if(n={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null},ET(e))_T(t,n);else if(n=dT(e,t,n,i),n!==null){var a=Nn();Fr(n,e,i,a),PT(n,t,i)}}function s6(e,t,n){var i=Ma(e),a={lane:i,action:n,hasEagerState:!1,eagerState:null,next:null};if(ET(e))_T(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,l=s(o,n);if(a.hasEagerState=!0,a.eagerState=l,qr(l,o)){var c=t.interleaved;c===null?(a.next=a,d0(t)):(a.next=c.next,c.next=a),t.interleaved=a;return}}catch{}finally{}n=dT(e,t,a,i),n!==null&&(a=Nn(),Fr(n,e,i,a),PT(n,t,i))}}function ET(e){var t=e.alternate;return e===At||t!==null&&t===At}function _T(e,t){gd=rh=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function PT(e,t,n){if(n&4194240){var i=t.lanes;i&=e.pendingLanes,n|=i,t.lanes=n,Qw(e,n)}}var ih={readContext:fr,useCallback:dn,useContext:dn,useEffect:dn,useImperativeHandle:dn,useInsertionEffect:dn,useLayoutEffect:dn,useMemo:dn,useReducer:dn,useRef:dn,useState:dn,useDebugValue:dn,useDeferredValue:dn,useTransition:dn,useMutableSource:dn,useSyncExternalStore:dn,useId:dn,unstable_isNewReconciler:!1},o6={readContext:fr,useCallback:function(e,t){return Zr().memoizedState=[e,t===void 0?null:t],e},useContext:fr,useEffect:cj,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,km(4194308,4,jT.bind(null,t,e),n)},useLayoutEffect:function(e,t){return km(4194308,4,e,t)},useInsertionEffect:function(e,t){return km(4,2,e,t)},useMemo:function(e,t){var n=Zr();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var i=Zr();return t=n!==void 0?n(t):t,i.memoizedState=i.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},i.queue=e,e=e.dispatch=a6.bind(null,At,e),[i.memoizedState,e]}
vendor: 7,431 bytes, lines 38-40
38,useRef:function(e){var t=Zr();return e={current:e},t.memoizedState=e},useState:lj,useDebugValue:v0,useDeferredValue:function(e){return Zr().memoizedState=e},useTransition:function(){var e=lj(!1),t=e[0];return e=i6.bind(null,e[1]),Zr().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var i=At,a=Zr();if(gt){if(n===void 0)throw Error(J(407));n=n()}else{if(n=t(),Xt===null)throw Error(J(349));Gs&30||fT(i,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,cj(xT.bind(null,i,s,e),[e]),i.flags|=2048,Ud(9,gT.bind(null,i,s,n,t),void 0,null),n},useId:function(){var e=Zr(),t=Xt.identifierPrefix;if(gt){var n=Oi,i=Di;n=(i&~(1<<32-Lr(i)-1)).toString(32)+n,t=":"+t+"R"+n,n=Bd++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=r6++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},l6={readContext:fr,useCallback:NT,useContext:fr,useEffect:y0,useImperativeHandle:kT,useInsertionEffect:wT,useLayoutEffect:AT,useMemo:IT,useReducer:wx,useRef:bT,useState:function(){return wx($d)},useDebugValue:v0,useDeferredValue:function(e){var t=gr();return ST(t,Bt.memoizedState,e)},useTransition:function(){var e=wx($d)[0],t=gr().memoizedState;return[e,t]},useMutableSource:mT,useSyncExternalStore:hT,useId:CT,unstable_isNewReconciler:!1},c6={readContext:fr,useCallback:NT,useContext:fr,useEffect:y0,useImperativeHandle:kT,useInsertionEffect:wT,useLayoutEffect:AT,useMemo:IT,useReducer:Ax,useRef:bT,useState:function(){return Ax($d)},useDebugValue:v0,useDeferredValue:function(e){var t=gr();return Bt===null?t.memoizedState=e:ST(t,Bt.memoizedState,e)},useTransition:function(){var e=Ax($d)[0],t=gr().memoizedState;return[e,t]},useMutableSource:mT,useSyncExternalStore:hT,useId:CT,unstable_isNewReconciler:!1};function kr(e,t){if(e&&e.defaultProps){t=jt({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function uv(e,t,n,i){t=e.memoizedState,n=n(i,t),n=n==null?t:jt({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Gf={isMounted:function(e){return(e=e._reactInternals)?ro(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var i=Nn(),a=Ma(e),s=Fi(i,a);s.payload=t,n!=null&&(s.callback=n),t=Da(e,s,a),t!==null&&(Fr(t,e,a,i),Am(t,e,a))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var i=Nn(),a=Ma(e),s=Fi(i,a);s.tag=1,s.payload=t,n!=null&&(s.callback=n),t=Da(e,s,a),t!==null&&(Fr(t,e,a,i),Am(t,e,a))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Nn(),i=Ma(e),a=Fi(n,i);a.tag=2,t!=null&&(a.callback=t),t=Da(e,a,i),t!==null&&(Fr(t,e,i,n),Am(t,e,i))}};function dj(e,t,n,i,a,s,o){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(i,s,o):t.prototype&&t.prototype.isPureReactComponent?!Dd(n,i)||!Dd(a,s):!0}function TT(e,t,n){var i=!1,a=qa,s=t.contextType;return typeof s=="object"&&s!==null?s=fr(s):(a=Mn(t)?Us:gn.current,i=t.contextTypes,s=(i=i!=null)?bl(e,a):qa),t=new t(n,s),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Gf,e.stateNode=t,t._reactInternals=e,i&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=s),t}function uj(e,t,n,i){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,i),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,i),t.state!==e&&Gf.enqueueReplaceState(t,t.state,null)}function pv(e,t,n,i){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs={},u0(e);var s=t.contextType;typeof s=="object"&&s!==null?a.context=fr(s):(s=Mn(t)?Us:gn.current,a.context=bl(e,s)),a.state=e.memoizedState,s=t.getDerivedStateFromProps,typeof s=="function"&&(uv(e,t,s,n),a.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof a.getSnapshotBeforeUpdate=="function"||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(t=a.state,typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount(),t!==a.state&&Gf.enqueueReplaceState(a,a.state,null),th(e,n,a,i),a.state=e.memoizedState),typeof a.componentDidMount=="function"&&(e.flags|=4194308)}function kl(e,t){try{var n="",i=t;do n+=LB(i),i=i.return;while(i);var a=n}catch(s){a=`
39Error generating stack: `+s.message+`
40`+s.stack}return{value:e,source:t,stack:a,digest:null}}function jx(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function mv(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var d6=typeof WeakMap=="function"?WeakMap:Map;function DT(e,t,n){n=Fi(-1,n),n.tag=3,n.payload={element:null};var i=t.value;return n.callback=function(){sh||(sh=!0,jv=i),mv(e,t)},n}function OT(e,t,n){n=Fi(-1,n),n.tag=3;var i=e.type.getDerivedStateFromError;if(typeof i=="function"){var a=t.value;n.payload=function(){return i(a)},n.callback=function(){mv(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){mv(e,t),typeof i!="function"&&(Oa===null?Oa=new Set([this]):Oa.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}function pj(e,t,n){var i=e.pingCache;if(i===null){i=e.pingCache=new d6;var a=new Set;i.set(t,a)}else a=i.get(t),a===void 0&&(a=new Set,i.set(t,a));a.has(n)||(a.add(n),e=k6.bind(null,e,t,n),t.then(e,e))}function mj(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function hj(e,t,n,i,a){return e.mode&1?(e.flags|=65536,e.lanes=a,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=Fi(-1,1),t.tag=2,Da(n,t,1))),n.lanes|=1),e)}var u6=Xi.ReactCurrentOwner,Tn=!1;function An(e,t,n,i){t.child=e===null?cT(t,null,n,i):Al(t,e.child,n,i)}function fj(e,t,n,i,a){n=n.render;var s=t.ref;return Wo(t,a),i=g0(e,t,n,i,s,a),n=x0(),e!==null&&!Tn?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a,Wi(e,t,a)):(gt&&n&&i0(t),t.flags|=1,An(e,t,i,a),t.child)}function gj(e,t,n,i,a){if(e===null){var s=n.type;return typeof s=="function"&&!S0(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=s,MT(e,t,s,i,a)):(e=Cm(n.type,null,i,t,t.mode,a),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,!(e.lanes&a)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:Dd,n(o,i)&&e.ref===t.ref)return Wi(e,t,a)}return t.flags|=1,e=Ra(s,i),e.ref=t.ref,e.return=t,t.child=e}function MT(e,t,n,i,a){if(e!==null){var s=e.memoizedProps;if(Dd(s,i)&&e.ref===t.ref)if(Tn=!1,t.pendingProps=i=s,(e.lanes&a)!==0)e.flags&131072&&(Tn=!0);else return t.lanes=e.lanes,Wi(e,t,a)}return hv(e,t,n,i,a)}function RT(e,t,n){var i=t.pendingProps,a=i.children,s=e!==null?e.memoizedState:null;if(i.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},ot(Lo,qn),qn|=n;else{if(!(n&1073741824))return e=s!==null?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,ot(Lo,qn),qn|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},i=s!==null?s.baseLanes:n,ot(Lo,qn),qn|=i}else s!==null?(i=s.baseLanes|n,t.memoizedState=null):i=n,ot(Lo,qn),qn|=i;return An(e,t,a,n),t.child}function LT(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}
vendor: 6,638 bytes, line 40
40function hv(e,t,n,i,a){var s=Mn(n)?Us:gn.current;return s=bl(t,s),Wo(t,a),n=g0(e,t,n,i,s,a),i=x0(),e!==null&&!Tn?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a,Wi(e,t,a)):(gt&&i&&i0(t),t.flags|=1,An(e,t,n,a),t.child)}function xj(e,t,n,i,a){if(Mn(n)){var s=!0;Qm(t)}else s=!1;if(Wo(t,a),t.stateNode===null)Nm(e,t),TT(t,n,i),pv(t,n,i,a),i=!0;else if(e===null){var o=t.stateNode,l=t.memoizedProps;o.props=l;var c=o.context,d=n.contextType;typeof d=="object"&&d!==null?d=fr(d):(d=Mn(n)?Us:gn.current,d=bl(t,d));var u=n.getDerivedStateFromProps,p=typeof u=="function"||typeof o.getSnapshotBeforeUpdate=="function";p||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==i||c!==d)&&uj(t,o,i,d),da=!1;var m=t.memoizedState;o.state=m,th(t,i,o,a),c=t.memoizedState,l!==i||m!==c||On.current||da?(typeof u=="function"&&(uv(t,n,u,i),c=t.memoizedState),(l=da||dj(t,n,l,i,m,c,d))?(p||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=i,t.memoizedState=c),o.props=i,o.state=c,o.context=d,i=l):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),i=!1)}else{o=t.stateNode,uT(e,t),l=t.memoizedProps,d=t.type===t.elementType?l:kr(t.type,l),o.props=d,p=t.pendingProps,m=o.context,c=n.contextType,typeof c=="object"&&c!==null?c=fr(c):(c=Mn(n)?Us:gn.current,c=bl(t,c));var f=n.getDerivedStateFromProps;(u=typeof f=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==p||m!==c)&&uj(t,o,i,c),da=!1,m=t.memoizedState,o.state=m,th(t,i,o,a);var x=t.memoizedState;l!==p||m!==x||On.current||da?(typeof f=="function"&&(uv(t,n,f,i),x=t.memoizedState),(d=da||dj(t,n,d,i,m,x,c)||!1)?(u||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(i,x,c),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(i,x,c)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=i,t.memoizedState=x),o.props=i,o.state=x,o.context=c,i=d):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),i=!1)}return fv(e,t,n,i,s,a)}function fv(e,t,n,i,a,s){LT(e,t);var o=(t.flags&128)!==0;if(!i&&!o)return a&&nj(t,n,!1),Wi(e,t,s);i=t.stateNode,u6.current=t;var l=o&&typeof n.getDerivedStateFromError!="function"?null:i.render();return t.flags|=1,e!==null&&o?(t.child=Al(t,e.child,null,s),t.child=Al(t,null,l,s)):An(e,t,l,s),t.memoizedState=i.state,a&&nj(t,n,!0),t.child}function FT(e){var t=e.stateNode;t.pendingContext?tj(e,t.pendingContext,t.pendingContext!==t.context):t.context&&tj(e,t.context,!1),p0(e,t.containerInfo)}function yj(e,t,n,i,a){return wl(),s0(a),t.flags|=256,An(e,t,n,i),t.child}var gv={dehydrated:null,treeContext:null,retryLane:0};function xv(e){return{baseLanes:e,cachePool:null,transitions:null}}function BT(e,t,n){var i=t.pendingProps,a=wt.current,s=!1,o=(t.flags&128)!==0,l;if((l=o)||(l=e!==null&&e.memoizedState===null?!1:(a&2)!==0),l?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(a|=1),ot(wt,a&1),e===null)return cv(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=i.children,e=i.fallback,s?(i=t.mode,s=t.child,o={mode:"hidden",children:o},!(i&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=Wf(o,i,0,null),e=Ds(e,i,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=xv(n),t.memoizedState=gv,e):b0(t,o));if(a=e.memoizedState,a!==null&&(l=a.dehydrated,l!==null))return p6(e,t,o,i,l,a,n);if(s){s=i.fallback,o=t.mode,a=e.child,l=a.sibling;var c={mode:"hidden",children:i.children};return!(o&1)&&t.child!==a?(i=t.child,i.childLanes=0,i.pendingProps=c,t.deletions=null):(i=Ra(a,c),i.subtreeFlags=a.subtreeFlags&14680064),l!==null?s=Ra(l,s):(s=Ds(s,o,n,null),s.flags|=2),s.return=t,i.return=t,i.sibling=s,t.child=i,i=s,s=t.child,o=e.child.memoizedState,o=o===null?xv(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=e.childLanes&~n,t.memoizedState=gv,i}return s=e.child,e=s.sibling,i=Ra(s,{mode:"visible",children:i.children}),!(t.mode&1)&&(i.lanes=n),i.return=t,i.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=i,t.memoizedState=null,i}function b0(e,t){return t=Wf({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Mp(e,t,n,i){return i!==null&&s0(i),Al(t,e.child,null,n),e=b0(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function p6(e,t,n,i,a,s,o){if(n)return t.flags&256?(t.flags&=-257,i=jx(Error(J(422))),Mp(e,t,o,i)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=i.fallback,a=t.mode,i=Wf({mode:"visible",children:i.children},a,0,null),s=Ds(s,a,o,null),s.flags|=2,i.return=t,s.return=t,i.sibling=s,t.child=i,t.mode&1&&Al(t,e.child,null,o),t.child.memoizedState=xv(o),t.memoizedState=gv,s);if(!(t.mode&1))return Mp(e,t,o,null);if(a.data==="$!"){if(i=a.nextSibling&&a.nextSibling.dataset,i)var l=i.dgst;return i=l,s=Error(J(419)),i=jx(s,i,void 0),Mp(e,t,o,i)}if(l=(o&e.childLanes)!==0,Tn||l){if(i=Xt,i!==null){switch(o&-o){case 4:a=2;break;case 16:a=8;break;case 64: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:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:a=32;break;case 536870912:a=268435456;break;default:a=0}a=a&(i.suspendedLanes|o)?0:a,a!==0&&a!==s.retryLane&&(s.retryLane=a,zi(e,a),Fr(i,e,a,-1))}return I0(),i=jx(Error(J(421))),Mp(e,t,o,i)}return a.data==="$?"?(t.flags|=128,t.child=e.child,t=N6.bind(null,e),a._reactRetry=t,null):(e=s.treeContext,zn=Ta(a.nextSibling),Wn=t,gt=!0,Er=null,e!==null&&(cr[dr++]=Di,cr[dr++]=Oi,cr[dr++]=qs,Di=e.id,Oi=e.overflow,qs=t),t=b0(t,i.children),t.flags|=4096,t)}
vendor: 6,991 bytes, line 40
40function vj(e,t,n){e.lanes|=t;var i=e.alternate;i!==null&&(i.lanes|=t),dv(e.return,t,n)}function kx(e,t,n,i,a){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:i,tail:n,tailMode:a}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=i,s.tail=n,s.tailMode=a)}function $T(e,t,n){var i=t.pendingProps,a=i.revealOrder,s=i.tail;if(An(e,t,i.children,n),i=wt.current,i&2)i=i&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&vj(e,n,t);else if(e.tag===19)vj(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}i&=1}if(ot(wt,i),!(t.mode&1))t.memoizedState=null;else switch(a){case"forwards":for(n=t.child,a=null;n!==null;)e=n.alternate,e!==null&&nh(e)===null&&(a=n),n=n.sibling;n=a,n===null?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),kx(t,!1,a,n,s);break;case"backwards":for(n=null,a=t.child,t.child=null;a!==null;){if(e=a.alternate,e!==null&&nh(e)===null){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}kx(t,!0,n,null,s);break;case"together":kx(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Nm(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Wi(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Hs|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(J(153));if(t.child!==null){for(e=t.child,n=Ra(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Ra(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function m6(e,t,n){switch(t.tag){case 3:FT(t),wl();break;case 5:pT(t);break;case 1:Mn(t.type)&&Qm(t);break;case 4:p0(t,t.stateNode.containerInfo);break;case 10:var i=t.type._context,a=t.memoizedProps.value;ot(Jm,i._currentValue),i._currentValue=a;break;case 13:if(i=t.memoizedState,i!==null)return i.dehydrated!==null?(ot(wt,wt.current&1),t.flags|=128,null):n&t.child.childLanes?BT(e,t,n):(ot(wt,wt.current&1),e=Wi(e,t,n),e!==null?e.sibling:null);ot(wt,wt.current&1);break;case 19:if(i=(n&t.childLanes)!==0,e.flags&128){if(i)return $T(e,t,n);t.flags|=128}if(a=t.memoizedState,a!==null&&(a.rendering=null,a.tail=null,a.lastEffect=null),ot(wt,wt.current),i)break;return null;case 22:case 23:return t.lanes=0,RT(e,t,n)}return Wi(e,t,n)}var UT,yv,qT,GT;UT=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&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;n=n.return}n.sibling.return=n.return,n=n.sibling}};yv=function(){};qT=function(e,t,n,i){var a=e.memoizedProps;if(a!==i){e=t.stateNode,gs(li.current);var s=null;switch(n){case"input":a=$y(e,a),i=$y(e,i),s=[];break;case"select":a=jt({},a,{value:void 0}),i=jt({},i,{value:void 0}),s=[];break;case"textarea":a=Gy(e,a),i=Gy(e,i),s=[];break;default:typeof a.onClick!="function"&&typeof i.onClick=="function"&&(e.onclick=Km)}zy(n,i);var o;n=null;for(d in a)if(!i.hasOwnProperty(d)&&a.hasOwnProperty(d)&&a[d]!=null)if(d==="style"){var l=a[d];for(o in l)l.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else d!=="dangerouslySetInnerHTML"&&d!=="children"&&d!=="suppressContentEditableWarning"&&d!=="suppressHydrationWarning"&&d!=="autoFocus"&&(Id.hasOwnProperty(d)?s||(s=[]):(s=s||[]).push(d,null));for(d in i){var c=i[d];if(l=a!=null?a[d]:void 0,i.hasOwnProperty(d)&&c!==l&&(c!=null||l!=null))if(d==="style")if(l){for(o in l)!l.hasOwnProperty(o)||c&&c.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in c)c.hasOwnProperty(o)&&l[o]!==c[o]&&(n||(n={}),n[o]=c[o])}else n||(s||(s=[]),s.push(d,n)),n=c;else d==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,l=l?l.__html:void 0,c!=null&&l!==c&&(s=s||[]).push(d,c)):d==="children"?typeof c!="string"&&typeof c!="number"||(s=s||[]).push(d,""+c):d!=="suppressContentEditableWarning"&&d!=="suppressHydrationWarning"&&(Id.hasOwnProperty(d)?(c!=null&&d==="onScroll"&&dt("scroll",e),s||l===c||(s=[])):(s=s||[]).push(d,c))}n&&(s=s||[]).push("style",n);var d=s;(t.updateQueue=d)&&(t.flags|=4)}};GT=function(e,t,n,i){n!==i&&(t.flags|=4)};function Sc(e,t){if(!gt)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var i=null;n!==null;)n.alternate!==null&&(i=n),n=n.sibling;i===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:i.sibling=null}}function un(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,i=0;if(t)for(var a=e.child;a!==null;)n|=a.lanes|a.childLanes,i|=a.subtreeFlags&14680064,i|=a.flags&14680064,a.return=e,a=a.sibling;else for(a=e.child;a!==null;)n|=a.lanes|a.childLanes,i|=a.subtreeFlags,i|=a.flags,a.return=e,a=a.sibling;return e.subtreeFlags|=i,e.childLanes=n,t}function h6(e,t,n){var i=t.pendingProps;switch(a0(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return un(t),null;case 1:return Mn(t.type)&&Ym(),un(t),null;case 3:return i=t.stateNode,jl(),mt(On),mt(gn),h0(),i.pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(e===null||e.child===null)&&(Dp(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Er!==null&&(Iv(Er),Er=null))),yv(e,t),un(t),null;case 5:m0(t);var a=gs(Fd.current);if(n=t.type,e!==null&&t.stateNode!=null)qT(e,t,n,i,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!i){if(t.stateNode===null)throw Error(J(166));return un(t),null}if(e=gs(li.current),Dp(t)){i=t.stateNode,n=t.type;var s=t.memoizedProps;switch(i[ri]=t,i[Rd]=s,e=(t.mode&1)!==0,n){case"dialog":dt("cancel",i),dt("close",i);break;case"iframe":case"object":case"embed":dt("load",i);break;case"video":case"audio":for(a=0;a<id.length;a++)dt(id[a],i);break;case"source":dt("error",i);break;case"img":case"image":case"link":dt("error",i),dt("load",i);break;case"details":dt("toggle",i);break;case"input":CA(i,s),dt("invalid",i);break;case"select":i._wrapperState={wasMultiple:!!s.multiple},dt("invalid",i);break;case"textarea":_A(i,s),dt("invalid",i)}zy(n,s),a=null;for(var o in s)if(s.hasOwnProperty(o)){var l=s[o];o==="children"?typeof l=="string"?i.textContent!==l&&(s.suppressHydrationWarning!==!0&&Tp(i.textContent,l,e),a=["children",l]):typeof l=="number"&&i.textContent!==""+l&&(s.suppressHydrationWarning!==!0&&Tp(i.textContent,l,e),a=["children",""+l]):Id.hasOwnProperty(o)&&l!=null&&o==="onScroll"&&dt("scroll",i)}switch(n){case"input":kp(i),EA(i,s,!0);break;case"textarea":kp(i),PA(i);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(i.onclick=Km)}i=a,t.updateQueue=i,i!==null&&(t.flags|=4)}else{o=a.nodeType===9?a:a.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=xP(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=o.createElement("div"),e.innerHTML="<script><\/script>
40",e=e.removeChild(e.firstChild)):typeof i.is=="string"?e=o.createElement(n,{is:i.is}):(e=o.createElement(n),n==="select"&&(o=e,i.multiple?o.multiple=!0:i.size&&(o.size=i.size))):e=o.createElementNS(e,n),e[ri]=t,e[Rd]=i,UT(e,t,!1,!1),t.stateNode=e;e:{switch(o=Wy(n,i),n){case"dialog":dt("cancel",e),dt("close",e),a=i;break;case"iframe":case"object":case"embed":dt("load",e),a=i;break;case"video":case"audio":for(a=0;a<id.length;a++)dt(id[a],e);a=i;break;case"source":dt("error",e),a=i;break;case"img":case"image":case"link":dt("error",e),dt("load",e),a=i;break;case"details":dt("toggle",e),a=i;break;case"input":CA(e,i),a=$y(e,i),dt("invalid",e);break;case"option":a=i;break;case"select":e._wrapperState={wasMultiple:!!i.multiple},a=jt({},i,{value:void 0}),dt("invalid",e);break;case"textarea":_A(e,i),a=Gy(e,i),dt("invalid",e);break;default:a=i}zy(n,a),l=a;for(s in l)if(l.hasOwnProperty(s)){var c=l[s];s==="style"?bP(e,c):s==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,c!=null&&yP(e,c)):s==="children"?typeof c=="string"?(n!=="textarea"||c!=="")&&Sd(e,c):typeof c=="number"&&Sd(e,""+c):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(Id.hasOwnProperty(s)?c!=null&&s==="onScroll"&&dt("scroll",e):c!=null&&Hw(e,s,c,o))}switch(n){case"input":kp(e),EA(e,i,!1);break;case"textarea":kp(e),PA(e);break;case"option":i.value!=null&&e.setAttribute("value",""+Ua(i.value));break;case"select":e.multiple=!!i.multiple,s=i.value,s!=null?qo(e,!!i.multiple,s,!1):i.defaultValue!=null&&qo(e,!!i.multiple,i.defaultValue,!0);break;default:typeof a.onClick=="function"&&(e.onclick=Km)}switch(n){case"button":case"input":case"select":case"textarea":i=!!i.autoFocus;break e;case"img":i=!0;break e;default:i=!1}}i&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return un(t),null;case 6:if(e&&t.stateNode!=null)GT(e,t,e.memoizedProps,i);else{if(typeof i!="string"&&t.stateNode===null)throw Error(J(166));if(n=gs(Fd.current),gs(li.current),Dp(t)){if(i=t.stateNode,n=t.memoizedProps,i[ri]=t,(s=i.nodeValue!==n)&&(e=Wn,e!==null))switch(e.tag){case 3:Tp(i.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Tp(i.nodeValue,n,(e.mode&1)!==0)}s&&(t.flags|=4)}else i=(n.nodeType===9?n:n.ownerDocument).createTextNode(i),i[ri]=t,t.stateNode=i}return un(t),null;case 13:if(mt(wt),i=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(gt&&zn!==null&&t.mode&1&&!(t.flags&128))oT(),wl(),t.flags|=98560,s=!1;else if(s=Dp(t),i!==null&&i.dehydrated!==null){if(e===null){if(!s)throw Error(J(318));if(s=t.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(J(317));s[ri]=t}else wl(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;un(t),s=!1}else Er!==null&&(Iv(Er),Er=null),s=!0;if(!s)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(i=i!==null,i!==(e!==null&&e.memoizedState!==null)&&i&&(t.child.flags|=8192,t.mode&1&&(e===null||wt.current&1?Ut===0&&(Ut=3):I0())),t.updateQueue!==null&&(t.flags|=4),un(t),null);case 4:return jl(),yv(e,t),e===null&&Od(t.stateNode.containerInfo),un(t),null;case 10:return c0(t.type._context),un(t),null;case 17:return Mn(t.type)&&Ym(),un(t),null;case 19:if(mt(wt),s=t.memoizedState,s===null)return un(t),null;if(i=(t.flags&128)!==0,o=s.rendering,o===null)if(i)Sc(s,!1);else{if(Ut!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=nh(e),o!==null){for(t.flags|=128,Sc(s,!1),i=o.updateQueue,i!==null&&(t.updateQueue=i,t.flags|=4),t.subtreeFlags=0,i=n,n=t.child;n!==null;)s=n,e=i,s.flags&=14680066,o=s.alternate,o===null?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=o.childLanes,s.lanes=o.lanes,s.child=o.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=o.memoizedProps,s.memoizedState=o.memoizedState,s.updateQueue=o.updateQueue,s.type=o.type,e=o.dependencies,s.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return ot(wt,wt.current&1|2),t.child}e=e.sibling}s.tail!==null&&Pt()>Nl&&(t.flags|=128,i=!0,Sc(s,!1),t.lanes=4194304)}else{if(!i)if(e=nh(o),e!==null){if(t.flags|=128,i=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Sc(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!gt)return un(t),null}else 2*Pt()-s.renderingStartTime>Nl&&n!==1073741824&&(t.flags|=128,i=!0,Sc(s,!1),t.lanes=4194304);s.isBackwards?(o.sibling=t.child,t.child=o):(n=s.last,n!==null?n.sibling=o:t.child=o,s.last=o)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=Pt(),t.sibling=null,n=wt.current,ot(wt,i?n&1|2:n&1),t):(un(t),null);case 22:case 23:return N0(),i=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==i&&(t.flags|=8192),i&&t.mode&1?qn&1073741824&&(un(t),t.subtreeFlags&6&&(t.flags|=8192)):u
vendor: 26,943 bytes, line 40
40n(t),null;case 24:return null;case 25:return null}throw Error(J(156,t.tag))}function f6(e,t){switch(a0(t),t.tag){case 1:return Mn(t.type)&&Ym(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return jl(),mt(On),mt(gn),h0(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return m0(t),null;case 13:if(mt(wt),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(J(340));wl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return mt(wt),null;case 4:return jl(),null;case 10:return c0(t.type._context),null;case 22:case 23:return N0(),null;case 24:return null;default:return null}}var Rp=!1,hn=!1,g6=typeof WeakSet=="function"?WeakSet:Set,le=null;function Ro(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(i){St(e,t,i)}else n.current=null}function vv(e,t,n){try{n()}catch(i){St(e,t,i)}}var bj=!1;function x6(e,t){if(nv=zm,e=KP(),r0(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var i=n.getSelection&&n.getSelection();if(i&&i.rangeCount!==0){n=i.anchorNode;var a=i.anchorOffset,s=i.focusNode;i=i.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,l=-1,c=-1,d=0,u=0,p=e,m=null;t:for(;;){for(var f;p!==n||a!==0&&p.nodeType!==3||(l=o+a),p!==s||i!==0&&p.nodeType!==3||(c=o+i),p.nodeType===3&&(o+=p.nodeValue.length),(f=p.firstChild)!==null;)m=p,p=f;for(;;){if(p===e)break t;if(m===n&&++d===a&&(l=o),m===s&&++u===i&&(c=o),(f=p.nextSibling)!==null)break;p=m,m=p.parentNode}p=f}n=l===-1||c===-1?null:{start:l,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(rv={focusedElem:e,selectionRange:n},zm=!1,le=t;le!==null;)if(t=le,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,le=e;else for(;le!==null;){t=le;try{var x=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(x!==null){var h=x.memoizedProps,g=x.memoizedState,y=t.stateNode,v=y.getSnapshotBeforeUpdate(t.elementType===t.type?h:kr(t.type,h),g);y.__reactInternalSnapshotBeforeUpdate=v}break;case 3:var b=t.stateNode.containerInfo;b.nodeType===1?b.textContent="":b.nodeType===9&&b.documentElement&&b.removeChild(b.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(J(163))}}catch(A){St(t,t.return,A)}if(e=t.sibling,e!==null){e.return=t.return,le=e;break}le=t.return}return x=bj,bj=!1,x}function xd(e,t,n){var i=t.updateQueue;if(i=i!==null?i.lastEffect:null,i!==null){var a=i=i.next;do{if((a.tag&e)===e){var s=a.destroy;a.destroy=void 0,s!==void 0&&vv(t,n,s)}a=a.next}while(a!==i)}}function Hf(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var i=n.create;n.destroy=i()}n=n.next}while(n!==t)}}function bv(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function HT(e){var t=e.alternate;t!==null&&(e.alternate=null,HT(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[ri],delete t[Rd],delete t[sv],delete t[J$],delete t[e6])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function zT(e){return e.tag===5||e.tag===3||e.tag===4}function wj(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||zT(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function wv(e,t,n){var i=e.tag;if(i===5||i===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Km));else if(i!==4&&(e=e.child,e!==null))for(wv(e,t,n),e=e.sibling;e!==null;)wv(e,t,n),e=e.sibling}function Av(e,t,n){var i=e.tag;if(i===5||i===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(i!==4&&(e=e.child,e!==null))for(Av(e,t,n),e=e.sibling;e!==null;)Av(e,t,n),e=e.sibling}var rn=null,Ir=!1;function na(e,t,n){for(n=n.child;n!==null;)WT(e,t,n),n=n.sibling}function WT(e,t,n){if(oi&&typeof oi.onCommitFiberUnmount=="function")try{oi.onCommitFiberUnmount(Rf,n)}catch{}switch(n.tag){case 5:hn||Ro(n,t);case 6:var i=rn,a=Ir;rn=null,na(e,t,n),rn=i,Ir=a,rn!==null&&(Ir?(e=rn,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):rn.removeChild(n.stateNode));break;case 18:rn!==null&&(Ir?(e=rn,n=n.stateNode,e.nodeType===8?xx(e.parentNode,n):e.nodeType===1&&xx(e,n),Pd(e)):xx(rn,n.stateNode));break;case 4:i=rn,a=Ir,rn=n.stateNode.containerInfo,Ir=!0,na(e,t,n),rn=i,Ir=a;break;case 0:case 11:case 14:case 15:if(!hn&&(i=n.updateQueue,i!==null&&(i=i.lastEffect,i!==null))){a=i=i.next;do{var s=a,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&vv(n,t,o),a=a.next}while(a!==i)}na(e,t,n);break;case 1:if(!hn&&(Ro(n,t),i=n.stateNode,typeof i.componentWillUnmount=="function"))try{i.props=n.memoizedProps,i.state=n.memoizedState,i.componentWillUnmount()}catch(l){St(n,t,l)}na(e,t,n);break;case 21:na(e,t,n);break;case 22:n.mode&1?(hn=(i=hn)||n.memoizedState!==null,na(e,t,n),hn=i):na(e,t,n);break;default:na(e,t,n)}}function Aj(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new g6),t.forEach(function(i){var a=I6.bind(null,e,i);n.has(i)||(n.add(i),i.then(a,a))})}}function Ar(e,t){var n=t.deletions;if(n!==null)for(var i=0;i<n.length;i++){var a=n[i];try{var s=e,o=t,l=o;e:for(;l!==null;){switch(l.tag){case 5:rn=l.stateNode,Ir=!1;break e;case 3:rn=l.stateNode.containerInfo,Ir=!0;break e;case 4:rn=l.stateNode.containerInfo,Ir=!0;break e}l=l.return}if(rn===null)throw Error(J(160));WT(s,o,a),rn=null,Ir=!1;var c=a.alternate;c!==null&&(c.return=null),a.return=null}catch(d){St(a,t,d)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)VT(t,e),t=t.sibling}function VT(e,t){var n=e.alternate,i=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Ar(t,e),Kr(e),i&4){try{xd(3,e,e.return),Hf(3,e)}catch(h){St(e,e.return,h)}try{xd(5,e,e.return)}catch(h){St(e,e.return,h)}}break;case 1:Ar(t,e),Kr(e),i&512&&n!==null&&Ro(n,n.return);break;case 5:if(Ar(t,e),Kr(e),i&512&&n!==null&&Ro(n,n.return),e.flags&32){var a=e.stateNode;try{Sd(a,"")}catch(h){St(e,e.return,h)}}if(i&4&&(a=e.stateNode,a!=null)){var s=e.memoizedProps,o=n!==null?n.memoizedProps:s,l=e.type,c=e.updateQueue;if(e.updateQueue=null,c!==null)try{l==="input"&&s.type==="radio"&&s.name!=null&&fP(a,s),Wy(l,o);var d=Wy(l,s);for(o=0;o<c.length;o+=2){var u=c[o],p=c[o+1];u==="style"?bP(a,p):u==="dangerouslySetInnerHTML"?yP(a,p):u==="children"?Sd(a,p):Hw(a,u,p,d)}switch(l){case"input":Uy(a,s);break;case"textarea":gP(a,s);break;case"select":var m=a._wrapperState.wasMultiple;a._wrapperState.wasMultiple=!!s.multiple;var f=s.value;f!=null?qo(a,!!s.multiple,f,!1):m!==!!s.multiple&&(s.defaultValue!=null?qo(a,!!s.multiple,s.defaultValue,!0):qo(a,!!s.multiple,s.multiple?[]:"",!1))}a[Rd]=s}catch(h){St(e,e.return,h)}}break;case 6:if(Ar(t,e),Kr(e),i&4){if(e.stateNode===null)throw Error(J(162));a=e.stateNode,s=e.memoizedProps;try{a.nodeValue=s}catch(h){St(e,e.return,h)}}break;case 3:if(Ar(t,e),Kr(e),i&4&&n!==null&&n.memoizedState.isDehydrated)try{Pd(t.containerInfo)}catch(h){St(e,e.return,h)}break;case 4:Ar(t,e),Kr(e);break;case 13:Ar(t,e),Kr(e),a=e.child,a.flags&8192&&(s=a.memoizedState!==null,a.stateNode.isHidden=s,!s||a.alternate!==null&&a.alternate.memoizedState!==null||(j0=Pt())),i&4&&Aj(e);break;case 22:if(u=n!==null&&n.memoizedState!==null,e.mode&1?(hn=(d=hn)||u,Ar(t,e),hn=d):Ar(t,e),Kr(e),i&8192){if(d=e.memoizedState!==null,(e.stateNode.isHidden=d)&&!u&&e.mode&1)for(le=e,u=e.child;u!==null;){for(p=le=u;le!==null;){switch(m=le,f=m.child,m.tag){case 0:case 11:case 14:case 15:xd(4,m,m.return);break;case 1:Ro(m,m.return);var x=m.stateNode;if(typeof x.componentWillUnmount=="function"){i=m,n=m.return;try{t=i,x.props=t.memoizedProps,x.state=t.memoizedState,x.componentWillUnmount()}catch(h){St(i,n,h)}}break;case 5:Ro(m,m.return);break;case 22:if(m.memoizedState!==null){kj(p);continue}}f!==null?(f.return=m,le=f):kj(p)}u=u.sibling}e:for(u=null,p=e;;){if(p.tag===5){if(u===null){u=p;try{a=p.stateNode,d?(s=a.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(l=p.stateNode,c=p.memoizedProps.style,o=c!=null&&c.hasOwnProperty("display")?c.display:null,l.style.display=vP("display",o))}catch(h){St(e,e.return,h)}}}else if(p.tag===6){if(u===null)try{p.stateNode.nodeValue=d?"":p.memoizedProps}catch(h){St(e,e.return,h)}}else if((p.tag!==22&&p.tag!==23||p.memoizedState===null||p===e)&&p.child!==null){p.child.return=p,p=p.child;continue}if(p===e)break e;for(;p.sibling===null;){if(p.return===null||p.return===e)break e;u===p&&(u=null),p=p.return}u===p&&(u=null),p.sibling.return=p.return,p=p.sibling}}break;case 19:Ar(t,e),Kr(e),i&4&&Aj(e);break;case 21:break;default:Ar(t,e),Kr(e)}}function Kr(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(zT(n)){var i=n;break e}n=n.return}throw Error(J(160))}switch(i.tag){case 5:var a=i.stateNode;i.flags&32&&(Sd(a,""),i.flags&=-33);var s=wj(e);Av(e,s,a);break;case 3:case 4:var o=i.stateNode.containerInfo,l=wj(e);wv(e,l,o);break;default:throw Error(J(161))}}catch(c){St(e,e.return,c)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function y6(e,t,n){le=e,KT(e)}function KT(e,t,n){for(var i=(e.mode&1)!==0;le!==null;){var a=le,s=a.child;if(a.tag===22&&i){var o=a.memoizedState!==null||Rp;if(!o){var l=a.alternate,c=l!==null&&l.memoizedState!==null||hn;l=Rp;var d=hn;if(Rp=o,(hn=c)&&!d)for(le=a;le!==null;)o=le,c=o.child,o.tag===22&&o.memoizedState!==null?Nj(a):c!==null?(c.return=o,le=c):Nj(a);for(;s!==null;)le=s,KT(s),s=s.sibling;le=a,Rp=l,hn=d}jj(e)}else a.subtreeFlags&8772&&s!==null?(s.return=a,le=s):jj(e)}}function jj(e){for(;le!==null;){var t=le;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:hn||Hf(5,t);break;case 1:var i=t.stateNode;if(t.flags&4&&!hn)if(n===null)i.componentDidMount();else{var a=t.elementType===t.type?n.memoizedProps:kr(t.type,n.memoizedProps);i.componentDidUpdate(a,n.memoizedState,i.__reactInternalSnapshotBeforeUpdate)}var s=t.updateQueue;s!==null&&oj(t,s,i);break;case 3:var o=t.updateQueue;if(o!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}oj(t,o,n)}break;case 5:var l=t.stateNode;if(n===null&&t.flags&4){n=l;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var d=t.alternate;if(d!==null){var u=d.memoizedState;if(u!==null){var p=u.dehydrated;p!==null&&Pd(p)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(J(163))}hn||t.flags&512&&bv(t)}catch(m){St(t,t.return,m)}}if(t===e){le=null;break}if(n=t.sibling,n!==null){n.return=t.return,le=n;break}le=t.return}}function kj(e){for(;le!==null;){var t=le;if(t===e){le=null;break}var n=t.sibling;if(n!==null){n.return=t.return,le=n;break}le=t.return}}function Nj(e){for(;le!==null;){var t=le;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Hf(4,t)}catch(c){St(t,n,c)}break;case 1:var i=t.stateNode;if(typeof i.componentDidMount=="function"){var a=t.return;try{i.componentDidMount()}catch(c){St(t,a,c)}}var s=t.return;try{bv(t)}catch(c){St(t,s,c)}break;case 5:var o=t.return;try{bv(t)}catch(c){St(t,o,c)}}}catch(c){St(t,t.return,c)}if(t===e){le=null;break}var l=t.sibling;if(l!==null){l.return=t.return,le=l;break}le=t.return}}var v6=Math.ceil,ah=Xi.ReactCurrentDispatcher,w0=Xi.ReactCurrentOwner,mr=Xi.ReactCurrentBatchConfig,$e=0,Xt=null,Ot=null,ln=0,qn=0,Lo=Xa(0),Ut=0,qd=null,Hs=0,zf=0,A0=0,yd=null,Pn=null,j0=0,Nl=1/0,Ii=null,sh=!1,jv=null,Oa=null,Lp=!1,Na=null,oh=0,vd=0,kv=null,Im=-1,Sm=0;function Nn(){return $e&6?Pt():Im!==-1?Im:Im=Pt()}function Ma(e){return e.mode&1?$e&2&&ln!==0?ln&-ln:n6.transition!==null?(Sm===0&&(Sm=TP()),Sm):(e=Ze,e!==0||(e=window.event,e=e===void 0?16:BP(e.type)),e):1}function Fr(e,t,n,i){if(50<vd)throw vd=0,kv=null,Error(J(185));Yu(e,n,i),(!($e&2)||e!==Xt)&&(e===Xt&&(!($e&2)&&(zf|=n),Ut===4&&ha(e,ln)),Rn(e,i),n===1&&$e===0&&!(t.mode&1)&&(Nl=Pt()+500,Uf&&Za()))}function Rn(e,t){var n=e.callbackNode;n$(e,t);var i=Hm(e,e===Xt?ln:0);if(i===0)n!==null&&OA(n),e.callbackNode=null,e.callbackPriority=0;else if(t=i&-i,e.callbackPriority!==t){if(n!=null&&OA(n),t===1)e.tag===0?t6(Ij.bind(null,e)):iT(Ij.bind(null,e)),X$(function(){!($e&6)&&Za()}),n=null;else{switch(DP(i)){case 1:n=Yw;break;case 4:n=_P;break;case 16:n=Gm;break;case 536870912:n=PP;break;default:n=Gm}n=n3(n,YT.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function YT(e,t){if(Im=-1,Sm=0,$e&6)throw Error(J(327));var n=e.callbackNode;if(Vo()&&e.callbackNode!==n)return null;var i=Hm(e,e===Xt?ln:0);if(i===0)return null;if(i&30||i&e.expiredLanes||t)t=lh(e,i);else{t=i;var a=$e;$e|=2;var s=XT();(Xt!==e||ln!==t)&&(Ii=null,Nl=Pt()+500,Ts(e,t));do try{A6();break}catch(l){QT(e,l)}while(!0);l0(),ah.current=s,$e=a,Ot!==null?t=0:(Xt=null,ln=0,t=Ut)}if(t!==0){if(t===2&&(a=Xy(e),a!==0&&(i=a,t=Nv(e,a))),t===1)throw n=qd,Ts(e,0),ha(e,i),Rn(e,Pt()),n;if(t===6)ha(e,i);else{if(a=e.current.alternate,!(i&30)&&!b6(a)&&(t=lh(e,i),t===2&&(s=Xy(e),s!==0&&(i=s,t=Nv(e,s))),t===1))throw n=qd,Ts(e,0),ha(e,i),Rn(e,Pt()),n;switch(e.finishedWork=a,e.finishedLanes=i,t){case 0:case 1:throw Error(J(345));case 2:ls(e,Pn,Ii);break;case 3:if(ha(e,i),(i&130023424)===i&&(t=j0+500-Pt(),10<t)){if(Hm(e,0)!==0)break;if(a=e.suspendedLanes,(a&i)!==i){Nn(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=av(ls.bind(null,e,Pn,Ii),t);break}ls(e,Pn,Ii);break;case 4:if(ha(e,i),(i&4194240)===i)break;for(t=e.eventTimes,a=-1;0<i;){var o=31-Lr(i);s=1<<o,o=t[o],o>a&&(a=o),i&=~s}if(i=a,i=Pt()-i,i=(120>i?120:480>i?480:1080>i?1080:1920>i?1920:3e3>i?3e3:4320>i?4320:1960*v6(i/1960))-i,10<i){e.timeoutHandle=av(ls.bind(null,e,Pn,Ii),i);break}ls(e,Pn,Ii);break;case 5:ls(e,Pn,Ii);break;default:throw Error(J(329))}}}return Rn(e,Pt()),e.callbackNode===n?YT.bind(null,e):null}function Nv(e,t){var n=yd;return e.current.memoizedState.isDehydrated&&(Ts(e,t).flags|=256),e=lh(e,t),e!==2&&(t=Pn,Pn=n,t!==null&&Iv(t)),e}function Iv(e){Pn===null?Pn=e:Pn.push.apply(Pn,e)}function b6(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var i=0;i<n.length;i++){var a=n[i],s=a.getSnapshot;a=a.value;try{if(!qr(s(),a))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function ha(e,t){for(t&=~A0,t&=~zf,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Lr(t),i=1<<n;e[n]=-1,t&=~i}}function Ij(e){if($e&6)throw Error(J(327));Vo();var t=Hm(e,0);if(!(t&1))return Rn(e,Pt()),null;var n=lh(e,t);if(e.tag!==0&&n===2){var i=Xy(e);i!==0&&(t=i,n=Nv(e,i))}if(n===1)throw n=qd,Ts(e,0),ha(e,t),Rn(e,Pt()),n;if(n===6)throw Error(J(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,ls(e,Pn,Ii),Rn(e,Pt()),null}function k0(e,t){var n=$e;$e|=1;try{return e(t)}finally{$e=n,$e===0&&(Nl=Pt()+500,Uf&&Za())}}function zs(e){Na!==null&&Na.tag===0&&!($e&6)&&Vo();var t=$e;$e|=1;var n=mr.transition,i=Ze;try{if(mr.transition=null,Ze=1,e)return e()}finally{Ze=i,mr.transition=n,$e=t,!($e&6)&&Za()}}function N0(){qn=Lo.current,mt(Lo)}function Ts(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,Q$(n)),Ot!==null)for(n=Ot.return;n!==null;){var i=n;switch(a0(i),i.tag){case 1:i=i.type.childContextTypes,i!=null&&Ym();break;case 3:jl(),mt(On),mt(gn),h0();break;case 5:m0(i);break;case 4:jl();break;case 13:mt(wt);break;case 19:mt(wt);break;case 10:c0(i.type._context);break;case 22:case 23:N0()}n=n.return}if(Xt=e,Ot=e=Ra(e.current,null),ln=qn=t,Ut=0,qd=null,A0=zf=Hs=0,Pn=yd=null,fs!==null){for(t=0;t<fs.length;t++)if(n=fs[t],i=n.interleaved,i!==null){n.interleaved=null;var a=i.next,s=n.pending;if(s!==null){var o=s.next;s.next=a,i.next=o}n.pending=i}fs=null}return e}function QT(e,t){do{var n=Ot;try{if(l0(),jm.current=ih,rh){for(var i=At.memoizedState;i!==null;){var a=i.queue;a!==null&&(a.pending=null),i=i.next}rh=!1}if(Gs=0,Kt=Bt=At=null,gd=!1,Bd=0,w0.current=null,n===null||n.return===null){Ut=1,qd=t,Ot=null;break}e:{var s=e,o=n.return,l=n,c=t;if(t=ln,l.flags|=32768,c!==null&&typeof c=="object"&&typeof c.then=="function"){var d=c,u=l,p=u.tag;if(!(u.mode&1)&&(p===0||p===11||p===15)){var m=u.alternate;m?(u.updateQueue=m.updateQueue,u.memoizedState=m.memoizedState,u.lanes=m.lanes):(u.updateQueue=null,u.memoizedState=null)}var f=mj(o);if(f!==null){f.flags&=-257,hj(f,o,l,s,t),f.mode&1&&pj(s,d,t),t=f,c=d;var x=t.updateQueue;if(x===null){var h=new Set;h.add(c),t.updateQueue=h}else x.add(c);break e}else{if(!(t&1)){pj(s,d,t),I0();break e}c=Error(J(426))}}else if(gt&&l.mode&1){var g=mj(o);if(g!==null){!(g.flags&65536)&&(g.flags|=256),hj(g,o,l,s,t),s0(kl(c,l));break e}}s=c=kl(c,l),Ut!==4&&(Ut=2),yd===null?yd=[s]:yd.push(s),s=o;do{switch(s.tag){case 3:s.flags|=65536,t&=-t,s.lanes|=t;var y=DT(s,c,t);sj(s,y);break e;case 1:l=c;var v=s.type,b=s.stateNode;if(!(s.flags&128)&&(typeof v.getDerivedStateFromError=="function"||b!==null&&typeof b.componentDidCatch=="function"&&(Oa===null||!Oa.has(b)))){s.flags|=65536,t&=-t,s.lanes|=t;var A=OT(s,l,t);sj(s,A);break e}}s=s.return}while(s!==null)}JT(n)}catch(w){t=w,Ot===n&&n!==null&&(Ot=n=n.return);continue}break}while(!0)}function XT(){var e=ah.current;return ah.current=ih,e===null?ih:e}function I0(){(Ut===0||Ut===3||Ut===2)&&(Ut=4),Xt===null||!(Hs&268435455)&&!(zf&268435455)||ha(Xt,ln)}function lh(e,t){var n=$e;$e|=2;var i=XT();(Xt!==e||ln!==t)&&(Ii=null,Ts(e,t));do try{w6();break}catch(a){QT(e,a)}while(!0);if(l0(),$e=n,ah.current=i,Ot!==null)throw Error(J(261));return Xt=null,ln=0,Ut}function w6(){for(;Ot!==null;)ZT(Ot)}function A6(){for(;Ot!==null&&!VB();)ZT(Ot)}function ZT(e){var t=t3(e.alternate,e,qn);e.memoizedProps=e.pendingProps,t===null?JT(e):Ot=t,w0.current=null}function JT(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=f6(n,t),n!==null){n.flags&=32767,Ot=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Ut=6,Ot=null;return}}else if(n=h6(n,t,qn),n!==null){Ot=n;return}if(t=t.sibling,t!==null){Ot=t;return}Ot=t=e}while(t!==null);Ut===0&&(Ut=5)}function ls(e,t,n){var i=Ze,a=mr.transition;try{mr.transition=null,Ze=1,j6(e,t,n,i)}finally{mr.transition=a,Ze=i}return null}function j6(e,t,n,i){do Vo();while(Na!==null);if($e&6)throw Error(J(327));n=e.finishedWork;var a=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(J(177));e.callbackNode=null,e.callbackPriority=0;var s=n.lanes|n.childLanes;if(r$(e,s),e===Xt&&(Ot=Xt=null,ln=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Lp||(Lp=!0,n3(Gm,function(){return Vo(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=mr.transition,mr.transition=null;var o=Ze;Ze=1;var l=$e;$e|=4,w0.current=null,x6(e,n),VT(n,e),G$(rv),zm=!!nv,rv=nv=null,e.current=n,y6(n),KB(),$e=l,Ze=o,mr.transition=s}else e.current=n;if(Lp&&(Lp=!1,Na=e,oh=a),s=e.pendingLanes,s===0&&(Oa=null),XB(n.stateNode),Rn(e,Pt()),t!==null)for(i=e.onRecoverableError,n=0;n<t.length;n++)a=t[n],i(a.value,{componentStack:a.stack,digest:a.digest});if(sh)throw sh=!1,e=jv,jv=null,e;return oh&1&&e.tag!==0&&Vo(),s=e.pendingLanes,s&1?e===kv?vd++:(vd=0,kv=e):vd=0,Za(),null}function Vo(){if(Na!==null){var e=DP(oh),t=mr.transition,n=Ze;try{if(mr.transition=null,Ze=16>e?16:e,Na===null)var i=!1;else{if(e=Na,Na=null,oh=0,$e&6)throw Error(J(331));var a=$e;for($e|=4,le=e.current;le!==null;){var s=le,o=s.child;if(le.flags&16){var l=s.deletions;if(l!==null){for(var c=0;c<l.length;c++){var d=l[c];for(le=d;le!==null;){var u=le;switch(u.tag){case 0:case 11:case 15:xd(8,u,s)}var p=u.child;if(p!==null)p.return=u,le=p;else for(;le!==null;){u=le;var m=u.sibling,f=u.return;if(HT(u),u===d){le=null;break}if(m!==null){m.return=f,le=m;break}le=f}}}var x=s.alternate;if(x!==null){var h=x.child;if(h!==null){x.child=null;do{var g=h.sibling;h.sibling=null,h=g}while(h!==null)}}le=s}}if(s.subtreeFlags&2064&&o!==null)o.return=s,le=o;else e:for(;le!==null;){if(s=le,s.flags&2048)switch(s.tag){case 0:case 11:case 15:xd(9,s,s.return)}var y=s.sibling;if(y!==null){y.return=s.return,le=y;break e}le=s.return}}var v=e.current;for(le=v;le!==null;){o=le;var b=o.child;if(o.subtreeFlags&2064&&b!==null)b.return=o,le=b;else e:for(o=v;le!==null;){if(l=le,l.flags&2048)try{switch(l.tag){case 0:case 11:case 15:Hf(9,l)}}catch(w){St(l,l.return,w)}if(l===o){le=null;break e}var A=l.sibling;if(A!==null){A.return=l.return,le=A;break e}le=l.return}}if($e=a,Za(),oi&&typeof oi.onPostCommitFiberRoot=="function")try{oi.onPostCommitFiberRoot(Rf,e)}catch{}i=!0}return i}finally{Ze=n,mr.transition=t}}return!1}function Sj(e,t,n){t=kl(n,t),t=DT(e,t,1),e=Da(e,t,1),t=Nn(),e!==null&&(Yu(e,1,t),Rn(e,t))}function St(e,t,n){if(e.tag===3)Sj(e,e,n);else for(;t!==null;){if(t.tag===3){Sj(t,e,n);break}else if(t.tag===1){var i=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof i.componentDidCatch=="function"&&(Oa===null||!Oa.has(i))){e=kl(n,e),e=OT(t,e,1),t=Da(t,e,1),e=Nn(),t!==null&&(Yu(t,1,e),Rn(t,e));break}}t=t.return}}function k6(e,t,n){var i=e.pingCache;i!==null&&i.delete(t),t=Nn(),e.pingedLanes|=e.suspendedLanes&n,Xt===e&&(ln&n)===n&&(Ut===4||Ut===3&&(ln&130023424)===ln&&500>Pt()-j0?Ts(e,0):A0|=n),Rn(e,t)}function e3(e,t){t===0&&(e.mode&1?(t=Sp,Sp<<=1,!(Sp&130023424)&&(Sp=4194304)):t=1);var n=Nn();e=zi(e,t),e!==null&&(Yu(e,t,n),Rn(e,n))}function N6(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),e3(e,n)}function I6(e,t){var n=0;switch(e.tag){case 13:var i=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:i=e.stateNode;break;default:throw Error(J(314))}i!==null&&i.delete(t),e3(e,n)}var t3;t3=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||On.current)Tn=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Tn=!1,m6(e,t,n);Tn=!!(e.flags&131072)}else Tn=!1,gt&&t.flags&1048576&&aT(t,Zm,t.index);switch(t.lanes=0,t.tag){case 2:var i=t.type;Nm(e,t),e=t.pendingProps;var a=bl(t,gn.current);Wo(t,n),a=g0(null,t,i,e,a,n);var s=x0();return t.flags|=1,typeof a=="object"&&a!==null&&typeof a.render=="function"&&a.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Mn(i)?(s=!0,Qm(t)):s=!1,t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,u0(t),a.updater=Gf,t.stateNode=a,a._reactInternals=t,pv(t,i,e,n),t=fv(null,t,i,!0,s,n)):(t.tag=0,gt&&s&&i0(t),An(null,t,a,n),t=t.child),t;case 16:i=t.elementType;e:{switch(Nm(e,t),e=t.pendingProps,a=i._init,i=a(i._payload),t.type=i,a=t.tag=C6(i),e=kr(i,e),a){case 0:t=hv(null,t,i,e,n);break e;case 1:t=xj(null,t,i,e,n);break e;case 11:t=fj(null,t,i,e,n);break e;case 14:t=gj(null,t,i,kr(i.type,e),n);break e}throw Error(J(306,i,""))}return t;case 0:return i=t.type,a=t.pendingProps,a=t.elementType===i?a:kr(i,a),hv(e,t,i,a,n);case 1:return i=t.type,a=t.pendingProps,a=t.elementType===i?a:kr(i,a),xj(e,t,i,a,n);case 3:e:{if(FT(t),e===null)throw Error(J(387));i=t.pendingProps,s=t.memoizedState,a=s.element,uT(e,t),th(t,i,null,n);var o=t.memoizedState;if(i=o.element,s.isDehydrated)if(s={element:i,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){a=kl(Error(J(423)),t),t=yj(e,t,i,n,a);break e}else if(i!==a){a=kl(Error(J(424)),t),t=yj(e,t,i,n,a);break e}else for(zn=Ta(t.stateNode.containerInfo.firstChild),Wn=t,gt=!0,Er=null,n=cT(t,null,i,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(wl(),i===a){t=Wi(e,t,n);break e}An(e,t,i,n)}t=t.child}return t;case 5:return pT(t),e===null&&cv(t),i=t.type,a=t.pendingProps,s=e!==null?e.memoizedProps:null,o=a.children,iv(i,a)?o=null:s!==null&&iv(i,s)&&(t.flags|=32),LT(e,t),An(e,t,o,n),t.child;case 6:return e===null&&cv(t),null;case 13:return BT(e,t,n);case 4:return p0(t,t.stateNode.containerInfo),i=t.pendingProps,e===null?t.child=Al(t,null,i,n):An(e,t,i,n),t.child;case 11:return i=t.type,a=t.pendingProps,a=t.elementType===i?a:kr(i,a),fj(e,t,i,a,n);case 7:return An(e,t,t.pendingProps,n),t.child;case 8:return An(e,t,t.pendingProps.children,n),t.child;case 12:return An(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(i=t.type._context,a=t.pendingProps,s=t.memoizedProps,o=a.value,ot(Jm,i._currentValue),i._currentValue=o,s!==null)if(qr(s.value,o)){if(s.children===a.children&&!On.current){t=Wi(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var l=s.dependencies;if(l!==null){o=s.child;for(var c=l.firstContext;c!==null;){if(c.context===i){if(s.tag===1){c=Fi(-1,n&-n),c.tag=2;var d=s.updateQueue;if(d!==null){d=d.shared;var u=d.pending;u===null?c.next=c:(c.next=u.next,u.next=c),d.pending=c}}s.lanes|=n,c=s.alternate,c!==null&&(c.lanes|=n),dv(s.return,n,t),l.lanes|=n;break}c=c.next}}else if(s.tag===10)o=s.type===t.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(J(341));o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),dv(o,n,t),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}An(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,i=t.pendingProps.children,Wo(t,n),a=fr(a),i=i(a),t.flags|=1,An(e,t,i,n),t.child;case 14:return i=t.type,a=kr(i,t.pendingProps),a=kr(i.type,a),gj(e,t,i,a,n);case 15:return MT(e,t,t.type,t.pendingProps,n);case 17:return i=t.type,a=t.pendingProps,a=t.elementType===i?a:kr(i,a),Nm(e,t),t.tag=1,Mn(i)?(e=!0,Qm(t)):e=!1,Wo(t,n),TT(t,i,a),pv(t,i,a,n),fv(null,t,i,!0,e,n);case 19:return $T(e,t,n);case 22:return RT(e,t,n)}throw Error(J(156,t.tag))};function n3(e,t){return EP(e,t)}function S6(e,t,n,i){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ur(e,t,n,i){return new S6(e,t,n,i)}function S0(e){return e=e.prototype,!(!e||!e.isReactComponent)}function C6(e){if(typeof e=="function")return S0(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ww)return 11;if(e===Vw)return 14}return 2}function Ra(e,t){var n=e.alternate;return n===null?(n=ur(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deleti
vendor: 11,188 bytes, lines 40-48
40ons=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Cm(e,t,n,i,a,s){var o=2;if(i=e,typeof e=="function")S0(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case So:return Ds(n.children,a,s,t);case zw:o=8,a|=8;break;case Ry:return e=ur(12,n,t,a|2),e.elementType=Ry,e.lanes=s,e;case Ly:return e=ur(13,n,t,a),e.elementType=Ly,e.lanes=s,e;case Fy:return e=ur(19,n,t,a),e.elementType=Fy,e.lanes=s,e;case pP:return Wf(n,a,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case dP:o=10;break e;case uP:o=9;break e;case Ww:o=11;break e;case Vw:o=14;break e;case ca:o=16,i=null;break e}throw Error(J(130,e==null?e:typeof e,""))}return t=ur(o,n,t,a),t.elementType=e,t.type=i,t.lanes=s,t}function Ds(e,t,n,i){return e=ur(7,e,i,t),e.lanes=n,e}function Wf(e,t,n,i){return e=ur(22,e,i,t),e.elementType=pP,e.lanes=n,e.stateNode={isHidden:!1},e}function Nx(e,t,n){return e=ur(6,e,null,t),e.lanes=n,e}function Ix(e,t,n){return t=ur(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function E6(e,t,n,i,a){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=sx(0),this.expirationTimes=sx(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=sx(0),this.identifierPrefix=i,this.onRecoverableError=a,this.mutableSourceEagerHydrationData=null}function C0(e,t,n,i,a,s,o,l,c){return e=new E6(e,t,n,l,c),t===1?(t=1,s===!0&&(t|=8)):t=0,s=ur(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:i,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},u0(s),e}function _6(e,t,n){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:Io,key:i==null?null:""+i,children:e,containerInfo:t,implementation:n}}function r3(e){if(!e)return qa;e=e._reactInternals;e:{if(ro(e)!==e||e.tag!==1)throw Error(J(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Mn(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(J(171))}if(e.tag===1){var n=e.type;if(Mn(n))return rT(e,n,t)}return t}function i3(e,t,n,i,a,s,o,l,c){return e=C0(n,i,!0,e,a,s,o,l,c),e.context=r3(null),n=e.current,i=Nn(),a=Ma(n),s=Fi(i,a),s.callback=t??null,Da(n,s,a),e.current.lanes=a,Yu(e,a,i),Rn(e,i),e}function Vf(e,t,n,i){var a=t.current,s=Nn(),o=Ma(a);return n=r3(n),t.context===null?t.context=n:t.pendingContext=n,t=Fi(s,o),t.payload={element:e},i=i===void 0?null:i,i!==null&&(t.callback=i),e=Da(a,t,o),e!==null&&(Fr(e,a,o,s),Am(e,a,o)),o}function ch(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Cj(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function E0(e,t){Cj(e,t),(e=e.alternate)&&Cj(e,t)}function P6(){return null}var a3=typeof reportError=="function"?reportError:function(e){console.error(e)};function _0(e){this._internalRoot=e}Kf.prototype.render=_0.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(J(409));Vf(e,t,null,null)};Kf.prototype.unmount=_0.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;zs(function(){Vf(null,e,null,null)}),t[Hi]=null}};function Kf(e){this._internalRoot=e}Kf.prototype.unstable_scheduleHydration=function(e){if(e){var t=RP();e={blockedOn:null,target:e,priority:t};for(var n=0;n<ma.length&&t!==0&&t<ma[n].priority;n++);ma.splice(n,0,e),n===0&&FP(e)}};function P0(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Yf(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Ej(){}function T6(e,t,n,i,a){if(a){if(typeof i=="function"){var s=i;i=function(){var d=ch(o);s.call(d)}}var o=i3(t,i,e,0,null,!1,!1,"",Ej);return e._reactRootContainer=o,e[Hi]=o.current,Od(e.nodeType===8?e.parentNode:e),zs(),o}for(;a=e.lastChild;)e.removeChild(a);if(typeof i=="function"){var l=i;i=function(){var d=ch(c);l.call(d)}}var c=C0(e,0,!1,null,null,!1,!1,"",Ej);return e._reactRootContainer=c,e[Hi]=c.current,Od(e.nodeType===8?e.parentNode:e),zs(function(){Vf(t,c,n,i)}),c}function Qf(e,t,n,i,a){var s=n._reactRootContainer;if(s){var o=s;if(typeof a=="function"){var l=a;a=function(){var c=ch(o);l.call(c)}}Vf(t,o,e,a)}else o=T6(n,t,e,a,i);return ch(o)}OP=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=rd(t.pendingLanes);n!==0&&(Qw(t,n|1),Rn(t,Pt()),!($e&6)&&(Nl=Pt()+500,Za()))}break;case 13:zs(function(){var i=zi(e,1);if(i!==null){var a=Nn();Fr(i,e,1,a)}}),E0(e,1)}};Xw=function(e){if(e.tag===13){var t=zi(e,134217728);if(t!==null){var n=Nn();Fr(t,e,134217728,n)}E0(e,134217728)}};MP=function(e){if(e.tag===13){var t=Ma(e),n=zi(e,t);if(n!==null){var i=Nn();Fr(n,e,t,i)}E0(e,t)}};RP=function(){return Ze};LP=function(e,t){var n=Ze;try{return Ze=e,t()}finally{Ze=n}};Ky=function(e,t,n){switch(t){case"input":if(Uy(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var i=n[t];if(i!==e&&i.form===e.form){var a=$f(i);if(!a)throw Error(J(90));hP(i),Uy(i,a)}}}break;case"textarea":gP(e,n);break;case"select":t=n.value,t!=null&&qo(e,!!n.multiple,t,!1)}};jP=k0;kP=zs;var D6={usingClientEntryPoint:!1,Events:[Xu,Po,$f,wP,AP,k0]},Cc={findFiberByHostInstance:hs,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},O6={bundleType:Cc.bundleType,version:Cc.version,rendererPackageName:Cc.rendererPackageName,rendererConfig:Cc.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Xi.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=SP(e),e===null?null:e.stateNode},findFiberByHostInstance:Cc.findFiberByHostInstance||P6,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Fp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Fp.isDisabled&&Fp.supportsFiber)try{Rf=Fp.inject(O6),oi=Fp}catch{}}Yn.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=D6;Yn.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!P0(t))throw Error(J(200));return _6(e,t,null,n)};Yn.createRoot=function(e,t){if(!P0(e))throw Error(J(299));var n=!1,i="",a=a3;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(i=t.identifierPrefix),t.onRecoverableError!==void 0&&(a=t.onRecoverableError)),t=C0(e,1,!1,null,null,n,!1,i,a),e[Hi]=t.current,Od(e.nodeType===8?e.parentNode:e),new _0(t)};Yn.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(J(188)):(e=Object.keys(e).join(","),Error(J(268,e)));return e=SP(t),e=e===null?null:e.stateNode,e};Yn.flushSync=function(e){return zs(e)};Yn.hydrate=function(e,t,n){if(!Yf(t))throw Error(J(200));return Qf(null,e,t,!0,n)};Yn.hydrateRoot=function(e,t,n){if(!P0(e))throw Error(J(405));var i=n!=null&&n.hydratedSources||null,a=!1,s="",o=a3;if(n!=null&&(n.unstable_strictMode===!0&&(a=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),t=i3(t,null,e,1,n??null,a,!1,s,o),e[Hi]=t.current,Od(e),i)for(e=0;e<i.length;e++)n=i[e],a=n._getVersion,a=a(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,a]:t.mutableSourceEagerHydrationData.push(n,a);return new Kf(t)};Yn.render=function(e,t,n){if(!Yf(t))throw Error(J(200));return Qf(null,e,t,!1,n)};Yn.unmountComponentAtNode=function(e){if(!Yf(e))throw Error(J(40));return e._reactRootContainer?(zs(function(){Qf(null,null,e,!1,function(){e._reactRootContainer=null,e[Hi]=null})}),!0):!1};Yn.unstable_batchedUpdates=k0;Yn.unstable_renderSubtreeIntoContainer=function(e,t,n,i){if(!Yf(n))throw Error(J(200));if(e==null||e._reactInternals===void 0)throw Error(J(38));return Qf(e,t,n,!1,i)};Yn.version="18.3.1-next-f1338f8080-20240426";function s3(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s3)}catch(e){console.error(e)}}s3(),sP.exports=Yn;var Xf=sP.exports;const M6=Qe(Xf);var o3,_j=Xf;o3=_j.createRoot,_j.hydrateRoot;function R6(e,t){if(e instanceof RegExp)return{keys:!1,pattern:e};var n,i,a,s,o=[],l="",c=e.split("/");for(c[0]||c.shift();a=c.shift();)n=a[0],n==="*"?(o.push(n),l+=a[1]==="?"?"(?:/(.*))?":"/(.*)"):n===":"?(i=a.indexOf("?",1),s=a.indexOf(".",1),o.push(a.substring(1,~i?i:~s?s:a.length)),l+=~i&&!~s?"(?:/([^/]+?))?":"/([^/]+?)",~s&&(l+=(~i?"?":"")+"\\"+a.substring(s))):l+="/"+a;return{keys:o,pattern:new RegExp("^"+l+(t?"(?=$|/)":"/?$"),"i")}}var l3={exports:{}},c3={};/**
41 * @license React
42 * use-sync-external-store-shim.production.min.js
43 *
44 * Copyright (c) Facebook, Inc. and its affiliates.
45 *
46 * This source code is licensed under the MIT license found in the
47 * LICENSE file in the root directory of this source tree.
48 */var Il=j;function L6(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var F6=typeof Object.is=="function"?Object.is:L6,B6=Il.useState,$6=Il.useEffect,U6=Il.useLayoutEffect,q6=Il.useDebugValue;function G6(e,t){var n=t(),i=B6({inst:{value:n,getSnapshot:t}}),a=i[0].inst,s=i[1];return U6(function(){a.value=n,a.getSnapshot=t,Sx(a)&&s({inst:a})},[e,n,t]),$6(function(){return Sx(a)&&s({inst:a}),e(function(){Sx(a)&&s({inst:a})})},[e]),q6(n),n}function Sx(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!F6(e,n)}catch{return!0}}function H6(e,t){return t()}var z6=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?H6:G6;c3.useSyncExternalStore=Il.useSyncExternalStore!==void 0?Il.useSyncExternalStore:z6;l3.exports=c3;var W6=l3.exports;const V6=iP.useInsertionEffect,K6=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",d3=K6?j.useLayoutEffect:j.useEffect,Y6=V6||d3,T0=e=>{const t=j.useRef([e,(...n)=>t[0](...n)]).current;return Y6(()=>{t[0]=e}),t[1]},Q6="popstate",D0="pushState",O0="replaceState",X6="hashchange",Pj=[Q6,D0,O0,X6],Z6=e=>{for(const t of Pj)addEventListener(t,e);return()=>{for(const t of Pj)removeEventListener(t,e)}},u3=(e,t)=>
48W6.useSyncExternalStore(Z6,e,t),J6=()=>location.search,eU=({ssrSearch:e=""}={})=>u3(J6,()=>e),Tj=()=>location.pathname,tU=({ssrPath:e}={})=>u3(Tj,e?()=>e:Tj),nU=(e,{replace:t=!1,state:n=null}={})=>history[t?O0:D0](n,"",e),rU=(e={})=>[tU(e),nU],Dj=Symbol.for("wouter_v3");if(typeof history<"u"&&typeof window[Dj]>"u"){for(const e of[D0,O0]){const t=history[e];history[e]=function(){const n=t.apply(this,arguments),i=new Event(e);return i.arguments=arguments,dispatchEvent(i),n}}Object.defineProperty(window,Dj,{value:!0})}const iU=(e,t)=>t.toLowerCase().indexOf(e.toLowerCase())?"~"+t:t.slice(e.length)||"/",p3=(e="")=>e==="/"?"":e,aU=(e,t)=>e[0]==="~"?e.slice(1):p3(t)+e,sU=(e="",t)=>iU(Oj(p3(e)),Oj(t)),Oj=e=>{try{return decodeURI(e)}catch{return e}},m3={hook:rU,searchHook:eU,parser:R6,base:"",ssrPath:void 0,ssrSearch:void 0,hrefs:e=>e},h3=j.createContext(m3),Ju=()=>j.useContext(h3),f3={},g3=j.createContext(f3),oU=()=>j.useContext(g3),Zf=e=>{const[t,n]=e.hook(e);return[sU(e.base,t),T0((i,a)=>n(aU(i,e.base),a))]},Jf=()=>Zf(Ju()),x3=(e,t,n,i)=>{const{pattern:a,keys:s}=t instanceof RegExp?{keys:!1,pattern:t}:e(t||"*",i),o=a.exec(n)||[],[l,...c]=o;return l!==void 0?[!0,(()=>{const d=s!==!1?Object.fromEntries(s.map((p,m)=>[p,c[m]])):o.groups;let u={...c};return d&&Object.assign(u,d),u})(),...i?[l]:[]]:[!1,null]},lU=({children:e,...t})=>{var u,p;const n=Ju(),i=t.hook?m3:n;let a=i;const[s,o]=((u=t.ssrPath)==null?void 0:u.split("?"))??[];o&&(t.ssrSearch=o,t.ssrPath=s),t.hrefs=t.hrefs??((p=t.hook)==null?void 0:p.hrefs);let l=j.useRef({}),c=l.current,d=c;for(let m in i){const f=m==="base"?i[m]+(t[m]||""):t[m]||i[m];c===d&&f!==d[m]&&(l.current=d={...d}),d[m]=f,f!==i[m]&&(a=d)}return j.createElement(h3.Provider,{value:a,children:e})},Mj=({children:e,component:t},n)=>t?j.createElement(t,{params:n}):typeof e=="function"?e(n):e,cU=e=>{let t=j.useRef(f3),n=t.current;for(const i in e)e[i]!==n[i]&&(n=e);return Object.keys(e).length===0&&(n=e),t.current=n},De=({path:e,nest:t,match:n,...i})=>{const a=Ju(),[s]=Zf(a),[o,l,c]=n??x3(a.parser,e,s,t),d=cU({...oU(),...l});if(!o)return null;const u=c?j.createElement(lU,{base:c},Mj(i,d)):Mj(i,d);return j.createElement(g3.Provider,{value:d,children:u})},de=j.forwardRef((e,t)=>{const n=Ju(),[i,a]=Zf(n),{to:s="",href:o=s,onClick:l,asChild:c,children:d,className:u,replace:p,state:m,...f}=e,x=T0(g=>{g.ctrlKey||g.metaKey||g.altKey||g.shiftKey||g.button!==0||(l==null||l(g),g.defaultPrevented||(g.preventDefault(),a(o,e)))}),h=n.hrefs(o[0]==="~"?o.slice(1):n.base+o,n);return c&&j.isValidElement(d)?j.cloneElement(d,{onClick:x,href:h}):j.createElement("a",{...f,onClick:x,href:h,className:u!=null&&u.call?u(i===o):u,children:d,ref:t})}),y3=e=>Array.isArray(e)?e.flatMap(t=>y3(t&&t.type===j.Fragment?t.props.children:t)):[e],dU=({children:e,location:t})=>{const n=Ju(),[i]=Zf(n);for(const a of y3(e)){let s=0;if(j.isValidElement(a)&&(s=x3(n.parser,a.props.path,t||i,a.props.nest))[0])return j.cloneElement(a,{match:s})}return null},uU=e=>{const{to:t,href:n=t}=e,[,i]=Jf(),a=T0(()=>i(t||n,e));return d3(()=>{a()},[]),null};var nc=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Ws=typeof window>"u"||"Deno"in globalThis;function ar(){}function pU(e,t){return typeof e=="function"?e(t):e}function Sv(e){return typeof e=="number"&&e>=0&&e!==1/0}function v3(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Ko(e,t){return typeof e=="function"?e(t):e}function _r(e,t){return typeof e=="function"?e(t):e}function Rj(e,t){const{type:n="all",exact:i,fetchStatus:a,predicate:s,queryKey:o,stale:l}=e;if(o){if(i){if(t.queryHash!==M0(o,t.options))return!1}else if(!Gd(t.queryKey,o))return!1}if(n!=="all"){const c=t.isActive();if(n==="active"&&!c||n==="inactive"&&c)return!1}return!(typeof l=="boolean"&&t.isStale()!==l||a&&a!==t.state.fetchStatus||s&&!s(t))}function Lj(e,t){const{exact:n,status:i,predicate:a,mutationKey:s}=e;if(s){if(!t.options.mutationKey)return!1;
vendor: 37,454 bytes, line 48
48if(n){if(Vs(t.options.mutationKey)!==Vs(s))return!1}else if(!Gd(t.options.mutationKey,s))return!1}return!(i&&t.state.status!==i||a&&!a(t))}function M0(e,t){return((t==null?void 0:t.queryKeyHashFn)||Vs)(e)}function Vs(e){return JSON.stringify(e,(t,n)=>Cv(n)?Object.keys(n).sort().reduce((i,a)=>(i[a]=n[a],i),{}):n)}function Gd(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?!Object.keys(t).some(n=>!Gd(e[n],t[n])):!1}function b3(e,t){if(e===t)return e;const n=Fj(e)&&Fj(t);if(n||Cv(e)&&Cv(t)){const i=n?e:Object.keys(e),a=i.length,s=n?t:Object.keys(t),o=s.length,l=n?[]:{};let c=0;for(let d=0;d<o;d++){const u=n?d:s[d];(!n&&i.includes(u)||n)&&e[u]===void 0&&t[u]===void 0?(l[u]=void 0,c++):(l[u]=b3(e[u],t[u]),l[u]===e[u]&&e[u]!==void 0&&c++)}return a===o&&c===a?e:l}return t}function dh(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(e[n]!==t[n])return!1;return!0}function Fj(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function Cv(e){if(!Bj(e))return!1;const t=e.constructor;if(t===void 0)return!0;const n=t.prototype;return!(!Bj(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function Bj(e){return Object.prototype.toString.call(e)==="[object Object]"}function mU(e){return new Promise(t=>{setTimeout(t,e)})}function Ev(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?b3(e,t):t}function hU(e,t,n=0){const i=[...e,t];return n&&i.length>n?i.slice(1):i}function fU(e,t,n=0){const i=[t,...e];return n&&i.length>n?i.slice(0,-1):i}var R0=Symbol();function w3(e,t){return!e.queryFn&&(t!=null&&t.initialPromise)?()=>t.initialPromise:!e.queryFn||e.queryFn===R0?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}var ks,fa,sl,nC,gU=(nC=class extends nc{constructor(){super();me(this,ks);me(this,fa);me(this,sl);se(this,sl,t=>{if(!Ws&&window.addEventListener){const n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){T(this,fa)||this.setEventListener(T(this,sl))}onUnsubscribe(){var t;this.hasListeners()||((t=T(this,fa))==null||t.call(this),se(this,fa,void 0))}setEventListener(t){var n;se(this,sl,t),(n=T(this,fa))==null||n.call(this),se(this,fa,t(i=>{typeof i=="boolean"?this.setFocused(i):this.onFocus()}))}setFocused(t){T(this,ks)!==t&&(se(this,ks,t),this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){var t;return typeof T(this,ks)=="boolean"?T(this,ks):((t=globalThis.document)==null?void 0:t.visibilityState)!=="hidden"}},ks=new WeakMap,fa=new WeakMap,sl=new WeakMap,nC),L0=new gU,ol,ga,ll,rC,xU=(rC=class extends nc{constructor(){super();me(this,ol,!0);me(this,ga);me(this,ll);se(this,ll,t=>{if(!Ws&&window.addEventListener){const n=()=>t(!0),i=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",i,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",i)}}})}onSubscribe(){T(this,ga)||this.setEventListener(T(this,ll))}onUnsubscribe(){var t;this.hasListeners()||((t=T(this,ga))==null||t.call(this),se(this,ga,void 0))}setEventListener(t){var n;se(this,ll,t),(n=T(this,ga))==null||n.call(this),se(this,ga,t(this.setOnline.bind(this)))}setOnline(t){T(this,ol)!==t&&(se(this,ol,t),this.listeners.forEach(i=>{i(t)}))}isOnline(){return T(this,ol)}},ol=new WeakMap,ga=new WeakMap,ll=new WeakMap,rC),uh=new xU;function _v(){let e,t;const n=new Promise((a,s)=>{e=a,t=s});n.status="pending",n.catch(()=>{});function i(a){Object.assign(n,a),delete n.resolve,delete n.reject}return n.resolve=a=>{i({status:"fulfilled",value:a}),e(a)},n.reject=a=>{i({status:"rejected",reason:a}),t(a)},n}function yU(e){return Math.min(1e3*2**e,3e4)}function A3(e){return(e??"online")==="online"?uh.isOnline():!0}var j3=class extends Error{constructor(e){super("CancelledError"),this.revert=e==null?void 0:e.revert,this.silent=e==null?void 0:e.silent}};function Cx(e){return e instanceof j3}function k3(e){let t=!1,n=0,i=!1,a;const s=_v(),o=h=>{var g;i||(m(new j3(h)),(g=e.abort)==null||g.call(e))},l=()=>{t=!0},c=()=>{t=!1},d=()=>L0.isFocused()&&(e.networkMode==="always"||uh.isOnline())&&e.canRun(),u=()=>A3(e.networkMode)&&e.canRun(),p=h=>{var g;i||(i=!0,(g=e.onSuccess)==null||g.call(e,h),a==null||a(),s.resolve(h))},m=h=>{var g;i||(i=!0,(g=e.onError)==null||g.call(e,h),a==null||a(),s.reject(h))},f=()=>new Promise(h=>{var g;a=y=>{(i||d())&&h(y)},(g=e.onPause)==null||g.call(e)}).then(()=>{var h;a=void 0,i||(h=e.onContinue)==null||h.call(e)}),x=()=>{if(i)return;let h;const g=n===0?e.initialPromise:void 0;try{h=g??e.fn()}catch(y){h=Promise.reject(y)}Promise.resolve(h).then(p).catch(y=>{var k;if(i)return;const v=e.retry??(Ws?0:3),b=e.retryDelay??yU,A=typeof b=="function"?b(n,y):b,w=v===!0||typeof v=="number"&&n<v||typeof v=="function"&&v(n,y);if(t||!w){m(y);return}n++,(k=e.onFail)==null||k.call(e,n,y),mU(A).then(()=>d()?void 0:f()).then(()=>{t?m(y):x()})})};return{promise:s,cancel:o,continue:()=>(a==null||a(),s),cancelRetry:l,continueRetry:c,canStart:u,start:()=>(u()?x():f().then(x),s)}}function vU(){let e=[],t=0,n=l=>{l()},i=l=>{l()},a=l=>setTimeout(l,0);const s=l=>{t?e.push(l):a(()=>{n(l)})},o=()=>{const l=e;e=[],l.length&&a(()=>{i(()=>{l.forEach(c=>{n(c)})})})};return{batch:l=>{let c;t++;try{c=l()}finally{t--,t||o()}return c},batchCalls:l=>(...c)=>{s(()=>{l(...c)})},schedule:s,setNotifyFunction:l=>{n=l},setBatchNotifyFunction:l=>{i=l},setScheduler:l=>{a=l}}}var $t=vU(),Ns,iC,N3=(iC=class{constructor(){me(this,Ns)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Sv(this.gcTime)&&se(this,Ns,setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Ws?1/0:5*60*1e3))}clearGcTimeout(){T(this,Ns)&&(clearTimeout(T(this,Ns)),se(this,Ns,void 0))}},Ns=new WeakMap,iC),cl,dl,ir,pn,Hu,Is,Nr,ki,aC,bU=(aC=class extends N3{constructor(t){super();me(this,Nr);me(this,cl);me(this,dl);me(this,ir);me(this,pn);me(this,Hu);me(this,Is);se(this,Is,!1),se(this,Hu,t.defaultOptions),this.setOptions(t.options),this.observers=[],se(this,ir,t.cache),this.queryKey=t.queryKey,this.queryHash=t.queryHash,se(this,cl,wU(this.options)),this.state=t.state??T(this,cl),this.scheduleGc()}get meta(){return this.options.meta}get promise(){var t;return(t=T(this,pn))==null?void 0:t.promise}setOptions(t){this.options={...T(this,Hu),...t},this.updateGcTime(this.options.gcTime)}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&T(this,ir).remove(this)}setData(t,n){const i=Ev(this.state.data,t,this.options);return Ce(this,Nr,ki).call(this,{data:i,type:"success",dataUpdatedAt:n==null?void 0:n.updatedAt,manual:n==null?void 0:n.manual}),i}setState(t,n){Ce(this,Nr,ki).call(this,{type:"setState",state:t,setStateOptions:n})}cancel(t){var i,a;const n=(i=T(this,pn))==null?void 0:i.promise;return(a=T(this,pn))==null||a.cancel(t),n?n.then(ar).catch(ar):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(T(this,cl))}isActive(){return this.observers.some(t=>_r(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===R0||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStale(){return this.state.isInvalidated?!0:this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0}isStaleByTime(t=0){return this.state.isInvalidated||this.state.data===void 0||!v3(this.state.dataUpdatedAt,t)}onFocus(){var n;const t=this.observers.find(i=>i.shouldFetchOnWindowFocus());t==null||t.refetch({cancelRefetch:!1}),(n=T(this,pn))==null||n.continue()}onOnline(){var n;const t=this.observers.find(i=>i.shouldFetchOnReconnect());t==null||t.refetch({cancelRefetch:!1}),(n=T(this,pn))==null||n.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),T(this,ir).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(n=>n!==t),this.observers.length||(T(this,pn)&&(T(this,Is)?T(this,pn).cancel({revert:!0}):T(this,pn).cancelRetry()),this.scheduleGc()),T(this,ir).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||Ce(this,Nr,ki).call(this,{type:"invalidate"})}fetch(t,n){var c,d,u;if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&(n!=null&&n.cancelRefetch))this.cancel({silent:!0});else if(T(this,pn))return T(this,pn).continueRetry(),T(this,pn).promise}if(t&&this.setOptions(t),!this.options.queryFn){const p=this.observers.find(m=>m.options.queryFn);p&&this.setOptions(p.options)}const i=new AbortController,a=p=>{Object.defineProperty(p,"signal",{enumerable:!0,get:()=>(se(this,Is,!0),i.signal)})},s=()=>{const p=w3(this.options,n),m={queryKey:this.queryKey,meta:this.meta};return a(m),se(this,Is,!1),this.options.persister?this.options.persister(p,m,this):p(m)},o={fetchOptions:n,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:s};a(o),(c=this.options.behavior)==null||c.onFetch(o,this),se(this,dl,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((d=o.fetchOptions)==null?void 0:d.meta))&&Ce(this,Nr,ki).call(this,{type:"fetch",meta:(u=o.fetchOptions)==null?void 0:u.meta});const l=p=>{var m,f,x,h;Cx(p)&&p.silent||Ce(this,Nr,ki).call(this,{type:"error",error:p}),Cx(p)||((f=(m=T(this,ir).config).onError)==null||f.call(m,p,this),(h=(x=T(this,ir).config).onSettled)==null||h.call(x,this.state.data,p,this)),this.scheduleGc()};return se(this,pn,k3({initialPromise:n==null?void 0:n.initialPromise,fn:o.fetchFn,abort:i.abort.bind(i),onSuccess:p=>{var m,f,x,h;if(p===void 0){l(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(p)}catch(g){l(g);return}(f=(m=T(this,ir).config).onSuccess)==null||f.call(m,p,this),(h=(x=T(this,ir).config).onSettled)==null||h.call(x,p,this.state.error,this),this.scheduleGc()},onError:l,onFail:(p,m)=>{Ce(this,Nr,ki).call(this,{type:"failed",failureCount:p,error:m})},onPause:()=>{Ce(this,Nr,ki).call(this,{type:"pause"})},onContinue:()=>{Ce(this,Nr,ki).call(this,{type:"continue"})},retry:o.options.retry,retryDelay:o.options.retryDelay,networkMode:o.options.networkMode,canRun:()=>!0})),T(this,pn).start()}},cl=new WeakMap,dl=new WeakMap,ir=new WeakMap,pn=new WeakMap,Hu=new WeakMap,Is=new WeakMap,Nr=new WeakSet,ki=function(t){const n=i=>{switch(t.type){case"failed":return{...i,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...i,fetchStatus:"paused"};case"continue":return{...i,fetchStatus:"fetching"};case"fetch":return{...i,...I3(i.data,this.options),fetchMeta:t.meta??null};case"success":return{...i,data:t.data,dataUpdateCount:i.dataUpdateCount+1,dataUpdatedAt:t.dataUpdatedAt??Date.now(),error:null,isInvalidated:!1,status:"success",...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const a=t.error;return Cx(a)&&a.revert&&T(this,dl)?{...T(this,dl),fetchStatus:"idle"}:{...i,error:a,errorUpdateCount:i.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:i.fetchFailureCount+1,fetchFailureReason:a,fetchStatus:"idle",status:"error"};case"invalidate":return{...i,isInvalidated:!0};case"setState":return{...i,...t.state}}};this.state=n(this.state),$t.batch(()=>{this.observers.forEach(i=>{i.onQueryUpdate()}),T(this,ir).notify({query:this,type:"updated",action:t})})},aC);function I3(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:A3(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function wU(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,i=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?i??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var Jr,sC,AU=(sC=class extends nc{constructor(t={}){super();me(this,Jr);this.config=t,se(this,Jr,new Map)}build(t,n,i){const a=n.queryKey,s=n.queryHash??M0(a,n);let o=this.get(s);return o||(o=new bU({cache:this,queryKey:a,queryHash:s,options:t.defaultQueryOptions(n),state:i,defaultOptions:t.getQueryDefaults(a)}),this.add(o)),o}add(t){T(this,Jr).has(t.queryHash)||(T(this,Jr).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const n=T(this,Jr).get(t.queryHash);n&&(t.destroy(),n===t&&T(this,Jr).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){$t.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return T(this,Jr).get(t)}getAll(){return[...T(this,Jr).values()]}find(t){const n={exact:!0,...t};return this.getAll().find(i=>Rj(n,i))}findAll(t={}){const n=this.getAll();return Object.keys(t).length>0?n.filter(i=>Rj(t,i)):n}notify(t){$t.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){$t.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){$t.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},Jr=new WeakMap,sC),ei,bn,Ss,ti,sa,oC,jU=(oC=class extends N3{constructor(t){super();me(this,ti);me(this,ei);me(this,bn);me(this,Ss);this.mutationId=t.mutationId,se(this,bn,t.mutationCache),se(this,ei,[]),this.state=t.state||S3(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){T(this,ei).includes(t)||(T(this,ei).push(t),this.clearGcTimeout(),T(this,bn).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){se(this,ei,T(this,ei).filter(n=>n!==t)),this.scheduleGc(),T(this,bn).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){T(this,ei).length||(this.state.status==="pending"?this.scheduleGc():T(this,bn).remove(this))}continue(){var t;return((t=T(this,Ss))==null?void 0:t.continue())??this.execute(this.state.variables)}async execute(t){var a,s,o,l,c,d,u,p,m,f,x,h,g,y,v,b,A,w,k,N;se(this,Ss,k3({fn:()=>this.options.mutationFn?this.options.mutationFn(t):Promise.reject(new Error("No mutationFn found")),onFail:(I,C)=>{Ce(this,ti,sa).call(this,{type:"failed",failureCount:I,error:C})},onPause:()=>{Ce(this,ti,sa).call(this,{type:"pause"})},onContinue:()=>{Ce(this,ti,sa).call(this,{type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>T(this,bn).canRun(this)}));const n=this.state.status==="pending",i=!T(this,Ss).canStart();try{if(!n){Ce(this,ti,sa).call(this,{type:"pending",variables:t,isPaused:i}),await((s=(a=T(this,bn).config).onMutate)==null?void 0:s.call(a,t,this));const C=await((l=(o=this.options).onMutate)==null?void 0:l.call(o,t));C!==this.state.context&&Ce(this,ti,sa).call(this,{type:"pending",context:C,variables:t,isPaused:i})}const I=await T(this,Ss).start();return await((d=(c=T(this,bn).config).onSuccess)==null?void 0:d.call(c,I,t,this.state.context,this)),await((p=(u=this.options).onSuccess)==null?void 0:p.call(u,I,t,this.state.context)),await((f=(m=T(this,bn).config).onSettled)==null?void 0:f.call(m,I,null,this.state.variables,this.state.context,this)),await((h=(x=this.options).onSettled)==null?void 0:h.call(x,I,null,t,this.state.context)),Ce(this,ti,sa).call(this,{type:"success",data:I}),I}catch(I){try{throw await((y=(g=T(this,bn).config).onError)==null?void 0:y.call(g,I,t,this.state.context,this)),await((b=(v=this.options).onError)==null?void 0:b.call(v,I,t,this.state.context)),await((w=(A=T(this,bn).config).onSettled)==null?void 0:w.call(A,void 0,I,this.state.variables,this.state.context,this)),await((N=(k=this.options).onSettled)==null?void 0:N.call(k,void 0,I,t,this.state.context)),I}finally{Ce(this,ti,sa).call(this,{type:"error",error:I})}}finally{T(this,bn).runNext(this)}}},ei=new WeakMap,bn=new WeakMap,Ss=new WeakMap,ti=new WeakSet,sa=function(t){const n=i=>{switch(t.type){case"failed":return{...i,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...i,isPaused:!0};case"continue":return{...i,isPaused:!1};case"pending":return{...i,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...i,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...i,data:void 0,error:t.error,failureCount:i.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),$t.batch(()=>{T(this,ei).forEach(i=>{i.onMutationUpdate(t)}),T(this,bn).notify({mutation:this,type:"updated",action:t})})},oC);function S3(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var Un,zu,lC,kU=(lC=class extends nc{constructor(t={}){super();me(this,Un);me(this,zu);this.config=t,se(this,Un,new Map),se(this,zu,Date.now())}build(t,n,i){const a=new jU({mutationCache:this,mutationId:++bp(this,zu)._,options:t.defaultMutationOptions(n),state:i});return this.add(a),a}add(t){const n=Bp(t),i=T(this,Un).get(n)??[];i.push(t),T(this,Un).set(n,i),this.notify({type:"added",mutation:t})}remove(t){var i;const n=Bp(t);if(T(this,Un).has(n)){const a=(i=T(this,Un).get(n))==null?void 0:i.filter(s=>s!==t);a&&(a.length===0?T(this,Un).delete(n):T(this,Un).set(n,a))}this.notify({type:"removed",mutation:t})}canRun(t){var i;const n=(i=T(this,Un).get(Bp(t)))==null?void 0:i.find(a=>a.state.status==="pending");return!n||n===t}runNext(t){var i;const n=(i=T(this,Un).get(Bp(t)))==null?void 0:i.find(a=>a!==t&&a.state.isPaused);return(n==null?void 0:n.continue())??Promise.resolve()}clear(){$t.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}getAll(){return[...T(this,Un).values()].flat()}find(t){const n={exact:!0,...t};return this.getAll().find(i=>Lj(n,i))}findAll(t={}){return this.getAll().filter(n=>Lj(t,n))}notify(t){$t.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){const t=this.getAll().filter(n=>n.state.isPaused);return $t.batch(()=>Promise.all(t.map(n=>n.continue().catch(ar))))}},Un=new WeakMap,zu=new WeakMap,lC);function Bp(e){var t;return((t=e.options.scope)==null?void 0:t.id)??String(e.mutationId)}function $j(e){return{onFetch:(t,n)=>{var u,p,m,f,x;const i=t.options,a=(m=(p=(u=t.fetchOptions)==null?void 0:u.meta)==null?void 0:p.fetchMore)==null?void 0:m.direction,s=((f=t.state.data)==null?void 0:f.pages)||[],o=((x=t.state.data)==null?void 0:x.pageParams)||[];let l={pages:[],pageParams:[]},c=0;const d=async()=>{let h=!1;const g=b=>{Object.defineProperty(b,"signal",{enumerable:!0,get:()=>(t.signal.aborted?h=!0:t.signal.addEventListener("abort",()=>{h=!0}),t.signal)})},y=w3(t.options,t.fetchOptions),v=async(b,A,w)=>{if(h)return Promise.reject();if(A==null&&b.pages.length)return Promise.resolve(b);const k={queryKey:t.queryKey,pageParam:A,direction:w?"backward":"forward",meta:t.options.meta};g(k);const N=await y(k),{maxPages:I}=t.options,C=w?fU:hU;return{pages:C(b.pages,N,I),pageParams:C(b.pageParams,A,I)}};if(a&&s.length){const b=a==="backward",A=b?NU:Uj,w={pages:s,pageParams:o},k=A(i,w);l=await v(w,k,b)}else{const b=e??s.length;do{const A=c===0?o[0]??i.initialPageParam:Uj(i,l);if(c>0&&A==null)break;l=await v(l,A),c++}while(c<b)}return l};t.options.persister?t.fetchFn=()=>{var h,g;return(g=(h=t.options).persister)==null?void 0:g.call(h,d,{queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n)}:t.fetchFn=d}}}function Uj(e,{pages:t,pageParams:n}){const i=t.length-1;return t.length>0?e.getNextPageParam(t[i],t,n[i],n):void 0}function NU(e,{pages:t,pageParams:n}){var i;return t.length>0?(i=e.getPreviousPageParam)==null?void 0:i.call(e,t[0],t,n[0],n):void 0}var It,xa,ya,ul,pl,va,ml,hl,cC,IU=(cC=class{constructor(e={}){me(this,It);me(this,xa);me(this,ya);me(this,ul);me(this,pl);me(this,va);me(this,ml);me(this,hl);se(this,It,e.queryCache||new AU),se(this,xa,e.mutationCache||new kU),se(this,ya,e.defaultOptions||{}),se(this,ul,new Map),se(this,pl,new Map),se(this,va,0)}mount(){bp(this,va)._++,T(this,va)===1&&(se(this,ml,L0.subscribe(async e=>{e&&(await this.resumePausedMutations(),T(this,It).onFocus())})),se(this,hl,uh.subscribe(async e=>{e&&(await this.resumePausedMutations(),T(this,It).onOnline())})))}unmount(){var e,t;bp(this,va)._--,T(this,va)===0&&((e=T(this,ml))==null||e.call(this),se(this,ml,void 0),(t=T(this,hl))==null||t.call(this),se(this,hl,void 0))}isFetching(e){return T(this,It).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return T(this,xa).findAll({...e,status:"pending"}).length}getQueryData(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=T(this,It).get(t.queryHash))==null?void 0:n.state.data}ensureQueryData(e){const t=this.getQueryData(e.queryKey);if(t===void 0)return this.fetchQuery(e);{const n=this.defaultQueryOptions(e),i=T(this,It).build(this,n);return e.revalidateIfStale&&i.isStaleByTime(Ko(n.staleTime,i))&&this.prefetchQuery(n),Promise.resolve(t)}}getQueriesData(e){return T(this,It).findAll(e).map(({queryKey:t,state:n})=>{const i=n.data;return[t,i]})}setQueryData(e,t,n){const i=this.defaultQueryOptions({queryKey:e}),a=T(this,It).get(i.queryHash),s=a==null?void 0:a.state.data,o=pU(t,s);if(o!==void 0)return T(this,It).build(this,i).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return $t.batch(()=>T(this,It).findAll(e).map(({queryKey:i})=>[i,this.setQueryData(i,t,n)]))}getQueryState(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=T(this,It).get(t.queryHash))==null?void 0:n.state}removeQueries(e){const t=T(this,It);$t.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=T(this,It),i={type:"active",...e};return $t.batch(()=>(n.findAll(e).forEach(a=>{a.reset()}),this.refetchQueries(i,t)))}cancelQueries(e={},t={}){const n={revert:!0,...t},i=$t.batch(()=>T(this,It).findAll(e).map(a=>a.cancel(n)));return Promise.all(i).then(ar).catch(ar)}invalidateQueries(e={},t={}){return $t.batch(()=>{if(T(this,It).findAll(e).forEach(i=>{i.invalidate()}),e.refetchType==="none")return Promise.resolve();const n={...e,type:e.refetchType??e.type??"active"};return this.refetchQueries(n,t)})}refetchQueries(e={},t){const n={...t,cancelRefetch:(t==null?void 0:t.cancelRefetch)??!0},i=$t.batch(()=>T(this,It).findAll(e).filter(a=>!a.isDisabled()).map(a=>{let s=a.fetch(void 0,n);return n.throwOnError||(s=s.catch(ar)),a.state.fetchStatus==="paused"?Promise.resolve():s}));return Promise.all(i).then(ar)}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=T(this,It).build(this,t);return n.isStaleByTime(Ko(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(ar).catch(ar)}fetchInfiniteQuery(e){return e.behavior=$j(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(ar).catch(ar)}ensureInfiniteQueryData(e){return e.behavior=$j(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return uh.isOnline()?T(this,xa).resumePausedMutations():Promise.resolve()}getQueryCache(){return T(this,It)}getMutationCache(){return T(this,xa)}getDefaultOptions(){return T(this,ya)}setDefaultOptions(e){se(this,ya,e)}setQueryDefaults(e,t){T(this,ul).set(Vs(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...T(this,ul).values()];let n={};return t.forEach(i=>{Gd(e,i.queryKey)&&(n={...n,...i.defaultOptions})}),n}setMutationDefaults(e,t){T(this,pl).set(Vs(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...T(this,pl).values()];let n={};return t.forEach(i=>{Gd(e,i.mutationKey)&&(n={...n,...i.defaultOptions})}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...T(this,ya).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=M0(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.enabled!==!0&&t.queryFn===R0&&(t.enabled=!1),t}defaultMutationOptions(e){return e!=null&&e._defaulted?e:{...T(this,ya).mutations,...(e==null?void 0:e.mutationKey)&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){T(this,It).clear(),T(this,xa).clear()}},It=new WeakMap,xa=new WeakMap,ya=new WeakMap,ul=new WeakMap,pl=new WeakMap,va=new WeakMap,ml=new WeakMap,hl=new WeakMap,cC),En,Me,Wu,wn,Cs,fl,ba,ni,Vu,gl,xl,Es,_s,wa,yl,Ye,ad,Pv,Tv,Dv,Ov,Mv,Rv,Lv,C3,dC,SU=(dC=class extends nc{constructor(t,n){super();me(this,Ye);me(this,En);me(this,Me);me(this,Wu);me(this,wn);me(this,Cs);me(this,fl);me(this,ba);me(this,ni);me(this,Vu);me(this,gl);me(this,xl);me(this,Es);me(this,_s);me(this,wa);me(this,yl,new Set);this.options=n,se(this,En,t),se(this,ni,null),se(this,ba,_v()),this.options.experimental_prefetchInRender||T(this,ba).reject(new Error("experimental_prefetchInRender feature flag is not enabled")),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(T(this,Me).addObserver(this),qj(T(this,Me),this.options)?Ce(this,Ye,ad).call(this):this.updateResult(),Ce(this,Ye,Ov).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Fv(T(this,Me),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Fv(T(this,Me),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,Ce(this,Ye,Mv).call(this),Ce(this,Ye,Rv).call(this),T(this,Me).removeObserver(this)}setOptions(t,n){const i=this.options,a=T(this,Me);if(this.options=T(this,En).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof _r(this.options.enabled,T(this,Me))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");Ce(this,Ye,Lv).call(this),T(this,Me).setOptions(this.options),i._defaulted&&!dh(this.options,i)&&T(this,En).getQueryCache().notify({type:"observerOptionsUpdated",query:T(this,Me),observer:this});const s=this.hasListeners();s&&Gj(T(this,Me),a,this.options,i)&&Ce(this,Ye,ad).call(this),this.updateResult(n),s&&(T(this,Me)!==a||_r(this.options.enabled,T(this,Me))!==_r(i.enabled,T(this,Me))||Ko(this.options.staleTime,T(this,Me))!==Ko(i.staleTime,T(this,Me)))&&Ce(this,Ye,Pv).call(this);const o=Ce(this,Ye,Tv).call(this);s&&(T(this,Me)!==a||_r(this.options.enabled,T(this,Me))!==_r(i.enabled,T(this,Me))||o!==T(this,wa))&&Ce(this,Ye,Dv).call(this,o)}getOptimisticResult(t){const n=T(this,En).getQueryCache().build(T(this,En),t),i=this.createResult(n,t);return EU(this,i)&&(se(this,wn,i),se(this,fl,this.options),se(this,Cs,T(this,Me).state)),i}getCurrentResult(){return T(this,wn)}trackResult(t,n){const i={};return Object.keys(t).forEach(a=>{Object.defineProperty(i,a,{configurable:!1,enumerable:!0,get:()=>(this.trackProp(a),n==null||n(a),t[a])})}),i}trackProp(t){T(this,yl).add(t)}getCurrentQuery(){return T(this,Me)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const n=T(this,En).defaultQueryOptions(t),i=T(this,En).getQueryCache().build(T(this,En),n);return i.fetch().then(()=>this.createResult(i,n))}fetch(t){return Ce(this,Ye,ad).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),T(this,wn)))}createResult(t,n){var I;const i=T(this,Me),a=this.options,s=T(this,wn),o=T(this,Cs),l=T(this,fl),d=t!==i?t.state:T(this,Wu),{state:u}=t;let p={...u},m=!1,f;if(n._optimisticResults){const C=this.hasListeners(),O=!C&&qj(t,n),_=C&&Gj(t,i,n,a);(O||_)&&(p={...p,...I3(u.data,t.options)}),n._optimisticResults==="isRestoring"&&(p.fetchStatus="idle")}let{error:x,errorUpdatedAt:h,status:g}=p;if(n.select&&p.data!==void 0)if(s&&p.data===(o==null?void 0:o.data)&&n.select===T(this,Vu))f=T(this,gl);else try{se(this,Vu,n.select),f=n.select(p.data),f=Ev(s==null?void 0:s.data,f,n),se(this,gl,f),se(this,ni,null)}catch(C){se(this,ni,C)}else f=p.data;if(n.placeholderData!==void 0&&f===void 0&&g==="pending"){let C;if(s!=null&&s.isPlaceholderData&&n.placeholderData===(l==null?void 0:l.placeholderData))C=s.data;else if(C=typeof n.placeholderData=="function"?n.placeholderData((I=T(this,xl))==null?void 0:I.state.data,T(this,xl)):n.placeholderData,n.select&&C!==void 0)try{C=n.select(C),se(this,ni,null)}catch(O){se(this,ni,O)}C!==void 0&&(g="success",f=Ev(s==null?void 0:s.data,C,n),m=!0)}T(this,ni)&&(x=T(this,ni),f=T(this,gl),h=Date.now(),g="error");const y=p.fetchStatus==="fetching",v=g==="pending",b=g==="error",A=v&&y,w=f!==void 0,N={status:g,fetchStatus:p.fetchStatus,isPending:v,isSuccess:g==="success",isError:b,isInitialLoading:A,isLoading:A,data:f,dataUpdatedAt:p.dataUpdatedAt,error:x,errorUpdatedAt:h,failureCount:p.fetchFailureCount,failureReason:p.fetchFailureReason,errorUpdateCount:p.errorUpdateCount,isFetched:p.dataUpdateCount>0||p.errorUpdateCount>0,isFetchedAfterMount:p.dataUpdateCount>d.dataUpdateCount||p.errorUpdateCount>d.errorUpdateCount,isFetching:y,isRefetching:y&&!v,isLoadingError:b&&!w,isPaused:p.fetchStatus==="paused",isPlaceholderData:m,isRefetchError:b&&w,isStale:F0(t,n),refetch:this.refetch,promise:T(this,ba)};if(this.options.experimental_prefetchInRender){const C=D=>{N.status==="error"?D.reject(N.error):N.data!==void 0&&D.resolve(N.data)},O=()=>{const D=se(this,ba,N.promise=_v());C(D)},_=T(this,ba);switch(_.status){case"pending":t.queryHash===i.queryHash&&C(_);break;case"fulfilled":(N.status==="error"||N.data!==_.value)&&O();break;case"rejected":(N.status!=="error"||N.error!==_.reason)&&O();break}}return N}updateResult(t){const n=T(this,wn),i=this.createResult(T(this,Me),this.options);if(se(this,Cs,T(this,Me).state),se(this,fl,this.options),T(this,Cs).data!==void 0&&se(this,xl,T(this,Me)),dh(i,n))return;se(this,wn,i);const a={},s=()=>{if(!n)return!0;const{notifyOnChangeProps:o}=this.options,l=typeof o=="function"?o():o;if(l==="all"||!l&&!T(this,yl).size)return!0;const c=new Set(l??T(this,yl));return this.options.throwOnError&&c.add("error"),Object.keys(T(this,wn)).some(d=>{const u=d;return T(this,wn)[u]!==n[u]&&c.has(u)})};(t==null?void 0:t.listeners)!==!1&&s()&&(a.listeners=!0),Ce(this,Ye,C3).call(this,{...a,...t})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&Ce(this,Ye,Ov).call(this)}},En=new WeakMap,Me=new WeakMap,Wu=new WeakMap,wn=new WeakMap,Cs=new WeakMap,fl=new WeakMap,ba=new WeakMap,ni=new WeakMap,Vu=new WeakMap,gl=new WeakMap,xl=new WeakMap,Es=new WeakMap,_s=new WeakMap,wa=new WeakMap,yl=new WeakMap,Ye=new WeakSet,ad=function(t){Ce(this,Ye,Lv).call(this);let n=T(this,Me).fetch(this.options,t);return t!=null&&t.throwOnError||(n=n.catch(ar)),n},Pv=function(){Ce(this,Ye,Mv).call(this);const t=Ko(this.options.staleTime,T(this,Me));if(Ws||T(this,wn).isStale||!Sv(t))return;const i=v3(T(this,wn).dataUpdatedAt,t)+1;se(this,Es,setTimeout(()=>{T(this,wn).isStale||this.updateResult()},i))},Tv=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(T(this,Me)):this.options.refetchInterval)??!1},Dv=function(t){Ce(this,Ye,Rv).call(this),se(this,wa,t),!(Ws||_r(this.options.enabled,T(this,Me))===!1||!Sv(T(this,wa))||T(this,wa)===0)&&se(this,_s,setInterval(()=>{(this.options.refetchIntervalInBackground||L0.isFocused())&&Ce(this,Ye,ad).call(this)},T(this,wa)))},Ov=function(){Ce(this,Ye,Pv).call(this),Ce(this,Ye,Dv).call(this,Ce(this,Ye,Tv).call(this))},Mv=function(){T(this,Es)&&(clearTimeout(T(this,Es)),se(this,Es,void 0))},Rv=function(){T(this,_s)&&(clearInterval(T(this,_s)),se(this,_s,void 0))},Lv=function(){const t=T(this,En).getQueryCache().build(T(this,En),this.options);if(t===T(this,Me))return;const n=T(this,Me);se(this,Me,t),se(this,Wu,t.state),this.hasListeners()&&(n==null||n.removeObserver(this),t.addObserver(this))},C3=function(t){$t.batch(()=>{t.listeners&&this.listeners.forEach(n=>{n(T(this,wn))}),T(this,En).getQueryCache().notify({query:T(this,Me),type:"observerResultsUpdated"})})},dC);function CU(e,t){return _r(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function qj(e,t){return CU(e,t)||e.state.data!==void 0&&Fv(e,t,t.refetchOnMount)}function Fv(e,t,n){if(_r(t.enabled,e)!==!1){const i=typeof n=="function"?n(e):n;return i==="always"||i!==!1&&F0(e,t)}return!1}function Gj(e,t,n,i){return(e!==t||_r(i.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&F0(e,n)}function F0(e,t){return _r(t.enabled,e)!==!1&&e.isStaleByTime(Ko(t.staleTime,e))}function EU(e,t){return!dh(e.getCurrentResult(),t)}var Aa,ja,_n,Pi,qi,Em,Bv,uC,_U=(uC=class extends nc{constructor(n,i){super();me(this,qi);me(this,Aa);me(this,ja);me(this,_n);me(this,Pi);se(this,Aa,n),this.setOptions(i),this.bindMethods(),Ce(this,qi,Em).call(this)}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(n){var a;const i=this.options;this.options=T(this,Aa).defaultMutationOptions(n),dh(this.options,i)||T(this,Aa).getMutationCache().notify({type:"observerOptionsUpdated",mutation:T(this,_n),observer:this}),i!=null&&i.mutationKey&&this.options.mutationKey&&Vs(i.mutationKey)!==Vs(this.options.mutationKey)?this.reset():((a=T(this,_n))==null?void 0:a.state.status)==="pending"&&T(this,_n).setOptions(this.options)}onUnsubscribe(){var n;this.hasListeners()||(n=T(this,_n))==null||n.removeObserver(this)}onMutationUpdate(n){Ce(this,qi,Em).call(this),Ce(this,qi,Bv).call(this,n)}getCurrentResult(){return T(this,ja)}reset(){var n;(n=T(this,_n))==null||n.removeObserver(this),se(this,_n,void 0),Ce(this,qi,Em).call(this),Ce(this,qi,Bv).call(this)}mutate(n,i){var a;return se(this,Pi,i),(a=T(this,_n))==null||a.removeObserver(this),se(this,_n,T(this,Aa).getMutationCache().build(T(this,Aa),this.options)),T(this,_n).addObserver(this),T(this,_n).execute(n)}},Aa=new WeakMap,ja=new WeakMap,_n=new WeakMap,Pi=new WeakMap,qi=new WeakSet,Em=function(){var i;const n=((i=T(this,_n))==null?void 0:i.state)??S3();se(this,ja,{...n,isPending:n.status==="pending",isSuccess:n.status==="success",isError:n.status==="error",isIdle:n.status==="idle",mutate:this.mutate,reset:this.reset})},Bv=function(n){$t.batch(()=>{var i,a,s,o,l,c,d,u;if(T(this,Pi)&&this.hasListeners()){const p=T(this,ja).variables,m=T(this,ja).context;(n==null?void 0:n.type)==="success"?((a=(i=T(this,Pi)).onSuccess)==null||a.call(i,n.data,p,m),(o=(s=T(this,Pi)).onSettled)==null||o.call(s,n.data,null,p,m)):(n==null?void 0:n.type)==="error"&&((c=(l=T(this,Pi)).onError)==null||c.call(l,n.error,p,m),(u=(d=T(this,Pi)).onSettled)==null||u.call(d,void 0,n.error,p,m))}this.listeners.forEach(p=>{p(T(this,ja))})})},uC),E3=j.createContext(void 0),Ln=e=>{const t=j.useContext(E3);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},PU=({client:e,children:t})=>(j.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),r.jsx(E3.Provider,{value:e,children:t})),_3=j.createContext(!1),TU=()=>j.useContext(_3);_3.Provider;function DU(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var OU=j.createContext(DU()),MU=()=>j.useContext(OU);function P3(e,t){return typeof e=="function"?e(...t):!!e}function $v(){}var RU=(e,t)=>{(e.suspense||e.throwOnError||e.experimental_prefetchInRender)&&(t.isReset()||(e.retryOnMount=!1))},LU=e=>{j.useEffect(()=>{e.clearReset()},[e])},FU=({result:e,errorResetBoundary:t,throwOnError:n,query:i})=>e.isError&&!t.isReset()&&!e.isFetching&&i&&P3(n,[e.error,i]),BU=e=>{e.suspense&&(e.staleTime===void 0&&(e.staleTime=1e3),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3)))},$U=(e,t)=>e.isLoading&&e.isFetching&&!t,UU=(e,t)=>(e==null?void 0:e.suspense)&&t.isPending,Hj=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function qU(e,t,n){var u,p,m,f,x;const i=Ln(),a=TU(),s=MU(),o=i.defaultQueryOptions(e);(p=(u=i.getDefaultOptions().queries)==null?void 0:u._experimental_beforeQuery)==null||p.call(u,o),o._optimisticResults=a?"isRestoring":"optimistic",BU(o),RU(o,s),LU(s);const l=!i.getQueryCache().get(o.queryHash),[c]=j.useState(()=>new t(i,o)),d=c.getOptimisticResult(o);if(j.useSyncExternalStore(j.useCallback(h=>{const g=a?$v:c.subscribe($t.batchCalls(h));return c.updateResult(),g},[c,a]),()=>c.getCurrentResult(),()=>c.getCurrentResult()),j.useEffect(()=>{c.setOptions(o,{listeners:!1})},[o,c]),UU(o,d))throw Hj(o,c,s);if(FU({result:d,errorResetBoundary:s,throwOnError:o.throwOnError,query:i.getQueryCache().get(o.queryHash)}))throw d.error;if((f=(m=i.getDefaultOptions().queries)==null?void 0:m._experimental_afterQuery)==null||f.call(m,o,d),o.experimental_prefetchInRender&&!Ws&&$U(d,a)){const h=l?Hj(o,c,s):(x=i.getQueryCache().get(o.queryHash))==null?void 0:x.promise;h==null||h.catch($v).finally(()=>{c.updateResult()})}return o.notifyOnChangeProps?d:c.trackResult(d)}function We(e,t){return qU(e,SU)}function sn(e,t){const n=Ln(),[i]=j.useState(()=>new _U(n,e));j.useEffect(()=>{i.setOptions(e)},[i,e]);const a=j.useSyncExternalStore(j.useCallback(o=>i.subscribe($t.batchCalls(o)),[i]),()=>i.getCurrentResult(),()=>i.getCurrentResult()),s=j.useCallback((o,l)=>{i.mutate(o,l).catch($v)},[i]);if(a.error&&P3(i.options.throwOnError,[a.error]))throw a.error;return{...a,mutate:s,mutateAsync:a.mutate}}
48class rc extends Error{constructor(t,n){super(n),this.status=t,this.name="ApiError"}}function Ga(e){return e instanceof rc&&(e.status===401||e.status===403)}async function T3(e){if(!e.ok){const t=await e.text()||e.statusText;let n=t;try{const i=JSON.parse(t);n=i.error??i.message??t}catch{}throw new rc(e.status,n)}}async function Mt(e,t,n){const i=await fetch(t,{method:e,headers:n?{"Content-Type":"application/json"}:{},body:n?JSON.stringify(n):void 0,credentials:"include"});return await T3(i),i}const Ti=({on401:e})=>async({queryKey:t})=>{const n=await fetch(t[0],{credentials:"include"});return e==="returnNull"&&n.status===401?null:(await T3(n),await n.json())},GU=new IU({defaultOptions:{queries:{queryFn:Ti({on401:"throw"}),refetchInterval:!1,refetchOnWindowFocus:!1,staleTime:1/0,retry:!1},mutations:{retry:!1}}}),HU=1,zU=1e6;let Ex=0;function WU(){return Ex=(Ex+1)%Number.MAX_SAFE_INTEGER,Ex.toString()}const _x=new Map,zj=e=>{if(_x.has(e))return;const t=setTimeout(()=>{_x.delete(e),bd({type:"REMOVE_TOAST",toastId:e})},zU);_x.set(e,t)},VU=(e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,HU)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(n=>n.id===t.toast.id?{...n,...t.toast}:n)};case"DISMISS_TOAST":{const{toastId:n}=t;return n?zj(n):e.toasts.forEach(i=>{zj(i.id)}),{...e,toasts:e.toasts.map(i=>i.id===n||n===void 0?{...i,open:!1}:i)}}case"REMOVE_TOAST":return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(n=>n.id!==t.toastId)}}},_m=[];let Pm={toasts:[]};function bd(e){Pm=VU(Pm,e),_m.forEach(t=>{t(Pm)})}function KU({...e}){const t=WU(),n=a=>bd({type:"UPDATE_TOAST",toast:{...a,id:t}}),i=()=>bd({type:"DISMISS_TOAST",toastId:t});return bd({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:a=>{a||i()}}}),{id:t,dismiss:i,update:n}}function D3(){const[e,t]=j.useState(Pm);return j.useEffect(()=>(_m.push(t),()=>{const n=_m.indexOf(t);n>-1&&_m.splice(n,1)}),[e]),{...e,toast:KU,dismiss:n=>bd({type:"DISMISS_TOAST",toastId:n})}}function Yt(e,t,{checkForDefaultPrevented:n=!0}={}){return function(a){if(e==null||e(a),n===!1||!a.defaultPrevented)return t==null?void 0:t(a)}}function YU(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function O3(...e){return t=>e.forEach(n=>YU(n,t))}function Gr(...e){return j.useCallback(O3(...e),e)}function QU(e,t=[]){let n=[];function i(s,o){const l=j.createContext(o),c=n.length;n=[...n,o];function d(p){const{scope:m,children:f,...x}=p,h=(m==null?void 0:m[e][c])||l,g=j.useMemo(()=>x,Object.values(x));return r.jsx(h.Provider,{value:g,children:f})}function u(p,m){const f=(m==null?void 0:m[e][c])||l,x=j.useContext(f);if(x)return x;if(o!==void 0)return o;throw new Error(`\`${p}\` must be used within \`${s}\``)}return d.displayName=s+"Provider",[d,u]}const a=()=>{const s=n.map(o=>j.createContext(o));return function(l){const c=(l==null?void 0:l[e])||s;return j.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])}};return a.scopeName=e,[i,XU(a,...t)]}function XU(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const i=e.map(a=>({useScope:a(),scopeName:a.scopeName}));return function(s){const o=i.reduce((l,{useScope:c,scopeName:d})=>{const p=c(s)[`__scope${d}`];return{...l,...p}},{});return j.useMemo(()=>({[`__scope${t.scopeName}`]:o}),[o])}};return n.scopeName=t.scopeName,n}var Sl=j.forwardRef((e,t)=>{const{children:n,...i}=e,a=j.Children.toArray(n),s=a.find(JU);if(s){const o=s.props.children,l=a.map(c=>c===s?j.Children.count(o)>1?j.Children.only(null):j.isValidElement(o)?o.props.children:null:c);return r.jsx(Uv,{...i,ref:t,children:j.isValidElement(o)?j.cloneElement(o,void 0,l):null})}return r.jsx(Uv,{...i,ref:t,children:n})});Sl.displayName="Slot";var Uv=j.forwardRef((e,t)=>{const{children:n,...i}=e;if(j.isValidElement(n)){const a=tq(n);return j.cloneElement(n,{...eq(i,n.props),ref:t?O3(t,a):a})}return j.Children.count(n)>1?j.Children.only(null):null});Uv.displayName="SlotClone";var ZU=({children:e})=>r.jsx(r.Fragment,{children:e});function JU(e){return j.isValidElement(e)&&e.type===ZU}function eq(e,t){const n={...t};for(const i in t){const a=e[i],s=t[i];/^on[A-Z]/.test(i)?a&&s?n[i]=(...l)=>
vendor: 9,958 bytes, line 48
48{s(...l),a(...l)}:a&&(n[i]=a):i==="style"?n[i]={...a,...s}:i==="className"&&(n[i]=[a,s].filter(Boolean).join(" "))}return{...e,...n}}function tq(e){var i,a;let t=(i=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:i.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function nq(e){const t=e+"CollectionProvider",[n,i]=QU(t),[a,s]=n(t,{collectionRef:{current:null},itemMap:new Map}),o=f=>{const{scope:x,children:h}=f,g=F.useRef(null),y=F.useRef(new Map).current;return r.jsx(a,{scope:x,itemMap:y,collectionRef:g,children:h})};o.displayName=t;const l=e+"CollectionSlot",c=F.forwardRef((f,x)=>{const{scope:h,children:g}=f,y=s(l,h),v=Gr(x,y.collectionRef);return r.jsx(Sl,{ref:v,children:g})});c.displayName=l;const d=e+"CollectionItemSlot",u="data-radix-collection-item",p=F.forwardRef((f,x)=>{const{scope:h,children:g,...y}=f,v=F.useRef(null),b=Gr(x,v),A=s(d,h);return F.useEffect(()=>(A.itemMap.set(v,{ref:v,...y}),()=>void A.itemMap.delete(v))),r.jsx(Sl,{[u]:"",ref:b,children:g})});p.displayName=d;function m(f){const x=s(e+"CollectionConsumer",f);return F.useCallback(()=>{const g=x.collectionRef.current;if(!g)return[];const y=Array.from(g.querySelectorAll(`[${u}]`));return Array.from(x.itemMap.values()).sort((A,w)=>y.indexOf(A.ref.current)-y.indexOf(w.ref.current))},[x.collectionRef,x.itemMap])}return[{Provider:o,Slot:c,ItemSlot:p},m,i]}function rq(e,t){const n=j.createContext(t),i=s=>{const{children:o,...l}=s,c=j.useMemo(()=>l,Object.values(l));return r.jsx(n.Provider,{value:c,children:o})};i.displayName=e+"Provider";function a(s){const o=j.useContext(n);if(o)return o;if(t!==void 0)return t;throw new Error(`\`${s}\` must be used within \`${e}\``)}return[i,a]}function M3(e,t=[]){let n=[];function i(s,o){const l=j.createContext(o),c=n.length;n=[...n,o];const d=p=>{var y;const{scope:m,children:f,...x}=p,h=((y=m==null?void 0:m[e])==null?void 0:y[c])||l,g=j.useMemo(()=>x,Object.values(x));return r.jsx(h.Provider,{value:g,children:f})};d.displayName=s+"Provider";function u(p,m){var h;const f=((h=m==null?void 0:m[e])==null?void 0:h[c])||l,x=j.useContext(f);if(x)return x;if(o!==void 0)return o;throw new Error(`\`${p}\` must be used within \`${s}\``)}return[d,u]}const a=()=>{const s=n.map(o=>j.createContext(o));return function(l){const c=(l==null?void 0:l[e])||s;return j.useMemo(()=>({[`__scope${e}`]:{...l,[e]:c}}),[l,c])}};return a.scopeName=e,[i,iq(a,...t)]}function iq(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const i=e.map(a=>({useScope:a(),scopeName:a.scopeName}));return function(s){const o=i.reduce((l,{useScope:c,scopeName:d})=>{const p=c(s)[`__scope${d}`];return{...l,...p}},{});return j.useMemo(()=>({[`__scope${t.scopeName}`]:o}),[o])}};return n.scopeName=t.scopeName,n}var aq=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],yn=aq.reduce((e,t)=>{const n=j.forwardRef((i,a)=>{const{asChild:s,...o}=i,l=s?Sl:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),r.jsx(l,{...o,ref:a})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function R3(e,t){e&&Xf.flushSync(()=>e.dispatchEvent(t))}function Hr(e){const t=j.useRef(e);return j.useEffect(()=>{t.current=e}),j.useMemo(()=>(...n)=>{var i;return(i=t.current)==null?void 0:i.call(t,...n)},[])}function sq(e,t=globalThis==null?void 0:globalThis.document){const n=Hr(e);j.useEffect(()=>{const i=a=>{a.key==="Escape"&&n(a)};return t.addEventListener("keydown",i,{capture:!0}),()=>t.removeEventListener("keydown",i,{capture:!0})},[n,t])}var oq="DismissableLayer",qv="dismissableLayer.update",lq="dismissableLayer.pointerDownOutside",cq="dismissableLayer.focusOutside",Wj,L3=j.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),B0=j.forwardRef((e,t)=>{const{disableOutsidePointerEvents:n=!1,onEscapeKeyDown:i,onPointerDownOutside:a,onFocusOutside:s,onInteractOutside:o,onDismiss:l,...c}=e,d=j.useContext(L3),[u,p]=j.useState(null),m=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,f]=j.useState({}),x=Gr(t,N=>p(N)),h=Array.from(d.layers),[g]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),y=h.indexOf(g),v=u?h.indexOf(u):-1,b=d.layersWithOutsidePointerEventsDisabled.size>0,A=v>=y,w=uq(N=>{const I=N.target,C=[...d.branches].some(O=>O.contains(I));!A||C||(a==null||a(N),o==null||o(N),N.defaultPrevented||l==null||l())},m),k=pq(N=>{const I=N.target;[...d.branches].some(O=>O.contains(I))||(s==null||s(N),o==null||o(N),N.defaultPrevented||l==null||l())},m);return sq(N=>{v===d.layers.size-1&&(i==null||i(N),!N.defaultPrevented&&l&&(N.preventDefault(),l()))},m),j.useEffect(()=>{if(u)return n&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(Wj=m.body.style.pointerEvents,m.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(u)),d.layers.add(u),Vj(),()=>{n&&d.layersWithOutsidePointerEventsDisabled.size===1&&(m.body.style.pointerEvents=Wj)}},[u,m,n,d]),j.useEffect(()=>()=>{u&&(d.layers.delete(u),d.layersWithOutsidePointerEventsDisabled.delete(u),Vj())},[u,d]),j.useEffect(()=>{const N=()=>f({});return document.addEventListener(qv,N),()=>document.removeEventListener(qv,N)},[]),r.jsx(yn.div,{...c,ref:x,style:{pointerEvents:b?A?"auto":"none":void 0,...e.style},onFocusCapture:Yt(e.onFocusCapture,k.onFocusCapture),onBlurCapture:Yt(e.onBlurCapture,k.onBlurCapture),onPointerDownCapture:Yt(e.onPointerDownCapture,w.onPointerDownCapture)})});B0.displayName=oq;var dq="DismissableLayerBranch",F3=j.forwardRef((e,t)=>{const n=j.useContext(L3),i=j.useRef(null),a=Gr(t,i);return j.useEffect(()=>{const s=i.current;if(s)return n.branches.add(s),()=>{n.branches.delete(s)}},[n.branches]),r.jsx(yn.div,{...e,ref:a})});F3.displayName=dq;function uq(e,t=globalThis==null?void 0:globalThis.document){const n=Hr(e),i=j.useRef(!1),a=j.useRef(()=>{});return j.useEffect(()=>{const s=l=>{if(l.target&&!i.current){let c=function(){B3(lq,n,d,{discrete:!0})};const d={originalEvent:l};l.pointerType==="touch"?(t.removeEventListener("click",a.current),a.current=c,t.addEventListener("click",a.current,{once:!0})):c()}else t.removeEventListener("click",a.current);i.current=!1},o=window.setTimeout(()=>{t.addEventListener("pointerdown",s)},0);return()=>{window.clearTimeout(o),t.removeEventListener("pointerdown",s),t.removeEventListener("click",a.current)}},[t,n]),{onPointerDownCapture:()=>i.current=!0}}function pq(e,t=globalThis==null?void 0:globalThis.document){const n=Hr(e),i=j.useRef(!1);return j.useEffect(()=>{const a=s=>{s.target&&!i.current&&B3(cq,n,{originalEvent:s},{discrete:!1})};return t.addEventListener("focusin",a),()=>t.removeEventListener("focusin",a)},[t,n]),{onFocusCapture:()=>i.current=!0,onBlurCapture:()=>i.current=!1}}function Vj(){const e=new CustomEvent(qv);document.dispatchEvent(e)}function B3(e,t,n,{discrete:i}){const a=n.originalEvent.target,s=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&a.addEventListener(e,t,{once:!0}),i?R3(a,s):a.dispatchEvent(s)}var mq=B0,hq=F3,Hd=globalThis!=null&&globalThis.document?j.useLayoutEffect:()=>{},fq="Portal",$0=j.forwardRef((e,t)=>{var l;const{container:n,...i}=e,[a,s]=j.useState(!1);Hd(()=>s(!0),[]);const o=n||a&&((l=globalThis==null?void 0:globalThis.document)==null?void 0:l.body);return o?M6.createPortal(r.jsx(yn.div,{...i,ref:t}),o):null});$0.displayName=fq;function gq(e,t){return j.useReducer((n,i)=>t[n][i]??n,e)}var ep=e=>{const{present:t,children:n}=e,i=xq(t),a=typeof n=="function"?n({present:i.isPresent}):j.Children.only(n),s=Gr(i.ref,yq(a));return typeof n=="function"||i.isPresent?j.cloneElement(a,{ref:s}):null};ep.displayName="Presence";function xq(e){const[t,n]=j.useState(),i=j.useRef({}),a=j.useRef(e),s=j.useRef("none"),o=e?"mounted":"unmounted",[l,c]=gq(o,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return j.useEffect(()=>{const d=$p(i.current);s.current=l==="mounted"?d:"none"},[l]),Hd(()=>{const d=i.current,u=a.current;if(u!==e){const m=s.current,f=$p(d);e?c("MOUNT"):f==="none"||(d==null?void 0:d.display)==="none"?c("UNMOUNT"):c(u&&m!==f?"ANIMATION_OUT":"UNMOUNT"),a.current=e}},[e,c]),Hd(()=>{if(t){let d;const u=t.ownerDocument.defaultView??window,p=f=>{const h=$p(i.current).includes(f.animationName);if(f.target===t&&h&&(c("ANIMATION_END"),!a.current)){const g=t.style.animationFillMode;t.style.animationFillMode="forwards",d=u.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=g)})}},m=f=>{f.target===t&&(s.current=$p(i.current))};return t.addEventListener("animationstart",m),t.addEventListener("animationcancel",p),t.addEventListener("animationend",p),()=>{u.clearTimeout(d),t.removeEventListener("animationstart",m),t.removeEventListener("animationcancel",p),t.removeEventListener("animationend",p)}}else c("ANIMATION_END")},[t,c]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:j.useCallback(d=>{d&&(i.current=getComputedStyle(d)),n(d)},[])}}function $p(e){return(e==null?void 0:e.animationName)||"none"}function yq(e){var i,a;let t=(i=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:i.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(a=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:a.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}function $3({prop:e,defaultProp:t,onChange:n=()=>{}}){const[i,a]=vq({defaultProp:t,onChange:n}),s=e!==void 0,o=s?e:i,l=Hr(n),c=j.useCallback(d=>{if(s){const p=typeof d=="function"?d(e):d;p!==e&&l(p)}else a(d)},[s,e,a,l]);return[o,c]}function vq({defaultProp:e,onChange:t}){const n=j.useState(e),[i]=n,a=j.useRef(i),s=Hr(t);return j.useEffect(()=>{a.current!==i&&(s(i),a.current=i)},[i,a,s]),n}var bq="VisuallyHidden",U0=j.forwardRef((e,t)=>
48r.jsx(yn.span,{...e,ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...e.style}}));U0.displayName=bq;var q0="ToastProvider",[G0,wq,Aq]=nq("Toast"),[U3,pAe]=M3("Toast",[Aq]),[jq,eg]=U3(q0),q3=e=>{const{__scopeToast:t,label:n="Notification",duration:i=5e3,swipeDirection:a="right",swipeThreshold:s=50,children:o}=e,[l,c]=j.useState(null),[d,u]=j.useState(0),p=j.useRef(!1),m=j.useRef(!1);return n.trim()||console.error(`Invalid prop \`label\` supplied to \`${q0}\`. Expected non-empty \`string\`.`),r.jsx(G0.Provider,{scope:t,children:r.jsx(jq,{scope:t,label:n,duration:i,swipeDirection:a,swipeThreshold:s,toastCount:d,viewport:l,onViewportChange:c,onToastAdd:j.useCallback(()=>u(f=>f+1),[]),onToastRemove:j.useCallback(()=>u(f=>f-1),[]),isFocusedToastEscapeKeyDownRef:p,isClosePausedRef:m,children:o})})};q3.displayName=q0;var G3="ToastViewport",kq=["F8"],Gv="toast.viewportPause",Hv="toast.viewportResume",H3=j.forwardRef((e,t)=>{const{__scopeToast:n,hotkey:i=kq,label:a="Notifications ({hotkey})",...s}=e,o=eg(G3,n),l=wq(n),c=j.useRef(null),d=j.useRef(null),u=j.useRef(null),p=j.useRef(null),m=Gr(t,p,o.onViewportChange),f=i.join("+").replace(/Key/g,"").replace(/Digit/g,""),x=o.toastCount>0;j.useEffect(()=>{const g=y=>{var b;i.length!==0&&i.every(A=>y[A]||y.code===A)&&((b=p.current)==null||b.focus())};return document.addEventListener("keydown",g),()=>document.removeEventListener("keydown",g)},[i]),j.useEffect(()=>{const g=c.current,y=p.current;if(x&&g&&y){const v=()=>{if(!o.isClosePausedRef.current){const k=new CustomEvent(Gv);y.dispatchEvent(k),o.isClosePausedRef.current=!0}},b=()=>{if(o.isClosePausedRef.current){const k=new CustomEvent(Hv);y.dispatchEvent(k),o.isClosePausedRef.current=!1}},A=k=>{!g.contains(k.relatedTarget)&&b()},w=()=>{g.contains(document.activeElement)||b()};return g.addEventListener("focusin",v),g.addEventListener("focusout",A),g.addEventListener("pointermove",v),g.addEventListener("pointerleave",w),window.addEventListener("blur",v),window.addEventListener("focus",b),()=>{g.removeEventListener("focusin",v),g.removeEventListener("focusout",A),g.removeEventListener("pointermove",v),g.removeEventListener("pointerleave",w),window.removeEventListener("blur",v),window.removeEventListener("focus",b)}}},[x,o.isClosePausedRef]);const h=j.useCallback(({tabbingDirection:g})=>{const v=l().map(b=>{const A=b.ref.current,w=[A,...Lq(A)];return g==="forwards"?w:w.reverse()});return(g==="forwards"?v.reverse():v).flat()},[l]);return j.useEffect(()=>{const g=p.current;if(g){const y=v=>{var w,k,N;const b=v.altKey||v.ctrlKey||v.metaKey;if(v.key==="Tab"&&!b){const I=document.activeElement,C=v.shiftKey;if(v.target===g&&C){(w=d.current)==null||w.focus();return}const D=h({tabbingDirection:C?"backwards":"forwards"}),G=D.findIndex(P=>P===I);Px(D.slice(G+1))?v.preventDefault():C?(k=d.current)==null||k.focus():(N=u.current)==null||N.focus()}};return g.addEventListener("keydown",y),()=>g.removeEventListener("keydown",y)}},[l,h]),r.jsxs(hq,{ref:c,role:"region","aria-label":a.replace("{hotkey}",f),tabIndex:-1,style:{pointerEvents:x?void 0:"none"},children:[x&&r.jsx(zv,{ref:d,onFocusFromOutsideViewport:()=>{const g=h({tabbingDirection:"forwards"});Px(g)}}),r.jsx(G0.Slot,{scope:n,children:r.jsx(yn.ol,{tabIndex:-1,...s,ref:m})}),x&&r.jsx(zv,{ref:u,onFocusFromOutsideViewport:()=>{const g=h({tabbingDirection:"backwards"});Px(g)}})]})});H3.displayName=G3;var z3="ToastFocusProxy",zv=j.forwardRef((e,t)=>{const{__scopeToast:n,onFocusFromOutsideViewport:i,...a}=e,s=eg(z3,n);return r.jsx(U0,{"aria-hidden":!0,tabIndex:0,...a,ref:t,style:{position:"fixed"},onFocus:o=>{var d;const l=o.relatedTarget;!((d=s.viewport)!=null&&d.contains(l))&&i()}})});zv.displayName=z3;var tg="Toast",Nq="toast.swipeStart",Iq="toast.swipeMove",Sq="toast.swipeCancel",Cq="toast.swipeEnd",W3=j.forwardRef((e,t)=>{const{forceMount:n,open:i,defaultOpen:a,onOpenChange:s,...o}=e,[l=!0,c]=$3({prop:i,defaultProp:a,onChange:s});return r.jsx(ep,{present:n||l,children:r.jsx(Pq,{open:l,...o,ref:t,onClose:()=>c(!1),onPause:Hr(e.onPause),onResume:Hr(e.onResume),onSwipeStart:Yt(e.onSwipeStart,d=>{d.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:Yt(e.onSwipeMove,d=>{const{x:u,y:p}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","move"),d.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${u}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${p}px`)}),onSwipeCancel:Yt(e.onSwipeCancel,d=>{d.currentTarget.setAttribute("data-swipe","cancel"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:Yt(e.onSwipeEnd,d=>{const{x:u,y:p}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","end"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${u}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${p}px`),c(!1)})})})});W3.displayName=tg;var[Eq,_q]=U3(tg,{onClose(){}}),Pq=j.forwardRef((e,t)=>
48{const{__scopeToast:n,type:i="foreground",duration:a,open:s,onClose:o,onEscapeKeyDown:l,onPause:c,onResume:d,onSwipeStart:u,onSwipeMove:p,onSwipeCancel:m,onSwipeEnd:f,...x}=e,h=eg(tg,n),[g,y]=j.useState(null),v=Gr(t,P=>y(P)),b=j.useRef(null),A=j.useRef(null),w=a||h.duration,k=j.useRef(0),N=j.useRef(w),I=j.useRef(0),{onToastAdd:C,onToastRemove:O}=h,_=Hr(()=>{var L;(g==null?void 0:g.contains(document.activeElement))&&((L=h.viewport)==null||L.focus()),o()}),D=j.useCallback(P=>{!P||P===1/0||(window.clearTimeout(I.current),k.current=new Date().getTime(),I.current=window.setTimeout(_,P))},[_]);j.useEffect(()=>{const P=h.viewport;if(P){const L=()=>{D(N.current),d==null||d()},U=()=>{const W=new Date().getTime()-k.current;N.current=N.current-W,window.clearTimeout(I.current),c==null||c()};return P.addEventListener(Gv,U),P.addEventListener(Hv,L),()=>{P.removeEventListener(Gv,U),P.removeEventListener(Hv,L)}}},[h.viewport,w,c,d,D]),j.useEffect(()=>{s&&!h.isClosePausedRef.current&&D(w)},[s,w,h.isClosePausedRef,D]),j.useEffect(()=>(C(),()=>O()),[C,O]);const G=j.useMemo(()=>g?J3(g):null,[g]);return h.viewport?r.jsxs(r.Fragment,{children:[G&&r.jsx(Tq,{__scopeToast:n,role:"status","aria-live":i==="foreground"?"assertive":"polite","aria-atomic":!0,children:G}),r.jsx(Eq,{scope:n,onClose:_,children:Xf.createPortal(r.jsx(G0.ItemSlot,{scope:n,children:r.jsx(mq,{asChild:!0,onEscapeKeyDown:Yt(l,()=>{h.isFocusedToastEscapeKeyDownRef.current||_(),h.isFocusedToastEscapeKeyDownRef.current=!1}),children:r.jsx(yn.li,{role:"status","aria-live":"off","aria-atomic":!0,tabIndex:0,"data-state":s?"open":"closed","data-swipe-direction":h.swipeDirection,...x,ref:v,style:{userSelect:"none",touchAction:"none",...e.style},onKeyDown:Yt(e.onKeyDown,P=>{P.key==="Escape"&&(l==null||l(P.nativeEvent),P.nativeEvent.defaultPrevented||(h.isFocusedToastEscapeKeyDownRef.current=!0,_()))}),onPointerDown:Yt(e.onPointerDown,P=>{P.button===0&&(b.current={x:P.clientX,y:P.clientY})}),onPointerMove:Yt(e.onPointerMove,P=>{if(!b.current)return;const L=P.clientX-b.current.x,U=P.clientY-b.current.y,W=!!A.current,B=["left","right"].includes(h.swipeDirection),$=["left","up"].includes(h.swipeDirection)?Math.min:Math.max,z=B?$(0,L):0,Q=B?0:$(0,U),V=P.pointerType==="touch"?10:2,ne={x:z,y:Q},Se={originalEvent:P,delta:ne};W?(A.current=ne,Up(Iq,p,Se,{discrete:!1})):Kj(ne,h.swipeDirection,V)?(A.current=ne,Up(Nq,u,Se,{discrete:!1}),P.target.setPointerCapture(P.pointerId)):(Math.abs(L)>V||Math.abs(U)>V)&&(b.current=null)}),onPointerUp:Yt(e.onPointerUp,P=>{const L=A.current,U=P.target;if(U.hasPointerCapture(P.pointerId)&&U.releasePointerCapture(P.pointerId),A.current=null,b.current=null,L){const W=P.currentTarget,B={originalEvent:P,delta:L};Kj(L,h.swipeDirection,h.swipeThreshold)?Up(Cq,f,B,{discrete:!0}):Up(Sq,m,B,{discrete:!0}),W.addEventListener("click",$=>$.preventDefault(),{once:!0})}})})})}),h.viewport)})]}):null}),Tq=e=>{const{__scopeToast:t,children:n,...i}=e,a=eg(tg,t),[s,o]=j.useState(!1),[l,c]=j.useState(!1);return Mq(()=>o(!0)),j.useEffect(()=>{const d=window.setTimeout(()=>c(!0),1e3);return()=>window.clearTimeout(d)},[]),l?null:r.jsx($0,{asChild:!0,children:r.jsx(U0,{...i,children:s&&r.jsxs(r.Fragment,{children:[a.label," ",n]})})})},Dq="ToastTitle",V3=j.forwardRef((e,t)=>{const{__scopeToast:n,...i}=e;return r.jsx(yn.div,{...i,ref:t})});V3.displayName=Dq;var Oq="ToastDescription",K3=j.forwardRef((e,t)=>{const{__scopeToast:n,...i}=e;return r.jsx(yn.div,{...i,ref:t})});K3.displayName=Oq;var Y3="ToastAction",Q3=j.forwardRef((e,t)=>{const{altText:n,...i}=e;return n.trim()?r.jsx(Z3,{altText:n,asChild:!0,children:r.jsx(H0,{...i,ref:t})}):(console.error(`Invalid prop \`altText\` supplied to \`${Y3}\`. Expected non-empty \`string\`.`),null)});Q3.displayName=Y3;var X3="ToastClose",H0=j.forwardRef((e,t)=>{const{__scopeToast:n,...i}=e,a=_q(X3,n);return r.jsx(Z3,{asChild:!0,children:r.jsx(yn.button,{type:"button",...i,ref:t,onClick:Yt(e.onClick,a.onClose)})})});H0.displayName=X3;var Z3=j.forwardRef((e,t)=>{const{__scopeToast:n,altText:i,...a}=e;return r.jsx(yn.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":i||void 0,...a,ref:t})});function J3(e){const t=[];
48return Array.from(e.childNodes).forEach(i=>{if(i.nodeType===i.TEXT_NODE&&i.textContent&&t.push(i.textContent),Rq(i)){const a=i.ariaHidden||i.hidden||i.style.display==="none",s=i.dataset.radixToastAnnounceExclude==="";if(!a)if(s){const o=i.dataset.radixToastAnnounceAlt;o&&t.push(o)}else t.push(...J3(i))}}),t}function Up(e,t,n,{discrete:i}){const a=n.originalEvent.currentTarget,s=new CustomEvent(e,{bubbles:!0,cancelable:!0,detail:n});t&&a.addEventListener(e,t,{once:!0}),i?R3(a,s):a.dispatchEvent(s)}var Kj=(e,t,n=0)=>{const i=Math.abs(e.x),a=Math.abs(e.y),s=i>a;return t==="left"||t==="right"?s&&i>n:!s&&a>n};function Mq(e=()=>{}){const t=Hr(e);Hd(()=>{let n=0,i=0;return n=window.requestAnimationFrame(()=>i=window.requestAnimationFrame(t)),()=>{window.cancelAnimationFrame(n),window.cancelAnimationFrame(i)}},[t])}function Rq(e){return e.nodeType===e.ELEMENT_NODE}function Lq(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:i=>{const a=i.tagName==="INPUT"&&i.type==="hidden";return i.disabled||i.hidden||a?NodeFilter.FILTER_SKIP:i.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Px(e){const t=document.activeElement;return e.some(n=>n===t?!0:(n.focus(),document.activeElement!==t))}var Fq=q3,eD=H3,tD=W3,nD=V3,rD=K3,iD=Q3,aD=H0;function sD(e){var t,n,i="";if(typeof e=="string"||typeof e=="number")i+=e;else if(typeof e=="object")if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=sD(e[t]))&&(i&&(i+=" "),i+=n);else for(t in e)e[t]&&(i&&(i+=" "),i+=t);return i}function Bq(){for(var e,t,n=0,i="";n<arguments.length;)(e=arguments[n++])&&(t=sD(e))&&(i&&(i+=" "),i+=t);return i}const Yj=e=>typeof e=="boolean"?"".concat(e):e===0?"0":e,Qj=Bq,oD=(e,t)=>n=>{var i;if((t==null?void 0:t.variants)==null)return Qj(e,n==null?void 0:n.class,n==null?void 0:n.className);const{variants:a,defaultVariants:s}=t,o=Object.keys(a).map(d=>{const u=n==null?void 0:n[d],p=s==null?void 0:s[d];if(u===null)return null;const m=Yj(u)||Yj(p);return a[d][m]}),l=n&&Object.entries(n).reduce((d,u)=>{let[p,m]=u;return m===void 0||(d[p]=m),d},{}),c=t==null||(i=t.compoundVariants)===null||i===void 0?void 0:i.reduce((d,u)=>{let{class:p,className:m,...f}=u;return Object.entries(f).every(x=>{let[h,g]=x;return Array.isArray(g)?g.includes({...s,...l}[h]):{...s,...l}[h]===g})?[...d,p,m]:d},[]);return Qj(e,o,c,n==null?void 0:n.class,n==null?void 0:n.className)};/**
49 * @license lucide-react v0.453.0 - ISC
50 *
51 * This source code is licensed under the ISC license.
52 * See the LICENSE file in the root directory of this source tree.
53 */const $q=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),lD=(...e)=>e.filter((t,n,i)=>!!t&&i.indexOf(t)===n).join(" ");/**
54 * @license lucide-react v0.453.0 - ISC
55 *
56 * This source code is licensed under the ISC license.
57 * See the LICENSE file in the root directory of this source tree.
58 */var Uq={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
59 * @license lucide-react v0.453.0 - ISC
60 *
61 * This source code is licensed under the ISC license.
62 * See the LICENSE file in the root directory of this source tree.
63 */const qq=j.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:i,className:a="",children:s,iconNode:o,...l},c)=>j.createElement("svg",{ref:c,...Uq,width:t,height:t,stroke:e,strokeWidth:i?Number(n)*24/Number(t):n,className:lD("lucide",a),...l},[...o.map(([d,u])=>j.createElement(d,u)),...Array.isArray(s)?s:[s]]));/**
64 * @license lucide-react v0.453.0 - ISC
65 *
66 * This source code is licensed under the ISC license.
67 * See the LICENSE file in the root directory of this source tree.
68 */const xe=(e,t)=>{const n=j.forwardRef(({className:i,...a},s)=>j.createElement(qq,{ref:s,iconNode:t,className:lD(`lucide-${$q(e)}`,i),...a}));return n.displayName=`${e}`,n};/**
69 * @license lucide-react v0.453.0 - ISC
70 *
71 * This source code is licensed under the ISC license.
72 * See the LICENSE file in the root directory of this source tree.
73 */const Gq=xe("ArrowDown",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]]);/**
74 * @license lucide-react v0.453.0 - ISC
75 *
76 * This source code is licensed under the ISC license.
77 * See the LICENSE file in the root directory of this source tree.
78 */const cD=xe("ArrowLeft",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);/**
79 * @license lucide-react v0.453.0 - ISC
80 *
81 * This source code is licensed under the ISC license.
82 * See the LICENSE file in the root directory of this source tree.
83 */const qt=xe("ArrowRight",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/**
84 * @license lucide-react v0.453.0 - ISC
85 *
86 * This source code is licensed under the ISC license.
87 * See the LICENSE file in the root directory of this source tree.
88 */const Xj=xe("Award",[["path",{d:"m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526",key:"1yiouv"}],["circle",{cx:"12",cy:"8",r:"6",key:"1vp47v"}]]);/**
89 * @license lucide-react v0.453.0 - ISC
90 *
91 * This source code is licensed under the ISC license.
92 * See the LICENSE file in the root directory of this source tree.
93 */const dD=xe("BookOpen",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);/**
94 * @license lucide-react v0.453.0 - ISC
95 *
96 * This source code is licensed under the ISC license.
97 * See the LICENSE file in the root directory of this source tree.
98 */const uD=xe("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);/**
99 * @license lucide-react v0.453.0 - ISC
100 *
101 * This source code is licensed under the ISC license.
102 * See the LICENSE file in the root directory of this source tree.
103 */const pD=xe("Brain",[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z",key:"ep3f8r"}],["path",{d:"M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4",key:"1p4c4q"}],["path",{d:"M17.599 6.5a3 3 0 0 0 .399-1.375",key:"tmeiqw"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M19.938 10.5a4 4 0 0 1 .585.396",key:"1qfode"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M19.967 17.484A4 4 0 0 1 18 18",key:"159ez6"}]]);/**
104 * @license lucide-react v0.453.0 - ISC
105 *
106 * This source code is licensed under the ISC license.
107 * See the LICENSE file in the root directory of this source tree.
108 */const mD=xe("Building2",[["path",{d:"M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z",key:"1b4qmf"}],["path",{d:"M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2",key:"i71pzd"}],["path",{d:"M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2",key:"10jefs"}],["path",{d:"M10 6h4",key:"1itunk"}],["path",{d:"M10 10h4",key:"tcdvrf"}
108],["path",{d:"M10 14h4",key:"kelpxr"}],["path",{d:"M10 18h4",key:"1ulq68"}]]);/**
109 * @license lucide-react v0.453.0 - ISC
110 *
111 * This source code is licensed under the ISC license.
112 * See the LICENSE file in the root directory of this source tree.
113 */const Hq=xe("Building",[["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",ry:"2",key:"76otgf"}],["path",{d:"M9 22v-4h6v4",key:"r93iot"}],["path",{d:"M8 6h.01",key:"1dz90k"}],["path",{d:"M16 6h.01",key:"1x0f13"}],["path",{d:"M12 6h.01",key:"1vi96p"}],["path",{d:"M12 10h.01",key:"1nrarc"}],["path",{d:"M12 14h.01",key:"1etili"}],["path",{d:"M16 10h.01",key:"1m94wz"}],["path",{d:"M16 14h.01",key:"1gbofw"}],["path",{d:"M8 10h.01",key:"19clt8"}],["path",{d:"M8 14h.01",key:"6423bh"}]]);/**
114 * @license lucide-react v0.453.0 - ISC
115 *
116 * This source code is licensed under the ISC license.
117 * See the LICENSE file in the root directory of this source tree.
118 */const zq=xe("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/**
119 * @license lucide-react v0.453.0 - ISC
120 *
121 * This source code is licensed under the ISC license.
122 * See the LICENSE file in the root directory of this source tree.
123 */const Wq=xe("ChartColumn",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]);/**
124 * @license lucide-react v0.453.0 - ISC
125 *
126 * This source code is licensed under the ISC license.
127 * See the LICENSE file in the root directory of this source tree.
128 */const Vq=xe("ChartNoAxesColumn",[["line",{x1:"18",x2:"18",y1:"20",y2:"10",key:"1xfpm4"}],["line",{x1:"12",x2:"12",y1:"20",y2:"4",key:"be30l9"}],["line",{x1:"6",x2:"6",y1:"20",y2:"14",key:"1r4le6"}]]);/**
129 * @license lucide-react v0.453.0 - ISC
130 *
131 * This source code is licensed under the ISC license.
132 * See the LICENSE file in the root directory of this source tree.
133 */const Ia=xe("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/**
134 * @license lucide-react v0.453.0 - ISC
135 *
136 * This source code is licensed under the ISC license.
137 * See the LICENSE file in the root directory of this source tree.
138 */const La=xe("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/**
139 * @license lucide-react v0.453.0 - ISC
140 *
141 * This source code is licensed under the ISC license.
142 * See the LICENSE file in the root directory of this source tree.
143 */const hD=xe("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/**
144 * @license lucide-react v0.453.0 - ISC
145 *
146 * This source code is licensed under the ISC license.
147 * See the LICENSE file in the root directory of this source tree.
148 */const fD=xe("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/**
149 * @license lucide-react v0.453.0 - ISC
150 *
151 * This source code is licensed under the ISC license.
152 * See the LICENSE file in the root directory of this source tree.
153 */const ng=xe("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);/**
154 * @license lucide-react v0.453.0 - ISC
155 *
156 * This source code is licensed under the ISC license.
157 * See the LICENSE file in the root directory of this source tree.
158 */const Kq=xe("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/**
159 * @license lucide-react v0.453.0 - ISC
160 *
161 * This source code is licensed under the ISC license.
162 * See the LICENSE file in the root directory of this source tree.
163 */const z0=xe("CircleCheck",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/**
164 * @license lucide-react v0.453.0 - ISC
165 *
166 * This source code is licensed under the ISC license.
167 * See the LICENSE file in the root directory of this source tree.
168 */const Yq=xe("CircleDollarSign",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M16 8h-6a2 2 0 1 0 0 4h4a2 2 0 1 1 0 4H8",key:"1h4pet"}],["path",{d:"M12 18V6",key:"zqpxq5"}]]);/**
169 * @license lucide-react v0.453.0 - ISC
170 *
171 * This source code is licensed under the ISC license.
172 * See the LICENSE file in the root directory of this source tree.
173 */const gD=xe("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/**
174 * @license lucide-react v0.453.0 - ISC
175 *
176 * This source code is licensed under the ISC license.
177 * See the LICENSE file in the root directory of this source tree.
178 */const W0=xe("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/**
179 * @license lucide-react v0.453.0 - ISC
180 *
181 * This source code is licensed under the ISC license.
182 * See the LICENSE file in the root directory of this source tree.
183 */const V0=xe("Cpu",[["rect",{width:"16",height:"16",x:"4",y:"4",rx:"2",key:"14l7u7"}],["rect",{width:"6",height:"6",x:"9",y:"9",rx:"1",key:"5aljv4"}],["path",{d:"M15 2v2",key:"13l42r"}],["path",{d:"M15 20v2",key:"15mkzm"}],["path",{d:"M2 15h2",key:"1gxd5l"}],["path",{d:"M2 9h2",key:"1bbxkp"}],["path",{d:"M20 15h2",key:"19e6y8"}],["path",{d:"M20 9h2",key:"19tzq7"}],["path",{d:"M9 2v2",key:"165o2o"}],["path",{d:"M9 20v2",key:"i2bqo8"}]]);/**
184 * @license lucide-react v0.453.0 - ISC
185 *
186 * This source code is licensed under the ISC license.
187 * See the LICENSE file in the root directory of this source tree.
188 */const S=xe("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);/**
189 * @license lucide-react v0.453.0 - ISC
190 *
191 * This source code is licensed under the ISC license.
192 * See the LICENSE file in the root directory of this source tree.
193 */const xD=xe("FileCheck2",[["path",{d:"M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4",key:"1pf5j1"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"m3 15 2 2 4-4",key:"1lhrkk"}]]);/**
194 * @license lucide-react v0.453.0 - ISC
195 *
196 * This source code is licensed under the ISC license.
197 * See the LICENSE file in the root directory of this source tree.
198 */const yD=xe("FilePenLine",[["path",{d:"m18 5-2.414-2.414A2 2 0 0 0 14.172 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2",key:"142zxg"}],["path",{d:"M21.378 12.626a1 1 0 0 0-3.004-3.004l-4.01 4.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"2t3380"}],["path",{d:"M8 18h1",key:"13wk12"}]]);/**
199 * @license lucide-react v0.453.0 - ISC
200 *
201 * This source code is licensed under the ISC license.
202 * See the LICENSE file in the root directory of this source tree.
203 */const Qq=xe("Gauge",[["path",{d:"m12 14 4-4",key:"9kzdfg"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0",key:"19p75a"}]]);/**
204 * @license lucide-react v0.453.0 - ISC
205 *
206 * This source code is licensed under the ISC license.
207 * See the LICENSE file in the root directory of this source tree.
208 */const Xq=xe("Github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]);/**
209 * @license lucide-react v0.453.0 - ISC
210 *
211 * This source code is licensed under the ISC license.
212 * See the LICENSE file in the root directory of this source tree.
213 */const Tx=xe("GraduationCap",[["path",{d:"M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z",key:"j76jl0"}],["path",{d:"M22 10v6",key:"1lu8f3"}],["path",{d:"M6 12.5V16a6 3 0 0 0 12 0v-3.5",key:"1r8lef"}]]);/**
214 * @license lucide-react v0.453.0 - ISC
215 *
216 * This source code is licensed under the ISC license.
217 * See the LICENSE file in the root directory of this source tree.
218 */const Zq=xe("Hammer",[["path",{d:"m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9",key:"eefl8a"}],["path",{d:"m18 15 4-4",key:"16gjal"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5",key:"b7pghm"}]]);/**
219 * @license lucide-react v0.453.0 - ISC
220 *
221 * This source code is licensed under the ISC license.
222 * See the LICENSE file in the root directory of this source tree.
223 */const Jq=xe("House",[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"1d0kgt"}]]);/**
224 * @license lucide-react v0.453.0 - ISC
225 *
226 * This source code is licensed under the ISC license.
227 * See the LICENSE file in the root directory of this source tree.
228 */const eG=xe("Layers",[["path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z",key:"8b97xw"}],["path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65",key:"dd6zsq"}],["path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65",key:"ep9fru"}]]);/**
229 * @license lucide-react v0.453.0 - ISC
230 *
231 * This source code is licensed under the ISC license.
232 * See the LICENSE file in the root directory of this source tree.
233 */const vD=xe("Lightbulb",[["path",{d:"M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5",key:"1gvzjb"}],["path",{d:"M9 18h6",key:"x1upvd"}],["path",{d:"M10 22h4",key:"ceow96"}]]);/**
234 * @license lucide-react v0.453.0 - ISC
235 *
236 * This source code is licensed under the ISC license.
237 * See the LICENSE file in the root directory of this source tree.
238 */const ic=xe("LoaderCircle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);/**
239 * @license lucide-react v0.453.0 - ISC
240 *
241 * This source code is licensed under the ISC license.
242 * See the LICENSE file in the root directory of this source tree.
243 */const tG=xe("Mail",[["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}]]);/**
244 * @license lucide-react v0.453.0 - ISC
245 *
246 * This source code is licensed under the ISC license.
247 * See the LICENSE file in the root directory of this source tree.
248 */const nG=xe("Menu",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]);/**
249 * @license lucide-react v0.453.0 - ISC
250 *
251 * This source code is licensed under the ISC license.
252 * See the LICENSE file in the root directory of this source tree.
253 */const Dx=xe("MousePointerClick",[["path",{d:"M14 4.1 12 6",key:"ita8i4"}],["path",{d:"m5.1 8-2.9-.8",key:"1go3kf"}],["path",{d:"m6 12-1.9 2",key:"mnht97"}],["path",{d:"M7.2 2.2 8 5.1",key:"1cfko1"}],["path",{d:"M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.
vendor: 10,395 bytes, lines 253-313
253074z",key:"s0h3yz"}]]);/**
254 * @license lucide-react v0.453.0 - ISC
255 *
256 * This source code is licensed under the ISC license.
257 * See the LICENSE file in the root directory of this source tree.
258 */const sd=xe("Play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]]);/**
259 * @license lucide-react v0.453.0 - ISC
260 *
261 * This source code is licensed under the ISC license.
262 * See the LICENSE file in the root directory of this source tree.
263 */const rG=xe("Printer",[["path",{d:"M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2",key:"143wyd"}],["path",{d:"M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6",key:"1itne7"}],["rect",{x:"6",y:"14",width:"12",height:"8",rx:"1",key:"1ue0tg"}]]);/**
264 * @license lucide-react v0.453.0 - ISC
265 *
266 * This source code is licensed under the ISC license.
267 * See the LICENSE file in the root directory of this source tree.
268 */const Zj=xe("RotateCcw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);/**
269 * @license lucide-react v0.453.0 - ISC
270 *
271 * This source code is licensed under the ISC license.
272 * See the LICENSE file in the root directory of this source tree.
273 */const tp=xe("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/**
274 * @license lucide-react v0.453.0 - ISC
275 *
276 * This source code is licensed under the ISC license.
277 * See the LICENSE file in the root directory of this source tree.
278 */const iG=xe("ShieldAlert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]);/**
279 * @license lucide-react v0.453.0 - ISC
280 *
281 * This source code is licensed under the ISC license.
282 * See the LICENSE file in the root directory of this source tree.
283 */const aG=xe("Shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]);/**
284 * @license lucide-react v0.453.0 - ISC
285 *
286 * This source code is licensed under the ISC license.
287 * See the LICENSE file in the root directory of this source tree.
288 */const bD=xe("Target",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"6",key:"1vlfrh"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]]);/**
289 * @license lucide-react v0.453.0 - ISC
290 *
291 * This source code is licensed under the ISC license.
292 * See the LICENSE file in the root directory of this source tree.
293 */const K0=xe("TrendingUp",[["polyline",{points:"22 7 13.5 15.5 8.5 10.5 2 17",key:"126l90"}],["polyline",{points:"16 7 22 7 22 13",key:"kwv8wd"}]]);/**
294 * @license lucide-react v0.453.0 - ISC
295 *
296 * This source code is licensed under the ISC license.
297 * See the LICENSE file in the root directory of this source tree.
298 */const sG=xe("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/**
299 * @license lucide-react v0.453.0 - ISC
300 *
301 * This source code is licensed under the ISC license.
302 * See the LICENSE file in the root directory of this source tree.
303 */const oG=xe("User",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);/**
304 * @license lucide-react v0.453.0 - ISC
305 *
306 * This source code is licensed under the ISC license.
307 * See the LICENSE file in the root directory of this source tree.
308 */const ac=xe("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);/**
309 * @license lucide-react v0.453.0 - ISC
310 *
311 * This source code is licensed under the ISC license.
312 * See the LICENSE file in the root directory of this source tree.
313 */const cs=xe("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);function wD(e){var t,n,i="";if(typeof e=="string"||typeof e=="number")i+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(n=wD(e[t]))&&(i&&(i+=" "),i+=n)}else for(n in e)e[n]&&(i&&(i+=" "),i+=n);return i}function Ge(){for(var e,t,n=0,i="",a=arguments.length;n<a;n++)(e=arguments[n])&&(t=wD(e))&&(i&&(i+=" "),i+=t);return i}const Y0="-",lG=e=>{const t=dG(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:i}=e;return{getClassGroupId:o=>{const l=o.split(Y0);return l[0]===""&&l.length!==1&&l.shift(),AD(l,t)||cG(o)},getConflictingClassGroupIds:(o,l)=>{const c=n[o]||[];return l&&i[o]?[...c,...i[o]]:c}}},AD=(e,t)=>{var o;if(e.length===0)return t.classGroupId;const n=e[0],i=t.nextPart.get(n),a=i?AD(e.slice(1),i):void 0;if(a)return a;if(t.validators.length===0)return;const s=e.join(Y0);return(o=t.validators.find(({validator:l})=>l(s)))==null?void 0:o.classGroupId},Jj=/^\[(.+)\]$/,cG=e=>{if(Jj.test(e)){const t=Jj.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},dG=e=>{const{theme:t,prefix:n}=e,i={nextPart:new Map,validators:[]};return pG(Object.entries(e.classGroups),n).forEach(([s,o])=>{Wv(o,i,s,t)}),i},Wv=(e,t,n,i)=>{e.forEach(a=>{if(typeof a=="string"){const s=a===""?t:ek(t,a);s.classGroupId=n;return}if(typeof a=="function"){if(uG(a)){Wv(a(i),t,n,i);return}t.validators.push({validator:a,classGroupId:n});return}Object.entries(a).forEach(([s,o])=>{Wv(o,ek(t,s),n,i)})})},ek=(e,t)=>{let n=e;return t.split(Y0).forEach(i=>{n.nextPart.has(i)||n.nextPart.set(i,{nextPart:new Map,validators:[]}),n=n.nextPart.get(i)}),n},uG=e=>e.isThemeGetter,pG=(e,t)=>t?e.map(([n,i])=>{const a=i.map(s=>typeof s=="string"?t+s:typeof s=="object"?Object.fromEntries(Object.entries(s).map(([o,l])=>[t+o,l])):s);return[n,a]}):e,mG=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,i=new Map;const a=(s,o)=>{n.set(s,o),t++,t>e&&(t=0,i=n,n=new Map)};return{get(s){let o=n.get(s);if(o!==void 0)return o;if((o=i.get(s))!==void 0)return a(s,o),o},set(s,o){n.has(s)?n.set(s,o):a(s,o)}}},jD="!",hG=e=>{const{separator:t,experimentalParseClassName:n}=e,i=t.length===1,a=t[0],s=t.length,o=l=>{const c=[];let d=0,u=0,p;for(let g=0;g<l.length;g++){let y=l[g];if(d===0){if(y===a&&(i||l.slice(g,g+s)===t)){c.push(l.slice(u,g)),u=g+s;continue}if(y==="/"){p=g;continue}}y==="["?d++:y==="]"&&d--}const m=c.length===0?l:l.substring(u),f=m.startsWith(jD),x=f?m.substring(1):m,h=p&&p>u?p-u:void 0;return{modifiers:c,hasImportantModifier:f,baseClassName:x,maybePostfixModifierPosition:h}};return n?l=>n({className:l,parseClassName:o}):o},fG=e=>{if(e.length<=1)return e;const t=[];let n=[];return e.forEach(i=>{i[0]==="["?(t.push(...n.sort(),i),n=[]):n.push(i)}),t.push(...n.sort()),t},gG=e=>({cache:mG(e.cacheSize),parseClassName:hG(e),...lG(e)}),xG=/\s+/,yG=(e,t)=>{const{parseClassName:n,getClassGroupId:i,getConflictingClassGroupIds:a}=t,s=[],o=e.trim().split(xG);let l="";for(let c=o.length-1;c>=0;c-=1){const d=o[c],{modifiers:u,hasImportantModifier:p,baseClassName:m,maybePostfixModifierPosition:f}=n(d);let x=!!f,h=i(x?m.substring(0,f):m);if(!h){if(!x){l=d+(l.length>0?" "+l:l);continue}if(h=i(m),!h){l=d+(l.length>0?" "+l:l);continue}x=!1}const g=fG(u).join(":"),y=p?g+jD:g,v=y+h;if(s.includes(v))continue;s.push(v);const b=a(h,x);for(let A=0;A<b.length;++A){const w=b[A];s.push(y+w)}l=d+(l.length>0?" "+l:l)}return l};function vG(){let e=0,t,n,i="";for(;e<arguments.length;)(t=arguments[e++])&&(n=kD(t))&&(i&&(i+=" "),i+=n);return i}const kD=e=>{if(typeof e=="string")return e;let t,n="";for(let i=0;i<e.length;i++)e[i]&&(t=kD(e[i]))&&(n&&(n+=" "),n+=t);return n};function bG(e,...t){let n,i,a,s=o;function o(c){const d=t.reduce((u,p)=>p(u),e());return n=gG(d),i=n.cache.get,a=n.cache.set,s=l,l(c)}function l(c){const d=i(c);if(d)return d;const u=yG(c,n);return a(c,u),u}return function(){return s(vG.apply(null,arguments))}}const ct=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},ND=/^\[(?:([a-z-]+):)?(.+)\]$/i,wG=/^\d+\/\d+$/,AG=new Set(["px","full","screen"]),jG=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,kG=/\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$/,NG=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,IG=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,SG=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,bi=e=>Yo(e)||AG.has(e)||wG.test(e),ra=e=>sc(e,"length",MG),Yo=e=>!!e&&!Number.isNaN(Number(e)),Ox=e=>sc(e,"number",Yo),Ec=e=>!!e&&Number.isInteger(Number(e)),CG=e=>e.endsWith("%")&&Yo(e.slice(0,-1)),ke=e=>ND.test(e),ia=e=>jG.test(e),EG=new Set(["length","size","percentage"]),_G=e=>sc(e,EG,ID),PG=e=>sc(e,"position",ID),TG=new Set(["image","url"]),DG=e=>sc(e,TG,LG),OG=e=>sc(e,"",RG),_c=()=>!0,sc=(e,t,n)=>{const i=ND.exec(e);return i?i[1]?typeof t=="string"?i[1]===t:t.has(i[1]):n(i[2]):!1},MG=e=>kG.test(e)&&!NG.test(e),ID=()=>!1,RG=e=>IG.test(e),LG=e=>SG.test(e),FG=()=>{const e=ct("colors"),t=ct("spacing"),n=ct("blur"),i=ct("brightness"),a=ct("borderColor"),s=ct("borderRadius"),o=ct("borderSpacing"),l=ct("borderWidth"),c=ct("contrast"),d=ct("grayscale"),u=ct("hueRotate"),p=ct("invert"),m=ct("gap"),f=ct("gradientColorStops"),x=ct("gradientColorStopPositions"),h=ct("inset"),g=ct("margin"),y=ct("opacity"),v=ct("padding"),b=ct("saturate"),A=ct("scale"),w=ct("sepia"),k=ct("skew"),N=ct("space"),I=ct("translate"),C=()=>["auto","contain","none"],O=()=>["auto","hidden","clip","visible","scroll"],_=()=>["auto",ke,t],D=()=>[ke,t],G=()=>["",bi,ra],P=()=>["auto",Yo,ke],L=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],U=()=>["solid","dashed","dotted","double","none"],W=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],B=()=>["start","end","center","between","around","evenly","stretch"],$=()=>["","0",ke],z=()=>["auto","avoid","all","avoid-page","page","left","right","column"],Q=()=>[Yo,ke];return{cacheSize:500,separator:":",theme:{colors:[_c],spacing:[bi,ra],blur:["none","",ia,ke],brightness:Q(),borderColor:[e],borderRadius:["n
vendor: 5,214 bytes, line 313
313one","","full",ia,ke],borderSpacing:D(),borderWidth:G(),contrast:Q(),grayscale:$(),hueRotate:Q(),invert:$(),gap:D(),gradientColorStops:[e],gradientColorStopPositions:[CG,ra],inset:_(),margin:_(),opacity:Q(),padding:D(),saturate:Q(),scale:Q(),sepia:$(),skew:Q(),space:D(),translate:D()},classGroups:{aspect:[{aspect:["auto","square","video",ke]}],container:["container"],columns:[{columns:[ia]}],"break-after":[{"break-after":z()}],"break-before":[{"break-before":z()}],"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"],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:[...L(),ke]}],overflow:[{overflow:O()}],"overflow-x":[{"overflow-x":O()}],"overflow-y":[{"overflow-y":O()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[h]}],"inset-x":[{"inset-x":[h]}],"inset-y":[{"inset-y":[h]}],start:[{start:[h]}],end:[{end:[h]}],top:[{top:[h]}],right:[{right:[h]}],bottom:[{bottom:[h]}],left:[{left:[h]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",Ec,ke]}],basis:[{basis:_()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",ke]}],grow:[{grow:$()}],shrink:[{shrink:$()}],order:[{order:["first","last","none",Ec,ke]}],"grid-cols":[{"grid-cols":[_c]}],"col-start-end":[{col:["auto",{span:["full",Ec,ke]},ke]}],"col-start":[{"col-start":P()}],"col-end":[{"col-end":P()}],"grid-rows":[{"grid-rows":[_c]}],"row-start-end":[{row:["auto",{span:[Ec,ke]},ke]}],"row-start":[{"row-start":P()}],"row-end":[{"row-end":P()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",ke]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",ke]}],gap:[{gap:[m]}],"gap-x":[{"gap-x":[m]}],"gap-y":[{"gap-y":[m]}],"justify-content":[{justify:["normal",...B()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...B(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...B(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[v]}],px:[{px:[v]}],py:[{py:[v]}],ps:[{ps:[v]}],pe:[{pe:[v]}],pt:[{pt:[v]}],pr:[{pr:[v]}],pb:[{pb:[v]}],pl:[{pl:[v]}],m:[{m:[g]}],mx:[{mx:[g]}],my:[{my:[g]}],ms:[{ms:[g]}],me:[{me:[g]}],mt:[{mt:[g]}],mr:[{mr:[g]}],mb:[{mb:[g]}],ml:[{ml:[g]}],"space-x":[{"space-x":[N]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[N]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",ke,t]}],"min-w":[{"min-w":[ke,t,"min","max","fit"]}],"max-w":[{"max-w":[ke,t,"none","full","min","max","fit","prose",{screen:[ia]},ia]}],h:[{h:[ke,t,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[ke,t,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[ke,t,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[ke,t,"auto","min","max","fit"]}],"font-size":[{text:["base",ia,ra]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",Ox]}],"font-family":[{font:[_c]}],"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-fractons"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",ke]}],"line-clamp":[{"line-clamp":["none",Yo,Ox]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",bi,ke]}],"list-image":[{"list-image":["none",ke]}],"list-style-type":[{list:["none","disc","decimal",ke]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[y]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[y]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...U(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",b
vendor: 6,774 bytes, line 313
313i,ra]}],"underline-offset":[{"underline-offset":["auto",bi,ke]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:D()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",ke]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",ke]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[y]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...L(),PG]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",_G]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},DG]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[x]}],"gradient-via-pos":[{via:[x]}],"gradient-to-pos":[{to:[x]}],"gradient-from":[{from:[f]}],"gradient-via":[{via:[f]}],"gradient-to":[{to:[f]}],rounded:[{rounded:[s]}],"rounded-s":[{"rounded-s":[s]}],"rounded-e":[{"rounded-e":[s]}],"rounded-t":[{"rounded-t":[s]}],"rounded-r":[{"rounded-r":[s]}],"rounded-b":[{"rounded-b":[s]}],"rounded-l":[{"rounded-l":[s]}],"rounded-ss":[{"rounded-ss":[s]}],"rounded-se":[{"rounded-se":[s]}],"rounded-ee":[{"rounded-ee":[s]}],"rounded-es":[{"rounded-es":[s]}],"rounded-tl":[{"rounded-tl":[s]}],"rounded-tr":[{"rounded-tr":[s]}],"rounded-br":[{"rounded-br":[s]}],"rounded-bl":[{"rounded-bl":[s]}],"border-w":[{border:[l]}],"border-w-x":[{"border-x":[l]}],"border-w-y":[{"border-y":[l]}],"border-w-s":[{"border-s":[l]}],"border-w-e":[{"border-e":[l]}],"border-w-t":[{"border-t":[l]}],"border-w-r":[{"border-r":[l]}],"border-w-b":[{"border-b":[l]}],"border-w-l":[{"border-l":[l]}],"border-opacity":[{"border-opacity":[y]}],"border-style":[{border:[...U(),"hidden"]}],"divide-x":[{"divide-x":[l]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[l]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[y]}],"divide-style":[{divide:U()}],"border-color":[{border:[a]}],"border-color-x":[{"border-x":[a]}],"border-color-y":[{"border-y":[a]}],"border-color-s":[{"border-s":[a]}],"border-color-e":[{"border-e":[a]}],"border-color-t":[{"border-t":[a]}],"border-color-r":[{"border-r":[a]}],"border-color-b":[{"border-b":[a]}],"border-color-l":[{"border-l":[a]}],"divide-color":[{divide:[a]}],"outline-style":[{outline:["",...U()]}],"outline-offset":[{"outline-offset":[bi,ke]}],"outline-w":[{outline:[bi,ra]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:G()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[y]}],"ring-offset-w":[{"ring-offset":[bi,ra]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",ia,OG]}],"shadow-color":[{shadow:[_c]}],opacity:[{opacity:[y]}],"mix-blend":[{"mix-blend":[...W(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":W()}],filter:[{filter:["","none"]}],blur:[{blur:[n]}],brightness:[{brightness:[i]}],contrast:[{contrast:[c]}],"drop-shadow":[{"drop-shadow":["","none",ia,ke]}],grayscale:[{grayscale:[d]}],"hue-rotate":[{"hue-rotate":[u]}],invert:[{invert:[p]}],saturate:[{saturate:[b]}],sepia:[{sepia:[w]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[i]}],"backdrop-contrast":[{"backdrop-contrast":[c]}],"backdrop-grayscale":[{"backdrop-grayscale":[d]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[u]}],"backdrop-invert":[{"backdrop-invert":[p]}],"backdrop-opacity":[{"backdrop-opacity":[y]}],"backdrop-saturate":[{"backdrop-saturate":[b]}],"backdrop-sepia":[{"backdrop-sepia":[w]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[o]}],"border-spacing-x":[{"border-spacing-x":[o]}],"border-spacing-y":[{"border-spacing-y":[o]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",ke]}],duration:[{duration:Q()}],ease:[{ease:["linear","in","out","in-out",ke]}],delay:[{delay:Q()}],animate:[{animate:["none","spin","ping","pulse","bounce",ke]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[A]}],"scale-x":[{"scale-x":[A]}],"scale-y":[{"scale-y":[A]}],rotate:[{rotate:[Ec,ke]}],"translate-x":[{"translate-x":[I]}],"translate-y":[{"translate-y":[I]}],"skew-x":[{"skew-x":[k]}],"skew-y":[{"skew-y":[k]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",ke]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],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",ke]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":D()}],"scroll-mx":[{"scroll-mx":D()}],"scroll-my":[{"scroll-my":D()}],"scroll-ms":[{"scroll-ms":D()}],"scroll-me":[{"scroll-me":D()}],"scroll-mt":[{"scroll-mt":D()}],"scroll-mr":[{"scroll-mr":D()}],"scroll-mb":[{"scroll-mb":D()}],"scroll-ml":[{"scroll-ml":D()}],"scroll-p":[{"scroll-p":D()}],"scroll-px":[{"scroll-px":D()}],"scroll-py":[{"scroll-py":D()}],"scroll-ps":[{"scroll-ps":D()}],"scroll-pe":[{"scroll-pe":D()}],"scroll-pt":[{"scroll-pt":D()}],"scroll-pr":[{"scroll-pr":D()}],"scroll-pb":[{"scroll-pb":D()}],"scroll-pl":[{"scroll-pl":D()}],"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",ke]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[bi,ra,Ox]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","
313none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","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","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","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-s","border-w-e","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-s","border-color-e","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"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","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-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"]}}},BG=bG(FG);function Zt(...e){return BG(Ge(e))}const $G=Fq,SD=j.forwardRef(({className:e,...t},n)=>r.jsx(eD,{ref:n,className:Zt("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...t}));SD.displayName=eD.displayName;const UG=oD("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),CD=j.forwardRef(({className:e,variant:t,...n},i)=>r.jsx(tD,{ref:i,className:Zt(UG({variant:t}),e),...n}));CD.displayName=tD.displayName;const qG=j.forwardRef(({className:e,...t},n)=>r.jsx(iD,{ref:n,className:Zt("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...t}));qG.displayName=iD.displayName;const ED=j.forwardRef(({className:e,...t},n)=>r.jsx(aD,{ref:n,className:Zt("absolute right-2 top-2 rounded-md p-1 text-foreground
313/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",e),"toast-close":"",...t,children:r.jsx(ac,{className:"h-4 w-4"})}));ED.displayName=aD.displayName;const _D=j.forwardRef(({className:e,...t},n)=>r.jsx(nD,{ref:n,className:Zt("text-sm font-semibold",e),...t}));_D.displayName=nD.displayName;const PD=j.forwardRef(({className:e,...t},n)=>r.jsx(rD,{ref:n,className:Zt("text-sm opacity-90",e),...t}));PD.displayName=rD.displayName;function GG(){const{toasts:e}=D3();return r.jsxs($G,{children:[e.map(function({id:t,title:n,description:i,action:a,...s}){return r.jsxs(CD,{...s,children:[r.jsxs("div",{className:"grid gap-1",children:[n&&r.jsx(_D,{children:n}),i&&r.jsx(PD,{children:i})]}),a,r.jsx(ED,{})]},t)}),r.jsx(SD,{})]})}var HG=typeof Element<"u",zG=typeof Map=="function",WG=typeof Set=="function",VG=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function Tm(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var n,i,a;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(i=n;i--!==0;)if(!Tm(e[i],t[i]))return!1;return!0}var s;if(zG&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(s=e.entries();!(i=s.next()).done;)if(!t.has(i.value[0]))return!1;for(s=e.entries();!(i=s.next()).done;)if(!Tm(i.value[1],t.get(i.value[0])))return!1;return!0}if(WG&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(s=e.entries();!(i=s.next()).done;)if(!t.has(i.value[0]))return!1;return!0}if(VG&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(i=n;i--!==0;)if(e[i]!==t[i])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&typeof e.valueOf=="function"&&typeof t.valueOf=="function")return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&typeof e.toString=="function"&&typeof t.toString=="function")return e.toString()===t.toString();if(a=Object.keys(e),n=a.length,n!==Object.keys(t).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(t,a[i]))return!1;if(HG&&e instanceof Element)return!1;for(i=n;i--!==0;)if(!((a[i]==="_owner"||a[i]==="__v"||a[i]==="__o")&&e.$$typeof)&&!Tm(e[a[i]],t[a[i]]))return!1;return!0}return e!==e&&t!==t}var KG=function(t,n){try{return Tm(t,n)}catch(i){if((i.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw i}};const YG=Qe(KG);var QG=function(e,t,n,i,a,s,o,l){if(!e){var c;if(t===void 0)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var d=[n,i,a,s,o,l],u=0;c=new Error(t.replace(/%s/g,function(){return d[u++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}},XG=QG;const tk=Qe(XG);var ZG=function(t,n,i,a){var s=i?i.call(a,t,n):void 0;if(s!==void 0)return!!s;if(t===n)return!0;if(typeof t!="object"||!t||typeof n!="object"||!n)return!1;var o=Object.keys(t),l=Object.keys(n);if(o.length!==l.length)return!1;for(var c=Object.prototype.hasOwnProperty.bind(n),d=0;d<o.length;d++){var u=o[d];if(!c(u))return!1;var p=t[u],m=n[u];if(s=i?i.call(a,p,m,u):void 0,s===!1||s===void 0&&p!==m)return!1}return!0};const JG=Qe(ZG);var TD=(e=>(e.BASE="base",e.BODY="body",e.HEAD="head",e.HTML="html",e.LINK="link",e.META="meta",e.NOSCRIPT="noscript",e.SCRIPT="script",e.STYLE="style",e.TITLE="title",e.FRAGMENT="Symbol(react.fragment)",e))(TD||{}),Mx={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]},meta:{charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]}}
313,nk=Object.values(TD),Q0={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},eH=Object.entries(Q0).reduce((e,[t,n])=>(e[n]=t,e),{}),Or="data-rh",Qo={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate",PRIORITIZE_SEO_TAGS:"prioritizeSeoTags"},Xo=(e,t)=>{for(let n=e.length-1;n>=0;n-=1){const i=e[n];if(Object.prototype.hasOwnProperty.call(i,t))return i[t]}return null},tH=e=>{let t=Xo(e,"title");const n=Xo(e,Qo.TITLE_TEMPLATE);if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,()=>t);const i=Xo(e,Qo.DEFAULT_TITLE);return t||i||void 0},nH=e=>Xo(e,Qo.ON_CHANGE_CLIENT_STATE)||(()=>{}),Rx=(e,t)=>t.filter(n=>typeof n[e]<"u").map(n=>n[e]).reduce((n,i)=>({...n,...i}),{}),rH=(e,t)=>t.filter(n=>typeof n.base<"u").map(n=>n.base).reverse().reduce((n,i)=>{if(!n.length){const a=Object.keys(i);for(let s=0;s<a.length;s+=1){const l=a[s].toLowerCase();if(e.indexOf(l)!==-1&&i[l])return n.concat(i)}}return n},[]),iH=e=>console&&typeof console.warn=="function"&&console.warn(e),Pc=(e,t,n)=>{const i={};return n.filter(a=>Array.isArray(a[e])?!0:(typeof a[e]<"u"&&iH(`Helmet: ${e} should be of type "Array". Instead found type "${typeof a[e]}"`),!1)).map(a=>a[e]).reverse().reduce((a,s)=>{const o={};s.filter(c=>{let d;const u=Object.keys(c);for(let m=0;m<u.length;m+=1){const f=u[m],x=f.toLowerCase();t.indexOf(x)!==-1&&!(d==="rel"&&c[d].toLowerCase()==="canonical")&&!(x==="rel"&&c[x].toLowerCase()==="stylesheet")&&(d=x),t.indexOf(f)!==-1&&(f==="innerHTML"||f==="cssText"||f==="itemprop")&&(d=f)}if(!d||!c[d])return!1;const p=c[d].toLowerCase();return i[d]||(i[d]={}),o[d]||(o[d]={}),i[d][p]?!1:(o[d][p]=!0,!0)}).reverse().forEach(c=>a.push(c));const l=Object.keys(o);for(let c=0;c<l.length;c+=1){const d=l[c],u={...i[d],...o[d]};i[d]=u}return a},[]).reverse()},aH=(e,t)=>{if(Array.isArray(e)&&e.length){for(let n=0;n<e.length;n+=1)if(e[n][t])return!0}return!1},sH=e=>({baseTag:rH(["href"],e),bodyAttributes:Rx("bodyAttributes",e),defer:Xo(e,Qo.DEFER),encode:Xo(e,Qo.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:Rx("htmlAttributes",e),linkTags:Pc("link",["rel","href"],e),metaTags:Pc("meta",["name","charset","http-equiv","property","itemprop"],e),noscriptTags:Pc("noscript",["innerHTML"],e),onChangeClientState:nH(e),scriptTags:Pc("script",["src","innerHTML"],e),styleTags:Pc("style",["cssText"],e),title:tH(e),titleAttributes:Rx("titleAttributes",e),prioritizeSeoTags:aH(e,Qo.PRIORITIZE_SEO_TAGS)}),DD=e=>Array.isArray(e)?e.join(""):e,oH=(e,t)=>{const n=Object.keys(e);for(let i=0;i<n.length;i+=1)if(t[n[i]]&&t[n[i]].includes(e[n[i]]))return!0;return!1},Lx=(e,t)=>Array.isArray(e)?e.reduce((n,i)=>(oH(i,t)?n.priority.push(i):n.default.push(i),n),{priority:[],default:[]}):{default:e,priority:[]},rk=(e,t)=>({...e,[t]:void 0}),lH=["noscript","script","style"],Vv=(e,t=!0)=>t===!1?String(e):String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;"),OD=e=>Object.keys(e).reduce((t,n)=>{const i=typeof e[n]<"u"?`${n}="${e[n]}"`:`${n}`;return t?`${t} ${i}`:i},""),cH=(e,t,n,i)=>{const a=OD(n),s=DD(t);return a?`<${e} ${Or}="true" ${a}>${Vv(s,i)}</${e}>`:`<${e} ${Or}="true">${Vv(s,i)}</${e}>`},dH=(e,t,n=!0)=>t.reduce((i,a)=>{const s=a,o=Object.keys(s).filter(d=>!(d==="innerHTML"||d==="cssText")).reduce((d,u)=>{const p=typeof s[u]>"u"?u:`${u}="${Vv(s[u],n)}"`;return d?`${d} ${p}`:p},""),l=s.innerHTML||s.cssText||"",c=lH.indexOf(e)===-1;return`${i}<${e} ${Or}="true" ${o}${c?"/>":`>${l}</${e}>`}`},""),MD=(e,t={})=>Object.keys(e).reduce((n,i)=>{const a=Q0[i];return n[a||i]=e[i],n},t),uH=(e,t,n)=>{const i={key:t,[Or]:!0},a=MD(n,i);return[F.createElement("title",a,t)]},Dm=(e,t)=>t.map((n,i)=>{const a={key:i,[Or]:!0};return Object.keys(n).forEach(s=>{const l=Q0[s]||s;if(l==="innerHTML"||l==="cssText"){const c=n.innerHTML||n.cssText;a.dangerouslySetInnerHTML={__html:c}}else a[l]=n[s]}
313),F.createElement(e,a)}),rr=(e,t,n=!0)=>{switch(e){case"title":return{toComponent:()=>uH(e,t.title,t.titleAttributes),toString:()=>cH(e,t.title,t.titleAttributes,n)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>MD(t),toString:()=>OD(t)};default:return{toComponent:()=>Dm(e,t),toString:()=>dH(e,t,n)}}},pH=({metaTags:e,linkTags:t,scriptTags:n,encode:i})=>{const a=Lx(e,Mx.meta),s=Lx(t,Mx.link),o=Lx(n,Mx.script);return{priorityMethods:{toComponent:()=>[...Dm("meta",a.priority),...Dm("link",s.priority),...Dm("script",o.priority)],toString:()=>`${rr("meta",a.priority,i)} ${rr("link",s.priority,i)} ${rr("script",o.priority,i)}`},metaTags:a.default,linkTags:s.default,scriptTags:o.default}},mH=e=>{const{baseTag:t,bodyAttributes:n,encode:i=!0,htmlAttributes:a,noscriptTags:s,styleTags:o,title:l="",titleAttributes:c,prioritizeSeoTags:d}=e;let{linkTags:u,metaTags:p,scriptTags:m}=e,f={toComponent:()=>{},toString:()=>""};return d&&({priorityMethods:f,linkTags:u,metaTags:p,scriptTags:m}=pH(e)),{priority:f,base:rr("base",t,i),bodyAttributes:rr("bodyAttributes",n,i),htmlAttributes:rr("htmlAttributes",a,i),link:rr("link",u,i),meta:rr("meta",p,i),noscript:rr("noscript",s,i),script:rr("script",m,i),style:rr("style",o,i),title:rr("title",{title:l,titleAttributes:c},i)}},Kv=mH,qp=[],RD=!!(typeof window<"u"&&window.document&&window.document.createElement),Yv=class{constructor(e,t){M(this,"instances",[]);M(this,"canUseDOM",RD);M(this,"context");M(this,"value",{setHelmet:e=>{this.context.helmet=e},helmetInstances:{get:()=>this.canUseDOM?qp:this.instances,add:e=>{(this.canUseDOM?qp:this.instances).push(e)},remove:e=>{const t=(this.canUseDOM?qp:this.instances).indexOf(e);(this.canUseDOM?qp:this.instances).splice(t,1)}}});this.context=e,this.canUseDOM=t||!1,t||(e.helmet=Kv({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},hH={},LD=F.createContext(hH),Ps,FD=(Ps=class extends j.Component{constructor(n){super(n);M(this,"helmetData");this.helmetData=new Yv(this.props.context||{},Ps.canUseDOM)}render(){return F.createElement(LD.Provider,{value:this.helmetData.value},this.props.children)}},M(Ps,"canUseDOM",RD),Ps),lo=(e,t)=>{const n=document.head||document.querySelector("head"),i=n.querySelectorAll(`${e}[${Or}]`),a=[].slice.call(i),s=[];let o;return t&&t.length&&t.forEach(l=>{const c=document.createElement(e);for(const d in l)if(Object.prototype.hasOwnProperty.call(l,d))if(d==="innerHTML")c.innerHTML=l.innerHTML;else if(d==="cssText")c.styleSheet?c.styleSheet.cssText=l.cssText:c.appendChild(document.createTextNode(l.cssText));else{const u=d,p=typeof l[u]>"u"?"":l[u];c.setAttribute(d,p)}c.setAttribute(Or,"true"),a.some((d,u)=>(o=u,c.isEqualNode(d)))?a.splice(o,1):s.push(c)}),a.forEach(l=>{var c;return(c=l.parentNode)==null?void 0:c.removeChild(l)}),s.forEach(l=>n.appendChild(l)),{oldTags:a,newTags:s}},Qv=(e,t)=>{const n=document.getElementsByTagName(e)[0];if(!n)return;const i=n.getAttribute(Or),a=i?i.split(","):[],s=[...a],o=Object.keys(t);for(const l of o){const c=t[l]||"";n.getAttribute(l)!==c&&n.setAttribute(l,c),a.indexOf(l)===-1&&a.push(l);const d=s.indexOf(l);d!==-1&&s.splice(d,1)}for(let l=s.length-1;l>=0;l-=1)n.removeAttribute(s[l]);a.length===s.length?n.removeAttribute(Or):n.getAttribute(Or)!==o.join(",")&&n.setAttribute(Or,o.join(","))},fH=(e,t)=>{typeof e<"u"&&document.title!==e&&(document.title=DD(e)),Qv("title",t)},ik=(e,t)=>{const{baseTag:n,bodyAttributes:i,htmlAttributes:a,linkTags:s,metaTags:o,noscriptTags:l,onChangeClientState:c,scriptTags:d,styleTags:u,title:p,titleAttributes:m}=e;Qv("body",i),Qv("html",a),fH(p,m);const f={baseTag:lo("base",n),linkTags:lo("link",s),metaTags:lo("meta",o),noscriptTags:lo("noscript",l),scriptTags:lo("script",d),styleTags:lo("style",u)},x={},h={};Object.keys(f).forEach(g=>{const{newTags:y,oldTags:v}=f[g];y.length&&(x[g]=y),v.length&&(h[g]=f[g].oldTags)}),t&&t(),c(e,x,h)},Tc=null,gH=e=>{Tc&&cancelAnimationFrame(Tc),e.defer?Tc=requestAnimationFrame(()=>{ik(e,()=>{Tc=null})}):(ik(e),Tc=null)},xH=gH,ak=class extends j.Component{constructor(){super(...arguments);M(this,"rendered",!1)}shouldComponentUpdate(t){return!JG(t,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:t}=this.props.context;t.remove(this),this.emitChange()}emitChange(){const{helmetInstances:t,setHelmet:n}=this.props.context;let i=null;const a=sH(t.get().map(s=>{const o={...s.props};return delete o.context,o}));FD.canUseDOM?xH(a):Kv&&(i=Kv(a)),n(i)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:t}=this.props.context;t.add(this),this.emitChange()}render(){return this.init(),null}},Oy,yH=(Oy=class extends j.Component{shouldComponentUpdate(e){return!YG(rk(this.props,"helmetData"),rk(e,"helmetData"))}mapNestedChildrenToProps(e,t){if(!t)return null;switch(e.type){case"script":case"noscript":return{innerHTML:t};case"style":return{cssText:t};default:throw new Error(`<${e.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`)}}flattenArrayTypeChildren(e,t,n,i){return{...t,[e.type]:[...t[e.type]||[],{...n,...this.mapNestedChildrenToProps(e,i)}]}}mapObjectTypeChildren(e,t,n,i){switch(e.type){case"title":return{...t,[e.type]:i,titleAttributes:{...n}};case"body":return{...t,bodyAttributes:{...n}};case"html":return{...t,htmlAttributes:{...n}};default:return{...t,[e.type]:{...n}}}}mapArrayTypeChildrenToProps(e,t){let n={...t};return Object.keys(e).forEach(i=>
313{n={...n,[i]:e[i]}}),n}warnOnInvalidChildren(e,t){return tk(nk.some(n=>e.type===n),typeof e.type=="function"?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":`Only elements types ${nk.join(", ")} are allowed. Helmet does not support rendering <${e.type}> elements. Refer to our API for more information.`),tk(!t||typeof t=="string"||Array.isArray(t)&&!t.some(n=>typeof n!="string"),`Helmet expects a string as a child of <${e.type}>. Did you forget to wrap your children in braces? ( <${e.type}>{\`\`}</${e.type}> ) Refer to our API for more information.`),!0}mapChildrenToProps(e,t){let n={};return F.Children.forEach(e,i=>{if(!i||!i.props)return;const{children:a,...s}=i.props,o=Object.keys(s).reduce((c,d)=>(c[eH[d]||d]=s[d],c),{});let{type:l}=i;switch(typeof l=="symbol"?l=l.toString():this.warnOnInvalidChildren(i,a),l){case"Symbol(react.fragment)":t=this.mapChildrenToProps(a,t);break;case"link":case"meta":case"noscript":case"script":case"style":n=this.flattenArrayTypeChildren(i,n,o,a);break;default:t=this.mapObjectTypeChildren(i,t,o,a);break}}),this.mapArrayTypeChildrenToProps(n,t)}render(){const{children:e,...t}=this.props;let n={...t},{helmetData:i}=t;if(e&&(n=this.mapChildrenToProps(e,n)),i&&!(i instanceof Yv)){const a=i;i=new Yv(a.context,!0),delete n.helmetData}return i?F.createElement(ak,{...n,context:i.value}):F.createElement(LD.Consumer,null,a=>F.createElement(ak,{...n,context:a}))}},M(Oy,"defaultProps",{defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1}),Oy);const we=e=>typeof e=="string",Dc=()=>{let e,t;const n=new Promise((i,a)=>{e=i,t=a});return n.resolve=e,n.reject=t,n},sk=e=>e==null?"":""+e,vH=(e,t,n)=>{e.forEach(i=>{t[i]&&(n[i]=t[i])})},bH=/###/g,ok=e=>e&&e.indexOf("###")>-1?e.replace(bH,"."):e,lk=e=>!e||we(e),wd=(e,t,n)=>{const i=we(t)?t.split("."):t;let a=0;for(;a<i.length-1;){if(lk(e))return{};const s=ok(i[a]);!e[s]&&n&&(e[s]=new n),Object.prototype.hasOwnProperty.call(e,s)?e=e[s]:e={},++a}return lk(e)?{}:{obj:e,k:ok(i[a])}},ck=(e,t,n)=>{const{obj:i,k:a}=wd(e,t,Object);if(i!==void 0||t.length===1){i[a]=n;return}let s=t[t.length-1],o=t.slice(0,t.length-1),l=wd(e,o,Object);for(;l.obj===void 0&&o.length;)s=`${o[o.length-1]}.${s}`,o=o.slice(0,o.length-1),l=wd(e,o,Object),l!=null&&l.obj&&typeof l.obj[`${l.k}.${s}`]<"u"&&(l.obj=void 0);l.obj[`${l.k}.${s}`]=n},wH=(e,t,n,i)=>{const{obj:a,k:s}=wd(e,t,Object);a[s]=a[s]||[],a[s].push(n)},ph=(e,t)=>{const{obj:n,k:i}=wd(e,t);if(n&&Object.prototype.hasOwnProperty.call(n,i))return n[i]},AH=(e,t,n)=>{const i=ph(e,n);return i!==void 0?i:ph(t,n)},BD=(e,t,n)=>{for(const i in t)i!=="__proto__"&&i!=="constructor"&&(i in e?we(e[i])||e[i]instanceof String||we(t[i])||t[i]instanceof String?n&&(e[i]=t[i]):BD(e[i],t[i],n):e[i]=t[i]);return e},co=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&");var jH={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};const kH=e=>we(e)?e.replace(/[&<>"'\/]/g,t=>jH[t]):e;class NH{constructor(t){this.capacity=t,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(t){const n=this.regExpMap.get(t);if(n!==void 0)return n;const i=new RegExp(t);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(t,i),this.regExpQueue.push(t),i}}const IH=[" ",",","?","!",";"],SH=new NH(20),CH=(e,t,n)=>{t=t||"",n=n||"";const i=IH.filter(o=>t.indexOf(o)<0&&n.indexOf(o)<0);if(i.length===0)return!0;const a=SH.getRegExp(`(${i.map(o=>o==="?"?"\\?":o).join("|")})`);let s=!a.test(e);if(!s){const o=e.indexOf(n);o>0&&!a.test(e.substring(0,o))&&(s=!0)}return s},Xv=function(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(!e)return;if(e[t])return Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0;const i=t.split(n);let a=e;for(let s=0;s<i.length;){if(!a||typeof a!="object")return;let o,l="";for(let c=s;c<i.length;++c)if(c!==s&&(l+=n),l+=i[c],o=a[l],o!==void 0){if(["string","number","boolean"].indexOf(typeof o)>-1&&c<i.length-1)continue;s+=c-s+1;break}a=o}return a},mh=e=>e==null?void 0:e.replace("_","-"),EH={type:"logger",log(e){this.output("log",e)},warn(e){this.output("warn",e)},error(e){this.output("error",e)},output(e,t){var n,i;(i=(n=console==null?void 0:console[e])==null?void 0:n.apply)==null||i.call(n,console,t)}};class hh{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.init(t,n)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=n.prefix||"i18next:",this.logger=t||EH,this.options=n,this.debug=n.debug}log(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];return this.forward(n,"log","",!0)}warn(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];return this.forward(n,"warn","",!0)}error(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];return this.forward(n,"error","")}deprecate(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];return this.forward(n,"warn","WARNING DEPRECATED: ",!0)}forward(t,n,i,a){return a&&!this.debug?null:(we(t[0])&&(t[0]=`${i}${this.prefix} ${t[0]}`),this.logger[n](t))}create(t){return new hh(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t=t||this.options,t.prefix=t.prefix||this.prefix,new hh(this.logger,t)}}var ai=new hh;let rg=class{constructor(){this.observers={}}on(t,n){return t.split(" ").forEach(i=>
vendor: 3,416 bytes, line 313
313{this.observers[i]||(this.observers[i]=new Map);const a=this.observers[i].get(n)||0;this.observers[i].set(n,a+1)}),this}off(t,n){if(this.observers[t]){if(!n){delete this.observers[t];return}this.observers[t].delete(n)}}emit(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),a=1;a<n;a++)i[a-1]=arguments[a];this.observers[t]&&Array.from(this.observers[t].entries()).forEach(o=>{let[l,c]=o;for(let d=0;d<c;d++)l(...i)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(o=>{let[l,c]=o;for(let d=0;d<c;d++)l.apply(l,[t,...i])})}};class dk extends rg{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};super(),this.data=t||{},this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(t){this.options.ns.indexOf(t)<0&&this.options.ns.push(t)}removeNamespaces(t){const n=this.options.ns.indexOf(t);n>-1&&this.options.ns.splice(n,1)}getResource(t,n,i){var d,u;let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const s=a.keySeparator!==void 0?a.keySeparator:this.options.keySeparator,o=a.ignoreJSONStructure!==void 0?a.ignoreJSONStructure:this.options.ignoreJSONStructure;let l;t.indexOf(".")>-1?l=t.split("."):(l=[t,n],i&&(Array.isArray(i)?l.push(...i):we(i)&&s?l.push(...i.split(s)):l.push(i)));const c=ph(this.data,l);return!c&&!n&&!i&&t.indexOf(".")>-1&&(t=l[0],n=l[1],i=l.slice(2).join(".")),c||!o||!we(i)?c:Xv((u=(d=this.data)==null?void 0:d[t])==null?void 0:u[n],i,s)}addResource(t,n,i,a){let s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1};const o=s.keySeparator!==void 0?s.keySeparator:this.options.keySeparator;let l=[t,n];i&&(l=l.concat(o?i.split(o):i)),t.indexOf(".")>-1&&(l=t.split("."),a=n,n=l[1]),this.addNamespaces(n),ck(this.data,l,a),s.silent||this.emit("added",t,n,i,a)}addResources(t,n,i){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(const s in i)(we(i[s])||Array.isArray(i[s]))&&this.addResource(t,n,s,i[s],{silent:!0});a.silent||this.emit("added",t,n,i)}addResourceBundle(t,n,i,a,s){let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1,skipCopy:!1},l=[t,n];t.indexOf(".")>-1&&(l=t.split("."),a=i,i=n,n=l[1]),this.addNamespaces(n);let c=ph(this.data,l)||{};o.skipCopy||(i=JSON.parse(JSON.stringify(i))),a?BD(c,i,s):c={...c,...i},ck(this.data,l,c),o.silent||this.emit("added",t,n,i)}removeResourceBundle(t,n){this.hasResourceBundle(t,n)&&delete this.data[t][n],this.removeNamespaces(n),this.emit("removed",t,n)}hasResourceBundle(t,n){return this.getResource(t,n)!==void 0}getResourceBundle(t,n){return n||(n=this.options.defaultNS),this.getResource(t,n)}getDataByLanguage(t){return this.data[t]}hasLanguageSomeTranslations(t){const n=this.getDataByLanguage(t);return!!(n&&Object.keys(n)||[]).find(a=>n[a]&&Object.keys(n[a]).length>0)}toJSON(){return this.data}}var $D={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,i,a){return e.forEach(s=>{var o;t=((o=this.processors[s])==null?void 0:o.process(t,n,i,a))??t}),t}};const uk={},pk=e=>!we(e)&&typeof e!="boolean"&&typeof e!="number";class fh extends rg{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};super(),vH(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","
313i18nFormat","utils"],t,this),this.options=n,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=ai.create("translator")}changeLanguage(t){t&&(this.language=t)}exists(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(t==null)return!1;const i=this.resolve(t,n);return(i==null?void 0:i.res)!==void 0}extractFromKey(t,n){let i=n.nsSeparator!==void 0?n.nsSeparator:this.options.nsSeparator;i===void 0&&(i=":");const a=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator;let s=n.ns||this.options.defaultNS||[];const o=i&&t.indexOf(i)>-1,l=!this.options.userDefinedKeySeparator&&!n.keySeparator&&!this.options.userDefinedNsSeparator&&!n.nsSeparator&&!CH(t,i,a);if(o&&!l){const c=t.match(this.interpolator.nestingRegexp);if(c&&c.length>0)return{key:t,namespaces:we(s)?[s]:s};const d=t.split(i);(i!==a||i===a&&this.options.ns.indexOf(d[0])>-1)&&(s=d.shift()),t=d.join(a)}return{key:t,namespaces:we(s)?[s]:s}}translate(t,n,i){if(typeof n!="object"&&this.options.overloadTranslationOptionHandler&&(n=this.options.overloadTranslationOptionHandler(arguments)),typeof n=="object"&&(n={...n}),n||(n={}),t==null)return"";Array.isArray(t)||(t=[String(t)]);const a=n.returnDetails!==void 0?n.returnDetails:this.options.returnDetails,s=n.keySeparator!==void 0?n.keySeparator:this.options.keySeparator,{key:o,namespaces:l}=this.extractFromKey(t[t.length-1],n),c=l[l.length-1],d=n.lng||this.language,u=n.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if((d==null?void 0:d.toLowerCase())==="cimode"){if(u){const _=n.nsSeparator||this.options.nsSeparator;return a?{res:`${c}${_}${o}`,usedKey:o,exactUsedKey:o,usedLng:d,usedNS:c,usedParams:this.getUsedParamsDetails(n)}:`${c}${_}${o}`}return a?{res:o,usedKey:o,exactUsedKey:o,usedLng:d,usedNS:c,usedParams:this.getUsedParamsDetails(n)}:o}const p=this.resolve(t,n);let m=p==null?void 0:p.res;const f=(p==null?void 0:p.usedKey)||o,x=(p==null?void 0:p.exactUsedKey)||o,h=["[object Number]","[object Function]","[object RegExp]"],g=n.joinArrays!==void 0?n.joinArrays:this.options.joinArrays,y=!this.i18nFormat||this.i18nFormat.handleAsObject,v=n.count!==void 0&&!we(n.count),b=fh.hasDefaultValue(n),A=v?this.pluralResolver.getSuffix(d,n.count,n):"",w=n.ordinal&&v?this.pluralResolver.getSuffix(d,n.count,{ordinal:!1}):"",k=v&&!n.ordinal&&n.count===0,N=k&&n[`defaultValue${this.options.pluralSeparator}zero`]||n[`defaultValue${A}`]||n[`defaultValue${w}`]||n.defaultValue;let I=m;y&&!m&&b&&(I=N);const C=pk(I),O=Object.prototype.toString.apply(I);if(y&&I&&C&&h.indexOf(O)<0&&!(we(g)&&Array.isArray(I))){if(!n.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const _=this.options.returnedObjectHandler?this.options.returnedObjectHandler(f,I,{...n,ns:l}):`key '${o} (${this.language})' returned an object instead of string.`;return a?(p.res=_,p.usedParams=this.getUsedParamsDetails(n),p):_}if(s){const _=Array.isArray(I),D=_?[]:{},G=_?x:f;for(const P in I)if(Object.prototype.hasOwnProperty.call(I,P)){const L=`${G}${s}${P}`;b&&!m?D[P]=this.translate(L,{...n,defaultValue:pk(N)?N[P]:void 0,joinArrays:!1,ns:l}):D[P]=this.translate(L,{...n,joinArrays:!1,ns:l}),D[P]===L&&(D[P]=I[P])}m=D}}else if(y&&we(g)&&Array.isArray(m))m=m.join(g),m&&(m=this.extendTranslation(m,t,n,i));else{let _=!1,D=!1;!this.isValidLookup(m)&&b&&(_=!0,m=N),this.isValidLookup(m)||(D=!0,m=o);const P=(n.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&D?void 0:m,L=b&&N!==m&&this.options.updateMissing;if(D||_||L){if(this.logger.log(L?"updateKey":"missingKey",d,c,o,L?N:m),s){const $=this.resolve(o,{...n,keySeparator:!1});$&&$.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let U=[];const W=this.languageUtils.getFallbackCodes(this.options.fallbackLng,n.lng||this.language);if(this.options.saveMissingTo==="fallback"&&W&&W[0])for(let $=0;$<W.length;$++)U.push(W[$]);else this.options.saveMissingTo==="all"?U=this.languageUtils.toResolveHierarchy(n.lng||this.language):U.push(n.lng||this.language);const B=($,z,Q)=>{var ne;const V=b&&Q!==m?Q:P;this.options.missingKeyHandler?this.options.missingKeyHandler($,c,z,V,L,n):(ne=this.backendConnector)!=null&&ne.saveMissing&&this.backendConnector.saveMissing($,c,z,V,L,n),this.emit
vendor: 16,918 bytes, line 313
313("missingKey",$,c,z,m)};this.options.saveMissing&&(this.options.saveMissingPlurals&&v?U.forEach($=>{const z=this.pluralResolver.getSuffixes($,n);k&&n[`defaultValue${this.options.pluralSeparator}zero`]&&z.indexOf(`${this.options.pluralSeparator}zero`)<0&&z.push(`${this.options.pluralSeparator}zero`),z.forEach(Q=>{B([$],o+Q,n[`defaultValue${Q}`]||N)})}):B(U,o,N))}m=this.extendTranslation(m,t,n,p,i),D&&m===o&&this.options.appendNamespaceToMissingKey&&(m=`${c}:${o}`),(D||_)&&this.options.parseMissingKeyHandler&&(m=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${c}:${o}`:o,_?m:void 0))}return a?(p.res=m,p.usedParams=this.getUsedParamsDetails(n),p):m}extendTranslation(t,n,i,a,s){var d,u;var o=this;if((d=this.i18nFormat)!=null&&d.parse)t=this.i18nFormat.parse(t,{...this.options.interpolation.defaultVariables,...i},i.lng||this.language||a.usedLng,a.usedNS,a.usedKey,{resolved:a});else if(!i.skipInterpolation){i.interpolation&&this.interpolator.init({...i,interpolation:{...this.options.interpolation,...i.interpolation}});const p=we(t)&&(((u=i==null?void 0:i.interpolation)==null?void 0:u.skipOnVariables)!==void 0?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let m;if(p){const x=t.match(this.interpolator.nestingRegexp);m=x&&x.length}let f=i.replace&&!we(i.replace)?i.replace:i;if(this.options.interpolation.defaultVariables&&(f={...this.options.interpolation.defaultVariables,...f}),t=this.interpolator.interpolate(t,f,i.lng||this.language||a.usedLng,i),p){const x=t.match(this.interpolator.nestingRegexp),h=x&&x.length;m<h&&(i.nest=!1)}!i.lng&&a&&a.res&&(i.lng=this.language||a.usedLng),i.nest!==!1&&(t=this.interpolator.nest(t,function(){for(var x=arguments.length,h=new Array(x),g=0;g<x;g++)h[g]=arguments[g];return(s==null?void 0:s[0])===h[0]&&!i.context?(o.logger.warn(`It seems you are nesting recursively key: ${h[0]} in key: ${n[0]}`),null):o.translate(...h,n)},i)),i.interpolation&&this.interpolator.reset()}const l=i.postProcess||this.options.postProcess,c=we(l)?[l]:l;return t!=null&&(c!=null&&c.length)&&i.applyPostProcessor!==!1&&(t=$D.handle(c,t,n,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...a,usedParams:this.getUsedParamsDetails(i)},...i}:i,this)),t}resolve(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i,a,s,o,l;return we(t)&&(t=[t]),t.forEach(c=>{if(this.isValidLookup(i))return;const d=this.extractFromKey(c,n),u=d.key;a=u;let p=d.namespaces;this.options.fallbackNS&&(p=p.concat(this.options.fallbackNS));const m=n.count!==void 0&&!we(n.count),f=m&&!n.ordinal&&n.count===0,x=n.context!==void 0&&(we(n.context)||typeof n.context=="number")&&n.context!=="",h=n.lngs?n.lngs:this.languageUtils.toResolveHierarchy(n.lng||this.language,n.fallbackLng);p.forEach(g=>{var y,v;this.isValidLookup(i)||(l=g,!uk[`${h[0]}-${g}`]&&((y=this.utils)!=null&&y.hasLoadedNamespace)&&!((v=this.utils)!=null&&v.hasLoadedNamespace(l))&&(uk[`${h[0]}-${g}`]=!0,this.logger.warn(`key "${a}" for languages "${h.join(", ")}" won't get resolved as namespace "${l}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),h.forEach(b=>{var k;if(this.isValidLookup(i))return;o=b;const A=[u];if((k=this.i18nFormat)!=null&&k.addLookupKeys)this.i18nFormat.addLookupKeys(A,u,b,g,n);else{let N;m&&(N=this.pluralResolver.getSuffix(b,n.count,n));const I=`${this.options.pluralSeparator}zero`,C=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(m&&(A.push(u+N),n.ordinal&&N.indexOf(C)===0&&A.push(u+N.replace(C,this.options.pluralSeparator)),f&&A.push(u+I)),x){const O=`${u}${this.options.contextSeparator}${n.context}`;A.push(O),m&&(A.push(O+N),n.ordinal&&N.indexOf(C)===0&&A.push(O+N.replace(C,this.options.pluralSeparator)),f&&A.push(O+I))}}let w;for(;w=A.pop();)this.isValidLookup(i)||(s=w,i=this.getResource(b,g,w,n))}))})}),{res:i,usedKey:a,exactUsedKey:s,usedLng:o,usedNS:l}}isValidLookup(t){return t!==void 0&&!(!this.options.returnNull&&t===null)&&!(!this.options.returnEmptyString&&t==="")}getResource(t,n,i){var s;let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return(s=this.i18nFormat)!=null&&s.getResource?this.i18nFormat.getResource(t,n,i,a):this.resourceStore.getResource(t,n,i,a)}getUsedParamsDetails(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],i=t.replace&&!we(t.replace);let a=i?t.replace:t;if(i&&typeof t.count<"u"&&(a.count=t.count),this.options.interpolation.defaultVariables&&(a={...this.options.interpolation.defaultVariables,...a}),!i){a={...a};for(const s of n)delete a[s]}return a}static hasDefaultValue(t){const n="defaultValue";for(const i in t)if(Object.prototype.hasOwnProperty.call(t,i)&&n===i.substring(0,n.length)&&t[i]!==void 0)return!0;return!1}}class mk{constructor(t){this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=ai.create("languageUtils")}getScriptPartFromCode(t){if(t=mh(t),!t||t.indexOf("-")<0)return null;const n=t.split("-");return n.length===2||(n.pop(),n[n.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(n.join("-"))}getLanguagePartFromCode(t){if(t=mh(t),!t||t.indexOf("-")<0)return t;const n=t.split("-");return this.formatLanguageCode(n[0])}formatLanguageCode(t){if(we(t)&&t.indexOf("-")>-1){let n;try{n=Intl.getCanonicalLocales(t)[0]}catch{}return n&&this.options.lowerCaseLng&&(n=n.toLowerCase()),n||(this.options.lowerCaseLng?t.toLowerCase():t)}return this.options.cleanCode||this.options.lowerCaseLng?t.toLowerCase():t}isSupportedCode(t){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(t=this.getLanguagePartFromCode(t)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(t)>-1}getBestMatchFromCodes(t){if(!t)return null;let n;return t.forEach(i=>{if(n)return;const a=this.formatLanguageCode(i);(!this.options.supportedLngs||this.isSupportedCode(a))&&(n=a)}),!n&&this.options.supportedLngs&&t.forEach(i=>{if(n)return;const a=this.getLanguagePartFromCode(i);if(this.isSupportedCode(a))return n=a;n=this.options.supportedLngs.find(s=>{if(s===a)return s;if(!(s.indexOf("-")<0&&a.indexOf("-")<0)&&(s.indexOf("-")>0&&a.indexOf("-")<0&&s.substring(0,s.indexOf("-"))===a||s.indexOf(a)===0&&a.length>1))return s})}),n||(n=this.getFallbackCodes(this.options.fallbackLng)[0]),n}getFallbackCodes(t,n){if(!t)return[];if(typeof t=="function"&&(t=t(n)),we(t)&&(t=[t]),Array.isArray(t))return t;if(!n)return t.default||[];let i=t[n];return i||(i=t[this.getScriptPartFromCode(n)]),i||(i=t[this.formatLanguageCode(n)]),i||(i=t[this.getLanguagePartFromCode(n)]),i||(i=t.default),i||[]}toResolveHierarchy(t,n){const i=this.getFallbackCodes(n||this.options.fallbackLng||[],t),a=[],s=o=>{o&&(this.isSupportedCode(o)?a.push(o):this.logger.warn(`rejecting language code not found in supportedLngs: ${o}`))};return we(t)&&(t.indexOf("-")>-1||t.indexOf("_")>-1)?(this.options.load!=="languageOnly"&&s(this.formatLanguageCode(t)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&s(this.getScriptPartFromCode(t)),this.options.load!=="currentOnly"&&s(this.getLanguagePartFromCode(t))):we(t)&&s(this.formatLanguageCode(t)),i.forEach(o=>{a.indexOf(o)<0&&s(this.formatLanguageCode(o))}),a}}const hk={zero:0,one:1,two:2,few:3,many:4,other:5},fk={select:e=>e===1?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class _H{constructor(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.languageUtils=t,this.options=n,this.logger=ai.create("pluralResolver"),this.pluralRulesCache={}}addRule(t,n){this.rules[t]=n}clearCache(){this.pluralRulesCache={}}getRule(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const i=mh(t==="dev"?"en":t),a=n.ordinal?"ordinal":"cardinal",s=JSON.stringify({cleanedCode:i,type:a});if(s in this.pluralRulesCache)return this.pluralRulesCache[s];let o;try{o=new Intl.PluralRules(i,{type:a})}catch{if(!Intl)return this.logger.error("No Intl support, please use an Intl polyfill!"),fk;if(!t.match(/-|_/))return fk;const c=this.languageUtils.getLanguagePartFromCode(t);o=this.getRule(c,n)}return this.pluralRulesCache[s]=o,o}needsPlural(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=this.getRule(t,n);return i||(i=this.getRule("dev",n)),(i==null?void 0:i.resolvedOptions().pluralCategories.length)>1}getPluralFormsOfKey(t,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(t,i).map(a=>`${n}${a}`)}getSuffixes(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=this.getRule(t,n);return i||(i=this.getRule("dev",n)),i?i.resolvedOptions().pluralCategories.sort((a,s)=>hk[a]-hk[s]).map(a=>`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:""}${a}`):[]}getSuffix(t,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};const a=this.getRule(t,i);return a?`${this.options.prepend}${i.ordinal?`ordinal${this.options.prepend}`:""}${a.select(n)}`:(this.logger.warn(`no plural rule found for: ${t}`),this.getSuffix("dev",n,i))}}const gk=function(e,t,n){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:".",a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,s=AH(e,t,n);return!s&&a&&we(n)&&(s=Xv(e,n,i),s===void 0&&(s=Xv(t,n,i))),s},Fx=e=>e.replace(/\$/g,"$$$$");class PH{constructor(){var n;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=ai.create("interpolator"),this.options=t,this.format=((n=t==null?void 0:t.interpolation)==null?void 0:n.format)||(i=>i),this.init(t)}init(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};t.interpolation||(t.interpolation={escapeValue:!0});const{escape:n,escapeValue:i,useRawValueToEscape:a,prefix:s,prefixEscaped:o,suffix:l,suffixEscaped:c,formatSeparator:d,unescapeSuffix:u,unescapePrefix:p,nestingPrefix:m,nestingPrefixEscaped:f,nestingSuffix:x,nestingSuffixEscaped:h,nestingOptionsSeparator:g,maxReplaces:y,alwaysFormat:v}=t.interpolation;this.escape=n!==void 0?n:kH,this.escapeValue=i!==void 0?i:!0,this.useRawValueToEscape=a!==void 0?a:!1,this.prefix=s?co(s):o||"{{",this.suffix=l?co(l):c||"}}",this.formatSeparator=d||",",this.unescapePrefix=u?"":p||"-",this.unescapeSuffix=this.unescapePrefix?"":u||"",this.nestingPrefix=m?co(m):f||co("$t("),this.nestingSuffix=x?co(x):h||co(")"),this.nestingOptionsSeparator=g||",",this.maxReplaces=y||1e3,this.alwaysFormat=v!==void 0?v:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const t=(n,i)=>(n==null?void 0:n.source)===i?(n.lastIndex=0,n):new RegExp(i,"g");this.regexp=t(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=t(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=t(this.nestingRegexp,`${this.nestingPrefix}(.+?)${this.nestingSuffix}`)}interpolate(t,n,i,a){var f;let s,o,l;const c=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},d=x=>{if(x.indexOf(this.formatSeparator)<0){const v=gk(n,c,x,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(v,void 0,i,{...a,...n,interpolationkey:x}):v}const h=x.split(this.formatSeparator),g=h.shift().trim(),y=h.join(this.formatSeparator).trim();return this.format(gk(n,c,g,this.options.keySeparator,this.options.ignoreJSONStructure),y,i,{...a,...n,interpolationkey:g})};this.resetRegExp();const u=(a==null?void 0:a.missingInterpolationHandler)||this.options.missingInterpolationHandler,p=((f=a==null?void 0:a.interpolation)==null?void 0:f.skipOnVariables)!==void 0?a.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:x=>Fx(x)},{regex:this.regexp,safeValue:x=>this.escapeValue?Fx(this.escape(x)):Fx(x)}].forEach(x=>{for(l=0;s=x.regex.exec(t);){const h=s[1].trim();if(o=d(h),o===void 0)if(typeof u=="function"){const y=u(t,s,a);o=we(y)?y:""}else if(a&&Object.prototype.hasOwnProperty.call(a,h))o="";else if(p){o=s[0];continue}else this.logger.warn(`missed to pass in variable ${h} for interpolating ${t}`),o="";else!we(o)&&!this.useRawValueToEscape&&(o=sk(o));const g=x.safeValue(o);if(t=t.replace(s[0],g),p?(x.regex.lastIndex+=o.length,x.regex.lastIndex-=s[0].length):x.regex.lastIndex=0,l++,l>=this.maxReplaces)break}}),t}nest(t,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a,s,o;const l=(c,d)=>{const u=this.nestingOptionsSeparator;if(c.indexOf(u)<0)return c;const p=c.split(new RegExp(`${u}[ ]*{`));let m=`{${p[1]}`;c=p[0],m=this.interpolate(m,o);const f=m.match(/'/g),x=m.match(/"/g);(((f==null?void 0:f.length)??0)%2===0&&!x||x.length%2!==0)&&(m=m.replace(/'/g,'"'));try{o=JSON.parse(m),d&&(o={...d,...o})}catch(h){return this.logger.warn(`failed parsing options string in nesting for key ${c}`,h),`${c}${u}${m}`}return o.defaultValue&&o.defaultValue.indexOf(this.prefix)>-1&&delete o.defaultValue,c};for(;a=this.nestingRegexp.exec(t);){let c=[];o={...i},o=o.replace&&!we(o.replace)?o.replace:o,o.applyPostProcessor=!1,delete o.defaultValue;let d=!1;if(a[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(a[1])){const u=a[1].split(this.formatSeparator).map(p=>p.trim());a[1]=u.shift(),c=u,d=!0}if(s=n(l.call(this,a[1].trim(),o),o),s&&a[0]===t&&!we(s))return s;we(s)||(s=sk(s)),s||(this.logger.warn(`missed to resolve ${a[1]} for nesting ${t}`),s=""),d&&(s=c.reduce((u,p)=>this.format(u,p,i.lng,{...i,interpolationkey:a[1].trim()}),s.trim())),t=t.replace(a[0],s),this.regexp.lastIndex=0}return t}}const TH=e=>{let t=e.toLowerCase().trim();const n={};if(e.indexOf("(")>-1){const i=e.split("(");t=i[0].toLowerCase().trim();const a=i[1].substring(0,i[1].length-1);t==="currency"&&a.indexOf(":")<0?n.currency||(n.currency=a.trim()):t==="relativetime"&&a.indexOf(":")<0?n.range||(n.range=a.trim()):a.split(";").forEach(o=>{if(o){const[l,...c]=o.split(":"),d=c.join(":").trim().replace(/^'+|'+$/g,""),u=l.trim();n[u]||(n[u]=d),d==="false"&&(n[u]=!1),d==="true"&&(n[u]=!0),isNaN(d)||(n[u]=parseInt(d,10))}})}return{formatName:t,formatOptions:n}},uo=e=>{const t={};return(n,i,a)=>{let s=a;a&&a.interpolationkey&&a.formatParams&&a.formatParams[a.interpolationkey]&&a[a.interpolationkey]&&(s={...s,[a.interpolationkey]:void 0});const o=i+JSON.stringify(s);let l=t[o];return l||(l=e(mh(i),a),t[o]=l),l(n)}};class DH{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.logger=ai.create("formatter"),this.options=t,this.formats={number:uo((n,i)=>{const a=new Intl.NumberFormat(n,{...i});return s=>a.format(s)}),currency:uo((n,i)=>{const a=new Intl.NumberFormat(n,{...i,style:"currency"});return s=>a.format(s)}),datetime:uo((n,i)=>{const a=new Intl.DateTimeFormat(n,{...i});return s=>a.format(s)}),relativetime:uo((n,i)=>{const a=new Intl.RelativeTimeFormat(n,{...i});return s=>a.format(s,i.range||"day")}),list:uo((n,i)=>{const a=new Intl.ListFormat(n,{...i});return s=>a.format(s)})},this.init(t)}init(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};this.formatSeparator=n.interpolation.formatSeparator||","}add(t,n){this.formats[t.toLowerCase().trim()]=n}addCached(t,n){this.formats[t.toLowerCase().trim()]=uo(n)}format(t,n,i){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};const s=n.split(this.formatSeparator);if(s.length>1&&s[0].indexOf("(")>1&&s[0].indexOf(")")<0&&s.find(l=>l.indexOf(")")>-1)){const l=s.findIndex(c=>c.indexOf(")")>-1);s[0]=[s[0],...s.splice(1,l)].join(this.formatSeparator)}return s.reduce((l,c)=>{var p;const{formatName:d,formatOptions:u}=TH(c);if(this.formats[d]){let m=l;try{const f=((p=a==null?void 0:a.formatParams)==null?void 0:p[a.interpolationkey])||{},x=f.locale||f.lng||a.locale||a.lng||i;m=this.formats[d](l,x,{...u,...a,...f})}catch(f){this.logger.warn(f)}return m}else this.logger.warn(`there was no format function for ${d}`);return l},t)}}const OH=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)};class MH extends rg{constructor(t,n,i){var s,o;let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};super(),this.backend=t,this.store=n,this.services=i,this.languageUtils=i.languageUtils,this.options=a,this.logger=ai.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=a.maxParallelReads||10,this.readingCalls=0,this.maxRetries=a.maxRetries>=0?a.maxRetries:5,this.retryTimeout=a.retryTimeout>=1?a.retryTimeout:350,this.state={},this.queue=[],(o=(s=this.backend)==null?void 0:s.init)==null||o.call(s,i,a.backend,a)}queueLoad(t,n,i,a){const s={},o={},l={},c={};return t.forEach(d=>{let u=!0;
vendor: 13,319 bytes, line 313
313n.forEach(p=>{const m=`${d}|${p}`;!i.reload&&this.store.hasResourceBundle(d,p)?this.state[m]=2:this.state[m]<0||(this.state[m]===1?o[m]===void 0&&(o[m]=!0):(this.state[m]=1,u=!1,o[m]===void 0&&(o[m]=!0),s[m]===void 0&&(s[m]=!0),c[p]===void 0&&(c[p]=!0)))}),u||(l[d]=!0)}),(Object.keys(s).length||Object.keys(o).length)&&this.queue.push({pending:o,pendingCount:Object.keys(o).length,loaded:{},errors:[],callback:a}),{toLoad:Object.keys(s),pending:Object.keys(o),toLoadLanguages:Object.keys(l),toLoadNamespaces:Object.keys(c)}}loaded(t,n,i){const a=t.split("|"),s=a[0],o=a[1];n&&this.emit("failedLoading",s,o,n),!n&&i&&this.store.addResourceBundle(s,o,i,void 0,void 0,{skipCopy:!0}),this.state[t]=n?-1:2,n&&i&&(this.state[t]=0);const l={};this.queue.forEach(c=>{wH(c.loaded,[s],o),OH(c,t),n&&c.errors.push(n),c.pendingCount===0&&!c.done&&(Object.keys(c.loaded).forEach(d=>{l[d]||(l[d]={});const u=c.loaded[d];u.length&&u.forEach(p=>{l[d][p]===void 0&&(l[d][p]=!0)})}),c.done=!0,c.errors.length?c.callback(c.errors):c.callback())}),this.emit("loaded",l),this.queue=this.queue.filter(c=>!c.done)}read(t,n,i){let a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,o=arguments.length>5?arguments[5]:void 0;if(!t.length)return o(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:t,ns:n,fcName:i,tried:a,wait:s,callback:o});return}this.readingCalls++;const l=(d,u)=>{if(this.readingCalls--,this.waitingReads.length>0){const p=this.waitingReads.shift();this.read(p.lng,p.ns,p.fcName,p.tried,p.wait,p.callback)}if(d&&u&&a<this.maxRetries){setTimeout(()=>{this.read.call(this,t,n,i,a+1,s*2,o)},s);return}o(d,u)},c=this.backend[i].bind(this.backend);if(c.length===2){try{const d=c(t,n);d&&typeof d.then=="function"?d.then(u=>l(null,u)).catch(l):l(null,d)}catch(d){l(d)}return}return c(t,n,l)}prepareLoading(t,n){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),a&&a();we(t)&&(t=this.languageUtils.toResolveHierarchy(t)),we(n)&&(n=[n]);const s=this.queueLoad(t,n,i,a);if(!s.toLoad.length)return s.pending.length||a(),null;s.toLoad.forEach(o=>{this.loadOne(o)})}load(t,n,i){this.prepareLoading(t,n,{},i)}reload(t,n,i){this.prepareLoading(t,n,{reload:!0},i)}loadOne(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";const i=t.split("|"),a=i[0],s=i[1];this.read(a,s,"read",void 0,void 0,(o,l)=>{o&&this.logger.warn(`${n}loading namespace ${s} for language ${a} failed`,o),!o&&l&&this.logger.log(`${n}loaded namespace ${s} for language ${a}`,l),this.loaded(t,o,l)})}saveMissing(t,n,i,a,s){var c,d,u,p,m;let o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},l=arguments.length>6&&arguments[6]!==void 0?arguments[6]:()=>{};if((d=(c=this.services)==null?void 0:c.utils)!=null&&d.hasLoadedNamespace&&!((p=(u=this.services)==null?void 0:u.utils)!=null&&p.hasLoadedNamespace(n))){this.logger.warn(`did not save key "${i}" as the namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(i==null||i==="")){if((m=this.backend)!=null&&m.create){const f={...o,isUpdate:s},x=this.backend.create.bind(this.backend);if(x.length<6)try{let h;x.length===5?h=x(t,n,i,a,f):h=x(t,n,i,a),h&&typeof h.then=="function"?h.then(g=>l(null,g)).catch(l):l(null,h)}catch(h){l(h)}else x(t,n,i,a,l,f)}!t||!t[0]||this.store.addResource(t[0],n,i,a)}}}const xk=()=>({debug:!1,initAsync:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]=="object"&&(t=e[1]),we(e[1])&&(t.defaultValue=e[1]),we(e[2])&&(t.tDescription=e[2]),typeof e[2]=="object"||typeof e[3]=="object"){const n=e[3]||e[2];Object.keys(n).forEach(i=>{t[i]=n[i]})}return t},interpolation:{escapeValue:!0,format:e=>e,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}),yk=e=>{var t,n;return we(e.ns)&&(e.ns=[e.ns]),we(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),we(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),((n=(t=e.supportedLngs)==null?void 0:t.indexOf)==null?void 0:n.call(t,"cimode"))<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),typeof e.initImmediate=="boolean"&&(e.initAsync=e.initImmediate),e},Gp=()=>{},RH=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(n=>{typeof e[n]=="function"&&(e[n]=e[n].bind(e))})};class zd extends rg{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;if(super(),this.options=yk(t),this.services={},this.logger=ai,this.modules={external:[]},RH(this),n&&!this.isInitialized&&!t.isClone){if(!this.options.initAsync)return this.init(t,n),this;setTimeout(()=>{this.init(t,n)},0)}}init(){var t=this;let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=arguments.length>1?arguments[1]:void 0;this.isInitializing=!0,typeof n=="function"&&(i=n,n={}),n.defaultNS==null&&n.ns&&(we(n.ns)?n.defaultNS=n.ns:n.ns.indexOf("translation")<0&&(n.defaultNS=n.ns[0]));const a=xk();this.options={...a,...this.options,...yk(n)},this.options.interpolation={...a.interpolation,...this.options.interpolation},n.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=n.keySeparator),n.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=n.nsSeparator);const s=u=>u?typeof u=="function"?new u:u:null;if(!this.options.isClone){this.modules.logger?ai.init(s(this.modules.logger),this.options):ai.init(null,this.options);let u;this.modules.formatter?u=this.modules.formatter:u=DH;const p=new mk(this.options);this.store=new dk(this.options.resources,this.options);const m=this.services;m.logger=ai,m.resourceStore=this.store,m.languageUtils=p,m.pluralResolver=new _H(p,{prepend:this.options.pluralSeparator,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),u&&(!this.options.interpolation.format||this.options.interpolation.format===a.interpolation.format)&&(m.formatter=s(u),m.formatter.init(m,this.options),this.options.interpolation.format=m.formatter.format.bind(m.formatter)),m.interpolator=new PH(this.options),m.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},m.backendConnector=new MH(s(this.modules.backend),m.resourceStore,m,this.options),m.backendConnector.on("*",function(f){for(var x=arguments.length,h=new Array(x>1?x-1:0),g=1;g<x;g++)h[g-1]=arguments[g];t.emit(f,...h)}),this.modules.languageDetector&&(m.languageDetector=s(this.modules.languageDetector),m.languageDetector.init&&m.languageDetector.init(m,this.options.detection,this.options)),this.modules.i18nFormat&&(m.i18nFormat=s(this.modules.i18nFormat),m.i18nFormat.init&&m.i18nFormat.init(this)),this.translator=new fh(this.services,this.options),this.translator.on("*",function(f){for(var x=arguments.length,h=new Array(x>1?x-1:0),g=1;g<x;g++)h[g-1]=arguments[g];t.emit(f,...h)}),this.modules.external.forEach(f=>{f.init&&f.init(this)})}if(this.format=this.options.interpolation.format,i||(i=Gp),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const u=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);u.length>0&&u[0]!=="dev"&&(this.options.lng=u[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(u=>{this[u]=function(){return t.store[u](...arguments)}}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(u=>{this[u]=function(){return t.store[u](...arguments),t}});const c=Dc(),d=()=>{const u=(p,m)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),c.resolve(m),i(p,m)};if(this.languages&&!this.isInitialized)return u(null,this.t.bind(this));this.changeLanguage(this.options.lng,u)};return this.options.resources||!this.options.initAsync?d():setTimeout(d,0),c}loadResources(t){var s,o;let i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Gp;const a=we(t)?t:this.language;if(typeof t=="function"&&(i=t),!this.options.resources||this.options.partialBundledLanguages){if((a==null?void 0:a.toLowerCase())==="cimode"&&(!this.options.preload||this.options.preload.length===0))return i();const l=[],c=d=>{if(!d||d==="cimode")return;this.services.languageUtils.toResolveHierarchy(d).forEach(p=>{p!=="cimode"&&l.indexOf(p)<0&&l.push(p)})};a?c(a):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(u=>c(u)),(o=(s=this.options.preload)==null?void 0:s.forEach)==null||o.call(s,d=>c(d)),this.services.backendConnector.load(l,this.options.ns,d=>{!d&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),i(d)})}else i(null)}reloadResources(t,n,i){const a=Dc();return typeof t=="function"&&(i=t,t=void 0),typeof n=="function"&&(i=n,n=void 0),t||(t=this.languages),n||(n=this.options.ns),i||(i=Gp),this.services.backendConnector.reload(t,n,s=>{a.resolve(),i(s)}),a}use(t){if(!t)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!t.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return t.type==="backend"&&(this.modules.backend=t),(t.type==="logger"||t.log&&t.warn&&t.error)&&(this.modules.logger=t),t.type==="languageDetector"&&(this.modules.languageDetector=t),t.type==="i18nFormat"&&(this.modules.i18nFormat=t),t.type==="postProcessor"&&$D.addPostProcessor(t),t.type==="formatter"&&(this.modules.formatter=t),t.type==="3rdParty"&&this.modules.external.push(t),this}setResolvedLanguage(t){if(!(!t||!this.languages)&&!(["cimode","dev"].indexOf(t)>-1))for(let n=0;n<this.languages.length;n++){const i=this.languages[n];if(!(["cimode","dev"].indexOf(i)>-1)&&this.store.hasLanguageSomeTranslations(i)){this.resolvedLanguage=i;break}}}changeLanguage(t,n){var i=this;this.isLanguageChangingTo=t;const a=Dc();this.emit("languageChanging",t);const s=c=>{this.language=c,this.languages=this.services.languageUtils.toResolveHierarchy(c),this.resolvedLanguage=void 0,this.setResolvedLanguage(c)},o=(c,d)=>{d?(s(d),this.translator.changeLanguage(d),this.isLanguageChangingTo=void 0,this.emit("languageChanged",d),this.logger.log("languageChanged",d)):this.isLanguageChangingTo=void 0,a.resolve(function(){return i.t(...arguments)}),n&&n(c,function(){return i.t(...arguments)})},l=c=>{var u,p;!t&&!c&&this.services.languageDetector&&(c=[]);const d=we(c)?c:this.services.languageUtils.getBestMatchFromCodes(c);d&&(this.language||s(d),this.translator.language||this.translator.changeLanguage(d),(p=(u=this.services.languageDetector)==null?void 0:u.cacheUserLanguage)==null||p.call(u,d)),this.loadResources(d,m=>{o(m,d)})};return!t&&this.services.languageDetector&&!this.services.languageDetector.async?l(this.services.languageDetector.detect()):!t&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(l):this.services.languageDetector.detect(l):l(t),a}getFixedT(t,n,i){var a=this;const s=function(o,l){let c;if(typeof l!="object"){for(var d=arguments.length,u=new Array(d>2?d-2:0),p=2;p<d;p++)u[p-2]=arguments[p];c=a.options.overloadTranslationOptionHandler([o,l].concat(u))}else c={...l};c.lng=c.lng||s.lng,c.lngs=c.lngs||s.lngs,c.ns=c.ns||s.ns,c.keyPrefix!==""&&(c.keyPrefix=c.keyPrefix||i||s.keyPrefix);const m=a.options.keySeparator||".";let f;return c.keyPrefix&&Array.isArray(o)?f=o.map(x=>`${c.keyPrefix}${m}${x}`):f=c.keyPrefix?`${c.keyPrefix}${m}${o}`:o,a.t(f,c)};return we(t)?s.lng=t:s.lngs=t,s.ns=n,s.keyPrefix=i,s}t(){var a;for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];return(a=this.translator)==null?void 0:a.translate(...n)}exists(){var a;for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];return(a=this.translator)==null?void 0:a.exists(...n)}setDefaultNamespace(t){this.options.defaultNS=t}hasLoadedNamespace(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;
vendor: 10,135 bytes, line 313
313if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const i=n.lng||this.resolvedLanguage||this.languages[0],a=this.options?this.options.fallbackLng:!1,s=this.languages[this.languages.length-1];if(i.toLowerCase()==="cimode")return!0;const o=(l,c)=>{const d=this.services.backendConnector.state[`${l}|${c}`];return d===-1||d===0||d===2};if(n.precheck){const l=n.precheck(this,o);if(l!==void 0)return l}return!!(this.hasResourceBundle(i,t)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||o(i,t)&&(!a||o(s,t)))}loadNamespaces(t,n){const i=Dc();return this.options.ns?(we(t)&&(t=[t]),t.forEach(a=>{this.options.ns.indexOf(a)<0&&this.options.ns.push(a)}),this.loadResources(a=>{i.resolve(),n&&n(a)}),i):(n&&n(),Promise.resolve())}loadLanguages(t,n){const i=Dc();we(t)&&(t=[t]);const a=this.options.preload||[],s=t.filter(o=>a.indexOf(o)<0&&this.services.languageUtils.isSupportedCode(o));return s.length?(this.options.preload=a.concat(s),this.loadResources(o=>{i.resolve(),n&&n(o)}),i):(n&&n(),Promise.resolve())}dir(t){var a,s;if(t||(t=this.resolvedLanguage||(((a=this.languages)==null?void 0:a.length)>0?this.languages[0]:this.language)),!t)return"rtl";const n=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],i=((s=this.services)==null?void 0:s.languageUtils)||new mk(xk());return n.indexOf(i.getLanguagePartFromCode(t))>-1||t.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1?arguments[1]:void 0;return new zd(t,n)}cloneInstance(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Gp;const i=t.forkResourceStore;i&&delete t.forkResourceStore;const a={...this.options,...t,isClone:!0},s=new zd(a);if((t.debug!==void 0||t.prefix!==void 0)&&(s.logger=s.logger.clone(t)),["store","services","language"].forEach(l=>{s[l]=this[l]}),s.services={...this.services},s.services.utils={hasLoadedNamespace:s.hasLoadedNamespace.bind(s)},i){const l=Object.keys(this.store.data).reduce((c,d)=>(c[d]={...this.store.data[d]},Object.keys(c[d]).reduce((u,p)=>(u[p]={...c[d][p]},u),{})),{});s.store=new dk(l,a),s.services.resourceStore=s.store}return s.translator=new fh(s.services,a),s.translator.on("*",function(l){for(var c=arguments.length,d=new Array(c>1?c-1:0),u=1;u<c;u++)d[u-1]=arguments[u];s.emit(l,...d)}),s.init(a,n),s.translator.options=a,s.translator.backendConnector.services.utils={hasLoadedNamespace:s.hasLoadedNamespace.bind(s)},s}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const zt=zd.createInstance();zt.createInstance=zd.createInstance;zt.createInstance;zt.dir;zt.init;zt.loadResources;zt.reloadResources;zt.use;zt.changeLanguage;zt.getFixedT;zt.t;zt.exists;zt.setDefaultNamespace;zt.hasLoadedNamespace;zt.loadNamespaces;zt.loadLanguages;const LH=(e,t,n,i)=>{var s,o,l,c;const a=[n,{code:t,...i||{}}];if((o=(s=e==null?void 0:e.services)==null?void 0:s.logger)!=null&&o.forward)return e.services.logger.forward(a,"warn","react-i18next::",!0);Os(a[0])&&(a[0]=`react-i18next:: ${a[0]}`),(c=(l=e==null?void 0:e.services)==null?void 0:l.logger)!=null&&c.warn?e.services.logger.warn(...a):console!=null&&console.warn&&console.warn(...a)},vk={},Zv=(e,t,n,i)=>{Os(n)&&vk[n]||(Os(n)&&(vk[n]=new Date),LH(e,t,n,i))},UD=(e,t)=>()=>{if(e.isInitialized)t();else{const n=()=>{setTimeout(()=>{e.off("initialized",n)},0),t()};e.on("initialized",n)}},Jv=(e,t,n)=>{e.loadNamespaces(t,UD(e,n))},bk=(e,t,n,i)=>{if(Os(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return Jv(e,n,i);n.forEach(a=>{e.options.ns.indexOf(a)<0&&e.options.ns.push(a)}),e.loadLanguages(t,UD(e,i))},FH=(e,t,n={})=>!t.languages||!t.languages.length?(Zv(t,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(i,a)=>{var s;if(((s=n.bindI18n)==null?void 0:s.indexOf("languageChanging"))>-1&&i.services.backendConnector.backend&&i.isLanguageChangingTo&&!a(i.isLanguageChangingTo,e))return!1}}),Os=e=>typeof e=="string",BH=e=>typeof e=="object"&&e!==null,$H=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,UH={"&amp;":"&","&#38;":"&","&lt;":"<","&#60;":"<","&gt;":">","&#62;":">","&apos;":"'","&#39;":"'","&quot;":'"',"&#34;":'"',"&nbsp;":" ","&#160;":" ","&copy;":"©","&#169;":"©","&reg;":"®","&#174;":"®","&hellip;":"…","&#8230;":"…","&#x2F;":"/","&#47;":"/"},qH=e=>UH[e],GH=e=>e.replace($H,qH);let eb={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:GH};const HH=(e={})=>{eb={...eb,...e}},zH=()=>eb;let qD;const WH=e=>{qD=e},VH=()=>qD,KH={type:"3rdParty",init(e){HH(e.options.react),WH(e)}},GD=j.createContext();class YH{constructor(){this.usedNamespaces={}}addUsedNamespaces(t){t.forEach(n=>{this.usedNamespaces[n]||(this.usedNamespaces[n]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}const QH=(e,t)=>{const n=j.useRef();return j.useEffect(()=>{n.current=e},[e,t]),n.current},HD=(e,t,n,i)=>e.getFixedT(t,n,i),XH=(e,t,n,i)=>j.useCallback(HD(e,t,n,i),[e,t,n,i]),ZH=(e,t={})=>{var A,w,k,N;const{i18n:n}=t,{i18n:i,defaultNS:a}=j.useContext(GD)||{},s=n||i||VH();if(s&&!s.reportNamespaces&&(s.reportNamespaces=new YH),!s){Zv(s,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next");const I=(O,_)=>Os(_)?_:BH(_)&&Os(_.defaultValue)?_.defaultValue:Array.isArray(O)?O[O.length-1]:O,C=[I,{},!1];return C.t=I,C.i18n={},C.ready=!1,C}(A=s.options.react)!=null&&A.wait&&Zv(s,"DEPRECATED_OPTION","useTranslation: It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");const o={...zH(),...s.options.react,...t},{useSuspense:l,keyPrefix:c}=o;let d=a||((w=s.options)==null?void 0:w.defaultNS);d=Os(d)?[d]:d||["translation"],(N=(k=s.reportNamespaces).addUsedNamespaces)==null||N.call(k,d);const u=(s.isInitialized||s.initializedStoreOnce)&&d.every(I=>FH(I,s,o)),p=XH(s,t.lng||null,o.nsMode==="fallback"?d:d[0],c),m=()=>p,f=()=>HD(s,t.lng||null,o.nsMode==="fallback"?d:d[0],c),[x,h]=j.useState(m);let g=d.join();t.lng&&(g=`${t.lng}${g}`);const y=QH(g),v=j.useRef(!0);j.useEffect(()=>{const{bindI18n:I,bindI18nStore:C}=o;v.current=!0,!u&&!l&&(t.lng?bk(s,t.lng,d,()=>{v.current&&h(f)}):Jv(s,d,()=>{v.current&&h(f)})),u&&y&&y!==g&&v.current&&h(f);const O=()=>{v.current&&h(f)};return I&&(s==null||s.on(I,O)),C&&(s==null||s.store.on(C,O)),()=>{v.current=!1,s&&(I==null||I.split(" ").forEach(_=>s.off(_,O))),C&&s&&C.split(" ").forEach(_=>s.store.off(_,O))}},[s,g]),j.useEffect(()=>{v.current&&u&&h(m)},[s,c,u]);const b=[x,s,u];if(b.t=x,b.i18n=s,b.ready=u,u||!u&&!l)return b;throw new Promise(I=>{t.lng?bk(s,t.lng,d,()=>I()):Jv(s,d,()=>I())})};function JH({i18n:e,defaultNS:t,children:n}){const i=j.useMemo(()=>({i18n:e,defaultNS:t}),[e,t]);return j.createElement(GD.Provider,{value:i},n)}const ez={home:"Home",services:"AI Technologies",about:"Project",checklist:"PE Readiness",aiTools:"AI Tools",researchInsights:"R&I",worldBillionaires:"Billionaires",openSourceAI:"Open AI",learningResources:"Learning",wealthTools:"Wealth",contact:"Contact",getInTouch:"Information"},tz={title:"AI for Private Equity and Venture Capital",subtitle:"Transform investment decision-making with advanced artificial intelligence",description:"AI solutions specifically designed to enhance investment decisions, accelerate due diligence, and optimize portfolio management in Private Equity and Venture Capital.",challenge:{title:"The Challenge",description:"The Private Equity and Venture Capital sector faces an increasing amount of data to analyze, with tighter decision timeframes and intense competition for the best investment opportunities.",point1:{title:"Information Overload",description:"Too many data sources and information to process manually"},point2:{title:"Critical Speed",description:"Need to make data-driven decisions in increasingly shorter timeframes"},point3:{title:"Increasing Complexity",description:"Regulations, ESG factors, and increasingly complex competitive landscapes"}},solution:{title:"The Solution",description:"Specialized AI solutions for the PE/VC sector can process huge amounts of data, identify complex patterns, and provide insights that support faster and more accurate investment decisions.",point1:{title:"Process Automation",description:"70% reduction in time spent on screening and due diligence"},point2:{title:"Predictive Analysis",description:"Predictive models that improve valuation accuracy by 40%"},point3:{title:"Continuous Monitoring",description:"Early warning systems that identify risks and opportunities in real-time"}},useCases:{title:"Key Use Cases:",riskAssessment:"Risk Assessment with AI",financialRisk:"Financial Risk",operationalRisk:"Operational Risk",marketRisk:"Market Risk",howItWorks:"How it works:",riskAssessmentDesc:"Advanced predictive models to identify and quantify risks in potential investments",financialRiskDesc:"Analysis of financial statements and market trends to assess financial solidity",operationalRiskDesc:"Assessment of internal processes, human resources, and potential supply chain issues",marketRiskDesc:"Analysis of market trends, competition, and macroeconomic factors",workflowStep1:"Data collection from multiple sources (financial statements, industry reports, news)",workflowStep2:"Analysis of historical patterns and correlations with business results",workflowStep3
313:"Creation of a composite risk score and interactive dashboard",workflowStep4:"Continuous updates based on new data and stress scenario simulations"},capabilities:{title:"AI Capabilities for Private Equity and VC",opportunityResearch:{title:"Opportunity Research and Screening",description:"Automatic identification of potential target companies based on specific criteria through the analysis of vast market datasets, helping PE/VC teams discover opportunities that might escape traditional research methods.",useCases:["Screening of unlisted companies in specific sectors","Identification of companies with emerging technologies","Analysis of intellectual property and patents"]},competitiveAnalysis:{title:"Competitive and Market Analysis",description:"In-depth evaluation of the competitive landscape, market trends, and positioning of target companies using natural language processing algorithms and predictive analysis.",useCases:["Mapping the competitive landscape in fragmented sectors","Identifying emerging trends before they become mainstream","Evaluating the sustainability of competitive advantages"]},dueDiligence:{title:"Automated Due Diligence",description:"Automation of the due diligence process through the analysis of legal, financial, and operational documents, significantly reducing the time required and improving the accuracy of the analysis.",useCases:["Automatic analysis of contracts and legal documents","Verification of regulatory compliance and legal risks","Identification of anomalies in financial data"]},financialModeling:{title:"Financial Valuation and Modeling",description:"Creation and optimization of sophisticated financial models that incorporate historical data, market projections, and scenario analysis to more accurately value potential target companies.",useCases:["Automated valuation models based on industry multiples","Financial forecasts based on advanced machine learning models","Sensitivity analysis and Monte Carlo simulations"]},sentimentAnalysis:{title:"Market Sentiment Analysis",description:"Monitoring and analysis of market sentiment, social media, and news to i
313dentify trends, risks, and opportunities that could influence investment decisions.",useCases:["Monitoring of brand perception of target companies","Analysis of customer sentiment toward products and services","Early detection of reputational issues"]},esgAnalysis:{title:"ESG (Environmental, Social, Governance) Analysis",description:"Automated assessment of ESG factors in target companies, using NLP algorithms to analyze company documents, news, and industry reports to quantify impact and compliance.",useCases:["Creation of customized ESG scorecards for specific sectors","Monitoring of evolving regulatory compliance","Identification of hidden ESG risks through unstructured data analysis"]},leadershipAnalysis:{title:"Team and Leadership Analysis",description:"Assessment of the skills, experience, and culture of a target company's management team, using advanced language analysis and behavioral data techniques.",useCases:["Assessment of management experience in relation to strategic objectives","Analysis of diversity and inclusion in leadership teams","Prediction of possible post-acquisition integration issues"]},benchmarking:{title:"Performance Benchmarking",description:"Comparison of target company performance with industry peers across multiple dimensions, using advanced analytics to identify strengths, weaknesses and improvement opportunities.",useCases:["Comparison of operational, financial, and market KPIs with direct competitors","Identification of operational efficiency opportunities","Analysis of metrics for startups and scale-ups"]},visualization:{title:"Advanced Visualization and Reporting",description:"Creation of interactive dashboards and dynamic reports that present complex data intuitively, facilitating understanding of trends, risks, and opportunities for decision makers.",useCases:["Customized dashboards for different stakeholders (investors, management, board)","Dynamic scenario visualizations to evaluate strategic options","Automated reporting for multi-company portfolios"]},portfolioMonitoring:{title:"Portfolio Management and Monitoring",description:"Continuous monitoring of portfolio companies using AI to analyze operational, financial, and market data, identifying early opportunities for intervention and optimization.",useCases:["Real-time monitoring of critical business KPIs","Early identification of warning signals in performance","Analysis of the impact of value creation initiatives"]},documentAnalysis:{title:"Document and Contract Analysis",description:"Automatic extraction of key information from complex legal and financial documents, accelerating the review process and reducing the risk of human error in the due diligence phase.",useCases:["Extraction of critical clauses from contracts","Identification of inconsistencies in legal documents","Automated analysis of financial statements and documents"]},exitStrategy:{title:"Exit and M&A Strategies",description:"Identification of potential buyers, evaluation of optimal timing, and analysis of synergies to maximize the exit value of portfolio companies.",useCases:["Identification of ideal strategic buyers based on synergies","Prediction of future valuations in different market scenarios","Optimal timing for exit based on market and industry trends"]}},consultation:{title:"Exploring AI Technologies",description:"Discover how advanced AI technologies can transform investment and decision processes in private equity"}},nz={heading:"About the Private Equity AI Project",description:"Private Equity AI is an artificial intelligence project exploring how AI tools and methodologies can enhance the private equity sector, with a focus on advanced data analysis techniques and algorithmic approaches to optimize decision-making processes.",target:{heading:"Target Audience",audiences:["SMEs","Startups","Investors","Financial Institutions","PE/VC Funds"]},industries:{heading:"Industries",list:["Finance","Technology","Manufacturing","Healthcare","Retail","Services","Energy"]}
313,problem:{heading:"Challenges in the Market",points:["SMEs struggle to secure appropriate financing due to limited visibility with investors","Traditional advisory services are often too expensive for small and medium businesses","Finding the right AI tools for automation can be overwhelming and time-consuming","Investors have difficulty discovering high-potential SMEs outside their network"]},solution:{heading:"Research Approaches",points:["Study of AI-based intermediation systems to effectively analyze connections between SMEs and investors","Cataloging and analysis of available AI tools for business process optimization","Research on AI tools databases to guide companies toward the best automation solutions","Analysis of advanced algorithms to improve decision-making processes in private equity"]}},rz={pageTitle:"Page Not Found",metaDescription:"The page you are looking for might have been removed, had its name changed, or is temporarily unavailable. Navigate back to the home page or contact us for assistance.",heading:"Page Not Found",message:"The page you are looking for might have been removed, had its name changed, or is temporarily unavailable. Please try one of the following options.",requestedUrl:"Requested URL",backButton:"Go Back",homeButton:"Return to Home"},iz={rapidCheckupSubject:"Request for Hidden Development Potential Check Up"},az={main:"AI for Private Equity"},sz={heading:"Knowledge-Driven Exploration",banner:"Thought Leadership & Education",mission:"Exploring, testing, and sharing frameworks for the future of AI in private equity",research:{title:"Research & Frameworks",description:"Explore cutting-edge research, frameworks, and insights on how AI is reshaping private equity deal sourcing, due diligence, and value creation."},tools:{title:"AI Tools & Prompt Library",description:"Discover practical AI tools and prompt templates that PE professionals and SME founders can apply today to optimize their workflows."},insights:{title:"Case Studies & Insights",description:"Learn from real-world examples and thought leadership on AI implementation in private equity and growth companies."},community:{title:"Knowledge Community",description:"Connect with professionals exploring AI applications in finance, from SME founders to institutional investors."},learning:{title:"Educational Resources",description:"Comprehensive learning materials, courses, and resources to understand AI's transformative potential in business."},trends:{title:"Industry Trends",description:"Stay informed about the latest AI developments, market insights, and emerging technologies shaping the future of finance."}},oz={excellence:"AI in Private Equity",platformDescription:"An independent informational hub to help understand the transformative potential of AI in business",exploreServices:"Explore AI possibilities",intelligentAutomation:"Intelligent automation for SMEs"},lz={knowledgeHub:"Knowledge Hub & Research Project",newTitle:"Exploring the Future of Private Equity Through AI",newSubtitle:"A knowledge hub to inspire, educate, and connect professionals at the frontier of technology and finance",missionStatement:`"We believe AI will transform the way private equity creates value — and we're here to explore how."`,browseResearch:"Browse Research",explorePrompts:"Explore Prompt Library",aiEnhancedAdvisor:"The AI-Enhanced Advisor",title:"The <0>strategic</0> bridge between <1>SMEs</1> and <2>investors</2>",subtitle:"An independent informational hub to help SMEs and investors truly understand the potential value of AI.",intermediation:"Educational research project",description:"Private Equity AI is a knowledge hub and research project exploring how artificial intelligence can transform private equity. We investigate cutting-edge frameworks, tools, and methodologies — from research insights to practical prompt libraries — that professionals can apply today. Our mission is to explore, test, and share knowledge about AI's transformative potential in finance.",aiTools:'"AI tools unleash real power when combining machine efficiency with human knowledge."',aiForPE:"Research & Frameworks",aiForPEDesc:"Explore cutting-edge research, frameworks, and insights on how AI is reshaping private equity deal sourcing, due diligence, and value creation.",aiPoweredAdvisory:"Tools & Prompt Library",aiPoweredAdvisoryDesc:"Discover practical AI tools and prompt templates that PE professionals and SME founders can a
313pply today to optimize their workflows.",technologySelection:"Case Studies & Insights",technologySelectionDesc:"Learn from real-world examples and thought leadership on AI implementation in private equity and growth companies.",exploreAITools:"Explore AI Tools",cards:{aiDataAnalysis:{title:"AI Data Analysis",description:"AI tools that provide detailed data profiling and predictive analytics for more informed investment decisions."},aiValuationTools:{title:"AI Valuation Tools",description:"Discover AI-powered valuation tools that provide precise assessments of business growth potential and equity value."},aiMatchingSystems:{title:"AI Matching Systems",description:"Access AI-driven matching algorithms that connect SMEs and investors based on compatible business parameters and goals."},aiDueDiligence:{title:"AI Due Diligence",description:"Leverage AI-powered platforms that automate and enhance the due diligence process with comprehensive data analysis and verification."}},aiAgents:{title:"AI Agents become your personnel workforce",description:"Autonomous AI agents work 24/7 to automate your business processes and operations"},zeroAutomation:{title:"Zero-cost Automation",description:"SMEs can automate 30-40% of daily activities without additional costs with AI"},matchPrecision:"Match precision",companies:"SMEs",companiesAssisted:"assisted across various sectors",exploreServices:"Explore AI tools",features:{analysis:{title:"Advanced Analysis",description:"Detailed profiling and predictive analysis for more informed decisions."},valuation:{title:"Business Valuation",description:"Proprietary algorithms for precise assessments of growth potential."},matching:{title:"Intelligent Matching",description:"Precise connection between SMEs and investors based on advanced parameters."},dueDiligence:{title:"Due Diligence",description:"Automated process for comprehensive and thorough verification."}}},cz={heading:"Research & Insights",description:"The latest research data and insights on AI adoption, impact, and trends for SMEs and the investment landscape.",disclaimer:"Private Equity AI is not affiliated with Stanford University, arXiv, or other mentioned research institutions. Links point to official academic sources for informational and educational research purposes only.",stanfordReport:{description:"The Stanford AI Index 2025 report offers a comprehensive analysis of global AI trends, with particular relevance for SMEs and investment strategies in the evolving AI landscape."},keyStats:{productivity:"Productivity Gains",productivityDesc:"SMEs implementing AI solutions report a 30-45% increase in productivity across key business processes.",roi:"ROI Metrics",roiDesc:"Companies leveraging AI report an average 3.5x ROI within the first 18 months of implementation.",adoption:"Adoption Trends",adoptionDesc:"SME adoption of AI solutions increased by 41% year over year, with the highest growth in process automation and customer service."},viewFullReport:"View Full Report",moreInsights:"More Industry Insights",readMore:"Read more",insights:{sme:{title:"AI Impact on SMEs",description:"How small and medium enterprises are leveraging AI for growth",content:"The latest research shows 68% of SMEs have implemented at least one AI solution, with an average cost reduction of 27% in related processes."},investment:{title:"Investment Trends",description:"Private equity and venture capital focus areas",content:"Investment in AI-driven SMEs has grown by 56% YoY, with particular interest in companies demonstrating successful AI integration for core business processes."},future:{title:"Future Outlook",description:"Projected developments for the next 3-5 years",content:"AI integration is forecasted to create a competitive advantage gap of 25-40% between AI-adopting SMEs and non-adopters within the next 3 years."}},cta:{title:"AI Research Insights",description:"AI tools can analyze these findings for specific industries and business needs, potentially creating tailored automation strategies.",button:"More Information"},researchPapers:"Latest Research Papers",readPaper:"Read Paper",papers:{arxiv2505:{description:"Absolute Zero: Reinforced Self-play Reasoning with Zero Data",content:"This paper presents 'Absolute Zero Reasoner', a revolutionary paradigm that completely eliminates the need for human-curated data. The system autonomously generates its own reasoning tasks, solves them, and improves through self-play, achieving state-of-the-art performance starting from just a single code example."},lettaSleep:{description:"Research on advanced memory architectures and sleep-time computation for AI systems",content:"This research explores innovative approaches to AI memory systems through sleep-time computation, potentially revolutionizing how AI systems consolidate and process information during downtime periods."}},bondReport:{description:"Bond Capital's comprehensive analysis of artificial intelligence trends, investment patterns, and market opportunities with strategic insights for venture capital and private equity."},bondStats:{investment:"Investment Growth",investmentDesc:"AI venture funding has increased 5x over the past 3 years, with enterprise AI solutions leading the growth.",market:"Market Adoption",marketDesc:"Enterprise AI adoption has reached 47% across mid-market companies, with strongest adoption in financial services and healthcare."},downloadReport:"Download Report"}
313,dz={heading:"Free Resources to Learn AI",description:"A curated collection of free educational resources to get started and advance in the field of Artificial Intelligence",featuredBadge:"Featured",beginnerBadge:"Beginner",intermediateBadge:"Intermediate",advancedBadge:"Advanced",strategyBadge:"Strategy",financeBadge:"Finance",specializedToolsBadge:"Tools",beginnerLevel:"Beginner Level",intermediateLevel:"Intermediate Level",advancedLevel:"Advanced Level",specializedToolsLevel:"Specialized Tools",strategyLevel:"Strategy",financeLevel:"Finance & PE",accessResource:"Access Resource",needMoreHelp:"Need More Help?",consultationText:"Our team can help you identify the ideal learning path for your specific needs. Book a consultation to discuss your AI project.",beginner:{masterAITitle:"The 6 Steps to Master AI",masterAI:"Essential 6-step guide to mastering AI fundamentals and practical applications",pythonAITitle:"AI Python for beginners",pythonAI:"An introduction to Python for beginners in the field of AI",generativeAITitle:"Generative AI for everyone",generativeAI:"Introductory course to generative AI accessible to everyone",llmStartTitle:"Getting started with LLM",llmStart:"First steps with Large Language Models",promptLlamaTitle:"Prompt engineering with Llama models",promptLlama:"Prompt engineering techniques with Llama models",structuredOutputTitle:"Structured LLM Output",structuredOutput:"How to get structured outputs from language models",aiAgentsEvolutionTitle:"Evolution of AI Agents",aiAgentsEvolution:"Introduction to the evolution of AI agents",googleAiUseCasesTitle:"101 Real-World Generative AI Use Cases",googleAiUseCases:"Google Cloud's comprehensive guide to real-world AI applications from industry leaders",howToAITitle:"How to AI Guide",howToAI:"Perfect for non-technical people to master AI fundamentals and practical applications",openAIAcademyTitle:"OpenAI Academy",openAIAcademy:"The official academy of ChatGPT & OpenAI with comprehensive learning materials",machineLearningTitle:"Machine Learning with Andrew Ng",machineLearning:"Learn Machine Learning fundamentals with renowned instructor Andrew Ng",claudeGuideTitle:"Claude from A to Z",claudeGuide:"The official comprehensive guide for Claude, from Anthropic's team",geminiPromptTitle:"Gemini Prompting Guide",geminiPrompt:"The best prompt guide for Gemini, straight from Google"},intermediate:{llmBasicsTitle:"LLM Basics and Architecture",llmBasics:"Fundamentals and architecture of Large Language Models",ragBasicsTitle:"RAG Basics and Advanced",ragBasics:"Basic and advanced Retrieval Augmented Generation techniques",llmAgentsTitle:"In-depth on LLM Agents",llmAgents:"In-depth exploration of LLM-based agents",langgraphTitle:"Introduction to Langgraph",langgraph:"Introduction to Langgraph for creating AI agents",agenticRagTitle:"Agentic RAG with LlamaIndex",agenticRag:"Implementation of RAG with agents using LlamaIndex",agentMemoryTitle:"Agent Memory",agentMemory:"Memory management in AI agents",agenticDesignTitle:"Agentic Design Patterns",agenticDesign:"Design patterns for AI agent development",langchainTitle:"Functions, Tools and Agents with Langchain",langchain:"Functions, tools and agents with Langchain",perplexityLabsTitle:"Perplexity Labs",perplexityLabs:"The most interesting Perplexity features and experiments explained",aiAgentsGuideTitle:"Guide to AI Agents",aiAgentsGuide:"OpenAI's comprehensive but lesser-known guide to building AI agents",thesisAITitle:"Write a Thesis with AI",thesisAI:"Complete guide for using AI to assist with academic thesis writing",chatgptImageTitle:"ChatGPT Image Guide",chatgptImage:"Comprehensive guide covering 80% of ChatGPT image capabilities in 12 slides",deepDiveLLMTitle:"Deep Dive into LLMs",deepDiveLLM:"3-hour absolute goldmine for understanding Large Language Models fundamentals",introLLMTitle:"Introduction to Large Language Models",introLLM:"Comprehensive introduction to Large Language Models fundamentals and applications",genAILLMTitle:"Generative AI with Large Language Models",genAILLM:"Deep dive into generative AI using Large Language Models",llmConceptsTitle:"Large Language Models (LLMs) Concepts",llmConcepts:"Core concepts and theoretical foundations of Large Language Models",promptEngTitle:"Prompt Engineering for ChatGPT",promptEng:"Advanced prompt engineering techniques for ChatGPT optimization",llmPythonTitle:"Introduction to LLMs in Python",llmPython:"Practical implementation of Large Language Models using Python",chatgptTeachTitle:"ChatGPT Teach-Out",chatgptTeach:"Educational course on ChatGPT capabilities and applications",llmBusinessTitle:"Large Language Models for Business",llmBusiness:"Business applications and strategies for implementing Large Language Models",llmGoogleTitle:"Introduction to Large Language Models with Google Cloud",llmGoogle:"Google Cloud platform approach to Large Language Models",finetuningTitle:"Finetuning Large Language Models",finetuning:"Advanced techniques for fine-tuning Large Language Models",langchainBootcampTitle:"LangChain with Python Bootcamp",langchainBootcamp:"Comprehensive bootcamp for LangChain framework with Python",awesomeLLMAppsTitle:"Awesome LLM Apps Collection",awesomeLLMApps:"A curated collection of Awesome LLM apps built with RAG, AI Agents, Multi-agent Teams, MCP, Voice Agents, and more. This repository features LLM apps that use models from OpenAI, Anthropic, Google, and open-source models like DeepSeek, Qwen or Llama that you can run locally on your computer."},advanced:{evaluation:"Evaluation methods for AI agents",multiAgent:"Design of multi-agent systems",security:"Security, compliance and identity fundamentals for AI systems",guardrails:"Implementation of guardrails for reliable AI"},strategy:{mitStrategy:"How great companies create lasting competitive edges",stanfordOrg:"Learn how teams, structures, and systems drive performance",uvaStrategy:"Get the playbook for designing and executing effective strategies",cbsManagement:"Master the tools to build and evaluate long-term strategies",harvardLeadership:"Learn how to lead through complexity and change",strategicImpact:"Strategic leadership for impact, change and decision-making",strategicLeadership:"Comprehensive strategic leadership specialization",competitiveStrategy:"Outthink, outmaneuver, and outperform your rivals"},finance:{bocconiPE:"Comprehensive course on private equity and venture capital fundamentals"},specializedTools:{veoVideoTitle:"Google Veo Video Course",veoVideo:"The official guide to master Veo, Google's state-of-the-art video generation model",midjourneyTitle:"Midjourney v7 Quick Guide",midjourney:"Quick and comprehensive free guide for mastering Midjourney v7 image generation",opusClipTitle:"OpusClip Video E
313diting",opusClip:"Learn to use the best AI tool for video editing and content creation",consultantGuideTitle:"AI Consultant Replacement Guide",consultantGuide:"Comprehensive guide to master search capabilities and slide creation with AI"},entrepreneurship:{mitEntrepreneurTitle:"Becoming an Entrepreneur (MIT)",mitEntrepreneur:"Explore early-stage startup challenges using lean methods and design thinking",marylandOpportunitiesTitle:"Identifying Entrepreneurial Opportunities (University of Maryland)",marylandOpportunities:"Explore tools for recognizing and acting on new venture opportunities",whartonSpecializationTitle:"Entrepreneurship Specialization (Wharton)",whartonSpecialization:"A five-part series: develop opportunities, launch your startup, and scale growth and profitability",marylandFinancingTitle:"Financing Innovative Ventures (University of Maryland)",marylandFinancing:"Learn how to prepare financial plans and raise venture funding effectively",yCombinatorTitle:"Startup School (Y Combinator)",yCombinator:"A free video series and resource hub covering everything from idea to scaling",stanfordTechTitle:"Technology Entrepreneurship (Stanford)",stanfordTech:"A hands-on journey from lab innovation to market launch - perfect for aspiring tech founders",harvardEmergingTitle:"Entrepreneurship in 
313Emerging Economies (Harvard)",harvardEmerging:"Learn how innovation tackles major social challenges in emerging markets",whartonStrategyTitle:"Business Strategy (Wharton)",whartonStrategy:"Master strategic planning, market positioning, and gaining a competitive edge",breakthroughProductsTitle:"How to Develop Breakthrough Products and Services",breakthroughProducts:"Fast-track your skills in creating major product and service innovations",mitBusinessPlansTitle:"Nuts and Bolts of Business Plans (MIT OCW)",mitBusinessPlans:"Step-by-step guidance to craft a solid business plan - essential for startups"},entrepreneurshipLevel:"Entrepreneurship",entrepreneurshipBadge:"Entrepreneurship"},uz={heading:"Approach",description:"Combining private equity expertise with cutting-edge technologies, AI tools offer tailored solutions for every business need. Unleashing the real power of AI by combining machine efficiency with human knowledge.",aiProcess:{title:"AI-Enhanced Process",description:"AI technologies can enhance decision-making processes and operational efficiency in private equity through specialized tools and automation capabilities.",dataAnalysis:{title:"1. AI-Powered Data Analysis",description:"AI tools can analyze company data to i
313dentify growth opportunities, market trends, and potential risks with greater precision and speed than traditional methods."},techSelection:{title:"2. Technology Selection",description:"The right AI technologies can be identified based on specific business needs and operational requirements to maximize effectiveness."},implementation:{title:"3. Implementation Strategy",description:"AI tools can be effectively implemented and integrated into existing business processes for maximum efficiency and optimal results."}},aiSolutions:{title:"AI Solutions",tools:"AI Tools",toolsDesc:"Curated directory of solutions for various applications",technology:"Technology Overview",technologyDesc:"Information about AI solutions for different sectors",resources:"Learning Resources",resourcesDesc:"Educational materials about AI technologies and applications"},steps:{step1:{title:"1. In-depth Analysis",description:"Advanced algorithms evaluate business aspects to identify hidden opportunities and growth potential."},step2:{title:"2. Strategic Matching",description:"Proprietary matching technology connects companies with the most suitable investors."},step3:{title:"3. Continuous Monitoring",description:"AI tools track progress throughout the entire journey, from valuation to investment finalization."}},expertise:{heading:"Expertise",years:{title:"Years of experience",description:"In private equity and M&A sectors"},companies:{number:"SMEs",title:"Companies assisted",description:"SMEs from various sectors successfully supported"},success:{title:"Success rate",description:"In investor-company matching operations"}}},pz={heading:"Project Information",description:"Discover how artificial intelligence can transform connections between SMEs and investors through an AI-powered platform.",form:{heading:"Contact",simplified:"Contact via email for more information about the project.",email_button:"Contact via Email",email_label:"Contact email:",copy_email:"Copy",copied:"Copied"},projectFocus:"Research Focus Areas",locations:"Information",inquiry:{title:"Research Inquiries",general:"General Information",generalDesc:"For general project information and research overview",technical:"Technical Documentation",technicalDesc:"For technical specifications and implementation details"},status:"Status",statusValue:"Active Research Phase",updated:"Last Updated"},mz={heading:"Disclaimer",subtitle:"Important legal information",main:{title:"General Disclaimer",primary:"This website is not affiliated with, endorsed by, or sponsored by OpenAI, Google, Anthropic, Microsoft, or any other entities mentioned. The content is for informational and educational research purposes only.",secondary:"Private Equity AI is an independent educational research project studying the application of artificial intelligence in the investment sector and small-medium enterprises."},educational:{title:"Educational and Research Purpose",content1:"This website is configured as an educational/informational research project. All information, analysis, and content are provided exclusively for research and learning purposes.",content2:"We do not provide investment advice, financial consulting, or commercial recommendations. All information presented should be considered as educational material to understand potential AI applications in the business sector."},copyright:{title:"Copyright and Trademarks",trademarks:"Trademarks and Logos:",usage:"The use of names and references to these services is purely informational and does not imply any affiliation, endorsement, or sponsorship."},sources:{title:"Sources and Links",content1:"All external links point to official websites of respective services and tools. We do not reproduce copyrighted content but provide only original descriptions and links to official sources.",content2:"Information about pricing, features, and service availability may vary and we recommend always verifying information on official websites."},contact:{title:"Contact Information",content:"For questions regarding this disclaimer or the research project, please contact:"}},hz={heading:"PE Readiness Assessment Example",description:"Demonstrative example of how artificial intelligence can analyze company data to assess theoretical readiness for private equity investments through evaluation algorithms.",companyInfo:"Company Information",companyName:"Company Name",yearEstablished:"Year Established",generalDescription:"Brief Company Description",founder:"Founder/CEO",employees:"Number of Employees",financialInfo:"Financial Information",revenue:"Annual Revenue",grossProfit:"Gross Profit",ebitda:"EBITDA",strategicInfo:"Strategic Information",competitors:"Main Competitors",platformInterest:"Example: Interest in AI strategies (demo only)?",yes:"Yes",no:"No",startOver:"Restart Demo",
313submit:"Process Data",processing:"Algorithms processing...",yourScore:"Demo Score",demoDisclaimer:"This is a demonstrative example of AI algorithms for PE evaluation for educational and research purposes.",sampleData:{exampleDataPoints:"Example data points collected",company:{title:"Company Information",description:"Fundamental data on company structure and history",examples:{name:"Company name and legal entity",description:"Business activity and sector description",year:"Year of incorporation and company history",founder:"Founder and management information"}},team:{title:"Team and Human Resources",description:"Analysis of organizational structure and competencies",examples:{employees:"Number of employees and organizational structure",management:"Leadership team profiles",structure:"Organization chart and reporting lines",skills:"Key competencies and talent gaps"}},financial:{title:"Financial Data",description:"Economic metrics and financial performance",examples:{revenue:"Annual revenue and growth trends",profit:"Profit margins and profitability",ebitda:"EBITDA and operational cash flow",growth:"Growth rates and projections"}},market:{title:"Market Position",description:"Competitive analysis and sector positioning",examples:{position:"Market share and positioning",competitors:"Main competitor analysis",trends:"Market trends and outlook",opportunities:"Identified growth opportunities"}},strategic:{title:"Strategic Objectives",description:"Development plans and growth strategies",examples:{goals:"Growth objectives and milestones",expansion:"Geographic/product expansion plans",ownership:"Ownership structure and governance",timeline:"Timeline for strategic objectives"}},aiAnalysis:{title:"Demonstrative AI Analysis",description:"Example of how artificial intelligence can process and analyze collected data to provide automated insights on PE readiness factors.",features:{automation:"Automated Analysis",scoring:"Algorithmic Scoring",insights:"Predictive Insights",benchmarking:"Sector Benchmarking"}},sampleResults:{title:"Example of Algorithmic Results",readiness:"PE Readiness Score",grade:"Overall Assessment",potential:"Growth Potential"}},goals:"Strategic Goals",goalGrow:"Grow the business",goalValuation:"Increase valuation",goalAcquire:"Acquire competitors",goalPlatform:"Digital transformation",goalAggregation:"Industry aggregation",goalMonetization:"Monetization",ownership:"Ownership Transition",ownershipRetention:"Retain majority ownership",ownershipPartial:"Sell partial stake",ownershipFull:"Complete exit",whyUse:"Why Use This Assessment?",benefits:{insight:{title:"Automated Analysis",description:"AI algorithms can identify strengths and improvement areas from a PE perspective through data processing."},preparation:{title:"Strategic Preparation",description:"Algorithmic identification of key areas to focus on before theoretical investor interactions."},guidance:{title:"Data-Based Analysis",description:"Artificial intelligence technologies can process input data to provide detailed analysis."}},rapidCheckup:{heading:"AI Analysis Example for PE",subheading:"Demo of Evaluation Algorithms",description:"Demonstrative example of how artificial intelligence algorithms can analyze company data to evaluate theoretical readiness for private equity investments. This is an educational demo for research purposes.",features:["Comprehensive evaluation of your business fundamentals","Assessment of your financial reporting and transparency","Analysis of operational efficiency and scalability","Evaluation of growth strategy and market positioning","Review of management team capabilities and structure","Identification of key value creation opportunities"],cta:"Try Algorithm Demo",premium:"Advanced Assessment",premiumDesc:"For a more thorough analysis, AI tools can provide a detailed evaluation of investment readiness based on multiple data points."}},fz={heading:"AI Technologies",description1:"AI solutions for businesses seeking growth and investors looking for opportunities. Advanced AI technologies can create value for SMEs and investors through intelligent automation and data-driven insights.",description2:"",contactButton:"Learn More",aiIntegration:{title:"AI Integration for SMEs",description:"AI tools can be integrated into business processes to drive efficiency, innovation, and growth through targeted automation solutions that match specific operational needs."},strategicAdvisory:{title:"Data Analysis",description:"AI-powered analysis to identify growth opportunities and optimize company value through data-driven insights."},intelligentMatching:{title:"Intelligent Matching",description:"Advanced algorithms to connect SMEs with investors best suited to their needs and growth potential."},exclusiveNetwork:{title:"Network Analysis",description:"AI-powered analysis of investor and partnership networks to i
313dentify collaboration opportunities."},dueDiligence:{title:"Automated Due Diligence",description:"AI-driven verification process to ensure transparency and security at every stage of the transaction."},predictiveAnalytics:{title:"Predictive Analytics",description:"Use of advanced data to predict market trends and optimize strategic decisions."},customConsultation:{heading:"AI for Business Growth",description:"Explore how AI technologies can help businesses reach new heights through strategic data analysis and automation."},intermediation:{title:"Strategic Intermediation Model",description:"AI tools can become trusted intermediaries, connecting businesses, investors, and specialized financial services. Through advanced artificial intelligence, comprehensive solutions can be offered to facilitate valuable connections.",partners:"Project Components",partnersDesc:"Integrated artificial intelligence technologies to offer valuable solutions",monetization:"Sustainable Model",monetizationDesc:"The project illustrates how AI can create value through strategic partnerships",affiliations:"Collaboration Model",affiliationsDesc:"Examples of how AI technologies can facilitate collaborations between different entities",revenueStreams:"Possible Applications",revenueStream1:"Automated analysis of investment opportunities",revenueStream2:"Matching systems between companies and investors",revenueStream3:"Predictive analysis of market trends",revenueStream4:"Integration with existing financial services",affiliateLinks:"Intelligent connections between complementary ecosystems"},businessPlan:{title:"Strategic Business Plan",points:["Development of comprehensive business plans as an essential first step","In-depth market analysis and strategic positioning","Detailed financial projections and presentation support","Preparation of investment-ready documentation for dialogue with investors"]},coaching:{title:"Executive Coaching & Leadership Development",points:["Personalized coaching for founders, CEOs and executive teams","Development of high-performance mindset and decision-making frameworks","Creation of strategic vision and communication strategies for organizational alignment","Performance psychology techniques to overcome business challenges and maximize potential"]},investment:{title:"Investment Analysis",points:["In-depth evaluation of investment opportunities","Analysis of risks and potential returns","Detailed reports on financial performance"]},investor:{title:"Investor Matching",points:["Connection with qualified investors","Precise profiling of investment preferences","Customized presentations for investors"]},transaction:{title:"Transactional Advisory",points:["Support during all phases of the operation","Negotiation of optimal conditions","Financial and operational due diligence"]},governance:{title:"Corporate Governance",points:["Implementation of governance best practices","Structuring effective boards of directors","Alignment between management and stakeholder interests"]},network:{title:"Strategic Network",points:["Access to an exclusive network of strategic partners","Cross-industry collaboration opportunities","Networking events targeted to your sector"]},database:{title:"Exclusive Databases",points:["Preqin","Morningstar","ION Analytics","Gain.pro","Mediobanca","Bloomberg","The Fund Marketer","PitchBook"],links:{Preqin:"https://www.preqin.com",Morningstar:"https://www.morningstar.com","ION Analytics":"https://iongroup.com/analytics","Gain.pro":"https://www.gain.pro",Mediobanca:"https://www.areastudimediobanca.com/en",Bloomberg:"https://www.bloomberg.com/professional/solution/financial-data-management/","The Fund Marketer":"https://www.thefundmarketer.com/categories/investor-databases",PitchBook:"https://get.pitchbook.com/investor-database/"},disclaimer:"Private Equity AI is not affiliated with Preqin, Morningstar, Bloomberg, PitchBook or other mentioned services. Links point to official websites for informational purposes only."}},gz={categories:{aiAssistants:"AI Assistants",productivity:"Productivity",security:"IT Security",customerSupport:"Customer Support",multimedia:"Multimedia",presentations:"Presentations",content:"Content Creation",development:"Development",career:"Career & Job Search"},consultation:{heading:"Project Information",description:"The project explores how artificial intelligence can be used to connect SMEs and investors through advanced technologies",contactBtn:"More Information"},database:{heading:"AI Solutions Database for SMEs",description:"Examples of AI tools that can help automate business processes",findSolution:"Find Your Solution",searchPlaceholder:"Search for tools, features, or use cases",budget:"Budget",industry:"Industry",solutionsFound:"solutions foun
313d",categories:{all:"All Solutions",automation:"Process Automation",analysis:"Predictive Analysis",crm:"Intelligent CRMs"},allIndustries:"All Industries",allSMEs:"All SMEs",financial:"Financial",manufacturing:"Manufacturing",healthcare:"Healthcare",retail:"Retail",services:"Services",agrifood:"Agrifood",automation:"Automation",sponsored:"Sponsored",featuredSolutions:"Featured Solution",collaborateHeading:"Project Information",collaborateDesc:"",exploreMore:"Explore recommended AI tools",anyBudget:"Any budget",free:"Free options available",lowCost:"Under $50/month",mediumCost:"$50-200/month",highCost:"Enterprise solutions",anyIndustry:"All Industries",noResults:"No solutions match the selected criteria. Try modifying your filters."},automation:{title:"Intelligent Automation for SMEs",description:"SMEs can automate 30-40% of daily activities without additional costs with AI. With these tools, SMEs can start with high-impact areas (e.g., invoicing or customer support) and use no-code integrations to connect tools."}},xz={title:"More Information About the Project",subtitle:"Exploring how AI can transform private equity processes",compactDescription:"A research initiative examining the intersection of artificial intelligence and private equity for enhanced investment processes.",availability:"Project in development",scheduleButton:"More Information",steps:{step1:{title:"AI and Automation",description:"Implementation of AI technologies to automate business processes"},step2:{title:"Intelligent Matching",description:"Data-driven connection systems between companies and investors"},step3:{title:"Predictive Analytics",description:"Predictive models to identify market trends and opportunities"}}},yz={heading:"World's Wealthiest Individuals",description:"Explore the profiles of the world's most successful business leaders and investors, discovering their key strategies and investment philosophies.",subheading:"Featured Billionaires",subtitle:"Profiles of prominent business figures who have significantly shaped global industries and investment strategies.",profile:{netWorth:"Net Worth",country:"Country",source:"Source of Wealth",rank:"Rank",age:"Age",keyInvestments:"Key Investments",readMore:"View Profile"},filters:{all:"All Categories"},categories:{tech:"Technology",finance:"Finance",industrial:"Industrial"},cta:{title:"Investment Strategies and AI",description:"Learn how investment strategies and AI technologies can be applied to business growth scenarios.",buttonText:"More Information"}},vz={description:"AI-powered platform project using advanced artificial intelligence technologies to analyze and transform private equity processes and enhance SME efficiency.",projectInfo:"AI-powered platform project to enhance the power of AI in Private Equity",copyright:"All rights reserved.",links:{terms:"Terms",privacy:"Privacy"},cta:{title:"Artificial Intelligence and Private Equity",description:"This project explores how artificial intelligence can analyze and improve private equity processes through innovative technologies and advanced algorithmic methodologies.",contactButton:"More Information"},contact:{heading:"Contact",emailLink:"Contact for Information"}},bz={seoTitle:"Open Source AI Projects - Private Equity AI",seoDescription:"Explore notable open-source AI projects and academic research initiatives reshaping artificial intelligence and machine learning.",heading:"Open Source AI Projects",description:"A curated collection of significant open-source artificial intelligence projects and academic research initiatives that are advancing the field of AI and machine learning.",disclaimer:"Private Equity AI is not affiliated with the mentioned open source projects and institutions. Content provided for informational and educational research purposes only.",searchPlaceholder:"Search projects...",all:"All",visitProject:"Visit Project",noResults:"No projects found matching your search criteria."},wz={badge:"Growth through Private Equity",heading:"Success Stories",description:"Real examples of companies that have accelerated growth and maximized value through AI-enhanced private equity strategies.",note:"Data is representative of real successes, with specific details removed to protect client confidentiality.",opportunity:"Growth Opportunity",stories:{heading:"Growth through Private Equity",subheading:"Success Stories",description:"Real examples of companies that have accelerated growth and maximized value through AI-enhanced private equity strategies.",note:"Data is representative of real successes, with specific details removed to protect client confidentiality.",infrastru
313cture:{title:"Energy Infrastructure",description:"Renewable infrastructure developer that expanded operations across Europe thanks to growth capital and strategic consulting.",metrics:{revenue:"Revenue",ebitda:"EBITDA",growth:"Growth"},opportunity:"Geographic expansion, consolidation of fragmented sector, and development of new business lines in energy services."},automotive:{title:"Automotive Components",description:"Specialized component manufacturer that expanded its global presence through supply chain optimization and process digitalization.",metrics:{revenue:"Revenue",global:"Global Distribution",distributors:"Distributors"},opportunity:"International expansion, supply chain optimization, and development of new direct distribution channels."},healthtech:{title:"Health Tech",description:"Innovative telemedicine startup that scaled rapidly thanks to a clear go-to-market strategy and accelerated product development.",metrics:{revenue:"Revenue",growth:"Annual Growth",clients:"Healthcare Facilities"},opportunity:"Development of new software solutions, expansion into new European markets, and integration with national healthcare systems."},itcorp:{title:"IT Services",description:"IT services company specializing in cybersecurity that completed a buy-and-build path by acquiring complementary competitors.",metrics:{revenue:"Revenue",margin:"Margin",market:"Market"},opportunity:"Market consolidation through targeted acquisitions, expansion of managed services, and development of proprietary solutions."},chocolate:{title:"Chocolate Production",description:"Artisanal premium chocolate manufacturer that strengthened its brand and expanded distribution through modern channels.",metrics:{revenue:"Revenue",growth:"Growth",products:"Products"},opportunity:"Brand strengthening, product line expansion, and e-commerce development with DTC approach."},bakery:{title:"Bakery Products",description:"Company specialized in frozen bakery products that optimized production and expanded distribution in retail and Ho.Re.Ca channels.",metrics:{revenue:"Revenue",channels:"Channels",growth:"Growth"},opportunity:"Production process automation, capacity expansion, and development of new lines to meet growing demand for premium products."},icecream:{title:"Artisanal Ice Cream",description:"Artisanal ice cream producer that transformed a regional business into a national brand through a process of rebranding and industrialization.",metrics:{revenue:"Revenue",exit:"Exit",customers:"Retail Customers"},opportunity:"Development of new premium packaging, logistics optimization, and expansion of presence in national retail chains."},plantbased:{title:"Plant-Based Food",description:"Innovator in the plant-based sector that accelerated growth through the development of new product lines and international expansion.",metrics:{revenue:"Revenue",export:"Export",products:"Product Lines"},opportunity:"Production capacity expansion, entry into new foreign markets, and development of new product categories with a focus on sustainability."}}},Az={heading:"Investment & Wealth Management Tools",description:"A curated selection of platforms and tools to help businesses and individual investors build, manage, and grow their portfolios with efficient, low-cost solutions.",disclaimer:"Private Equity AI is not affiliated with Vanguard, BlackRock, Schwab, Interactive Brokers, or other mentioned financial services. Links point to official platforms for informational purposes only. This is not financial advice.",principlesHeading:"Core Investment Principles",visit:"Visit Website",principles:{diversification:{title:"Diversification",description:"Spreading investments across various asset classes to reduce risk and increase potential for consistent returns."},passiveManagement:{title:"Passive Management",description:"Investing in index funds and ETFs that track market benchmarks, minimizing costs and often outperforming active management."},lowCosts:{title:"Low Fee Structure",description:"Minimizing investment fees and expenses which significantly impact long-term portfolio performance."},longTerm:{title:"Long-Term Perspective",description:"Focusing on sustained growth over decades rather than short-term market fluctuations."},assetAllocation:{title:"Strategic Asset Allocation",description:"Determining the optimal mix of assets based on risk tolerance, time horizon, and investment goals."}},brokersHeading:"Investment Platforms",onlineBrokers:"Online Brokers",brokersDescription:"Digital platforms that provide access to global markets with competitive fee structures and advanced trading tools.",brokers:{interactiveBrokers:"Comprehensive global trading platform with access to stocks, options, futures, currencies, bonds and funds worldwide.",degiro:"European broker offering exceptionally low fees and access to exchanges across North America, Europe and Asia.",fineco:"Italian banking and brokerage platform with comprehensive financial services and multi-currency capabilities.",trading212:"Commission-free investing platform with fractional shares and automated investing options.",moneyfarm:"Digital wealth manager offering professionally managed portfolios based on your risk profile.",tradeRepublic:"Mobile-focused broker with commission-free trading and savings plans.",scalableCapital:"Digital investment platform offering both managed portfolios and self-directed trading.",yomoni:"French robo-advisor providing personalized portfolio management with different risk profiles.",robinhood:"Commission-free investing, plus banking services with competitive yields."},roboAdvisorsHeading:"Automated Investment Solutions",roboAdvisors:"Robo-Advisors",roboAdvisorsDescription:"Automated investment services that create and manage diversified portfolios based on your risk tolerance and goals.",roboAdvisorsList:{betterment:"Automated investing service that uses technology to help you grow your wealth through personalized portfolios.",wealthfront:"Automated investment service with tax-optimization strategies and financial planning tools.",sigfig:"Investment platform that analyzes your existing portfolio and provides optimization recommendations.",vanguard:"Digital advice service from one of the world's largest investment companies, known for low-cost index funds.",schwab:"Automated investing with professional oversight and no advisory fees."},etfsHeading:"ETF Providers",etfPlatforms:"ETF Platforms",etfsDescription:"Investment fund providers offering a wide range of Exchange-Traded Fu
313nds for building diversified portfolios.",etfs:{vanguard:"Pioneer in low-cost index investing with a wide range of ETFs covering global markets.",ishares:"BlackRock's ETF offering with products covering virtually every sector, geography, and asset class.",spdr:"State Street Global Advisors' ETF family including the first and most traded ETF in the world (SPY).",invesco:"Diverse ETF lineup including the popular QQQ fund tracking the Nasdaq-100 Index.",lyxor:"European ETF provider with products covering major indices and specialized sectors."},investmentDisclaimer:{heading:"Investment Disclaimer",description1:"The tools and platforms listed are for informational purposes only and do not constitute investment advice. Always conduct your own research or consult with a qualified financial advisor before making investment decisions.",description2:"Remember that investments carry risk, including the potential loss of principal, and past performance is not indicative of future results."},consultation:{heading:"AI for Investment Analysis",description:"As part of the project, we explore how artificial intelligence can analyze investment data to generate useful insights.",button:"More Information"}},jz={heading:"Business Prompts for AI Productivity",description:"Exploring how AI prompts shape productivity across business functions.",disclaimer:"Private Equity AI is not affiliated with the mentioned AI tools and platforms. Content provided for informational and educational research purposes only.",totalPrompts:"60 Professional Prompts",readyToUse:"Ready to Use",searchPlaceholder:"Search prompts by title or content...",copyPrompt:"Copy Prompt",copied:"Copied!",all:"All",categories:{total:"10 Categories",projectManagement:"Project Management",humanResources:"Human Resources",marketing:"Marketing",sales:"Sales",finance:"Finance",customerService:"Customer Service",strategy:"Strategy",operations:"Operations",events:"Events",crisis:"Crisis Management"},categoryDescriptions:{projectManagement:"Tools for effective project, team, and deadline management",humanResources:"Solutions for recruitment, evaluation, and personnel management",marketing:"Strategies and content to promote your brand and reach customers",sales:"Techniques to increase sales and improve customer relationships",finance:"Financial analysis and budget management for informed decisions",customerService:"Excellent customer support and communication management",strategy:"Strategic planning and market analysis for growth",operations:"Optimization of operational processes and productivity",events:"Organization and management of successful business events",crisis:"Crisis management and communication in critical situations"},cta:{title:"Maximize Productivity with AI",description:"These prompts are just the beginning. Discover how artificial intelligence can completely transform your company's processes."}},kz={header:ez,peAiSolutions:tz,about:nz,notFound:rz,email:iz,tagline:az,features:sz,home:oz,hero:lz,researchInsights:cz,learningResources:dz,approach:uz,contact:pz,disclaimer:mz,checklist:hz,services:fz,aiTools:gz,videoCall:xz,worldBillionaires:yz,footer
313:vz,openSourceAI:bz,success:wz,wealthTools:Az,businessPrompts:jz};zt.use(KH).init({resources:{en:{translation:kz}},lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1},react:{useSuspense:!1}});const xs={title:"AI Value Creation Toolkit for Companies | PrivateEquity.AI",description:"Curated AI systems and tools for companies seeking to improve operating efficiency, automate workflows, strengthen revenue execution and create enterprise value.",canonicalPath:"/general-ai-toolkit",canonicalUrl:"https://www.privatequity.ai/general-ai-toolkit",keywords:"AI tools for companies, AI tools for SMEs, AI tools for mid-market companies, portfolio company AI, AI workflow automation, AI operating efficiency, AI value creation"},tb="https://www.privatequity.ai",kt=(e,t,n,i,a,s={})=>{const o=s.indexable??!0;return{path:e,title:t,description:n,robots:o?"index, follow":"noindex, follow",indexable:o,sitemap:s.sitemap??o,semanticIdentity:i,serverSummary:a}},gh={"/":kt("/","AI Due Diligence for Private Equity — PrivateEquity.AI","PrivateEquity.AI helps investors and companies understand how AI affects enterprise value, competitive advantage, operating models, investment risk, and execution.","AI Due Diligence for Private Equity","Judgment, not hype · Signal over noise"),"/about":kt("/about","About PrivateEquity.AI — Unlocking Enterprise Value Through AI","PrivateEquity.AI helps investors and companies understand how AI affects enterprise value, competitive advantage, operating models, investment risk, and execution.","The independent intelligence layer for AI Due Diligence in Private Equity.","Built to help investors and companies identify where AI can strengthen competitive advantage, improve operating leverage and reshape the economics of a business."),"/ai-strategy-toolkit":kt("/ai-strategy-toolkit","Intelligence Stack — AI Diligence Tools for Private Equity — PrivateEquity.AI","The AI systems and data platforms changing how private equity analyses targets, markets, and portfolios. Deal intelligence, private market data, and diligence research tools.","Intelligence Stack for Private Capital","The AI systems and data infrastructure changing how private equity analyses targets, markets, and portfolios."),"/general-ai-toolkit":kt(xs.canonicalPath,xs.title,xs.description,"AI Readiness & Operating Model Toolkit","A curated set of AI systems for workflow automation, operating efficiency, revenue execution, customer service, finance, recruiting, and knowledge work."),"/assessment":kt("/assessment","AI Value Exposure & Readiness Assessment | PrivateEquity.AI","Investment-grade AI assessment for private capital and company leaders, identifying AI value potential, value at risk, execution readiness, investment priorities and time-to-value.","Know where AI changes enterprise value.","An investment-grade rapid assessment identifying where AI can create or erode enterprise value, what to prioritize, the indicative investment required, and how quickly measurable impact could emerge."),"/learning":kt("/learning","Insights — AI Learning & Strategic Research | PrivateEquity.AI","AI learning paths, institutional resources, and curated strategic research for private capital professionals and company leaders.","AI Insights","Research, learning and expert intelligence for private capital in the AI economy."),"/infrastructure":kt("/infrastructure","Infrastructure — Capital Rails and Market Structure for Private Equity — PrivateEquity.AI","Distribution platforms, digital securities infrastructure, and secondary markets reshaping how private capital flows. Relevant context for target evaluation, exit planning, and competitive diligence.","Infrastructure","The structural layer through which private capital is distributed, accessed, and transacted — and how that layer is being restructured."),"/ai-agentic-companies":kt("/ai-agentic-companies","Execution — AI Operating Models and Value Creation in Private Equity — PrivateEquity.AI","How AI-native systems are replacing workflows and changing operating models, labor costs, and value creation potential in target companies. Relevant for PE diligence and portfolio assessment.","Execution","How AI-native systems are replacing workflows — and what that means for operating models, labor costs, and value creation in target companies."),"/mckinsey-prompts":kt("/mckinsey-prompts","McKinsey-Style AI Prompts — 95 Consulting Frameworks for Claude & GPT","95 institutional-grade prompts across 21 consulting skill families — issue trees, market sizing, competitive war-gaming, EBITDA bridges, board memos, and more.","Consulting Frameworks for AI — 95 Prompts","95 institutional-grade prompts across 21 skill families — from issue trees and market sizing to competitive war-gaming, EBITDA bridges, stakeholder alignment, and board memos."),"/marco-mizzau":kt("/marco-mizzau","Marco Mizzau — Founder, PrivateEquity.ai","Marco Mizzau is Founder of PrivateEquity.ai and Chairman of Blacktrace. Former CEO of Consip and Director General of Inarcassa. Advisor to private equity funds and institutional investors across Europe.","Marco Mizzau","PrivateEquity.ai"),"/perspectives":kt("/perspectives","Perspectives — PrivateEquity.AI","Essays on AI, private capital and geopolitics by Marco Mizzau.","AI, private capital and geopolitics.","Independent essays on AI strategy, geopolitical risk, and the forces reshaping private capital markets."),"/legal":kt("/legal","Legal - PrivateEquity.AI","Legal information, privacy, and terms for PrivateEquity.AI","Legal Information","Legal Information"),"/ai-exposure-index":kt("/ai-exposure-index","The AI Exposure Index for Private Capital | PrivateEquity.AI","Independent sector-level intelligence derived from the PrivateEquity.ai AI Exposure Database.","The AI Exposure Index for Private Capital","A sector-level intelligence benchmark tracking where AI creates opportunity, where it creates disruption risk, and where private equity investors should pay attention."),"/ai-diligence-score":kt("/ai-diligence-score","AI Diligence Score — Assess AI Risk, Disruption & Readiness | PrivateEquity.AI","A rapid diligence framework for investment teams to identify AI-related upside, structural disruption risk, and execution readiness before an investment decision is made.","Assess AI risk, opportunity, and disruption exposure in five minutes.","A rapid diligence framework for investment teams to identify AI-related upside, structural disruption risk, and execution readiness in a target company — before an investment decision is made."),"/ai-transparency":kt("/ai-transparency","AI Transparency | PrivateEquity.AI","Learn how PrivateEquity.AI uses artificial intelligence, human oversight and editorial validation in its research and analytical frameworks.","AI Transparency","PrivateEquity.AI uses artificial intelligence as a supporting analytical capability within selected internal research, classification and scoring processes."),"/methodology":kt("/methodology","Methodology | PrivateEquity.AI","Methodological framework used by PrivateEquity.AI to organise research, analytical scoring and AI exposure assessments.","Methodology","Methodology version 1.0 · Last reviewed: 4 August 2026"),"/editorial-policy":kt("/editorial-policy","Editorial Policy | PrivateEquity.AI","Editorial principles governing research, analytical content and AI-assisted processes.","Editorial Policy","Editorial Independence"),"/contact":kt("/contact","Contact Us | PrivateEquity.AI","Institutional inquiries and confidential discussions — PrivateEquity.AI and Blacktrace.","Contact Us","Blacktrace works with a limited number of clients each year to ensure focus, depth and discretion.",{indexable:!1,sitemap:!1}),"/startup-stack":kt("/startup-stack","Intelligent Startup Stack — From Founder-Led to Investor-Ready — PrivateEquity.AI","The governance, ownership, compliance, financial readiness and due diligence infrastru
313cture every startup must build to become investable. PrivateEquity.AI framework for investor-ready founders.","From Founder-Led Startup to Investor-Ready Company.","Professional investors evaluate governance, ownership, compliance, and financial readiness before committing capital — not just product and market."),"/ai-tool-finder":kt("/ai-tool-finder","AI Tool Finder — PrivateEquity.AI","Find the right AI tools, GitHub projects, and frameworks for your business challenge. Curated by PrivateEquity.AI.","Find the right AI tools for your business challenge.","Describe what you want to improve and discover the most relevant AI tools, GitHub projects, and operating frameworks already curated by PrivateEquity.AI."),"/ai-infrastructure":kt("/ai-infrastructure","AI Infrastructure — PrivateEquity.AI","The compute and data infrastructure powering AI systems — semiconductors, cloud, data centers, networking, storage, and edge computing.","The Infrastructure Layer of AI","The compute and data infrastructure powering AI systems. Relevant for technology and infrastructure investors, but not where value is primarily captured in private capital."),"/blacktrace-diagnostic":kt("/blacktrace-diagnostic","Blacktrace Diagnostic — Capital Readiness for Private Companies","A strategic diagnostic for private companies assessing AI readiness, business model quality, and positioning for private capital. Presented within the PrivateEquity.ai intelligence ecosystem, founded by Marco Mizzau.","Is your company ready for private capital?","A strategic diagnostic for private companies seeking growth capital or PE partnership.")};function Nz(e){try{return new URL(e,tb).pathname.replace(/\/+$/,"")||"/"}catch{return e.split(/[?#]/)[0].replace(/\/+$/,"")||"/"}}function Iz(e){return gh[Nz(e)]}function Sz(e){return e.path==="/"?`${tb}/`:`${tb}${e.path}`}Object.values(gh).filter(e=>e.sitemap);const Xe=({title:e,description:t,canonicalUrl:n,keywords:i,lang:a="en",noindex:s=!1,ogTitle:o,ogDescription:l,ogImage:c,ogType:d="website",twitterCard:u="summary_large_image",twitterTitle:p,twitterDescription:m,twitterImage:f,children:x})=>{const h="https://www.privatequity.ai",g=Iz(n||(typeof window<"u"?window.location.pathname:"")),y=(g==null?void 0:g.title)||e,v=(g==null?void 0:g.description)||t,b=g?!g.indexable:s,A=g?Sz(g):n?`${h}${n}`:h;return r.jsxs(yH,{children:[r.jsx("title",{children:y}),r.jsx("meta",{name:"description",content:v}),i&&r.jsx("meta",{name:"keywords",content:i}),r.jsx("link",{rel:"canonical",href:A}),r.jsx("meta",{name:"language",content:a}),b?r.jsx("meta",{name:"robots",content:"noindex, follow"}):r.jsx("meta",{name:"robots",content:"index, follow"}),r.jsx("meta",{property:"og:title",content:o||y}),r.jsx("meta",{property:"og:description",content:l||v}),r.jsx("meta",{property:"og:url",content:A}),r.jsx("meta",{property:"og:type",content:d}),r.jsx("meta",{property:"og:site_name",content:"PrivateEquity.ai"}),c&&r.jsx("meta",{property:"og:image",content:c}),r.jsx("meta",{name:"twitter:card",content:u}),r.jsx("meta",{name:"twitter:title",content:p||o||y}),r.jsx("meta",{name:"twitter:description",content:m||l||v}),f&&r.jsx("meta",{name:"twitter:image",content:f}),x]})};var zD={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},wk=F.createContext&&F.createContext(zD),Cz=["attr","size","title"];function Ez(e,t){if(e==null)return{};var n=_z(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function _z(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function xh(){return xh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},xh.apply(this,arguments)}function Ak(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function yh(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};
313t%2?Ak(Object(n),!0).forEach(function(i){Pz(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ak(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Pz(e,t,n){return t=Tz(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Tz(e){var t=Dz(e,"string");return typeof t=="symbol"?t:t+""}function Dz(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function WD(e){return e&&e.map((t,n)=>F.createElement(t.tag,yh({key:n},t.attr),WD(t.child)))}function Oz(e){return t=>F.createElement(Mz,xh({attr:yh({},e.attr)},t),WD(e.child))}function Mz(e){var t=n=>{var{attr:i,size:a,title:s}=e,o=Ez(e,Cz),l=a||n.size||"1em",c;return n.className&&(c=n.className),e.className&&(c=(c?c+" ":"")+e.className),F.createElement("svg",xh({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},n.attr,i,o,{className:c,style:yh(yh({color:e.color||n.color},n.style),e.style),height:l,width:l,xmlns:"http://www.w3.org/2000/svg"}),s&&F.createElement("title",null,s),e.children)};return wk!==void 0?F.createElement(wk.Consumer,null,n=>t(n)):t(zD)}function VD(e){return Oz({tag:"svg",attr:{role:"img",viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"},child:[]}]})(e)}const nb="pe_cookie_consent_v2",Rz=6*30*24*60*60*1e3;function Lz(){try{const e=localStorage.getItem(nb);if(!e)return null;const t=JSON.parse(e);return Date.now()-t.timestamp>Rz?(localStorage.removeItem(nb),null):t}catch{return null}}function Bx(e){const t={decided:!0,analytics:e,timestamp:Date.now()};return localStorage.setItem(nb,JSON.stringify(t)),t}const rb="pe-open-cookie-panel";function Fz(){window.dispatchEvent(new Event(rb))}function Bz(){const[e,t]=j.useState(null),[n,i]=j.useState(!1),[a,s]=j.useState(!1),[o,l]=j.useState(!1);j.useEffect(()=>{const f=Lz();t(f),l((f==null?void 0:f.analytics)??!1),i(!0)},[]),j.useEffect(()=>{const f=()=>{l((e==null?void 0:e.analytics)??!1),s(!0)};return window.addEventListener(rb,f),()=>window.removeEventListener(rb,f)},[e]);const c=j.useCallback(()=>{const f=Bx(!0);t(f),s(!1)},[]),d=j.useCallback(()=>{const f=Bx(!1);t(f),s(!1)},[]),u=j.useCallback(()=>{const f=Bx(o);t(f),s(!1)},[o]),p=j.useCallback(()=>{l((e==null?void 0:e.analytics)??!1),s(!0)},[e]);if(!n)return null;const m=!(e!=null&&e.decided)&&!a;return r.jsxs(r.Fragment,{children:[m&&r.jsx("div",{className:"institutional-cookie-banner fixed bottom-0 left-0 right-0 z-50 border-t",style:{backgroundColor:"#0f0f0f",borderColor:"rgba(255,255,255,0.08)"},role:"dialog","aria-label":"Cookie consent",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 py-4 max-w-6xl",children:r.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center gap-4",children:[r.jsxs("p",{className:"text-xs text-gray-400 leading-relaxed flex-1",children:["This website uses essential cookies and, subject to consent, analytical cookies to enhance user experience and support platform performance analysis."," ",r.jsx(de,{href:"/legal",className:"underline-offset-2 underline transition-colors",style:{color:"#D4A843"},children:"Privacy Policy"})," · ",r.jsx(de,{href:"/legal",className:"underline-offset-2 underline transition-colors",style:{color:"#D4A843"},children:"Cookie Policy"})]}),r.jsxs("div",{className:"cookie-actions flex items-center gap-2 flex-shrink-0 flex-wrap sm:flex-nowrap",children:[r.jsx("button",{onClick:p,className:"text-xs text-gray-500 hover:text-gray-300 transition-colors px-3 py-1.5 rounded whitespace-nowrap border",style:{borderColor:"rgba(255,255,255,0.1)"},children:"Manage preferences"}),r.jsx("button",{onClick:d,className:"text-xs text-gray-400 hover:text-gray-200 transition-colors px-3 py-1.5 rounded whitespace-nowrap border",style:{borderColor:"rgba(255,255,255,0.12)"},children:"Reject"}),r.jsx("button",{onClick:c,className:"text-xs font-medium text-white px-4 py-1.5 rounded whitespace-nowrap transition-opacity hover:opacity-90",style:{backgroundColor:"#D4A843"},children:"Accept"})]})]})})}),a&&r.jsx("div",{className:"institutional-cookie-banner fixed bottom-0 left-0 right-0 z-50 border-t",style:{backgroundColor:"#0f0f0f",borderColor:"rgba(255,255,255,0.10)"},role:"dialog","aria-label":"Cookie preferences",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-6 max-w-2xl",children:[r.jsxs("div",{className:"flex items-start justify-between mb-5",children:[r.jsxs("div",{children:[r.jsx("h3",{className:"text-sm font-semibold text-white tracking-tight mb-0.5",children:"Cookie Preferences"}),r.jsxs("p",{className:"text-xs",style:{color:"rgba(255,255,255,0.3)"},children:[r.jsx(de,{href:"/legal",className:"transition-colors hover:opacity-80",style:{color:"#D4A843"},children:"Privacy Policy"})," · ",r.jsx(de,{href:"/legal",className:"transition-colors hover:opacity-80",style:{color:"#D4A843"},children:"Cookie Policy"})]})]}),r.jsx("button",{onClick:()=>s(!1),className:"text-gray-600 hover:text-gray-400 transition-colors p-1 ml-4","aria-label":"Close",children:r.jsx(ac,{className:"w-4 h-4"})})]}),r.jsxs("div",{className:"space-y-3 mb-6",children:[r.jsxs("div",{className:"flex items-center justify-between py-3 px-4 roun
313ded-lg",style:{backgroundColor:"rgba(255,255,255,0.04)",border:"1px solid rgba(255,255,255,0.07)"},children:[r.jsxs("div",{className:"flex-1 pr-4",children:[r.jsx("p",{className:"text-xs font-medium text-gray-200",children:"Essential cookies"}),r.jsx("p",{className:"text-xs text-gray-600 mt-0.5",children:"Required for the website to function. Cannot be disabled."})]}),r.jsx("span",{className:"text-xs text-gray-600 tracking-wide uppercase font-medium flex-shrink-0",children:"Always active"})]}),r.jsxs("div",{className:"flex items-center justify-between py-3 px-4 rounded-lg",style:{backgroundColor:"rgba(255,255,255,0.04)",border:"1px solid rgba(255,255,255,0.07)"},children:[r.jsxs("div",{className:"flex-1 pr-4",children:[r.jsx("p",{className:"text-xs font-medium text-gray-200",children:"Analytical cookies"}),r.jsx("p",{className:"text-xs text-gray-600 mt-0.5",children:"Help us understand how visitors use the site. No personal data is sold."})]}),r.jsx("button",{role:"switch","aria-checked":o,onClick:()=>l(f=>!f),className:"relative inline-flex h-5 w-9 flex-shrink-0 rounded-full border-2 transition-colors duration-200 focus:outline-none focus-visible:ring-2",style:{backgroundColor:o?"#D4A843":"rgba(255,255,255,0.1)",borderColor:o?"#D4A843":"rgba(255,255,255,0.15)"},"aria-label":"Toggle analytical cookies",children:r.jsx("span",{className:"inline-block h-4 w-4 rounded-full bg-white shadow transition-transform duration-200",style:{transform:o?"translateX(16px)":"translateX(0px)"}})})]})]}),r.jsxs("div",{className:"flex items-center gap-2 justify-end",children:[r.jsx("button",{onClick:d,className:"text-xs text-gray-500 hover:text-gray-300 transition-colors px-3 py-1.5 rounded border",style:{borderColor:"rgba(255,255,255,0.12)"},children:"Reject all"}),r.jsx("button",{onClick:u,className:"text-xs font-medium text-white px-4 py-1.5 rounded transition-opacity hover:opacity-90",style:{backgroundColor:"#D4A843"},children:"Save preferences"})]})]})})]})}const ht=()=>r.jsx("footer",{className:"institutional-footer bg-[#0A0A0A] border-t border-white/10 py-10",children:r.jsxs("div",{className:"container mx-auto px-6 text-center",children:[r.jsx("div",{className:"flex justify-center gap-6 mb-6",children:r.jsx("a",{href:"https://www.linkedin.com/company/private-equity-fund-advisory/",target:"_blank",rel:"nofollow noopener noreferrer",className:"text-[#CCCCCC] hover:text-[#D4A843] transition-colors","aria-label":"LinkedIn",children:r.jsx(VD,{className:"h-5 w-5"})})}),r.jsx("p",{className:"text-xs tracking-widest uppercase mb-2 font-medium",style:{color:"#D4A843"},children:"PRIVATE EQUITY.AI"}),r.jsx("p",{className:"text-xs text-[#BBBBBB] mb-1",children:"Institutional inquiries available upon request."}),r.jsx("a",{href:"mailto:[email protected]",className:"text-xs text-[#CCCCCC] hover:text-[#D4A843] transition-colors mb-5 inline-block",children:"[email protected]"}),r.jsxs("div",{className:"footer-links mt-5",children:[r.jsx(de,{href:"/blacktrace-diagnostic",className:"text-[#BBBBBB] text-xs hover:text-[#D4A843] transition-colors tracking-wide",children:"Blacktrace Diagnostic"}),r.jsx("span",{className:"text-white/20 text-xs",children:"·"}),r.jsx(de,{href:"/legal",className:"text-[#BBBBBB] text-xs hover:text-[#D4A843] transition-colors tracking-wide",children:"Legal"}),r.jsx("span",{className:"text-white/20 text-xs",children:"·"}),r.jsx(de,{href:"/ai-transparency",className:"text-[#BBBBBB] text-xs hover:text-[#D4A843] transition-colors tracking-wide",children:"AI Transparency"}),r.jsx("span",{className:"text-white/20 text-xs",children:"·"}),r.jsx(de,{href:"/methodology",className:"text-[#BBBBBB] text-xs hover:text-[#D4A843] transition-colors tracking-wide",children:"Methodology"}),r.jsx("span",{className:"text-white/20 text-xs",children:"·"}),r.jsx(de,{href:"/editorial-policy",className:"text-[#BBBBBB] text-xs hover:text-[#D4A843] transition-colors tracking-wide",children:"Editorial Policy"}),r.jsx("span",{className:"text-white/20 text-xs",children:"·"}),r.jsx("button",{onClick:Fz,className:"text-[#BBBBBB] text-xs hover:text-[#D4A843] transition-colors tracking-wide",children:"Manage cookies"})]})]})}),ze="#D4A843",$z=()=>(We({queryKey:["/api/ai-exposure-index"],queryFn:()=>fetch("/api/ai-exposure-index").then(e=>e.json()),staleTime:10*60*1e3}),r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"AI Due Diligence for Private Equity — PrivateEquity.AI",description:"PrivateEquity.AI helps investors and companies understand how AI affects enterprise value, competitive advantage, operating models, investment risk, and execution.",canonicalUrl:"/",keywords:"AI due diligence private equity, enterprise value AI, AI value creation, AI upside assessment, AI disruption risk PE, AI readiness review"}),r.jsxs("div",{className:"institutional-page page-home min-h-screen bg-[#0A0A0A]",children:[r.jsxs("section",{className:"relative bg-[#0A0A0A] py-20 md:py-28 overflow-hidden",children:[r.jsx("div",{className:"absolute inset-0 pointer-events-none",style:{background:"radial-gradient(ellipse 70% 50% at 50% 60%, rgba(196,151,58,0.07) 0%, transparent 70%)"}}),r.jsxs("div",{className:"relative container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsxs("div",{className:"text-center mb-14",children:[r.jsxs("h1",{className:"text-4xl md:text-6xl lg:text-7xl font-light tracking-tight text-white mb-4 leading-[1.05]",children:["AI Due Diligence",r.jsx("br",{className:"hidden sm:block"})," for Private Equity"]}),r.jsx("p",{className:"text-sm text-[#BBBBBB] tracking-widest uppercase",children:"Judgment, not hype · Signal over noise"})]}),r.jsxs("div",{className:"grid md:grid-cols-2 gap-5",children:[r.jsxs("div",{className:"rounded-xl border border-[#D4A843]/30 p-7 md:p-9 flex flex-col gap-4",style:{background:"linear-gradient(135deg, #111111 0%, #0d0d0d 100%)"},children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest",style:{color:ze},children:"For PE funds & deal teams"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white leading-snug flex-1",children:"Use AI to strengthen your firm, your investment decisions, and your portfolio."}),r.jsx(de,{href:"/ai-strategy-toolkit",children:r.jsx("span",{className:"inline-flex items-center gap-2 px-6 py-3 text-sm font-medium tracking-wide border transition-all duration-200 hover:bg-[rgba(196,151,58,0.08)] cursor-pointer mt-2 w-fit",style:{color:ze,borderColor:ze},children:"Explore the Intelligence Stack →"})})]}),r.jsxs("div",{className:"rounded-xl border border-white/20 p-7 md:p-9 flex flex-col gap-4",style:{background:"linear-gradient(135deg, #111111 0%, #0d0d0d 100%)"},children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest",style:{color:ze},children:"For mid-market company leaders"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white leading-snug flex-1",children:"Identify where AI can improve performance, efficiency, and enterprise value."}),r.jsx(de,{href:"/general-ai-toolkit",children:r.jsx("span",{className:"inline-flex items-center gap-2 px-6 py-3 text-sm font-medium tracking-wide border transition-all duration-200 hover:bg-[rgba(196,151,58,0.08)] cursor-pointer mt-2 w-fit",style:{color:ze,borderColor:ze},children:"Explore the AI Value Creation Toolkit →"})})]})]})]})]}),r.jsx("section",{className:"py-24 md:py-32 bg-[#141414] border-t border-white/5","aria-labelledby":"manifesto-heading",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 max-w-6xl",children:r.jsxs("article",{children:[r.jsxs("div",{className:"flex items-center justify-center gap-4 md:gap-6 mb-8",children:[r.jsx("span",{className:"h-px w-10 md:w-20 bg-gradient-to-r from-transparent to-[#D4A843]/70","aria-hidden":"true"}),r.jsx("p",{className:"text-lg md:text-xl font-medium tracking-[0.08em] text-center whitespace-nowrap",style:{color:ze},children:"PrivateEquity.AI Manifesto"}),r.jsx("span",{className:"h-px w-10 md:w-20 bg-gradient-to-l from-transparent to-[#D4A843]/70","aria-hidden":"true"})]}),r.jsxs("div",{className:"max-w-3xl",children:[r.jsx("h2",{id:"manifesto-heading",className:"text-5xl md:text-6xl lg:text-7xl font-light tracking-tight text-white leading-[1.05]",children:"Unlocking enterprise value through AI."}),r.jsx("p",{className:"text-xl md:text-2xl text-[#DDDDDD] leading-relaxed mt-7 max-w-2xl",children:"Artificial intelligence is not just a technology project. It is changing how private capital operates, invests and creates enterprise value."})]}),r.jsx("div",{className:"grid md:grid-cols-3 gap-5 mt-14",children:[{title:"Understand The Landscape",body:"Identify the platforms, capabilities and market shifts reshaping private capital."},{title:"Assess What AI Changes",body:"Understand where AI changes firm capabilities, competitive positioning, operating models and value creation."},{title:"Build Enterprise Value",body:"Translate AI potential into greater productivity, scalability, resilience and competitive advantage."}].map(e=>r.jsxs("article",{className:"bg-[#1a1a1a] border border-white/15 rounded-xl p-7 md:p-8",children:[r.jsx("div",{className:"w-8 h-px mb-6",style:{backgroundColor:ze}}),r.jsx("h3",{className:"text-2xl font-semibold text-white tracking-tight mb-3",children:e.title}),r.jsx("p",{className:"text-sm text-[#CCCCCC] leading-relaxed",children:e.body})]},e.title))}),r.jsx("p",{className:"mt-14 text-3xl md:text-4xl font-light text-white leading-snug text-center w-full",children:r.jsx("span",{style:{color:ze},children:"Build the value that comes with it."})})]})})}),r.jsx("section",{className:"py-24 bg-[#0A0A0A] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-6xl",children:[r.jsxs("div",{className:"mb-12 text-center",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:ze},children:"Private Capital Intelligence Framework"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white",children:"Three dimensions shaping private capital in the AI economy."})]}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsx(de,{href:"/ai-strategy-toolkit",children:r.jsxs("div",{className:"group bg-[#141414] border border-white/15 rounded-xl p-6 md:p-10 flex flex-col space-y-4 hover:border-[#D4A843]/40 transition-all duration-300 cursor-pointer h-full",children:[r.jsx(pD,{className:"h-7 w-7 mb-2 flex-shrink-0",style:{color:ze}}),r.jsx("h3",{className:"text-xl font-semibold text-white tracking-tight group-hover:text-[#D4A843] transition-colors",children:"Intelligence"}),r.jsx("p",{className:"text-sm font-medium",style:{color:ze},children:"Investment intelligence & decision systems"}),r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed",children:"AI systems and research layers changing how analysts assess businesses, markets, and diligence questions during the investment process."})]})}
313),r.jsx(de,{href:"/infrastructure",children:r.jsxs("div",{className:"group bg-[#141414] border border-white/15 rounded-xl p-6 md:p-10 flex flex-col space-y-4 hover:border-[#D4A843]/40 transition-all duration-300 cursor-pointer h-full",children:[r.jsx(mD,{className:"h-7 w-7 mb-2 flex-shrink-0",style:{color:ze}}),r.jsx("h3",{className:"text-xl font-semibold text-white tracking-tight group-hover:text-[#D4A843] transition-colors",children:"Infrastructure"}),r.jsx("p",{className:"text-sm font-medium",style:{color:ze},children:"Market structure & capital rails"}),r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed",children:"The platforms, distribution channels, and liquidity mechanisms reshaping how private capital flows — and how target companies access markets."})]})}),r.jsx(de,{href:"/ai-agentic-companies",children:r.jsxs("div",{className:"group bg-[#141414] border border-white/15 rounded-xl p-6 md:p-10 flex flex-col space-y-4 hover:border-[#D4A843]/40 transition-all duration-300 cursor-pointer h-full",children:[r.jsx(sd,{className:"h-7 w-7 mb-2 flex-shrink-0",style:{color:ze}}),r.jsx("h3",{className:"text-xl font-semibold text-white tracking-tight group-hover:text-[#D4A843] transition-colors",children:"Execution"}),r.jsx("p",{className:"text-sm font-medium",style:{color:ze},children:"Operating models & value creation"}),r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed",children:"AI-native systems replacing workflows across portfolio operations — and what they mean for labor models, margin profiles, and value creation."})]})})]})]})}),r.jsx("div",{className:"bg-[#0A0A0A] border-t border-b border-white/5 py-6",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl text-center",children:r.jsx("p",{className:"text-sm text-[#CCCCCC] italic leading-relaxed",children:"Traditional diligence was not built for AI. The firms that close this gap first will define the next decade of private capital returns."})})}),r.jsx("section",{className:"py-24 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-6xl",children:[r.jsxs("div",{className:"mb-4 text-center",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:ze},children:"A Different Intelligence Layer"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white mb-4 tracking-tight",children:"Private capital has the data. The next question is what AI changes."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl mx-auto leading-relaxed",children:"Existing platforms explain markets, companies, funds, and transactions. PrivateEquity.AI focuses on how AI changes investment workflows, competitive positioning, and enterprise value."})]}),r.jsxs("div",{className:"grid md:grid-cols-2 gap-5 mt-12",children:[r.jsxs("div",{className:"rounded-xl border border-white/10 bg-[#111111] p-7 md:p-9 flex flex-col gap-6",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest text-[#CCCCCC]",children:"Traditional Private Capital Intelligence"}),r.jsx("div",{className:"space-y-5",children:[{name:"PitchBook",q:"Who invested?"},{name:"Preqin",q:"How did funds perform?"},{name:"Dealroom",q:"Which companies are growing?"}].map(e=>r.jsxs("div",{className:"flex items-start gap-4 group",children:[r.jsx("div",{className:"w-1.5 h-1.5 rounded-full bg-white/20 mt-2 flex-shrink-0"}),r.jsxs("div",{children:[r.jsx("span",{className:"text-sm font-semibold text-white/65",children:e.name}),r.jsx("p",{className:"text-sm text-[#CCCCCC] mt-0.5",children:e.q})]})]},e.name))})]}),r.jsxs("div",{className:"rounded-xl border p-7 md:p-9 flex flex-col gap-6 relative overflow-hidden",style:{borderColor:"rgba(196,151,58,0.35)",background:"linear-gradient(135deg, #131008 0%, #0d0d0d 100%)"},children:[r.jsx("div",{className:"absolute inset-0 pointer-events-none",style:{background:"radial-gradient(ellipse 80% 60% at 60% 30%, rgba(196,151,58,0.06) 0%, transparent 70%)"}}),r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest relative",style:{color:ze},children:"AI-Native Private Capital Intelligence"}),r.jsxs("div",{className:"flex items-start gap-4 relative",children:[r.jsx("div",{className:"w-1.5 h-1.5 rounded-full mt-2 flex-shrink-0",style:{backgroundColor:ze}}),r.jsx("div",{className:"w-full",children:r.jsx("div",{className:"space-y-2.5 mt-2",children:["Which AI platforms should our firm adopt?","Where can AI create enterprise value?","How does AI change the value of a specific company?"].map(e=>r.jsx("p",{className:"text-sm text-gray-200 leading-relaxed",children:e},e))})})]})]})]}),r.jsxs("div",{className:"mt-12 text-center max-w-2xl mx-auto",children:[r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed mb-2",children:"The next decade of private capital will not be shaped only by financial performance."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] leading-relaxed mb-8",children:"It will be shaped by AI readiness, AI disruption, AI adoption and AI-driven value creation."})]})]})}),r.jsx("section",{className:"py-24 bg-[#0A0A0A] border-t border-white/8",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsxs("div",{className:"mb-14 text-center",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:ze},children:"Two AI Priorities"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white mb-4",children:"AI for the investment firm. AI for the enterprise."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl mx-auto leading-relaxed",children:"Two distinct challenges: how private equity firms adopt AI internally, and how companies use AI to improve performance and create enterprise value."})]}),r.jsxs("div",{className:"grid md:grid-cols-2 gap-6 items-stretch",children:[r.jsx(de,{href:"/ai-strategy-toolkit#pe-ai-stack-navigator",children:r.jsxs("div",{className:"group h-full rounded-xl border p-8 md:p-10 flex flex-col cursor-pointer transition-all duration-300",style:{borderColor:"rgba(196,151,58,0.35)",background:"linear-gradient(135deg, #17130a 0%, #141414 100%)"},children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest mb-5",style:{color:ze},children:"01 — For PE Firms & Deal Teams"}),r.jsx("h3",{className:"text-xl md:text-2xl font-light text-white mb-3 leading-snug group-hover:text-[#D4A843] transition-colors",children:"Which AI platforms should our firm adopt?"}),r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed mb-6 flex-1",children:"Understand the platforms changing sourcing, research, diligence, knowledge management, deal execution and portfolio oversight."}),r.jsx("span",{className:"inline-flex items-center gap-2 text-sm font-medium mt
313-auto",style:{color:ze},children:"Explore the PE AI Stack →"})]})}),r.jsx(de,{href:"/general-ai-toolkit",children:r.jsxs("div",{className:"group h-full rounded-xl border border-white/15 p-8 md:p-10 flex flex-col cursor-pointer hover:border-white/30 transition-all duration-300 bg-[#141414]",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest mb-5",style:{color:ze},children:"02 — For Companies"}),r.jsx("h3",{className:"text-xl md:text-2xl font-light text-white mb-3 leading-snug group-hover:text-[#D4A843] transition-colors",children:"Where can AI create enterprise value?"}),r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed mb-6 flex-1",children:"Identify where AI can improve productivity, operating leverage, revenue, decision-making and scalability."}),r.jsx("span",{className:"inline-flex items-center gap-2 text-sm font-medium mt-auto",style:{color:ze},children:"Explore the AI Value Creation Toolkit →"})]})})]})]})}),r.jsx("section",{className:"py-20 md:py-24 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-6xl",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase text-center mb-8",style:{color:ze},children:"Proprietary Assessment"}),r.jsxs("div",{className:"flex flex-col md:flex-row md:items-center md:justify-between gap-8",children:[r.jsxs("div",{className:"max-w-3xl",children:[r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white mb-5",children:"Know where AI changes enterprise value."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] leading-relaxed",children:"Apply the PrivateEquity.AI value exposure lens to a specific target, portfolio company or private enterprise — identifying value potential, value at risk, execution readiness and the priorities that matter most."})]}),r.jsx(de,{href:"/assessment",children:r.jsx("span",{className:"inline-flex items-center gap-2 text-sm font-medium border px-6 py-3 cursor-pointer transition-all hover:bg-white/5 whitespace-nowrap",style:{color:ze,borderColor:ze},children:"Explore the Assessment →"})})]})]})}),r.jsx("section",{className:"py-16 bg-[#0A0A0A] border-t border-white/8",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-3xl",children:[r.jsx("div",{className:"divider-gold mb-6",style:{width:"2rem",height:"1px",backgroundColor:ze}}),r.jsx("h2",{className:"text-xs font-semibold uppercase tracking-widest text-white mb-5",style:{letterSpacing:"0.1em"},children:"Connection to Blacktrace"}),r.jsxs("p",{className:"text-gray-400 leading-relaxed text-sm mb-3",children:["Founded by"," ",r.jsx("a",{href:"/marco-mizzau",style:{color:ze},children:"Marco Mizzau"}),", PrivateEquity.ai is an independent research and strategic intelligence platform. It operates within the broader strategic ecosystem of"," ",r.jsx("a",{href:"https://blacktrace.uk/",target:"_blank",rel:"nofollow noopener noreferrer",style:{color:ze},children:"Blacktrace"}),"."]}),r.jsx("p",{className:"text-gray-400 leading-relaxed text-sm mb-3",children:"The platform provides structured intelligence, curated diligence signals, and analytical frameworks to support private equity investment teams evaluating AI-exposed and AI-enabled targets."}),r.jsx("p",{className:"text-xs text-[#BBBBBB] leading-relaxed",children:"Content is provided for informational and research purposes only. It does not constitute investment, financial, or advisory services of any kind."})]})})]}),r.jsx(ht,{})]})),KD=[{id:"openai",name:"OpenAI",description:"Official videos, demos and technical guidance on OpenAI models and agent systems.",url:"https://www.youtube.com/@openai",source_type:"Official",topics:["AI Agents","LLM Engineering","Prompt Engineering","Tutorials"]},{id:"anthropic",name:"Anthropic",description:"Official technical guidance on Claude, agents, MCP and AI development.",url:"https://www.youtube.com/@anthropic-ai",source_type:"Official",topics:["AI Agents","Agentic AI","MCP","LLM Engineering"]},{id:"deeplearning-ai",name:"DeepLearning.AI",description:"Structured AI education covering generative AI, agents and LLM engineering.",url:"https://www.youtube.com/c/deeplearningai",source_type:"Official",topics:["AI Agents","RAG","LLM Engineering","Tutorials"]},{id:"langchain",name:"LangChain",description:"Technical tutorials for building LLM applications, agents and RAG systems.",url:"https://www.youtube.com/channel/UCC-lyoTfSrcJzA1ab3APAgw",source_type:"Official",topics:["AI Agents","Agentic AI","RAG","LLM Engineering"]},{id:"llamaindex",name:"LlamaIndex",description:"Tutorials on data-connected LLM applications, RAG and agentic systems.",url:"https://www.youtube.com/@LlamaIndex",source_type:"Official",topics:["AI Agents","RAG","LLM Engineering","AI Infrastru
313cture"]},{id:"microsoft-developer",name:"Microsoft Developer",description:"Official developer education on Azure AI, copilots, agents and application engineering.",url:"https://www.youtube.com/Microsoftdeveloper/",source_type:"Official",topics:["AI Agents","LLM Engineering","AI Infrastructure","Tutorials"]},{id:"google-cloud-tech",name:"Google Cloud Tech",description:"Official guidance for developing, deploying and scaling AI on Google Cloud.",url:"https://www.youtube.com/channel/UCJS9pqu9BzkAMNTmzNMNhvg",source_type:"Official",topics:["AI Infrastructure","LLM Engineering","AI Evaluation","Tutorials"]},{id:"pinecone",name:"Pinecone",description:"Technical education on vector search, RAG and AI application architecture.",url:"https://www.youtube.com/@pinecone-io",source_type:"Official",topics:["RAG","AI Infrastructure","LLM Engineering","Tutorials"]},{id:"crewai",name:"CrewAI",description:"Official tutorials for building and orchestrating multi-agent systems.",url:"https://www.youtube.com/channel/UCTulKzR5sldNq2eAxxdaEuA",source_type:"Official",topics:["AI Agents","Agentic AI","Workflow Automation","Tutorials"]},{id:"n8n",name:"n8n",description:"Practical tutorials for AI workflow automation and agentic integrations.",url:"https://www.youtube.com/c/n8n-io",source_type:"Official",topics:["AI Agents","Workflow Automation","Tutorials"]},{id:"assemblyai",name:"AssemblyAI",description:"Technical tutorials on speech AI, multimodal applications and LLM development.",url:"https://www.youtube.com/AssemblyAI",source_type:"Official",topics:["LLM Engineering","AI Infrastructure","Tutorials"]},{id:"weights-biases",name:"Weights & Biases",description:"Official education on experiment tracking, model evaluation and production AI systems.",url:"https://www.youtube.com/c/weights-biases",source_type:"Official",topics:["AI Evaluation","AI Infrastructure","LLM Engineering","Tutorials"]},{id:"freecodecamp",name:"freeCodeCamp.org",description:"Complete free courses on AI, machine learning, data and software development.",url:"https://www.youtube.com/@freecodecamp",source_type:"Official",topics:["LLM Engineering","AI Infrastructure","Tutorials"]},{id:"stanford-online",name:"Stanford Online",description:"University-level lectures on artificial intelligence, machine learning and computer science.",url:"https://www.youtube.com/@stanfordonline",source_type:"Official",topics:["LLM Engineering","AI Infrastructure","AI Evaluation","Tutorials"]}],YD=[{id:"matt-wolfe",name:"Matt Wolfe",description:"New AI tools, trends and practical use cases explained in accessible formats.",url:"https://www.youtube.com/@mreflow",source_type:"Independent",topics:["AI Agents","Workflow Automation","Prompt Engineering"]},{id:"joma-tech",name:"Joma Tech",description:"AI and technology concepts presented through humor, storytelling and career guidance.",url:"https://www.youtube.com/@jomakaze",source_type:"Independent",topics:["LLM Engineering","Tutorials"]},{id:"tina-huang",name:"Tina Huang",description:"Accessible learning on data, AI careers, productivity and technical skills.",url:"https://www.youtube.com/@TinaHuang1",source_type:"Independent",topics:["LLM Engineering","Prompt Engineering","Tutorials"]},{id:"lex-fridman",name:"Lex Fridman",description:"Long-form conversations with AI researchers, founders and technology leaders.",url:"https://www.youtube.com/@lexfridman",source_type:"Independent",topics:["Agentic AI","AI Infrastructure","AI Evaluation"]},{id:"yannic-kilcher",name:"Yannic Kilcher",description:"Detailed explanations of AI research papers, models and engineering developments.",url:"https://www.youtube.com/@yannickilcher",source_type:"Independent",topics:["LLM Engineering","AI Evaluation","AI Infrastructure"]}
313,{id:"andrej-karpathy",name:"Andrej Karpathy",description:"Deep technical instruction on neural networks, language models and AI engineering.",url:"https://www.youtube.com/@AndrejKarpathy",source_type:"Independent",topics:["LLM Engineering","AI Infrastructure","Tutorials"]},{id:"siraj-raval",name:"Siraj Raval",description:"Hands-on AI coding tutorials and practical machine-learning projects.",url:"https://www.youtube.com/@sirajraval",source_type:"Independent",topics:["LLM Engineering","AI Agents","Tutorials"]},{id:"ai-explained",name:"AI Explained",description:"Measured explanations of AI news, model capabilities and wider implications.",url:"https://www.youtube.com/@aiexplained-official",source_type:"Independent",topics:["Agentic AI","LLM Engineering","AI Evaluation"]},{id:"ai-advantage",name:"The AI Advantage",description:"Practical ways to use AI tools for work, business and automation.",url:"https://www.youtube.com/@aiadvantage",source_type:"Independent",topics:["Workflow Automation","Prompt Engineering","Tutorials"]},{id:"3blue1brown",name:"3Blue1Brown",description:"Visual mathematics and machine-learning explanations that make complex ideas intuitive.",url:"https://www.youtube.com/@3blue1brown",source_type:"Independent",topics:["LLM Engineering","AI Infrastructure","Tutorials"]},{id:"sentdex",name:"Sentdex",description:"Detailed Python, machine-learning and AI engineering tutorials built around real projects.",url:"https://www.youtube.com/@sentdex",source_type:"Independent",topics:["LLM Engineering","AI Infrastructure","Tutorials"]},{id:"statquest",name:"StatQuest with Josh Starmer",description:"Clear explanations of statistics, machine learning and model evaluation.",url:"https://www.youtube.com/@statquest",source_type:"Independent",topics:["AI Evaluation","LLM Engineering","Tutorials"]},{id:"codebasics",name:"Codebasics",description:"Structured, beginner-friendly projects across data analytics, machine learning and AI.",url:"https://www.youtube.com/@codebasics",source_type:"Independent",topics:["LLM Engineering","AI Infrastructure","Tutorials"]},{id:"data-school",name:"Data School",description:"Practical instruction in Python, data analysis and machine-learning fundamentals.",url:"https://www.youtube.com/@dataschool",source_type:"Independent",topics:["AI Evaluation","LLM Engineering","Tutorials"]},{id:"wes-roth",name:"Wes Roth",description:"Commentary on emerging AI models, research, tools and industry developments.",url:"https://www.youtube.com/@WesRoth",source_type:"Independent",topics:["Agentic AI","AI Agents","AI Evaluation"]},{id:"two-minute-papers",name:"Two Minute Papers",description:"Concise explainers covering notable AI research and technical discoveries.",url:"https://www.youtube.com/@TwoMinutePapers",source_type:"Independent",topics:["AI Evaluation","AI Infrastructure","LLM Engineering"]},{id:"cole-medin",name:"Cole Medin",description:"Applied tutorials on AI agents, agentic coding and production automation workflows.",url:"https://www.youtube.com/@ColeMedin",source_type:"Independent",topics:["AI Agents","Agentic AI","Workflow Automation","Tutorials"]},{id:"sam-witteveen",name:"Sam Witteveen",description:"Technical tutorials on LLM applications, agents, RAG and emerging AI frameworks.",url:"https://www.youtube.com/@samwitteveenai",source_type:"Independent",topics:["AI Agents","RAG","LLM Engineering","Tutorials"]},{id:"ai-jason",name:"AI Jason",description:"Practical AI engineering, automation and agent-building tutorials for developers.",url:"https://www.youtube.com/@AIJasonZ",source_type:"Independent",topics:["AI Agents","Agentic AI","Workflow Automation","Tutorials"]},{id:"nicholas-renotte",name:"Nicholas Renotte",description:"Project-led tutorials on machine learning, computer vision and generative AI.",url:"https://www.youtube.com/@NicholasRenotte",source_type:"Independent",topics:["LLM Engineering","AI Infrastructure","Tutorials"]},{id:"david-shapiro",name:"David Shapiro",description:"Independent analysis of AI agents, alignment, automation and future systems.",url:"https://www.youtube.com/@DaveShap",source_type:"Independent",topics:["AI Agents","Agentic AI","AI Evaluation"]},{id:"mervin-praison",name:"Mervin Praison",description:"Technical tutorials on multi-agent systems, AI frameworks and workflow automation.",url:"https://www.youtube.com/@MervinPraison",source_type:"Independent",topics:["AI Agents","Agentic AI","Workflow Automation","Tutorials"]},{id:"ai-engineer",name:"AI Engineer",description:"Conference talks and technical sessions for production AI and LLM engineering.",url:"https://www.youtube.com/@aiDotEngineer",source_type:"Independent",topics:["LLM Engineering","AI Infrastru
313cture","AI Evaluation","Tutorials"]}],QD=[...KD,...YD];function X0(e){return e==="andrej-karpathy"?"karpathy-youtube":`youtube-${e}`}const Uz=QD.filter(e=>e.id!=="andrej-karpathy").map(e=>({id:X0(e.id),title:e.name,url:e.url,provider:"YouTube",topic:e.topics[0]??"AI Education",difficulty:"Beginner",duration:"Supplementary",format:"Video",tags:[e.name.toLowerCase(),"youtube channel",e.source_type.toLowerCase(),...e.topics.map(t=>t.toLowerCase())],resource_type:"YouTube Channel",source_type:e.source_type,topics:e.topics,supplementary:!0})),qz=[{id:"ai-explained",title:"AI Explained — Essential Foundation",url:"https://www.youtube.com/watch?v=5JLOv3H6qVQ",provider:"YouTube",topic:"AI Foundations",difficulty:"Beginner",duration:"~45min",format:"Video",tags:["foundations","intro","beginner","what is ai","overview"]},{id:"ai-for-everyone",title:"AI For Everyone — Andrew Ng",url:"https://www.coursera.org/learn/ai-for-everyone",provider:"Coursera",topic:"AI Foundations",difficulty:"Beginner",duration:"~6h",format:"Course",tags:["foundations","intro","beginner","non-technical","business ai","overview","leadership","executive"]},{id:"generative-ai-everyone",title:"Generative AI for Everyone",url:"https://www.coursera.org/learn/generative-ai-for-everyone",provider:"Coursera",topic:"Generative AI",difficulty:"Beginner",duration:"~5h",format:"Course",tags:["foundations","generative ai","beginner","intro","llm basics","non-technical"]},{id:"elements-of-ai",title:"Elements of AI",url:"https://www.elementsofai.com/",provider:"University of Helsinki",topic:"AI Foundations",difficulty:"Beginner",duration:"~15h",format:"Course",tags:["foundations","beginner","intro","no-code","concepts","overview"]},{id:"openai-academy",title:"OpenAI Academy",url:"https://academy.openai.com/",provider:"OpenAI",topic:"AI Foundations",difficulty:"Beginner",duration:"Self-paced",format:"Course",tags:["foundations","beginner","openai","chatgpt","intro","overview","llm basics"]},{id:"6-steps-master-ai",title:"The 6 Steps to Master AI",url:"https://www.youtube.com/watch?v=qYNweeDHiyU",provider:"YouTube",topic:"AI Strategy",difficulty:"Beginner",duration:"~30min",format:"Video",tags:["foundations","strategy","framework","business ai","leadership","executive"]},{id:"google-ai-essentials",title:"Google AI Essentials",url:"https://grow.google/ai-essentials/",provider:"Google",topic:"AI Foundations",difficulty:"Beginner",duration:"~10h",format:"Course",tags:["foundations","beginner","google","certificate","practical","business ai","productivity"]},{id:"data-ai-fundamentals",title:"Data and AI Fundamentals",url:"https://training.linuxfoundation.org/training/fundamentals-of-ai-and-ml/",provider:"Linux Foundation",topic:"AI & Data",difficulty:"Beginner",duration:"~8h",format:"Course",tags:["foundations","data","beginner","ml basics","overview"]},{id:"generative-ai-leader",title:"The Generative AI Leader",url:"https://www.skills.google/paths/1951",provider:"Google Skills",topic:"AI Leadership",difficulty:"Beginner",duration:"~4h",format:"Course",tags:["foundations","leadership","executive","business ai","strategy","generative ai"]},{id:"how-to-ai-guide",title:"How to AI Guide",url:"https://www.howtouseai.com/",provider:"How to AI",topic:"AI Productivity",difficulty:"Beginner",duration:"Self-paced",format:"Guide",tags:["foundations","beginner","non-technical","productivity","practical","business ai"]},{id:"prompt-engineering-developers",title:"Prompt Engineering for Developers",url:"https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/",provider:"DeepLearning.AI",topic:"Prompt Engineering",difficulty:"Beginner",duration:"~2h",format:"Course",tags:["prompt engineering","prompts","chatgpt","llm","practical","beginner"]},{id:"prompt-engineering-llama",title:"Prompt Engineering with Llama",url:"https://www.deeplearning.ai/short-courses/prompt-engineering-with-llama-2/",provider:"DeepLearning.AI",topic:"Prompt Engineering",difficulty:"Beginner",duration:"~2h",format:"Course",tags:["prompt engineering","prompts","llama","open source","practical"]},{id:"claude-a-to-z",title:"Claude from A to Z",url:"https://anthropic.com/claude",provider:"Anthropic",topic:"Prompt Engineering",difficulty:"Beginner",duration:"~3h",format:"Guide",tags:["prompt engineering","claude","anthropic","prompts","practical","beginner"]},{id:"gemini-prompting-guide",title:"Gemini Prompting Guide",url:"https://ai.google.dev/gemini-api/docs/prompting-intro",provider:"Google",topic:"Prompt Engineering",difficulty:"Beginner",duration:"~2h",format:"Guide",tags:["prompt engineering","gemini","google","prompts","practical","beginner"]},{id:"prompt-engineering-guide",title:"Prompt Engineering Guide",url:"https://github.com/dair-ai/Prompt-Engineering-Guide",provider:"DAIR.AI (GitHub)",topic:"Prompt Engineering",difficulty:"Intermediate",duration:"Self-paced",format:"GitHub",tags:["prompt engineering","prompts","advanced prompts","techniques","comprehensive","github"]},{id:"genai-4-command-prompts",title:"GenAI 4: Command Your Prompts",url:"https://learn.microsoft.com/en-us
313/shows/generative-ai-for-beginners/advanced-prompting-engineering-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"Prompt Engineering",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["prompt engineering","prompts","microsoft","advanced prompts","techniques"]},{id:"genai-5-advanced-interactions",title:"GenAI 5: Engineer Advanced Interactions",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/creating-advanced-prompts-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"Prompt Engineering",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["prompt engineering","prompts","microsoft","advanced","interactions"]},{id:"google-prompting-guide",title:"Google's Prompting Guide (71 pages)",url:"https://drive.google.com/file/d/1vNeBbxptU91i2gMCCVGAfWKuQgoieXtp/view",provider:"Google",topic:"Prompt Engineering",difficulty:"Intermediate",duration:"~1h read",format:"Guide",tags:["prompt engineering","prompts","google","whitepaper","comprehensive","reference"]},{id:"system-prompts-collection",title:"System Prompts Collection",url:"https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools",provider:"GitHub",topic:"Prompt Engineering",difficulty:"Advanced",duration:"Reference",format:"GitHub",tags:["prompt engineering","system prompts","advanced","reference","github"]},{id:"evolution-ai-agents",title:"Evolution of AI Agents",url:"https://www.coursera.org/learn/introduction-to-ai-agents",provider:"Coursera",topic:"AI Agents",difficulty:"Beginner",duration:"~3h",format:"Course",tags:["ai agents","intro","beginner","overview","evolution"]},{id:"agent-fundamentals",title:"Agent Fundamentals",url:"https://www.skills.google/course_templates/1562",provider:"Google Skills",topic:"AI Agents",difficulty:"Beginner",duration:"~2h",format:"Course",tags:["ai agents","beginner","fundamentals","overview","google"]},{id:"openai-assistants-guide",title:"OpenAI Assistants Guide",url:"https://platform.openai.com/docs/assistants/overview",provider:"OpenAI",topic:"AI Agents",difficulty:"Intermediate",duration:"Self-paced",format:"Docs",tags:["ai agents","openai","assistants","build","practical","intermediate"]},{id:"agentic-design-patterns",title:"Agentic Design Patterns with AutoGen",url:"https://www.deeplearning.ai/short-courses/ai-agentic-design-patterns-with-autogen/",provider:"DeepLearning.AI",topic:"AI Agents",difficulty:"Intermediate",duration:"~2h",format:"Course",tags:["ai agents","autogen","multi-agent","design patterns","intermediate","build"]},{id:"in-depth-llm-agents",title:"In-depth on LLM Agents",url:"https://www.deeplearning.ai/short-courses/ai-agents-in-langgraph/",provider:"DeepLearning.AI",topic:"AI Agents",difficulty:"Intermediate",duration:"~3h",format:"Course",tags:["ai agents","llm","deep dive","intermediate","build","langgraph"]},{id:"ai-agents-beginners",title:"AI Agents for Beginners",url:"https://github.com/microsoft/ai-agents-for-beginners",provider:"Microsoft (GitHub)",topic:"AI Agents",difficulty:"Beginner",duration:"~10h",format:"GitHub",tags:["ai agents","beginner","microsoft","github","structured","tutorial"]},{id:"genai-agents-collection",title:"GenAI Agents — NirDiamant",url:"https://github.com/NirDiamant/GenAI_Agents",provider:"GitHub",topic:"AI Agents",difficulty:"Intermediate",duration:"Self-paced",format:"GitHub",tags:["ai agents","rag","multi-agent","github","build","patterns","intermediate"]},{id:"agents-towards-production",title:"Agents Towards Production",url:"https://github.com/NirDiamant/agents-towards-production",provider:"GitHub",topic:"AI Agents",difficulty:"Advanced",duration:"Self-paced",format:"GitHub",tags:["ai agents","production","advanced","github","reliability","deployment"]},{id:"500-ai-agents",title:"500 AI Agents Projects",url:"https://github.com/ashishpatel26/500-AI-Agents-Projects",provider:"GitHub",topic:"AI Agents",difficulty:"Intermediate",duration:"Reference",format:"GitHub",tags:["ai agents","projects","github","build","examples","intermediate"]},{id:"awesome-llm-apps",title:"Awesome LLM Apps Collection",url:"https://github.com/Shubhamsaboo/awesome-llm-apps",provider:"GitHub",topic:"AI Agents",difficulty:"Intermediate",duration:"Reference",format:"GitHub",tags:["ai agents","llm apps","rag","github","build","examples"]},{id:"intro-langgraph",title:"Introduction to LangGraph",url:"https://python.langchain.com/docs/langgraph",provider:"LangChain",topic:"LangGraph",difficulty:"Intermediate",duration:"Self-paced",format:"Docs",tags:["langgraph","agents","stateful","langchain","intermediate","build","graph"]},{id:"langgraph-agents-course",title:"AI Agents in LangGraph",url:"https://www.deeplearning.ai/short-courses/ai-agents-in-langgraph/",provider:"DeepLearning.AI",topic:"LangGraph",difficulty:"Intermediate",duration:"~3h",format:"Course",tags:["langgraph","langchain","agents","intermediate","build","practical"]},{id:"langgraph-cua",title:"LangGraph: Computer Using Agents",url:"https://github.com/langchain-ai/langgraph-cua-py",provider:"LangChain (GitHub)",topic:"LangGraph",difficulty:"Advanced",duration:"Self-paced",format:"GitHub",tags:["langgraph","computer use","advanced","browser","automation","github"]},{id:"langgraph-deep-research",title:"LangGraph: Deep Research Agents",url:"https://github.com/langchain-ai/open_deep_research",provider:"LangChain (GitHub)",topic:"LangGraph",difficulty:"Advanced",duration:"Self-paced",format:"GitHub",tags:["langgraph","research agents","advanced","multi-agent","github"]},{id:"rag-techniques",title:"RAG Techniques — NirDiamant",url:"https://github.com/NirDiamant/RAG_Techniques",provider:"GitHub",topic:"RAG",difficulty:"Intermediate",duration:"Self-paced",format:"GitHub",tags:["rag","retrieval","vector","document qa","github","intermediate","build"]},{id:"building-rag-deeplearning",title:"Building Agentic RAG with LlamaIndex",url:"https://www.deeplearning.ai/short-courses/building-agentic-rag-with-llamaindex/",provider:"DeepLearning.AI",topic:"RAG",difficulty:"Intermediate",duration:"~3h",format:"Course",tags:["rag","llamaindex","retrieval","agents","intermediate","build","practical"]},{id:"genai-8-vector-search",title:"GenAI 8: Power Search with Vectors",url:"https://learn.microsoft.com/en-us
313/shows/generative-ai-for-beginners/building-with-vector-databases-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"RAG",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["rag","vector","search","microsoft","intermediate","embeddings"]},{id:"notebooklm-guide",title:"Unlock Insights with NotebookLM",url:"https://www.skills.google/paths/3666/course_templates/1559",provider:"Google Skills",topic:"Document AI",difficulty:"Beginner",duration:"~1h",format:"Course",tags:["rag","document analysis","notebooklm","beginner","practical","research"]},{id:"awesome-mcp-servers",title:"Awesome MCP Servers",url:"https://github.com/punkpeye/awesome-mcp-servers",provider:"GitHub",topic:"MCP",difficulty:"Intermediate",duration:"Reference",format:"GitHub",tags:["mcp","model context protocol","claude","tools","integrations","github"]},{id:"genai-11-connect-external",title:"GenAI 11: Connect External Systems",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/integrating-with-function-calling-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"MCP / Integrations",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["mcp","integrations","function calling","tools","microsoft","intermediate"]}
313,{id:"openai-assistants-tools",title:"OpenAI Assistants Guide",url:"https://platform.openai.com/docs/assistants/overview",provider:"OpenAI",topic:"MCP / Tools",difficulty:"Intermediate",duration:"Self-paced",format:"Docs",tags:["mcp","tools","function calling","openai","build","intermediate"]},{id:"genai-1-foundation",title:"GenAI 1: Master the Foundation",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/introduction-to-generative-ai-and-llms-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"Generative AI",difficulty:"Beginner",duration:"~1h",format:"Video",tags:["foundations","llm basics","generative ai","microsoft","beginner"]},{id:"genai-2-models",title:"GenAI 2: Choose Your Models Wisely",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/exploring-and-comparing-different-llms-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"LLM Models",difficulty:"Beginner",duration:"~1h",format:"Video",tags:["llm basics","models","comparison","beginner","microsoft"]},{id:"genai-3-responsible",title:"GenAI 3: Build Responsibly from Day One",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/using-generative-ai-responsibly-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"AI Ethics",difficulty:"Beginner",duration:"~1h",format:"Video",tags:["responsible ai","ethics","safety","microsoft","beginner","governance"]},{id:"genai-6-text-apps",title:"GenAI 6: Build Text Applications",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-text-generation-applications-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"AI Apps",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["build","coding","llm apps","microsoft","intermediate","text generation"]},{id:"genai-7-chat",title:"GenAI 7: Deploy Chat Solutions",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-chat-applications-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"AI Copilots",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["chatbot","copilot","chat","deploy","microsoft","intermediate","build"]},{id:"genai-9-visual",title:"GenAI 9: Generate Visual Content",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-image-generation-applications-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"Image Generation",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["image generation","visual","marketing","microsoft","intermediate"]},{id:"genai-10-low-code",title:"GenAI 10: Leverage Low-Code Platforms",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-ai-powered-ux-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"AI Workflows",difficulty:"Beginner",duration:"~1h",format:"Video",tags:["low-code","workflow","automation","microsoft","beginner","no-code"]},{id:"genai-12-ux",title:"GenAI 12: Design AI-First Experiences",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/designing-ux-for-ai-applications-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"AI Design",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["ux","design","ai apps","copilot","microsoft","intermediate"]},{id:"genai-13-security",title:"GenAI 13: Secure Your AI Systems",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/securing-your-ai-applications-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"AI Security",difficulty:"Intermediate",duration:"~1h",format:"Video",tags:["security","governance","responsible ai","microsoft","intermediate"]},{id:"genai-14-lifecycle",title:"GenAI 14: Manage the Complete Lifecycle",url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/managing-and-maintaining-ai-applications-generative-ai-for-beginners",provider:"Microsoft Learn",topic:"AI Operations",difficulty:"Advanced",duration:"~1h",format:"Video",tags:["mlops","lifecycle","production","microsoft","advanced"]},{id:"microsoft-genai-full",title:"Microsoft GenAI (21-lesson series)",url:"https://github.com/microsoft/generative-ai-for-beginners",provider:"Microsoft (GitHub)",topic:"Generative AI",difficulty:"Beginner",duration:"~20h",format:"GitHub",tags:["foundations","generative ai","beginner","comprehensive","microsoft","structured"]},{id:"ai-for-beginners-ms",title:"AI For Beginners — Microsoft",url:"https://github.com/microsoft/AI-For-Beginners",provider:"Microsoft (GitHub)",topic:"AI Fundamentals",difficulty:"Beginner",duration:"~24h",format:"GitHub",tags:["foundations","machine learning","tensorflow","pytorch","beginner","comprehensive"]},{id:"cs229-ml",title:"CS229 — Machine Learning (Stanford)",url:"https://cs229.stanford.edu/",provider:"Stanford",topic:"Machine Learning",difficulty:"Advanced",duration:"~120h",format:"Course",tags:["machine learning","advanced","stanford","technical","deep learning","theory"]},{id:"cs221-ai",title:"CS221 — Artificial Intelligence (Stanford)",url:"https://cs221.stanford.edu/",provider:"Stanford",topic:"Artificial Intelligence",difficulty:"Advanced",duration:"~120h",format:"Course",tags:["machine learning","advanced","stanford","technical","ai theory","foun
313dations advanced"]},{id:"karpathy-youtube",title:"Andrej Karpathy — Neural Networks",url:"https://www.youtube.com/@AndrejKarpathy",provider:"YouTube",topic:"Deep Learning",difficulty:"Advanced",duration:"Self-paced",format:"Video",tags:["andrej karpathy","youtube channel","independent","machine learning","deep learning","neural networks","advanced","technical","llm theory"],resource_type:"YouTube Channel",source_type:"Independent",topics:["LLM Engineering","AI Infrastructure","Tutorials"],supplementary:!0},{id:"hands-on-llm",title:"Hands-On Large Language Models",url:"https://github.com/HandsOnLLM/Hands-On-Large-Language-Models",provider:"GitHub",topic:"LLMs",difficulty:"Intermediate",duration:"Self-paced",format:"GitHub",tags:["llm basics","advanced","practical","github","build","fine-tuning"]},{id:"made-with-ml",title:"Made With ML",url:"https://github.com/GokuMohandas/Made-With-ML",provider:"GitHub",topic:"MLOps",difficulty:"Advanced",duration:"Self-paced",format:"GitHub",tags:["mlops","production","machine learning","advanced","deployment","github"]},{id:"build-your-own-x",title:"Build Your Own X",url:"https://github.com/codecrafters-io/build-your-own-x",provider:"GitHub",topic:"Software Engineering",difficulty:"Advanced",duration:"Self-paced",format:"GitHub",tags:["coding","build","advanced","github","engineering","deep understanding"]},{id:"open-culture",title:"Open Culture — Free Learning Library",url:"https://www.openculture.com/",provider:"Open Culture",topic:"Open Learning",difficulty:"Beginner",duration:"Directory",format:"Guide",tags:["free courses","open learning","business","technology","humanities","coding","course discovery"]},{id:"the-odin-project",title:"The Odin Project",url:"https://www.theodinproject.com/",provider:"The Odin Project",topic:"Web Development",difficulty:"Beginner",duration:"Self-paced",format:"Course",tags:["free courses","coding","web development","full stack","javascript","programming","project based"]},{id:"alison",title:"Alison — Free Online Courses",url:"https://alison.com/",provider:"Alison",topic:"Professional Skills",difficulty:"Beginner",duration:"Self-paced",format:"Course",tags:["free courses","business","management","technology","professional skills","career"]},{id:"digitaldefynd",title:"DigitalDefynd — Course Directory",url:"https://digitaldefynd.com/",provider:"DigitalDefynd",topic:"Business & Technology",difficulty:"Beginner",duration:"Directory",format:"Guide",tags:["free courses","business","leadership","technology","course discovery","executive education"]},{id:"genai-ai-guide",title:"Awesome Generative AI Guide",url:"https://github.com/aishwaryanr/awesome-generative-ai-guide",provider:"GitHub",topic:"Generative AI",difficulty:"Intermediate",duration:"Reference",format:"GitHub",tags:["generative ai","comprehensive","reference","intermediate","llm","resources"]},{id:"notebooklm-research",title:"AI Boost Bites: Supercharge Your Research",url:"https://www.skills.google/course_templates/1498",provider:"Google Skills",topic:"AI Research",difficulty:"Beginner",duration:"~10min",format:"Course",tags:["research","productivity","google","beginner","practical","notebooklm"]},{id:"vibe-coding",title:"Vibe Coding for Beginners",url:"https://www.skills.google/course_templates/1582",provider:"Google Skills",topic:"AI Coding",difficulty:"Beginner",duration:"~30min",format:"Course",tags:["coding","no-code","beginner","build","google","web app","vibe coding"]},{id:"data-science-beginners",title:"Data Science for Beginners",url:"https://github.com/microsoft/Data-Science-For-Beginners",provider:"Microsoft (GitHub)",topic:"Data Science",difficulty:"Beginner",duration:"~20h",format:"GitHub",tags:["data","data science","analytics","beginner","microsoft","finance","python"]},{id:"system-design-primer",title:"System Design Primer",url:"https://github.com/donnemartin/system-design-primer",provider:"GitHub",topic:"System Design",difficulty:"Advanced",duration:"Reference",format:"GitHub",tags:["system design","advanced","coding","engineering","github","architecture"]},{id:"perplexity-labs",title:"Perplexity Labs",url:"https://labs.perplexity.ai",provider:"Perplexity",to
313pic:"AI Research Tools",difficulty:"Beginner",duration:"Playground",format:"Tutorial",tags:["research","perplexity","ai tools","beginner","practical","explore"]},{id:"ai-research-supercharge",title:"AI Boost Bites: Research with Gemini",url:"https://www.skills.google/course_templates/1498",provider:"Google Skills",topic:"AI Research",difficulty:"Beginner",duration:"~10min",format:"Course",tags:["research","gemini","google","marketing","competitive analysis","practical"]},{id:"class-central",title:"Class Central — Course Directory",url:"https://www.classcentral.com/",provider:"Class Central",topic:"Course Discovery",difficulty:"Beginner",duration:"Directory",format:"Guide",tags:["discover","courses","all topics","reference","directory","find courses"]},...Uz],XD=[{id:"AI_AGENTS",label:"Building AI Agents",keywords:["build ai agents","ai agents","agent","agents","agentic","autonomous ai","agent framework","multi-agent","ai agent"],path:[{courseId:"agent-fundamentals",phase:"Foundations",why:"Understand what agents are, how they differ from plain LLMs, and where they create real value."},{courseId:"evolution-ai-agents",phase:"Foundations",why:"See the full evolution from simple chatbots to autonomous AI agents — essential mental model."},{courseId:"ai-agents-beginners",phase:"Foundations",why:"Microsoft's structured 10-lesson GitHub series covers agent concepts from the ground up."},{courseId:"openai-assistants-guide",phase:"Practical Skills",why:"Official OpenAI reference for building and deploying agents with tools, memory, and retrieval."},{courseId:"agentic-design-patterns",phase:"Practical Skills",why:"Learn the four core agentic design patterns (reflection, tool use, planning, multi-agent) with AutoGen."},{courseId:"in-depth-llm-agents",phase:"Practical Skills",why:"DeepLearning.AI deep-dive on building real agents in LangGraph — the leading production framework."},{courseId:"genai-agents-collection",phase:"Advanced Topics",why:"Comprehensive GitHub collection of GenAI agent implementations — production-ready patterns and techniques."},{courseId:"agents-towards-production",phase:"Advanced Topics",why:"Move from prototype to production — covers reliability, monitoring, and enterprise deployment of agents."},{courseId:"awesome-llm-apps",phase:"Build & Practice",why:"Start building with real LLM app examples using RAG, agents, and production patterns."},{courseId:"500-ai-agents",phase:"Build & Practice",why:"500 real agent project examples — the fastest way to see what's possible and get building."}]},{id:"PROMPT_ENGINEERING",label:"Prompt Engineering",keywords:["prompt engineering","prompting","prompts","better prompts","master prompts","write prompts","system prompts","chatgpt prompting","advanced prompts"],path:[{courseId:"claude-a-to-z",phase:"Foundations",why:"Anthropic's own comprehensive guide — start here to build the right mental model for prompting."},{courseId:"gemini-prompting-guide",phase:"Foundations",why:"Google's official prompting guide covers core techniques with practical, copy-ready examples."},{courseId:"prompt-engineering-developers",phase:"Practical Skills",why:"DeepLearning.AI's 2-hour course is the benchmark for prompt engineering — structured, practical, hands-on."},{courseId:"prompt-engineering-llama",phase:"Practical Skills",why:"Apply prompt engineering techniques to open-source models — essential for private or local deployments."},{courseId:"genai-4-command-prompts",phase:"Practical Skills",why:"Microsoft's module on commanding prompts effectively — covers advanced chaining and structured output."},{courseId:"genai-5-advanced-interactions",phase:"Practical Skills",why:"Engineer complex multi-turn interactions — essential for building copilots and assistant workflows."},{courseId:"prompt-engineering-guide",phase:"Advanced Topics",why:"DAIR.AI's comprehensive GitHub reference covers every advanced prompting technique from chain-of-thought to ReAct."},{courseId:"google-prompting-guide",phase:"Advanced Topics",why:"Google's official 71-page whitepaper — the most complete single reference on prompt structure and technique."},{courseId:"system-prompts-collection",phase:"Advanced Topics",why:"Real-world system prompts from production AI tools — study how leading products engineer their prompts."}
313,{courseId:"openai-assistants-guide",phase:"Build & Practice",why:"Apply your prompt skills to build a real assistant with tools, memory, and retrieval."},{courseId:"awesome-llm-apps",phase:"Build & Practice",why:"Apply prompting skills to real LLM app examples — see prompts in context, not just isolation."}]},{id:"RAG",label:"Retrieval-Augmented Generation (RAG)",keywords:["rag","retrieval augmented","retrieval","document qa","vector search","vector database","embeddings","semantic search","knowledge base ai"],path:[{courseId:"genai-1-foundation",phase:"Foundations",why:"Understand what LLMs can and can't do — the foundation for knowing why RAG exists and when you need it."},{courseId:"notebooklm-guide",phase:"Foundations",why:"Experience RAG without code first — NotebookLM is RAG in action and builds the right intuition."},{courseId:"genai-8-vector-search",phase:"Practical Skills",why:"Microsoft's module on vector databases and semantic search — the technical backbone of every RAG system."},{courseId:"building-rag-deeplearning",phase:"Practical Skills",why:"Build agentic RAG pipelines with LlamaIndex — production-grade, step-by-step, with code."},{courseId:"rag-techniques",phase:"Advanced Topics",why:"NirDiamant's GitHub collection covers 40+ advanced RAG techniques — the definitive engineering reference."},{courseId:"genai-agents-collection",phase:"Advanced Topics",why:"Agents + RAG combined — learn how production systems integrate retrieval into agentic workflows."},{courseId:"awesome-llm-apps",phase:"Build & Practice",why:"Hands-on LLM app examples built on RAG — start with a working template, then customise for your use case."},{courseId:"langgraph-deep-research",phase:"Build & Practice",why:"Build a multi-source deep research agent using LangGraph — the ultimate RAG in production."}]},{id:"MCP",label:"Model Context Protocol (MCP)",keywords:["mcp","model context protocol","claude mcp","mcp servers","mcp tools","tool use","function calling","connect ai to tools"],path:[{courseId:"openai-assistants-guide",phase:"Foundations",why:"Tool use and function calling in AI assistants is the conceptual foundation you need before MCP."},{courseId:"genai-11-connect-external",phase:"Foundations",why:"Microsoft's module on connecting AI to external systems — function calling and tool integration fundamentals."},{courseId:"awesome-mcp-servers",phase:"Practical Skills",why:"The definitive GitHub list of MCP servers — browse integrations for files, databases, APIs, and business tools."},{courseId:"genai-agents-collection",phase:"Practical Skills",why:"Agents + tools collection — see real agent implementations that use external tool connections like MCP."},{courseId:"langgraph-cua",phase:"Advanced Topics",why:"Computer-using agents built on LangGraph — the advanced evolution of tool use and MCP into full computer control."},{courseId:"agents-towards-production",phase:"Advanced Topics",why:"How to reliably connect AI to external systems in production — covers monitoring, failure modes, and architecture."},{courseId:"awesome-llm-apps",phase:"Build & Practice",why:"Real LLM apps with tool integrations — use as templates to build your own MCP-connected applications."}]},{id:"LANGGRAPH",label:"LangGraph",keywords:["langgraph","lang graph","stateful agents","langchain agents","graph agents","langgraph agents","ai graph","agentic workflows langgraph"],path:[{courseId:"evolution-ai-agents",phase:"Foundations",why:"Understand the agent landscape before picking LangGraph — see how it fits the broader ecosystem."},{courseId:"agentic-design-patterns",phase:"Foundations",why:"Learn the agentic design patterns LangGraph implements — reflection, tool use, planning, multi-agent."},{courseId:"intro-langgraph",phase:"Practical Skills",why:"Official LangChain docs for LangGraph — the authoritative starting point for graph-based agent design."},{courseId:"langgraph-agents-course",phase:"Practical Skills",why:"DeepLearning.AI's hands-on LangGraph course — build real agents with memory, tools, and branching logic."},{courseId:"in-depth-llm-agents",phase:"Practical Skills",why:"Deep dive into LLM agents implemented in LangGraph — covers state machines, memory, and multi-step reasoning."},{courseId:"langgraph-cua",phase:"Advanced Topics",why:"Advanced LangGraph: build computer-using agents that browse, execute code, and interact with systems."},{courseId:"langgraph-deep-research",phase:"Advanced Topics",why:"Production-grade multi-agent research system built on LangGraph — the most complete advanced example available."},{courseId:"agents-towards-production",phase:"Build & Practice",why:"Take your LangGraph agents to production — covers deployment, monitoring, and reliability engineering."}]},{id:"AI_WORKFLOWS",label:"AI Workflows & Automation",keywords:["build ai workflows","ai automation","workflow automation","automate with ai","ai pipeline","ai process","business automation ai","automated workflow"],path:[{courseId:"how-to-ai-guide",phase:"Foundations",why:"Practical guide to using AI in business workflows — start here before building automation infrastru
313cture."},{courseId:"genai-10-low-code",phase:"Foundations",why:"Microsoft's module on low-code AI platforms — the fastest path to AI workflow automation without coding."},{courseId:"genai-11-connect-external",phase:"Practical Skills",why:"Connect AI to your existing tools and APIs — the core skill for any AI workflow integration."},{courseId:"agentic-design-patterns",phase:"Practical Skills",why:"Learn the four automation patterns (reflection, planning, tool use, multi-agent) used in every serious AI workflow."},{courseId:"genai-7-chat",phase:"Practical Skills",why:"Deploy AI chat solutions — the most common workflow automation interface for business users."},{courseId:"langgraph-agents-course",phase:"Advanced Topics",why:"Build stateful, multi-step AI workflows with LangGraph — the leading framework for complex automation."},{courseId:"genai-14-lifecycle",phase:"Advanced Topics",why:"Manage the complete AI application lifecycle — from prototype to maintained production workflow."},{courseId:"awesome-llm-apps",phase:"Build & Practice",why:"Real workflow automation examples using LLMs — curated templates to start from, not blank pages."}]},{id:"AI_FINANCE",label:"AI for Finance & Private Equity",keywords:["ai for finance","ai finance","financial ai","private equity ai","pe ai","investment ai","ai due diligence","ai financial analysis","ai for pe"],path:[{courseId:"generative-ai-leader",phase:"Foundations",why:"The executive framework for AI decision-making — essential for PE partners and finance leaders evaluating AI."},{courseId:"ai-for-everyone",phase:"Foundations",why:"Andrew Ng's accessible guide helps finance leaders make sound AI decisions without technical background."},{courseId:"notebooklm-guide",phase:"Practical Skills",why:"Process large volumes of documents (CIMs, data rooms) using NotebookLM — no code, immediate value."},{courseId:"notebooklm-research",phase:"Practical Skills",why:"AI-accelerated research workflows — directly applicable to commercial diligence and sector analysis."},{courseId:"prompt-engineering-developers",phase:"Practical Skills",why:"Master prompting to extract structured financial analysis from AI — the highest-ROI skill for deal teams."},{courseId:"data-science-beginners",phase:"Advanced Topics",why:"Build data literacy for AI-driven financial analysis — Python, data pipelines, and analytical workflows."},{courseId:"genai-8-vector-search",phase:"Advanced Topics",why:"Vector search powers document intelligence for data rooms — understand the tech behind PE AI tools like Hebbia."},{courseId:"awesome-llm-apps",phase:"Build & Practice",why:"Real LLM applications for document analysis, research, and data extraction — start building for your fund."}]},{id:"AI_MARKETING",label:"AI for Marketing & Content",keywords:["ai for marketing","marketing ai","ai content","content creation ai","social media ai","ai copywriting","marketing automation ai","ai ads"],path:[{courseId:"how-to-ai-guide",phase:"Foundations",why:"Practical guide to integrating AI into daily marketing and content workflows — start here."},{courseId:"google-ai-essentials",phase:"Foundations",why:"Google's official course covers AI tools relevant to marketing — including Workspace and content generation."},{courseId:"genai-9-visual",phase:"Practical Skills",why:"Microsoft's module on generating visual content with AI — directly applicable to marketing assets and social media."},{courseId:"ai-research-supercharge",phase:"Practical Skills",why:"Use Gemini Deep Research for competitive analysis and market intelligence — a core marketing AI skill."},{courseId:"prompt-engineering-developers",phase:"Practical Skills",why:"Better prompts produce better marketing copy — this course teaches the techniques for consistent, high-quality output."},{courseId:"genai-7-chat",phase:"Advanced Topics",why:"Build customer-facing AI experiences — deploy chat agents for marketing and customer service."},{courseId:"genai-12-ux",phase:"Advanced Topics",why:"Design AI-first user experiences — essential for building marketing tools and customer-facing AI products."},{courseId:"vibe-coding",phase:"Build & Practice",why:"Build a marketing tool without writing code — create landing pages, calculators, or content generators quickly."}]},{id:"AI_COPILOTS",label:"Building AI Copilots & Assistants",keywords:["build ai copilot","copilot","ai assistant","chatbot","internal assistant","custom gpt","build chatbot","ai copilots","knowledge assistant"],path:[{courseId:"open
313ai-academy",phase:"Foundations",why:"OpenAI's official learning platform — understand the building blocks of assistants before you build one."},{courseId:"notebooklm-guide",phase:"Foundations",why:"Experience a document-based AI assistant — the quickest way to see what a copilot can do with your content."},{courseId:"genai-7-chat",phase:"Practical Skills",why:"Microsoft's module on deploying chat solutions — the practical guide to building and shipping AI chat products."},{courseId:"openai-assistants-guide",phase:"Practical Skills",why:"Official OpenAI reference for building assistants with tools, file search, and persistent memory."},{courseId:"genai-6-text-apps",phase:"Practical Skills",why:"Build text generation applications — the foundation for any AI copilot that reads and writes for users."},{courseId:"genai-12-ux",phase:"Advanced Topics",why:"Design AI-first user experiences — essential for copilots that people will actually use and trust."},{courseId:"agentic-design-patterns",phase:"Advanced Topics",why:"Move from static chatbot to agentic copilot — learn the patterns that make assistants genuinely capable."},{courseId:"awesome-llm-apps",phase:"Build & Practice",why:"Real copilot and assistant examples with full code — the fastest path from idea to working product."},{courseId:"build-your-own-x",phase:"Build & Practice",why:"Deep understanding through building from scratch — for developers who want to truly own their AI assistant."}]},{id:"AI_FOUNDATIONS",label:"AI Foundations",keywords:["ai foundations","learn ai","ai basics","getting started ai","introduction ai","beginner ai","what is ai","learn generative ai","start with ai","llm basics"],path:[{courseId:"ai-explained",phase:"Foundations",why:"The clearest 45-minute video explanation of what AI actually is — the right starting point for any beginner."},{courseId:"elements-of-ai",phase:"Foundations",why:"University of Helsinki's free course — rigorous, readable, no coding required. The world's best AI intro course."},{courseId:"generative-ai-everyone",phase:"Foundations",why:"Andrew Ng's accessible introduction to generative AI — how it works, where it's used, and what it means for business."},{courseId:"google-ai-essentials",phase:"Practical Skills",why:"Google's official course with a free certificate — teaches you to use AI tools productively in a work context."},{courseId:"openai-academy",phase:"Practical Skills",why:"OpenAI's official learning platform — go straight to the source to understand ChatGPT and GPT models."},{courseId:"claude-a-to-z",phase:"Practical Skills",why:"Anthropic's comprehensive Claude guide — if you use Claude for work, this is the operating manual."},{courseId:"microsoft-genai-full",phase:"Advanced Topics",why:"21-lesson GitHub series from Microsoft — a complete structured course from LLMs to deployment."},{courseId:"genai-ai-guide",phase:"Advanced Topics",why:"The most comprehensive GitHub reference for generative AI — curated resources from models to production."},{courseId:"class-central",phase:"Build & Practice",why:"Explore thousands of free and paid AI courses — use this to find your next specialisation after the basics."}]},{id:"MACHINE_LEARNING",label:"Machine Learning & Deep Learning",keywords:["machine learning","deep learning","neural networks","ml","ai model","train model","tensorflow","pytorch","fine-tuning"],path:[{courseId:"data-ai-fundamentals",phase:"Foundations",why:"Linux Foundation's AI and data fundamentals — the right starting point before diving into ML techniques."},{courseId:"ai-for-beginners-ms",phase:"Foundations",why:"Microsoft's 24-lesson GitHub course covers TensorFlow and PyTorch from scratch — comprehensive and free."},{courseId:"hands-on-llm",phase:"Practical Skills",why:"Hands-on book for working with LLMs in Python — covers fine-tuning, embeddings, and production deployment."},{courseId:"cs229-ml",phase:"Advanced Topics",why:"Stanford's graduate ML course — the gold standard for deep understanding of algorithms and mathematical foundations."},{courseId:"karpathy-youtube",phase:"Advanced Topics",why:"Andrej Karpathy's YouTube tutorials are the best deep learning content available — watch Neural Networks: Zero to Hero."},{courseId:"made-with-ml",phase:"Advanced Topics",why:"MLOps-first approach to machine learning — covers the full lifecycle from data to production models."},{courseId:"build-your-own-x",phase:"Build & Practice",why:"Build the technologies from scratch — the fastest path to true understanding of how ML 
313systems work."}]},{id:"CODING_TO_BUSINESS",label:"From Coding to Business",keywords:["from coding to business","coding to business","free learning paths","free courses","open culture","the odin project","odin project","alison","digitaldefynd","digital defynd","class central","learn coding and business","technical and business skills"],path:[{courseId:"the-odin-project",phase:"Foundations",why:"Build practical coding foundations through a free, project-based full-stack curriculum."},{courseId:"open-culture",phase:"Foundations",why:"Broaden the technical path with free university-level learning across technology, economics and the humanities."},{courseId:"alison",phase:"Practical Skills",why:"Add practical business, management and professional skills through a broad free course catalogue."},{courseId:"digitaldefynd",phase:"Advanced Topics",why:"Identify more focused programmes in technology, leadership, finance and executive education."},{courseId:"class-central",phase:"Build & Practice",why:"Continue the journey by comparing free courses from universities and major learning platforms."}]},{id:"CODING_AI",label:"AI-Assisted Coding",keywords:["coding","programming with ai","ai coding","vibe coding","code with ai","build app","ai developer","github copilot","cursor","build with ai"],path:[{courseId:"vibe-coding",phase:"Foundations",why:"Google's 30-minute intro to building web apps without code — the easiest on-ramp to AI-assisted creation."},{courseId:"genai-6-text-apps",phase:"Foundations",why:"Build your first text generation application — start here if you want to move from using AI to building with it."},{courseId:"prompt-engineering-developers",phase:"Practical Skills",why:"Better prompts = better code generation — this course directly improves your AI coding output."},{courseId:"genai-11-connect-external",phase:"Practical Skills",why:"Connect your AI applications to external APIs and systems — the key skill for useful coding projects."},{courseId:"openai-assistants-guide",phase:"Practical Skills",why:"Official guide to building AI-powered coding assistants and apps with tools and code execution."},{courseId:"awesome-llm-apps",phase:"Advanced Topics",why:"Real LLM app code examples — start from working templates and customise for your project."},{courseId:"build-your-own-x",phase:"Advanced Topics",why:"Master list of tutorials for building fundamental technologies from scratch — the deepest technical learning."},{courseId:"system-design-primer",phase:"Build & Practice",why:"System design reference — essential when your AI coding project grows into a real product."}]}];function jk(e){const t=e.toLowerCase().trim();if(!t)return null;const n=t.replace(/[^a-z0-9]+/g," ").trim(),i=QD.find(o=>{const l=o.name.toLowerCase().replace(/[^a-z0-9]+/g," ").trim();return n===l||n.includes(l)});if(i)return{id:`YOUTUBE_CHANNEL_${i.id.toUpperCase().replace(/-/g,"_")}`,label:`${i.name} — YouTube Channel`,keywords:[i.name.toLowerCase()],path:[{courseId:X0(i.id),phase:"Build & Practice",why:"Use this channel as a supplementary source alongside structured courses and practical projects."}]};let a=null,s=0;for(const o of XD){let l=0;for(const c of o.keywords){if(t===c){l+=10;continue}if(t.includes(c)){l+=c.split(" ").length*2;continue}const u=c.split(" ").filter(p=>t.includes(p));l+=u.length}l>s&&(s=l,a=o)}return s>0?a:null}function Gz(){return XD.slice(0,8)}function Hz(e){return qz.find(t=>t.id===e)}function zz(e){const t=["Foundations","Practical Skills","Advanced Topics","Build & Practice"],n={AI_AGENTS:["deeplearning-ai","langchain","openai","anthropic","crewai"],PROMPT_ENGINEERING:["openai","anthropic","deeplearning-ai"],RAG:["llamaindex","pinecone","langchain","sam-witteveen"],MCP:["anthropic","cole-medin","ai-jason","mervin-praison"],LANGGRAPH:["langchain","deeplearning-ai","sam-witteveen"],AI_WORKFLOWS:["n8n","crewai","cole-medin","ai-jason","ai-advantage"],AI_COPILOTS:["openai","anthropic","microsoft-developer"],AI_FOUNDATIONS:["deeplearning-ai","freecodecamp","stanford-online","3blue1brown"],MACHINE_LEARNING:["andrej-karpathy","statquest","sentdex","two-minute-papers"],CODING_TO_BUSINESS:["freecodecamp","codebasics","data-school"],CODING_AI:["ai-engineer","nicholas-renotte","assemblyai","freecodecamp"]},i=new Set(e.path.map(o=>o.courseId)),a=(n[e.id]??[]).map(X0).filter(o=>!i.has(o)).map(o=>({courseId:o,phase:"Build & Practice",why:"Supplement the structured path with practical tutorials, technical discussions and current examples."})),s=[...e.path,...a];return t.map(o=>({phase:o,courses:s.filter(l=>l.phase===o).map(l=>{const c=Hz(l.courseId);return c?{course:c,why:l.why}:null}
313).filter(Boolean)})).filter(o=>o.courses.length>0)}const Zn="#D4A843",Wz={Foundations:{step:"Step 1",icon:r.jsx(dD,{className:"h-4 w-4"}),color:"text-blue-400",border:"border-blue-400/30",badge:"bg-blue-400/10 text-blue-400"},"Practical Skills":{step:"Step 2",icon:r.jsx(cs,{className:"h-4 w-4"}),color:"text-emerald-400",border:"border-emerald-400/30",badge:"bg-emerald-400/10 text-emerald-400"},"Advanced Topics":{step:"Step 3",icon:r.jsx(V0,{className:"h-4 w-4"}),color:"text-purple-400",border:"border-purple-400/30",badge:"bg-purple-400/10 text-purple-400"},"Build & Practice":{step:"Step 4",icon:r.jsx(Zq,{className:"h-4 w-4"}),color:"text-amber-400",border:"border-amber-400/30",badge:"bg-amber-400/10 text-amber-400"}},Vz={Beginner:"text-emerald-400 bg-emerald-400/10",Intermediate:"text-blue-400 bg-blue-400/10",Advanced:"text-purple-400 bg-purple-400/10"},Kz=["Build AI agents for due diligence","Learn prompt engineering for investment teams","Master Retrieval-Augmented Generation (RAG)","Learn LangGraph","Learn MCP","Build AI workflows","Use AI in Finance","Build AI copilots"],Yz=["Build AI Agents","AI for Due Diligence","Automate Finance","Build AI Workflows","Learn Prompt Engineering","Master RAG","Learn MCP","Learn LangGraph","AI for Marketing","From Coding to Business"],Qz=[{id:"AI_AGENTS",label:"AI Agents",query:"Build AI Agents",description:"From agent fundamentals to production-grade multi-agent systems.",icon:r.jsx(uD,{className:"h-5 w-5"}),color:"text-blue-400",border:"border-blue-400/20 hover:border-blue-400/50"},{id:"PROMPT_ENGINEERING",label:"Prompt Engineering",query:"Learn Prompt Engineering",description:"Master the techniques that unlock consistent, high-quality AI output.",icon:r.jsx(pD,{className:"h-5 w-5"}),color:"text-purple-400",border:"border-purple-400/20 hover:border-purple-400/50"},{id:"RAG",label:"RAG",query:"Master RAG",description:"Build AI that reads your documents, data rooms, and knowledge bases.",icon:r.jsx(eG,{className:"h-5 w-5"}),color:"text-emerald-400",border:"border-emerald-400/20 hover:border-emerald-400/50"},{id:"AI_FOUNDATIONS",label:"AI for Executives",query:"AI Foundations",description:"The fastest path from AI curiosity to confident business decision-making.",icon:r.jsx(K0,{className:"h-5 w-5"}),color:"text-amber-400",border:"border-amber-400/20 hover:border-amber-400/50"}];function Xz(e,t=3500){const[n,i]=j.useState(0),[a,s]=j.useState(!0);return j.useEffect(()=>{const o=setInterval(()=>{s(!1),setTimeout(()=>{i(l=>(l+1)%e.length),s(!0)},300)},t);return()=>clearInterval(o)},[e,t]),{placeholder:e[n],visible:a}}function Zz(){const[e,t]=j.useState(""),[n,i]=j.useState(null),[a,s]=j.useState(!1),{placeholder:o,visible:l}=Xz(Kz),c=()=>{if(!e.trim())return;const f=jk(e);i(f),s(!0)},d=f=>{f.key==="Enter"&&c()},u=f=>{t(f);const x=jk(f);i(x),s(!0)},p=()=>{t(""),i(null),s(!1)},m=n?zz(n):[];return r.jsx("section",{className:"dense-navigator elevated-section navigator-shell py-16 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container-data",children:[r.jsxs("div",{className:"mb-10",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-4",style:{color:Zn},children:"AI Learning Navigator"}),r.jsxs("h2",{className:"text-3xl md:text-4xl font-light tracking-tight text-white mb-4",children:["Find the fastest learning path",r.jsx("br",{className:"hidden md:block"})," for the AI capability you want to build."]}),r.jsx("p",{className:"text-base text-gray-300 max-w-2xl mb-2",children:"Describe the skill you want to learn and receive a curated learning path from the courses already available in PrivateEquity.AI."}),r.jsx("p",{className:"text-sm text-gray-500",children:"Curated AI learning paths selected for private capital and business transformation."})]}),r.jsxs("div",{className:"flex flex-col sm:flex-row gap-3 mb-6",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx(tp,{className:"absolute left-4 top-1/2 -translate-y-1/2 h-4 w-4 text-gray-500 pointer-events-none"}),r.jsx("input",{type:"text",value:e,onChange:f=>t(f.target.value),onKeyDown:d,placeholder:l?o:"",className:"navigator-search w-full border rounded-xl pl-11 pr-4 py-4 text-white focus:outline-none focus:border-[#D4A843]/60 transition-colors text-sm",style:{transition:"border-color 0.2s"}})]}),r.jsxs("button",{onClick:c,className:"navigator-action flex items-center justify-center gap-2 px-7 py-4 rounded-xl font-semibold text-sm text-black hover:opacity-90 whitespace-nowrap",style:{backgroundColor:Zn},children:["Find Learning Path",r.jsx(qt,{className:"h-4 w-4"})]})]}),!a&&r.jsx("div",{className:"flex flex-wrap gap-2 mb-2",children:Yz.map(f=>r.jsx("button",{onClick:()=>u(f),className:"navigator-chip text-xs px-3 py-1.5 rounded-full border border-white/15 text-gray-400 hover:border-[#D4A843]/50 hover:text-white",children:f},f))}),!a&&r.jsxs("div",{className:"mt-12",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-6",style:{color:Zn},children:"Popular Learning Journeys"}),r.jsx("div",{className:"grid sm:grid-cols-2 md:grid-cols-4 gap-4",children:Qz.map(f=>r.jsxs("button",{onClick:()=>u(f.query),className:`group navigator-card text-left bg-[#111111] border rounded-xl p-5 ${f.border}`,children:[r.jsx("div",{className:`mb-3 ${f.color}`,children:f.icon}),r.jsx("h3",{className:"text-sm font-semibold text-white mb-2 group-hover:text-[#D4A843] transition-colors",children:f.label}),r.jsx("p",{className:"text-xs text-gray-500 leading-relaxed",children:f.description}),r.jsxs("div",{className:"mt-4 flex items-center gap-1 text-xs",style:{color:Zn},children:[r.jsx("span",{children:"View path"}),r.jsx(qt,{className:"h-3 w-3"})]})]},f.id))})]}),a&&r.jsx("div",{className:"mt-8",children:n?r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center justify-between mb-2",children:[r.jsx("h3",{className:"text-lg font-semibold text-white",children:"Recommended Learning Path"}),r.jsx("button",{onClick:p,className:"text-xs text-gray-500 hover:text-gray-300 underline transition-colors",children:"New search"})]}),r.jsxs("div",{className:"flex items-center gap-2 mb-8",children:[r.jsx("span",{className:"text-xs text-gray-400",children:"Curated for:"}),r.jsx("span",{className:"text-xs font-semibold px-3 py-1 rounded-full",style:{backgroundColor:`${Zn}20`,color:Zn,border:`1px solid ${Zn}40`},children:n.label})]}),r.jsx("div",{className:"space-y-10",children:m.map(({phase:f,courses:x},h)=>{const g=Wz[f];return r.jsxs("div",{children:[r.jsx("div",{className:"flex items-center gap-3 mb-5",children:r.jsxs("div",{className:`flex items-center gap-2 px-3 py-1.5 rounded-lg border ${g.badge} ${g.border}`,children:[r.jsx("span",{className:g.color,children:g.icon}),r.jsxs("span",{className:`text-xs font-semibold uppercase tracking-wider ${g.color}`,children:[g.step," — ",f]})]})}),r.jsx("div",{className:"grid md:grid-cols-2 gap-4",children:x.map(({course:y,why:v})=>r.jsxs("div",{className:"dense-card navigator-card bg-[#111111] border border-white/10 rounded-xl p-5 flex flex-col gap-3",children:[r.jsx("div",{className:"flex items-start justify-between gap-2",children:r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-0.5 rounded",children:y.resource_type??y.provider}),y.source_type?r.jsx("span",{className:"text-xs font-medium px-2 py-0.5 rounded text-[#D4A843] bg-[#D4A843]/10",children:y.source_type}):r.jsx("span",{className:`text-xs font-medium px-2 py-0.5 rounded ${Vz[y.difficulty]}`,children:y.difficulty})]})}),r.jsx("h4",{className:"text-sm font-semibold text-white leading-snug",children:y.title}),r.jsxs("div",{className:"flex items-center gap-4 text-xs text-gray-500",children:[r.jsxs("span",{className:"flex items-center gap-1",children:[r.jsx(gD,{className:"h-3 w-3"}),y.duration]}),r.jsxs("span",{className:"flex items-center gap-1",children:[r.jsx(Vq,{className:"h-3 w-3"}),y.topic]})]}),r.jsx("div",{className:"border-t border-white/8 pt-3",children:r.jsxs("p",{className:"text-xs text-gray-400 leading-relaxed",children:[r.jsx("span",{className:"font-medium",style:{color:Zn},children:y.supplementary?"Supplementary: ":"Why: "}),v]})}),r.jsxs("a",{href:y.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"mt-auto inline-flex items-center gap-1.5 text-xs font-semibold px-3 py-2 rounded-lg border hover:opacity-90",style:{color:Zn,borderColor:`${Zn}40`,backgroundColor:`${Zn}10`},onClick:b=>b.stopPropagation(),children:[r.jsx(S,{className:"h-3 w-3"}),y.resource_type==="YouTube Channel"?"Open Channel":"Official Source"]})]},y.id))})]},f)})}),r.jsx("p",{className:"text-xs text-gray-600 mt-10 text-center",children:"All resources are from the PrivateEquity.AI Insights library · Educational purposes only · No affiliation or endorsement"})]}):r.jsxs("div",{className:"navigator-card bg-[#111111] border border-white/10 rounded-xl p-8 text-center",children:[r.jsxs("p",{className:"text-white font-medium mb-2",children:['No exact learning path foun
313d for "',e,'"']}),r.jsx("p",{className:"text-sm text-gray-400 mb-6",children:"Try one of these topics:"}),r.jsx("div",{className:"flex flex-wrap justify-center gap-2 mb-6",children:Gz().map(f=>r.jsx("button",{onClick:()=>u(f.label),className:"navigator-chip text-xs px-3 py-1.5 rounded-full border text-gray-300 hover:text-white",style:{borderColor:`${Zn}50`},children:f.label},f.id))}),r.jsx("button",{onClick:p,className:"text-xs text-gray-500 hover:text-gray-300 underline transition-colors",children:"Reset search"})]})})]})})}const od="#D4A843",Jz=[{name:"Open Culture",url:"https://www.openculture.com/",description:"Free courses, books, films and cultural resources for broad-based learning."},{name:"The Odin Project",url:"https://www.theodinproject.com/",description:"A free, project-based path from coding fundamentals to full-stack web development."},{name:"Alison",url:"https://alison.com/",description:"Free online courses across technology, business, management and professional skills."},{name:"DigitalDefynd",url:"https://digitaldefynd.com/",description:"Curated free courses and learning guides for technology, leadership and business."},{name:"Class Central",url:"https://www.classcentral.com/",description:"A course discovery platform for finding free learning from leading universities and providers."}],R=({url:e})=>{const[t,n]=j.useState(!1),i=(()=>{try{return new URL(e).hostname}catch{return""}})(),a=`https://www.google.com/s2/favicons?domain=${i}&sz=64`,s=i.charAt(0).toUpperCase();return t||!i?r.jsx("div",{className:"w-6 h-6 rounded flex items-center justify-center flex-shrink-0 text-xs font-bold text-black mb-3",style:{backgroundColor:od},children:s}):r.jsx("img",{src:a,alt:"",width:24,height:24,className:"w-6 h-6 rounded object-contain flex-shrink-0 bg-white/5 mb-3",loading:"lazy",decoding:"async",onError:()=>n(!0)})},eW=({showSEO:e=!0,showFooter:t=!0})=>r.jsxs(r.Fragment,{children:[e&&r.jsx(Xe,{title:"AI Insights - PrivateEquity.AI",description:"The most relevant AI insights and learning paths for leaders",canonicalUrl:"/learning",keywords:"AI insights, AI learning, AI education, executive AI training"}),r.jsxs("div",{className:"institutional-page dense-content-page dense-learning-page min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-20 md:py-28 max-w-4xl",children:[r.jsx("h1",{className:"text-5xl md:text-6xl lg:text-7xl font-light tracking-tight text-white mb-6",children:"AI Insights"}),r.jsx("p",{className:"text-base text-gray-300 max-w-2xl mb-3",children:"Research, learning and expert intelligence for private capital in the AI economy."}),r.jsx("p",{className:"text-sm text-[#BBBBBB] max-w-2xl mb-3",children:"Explore strategic research, curated learning paths, technical resources and the people shaping AI."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Educational insights only. No affiliation or endorsement."})]})}),r.jsx("nav",{"aria-label":"Explore AI Insights sections",className:"bg-[#141414] border-y border-white/5",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 py-8 max-w-5xl",children:r.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-3 md:gap-4",children:[{label:"Research",title:"Strategic Research & Papers",description:"Institutional research, strategic papers and frameworks on AI, private capital and enterprise transformation.",href:"#research"},{label:"Learning",title:"Courses & Learning Paths",description:"Curated courses, guides and structured learning paths for practical AI capability building.",href:"#learning"},{label:"AI Channels",title:"YouTube & Technical Channels",description:"Official technical channels and independent educators covering agents, RAG, automation and AI engineering.",href:"#youtube-learning-channels"},{label:"AI Leadership",title:"TopAIManagers™",description:"Explore the AI Leadership Intelligence layer tracking people shaping the field.",href:"#ai-leadership"}].map(n=>r.jsxs("a",{href:n.href,className:"group flex min-h-[11rem] flex-col rounded-xl border border-white/10 bg-[#111111] p-4 transition-all hover:border-[#D4A843]/40",children:[r.jsx("p",{className:"text-[10px] font-semibold tracking-[0.18em] uppercase mb-3",style:{color:od},children:n.label}),r.jsx("h2",{className:"text-sm font-semibold text-white leading-snug mb-2 group-hover:text-[#D4A843] transition-colors",children:n.title}),r.jsx("p",{className:"text-xs text-gray-400 leading-relaxed",children:n.description}),r.jsxs("span",{className:"mt-auto pt-4 inline-flex items-center gap-1 text-xs font-semibold",style:{color:od},children:["Explore section ",r.jsx(qt,{className:"h-3 w-3 transition-transform group-hover:translate-x-0.5"})]})]},n.label))})})}),r.jsx(Zz,{}),r.jsx("section",{className:"py-16 bg-[#141414] border-y border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsxs("div",{className:"mb-10",children:[r.jsx("p",{className:"text-xs font-semibold tracking-[0.18em] uppercase mb-3",style:{color:od},children:"Free learning paths"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light tracking-tight text-white mb-4",children:"FROM CODING TO BUSINESS"}),r.jsx("p",{className:"text-sm text-[#BBBBBB] max-w-2xl leading-relaxed",children:"A practical route from technical foundations to broader business, leadership and strategic fluency."})]}),r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-5",children:Jz.map(({name:n,url:i,description:a})=>r.jsxs("a",{href:i,target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:i}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:od}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:n}),r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed",children:a})]},n))})]})}),r.jsx("section",{id:"learning",className:"scroll-mt-24 py-16 bg-[#0A0A0A] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl space-y-12",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(Tx,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"Beginner"})]}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsxs("a",{href:"https://www.youtube.com/watch?v=5JLOv3H6qVQ",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-ai-explained",children:[r.jsx(R,{url:"https://www.youtube.com/watch?v=5JLOv3H6qVQ"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Foundation"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Explained — Essential Foundation"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Clear introduction to AI fundamentals for non-technical leaders."})]}),r.jsxs("a",{href:"https://www.youtube.com/watch?v=zjkBMFhNj_g",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-6-steps",children:[r.jsx(R,{url:"https://www.youtube.com/watch?v=zjkBMFhNj_g"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Framework"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"The 6 Steps to Master AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Structured approach to building AI competency."})]}
313),r.jsxs("a",{href:"https://academy.openai.com",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-openai-academy",children:[r.jsx(R,{url:"https://academy.openai.com"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Official"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"OpenAI Academy"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Official learning platform from OpenAI."})]}),r.jsxs("a",{href:"https://academy.openai.com/public/courses/ai-foundations-juzjs",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://academy.openai.com/public/courses/ai-foundations-juzjs"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"OpenAI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Foundations"}),r.jsx("p",{className:"text-sm text-gray-400",children:"OpenAI's foundational course on AI concepts and practical applications."})]}),r.jsxs("a",{href:"https://academy.openai.com/public/courses/applied-ai-foundations-hgk7r",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://academy.openai.com/public/courses/applied-ai-foundations-hgk7r"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"OpenAI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Applied AI Foundations"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Apply AI concepts to real tasks and workflows — OpenAI's hands-on foundations course."})]}),r.jsxs("a",{href:"https://www.elementsofai.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-elements-ai",children:[r.jsx(R,{url:"https://www.elementsofai.com/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"University"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Elements of AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Free course from University of Helsinki — no coding required."})]}),r.jsxs("a",{href:"https://www.coursera.org/learn/generative-ai-for-everyone",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-genai-everyone",children:[r.jsx(R,{url:"https://www.coursera.org/learn/generative-ai-for-everyone"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Coursera"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Generative AI for Everyone"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Andrew Ng's accessible introduction to generative AI."})]}),r.jsxs("a",{href:"https://how-to-ai.guide",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-how-to-ai",children:[r.jsx(R,{url:"https://how-to-ai.guide"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Guide"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"How to AI Guide"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Perfect for non-technical people to master AI fundamentals."})]}),r.jsxs("a",{href:"https://claude.ai/guides",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-claude-guide",children:[r.jsx(R,{url:"https://claude.ai/guides"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Anthropic"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Claude from A to Z"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Comprehensive guide from Anthropic's official team."})]}),r.jsxs("a",{href:"https://ai.google.dev/gemini-api/docs/prompting-intro",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://ai.google.dev/gemini-api/docs/prompting-intro"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Gemini Prompting Guide"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Official prompt engineering guide straight from Google."})]}),r.jsxs("a",{href:"https://www.coursera.org/learn/large-language-models",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.coursera.org/learn/large-language-models"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Coursera"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Getting Started with LLM"}),r.jsx("p",{className:"text-sm text-gray-400",children:"First steps with Large Language Models."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/prompt-engineering-llms/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/prompt-engineering-llms/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Prompt Engineering with Llama"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Prompt engineering techniques with Llama models."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/courses/ai-prompting-for-everyone/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/courses/ai-prompting-for-everyone/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning.AI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Prompting for Everyone"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Practical prompting for non-technical users — how to get better results from any AI system."})]}),r.jsxs("a",{href:"https://www.coursera.org/learn/ai-agents",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.coursera.org/learn/ai-agents"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Coursera"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Evolution of AI Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Introduction to the evolution of AI agents."})]}),r.jsxs("a",{href:"https://cloud.google.com/transform/101-real-world-generative-ai-use-cases-from-industry-leaders",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://cloud.google.com/transform/101-real-world-generative-ai-use-cases-from-industry-leaders"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Cloud"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"101 Real-World AI Use Cases"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Google Cloud's guide to AI applications from industry leaders."})]}),r.jsxs("a",{href:"https://www.linkedin.com/learning/paths/career-essentials-in-generative-ai-by-microsoft-and-linkedin",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.linkedin.com/learning/paths/career-essentials-in-generative-ai-by-microsoft-and-linkedin"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Career Essentials in Generative AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Learn core concepts of generative AI and how Copilot tools support real work."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/training/paths/get-started-with-microsoft-365-copilot",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/training/paths/get-started-with-microsoft-365-copilot"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Microsoft 365 Copilot"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Get started with AI-powered productivity across Word, Excel, Teams and Outlook."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/training/courses/ab-731t00",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/training/courses/ab-731t00"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Drive AI Transformation"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Lead AI adoption across your organisation — for managers and transformation leaders."})]}),r.jsxs("a",{href:"https://explore.skillbuilder.aws/learn/public/learning_plan/view/1909/generative-ai-learning-plan-for-decision-makers",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://explore.skillbuilder.aws/learn/public/learning_plan/view/1909/generative-ai-learning-plan-for-decision-makers"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"AWS"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Generative AI for Decision Makers"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Explore generative AI fundamentals for leadership roles and business decisions."})]}),r.jsxs("a",{href:"https://www.cloudskillsboost.google/course_templates/536",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.cloudskillsboost.google/course_templates/536"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Introduction to Generative AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Learn what generative AI is and how it works from the Google curriculum."})]}),r.jsxs("a",{href:"https://cs50.harvard.edu/ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://cs50.harvard.edu/ai/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Introduction to AI with Python"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Learn core AI ideas and build basic AI projects with Python."})]}),r.jsxs("a",{href:"https://pll.harvard.edu/course/building-personal-resilience-managing-anxiety-and-mental-health",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://pll.harvard.edu/course/building-personal-resilience-managing-anxiety-and-mental-health"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Building Personal Resilience"}),r.jsx("
313p",{className:"text-sm text-gray-400",children:"Managing anxiety and mental health for sustained performance."})]}),r.jsxs("a",{href:"https://pll.harvard.edu/course/exercising-leadership-foundational-principles",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://pll.harvard.edu/course/exercising-leadership-foundational-principles"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Exercising Leadership: Foundational Principles"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Foundational leadership principles for driving organizational change."})]}),r.jsxs("a",{href:"https://pll.harvard.edu/course/fundamentals-neuroscience-part-3-brain",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://pll.harvard.edu/course/fundamentals-neuroscience-part-3-brain"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Fundamentals of Neuroscience"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Explore the brain and its role in cognition and decision-making."})]}),r.jsxs("a",{href:"https://pll.harvard.edu/course/introduction-data-science-python",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://pll.harvard.edu/course/introduction-data-science-python"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Introduction to Data Science"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Learn data science fundamentals with Python."})]}),r.jsxs("a",{href:"https://pll.harvard.edu/course/negotiating-salary",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://pll.harvard.edu/course/negotiating-salary"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Negotiating Salary"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Strategies and techniques for effective salary negotiation."})]}),r.jsxs("a",{href:"https://pll.harvard.edu/course/systematic-approaches-policy-design",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://pll.harvard.edu/course/systematic-approaches-policy-design"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Systematic Approaches to Policy Design"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Frameworks for designing effective organizational and public policy."})]}),r.jsxs("a",{href:"https://pll.harvard.edu/course/path-happiness-what-chinese-philosophy-teaches-us-about-good-life",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://pll.harvard.edu/course/path-happiness-what-chinese-philosophy-teaches-us-about-good-life"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"The Path to Happiness"}),r.jsx("p",{className:"text-sm text-gray-400",children:"What Chinese philosophy teaches us about the good life."})]}),r.jsxs("a",{href:"https://www.coursera.org/learn/ai-for-everyone",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.coursera.org/learn/ai-for-everyone"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Coursera"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI For Everyone"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Discover what AI is, where it's used, and explore ethical impl
313ications."})]}),r.jsxs("a",{href:"https://training.linuxfoundation.org/training/data-and-ai-fundamentals-lfs115x/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://training.linuxfoundation.org/training/data-and-ai-fundamentals-lfs115x/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Linux Foundation"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Data and AI Fundamentals"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Learn foundational AI and data concepts with real-world use cases."})]}),r.jsxs("a",{href:"https://cloud.google.com/learn/training/machinelearning-ai",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://cloud.google.com/learn/training/machinelearning-ai"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Cloud"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Machine Learning & AI Training"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Understand ML and AI system basics and how cloud tools support workflows."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning.AI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Prompt Engineering for Developers"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Learn effective prompt design techniques and build better AI outputs."})]}),r.jsxs("a",{href:"https://github.com/microsoft/AI-For-Beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/microsoft/AI-For-Beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI For Beginners"}),r.jsx("p",{className:"text-sm text-gray-400",children:"12 weeks, 24 lessons covering AI fundamentals with TensorFlow and PyTorch."})]}),r.jsxs("a",{href:"https://www.skills.google/paths/1951",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.skills.google/paths/1951"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Skills"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"The Generative AI Leader"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Your pathway to understanding generative AI capabilities and how they benefit organisations."})]}),r.jsxs("a",{href:"https://www.skills.google/paths/3666/course_templates/1559",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.skills.google/paths/3666/course_templates/1559"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Skills"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Unlock Insights with NotebookLM"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Go from overload to insights with NotebookLM — ideal for processing large volumes of research."})]}),r.jsxs("a",{href:"https://www.skills.google/course_templates/1498",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.skills.google/course_templates/1498"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Skills"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Boost Bites: Supercharge Your Research"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Pro tips for conducting thorough competitive research with Gemini Deep Research. Under 10 minutes."})]}),r.jsxs("a",{href:"https://www.skills.google/course_templates/1473",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.skills.google/course_templates/1473"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Skills"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Boost Bites: Animated Charts with Gemini"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Create animated bar chart races combining data and animation. Under 10 minutes."})]}),r.jsxs("a",{href:"https://www.skills.google/course_templates/1582",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.skills.google/course_templates/1582"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Skills"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Vibe Coding for Beginners"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Build a functional web app without code — perfect for product ideas without technical background."})]}
313),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/introduction-to-generative-ai-and-llms-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/introduction-to-generative-ai-and-llms-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 1: Master the Foundation"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Introduction to generative AI and LLMs — stop guessing how AI works."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/exploring-and-comparing-different-llms-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/exploring-and-comparing-different-llms-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 2: Choose Your Models Wisely"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Exploring and comparing different LLMs — pick models that fit your use case."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/using-generative-ai-responsibly-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/using-generative-ai-responsibly-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 3: Build Responsibly from Day One"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Using generative AI responsibly — avoid the AI disasters making headlines."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/understanding-prompt-engineering-fundamentals-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/understanding-prompt-engineering-fundamentals-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 4: Command Your Prompts"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Prompt engineering fundamentals — get consistent results, not random outputs."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/creating-advanced-prompts-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us
313/shows/generative-ai-for-beginners/creating-advanced-prompts-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 5: Engineer Advanced Interactions"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Writing advanced prompts — master the art of prompting."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-text-generation-applications-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-text-generation-applications-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 6: Build Text Applications"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Building text generation apps with Azure OpenAI and OpenAI API."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-chat-applications-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-chat-applications-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 7: Deploy Chat Solutions"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Building chat applications users actually want to use."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-search-apps-vector-databases-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-search-apps-vector-databases-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 8: Power Search with Vectors"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Building search apps with vector databases — find what people want, not just what they type."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-image-generation-applications-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-image-generation-applications-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 9: Generate Visual Content"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Building image generation applications — replace design bottlenecks with automated creativity."})]}
313),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-low-code-ai-applications-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/building-low-code-ai-applications-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 10: Leverage Low-Code Platforms"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Building low-code AI applications — build faster without compromising."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/integrating-external-applications-with-function-calling-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/integrating-external-applications-with-function-calling-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 11: Connect Exter
313nal Systems"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Integrating external applications with function calling — make AI talk to your business systems."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/designing-ux-for-ai-applications-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/designing-ux-for-ai-applications-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 12: Design AI-First Experiences"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Designing UX for AI applications — create interfaces that feel natural."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/securing-your-generative-ai-applications-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/securing-your-generative-ai-applications-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 13: Secure Your AI Systems"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Securing generative AI applications — prevent the security nightmares plaguing AI deployments."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/the-generative-ai-application-lifecycle-generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/generative-ai-for-beginners/the-generative-ai-application-lifecycle-generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Learn"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI 14: Manage the Complete Lifecycle"}),r.jsx("p",{className:"text-sm text-gray-400",children:"The generative AI application lifecycle — scale without breaking your LLM."})]}),r.jsxs("a",{href:"https://www.openculture.com/freeonlinecourses",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.openculture.com/freeonlinecourses"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Open Culture"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Open Culture — Free Online Courses"}),r.jsx("p",{className:"text-sm text-gray-400",children:"1,700+ free online courses from top universities. Humanities, science, technology and business — curated and free."})]}),r.jsxs("a",{href:"https://startup.google.com/programs/startup-school/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://startup.google.com/programs/startup-school/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google for Startups"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Google Startup School"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Free online program from Google for Startups — covering fundraising, product, growth, AI and go-to-market strategy for founders and early-stage teams."})]}),r.jsxs("a",{href:"https://www.theodinproject.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.theodinproject.com/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"The Odin Project"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"The Odin Project"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Free, open-source web development curriculum. Full-stack foundations from HTML and CSS to JavaScript and Node.js."})]}),r.jsxs("a",{href:"https://www.learnvern.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.learnvern.com/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"LearnVern"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"LearnVern"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Free professional courses in AI, data science, programming and digital skills — available in multiple languages."})]}),r.jsxs("a",{href:"https://digitaldefynd.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://digitaldefynd.com/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Digital Defynd"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Digital Defynd"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Curated directory of the best AI, finance, and business courses from C
313oursera, edX, Udemy and other major platforms."})]}),r.jsxs("a",{href:"https://www.classcentral.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.classcentral.com/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Class Central"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class Central"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Search engine for 250,000+ online courses from top universities and platforms. Find free and paid courses in AI and business."})]}),r.jsxs("a",{href:"https://www.mygreatlearning.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.mygreatlearning.com/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Great Learning"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Great Learning"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Professional AI and data science programs with free courses, certificates, and mentorship from industry experts."})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-2",children:[r.jsx(Tx,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"Harvard Kennedy School — Generative AI Series"})]}),r.jsx("p",{className:"text-sm text-gray-400 mb-6 ml-9",children:"The Science and Implications of Generative AI — 11-class course from Harvard Kennedy School covering foundations, practical use, and societal impact."}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/1-how-genai-works/class-1",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/1-how-genai-works/class-1"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 1 — Introduction to Generative AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"A step-by-step guide to how Generative AI works."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/1-how-genai-works/class-2",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/1-how-genai-works/class-2"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 2 — Deep Neural Networks"}),r.jsx("p",{className:"text-sm text-gray-400",children:"How Deep Neural Networks work — the architecture behind modern AI."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/1-how-genai-works/class-3",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/1-how-genai-works/class-3"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 3 — The Alignment Problem"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Aligning AI systems with human values — the core safety challenge of modern AI."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/2-using-genai/class-4",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/2-using-genai/class-4"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 4 — Prompt Engineering"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Techniques for getting better results from any AI model."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/2-using-genai/class-5",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/2-using-genai/class-5"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 5 — Beyond Chatbots: System Prompts, RAG"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Advanced applications beyond basic chatbots — system prompts, Retrieval-Augmented Generation, and more."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/2-using-genai/class-6",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/2-using-genai/class-6"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 6 — When and How to Use Generative AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Deciding if and when AI can help achieve your specific goals."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/2-using-genai/class-7",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/2-using-genai/class-7"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 7 — Using AI in Practice"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Real-world AI applications in campaigns, engagement and operations — a case study."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/society/class-8",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/society/class-8"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 8 — Risks of Generative AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Limitations, bias, and potential misuse — understanding AI risks before deploying."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/society/class-9",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/society/class-9"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 9 — Intellectual Property"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Understanding IP protection and copyright in the AI era."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/society/class-10",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/society/class-10"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 10 — Future of Work"}),r.jsx("p",{className:"text-sm text-gray-400",children:"AI's impact on the economy and jobs — what leaders need to know."})]}),r.jsxs("a",{href:"https://generative-ai-course.hks.harvard.edu/society/class-11",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://generative-ai-course.hks.harvard.edu/society/class-11"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class 11 — Misinformation"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Balancing AI safety with free expression — understanding AI-driven misinformation."})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(K0,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"Intermediate"})]}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsxs("a",{href:"https://www.youtube.com/watch?v=jw_o0xr8MWU&t=2647s",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.youtube.com/watch?v=jw_o0xr8MWU&t=2647s"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"YouTube"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"NVIDIA GTC Keynote 2026 — Jensen Huang"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Jensen Huang's landmark keynote at GTC 2026: physical AI, humanoid robots, accelerated computing and the next wave of AI infrastru
313cture."})]}),r.jsxs("a",{href:"https://academy.openai.com/public/courses/agents-and-workflows-bieml",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://academy.openai.com/public/courses/agents-and-workflows-bieml"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"OpenAI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agents and Workflows"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Build production-ready AI agents and automate complex multi-step workflows — OpenAI Academy."})]}),r.jsxs("a",{href:"https://learn.microsoft.com/training/paths/agents-online-workshop",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/training/paths/agents-online-workshop"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agent in a Day"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Hands-on Microsoft workshop: build and deploy an AI agent in a single day using Copilot Studio and Azure AI."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/courses/agentic-ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/courses/agentic-ai/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning.AI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agentic AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Design and build agentic systems — autonomous planning, tool use, and multi-agent collaboration."})]}),r.jsxs("a",{href:"https://www.youtube.com/watch?v=xvPQVrrlX6o",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.youtube.com/watch?v=xvPQVrrlX6o"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"YouTube"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Mustafa Suleyman — Nature, Humans, Tools… and Now a Fourth Class"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Microsoft AI CEO and DeepMind co-founder discusses seemingly conscious AI, AI psychosis risk, and why AI represents a fourth class of being. Exponential View with Azeem Azhar."})]}),r.jsxs("a",{href:"https://grow.google/intl/en_uk/learn-ai/gemini-for-educators/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-gemini-educators",children:[r.jsx(R,{url:"https://grow.google/intl/en_uk/learn-ai/gemini-for-educators/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Gemini for Educators"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Google's guide to leveraging AI in education and training."})]}),r.jsxs("a",{href:"https://grow.google/ai-for-educators/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://grow.google/ai-for-educators/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Generative AI in Teaching & Learning"}),r.jsx("p",{className:"text-sm text-gray-400",children:"How educators can adapt and lead with AI — Google's curated hub for trainers and institutional leaders."})]}),r.jsxs("a",{href:"https://www.iste.org/areas-of-focus/AI-in-education",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.iste.org/areas-of-focus/AI-in-education"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"ISTE"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Teaching with AI in the Classroom"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Frameworks for trainers and educators integrating AI into learning environments — from ISTE+ASCD."})]}),r.jsxs("a",{href:"https://microsoft.github.io/generative-ai-for-beginners/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://microsoft.github.io/generative-ai-for-beginners/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"The Basics of Generative AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"No jargon. Just clarity — Microsoft's open-source 21-lesson course on generative AI fundamentals."})]}),r.jsxs("a",{href:"https://cs50.harvard.edu/x/2025/weeks/ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://cs50.harvard.edu/x/2025/weeks/ai/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"CS50x 2025 — Artificial Intelligence Lecture"}),r.jsx("p",{className:"text-sm text-gray-400",children:"LLMs, neural nets, and real-world AI use cases from Harvard's CS50 2025 programme."})]}),r.jsxs("a",{href:"https://cs50.harvard.edu/ai/2024/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://cs50.harvard.edu/ai/2024/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Harvard"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"CS50's Introduction to AI with Python"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Design prompts and build AI systems — Harvard's CS50 Extension course on AI and prompt engineering."})]}),r.jsxs("a",{href:"https://www.youtube.com/watch?v=kCc8FmEb1nY",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.youtube.com/watch?v=kCc8FmEb1nY"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"YouTube"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Let's Build GPT — Andrej Karpathy"}),r.jsx("p",{className:"text-sm text-gray-400",children:"How GPT works and how to build it from scratch — behind the curtain on architecture and training."})]}),r.jsxs("a",{href:"https://www.youtube.com/watch?v=JhCl-GeT4jw",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.youtube.com/watch?v=JhCl-GeT4jw"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"YouTube"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"LLMs and the End of Programming"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Why prompting is the new coding — Dr. Matt Welsh's landmark CS50 Tech Talk on how LLMs are reshaping software development."})]}),r.jsxs("a",{href:"https://www.synthesia.io/post/generative-ai-use-cases",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-101-usecases",children:[r.jsx(R,{url:"https://www.synthesia.io/post/generative-ai-use-cases"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Practical"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"101 Real-World Generative AI Use Cases"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Comprehensive collection of practical AI applications."})]}),r.jsxs("a",{href:"https://www.coursera.org/learn/ai-for-everyone",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-ai-everyone",children:[r.jsx(R,{url:"https://www.coursera.org/learn/ai-for-everyone"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Coursera"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI for Everyone — Andrew Ng"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Non-technical introduction to AI by Stanford professor."})]}),r.jsxs("a",{href:"https://www.coursera.org/learn/machine-learning",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-ml-stanford",children:[r.jsx(R,{url:"https://www.coursera.org/learn/machine-learning"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Stanford"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Machine Learning — Andrew Ng"}),r.jsx("p",{className:"text-sm text-gray-400",children:"The foundational Stanford course that launched millions of ML careers."})]}),r.jsxs("a",{href:"https://huggingface.co/learn/llm-course/chapter1/1",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-huggingface",children:[r.jsx(R,{url:"https://huggingface.co/learn/llm-course/chapter1/1"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Hugging Face"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"LLM Course — Hugging Face"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Practical guide to large language models from the open-source leader."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/building-agentic-rag-with-llamaindex/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-agentic-rag",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/building-agentic-rag-with-llamaindex/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agentic RAG with LlamaIndex"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Build AI agents with retrieval-augmented generation."})]}),r.jsxs("a",{href:"https://www.3blue1brown.com/topics/neural-networks",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-3b1b",children:[r.jsx(R,{url:"https://www.3blue1brown.com/topics/neural-networks"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Visual"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Deep Dive into LLMs — 3Blue1Brown"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Visual explanation of neural networks and LLMs."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/langchain-for-llm-application-development/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-langchain",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/langchain-for-llm-application-development/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"LangChain for LLM Applications"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Build AI applications with the leading LLM orchestration framework."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/large-language-models-semantic-search/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r
313.jsx(R,{url:"https://www.deeplearning.ai/short-courses/large-language-models-semantic-search/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"LLM Basics and Architecture"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Fundamentals and architecture of Large Language Models."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/building-applications-vector-databases/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/building-applications-vector-databases/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"RAG Basics and Advanced"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Basic and advanced Retrieval Augmented Generation techniques."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/ai-agents-in-langgraph/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/ai-agents-in-langgraph/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"In-depth on LLM Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"In-depth exploration of LLM-based agents."})]}),r.jsxs("a",{href:"https://python.langchain.com/docs/langgraph",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://python.langchain.com/docs/langgraph"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"LangChain"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Introduction to LangGraph"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Create AI agents with LangGraph framework."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/ai-agentic-design-patterns-with-autogen/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/ai-agentic-design-patterns-with-autogen/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"DeepLearning"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agentic Design Patterns"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Design patterns for AI agent development."})]}),r.jsxs("a",{href:"https://labs.perplexity.ai",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://labs.perplexity.ai"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Perplexity"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Perplexity Labs"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Interesting Perplexity features and experiments explained."})]}),r.jsxs("a",{href:"https://platform.openai.com/docs/assistants/overview",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://platform.openai.com/docs/assistants/overview"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"OpenAI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"OpenAI Assistants Guide"}),r.jsx("p",{className:"text-sm text-gray-400",children:"OpenAI's comprehensive guide to building AI agents."})]}),r.jsxs("a",{href:"https://github.com/Shubhamsaboo/awesome-llm-apps",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/Shubhamsaboo/awesome-llm-apps"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Awesome LLM Apps Collection"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Curated collection of LLM apps with RAG, AI Agents, and more."})]}),r.jsxs("a",{href:"https://github.com/codecrafters-io/build-your-own-x",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/codecrafters-io/build-your-own-x"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Build Your Own X"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Master list of tutorials for building your own technology from scratch — Git, Docker, databases, web servers, and more."})]}),r.jsxs("a",{href:"https://www.classcentral.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.classcentral.com/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Course Directory"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Class Central"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Search engine for online courses — aggregates and ranks offerings from C
313oursera, edX, MIT OpenCourseWare, and hundreds of other providers."})]}),r.jsxs("a",{href:"https://www.skills.google/course_templates/1562",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.skills.google/course_templates/1562"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Skills"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agent Fundamentals"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Understand AI Agents fundamentals, how they differ from LLMs, and where they add value in the real world."})]}),r.jsxs("a",{href:"https://www.skills.google/course_templates/388",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.skills.google/course_templates/388"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Skills"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Responsible AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"How to operationalise responsible AI in your organisation."})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(V0,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"NVIDIA DLI Courses"})]}),r.jsx("h3",{className:"text-lg font-medium text-white mb-4",children:"Understanding How AI Works"}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6 mb-8",children:[r.jsxs("a",{href:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-FX-07+V1",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-FX-07+V1"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Generative AI Explained"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Foundational concepts, applications, and opportunities in generative AI."})]}),r.jsxs("a",{href:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+T-FX-01+V1",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+T-FX-01+V1"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Building A Brain in 10 Minutes"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Quick hands-on introduction to neural networks with Python."})]}),r.jsxs("a",{href:"https://academy.nvidia.com/en/course/ai-for-all-from-basics-to-genai-practice/?cm=81220",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://academy.nvidia.com/en/course/ai-for-all-from-basics-to-genai-practice/?cm=81220"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI for All: From Basics to GenAI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"AI fundamentals, GenAI, AI agents, and GPU computing — 2.5 hours."})]})]}),r.jsx("h3",{className:"text-lg font-medium text-white mb-4",children:"Getting Technical"}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6 mb-8",children:[r.jsxs("a",{href:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-RX-02+V2",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-RX-02+V2"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Getting Started with AI on Jetson Nano"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Train and deploy AI models on NVIDIA Jetson Nano."})]}),r.jsxs("a",{href:"https://courses.nvidia.com/courses/course-v1:DLI+L-DC-01+V1/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://courses.nvidia.com/courses/course-v1:DLI+L-DC-01+V1/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"NVIDIA DLI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Introduction to AI in the Data Center"}),r.jsx("p",{className:"text-sm text-gray-400",children:"AI concepts, GPU architecture, and deploying AI workloads."})]}),r.jsxs("a",{href:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+T-AC-01+V1",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+T-AC-01+V1"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"An Even Easier Introduction to CUDA"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Beginner-friendly introduction to GPU programming with CUDA."})]}),r.jsxs("a",{href:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-AC-04+V2",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-AC-04+V2"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"NVIDIA DLI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Accelerated Computing with CUDA C/C++"}),r.jsx("p",{className:"text-sm text-gray-400",children:"GPU acceleration fundamentals with hands-on CUDA labs."})]})]}),r.jsx("h3",{className:"text-lg font-medium text-white mb-4",children:"Enterprise & Deployment"}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6 mb-8",children:[r.jsxs("a",{href:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-FX-23+V1",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-FX-23+V1"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"NVIDIA NIM Microservices"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Deploy and work with NVIDIA NIM inference microservices."})]}
313),r.jsxs("a",{href:"https://www.nvidia.com/en-us/learn/learning-path/generative-ai-llm/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.nvidia.com/en-us/learn/learning-path/generative-ai-llm/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"NVIDIA DLI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Generative AI with NeMo"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Customize and fine-tune LLMs using the NeMo Framework."})]})]}),r.jsx("h3",{className:"text-lg font-medium text-white mb-4",children:"Industry Applications"}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsxs("a",{href:"https://www.nvidia.com/en-us/learn/ai-learning-essentials/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.nvidia.com/en-us/learn/ai-learning-essentials/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"NVIDIA DLI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Generative AI in Digital Health"}),r.jsx("p",{className:"text-sm text-gray-400",children:"AI-driven healthcare applications, clinical trials, and patient interactions."})]}),r.jsxs("a",{href:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-FX-31+V1",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.nvidia.com/courses/course-detail?course_id=course-v1:DLI+S-FX-31+V1"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"NVIDIA DLI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Weather Models with NVIDIA Earth-2"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Hands-on AI-driven global weather forecasting with Earth2Studio."})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(uD,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"IBM watsonx Orchestrate"})]}),r.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[r.jsxs("a",{href:"https://developer.ibm.com/tutorials/getting-started-with-watsonx-orchestrate/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://developer.ibm.com/tutorials/getting-started-with-watsonx-orchestrate/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium bg-white/10 px-2 py-1 rounded",style:{color:"#D4A843"},children:"IBM Developer"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Get Started with watsonx Orchestrate"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Build agents fast — no-code to pro-code. From prebuilt agents to real workflows and ADK-based development."})]}),r.jsxs("a",{href:"https://developer.ibm.com/learningpaths/watsonx-orchestrate-agentic-standards/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://developer.ibm.com/learningpaths/watsonx-orchestrate-agentic-standards/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium bg-white/10 px-2 py-1 rounded",style:{color:"#D4A843"},children:"IBM Developer"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agentic Standards & Interoperability"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Hands-on with MCP, A2A, ContextForge MCP Gateway, and external OpenAI APIs. Agents that talk to other agents and tools."})]}),r.jsxs("a",{href:"https://developer.ibm.com/learningpaths/watsonx-orchestrate-multiagent-orchestration/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://developer.ibm.com/learningpaths/watsonx-orchestrate-multiagent-orchestration/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium bg-white/10 px-2 py-1 rounded",style:{color:"#D4A843"},children:"IBM Developer"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Multi-Agent Orchestration"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Design and run multi-agent systems using Langflow, Granite 4.0, Anthropic, Groq, Agentic RAG, custom UIs, and AI Gateway patterns."})]}),r.jsxs("a",{href:"https://developer.ibm.com/learningpaths/watsonx-orchestrate-agentops/observability-langfuse-telemetry",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://developer.ibm.com/learningpaths/watsonx-orchestrate-agentops/observability-langfuse-telemetry"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium bg-white/10 px-2 py-1 rounded",style:{color:"#D4A843"},children:"IBM Developer"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AgentOps with watsonx Orchestrate"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Instrument, observe, and evaluate agents using Langfuse, IBM Telemetry, and evaluation frameworks."})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(dD,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"MIT Books on AI"})]}),r.jsx("div",{className:"grid md:grid-cols-3 gap-6 mb-8",children:r.jsxs("a",{href:"https://ocw.mit.edu/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all md:col-span-3",children:[r.jsx(R,{url:"https://ocw.mit.edu/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"MIT OpenCourseWare"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"MIT OpenCourseWare"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Free, open access to MIT course materials — including AI, machine learning, and data science curricula from one of the world's leading research universities."})]})}),r.jsx("h3",{className:"text-lg font-medium text-white mb-4",children:"Foundations"}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6 mb-8",children:[r.jsxs("a",{href:"https://mitpress.mit.edu/9780262039406/foundations-of-machine-learning/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://mitpress.mit.edu/9780262039406/foundations-of-machine-learning/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"MIT Press"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Foundations of Machine Learning"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Core algorithms explained. Theory meets practice."})]}),r.jsxs("a",{href:"https://udlbook.github.io/udlbook/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://udlbook.github.io/udlbook/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Understanding Deep Learning"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Neural networks demystified. Visual explanations included."})]}),r.jsxs("a",{href:"https://mlsysbook.ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://mlsysbook.ai/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Machine Learning Systems"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Production-ready architecture. System design principles."})]})]}),r.jsx("h3",{className:"text-lg font-medium text-white mb-4",children:"Advanced Techniques"}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6 mb-8",children:[r.jsxs("a",{href:"https://algorithmsbook.com",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://algorithmsbook.com"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"MIT Press"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Algorithms for ML"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Computational thinking simplified. Decision-making frameworks."})]}),r.jsxs("a",{href:"https://www.deeplearningbook.org/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearningbook.org/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Deep Learning"}),r.jsx("p",{className:"text-sm text-gray-400",children:"The definitive textbook by Goodfellow, Bengio & Courville."})]})]}),r.jsx("h3",{className:"text-lg font-medium text-white mb-4",children:"Reinforcement Learning"}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6 mb-8",children:[r.jsxs("a",{href:"http://incompleteideas.net/book/the-book-2nd.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"RL Basics (Sutton & Barto)"}),r.jsx("p",{className:"text-sm text-gray-400",children:"The classic. Agent training fundamentals."})]}),r.jsxs("a",{href:"https://www.distributional-rl.org/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.distributional-rl.org/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Distributional RL"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Beyond expected rewards. Advanced theory."})]}),r.jsxs("a",{href:"https://marl-book.com",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://marl-book.com"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"MIT Press"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Multi-Agent Systems"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Agents working together. Coordination and competition."})]}),r.jsxs("a",{href:"https://mitpress.mit.edu/9780262549424/agents-in-the-long-game-of-ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://mitpress.mit.edu/9780262549424/agents-in-the-long-game-of-ai/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"MIT Press"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agents in the Long Game of AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Strategic agent design. Future-focused thinking."})]})]}),r.jsx("h3",{className:"text-lg font-medium text-white mb-4",children:"Ethics & Probability"}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsxs("a",{href:"https://fairmlbook.org",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://fairmlbook.org"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Fairness in ML"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Bias detection. Responsible AI practices."})]}),r.jsxs("a",{href:"https://probml.github.io/pml-book/book1.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://probml.github.io/pml-book/book1.html"}),r.jsxs("div",{cl
313assName:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Probabilistic ML: An Introduction"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Kevin Murphy's comprehensive introduction to probabilistic ML."})]}),r.jsxs("a",{href:"https://probml.github.io/pml-book/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://probml.github.io/pml-book/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Free"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Probabilistic ML: Advanced Topics"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Kevin Murphy's advanced volume on probabilistic methods."})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(Xj,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"Executive"})]}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsxs("a",{href:"https://github.com/microsoft/generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-microsoft-genai",children:[r.jsx(R,{url:"https://github.com/microsoft/generative-ai-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Microsoft GenAI (21-lesson series)"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Comprehensive open-source course from Microsoft."})]}),r.jsxs("a",{href:"https://grow.google/ai-essentials/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-google-essentials",children:[r.jsx(R,{url:"https://grow.google/ai-essentials/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Certificate"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Google AI Essentials"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Official Google course with free certificate."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-prompt-engineering",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Advanced"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Prompt Engineering — DeepLearning.AI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Master effective prompts for ChatGPT and beyond."})]}),r.jsxs("a",{href:"https://see.stanford.edu/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-see-stanford",children:[r.jsx(R,{url:"https://see.stanford.edu/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Stanford"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Stanford Engineering Everywhere"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Free Stanford engineering courses including AI, ML, and programming — full lectures and materials."})]}),r.jsxs("a",{href:"https://cs221.stanford.edu/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-cs221",children:[r.jsx(R,{url:"https://cs221.stanford.edu/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Stanford"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"CS221 — Artificial Intelligence"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Stanford's flagship AI course covering core concepts."})]}),r.jsxs("a",{href:"https://www.youtube.com/@AndrejKarpathy",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-karpathy",children:[r.jsx(R,{url:"https://www.youtube.com/@AndrejKarpathy"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"YouTube"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Andrej Karpathy"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Former Tesla AI Director's deep-dive tutorials on neural networks."})]}),r.jsxs("a",{href:"https://www.youtube.com/@stanfordonline",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-stanford-online",children:[r.jsx(R,{url:"https://www.youtube.com/@stanfordonline"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Stanford"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Stanford Online"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Full Stanford courses on AI, ML, and computer science."})]}),r.jsxs("a",{href:"https://cs229.stanford.edu/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-cs229",children:[r.jsx(R,{url:"https://cs229.stanford.edu/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Stanford"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"CS229 — Machine Learning"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Stanford's graduate-level machine learning course."})]}),r.jsxs("a",{href:"https://cs230.stanford.edu/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-cs230",children:[r.jsx(R,{url:"https://cs230.stanford.edu/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Stanford"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"CS230 — Deep Learning"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Stanford's deep learning specialization course."})]}),r.jsxs("a",{href:"https://www.youtube.com/@mitocw",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-m
313it-ocw",children:[r.jsx(R,{url:"https://www.youtube.com/@mitocw"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"MIT"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"MIT OpenCourseWare"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Free MIT courses on AI, algorithms, and computer science."})]}),r.jsxs("a",{href:"https://www.youtube.com/@MattWolfe",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-matt-wolfe",children:[r.jsx(R,{url:"https://www.youtube.com/@MattWolfe"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"YouTube"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Matt Wolfe — Future Tools"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Weekly AI news and tool reviews for business applications."})]}),r.jsxs("a",{href:"https://www.youtube.com/@aiadvantage",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all","data-testid":"link-ai-advantage",children:[r.jsx(R,{url:"https://www.youtube.com/@aiadvantage"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"YouTube"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Advantage"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Practical AI tutorials for productivity and business growth."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/multi-ai-agent-systems-with-crewai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/multi-ai-agent-systems-with-crewai/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Advanced"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Multi-Agent Systems with CrewAI"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Build and evaluate multi-agent AI systems."})]}),r.jsxs("a",{href:"https://www.coursera.org/learn/multi-agent-systems",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.coursera.org/learn/multi-agent-systems"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Coursera"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Multi-Agent System Design"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Design of multi-agent systems for enterprise applications."})]}),r.jsxs("a",{href:"https://www.deeplearning.ai/short-courses/red-teaming-llm-applications/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.deeplearning.ai/short-courses/red-teaming-llm-applications/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Security"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Reliable AI via Guardrails"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Implementation of guardrails for reliable AI systems."})]}),r.jsxs("a",{href:"https://www.coursera.org/learn/strategic-management",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.coursera.org/learn/strategic-management"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Copenhagen"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Strategic Management"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Master tools to build and evaluate long-term strategies."})]}),r.jsxs("a",{href:"https://www.coursera.org/specializations/strategic-leadership-impact-change-decision-making",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.coursera.org/specializations/strategic-leadership-impact-change-decision-making"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Coursera"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Strategic Leadership & Impact"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Strategic leadership for impact, change and decision-making."})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(Tx,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"AI Agents"})]}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsxs("a",{href:"https://learn.microsoft.com/en-us
313/shows/ai-agents-for-beginners/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/shows/ai-agents-for-beginners/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Agents for Beginners"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Microsoft's beginner-friendly introduction to AI Agents."})]}),r.jsxs("a",{href:"https://codelabs.developers.google.com/devsite/codelabs/building-ai-agents-vertexai",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://codelabs.developers.google.com/devsite/codelabs/building-ai-agents-vertexai"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google Cloud"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Intro to AI Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Google Cloud's introduction to AI Agents concepts."})]}),r.jsxs("a",{href:"https://www.ibm.com/think/topics/ai-agents",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.ibm.com/think/topics/ai-agents"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"IBM"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"What are AI Agents?"}),r.jsx("p",{className:"text-sm text-gray-400",children:"IBM's comprehensive explanation of AI Agents fundamentals."})]}),r.jsxs("a",{href:"https://academy.openai.com/public/videos/how-to-build-ai-agents-2025-06-04",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://academy.openai.com/public/videos/how-to-build-ai-agents-2025-06-04"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"OpenAI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Building AI Agents — OpenAI Academy"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Official OpenAI course on building AI Agents and Assistants."})]}),r.jsxs("a",{href:"https://huggingface.co/learn/agents-course/en/unit0/introduction",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://huggingface.co/learn/agents-course/en/unit0/introduction"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Hugging Face"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Agent Courses by Level"}),r.jsx("p",{className:"text-sm text-gray-400",children:"9+ free courses divided by experience level."})]}),r.jsxs("a",{href:"https://cdn.openai.com/business-guides-and-resources/a-practical-guide-to-building-agents.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://cdn.openai.com/business-guides-and-resources/a-practical-guide-to-building-agents.pdf"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"OpenAI"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Practical Guide to Building Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"OpenAI's practical guide to building effective AI Agents."})]}),r.jsxs("a",{href:"https://docs.anthropic.com/en/docs/build-with-claude/tool-use",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://docs.anthropic.com/en/docs/build-with-claude/tool-use"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Anthropic"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Building Effe
313ctive AI Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Anthropic's comprehensive guide to building AI Agents."})]}),r.jsxs("a",{href:"https://docs.aws.amazon.com/prescriptive-guidance/latest/agentic-ai-frameworks-protocols-tools/introduction.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://docs.aws.amazon.com/prescriptive-guidance/latest/agentic-ai-frameworks-protocols-tools/introduction.html"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"AWS"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agentic AI Frameworks (70+ pages)"}),r.jsx("p",{className:"text-sm text-gray-400",children:"AWS comprehensive guide to agentic AI frameworks and tools."})]}),r.jsxs("a",{href:"https://docs.cohere.com/docs/building-an-agent-with-cohere",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://docs.cohere.com/docs/building-an-agent-with-cohere"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Cohere"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Building Enterprise Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Cohere's guide for secure, scalable agentic AI solutions."})]}),r.jsxs("a",{href:"https://www.mckinsey.com/capabilities/quantumblack/our-insights/seizing-the-agentic-ai-advantage",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://www.mckinsey.com/capabilities/quantumblack/our-insights/seizing-the-agentic-ai-advantage"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"McKinsey"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Seizing the Agentic AI Advantage"}),r.jsx("p",{className:"text-sm text-gray-400",children:"CEO playbook for implementing transformative agentic AI."})]}),r.jsxs("a",{href:"https://kpmg.com/us/en/articles/2025/the-agentic-ai-advantage.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://kpmg.com/us/en/articles/2025/the-agentic-ai-advantage.html"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"KPMG"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"The Agentic AI Advantage"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Executive-level playbook for AI Agents across domains."})]}),r.jsxs("a",{href:"https://research.google/pubs/an-introduction-to-googles-approach-for-secure-ai-agents/",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://research.google/pubs/an-introduction-to-googles-approach-for-secure-ai-agents/"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Agent Security Framework"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Google's framework for securing AI agents."})]}
313),r.jsxs("a",{href:"https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ai-agents/data-architecture-plan",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ai-agents/data-architecture-plan"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft Azure"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Data Architecture for AI Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Microsoft's Cloud Adoption Framework for planning AI agent data architecture."})]}),r.jsxs("a",{href:"https://mitsloan.mit.edu/ideas-made-to-matter/agentic-ai-explained",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://mitsloan.mit.edu/ideas-made-to-matter/agentic-ai-explained"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"MIT Sloan"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agentic AI Explained"}),r.jsx("p",{className:"text-sm text-gray-400",children:"MIT Sloan's explainer on what agentic AI is and why it matters for business leaders."})]}),r.jsxs("a",{href:"https://github.com/langchain-ai/langgraph-cua-py",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/langchain-ai/langgraph-cua-py"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"LangGraph: Computer Using Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Build AI agents that interact with computers like humans — browser, CLI, and mouse cursor."})]}),r.jsxs("a",{href:"https://github.com/langchain-ai/open_deep_research",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/langchain-ai/open_deep_research"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"LangGraph: Deep Research Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Collaborative multi-agent system to build extensively researched reports from large number of sources."})]}),r.jsxs("a",{href:"https://github.com/microsoft/autogen/tree/main/python/packages/autogen-magentic-one",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/microsoft/autogen"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Microsoft Magentic-One"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Microsoft's generalist multi-agent framework built on AutoGen for web and file-based tasks."})]}),r.jsxs("a",{href:"https://github.com/microsoft/semantic-kernel",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/microsoft/semantic-kernel"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Microsoft Semantic Kernel"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Enterprise-grade AI orchestration SDK from Microsoft supporting multiple LLMs and agent patterns."})]}),r.jsxs("a",{href:"https://github.com/i-am-bee/bee-agent-framework",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/i-am-bee/bee-agent-framework"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"IBM Bee Agent Framework"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Production-ready TypeScript framework with built-in tools, state management, and observability."})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(Xj,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"Open-Source AI Courses"})]}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[r.jsxs("a",{href:"https://github.com/aishwaryanr/awesome-generative-ai-guide",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/aishwaryanr/awesome-generative-ai-guide"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Awesome Generative AI Guide"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Curated generative AI learning hub with resources and tutorials. (22.4k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/punkpeye/awesome-mcp-servers",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/punkpeye/awesome-mcp-servers"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Curated MCP Server Implementations"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Collection of Model Context Protocol server implementations. (76.9k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/NirDiamant/GenAI_Agents",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/NirDiamant/GenAI_Agents"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"GenAI Agent Tutorials"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Comprehensive tutorials and implementations for GenAI agents. (18.7k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/HandsOnLLM/Hands-On-Large-Language-Models",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/HandsOnLLM/Hands-On-Large-Language-Models"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Hands-On Large Language Models"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Practical hands-on guide to working with large language models. (18.7k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/GokuMohandas/Made-With-ML",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/GokuMohandas/Made-With-ML"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Made With ML"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Practical ML and GenAI projects for real-world applications. (45.2k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/microsoft/ai-agents-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/microsoft/ai-agents-for-beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Microsoft"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"AI Agents for Beginners"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Microsoft's open-source course on building AI agents. (47.3k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/dair-ai/Prompt-Engineering-Guide",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/dair-ai/Prompt-Engineering-Guide"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Prompt Engineering Deep Dive Guide"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Comprehensive guide to prompt engineering techniques and best practices. (67.9k ⭐)"})]}),r.jsxs("a",{href:"https://drive.google.com/file/d/1vNeBbxptU91i2gMCCVGAfWKuQgoieXtp/view",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://drive.google.com/file/d/1vNeBbxptU91i2gMCCVGAfWKuQgoieXtp/view"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"Google"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Google's Prompting Guide (71 pages)"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Google's complete whitepaper on prompt engineering techniques, structure, and best practices."})]}),r.jsxs("a",{href:"https://github.com/NirDiamant/RAG_Techniques",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/NirDiamant/RAG_Techniques"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Practical RAG Techniques"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Practical RAG techniques and examples for building AI a
313pplications. (23.6k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/Shubhamsaboo/awesome-llm-apps",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/Shubhamsaboo/awesome-llm-apps"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Real LLM Apps with Agents & RAG"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Collection of real-world LLM applications with agents and RAG patterns. (83.4k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/x1xhlol/system-prompts-and-models-of-ai-tools"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"System Prompts for Reliable Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Proven system prompts and models for building reliable AI agents. (101k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/mlabonne/llm-course",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/mlabonne/llm-course"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"LLM Course — Complete Roadmap"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Comprehensive LLM development roadmap covering architecture, pre-training, fine-tuning, and deployment with interactive notebooks."})]}),r.jsxs("a",{href:"https://github.com/neural-maze/philoagents-course",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/neural-maze/philoagents-course"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"PhiloAgents — Production Reality"}),r.jsx("p",{className:"text-sm text-gray-400",children:"What nobody else shows you — real-world agent deployment insights from production."})]}),r.jsxs("a",{href:"https://github.com/NirDiamant/agents-towards-production",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/NirDiamant/agents-towards-production"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agents Towards Production"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Step-by-step guide to building every component of a GenAI agent stack. (8.7k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/ashishpatel26/500-AI-Agents-Projects",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/ashishpatel26/500-AI-Agents-Projects"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"500+ AI Agents Projects"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Collection across CrewAI, AutoGen, Agno, LangGraph with working code for finance, legal, and supply chain use cases."})]}),r.jsxs("a",{href:"https://github.com/msitarzewski/agency-agents",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/msitarzewski/agency-agents"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Agency Agents"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Practical AI agent templates and patterns for building multi-agent workflows and autonomous systems."})]}),r.jsxs("a",{href:"https://github.com/donnemartin/system-design-primer",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/donnemartin/system-design-primer"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"System Design Primer"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Learn to design large-scale systems with interview questions, Anki flashcards, and real-world examples. (322k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/ByteByteGoHq/system-design-101",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/ByteByteGoHq/system-design-101"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"System Design 101 — ByteByteGo"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Complex systems explained with visuals. Covers protocols, CI/CD, microservices, DevOps, APIs. (75.6k ⭐)"})]}),r.jsxs("a",{href:"https://github.com/microsoft/Data-Science-For-Beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"group bg-[#111111] rounded-xl p-6 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(R,{url:"https://github.com/microsoft/Data-Science-For-Beginners"}),r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs font-medium text-gray-400 bg-white/10 px-2 py-1 rounded",children:"GitHub"}),r.jsx(S,{className:"h-4 w-4 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-2",children:"Data Science For Beginners — Microsoft"}),r.jsx("p",{className:"text-sm text-gray-400",children:"Microsoft's 10-week beginner-friendly curriculum with real projects. (14.5k ⭐)"})]})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(cs,{className:"h-6 w-6",style:{color:"#D4A843"}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"Claude Code Skills"})]}),r.jsx("p",{className:"text-sm text-gray-500 mb-6",children:"Educational insights only. No affiliation or endorsement."}),r.jsxs("div",{className:"space-y-8",children:[r.jsxs("div",{children:[r.jsx("h3",{className:"text-lg font-semibold text-white mb-4",children:"Official Docs"}),r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:[{name:"The Unofficial Guide",description:"A comprehensive, hands-on guide to Claude Code from real-world usage.",url:"https://charliehills.substack.com/p/i-fired-my-team-and-hired-claude"},{name:"Best Practices Guide",description:"Official best practices for building with Agent Skills.",url:"https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices"},{name:"Skills Documentation",description:"Official overview of Agent Skills architecture, API, and usage.",url:"https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview"},{name:"API Reference",description:"Complete Claude platform API reference documentation.",url:"https://platform.claude.com/docs/en/api/overview"},{name:"MCP Documentation",description:"Model Context Protocol — the open standard for connecting AI to external systems.",url:"https://modelcontextprotocol.io/"}].map(n=>r.jsxs("a",{href:n.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"group flex items-start gap-3 bg-[#111111] rounded-xl p-4 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(cs,{className:"h-5 w-5 mt-0.5 flex-shrink-0",style:{color:"#D4A843"}}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("h4",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors",children:n.name}),r.jsx("p",{className:"text-xs text-gray-500 mt-1",children:n.description})]}),r.jsx(S,{className:"h-4 w-4 flex-shrink-0 mt-0.5 transition-colors",style:{color:"#D4A843"}})]},n.name))})]}),r.jsxs("div",{children:[r.jsx("h3",{className:"text-lg font-semibold text-white mb-4",children:"Blog Posts"}),r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:[{name:"Introducing Agent Skills",description:"Anthropic's official announcement of Agent Skills for Claude.",url:"https://claude.com/blog/skills"},{name:"Engineering Blog",description:"Deep dive into equipping agents for the real world with Agent Skills.",url:"https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills"},{name:"Skills Explained",description:"How Claude Code Skills work, from discovery to execution.",url:"https://www.claude.com/blog/skills-explained"},{name:"How to Create Skills",description:"Key steps, limitations, and examples for building your own Skills.",url:"https://www.claude.com/blog/how-to-create-skills-key-steps-limitations-and-examples"},{name:"Skills for Claude Code",description:"Building and deploying Skills specifically for Claude Code workflows.",url:"https://www.claude.com/blog/building-skills-for-claude-code"}
313,{name:"Frontend Design Skills",description:"How Skills improve frontend design quality and eliminate AI slop.",url:"https://www.claude.com/blog/improving-frontend-design-through-skills"}].map(n=>r.jsxs("a",{href:n.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"group flex items-start gap-3 bg-[#111111] rounded-xl p-4 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(cs,{className:"h-5 w-5 mt-0.5 flex-shrink-0",style:{color:"#D4A843"}}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("h4",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors",children:n.name}),r.jsx("p",{className:"text-xs text-gray-500 mt-1",children:n.description})]}),r.jsx(S,{className:"h-4 w-4 flex-shrink-0 mt-0.5 transition-colors",style:{color:"#D4A843"}})]},n.name))})]}),r.jsxs("div",{children:[r.jsx("h3",{className:"text-lg font-semibold text-white mb-4",children:"Example Skills"}),r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:[{name:"Anthropic's Official Library",description:"Official repository of Agent Skills created and maintained by Anthropic.",url:"https://github.com/anthropics/skills"},{name:"Partner Skills Directory",description:"Browse partner-built Skills from Atlassian, Canva, Figma, Notion, and more.",url:"https://claude.com/connectors"}].map(n=>r.jsxs("a",{href:n.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"group flex items-start gap-3 bg-[#111111] rounded-xl p-4 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(cs,{className:"h-5 w-5 mt-0.5 flex-shrink-0",style:{color:"#D4A843"}}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("h4",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors",children:n.name}),r.jsx("p",{className:"text-xs text-gray-500 mt-1",children:n.description})]}),r.jsx(S,{className:"h-4 w-4 flex-shrink-0 mt-0.5 transition-colors",style:{color:"#D4A843"}})]},n.name))})]}),r.jsxs("div",{children:[r.jsx("h3",{className:"text-lg font-semibold text-white mb-4",children:"Community Libraries"}),r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:[{name:"Skills.sh",description:"Community-driven Skills sharing platform.",url:"https://skills.sh"},{name:"SkillsMP",description:"Marketplace for discovering and sharing Claude Code Skills.",url:"https://skillsmp.com"},{name:"Smithery",description:"Browse and discover community-built Skills for Claude.",url:"https://smithery.ai/skills"},{name:"SkillHub",description:"Community hub for Claude Code Skills and resources.",url:"https://skillhub.club"}].map(n=>r.jsxs("a",{href:n.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"group flex items-start gap-3 bg-[#111111] rounded-xl p-4 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(cs,{className:"h-5 w-5 mt-0.5 flex-shrink-0",style:{color:"#D4A843"}}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("h4",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors",children:n.name}),r.jsx("p",{className:"text-xs text-gray-500 mt-1",children:n.description})]}),r.jsx(S,{className:"h-4 w-4 flex-shrink-0 mt-0.5 transition-colors",style:{color:"#D4A843"}})]},n.name))})]}),r.jsxs("div",{children:[r.jsx("h3",{className:"text-lg font-semibold text-white mb-4",children:"Anthropic Courses"}),r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:[{name:"Claude Code in Action",description:"Hands-on course for building with Claude Code.",url:"https://anthropic.skilljar.com/claude-code-in-action"},{name:"Building with the Claude API",description:"Learn to build applications using the Claude API.",url:"https://anthropic.skilljar.com/claude-with-the-anthropic-api"},{name:"Introduction to MCP",description:"Introduction to Model Context Protocol for connecting AI to external systems.",url:"https://anthropic.skilljar.com/introduction-to-model-context-protocol"},{name:"MCP: Advanced Topics",description:"Advanced Model Context Protocol concepts and implementation.",url:"https://anthropic.skilljar.com/model-context-protocol-advanced-topics"},{name:"Introduction to Agent Skills",description:"Learn how to build and use Agent Skills for Claude.",url:"https://anthropic.skilljar.com/introduction-to-agent-skills"},{name:"Claude 101",description:"Foundational course on using Claude effectively.",url:"https://anthropic.skilljar.com/claude-101"},{name:"Introduction to Claude Cowork",description:"Use Claude for collaborative work — how to integrate Claude into team workflows and real-world tasks.",url:"https://anthropic.skilljar.com/introduction-to-claude-cowork"},{name:"AI Fluency: Framework & Foundations",description:"Core framework for understanding and applying AI fluency.",url:"https://anthropic.skilljar.com/ai-fluency-framework-foundations"},{name:"AI Fluency for Educators",description:"AI fluency tailored for education professionals.",url:"https://anthropic.skilljar.com/ai-fluency-for-educators"}
313,{name:"AI Fluency for Students",description:"AI fluency designed for student learners.",url:"https://anthropic.skilljar.com/ai-fluency-for-students"},{name:"Teaching AI Fluency",description:"Guide for teaching AI fluency in educational settings.",url:"https://anthropic.skilljar.com/teaching-ai-fluency"},{name:"AI Fluency for Nonprofits",description:"AI fluency adapted for nonprofit organizations.",url:"https://anthropic.skilljar.com/ai-fluency-for-nonprofits"},{name:"Claude with Amazon Bedrock",description:"Deploy and use Claude through Amazon Bedrock.",url:"https://anthropic.skilljar.com/claude-in-amazon-bedrock"},{name:"Claude with Google Vertex AI",description:"Deploy and use Claude through Google Cloud's Vertex AI.",url:"https://anthropic.skilljar.com/claude-with-google-vertex"}].map(n=>r.jsxs("a",{href:n.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"group flex items-start gap-3 bg-[#111111] rounded-xl p-4 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(cs,{className:"h-5 w-5 mt-0.5 flex-shrink-0",style:{color:"#D4A843"}}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("h4",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors",children:n.name}),r.jsx("p",{className:"text-xs text-gray-500 mt-1",children:n.description})]}),r.jsx(S,{className:"h-4 w-4 flex-shrink-0 mt-0.5 transition-colors",style:{color:"#D4A843"}})]},n.name))})]})]})]}),r.jsx("div",{className:"pt-8 border-t border-gray-200",children:r.jsx("p",{className:"text-xs text-gray-500 leading-relaxed text-center max-w-3xl mx-auto",children:"Linked for educational purposes only. No affiliation or endorsement."})})]})})]}),t&&r.jsx(ht,{})]}),Oc="#D4A843";function tW(){return r.jsxs(r.Fragment,{children:[r.jsxs("div",{id:"youtube-learning-channels",className:"scroll-mt-24",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(sd,{className:"h-6 w-6",style:{color:Oc}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"YouTube Channels for Learning AI"})]}),r.jsx("p",{className:"text-sm text-gray-500 mb-6",children:"Educational insights only. No affiliation or endorsement."}),r.jsx("div",{className:"space-y-10",children:[{title:"Official & Technical Channels",channels:KD},{title:"Independent AI Educators & Voices",channels:YD}].map(e=>r.jsxs("div",{children:[r.jsx("h3",{className:"text-xs font-semibold tracking-widest uppercase mb-4",style:{color:Oc},children:e.title}),r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:e.channels.map(t=>r.jsxs("a",{href:t.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"group flex items-start gap-3 bg-[#111111] rounded-xl p-4 border border-white/10 hover:border-[#D4A843]/40 transition-all",children:[r.jsx(sd,{className:"h-5 w-5 mt-0.5 flex-shrink-0",style:{color:Oc}}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[r.jsx("h4",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors",children:t.name}),t.source_type==="Official"&&r.jsx("span",{className:"text-[9px] font-semibold tracking-wider uppercase px-1.5 py-0.5 rounded border border-[#D4A843]/30 text-[#D4A843]",children:"Official"})]}),r.jsx("p",{className:"text-xs text-gray-500 mt-1 line-clamp-2",children:t.description})]}),r.jsx(S,{className:"h-4 w-4 text-gray-400 group-hover:text-[#D4A843] transition-colors flex-shrink-0 mt-0.5"})]},t.id))})]},e.title))})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[r.jsx(sd,{className:"h-6 w-6",style:{color:Oc}}),r.jsx("h2",{className:"text-2xl font-semibold text-white",children:"YouTube Videos for AI in Finance"})]}),r.jsx("p",{className:"text-sm text-gray-500 mb-6",children:"Educational insights only. No affiliation or endorsement."}),r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:[{name:"Bojan Radojicic",title:"How to build Finance model 10x Faster with AI",url:"https://www.youtube.com/watch?v=79AEXjBqAJ4&t=44s"},{name:"Nicolas Boucher",title:"Top 10 AI Tools For Finance You MUST Know in 2025",url:"https://www.youtube.com/watch?v=ZS0j-BtNoms"},{name:"David Fortin, CPA",title:"Microsoft Copilot Full Course For Beginners [2025]",url:"https://www.youtube.com/watch?v=bBqTdOkso2Y"},{name:"Bojan Radojicic",title:"Best AI Tools For Finance: 10X Your Productivity",url:"https://www.youtube.com/watch?v=DCygtlQpRzc&t=14s"},{name:"Josh Aharonoff, CPA",title:"AI Accountants Are Here – Should You Be Worried? (QuickBooks AI Agents)",url:"https://www.youtube.com/watch?v=Ci4UogS3m5s"},{name:"Bojan Radojicic",title:"How Finance Teams Save 50% Time with Genspark AI (5 Killer Hacks)",url:"https://www.youtube.com/watch?v=QXMvzHdWaKA&t=7s"},{name:"Nicolas Boucher",title:"How I Perform a Financial Analysis With AI in 5 Minutes",url:"https://www.youtube.com/watch?v=wiOx3xsILPM"},{name:"Leila Gharani",title:"Bring ChatGPT INSIDE Excel to Solve ANY Problem Lightning FAST",url:"https://www.youtube.com/watch?v=kQPUWryXwag"},{name:"Bojan Radojicic",title:"The FUTURE of FP&A: 7 AI Hacks Your Team MUST Adopt in 2025",url:"https://www.youtube.com/watch?v=aHRp1CGG40s&t=5s"},{name:"Mynda Treacy",title:"NEW Excel COPILOT Function Will Replace Half of What You Do",url:"https://www.youtube.com/watch?v=ITjl7J7zJro"},{name:"Bojan Radojicic",title:"9 AI Prompts That Will TRANSFORM the Way You Work in Finance Forever",url:"https://www.youtube.com/watch?v=1EYvg7wAwzw"},{name:"Josh Aharonoff, CPA",title:"I Built 4 BEAUTIFUL Dashboards with Excel's Copilot",url:"https://www.youtube.com/watch?v=3Q4NeGAC0gM"},{name:"Nicolas Boucher",title:"How to Use ChatGPT 5 to Build INSANE Financial Models",url:"https://www.youtube.com/watch?v=EfIZxsobyVI"},{name:"Bojan Radojicic",title:"10 ChatGPT Practical Tips for Financial Analysts in 2025",url:"https://www.youtube.com/watch?v=3U-OmnW7u4g&t=143s"},{name:"David Fortin, CPA",title:"How to Install Copilot in Excel in 2025",url:"https://www.youtube.com/watch?v=Fmn_CZiOJCE"},{name:"Nicolas Boucher",title:"How to Train Your Finance Team on AI in 30 Days (Full Guide)",url:"https://www.youtube.com/watch?v=Qc99kkGVc_E"},{name:"David Fortin, CPA",title:"How to Build Your First Microsoft Copilot 365 Agent (Step-by-Step Tutorial)",url:"https://www.youtube.com/watch?v=K3lyfJ-2RXQ"},{name:"Leila Gharani",title:"Don't Use ChatGPT Until You Watch This Video",url:"https://www.youtube.com/watch?v=wBAnCMA98ls"},{name:"Christian Wattig",title:"How AI is Changing FP&A (& How to Survive)",url:"https://www.youtube.com/watch?v=ahhKsQQcmG0"},{name:"Mynda Treacy",title:"The Best AI Finance Tool Experts Will Ever Need (Free File)",url:"https://www.youtube.com/watch?v=F26bwVgD_lg"}].map(e=>r.jsxs("a",{href:e.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"group flex items-start gap-3 bg-[#111111] rounded-xl p-4 border border-white/10 hover:border-green-400/40 transition-all",children:[r.jsx(sd,{className:"h-5 w-5 mt-0.5 flex-shrink-0",style:{color:Oc}}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("h3",{className:"text-sm font-semibold text-white group-hover:text-green-600 transition-colors",children:e.title}),r.jsx("p",{className:"text-xs text-gray-500 mt-1",children:e.name})]}),r.jsx(S,{className:"h-4 w-4 text-gray-400 group-hover:text-green-600 transition-colors flex-shrink-0 mt-0.5"})]},e.title))})]})]})}const nW=({showSEO:e=!0,showFooter:t=!0})=>r.jsxs(r.Fragment,{children:[e&&r.jsx(Xe,{title:"Strategic Research Signals - PrivateEquity.AI",description:"Curated global research shaping enterprise AI, organizational transformation, and digital readiness",canonicalUrl:"/learning",keywords:"AI research, enterprise AI, digital transformation, strategic research"}),r.jsxs("div",{className:"dense-content-page dense-research-page min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A]",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-20 md:py-28 max-w-4xl",children:[r.jsx("h1",{className:"text-4xl md:text-5xl font-light tracking-tight text-white mb-4",children:"Strategic Research Signals"}),r.jsx("p",{className:"text-base text-gray-400 max-w-2xl mb-3",children:"Curated institutional research on AI strategy, enterprise transformation, and the forces reshaping value creation in private capital."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Educational insights only. No affiliation or endorsement."})]})}),r.jsx("section",{id:"research",className:"elevated-section scroll-mt-24 py-16 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsxs("div",{className:"grid md:grid-cols-2 gap-8",children:[r.jsxs("div",{className:"md:col-span-2 bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full flex-shrink-0",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"Agentic AI Strategy Playbooks"})]}),r.jsxs("div",{className:"grid md:grid-cols-3 divide-y md:divide-y-0 md:divide-x divide-white/8 mt-2",children:[r.jsxs("div",{className:"md:pr-8 pb-6 md:pb-0",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-4 pb-2 border-b border-white/8",style:{color:"#D4A843"},children:"Strategy"}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://www.microsoft.com/en-us
313/worklab/work-trend-index",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Microsoft — 2026 Work Trend Index"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.deloitte.com/us/en/what-we-do/capabilities/applied-artificial-intelligence/content/state-of-ai-in-the-enterprise.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Deloitte — State of AI in the Enterprise 2026"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.bcg.com/publications/2026/as-ai-investments-surge-ceos-take-the-lead",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"BCG — AI Radar 2026"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://aiindex.stanford.edu/report/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Stanford HAI — 2026 AI Index Report"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"md:px-8 py-6 md:py-0",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-4 pb-2 border-b border-white/8",style:{color:"#D4A843"},children:"Build"}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://cloud.google.com/resources/content/ai-agent-trends-2026",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Google Cloud — AI Agent Trends 2026"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.mckinsey.com/capabilities/mckinsey-technology/our-insights/building-the-foundations-for-agentic-ai-at-scale",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"McKinsey — Building Foundations for Agentic AI at Scale"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.ibm.com/thought-leadership/institute-business-value/en-us/report/agentic-ai-operating-model",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"IBM — Agentic AI Operating Model"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"md:pl-8 pt-6 md:pt-0",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-4 pb-2 border-b border-white/8",style:{color:"#D4A843"},children:"Leadership & Governance"}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://www.mckinsey.com/capabilities/tech-and-ai/our-insights/tech-forward/state-of-ai-trust-in-2026-shifting-to-the-agentic-era",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"McKinsey — State of AI Trust 2026"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.pwc.com/us/en/services/ai/agentic-ai-reinvention.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"PwC — Agentic AI Reinvention"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.accenture.com/us-en/insights/strategy/age-of-co-intelligence",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Accenture — The Age of Co-intelligence"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.bcg.com/publications/2025/machines-that-manage-themselves",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"BCG — The Emerging Agentic Enterprise"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.mckinsey.com/capabilities/people-and-organizational-performance/our-insights/the-agentic-organization-contours-of-the-next-paradigm-for-the-ai-era",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"McKinsey — The Agentic Organization"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]})]})]}),r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"AI Maturity & Enterprise Adoption"})]}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://www.mckinsey.com/capabilities/quantumblack/our-insights",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-mckinsey-ai",children:[r.jsx("span",{children:"McKinsey — Global AI Survey"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.cisco.com/c/dam/m/en_us/solutions/ai/readiness-index/2025-m10/documents/cisco-ai-readiness-index-2025-realizing-the-value-of-ai.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-cisco",children:[r.jsx("span",{children:"Cisco — AI Readiness Index 2025"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.accenture.com/content/dam/system-files/acom/custom-code/ai-maturity/Accenture-Art-of-AI-Maturity-Report-Global-Revised.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-accenture",children:[r.jsx("span",{children:"Accenture — Art of AI Maturity"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://cdn.openai.com/business-guides-and-resources/ai-in-the-enterprise.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-openai",children:[r.jsx("span",{children:"OpenAI — AI in the Enterprise"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www2.deloitte.com/us/en/insights/focus/cognitive-technologies/state-of-ai-and-intelligent-automation-in-business-survey.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Deloitte — State of AI and Intelligent Automation"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.ibm.com/thought-leadership/institute-business-value/en-us/report/ai-action",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"IBM — AI in Action Report"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://setr.stanford.edu/sites/default/files/2026-01/SETR2026_web-260109.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-stanford-setr",children:[r.jsx("span",{children:"Stanford — Emerging Technology Review 2026"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"Agentic Organizations & Workforce"})]}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://www.deloitte.com/in/en/services/consulting/services/engineering-ai-data/agentic-ai.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-deloitte",children:[r.jsx("span",{children:"Deloitte — Agentic AI Strategic Framework"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-anthropic",children:[r.jsx("span",{children:"Anthropic — Context Engineering for AI Agents"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://framework.scaledagile.com/ai-augmented-workforce-a-leaders-guide-to-unleashing-human-potential",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-safe",children:[r.jsx("span",{children:"SAFe — AI-Augmented Workforce Guide"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://resources.anthropic.com/hubfs/2026%20Agentic%20Coding%20Trends%20Report.pdf?hsLang=en",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-anthropic-agentic-coding",children:[r.jsx("span",{children:"Anthropic — 2026 Agentic Coding Trends Report"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.anthropic.com/research/labor-market-impacts",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-anthropic-labor",children:[r.jsx("span",{children:"Anthropic — Labor Market Impacts of AI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.weforum.org/publications/future-of-jobs-report-2025/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"WEF — Future of Jobs Report 2025"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.weforum.org/publications/organizational-transformation-in-the-age-of-ai-how-organizations-maximize-ais-potential/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"WEF — Organizational Transformation in the Age of AI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.anthropic.com/features/81k-interviews",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Anthropic — What 81,000 Interviews Reveal About AI at Work"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"AI Agents, Automation & Platforms"})]}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://docs.anthropic.com/en/docs/build-with-claude/tool-use",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-anthropic-agents",children:[r.jsx("span",{children:"Anthropic — Building Effe
313ctive AI Agents"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://cdn.openai.com/business-guides-and-resources/a-practical-guide-to-building-agents.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-openai-agents",children:[r.jsx("span",{children:"OpenAI — Practical Guide to Building Agents"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://d1.awsstatic.com/onedam/marketing-channels/website/aws/en_US/whitepapers/approved/executive-insights/an-executives-guide-to-agentic-ai-ebook-v3-final.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-aws",children:[r.jsx("span",{children:"AWS — Executive Guide to Agentic AI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://pages.awscloud.com/rs/112-TZM-766/images/AWS_Marketplace_ebook_Agentic_AI.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"AWS Marketplace — Agentic AI eBook"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.capgemini.com/wp-content/uploads/2025/07/Final-Web-Version-Report-AI-Agents.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-capgemini",children:[r.jsx("span",{children:"Capgemini — Rise of Agentic AI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://research.google/pubs/an-introduction-to-googles-approach-for-secure-ai-agents/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-google-agents",children:[r.jsx("span",{children:"Google — AI Agent Security Framework"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.ibm.com/thought-leadership/institute-business-value/en-us/report/scale-agentic-ai",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"IBM — Scaling Agentic AI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://learn.microsoft.com/en-us/shows/ai-agents-for-beginners/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-microsoft-agents",children:[r.jsx("span",{children:"Microsoft — AI Agents for Beginners"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://github.com/microsoft/generative-ai-for-beginners",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Microsoft — Generative AI for Beginners"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://arxiv.org/abs/2601.12538",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"arXiv — Agentic Reasoning for Large Language Models"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://arxiv.org/abs/2511.07678",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"arXiv — AIA Forecaster: LLM-based Forecasting at Superforecaster Level"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://github.com/HKUDS/nanobot",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"HKUDS — NanoBot: Multi-Agent Framework"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.hyperwriteai.
313com/personal-assistant",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"HyperWrite — AI Personal Assistant"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.moltbook.com/post/34809c74-eed2-48d0-b371-e1b5b940d409",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-moltbook",children:[r.jsx("span",{children:"Moltbook — The Social Network for AI Agents"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://openclaw.ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"OpenClaw — Open-Source AI Agent Platform"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://github.com/SantanderAI",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"SantanderAI — Open-source AI initiatives"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"Executive Leadership"})]}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://openai.com/business/guides-and-resources/staying-ahead-in-the-age-of-ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"OpenAI — Staying Ahead in the Age of AI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://ocw.mit.edu/courses/15-963-advanced-strategy-spring-2008/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-mit-strategy",children:[r.jsx("span",{children:"MIT — Advanced Strategy Course"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://pll.harvard.edu/course/exercising-leadership-foundational-principles",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-harvard",children:[r.jsx("span",{children:"Harvard — Exercising Leadership"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.coursera.org/learn/organizational-analysis",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-stanford-org",children:[r.jsx("span",{children:"Stanford — Organizational Analysis"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.coursera.org/learn/competitive-strategy",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-competitive",children:[r.jsx("span",{children:"Coursera — Competitive Strategy"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.coursera.org/learn/uva-darden-foundations-business-strategy",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-uva",children:[r.jsx("span",{children:"UVA Darden — Business Strategy Foundations"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://hbr.org/topic/subject/leadership",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"HBR — Leadership Insights"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.imd.org/ibyimd/white-papers/winning-with-ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-imd-ai",children:[r.jsx("span",{children:"IMD — Winning with AI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"Global AI Policy, Ethics & Regulation"})]}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://www.oecd.org/content/dam/oecd/en/publications/reports/2026/02/oecd-due-diligence-guidance-for-responsible-ai_7831bb49/416
31371712-en.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"OECD — Due Diligence Guidance for Responsible AI (2026)"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://publications.jrc.ec.europa.eu/repository/handle/JRC143482",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-eu",children:[r.jsx("span",{children:"EU Commission JRC — AI Policy Landscape 2025"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://unesdoc.unesco.org/ark:/48223/pf0000390545",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-unesco",children:[r.jsx("span",{children:"UNESCO — AI & Education"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://hai.stanford.edu/policy/beyond-deepseek-chinas-diverse-open-weight-ai-ecosystem-and-its-policy-implications",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-stanford-hai-china",children:[r.jsx("span",{children:"Stanford HAI — Beyond DeepSeek: China's Open-Weight AI Ecosystem"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://hai.stanford.edu/news/ai-sovereigntys-definitional-dilemma",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Stanford HAI — AI Sovereignty's Definitional Dilemma"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://hai.stanford.edu/policy/how-can-ai-support-language-digitization-and-digital-inclusion",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-stanford-hai-language",children:[r.jsx("span",{children:"Stanford HAI — AI Support for Language Digitization and Digital Inclusion"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.iaps.ai/research/strategic-visions-in-ai-governance",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"IAPS — Strategic Visions in AI Governance"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.nature.com/npjdigitalmed/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-nature",children:[r.jsx("span",{children:"Nature — Digital Medicine"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://nam.edu/the-promise-of-digital-health-then-now-and-the-future/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-nam",children:[r.jsx("span",{children:"National Academy — The Promise of Digital Health"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"Future Scenarios, Risks & Macro-Shifts"})]}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://edoras.sdsu.edu/~vinge/misc/singularity.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-vinge-singularity",children:[r.jsx("span",{children:"Vernor Vinge — The Coming Technological Singularity (1993)"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://iotworlds.com/timeline-of-ai-technical-capability-navigating-the-coming-transformation/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"IoT Worlds — Timeline of AI Technical Capability"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}
313),r.jsx("li",{children:r.jsxs("a",{href:"https://www.darioamodei.com/essay/the-adolescence-of-technology",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Dario Amodei — The Adolescence of Technology"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://situational-awareness.ai/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-situational",children:[r.jsx("span",{children:"Situational Awareness — The Decade Ahead"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://ai-2027.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-ai2027",children:[r.jsx("span",{children:"AI-2027 — Strategic Foresight Outlook"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.technologyreview.com/2025/08/13/1121479/the-road-to-artificial-general-intelligence/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-mit",children:[r.jsx("span",{children:"MIT Technology Review — The Road to AGI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://sequoiacap.com/article/2026-this-is-agi/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-sequoia-agi",children:[r.jsx("span",{children:"Sequoia Capital — 2026: This is AGI"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.gartner.com/en/articles/gartner-top-10-strategic-technology-trends-for-2025",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Gartner — Top 10 Strategic Tech Trends 2025"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.undp.org/sites/g/files/zskgke326/files/2025-12/ai-and-the-climate-crisis.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"UNDP — AI and the Climate Crisis (2025)"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"Private Equity & Investment Intelligence"})]}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://ionanalytics.com/insights/mergermarket/the-wrong-apocalypse-op-ed/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"ION Analytics / Mergermarket — The Wrong Apocalypse"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.bain.com/insights/topics/global-private-equity-report/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-bain-pe",children:[r.jsx("span",{children:"Bain — Global Private Equity Report 2025"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.mckinsey.com/industries/private-capital/our-insights",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-mckinsey-pe",children:[r.jsx("span",{children:"McKinsey — Private Capital Insights"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.preqin.com/insights/research",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-preqin",children:[r.jsx("span",{children:"Preqin — Private Markets Research"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://pitchbook.com/news/reports",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-pitchbook",children:[r.jsx("span",{children:"PitchBook — Market Reports"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://a16z.com/big-ideas-in-tech-2025/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-a16z",children:[r.jsx("span",{children:"a16z — Big Ideas in Tech 2025"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.bondcap.com/report/pdf/Trends_Artificial_Intelligence.pdf",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-bond",children:[r.jsx("span",{children:"Bond Capital — AI Trends Report"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.ey.com/en_gl/insights/private-equity",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"EY — Private Equity Insights"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.carlyle.com/insights",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Carlyle — Market Insights"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.elibrary.imf.org/view/journals/005/2025/016/article-A001-en.xml",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"IMF — Regulatory Considerations: AI in Securities Markets"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.citriniresearch.com/p/2028gic",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Citrini Research — 2028 GIC Report"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.kkr.com/insights/ai-infrastru
313cture",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-kkr",children:[r.jsx("span",{children:"KKR — AI Infrastructure Investment"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"Healthcare AI & Digital Transformation"})]}),r.jsxs("ul",{className:"divide-y divide-white/5",children:[r.jsx("li",{children:r.jsxs("a",{href:"https://www.svb.com/trends-insights/reports/future-of-healthtech-2024",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-svb-healthtech",children:[r.jsx("span",{children:"SVB — The Future of Healthtech 2024"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.svb.com/trends-insights/reports/artificial-intelligence-ai-in-healthcare/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-svb-ai",children:[r.jsx("span",{children:"SVB — AI in Healthcare Report"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.nature.com/articles/s41586-023-06802-1",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-nature-aging",children:[r.jsx("span",{children:"Nature — Organ Aging Signatures Study"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.pwc.com/gx/en/industries/healthcare/publications/ai-robotics-new-health.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-pwc-health",children:[r.jsx("span",{children:"PwC — AI & Robotics in Healthcare"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.bcg.com/publications/2024/genai-in-healthcare",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-bcg-health",children:[r.jsx("span",{children:"BCG — GenAI in Healthcare"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})}),r.jsx("li",{children:r.jsxs("a",{href:"https://www.bain.com/insights/topics/global-healthcare-private-equity-report/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group","data-testid":"link-bain",children:[r.jsx("span",{children:"Bain — Global Healthcare PE Report"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})})]})]}),r.jsxs("div",{className:"md:col-span-2 bg-[#111111] rounded-xl p-5 md:p-8 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-10 rounded-full",style:{backgroundColor:"#D4A843"}}),r.jsx("h2",{className:"text-xl font-semibold text-white",children:"Foundational AI & ML — Learning Resources"})]}),r.jsxs("div",{className:"grid md:grid-cols-2 gap-x-12 gap-y-3",children:[r.jsxs("a",{href:"https://cs.nyu.edu/~mohri/mlbook/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Foundations of Machine Learning — Mohri, Rostamizadeh, Talwalkar"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"https://udlbook.github.io/udlbook/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Understanding Deep Learning — Simon Prince"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"https://mlsysbook.ai/book/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Designing Machine Learning Systems — Chip Huyen"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"https://algorithmsbook.com",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Algorithms for Decision Making — Kochenderfer, Wheeler, Wray"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"https://www.deeplearningbook.org/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Deep Learning — Goodfellow, Bengio, Courville"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"http://incompleteideas.net/book/the-book-2nd.html",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Reinforcement Learning: An Introduction — Sutton & Barto"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"https://www.distributional-rl.org/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Distributional Reinforcement Learning — Bellemare, Dabney, Rowland"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"https://marl-book.com/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Multi-Agent Reinforcement Learning — Albrecht, Christianos, Schäfer"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"https://www.masfoundations.org/",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Multiagent Systems: Game Theory & Long-Term Agent Behavior — Shoham & Leyton-Brown"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsxs("a",{href:"https://fairmlbook.org",target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-between gap-3 py-2.5 text-sm text-gray-300 hover:text-white transition-colors group",children:[r.jsx("span",{children:"Fairness and Machine Learning — Barocas, Hardt, Narayanan"}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]})]})]})]}),r.jsx("div",{className:"mt-16",children:r.jsx(tW,{})}),r.jsx("div",{className:"mt-24 mb-16",children:r.jsxs("div",{className:"flex items-center gap-4",children:[r.jsx("div",{className:"flex-1 h-px bg-white/10"}),r.jsx("span",{className:"text-xs font-semibold tracking-[0.2em] uppercase text-[#AAAAAA] px-2 shrink-0",children:"Ecosystem Intelligence"}),r.jsx("div",{className:"flex-1 h-px bg-white/10"})]})}),r.jsxs("div",{id:"ai-leadership",className:"scroll-mt-24",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-4",style:{color:"#D4A843"},children:"Leadership Intelligence"}),r.jsxs("div",{className:"mb-8",children:[r.jsx("p",{className:"text-sm text-[#AAAAAA] uppercase tracking-widest mb-4",children:"Leadership Intelligence Layer of the PrivateEquity.AI Ecosystem"}),r.jsx("p",{className:"text-base text-[#C8C8C8] max-w-2xl leading-relaxed",children:"Understanding AI-driven value creation requires understanding the people shaping the field."})]}),r.jsxs("div",{className:"rounded-xl border p-8 md:p-12 relative overflow-hidden mb-6",style:{borderColor:"rgba(196,151,58,0.3)",background:"#1a1a1a"},children:[r.jsx("div",{className:"absolute inset-0 pointer-events-none",style:{background:"radial-gradient(ellipse 60% 60% at 75% 25%, rgba(196,151,58,0.07) 0%, transparent 65%)"}}),r.jsxs("div",{className:"relative grid md:grid-cols-2 gap-10 md:gap-14 items-start",children:[r.jsxs("div",{children:[r.jsx("p",{className:"text-sm text-[#C8C8C8] leading-relaxed mb-4",children:"TopAIManagers is the Leadership Intelligence Layer of the PrivateEquity.AI ecosystem, tracking founders, executives, researchers, investors and operators influencing the future of artificial intelligence."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] leading-relaxed mb-10",children:"From AI infrastru
313cture and enterprise software to cybersecurity, healthcare, robotics and venture capital, TopAIManagers provides a structured view of the people influencing the next generation of technology and business."}),r.jsx("div",{children:r.jsx("a",{href:"https://topaimanagers.com",target:"_blank",rel:"nofollow noopener noreferrer",className:"inline-flex items-center gap-2 px-6 py-3 text-sm font-medium tracking-wide border transition-all duration-200 hover:bg-[rgba(196,151,58,0.08)] w-fit",style:{color:"#D4A843",borderColor:"#D4A843"},children:"Explore TopAIManagers →"})})]}),r.jsx("div",{className:"grid grid-cols-1 gap-4",children:[{label:"AI Leaders Tracked",value:"500+",sub:"Founders · Executives · Researchers · Investors"},{label:"Global Coverage",value:"40+",sub:"Countries and regions represented"},{label:"Leadership Intelligence Layer",value:"Active",sub:"Continuously updated intelligence"}].map(n=>r.jsxs("div",{className:"bg-[#1a1a1a] border border-white/10 rounded-lg px-6 py-5 flex items-center gap-6",children:[r.jsx("div",{className:"w-[3px] h-12 rounded-full shrink-0",style:{backgroundColor:"#D4A843"}}),r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-[0.18em] mb-1.5",style:{color:"#D4A843"},children:n.label}),r.jsx("div",{className:"text-4xl font-semibold text-white leading-none mb-1.5",children:n.value}),r.jsx("div",{className:"text-xs text-[#AAAAAA]",children:n.sub})]})]},n.label))})]})]})]}),r.jsx("div",{className:"mt-12 pt-8 border-t border-white/10",children:r.jsxs("p",{className:"text-xs text-[#CCCCCC] leading-relaxed text-center max-w-3xl mx-auto",children:[r.jsx("strong",{children:"Non-affiliation & copyright notice:"})," All reports and publications belong to their respective authors and publishers. Links are provided for educational use only. PrivateEquity.ai is not affiliated with any referenced organizations. No endorsement or partnership is implied."]})})]})})]}),t&&r.jsx(ht,{})]}),rW=()=>(j.useEffect(()=>{const e=window.location.hash.slice(1);e&&window.requestAnimationFrame(()=>{var t;(t=document.getElementById(e))==null||t.scrollIntoView({behavior:"auto",block:"start"})})},[]),r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Insights — AI Learning & Strategic Research | PrivateEquity.AI",description:"AI learning paths, institutional resources, and curated strategic research for private capital professionals and company leaders.",canonicalUrl:"/learning",keywords:"AI insights, AI research, AI learning, strategic research, private capital"}),r.jsx(eW,{showSEO:!1,showFooter:!1}),r.jsx(nW,{showSEO:!1,showFooter:!1}),r.jsx(ht,{})]})),wi="#D4A843",iW=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"About PrivateEquity.AI — Unlocking Enterprise Value Through AI",description:"PrivateEquity.AI helps investors and companies understand how AI affects enterprise value, competitive advantage, operating models, investment risk, and execution.",canonicalUrl:"/about"}),r.jsx("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":"https://schema.org","@type":"AboutPage","@id":"https://www.privatequity.ai/about#aboutpage",url:"https://www.privatequity.ai/about",name:"About PrivateEquity.ai — Unlocking Enterprise Value Through AI",description:"PrivateEquity.AI is an AI intelligence and value creation platform helping investors and companies understand how artificial intelligence affects enterprise value, competitive advantage, operating models, investment risk and execution.",inLanguage:"en",dateModified:"2026-08-21T00:00:00+00:00",isPartOf:{"@type":"WebSite","@id":"https://www.privatequity.ai/#website",url:"https://www.privatequity.ai"},mainEntity:{"@id":"https://www.privatequity.ai/#organization"},mentions:{"@id":"https://www.privatequity.ai/#person"},breadcrumb:{"@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"PrivateEquity.ai",item:"https://www.privatequity.ai"},{"@type":"ListItem",position:2,name:"About",item:"https://www.privatequity.ai/about"}]}})}}),r.jsxs("div",{className:"institutional-page page-about min-h-screen bg-[#0A0A0A]",children:[r.jsxs("section",{className:"py-24 md:py-36 text-center relative overflow-hidden",style:{backgroundColor:"#0A0A0A"},children:[r.jsx("div",{className:"absolute inset-0 pointer-events-none",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.10) 0%, transparent 70%)"}}),r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-3xl relative z-10",children:[r.jsxs("h1",{className:"text-4xl md:text-6xl lg:text-7xl font-light tracking-tight text-white mb-6 leading-[1.05]",children:[r.jsx("span",{className:"block",children:"The independent intelligence layer"}),r.jsx("span",{className:"block",children:"for AI Due Diligence in Private Equity."})]}),r.jsx("p",{className:"text-base md:text-lg text-gray-400 font-light leading-relaxed max-w-2xl mx-auto",children:"Built to help investors and companies identify where AI can strengthen competitive advantage, improve operating leverage and reshape the economics of a business."})]})]}),r.jsx("section",{className:"py-20 md:py-28 bg-[#141414] border-t border-white/5","aria-labelledby":"manifesto-heading",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl",children:r.jsxs("article",{children:[r.jsxs("div",{className:"flex items-center justify-center gap-4 sm:gap-8 mb-8","aria-label":"PrivateEquity.AI Manifesto",children:[r.jsx("span",{className:"h-px w-12 sm:w-24","aria-hidden":"true",style:{background:"linear-gradient(to right, transparent, rgba(212,168,67,0.8))"}}),r.jsx("p",{className:"text-sm md:text-base tracking-[0.16em] font-medium text-center",style:{color:wi},children:"PrivateEquity.AI Manifesto"}),r.jsx("span",{className:"h-px w-12 sm:w-24","aria-hidden":"true",style:{background:"linear-gradient(to left, transparent, rgba(212,168,67,0.8))"}})]}),r.jsx("h2",{id:"manifesto-heading",className:"text-4xl md:text-6xl font-light tracking-tight text-white mb-8 leading-[1.05]",children:"Unlocking enterprise value through AI."}),r.jsx("div",{className:"max-w-3xl space-y-6 text-lg md:text-xl text-[#DDDDDD] leading-relaxed",children:r.jsx("p",{children:"Artificial intelligence is not just a technology project. It is changing how private capital operates, invests and creates enterprise value."})}),r.jsxs("div",{className:"border-l border-[#D4A843]/60 pl-6 md:pl-8 mt-10 space-y-3 text-xl md:text-2xl font-light text-white leading-relaxed",children:[r.jsx("p",{children:"We map the AI platforms and capabilities reshaping private capital."}),r.jsx("p",{children:"We identify where AI can strengthen investment workflows and firm capabilities."}),r.jsx("p",{children:"We assess where AI can improve operating performance, competitive positioning and scalability."}),r.jsx("p",{children:"We translate intelligence into clearer strategic decisions."})]}),r.jsxs("div",{className:"max-w-3xl mt-10 space-y-6 text-base md:text-lg text-[#DDDDDD] leading-relaxed",children:[r.jsx("p",{children:"Our objective is to help private capital and company leaders understand where AI creates advantage — across investment workflows, firm capabilities, operating performance and enterprise value."}),r.jsx("p",{children:"PrivateEquity.AI is an independent intelligence platform at the intersection of artificial intelligence, private capital and enterprise value creation."})]}),r.jsx("p",{className:"mt-12 text-2xl md:text-3xl font-light text-white leading-snug text-center w-full",children:r.jsx("span",{style:{color:wi},children:"Build the value that comes with it."})})]})})}),r.jsx("section",{className:"py-20 md:py-28 bg-[#0A0A0A] border-b border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl",children:[r.jsx("p",{className:"text-xs tracking-widest uppercase font-medium mb-3",style:{color:wi},children:"The AI Intelligence Gap"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-10 tracking-tight",children:"Private capital needs a different intelligence layer for AI."}),r.jsxs("div",{className:"space-y-6 text-base md:text-lg text-gray-400 leading-relaxed max-w-3xl",children:[r.jsx("p",{children:"Traditional private capital intelligence is built around companies, transactions, markets and fund performance. AI introduces a different set of questions: which platforms should investment firms adopt, where AI is reshaping competitive advantage, and where it can improve operating performance and enterprise value."}),r.jsx("p",{children:"PrivateEquity.AI brings these questions into a single independent intelligence layer — connecting AI platforms, investment workflows and enterprise value creation."})]})]})}),r.jsx("section",{className:"py-20 md:py-28 bg-[#111111] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsx("p",{className:"text-xs tracking-widest uppercase font-medium mb-3",style:{color:wi},children:"What PrivateEquity.AI Provides"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-4 tracking-tight",children:"Structured AI intelligence for private capital and company leaders."}),r.jsx("p",{className:"text-base md:text-lg text-gray-400 leading-relaxed max-w-3xl mt-4",children:"Independent intelligence, research and analytical tools for understanding where AI matters — across investment firms, private markets and operating companies."}),r.jsx("div",{className:"grid md:grid-cols-2 gap-6 mt-12",children:[{n:"01",title:"PE AI Stack Intelligence",body:"AI platforms and capabilities mapped across investment workflows and firm operations.",emphasized:!0},{n:"02",title:"AI Market & Research Intelligence",body:"Curated research and market signals tracking how AI is reshaping private markets, industries and competitive dynamics.",emphasized:!1},{n:"03",title:"AI Value Creation Intelligence",body:"Tools and operating intelligence for identifying where AI can improve productivity, operating leverage, revenue, scalability and enterprise value.",emphasized:!1},{n:"04",title:"AI Value Exposure & Readiness Assessment",body:"A proprietary analytical framework for assessing where AI can create or erode enterprise value, the company's ability to capture that potential, and the priorities for action.",emphasized:!1}].map(e=>r.jsxs("div",{className:`bg-[#1a1a1a] rounded-xl p-6 md:p-8 border h-full transition-all ${e.emphasized?"border-[#D4A843]/30 hover:border-[#D4A843]/50":"border-white/15 hover:border-white/30"}`,children:[r.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[r.jsx("span",{className:"text-xs tracking-widest font-medium flex-shrink-0",style:{color:wi},children:e.n}),r.jsx("h3",{className:"text-base font-semibold text-white",children:e.title})]}),r.jsx("p",{className:"text-sm text-[#CCCCCC] leading-relaxed",children:e.body})]},e.title))})]})}),r.jsx("section",{className:"py-20 md:py-28 bg-[#0A0A0A] border-t border-white/5",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:r.jsxs("div",{className:"grid md:grid-cols-2 gap-12 md:gap-20",children:[r.jsxs("div",{children:[r.jsx("p",{className:"text-xs tracking-widest uppercase font-medium mb-3",style:{color:wi},children:"For Private Capital"}),r.jsx("h2",{className:"text-2xl font-light text-white mb-6 tracking-tight",children:"Private equity investment teams"}),r.jsx("ul",{className:"space-y-4",children:["PE partners and principals evaluating AI adoption and investment implications","Investment teams using AI across sourcing, research and diligence","Operating partners assessing AI capabilities across portfolio companies","Capital allocators and private-market teams evaluating AI-driven change","Portfolio management teams tracking AI transformation"].map(e=>r.jsxs("li",{className:"flex items-start gap-3",children:[r.jsx("span",{className:"mt-1 text-xs flex-shrink-0",style:{color:wi},children:"—"}),r.jsx("span",{className:"text-sm text-gray-400 leading-relaxed",children:e})]},e))})]}),r.jsxs("div",{children:[r.jsx("p",{className:"text-xs tracking-widest uppercase font-medium mb-3",style:{color:wi},children:"For Companies"}),r.jsx("h2",{className:"text-2xl font-light text-white mb-6 tracking-tight",children:"Private company leaders"}),r.jsx("ul",{className:"space-y-4",children:["CEOs and founders evaluating where AI can create competitive advantage","Leadership teams identifying practical AI use cases and operating leverage","Management teams seeking productivity, scalability and stronger decision-making","Companies preparing for institutional capital, strategic transactions or the next stage of growth","Operating teams assessing AI tools, workflows and capabilities"].map(e=>r.jsxs("li",{className:"flex items-start gap-3",children:[r.jsx("span",{className:"mt-1 text-xs flex-shrink-0 text-[#BBBBBB]",children:"—"}),r.jsx("span",{className:"text-sm text-[#CCCCCC] leading-relaxed",children:e})]},e))})]})]})})}),r.jsx("section",{className:"py-20 md:py-28 bg-[#111111] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl",children:[r.jsx("p",{className:"text-xs tracking-widest uppercase font-medium mb-3",style:{color:wi},children:"Independence"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-8 tracking-tight",children:"No conflicts. No agenda."}),r.jsxs("div",{className:"max-w-3xl space-y-4 text-base text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"PrivateEquity.ai has no fundraising mandate, investment-management mandate, or regulated advisory mandate. It does not select investments, manage capital, conduct investment management activity, or provide regulated financial advice of any kind."}),r.jsx("p",{children:"Independence is not a disclaimer — it is the analytical foundation. Without institutional affiliation, there is no bias toward specific platforms, funds, or outcomes. All content is published for research and educational purposes, with full attribution and non-affiliation disclaimers."}),r.jsx("p",{className:"text-sm text-[#BBBBBB]",children:"Curation standard: primary sources and institutional-grade research only — non-promotional, evidence-based, with preference for reproducible frameworks over opinion."})]})]})})]}),r.jsx(ht,{})]}),aW=["Deal Sourcing","Market Intelligence","Target Screening","CIM Analysis","Due Diligence","Commercial DD","Financial Analysis","IC & Investment Memos","Integrity & Reputation","ESG & Risk","VDR & Deal Execution","Portfolio Monitoring"],sW=["Relationship Intelligence","CRM & Deal Pipeline","Institutional Knowledge","Internal Productivity","Research & Data","AI Assistants","AI Agents","Portfolio Reporting","LP & Investor Reporting","Knowledge Management","Workflow Automation","Data Extraction"];function oW(e){return e.toUpperCase().replace(/./g,t=>String.fromCodePoint(127397+t.charCodeAt(0)))}const kk=[{name:"Blueflame AI",country:"United States",countryCode:"US",officialUrl:"https://blueflame.ai/",platformType:"PE-Native",primaryUse:"AI operating layer that unifies deal screening, CIM review, IC memo drafting, and portfolio monitoring across the investment lifecycle.",bestFor:"Deal teams running CIM anal
313ysis, IC prep, and ongoing portfolio monitoring in one workspace.",pricing:"Enterprise / Contact vendor",workflows:["CIM Analysis","Due Diligence","IC & Investment Memos","Portfolio Monitoring"],firmOperations:["LP & Investor Reporting","Institutional Knowledge"],lastVerified:"2026-08"},{name:"Rogo",country:"United States",countryCode:"US",officialUrl:"https://rogo.com/",platformType:"PE-Native",primaryUse:"AI financial intelligence platform for investment analysis — building models, deal memos, and market research faster.",bestFor:"Analysts producing financial analysis, IC memos, and diligence research under deal-team time pressure.",pricing:"Enterprise / Contact vendor",workflows:["Financial Analysis","Due Diligence","IC & Investment Memos"],firmOperations:["Institutional Knowledge","Research & Data"],lastVerified:"2026-08"},{name:"Hebbia",country:"United States",countryCode:"US",officialUrl:"https://www.hebbia.com/",platformType:"Specialist",primaryUse:"Document and knowledge intelligence platform for large-scale analysis of data rooms, CIMs, and research materials.",bestFor:"Deal teams processing large data rooms and CIMs who need cited, structured answers fast.",pricing:"Enterprise / Contact vendor",workflows:["CIM Analysis","Due Diligence"],firmOperations:["Institutional Knowledge","Research & Data","Knowledge Management"],lastVerified:"2026-08"},{name:"Gain.pro",country:"Netherlands",countryCode:"NL",officialUrl:"https://www.gain.pro/",platformType:"PE-Native",primaryUse:"Private-market company and industry intelligence platform focused on mid-market target identification and benchmarking.",bestFor:"Sourcing and commercial due diligence teams validating market size and identifying comparable targets.",pricing:"Enterprise / Contact vendor",workflows:["Market Intelligence","Deal Sourcing","Target Screening","Commercial DD"],firmOperations:[],lastVerified:"2026-08"},{name:"Grata",country:"United States",countryCode:"US",officialUrl:"https://grata.com/",platformType:"PE-Native",primaryUse:"Private-company intelligence and deal sourcing platform surfacing bottoms-up target lists and comparables.",bestFor:"Origination teams building proprietary target lists in the lower and middle market.",pricing:"Enterprise / Contact vendor",workflows:["Deal Sourcing","Market Intelligence","Target Screening","Commercial DD"],firmOperations:[],lastVerified:"2026-08"},{name:"SourceScrub",country:"United States",countryCode:"US",officialUrl:"https://www.sourcescrub.com/",platformType:"PE-Native",primaryUse:"Private-company sourcing and origination intelligence platform used to build and prioritise proprietary deal pipelines.",bestFor:"Sourcing teams building conference-based and thematic origination pipelines.",pricing:"Enterprise / Contact vendor",workflows:["Deal Sourcing","Target Screening","Market Intelligence"],firmOperations:[],lastVerified:"2026-08"},{name:"Tracxn",country:"India",countryCode:"IN",officialUrl:"https://tracxn.com/",platformType:"Specialist",primaryUse:"Global private-company, startup, funding, investor, and market intelligence platform.",bestFor:"Teams mapping emerging sectors and early-stage competitive landscapes across global markets.",pricing:"Enterprise / Contact vendor",workflows:["Market Intelligence","Target Screening"],firmOperations:["Research & Data"],lastVerified:"2026-08"},{name:"DealCloud / Intapp",country:"United States",countryCode:"US",officialUrl:"https://www.intapp.com/dealcloud/",platformType:"PE-Native",primaryUse:"Private-capital CRM, deal pipeline, and institutional relationship-management platform.",bestFor:"Firms centralising deal pipeline, relationship data, and investor reporting in one system of record.",pricing:"Enterprise / Contact vendor",workflows:[],firmOperations:["Relationship Intelligence","CRM & Deal Pipeline","LP & Investor Reporting","Institutional Knowledge"],lastVerified:"2026-08"},{name:"Affinity",country:"United States",countryCode:"US",officialUrl:"https://www.affinity.co/",platformType:"PE-Native",primaryUse:"Relationship intelligence and private-capital CRM surfacing warm paths into targets and tracking network strength.",bestFor:"Deal teams that rely on relationship-driven sourcing and want visibility into their collective network.",pricing:"Enterprise / Contact vendor",workflows:["Deal Sourcing"],firmOperations:["Relationship Intelligence","CRM & Deal Pipeline"],lastVerified:"2026-08"},{name:"4Degrees",country:"United States",countryCode:"US",officialUrl:"https://www.4degrees.ai/",platformType:"PE-Native",primaryUse:"Relationship intelligence and deal-flow management platform built for private capital teams.",bestFor:"Teams automating pipeline tracking and surfacing the strongest path to any target.",pricing:"Enterprise / Contact vendor",workflows:["Deal Sourcing"],firmOperations:["Relationship Intelligence","CRM & Deal Pipeline"],lastVerified:"2026-08"},{name:"Xapien",country:"United Kingdom",countryCode:"GB",officialUrl:"https://xapien.com/",platformType:"Specialist",primaryUse:"AI-powered integrity, reputational, and investigative due diligence platform automating open-source research.",bestFor:"Diligence teams screening management, counterparties, or targets for reputational and regulatory risk.",pricing:"Enterprise / Contact vendor",workflows:["Integrity & Reputation","Due Diligence","Target Screening"],firmOperations:[],lastVerified:"2026-08"},{name:"SESAMm",country:"France",countryCode:"FR",officialUrl:"https://www.sesamm.com/",platformType:"Specialist",primaryUse:"AI and alternative-data platform for ESG, controversy, and reputational-risk intelligence.",bestFor:"Teams monitoring portfolio companies or targets for sustainability and controversy risk signals.",pricing:"Enterprise / Contact vendor",workflows:["ESG & Risk","Integrity & Reputation","Portfolio Monitoring"],firmOperations:[],lastVerified:"2026-08"},{name:"Accelex",country:"United Kingdom",countryCode:"GB",officialUrl:"https://www.accelextech.com/",platformType:"Specialist",primaryUse:"AI-powered extraction and standardisation of private-market data from unstructured LP and GP documents.",bestFor:"Portfolio and reporting teams consolidating fund and portfolio-company data at scale.",pricing:"Enterprise / Contact vendor",workflows:["Portfolio Monitoring"],firmOperations:["Data Extraction","Portfolio Reporting","Research & Data"],lastVerified:"2026-08"},{name:"Datasite",country:"United States",countryCode:"US",officialUrl:"https://www.datasite.com/",platformType:"PE-Native",primaryUse:"Transaction infrastru
313cture, virtual data rooms, and deal-execution platform used throughout the deal lifecycle.",bestFor:"Deal teams structuring data room access, Q&A, and buyer workflows through closing.",pricing:"Enterprise / Contact vendor",workflows:["VDR & Deal Execution","Due Diligence","CIM Analysis"],firmOperations:[],lastVerified:"2026-08"},{name:"Ansarada",country:"Australia",countryCode:"AU",officialUrl:"https://www.ansarada.com/",platformType:"Specialist",primaryUse:"AI-enabled virtual data rooms and transaction-management platform.",bestFor:"Teams running secure document sharing and diligence tracking through signing and closing.",pricing:"Enterprise / Contact vendor",workflows:["VDR & Deal Execution","Due Diligence"],firmOperations:[],lastVerified:"2026-08"},{name:"ChatGPT Enterprise",country:"United States",countryCode:"US",officialUrl:"https://openai.com/chatgpt/enterprise/",platformType:"Enterprise AI",primaryUse:"OpenAI's enterprise-grade deployment of ChatGPT for secure, admin-controlled research, analysis, and knowledge work.",bestFor:"Firms standardising general-purpose AI access across investment and operating teams.",pricing:"Enterprise / Contact vendor",workflows:[],firmOperations:["Internal Productivity","Research & Data","AI Assistants","Knowledge Management"],lastVerified:"2026-08"},{name:"Claude Enterprise",country:"United States",countryCode:"US",officialUrl:"https://www.anthropic.com/enterprise",platformType:"Enterprise AI",primaryUse:"Anthropic's enterprise deployment of Claude, with expanded context and security controls for document-heavy workflows.",bestFor:"Firms needing long-context document analysis and reasoning across the organisation.",pricing:"Enterprise / Contact vendor",workflows:[],firmOperations:["Internal Productivity","Research & Data","AI Assistants","Knowledge Management"],lastVerified:"2026-08"},{name:"Microsoft 365 Copilot",country:"United States",countryCode:"US",officialUrl:"https://www.microsoft.com/microsoft-365-copilot",platformType:"Enterprise AI",primaryUse:"AI embedded directly into Word, Excel, Teams, and Outlook across existing Microsoft 365 workflows.",bestFor:"Firms extending AI into daily productivity tools without changing their existing stack.",pricing:"Enterprise / Contact vendor",workflows:[],firmOperations:["Internal Productivity","Workflow Automation","AI Assistants","Knowledge Management"],lastVerified:"2026-08"},{name:"Gemini Enterprise",country:"United States",countryCode:"US",officialUrl:"https://cloud.google.com/gemini-enterprise",platformType:"Enterprise AI",primaryUse:"Google's enterprise AI platform combining Gemini models with workspace data and governance controls.",bestFor:"Firms standardising on Google Workspace who want governed AI across teams and agents.",pricing:"Enterprise / Contact vendor",workflows:[],firmOperations:["Internal Productivity","AI Assistants","AI Agents","Research & Data","Knowledge Management"],lastVerified:"2026-08"}],lW=[{id:"DEAL_SOURCING",chip:"Deal Sourcing",keywords:["sourcing","origination","proprietary deal","proprietary targets","find targets","identify targets","acquisition targets","lower middle market","middle market","build pipeline","new deals","find companies","target identification","deal flow"]},{id:"MARKET_INTELLIGENCE",chip:"Market Intelligence",keywords:["market intelligence","market map","market mapping","market sizing","market size","industry landscape","sector research","competitive landscape","tam","market research"]},{id:"TARGET_SCREENING",chip:"Target Screening",keywords:["screening","screen targets","shortlist","qualify targets","filter targets","initial screen","longlist","preliminary screen","screen opportunities"]},{id:"CIM_ANALYSIS",chip:"CIM Analysis",keywords:["cim","confidential information memorandum","analyse a cim","analyze a cim","review cim","cim review","teaser","information memorandum","reviewing cims"]},{id:"DUE_DILIGENCE",chip:"Due Diligence",keywords:["due diligence","diligence","dd process","deal diligence","diligence workflow","diligence process","deeper diligence","diligence deserve"]},{id:"COMMERCIAL_DD",chip:"Commercial DD",keywords:["commercial due diligence","commercial dd","market diligence","customer diligence","commercial diligence"]},{id:"FINANCIAL_ANALYSIS",chip:"Financial Analysis",keywords:["financial analysis","financial model","modelling","modeling","valuation","financial diligence","build a model","financial statements"]},{id:"IC_MEMOS",chip:"IC & Investment Memos",keywords:["ic memo","investment committee","ic prep","investment memo","prepare an ic memo","board memo","deal memo","ic materials"]},{id:"INTEGRITY_REPUTATION",chip:"Integrity & Reputation",keywords:["integrity","reputational risk","background check","adverse media","reputation check","investigative diligence","management background","integrity check"]},{id:"ESG_RISK",chip:"ESG & Risk",keywords:["esg","sustainability risk","controversy","esg risk","environmental risk","governance risk"]},{id:"VDR_EXECUTION",chip:"VDR & Deal Execution",keywords:["data room","vdr","virtual data room","deal execution","closing","signing","transaction execution","q&a workflow","buyer access"]},{id:"PORTFOLIO_MONITORING",chip:"Portfolio Monitoring",keywords:["portfolio monitoring","monitor portfolio","track performance","portfolio performance","kpi tracking","portfolio company performance"]},{id:"RELATIONSHIP_INTELLIGENCE",chip:"Relationship Intelligence",keywords:["relationship intelligence","warm intro","network strength","relationship mapping","who knows who","warm path"]},{id:"CRM_PIPELINE",chip:"CRM & Deal Pipeline",keywords:["crm","deal pipeline","pipeline management","deal tracking","pipeline tracking"]},{id:"INSTITUTIONAL_KNOWLEDGE",chip:"Institutional Knowledge",keywords:["institutional knowledge","deal history","past deals","firm knowledge","tribal knowledge"]},{id:"INTERNAL_PRODUCTIVITY",chip:"Internal Productivity",keywords:["internal productivity","team productivity","daily productivity","staff productivity","general purpose ai","everyday ai"]},{id:"RESEARCH_DATA",chip:"Research & Data",keywords:["research","data research","desk research","secondary research","market data"]},{id:"AI_ASSISTANTS",chip:"AI Assistants",keywords:["ai assistant","chatbot","copilot","virtual assistant","general assistant"]},{id:"AI_AGENTS",chip:"AI Agents",keywords:["ai agents","agentic","autonomous agent","build agents","agent framework"]},{id:"PORTFOLIO_REPORTING",chip:"Portfolio Reporting",keywords:["portfolio reporting","reporting pack","portfolio report","quarterly report"]},{id:"LP_REPORTING",chip:"LP & Investor Reporting",keywords:["lp reporting","investor reporting","lp report","limited partner report","quarterly lp letter"]},{id:"KNOWLEDGE_MANAGEMENT",chip:"Knowledge Management",keywords:["knowledge management","knowledge base","internal wiki","document repository"]},{id:"WORKFLOW_AUTOMATION",chip:"Workflow Automation",keywords:["workflow automation","automate workflow","process automation","back office automation"]},{id:"DATA_EXTRACTION",chip:"Data Extraction",keywords:["data extraction","extract data","unstructured data","document extraction","standardise data","standardize data"]}];
313function Om(e){return e.toLowerCase().replace(/[^a-z0-9\s&]/g," ").replace(/\s+/g," ").trim()}function ib(e){return e.endsWith("ies")?e.slice(0,-3)+"y":e.endsWith("ses")||e.endsWith("xes")||e.endsWith("ches")||e.endsWith("shes")?e.slice(0,-2):e.endsWith("s")&&e.length>4?e.slice(0,-1):e}function cW(e){const t=Om(e),n=new Set(t.split(/\s+/).map(ib));return lW.map(i=>{let a=0;for(const o of i.keywords){const l=Om(o);t.includes(l)&&(a+=l.includes(" ")?3:1)}const s=Array.from(new Set(i.keywords.flatMap(o=>Om(o).split(/\s+/).map(ib))));for(const o of s)o.length>2&&n.has(o)&&(a+=1);return{chip:i.chip,score:a}}).filter(i=>i.score>0).sort((i,a)=>a.score-i.score)}function dW(e){return Om(e).split(/\s+/).map(ib).filter(t=>t.length>2)}const nr="#D4A843",uW={"PE-Native":{color:nr,bg:"rgba(196,151,58,0.12)"},Specialist:{color:"#9CA3AF",bg:"rgba(255,255,255,0.06)"},"Enterprise AI":{color:"#8FB4D9",bg:"rgba(143,180,217,0.10)"}};function pW(e,t,n){let i=0;const a=new Map(t.map(o=>[o.chip,o.score]));for(const o of e.workflows){const l=a.get(o);l!==void 0&&(i+=5+l)}for(const o of e.firmOperations){const l=a.get(o);l!==void 0&&(i+=5+l)}const s=[e.name,e.primaryUse,e.bestFor].join(" ").toLowerCase();for(const o of n)o.length<3||(e.name.toLowerCase().includes(o)?i+=3:s.includes(o)&&(i+=1));return i}function mW(){const[e,t]=j.useState("workflow"),[n,i]=j.useState(""),[a,s]=j.useState(null),o=e==="workflow"?aW:sW;function l(p){t(p),i(""),s(null)}function c(p){i(p);const m=kk.filter(f=>f.workflows.includes(p)||f.firmOperations.includes(p));s({results:m,mode:"chip",activeLabel:p})}function d(p){var g;const m=p.trim();if(!m)return;const f=cW(m),x=dW(m),h=kk.map(y=>({platform:y,score:pW(y,f,x)})).filter(y=>y.score>0).sort((y,v)=>v.score-y.score).slice(0,6).map(y=>y.platform);s({results:h,mode:"query",activeLabel:((g=f[0])==null?void 0:g.chip)??null})}function u(){i(""),s(null)}return r.jsxs("div",{className:"w-full navigator-shell",children:[r.jsxs("div",{className:"mb-8",children:[r.jsx("p",{className:"text-xs tracking-widest uppercase font-semibold mb-3",style:{color:nr},children:"PE AI Stack Navigator"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-3 tracking-tight",children:"Find the right AI platforms for your investment workflow."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl leading-relaxed",children:"Select a private equity workflow to compare relevant AI platforms, capabilities, and use cases — independently curated by PrivateEquity.AI."})]}),r.jsx("div",{className:"inline-flex items-center rounded-xl border border-white/12 bg-[#0D0D0D] p-1 mb-6",children:["workflow","firmOps"].map(p=>r.jsx("button",{onClick:()=>l(p),className:"navigator-chip text-xs font-semibold uppercase tracking-widest px-4 py-2 rounded-lg",style:e===p?{backgroundColor:nr,color:"#0A0A0A"}:{color:"#8A8A8A",backgroundColor:"transparent"},children:p==="workflow"?"Investment Workflow":"Firm Operations"},p))}),r.jsxs("div",{className:"flex gap-2 mb-4",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx(tp,{className:"absolute left-3.5 top-1/2 -translate-y-1/2 h-4 w-4 text-[#555555] pointer-events-none"}),r.jsx("input",{type:"text",value:n,onChange:p=>i(p.target.value),onKeyDown:p=>p.key==="Enter"&&d(n),placeholder:"e.g. Improve deal sourcing · Analyse a CIM · Prepare an IC memo",className:"navigator-search w-full border rounded-xl pl-10 pr-10 py-3.5 text-sm text-white outline-none focus:border-[#D4A843]/50 transition-colors"}),n&&r.jsx("button",{onClick:u,className:"absolute right-3.5 top-1/2 -translate-y-1/2 text-[#777777] hover:text-white transition-colors",children:r.jsx(ac,{className:"h-4 w-4"})})]}),r.jsx("button",{onClick:()=>d(n),className:"navigator-action px-5 py-3.5 rounded-xl text-sm font-semibold text-black hover:opacity-90 flex-shrink-0 flex items-center gap-2",style:{backgroundColor:nr},children:"Find Platforms →"})]}),r.jsx("div",{className:"flex flex-wrap gap-2 mb-8",children:o.map(p=>r.jsx("button",{onClick:()=>c(p),className:"navigator-chip text-xs px-3 py-1.5 rounded-full border hover:text-white",style:(a==null?void 0:a.activeLabel)===p?{backgroundColor:"rgba(196,151,58,0.15)",borderColor:`${nr}60`,color:nr}:{borderColor:"rgba(255,255,255,0.12)",color:"#9A9A9A",backgroundColor:"transparent"},children:p},p))}),a&&r.jsxs("div",{children:[a.mode==="query"&&a.activeLabel&&a.results.length>0&&r.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[r.jsx(vD,{className:"h-3.5 w-3.5 flex-shrink-0",style:{color:nr}}),r.jsxs("p",{className:"text-xs text-[#BBBBBB]",children:["Workflow detected: ",r.jsx("span",{className:"font-semibold",style:{color:nr},children:a.activeLabel})," ","— showing the ",a.results.length," most relevant platform",a.results.length!==1?"s":"",' for "',n,'"']})]}),a.results.length===0?r.jsx("div",{className:"navigator-card bg-[#0D0D0D] border border-white/8 rounded-xl p-8 text-center",children:r.jsx("p",{className:"text-sm text-[#BBBBBB]",children:"No closely matched platforms found. Try another workflow or refine your search."})}):r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:a.results.map(p=>{const m=uW[p.platformType];return r.jsxs("div",{className:"dense-card navigator-card bg-[#111111] rounded-xl p-5 border border-white/10 hover:border-[#D4A843]/35 flex flex-col",children:[r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-[10px] font-semibold uppercase tracking-widest px-2 py-1 rounded",style:{color:m.color,backgroundColor:m.bg},children:p.platformType}),r.jsxs("span",{className:"text-[10px] text-[#555555] font-medium",children:[oW(p.c
313ountryCode)," ",p.country]})]}),r.jsx("h3",{className:"text-sm font-semibold text-white mb-2 leading-snug",children:p.name}),r.jsx("p",{className:"text-xs text-[#BBBBBB] leading-relaxed mb-3 flex-1",children:p.primaryUse}),r.jsxs("div",{className:"rounded-lg px-3 py-2 mb-3 text-xs leading-relaxed",style:{backgroundColor:"rgba(196,151,58,0.07)",borderLeft:`2px solid ${nr}40`},children:[r.jsx("span",{className:"font-semibold",style:{color:nr},children:"Best for: "}),r.jsx("span",{className:"text-[#CCCCCC]",children:p.bestFor})]}),r.jsxs("p",{className:"text-[11px] text-[#777777] mb-4",children:["Pricing: ",r.jsx("span",{className:"text-[#AAAAAA]",children:p.pricing})]}),r.jsxs("a",{href:p.officialUrl,target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-center gap-1.5 text-xs font-semibold py-2 rounded-lg border hover:opacity-90 mt-auto",style:{borderColor:`${nr}50`,color:nr},children:["View Platform",r.jsx(S,{className:"h-3 w-3"})]})]},p.name)})}),r.jsx("p",{className:"text-xs text-[#555555] mt-6 leading-relaxed",children:"Independent discovery and comparison layer. Presence in the Navigator indicates relevance to a workflow only — it is not an endorsement, certification, ranking, or sponsorship of any platform by PrivateEquity.AI. No external APIs or AI inference used."})]})]})}const ZD="/ai-strategy-toolkit",Ne=e=>({sourcePage:ZD,profileAvailable:!1,...e}),JD={"chatgpt-enterprise":Ne({id:"chatgpt-enterprise",name:"ChatGPT Enterprise",slug:"chatgpt-enterprise",officialUrl:"https://openai.com/chatgpt/enterprise/",country:"USA",countryCode:"US",category:"Horizontal AI Foundation",subCategory:"Enterprise AI",primaryWorkflow:"Research, analysis and knowledge work",peStages:["Research","Due Diligence","IC Preparation"],businessFunctions:["Investment","Research","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Enterprise AI workspace for research, analysis and knowledge work across investment teams, with administrative controls for firm-wide deployment.",testId:"link-chatgpt-enterprise"}),"claude-enterprise":Ne({id:"claude-enterprise",name:"Claude Enterprise",slug:"claude-enterprise",officialUrl:"https://www.anthropic.com/enterprise",country:"USA",countryCode:"US",category:"Horizontal AI Foundation",subCategory:"Enterprise AI",primaryWorkflow:"Long-context research and document analysis",peStages:["Research","Due Diligence","IC Preparation"],businessFunctions:["Investment","Research","Legal"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Enterprise deployment of Claude for long-context reasoning and document analysis. Relevant to firms handling complex research and diligence materials.",testId:"link-claude-enterprise"}),"microsoft-365-copilot":Ne({id:"microsoft-365-copilot",name:"Microsoft 365 Copilot",slug:"microsoft-365-copilot",officialUrl:"https://www.microsoft.com/microsoft-365-copilot",country:"USA",countryCode:"US",category:"Horizontal AI Foundation",subCategory:"Enterprise Productivity",primaryWorkflow:"Firm-wide productivity",peStages:["Research","IC Preparation","Portfolio"],businessFunctions:["Investment","Operations","Finance"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"AI embedded across Word, Excel, Teams and Outlook. Relevant where investment firms want governed assistance inside existing productivity workflows.",testId:"link-m365-copilot"}),"gemini-enterprise":Ne({id:"gemini-enterprise",name:"Gemini Enterprise",slug:"gemini-enterprise",officialUrl:"https://cloud.google.com/gemini-enterprise",country:"USA",countryCode:"US",category:"Horizontal AI Foundation",subCategory:"Enterprise AI",primaryWorkflow:"Workspace research and analysis",peStages:["Research","Due Diligence","Portfolio"],businessFunctions:["Investment","Research","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDe
313scription:"Enterprise AI platform connecting Gemini models with workspace data and governance controls for research, analysis and operational knowledge work.",testId:"link-gemini-enterprise"}),"abacus-ai":Ne({id:"abacus-ai",name:"Abacus.AI",slug:"abacus-ai",officialUrl:"https://abacus.ai/teams/",country:"USA",countryCode:"US",category:"Horizontal AI Foundation",subCategory:"Multi-model Workspace",primaryWorkflow:"Multi-model research and automation",peStages:["Research","Due Diligence","Portfolio"],businessFunctions:["Investment","Research","Operations"],peRelevance:"Medium",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Multi-model AI workspace with agents and document generation. Potentially relevant to firms consolidating research and automation capabilities in one interface.",testId:"link-abacus"}),odysseus:Ne({id:"odysseus",name:"Odysseus",slug:"odysseus",officialUrl:"https://pewdiepie-archdaemon.github.io/odysseus/",country:"Open-source",category:"Horizontal AI Foundation",subCategory:"Self-hosted AI Workspace",primaryWorkflow:"Controlled research and knowledge work",peStages:["Research","Due Diligence"],businessFunctions:["Investment","Research","IT"],peRelevance:"Not publicly assessed",deploymentType:"Self-hosted",implementationComplexity:"Not publicly assessed",enterpriseReady:"Not publicly assessed",openSource:!0,lastVerified:"Not publicly assessed",shortDescription:"Self-hosted AI workspace combining chat, agents, tools and research. Relevant where control of models, hardware and data is a primary requirement.",testId:"link-odysseus"}),hebbia:Ne({id:"hebbia",name:"Hebbia",slug:"hebbia",officialUrl:"https://www.hebbia.com",country:"USA",countryCode:"US",category:"Deal Intelligence",subCategory:"Document Intelligence",primaryWorkflow:"Document and institutional intelligence",peStages:["Origination","Research","Due Diligence","IC Preparation"],businessFunctions:["Investment","Research","Legal"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,sourcePage:ZD,profileAvailable:!0,profileSlug:"hebbia",lastVerified:"2026-08",shortDescription:"Institutional platform for document-intensive investment research, diligence and source-grounded analysis. Relevant to deal teams working across large proprietary and external information sets.",testId:"link-hebbia"}),"blueflame-ai":Ne({id:"blueflame-ai",name:"BlueFlame AI",slug:"blueflame-ai",officialUrl:"https://www.blueflame.ai",country:"USA",countryCode:"US",category:"Deal Intelligence",subCategory:"Deal Lifecycle Intelligence",primaryWorkflow:"Deal screening and lifecycle analysis",peStages:["Origination","Due Diligence","IC Preparation","Portfolio"],businessFunctions:["Investment","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,profileAvailable:!0,profileSlug:"blueflame-ai",lastVerified:"2026-08",shortDescription:"AI platform for deal screening, expert-call synthesis and portfolio workflows. Relevant to teams connecting diligence and post-investment monitoring.",testId:"link-blueflame"}),rogo:Ne({id:"rogo",name:"Rogo",slug:"rogo",officialUrl:"https://rogo.ai",country:"USA",countryCode:"US",category:"Deal Intelligence",subCategory:"Financial and Market Analysis",primaryWorkflow:"Financial analysis and investment research",peStages:["Research","Due Diligence","IC Preparation"],businessFunctions:["Investment","Finance"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,profileAvailable:!0,profileSlug:"rogo",lastVerified:"2026-08",shortDescription:"Generative AI for financial analysis, deal memos and market intelligence. Relevant to investment teams preparing structured diligence and IC materials.",testId:"link-rogo"}),metal:Ne({id:"metal",name:"Metal",slug:"metal",officialUrl:"https://www.metal.ai",country:"USA",countryCode:"US",category:"Deal Intelligence",subCategory:"Institutional Intelligence",primaryWorkflow:"Cross-system deal intelligence",peStages:["Origination","Research","Due Diligence"],businessFunctions:["Investment","Operations","IT"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,profileAvailable:!0,profileSlug:"metal",lastVerified:"2026-08",shortDe
313scription:"Institutional intelligence platform aggregating deal data across CRMs, repositories and financial documents. Relevant to firms consolidating investment information.",testId:"link-metal"}),"model-ml":Ne({id:"model-ml",name:"Model ML",slug:"model-ml",officialUrl:"https://www.modelml.com",country:"USA",countryCode:"US",category:"Deal Intelligence",subCategory:"Workflow Automation",primaryWorkflow:"IC memo and portfolio analytics",peStages:["Due Diligence","IC Preparation","Portfolio"],businessFunctions:["Investment","Finance"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,profileAvailable:!0,profileSlug:"model-ml",lastVerified:"2026-08",shortDescription:"AI-native workflow automation for PE and investment banking. Relevant to teams producing institutional-format IC materials and portfolio analytics.",testId:"link-modelml"}),"gain-pro":Ne({id:"gain-pro",name:"Gain.pro",slug:"gain-pro",officialUrl:"https://gain.pro",country:"Netherlands",countryCode:"NL",category:"Private Market Data & Sourcing",subCategory:"Private Company Intelligence",primaryWorkflow:"Target identification and benchmarking",peStages:["Origination","Research","Due Diligence"],businessFunctions:["Investment","Research"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Private-market company and industry intelligence platform focused on mid-market target identification and benchmarking.",testId:"link-gainpro"}),pitchbook:Ne({id:"pitchbook",name:"PitchBook",slug:"pitchbook",officialUrl:"https://pitchbook.com",country:"USA",countryCode:"US",category:"Private Market Data & Sourcing",subCategory:"Private Market Data",primaryWorkflow:"Market mapping and deal research",peStages:["Origination","Research","Due Diligence"],businessFunctions:["Investment","Research"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Private capital data and deal-tracking platform supporting market mapping, benchmarking and research across funds, companies and transactions.",testId:"link-pitchbook"}),preqin:Ne({id:"preqin",name:"Preqin",slug:"preqin",officialUrl:"https://www.preqin.com",country:"UK",countryCode:"GB",category:"Private Market Data & Sourcing",subCategory:"Alternative Assets Data",primaryWorkflow:"Fund, manager and market research",peStages:["Origination","Research","Due Diligence"],businessFunctions:["Investment","Research","Finance"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Alternative-assets data and analytics platform supporting fund research, benchmarking and private-market analysis.",testId:"link-preqin"}),"dealcloud-intapp":Ne({id:"dealcloud-intapp",name:"DealCloud / Intapp",slug:"dealcloud-intapp",officialUrl:"https://www.intapp.com/dealcloud/",country:"USA",countryCode:"US",category:"Private Market Data & Sourcing",subCategory:"CRM and Deal Pipeline",primaryWorkflow:"Deal flow and relationship management",peStages:["Origination","Due Diligence","Portfolio"],businessFunctions:["Investment","Operations","Investor Relations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"High",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Private-capital CRM and deal pipeline platform centralising relationship data, deal tracking and investor workflows.",testId:"link-dealcloud"}),grata:Ne({id:"grata",name:"Grata",slug:"grata",officialUrl:"https://grata.com",country:"USA",countryCode:"US",category:"Private Market Data & Sourcing",subCategory:"Private Company Search",primaryWorkflow:"Bottoms-up target sourcing",peStages:["Origination","Research"],businessFunctions:["Investment","Research"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Private-company intelligence and sourcing platform surfacing target lists and comparables for lower- and middle-market research.",testId:"link-grata"}),affinity:Ne({id:"affinity",name:"Affinity",slug:"affinity",officialUrl:"https://www.affinity.co",country:"USA",countryCode:"US",category:"Private Market Data & Sourcing",subCategory:"Relationship Intelligence",primaryWorkflow:"Relationship-driven origination",peStages:["Origination"],businessFunctions:["Investment","Investor Relations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDe
313scription:"Relationship intelligence CRM for dealmakers, surfacing warm paths into targets and tracking network strength across a fund.",testId:"link-affinity"}),"4degrees":Ne({id:"4degrees",name:"4Degrees",slug:"4degrees",officialUrl:"https://www.4degrees.ai",country:"USA",countryCode:"US",category:"Private Market Data & Sourcing",subCategory:"Relationship Intelligence",primaryWorkflow:"Deal-flow relationship management",peStages:["Origination"],businessFunctions:["Investment","Investor Relations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Relationship intelligence and deal-flow platform for private capital teams managing pipeline and connections to targets.",testId:"link-4degrees"}),tracxn:Ne({id:"tracxn",name:"Tracxn",slug:"tracxn",officialUrl:"https://tracxn.com",country:"India",countryCode:"IN",category:"Private Market Data & Sourcing",subCategory:"Company and Market Data",primaryWorkflow:"Emerging-sector mapping",peStages:["Origination","Research"],businessFunctions:["Investment","Research"],peRelevance:"Medium",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Global private-company, startup and market intelligence platform supporting early-stage sourcing and competitive landscape research.",testId:"link-tracxn"}),alphasense:Ne({id:"alphasense",name:"AlphaSense",slug:"alphasense",officialUrl:"https://www.alpha-sense.com",country:"USA",countryCode:"US",category:"Commercial Intelligence",subCategory:"Market Intelligence",primaryWorkflow:"Commercial diligence and sector research",peStages:["Research","Due Diligence"],businessFunctions:["Investment","Research"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Market intelligence platform scanning filings, earnings calls and research materials for commercial diligence and sector mapping.",testId:"link-alphasense"}),perplexity:Ne({id:"perplexity",name:"Perplexity",slug:"perplexity",officialUrl:"https://www.perplexity.ai",country:"USA",countryCode:"US",category:"Commercial Intelligence",subCategory:"AI Research",primaryWorkflow:"Rapid market and competitor research",peStages:["Origination","Research","Due Diligence"],businessFunctions:["Investment","Research"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Low",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Real-time research and intelligence synthesis with cited sources. Relevant to rapid market understanding and competitor mapping during deal evaluation.",testId:"link-perplexity"}),aaru:Ne({id:"aaru",name:"Aaru",slug:"aaru",officialUrl:"https://aaru.com/",country:"USA",countryCode:"US",category:"Commercial Intelligence",subCategory:"Audience and Market Modelling",primaryWorkflow:"Commercial diligence and customer research",peStages:["Research","Due Diligence"],businessFunctions:["Investment","Research","Marketing"],peRelevance:"Not publicly assessed",deploymentType:"Cloud",implementationComplexity:"Not publicly assessed",enterpriseReady:"Not publicly assessed",openSource:!1,lastVerified:"Not publicly assessed",shortDescription:"AI-based research platform focused on modelling and analysing audience or market behaviour. Potentially relevant to commercial diligence and market assessment.",testId:"link-aaru"}),harvey:Ne({id:"harvey",name:"Harvey",slug:"harvey",officialUrl:"https://www.harvey.ai/",country:"USA",countryCode:"US",category:"Legal & Legal Due Diligence",subCategory:"Legal AI",primaryWorkflow:"Legal research, review and drafting",peStages:["Due Diligence","IC Preparation","Execution"],businessFunctions:["Legal","Investment"],peRelevance:"Not publicly assessed",deploymentType:"Cloud",implementationComplexity:"Not publicly assessed",enterpriseReady:"Not publicly assessed",openSource:!1,lastVerified:"Not publicly assessed",shortDescription:"AI platform for professional legal workflows including research, document analysis and drafting. Relevant to legal diligence and transaction documentation.",testId:"link-harvey"}),legora:Ne({id:"legora",name:"Legora",slug:"legora",officialUrl:"https://legora.com/",country:"UK",countryCode:"GB",category:"Legal & Legal Due Diligence",subCategory:"Legal Workspace",primaryWorkflow:"Legal research and document review",peStages:["Due Diligence","Execution"],businessFunctions:["Legal","Investment"],peRelevance:"Not publicly assessed",deploymentType:"Cloud",implementationComplexity:"Not publicly assessed",enterpriseReady:"Not publicly assessed",openSource:!1,lastVerified:"Not publicly assessed",shortDe
313scription:"AI workspace for legal research, document review and professional legal workflows. Relevant where transaction teams require structured legal analysis.",testId:"link-legora"}),xapien:Ne({id:"xapien",name:"Xapien",slug:"xapien",officialUrl:"https://xapien.com",country:"UK",countryCode:"GB",category:"Due Diligence & Risk Intelligence",subCategory:"Integrity and Reputation",primaryWorkflow:"Integrity and reputational diligence",peStages:["Origination","Due Diligence"],businessFunctions:["Investment","Legal","Compliance"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"AI-powered integrity due diligence platform automating open-source research on people and entities for reputational and regulatory risk.",testId:"link-xapien"}),sesamm:Ne({id:"sesamm",name:"SESAMm",slug:"sesamm",officialUrl:"https://www.sesamm.com",country:"France",countryCode:"FR",category:"Due Diligence & Risk Intelligence",subCategory:"ESG and Controversy Intelligence",primaryWorkflow:"ESG and reputational risk monitoring",peStages:["Research","Due Diligence","Portfolio"],businessFunctions:["Investment","Compliance","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"AI and alternative-data platform for ESG, controversy and reputational-risk intelligence across targets and portfolio companies.",testId:"link-sesamm"}),accelex:Ne({id:"accelex",name:"Accelex",slug:"accelex",officialUrl:"https://www.accelextech.com",country:"UK",countryCode:"GB",category:"Due Diligence & Risk Intelligence",subCategory:"Private Markets Data Extraction",primaryWorkflow:"Fund and portfolio data extraction",peStages:["Due Diligence","Portfolio"],businessFunctions:["Investment","Finance","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Private-markets data extraction platform capturing fund and portfolio information from unstructured LP and GP documents for diligence and reporting.",testId:"link-accelex"}),hadrius:Ne({id:"hadrius",name:"Hadrius",slug:"hadrius",officialUrl:"https://hadrius.com/",country:"USA",countryCode:"US",category:"Compliance & Regulatory Intelligence",subCategory:"Compliance Monitoring",primaryWorkflow:"Compliance monitoring and regulatory workflows",peStages:["Due Diligence","Portfolio"],businessFunctions:["Compliance","Legal","Operations"],peRelevance:"Not publicly assessed",deploymentType:"Cloud",implementationComplexity:"Not publicly assessed",enterpriseReady:"Not publicly assessed",openSource:!1,lastVerified:"Not publicly assessed",shortDescription:"Compliance technology platform using AI to support monitoring and regulatory workflows. Relevant to regulated investment firms and compliance-intensive environments.",testId:"link-hadrius"}),"norm-ai":Ne({id:"norm-ai",name:"Norm AI",slug:"norm-ai",officialUrl:"https://www.norm.ai/",country:"USA",countryCode:"US",category:"Compliance & Regulatory Intelligence",subCategory:"Regulatory Interpretation",primaryWorkflow:"Regulatory analysis and institutional controls",peStages:["Due Diligence","Portfolio"],businessFunctions:["Compliance","Legal","Operations"],peRelevance:"Not publicly assessed",deploymentType:"Cloud",implementationComplexity:"Not publicly assessed",enterpriseReady:"Not publicly assessed",openSource:!1,lastVerified:"Not publicly assessed",shortDescription:"AI platform focused on translating regulatory requirements into structured compliance workflows. Relevant to regulatory analysis and institutional control environments.",testId:"link-norm-ai"}),datasite:Ne({id:"datasite",name:"Datasite",slug:"datasite",officialUrl:"https://www.datasite.com",country:"USA",countryCode:"US",category:"Transaction Execution",subCategory:"Virtual Data Room",primaryWorkflow:"Data room and transaction execution",peStages:["Due Diligence","Execution"],businessFunctions:["Investment","Legal","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDe
313scription:"Transaction infrastructure and virtual data room platform supporting document exchange, Q&A and buyer workflows through closing.",testId:"link-datasite"}),ansarada:Ne({id:"ansarada",name:"Ansarada",slug:"ansarada",officialUrl:"https://www.ansarada.com",country:"Australia",countryCode:"AU",category:"Transaction Execution",subCategory:"Virtual Data Room",primaryWorkflow:"Secure document sharing and deal management",peStages:["Due Diligence","Execution"],businessFunctions:["Investment","Legal","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Virtual data room and transaction-management platform supporting secure document sharing, Q&A and diligence tracking through closing.",testId:"link-ansarada"}),ilevel:Ne({id:"ilevel",name:"iLevel",slug:"ilevel",officialUrl:"https://www.ilevelsolutions.com/",country:"USA",countryCode:"US",category:"Portfolio Management & Analytics",subCategory:"Portfolio Monitoring",primaryWorkflow:"Portfolio performance monitoring",peStages:["Portfolio"],businessFunctions:["Investment","Finance","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"High",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Portfolio monitoring and analytics platform for private-equity and credit funds, standardising performance tracking across investments.",testId:"link-ilevel"}),"allvue-systems":Ne({id:"allvue-systems",name:"Allvue Systems",slug:"allvue-systems",officialUrl:"https://www.allvuesystems.com/",country:"USA",countryCode:"US",category:"Portfolio Management & Analytics",subCategory:"Investment Management",primaryWorkflow:"Fund and portfolio operations",peStages:["Portfolio"],businessFunctions:["Investment","Finance","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"High",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Integrated investment-management platform covering fund data, reporting and operational workflows across the investment lifecycle.",testId:"link-allvue"}),"dynamo-software":Ne({id:"dynamo-software",name:"Dynamo Software",slug:"dynamo-software",officialUrl:"https://www.dynamosoftware.com/",country:"USA",countryCode:"US",category:"Portfolio Management & Analytics",subCategory:"CRM and Fund Data",primaryWorkflow:"Portfolio and investor relationship management",peStages:["Origination","Portfolio"],businessFunctions:["Investment","Finance","Investor Relations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"High",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"CRM and data platform for private-equity, venture and asset managers, supporting pipeline, portfolio and investor relationship workflows.",testId:"link-dynamo"}),"power-bi":Ne({id:"power-bi",name:"Power BI",slug:"power-bi",officialUrl:"https://powerbi.microsoft.com",country:"USA",countryCode:"US",category:"Portfolio Management & Analytics",subCategory:"Business Intelligence",primaryWorkflow:"Portfolio dashboards and reporting",peStages:["Due Diligence","Portfolio"],businessFunctions:["Investment","Finance","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Business-intelligence platform supporting portfolio dashboards, KPI monitoring and recurring reporting for fund and operating teams.",testId:"link-powerbi"}),"tableau-ai":Ne({id:"tableau-ai",name:"Tableau AI",slug:"tableau-ai",officialUrl:"https://www.tableau.com/products/tableau-ai",country:"USA",countryCode:"US",category:"Portfolio Management & Analytics",subCategory:"Data Visualisation",primaryWorkflow:"Portfolio analytics and board reporting",peStages:["Due Diligence","Portfolio"],businessFunctions:["Investment","Finance","Operations"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Data visualisation and AI-assisted analytics for portfolio monitoring, operational performance and board-ready reporting.",testId:"link-tableau"}),"atlassian-rovo":Ne({id:"atlassian-rovo",name:"Atlassian Rovo",slug:"atlassian-rovo",officialUrl:"https://www.atlassian.com/software/rovo",country:"Australia / USA",category:"Workflow & Knowledge Infrastru
313cture",subCategory:"Enterprise Search and Agents",primaryWorkflow:"Knowledge search and team workflows",peStages:["Research","Due Diligence","Portfolio"],businessFunctions:["Investment","Operations","IT"],peRelevance:"Medium",deploymentType:"Cloud",implementationComplexity:"Medium",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Enterprise AI search and agent platform for fund operations, knowledge management and cross-team workflows.",testId:"link-rovo"}),uipath:Ne({id:"uipath",name:"UiPath",slug:"uipath",officialUrl:"https://www.uipath.com/",country:"USA",countryCode:"US",category:"Workflow & Knowledge Infrastructure",subCategory:"Workflow Automation",primaryWorkflow:"Fund administration and process automation",peStages:["Portfolio"],businessFunctions:["Operations","Finance","IT"],peRelevance:"High",deploymentType:"Both",implementationComplexity:"High",enterpriseReady:!0,openSource:!1,lastVerified:"2026-08",shortDescription:"Automation platform for repetitive processes in fund administration and back-office operations.",testId:"link-uipath"}),notebooklm:Ne({id:"notebooklm",name:"NotebookLM",slug:"notebooklm",officialUrl:"https://notebooklm.google.com",country:"USA",countryCode:"US",category:"Workflow & Knowledge Infrastructure",subCategory:"Document Q&A",primaryWorkflow:"Source-grounded document synthesis",peStages:["Research","Due Diligence","IC Preparation"],businessFunctions:["Investment","Research","Legal"],peRelevance:"High",deploymentType:"Cloud",implementationComplexity:"Low",enterpriseReady:"Not publicly assessed",openSource:!1,lastVerified:"2026-08",shortDescription:"AI notebook that synthesises user-provided source documents. Relevant to research packs, CIMs, sector reports and management presentations.",testId:"link-notebooklm"}),obsidian:Ne({id:"obsidian",name:"Obsidian",slug:"obsidian",officialUrl:"https://obsidian.md",country:"Canada",countryCode:"CA",category:"Workflow & Knowledge Infrastructure",subCategory:"Knowledge Management",primaryWorkflow:"Connected research and deal notes",peStages:["Research","Due Diligence","Portfolio"],businessFunctions:["Investment","Research"],peRelevance:"Medium",deploymentType:"Both",implementationComplexity:"Low",enterpriseReady:"Not publicly assessed",openSource:!1,lastVerified:"2026-08",shortDescription:"Local-first knowledge-management and connected-notes platform for structured research, deal notes and sector knowledge bases.",testId:"link-obsidian"}),"wren-ai":Ne({id:"wren-ai",name:"Wren AI",slug:"wren-ai",officialUrl:"https://www.getwren.ai",country:"Open-source",category:"Workflow & Knowledge Infrastructure",subCategory:"Natural Language BI",primaryWorkflow:"Portfolio data queries and reporting",peStages:["Portfolio"],businessFunctions:["Finance","Operations","Investment"],peRelevance:"Medium",deploymentType:"Both",implementationComplexity:"Medium",enterpriseReady:"Not publicly assessed",openSource:!0,lastVerified:"2026-08",shortDescription:"Open-source text-to-SQL platform enabling portfolio data queries and reporting through natural-language interfaces.",testId:"link-wren"})},hW=[{id:"horizontal-ai-foundation",number:"01",layer:"Horizontal AI Foundation",description:"General-purpose AI infrastructure supporting research, analysis, knowledge work and productivity across the investment firm.",platformIds:["chatgpt-enterprise","claude-enterprise","microsoft-365-copilot","gemini-enterprise","abacus-ai","odysseus"]},{id:"deal-intelligence",number:"02",layer:"Deal Intelligence",description:"AI platforms supporting document-intensive investment research, deal analysis, diligence and investment committee workflows.",platformIds:["hebbia","blueflame-ai","rogo","metal","model-ml"]},{id:"private-market-data-sourcing",number:"03",layer:"Private Market Data & Sourcing",description:"Data, sourcing and relationship intelligence systems supporting market mapping, origination and private-company discovery.",platformIds:["gain-pro","pitchbook","preqin","dealcloud-intapp","grata","affinity","4degrees","tracxn"]},{id:"commercial-intelligence",number:"04",layer:"Commercial Intelligence",description:"Research and intelligence systems supporting market analysis, c
313ompetitive assessment, sector research and commercial diligence.",platformIds:["alphasense","perplexity","aaru"]},{id:"legal-legal-due-diligence",number:"05",layer:"Legal & Legal Due Diligence",description:"AI platforms supporting legal research, document review, contract analysis and legal diligence workflows.",platformIds:["harvey","legora"]},{id:"due-diligence-risk-intelligence",number:"06",layer:"Due Diligence & Risk Intelligence",description:"Specialist intelligence platforms supporting integrity, reputational, ESG and document-based risk assessment.",platformIds:["xapien","sesamm","accelex"]},{id:"compliance-regulatory-intelligence",number:"07",layer:"Compliance & Regulatory Intelligence",description:"AI systems supporting regulatory interpretation, compliance monitoring and institutional control workflows.",platformIds:["hadrius","norm-ai"]},{id:"transaction-execution",number:"08",layer:"Transaction Execution",description:"Transaction infrastructure supporting virtual data rooms, document exchange, Q&A and deal execution.",platformIds:["datasite","ansarada"]},{id:"portfolio-management-analytics",number:"09",layer:"Portfolio Management & Analytics",description:"Systems supporting portfolio monitoring, fund data, KPI visibility, analytics and institutional reporting.",platformIds:["ilevel","allvue-systems","dynamo-software","power-bi","tableau-ai"]},{id:"workflow-knowledge-infrastructure",number:"10",layer:"Workflow & Knowledge Infrastructure",description:"Automation, enterprise knowledge and workflow infrastructure supporting investment and operating teams.",platformIds:["atlassian-rovo","uipath","notebooklm","obsidian","wren-ai"]}],ab=hW.map(({platformIds:e,...t})=>({...t,items:e.map(n=>JD[n])}));Object.fromEntries(ab.map(e=>[e.id,e]));const Nk=Object.values(JD),np="2026-09-11",Ha="September 2026";function qe(e,t,n,i,a,s){return{id:e,sourceTitle:t,sourceUrl:n,sourceType:i,publisher:a,verificationDate:np,evidenceNote:s}}function te(e,t,n,i,a="PrivateEquity.AI classification"){return{field:e,label:t,displayedValue:n,claimType:a,evidenceIds:i}}function ig(e){return[["Hebbia","hebbia"],["Rogo","rogo"],["BlueFlame AI","blueflame-ai"],["Model ML","model-ml"],["Metal","metal"]].filter(([,t])=>t!==e).map(([t,n])=>({name:t,href:`/intelligence/${n}`,profileAvailable:!0}))}const ag={profileClaimed:!1,commercialStatus:"none",demoEnabled:!1,leadGenerationEnabled:!1,sponsorshipStatus:"none"},fW=[qe("rogo-product","Built for Real Financial Work","https://rogo.ai/product","Official product documentation","Rogo","Describes finance-specific workflow automation, document interrogation, data providers, permissions, implementation support and single-tenant deployment."),qe("rogo-security","Safe, Secure, And Private","https://rogo.ai/security","Official security documentation","Rogo","Publishes vendor security claims covering data isolation, no training on private data, access controls, encryption, audits and compliance frameworks."),qe("rogo-company","The Future of Finance is Here","https://rogo.ai/company","Official company announcement","Rogo","Official company page identifying Rogo and its New York, United States location."),qe("rogo-update","What's New: May 2026","https://rogo.ai/news/may-product-update","Official product documentation","Rogo","Documents finance agents, firm-specific templates, CIM review, recurring portfolio updates, connectors and custom MCP support."),qe("rogo-openai","Rogo scales AI-driven financial research with OpenAI o1","https://openai.com/index/rogo","Official customer case study","OpenAI","Partner case study describing use by bankers and private-equity professionals, private-data-room diligence, financial datasets and multi-step research."),qe("rogo-datasite","Datasite Partners with Rogo to Enable Secure AI Access to M&A Data Rooms","https://www.globenewswire.com/news-release/2026/09/08/3357823/0/en/datasite-partners-with-rogo-to-enable-secure-ai-access-to-M-A-data-rooms.html","Official company announcement","Datasite / GlobeNewswire","Partner announcement describing governed access to live M&A data-room content with source-linked answers and inherited permissions."),qe("rogo-pricing","Rogo public product pages","https://rogo.ai/","PrivateEquity.AI source review","PrivateEquity.AI","Public pages were reviewed and direct prospects to request a demo without displaying public prices.")],Ik={id:"rogo",slug:"rogo",identity:{platform:"Rogo",country:"USA",category:"Financial Research & Workflow Intelligence",officialWebsite:"https://rogo.ai",shortDe
313scription:"Finance-focused AI platform for research, document analysis and institutional workflow automation.",lastVerified:Ha,pricingStatus:"Not publicly disclosed"},seo:{title:"Rogo Intelligence Profile | PrivateEquity.AI",description:"Independent Rogo profile covering private-equity workflow fit, use cases, deployment, institutional readiness and public evidence.",keywords:"Rogo private equity, Rogo AI finance, financial research AI, deal diligence AI",socialDescription:"Independent profile of Rogo for finance research, diligence and workflow automation.",dateModified:np},peClassification:{primaryWorkflow:"Financial Research & Workflow Intelligence",peStages:["Origination","Research","Due Diligence","Investment Committee","Portfolio"],lifecycleFit:[{stage:"Origination",status:"Relevant"},{stage:"Research",status:"Core"},{stage:"Due Diligence",status:"Core"},{stage:"Investment Committee",status:"Relevant"},{stage:"Portfolio",status:"Relevant"},{stage:"Exit",status:"Not assessed"}],deploymentModel:"Buy"},capability:{automationPotential:"High",deploymentExplanation:"Rogo is offered as an enterprise finance platform with guided implementation, permissions and documented single-tenant deployment.",automationExplanation:"Agents can execute firm-specific research, document-analysis and output-generation workflows using internal and external financial information.",humanAccountabilityStatement:"Mandatory product-level approval controls are not publicly assessed; investment judgment and accountability remain with the investment team.",primaryUseCases:["Financial research","Private-company screening","CIM and data-room review","Market and competitive analysis","Investment memo and presentation drafting","Recurring portfolio updates"],requiredContext:["Firm documents and permissions","Deal and data-room materials","External financial-data sources","Firm templates and methodologies","Workflow and output requirements"],humanGate:"Not assessed",workflowCoverage:"Broad"},institutionalReadiness:{institutionalDeploymentEvidence:"Strong",securitySuitability:"Strong",integrationCapability:"Strong",peAdoptionEvidence:"Moderate"},commercial:{pricingStatus:"Not publicly disclosed"},decisionSnapshot:{bestSuitedFor:"Finance teams combining research, document analysis and recurring institutional outputs",corePeStage:"Research and Due Diligence",institutionalReadiness:"Strong"},privateEquityView:{bestSuitedFor:"Investment teams seeking a finance-specific research and workflow environment across proprietary documents and external data.",keyStrength:"Breadth across financial research, document interrogation, connected data and institutional work-product generation.",keyConsideration:"Firms should validate implementation effort, data entitlements, output controls and mandatory review requirements for each workflow.",whenToEvaluate:"Evaluate Rogo when research, diligence and recurring finance deliverables need to operate across firm data and external financial sources.",whenToEvaluateAlternatives:"Evaluate alternatives when the priority is a narrower document-analysis layer, a dedicated context graph or a different deployment architecture."},relatedSolutions:ig("rogo"),commercialProfile:ag,peAiClassification:{peRelevance:"High",evidenceConfidence:"High",lastVerified:Ha},optionalValueFields:{portfolioValueRelevance:"Relevant"},evidence:fW,claims:[te("identity.platform","Platform","Rogo",["rogo-product","rogo-company"],"Verified fact"),te("identity.country","Country","USA",["rogo-company"],"Verified fact"),te("identity.officialWebsite","Official website","rogo.ai",["rogo-product"],"Verified fact"),te("identity.shortDescription","Short description","Finance-focused AI research and workflow platform",["rogo-product","rogo-openai"]),te("peClassification.primaryWorkflow","Primary workflow","Financial Research & Workflow Intelligence",["rogo-product","rogo-update"]),te("peClassification.peStages","PE stages","Origination · Research · Due Diligence · Investment Committee · Portfolio",["rogo-product","rogo-update","rogo-openai"]),te("peClassification.lifecycleFit","Lifecycle fit","Origination: Relevant · Research: Core · Due Diligence: Core · Investment Committee: Relevant · Portfolio: Relevant · Exit: Not assessed",["rogo-product","rogo-update","rogo-openai","rogo-datasite"]),te("peClassification.deploymentModel","Deployment model","Buy",["rogo-product"]),te("capability.automationPotential","Automation potential","High",["rogo-product","rogo-update","rogo-openai"]),te("capability.primaryUseCases","Primary use cases","Research · Screening · Diligence · Market analysis · Memo drafting · Portfolio updates",["rogo-product","rogo-update","rogo-openai"]),te("capability.requiredContext","Required context","Firm, deal, financial-data, methodology and workflow context",["rogo-product","rogo-update","rogo-datasite"]),te("capability.humanGate","Human gate","Not assessed",["rogo-product"]),te("capability.workflowCoverage","Workflow coverage","Broad",["rogo-product","rogo-update"]),te("institutionalReadiness.institutionalDeploymentEvidence","Institutional deployment evidence","Strong",["rogo-openai","rogo-datasite"]),te("institutionalReadiness.securitySuitability","Security suitability","Strong",["rogo-security","rogo-datasite"]),te("institutionalReadiness.integrationCapability","Integration capability","Strong",["rogo-product","rogo-update","rogo-datasite"]),te("institutionalReadiness.peAdoptionEvidence","PE adoption evidence","Moderate",["rogo-openai","rogo-update"]),te("commercial.pricingStatus","Pricing status","Not publicly disclosed",["rogo-pricing"],"Verified fact"),te("peAiClassification.peRelevance","PE relevance","High",["rogo-update","rogo-openai","rogo-datasite"]),te("peAiClassification.evidenceConfidence","Evidence confidence","High",["rogo-product","rogo-security","rogo-openai","rogo-datasite"])]},gW=[qe("blueflame-platform","Blueflame AI Platform","https://blueflame.ai/platform","Official product documentation","Blueflame AI","Describes finance-native agentic workflows, source-grounded outputs, connected context and user judgment checkpoints."),qe("blueflame-pe","AI for Private Equity Firms","https://blueflame.ai/solutions/private-equity","Official product documentation","Blueflame AI","Documents sourcing, diligence, investment-committee materials, portfolio monitoring, reporting and human-in-the-loop review."),qe("blueflame-security","Protecting your data with enterprise-grade security","https://blueflame.ai/security","Official security documentation","Blueflame AI","Publishes SOC 2 Type II, GDPR, CPRA and G
313LBA claims and describes isolated client-data environments."),qe("blueflame-integrations","Integrations","https://blueflame.ai/integrations","Official product documentation","Blueflame AI","Lists Datasite, DealCloud, FactSet, Grata, Salesforce and S&P Capital IQ integrations."),qe("blueflame-team","About Blueflame AI","https://blueflame.ai/team","Official company announcement","Blueflame AI","Lists New York, London and Sydney offices and publishes selected investment-firm testimonials."),qe("blueflame-acquisition","Datasite Acquires Leading Agentic AI Company Blueflame","https://blueflame.ai/news/datasite-acquires-leading-agentic-ai-company-blueflame","Official company announcement","Datasite / Blueflame AI","Documents Datasite's acquisition, Blueflame's finance focus and workflows across sourcing, diligence, market research and fundraising."),qe("blueflame-pricing","Blueflame AI public website","https://blueflame.ai/","PrivateEquity.AI source review","PrivateEquity.AI","Public pages were reviewed and provide a demo CTA without displaying public prices.")],Sk={id:"blueflame-ai",slug:"blueflame-ai",identity:{platform:"BlueFlame AI",country:"USA",category:"Private Markets Deal Intelligence",officialWebsite:"https://blueflame.ai",shortDescription:"AI platform for private-markets research, diligence and connected investment workflows.",lastVerified:Ha,pricingStatus:"Not publicly disclosed"},seo:{title:"BlueFlame AI Intelligence Profile | PrivateEquity.AI",description:"Independent BlueFlame AI profile covering PE workflow fit, agentic use cases, institutional readiness and verified public evidence.",keywords:"BlueFlame AI private equity, private markets AI, deal intelligence, diligence AI",socialDescription:"Independent profile of BlueFlame AI for private-markets research, diligence and portfolio workflows.",dateModified:np},peClassification:{primaryWorkflow:"Private Markets Deal Intelligence",peStages:["Origination","Research","Due Diligence","Investment Committee","Portfolio"],lifecycleFit:[{stage:"Origination",status:"Relevant"},{stage:"Research",status:"Relevant"},{stage:"Due Diligence",status:"Core"},{stage:"Investment Committee",status:"Relevant"},{stage:"Portfolio",status:"Relevant"},{stage:"Exit",status:"Not assessed"}],deploymentModel:"Buy"},capability:{automationPotential:"High",deploymentExplanation:"BlueFlame AI is offered as a web-based commercial platform with an application login, connected data sources and an Excel add-in.",automationExplanation:"Its Amp agent coordinates models, tools, sources and finance skills across multi-step research, diligence, modelling and drafting workflows.",humanAccountabilityStatement:"The product states that it pauses when user judgment is needed and keeps critical decisions with the investment professional.",primaryUseCases:["Deal sourcing and screening","CIM and data-room review","Expert-call analysis","Financial analysis and modelling","IC memo and deck drafting","Portfolio and investor reporting"],requiredContext:["Firm knowledge and prior deals","Data-room and deal documents","Market and financial data","Connected CRM and firm systems","Workflow-specific templates and instructions"],humanGate:"User judgment and approval at critical workflow points",workflowCoverage:"Broad"},institutionalReadiness:{institutionalDeploymentEvidence:"Strong",securitySuitability:"Strong",integrationCapability:"Strong",peAdoptionEvidence:"Strong"},commercial:{pricingStatus:"Not publicly disclosed"},decisionSnapshot:{bestSuitedFor:"Private-markets teams seeking connected agentic workflows with explicit review points",corePeStage:"Due Diligence",institutionalReadiness:"Strong"},privateEquityView:{bestSuitedFor:"Private-equity teams seeking a finance-native workspace spanning sourcing, diligence, investment materials and portfolio reporting.",keyStrength:"Explicit private-markets workflow coverage with connected sources and documented human judgment checkpoints.",keyConsideration:"Integration depth, data-residency options, output controls and workflow entitlements should be validated during evaluation.",whenToEvaluate:"Evaluate BlueFlame AI when multiple private-markets workflows need a common agentic layer across firm, market and transaction data.",whenToEvaluateAlternatives:"Evaluate alternatives when the priority is a narrower document-analysis system, context graph or customer-controlled deployment architecture."},relatedSolutions:ig("blueflame-ai"),commercialProfile:ag,peAiClassification:{peRelevance:"High",evidenceConfidence:"High",lastVerified:Ha},optionalValueFields:{portfolioValueRelevance:"Relevant"},evidence:gW,claims:[te("identity.platform","Platform","BlueFlame AI",["blueflame-platform","blueflame-acquisition"],"Verified fact"),te("identity.country","Country","USA",["blueflame-team"],"Verified fact"),te("identity.officialWebsite","Official website","blueflame.ai",["blueflame-platform"],"Verified fact"),te("identity.shortDescription","Short description","AI platform for private-markets research, diligence and connected investment workflows",["blueflame-platform","blueflame-pe"]),te("peClassification.primaryWorkflow","Primary workflow","Private Markets Deal Intelligence",["blueflame-platform","blueflame-pe"]),te("peClassification.peStages","PE stages","Origination · Research · Due Diligence · Investment Committee · Portfolio",["blueflame-pe","blueflame-acquisition"]),te("peClassification.lifecycleFit","Lifecycle fit","Origination: Relevant · Research: Relevant · Due Diligence: Core · Investment Committee: Relevant · Portfolio: Relevant · Exit: Not assessed",["blueflame-pe"]),te("peClassification.deploymentModel","Deployment model","Buy",["blueflame-platform"]),te("capability.automationPotential","Automation potential","High",["blueflame-platform","blueflame-pe","blueflame-acquisition"]),te("capability.primaryUseCases","Primary use cases","Sourcing · Diligence · Calls · Modelling · IC materials · Reporting",["blueflame-pe"]),te("capability.requiredContext","Required context","Firm, deal, market, financial and connected-system context",["blueflame-platform","blueflame-pe","blueflame-integrations"]),te("capability.humanGate","Human gate","User judgment and approval at critical workflow points",["blueflame-platform","blueflame-pe"]),te("capability.workflowCoverage","Workflow coverage","Broad",["blueflame-pe","blueflame-acquisition"]),te("institutionalReadiness.institutionalDeploymentEvidence","Institutional deployment evidence","Strong",["blueflame-team","blueflame-acquisition"]),te("institutionalReadiness.securitySuitability","Security suitability","Strong",["blueflame-security"]),te("institutionalReadiness.integrationCapability","Integration capability","Strong",["blueflame-integrations","blueflame-acquisition"]),te("institutionalReadiness.peAdoptionEvidence","PE adoption evidence","Strong",["blueflame-pe","blueflame-team"]),te("commercial.pricingStatus","Pricing status","Not publicly disclosed",["blueflame-pricing"],"Verified fact"),te("peAiClassification.peRelevance","PE relevance","High",["blueflame-pe","blueflame-acquisition"]),te("peAiClassification.evidenceConfidence","Evidence confidence","High",["blueflame-platform","blueflame-pe","blueflame-security","blueflame-acquisition"])]},xW=[qe("modelml-home","Model ML","https://modelml.com/","Official product documentation","Model ML","Identifies the finance-agent product, office locations and demo-led commercial motion."),qe("modelml-pe","Private Equity","https://modelml.com/customers/private-equity","Official product documentation","Model ML","Documents PE screening, CIM anal
313ysis, diligence questions, investment memos, monitoring and preparation workflows."),qe("modelml-security","Maximum security as the minimum requirement","https://modelml.com/security","Official security documentation","Model ML","Publishes security, identity, encryption, no-training, isolated-storage and customer-infrastructure deployment claims."),qe("modelml-trust","Trust Center - Model ML","https://trust.modelml.com/","Official security documentation","Model ML","Lists SOC 2 Type II, ISO 27001:2022 and penetration-test resources, some of which require access."),qe("modelml-integrations","Model ML Integrations: Financial Data Connectors and MCP","https://www.modelml.com/articles/model-ml-integrations-financial-data-connectors-and-mcp","Official product documentation","Model ML","Describes financial-data, filings, CRM and internal-file connectors plus MCP support for proprietary systems."),qe("modelml-notetaker","Notetaker","https://modelml.com/product/notetaker","Official product documentation","Model ML","Describes automated transcripts, summaries, meeting preparation, exports and governance controls."),qe("modelml-thirdbridge","New collaboration: Model ML","https://www.thirdbridge.com/en-us/about-us/media/news/third-bridge-announces-new-collaboration-with-model-ml","Official company announcement","Third Bridge","Partner announcement describing expert-insight and financial-data synthesis into investment memos and reports for diligence."),qe("modelml-pricing","Model ML public product pages","https://modelml.com/","PrivateEquity.AI source review","PrivateEquity.AI","Public pages were reviewed and direct prospects to book a demo without displaying public prices.")],Ck={id:"model-ml",slug:"model-ml",identity:{platform:"Model ML",country:"USA",category:"Financial Workflow Intelligence",officialWebsite:"https://modelml.com",shortDescription:"Finance-specific AI workspace for screening, diligence, financial analysis and investment work products.",lastVerified:Ha,pricingStatus:"Not publicly disclosed"},seo:{title:"Model ML Intelligence Profile | PrivateEquity.AI",description:"Independent Model ML profile covering private-equity use cases, deployment, institutional readiness and verified public evidence.",keywords:"Model ML private equity, finance agent, diligence AI, investment memo AI",socialDescription:"Independent profile of Model ML for finance workflows, diligence and investment work products.",dateModified:np},peClassification:{primaryWorkflow:"Financial Workflow Intelligence",peStages:["Origination","Research","Due Diligence","Investment Committee","Portfolio"],lifecycleFit:[{stage:"Origination",status:"Relevant"},{stage:"Research",status:"Relevant"},{stage:"Due Diligence",status:"Core"},{stage:"Investment Committee",status:"Relevant"},{stage:"Portfolio",status:"Relevant"},{stage:"Exit",status:"Not assessed"}],deploymentModel:"Buy"},capability:{automationPotential:"High",deploymentExplanation:"Model ML is a commercial finance workspace with documented isolated-storage and customer-infrastructure deployment options.",automationExplanation:"The product automates finance deliverables, document review, transcripts, summaries and connected multi-source workflows.",humanAccountabilityStatement:"Mandatory product-level approval controls are not publicly assessed; investment judgment and accountability remain with the investment team.",primaryUseCases:["PE screening","CIM and diligence analysis","Market and competitive research","Expert-interview synthesis","Investment memo and report drafting","Portfolio monitoring and meeting preparation"],requiredContext:["CIMs and deal documents","Market reports and expert interviews","Financial and market data","CRM and internal files","Deal context, skills and templates"],humanGate:"Not assessed",workflowCoverage:"Broad"},institutionalReadiness:{institutionalDeploymentEvidence:"Moderate",securitySuitability:"Strong",integrationCapability:"Strong",peAdoptionEvidence:"Moderate"},commercial:{pricingStatus:"Not publicly disclosed"},decisionSnapshot:{bestSuitedFor:"Finance teams automating analysis and recurring investment work products",corePeStage:"Due Diligence",institutionalReadiness:"Moderate"},privateEquityView:{bestSuitedFor:"Investment teams seeking finance-specific workflows for screening, diligence, meetings and investment deliverables.",keyStrength:"Combination of finance context, workflow surfaces and connectors across documents, meetings and institutional outputs.",keyConsideration:"Customer references, mandatory approval controls, deployment boundaries and connector entitlements require firm-specific validation.",whenToEvaluate:"Evaluate Model ML when recurring financial analysis and investment work products need a common finance-specific workspace.",whenToEvaluateAlternatives:"Evaluate alternatives when independently documented PE deployment scale or a narrower specialist workflow is required."},relatedSolutions:ig("model-ml"),commercialProfile:ag,peAiClassification:{peRelevance:"High",evidenceConfidence:"Medium",lastVerified:Ha},optionalValueFields:{portfolioValueRelevance:"Relevant"},evidence:xW,claims:[te("identity.platform","Platform","Model ML",["modelml-home"],"Verified fact"),te("identity.country","Country","USA",["modelml-home"],"Verified fact"),te("identity.officialWebsite","Official website","modelml.com",["modelml-home"],"Verified fact"),te("identity.shortDescription","Short description","Finance-specific AI workspace and workflow platform",["modelml-home","modelml-pe"]),te("peClassification.primaryWorkflow","Primary workflow","Financial Workflow Intelligence",["modelml-home","modelml-pe"]),te("peClassification.peStages","PE stages","Origination · Research · Due Diligence · Investment Committee · Portfolio",["modelml-pe","modelml-thirdbridge"]),te("peClassification.lifecycleFit","Lifecycle fit","Origination: Relevant · Research: Relevant · Due Diligence: Core · Investment Committee: Relevant · Portfolio: Relevant · Exit: Not assessed",["modelml-pe","modelml-thirdbridge"]),te("peClassification.deploymentModel","Deployment model","Buy",["modelml-home","modelml-security"]),te("capability.automationPotential","Automation potential","High",["modelml-pe","modelml-notetaker","modelml-integrations"]),te("capability.primaryUseCases","Primary use cases","Screening · Diligence · Re
313search · Interview synthesis · Memos · Monitoring",["modelml-pe","modelml-notetaker","modelml-thirdbridge"]),te("capability.requiredContext","Required context","Deal, market, interview, financial, CRM and firm context",["modelml-pe","modelml-integrations","modelml-notetaker"]),te("capability.humanGate","Human gate","Not assessed",["modelml-pe"]),te("capability.workflowCoverage","Workflow coverage","Broad",["modelml-pe","modelml-integrations"]),te("institutionalReadiness.institutionalDeploymentEvidence","Institutional deployment evidence","Moderate",["modelml-home","modelml-thirdbridge"]),te("institutionalReadiness.securitySuitability","Security suitability","Strong",["modelml-security","modelml-trust"]),te("institutionalReadiness.integrationCapability","Integration capability","Strong",["modelml-integrations","modelml-notetaker"]),te("institutionalReadiness.peAdoptionEvidence","PE adoption evidence","Moderate",["modelml-pe","modelml-thirdbridge"]),te("commercial.pricingStatus","Pricing status","Not publicly disclosed",["modelml-pricing"],"Verified fact"),te("peAiClassification.peRelevance","PE relevance","High",["modelml-pe","modelml-thirdbridge"]),te("peAiClassification.evidenceConfidence","Evidence confidence","Medium",["modelml-pe","modelml-security","modelml-integrations","modelml-thirdbridge"])]},yW=[qe("metal-home","Metal | AI context layer for private capital","https://www.metal.ai/","Official product documentation","Metal","Describes the Context Graph, source permissions, private-capital focus and public demo-led commercial motion."),qe("metal-pe","Metal | AI context layer for private equity","https://www.metal.ai/strategies/private-equity","Official product documentation","Metal","Documents workflows from sourcing and diligence through portfolio monitoring and exit timing."),qe("metal-workflows","Metal Workflows Overview","https://www.metal.ai/blog/metal-workflows","Official product documentation","Metal","Describes reusable deal-intelligence workflows across sourcing, screening, diligence, portfolio value creation, exit and investor relations."),qe("metal-security","Security Without Compromise","https://www.metal.ai/security","Official security documentation","Metal","Publishes encryption, isolation, SSO, audit, regional-hosting, SOC 2 Type II and GDPR claims; ISO 27001 is described as in progress."),qe("metal-company","Built for Lasting Partnership","https://www.metal.ai/company","Official company announcement","Metal","Official company page stating that Metal is based in New York."),qe("metal-customers","Metal Raises $5M from Base10","https://www.metal.ai/blog/seed-fundraise-announcement","Official company announcement","Metal","Names Berkshire Partners, Clearlake Capital and Blue Wolf Capital as pioneering clients."),qe("metal-clearlake","Clearlake Capital and the Shift Toward AI-Native Investing","https://www.metal.ai/blog/clearlake-capital-and-the-shift-toward-ai-native-investing","Official customer case study","Metal","Vendor-hosted customer story describing Clearlake's use of institutional context and investment-committee knowledge."),qe("metal-dealcloud","Introducing Metal's DealCloud Integration","https://metal.ai/blog/introducing-metals-dealcloud-integration","Official product documentation","Metal","Describes two-way DealCloud synchronization, automated document extraction and CRM updates."),qe("metal-pricing","Metal public product pages","https://www.metal.ai/","PrivateEquity.AI source review","PrivateEquity.AI","Public pages were reviewed and direct prospects to request a demo without displaying public prices.")],Ek={id:"metal",slug:"metal",identity:{platform:"Metal",country:"USA",category:"Private Capital Context Intelligence",officialWebsite:"https://www.metal.ai",shortDescription:"Private-capital context platform connecting firm knowledge, deal information and lifecycle workflows.",lastVerified:Ha,pricingStatus:"Not publicly disclosed"},seo:{title:"Metal Intelligence Profile | PrivateEquity.AI",description:"Independent Metal profile covering private-capital workflow fit, context intelligence, readiness and verified public evidence.",keywords:"Metal AI private equity, private capital AI, context graph, deal intelligence",socialDescription:"Independent profile of Metal for private-capital context and deal-lifecycle workflows.",dateModified:np},peClassification:{primaryWorkflow:"Private Capital Context Intelligence",peStages:["Origination","Research","Due Diligence","Investment Committee","Portfolio","Exit"],lifecycleFit:[{stage:"Origination",status:"Relevant"},{stage:"Research",status:"Relevant"},{stage:"Due Diligence",status:"Core"},{stage:"Investment Committee",status:"Relevant"},{stage:"Portfolio",status:"Relevant"},{stage:"Exit",status:"Relevant"}],deploymentModel:"Buy"},capability:{automationPotential:"High",deploymentExplanation:"Metal is presented as a commercial platform purchased from the vendor. Hosting options and customer-controlled deployment are not publicly assessed.",automationExplanation:"Document extraction, CRM updates, screening, diligence, context retrieval and portfolio workflows are described as automated or agent-assisted.",humanAccountabilityStatement:"Mandatory product-level approval controls are not publicly assessed; investment judgment and accountability remain with the investment team.",primaryUseCases:["Thematic research and s
313ourcing","CIM screening and diligence","Expert-call and VDR analysis","IC memo and decision context","Portfolio monitoring and value creation","Exit readiness and investor reporting"],requiredContext:["Firm deal history and criteria","CIMs, models and financial statements","Expert calls and management materials","CRM and document repositories","Portfolio KPIs and prior IC decisions"],humanGate:"Not assessed",workflowCoverage:"Broad"},institutionalReadiness:{institutionalDeploymentEvidence:"Strong",securitySuitability:"Strong",integrationCapability:"Strong",peAdoptionEvidence:"Strong"},commercial:{pricingStatus:"Not publicly disclosed"},decisionSnapshot:{bestSuitedFor:"Private-capital firms building reusable institutional context across the deal lifecycle",corePeStage:"Due Diligence",institutionalReadiness:"Strong"},privateEquityView:{bestSuitedFor:"Private-capital teams seeking a context layer spanning deals, documents, decisions, relationships and portfolio information.",keyStrength:"Explicit private-equity lifecycle coverage built around reusable institutional context and connected firm systems.",keyConsideration:"Deployment architecture, mandatory approval controls and the scope of each integration should be confirmed during diligence.",whenToEvaluate:"Evaluate Metal when fragmented deal history and institutional knowledge limit sourcing, diligence, IC preparation or portfolio monitoring.",whenToEvaluateAlternatives:"Evaluate alternatives when the primary need is standalone document analysis, generic financial research or a specifically documented customer-controlled deployment."},relatedSolutions:ig("metal"),commercialProfile:ag,peAiClassification:{peRelevance:"High",evidenceConfidence:"High",lastVerified:Ha},optionalValueFields:{portfolioValueRelevance:"Relevant"},evidence:yW,claims:[te("identity.platform","Platform","Metal",["metal-home","metal-company"],"Verified fact"),te("identity.country","Country","USA",["metal-company"],"Verified fact"),te("identity.officialWebsite","Official website","metal.ai",["metal-home"],"Verified fact"),te("identity.shortDescription","Short description","Private-capital context and lifecycle intelligence platform",["metal-home","metal-pe"]),te("peClassification.primaryWorkflow","Primary workflow","Private Capital Context Intelligence",["metal-home","metal-workflows"]),te("peClassification.peStages","PE stages","Origination · Research · Due Diligence · Investment Committee · Portfolio · Exit",["metal-pe","metal-workflows"]),te("peClassification.lifecycleFit","Lifecycle fit","Origination: Relevant · Research: Relevant · Due Diligence: Core · Investment Committee: Relevant · Portfolio: Relevant · Exit: Relevant",["metal-pe","metal-workflows"]),te("peClassification.deploymentModel","Deployment model","Buy",["metal-home"]),te("capability.automationPotential","Automation potential","High",["metal-workflows","metal-dealcloud"]),te("capability.primaryUseCases","Primary use cases","Sourcing · Diligence · Calls/VDR · IC context · Portfolio · Exit",["metal-pe","metal-workflows","metal-clearlake"]),te("capability.requiredContext","Required context","Firm, deal, document, CRM, portfolio and decision context",["metal-home","metal-workflows","metal-clearlake"]),te("capability.humanGate","Human gate","Not assessed",["metal-workflows"]),te("capability.workflowCoverage","Workflow coverage","Broad",["metal-pe","metal-workflows"]),te("institutionalReadiness.institutionalDeploymentEvidence","Institutional deployment evidence","Strong",["metal-customers","metal-clearlake"]),te("institutionalReadiness.securitySuitability","Security suitability","Strong",["metal-security"]),te("institutionalReadiness.integrationCapability","Integration capability","Strong",["metal-dealcloud","metal-workflows"]),te("institutionalReadiness.peAdoptionEvidence","PE adoption evidence","Strong",["metal-customers","metal-clearlake"]),te("commercial.pricingStatus","Pricing status","Not publicly disclosed",["metal-pricing"],"Verified fact"),te("peAiClassification.peRelevance","PE relevance","High",["metal-pe","metal-workflows","metal-customers"]),te("peAiClassification.evidenceConfidence","Evidence confidence","High",["metal-pe","metal-security","metal-customers","metal-clearlake"])]},vW=[{id:"hebbia-product",sourceTitle:"Product",sourceUrl:"https://www.hebbia.com/product",sourceType:"Official product documentation",publisher:"Hebbia",verificationDate:"2026-09-01",evidenceNote:"Documents Max for researching and analysing deals, Matrix for analysis across documents with traceability, and workflows for finance."},{id:"hebbia-security",sourceTitle:"The most secure enterprise AI Platform",sourceUrl:"https://www.hebbia.com/security",sourceType:"Official security documentation",publisher:"Hebbia",verificationDate:"2026-09-01",evidenceNote:"Publishes security and data-protection information including encryption, no training on user data, ISO and SOC 2 references."},{id:"hebbia-dpa",sourceTitle:"Hebbia Data Processing Agreement",sourceUrl:"https://www.hebbia.com/dpa",sourceType:"Official security documentation",publisher:"Hebbia",verificationDate:"2026-09-01",evidenceNote:"Official agreement identifying Hebbia Inc. and its New York business address."},{id:"hebbia-deeper-research",sourceTitle:"A Look Inside Hebbia's Deeper Research Agent",sourceUrl:"https://www.hebbia.com/blog/inside-hebbias-deeper-research-agent",sourceType:"Official product documentation",publisher:"Hebbia",verificationDate:"2026-09-01",evidenceNote:"Describes research across private documents and external data sources for investing, banking and law."},{id:"hebbia-private-equity",sourceTitle:"How Private Equity Firms Are Using AI in the Investment Process",sourceUrl:"https://www.hebbia.com/resources/private-equity-ai",sourceType:"Vendor claim",publisher:"Hebbia",verificationDate:"2026-09-01",evidenceNote:"Vendor-published resource describing VDR review, investment-process workflows and investment committee memo preparation."},{id:"hebbia-matrix-2",sourceTitle:"Introducing Matrix 2.0",sourceUrl:"https://www.hebbia.com/blog/introducing-matrix-2-0",sourceType:"Official product documentation",publisher:"Hebbia",verificationDate:"2026-09-01",evidenceNote:"States that AI extraction and summarisation do n
313ot replace expert judgment and describes work across documents, financial data and research."},{id:"openai-hebbia",sourceTitle:"Hebbia's deep research automates 90% of finance and legal work, powered by OpenAI",sourceUrl:"https://openai.com/index/hebbia/",sourceType:"Official customer case study",publisher:"OpenAI",verificationDate:"2026-09-01",evidenceNote:"Customer story describing document-heavy finance and legal workflows and Hebbia's Matrix platform. Any performance statement remains a published customer claim, not an independent benchmark."},{id:"claude-hebbia",sourceTitle:"Customer story | Hebbia",sourceUrl:"https://claude.com/customers/hebbia",sourceType:"Official customer case study",publisher:"Anthropic",verificationDate:"2026-09-01",evidenceNote:"Customer story describing Hebbia as a platform for knowledge work and complex document analysis. Adoption statements remain published customer claims."},{id:"hebbia-preqin",sourceTitle:"Hebbia Empowers Platform Users with Preqin Data; Transforming Private Markets Workflows",sourceUrl:"https://www.businesswire.com/news/home/20251216371604/en/Hebbia-Empowers-Platform-Users-with-Preqin-Data-Transforming-Private-Markets-Workflows",sourceType:"Official company announcement",publisher:"Business Wire / Hebbia",verificationDate:"2026-09-01",evidenceNote:"Announcement describes a Preqin data integration and private-markets workflows including screening, diligence and portfolio monitoring. Customer adoption figures in the release are vendor-published claims."},{id:"hebbia-pricing-review",sourceTitle:"Hebbia public product and demo pages",sourceUrl:"https://www.hebbia.com/product",sourceType:"PrivateEquity.AI source review",publisher:"PrivateEquity.AI",verificationDate:"2026-09-01",evidenceNote:"The public product page was reviewed on the verification date and directs visitors to request a demo without displaying a public price. This records public availability only, not contract pricing."}],_k={id:"hebbia",slug:"hebbia",identity:{platform:"Hebbia",country:"USA",category:"Document & Institutional Intelligence",officialWebsite:"https://www.hebbia.com",shortDescription:"Institutional platform for document-intensive investment research, diligence and source-grounded analysis.",lastVerified:"September 2026",pricingStatus:"Not publicly disclosed"},seo:{title:"Hebbia Intelligence Profile | PrivateEquity.AI",description:"Hebbia Intelligence Profile by PrivateEquity.AI — PE workflow fit, due diligence use cases, institutional readiness, evidence and independent classification.",keywords:"Hebbia private equity, Hebbia diligence, document intelligence, investment research AI",socialDescription:"Independent profile of Hebbia for private-equity research and diligence workflows.",dateModified:"2026-09-01"},peClassification:{primaryWorkflow:"Document & Institutional Intelligence",peStages:["Origination","Research","Due Diligence","Investment Committee"],lifecycleFit:[{stage:"Origination",status:"Relevant"},{stage:"Research",status:"Relevant"},{stage:"Due Diligence",status:"Core"},{stage:"Investment Committee",status:"Relevant"},{stage:"Portfolio",status:"Secondary"},{stage:"Exit",status:"Not assessed"}],deploymentModel:"Buy"},capability:{automationPotential:"High",deploymentExplanation:"Hebbia is presented as a commercial institutional platform rather than a build-your-own agent architecture. Implementation requirements are not publicly assessed here.",automationExplanation:"Document review, cross-source research, extraction, synthesis and traceable analysis can be accelerated based on documented product capabilities.",humanAccountabilityStatement:"Investment judgment and accountability remain with the investment team.",primaryUseCases:["Large-scale document analysis","Investment research","Data-room analysis","Financial and document synthesis","Source-grounded research","Institutional knowledge workflows"],requiredContext:["Proprietary firm documents","Deal documents","Financial information","Internal knowledge","External information sources"],humanGate:"Expert judgment remains with the deal team; mandatory product-level approval controls are not assessed",workflowCoverage:"Broad"},institutionalReadiness:{institutionalDeploymentEvidence:"Strong",securitySuitability:"Strong",integrationCapability:"Strong",peAdoptionEvidence:"Strong"},commercial:{pricingStatus:"Not publicly disclosed"},decisionSnapshot:{bestSuitedFor:"Document-intensive investment workflows",corePeStage:"Due Diligence",institutionalReadiness:"Strong"},privateEquityView:{bestSuitedFor:"Document-intensive investment workflows requiring analysis across large proprietary and external information sets.",keyStrength:"Institutional-scale document and research workflows with source-grounded analysis.",keyConsideration:"Implementation requirements, economics and ROI should be evaluated against firm size, workflow volume, technology stack and security requirements.",whenToEvaluate:"Consider Hebbia when the primary constraint is extracting, comparing and tracing information across large volumes of investment documents and research material.",whenToEvaluateAlternatives:"Other architectures may be more appropriate when the primary requirement is CRM, deal sourcing, financial modelling, workflow automation or portfolio monitoring."},relatedSolutions:[{name:"Rogo",href:"/intelligence/rogo",profileAvailable:!0},{name:"BlueFlame AI",href:"/intelligence/blueflame-ai",profileAvailable:!0},{name:"Metal",href:"/intelligence/metal",profileAvailable:!0},{name:"Model ML",href:"/intelligence/model-ml",profileAvailable:!0}],commercialProfile:{profileClaimed:!1,commercialStatus:"none",demoEnabled:!1,leadGenerationEnabled:!1,sponsorshipStatus:"none"},peAiClassification:{peRelevance:"High",evidenceConfidence:"High",lastVerified:"September 2026"},optionalValueFields:{portfolioValueRelevance:"Secondary"},evidence:vW,claims:[{field:"identity.platform",label:"Platform",displayedValue:"Hebbia",claimType:"Verified fact",evidenceIds:["hebbia-product","hebbia-dpa"]},{field:"identity.country",label:"Country",displayedValue:"USA",claimType:"Verified fact",evidenceIds:["hebbia-dpa"]},{field:"identity.officialWebsite",label:"Official website",displayedValue:"hebbia.com",claimType:"Verified fact",evidenceIds:["hebbia-product"]},{field:"identity.shortDescription",label:"Short description",displayedValue:"Document-intensive investment research and diligence platform",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-deeper-research"]},{field:"peClassification.primaryWorkflow",label:"Primary workflow",displayedValue:"Document & Institutional Intelligence",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-deeper-research"]},{field:"peClassification.peStages",label:"PE stages",displayedValue:"Origination · Research · Due Diligence · Investment Committee",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-private-equity","hebbia-preqin"]},{field:"peClassification.lifecycleFit",label:"Lifecycle fit",displayedValue:"Origination: Relevant · Research: Relevant · Due Diligence: Core · Investment Committee: Relevant · Portfolio: Secondary · Exit: Not assessed",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-private-equity","hebbia-preqin"]},{field:"peClassification.deploymentModel",label:"Deployment model",displayedValue:"Buy",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-security"]},{field:"capability.automationPotential",label:"Automation potential",dis
313playedValue:"High",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-deeper-research"]},{field:"capability.primaryUseCases",label:"Primary use cases",displayedValue:"Document analysis · Investment research · Data-room analysis · Synthesis · Source-grounded research · Institutional knowledge",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-deeper-research","hebbia-private-equity"]},{field:"capability.requiredContext",label:"Required context",displayedValue:"Firm, deal, financial, internal and external information",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-deeper-research","hebbia-preqin"]},{field:"capability.humanGate",label:"Human gate",displayedValue:"Expert judgment remains with the deal team; mandatory product-level approval controls are not assessed",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-matrix-2"]},{field:"capability.workflowCoverage",label:"Workflow coverage",displayedValue:"Broad",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-private-equity","hebbia-preqin"]},{field:"institutionalReadiness.institutionalDeploymentEvidence",label:"Institutional deployment evidence",displayedValue:"Strong",claimType:"PrivateEquity.AI classification",evidenceIds:["openai-hebbia","claude-hebbia"]},{field:"institutionalReadiness.securitySuitability",label:"Security suitability",displayedValue:"Strong",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-security"]},{field:"institutionalReadiness.integrationCapability",label:"Integration capability",displayedValue:"Strong",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-preqin","hebbia-product"]},{field:"institutionalReadiness.peAdoptionEvidence",label:"PE adoption evidence",displayedValue:"Strong",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-private-equity","hebbia-preqin","openai-hebbia"]},{field:"commercial.pricingStatus",label:"Pricing status",displayedValue:"Not publicly disclosed",claimType:"Verified fact",evidenceIds:["hebbia-pricing-review"]},{field:"peAiClassification.peRelevance",label:"PE relevance",displayedValue:"High",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-private-equity","hebbia-preqin"]},{field:"peAiClassification.evidenceConfidence",label:"Evidence confidence",displayedValue:"High",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-product","hebbia-security","hebbia-deeper-research","openai-hebbia"]},{field:"optionalValueFields.portfolioValueRelevance",label:"Portfolio relevance",displayedValue:"Secondary",claimType:"PrivateEquity.AI classification",evidenceIds:["hebbia-preqin"]}]},bW={[_k.slug]:_k,[Ik.slug]:Ik,[Sk.slug]:Sk,[Ck.slug]:Ck,[Ek.slug]:Ek};function eO(e){return bW[e]}const Wd="#D4A843";function wW(e){try{return new URL(e).hostname.replace(/^www\./,"")}catch{return""}}const Z0=({url:e,name:t,small:n})=>{const[i,a]=j.useState(!1),s=wW(e),o=n?"w-5 h-5":"w-7 h-7";return i||!s?r.jsx("div",{className:`${o} rounded flex items-center justify-center text-xs font-bold flex-shrink-0 bg-white/5`,style:{color:Wd},children:t.charAt(0)}):r.jsx("img",{src:`https://www.google.com/s2/favicons?domain=${s}&sz=64`,alt:t,className:`${o} rounded object-contain flex-shrink-0`,loading:"lazy",decoding:"async",onError:()=>a(!0)})},AW=[{title:"AI Investment Intelligence Stack",prompt:`You are an integrated Investment Committee composed of senior partners from Goldman Sachs, Morgan Stanley, Bain & Company, BlackRock, Bridgewater Associates, JPMorgan, Citadel, Renaissance Technologies, and McKinsey Global Institute.
314
315Your task is to produce a fully structured Investment Intelligence Report with institutional standards (private equity / hedge fund level).
316
317OBJECTIVE:
318Evaluate an investment opportunity (company, asset, or sector) across strategic, financial, quantitative, and macro dimensions.
319
320INPUT:
321- Target Company / Asset / Ticker:
322- Sector:
323- Geography:
324- Investment Horizon:
325- Investment Type (Public Equity / Private Equity / Minority / Control):
326- Risk Profile (Low / Medium / High):
327
328OUTPUT:
3291. Executive Summary (max 10 lines)
3302. Market & Competitive Analysis
3313. Financial Profile
3324. Valuation Framework
3335. Risk Assessment
3346. Catalysts & Timing
3357. Quantitative Signals
3368. Macro Overlay
3379. Portfolio Fit
33810. Final Recommendation
339
340Ensure clarity, conciseness, and decision-oriented output. Avoid generic language. Prioritize structured insight and actionable conclusions.`,tip:"Institutional-grade multi-layer analysis engine replicating an investment committee from Goldman Sachs, BlackRock, Bridgewater and McKinsey. Fill the INPUT fields and run."},{title:"Due Diligence Prompt",prompt:"Act as a private equity analyst conducting commercial due diligence on [COMPANY/TARGET]. Analyze: 1) Market size and growth trajectory, 2) Competitive moat and defensibility, 3) Customer concentration and retention metrics, 4) Key risks and red flags, 5) Value creation opportunities post-acquisition. Provide a structured asse
340ssment with investment thesis considerations.",tip:"Structure your investment analysis with PE-grade frameworks."},{title:"Competitive Analysis Prompt",prompt:"Act as a market research analyst and generate a competitive analysis report for [INDUSTRY/MARKET]. Include: 1) Key competitors with their strengths and weaknesses, 2) Market positioning and differentiation factors, 3) Strategic opportunities we could exploit, 4) Threats to monitor. Provide actionable insights to enhance our [COMPETITIVE ADVANTAGE].",tip:"Map the competitive landscape of a target sector to identify differentiation risks, market positioning vulnerabilities, and moat durability — supporting commercial diligence."},{title:"Margin Expansion Prompt",prompt:"Analyze our P&L for a [REVENUE] business in [INDUSTRY]. Current EBITDA margin: [X]%. Benchmark against top quartile performers and identify: 1) Hidden inefficiencies in our cost structure, 2) Revenue mix optimizations, 3) Pricing architecture improvements. Show the path to [TARGET]% EBITDA margin with specific initiatives and expected impact.",tip:"Benchmark a target company's margin structure against top-quartile operators — identifying cost inefficiencies and pricing architecture improvements relevant to value creation planning."},{title:"Risk Assessment Matrix",prompt:"Act like a risk management specialist and develop a risk assessment matrix for [PROJECT/COMPANY]. Include: 1) Risk categories (strategic, operational, financial, compliance), 2) Probability and impact ratings, 3) Mitigation strategies for top risks, 4) Risk owners and escalation protocols, 5) Monitoring and review schedule.",tip:"Build a structured risk matrix for a target company across strategic, operational, financial, and compliance dimensions — identifying top risks and mitigation strategies to inform investment committee review."},{title:"Quarterly Business Review",prompt:"Act like a strategy director and prepare a QBR presentation for [Q/YEAR]. Include: 1) Key metrics vs. targets (revenue, growth, retention), 2) Strategic initiative progress and blockers, 3) Market and competitive developments, 4) Next quarter priorities and resource needs, 5) Board-ready executive summary.",tip:"Prepare institutional-grade quarterly performance reviews for PE sponsors, board members, and investment committee reporting — aligned with value creation plan milestones."},{title:"Financial Forecast",prompt:"Act like a financial analyst and prepare an annual financial forecast for [COMPANY]. Include: 1) Revenue projections with growth assumptions, 2) Expense estimates by category, 3) Cash flow forecasts and working capital needs, 4) Key assumptions and sensitivity analysis, 5) Scenario planning (base, optimistic, conservative). Inform budgeting and guide financial decision-making.",tip:"Project target company financials with growth assumptions, working capital analysis, and scenario stress-testing — supporting investment thesis construction and IC presentation."},{title:"Board Reporting for PE-Backed Companies",prompt:"I'm the CFO of a PE-backed company. Help me draft board commentaries for our quarterly review based on the attached P&L, Revenue details, and Cost details. Keep it professional, bullet-based, highlight key figures, variances vs. budget, and use strong financial storytelling aligned with our sponsor's value creation priorities. Write like a seasoned PE-focused CFO.",tip:"Draft institutional-grade board commentaries for PE sponsors and portfolio company boards."},{title:"ROI Analysis",prompt:"I'm reviewing investment initiatives and need an ROI analysis. Calculate ROI, assess financial effectiveness, and give recommendations to optimize future decisions. Before starting, ask me for the necessary data. Act as the best investment analyst.",tip:"Evaluate return on capital initiatives for portfolio companies or diligence assessments — supporting investment committee decision-making with structured financial logic."},{title:"Growth Strategy Prompt",prompt:"You are a strategic advisor to a [INDUSTRY] company generating [REVENUE] in annual revenue. Analyze our current business model and identify: 1) Three unconventional growth vectors we might be missing, 2) Competitive blind spots based on market dynamics, 3) Strategic partnerships that could 10x our impact. Be specific and contrarian.",tip:"Stress-test the value creation thesis by identifying non-obvious growth vectors and competitive blind spots in a target's business model — before investment committee review."},{title:"McKinsey: Key-Question Sharpener",prompt:`I run [describe your role and the business unit]. Here is the situation in the messy way it actually presents inside the company: [paste 3-10 sentences describing the problem, including disagreements, e.g. 'margins are down 4 points and sales blames pricing while ops blames freight'].
341
342Sharpen this into one decision-grade key question. Rules:
3431. The question must name a decision I actually face, phrased so the answer resolves to a yes/no or a this-versus-that.
3442. It must include the decision maker, the time frame [insert your decision deadline], and the success metric [insert the number that matters, e.g. 'restore gross margin to 34% by Q2'].
3453. Give me 5 candidate versions of the question. Under each, one line on what that phrasing commits me to investigating and one line on what it quietly excludes.
3464. Then tell me which candidate you would pick, why, and the single most dangerous assumption baked into it.
347
348Do not propose solutions. Framing only.`,tip:"Turn a messy business problem into one sharp, decision-grade question before doing any analysis."},{title:"McKinsey: MECE Auditor",prompt:`Below is a problem breakdown my team produced: [paste your issue tree, workplan, or bulleted diagnosis from a meeting doc].
349
350Audit it for structural failures:
3511. Overlaps: name every pair of branches that could both claim the same root cause, and say which dollar or driver would get double-counted.
3522. Gaps: name what a collectively exhaustive version would cover that this one misses. Be specific.
3533. Level mixing: flag any branch sitting at a different altitude than its siblings.
3544. Loaded branches: flag any branch phrased so it presumes its own answer.
355
356Then rewrite the tree once, corrected, and mark every change with the failure it fixes. Do not add anal
356ysis or recommendations.`,tip:"Stress-test any issue tree or workplan for overlaps, gaps, and hidden assumptions before it goes to a client or board."},{title:"McKinsey: Load-Bearing Assumption Extractor",prompt:`You are reviewing a business case before it goes to the board. Here is the plan: [paste the plan, model summary, or deck text].
357
358Do four things:
3591. List every assumption the case depends on, stated or unstated. Include quiet ones: market growth continuing, key customers renewing, the timeline holding, competitors staying still.
3602. Mark each assumption STATED (written in the document) or HIDDEN (required for the math to work but never mentioned).
3613. Rank the full list by fragility: how much the conclusion changes if this assumption is wrong. Use a 1-5 scale where 5 means the recommendation reverses.
3624. For the top five, tell me what evidence currently supports each one and what evidence would prove it wrong. Be specific about what I could check within a week.
363
364Do not soften anything. If the case rests on an assumption nobody wrote down, I need to know before the board finds it.`,tip:"Surface hidden assumptions in any business case before it reaches the board — ranked by how much they could flip the outcome."},{title:"McKinsey: Premortem Runner",prompt:`Run a premortem on this plan. Assume it is [18 months] from now and the plan has failed badly. Do not question whether it failed. It failed.
365
366The plan: [paste the plan]
367Context: [company size, industry, what success was supposed to look like]
368
369Write the failure story in three parts:
3701. The post-mortem memo. Written by the executive who owned the plan, explaining to the CEO what went wrong. Specific causes, specific dates, specific decisions that looked fine at the time.
3712. The five most likely root causes, ranked by probability. For each: the early warning sign we would have seen by month 3, and what we would have needed to do about it.
3723. The one cause nobody in the room would have predicted, and why we were blind to it.
373
374Then step out of the exercise and tell me: which of these failure paths could be closed off with a change to the plan today, and which are risks we would simply be accepting.`,tip:"Force a structured failure story before committing to a plan — surfaces the risks most likely to kill it and the ones nobody saw coming."},{title:"McKinsey: Competitor Teardown",prompt:`You are a competitive strategy analyst. Build a teardown of [COMPETITOR NAME], a rival to my company [YOUR COMPANY] in [CATEGORY / MARKET].
375
376Context on us: [2-3 sentences: what you sell, who buys it, rough revenue scale, how you win deals today].
377
378Produce the teardown in five sections:
3791. Business model. How they make money: revenue streams, pricing model, who pays, gross margin logic. Flag what is documented vs. inferred.
3802. Cost position. Where their cost structure likely sits relative to ours: labor model, geographic footprint, tech base, scale advantages. Label every claim SOURCED or INFERRED.
3813. Positioning. The message they lead with, the segment they anchor on, and what their last 12 months of announcements signal.
3824. Recent moves. Acquisitions, launches, executive hires, and pricing changes over the last 18 months, with what each move signals.
3835. Likely next move. The single most likely strategic move in the next 12 months, plus the second most likely. State your confidence and what evidence would change your read.
384
385End with the three questions I should get answered through customers or field contacts, because public information will not settle them.`,tip:"Build a structured competitor teardown across business model, cost position, positioning, and likely next move — with sourced vs. inferred clearly labelled."},{title:"McKinsey: EBITDA Bridge Builder",prompt:`You are building an as-is to target EBITDA bridge for [COMPANY]. Current annual EBITDA is [CURRENT EBITDA] on revenue of [REVENUE].
386
387Here are the improvement opportunities I believe exist, with my rough sizing where I have one: [LIST EACH, e.g. 'cut invoice-processing cost, my guess is $2M', 'reduce customer churn from 12% to 9%', 'renegotiate the top-10 supplier contracts'].
388
389Build the bridge:
3901. Convert each opportunity into an annualized EBITDA impact with the calculation shown line by line. Where my sizing is a guess, state the assumption and mark it ASSUMED.
3912. Assign each initiative a cost to achieve, one-time and recurring, and a ramp: what percent of run-rate benefit lands in year 1, 2, and 3. Be conservative on ramps and say why.
3923. Check for double counting across initiatives and net out any overlap explicitly.
3934. Produce the bridge as a table: starting EBITDA, each initiative's net contribution by year, ending E
393BITDA.
3945. Close with the three assumptions the whole bridge is most sensitive to, and what evidence I should gather before this goes in front of my CFO.`,tip:"Convert a list of improvement opportunities into a line-by-line EBITDA bridge with year-by-year ramps, double-count checks, and sensitivity flags."},{title:"McKinsey: Nine-Box Portfolio Builder",prompt:`You are a portfolio strategist. Build a GE-McKinsey nine-box for my portfolio, with all score math shown.
395
396Context: [company, total revenue, what the units are: business units, product lines, or regions]
397
398Units to score — one block each:
399[UNIT NAME: revenue, revenue growth last 2 years, gross/operating margin, market size if known, market growth if known, top 2-3 competitors and rough share, one line on anything distinctive]
400
401Work in four steps, stopping after Step 1 for my sign-off:
402Step 1: Propose scoring criteria. Industry attractiveness axis: 4-6 factors with weights summing to 100. Competitive strength axis: 4-6 factors with weights summing to 100. One line of reasoning per weight. Then stop.
403Step 2: After my confirmation, score every unit 1-9 on every factor. Show the full table so I can audit the math. Thin-data scores get marked [ESTIMATE].
404Step 3: Place each unit on the three-by-three grid. Render as a markdown table with units in their cells and revenue noted.
405Step 4: For each unit, write a 3-4 sentence call: the cell, the posture (invest/hold/harvest), and what would need to change to move it.`,tip:"Score every business unit or product line on a GE-McKinsey nine-box with auditable math — and get a clear invest/hold/harvest call for each."},{title:"McKinsey: Answer-First One-Pager",prompt:`You are drafting a one-page decision memo for a senior executive audience. Follow the Minto answer-first structure: state the recommendation in the first sentence, then support it.
406
407DECISION TO BE MADE: [the decision in one sentence]
408DECIDER: [who signs off]
409ANALYSIS AND FACTS: [paste the analysis, data points, and findings you have. Raw notes are fine.]
410OPTIONS ON THE TABLE: [list the live options, including 'do nothing' if it is live]
411CONSTRAINTS: [budget, timeline, regulatory, or political constraints]
412
413Write the memo:
4141. Governing thought first. One sentence that states the recommendation and the single most important reason.
4152. Three to four supporting reasons, MECE: no overlaps, no gaps. Each reason gets a bolded action-title sentence (the claim) followed by 2-3 sentences of evidence. If a reason has no evidence, mark it [UNSUPPORTED].
4163. The so-what: one short paragraph on what happens if we wait or choose wrong.
4174. The ask: one sentence stating exactly what you need the decider to approve, by when.`,tip:"Turn raw analysis into an answer-first executive memo — recommendation up front, MECE support below, with unsupported claims flagged."},{title:"McKinsey: Competitive War-Game",prompt:`We are running a competitive war-game. You play all competitor seats. I play the home team.
418
419My company: [description, market position, key economics]
420My planned move: [the strategic move: price change, new product, market entry, acquisition, channel shift]
421Competitors: [name and one-line description of your top 3 competitors]
422Market context: [growth, buyer behavior, switching costs, anything unusual]
423
424Run three rounds:
425Round 1: I make my move. As each competitor, respond with the counter-move they would actually make given their real incentives and constraints. Choose the likely move, not the admirable one. State the reasoning in each competitor's own voice.
426Round 2: Tell me the strongest response available to me against each counter. Then, as each competitor, counter that response.
427Round 3: Step out of character as the market team. Award rough share and margin outcomes for each branch and rank branches from best to worst for me.
428
429End with: the branch where my move fails fastest, and the earliest external signal that would tell me I am living in that branch.`,tip:"Run a three-round war-game where the AI plays every competitor seat — and end with the failure branch and its earliest warning signal."},{title:"McKinsey: Vanity-Metric Audit",prompt:`You are auditing my current KPI scorecard against one test: does moving this number create value, or does it just look like management?
430
431Inputs:
432- Current scorecard: [paste every metric you review monthly or quarterly, with the owner if known]
433- How we make money: [business model in 3-5 sentences]
434- Financials: [P&L summary and key balance-sheet lines]
435
436Classify every metric into one of four buckets:
4371. VALUE DRIVER: traces to margin, growth, or capital efficiency through a chain you can state in one sentence.
4382. HEALTH CHECK: worth watching, but not a leadership performance metric. Say where it should live instead.
4393. VANITY: can improve while value stays flat or falls. Describe the specific way it can be gamed or mislead.
4404. MISSING: value drivers in my business that no current metric covers. Name the metric that should exist and who should own it.
441
442End with a proposed cut list: the metrics to remove from the leadership review, and one sentence each on why.`,tip:"Classify every KPI on your scorecard as a value driver, health check, vanity metric, or missing — and walk out with a cut list for the leadership review."}],jW=({p:e})=>{const[t,n]=j.useState(!1),[i,a]=j.useState(!1),s=e.prompt.length>220,o=!i&&s?e.prompt.slice(0,220)+"…":e.prompt,l=()=>{navigator.clipboard.writeText(e.prompt),n(!0),setTimeout(()=>n(!1),2e3)};return r.jsxs("div",{className:"dense-card bg-[#141414] rounded-xl border border-white/15 hover:border-[#D4A843]/40 transition-all duration-200 p-5 flex flex-col gap-3",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsx("h4",{className:"text-sm font-semibold text-white leading-snug",children:e.title}),r.jsxs("button",{onClick:l,className:"flex-shrink-0 flex items-center gap-1.5 px-2.5 py-1 rounded-md text-xs font-medium transition-all duration-200 cursor-pointer",style:t?{backgroundColor:"rgba(196,151,58,0.15)",color:Wd,border:"1px solid rgba(196,151,58,0.6)"}:{backgroundColor:"rgba(196,151,58,0.07)",color:Wd,border:"1px solid rgba(196,151,58,0.4)"},children:[t?r.jsx(Ia,{className:"h-3 w-3"}):r.jsx(W0,{className:"h-3 w-3"}),t?"Copied":"Copy"]})]}),r.jsxs("div",{className:"bg-black/60 rounded-lg p-3.5 border border-white/10",children:[r.jsx("p",{className:"text-xs text-gray-300 font-mono leading-relaxed whitespace-pre-wrap",children:o}),s&&r.jsx("button",{onClick:()=>a(!i),className:"mt-2.5 text-xs text-[#BBBBBB] hover:text-gray-400 flex items-center gap-1 transition-colors cursor-pointer",children:i?r.jsxs(r.Fragment,{children:[r.jsx(ng,{className:"h-3 w-3"})," Show less"]}):r.jsxs(r.Fragment,{children:[r.jsx(La,{className:"h-3 w-3"})," Show full prompt"]})})]}),r.jsx("p",{className:"text-xs text-[#BBBBBB] italic leading-relaxed",children:e.tip})]})},kW=({item:e})=>{const t=e.profileSlug?eO(e.profileSlug):void 0;return t?r.jsx(de,{href:`/intelligence/${t.slug}`,children:r.jsxs("div",{id:`${t.slug}-intelligence-card`,"data-testid":e.testId,className:"dense-card group flex h-full cursor-pointer flex-col rounded-xl border border-[#D4A843]/30 bg-[#111111] p-5 transition-all hover:border-[#D4A843]/60",children:[r.jsxs("div",{className:"mb-4 flex items-center justify-between gap-3",children:[r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx(Z0,{url:e.officialUrl,name:e.name}),r.jsx("p",{className:"text-sm font-semibold uppercase tracking-[0.12em] text-white transition-colors group-hover:text-[#D4A843]",children:t.identity.platform})]}),r.jsx("span",{className:"text-[10px] font-medium uppercase tracking-[0.14em] text-[#9A9A9A]",children:t.identity.country})]}),r.jsx("p",{className:"mb-4 text-sm leading-relaxed text-[#C8C8C8]",children:t.identity.shortDescription}),r.jsx("div",{className:"mb-5 flex flex-wrap gap-2",children:t.peClassification.peStages.slice(0,3).map(n=>r.jsx("span",{className:"rounded border border-white/10 px-2 py-1 text-[9px] font-semibold uppercase tracking-[0.12em] text-[#AFAFAF]",children:n},n))}),r.jsx("dl",{className:"grid grid-cols-2 gap-x-5 gap-y-3 border-t border-white/8 pt-4",children:[["PE Relevance",t.peAiClassification.peRelevance],["Automation",t.capability.automationPotential],["Deployment",t.peClassification.deploymentModel],["Evidence",t.peAiClassification.evidenceConfidence]].map(([n,i])=>r.jsxs("div",{children:[r.jsx("dt",{className:"text-[9px] font-semibold uppercase tracking-[0.14em] text-[#777777]",children:n}),r.jsx("dd",{className:"mt-1 text-xs font-semibold uppercase tracking-wide text-white",children:i})]},n))}),r.jsxs("span",{className:"mt-5 inline-flex items-center gap-1.5 border-t border-white/8 pt-4 text-xs font-semibold text-[#D4A843]",children:["View intelligence",r.jsx(qt,{className:"h-3.5 w-3.5 transition-transform group-hover:translate-x-0.5"})]}),r.jsx("span",{className:"mt-2 text-[9px] uppercase tracking-[0.12em] text-[#777777]",children:"PrivateEquity.AI classifications · Evidence in profile"})]})}):null},NW=({item:e})=>e.profileAvailable&&e.profileSlug?r.jsx(kW,{item:e}):r.jsxs("a",{id:`solution-${e.slug}`,href:e.officialUrl,target:"_blank",rel:"nofollow noopener noreferrer","data-testid":e.testId,className:"dense-card block bg-[#111111] rounded-xl p-5 border border-white/10 hover:border-[#D4A843]/30 transition-all group",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[r.jsx(Z0,{url:e.officialUrl,name:e.name}),r.jsx("p",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors leading-snug flex-1",children:e.name}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0",style:{color:"#D4A843"}})]}),r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed",children:e.shortDe
442scription})]}),IW={USA:"🇺🇸",Netherlands:"🇳🇱",UK:"🇬🇧",France:"🇫🇷",India:"🇮🇳",Australia:"🇦🇺",Canada:"🇨🇦"};function SW(e){return e.split("/").map(t=>IW[t.trim()]).filter(Boolean).join(" ")}const Pk=({item:e})=>{const t=SW(e.country),n=e.countryCode??(e.country==="Open-source"?"OSS":e.country==="Australia / USA"?"AU/US":e.country);return r.jsxs(r.Fragment,{children:[r.jsx(Z0,{url:e.officialUrl,name:e.name,small:!0}),r.jsx("span",{className:"text-xs text-gray-300 group-hover:text-white transition-colors whitespace-nowrap",children:e.name}),r.jsxs("span",{className:"ml-auto whitespace-nowrap text-[9px] font-semibold uppercase tracking-wider text-[#929292]",title:e.country,"aria-label":e.country,children:[t&&r.jsxs("span",{"aria-hidden":"true",children:[t," "]}),n]})]})},CW=({item:e})=>{const t="dense-map-chip flex min-w-0 items-center gap-2 bg-[#111111] border border-white/10 hover:border-[#D4A843]/40 rounded-lg px-3 py-2 transition-all group";return e.profileAvailable&&e.profileSlug?r.jsx(de,{href:`/intelligence/${e.profileSlug}`,className:t,children:r.jsx(Pk,{item:e})}):r.jsx("a",{href:e.officialUrl,target:"_blank",rel:"nofollow noopener noreferrer",className:t,children:r.jsx(Pk,{item:e})})},EW={"horizontal-ai-foundation":"General-purpose AI for firm-wide knowledge work.","deal-intelligence":"AI platforms built for private equity diligence.","private-market-data-sourcing":"Data infrastructure for market mapping and origination.","commercial-intelligence":"AI for market analysis and commercial diligence.","legal-legal-due-diligence":"Legal AI for transaction research and review.","due-diligence-risk-intelligence":"Specialist intelligence for diligence and risk assessment.","compliance-regulatory-intelligence":"Regulatory intelligence for institutional control workflows.","transaction-execution":"Infrastructure for data rooms and deal execution.","portfolio-management-analytics":"Fund systems and analytics for portfolio oversight.","workflow-knowledge-infrastructure":"Automation and knowledge systems for investment teams."},_W={"@context":"https://schema.org","@type":"ItemList",name:"Global PE Technology Map",description:"The technology stack reshaping private equity across research, diligence, execution and portfolio management.",numberOfItems:Nk.length,itemListElement:Nk.map((e,t)=>({"@type":"ListItem",position:t+1,item:{"@type":"SoftwareApplication",name:e.name,url:e.profileAvailable&&e.profileSlug?`https://www.privatequity.ai/intelligence/${e.profileSlug}`:e.officialUrl,applicationCategory:e.category,description:e.shortDescription}}))},Tk=({label:e,title:t,description:n,children:i})=>r.jsxs("section",{children:[r.jsxs("div",{className:"dense-section-heading mb-6",children:[r.jsx("p",{className:"section-kicker text-xs font-semibold tracking-widest uppercase mb-2",children:e}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-2",children:t}),r.jsx("p",{className:"text-sm text-[#CCCCCC]",children:n})]}),i]}),PW=()=>(j.useEffect(()=>{if(window.location.hash){const e=window.location.hash.slice(1),t=document.getElementById(e);t&&requestAnimationFrame(()=>t.scrollIntoView({behavior:"smooth",block:"start"}))}},[]),r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Intelligence Stack — AI Diligence Tools for Private Equity — PrivateEquity.AI",description:"The AI systems and data platforms changing how private equity analyses targets, markets, and portfolios. Deal intelligence, private market data, and diligence research tools.",canonicalUrl:"/ai-strategy-toolkit",keywords:"AI due diligence private equity, deal intelligence AI, PE diligence tools, investment research AI, private market data platforms",children:r.jsx("script",{type:"application/ld+json",children:JSON.stringify(_W)})}),r.jsxs("div",{className:"institutional-page dense-content-page dense-toolkit-page min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A]",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-16 md:py-24 max-w-4xl",children:[r.jsx("h1",{className:"text-5xl md:text-6xl lg:text-7xl font-light tracking-tight text-white mb-6",children:"Intelligence Stack for Private Capital"}),r.jsx("p",{className:"text-base text-gray-400 max-w-2xl mb-3",children:"The AI systems and data infrastru
442cture changing how private equity analyses targets, markets, and portfolios."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl mb-3",children:"The quality of investment decisions depends on the quality of the intelligence layer behind them. This stack maps what matters in diligence — and why."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Educational reference only. No affiliation or endorsement."})]})}),r.jsx("section",{id:"pe-ai-stack-navigator",className:"elevated-section bg-[#141414] border-t border-white/5 scroll-mt-24",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 py-8 max-w-5xl",children:r.jsx("div",{className:"dense-navigator bg-[#0D0D0D] rounded-2xl border border-white/10 p-6 md:p-10 mb-2",children:r.jsx(mW,{})})})}),r.jsx("section",{id:"global-pe-technology-map",className:"bg-[#0A0A0A] border-t border-white/5 scroll-mt-24",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-10 md:py-12 max-w-5xl",children:[r.jsx("p",{className:"section-kicker text-xs font-semibold tracking-widest uppercase mb-2",children:"Private Equity Technology Architecture"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-2 tracking-tight",children:"Global PE Technology Map"}),r.jsx("p",{className:"text-sm font-medium text-white max-w-2xl mb-2",children:"The technology stack reshaping private equity."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-3xl mb-3 leading-relaxed",children:"Mapping the AI, intelligence, data and workflow platforms changing how private equity firms source, diligence, execute and manage investments."}),r.jsx("p",{className:"text-xs text-[#999999] max-w-2xl mb-8",children:"The map provides orientation. The Navigator above identifies platforms relevant to a specific workflow."}),r.jsx("ol",{className:"grid md:grid-cols-2 gap-4",children:ab.map(e=>r.jsx("li",{children:r.jsxs("article",{className:"h-full rounded-lg border border-white/10 bg-[#0D0D0D] p-4 md:p-5",children:[r.jsxs("div",{className:"mb-2 flex items-baseline gap-3",children:[r.jsx("span",{className:"text-[10px] font-semibold tracking-[0.18em] text-[#D4A843]",children:e.number}),r.jsx("h3",{className:"text-xs font-semibold uppercase tracking-[0.12em] text-white",children:e.layer})]}),r.jsx("p",{className:"mb-4 max-w-xl text-xs leading-relaxed text-[#AFAFAF]",children:e.description}),r.jsx("div",{className:"grid gap-2 sm:grid-cols-2",children:e.items.map(t=>r.jsx(CW,{item:t},t.id))})]})},e.id))}),r.jsx("p",{className:"text-[11px] text-[#929292] mt-8 leading-relaxed max-w-3xl",children:"PrivateEquity.AI classifications are based on documented capabilities and evidence. They are not performance ratings or endorsements."})]})}),r.jsx("div",{children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl content-rhythm",children:[ab.map(e=>r.jsx(Tk,{label:`${e.number} — ${e.layer}`,title:EW[e.id],description:e.description,children:r.jsx("div",{className:`grid gap-5 md:grid-cols-2 ${e.items.length>=5?"lg:grid-cols-3":""}`,children:e.items.map(t=>r.jsx(NW,{item:t},t.id))})},e.id)),r.jsxs(Tk,{label:"Diligence Intelligence Prompts",title:"Institutional-grade prompts for investment and diligence workflows.",description:"A curated set of PE-relevant prompts for due diligence, investment analysis, portfolio review, and board reporting. Copy, adapt, and run.",children:[r.jsx("div",{className:"grid md:grid-cols-2 gap-3",children:AW.map(e=>r.jsx(jW,{p:e},e.title))}),r.jsxs("p",{className:"mt-4 text-xs text-[#AAAAAA]",children:["10 featured prompts above."," ",r.jsx("a",{href:"/mckinsey-prompts",className:"underline hover:text-[#CCCCCC] transition-colors",children:"Explore the remaining 95 prompts across 21 skill families →"})]})]}),r.jsx("section",{id:"build-your-ai-stack",className:"scroll-mt-24",children:r.jsxs("div",{className:"rounded-xl border border-[#D4A843]/25 bg-[#111111] p-6 md:p-9",children:[r.jsx("p",{className:"section-kicker mb-3 text-xs font-semibold uppercase tracking-widest",children:"Build the AI stack for your firm"}),r.jsx("h2",{className:"mb-4 text-2xl font-light text-white md:text-3xl",children:"Match the architecture to the firm."}),r.jsx("p",{className:"max-w-3xl text-sm leading-relaxed text-[#CCCCCC]",children:"Different firms require different technology architectures. Fund size, strategy, existing systems, data infrastru
442cture and internal capabilities determine the appropriate stack."}),r.jsxs("div",{className:"mt-7 flex flex-col gap-3 sm:flex-row sm:flex-wrap sm:items-center sm:gap-5",children:[r.jsxs("a",{href:"#pe-ai-stack-navigator",className:"inline-flex w-fit items-center gap-2 border border-[#D4A843]/60 px-5 py-3 text-sm font-semibold text-[#D4A843] hover:bg-[#D4A843]/10",children:["Find the right AI solution ",r.jsx(qt,{className:"h-3.5 w-3.5"})]}),r.jsxs("a",{href:"mailto:[email protected]",className:"inline-flex w-fit items-center gap-2 px-1 py-3 text-sm font-medium text-[#CCCCCC] hover:text-white",children:["Discuss your AI stack ",r.jsx(qt,{className:"h-3.5 w-3.5"})]})]})]})}),r.jsxs("div",{className:"pt-4 border-t border-white/10",children:[r.jsx("p",{className:"text-xs text-[#AAAAAA] leading-relaxed max-w-2xl",children:"Educational reference only. No affiliation or endorsement. All tool names and trademarks belong to their respective owners."}),r.jsxs("div",{className:"flex flex-wrap gap-5 mt-5",children:[r.jsx(de,{href:"/assessment",children:r.jsxs("span",{className:"text-sm font-medium inline-flex items-center gap-1.5 cursor-pointer transition-opacity hover:opacity-75",style:{color:Wd},children:["Explore the Assessment ",r.jsx(qt,{className:"h-3.5 w-3.5"})]})}),r.jsx(de,{href:"/infrastructure",children:r.jsxs("span",{className:"text-sm font-medium inline-flex items-center gap-1.5 cursor-pointer transition-opacity hover:opacity-75",style:{color:Wd},children:["Explore Infrastructure ",r.jsx(qt,{className:"h-3.5 w-3.5"})]})})]})]})]})})]}),r.jsx(ht,{})]})),TW=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Legal - PrivateEquity.AI",description:"Legal information, privacy, and terms for PrivateEquity.AI",canonicalUrl:"/legal",keywords:"legal, privacy, terms, research platform"}),r.jsx("div",{className:"min-h-screen bg-[#0A0A0A]",children:r.jsxs("div",{className:"max-w-3xl mx-auto px-6 py-20",children:[r.jsx("h1",{className:"text-3xl font-bold mb-12 text-white",children:"Legal Information"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Privacy"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"Data from forms is used only to respond to inquiries and for research updates."}),r.jsx("p",{children:"We do not use tracking, profiling, advertising, or third-party marketing tools."}),r.jsx("button",{onClick:()=>window.location.href="mailto:[email protected]?subject=Data%20Request",className:"inline-flex items-center px-5 py-2.5 mt-3 rounded-lg text-white text-sm font-medium transition",style:{backgroundColor:"#D4A843"},"data-testid":"button-request-data",children:"Request Data or Removal"})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Non-Affiliation"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"PrivateEquity.ai is an independent research hub."}),r.jsx("p",{children:"All references to institutions or companies are for informational purposes only and do not imply affiliation or endorsement."})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Not Investment Advice"}),r.jsx("p",{className:"text-gray-400 leading-relaxed",children:"All content is educational and does not constitute financial, investment, or regulated advice."})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Trademarks"}),r.jsx("p",{className:"text-gray-400 leading-relaxed",children:"All trademarks belong to their respective owners."})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Research vs Product"}),r.jsx("p",{className:"text-gray-400 leading-relaxed",children:"All references to AI systems or workflows are exploratory. They do not represent commercial product features."})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Copyright"}),r.jsx("p",{className:"text-gray-400 leading-relaxed",children:"© 2025 PrivateEquity.ai. All rights reserved."})]})]})}),r.jsx(ht,{})]}),rt="#D4A843",DW="mailto:[email protected]?subject=PrivateEquity.AI%20Assessment%20Discussion",OW=[{icon:Yq,label:"AI Value Potential",question:"How much economic value could AI potentially create?",detail:"Revenue, productivity, operating leverage and business-model opportunities."},{icon:iG,label:"AI Value at Risk",question:"Where could AI erode enterprise value?",detail:"Competitive disruption, pricing pressure, commoditization and operating-model exposure."},{icon:Qq,label:"AI Capture Readiness",question:"Can the company actually capture the opportunity?",detail:"Data, technology, organization, governance and execution capacity."},{icon:bD,label:"AI Execution Gap",question:"What stands between potential and results?",detail:"The distance between identifiable economic opportunity and the company’s ability to capture it."}],MW=[{number:"01",eyebrow:"Before Investment",audience:"For Investment Teams",body:"Understand how AI could strengthen or weaken the target’s investment case before capital is committed.",output:"AI exposure · upside · downside · defensibility · execution capacity"},{number:"02",eyebrow:"During Ownership",audience:"For Operating Partners",body:"Identify where AI can create measurable economic value and where portfolio-company resources should be deployed first.",output:"Priorities · investment · time-to-value · 100-day actions"}
442,{number:"03",eyebrow:"Before Transformation",audience:"For CEOs & Company Leaders",body:"Determine where AI can improve economics, scalability and competitive positioning before committing significant resources.",output:"Opportunities · readiness · investment case · roadmap"}],RW=[["01","AI Structural Exposure","How fundamentally AI could alter the company’s economics and competitive position."],["02","Revenue Upside","AI-enabled products, commercial acceleration and new revenue opportunities."],["03","EBITDA & Productivity Upside","Cost structure, automation, capacity and operating leverage."],["04","Data Advantage","Whether proprietary data can become an economic or competitive asset."],["05","Digital & AI Readiness","Systems, architecture, integration and existing AI capabilities."],["06","Organizational Capacity","Leadership, ownership, talent and ability to execute change."]],LW=[["Where?","3–5 highest-value opportunities"],["How much?","Indicative economic-impact range"],["At what cost?","Indicative one-off and recurring investment"],["How quickly?","Time to pilot, first value and scale"],["What could go wrong?","AI Value at Risk"],["Can they execute?","Capture Readiness & Execution Gap"],["What first?","100-day prioritized action plan"]],Hp=[["01","Data Intake","Financial, operating, organizational, technology and strategic information."],["02","Economic & AI Exposure Analysis","Company economics are mapped against AI value-creation and value-at-risk mechanisms."],["03","Senior Review","Opportunities, assumptions and economic implications are challenged before inclusion."],["04","Decision-Ready Output","Prioritized opportunities, indicative economics, investment requirements, time-to-value and recommended action."]],FW=[["Financial Performance","P&L, revenue, margins and principal cost pools."],["Organization","Headcount and personnel costs by function."],["Operations","Core processes, workflows and bottlenecks."],["Technology","Principal systems, applications and existing AI tools."],["Data","Key data assets, accessibility and ownership."],["Strategy","Business plan, priorities and competitive context."]],BW=["Executive Investment View","AI Value Exposure Scorecard","Top 3–5 Value Opportunities","AI Value Bridge","Value at Risk","100-Day AI Value Plan","12–24 Month Roadmap","Indicative Investment Case","Evidence & Assumptions Register"],Yr=({eyebrow:e,title:t,children:n,centered:i=!1})=>r.jsxs("div",{className:i?"text-center max-w-3xl mx-auto":"max-w-3xl",children:[r.jsx("p",{className:"text-xs font-semibold tracking-[0.18em] uppercase mb-4",style:{color:rt},children:e}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light tracking-tight text-white leading-tight",children:t}),n&&r.jsx("div",{className:"mt-6 text-base text-[#BBBBBB] leading-relaxed space-y-4",children:n})]}),Dk=({children:e="Discuss an Assessment →"})=>r.jsx("a",{href:DW,className:"inline-flex items-center gap-2 border px-6 py-3 text-sm font-medium tracking-wide transition-colors hover:bg-white/5",style:{color:rt,borderColor:rt},children:e}),$W=()=>r.jsx("a",{href:"#methodology",className:"inline-flex items-center gap-2 border px-6 py-3 text-sm font-medium tracking-wide transition-colors hover:bg-white/5",style:{color:rt,borderColor:rt},children:"Explore the Methodology →"}),UW=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"AI Value Exposure & Readiness Assessment | PrivateEquity.AI",description:"Investment-grade AI assessment for private capital and company leaders, identifying AI value potential, value at risk, execution readiness, investment priorities and time-to-value.",canonicalUrl:"/assessment",keywords:"AI value exposure assessment, AI readiness assessment, private capital AI, AI value creation, AI execution gap"}),r.jsxs("div",{className:"institutional-page page-assessment min-h-screen bg-[#0A0A0A] text-white",children:[r.jsxs("section",{className:"relative overflow-hidden border-b border-white/5",children:[r.jsx("div",{className:"absolute inset-0 pointer-events-none",style:{background:"radial-gradient(ellipse 75% 55% at 50% 0%, rgba(196,151,58,0.16) 0%, transparent 72%)"}}),r.jsx("div",{className:"relative container mx-auto max-w-6xl px-4 sm:px-8 py-20 md:py-28",children:r.jsxs("div",{className:"max-w-4xl",children:[r.jsx("p",{className:"text-xs font-semibold tracking-[0.18em] uppercase mb-6",style:{color:rt},children:"PE AI Value Exposure & Readiness Assessment"}),r.jsx("h1",{className:"text-4xl md:text-6xl lg:text-7xl font-light tracking-tight leading-[1.06] max-w-4xl",children:"Know where AI changes enterprise value."}),r.jsx("p",{className:"mt-8 text-lg md:text-xl text-[#CCCCCC] leading-relaxed max-w-3xl",children:"An investment-grade rapid assessment identifying where AI can create or erode enterprise value, what to prioritize, the indicative investment required, and how quickly measurable impact could emerge."}),r.jsx("p",{className:"mt-5 text-sm text-[#AAAAAA]",children:"For investment teams, operating partners and company leaders."}),r.jsx("div",{className:"flex flex-wrap items-center gap-5 mt-9",children:r.jsx($W,{})}),r.jsx("p",{className:"mt-10 text-xs text-[#999999]",children:"Independent assessment. Technology-agnostic. No vend
442or affiliation or endorsement."})]})})]}),r.jsx("section",{className:"py-20 md:py-28 bg-[#141414] border-b border-white/5",children:r.jsx("div",{className:"container mx-auto max-w-5xl px-4 sm:px-8",children:r.jsxs(Yr,{eyebrow:"The Investment Question",title:r.jsxs(r.Fragment,{children:["AI adoption is not the question.",r.jsx("br",{}),"Enterprise value is."]}),children:[r.jsx("p",{children:"Companies are deploying AI across functions, workflows and products. But adoption alone says little about economic impact."}),r.jsx("p",{children:"The relevant questions are harder: Where can AI materially improve revenue, margins or scalability? Where could it erode competitive advantage? What investment is justified? And how quickly can measurable value emerge?"}),r.jsx("p",{children:"The PE AI Value Exposure & Readiness Assessment is designed to turn those questions into a decision-ready view."})]})})}),r.jsx("section",{className:"py-20 md:py-28",children:r.jsxs("div",{className:"container mx-auto max-w-6xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"The Value Exposure Lens",title:"Four indicators. One investment view.",centered:!0}),r.jsx("div",{className:"mt-8 border-y border-white/10 py-3",children:r.jsxs("div",{className:"flex flex-wrap items-center justify-center gap-x-6 gap-y-2 text-[10px] uppercase tracking-widest",children:[r.jsx("span",{className:"text-xs font-medium tracking-[0.16em] text-[#CCCCCC]",children:"Label key"}),[["V","Value Exposure"],["D","Decision Point"],["F","Framework"],["O","Output"],["P","Process"]].map(([e,t])=>r.jsxs("span",{className:"inline-flex items-center gap-2 text-[#AAAAAA]",children:[r.jsx("span",{className:"font-semibold",style:{color:rt},children:e}),r.jsx("span",{children:t})]},e))]})}),r.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-4 mt-12",children:OW.map(({icon:e,label:t,question:n,detail:i},a)=>r.jsxs("article",{className:"bg-[#141414] border border-white/10 p-6 md:p-7 min-h-[250px]",children:[r.jsxs("div",{className:"flex items-center justify-between mb-7",children:[r.jsx(e,{className:"h-6 w-6",style:{color:rt}}),r.jsxs("span",{className:"text-[10px] font-medium uppercase tracking-widest text-[#A99262]",children:["V · ",String(a+1).padStart(2,"0")]})]}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-3",children:t}),r.jsx("p",{className:"text-sm text-[#DDDDDD] leading-relaxed mb-4",children:n}),r.jsx("p",{className:"text-xs text-[#999999] leading-relaxed",children:i})]},t))})]})}),r.jsx("section",{className:"py-20 md:py-28 bg-[#141414] border-y border-white/5",children:r.jsxs("div",{className:"container mx-auto max-w-6xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"Built for Private Capital and Company Leaders",title:"One assessment. Three decision points.",centered:!0}),r.jsx("div",{className:"grid md:grid-cols-3 gap-5 mt-12",children:MW.map(e=>r.jsxs("article",{className:"border border-white/10 bg-[#111111] p-7 md:p-8",children:[r.jsxs("div",{className:"flex items-center justify-between mb-8",children:[r.jsxs("span",{className:"text-2xl font-light",style:{color:rt},children:["D · ",e.number]}),r.jsx("span",{className:"text-xs uppercase tracking-widest text-[#888888]",children:e.eyebrow})]}),r.jsx("h3",{className:"text-xl font-medium text-white mb-3",children:e.audience}),r.jsx("p",{className:"text-sm text-[#BBBBBB] leading-relaxed min-h-[90px]",children:e.body}),r.jsxs("div",{className:"border-t border-white/10 mt-7 pt-5",children:[r.jsx("p",{className:"text-[10px] uppercase tracking-widest mb-2",style:{color:rt},children:"Output"}),r.jsx("p",{className:"text-xs text-[#AAAAAA] leading-relaxed",children:e.output})]})]},e.number))})]})}),r.jsx("section",{id:"methodology",className:"scroll-mt-24 py-20 md:py-28",children:r.jsxs("div",{className:"container mx-auto max-w-6xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"Assessment Framework",title:"Enterprise value first. Technology second.",children:r.jsx("p",{children:"The assessment examines AI through the interaction between company economics, business model, competitive position and the organization’s ability to execute."})}),r.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-0 mt-12",children:RW.map(([e,t,n])=>r.jsxs("article",{className:"bg-[#111111] border border-white/10 p-6 min-h-[175px]",children:[r.jsxs("p",{className:"text-xs font-medium tracking-widest mb-5",style:{color:rt},children:["F · ",e]}),r.jsx("h3",{className:"text-base font-semibold text-white mb-3",children:t}),r.jsx("p",{className:"text-sm text-[#999999] leading-relaxed",children:n})]},e))}),r.jsx("p",{className:"text-xs text-[#777777] mt-6",children:"The assessment does not publish scoring weights, calculation formulas, internal thresholds, benchmark libraries or proprietary scoring rules."})]})}),r.jsx("section",{className:"py-20 md:py-28 bg-[#141414] border-y border-white/5",children:r.jsxs("div",{className:"container mx-auto max-w-5xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"Decision-Ready Output",title:"From AI potential to an investment case."}),r.jsx("div",{className:"border border-white/10 mt-12 overflow-x-auto bg-[#0E0E0E] shadow-[0_18px_50px_rgba(0,0,0,0.22)]",children:r.jsxs("table",{className:"w-full min-w-[560px] border-collapse text-left",children:[r.jsx("thead",{className:"bg-[#1B1B1B] text-xs uppercase tracking-[0.18em] text-[#A99262]",children:r.jsxs("tr",{className:"border-b border-[#D4A843]/35",children:[r.jsx("th",{scope:"col",className:"w-2/5 px-5 py-5 font-medium",children:"Investment Question"}),r.jsx("th",{scope:"col",className:"px-5 py-5 font-medium",children:"Assessment Output"})]})}),r.jsx("tbody",{children:LW.map(([e,t],n)=>r.jsxs("tr",{className:"group border-b last:border-b-0 border-white/10 bg-[#111111] odd:bg-[#151515] transition-colors hover:bg-[#1B1812]",children:[r.jsx("th",{scope:"row",className:"px-5 py-5 text-sm font-medium text-[#F1EBDD] border-l-2 border-l-transparent group-hover:border-l-[#D4A843] transition-colors",children:r.jsxs("span",{className:"inline-flex items-center gap-4",children:[r.jsxs("span",{className:"inline-flex h-7 min-w-[2.75rem] items-center justify-center whitespace-nowrap border border-[#D4A843]/45 bg-[#2A2111] px-1.5 text-[10px] font-semibold tracking-tight text-[#D4A843]",children:["O·",String(n+1).padStart(2,"0")]}),r.jsx("span",{children:e})]})}),r.jsx("td",{className:"px-5 py-5 text-sm text-[#C8C1B6]",children:t})]},e))})]})}),r.jsx("p",{className:"text-xs text-[#999999] leading-relaxed mt-6",children:"Every material financial estimate is linked to evidence, calculation or explicitly identified assumptions — with confidence levels where uncertainty is material."})]})}),r.jsx("section",{className:"py-20 md:py-28",children:r.jsxs("div",{className:"container mx-auto max-w-6xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"Illustrative Assessment Output",title:"A clear view of exposure, readiness and action."}),r.jsxs("div",{className:"border border-white/10 bg-[#111111] mt-12 p-6 md:p-9",children:[r.jsx("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-3",children:[["AI Value Potential","78 / 100"],["AI Value at Risk","46 / 100"],["AI Capture Readiness","52 / 100"],["AI Execution Gap","26 / 100"]].map(([e,t])=>r.jsxs("div",{className:"bg-[#181818] border border-white/10 p-5",children:[r.jsx("p",{className:"text-[10px] uppercase tracking-widest text-[#999999] mb
442-4",children:e}),r.jsx("p",{className:"text-2xl md:text-3xl font-light text-white",children:t})]},e))}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-8 border-t border-white/10 mt-8 pt-8",children:[r.jsxs("div",{children:[r.jsx("p",{className:"text-[10px] uppercase tracking-widest mb-3",style:{color:rt},children:"Recommended Action"}),r.jsx("p",{className:"text-2xl font-light text-white",children:"ACT"})]}),r.jsxs("div",{children:[r.jsx("p",{className:"text-[10px] uppercase tracking-widest mb-3",style:{color:rt},children:"Top Value Opportunities"}),r.jsxs("ol",{className:"space-y-2 text-sm text-[#CCCCCC]",children:[r.jsx("li",{children:"01 Commercial acceleration"}),r.jsx("li",{children:"02 Customer operations"}),r.jsx("li",{children:"03 Knowledge automation"})]})]}),r.jsxs("div",{children:[r.jsx("p",{className:"text-[10px] uppercase tracking-widest mb-3",style:{color:rt},children:"Indicative View"}),r.jsx("p",{className:"text-sm text-[#CCCCCC]",children:"Investment: €XXX–€XXX"}),r.jsx("p",{className:"text-sm text-[#CCCCCC]",children:"Annual impact: €XXX–€XXX"}),r.jsx("p",{className:"text-sm text-[#CCCCCC]",children:"First measurable value: X–X months"})]})]})]}),r.jsx("p",{className:"text-center text-xs text-[#888888] mt-5",children:"Illustrative example only. Figures do not represent an actual company or expected results."})]})}),r.jsx("section",{className:"py-20 md:py-28 bg-[#141414] border-y border-white/5",children:r.jsxs("div",{className:"container mx-auto max-w-5xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"A Different Lens",title:"Not another AI maturity assessment.",centered:!0}),r.jsxs("div",{className:"grid md:grid-cols-2 gap-5 mt-12",children:[r.jsxs("article",{className:"border border-white/10 bg-[#111111] p-7 md:p-8",children:[r.jsx("h3",{className:"text-xs uppercase tracking-widest text-[#888888] mb-6",children:"Traditional AI Assessment"}),r.jsx("ul",{className:"space-y-3 text-sm text-[#AAAAAA]",children:["Technology maturity","AI adoption","Tools deployed","Digital capabilities","Generic use cases"].map(e=>r.jsxs("li",{className:"flex items-center gap-3",children:[r.jsx("span",{className:"h-1 w-1 rounded-full bg-white/30"}),e]},e))})]}),r.jsxs("article",{className:"border p-7 md:p-8",style:{borderColor:"rgba(196,151,58,0.35)",background:"linear-gradient(135deg, #17130a 0%, #111111 100%)"},children:[r.jsx("h3",{className:"text-xs uppercase tracking-widest mb-6",style:{color:rt},children:"PE AI Value Exposure & Readiness Assessment"}),r.jsx("ul",{className:"space-y-3 text-sm text-[#DDDDDD]",children:["Enterprise-value potential","Value at risk","Economic prioritization","Required investment","Time-to-value","Execution capacity"].map(e=>r.jsxs("li",{className:"flex items-center gap-3",children:[r.jsx(Ia,{className:"h-3.5 w-3.5 flex-shrink-0",style:{color:rt}}),e]},e))})]})]}),r.jsx("p",{className:"text-center text-sm text-[#BBBBBB] leading-relaxed mt-10 max-w-2xl mx-auto",children:"Maturity tells you where a company stands. Value Exposure asks what that position means economically."})]})}),r.jsx("section",{className:"py-20 md:py-28",children:r.jsxs("div",{className:"container mx-auto max-w-6xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"A Focused, Evidence-Driven Process",title:"Four steps from evidence to decision."}),r.jsx("div",{className:"hidden lg:grid grid-cols-[minmax(0,1fr)_auto_minmax(0,1fr)_auto_minmax(0,1fr)_auto_minmax(0,1fr)] items-stretch mt-12",children:Hp.map(([e,t,n],i)=>r.jsxs("div",{className:"contents",children:[r.jsxs("article",{className:"border border-white/10 bg-[#111111] p-6 min-h-[220px]",children:[r.jsxs("p",{className:"text-2xl font-light mb-8",style:{color:rt},children:["P · ",e]}),r.jsx("h3",{className:"text-base font-semibold text-white mb-3",children:t}),r.jsx("p",{className:"text-sm text-[#999999] leading-relaxed",children:n})]}),i<Hp.length-1&&r.jsx("div",{className:"flex items-center justify-center px-4","aria-hidden":"true",children:r.jsx(qt,{className:"h-7 w-7",style:{color:rt}})})]},e))}),r.jsx("div",{className:"lg:hidden mt-12",children:Hp.map(([e,t,n],i)=>r.jsxs("div",{children:[r.jsxs("article",{className:"border border-white/10 bg-[#111111] p-6",children:[r.jsxs("p",{className:"text-2xl font-light mb-6",style:{color:rt},children:["P · ",e]}),r.jsx("h3",{className:"text-base font-semibold text-white mb-3",children:t}),r.jsx("p",{className:"text-sm text-[#999999] leading-relaxed",children:n})]}),i<Hp.length-1&&r.jsx("div",{className:"flex justify-center py-3","aria-hidden":"true",children:r.jsx(Gq,{className:"h-6 w-6",style:{color:rt}})})]},e))}),r.jsx("p",{className:"text-xs text-[#777777] mt-6",children:"Target turnaround: from receipt of a sufficiently complete information set."})]})}),r.jsx("section",{className:"py-20 md:py-28 bg-[#141414] border-y border-white/5",children:r.jsxs("div",{className:"container mx-auto max-w-6xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"Information Requirements",title:"Designed for speed. Built around information companies already have."}),r.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-4 mt-12",children:FW.map(([e,t])=>r.jsxs("article",{className:"border border-white/10 bg-[#111111] p-6",children:[r.jsxs("div",{className:"flex items-center gap-2 mb-5",children:[r.jsx("span",{className:"inline-flex h-5 w-5 items-center justify-center rounded-full border border-[#D4A843]/55 bg-[#2A2111]","aria-hidden":"true",children:r.jsx(Ia,{className:"h-3 w-3",style:{color:rt}})}),r.jsx("span",{className:"text-[10px] font-medium uppercase tracking-widest",style:{color:rt},children:"Basic information"})]}),r.jsx("h3",{className:"text-base font-semibold text-white mb-3",children:e}),r.jsx("p",{className:"text-sm text-[#999999] leading-relaxed",children:t})]},e))}),r.jsx("p",{className:"text-sm text-[#999999] mt-7",children:"Detailed information requirements are shared privately once an assessment discussion has been initiated."}),r.jsx("div",{className:"mt-8",children:r.jsx(Dk,{})})]})}),r.jsx("section",{className:"py-20 md:py-28",children:r.jsxs("div",{className:"container mx-auto max-w-5xl px-4 sm:px-8",children:[r.jsx(Yr,{eyebrow:"Decision-Room Output",title:"Designed for the decision room."}),r.jsxs("div",{className:"mt-10 flex items-center gap-3 border-y border-white/10 py-3",children:[r.jsx("span",{className:"inline-flex h-6 w-6 items-center justify-center rounded-full border border-[#D4A843]/55 bg-[#2A2111]","aria-hidden":"true",children:r.jsx(Ia,{className:"h-3.5 w-3.5",
442style:{color:rt}})}),r.jsx("span",{className:"text-xs font-medium uppercase tracking-widest",style:{color:rt},children:"Output deliverables"}),r.jsx("span",{className:"hidden sm:inline text-xs text-[#888888]",children:"Included in the assessment output"})]}),r.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-x-8 gap-y-4 mt-6",children:BW.map(e=>r.jsxs("div",{className:"flex items-center gap-3 border-b border-white/10 pb-4 text-sm text-[#CCCCCC]",children:[r.jsx(Ia,{className:"h-4 w-4 flex-shrink-0",style:{color:rt},"aria-hidden":"true"}),r.jsx("span",{children:e})]},e))}),r.jsx("p",{className:"text-sm text-[#AAAAAA] leading-relaxed mt-8 max-w-3xl",children:"Designed to be read by a CEO, Board, Investment Committee or Operating Partner — not an AI engineering team."})]})}),r.jsx("section",{className:"py-12 bg-[#141414] border-y border-white/5",children:r.jsxs("div",{className:"container mx-auto max-w-5xl px-4 sm:px-8 flex flex-col md:flex-row md:items-center md:justify-between gap-5",children:[r.jsxs("div",{children:[r.jsx("p",{className:"text-xs uppercase tracking-widest mb-2",style:{color:rt},children:"Commercial Positioning"}),r.jsx("p",{className:"text-sm text-[#AAAAAA]",children:"Fixed-scope assessments are discussed privately following an initial qualification conversation."})]}),r.jsx("p",{className:"text-xs text-[#777777]",children:"Company-specific information is reviewed only within an agreed confidential assessment process."})]})}),r.jsx("section",{className:"py-24 md:py-32",children:r.jsxs("div",{className:"container mx-auto max-w-4xl px-4 sm:px-8 text-center",children:[r.jsx("p",{className:"text-xs font-semibold tracking-[0.18em] uppercase mb-5",style:{color:rt},children:"Assess a Company"}),r.jsx("h2",{className:"text-4xl md:text-5xl font-light tracking-tight leading-tight",children:"Know where the first euro of AI investment should go."}),r.jsx("p",{className:"text-base text-[#AAAAAA] leading-relaxed max-w-2xl mx-auto mt-6",children:"Whether evaluating a target, prioritizing a portfolio company or defining an AI value-creation agenda, start with the economics."}),r.jsx("div",{className:"mt-9",children:r.jsx(Dk,{})}),r.jsx("p",{className:"text-xs text-[#777777] mt-6",children:"Confidential discussions only."}),r.jsxs("p",{className:"text-xs text-[#777777] leading-relaxed max-w-2xl mx-auto mt-10",children:["PrivateEquity.AI provides analytical decision-support and enterprise-value perspectives. It does not provide regulated investment advice, formal valuations, fairness opinions, audit opinions, legal opinions or guaranteed financial outcomes. See our ",r.jsx(de,{href:"/legal",className:"text-[#AAAAAA] underline hover:text-white",children:"legal notice"}),"."]})]})})]}),r.jsx(ht,{})]}),tO="#D4A843",qW=({url:e,name:t})=>{const[n,i]=j.useState(!1),a=(()=>{try{return new URL(e).hostname}catch{return""}})(),s=`https://www.google.com/s2/favicons?domain=${a}&sz=64`,o=t.charAt(0).toUpperCase();return n||!a?r.jsx("div",{className:"w-8 h-8 rounded-md flex items-center justify-center flex-shrink-0 text-xs font-bold text-black",style:{backgroundColor:tO},children:o}):r.jsx("img",{src:s,alt:t,width:32,height:32,className:"w-8 h-8 rounded-md object-contain flex-shrink-0 bg-white/5",loading:"lazy",decoding:"async",onError:()=>i(!0)})},zp=({item:e})=>r.jsxs("a",{href:e.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"block bg-[#111111] rounded-xl p-5 border border-white/10 hover:border-[#D4A843]/30 transition-all group",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[r.jsx(qW,{url:e.url,name:e.name}),r.jsx("p",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors leading-snug flex-1",children:e.name}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0",style:{color:"#D4A843"}})]}),r.jsx("p",{className:"text-sm text-[#C0C0C0] leading-relaxed",children:e.description})]}),Wp=({label:e,title:t,description:n,children:i})=>r.jsxs("section",{children:[r.jsxs("div",{className:"mb-6",children:[r.jsx("p",{className:"section-kicker text-xs font-semibold tracking-widest uppercase mb-2",children:e}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-2",children:t}),r.jsx("p",{className:"text-sm text-[#CCCCCC]",children:n})]}),i]}),GW=[{name:"Adept",description:"Agentic AI that operates across financial technology stacks and enterprise softw
442are, enabling autonomous workflow execution in investment processes.",url:"https://www.adept.ai/"},{name:"Paperclip",description:"Agent orchestration platform for managing teams of AI agents across professional workflows. Relevant for fund operations and portfolio companies deploying multi-agent task automation.",url:"https://paperclip.ing/"},{name:"Domyn",description:"Open-source LLM-as-a-Service platform for institutional AI deployment on proprietary data with full infrastructure control.",url:"https://www.domyn.com/"},{name:"Harvey",description:"AI platform for law firms and professional services. Compresses legal research, document review, and M&A drafting workflows for PE and institutional clients.",url:"https://www.harvey.ai/"},{name:"Clay",description:"AI-powered data enrichment and outreach automation. Used for LP investor outreach, deal origination pipelines, and relationship intelligence.",url:"https://www.clay.com/"}],HW=[{name:"OrcheXtra — Qi4M",description:"Governance and execution intelligence layer for regulated financial institutions — Risk & Regulatory Reporting, Compliance & Audit, Sales Reporting, and Product Management. Positioned as the AI operating layer above Bloomberg, ServiceNow, and Palantir for regulated finance.",url:"https://www.qi4m.com/"},{name:"Aisera",description:"Enterprise AI copilot and agent platform for IT, HR, and operations across portfolio companies. Reduces support volume and accelerates workflow resolution.",url:"https://aisera.com/"},{name:"Moveworks",description:"Agentic AI for enterprise automation across IT, HR, and internal systems. Accelerates resolution time across portfolio company operations.",url:"https://www.moveworks.com/"},{name:"Beam",description:"Agentic process automation for end-to-end enterprise workflows. Executes multi-step operational processes without human intervention.",url:"https://www.beam.ai/"},{name:"UiPath",description:"Enterprise AI and RPA platform for business process automation across fund administration, finance operations, and back-office functions.",url:"https://www.uipath.com/"},{name:"Mercor",description:"AI platform for talent matching, hiring, and workforce intelligence. Relevant for portfolio companies scaling teams and optimising hiring pipelines.",url:"https://www.mercor.com/"}],zW=[{name:"Factory",description:"Agent-native software development platform. Relevant for PE-backed software companies seeking to accelerate engineering output and reduce development costs.",url:"https://factory.ai/"},{name:"Cognition (Devin)",description:"AI software engineer capable of end-to-end development tasks. Applicable to portfolio companies with software-intensive operating models.",url:"https://www.cognition.ai/"},{name:"gstack",description:"Garry Tan's open-source Claude Code configuration — 23 opinionated agents covering CEO, engineering, design, QA, and release management roles. Reference for assessing AI-augmented team structures.",url:"https://github.com/garrytan/gstack"},{name:"NinjaTech.ai",description:"AI agent workforce platform for enterprise knowledge and task execution. Scales throughput across knowledge-intensive portfolio company workflows.",url:"https://www.ninjatech.ai/"}],WW=[{name:"XBOW",description:"Autonomous AI penetration testing platform. Relevant for cyber due diligence, portfolio company risk assessment, and continuous security validation.",url:"https://xbow.com/"},{name:"Glean",description:"Enterprise AI search platform connecting all organisational knowledge. Accelerates decision-making across fund teams and distributed portfolio organisations.",url:"https://www.glean.com/"}],VW=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Execution — AI Operating Models and Value Creation in Private Equity — PrivateEquity.AI",description:"How AI-native systems are replacing workflows and changing operating models, labor costs, and value creation potential in target companies. Relevant for PE diligence and portfolio assessment.",canonicalUrl:"/ai-agentic-companies",keywords:"AI operating models private equity, AI value creation PE, AI due diligence execution, portfolio company AI, labor model AI disruption"}),r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A]",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-20 md:py-28 max-w-4xl",children:[r.jsx("h1",{className:"text-5xl md:text-6xl lg:text-7xl font-light tracking-tight text-white mb-6",children:"Execution"}),r.jsx("p",{className:"text-base text-gray-400 max-w-2xl mb-3",children:"How AI-native systems are replacing workflows — and what that means for operating models, labor costs, and value creation in target companies."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl mb-3",children:"Where AI changes the labor model or compresses operating costs at a target company, the value creation thesis changes with it. Understanding these platforms helps deal teams assess what is already happening in the market."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Educational insights only. No affiliation or endorsement."})]})}),r.jsx("div",{children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl content-rhythm",children:[r.jsx(Wp,{label:"Investment & Financial Workflows",title:"AI compressing investment, legal, and origination processes.",description:"Agentic platforms and AI systems reducing friction across deal execution, M&A legal processes, and investor outreach — changing what deal teams can do, at what speed, and at what cost.",children:r.jsx("div",{className:"grid md:grid-cols-2 gap-5",children:GW.map(e=>r.jsx(zp,{item:e},e.name))})}),r.jsx(Wp,{label:"Portfolio Operations",title:"AI replacing operational workflows in portfolio companies.",description:"Enterprise AI platforms automating IT, HR, talent, and internal processes. Relevant for assessing labor model efficiency and value creation potential during operational diligence.",children:r.jsx("div",{className:"grid md:grid-cols-2 gap-5",children:HW.map(e=>r.jsx(zp,{item:e},e.name))})}),r.jsx(Wp,{label:"Software & Engineering Automation",title:"AI changing the economics of software development.",description:"Agent-native engineering platforms relevant to PE-backed software businesses. Helps investment teams assess development productivity, engineering cost structures, and software intensity during operational diligence.",children:r.jsx("div",{className:"grid md:grid-cols-3 gap-5",children:zW.map(e=>r.jsx(zp,{item:e},e.name))})}),r.jsx(Wp,{label:"Security & Enterprise Intelligence",title:"Cyber risk and knowledge infrastru
442cture relevant to PE diligence.",description:"Continuous security validation and enterprise knowledge infrastructure for fund and portfolio operations. What to evaluate: cyber exposure and security maturity as a standalone diligence variable — particularly for software, healthcare, data-intensive, or regulated targets where a breach represents material value risk during or after hold.",children:r.jsx("div",{className:"grid md:grid-cols-2 gap-5",children:WW.map(e=>r.jsx(zp,{item:e},e.name))})}),r.jsx("section",{children:r.jsxs("div",{className:"mb-6",children:[r.jsx("p",{className:"section-kicker text-xs font-semibold tracking-widest uppercase mb-3",children:"From Execution to Enterprise Value"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-4",children:"What does AI-driven change mean for a specific company?"}),r.jsx("p",{className:"text-sm text-gray-400 max-w-3xl mb-3",children:"AI-native systems are changing workflows, labor models and operating economics. The relevant investment question is how those changes translate into enterprise value for a specific target, portfolio company or private enterprise."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-3xl mb-6",children:"The PE AI Value Exposure & Readiness Assessment evaluates value potential, value at risk, capture readiness and the execution gap — translating AI exposure into decision-ready priorities."}),r.jsx(de,{href:"/assessment",children:r.jsxs("span",{className:"text-sm font-medium inline-flex items-center gap-1.5 cursor-pointer transition-opacity hover:opacity-75",style:{color:tO},children:["Explore the Assessment ",r.jsx(qt,{className:"h-3.5 w-3.5"})]})})]})})]})})]}),r.jsx(ht,{})]}),J0="#D4A843",KW=({url:e,name:t})=>{const[n,i]=j.useState(!1),a=(()=>{try{return new URL(e).hostname}catch{return""}})(),s=`https://www.google.com/s2/favicons?domain=${a}&sz=64`,o=t.charAt(0).toUpperCase();return n||!a?r.jsx("div",{className:"w-6 h-6 rounded flex items-center justify-center flex-shrink-0 text-xs font-bold text-black",style:{backgroundColor:J0},children:o}):r.jsx("img",{src:s,alt:t,width:24,height:24,className:"w-6 h-6 rounded object-contain flex-shrink-0 bg-white/5",loading:"lazy",decoding:"async",onError:()=>i(!0)})},Oe=({href:e,name:t,description:n})=>r.jsx("li",{children:r.jsxs("a",{href:e,target:"_blank",rel:"nofollow noopener noreferrer",className:"dense-list-item flex items-start gap-3 py-2 group hover:opacity-90 transition-opacity",children:[r.jsx(KW,{url:e,name:t}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("span",{className:"text-sm font-medium text-white group-hover:text-[#D4A843] transition-colors leading-snug block",children:t}),r.jsx("span",{className:"text-xs text-[#CCCCCC] leading-relaxed block mt-0.5",children:n})]}),r.jsx(S,{className:"h-3 w-3 flex-shrink-0 mt-1 transition-colors",style:{color:"#D4A843"}})]})}),po=({title:e,children:t})=>r.jsxs("div",{className:"bg-[#111111] rounded-xl p-5 md:p-7 border border-white/10 hover:border-[#D4A843]/20 transition-all",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-4",children:[r.jsx("div",{className:"w-0.5 h-6 rounded-full",style:{backgroundColor:J0}}),r.jsx("h2",{className:"text-base font-semibold text-white",children:e})]}),r.jsx("ul",{className:"divide-y divide-white/5",children:t})]}),YW=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"AI Infrastructure — PrivateEquity.AI",description:"The compute and data infrastructure powering AI systems — semiconductors, cloud, data centers, networking, storage, and edge computing.",canonicalUrl:"/ai-infrastructure",keywords:"AI infrastructure, GPU compute, data centers, semiconductors, cloud providers, AI hardware"}),r.jsxs("div",{className:"institutional-page dense-content-page dense-infrastructure-page min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A]",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-20 md:py-28 max-w-4xl",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-6",style:{color:J0}
442,children:"AI Infrastructure"}),r.jsx("h1",{className:"text-5xl md:text-6xl lg:text-7xl font-light tracking-tight text-white mb-6",children:"The Infrastructure Layer of AI"}),r.jsx("p",{className:"text-base text-gray-400 max-w-2xl mb-3",children:"The compute and data infrastructure powering AI systems. Relevant for technology and infrastructure investors, but not where value is primarily captured in private capital."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl mb-3",children:"In private markets, value is increasingly captured at the application, workflow, and decision layers — not at the compute layer."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Educational reference only. No affiliation or endorsement."})]})}),r.jsx("section",{className:"elevated-section py-16 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsxs("div",{className:"grid md:grid-cols-2 gap-8",children:[r.jsxs(po,{title:"Semiconductors & Compute",children:[r.jsx(Oe,{href:"https://www.nvidia.com/en-us/ai/",name:"NVIDIA",description:"GPU leader powering AI training and inference at scale."}),r.jsx(Oe,{href:"https://www.amd.com/en/solutions/ai.html",name:"AMD",description:"GPU and CPU compute for AI workloads — alternative to NVIDIA."}),r.jsx(Oe,{href:"https://www.intel.com/content/www/us/en/artificial-intelligence/overview.html",name:"Intel",description:"AI accelerators, Gaudi chips, and edge compute solutions."}),r.jsx(Oe,{href:"https://cloud.google.com/tpu",name:"Google TPU",description:"Tensor Processing Units for large-scale AI model training."}),r.jsx(Oe,{href:"https://aws.amazon.com/machine-learning/trainium/",name:"AWS Trainium",description:"Custom AI training chips designed and operated by Amazon."}),r.jsx(Oe,{href:"https://www.groq.com/",name:"Groq",description:"Ultra-fast LPU inference chips for low-latency AI serving."}),r.jsx(Oe,{href:"https://www.cerebras.net/",name:"Cerebras",description:"Wafer-scale AI compute chips for deep learning workloads."})]}),r.jsxs(po,{title:"Cloud & Hyperscalers",children:[r.jsx(Oe,{href:"https://aws.amazon.com/ai/",name:"Amazon Web Services (AWS)",description:"Largest cloud provider with the broadest AI services portfolio."}),r.jsx(Oe,{href:"https://azure.microsoft.com/en-us/solutions/ai/",name:"Microsoft Azure",description:"Cloud platform with deep OpenAI integration for enterprise AI."}),r.jsx(Oe,{href:"https://cloud.google.com/ai",name:"Google Cloud",description:"AI/ML services, Vertex AI, and Gemini model integration."}),r.jsx(Oe,{href:"https://www.oracle.com/artificial-intelligence/",name:"Oracle Cloud",description:"AI infrastructure and GPU clusters for enterprise workloads."}),r.jsx(Oe,{href:"https://www.coreweave.com/",name:"CoreWeave",description:"GPU-native cloud purpose-built for AI workloads."}),r.jsx(Oe,{href:"https://lambda.ai/",name:"Lambda Labs",description:"GPU cloud for AI research, training, and development teams."})]}),r.jsxs(po,{title:"Data Centers & Power",children:[r.jsx(Oe,{href:"https://www.equinix.com/solutions/by-technology/ai-ml",name:"Equinix",description:"Global data center colocation and interconnection infrastructure."}),r.jsx(Oe,{href:"https://www.digitalbridgegroup.com/",name:"DigitalBridge",description:"PE firm focused on digital and data center infrastructure."}),r.jsx(Oe,{href:"https://www.ironmountain.com/",name:"Iron Mountain",description:"Data center and digital infrastructure REIT."}),r.jsx(Oe,{href:"https://www.vertiv.com/en-us/solutions/data-center/ai-data-centers/",name:"Vertiv",description:"Power and cooling systems for AI-grade data centers."}),r.jsx(Oe,{href:"https://www.schneider-electric.com/en/work/solutions/for-business/ai-data-centers/",name:"Schneider Electric",description:"Energy management and infrastructure for AI data centers."})]}),r.jsxs(po,{title:"Networking & Connectivity",children:[r.jsx(Oe,{href:"https://www.cisco.com/c/en/us/solutions/artificial-intelligence.html",name:"Cisco",description:"AI-ready networking infrastructure for enterprise and cloud."}),r.jsx(Oe,{href:"https://www.juniper.net/us/en/solutions/artificial-intelligence-networking.html",name:"Juniper Networks",description:"AI-driven network automation and management."}),r.jsx(Oe,{href:"https://www.mellanox.com/",name:"NVIDIA Networking (Mellano
442x)",description:"InfiniBand interconnects for high-performance AI clusters."}),r.jsx(Oe,{href:"https://www.arista.com/en/solutions/ai-networking",name:"Arista Networks",description:"High-performance networking for AI compute clusters."}),r.jsx(Oe,{href:"https://www.cloudflare.com/ai/",name:"Cloudflare",description:"AI gateway, inference acceleration, and global edge network."})]}),r.jsxs(po,{title:"Storage & Data Infrastructure",children:[r.jsx(Oe,{href:"https://www.purestorage.com/solutions/ai-and-analytics.html",name:"Pure Storage",description:"All-flash storage optimised for AI and ML workloads."}),r.jsx(Oe,{href:"https://www.netapp.com/artificial-intelligence/",name:"NetApp",description:"AI-ready data management and enterprise storage."}),r.jsx(Oe,{href:"https://www.weka.io/",name:"WEKA",description:"High-performance parallel storage for GPU compute clusters."}),r.jsx(Oe,{href:"https://www.pinecone.io/",name:"Pinecone",description:"Managed vector database for AI-native retrieval applications."}),r.jsx(Oe,{href:"https://www.databricks.com/",name:"Databricks",description:"Unified data and AI platform — Lakehouse architecture."}),r.jsx(Oe,{href:"https://snowflake.com/",name:"Snowflake",description:"Cloud data platform with AI and ML integration."})]}),r.jsxs(po,{title:"AI-Specific Hardware & Edge",children:[r.jsx(Oe,{href:"https://www.qualcomm.com/solutions/artificial-intelligence",name:"Qualcomm",description:"AI inference chips for edge devices and mobile platforms."}),r.jsx(Oe,{href:"https://www.arm.com/solutions/artificial-intelligence",name:"ARM",description:"CPU architecture powering AI processing on-device."}),r.jsx(Oe,{href:"https://www.hailo.ai/",name:"Hailo",description:"Edge AI processors for real-time inference in embedded systems."}),r.jsx(Oe,{href:"https://www.graphcore.ai/",name:"Graphcore",description:"Intelligence Processing Units (IPUs) purpose-built for AI."}),r.jsx(Oe,{href:"https://www.samba.ai/",name:"SambaNova",description:"AI hardware and software stack for enterprise LLM deployment."}),r.jsx(Oe,{href:"https://www.d-matrix.ai/",name:"d-Matrix",description:"In-memory compute architecture for efficient LLM inference."})]})]}),r.jsxs("div",{className:"mt-12 pt-8 border-t border-white/10 space-y-8",children:[r.jsxs("div",{className:"max-w-2xl",children:[r.jsx("h2",{className:"text-xl font-semibold text-white mb-4",children:"Why This Matters for PE"}),r.jsx("p",{className:"text-sm text-gray-400 mb-2",children:"Compute defines capability. Infrastructure defines scalability."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] mb-6",children:"For private capital, what matters most is not which GPU provider wins — it is which application layer captures value in your target's sector."}),r.jsx(de,{href:"/ai-strategy-toolkit",children:r.jsxs("span",{className:"text-sm font-medium inline-flex items-center gap-1.5 cursor-pointer transition-opacity hover:opacity-75",style:{color:"#D4A843"},children:["Explore the Intelligence layer ",r.jsx(S,{className:"h-3.5 w-3.5"})]})})]}),r.jsxs("p",{className:"text-xs text-[#BBBBBB] leading-relaxed max-w-3xl",children:[r.jsx("strong",{className:"text-[#CCCCCC]",children:"Non-affiliation notice:"})," All company names, logos, and trademarks belong to their respective owners. PrivateEquity.ai is not affiliated with any referenced organisations. Educational and research purposes only."]})]})]})})]}),r.jsx(ht,{})]}),nO="#D4A843",QW=({url:e,name:t})=>{const[n,i]=j.useState(!1),a=(()=>{try{return new URL(e).hostname}catch{return""}})(),s=`https://www.google.com/s2/favicons?domain=${a}&sz=64`,o=t.charAt(0).toUpperCase();return n||!a?r.jsx("div",{className:"w-8 h-8 rounded flex items-center justify-center flex-shrink-0 text-sm font-bold text-black",style:{backgroundColor:nO},children:o}):r.jsx("img",{src:s,alt:t,width:32,height:32,className:"w-8 h-8 rounded object-contain flex-shrink-0 bg-white/5 p-0.5",loading:"lazy",decoding:"async",onError:()=>i(!0)})},$x=({item:e})=>r.jsxs("a",{href:e.url,target:"_blank",rel:"nofollow noopener noreferrer","aria-label":`Visit ${e.name}`,className:"dense-card block bg-[#111111] rounded-xl p-5 border border-white/10 hover:border-[#D4A843]/30 transition-all group",children:[r.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[r.jsx(QW,{url:e.url,name:e.name}),r.jsx("p",{className:"text-sm font-semibold text-white group-hover:text-[#D4A843] transition-colors leading-snug",children:e.name}),r.jsx(S,{className:"h-3 w-3 ml-auto flex-shrink-0 transition-colors",style:{color:"#D4A843"}})]}),r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed pl-11",children:e.description})]}),Ux=({label:e,title:t,description:n,children:i})=>r.jsxs("section",{children:[r.jsxs("div",{className:"dense-section-heading mb-6",children:[r.jsx("p",{className:"section-kicker text-xs font-semibold tracking-widest uppercase mb-2",children:e}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-2",children:t}),r.jsx("p",{className:"text-sm text-gray-500",children:n})]}),i]}),XW=[{name:"iCapital",description:"Wealth technology platform enabling access to alternative investments for private banks, advisors, and institutions.",url:"https://icapital.com/"},{name:"CAIS",description:"Alternative investment marketplace connecting independent financial advisors to fund managers across private equity, hedge funds, and real assets.",url:"https://www.caisgroup.com/"},{name:"Moonfare",description:"Digital platform providing high-net-worth individuals and wealth managers access to institutional-grade private equity funds.",url:"https://www.moonfare.com/"},{name:"Yieldstreet",description:"Alternative investment platform offering accredited investors access to private credit, real estate, and structured products.",url:"https://www.yieldstreet.com/"}
442,{name:"Republic",description:"Multi-asset investment platform enabling retail and institutional participation in private companies, real estate, and alternative assets.",url:"https://republic.com/"}],ZW=[{name:"Securitize",description:"Digital securities issuance and transfer agent platform enabling tokenization of private funds and alternative assets.",url:"https://securitize.io/"},{name:"ADDX",description:"Regulated digital exchange in Singapore for private market securities, providing fractional access to pre-IPO and alternative investments.",url:"https://addx.co/"},{name:"RealBlocks",description:"Blockchain-based infrastructure for fund distribution and investor onboarding in alternative asset management.",url:"https://realblocks.io/"},{name:"Forge Global",description:"Private securities marketplace providing price discovery, liquidity, and trading infrastructure for pre-IPO company shares.",url:"https://forgeglobal.com/"},{name:"Linqto",description:"Private investment platform enabling accredited investors to access pre-IPO unicorn equity with fractional minimums.",url:"https://www.linqto.com/"}],JW=[{name:"Nasdaq Private Market",description:"Institutional-grade secondary trading infrastructure for private company shares, enabling structured liquidity programs.",url:"https://www.nasdaqprivatemarket.com/"},{name:"Hiive",description:"Secondary marketplace connecting buyers and sellers of private company equity with real-time price discovery.",url:"https://www.hiive.com/"},{name:"Zanbato",description:"Regulated trading venue for private equity secondaries, focused on institutional participants and fund interests.",url:"https://zanbato.com/"},{name:"Caplight",description:"Derivatives and secondary market platform for private company equity, enabling price hedging and structured liquidity.",url:"https://caplight.com/"}],eV=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Infrastructure — Capital Rails and Market Structure for Private Equity — PrivateEquity.AI",description:"Distribution platforms, digital securities infrastructure, and secondary markets reshaping how private capital flows. Relevant context for target evaluation, exit planning, and competitive diligence.",canonicalUrl:"/infrastructure",keywords:"private capital infrastructure, alternative investment distribution, private market access, secondary markets PE, private equity diligence"}),r.jsxs("div",{className:"institutional-page dense-content-page dense-infrastructure-page min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A]",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-16 md:py-24 max-w-4xl",children:[r.jsx("h1",{className:"text-5xl md:text-6xl lg:text-7xl font-light tracking-tight text-white mb-6",children:"Infrastructure"}),r.jsx("p",{className:"text-base text-gray-400 max-w-2xl mb-3",children:"The structural layer through which private capital is distributed, accessed, and transacted — and how that layer is being restructured."}),r.jsx("p",{className:"text-sm text-gray-500 max-w-2xl mb-3",children:"During diligence, understanding these rails matters. Distribution platforms, digital securities infrastructure, and secondary markets change how target companies access capital, how exits are structured, and how competitive positioning is affected by shifting access economics."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Educational insights only. No affiliation or endorsement."})]})}),r.jsx("div",{children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl content-rhythm",children:[r.jsx(Ux,{label:"Distribution Platforms",title:"Digital rails reshaping access economics in private markets.",description:"Platforms expanding institutional and wealth management access to alternative investments. What to evaluate: where a target operates within or adjacent to these rails, how AI-driven access economics are shifting competitive positioning in their sector, and whether the target benefits from or competes with expanding distribution infrastru
442cture.",children:r.jsx("div",{className:"grid md:grid-cols-2 gap-5",children:XW.map(e=>r.jsx($x,{item:e},e.name))})}),r.jsx(Ux,{label:"Investment Infrastructure",title:"Tokenisation and digital securities rails for private markets.",description:"Platforms enabling fractional ownership, digital issuance, and regulated access to private market securities. Diligence relevance: targets in fintech, transfer agency, fund administration, or digital asset custody may be directly exposed to tokenisation dynamics — as competitive threat or structural tailwind. Assess whether the target's business model is positioned to capture or absorb this infrastructure shift.",children:r.jsx("div",{className:"grid md:grid-cols-2 gap-5",children:ZW.map(e=>r.jsx($x,{item:e},e.name))})}),r.jsx(Ux,{label:"Liquidity & Secondary Markets",title:"Price discovery and structured liquidity for private equity.",description:"Trading venues and secondary market infrastructure providing price benchmarks and structured liquidity for private company equity. What to evaluate: how secondary market maturity affects exit timing assumptions, valuation anchoring, and LP liquidity expectations — and whether targets in this space face competitive pressure or infrastru
442cture tailwinds from improving market structure.",children:r.jsx("div",{className:"grid md:grid-cols-2 gap-5",children:JW.map(e=>r.jsx($x,{item:e},e.name))})}),r.jsxs("section",{children:[r.jsxs("div",{className:"mb-6",children:[r.jsx("h2",{className:"text-xl font-semibold text-white mb-3",children:"Why This Matters for Diligence"}),r.jsx("p",{className:"text-sm text-gray-400 mb-1",children:"Infrastructure shifts change competitive moats, access economics, and exit dynamics — all material to deal evaluation."}),r.jsx("p",{className:"text-sm text-gray-500 mb-6",children:"Understanding which rails are relevant to a target's market helps investment teams assess structural tailwinds, distribution risk, and positioning durability before committing capital."}),r.jsx(de,{href:"/ai-strategy-toolkit",children:r.jsxs("span",{className:"text-sm font-medium inline-flex items-center gap-1.5 cursor-pointer transition-opacity hover:opacity-75",style:{color:nO},children:["Explore the Intelligence layer ",r.jsx(S,{className:"h-3.5 w-3.5"})]})})]}),r.jsx("p",{className:"text-xs text-gray-500 leading-relaxed max-w-3xl",children:"Educational reference only. No affiliation or endorsement. All platform names and trademarks belong to their respective owners."})]})]})})]}),r.jsx(ht,{})]}),e1=j.forwardRef(({className:e,...t},n)=>r.jsx("div",{ref:n,className:Zt("rounded-lg border bg-card text-card-foreground shadow-sm",e),...t}));e1.displayName="Card";const tV=j.forwardRef(({className:e,...t},n)=>r.jsx("div",{ref:n,className:Zt("flex flex-col space-y-1.5 p-6",e),...t}));tV.displayName="CardHeader";const nV=j.forwardRef(({className:e,...t},n)=>r.jsx("h3",{ref:n,className:Zt("text-2xl font-semibold leading-none tracking-tight",e),...t}));nV.displayName="CardTitle";const rV=j.forwardRef(({className:e,...t},n)=>r.jsx("p",{ref:n,className:Zt("text-sm text-muted-foreground",e),...t}));rV.displayName="CardDescription";const rO=j.forwardRef(({className:e,...t},n)=>r.jsx("div",{ref:n,className:Zt("p-6 pt-0",e),...t}));rO.displayName="CardContent";const iO=j.forwardRef(({className:e,...t},n)=>r.jsx("div",{ref:n,className:Zt("flex items-center p-6 pt-0",e),...t}));iO.displayName="CardFooter";const iV=()=>{const{data:e,isLoading:t,error:n}=We({queryKey:["/api/admin/contacts"]});return r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Admin - Contact Requests",description:"View contact form submissions",canonicalUrl:"/admin/contacts"}),r.jsx("div",{className:"min-h-screen bg-gray-50 py-12",children:r.jsxs("div",{className:"container mx-auto px-8 max-w-4xl",children:[r.jsx("h1",{className:"text-3xl font-semibold text-gray-900 mb-8",children:"Contact Requests"}),t&&r.jsx("div",{className:"flex items-center justify-center py-16",children:r.jsx(ic,{className:"h-8 w-8 animate-spin text-blue-600"})}),n&&r.jsx("div",{className:"text-center py-16 text-red-600",children:"Failed to load contacts"}),e&&e.length===0&&r.jsx("div",{className:"text-center py-16 text-gray-500",children:"No contact requests yet"}),e&&e.length>0&&r.jsx("div",{className:"space-y-4",children:e.map(i=>r.jsxs(e1,{className:"p-6 bg-white border border-gray-200",children:[r.jsxs("div",{className:"flex justify-between items-start mb-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(oG,{className:"h-5 w-5 text-blue-600"}),r.jsx("span",{className:"font-semibold text-gray-900",children:i.name})]}),r.jsxs("div",{className:"flex items-center gap-2 text-sm text-gray-500",children:[r.jsx(zq,{className:"h-4 w-4"}),i.createdAt?new Date(i.createdAt).toLocaleDateString("it-IT",{day:"2-digit",month:"short",year:"numeric",hour:"2-digit",minute:"2-digit"}):"N/A"]})]}),r.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4",children:[r.jsxs("div",{className:"flex items-center gap-2 text-[#AAAAAA]",children:[r.jsx(tG,{className:"h-4 w-4 text-gray-400"}),r.jsx("a",{href:`mailto:${i.email}`,className:"text-blue-600 hover:underline",children:i.email})]}),i.company&&r.jsxs("div",{className:"flex items-center gap-2 text-[#AAAAAA]",children:[r.jsx(Hq,{className:"h-4 w-4 text-gray-400"}),i.company]})]}),r.jsx("div",{className:"mb-4",children:r.jsx("span",{className:"inline-block px-3 py-1 bg-blue-100 text-blue-800 text-sm rounded-full",children:i.role})}),r.jsx("div",{className:"border-t border-gray-100 pt-4",children:r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx(bD,{className:"h-4 w-4 text-gray-400 mt-1"}),r.jsx("p",{className:"text-[#AAAAAA]",children:i.objective})]})})]},i.id))})]})})]})};function aV(){const{data:e,isLoading:t,error:n}=We({queryKey:["/api/admin/intelligence/hebbia/metrics"]}),i=e?[["Profile views",e.metrics.profileViews,Wq],["Official website clicks",e.metrics.officialWebsiteClicks,S],["Evidence clicks",e.metrics.evidenceClicks,Dx],["Compare clicks",e.metrics.compareClicks,Dx],["Evaluate clicks",e.metrics.evaluateClicks,Dx],["Completed evaluations",e.metrics.completedEvaluationForms,xD],["Profile update submissions",e.metrics.claimProfileSubmissions,yD]]:[],a=n instanceof rc&&(n.status===401||n.status===403)?"You do not have permission to view these metrics.":"Metrics could not be loaded.";return r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Hebbia Intelligence Metrics | Admin",description:"Internal Hebbia profile engagement metrics.",canonicalUrl:"/admin/intelligence/hebbia",noindex:!0}),r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] px-4 py-14 text-white sm:px-8",children:r.jsxs("div",{className:"mx-auto max-w-5xl",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-[0.2em] text-[#D4A843]",children:"Internal only"}),r.jsx("h1",{className:"mt-3 text-3xl font-light",children:"Hebbia Intelligence Profile metrics"}),r.jsx("p",{className:"mt-3 max-w-2xl text-sm text-[#AFAFAF]",children:"First-party engagement and submission counts. No fingerprinting or external analytics."}),t&&r.jsx("div",{className:"flex justify-center py-20",children:r.jsx(ic,{className:"h-7 w-7 animate-spin text-[#D4A843]"})}),n&&r.jsx("div",{className:"mt-10 rounded-lg border border-red-400/20 bg-red-400/5 p-5 text-sm text-red-200",children:a}),e&&r.jsx("div",{className:"mt-10 grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:i.map(([s,o,l])=>r.jsxs("div",{className:"rounded-xl border border-white/10 bg-[#111111] p-5",children:[r.jsx(l,{className:"h-4 w-4 text-[#D4A843]"}),r.jsx("p",{className:"mt-5 text-3xl font-light text-white",children:String(o)}),r.jsx("p",{className:"mt-2 text-xs font-medium uppercase tracking-[0.12em] text-[#8F8F8F]",children:String(s)})]},String(s)))})]})})]})}var sV=iP.useId||(()=>{}),oV=0;function qx(e){const[t,n]=j.useState(sV());return Hd(()=>{e||n(i=>i??String(oV++))},[e]),e||(t?`radix-${t}`:"")}var Gx="focusScope.autoFocusOnMount",Hx="focusScope.autoFocusOnUnmount",Ok={bubbles:!1,cancelable:!0},lV="FocusScope",aO=j.forwardRef((e,t)=>
vendor: 4,152 bytes, line 442
442{const{loop:n=!1,trapped:i=!1,onMountAutoFocus:a,onUnmountAutoFocus:s,...o}=e,[l,c]=j.useState(null),d=Hr(a),u=Hr(s),p=j.useRef(null),m=Gr(t,h=>c(h)),f=j.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;j.useEffect(()=>{if(i){let h=function(b){if(f.paused||!l)return;const A=b.target;l.contains(A)?p.current=A:oa(p.current,{select:!0})},g=function(b){if(f.paused||!l)return;const A=b.relatedTarget;A!==null&&(l.contains(A)||oa(p.current,{select:!0}))},y=function(b){if(document.activeElement===document.body)for(const w of b)w.removedNodes.length>0&&oa(l)};document.addEventListener("focusin",h),document.addEventListener("focusout",g);const v=new MutationObserver(y);return l&&v.observe(l,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",h),document.removeEventListener("focusout",g),v.disconnect()}}},[i,l,f.paused]),j.useEffect(()=>{if(l){Rk.add(f);const h=document.activeElement;if(!l.contains(h)){const y=new CustomEvent(Gx,Ok);l.addEventListener(Gx,d),l.dispatchEvent(y),y.defaultPrevented||(cV(hV(sO(l)),{select:!0}),document.activeElement===h&&oa(l))}return()=>{l.removeEventListener(Gx,d),setTimeout(()=>{const y=new CustomEvent(Hx,Ok);l.addEventListener(Hx,u),l.dispatchEvent(y),y.defaultPrevented||oa(h??document.body,{select:!0}),l.removeEventListener(Hx,u),Rk.remove(f)},0)}}},[l,d,u,f]);const x=j.useCallback(h=>{if(!n&&!i||f.paused)return;const g=h.key==="Tab"&&!h.altKey&&!h.ctrlKey&&!h.metaKey,y=document.activeElement;if(g&&y){const v=h.currentTarget,[b,A]=dV(v);b&&A?!h.shiftKey&&y===A?(h.preventDefault(),n&&oa(b,{select:!0})):h.shiftKey&&y===b&&(h.preventDefault(),n&&oa(A,{select:!0})):y===v&&h.preventDefault()}},[n,i,f.paused]);return r.jsx(yn.div,{tabIndex:-1,...o,ref:m,onKeyDown:x})});aO.displayName=lV;function cV(e,{select:t=!1}={}){const n=document.activeElement;for(const i of e)if(oa(i,{select:t}),document.activeElement!==n)return}function dV(e){const t=sO(e),n=Mk(t,e),i=Mk(t.reverse(),e);return[n,i]}function sO(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:i=>{const a=i.tagName==="INPUT"&&i.type==="hidden";return i.disabled||i.hidden||a?NodeFilter.FILTER_SKIP:i.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function Mk(e,t){for(const n of e)if(!uV(n,{upTo:t}))return n}function uV(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function pV(e){return e instanceof HTMLInputElement&&"select"in e}function oa(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&pV(e)&&t&&e.select()}}var Rk=mV();function mV(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=Lk(e,t),e.unshift(t)},remove(t){var n;e=Lk(e,t),(n=e[0])==null||n.resume()}}}function Lk(e,t){const n=[...e],i=n.indexOf(t);return i!==-1&&n.splice(i,1),n}function hV(e){return e.filter(t=>t.tagName!=="A")}var zx=0;function fV(){j.useEffect(()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??Fk()),document.body.insertAdjacentElement("beforeend",e[1]??Fk()),zx++,()=>{zx===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(t=>t.remove()),zx--}},[])}function Fk(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var ii=function(){return ii=Object.assign||function(t){for(var n,i=1,a=arguments.length;i<a;i++){n=arguments[i];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(t[s]=n[s])}return t},ii.apply(this,arguments)};function oO(e,t){var n={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,i=Object.getOwnPropertySymbols(e);a<i.length;a++)t.indexOf(i[a])<0&&Object.prototype.propertyIsEnumerable.call(e,i[a])&&(n[i[a]]=e[i[a]]);return n}
vendor: 5,007 bytes, lines 442-457
442function gV(e,t,n){if(n||arguments.length===2)for(var i=0,a=t.length,s;i<a;i++)(s||!(i in t))&&(s||(s=Array.prototype.slice.call(t,0,i)),s[i]=t[i]);return e.concat(s||Array.prototype.slice.call(t))}var Mm="right-scroll-bar-position",Rm="width-before-scroll-bar",xV="with-scroll-bars-hidden",yV="--removed-body-scroll-bar-size";function Wx(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function vV(e,t){var n=j.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(i){var a=n.value;a!==i&&(n.value=i,n.callback(i,a))}}}})[0];return n.callback=t,n.facade}var bV=typeof window<"u"?j.useLayoutEffect:j.useEffect,Bk=new WeakMap;function wV(e,t){var n=vV(null,function(i){return e.forEach(function(a){return Wx(a,i)})});return bV(function(){var i=Bk.get(n);if(i){var a=new Set(i),s=new Set(e),o=n.current;a.forEach(function(l){s.has(l)||Wx(l,null)}),s.forEach(function(l){a.has(l)||Wx(l,o)})}Bk.set(n,e)},[e]),n}function AV(e){return e}function jV(e,t){t===void 0&&(t=AV);var n=[],i=!1,a={read:function(){if(i)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(s){var o=t(s,i);return n.push(o),function(){n=n.filter(function(l){return l!==o})}},assignSyncMedium:function(s){for(i=!0;n.length;){var o=n;n=[],o.forEach(s)}n={push:function(l){return s(l)},filter:function(){return n}}},assignMedium:function(s){i=!0;var o=[];if(n.length){var l=n;n=[],l.forEach(s),o=n}var c=function(){var u=o;o=[],u.forEach(s)},d=function(){return Promise.resolve().then(c)};d(),n={push:function(u){o.push(u),d()},filter:function(u){return o=o.filter(u),n}}}};return a}function kV(e){e===void 0&&(e={});var t=jV(null);return t.options=ii({async:!0,ssr:!1},e),t}var lO=function(e){var t=e.sideCar,n=oO(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var i=t.read();if(!i)throw new Error("Sidecar medium not found");return j.createElement(i,ii({},n))};lO.isSideCarExport=!0;function NV(e,t){return e.useMedium(t),lO}var cO=kV(),Vx=function(){},sg=j.forwardRef(function(e,t){var n=j.useRef(null),i=j.useState({onScrollCapture:Vx,onWheelCapture:Vx,onTouchMoveCapture:Vx}),a=i[0],s=i[1],o=e.forwardProps,l=e.children,c=e.className,d=e.removeScrollBar,u=e.enabled,p=e.shards,m=e.sideCar,f=e.noIsolation,x=e.inert,h=e.allowPinchZoom,g=e.as,y=g===void 0?"div":g,v=e.gapMode,b=oO(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),A=m,w=wV([n,t]),k=ii(ii({},b),a);return j.createElement(j.Fragment,null,u&&j.createElement(A,{sideCar:cO,removeScrollBar:d,shards:p,noIsolation:f,inert:x,setCallbacks:s,allowPinchZoom:!!h,lockRef:n,gapMode:v}),o?j.cloneElement(j.Children.only(l),ii(ii({},k),{ref:w})):j.createElement(y,ii({},k,{className:c,ref:w}),l))});sg.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};sg.classNames={fullWidth:Rm,zeroRight:Mm};var IV=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function SV(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=IV();return t&&e.setAttribute("nonce",t),e}function CV(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function EV(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var _V=function(){var e=0,t=null;return{add:function(n){e==0&&(t=SV())&&(CV(t,n),EV(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},PV=function(){var e=_V();return function(t,n){j.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},dO=function(){var e=PV(),t=function(n){var i=n.styles,a=n.dynamic;return e(i,a),null};return t},TV={left:0,top:0,right:0,gap:0},Kx=function(e){return parseInt(e||"",10)||0},DV=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],i=t[e==="padding"?"paddingTop":"marginTop"],a=t[e==="padding"?"paddingRight":"marginRight"];return[Kx(n),Kx(i),Kx(a)]},OV=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return TV;var t=DV(e),n=document.documentElement.clientWidth,i=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,i-n+t[2]-t[0])}},MV=dO(),Zo="data-scroll-locked",RV=function(e,t,n,i){var a=e.left,s=e.top,o=e.right,l=e.gap;return n===void 0&&(n="margin"),`
443  .`.concat(xV,` {
444   overflow: hidden `).concat(i,`;
445   padding-right: `).concat(l,"px ").concat(i,`;
446  }
447  body[`).concat(Zo,`] {
448    overflow: hidden `).concat(i,`;
449    overscroll-behavior: contain;
450    `).concat([t&&"position: relative ".concat(i,";"),n==="margin"&&`
451    padding-left: `.concat(a,`px;
452    padding-top: `).concat(s,`px;
453    padding-right: `).concat(o,`px;
454    margin-left:0;
455    margin-top:0;
456    margin-right: `).concat(l,"px ").concat(i,`;
457    `),n==="padding"&&"padding-right: ".concat(l,"px ").concat(i,";
457")].filter(Boolean).join(""),`
458  }
459  
460  .`).concat(Mm,` {
461    right: `).concat(l,"px ").concat(i,`;
462  }
463  
464  .`).concat(Rm,` {
465    margin-right: `).concat(l,"px ").concat(i,`;
466  }
467  
468  .`).concat(Mm," .").concat(Mm,` {
469    right: 0 `).concat(i,`;
470  }
471  
472  .`).concat(Rm," .").concat(Rm,` {
473    margin-right: 0 `).concat(i,`;
474  }
475  
476  body[`).concat(Zo,`] {
477    `).concat(yV,": ").concat(l,`px;
478  }
479`)},$k=function(){var e=parseInt(document.body.getAttribute(Zo)||"0",10);return isFinite(e)?e:0},LV=function(){j.useEffect(function(){return document.body.setAttribute(Zo,($k()+1).toString()),function(){var e=$k()-1;e<=0?document.body.removeAttribute(Zo):document.body.setAttribute(Zo,e.toString())}},[])},FV=function(e){var t=e.noRelative,n=e.noImportant,i=e.gapMode,a=i===void 0?"margin":i;LV();var s=j.useMemo(function(){return OV(a)},[a]);return j.createElement(MV,{styles:RV(s,!t,a,n?"":"!important")})},sb=!1;if(typeof window<"u")try{var Vp=Object.defineProperty({},"passive",{get:function(){return sb=!0,!0}});window.addEventListener("test",Vp,Vp),window.removeEventListener("test",Vp,Vp)}catch{sb=!1}var mo=sb?{passive:!1}:!1,BV=function(e){return e.tagName==="TEXTAREA"},uO=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!BV(e)&&n[t]==="visible")},$V=function(e){return uO(e,"overflowY")},UV=function(e){return uO(e,"overflowX")},Uk=function(e,t){var n=t.ownerDocument,i=t;do{typeof ShadowRoot<"u"&&i instanceof ShadowRoot&&(i=i.host);var a=pO(e,i);if(a){var s=mO(e,i),o=s[1],l=s[2];if(o>l)return!0}i=i.parentNode}while(i&&i!==n.body);return!1},qV=function(e){var t=e.scrollTop,n=e.scrollHeight,i=e.clientHeight;return[t,n,i]},GV=function(e){var t=e.scrollLeft,n=e.scrollWidth,i=e.clientWidth;return[t,n,i]},pO=function(e,t){return e==="v"?$V(t):UV(t)},mO=function(e,t){return e==="v"?qV(t):GV(t)},HV=function(e,t){return e==="h"&&t==="rtl"?-1:1},zV=function(e,t,n,i,a){var s=HV(e,window.getComputedStyle(t).direction),o=s*i,l=n.target,c=t.contains(l),d=!1,u=o>0,p=0,m=0;do{var f=mO(e,l),x=f[0],h=f[1],g=f[2],y=h-g-s*x;(x||y)&&pO(e,l)&&(p+=y,m+=x),l instanceof ShadowRoot?l=l.host:l=l.parentNode}while(!c&&l!==document.body||c&&(t.contains(l)||t===l));return(u&&(Math.abs(p)<1||!a)||!u&&(Math.abs(m)<1||!a))&&(d=!0),d},Kp=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},qk=function(e){return[e.deltaX,e.deltaY]},Gk=function(e){return e&&"current"in e?e.current:e},WV=function(e,t){return e[0]===t[0]&&e[1]===t[1]},VV=function(e){return`
480  .block-interactivity-`.concat(e,` {pointer-events: none;}
481  .allow-interactivity-`).concat(e,` {pointer-events: all;}
482`)},KV=0,ho=[];function YV(e){var t=j.useRef([]),n=j.useRef([0,0]),i=j.useRef(),a=j.useState(KV++)[0],s=j.useState(dO)[0],o=j.useRef(e);j.useEffect(function(){o.current=e},[e]),j.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(a));var h=gV([e.lockRef.current],(e.shards||[]).map(Gk),!0).filter(Boolean);return h.forEach(function(g){return g.classList.add("allow-interactivity-".concat(a))}),function(){document.body.classList.remove("block-interactivity-".concat(a)),h.forEach(function(g){return g.classList.remove("allow-interactivity-".concat(a))})}}},[e.inert,e.lockRef.current,e.shards]);var l=j.useCallback(function(h,g){if("touches"in h&&h.touches.length===2||h.type==="wheel"&&h.ctrlKey)return!o.current.allowPinchZoom;var y=Kp(h),v=n.current,b="deltaX"in h?h.deltaX:v[0]-y[0],A="deltaY"in h?h.deltaY:v[1]-y[1],w,k=h.target,N=Math.abs(b)>Math.abs(A)?"h":"v";if("touches"in h&&N==="h"&&k.type==="range")return!1;var I=Uk(N,k);if(!I)return!0;if(I?w=N:(w=N==="v"?"h":"v",I=Uk(N,k)),!I)return!1;if(!i.current&&"changedTouches"in h&&(b||A)&&(i.current=w),!w)return!0;var C=i.current||w;return zV(C,g,h,C==="h"?b:A,!0)},[]),c=j.useCallback(function(h){var g=h;if(!(!ho.length||ho[ho.length-1]!==s)){var y="deltaY"in g?qk(g):Kp(g),v=t.current.filter(function(w){return w.name===g.type&&(w.target===g.target||g.target===w.shadowParent)&&WV(w.delta,y)})[0];if(v&&v.should){g.cancelable&&g.preventDefault();return}
vendor: 8,893 bytes, lines 482-486
482if(!v){var b=(o.current.shards||[]).map(Gk).filter(Boolean).filter(function(w){return w.contains(g.target)}),A=b.length>0?l(g,b[0]):!o.current.noIsolation;A&&g.cancelable&&g.preventDefault()}}},[]),d=j.useCallback(function(h,g,y,v){var b={name:h,delta:g,target:y,should:v,shadowParent:QV(y)};t.current.push(b),setTimeout(function(){t.current=t.current.filter(function(A){return A!==b})},1)},[]),u=j.useCallback(function(h){n.current=Kp(h),i.current=void 0},[]),p=j.useCallback(function(h){d(h.type,qk(h),h.target,l(h,e.lockRef.current))},[]),m=j.useCallback(function(h){d(h.type,Kp(h),h.target,l(h,e.lockRef.current))},[]);j.useEffect(function(){return ho.push(s),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:m}),document.addEventListener("wheel",c,mo),document.addEventListener("touchmove",c,mo),document.addEventListener("touchstart",u,mo),function(){ho=ho.filter(function(h){return h!==s}),document.removeEventListener("wheel",c,mo),document.removeEventListener("touchmove",c,mo),document.removeEventListener("touchstart",u,mo)}},[]);var f=e.removeScrollBar,x=e.inert;return j.createElement(j.Fragment,null,x?j.createElement(s,{styles:VV(a)}):null,f?j.createElement(FV,{gapMode:e.gapMode}):null)}function QV(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const XV=NV(cO,YV);var hO=j.forwardRef(function(e,t){return j.createElement(sg,ii({},e,{ref:t,sideCar:XV}))});hO.classNames=sg.classNames;var ZV=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},fo=new WeakMap,Yp=new WeakMap,Qp={},Yx=0,fO=function(e){return e&&(e.host||fO(e.parentNode))},JV=function(e,t){return t.map(function(n){if(e.contains(n))return n;var i=fO(n);return i&&e.contains(i)?i:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},e9=function(e,t,n,i){var a=JV(t,Array.isArray(e)?e:[e]);Qp[n]||(Qp[n]=new WeakMap);var s=Qp[n],o=[],l=new Set,c=new Set(a),d=function(p){!p||l.has(p)||(l.add(p),d(p.parentNode))};a.forEach(d);var u=function(p){!p||c.has(p)||Array.prototype.forEach.call(p.children,function(m){if(l.has(m))u(m);else try{var f=m.getAttribute(i),x=f!==null&&f!=="false",h=(fo.get(m)||0)+1,g=(s.get(m)||0)+1;fo.set(m,h),s.set(m,g),o.push(m),h===1&&x&&Yp.set(m,!0),g===1&&m.setAttribute(n,"true"),x||m.setAttribute(i,"true")}catch(y){console.error("aria-hidden: cannot operate on ",m,y)}})};return u(t),l.clear(),Yx++,function(){o.forEach(function(p){var m=fo.get(p)-1,f=s.get(p)-1;fo.set(p,m),s.set(p,f),m||(Yp.has(p)||p.removeAttribute(i),Yp.delete(p)),f||p.removeAttribute(n)}),Yx--,Yx||(fo=new WeakMap,fo=new WeakMap,Yp=new WeakMap,Qp={})}},t9=function(e,t,n){n===void 0&&(n="data-aria-hidden");var i=Array.from(Array.isArray(e)?e:[e]),a=ZV(e);return a?(i.push.apply(i,Array.from(a.querySelectorAll("[aria-live]"))),e9(i,a,n,"aria-hidden")):function(){return null}},t1="Dialog",[gO,hAe]=M3(t1),[n9,Wr]=gO(t1),xO=e=>{const{__scopeDialog:t,children:n,open:i,defaultOpen:a,onOpenChange:s,modal:o=!0}=e,l=j.useRef(null),c=j.useRef(null),[d=!1,u]=$3({prop:i,defaultProp:a,onChange:s});return r.jsx(n9,{scope:t,triggerRef:l,contentRef:c,contentId:qx(),titleId:qx(),descriptionId:qx(),open:d,onOpenChange:u,onOpenToggle:j.useCallback(()=>u(p=>!p),[u]),modal:o,children:n})};xO.displayName=t1;var yO="DialogTrigger",r9=j.forwardRef((e,t)=>{const{__scopeDialog:n,...i}=e,a=Wr(yO,n),s=Gr(t,a.triggerRef);return r.jsx(yn.button,{type:"button","aria-haspopup":"dialog","aria-expanded":a.open,"aria-controls":a.contentId,"data-state":i1(a.open),...i,ref:s,onClick:Yt(e.onClick,a.onOpenToggle)})});r9.displayName=yO;var n1="DialogPortal",[i9,vO]=gO(n1,{forceMount:void 0}),bO=e=>{const{__scopeDialog:t,forceMount:n,children:i,container:a}=e,s=Wr(n1,t);return r.jsx(i9,{scope:t,forceMount:n,children:j.Children.map(i,o=>r.jsx(ep,{present:n||s.open,children:r.jsx($0,{asChild:!0,container:a,children:o})}))})};bO.displayName=n1;var vh="DialogOverlay",wO=j.forwardRef((e,t)=>{const n=vO(vh,e.__scopeDialog),{forceMount:i=n.forceMount,...a}=e,s=Wr(vh,e.__scopeDialog);return s.modal?r.jsx(ep,{present:i||s.open,children:r.jsx(a9,{...a,ref:t})}):null});wO.displayName=vh;var a9=j.forwardRef((e,t)=>{const{__scopeDialog:n,...i}=e,a=Wr(vh,n);return r.jsx(hO,{as:Sl,allowPinchZoom:!0,shards:[a.contentRef],children:r.jsx(yn.div,{"data-state":i1(a.open),...i,ref:t,style:{pointerEvents:"auto",...i.style}})})}),Ks="DialogContent",AO=j.forwardRef((e,t)=>{const n=vO(Ks,e.__scopeDialog),{forceMount:i=n.forceMount,...a}=e,s=Wr(Ks,e.__scopeDialog);return r.jsx(ep,{present:i||s.open,children:s.modal?r.jsx(s9,{...a,ref:t}):r.jsx(o9,{...a,ref:t})})});AO.displayName=Ks;var s9=j.forwardRef((e,t)=>{const n=Wr(Ks,e.__scopeDialog),i=j.useRef(null),a=Gr(t,n.contentRef,i);return j.useEffect(()=>{const s=i.current;if(s)return t9(s)},[]),r.jsx(jO,{...e,ref:a,trapFocus:n.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:Yt(e.onCloseAutoFocus,s=>{var o;s.preventDefault(),(o=n.triggerRef.current)==null||o.focus()}),onPointerDownOutside:Yt(e.onPointerDownOutside,s=>{const o=s.detail.originalEvent,l=o.button===0&&o.ctrlKey===!0;(o.button===2||l)&&s.preventDefault()}),onFocusOutside:Yt(e.onFocusOutside,s=>s.preventDefault())})}),o9=j.forwardRef((e,t)=>{const n=Wr(Ks,e.__scopeDialog),i=j.useRef(!1),a=j.useRef(!1);return r.jsx(jO,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:s=>{var o,l;(o=e.onCloseAutoFocus)==null||o.call(e,s),s.defaultPrevented||(i.current||(l=n.triggerRef.current)==null||l.focus(),s.preventDefault()),i.current=!1,a.current=!1},onInteractOutside:s=>{var c,d;(c=e.onInteractOutside)==null||c.call(e,s),s.defaultPrevented||(i.current=!0,s.detail.originalEvent.type==="pointerdown"&&(a.current=!0));const o=s.target;((d=n.triggerRef.current)==null?void 0:d.contains(o))&&s.preventDefault(),s.detail.originalEvent.type==="focusin"&&a.current&&s.preventDefault()}})}),jO=j.forwardRef((e,t)=>{const{__scopeDialog:n,trapFocus:i,onOpenAutoFocus:a,onCloseAutoFocus:s,...o}=e,l=Wr(Ks,n),c=j.useRef(null),d=Gr(t,c);return fV(),r.jsxs(r.Fragment,{children:[r.jsx(aO,{asChild:!0,loop:!0,trapped:i,onMountAutoFocus:a,onUnmountAutoFocus:s,children:r.jsx(B0,{role:"dialog",id:l.contentId,"aria-describedby":l.descriptionId,"aria-labelledby":l.titleId,"data-state":i1(l.open),...o,ref:d,onDismiss:()=>l.onOpenChange(!1)})}),r.jsxs(r.Fragment,{children:[r.jsx(l9,{titleId:l.titleId}),r.jsx(d9,{contentRef:c,descriptionId:l.descriptionId})]})]})}),r1="DialogTitle",kO=j.forwardRef((e,t)=>{const{__scopeDialog:n,...i}=e,a=Wr(r1,n);return r.jsx(yn.h2,{id:a.titleId,...i,ref:t})});kO.displayName=r1;var NO="DialogDescription",IO=j.forwardRef((e,t)=>{const{__scopeDialog:n,...i}=e,a=Wr(NO,n);return r.jsx(yn.p,{id:a.descriptionId,...i,ref:t})});IO.displayName=NO;var SO="DialogClose",CO=j.forwardRef((e,t)=>{const{__scopeDialog:n,...i}=e,a=Wr(SO,n);return r.jsx(yn.button,{type:"button",...i,ref:t,onClick:Yt(e.onClick,()=>a.onOpenChange(!1))})});CO.displayName=SO;function i1(e){return e?"open":"closed"}var EO="DialogTitleWarning",[fAe,_O]=rq(EO,{contentName:Ks,titleName:r1,docsSlug:"dialog"}),l9=({titleId:e})=>{const t=_O(EO),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.
483
484If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.
485
486For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return j.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},c9="DialogDescriptionWarning",d9=({contentRef:e,descriptionId:t})=>{const i=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${_O(c9).contentName}}.`;return j.useEffect(()=>{var s;const a=(s=e.current)==null?void 0:s.getAttribute("aria-describedby");t&&a&&(document.getElementById(t)||console.warn(i))},[i,e,t]),null},u9=xO,p9=bO,PO=wO,TO=AO,DO=kO,OO=IO,m9=CO;const og=u9,h9=p9,MO=j.forwardRef(({className:e,...t},n)=>r.jsx(PO,{ref:n,className:Zt("fixed inset-0 z-50 bg-black/80  data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t}));MO.displayName=PO.displayName;const rp=j.forwardRef(({className:e,children:t,...n},i)=>r.jsxs(h9,{children:[r.jsx(MO,{}),r.jsxs(TO,{ref:i,className:Zt("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rou
486nded-lg",e),...n,children:[t,r.jsxs(m9,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[r.jsx(ac,{className:"h-4 w-4"}),r.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));rp.displayName=TO.displayName;const ip=({className:e,...t})=>r.jsx("div",{className:Zt("flex flex-col space-y-1.5 text-center sm:text-left",e),...t});ip.displayName="DialogHeader";const ap=j.forwardRef(({className:e,...t},n)=>r.jsx(DO,{ref:n,className:Zt("text-lg font-semibold leading-none tracking-tight",e),...t}));ap.displayName=DO.displayName;const a1=j.forwardRef(({className:e,...t},n)=>r.jsx(OO,{ref:n,className:Zt("text-sm text-muted-foreground",e),...t}));a1.displayName=OO.displayName;const K=Symbol.for("drizzle:entityKind");function an(e,t){if(!e||typeof e!="object")return!1;if(e instanceof t)return!0;if(!Object.prototype.hasOwnProperty.call(t,K))throw new Error(`Class "${t.name??"<unknown>"}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);let n=Object.getPrototypeOf(e).constructor;if(n)for(;n;){if(K in n&&n[K]===t[K])return!0;n=Object.getPrototypeOf(n)}return!1}var pC;pC=K;class Cl{constructor(t,n){M(this,"name");M(this,"keyAsName");M(this,"primary");M(this,"notNull");M(this,"default");M(this,"defaultFn");M(this,"onUpdateFn");M(this,"hasDefault");M(this,"isUnique");M(this,"uniqueName");M(this,"uniqueType");M(this,"dataType");M(this,"columnType");M(this,"enumValues");M(this,"generated");M(this,"generatedIdentity");M(this,"config");this.table=t,this.config=n,this.name=n.name,this.keyAsName=n.keyAsName,this.notNull=n.notNull,this.default=n.default,this.defaultFn=n.defaultFn,this.onUpdateFn=n.onUpdateFn,this.hasDefault=n.hasDefault,this.primary=n.primaryKey,this.isUnique=n.isUnique,this.uniqueName=n.uniqueName,this.uniqueType=n.uniqueType,this.dataType=n.dataType,this.columnType=n.columnType,this.generated=n.generated,this.generatedIdentity=n.generatedIdentity}mapFromDriverValue(t){return t}mapToDriverValue(t){return t}shouldDisableInsert(){return this.config.generated!==void 0&&this.config.generated.type!=="byDefault"}}M(Cl,pC,"Column");var mC;mC=K;class RO{constructor(t,n,i){M(this,"config");M(this,"$default",this.$defaultFn);M(this,"$onUpdate",this.$onUpdateFn);this.config={name:t,keyAsName:t==="",notNull:!1,default:void 0,hasDefault:!1,primaryKey:!1,isUnique:!1,uniqueName:void 0,uniqueType:void 0,dataType:n,columnType:i,generated:void 0}}$type(){return this}notNull(){return this.config.notNull=!0,this}default(t){return this.config.default=t,this.config.hasDefault=!0,this}$defaultFn(t){return this.config.defaultFn=t,this.config.hasDefault=!0,this}$onUpdateFn(t){return this.config.onUpdateFn=t,this.config.hasDefault=!0,this}primaryKey(){return this.config.primaryKey=!0,this.config.notNull=!0,this}setName(t){this.config.name===""&&(this.config.name=t)}}M(RO,mC,"ColumnBuilder");const Jo=Symbol.for("drizzle:Name");var hC;hC=K;class LO{constructor(t,n){M(this,"reference");M(this,"_onUpdate","no action");M(this,"_onDelete","no action");this.reference=()=>{const{name:i,columns:a,foreignColumns:s}=t();return{name:i,columns:a,foreignTable:s[0].table,foreignColumns:s}},n&&(this._onUpdate=n.onUpdate,this._onDelete=n.onDelete)}onUpdate(t){return this._onUpdate=t===void 0?"no action":t,this}onDelete(t){return this._onDelete=t===void 0?"no action":t,this}build(t){return new FO(t,this)}}M(LO,hC,"PgForeignKeyBuilder");var fC;fC=K;class FO{constructor(t,n){M(this,"reference");M(this,"onUpdate");M(this,"onDelete");this.table=t,this.reference=n.reference,this.onUpdate=n._onUpdate,this.onDelete=n._onDelete}getName(){const{name:t,columns:n,foreignColumns:i}=this.reference(),a=n.map(l=>l.name),s=i.map(l=>l.name),o=[this.table[Jo],...a,i[0].table[Jo],...s];return t??`${o.join("_")}_fk`}}M(FO,fC,"PgForeignKey");function f9(e,...t){return e(...t)}function g9(e,t){return`${e[Jo]}_${t.join("_")}_unique`}function Hk(e,t,n){for(let i=t;i<e.length;i++){const a=e[i];if(a==="\\"){i++;continue}if(a==='"')return[e.slice(t,i).replace(/\\/g,""),i+1];if(!n&&(a===","||a==="}"))return[e.slice(t,i).replace(/\\/g,""),i]}return[e.slice(t).replace(/\\/g,""),e.length]}function BO(e,t=0){const n=[];let i=t,a=!1;for(;i<e.length;){const s=e[i];if(s===","){(a||i===t)&&n.push(""),a=!0,i++;continue}if(a=!1,s==="\\"){i+=2;continue}if(s==='"'){const[c,d]=Hk(e,i+1,!0);n.push(c),i=d;continue}if(s==="}")return[n,i+1];if(s==="{"){const[c,d]=BO(e,i+1);n.push(c),i=d;continue}const[o,l]=Hk(e,i,!1);n.push(o),i=l}return[n,i]}function x9(e){const[t]=BO(e,1);return t}function $O(e){return`{${e.map(t=>Array.isArray(t)?$O(t):typeof t=="string"?`"${t.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`:`${t}`).join(",")}}`}var gC,xC;class Fe extends(xC=RO,gC=K,xC){constructor(){super(...arguments);M(this,"foreignKeyConfigs",[])}array(n){return new qO(this.config.name,this,n)}references(n,i={}){return this.foreignKeyConfigs.push({ref:n,actions:i}),this}unique(n,i){return this.config.isUnique=!0,this.config.uniqueName=n,this.config.uniqueType=i==null?void 0:i.nulls,this}generatedAlwaysAs(n){return this.config.generated={as:n,type:"always",mode:"stored"},this}
486buildForeignKeys(n,i){return this.foreignKeyConfigs.map(({ref:a,actions:s})=>f9((o,l)=>{const c=new LO(()=>{const d=o();return{columns:[n],foreignColumns:[d]}});return l.onUpdate&&c.onUpdate(l.onUpdate),l.onDelete&&c.onDelete(l.onDelete),c.build(i)},a,s))}buildExtraConfigColumn(n){return new UO(n,this.config)}}M(Fe,gC,"PgColumnBuilder");var yC,vC;class je extends(vC=Cl,yC=K,vC){constructor(t,n){n.uniqueName||(n.uniqueName=g9(t,[n.name])),super(t,n),this.table=t}}M(je,yC,"PgColumn");var bC,wC;class UO extends(wC=je,bC=K,wC){constructor(){super(...arguments);M(this,"indexConfig",{order:this.config.order??"asc",nulls:this.config.nulls??"last",opClass:this.config.opClass});M(this,"defaultConfig",{order:"asc",nulls:"last",opClass:void 0})}getSQLType(){return this.getSQLType()}asc(){return this.indexConfig.order="asc",this}desc(){return this.indexConfig.order="desc",this}nullsFirst(){return this.indexConfig.nulls="first",this}nullsLast(){return this.indexConfig.nulls="last",this}op(n){return this.indexConfig.opClass=n,this}}M(UO,bC,"ExtraConfigColumn");var AC,jC;class qO extends(jC=Fe,AC=K,jC){constructor(t,n,i){super(t,"array","PgArray"),this.config.baseBuilder=n,this.config.size=i}build(t){const n=this.config.baseBuilder.build(t);return new ob(t,this.config,n)}}M(qO,AC,"PgArrayBuilder");var kC,NC;const Of=class Of extends(NC=je,kC=K,NC){constructor(n,i,a,s){super(n,i);M(this,"size");this.baseColumn=a,this.range=s,this.size=i.size}getSQLType(){return`${this.baseColumn.getSQLType()}[${typeof this.size=="number"?this.size:""}]`}mapFromDriverValue(n){return typeof n=="string"&&(n=x9(n)),n.map(i=>this.baseColumn.mapFromDriverValue(i))}mapToDriverValue(n,i=!1){const a=n.map(s=>s===null?null:an(this.baseColumn,Of)?this.baseColumn.mapToDriverValue(s,!0):this.baseColumn.mapToDriverValue(s));return i?a:$O(a)}};M(Of,kC,"PgArray");let ob=Of;const zk=Symbol.for("drizzle:isPgEnum");function y9(e){return!!e&&typeof e=="function"&&zk in e&&e[zk]===!0}var IC;IC=K;class s1{constructor(t,n,i,a=!1){this._={brand:"Subquery",sql:t,selectedFields:n,alias:i,isWith:a}}}M(s1,IC,"Subquery");const v9={startActiveSpan(e,t){return t()}},el=Symbol.for("drizzle:ViewBaseConfig"),Qx=Symbol.for("drizzle:Schema"),Wk=Symbol.for("drizzle:Columns"),Vk=Symbol.for("drizzle:ExtraConfigColumns"),Xx=Symbol.for("drizzle:OriginalName"),Zx=Symbol.for("drizzle:BaseName"),bh=Symbol.for("drizzle:IsAlias"),Kk=Symbol.for("drizzle:ExtraConfigBuilder"),GO=Symbol.for("drizzle:IsDrizzleTable");var SC,CC,EC,_C,PC,TC,DC,OC,MC,RC;RC=K,MC=Jo,OC=Xx,DC=Qx,TC=Wk,PC=Vk,_C=Zx,EC=bh,CC=GO,SC=Kk;class jn{constructor(t,n,i){M(this,MC);M(this,OC);M(this,DC);M(this,TC);M(this,PC);M(this,_C);M(this,EC,!1);M(this,CC,!0);M(this,SC);this[Jo]=this[Xx]=t,this[Qx]=n,this[Zx]=i}}M(jn,RC,"Table"),M(jn,"Symbol",{Name:Jo,Schema:Qx,OriginalName:Xx,Columns:Wk,ExtraConfigColumns:Vk,BaseName:Zx,IsAlias:bh,ExtraConfigBuilder:Kk});function HO(e){return typeof e=="object"&&e!==null&&GO in e}function b9(e){return e!=null&&typeof e.getSQL=="function"}function w9(e){var n;const t={sql:"",params:[]};for(const i of e)t.sql+=i.sql,t.params.push(...i.params),(n=i.typings)!=null&&n.length&&(t.typings||(t.typings=[]),t.typings.push(...i.typings));return t}var LC;LC=K;class sr{constructor(t){M(this,"value");this.value=Array.isArray(t)?t:[t]}getSQL(){return new Gt([this])}}M(sr,LC,"StringChunk");var FC;FC=K;const ms=class ms{constructor(t){M(this,"decoder",zO);M(this,"shouldInlineParams",!1);this.queryChunks=t}append(t){return this.queryChunks.push(...t.queryChunks),this}toQuery(t){return v9.startActiveSpan("drizzle.buildSQL",n=>{const i=this.buildQueryFromSourceParams(this.queryChunks,t);return n==null||n.setAttributes({"drizzle.query.text":i.sql,"drizzle.query.params":JSON.stringify(i.params)}),i})}buildQueryFromSourceParams(t,n){const i=Object.assign({},n,{inlineParams:n.inlineParams||this.shouldInlineParams,paramStartIndex:n.paramStartIndex||{value:0}}),{casing:a,escapeName:s,escapeParam:o,prepareTyping:l,inlineParams:c,paramStartIndex:d}=i;return w9(t.map(u=>{var p;if(an(u,sr))return{sql:u.value.join(""),params:[]};if(an(u,wh))return{sql:s(u.value),params:[]};if(u===void 0)return{sql:"",params:[]};if(Array.isArray(u)){const m=[new sr("(")];for(const[f,x]of u.entries())m.push(x),f<u.length-1&&m.push(new sr(", "));return m.push(new sr(")")),this.buildQueryFromSourceParams(m,i)}if(an(u,ms))return this.buildQueryFromSourceParams(u.queryChunks,{...i,inlineParams:c||u.shouldInlineParams});if(an(u,jn)){const m=u[jn.Symbol.Schema],f=u[jn.Symbol.Name];return{sql:m===void 0||u[bh]?s(f):s(m)+"."+s(f),params:[]}}if(an(u,Cl)){const m=a.getColumnCasing(u);if(n.invokeSource==="indexes")return{sql:s(m),params:[]};const f=u.table[jn.Symbol.Schema];return{sql:u.table[bh]||f===void 0?s(u.table[jn.Symbol.Name])+"."+s(m):s(f)+"."+s(u.table[jn.Symbol.Name])+"."+s(m),params:[]}}if(an(u,KO)){const m=u[el].schema,f=u[el].name;return{sql:m===void 0||u[el].isAlias?s(f):s(m)+"."+s(f),params:[]}}if(an(u,o1)){if(an(u.value,jh))return{sql:o(d.value++,u),params:[u],typings:["none"]};const m=u.value===null?null:u.encoder.mapToDriverValue(u.value);if(an(m,ms))return this.buildQueryFromSourceParams([m],i);if(c)return{sql:this.mapInlineParam(m,i),params:[]};let f=["none"];return l&&(f=[l(u.encoder)]),{sql:o(d.value++,m),params:[m],typings:f}}return an(u,jh)?{sql:o(d.value++,u),params:[u],typings:["none"]}:an(u,ms.Aliased)&&u.fieldAlias!==void 0?{sql:s(u.fieldAlias),params:[]}:an(u,s1)?u._.isWith?{sql:s(u._.alias),params:[]}:this.buildQueryFromSourceParams([new sr("("),u._.sql,new sr(") "),new wh(u._.alias)],i):y9(u)?u.schema?{sql:s(u.schema)+"."+s(u.enumName),params:[]}:{sql:s(u.enumName),params:[]}:b9(u)?(p=u.shouldOmitSQLParens)!=null&&p.call(u)?this.buildQueryFromSourceParams([u.getSQL()],i):this.buildQueryFromSourceParams([new sr("("),u.getSQL(),new sr(")")],i):c?{sql:this.mapInlineParam(u,i),params:[]}:{sql:o(d.value++,u),params:[u],typings:["none"]}}))}mapInlineParam(t,{escapeString:n}){if(t===null)return"null";if(typeof t=="number"||typeof t=="boolean")return t.toString();if(typeof t=="string")return n(t);if(typeof t=="object"){const i=t.toString();return n(i==="[object Object]"?JSON.stringify(t):i)}throw new Error("Unexpected param value: "+t)}getSQL(){return this}as(t){return t===void 0?this:new ms.Aliased(this,t)}mapWith(t){return this.decoder=typeof t=="function"?{mapFromDriverValue:t}:t,this}inlineParams(){return this.shouldInlineParams=!0,this}if(t){return t?this:void 0}};M(ms,FC,"SQL");let Gt=ms;var BC;BC=K;class wh{constructor(t){M(this,"brand");this.value=t}getSQL(){return new Gt([this])}}M(wh,BC,"Name");const zO={mapFromDriverValue:e=>e},WO={mapToDriverValue:e=>e};({...zO,...WO});var $C;$C=K;class o1{constructor(t,n=WO){M(this,"brand");this.value=t,this.encoder=n}getSQL(){return new Gt([this])}}M(o1,$C,"Param");function Ah(e,...t){const n=[];(t.length>0||e.length>0&&e[0]!=="")&&n.push(new sr(e[0]));for(const[i,a]of t.entries())n.push(a,new sr(e[i+1]));return new Gt(n)}(e=>{function t(){return new Gt([])}e.empty=t;function n(c){return new Gt(c)}e.fromList=n;function i(c){return new Gt([new sr(c)])}e.raw=i;function a(c,d){const u=[];for(const[p,m]of c.entries())p>0&&d!==void 0&&u.push(d),u.push(m);return new Gt(u)}e.join=a;function s(c){return new wh(c)}e.identifier=s;function o(c){return new jh(c)}e.placeholder=o;function l(c,d){return new o1(c,d)}e.param=l})(Ah||(Ah={}));(e=>{var n;n=K;const i=class i{constructor(s,o){M(this,"isSelectionField",!1);this.sql=s,this.fieldAlias=o}getSQL(){return this.sql}clone(){return new i(this.sql,this.fieldAlias)}};M(i,n,"SQL.Aliased");let t=i;e.Aliased=t})(Gt||(Gt={}));var UC;UC=K;class jh{constructor(t){this.name=t}getSQL(){return new Gt([this])}}M(jh,UC,"Placeholder");const VO=Symbol.for("drizzle:IsDrizzleView");var qC,GC,HC;HC=K,GC=el,qC=VO;class KO{constructor({name:t,schema:n,selectedFields:i,query:a}){M(this,GC);M(this,qC,!0);this[el]={name:t,originalName:t,schema:n,selectedFields:i,query:a,isExisting:!a,isAlias:!1}}getSQL(){return new Gt([this])}}M(KO,HC,"View");function A9(e){return typeof e=="object"&&e!==null&&VO in e}Cl.prototype.getSQL=function(){return new Gt([this])};jn.prototype.getSQL=function(){return new Gt([this])};s1.prototype.getSQL=function(){return new Gt([this])};function j9(e){return e[jn.Symbol.Columns]}function k9(e){return e[el].selectedFields}function Jt(e,t){return{name:typeof e=="string"&&e.length>0?e:"",config:typeof e=="object"?e:t}}var zC,WC;class sp extends(WC=Fe,zC=K,WC){generatedAlwaysAsIdentity(t){if(t){const{name:n,...i}=t;this.config.generatedIdentity={type:"always",sequenceName:n,sequenceOptions:i}}else this.config.generatedIdentity={type:"always"};return this.config.hasDefault=!0,this.config.notNull=!0,this}generatedByDefaultAsIdentity(t){if(t){const{name:n,...i}=t;this.config.generatedIdentity={type:"byDefault",sequenceName:n,sequenceOptions:i}}else this.config.generatedIdentity={type:"byDefault"};return this.config.hasDefault=!0,this.config.notNull=!0,this}}M(sp,zC,"PgIntColumnBaseBuilder");var VC,KC;class YO extends(KC=sp,VC=K,KC){constructor(t){super(t,"number","PgBigInt53")}build(t){return new QO(t,this.config)}}M(YO,VC,"PgBigInt53Builder");var YC,QC;class QO extends(QC=je,YC=K,QC){getSQLType(){return"bigint"}mapFromDriverValue(t){return typeof t=="number"?t:Number(t)}}M(QO,YC,"PgBigInt53");var XC,ZC;class XO extends(ZC=sp,XC=K,ZC){constructor(t){super(t,"bigint","PgBigInt64")}build(t){return new ZO(t,this.config)}}M(XO,XC,"PgBigInt64Builder");var JC,eE;class ZO extends(eE=je,JC=K,eE){getSQLType(){return"bigint"}mapFromDriverValue(t){return BigInt(t)}}M(ZO,JC,"PgBigInt64");function N9(e,t){const{name:n,config:i}=Jt(e,t);return i.mode==="number"?new YO(n):new XO(n)}var tE,nE;class JO extends(nE=Fe,tE=K,nE){constructor(t){super(t,"number","PgBigSeri
486al53"),this.config.hasDefault=!0,this.config.notNull=!0}build(t){return new eM(t,this.config)}}M(JO,tE,"PgBigSerial53Builder");var rE,iE;class eM extends(iE=je,rE=K,iE){getSQLType(){return"bigserial"}mapFromDriverValue(t){return typeof t=="number"?t:Number(t)}}M(eM,rE,"PgBigSerial53");var aE,sE;class tM extends(sE=Fe,aE=K,sE){constructor(t){super(t,"bigint","PgBigSerial64"),this.config.hasDefault=!0}build(t){return new nM(t,this.config)}}M(tM,aE,"PgBigSerial64Builder");var oE,lE;class nM extends(lE=je,oE=K,lE){getSQLType(){return"bigserial"}mapFromDriverValue(t){return BigInt(t)}}M(nM,oE,"PgBigSerial64");function I9(e,t){const{name:n,config:i}=Jt(e,t);return i.mode==="number"?new JO(n):new tM(n)}var cE,dE;class rM extends(dE=Fe,cE=K,dE){constructor(t){super(t,"boolean","PgBoolean")}build(t){return new iM(t,this.config)}}M(rM,cE,"PgBooleanBuilder");var uE,pE;class iM extends(pE=je,uE=K,pE){getSQLType(){return"boolean"}}M(iM,uE,"PgBoolean");function Ys(e){return new rM(e??"")}var mE,hE;class aM extends(hE=Fe,mE=K,hE){constructor(t,n){super(t,"string","PgChar"),this.config.length=n.length,this.config.enumValues=n.enum}build(t){return new sM(t,this.config)}}M(aM,mE,"PgCharBuilder");var fE,gE;class sM extends(gE=je,fE=K,gE){constructor(){super(...arguments);M(this,"length",this.config.length);M(this,"enumValues",this.config.enumValues)}getSQLType(){return this.length===void 0?"char":`char(${this.length})`}}M(sM,fE,"PgChar");function S9(e,t={}){const{name:n,config:i}=Jt(e,t);return new aM(n,i)}var xE,yE;class oM extends(yE=Fe,xE=K,yE){constructor(t){super(t,"string","PgCidr")}build(t){return new lM(t,this.config)}}M(oM,xE,"PgCidrBuilder");var vE,bE;class lM extends(bE=je,vE=K,bE){getSQLType(){return"cidr"}}M(lM,vE,"PgCidr");function C9(e){return new oM(e??"")}var wE,AE;class cM extends(AE=Fe,wE=K,AE){constructor(t,n,i){super(t,"custom","PgCustomColumn"),this.config.fieldConfig=n,this.config.customTypeParams=i}build(t){return new dM(t,this.config)}}M(cM,wE,"PgCustomColumnBuilder");var jE,kE;class dM extends(kE=je,jE=K,kE){constructor(n,i){super(n,i);M(this,"sqlName");M(this,"mapTo");M(this,"mapFrom");this.sqlName=i.customTypeParams.dataType(i.fieldConfig),this.mapTo=i.customTypeParams.toDriver,this.mapFrom=i.customTypeParams.fromDriver}getSQLType(){return this.sqlName}mapFromDriverValue(n){return typeof this.mapFrom=="function"?this.mapFrom(n):n}mapToDriverValue(n){return typeof this.mapTo=="function"?this.mapTo(n):n}}M(dM,jE,"PgCustomColumn");function E9(e){return(t,n)=>{const{name:i,config:a}=Jt(t,n);return new cM(i,a,e)}}var NE,IE;class oc extends(IE=Fe,NE=K,IE){defaultNow(){return this.default(Ah`now()`)}}M(oc,NE,"PgDateColumnBaseBuilder");var SE,CE;class uM extends(CE=oc,SE=K,CE){constructor(t){super(t,"date","PgDate")}build(t){return new pM(t,this.config)}}M(uM,SE,"PgDateBuilder");var EE,_E;class pM extends(_E=je,EE=K,_E){getSQLType(){return"date"}mapFromDriverValue(t){return new Date(t)}mapToDriverValue(t){return t.toISOString()}}M(pM,EE,"PgDate");var PE,TE;class mM extends(TE=oc,PE=K,TE){constructor(t){super(t,"string","PgDateString")}build(t){return new hM(t,this.config)}}M(mM,PE,"PgDateStringBuilder");var DE,OE;class hM extends(OE=je,DE=K,OE){getSQLType(){return"date"}}M(hM,DE,"PgDateString");function _9(e,t){const{name:n,config:i}=Jt(e,t);return(i==null?void 0:i.mode)==="date"?new uM(n):new mM(n)}var ME,RE;class fM extends(RE=Fe,ME=K,RE){constructor(t){super(t,"number","PgDoublePrecision")}build(t){return new gM(t,this.config)}}M(fM,ME,"PgDoublePrecisionBuilder");var LE,FE;class gM extends(FE=je,LE=K,FE){getSQLType(){return"double precision"}mapFromDriverValue(t){return typeof t=="string"?Number.parseFloat(t):t}}M(gM,LE,"PgDoublePrecision");function P9(e){return new fM(e??"")}var BE,$E;class xM extends($E=Fe,BE=K,$E){constructor(t){super(t,"string","PgInet")}build(t){return new yM(t,this.config)}}M(xM,BE,"PgInetBuilder");var UE,qE;class yM extends(qE=je,UE=K,qE){getSQLType(){return"inet"}}M(yM,UE,"PgInet");function T9(e){return new xM(e??"")}var GE,HE;class vM extends(HE=sp,GE=K,HE){constructor(t){super(t,"number","PgInteger")}build(t){return new bM(t,this.config)}}M(vM,GE,"PgIntegerBuilder");var zE,WE;class bM extends(WE=je,zE=K,WE){getSQLType(){return"integer"}mapFromDriverValue(t){return typeof t=="string"?Number.parseInt(t):t}}M(bM,zE,"PgInteger");function be(e){return new vM(e??"")}var VE,KE;class wM extends(KE=Fe,VE=K,KE){constructor(t,n){super(t,"string","PgInterval"),this.config.intervalConfig=n}build(t){return new AM(t,this.config)}}M(wM,VE,"PgIntervalBuilder");var YE,QE;class AM extends(QE=je,YE=K,QE){constructor(){super(...arguments);M(this,"fields",this.config.intervalConfig.fields);M(this,"precision",this.config.intervalConfig.precision)}getSQLType(){const n=this.fields?` ${this.fields}`:"",i=this.precision?`(${this.precision})`:"";return`interval${n}${i}`}}M(AM,YE,"PgInterval");function D9(e,t={}){const{name:n,config:i}=Jt(e,t);return new wM(n,i)}var XE,ZE;class jM extends(ZE=Fe,XE=K,ZE){constructor(t){super(t,"json","PgJson")}build(t){return new kM(t,this.config)}}M(jM,XE,"PgJsonBuilder");var JE,e_;class kM extends(e_=je,JE=K,e_){constructor(t,n){super(t,n)}getSQLType(){return"json"}mapToDriverValue(t){return JSON.stringify(t)}mapFromDriverValue(t){if(typeof t=="string")try{return JSON.parse(t)}catch{return t}return t}}M(kM,JE,"PgJson");function NM(e){return new jM(e??"")}var t_,n_;class IM extends(n_=Fe,t_=K,n_){constructor(t){super(t,"json","PgJsonb")}build(t){return new SM(t,this.config)}}M(IM,t_,"PgJsonbBuilder");var r_,i_;class SM extends(i_=je,r_=K,i_){constructor(t,n){super(t,n)}getSQLType(){return"jsonb"}mapToDriverValue(t){return JSON.stringify(t)}mapFromDriverValue(t){if(typeof t=="string")try{return JSON.parse(t)}catch{return t}return t}}M(SM,r_,"PgJsonb");function O9(e){return new IM(e??"")}var a_,s_;class CM extends(s_=Fe,a_=K,s_){constructor(t){super(t,"array","PgLine")}build(t){return new EM(t,this.config)}}
486M(CM,a_,"PgLineBuilder");var o_,l_;class EM extends(l_=je,o_=K,l_){getSQLType(){return"line"}mapFromDriverValue(t){const[n,i,a]=t.slice(1,-1).split(",");return[Number.parseFloat(n),Number.parseFloat(i),Number.parseFloat(a)]}mapToDriverValue(t){return`{${t[0]},${t[1]},${t[2]}}`}}M(EM,o_,"PgLine");var c_,d_;class _M extends(d_=Fe,c_=K,d_){constructor(t){super(t,"json","PgLineABC")}build(t){return new PM(t,this.config)}}M(_M,c_,"PgLineABCBuilder");var u_,p_;class PM extends(p_=je,u_=K,p_){getSQLType(){return"line"}mapFromDriverValue(t){const[n,i,a]=t.slice(1,-1).split(",");return{a:Number.parseFloat(n),b:Number.parseFloat(i),c:Number.parseFloat(a)}}mapToDriverValue(t){return`{${t.a},${t.b},${t.c}}`}}M(PM,u_,"PgLineABC");function M9(e,t){const{name:n,config:i}=Jt(e,t);return!(i!=null&&i.mode)||i.mode==="tuple"?new CM(n):new _M(n)}var m_,h_;class TM extends(h_=Fe,m_=K,h_){constructor(t){super(t,"string","PgMacaddr")}build(t){return new DM(t,this.config)}}M(TM,m_,"PgMacaddrBuilder");var f_,g_;class DM extends(g_=je,f_=K,g_){getSQLType(){return"macaddr"}}M(DM,f_,"PgMacaddr");function R9(e){return new TM(e??"")}var x_,y_;class OM extends(y_=Fe,x_=K,y_){constructor(t){super(t,"string","PgMacaddr8")}build(t){return new MM(t,this.config)}}M(OM,x_,"PgMacaddr8Builder");var v_,b_;class MM extends(b_=je,v_=K,b_){getSQLType(){return"macaddr8"}}M(MM,v_,"PgMacaddr8");function L9(e){return new OM(e??"")}var w_,A_;class RM extends(A_=Fe,w_=K,A_){constructor(t,n,i){super(t,"string","PgNumeric"),this.config.precision=n,this.config.scale=i}build(t){return new LM(t,this.config)}}M(RM,w_,"PgNumericBuilder");var j_,k_;class LM extends(k_=je,j_=K,k_){constructor(n,i){super(n,i);M(this,"precision");M(this,"scale");this.precision=i.precision,this.scale=i.scale}getSQLType(){return this.precision!==void 0&&this.scale!==void 0?`numeric(${this.precision}, ${this.scale})`:this.precision===void 0?"numeric":`numeric(${this.precision})`}}M(LM,j_,"PgNumeric");function F9(e,t){const{name:n,config:i}=Jt(e,t);return new RM(n,i==null?void 0:i.precision,i==null?void 0:i.scale)}var N_,I_;class FM extends(I_=Fe,N_=K,I_){constructor(t){super(t,"array","PgPointTuple")}build(t){return new BM(t,this.config)}}M(FM,N_,"PgPointTupleBuilder");var S_,C_;class BM extends(C_=je,S_=K,C_){getSQLType(){return"point"}mapFromDriverValue(t){if(typeof t=="string"){const[n,i]=t.slice(1,-1).split(",");return[Number.parseFloat(n),Number.parseFloat(i)]}return[t.x,t.y]}mapToDriverValue(t){return`(${t[0]},${t[1]})`}}M(BM,S_,"PgPointTuple");var E_,__;class $M extends(__=Fe,E_=K,__){constructor(t){super(t,"json","PgPointObject")}build(t){return new UM(t,this.config)}}M($M,E_,"PgPointObjectBuilder");var P_,T_;class UM extends(T_=je,P_=K,T_){getSQLType(){return"point"}mapFromDriverValue(t){if(typeof t=="string"){const[n,i]=t.slice(1,-1).split(",");return{x:Number.parseFloat(n),y:Number.parseFloat(i)}}return t}mapToDriverValue(t){return`(${t.x},${t.y})`}}M(UM,P_,"PgPointObject");function B9(e,t){const{name:n,config:i}=Jt(e,t);return!(i!=null&&i.mode)||i.mode==="tuple"?new FM(n):new $M(n)}function $9(e){const t=[];for(let n=0;n<e.length;n+=2)t.push(Number.parseInt(e.slice(n,n+2),16));return new Uint8Array(t)}function Yk(e,t){const n=new ArrayBuffer(8),i=new DataView(n);for(let a=0;a<8;a++)i.setUint8(a,e[t+a]);return i.getFloat64(0,!0)}function qM(e){const t=$9(e);let n=0;const i=t[n];n+=1;const a=new DataView(t.buffer),s=a.getUint32(n,i===1);if(n+=4,s&536870912&&(a.getUint32(n,i===1),n+=4),(s&65535)===1){const o=Yk(t,n);n+=8;const l=Yk(t,n);return n+=8,[o,l]}throw new Error("Unsupported geometry type")}var D_,O_;class GM extends(O_=Fe,D_=K,O_){constructor(t){super(t,"array","PgGeometry")}build(t){return new HM(t,this.config)}}M(GM,D_,"PgGeometryBuilder");var M_,R_;class HM extends(R_=je,M_=K,R_){getSQLType(){return"geometry(point)"}mapFromDriverValue(t){return qM(t)}mapToDriverValue(t){return`point(${t[0]} ${t[1]})`}}M(HM,M_,"PgGeometry");var L_,F_;class zM extends(F_=Fe,L_=K,F_){constructor(t){super(t,"json","PgGeometryObject")}build(t){return new WM(t,this.config)}}M(zM,L_,"PgGeometryObjectBuilder");var B_,$_;class WM extends($_=je,B_=K,$_){getSQLType(){return"geometry(point)"}mapFromDriverValue(t){const n=qM(t);return{x:n[0],y:n[1]}}mapToDriverValue(t){return`point(${t.x} ${t.y})`}}M(WM,B_,"PgGeometryObject");function U9(e,t){const{name:n,config:i}=Jt(e,t);return!(i!=null&&i.mode)||i.mode==="tuple"?new GM(n):new zM(n)}var U_,q_;class VM extends(q_=Fe,U_=K,q_){constructor(t,n){super(t,"number","PgReal"),this.config.length=n}build(t){return new KM(t,this.config)}}M(VM,U_,"PgRealBuilder");var G_,H_;class KM extends(H_=je,G_=K,H_){constructor(n,i){super(n,i);M(this,"mapFromDriverValue",n=>typeof n=="string"?Number.parseFloat(n):n)}getSQLType(){return"real"}}M(KM,G_,"PgReal");function q9(e){return new VM(e??"")}var z_,W_;class YM extends(W_=Fe,z_=K,W_){constructor(t){super(t,"number","PgSerial"),this.config.hasDefault=!0,this.config.notNull=!0}build(t){return new QM(t,this.config)}}M(YM,z_,"PgSerialBuilder");var V_,K_;
486class QM extends(K_=je,V_=K,K_){getSQLType(){return"serial"}}M(QM,V_,"PgSerial");function Xn(e){return new YM(e??"")}var Y_,Q_;class XM extends(Q_=sp,Y_=K,Q_){constructor(t){super(t,"number","PgSmallInt")}build(t){return new ZM(t,this.config)}}M(XM,Y_,"PgSmallIntBuilder");var X_,Z_;class ZM extends(Z_=je,X_=K,Z_){constructor(){super(...arguments);M(this,"mapFromDriverValue",n=>typeof n=="string"?Number(n):n)}getSQLType(){return"smallint"}}M(ZM,X_,"PgSmallInt");function G9(e){return new XM(e??"")}var J_,e2;class JM extends(e2=Fe,J_=K,e2){constructor(t){super(t,"number","PgSmallSerial"),this.config.hasDefault=!0,this.config.notNull=!0}build(t){return new e5(t,this.config)}}M(JM,J_,"PgSmallSerialBuilder");var t2,n2;class e5 extends(n2=je,t2=K,n2){getSQLType(){return"smallserial"}}M(e5,t2,"PgSmallSerial");function H9(e){return new JM(e??"")}var r2,i2;class t5 extends(i2=Fe,r2=K,i2){constructor(t,n){super(t,"string","PgText"),this.config.enumValues=n.enum}build(t){return new n5(t,this.config)}}M(t5,r2,"PgTextBuilder");var a2,s2;class n5 extends(s2=je,a2=K,s2){constructor(){super(...arguments);M(this,"enumValues",this.config.enumValues)}getSQLType(){return"text"}}M(n5,a2,"PgText");function q(e,t={}){const{name:n,config:i}=Jt(e,t);return new t5(n,i)}var o2,l2;class r5 extends(l2=oc,o2=K,l2){constructor(t,n,i){super(t,"string","PgTime"),this.withTimezone=n,this.precision=i,this.config.withTimezone=n,this.config.precision=i}build(t){return new i5(t,this.config)}}M(r5,o2,"PgTimeBuilder");var c2,d2;class i5 extends(d2=je,c2=K,d2){constructor(n,i){super(n,i);M(this,"withTimezone");M(this,"precision");this.withTimezone=i.withTimezone,this.precision=i.precision}getSQLType(){return`time${this.precision===void 0?"":`(${this.precision})`}${this.withTimezone?" with time zone":""}`}}M(i5,c2,"PgTime");function z9(e,t={}){const{name:n,config:i}=Jt(e,t);return new r5(n,i.withTimezone??!1,i.precision)}var u2,p2;class a5 extends(p2=oc,u2=K,p2){constructor(t,n,i){super(t,"date","PgTimestamp"),this.config.withTimezone=n,this.config.precision=i}build(t){return new s5(t,this.config)}}M(a5,u2,"PgTimestampBuilder");var m2,h2;class s5 extends(h2=je,m2=K,h2){constructor(n,i){super(n,i);M(this,"withTimezone");M(this,"precision");M(this,"mapFromDriverValue",n=>new Date(this.withTimezone?n:n+"+0000"));M(this,"mapToDriverValue",n=>n.toISOString());this.withTimezone=i.withTimezone,this.precision=i.precision}getSQLType(){return`timestamp${this.precision===void 0?"":` (${this.precision})`}${this.withTimezone?" with time zone":""}`}}M(s5,m2,"PgTimestamp");var f2,g2;class o5 extends(g2=oc,f2=K,g2){constructor(t,n,i){super(t,"string","PgTimestampString"),this.config.withTimezone=n,this.config.precision=i}build(t){return new l5(t,this.config)}}M(o5,f2,"PgTimestampStringBuilder");var x2,y2;class l5 extends(y2=je,x2=K,y2){constructor(n,i){super(n,i);M(this,"withTimezone");M(this,"precision");this.withTimezone=i.withTimezone,this.precision=i.precision}getSQLType(){return`timestamp${this.precision===void 0?"":`(${this.precision})`}${this.withTimezone?" with time zone":""}`}}M(l5,x2,"PgTimestampString");function Tt(e,t={}){const{name:n,config:i}=Jt(e,t);return(i==null?void 0:i.mode)==="string"?new o5(n,i.withTimezone??!1,i.precision):new a5(n,(i==null?void 0:i.withTimezone)??!1,i==null?void 0:i.precision)}var v2,b2;class c5 extends(b2=Fe,v2=K,b2){constructor(t){super(t,"string","PgUUID")}defaultRandom(){return this.default(Ah`gen_random_uuid()`)}build(t){return new d5(t,this.config)}}M(c5,v2,"PgUUIDBuilder");var w2,A2;class d5 extends(A2=je,w2=K,A2){getSQLType(){return"uuid"}}M(d5,w2,"PgUUID");function W9(e){return new c5(e??"")}var j2,k2;class u5 extends(k2=Fe,j2=K,k2){constructor(t,n){super(t,"string","PgVarchar"),this.config.length=n.length,this.config.enumValues=n.enum}build(t){return new p5(t,this.config)}}M(u5,j2,"PgVarcharBuilder");var N2,I2;class p5 extends(I2=je,N2=K,I2){constructor(){super(...arguments);M(this,"length",this.config.length);M(this,"enumValues",this.config.enumValues)}getSQLType(){return this.length===void 0?"varchar":`varchar(${this.length})`}}M(p5,N2,"PgVarchar");function V9(e,t={}){const{name:n,config:i}=Jt(e,t);return new u5(n,i)}var S2,C2;class m5 extends(C2=Fe,S2=K,C2){constructor(t,n){super(t,"string","PgBinaryVector"),this.config.dimensions=n.dimensions}build(t){return new h5(t,this.config)}}M(m5,S2,"PgBinaryVectorBuilder");var E2,_2;class h5 extends(_2=je,E2=K,_2){constructor(){super(...arguments);M(this,"dimensions",this.config.dimensions)}getSQLType(){return`bit(${this.dimensions})`}}
486M(h5,E2,"PgBinaryVector");function K9(e,t){const{name:n,config:i}=Jt(e,t);return new m5(n,i)}var P2,T2;class f5 extends(T2=Fe,P2=K,T2){constructor(t,n){super(t,"array","PgHalfVector"),this.config.dimensions=n.dimensions}build(t){return new g5(t,this.config)}}M(f5,P2,"PgHalfVectorBuilder");var D2,O2;class g5 extends(O2=je,D2=K,O2){constructor(){super(...arguments);M(this,"dimensions",this.config.dimensions)}getSQLType(){return`halfvec(${this.dimensions})`}mapToDriverValue(n){return JSON.stringify(n)}mapFromDriverValue(n){return n.slice(1,-1).split(",").map(i=>Number.parseFloat(i))}}M(g5,D2,"PgHalfVector");function Y9(e,t){const{name:n,config:i}=Jt(e,t);return new f5(n,i)}var M2,R2;class x5 extends(R2=Fe,M2=K,R2){constructor(t,n){super(t,"string","PgSparseVector"),this.config.dimensions=n.dimensions}build(t){return new y5(t,this.config)}}M(x5,M2,"PgSparseVectorBuilder");var L2,F2;class y5 extends(F2=je,L2=K,F2){constructor(){super(...arguments);M(this,"dimensions",this.config.dimensions)}getSQLType(){return`sparsevec(${this.dimensions})`}}M(y5,L2,"PgSparseVector");function Q9(e,t){const{name:n,config:i}=Jt(e,t);return new x5(n,i)}var B2,$2;class v5 extends($2=Fe,B2=K,$2){constructor(t,n){super(t,"array","PgVector"),this.config.dimensions=n.dimensions}build(t){return new b5(t,this.config)}}M(v5,B2,"PgVectorBuilder");var U2,q2;class b5 extends(q2=je,U2=K,q2){constructor(){super(...arguments);M(this,"dimensions",this.config.dimensions)}getSQLType(){return`vector(${this.dimensions})`}mapToDriverValue(n){return JSON.stringify(n)}mapFromDriverValue(n){return n.slice(1,-1).split(",").map(i=>Number.parseFloat(i))}}M(b5,U2,"PgVector");function X9(e,t){const{name:n,config:i}=Jt(e,t);return new v5(n,i)}function Z9(){return{bigint:N9,bigserial:I9,boolean:Ys,char:S9,cidr:C9,customType:E9,date:_9,doublePrecision:P9,inet:T9,integer:be,interval:D9,json:NM,jsonb:O9,line:M9,macaddr:R9,macaddr8:L9,numeric:F9,point:B9,geometry:U9,real:q9,serial:Xn,smallint:G9,smallserial:H9,text:q,time:z9,timestamp:Tt,uuid:W9,varchar:V9,bit:K9,halfvec:Y9,sparsevec:Q9,vector:X9}}const lb=Symbol.for("drizzle:PgInlineForeignKeys"),Qk=Symbol.for("drizzle:EnableRLS");var G2,H2,z2,W2,V2;class kh extends(V2=jn,W2=K,z2=lb,H2=Qk,G2=jn.Symbol.ExtraConfigBuilder,V2){constructor(){super(...arguments);M(this,z2,[]);M(this,H2,!1);M(this,G2)}}M(kh,W2,"PgTable"),M(kh,"Symbol",Object.assign({},jn.Symbol,{InlineForeignKeys:lb,EnableRLS:Qk}));function J9(e,t,n,i,a=e){const s=new kh(e,i,a),o=typeof t=="function"?t(Z9()):t,l=Object.fromEntries(Object.entries(o).map(([u,p])=>{const m=p;m.setName(u);const f=m.build(s);return s[lb].push(...m.buildForeignKeys(f,s)),[u,f]})),c=Object.fromEntries(Object.entries(o).map(([u,p])=>{const m=p;m.setName(u);const f=m.buildExtraConfigColumn(s);return[u,f]})),d=Object.assign(s,l);return d[jn.Symbol.Columns]=l,d[jn.Symbol.ExtraConfigColumns]=c,Object.assign(d,{enableRLS:()=>(d[kh.Symbol.EnableRLS]=!0,d)})}const yr=(e,t,n)=>J9(e,t,n,void 0);var Le;(function(e){e.assertEqual=a=>{};function t(a){}e.assertIs=t;function n(a){throw new Error}e.assertNever=n,e.arrayToEnum=a=>{const s={};for(const o of a)s[o]=o;return s},e.getValidEnumValues=a=>{const s=e.objectKeys(a).filter(l=>typeof a[a[l]]!="number"),o={};for(const l of s)o[l]=a[l];return e.objectValues(o)},e.objectValues=a=>e.objectKeys(a).map(function(s){return a[s]}),e.objectKeys=typeof Object.keys=="function"?a=>Object.keys(a):a=>{const s=[];for(const o in a)Object.prototype.hasOwnProperty.call(a,o)&&s.push(o);return s},e.find=(a,s)=>{for(const o of a)if(s(o))return o},e.isInteger=typeof Number.isInteger=="function"?a=>Number.isInteger(a):a=>typeof a=="number"&&Number.isFinite(a)&&Math.floor(a)===a;function i(a,s=" | "){return a.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}e.joinValues=i,e.jsonStringifyReplacer=(a,s)=>typeof s=="bigint"?s.toString():s})(Le||(Le={}));var cb;(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(cb||(cb={}));const oe=Le.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ci=e=>{switch(typeof e){case"undefined":return oe.undefined;case"string":return oe.string;case"number":return Number.isNaN(e)?oe.nan:oe.number;case"boolean":return oe.boolean;case"function":return oe.function;case"bigint":return oe.bigint;case"symbol":return oe.symbol;case"object":return Array.isArray(e)?oe.array:e===null?oe.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?oe.promise:typeof Map<"u"&&e instanceof Map?oe.map:typeof Set<"u"&&e instanceof Set?oe.set:typeof Date<"u"&&e instanceof Date?oe.date:oe.object;default:return oe.unknown}}
vendor: 11,981 bytes, line 486
486,Z=Le.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),e7=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:");class Vn extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=i=>{this.issues=[...this.issues,i]},this.addIssues=(i=[])=>{this.issues=[...this.issues,...i]};const n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=t}format(t){const n=t||function(s){return s.message},i={_errors:[]},a=s=>{for(const o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(a);else if(o.code==="invalid_return_type")a(o.returnTypeError);else if(o.code==="invalid_arguments")a(o.argumentsError);else if(o.path.length===0)i._errors.push(n(o));else{let l=i,c=0;for(;c<o.path.length;){const d=o.path[c];c===o.path.length-1?(l[d]=l[d]||{_errors:[]},l[d]._errors.push(n(o))):l[d]=l[d]||{_errors:[]},l=l[d],c++}}};return a(this),i}static assert(t){if(!(t instanceof Vn))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Le.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=n=>n.message){const n={},i=[];for(const a of this.issues)if(a.path.length>0){const s=a.path[0];n[s]=n[s]||[],n[s].push(t(a))}else i.push(t(a));return{formErrors:i,fieldErrors:n}}get formErrors(){return this.flatten()}}Vn.create=e=>new Vn(e);const El=(e,t)=>{let n;switch(e.code){case Z.invalid_type:e.received===oe.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case Z.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,Le.jsonStringifyReplacer)}`;break;case Z.unrecognized_keys:n=`Unrecognized key(s) in object: ${Le.joinValues(e.keys,", ")}`;break;case Z.invalid_union:n="Invalid input";break;case Z.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${Le.joinValues(e.options)}`;break;case Z.invalid_enum_value:n=`Invalid enum value. Expected ${Le.joinValues(e.options)}, received '${e.received}'`;break;case Z.invalid_arguments:n="Invalid function arguments";break;case Z.invalid_return_type:n="Invalid function return type";break;case Z.invalid_date:n="Invalid date";break;case Z.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:Le.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case Z.too_small:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:n="Invalid input";break;case Z.too_big:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?n=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:n="Invalid input";break;case Z.custom:n="Invalid input";break;case Z.invalid_intersection_types:n="Intersection results could not be merged";break;case Z.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case Z.not_finite:n="Number must be finite";break;default:n=t.defaultError,Le.assertNever(e)}return{message:n}};let w5=El;function t7(e){w5=e}function Nh(){return w5}const Ih=e=>{const{data:t,path:n,errorMaps:i,issueData:a}=e,s=[...n,...a.path||[]],o={...a,path:s};if(a.message!==void 0)return{...a,path:s,message:a.message};let l="";const c=i.filter(d=>!!d).slice().reverse();for(const d of c)l=d(o,{data:t,defaultError:l}).message;return{...a,path:s,message:l}},n7=[];function ie(e,t){const n=Nh(),i=Ih({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===El?void 0:El].filter(a=>!!a)});e.common.issues.push(i)}class xn{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,n){const i=[];for(const a of n){if(a.status==="aborted")return he;a.status==="dirty"&&t.dirty(),i.push(a.value)}return{status:t.value,value:i}}static async mergeObjectAsync(t,n){const i=[];for(const a of n){const s=await a.key,o=await a.value;i.push({key:s,value:o})}return xn.mergeObjectSync(t,i)}static mergeObjectSync(t,n){const i={};for(const a of n){const{key:s,value:o}=a;if(s.status==="aborted"||o.status==="aborted")return he;s.status==="dirty"&&t.dirty(),o.status==="dirty"&&t.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||a.alwaysSet)&&(i[s.value]=o.value)}return{status:t.value,value:i}}}const he=Object.freeze({status:"aborted"}),Fo=e=>({status:"dirty",value:e}),In=e=>({status:"valid",value:e}),db=e=>e.status==="aborted",ub=e=>e.status==="dirty",Qs=e=>e.status==="valid",Vd=e=>typeof Promise<"u"&&e instanceof Promise;var ue;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t==null?void 0:t.message})(ue||(ue={}));class pi{constructor(t,n,i,a){this._cachedPath=[],this.parent=t,this.data=n,this._path=i,this._key=a}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const Xk=(e,t)=>{if(Qs(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const n=new Vn(e.common.issues);return this._error=n,this._error}}};function Ae(e){if(!e)return{};const{errorMap:t,invalid_type_error:n,required_error:i,description:a}=e;if(t&&(n||i))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:a}:{errorMap:(o,l)=>{const{message:c}=e;return o.code==="invalid_enum_value"?{message:c??l.defaultError}:typeof l.data>"u"?{message:c??i??l.defaultError}:o.code!=="invalid_type"?{message:l.defaultError}:{message:c??n??l.defaultError}},description:a}}class Ee{get description(){return this._def.description}_getType(t){return Ci(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:Ci(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new xn,ctx:{common:t.parent.common,data:t.data,parsedType:Ci(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){const n=this._parse(t);if(Vd(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(t){const n=this._parse(t);return Promise.resolve(n)}parse(t,n){const i=this.safeParse(t,n);if(i.success)return i.data;throw i.error}safeParse(t,n){const i={common:{issues:[],async:(n==null?void 0:n.async)??!1,contextualErrorMap:n==null?void 0:n.errorMap},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ci(t)},a=this._parseSync({data:t,path:i.path,parent:i});return Xk(i,a)}"~validate"(t){var i,a;const n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ci(t)};if(!this["~standard"].async)try{const s=this._parseSync({data:t,path:[],parent:n});return Qs(s)?{value:s.value}:{issues:n.common.issues}}catch(s){(a=(i=s==null?void 0:s.message)==null?void 0:i.toLowerCase())!=null&&a.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:n}).then(s=>Qs(s)?{value:s.value}:{issues:n.common.issues})}async parseAsync(t,n){const i=await this.safeParseAsync(t,n);if(i.success)return i.data;throw i.error}async safeParseAsync(t,n){const i={common:{issues:[],contextualErrorMap:n==null?void 0:n.errorMap,async:!0},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:Ci(t)},a=this._parse({data:t,path:i.path,parent:i}),s=await(Vd(a)?a:Promise.resolve(a));return Xk(i,s)}refine(t,n){const i=a=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(a):n;return this._refinement((a,s)=>{const o=t(a),l=()=>s.addIssue({code:Z.custom,...i(a)});return typeof Promise<"u"&&o instanceof Promise?o.then(c=>c?!0:(l(),!1)):o?!0:(l(),!1)})}refinement(t,n){return this._refinement((i,a)=>t(i)?!0:(a.addIssue(typeof n=="function"?n(i,a):n),!1))}_refinement(t){return new zr({schema:this,typeName:ge.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return ci.create(this,this._def)}nullable(){return Ka.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Br.create(this)}promise(){return Pl.create(this,this._def)}or(t){return Xd.create([this,t],this._def)}and(t){return Zd.create(this,t,this._def)}transform(t){return new zr({...Ae(this._def),schema:this,typeName:ge.ZodEffects,effect:{type:"transform",transform:t}})}default(t){const n=typeof t=="function"?t:()=>t;return new ru({...Ae(this._def),innerType:this,defaultValue:n,typeName:ge.ZodDefault})}brand(){return new l1({typeName:ge.ZodBranded,type:this,...Ae(this._def)})}catch(t){const n=typeof t=="function"?t:()=>t;return new iu({...Ae(this._def),innerType:this,catchValue:n,typeName:ge.ZodCatch})}describe(t){const n=this.constructor;return new n({...this._def,description:t})}pipe(t){return op.create(this,t)}readonly(){return au.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const r7=/^c[^\s-]{8,}
vendor: 4,392 bytes, line 486
486$/i,i7=/^[0-9a-z]+$/,a7=/^[0-9A-HJKMNP-TV-Z]{26}$/i,s7=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,o7=/^[a-z0-9_-]{21}$/i,l7=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,c7=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,d7=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,u7="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Jx;const p7=/^(?:(?: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])$/,m7=/^(?:(?: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])\/(3[0-2]|[12]?[0-9])$/,h7=/^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,f7=/^(([0-9a-fA-F]{1,4}:){7,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}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,g7=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,x7=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,A5="((\\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])))",y7=new RegExp(`^${A5}$`);function j5(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);const n=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function v7(e){return new RegExp(`^${j5(e)}$`)}function k5(e){let t=`${A5}T${j5(e)}`;const n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${n.join("|")})`,new RegExp(`^${t}$`)}function b7(e,t){return!!((t==="v4"||!t)&&p7.test(e)||(t==="v6"||!t)&&h7.test(e))}function w7(e,t){if(!l7.test(e))return!1;try{const[n]=e.split(".");if(!n)return!1;const i=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),a=JSON.parse(atob(i));return!(typeof a!="object"||a===null||"typ"in a&&(a==null?void 0:a.typ)!=="JWT"||!a.alg||t&&a.alg!==t)}catch{return!1}}function A7(e,t){return!!((t==="v4"||!t)&&m7.test(e)||(t==="v6"||!t)&&f7.test(e))}class Mr extends Ee{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==oe.string){const s=this._getOrReturnCtx(t);return ie(s,{code:Z.invalid_type,expected:oe.string,received:s.parsedType}),he}const i=new xn;let a;for(const s of this._def.checks)if(s.kind==="min")t.data.length<s.value&&(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),i.dirty());else if(s.kind==="max")t.data.length>s.value&&(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),i.dirty());else if(s.kind==="length"){const o=t.data.length>s.value,l=t.data.length<s.value;(o||l)&&(a=this._getOrReturnCtx(t,a),o?ie(a,{code:Z.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}
vendor: 6,227 bytes, line 486
486):l&&ie(a,{code:Z.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),i.dirty())}else if(s.kind==="email")d7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"email",code:Z.invalid_string,message:s.message}),i.dirty());else if(s.kind==="emoji")Jx||(Jx=new RegExp(u7,"u")),Jx.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"emoji",code:Z.invalid_string,message:s.message}),i.dirty());else if(s.kind==="uuid")s7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"uuid",code:Z.invalid_string,message:s.message}),i.dirty());else if(s.kind==="nanoid")o7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"nanoid",code:Z.invalid_string,message:s.message}),i.dirty());else if(s.kind==="cuid")r7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"cuid",code:Z.invalid_string,message:s.message}),i.dirty());else if(s.kind==="cuid2")i7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"cuid2",code:Z.invalid_string,message:s.message}),i.dirty());else if(s.kind==="ulid")a7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"ulid",code:Z.invalid_string,message:s.message}),i.dirty());else if(s.kind==="url")try{new URL(t.data)}catch{a=this._getOrReturnCtx(t,a),ie(a,{validation:"url",code:Z.invalid_string,message:s.message}),i.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"regex",code:Z.invalid_string,message:s.message}),i.dirty())):s.kind==="trim"?t.data=t.data.trim():s.kind==="includes"?t.data.includes(s.value,s.position)||(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),i.dirty()):s.kind==="toLowerCase"?t.data=t.data.toLowerCase():s.kind==="toUpperCase"?t.data=t.data.toUpperCase():s.kind==="startsWith"?t.data.startsWith(s.value)||(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.invalid_string,validation:{startsWith:s.value},message:s.message}),i.dirty()):s.kind==="endsWith"?t.data.endsWith(s.value)||(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.invalid_string,validation:{endsWith:s.value},message:s.message}),i.dirty()):s.kind==="datetime"?k5(s).test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.invalid_string,validation:"datetime",message:s.message}),i.dirty()):s.kind==="date"?y7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.invalid_string,validation:"date",message:s.message}),i.dirty()):s.kind==="time"?v7(s).test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.invalid_string,validation:"time",message:s.message}),i.dirty()):s.kind==="duration"?c7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"duration",code:Z.invalid_string,message:s.message}),i.dirty()):s.kind==="ip"?b7(t.data,s.version)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"ip",code:Z.invalid_string,message:s.message}),i.dirty()):s.kind==="jwt"?w7(t.data,s.alg)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"jwt",code:Z.invalid_string,message:s.message}),i.dirty()):s.kind==="cidr"?A7(t.data,s.version)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"cidr",code:Z.invalid_string,message:s.message}),i.dirty()):s.kind==="base64"?g7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"base64",code:Z.invalid_string,message:s.message}),i.dirty()):s.kind==="base64url"?x7.test(t.data)||(a=this._getOrReturnCtx(t,a),ie(a,{validation:"base64url",code:Z.invalid_string,message:s.message}),i.dirty()):Le.assertNever(s);return{status:i.value,value:t.data}}_regex(t,n,i){return this.refinement(a=>t.test(a),{validation:n,code:Z.invalid_string,...ue.errToObj(i)})}_addCheck(t){return new Mr({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...ue.errToObj(t)})}url(t){return this._addCheck({kind:"url",...ue.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...ue.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...ue.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...ue.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...ue.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...ue.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...ue.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...ue.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...ue.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...ue.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...ue.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...ue.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof(t==null?void 0:t.precision)>"u"?null:t==null?void 0:t.precision,offset:(t==null?void 0:t.offset)??!1,local:(t==null?void 0:t.local)??!1,...ue.errToObj(t==null?void 0:t.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof(t==null?void 0:t.precision)>"u"?null:t==null?void 0:t.precision,...ue.errToObj(t==null?void 0:t.message)})}duration(t){return this._addCheck({kind:"duration",...ue.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,...ue.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n==null?void 0:n.position,...ue.errToObj(n==null?void 0:n.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,...ue.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,...ue.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,...ue.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,...ue.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,...ue.errToObj(n)})}nonempty(t){return this.min(1,ue.errToObj(t))}trim(){return new Mr({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Mr({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Mr({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}
vendor: 4,517 bytes, line 486
486get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxLength(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}}Mr.create=e=>new Mr({checks:[],typeName:ge.ZodString,coerce:(e==null?void 0:e.coerce)??!1,...Ae(e)});function j7(e,t){const n=(e.toString().split(".")[1]||"").length,i=(t.toString().split(".")[1]||"").length,a=n>i?n:i,s=Number.parseInt(e.toFixed(a).replace(".","")),o=Number.parseInt(t.toFixed(a).replace(".",""));return s%o/10**a}class za extends Ee{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==oe.number){const s=this._getOrReturnCtx(t);return ie(s,{code:Z.invalid_type,expected:oe.number,received:s.parsedType}),he}let i;const a=new xn;for(const s of this._def.checks)s.kind==="int"?Le.isInteger(t.data)||(i=this._getOrReturnCtx(t,i),ie(i,{code:Z.invalid_type,expected:"integer",received:"float",message:s.message}),a.dirty()):s.kind==="min"?(s.inclusive?t.data<s.value:t.data<=s.value)&&(i=this._getOrReturnCtx(t,i),ie(i,{code:Z.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):s.kind==="max"?(s.inclusive?t.data>s.value:t.data>=s.value)&&(i=this._getOrReturnCtx(t,i),ie(i,{code:Z.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),a.dirty()):s.kind==="multipleOf"?j7(t.data,s.value)!==0&&(i=this._getOrReturnCtx(t,i),ie(i,{code:Z.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):s.kind==="finite"?Number.isFinite(t.data)||(i=this._getOrReturnCtx(t,i),ie(i,{code:Z.not_finite,message:s.message}),a.dirty()):Le.assertNever(s);return{status:a.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,ue.toString(n))}gt(t,n){return this.setLimit("min",t,!1,ue.toString(n))}lte(t,n){return this.setLimit("max",t,!0,ue.toString(n))}lt(t,n){return this.setLimit("max",t,!1,ue.toString(n))}setLimit(t,n,i,a){return new za({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:i,message:ue.toString(a)}]})}_addCheck(t){return new za({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:ue.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:ue.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:ue.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:ue.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:ue.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:ue.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:ue.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:ue.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:ue.toString(t)})}get minValue(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&Le.isInteger(t.value))}get isFinite(){let t=null,n=null;for(const i of this._def.checks){if(i.kind==="finite"||i.kind==="int"||i.kind==="multipleOf")return!0;
vendor: 7,638 bytes, line 486
486i.kind==="min"?(n===null||i.value>n)&&(n=i.value):i.kind==="max"&&(t===null||i.value<t)&&(t=i.value)}return Number.isFinite(n)&&Number.isFinite(t)}}za.create=e=>new za({checks:[],typeName:ge.ZodNumber,coerce:(e==null?void 0:e.coerce)||!1,...Ae(e)});class Wa extends Ee{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==oe.bigint)return this._getInvalidInput(t);let i;const a=new xn;for(const s of this._def.checks)s.kind==="min"?(s.inclusive?t.data<s.value:t.data<=s.value)&&(i=this._getOrReturnCtx(t,i),ie(i,{code:Z.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):s.kind==="max"?(s.inclusive?t.data>s.value:t.data>=s.value)&&(i=this._getOrReturnCtx(t,i),ie(i,{code:Z.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),a.dirty()):s.kind==="multipleOf"?t.data%s.value!==BigInt(0)&&(i=this._getOrReturnCtx(t,i),ie(i,{code:Z.not_multiple_of,multipleOf:s.value,message:s.message}),a.dirty()):Le.assertNever(s);return{status:a.value,value:t.data}}_getInvalidInput(t){const n=this._getOrReturnCtx(t);return ie(n,{code:Z.invalid_type,expected:oe.bigint,received:n.parsedType}),he}gte(t,n){return this.setLimit("min",t,!0,ue.toString(n))}gt(t,n){return this.setLimit("min",t,!1,ue.toString(n))}lte(t,n){return this.setLimit("max",t,!0,ue.toString(n))}lt(t,n){return this.setLimit("max",t,!1,ue.toString(n))}setLimit(t,n,i,a){return new Wa({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:i,message:ue.toString(a)}]})}_addCheck(t){return new Wa({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:ue.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:ue.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:ue.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:ue.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:ue.toString(n)})}get minValue(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}}Wa.create=e=>new Wa({checks:[],typeName:ge.ZodBigInt,coerce:(e==null?void 0:e.coerce)??!1,...Ae(e)});class Kd extends Ee{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==oe.boolean){const i=this._getOrReturnCtx(t);return ie(i,{code:Z.invalid_type,expected:oe.boolean,received:i.parsedType}),he}return In(t.data)}}Kd.create=e=>new Kd({typeName:ge.ZodBoolean,coerce:(e==null?void 0:e.coerce)||!1,...Ae(e)});class Xs extends Ee{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==oe.date){const s=this._getOrReturnCtx(t);return ie(s,{code:Z.invalid_type,expected:oe.date,received:s.parsedType}),he}if(Number.isNaN(t.data.getTime())){const s=this._getOrReturnCtx(t);return ie(s,{code:Z.invalid_date}),he}const i=new xn;let a;for(const s of this._def.checks)s.kind==="min"?t.data.getTime()<s.value&&(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),i.dirty()):s.kind==="max"?t.data.getTime()>s.value&&(a=this._getOrReturnCtx(t,a),ie(a,{code:Z.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),i.dirty()):Le.assertNever(s);return{status:i.value,value:new Date(t.data.getTime())}}_addCheck(t){return new Xs({...this._def,checks:[...this._def.checks,t]})}min(t,n){return this._addCheck({kind:"min",value:t.getTime(),message:ue.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:ue.toString(n)})}get minDate(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t!=null?new Date(t):null}}Xs.create=e=>new Xs({checks:[],coerce:(e==null?void 0:e.coerce)||!1,typeName:ge.ZodDate,...Ae(e)});class Sh extends Ee{_parse(t){if(this._getType(t)!==oe.symbol){const i=this._getOrReturnCtx(t);return ie(i,{code:Z.invalid_type,expected:oe.symbol,received:i.parsedType}),he}return In(t.data)}}Sh.create=e=>new Sh({typeName:ge.ZodSymbol,...Ae(e)});class Yd extends Ee{_parse(t){if(this._getType(t)!==oe.undefined){const i=this._getOrReturnCtx(t);return ie(i,{code:Z.invalid_type,expected:oe.undefined,received:i.parsedType}),he}return In(t.data)}}Yd.create=e=>new Yd({typeName:ge.ZodUndefined,...Ae(e)});class Qd extends Ee{_parse(t){if(this._getType(t)!==oe.null){const i=this._getOrReturnCtx(t);return ie(i,{code:Z.invalid_type,expected:oe.null,received:i.parsedType}),he}return In(t.data)}}Qd.create=e=>new Qd({typeName:ge.ZodNull,...Ae(e)});class _l extends Ee{constructor(){super(...arguments),this._any=!0}_parse(t){return In(t.data)}}_l.create=e=>new _l({typeName:ge.ZodAny,...Ae(e)});class Ms extends Ee{constructor(){super(...arguments),this._unknown=!0}_parse(t){return In(t.data)}}Ms.create=e=>new Ms({typeName:ge.ZodUnknown,...Ae(e)});class Vi extends Ee{_parse(t){const n=this._getOrReturnCtx(t);return ie(n,{code:Z.invalid_type,expected:oe.never,received:n.parsedType}),he}}Vi.create=e=>new Vi({typeName:ge.ZodNever,...Ae(e)});class Ch extends Ee{_parse(t){if(this._getType(t)!==oe.undefined){const i=this._getOrReturnCtx(t);return ie(i,{code:Z.invalid_type,expected:oe.void,received:i.parsedType}),he}return In(t.data)}}Ch.create=e=>new Ch({typeName:ge.ZodVoid,...Ae(e)});class Br extends Ee{_parse(t){const{ctx:n,status:i}=this._processInputParams(t),a=this._def;if(n.parsedType!==oe.array)return ie(n,{code:Z.invalid_type,expected:oe.array,received:n.parsedType}),he;if(a.exactLength!==null){const o=n.data.length>a.exactLength.value,l=n.data.length<a.exactLength.value;(o||l)&&(ie(n,{code:o?Z.too_big:Z.too_small,minimum:l?a.exactLength.value:void 0,maximum:o?a.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:a.exactLength.message}),i.dirty())}if(a.minLength!==null&&n.data.length<a.minLength.value&&(ie(n,{code:Z.too_small,minimum:a.minLength.value,type:"array",inclusive:!0,exact:!1,message:a.minLength.message}),i.dirty()),a.maxLength!==null&&n.data.length>a.maxLength.value&&(ie(n,{code:Z.too_big,maximum:a.maxLength.value,type:"array",inclusive:!0,exact:!1,message:a.maxLength.message}),i.dirty()),n.common.async)return Promise.all([...n.data].map((o,l)=>a.type._parseAsync(new pi(n,o,n.path,l)))).then(o=>xn.mergeArray(i,o));const s=[...n.data].map((o,l)=>a.type._parseSync(new pi(n,o,n.path,l)));return xn.mergeArray(i,s)}get element(){return this._def.type}min(t,n){return new Br({...this._def,minLength:{value:t,message:ue.toString(n)}})}max(t,n){return new Br({...this._def,maxLength:{value:t,message:ue.toString(n)}})}length(t,n){return new Br({...this._def,exactLength:{value:t,message:ue.toString(n)}})}nonempty(t){return this.min(1,t)}}Br.create=(e,t)=>new Br({type:e,minLength:null,maxLength:null,exactLength:null,typeName:ge.ZodArray,...Ae(t)});function jo(e){if(e instanceof bt){const t={};for(const n in e.shape){const i=e.shape[n];t[n]=ci.create(jo(i))}return new bt({...e._def,shape:()=>t})}else return e instanceof Br?new Br({...e._def,type:jo(e.element)}):e instanceof ci?ci.create(jo(e.unwrap())):e instanceof Ka?Ka.create(jo(e.unwrap())):e instanceof mi?mi.create(e.items.map(t=>jo(t))):e}
vendor: 4,440 bytes, line 486
486class bt extends Ee{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const t=this._def.shape(),n=Le.objectKeys(t);return this._cached={shape:t,keys:n},this._cached}_parse(t){if(this._getType(t)!==oe.object){const d=this._getOrReturnCtx(t);return ie(d,{code:Z.invalid_type,expected:oe.object,received:d.parsedType}),he}const{status:i,ctx:a}=this._processInputParams(t),{shape:s,keys:o}=this._getCached(),l=[];if(!(this._def.catchall instanceof Vi&&this._def.unknownKeys==="strip"))for(const d in a.data)o.includes(d)||l.push(d);const c=[];for(const d of o){const u=s[d],p=a.data[d];c.push({key:{status:"valid",value:d},value:u._parse(new pi(a,p,a.path,d)),alwaysSet:d in a.data})}if(this._def.catchall instanceof Vi){const d=this._def.unknownKeys;if(d==="passthrough")for(const u of l)c.push({key:{status:"valid",value:u},value:{status:"valid",value:a.data[u]}});else if(d==="strict")l.length>0&&(ie(a,{code:Z.unrecognized_keys,keys:l}),i.dirty());else if(d!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const d=this._def.catchall;for(const u of l){const p=a.data[u];c.push({key:{status:"valid",value:u},value:d._parse(new pi(a,p,a.path,u)),alwaysSet:u in a.data})}}return a.common.async?Promise.resolve().then(async()=>{const d=[];for(const u of c){const p=await u.key,m=await u.value;d.push({key:p,value:m,alwaysSet:u.alwaysSet})}return d}).then(d=>xn.mergeObjectSync(i,d)):xn.mergeObjectSync(i,c)}get shape(){return this._def.shape()}strict(t){return ue.errToObj,new bt({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(n,i)=>{var s,o;const a=((o=(s=this._def).errorMap)==null?void 0:o.call(s,n,i).message)??i.defaultError;return n.code==="unrecognized_keys"?{message:ue.errToObj(t).message??a}:{message:a}}}:{}})}strip(){return new bt({...this._def,unknownKeys:"strip"})}passthrough(){return new bt({...this._def,unknownKeys:"passthrough"})}extend(t){return new bt({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new bt({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:ge.ZodObject})}setKey(t,n){return this.augment({[t]:n})}catchall(t){return new bt({...this._def,catchall:t})}pick(t){const n={};for(const i of Le.objectKeys(t))t[i]&&this.shape[i]&&(n[i]=this.shape[i]);return new bt({...this._def,shape:()=>n})}omit(t){const n={};for(const i of Le.objectKeys(this.shape))t[i]||(n[i]=this.shape[i]);return new bt({...this._def,shape:()=>n})}deepPartial(){return jo(this)}partial(t){const n={};for(const i of Le.objectKeys(this.shape)){const a=this.shape[i];t&&!t[i]?n[i]=a:n[i]=a.optional()}return new bt({...this._def,shape:()=>n})}required(t){const n={};for(const i of Le.objectKeys(this.shape))if(t&&!t[i])n[i]=this.shape[i];else{let s=this.shape[i];for(;s instanceof ci;)s=s._def.innerType;n[i]=s}return new bt({...this._def,shape:()=>n})}keyof(){return N5(Le.objectKeys(this.shape))}}bt.create=(e,t)=>new bt({shape:()=>e,unknownKeys:"strip",catchall:Vi.create(),typeName:ge.ZodObject,...Ae(t)});bt.strictCreate=(e,t)=>new bt({shape:()=>e,unknownKeys:"strict",catchall:Vi.create(),typeName:ge.ZodObject,...Ae(t)});bt.lazycreate=(e,t)=>new bt({shape:e,unknownKeys:"strip",catchall:Vi.create(),typeName:ge.ZodObject,...Ae(t)});class Xd extends Ee{_parse(t){const{ctx:n}=this._processInputParams(t),i=this._def.options;function a(s){for(const l of s)if(l.result.status==="valid")return l.result;for(const l of s)if(l.result.status==="dirty")return n.common.issues.push(...l.ctx.common.issues),l.result;const o=s.map(l=>new Vn(l.ctx.common.issues));return ie(n,{code:Z.invalid_union,unionErrors:o}),he}if(n.common.async)return Promise.all(i.map(async s=>{const o={...n,common:{...n.common,issues:[]},parent:null};return{result:await s._parseAsync({data:n.data,path:n.path,parent:o}),ctx:o}})).then(a);{let s;const o=[];for(const c of i){const d={...n,common:{...n.common,issues:[]},parent:null},u=c._parseSync({data:n.data,path:n.path,parent:d});if(u.status==="valid")return u;u.status==="dirty"&&!s&&(s={result:u,ctx:d}),d.common.issues.length&&o.push(d.common.issues)}if(s)return n.common.issues.push(...s.ctx.common.issues),s.result;const l=o.map(c=>new Vn(c));return ie(n,{code:Z.invalid_union,unionErrors:l}),he}}get options(){return this._def.options}}Xd.create=(e,t)=>
vendor: 8,309 bytes, line 486
486new Xd({options:e,typeName:ge.ZodUnion,...Ae(t)});const Ni=e=>e instanceof eu?Ni(e.schema):e instanceof zr?Ni(e.innerType()):e instanceof tu?[e.value]:e instanceof Va?e.options:e instanceof nu?Le.objectValues(e.enum):e instanceof ru?Ni(e._def.innerType):e instanceof Yd?[void 0]:e instanceof Qd?[null]:e instanceof ci?[void 0,...Ni(e.unwrap())]:e instanceof Ka?[null,...Ni(e.unwrap())]:e instanceof l1||e instanceof au?Ni(e.unwrap()):e instanceof iu?Ni(e._def.innerType):[];class lg extends Ee{_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==oe.object)return ie(n,{code:Z.invalid_type,expected:oe.object,received:n.parsedType}),he;const i=this.discriminator,a=n.data[i],s=this.optionsMap.get(a);return s?n.common.async?s._parseAsync({data:n.data,path:n.path,parent:n}):s._parseSync({data:n.data,path:n.path,parent:n}):(ie(n,{code:Z.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[i]}),he)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,i){const a=new Map;for(const s of n){const o=Ni(s.shape[t]);if(!o.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(const l of o){if(a.has(l))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(l)}`);a.set(l,s)}}return new lg({typeName:ge.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:a,...Ae(i)})}}function pb(e,t){const n=Ci(e),i=Ci(t);if(e===t)return{valid:!0,data:e};if(n===oe.object&&i===oe.object){const a=Le.objectKeys(t),s=Le.objectKeys(e).filter(l=>a.indexOf(l)!==-1),o={...e,...t};for(const l of s){const c=pb(e[l],t[l]);if(!c.valid)return{valid:!1};o[l]=c.data}return{valid:!0,data:o}}else if(n===oe.array&&i===oe.array){if(e.length!==t.length)return{valid:!1};const a=[];for(let s=0;s<e.length;s++){const o=e[s],l=t[s],c=pb(o,l);if(!c.valid)return{valid:!1};a.push(c.data)}return{valid:!0,data:a}}else return n===oe.date&&i===oe.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}class Zd extends Ee{_parse(t){const{status:n,ctx:i}=this._processInputParams(t),a=(s,o)=>{if(db(s)||db(o))return he;const l=pb(s.value,o.value);return l.valid?((ub(s)||ub(o))&&n.dirty(),{status:n.value,value:l.data}):(ie(i,{code:Z.invalid_intersection_types}),he)};return i.common.async?Promise.all([this._def.left._parseAsync({data:i.data,path:i.path,parent:i}),this._def.right._parseAsync({data:i.data,path:i.path,parent:i})]).then(([s,o])=>a(s,o)):a(this._def.left._parseSync({data:i.data,path:i.path,parent:i}),this._def.right._parseSync({data:i.data,path:i.path,parent:i}))}}Zd.create=(e,t,n)=>new Zd({left:e,right:t,typeName:ge.ZodIntersection,...Ae(n)});class mi extends Ee{_parse(t){const{status:n,ctx:i}=this._processInputParams(t);if(i.parsedType!==oe.array)return ie(i,{code:Z.invalid_type,expected:oe.array,received:i.parsedType}),he;if(i.data.length<this._def.items.length)return ie(i,{code:Z.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),he;!this._def.rest&&i.data.length>this._def.items.length&&(ie(i,{code:Z.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());const s=[...i.data].map((o,l)=>{const c=this._def.items[l]||this._def.rest;return c?c._parse(new pi(i,o,i.path,l)):null}).filter(o=>!!o);return i.common.async?Promise.all(s).then(o=>xn.mergeArray(n,o)):xn.mergeArray(n,s)}get items(){return this._def.items}rest(t){return new mi({...this._def,rest:t})}}mi.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new mi({items:e,typeName:ge.ZodTuple,rest:null,...Ae(t)})};class Jd extends Ee{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:n,ctx:i}=this._processInputParams(t);if(i.parsedType!==oe.object)return ie(i,{code:Z.invalid_type,expected:oe.object,received:i.parsedType}),he;const a=[],s=this._def.keyType,o=this._def.valueType;for(const l in i.data)a.push({key:s._parse(new pi(i,l,i.path,l)),value:o._parse(new pi(i,i.data[l],i.path,l)),alwaysSet:l in i.data});return i.common.async?xn.mergeObjectAsync(n,a):xn.mergeObjectSync(n,a)}get element(){return this._def.valueType}static create(t,n,i){return n instanceof Ee?new Jd({keyType:t,valueType:n,typeName:ge.ZodRecord,...Ae(i)}):new Jd({keyType:Mr.create(),valueType:t,typeName:ge.ZodRecord,...Ae(n)})}}class Eh extends Ee{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:n,ctx:i}=this._processInputParams(t);if(i.parsedType!==oe.map)return ie(i,{code:Z.invalid_type,expected:oe.map,received:i.parsedType}),he;const a=this._def.keyType,s=this._def.valueType,o=[...i.data.entries()].map(([l,c],d)=>({key:a._parse(new pi(i,l,i.path,[d,"key"])),value:s._parse(new pi(i,c,i.path,[d,"value"]))}));if(i.common.async){const l=new Map;return Promise.resolve().then(async()=>{for(const c of o){const d=await c.key,u=await c.value;if(d.status==="aborted"||u.status==="aborted")return he;(d.status==="dirty"||u.status==="dirty")&&n.dirty(),l.set(d.value,u.value)}return{status:n.value,value:l}})}else{const l=new Map;for(const c of o){const d=c.key,u=c.value;if(d.status==="aborted"||u.status==="aborted")return he;(d.status==="dirty"||u.status==="dirty")&&n.dirty(),l.set(d.value,u.value)}return{status:n.value,value:l}}}}Eh.create=(e,t,n)=>new Eh({valueType:t,keyType:e,typeName:ge.ZodMap,...Ae(n)});class Zs extends Ee{_parse(t){const{status:n,ctx:i}=this._processInputParams(t);if(i.parsedType!==oe.set)return ie(i,{code:Z.invalid_type,expected:oe.set,received:i.parsedType}),he;const a=this._def;a.minSize!==null&&i.data.size<a.minSize.value&&(ie(i,{code:Z.too_small,minimum:a.minSize.value,type:"set",inclusive:!0,exact:!1,message:a.minSize.message}),n.dirty()),a.maxSize!==null&&i.data.size>a.maxSize.value&&(ie(i,{code:Z.too_big,maximum:a.maxSize.value,type:"set",inclusive:!0,exact:!1,message:a.maxSize.message}),n.dirty());const s=this._def.valueType;function o(c){const d=new Set;for(const u of c){if(u.status==="aborted")return he;u.status==="dirty"&&n.dirty(),d.add(u.value)}return{status:n.value,value:d}}const l=[...i.data.values()].map((c,d)=>s._parse(new pi(i,c,i.path,d)));return i.common.async?Promise.all(l).then(c=>o(c)):o(l)}min(t,n){return new Zs({...this._def,minSize:{value:t,message:ue.toString(n)}})}max(t,n){return new Zs({...this._def,maxSize:{value:t,message:ue.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}}Zs.create=(e,t)=>new Zs({valueType:e,minSize:null,maxSize:null,typeName:ge.ZodSet,...Ae(t)});class tl extends Ee{constructor(){super(...arguments),this.validate=this.implement}_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==oe.function)return ie(n,{code:Z.invalid_type,expected:oe.function,received:n.parsedType}),he;function i(l,c){return Ih({data:l,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Nh(),El].filter(d=>!!d),issueData:{code:Z.invalid_arguments,argumentsError:c}})}function a(l,c){return Ih({data:l,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Nh(),El].filter(d=>!!d),issueData:{code:Z.invalid_return_type,returnTypeError:c}})}const s={errorMap:n.common.contextualErrorMap},o=n.data;if(this._def.returns instanceof Pl){const l=this;return In(async function(...c){const d=new Vn([]),u=await l._def.args.parseAsync(c,s).catch(f=>{throw d.addIssue(i(c,f)),d}),p=await Reflect.apply(o,this,u);return await l._def.returns._def.type.parseAsync(p,s).catch(f=>{throw d.addIssue(a(p,f)),d})})}else{const l=this;return In(function(...c){const d=l._def.args.safeParse(c,s);if(!d.success)throw new Vn([i(c,d.error)]);const u=Reflect.apply(o,this,d.data),p=l._def.returns.safeParse(u,s);if(!p.success)throw new Vn([a(u,p.error)]);return p.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new tl({...this._def,args:mi.create(t).rest(Ms.create())})}returns(t){return new tl({...this._def,returns:t})}implement(t){return this.parse(t)}strictImplement(t){return this.parse(t)}static create(t,n,i){return new tl({args:t||mi.create([]).rest(Ms.create()),returns:n||Ms.create(),typeName:ge.ZodFunction,...Ae(i)})}}
vendor: 4,573 bytes, line 486
486class eu extends Ee{get schema(){return this._def.getter()}_parse(t){const{ctx:n}=this._processInputParams(t);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}}eu.create=(e,t)=>new eu({getter:e,typeName:ge.ZodLazy,...Ae(t)});class tu extends Ee{_parse(t){if(t.data!==this._def.value){const n=this._getOrReturnCtx(t);return ie(n,{received:n.data,code:Z.invalid_literal,expected:this._def.value}),he}return{status:"valid",value:t.data}}get value(){return this._def.value}}tu.create=(e,t)=>new tu({value:e,typeName:ge.ZodLiteral,...Ae(t)});function N5(e,t){return new Va({values:e,typeName:ge.ZodEnum,...Ae(t)})}class Va extends Ee{_parse(t){if(typeof t.data!="string"){const n=this._getOrReturnCtx(t),i=this._def.values;return ie(n,{expected:Le.joinValues(i),received:n.parsedType,code:Z.invalid_type}),he}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){const n=this._getOrReturnCtx(t),i=this._def.values;return ie(n,{received:n.data,code:Z.invalid_enum_value,options:i}),he}return In(t.data)}get options(){return this._def.values}get enum(){const t={};for(const n of this._def.values)t[n]=n;return t}get Values(){const t={};for(const n of this._def.values)t[n]=n;return t}get Enum(){const t={};for(const n of this._def.values)t[n]=n;return t}extract(t,n=this._def){return Va.create(t,{...this._def,...n})}exclude(t,n=this._def){return Va.create(this.options.filter(i=>!t.includes(i)),{...this._def,...n})}}Va.create=N5;class nu extends Ee{_parse(t){const n=Le.getValidEnumValues(this._def.values),i=this._getOrReturnCtx(t);if(i.parsedType!==oe.string&&i.parsedType!==oe.number){const a=Le.objectValues(n);return ie(i,{expected:Le.joinValues(a),received:i.parsedType,code:Z.invalid_type}),he}if(this._cache||(this._cache=new Set(Le.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){const a=Le.objectValues(n);return ie(i,{received:i.data,code:Z.invalid_enum_value,options:a}),he}return In(t.data)}get enum(){return this._def.values}}nu.create=(e,t)=>new nu({values:e,typeName:ge.ZodNativeEnum,...Ae(t)});class Pl extends Ee{unwrap(){return this._def.type}_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==oe.promise&&n.common.async===!1)return ie(n,{code:Z.invalid_type,expected:oe.promise,received:n.parsedType}),he;const i=n.parsedType===oe.promise?n.data:Promise.resolve(n.data);return In(i.then(a=>this._def.type.parseAsync(a,{path:n.path,errorMap:n.common.contextualErrorMap})))}}Pl.create=(e,t)=>new Pl({type:e,typeName:ge.ZodPromise,...Ae(t)});class zr extends Ee{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ge.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){const{status:n,ctx:i}=this._processInputParams(t),a=this._def.effect||null,s={addIssue:o=>{ie(i,o),o.fatal?n.abort():n.dirty()},get path(){return i.path}};if(s.addIssue=s.addIssue.bind(s),a.type==="preprocess"){const o=a.transform(i.data,s);if(i.common.async)return Promise.resolve(o).then(async l=>{if(n.value==="aborted")return he;const c=await this._def.schema._parseAsync({data:l,path:i.path,parent:i});return c.status==="aborted"?he:c.status==="dirty"||n.value==="dirty"?Fo(c.value):c});{if(n.value==="aborted")return he;const l=this._def.schema._parseSync({data:o,path:i.path,parent:i});return l.status==="aborted"?he:l.status==="dirty"||n.value==="dirty"?Fo(l.value):l}}if(a.type==="refinement"){const o=l=>{const c=a.refinement(l,s);if(i.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return l};if(i.common.async===!1){const l=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});return l.status==="aborted"?he:(l.status==="dirty"&&n.dirty(),o(l.value),{status:n.value,value:l.value})}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(l=>l.status==="aborted"?he:(l.status==="dirty"&&n.dirty(),o(l.value).then(()=>({status:n.value,value:l.value}))))}if(a.type==="transform")if(i.common.async===!1){const o=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});if(!Qs(o))return he;const l=a.transform(o.value,s);if(l instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:l}}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(o=>Qs(o)?Promise.resolve(a.transform(o.value,s)).then(l=>({status:n.value,value:l})):he);Le.assertNever(a)}}
vendor: 4,699 bytes, line 486
486zr.create=(e,t,n)=>new zr({schema:e,typeName:ge.ZodEffects,effect:t,...Ae(n)});zr.createWithPreprocess=(e,t,n)=>new zr({schema:t,effect:{type:"preprocess",transform:e},typeName:ge.ZodEffects,...Ae(n)});class ci extends Ee{_parse(t){return this._getType(t)===oe.undefined?In(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}ci.create=(e,t)=>new ci({innerType:e,typeName:ge.ZodOptional,...Ae(t)});class Ka extends Ee{_parse(t){return this._getType(t)===oe.null?In(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}Ka.create=(e,t)=>new Ka({innerType:e,typeName:ge.ZodNullable,...Ae(t)});class ru extends Ee{_parse(t){const{ctx:n}=this._processInputParams(t);let i=n.data;return n.parsedType===oe.undefined&&(i=this._def.defaultValue()),this._def.innerType._parse({data:i,path:n.path,parent:n})}removeDefault(){return this._def.innerType}}ru.create=(e,t)=>new ru({innerType:e,typeName:ge.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...Ae(t)});class iu extends Ee{_parse(t){const{ctx:n}=this._processInputParams(t),i={...n,common:{...n.common,issues:[]}},a=this._def.innerType._parse({data:i.data,path:i.path,parent:{...i}});return Vd(a)?a.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Vn(i.common.issues)},input:i.data})})):{status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new Vn(i.common.issues)},input:i.data})}}removeCatch(){return this._def.innerType}}iu.create=(e,t)=>new iu({innerType:e,typeName:ge.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...Ae(t)});class _h extends Ee{_parse(t){if(this._getType(t)!==oe.nan){const i=this._getOrReturnCtx(t);return ie(i,{code:Z.invalid_type,expected:oe.nan,received:i.parsedType}),he}return{status:"valid",value:t.data}}}_h.create=e=>new _h({typeName:ge.ZodNaN,...Ae(e)});const k7=Symbol("zod_brand");class l1 extends Ee{_parse(t){const{ctx:n}=this._processInputParams(t),i=n.data;return this._def.type._parse({data:i,path:n.path,parent:n})}unwrap(){return this._def.type}}class op extends Ee{_parse(t){const{status:n,ctx:i}=this._processInputParams(t);if(i.common.async)return(async()=>{const s=await this._def.in._parseAsync({data:i.data,path:i.path,parent:i});return s.status==="aborted"?he:s.status==="dirty"?(n.dirty(),Fo(s.value)):this._def.out._parseAsync({data:s.value,path:i.path,parent:i})})();{const a=this._def.in._parseSync({data:i.data,path:i.path,parent:i});return a.status==="aborted"?he:a.status==="dirty"?(n.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:i.path,parent:i})}}static create(t,n){return new op({in:t,out:n,typeName:ge.ZodPipeline})}}class au extends Ee{_parse(t){const n=this._def.innerType._parse(t),i=a=>(Qs(a)&&(a.value=Object.freeze(a.value)),a);return Vd(n)?n.then(a=>i(a)):i(n)}unwrap(){return this._def.innerType}}au.create=(e,t)=>new au({innerType:e,typeName:ge.ZodReadonly,...Ae(t)});function Zk(e,t){const n=typeof e=="function"?e(t):typeof e=="string"?{message:e}:e;return typeof n=="string"?{message:n}:n}function c1(e,t={},n){return e?_l.create().superRefine((i,a)=>{const s=e(i);if(s instanceof Promise)return s.then(o=>{if(!o){const l=Zk(t,i),c=l.fatal??n??!0;a.addIssue({code:"custom",...l,fatal:c})}});if(!s){const o=Zk(t,i),l=o.fatal??n??!0;a.addIssue({code:"custom",...o,fatal:l})}}):_l.create()}const N7={object:bt.lazycreate};var ge;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(ge||(ge={}));const I7=(e,t={message:`Input not instance of ${e.name}`})=>c1(n=>n instanceof e,t),et=Mr.create,d1=za.create,S7=_h.create,C7=Wa.create,u1=Kd.create,E7=Xs.create,_7=Sh.create,P7=Yd.create,I5=Qd.create,Ph=_l.create,T7=Ms.create,D7=Vi.create,O7=Ch.create,S5=Br.create,lp=bt.create,M7=bt.strictCreate,p1=Xd.create,R
4867=lg.create,L7=Zd.create,F7=mi.create,C5=Jd.create,B7=Eh.create,$7=Zs.create,U7=tl.create,q7=eu.create,m1=tu.create,E5=Va.create,G7=nu.create,H7=Pl.create,Jk=zr.create,z7=ci.create,W7=Ka.create,V7=zr.createWithPreprocess,K7=op.create,Y7=()=>et().optional(),Q7=()=>d1().optional(),X7=()=>u1().optional(),su={string:e=>Mr.create({...e,coerce:!0}),number:e=>za.create({...e,coerce:!0}),boolean:e=>Kd.create({...e,coerce:!0}),bigint:e=>Wa.create({...e,coerce:!0}),date:e=>Xs.create({...e,coerce:!0})},Z7=he,J7=Object.freeze(Object.defineProperty({__proto__:null,BRAND:k7,DIRTY:Fo,EMPTY_PATH:n7,INVALID:he,NEVER:Z7,OK:In,ParseStatus:xn,Schema:Ee,ZodAny:_l,ZodArray:Br,ZodBigInt:Wa,ZodBoolean:Kd,ZodBranded:l1,ZodCatch:iu,ZodDate:Xs,ZodDefault:ru,ZodDiscriminatedUnion:lg,ZodEffects:zr,ZodEnum:Va,ZodError:Vn,get ZodFirstPartyTypeKind(){return ge},ZodFunction:tl,ZodIntersection:Zd,ZodIssueCode:Z,ZodLazy:eu,ZodLiteral:tu,ZodMap:Eh,ZodNaN:_h,ZodNativeEnum:nu,ZodNever:Vi,ZodNull:Qd,ZodNullable:Ka,ZodNumber:za,ZodObject:bt,ZodOptional:ci,ZodParsedType:oe,ZodPipeline:op,ZodPromise:Pl,ZodReadonly:au,ZodRecord:Jd,ZodSchema:Ee,ZodSet:Zs,ZodString:Mr,ZodSymbol:Sh,ZodTransformer:zr,ZodTuple:mi,ZodType:Ee,ZodUndefined:Yd,ZodUnion:Xd,ZodUnknown:Ms,ZodVoid:Ch,addIssueToContext:ie,any:Ph,array:S5,bigint:C7,boolean:u1,coerce:su,custom:c1,date:E7,datetimeRegex:k5,defaultErrorMap:El,discriminatedUnion:R7,effect:Jk,enum:E5,function:U7,getErrorMap:Nh,getParsedType:Ci,instanceof:I7,intersection:L7,isAborted:db,isAsync:Vd,isDirty:ub,isValid:Qs,late:N7,lazy:q7,literal:m1,makeIssue:Ih,map:B7,nan:S7,nativeEnum:G7,never:D7,null:I5,nullable:W7,number:d1,object:lp,get objectUtil(){return cb},oboolean:X7,onumber:Q7,optional:z7,ostring:Y7,pipeline:K7,preprocess:V7,promise:H7,quotelessJson:e7,record:C5,set:$7,setErrorMap:t7,strictObject:M7,string:et,symbol:_7,transformer:Jk,tuple:F7,undefined:P7,union:p1,unknown:T7,get util(){return Le},void:O7},Symbol.toStringTag,{value:"Module"})),vt={INT8_MIN:-128,INT8_MAX:127,INT8_UNSIGNED_MAX:255,INT16_MIN:-32768,INT16_MAX:32767,INT16_UNSIGNED_MAX:65535,INT24_MIN:-8388608,INT24_MAX:8388607,INT24_UNSIGNED_MAX:16777215,INT32_MIN:-2147483648,INT32_MAX:2147483647,INT32_UNSIGNED_MAX:4294967295,INT48_MIN:-0x800000000000,INT48_MAX:0x7fffffffffff,INT48_UNSIGNED_MAX:0xffffffffffff,INT64_MIN:-9223372036854775808n,INT64_MAX:9223372036854775807n,INT64_UNSIGNED_MAX:18446744073709551615n};function _t(e,t){return t.includes(e.columnType)}function eK(e){return"enumValues"in e&&Array.isArray(e.enumValues)&&e.enumValues.length>0}const tK=p1([et(),d1(),u1(),I5()]),nK=p1([tK,C5(Ph()),S5(Ph())]),rK=c1(e=>e instanceof Buffer);function _5(e,t){const n=(t==null?void 0:t.zodInstance)??J7,i=(t==null?void 0:t.coerce)??{};let a;return eK(e)&&(a=e.enumValues.length?n.enum(e.enumValues):n.string()),a||(_t(e,["PgGeometry","PgPointTuple"])?a=n.tuple([n.number(),n.number()]):_t(e,["PgGeometryObject","PgPointObject"])?a=n.object({x:n.number(),y:n.number()}):_t(e,["PgHalfVector","PgVector"])?(a=n.array(n.number()),a=e.dimensions?a.length(e.dimensions):a):_t(e,["PgLine"])?a=n.tuple([n.number(),n.number(),n.number()]):_t(e,["PgLineABC"])?a=n.object({a:n.number(),b:n.number(),c:n.number()}):_t(e,["PgArray"])?(a=n.array(_5(e.baseColumn,n)),a=e.size?a.length(e.size):a):e.dataType==="array"?a=n.array(n.any()):e.dataType==="number"?a=iK(e,n,i):e.dataType==="bigint"?a=aK(e,n,i):e.dataType==="boolean"?a=i===!0||i.boolean?n.coerce.boolean():n.boolean():e.dataType==="date"?a=i===!0||i.date?n.coerce.date():n.date():e.dataType==="string"?a=sK(e,n,i):e.dataType==="json"?a=nK:e.dataType==="custom"?a=n.any():e.dataType==="buffer"&&(a=rK)),a||(a=n.any()),a}function iK(e,t,n){let i=e.getSQLType().includes("unsigned"),a,s,o=!1;_t(e,["MySqlTinyInt","SingleStoreTinyInt"])?(a=i?0:vt.INT8_MIN,s=i?vt.INT8_UNSIGNED_MAX:vt.INT8_MAX,o=!0):_t(e,["PgSmallInt","PgSmallSerial","MySqlSmallInt","SingleStoreSmallInt"])?(a=i?0:vt.INT16_MIN,s=i?vt.INT16_UNSIGNED_MAX:vt.INT16_MAX,o=!0):_t(e,["PgReal","MySqlFloat","MySqlMediumInt","SingleStoreMediumInt","SingleStoreFloat"])?(a=i?0:vt.INT24_MIN,s=i?vt.INT24_UNSIGNED_MAX:vt.INT24_MAX,o=_t(e,["MySqlMediumInt","SingleStoreMediumInt"])):_t(e,["PgInteger","PgSerial","MySqlInt","SingleStoreInt"])?(a=i?0:vt.INT32_MIN,s=i?vt.INT32_UNSIGNED_MAX:vt.INT32_MAX,o=!0):_t(e,["PgDoublePrecision","MySqlReal","MySqlDouble","SingleStoreReal","SingleStoreDouble","SQLiteReal"])?(a=i?0:vt.INT48_MIN,s=i?vt.INT48_UNSIGNED_MAX:vt.INT48_MAX):_t(e,["PgBigInt53","PgBigSeri
486al53","MySqlBigInt53","MySqlSerial","SingleStoreBigInt53","SingleStoreSerial","SQLiteInteger"])?(i=i||_t(e,["MySqlSerial","SingleStoreSerial"]),a=i?0:Number.MIN_SAFE_INTEGER,s=Number.MAX_SAFE_INTEGER,o=!0):_t(e,["MySqlYear","SingleStoreYear"])?(a=1901,s=2155,o=!0):(a=Number.MIN_SAFE_INTEGER,s=Number.MAX_SAFE_INTEGER);let l=n===!0||n!=null&&n.number?t.coerce.number():t.number();return l=l.min(a).max(s),o?l.int():l}function aK(e,t,n){const i=e.getSQLType().includes("unsigned"),a=i?0n:vt.INT64_MIN,s=i?vt.INT64_UNSIGNED_MAX:vt.INT64_MAX;return(n===!0||n!=null&&n.bigint?t.coerce.bigint():t.bigint()).min(a).max(s)}function sK(e,t,n){if(_t(e,["PgUUID"]))return t.string().uuid();let i,a,s=!1;_t(e,["PgVarchar","SQLiteText"])?i=e.length:_t(e,["MySqlVarChar","SingleStoreVarChar"])?i=e.length??vt.INT16_UNSIGNED_MAX:_t(e,["MySqlText","SingleStoreText"])&&(e.textType==="longtext"?i=vt.INT32_UNSIGNED_MAX:e.textType==="mediumtext"?i=vt.INT24_UNSIGNED_MAX:e.textType==="text"?i=vt.INT16_UNSIGNED_MAX:i=vt.INT8_UNSIGNED_MAX),_t(e,["PgChar","MySqlChar","SingleStoreChar"])&&(i=e.length,s=!0),_t(e,["PgBinaryVector"])&&(a=/^[01]+$/,i=e.dimensions);let o=n===!0||n!=null&&n.string?t.coerce.string():t.string();return o=a?o.regex(a):o,i&&s?o.length(i):i?o.max(i):o}function P5(e){return HO(e)?j9(e):k9(e)}function T5(e,t,n,i){const a={};for(const[s,o]of Object.entries(e)){if(!an(o,Cl)&&!an(o,Gt)&&!an(o,Gt.Aliased)&&typeof o=="object"){const p=HO(o)||A9(o)?P5(o):o;a[s]=T5(p,t[s]??{},n,i);continue}const l=t[s];if(l!==void 0&&typeof l!="function"){a[s]=l;continue}const c=an(o,Cl)?o:void 0,d=c?_5(c,i):Ph(),u=typeof l=="function"?l(d):d;n.never(c)||(a[s]=u,c&&(n.nullable(c)&&(a[s]=a[s].nullable()),n.optional(c)&&(a[s]=a[s].optional())))}return lp(a)}const oK={never:e=>{var t,n;return((t=e==null?void 0:e.generated)==null?void 0:t.type)==="always"||((n=e==null?void 0:e.generatedIdentity)==null?void 0:n.type)==="always"},optional:e=>!e.notNull||e.notNull&&e.hasDefault,nullable:e=>!e.notNull},Zi=(e,t)=>{const n=P5(e);return T5(n,{},oK)},lK=yr("users",{id:Xn("id").primaryKey(),username:q("username").notNull().unique(),password:q("password").notNull(),email:q("email").notNull(),fullName:q("full_name"),role:q("role").default("user"),language:q("language").default("en"),createdAt:Tt("created_at").defaultNow()}),cK=yr("waitlist_entries",{id:Xn("id").primaryKey(),companyName:q("company_name").notNull(),generalDescription:q("general_description").notNull(),yearEstablished:be("year_established").notNull(),founder:q("founder").notNull(),employees:be("employees").notNull(),revenue:q("revenue").notNull(),grossProfit:q("gross_profit").notNull(),ebitda:q("ebitda").notNull(),competitors:q("competitors"),platformInterest:q("platform_interest"),goals:NM("goals").notNull(),ownership:q("ownership"),contactName:q("contact_name").notNull(),contactEmail:q("contact_email").notNull(),contactPhone:q("contact_phone").notNull(),contactRole:q("contact_role").notNull(),privacyConsent:Ys("privacy_consent").notNull(),createdAt:Tt("created_at").defaultNow()}),dK=yr("contact_messages",{id:Xn("id").primaryKey(),name:q("name").notNull(),email:q("email").notNull(),company:q("company"),role:q("role").notNull(),objective:q("objective").notNull(),createdAt:Tt("created_at").defaultNow()});yr("intelligence_profile_events",{id:Xn("id").primaryKey(),vendorId:q("vendor_id").notNull(),eventType:q("event_type").notNull(),sourcePage:q("source_page").notNull(),createdAt:Tt("created_at").defaultNow()});yr("vendor_evaluation_submissions",{id:Xn("id").primaryKey(),vendorId:q("vendor_id").notNull(),vendorName:q("vendor_name").notNull().default("Hebbia"),sourcePage:q("source_page").notNull().default("/intelligence/hebbia"),name:q("name").notNull(),workEmail:q("work_email").notNull(),company:q("company").notNull(),role:q("role").notNull(),country:q("country").notNull(),organisationType:q("organisation_type").notNull(),companySize:q("company_size").notNull(),primaryWorkflow:q("primary_workflow").notNull(),optionalMessage:q("optional_message"),consent:Ys("consent").notNull(),consentTimestamp:Tt("consent_timestamp"),status:q("status").notNull().default("new"),internalNotes:q("internal_notes"),reviewedAt:Tt("reviewed_at"),reviewedBy:q("reviewed_by"),duplicateFlag:Ys("duplicate_flag").notNull().default(!1),createdAt:Tt("created_at").defaultNow(),updatedAt:Tt("updated_at").defaultNow()});yr("vendor_profile_claims",{id:Xn("id").primaryKey(),vendorId:q("vendor_id").notNull(),vendorName:q("vendor_name").notNull().default("Hebbia"),sourcePage:q("source_page").notNull().default("/intelligence/hebbia"),name:q("name").notNull(),corporateEmail:q("corporate_email").notNull(),role:q("role").notNull(),company:q("company").notNull(),country:q("country").notNull().default("Not provided"),requestedCorrection:q("requested_correction").notNull(),supportingUrl:q("supporting_url").notNull(),additionalInformation:q("additional_information"),consent:Ys("consent").notNull().default(!1),consentTimestamp:Tt("consent_timestamp"),status:q("status").notNull().default("new"),internalNotes:q("internal_notes"),reviewedAt:Tt("reviewed_at"),reviewedBy:q("reviewed_by"),duplicateFlag:Ys("duplicate_flag").notNull().default(!1),createdAt:Tt("created_at").defaultNow(),updatedAt:Tt("updated_at").defaultNow()});Zi(lK).pick({username:!0,password:!0,email:!0,fullName:!0,role:!0,language:!0});Zi(cK).omit({id:!0,createdAt:!0});Zi(dK).omit({id:!0,createdAt:!0});const h1=et().regex(/^[a-z0-9-]{1,80}$/),D5=["new","reviewed","qualified","not_qualified","contacted","closed"],O5=["new","reviewed","verification_required","approved","rejected","implemented","closed"];
486lp({vendorId:h1,eventType:E5(["profile_view","official_website_click","evidence_click","evaluate_click","evaluate_form_started","evaluate_form_completed","compare_click","claim_profile_click","claim_profile_submitted"]),sourcePage:et().startsWith("/intelligence/").max(160)});lp({vendorId:h1,vendorName:et().trim().min(1).max(120).optional(),sourcePage:et().startsWith("/intelligence/").max(160).optional(),name:et().trim().min(1).max(120),workEmail:et().trim().email().max(320),company:et().trim().min(1).max(180),role:et().trim().min(1).max(120),country:et().trim().min(1).max(120),organisationType:et().trim().min(1).max(120),companySize:et().trim().min(1).max(120),primaryWorkflow:et().trim().min(1).max(120),optionalMessage:et().trim().max(2e3).optional().nullable(),consent:m1(!0),consentTimestamp:su.date().optional(),honeypot:et().max(0).optional(),formStartedAt:su.date().optional()});lp({vendorId:h1,vendorName:et().trim().min(1).max(120).optional(),sourcePage:et().startsWith("/intelligence/").max(160).optional(),name:et().trim().min(1).max(120),corporateEmail:et().trim().email().max(320),role:et().trim().min(1).max(120),company:et().trim().min(1).max(180),country:et().trim().min(1).max(120),requestedCorrection:et().trim().min(1).max(3e3),supportingUrl:et().trim().url().max(1e3),additionalInformation:et().trim().max(3e3).optional().nullable(),consent:m1(!0),consentTimestamp:su.date().optional(),honeypot:et().max(0).optional(),formStartedAt:su.date().optional()});const uK=yr("ai_assessments",{id:Xn("id").primaryKey(),assessmentId:q("assessment_id").notNull().unique(),createdAt:Tt("created_at").defaultNow(),companyName:q("company_name"),sector:q("sector").notNull(),revenueRange:q("revenue_range").notNull(),employeeCount:q("employee_count").notNull(),opportunityScore:be("opportunity_score").notNull(),riskScore:be("risk_score").notNull(),readinessScore:be("readiness_score").notNull(),executionScore:be("execution_score").notNull(),disruptionScore:be("disruption_score").notNull(),overallScore:be("overall_score").notNull(),rating:q("rating").notNull(),leadName:q("lead_name"),leadEmail:q("lead_email"),leadCompany:q("lead_company")});Zi(uK).omit({id:!0,createdAt:!0});const pK=yr("ai_exposure_seed_records",{id:Xn("id").primaryKey(),createdAt:Tt("created_at").defaultNow(),sourceDocument:q("source_document").notNull(),sourcePage:q("source_page"),companyName:q("company_name").notNull(),country:q("country").default("Italy"),sectorRaw:q("sector_raw"),sectorNormalized:q("sector_normalized"),businessDescription:q("business_description"),revenueRaw:q("revenue_raw"),revenueRange:q("revenue_range"),employeesRaw:q("employees_raw"),employeeCountRange:q("employee_count_range"),ebitdaRaw:q("ebitda_raw"),sponsorOrInvestor:q("sponsor_or_investor"),dealType:q("deal_type"),year:be("year"),dataConfidence:q("data_confidence").default("medium"),notes:q("notes"),aiOpportunityScore:be("ai_opportunity_score"),aiRiskScore:be("ai_risk_score"),aiReadinessScore:be("ai_readiness_score"),aiExecutionScore:be("ai_execution_score"),aiDisruptionScore:be("ai_disruption_score"),overallAiDiligenceScore:be("overall_ai_diligence_score"),rating:q("rating"),scoringStatus:q("scoring_status").default("unscored"),keyAiOpportunity:q("key_ai_opportunity"),keyAiRisk:q("key_ai_risk"),aiClassification:q("ai_classification").default("Unclassified"),diligencePriority:q("diligence_priority").default("Unassigned"),validatedAt:Tt("validated_at"),validatedBy:q("validated_by"),prioritySector:q("priority_sector").default("Unassigned"),generationMethod:q("generation_method"),modelName:q("model_name"),generationError:q("generation_error"),sectorArchetype:q("sector_archetype"),sectorAiThesis:q("sector_ai_thesis"),confidenceScore:be("confidence_score"),companyUniverse:q("company_universe").default("Unknown"),countryOfOrigin:q("country_of_origin"),city:q("city"),state:q("state"),website:q("website"),sourceQuality:q("source_quality"),sourceType:q("source_type"),indexEligible:Ys("index_eligible").default(!1),indexEligibilityReason:q("index_eligibility_reason"),datasetSegment:q("dataset_segment").default("Expansion / Market Presence"),moatDefensibilityScore:be("moat_defensibility_score"),laborSubstitutionExposure:be("labor_substitution_exposure"),aiNativeThreatLevel:be("ai_native_threat_level"),dataAdvantageScore:be("data_advantage_score"),aiThesis:q("ai_thesis"),generatedAt:Tt("generated_at"),validationNotes:q("validation_notes"),archetypeClassification:q("archetype_classification"),frameworkVersion:q("framework_version").default("v1.0")});Zi(pK).omit({id:!0,createdAt:!0});const f1=yr("capital_fund_managers",{id:Xn("id").primaryKey(),name:q("name").notNull(),country:q("country"),website:q("website"),strategyTags:q("strategy_tags").array(),supportType:q("support_type"),aiRelevanceScore:be("ai_relevance_score"),peRelevanceScore:be("pe_relevance_score"),infraRelevanceScore:be("infra_relevance_score"),notes:q("notes"),tier:be("tier"),sourceDocument:q("source_document"),portfolioSizeEstimate:be("portfolio_size_estimate"),researchStatus:q("research_status").default("Not Started"),researchPriority:be("research_priority"),createdAt:Tt("created_at").defaultNow()}),M5=yr("capital_funds",{id:Xn("id").primaryKey(),fundManagerId:be("fund_manager_id").references(()=>f1.id),fundName:q("fund_name").notNull(),country:q("country"),eifProduct:q("eif_product"),targetAreas:q("target_areas").array(),sectorFocus:q("sector_focus"),commitmentAmount:be("commitment_amount"),commitmentCurrency:q("commitment_currency").default("EUR"),typeOfSupport:q("type_of_support"),sourceDocument:q("source_document").default("InvestEU Financial Intermediaries 31/12/2024"),createdAt:Tt("created_at").defaultNow()}),R5=yr("capital_portfolio_companies",{id:Xn("id").primaryKey(),fundManagerId:be("fund_manager_id").references(()=>f1.id),fundId:be("fund_id").references(()=>M5.id),companyName:q("company_name").notNull(),website:q("website"),country:q("country"),sector:q("sector"),subSector:q("sub_sector"),description:q("description"),ownershipStage:q("ownership_stage"),source:q("source"),sourceUrl:q("source_url"),portfolioStatus:q("portfolio_status").default("Active"),createdAt:Tt("created_at").defaultNow()}),mK=yr("capital_portfolio_ai_scores",{id:Xn("id").primaryKey(),portfolioCompanyId:be("portfolio_company_id").references(()=>R5.id),aiOpportunity:be("ai_opportunity"),aiRisk:be("ai_risk"),aiReadiness:be("ai_readiness"),aiExecution:be("ai_execution"),aiDisruption:be("ai_disruption"),moatDefensibility:be("moat_defensibility"),dataAdvantage:be("data_advantage"),laborSubstitution:be("labor_substitution"),aiNativeThreat:be("ai_native_threat"),peAiAttractiveness:be("pe_ai_attractiveness"),aiExposureRisk:be("ai_exposure_risk"),aiValueCreation:be("ai_value_creation"),aiClassification:q("ai_classification"),scoringMethod:q("scoring_method").default("manual"),model:q("model"),confidenceScore:be("confidence_score"),scoredAt:Tt("scored_at").defaultNow()});Zi(f1).omit({id:!0,createdAt:!0});Zi(M5).omit({id:!0,createdAt:!0});Zi(R5).omit({id:!0,createdAt:!0});Zi(mK).omit({id:!0,scoredAt:!0});const L5={search:"",vendorId:"",status:"",dateFrom:"",dateTo:"",country:"",primaryWorkflow:"",organisationType:""},or="h-10 rounded-lg border border-white/15 bg-[#111111] px-3 text-sm text-white outline-none placeholder:text-[#666666] focu
486s:border-[#D4A843]/60";function Fa(e){return e?new Intl.DateTimeFormat("en-GB",{day:"2-digit",month:"short",year:"numeric",hour:"2-digit",minute:"2-digit"}).format(new Date(e)):"—"}function cg(e){return e.replaceAll("_"," ")}function F5({status:e,duplicate:t}){return r.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[r.jsx("span",{className:"rounded-full border border-[#D4A843]/25 bg-[#D4A843]/8 px-2.5 py-1 text-[10px] font-semibold uppercase tracking-wider text-[#D4A843]",children:cg(e)}),t&&r.jsx("span",{title:"Potential duplicate",className:"text-amber-300",children:r.jsx(sG,{className:"h-4 w-4"})})]})}function hK({metrics:e}){const t=[["Evaluation total",e.summary.evaluationRequests.total],["Evaluation new",e.summary.evaluationRequests.new],["Qualified",e.summary.evaluationRequests.qualified],["Contacted",e.summary.evaluationRequests.contacted],["Evaluation closed",e.summary.evaluationRequests.closed],["Claims total",e.summary.profileClaims.total],["Claims new",e.summary.profileClaims.new],["Approved",e.summary.profileClaims.approved],["Implemented",e.summary.profileClaims.implemented]];return r.jsx("div",{className:"grid gap-3 sm:grid-cols-3 lg:grid-cols-5",children:t.map(([n,i])=>r.jsxs("div",{className:"rounded-xl border border-white/10 bg-[#111111] p-4",children:[r.jsx("p",{className:"text-2xl font-light text-white",children:i}),r.jsx("p",{className:"mt-2 text-[9px] font-semibold uppercase tracking-[0.13em] text-[#888888]",children:n})]},String(n)))})}function fK({metrics:e}){const t=[["Top vendors",e.summary.topVendors],["Top workflows",e.summary.topWorkflows],["Top countries",e.summary.topCountries]];return r.jsx("div",{className:"mt-4 grid gap-3 md:grid-cols-3",children:t.map(([n,i])=>r.jsxs("div",{className:"rounded-xl border border-white/10 bg-[#111111] p-4",children:[r.jsx("p",{className:"text-[10px] font-semibold uppercase tracking-[0.16em] text-[#D4A843]",children:n}),r.jsxs("div",{className:"mt-3 space-y-2",children:[i.length===0&&r.jsx("p",{className:"text-xs text-[#777777]",children:"No data yet"}),i.map(a=>r.jsxs("div",{className:"flex items-center justify-between gap-4 text-xs",children:[r.jsx("span",{className:"truncate text-[#BDBDBD]",children:a.label}),r.jsx("span",{className:"font-semibold text-white",children:a.count})]},a.label))]})]},n))})}function gK({metrics:e}){const t=[["Profile views",e.metrics.profileViews],["Evaluate clicks",e.metrics.evaluateClicks],["Evaluation completions",e.metrics.completedEvaluationForms],["Compare clicks",e.metrics.compareClicks],["Official website clicks",e.metrics.officialWebsiteClicks],["Claim submissions",e.metrics.claimProfileSubmissions]];return r.jsxs("div",{className:"mt-4 rounded-xl border border-[#D4A843]/20 bg-[#111111] p-5",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(z0,{className:"h-4 w-4 text-[#D4A843]"}),r.jsx("p",{className:"text-sm font-semibold text-white",children:"Hebbia pilot"})]}),r.jsx("div",{className:"mt-4 grid gap-4 sm:grid-cols-3 lg:grid-cols-6",children:t.map(([n,i])=>r.jsxs("div",{children:[r.jsx("p",{className:"text-xl font-light text-white",children:i}),r.jsx("p",{className:"mt-1 text-[9px] uppercase tracking-wider text-[#888888]",children:n})]},String(n)))})]})}function xK({mode:e,filters:t,onChange:n,evaluations:i,claims:a}){const s=j.useMemo(()=>Array.from(new Set((e==="evaluations"?i:a).map(d=>d.country))).sort(),[e,i,a]),o=j.useMemo(()=>Array.from(new Set(i.map(d=>d.primaryWorkflow))).sort(),[i]),l=j.useMemo(()=>Array.from(new Set(i.map(d=>d.organisationType))).sort(),[i]),c=e==="evaluations"?D5:O5;return r.jsxs("div",{className:"mt-6 grid gap-3 rounded-xl border border-white/10 bg-[#0D0D0D] p-4 md:grid-cols-3 lg:grid-cols-4",children:[r.jsxs("label",{className:"relative md:col-span-2",children:[r.jsx(tp,{className:"pointer-events-none absolute left-3 top-3 h-4 w-4 text-[#777777]"}),r.jsx("input",{className:`${or} w-full pl-9`,placeholder:"Search name, email or company",value:t.search,onChange:d=>n({...t,search:d.target.value})})]}),r.jsxs("select",{className:or,value:t.vendorId,onChange:d=>
486n({...t,vendorId:d.target.value}),children:[r.jsx("option",{value:"",children:"All vendors"}),r.jsx("option",{value:"hebbia",children:"Hebbia"})]}),r.jsxs("select",{className:or,value:t.status,onChange:d=>n({...t,status:d.target.value}),children:[r.jsx("option",{value:"",children:"All statuses"}),c.map(d=>r.jsx("option",{value:d,children:cg(d)},d))]}),r.jsx("input",{className:or,type:"date","aria-label":"From date",value:t.dateFrom,onChange:d=>n({...t,dateFrom:d.target.value})}),r.jsx("input",{className:or,type:"date","aria-label":"To date",value:t.dateTo,onChange:d=>n({...t,dateTo:d.target.value})}),r.jsxs("select",{className:or,value:t.country,onChange:d=>n({...t,country:d.target.value}),children:[r.jsx("option",{value:"",children:"All countries"}),s.map(d=>r.jsx("option",{value:d,children:d},d))]}),e==="evaluations"&&r.jsxs(r.Fragment,{children:[r.jsxs("select",{className:or,value:t.primaryWorkflow,onChange:d=>n({...t,primaryWorkflow:d.target.value}),children:[r.jsx("option",{value:"",children:"All workflows"}),o.map(d=>r.jsx("option",{value:d,children:d},d))]}),r.jsxs("select",{className:or,value:t.organisationType,onChange:d=>n({...t,organisationType:d.target.value}),children:[r.jsx("option",{value:"",children:"All organisation types"}),l.map(d=>r.jsx("option",{value:d,children:d},d))]})]}),r.jsx("button",{type:"button",onClick:()=>n(L5),className:"h-10 border border-white/15 px-4 text-xs font-semibold uppercase tracking-wider text-[#AFAFAF] hover:text-white",children:"Clear filters"})]})}function Re({label:e,value:t}){return r.jsxs("div",{children:[r.jsx("dt",{className:"text-[9px] font-semibold uppercase tracking-[0.15em] text-[#777777]",children:e}),r.jsx("dd",{className:"mt-1 break-words text-sm leading-relaxed text-white",children:typeof t=="boolean"?t?"Yes":"No":t?String(t):"—"})]})}function yK({record:e,onClose:t}){const n=Ln(),[i,a]=j.useState((e==null?void 0:e.status)??"new"),[s,o]=j.useState((e==null?void 0:e.internalNotes)??"");j.useEffect(()=>{e&&(a(e.status),o(e.internalNotes??""))},[e]);const l=sn({mutationFn:async()=>(await Mt("PATCH",`/api/admin/vendor-evaluations/${e==null?void 0:e.id}`,{status:i,internalNotes:s})).json(),onSuccess:()=>{n.invalidateQueries({predicate:c=>String(c.queryKey[0]).startsWith("/api/admin/vendor-evaluations")}),n.invalidateQueries({queryKey:["/api/admin/intelligence/hebbia/metrics"]}),t()}});return r.jsx(og,{open:!!e,onOpenChange:c=>!c&&t(),children:r.jsxs(rp,{className:"max-h-[90vh] max-w-3xl overflow-y-auto border-white/15 bg-[#111111] text-white",children:[r.jsx(ip,{children:r.jsx(ap,{children:"Evaluation request"})}),e&&r.jsxs(r.Fragment,{children:[r.jsxs("dl",{className:"grid gap-5 sm:grid-cols-2 lg:grid-cols-3",children:[r.jsx(Re,{label:"Created",value:Fa(e.createdAt)}),r.jsx(Re,{label:"Vendor",value:e.vendorName}),r.jsx(Re,{label:"Vendor ID",value:e.vendorId}),r.jsx(Re,{label:"Name",value:e.name}),r.jsx(Re,{label:"Work email",value:e.workEmail}),r.jsx(Re,{label:"Company",value:e.company}),r.jsx(Re,{label:"Country",value:e.country}),r.jsx(Re,{label:"Role",value:e.role}),r.jsx(Re,{label:"Country",value:e.country}),r.jsx(Re,{label:"Organisation type",value:e.organisationType}),r.jsx(Re,{label:"Company size",value:e.companySize}),r.jsx(Re,{label:"Primary workflow",value:e.primaryWorkflow}),r.jsx(Re,{label:"Consent",value:e.consent}),r.jsx(Re,{label:"Consent timestamp",value:Fa(e.consentTimestamp)}),r.jsx(Re,{label:"Source page",value:e.sourcePage}),r.jsx(Re,{label:"Potential duplicate",value:e.duplicateFlag}),r.jsx(Re,{label:"Reviewed at",value:Fa(e.reviewedAt)}),r.jsx(Re,{label:"Reviewed by",value:e.reviewedBy})]}),r.jsx("div",{className:"rounded-lg border border-white/10 bg-[#0A0A0A] p-4",children:r.jsx(Re,{label:"Message",value:e.optionalMessage})}),r.jsxs("div",{className:"grid gap-4 sm:grid-cols-[220px_1fr]",children:[r.jsxs("label",{className:"text-xs text-[#BDBDBD]",children:["Status",r.jsx("select",{className:`${or} mt-1.5 w-full`,value:i,onChange:c=>a(c.target.value),children:D5.map(c=>r.jsx("option",{value:c,children:cg(c)},c))})]}),r.jsxs("label",{className:"text-xs text-[#BDBDBD]",children:["Internal notes",r.jsx("textarea",{className:`${or} mt-1.5 min-h-24 w-full py-2`,maxLength:5e3,value:s,onChange:c=>o(c.target.value)})]})]}),l.error&&r.jsx("p",{className:"text-xs text-red-300",children:"The request could not be updated."}),r.jsxs("button",{type:"button",disabled:l.isPending,onClick:()=>l.mutate(),className:"inline-flex w-fit items-center gap-2 bg-[#D4A843] px-5 py-3 text-sm font-semibold text-black disabled:opacity-50",children:[l.isPending&&r.jsx(ic,{className:"h-4 w-4 animate-spin"})," Save review"]})]})]})})}function vK({record:e,onClose:t}){const n=Ln(),[i,a]=j.useState((e==null?void 0:e.status)??"new"),[s,o]=j.useState((e==null?void 0:e.internalNotes)??"");j.useEffect(()=>{e&&(a(e.status),o(e.internalNotes??""))},[e]);const l=sn({mutationFn:async()=>(await Mt("PATCH",`/api/admin/profile-claims/${e==null?void 0:e.id}`,{status:i,internalNotes:s})).json(),onSuccess:()=>{n.invalidateQueries({predicate:c=>String(c.queryKey[0]).startsWith("/api/admin/profile-claims")}),n.invalidateQueries({queryKey:["/api/admin/intelligence/hebbia/metrics"]}),t()}});return r.jsx(og,{open:!!e,onOpenChange:c=>!c&&t(),children:r.jsxs(rp,{className:"max-h-[90vh] max-w-3xl overflow-y-auto border-white/15 bg-[#111111] text-white",children:[r.jsx(ip,{children:r.jsx(ap,{children:"Profile claim"})}),e&&r.jsxs(r.Fragment,{children:[r.jsxs("dl",{className:"grid gap-5 sm:grid-cols-2 lg:grid-cols-3",children:[r.jsx(Re,{label:"Created",value:Fa(e.createdAt)}
486),r.jsx(Re,{label:"Vendor",value:e.vendorName}),r.jsx(Re,{label:"Vendor ID",value:e.vendorId}),r.jsx(Re,{label:"Name",value:e.name}),r.jsx(Re,{label:"Corporate email",value:e.corporateEmail}),r.jsx(Re,{label:"Role",value:e.role}),r.jsx(Re,{label:"Company",value:e.company}),r.jsx(Re,{label:"Consent",value:e.consent}),r.jsx(Re,{label:"Consent timestamp",value:Fa(e.consentTimestamp)}),r.jsx(Re,{label:"Source page",value:e.sourcePage}),r.jsx(Re,{label:"Potential duplicate",value:e.duplicateFlag}),r.jsx(Re,{label:"Reviewed at",value:Fa(e.reviewedAt)}),r.jsx(Re,{label:"Reviewed by",value:e.reviewedBy})]}),r.jsxs("div",{className:"space-y-4 rounded-lg border border-white/10 bg-[#0A0A0A] p-4",children:[r.jsx(Re,{label:"Requested correction",value:e.requestedCorrection}),r.jsx(Re,{label:"Official source URL",value:e.supportingUrl}),r.jsx(Re,{label:"Additional information",value:e.additionalInformation})]}),r.jsxs("div",{className:"grid gap-4 sm:grid-cols-[220px_1fr]",children:[r.jsxs("label",{className:"text-xs text-[#BDBDBD]",children:["Status",r.jsx("select",{className:`${or} mt-1.5 w-full`,value:i,onChange:c=>a(c.target.value),children:O5.map(c=>r.jsx("option",{value:c,children:cg(c)},c))})]}),r.jsxs("label",{className:"text-xs text-[#BDBDBD]",children:["Internal notes",r.jsx("textarea",{className:`${or} mt-1.5 min-h-24 w-full py-2`,maxLength:5e3,value:s,onChange:c=>o(c.target.value)})]})]}),l.error&&r.jsx("p",{className:"text-xs text-red-300",children:"The claim could not be updated."}),r.jsxs("button",{type:"button",disabled:l.isPending,onClick:()=>l.mutate(),className:"inline-flex w-fit items-center gap-2 bg-[#D4A843] px-5 py-3 text-sm font-semibold text-black disabled:opacity-50",children:[l.isPending&&r.jsx(ic,{className:"h-4 w-4 animate-spin"})," Save review"]})]})]})})}function bK({rows:e,onSelect:t}){return e.length===0?r.jsx("p",{className:"py-12 text-center text-sm text-[#777777]",children:"No evaluation requests match these filters."}):r.jsx("div",{className:"mt-5 overflow-x-auto rounded-xl border border-white/10",children:r.jsxs("table",{className:"min-w-[1320px] w-full text-left text-xs",children:[r.jsx("thead",{className:"bg-[#111111] text-[9px] uppercase tracking-wider text-[#777777]",children:r.jsx("tr",{children:["Created","Vendor","Name","Work Email","Company","Role","Country","Organisation Type","Company Size","Primary Workflow","Status"].map(n=>r.jsx("th",{className:"px-4 py-3",children:n},n))})}),r.jsx("tbody",{children:e.map(n=>r.jsxs("tr",{onClick:()=>t(n),className:"cursor-pointer border-t border-white/8 bg-[#0D0D0D] text-[#C8C8C8] hover:bg-[#151515]",children:[r.jsx("td",{className:"whitespace-nowrap px-4 py-3",children:Fa(n.createdAt)}),r.jsx("td",{className:"px-4 py-3 text-white",children:n.vendorName}),r.jsx("td",{className:"px-4 py-3",children:n.name}),r.jsx("td",{className:"px-4 py-3",children:n.workEmail}),r.jsx("td",{className:"px-4 py-3",children:n.company}),r.jsx("td",{className:"px-4 py-3",children:n.role}),r.jsx("td",{className:"px-4 py-3",children:n.country}),r.jsx("td",{className:"px-4 py-3",children:n.organisationType}),r.jsx("td",{className:"px-4 py-3",children:n.companySize}),r.jsx("td",{className:"px-4 py-3",children:n.primaryWorkflow}),r.jsx("td",{className:"px-4 py-3",children:r.jsx(F5,{status:n.status,duplicate:n.duplicateFlag})})]},n.id))})]})})}function wK({rows:e,onSelect:t}){return e.length===0?r.jsx("p",{className:"py-12 text-center text-sm text-[#777777]",children:"No profile claims match these filters."}):r.jsx("div",{className:"mt-5 overflow-x-auto rounded-xl border border-white/10",children:r.jsxs("table",{className:"min-w-[900px] w-full text-left text-xs",children:[r.jsx("thead",{className:"bg-[#111111] text-[9px] uppercase tracking-wider text-[#777777]",children:r.jsx("tr",{children:["Created","Vendor","Name","Corporate Email","Role","Company","Country","Status"].map(n=>r.jsx("th",{className:"px-4 py-3",children:n},n))})}),r.jsx("tbody",{children:e.map(n=>r.jsxs("tr",{onClick:()=>t(n),className:"cursor-pointer border-t border-white/8 bg-[#0D0D0D] text-[#C8C8C8] hover:bg-[#151515]",children:[r.jsx("td",{className:"whitespace-nowrap px-4 py-3",children:Fa(n.createdAt)}),r.jsx("td",{className:"px-4 py-3 text-white",children:n.vendorName}),r.jsx("td",{className:"px-4 py-3",children:n.name}),r.jsx("td",{className:"px-4 py-3",children:n.corporateEmail}),r.jsx("td",{className:"px-4 py-3",children:n.role}),r.jsx("td",{className:"px-4 py-3",children:n.company}),r.jsx("td",{className:"px-4 py-3",children:n.country}),r.jsx("td",{className:"px-4 py-3",children:r.jsx(F5,{status:n.status,duplicate:n.duplicateFlag})})]},n.id))})]})})}function eN({mode:e}){const[t,n]=j.useState(L5),[i,a]=j.useState(null),[s,o]=j.useState(null),l=new URLSearchParams,c=new URLSearchParams;for(const[v,b]of Object.entries(t))b&&(e==="evaluations"&&l.set(v,b),e==="claims"&&!["primaryWorkflow","organisationType"].includes(v)&&c.set(v,b));const d=`/api/admin/vendor-evaluations${l.size?`?${l}`:""}`,u=`/api/admin/profile-claims${c.size?`?${c}`:""}`,p=We({queryKey:["/api/admin/intelligence/hebbia/metrics"]}),m=We({queryKey:[d],enabled:e==="evaluations"}),f=We({queryKey:[u],enabled:e==="claims"}),x=We({queryKey:["/api/admin/vendor-evaluations"],enabled:e==="evaluations"}),h=We({queryKey:["/api/admin/profile-claims"],enabled:e==="claims"}),g=e==="evaluations"?m:f,y=Ga(p.error)||Ga(g.error);return r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:`${e==="evaluations"?"Vendor Evaluations":"Profile Claims"} | Admin`,description:"Internal vendor moderation queue.",canonicalUrl:e==="evaluations"?"/admin/vendor-evaluations":"/admin/profile-claims",noindex:!0}),r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] px-4 py-12 text-white sm:px-8",children:r.jsxs("div",{className:"mx-auto max-w-[1500px]",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-[0.2em] text-[#D4A843]",children:"Internal moderation"}),r.jsxs("div",{className:"mt-3 flex flex-col gap-4 lg:flex-row lg:items-end lg:justify-between",children:[r.jsxs("div",{children:[r.jsx("h1",{className:"text-3xl font-light md:text-4xl",children:"Vendor intelligence queues"}),r.jsx("p",{className:"mt-2 text-sm text-[#999999]",children:"Internal review only. Nothing is forwarded to vendors automatically."})]}),r.jsxs("div",{className:"flex gap-2",children:[r.jsxs(de,{href:"/admin/vendor-evaluations",className:`inline-flex items-center gap-2 border px-4 py-2.5 text-sm ${e==="evaluations"?"border-[#D4A843] text-[#D4A843]":"border-white/15 text-[#AFAFAF]"}`,children:[r.jsx(xD,{className:"h-4 w-4"})," Evaluation Requests"]}),r.jsxs(de,{href:"/admin/profile-claims",className:`inline-flex items-center gap-2 border px-4 py-2.5 text-sm ${e==="claims"?"border-[#D4A843] text-[#D4A843]":"border-white/15 text-[#AFAFAF]"}`,children:[r.jsx(yD,{className:"h-4 w-4"})," Profile Claims"]})]})]}),y&&r.jsx("div",{className:"mt-10 rounded-xl border border-red-400/20 bg-red-400/5 p-6 text-sm text-red-200",children:"You do not have permission to access this internal queue."}),!y&&(p.isLoading||g.isLoading)&&r.jsx("div",{className:"flex justify-center py-20",children:r.jsx(ic,{className:"h-7 w-7 animate-spin text-[#D4A843]"})}),!y&&p.data&&r.jsxs("section",{className:"mt-9",children:[r.jsx(hK,{metrics:p.data}),r.jsx(fK,{metrics:p.data}),r.jsx(gK,{metrics:p.data})]}),!y&&!g.isLoading&&r.jsxs("section",{className:"mt-10 border-t border-white/10 pt-8",children:[r.jsx("h2",{className:"text-2xl font-light",children:e==="evaluations"?"Evaluation Requests":"Profile Claims"}),r.jsx(xK,{mode:e,filters:t,onChange:n,evaluations:x.data??[],claims:h.data??[]}),e==="evaluations"&&r.jsx(bK,{rows:m.data??[],onSelect:a}),e==="claims"&&r.jsx(wK,{rows:f.data??[],onSelect:o})]})]})}),r.jsx(yK,{record:i,onClose:()=>a(null)}),r.jsx(vK,{record:s,onClose:()=>o(null)})]})}const AK="#D4A843",jK=[{title:"Europe, AI and Public Procurement: The Mispricing Problem",url:"https://thepersonalaimba.com/article/europe-ai-
486public-procurement-mispricing"},{title:"Semiconductors and Chips: Redefining Global Power",url:"https://thepersonalaimba.com/article/semiconductors-chips-redefining-global-power"},{title:"Europe's Energy Constraint and Iran: A Structural Problem",url:"https://thepersonalaimba.com/article/europe-energy-constraint-iran-structural-problem"},{title:"The Era of Augmented Decision-Making",url:"https://thepersonalaimba.com/article/the-era-of-augmented-decision-making"},{title:"AI, Crypto and Debt: the 'Triple Bubble' as an Architecture of Financial Power",url:"https://thepersonalaimba.com/article/ai-crypto-debt-triple-bubble"},{title:"Digital Sovereignty, Cyber War and Geopolitics: The New Space of Power",url:"https://thepersonalaimba.com/article/digital-sovereignty-cyber-war-geopolitics"},{title:"Geopolitics, Supply Chains and Defense: from Efficiency to Strategic Exposure",url:"https://thepersonalaimba.com/article/geopolitics-supply-chains-defense"},{title:"AGI is not AI: the Difference that Reshapes the World Order",url:"https://thepersonalaimba.com/article/agi-is-not-ai-difference-reshapes-world-order"},{title:"Humanoids and Artificial Intelligence: The Global Technology Battle in the New Geopolitical Order",url:"https://thepersonalaimba.com/article/humanoids-artificial-intelligence-global-technology-battle"},{title:"Artificial Intelligence, Great-Power Competition and National Security",url:"https://thepersonalaimba.com/article/artificial-intelligence-great-power-competition-national-security"},{title:"AI, Energy and Data Centers: The Future of Digital Power in the 21st Century",url:"https://thepersonalaimba.com/article/ai-energy-data-centers-future-digital-power"},{title:"Iran and the Eurasian Economic Union: Tehran's Strategy to Mitigate the Impact of Sanctions",url:"https://thepersonalaimba.com/article/iran-eurasian-economic-union-sanctions-strategy"},{title:"EU–Israel in the New International Order: Security, Digital Sovereignty and Great Power Competition",url:"https://thepersonalaimba.com/article/eu-israel-new-international-order"},{title:"The Transhumanist Era in the New Digital Order",url:"https://thepersonalaimba.com/article/transhumanist-era-new-digital-order"},{title:"Artificial Intelligence and Global Productivity: the New Leverage of Debt and Power",url:"https://thepersonalaimba.com/article/artificial-intelligence-global-productivity-debt-power"},{title:"Iran and Hormuz: The New Geopolitics of Oil",url:"https://thepersonalaimba.com/article/iran-hormuz-new-geopolitics-of-oil"},{title:"Imperfect Multipolarity: Why the New Global Order Is Fragmenting",url:"https://thepersonalaimba.com/article/imperfect-multipolarity-new-global-order-fragmenting"},{title:"AI Boom, Software Bust? The Return of the Physical Economy",url:"https://thepersonalaimba.com/article/ai-boom-software-bust-return-physical-economy"}],kK=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Perspectives — PrivateEquity.AI",description:"Essays on AI, private capital and geopolitics by Marco Mizzau.",canonicalUrl:"/perspectives"}),r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A]",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-20 md:py-28 max-w-4xl",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-6",style:{color:AK},children:"Perspectives"}),r.jsx("h1",{className:"text-4xl sm:text-5xl font-light text-white tracking-tight mb-5",children:"AI, private capital and geopolitics."}),r.jsx("p",{className:"text-sm text-gray-400 max-w-xl mb-3",children:"Independent essays on AI strategy, geopolitical risk, and the forces reshaping private capital markets."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"By Marco Mizzau"})]})}),r.jsx("section",{className:"elevated-section py-16 md:py-20 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl",children:[r.jsx("div",{className:"divide-y divide-white/5",children:jK.map(({title:e,url:t})=>r.jsxs("a",{href:t,target:"_blank",rel:"nofollow noopener noreferrer",className:"group flex items-center justify-between gap-6 py-5 first:pt-0",children:[r.jsx("h2",{className:"text-base sm:text-lg font-light text-white leading-snug group-hover:text-[#D4A843] transition-colors duration-200",children:e}),r.jsx(S,{className:"h-4 w-4 flex-shrink-0 text-[#CCCCCC] group-hover:text-[#D4A843] transition-colors duration-200"})]},e))}),r.jsx("div",{className:"mt-16 pt-10 border-t border-white/5",children:r.jsx("p",{className:"text-xs text-[#BBBBBB] leading-relaxed",children:"All essays are published independently. Content reflects the author's anal
486ysis and does not constitute investment or financial advice."})})]})})]}),r.jsx(ht,{})]}),Lm=[{id:"claude",title:"Claude",description:"Long-context AI assistant for reading, summarising, and reasoning across large documents, contracts, and research. Ideal for structured analysis and document-intensive workflows.",category:"AI Assistants",sub_category:"General Purpose",type:"Tool",tags:["document analysis","summarisation","research","writing","reasoning","contracts","due diligence","productivity"],use_cases:["Summarise long reports","Analyse contracts","Draft memos and emails","Stress-test investment theses","Research synthesis"],business_functions:["Research","Legal","Strategy","Operations"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://claude.ai",source_page:"/general-ai-toolkit"},{id:"chatgpt",title:"ChatGPT",description:"AI assistant by OpenAI for writing emails, drafting documents, answering questions, and automating everyday business tasks.",category:"AI Assistants",sub_category:"General Purpose",type:"Tool",tags:["writing","productivity","automation","content","marketing","customer support","emails"],use_cases:["Write emails and reports","Generate marketing content","Draft proposals","Answer business questions"],business_functions:["Marketing","Operations","HR","Strategy"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://chat.openai.com",source_page:"/general-ai-toolkit"},{id:"gemini",title:"Gemini",description:"Google's AI assistant integrated with Gmail, Docs, and Drive. Works across documents, images, and Google Workspace.",category:"AI Assistants",sub_category:"General Purpose",type:"Tool",tags:["productivity","writing","google workspace","internal productivity","emails","documents"],use_cases:["Write and edit documents","Summarise emails","Generate slides","Analyse spreadsheets"],business_functions:["Operations","Marketing","HR"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://gemini.google.com",source_page:"/general-ai-toolkit"},{id:"perplexity",title:"Perplexity",description:"AI-powered search with direct answers and cited sources. Supports rapid market research, competitor checks, and sector intelligence.",category:"AI Assistants",sub_category:"Research",type:"Tool",tags:["research","market research","search","intelligence","due diligence","competitor analysis","sector"],use_cases:["Quick market research","Competitor mapping","Sector intelligence","Find cited data fast"],business_functions:["Research","Strategy","Investment"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.perplexity.ai",source_page:"/ai-strategy-toolkit"},{id:"notebooklm",title:"NotebookLM",description:"Upload documents and ask questions about them. Google's AI reads PDFs, reports, and presentations and synthesises structured insights.",category:"Knowledge Management",sub_category:"Document Q&A",type:"Tool",tags:["document analysis","knowledge management","research","summarisation","due diligence","reports","internal productivity"],use_cases:["Analyse entire data rooms","Process CIMs and management presentations","Build research bases from uploaded docs"],business_functions:["Research","Investment","Legal"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://notebooklm.google.com",source_page:"/ai-strategy-toolkit"},{id:"manus",title:"Manus",description:"AI assistant that takes autonomous actions — browsing, researching, and completing multi-step business tasks automatically.",category:"AI Agents",sub_category:"Autonomous Agents",type:"Tool",tags:["ai agents","automation","multi-step tasks","research","workflow automation","autonomous"],use_cases:["Automate multi-step research workflows","Delegate complex business tasks to AI agents"],business_functions:["Research","Operations"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://manus.im/",source_page:"/general-ai-toolkit"},{id:"k2think",title:"K2 Think",description:"Open-source AI reasoning model with transparent training data. Privacy-conscious alternative to proprietary models.",category:"AI Assistants",sub_category:"Open Source",type:"Tool",tags:["open source","reasoning","privacy","ai assistant","alternative"],use_cases:["Private AI reasoning","Transparent AI decision support"],business_functions:["Research","Strategy"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://www.k2think.ai/k2think",source_page:"/general-ai-toolkit"},{id:"kimi",title:"Kimi",description:"AI assistant that handles very long documents — useful when you need to analyse an entire report or legal contract in one go.",category:"AI Assistants",sub_category:"Long Context",type:"Tool",tags:["document analysis","long context","contracts","research","summarisation"],use_cases:["Analyse long legal contracts","Process full annual reports","Long-context document synthesis"],business_functions:["Legal","Research","Investment"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.kimi.com/",source_page:"/general-ai-toolkit"},{id:"kimi-k2",title:"Kimi K2",description:"Moonshot AI's frontier open-weight model with 1T parameters. Strong coding, reasoning, and agentic capabilities.",category:"AI Agents",sub_category:"Open Weight Models",type:"Tool",tags:["open source","llm","coding","reasoning","agentic","frontier model"],use_cases:["Build custom AI applications","Agentic task execution","Coding assistance"],business_functions:["Engineering","Research"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://www.kimi.com/it-it/resources/kimi-k2-7-code",source_page:"/general-ai-toolkit"},{id:"hyperwrite",title:"HyperWrite",description:"AI assistant for writing and research that learns your style over time. Good for recurring content and email workflows.",category:"AI Assistants",sub_category:"Writing",type:"Tool",tags:["writing","content","email","productivity","marketing"],use_cases:["Write emails and recurring content","Research assistance","Personalised writing workflows"],business_functions:["Marketing","Operations","HR"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.hyperwriteai.
486com/personal-assistant",source_page:"/general-ai-toolkit"},{id:"zai-chat",title:"Z.ai Chat",description:"Conversational AI assistant for research, writing, and business thinking. Clean interface, useful for daily tasks.",category:"AI Assistants",sub_category:"General Purpose",type:"Tool",tags:["writing","research","productivity","ai assistant"],use_cases:["Daily business writing","Research assistance","Business analysis support"],business_functions:["Operations","Research"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://chat.z.ai/",source_page:"/general-ai-toolkit"},{id:"abacusai",title:"Abacus.AI",description:"Multi-model AI workspace with access to GPT, Claude, Gemini, DeepSeek, and Grok in a single interface. Agents and document generation included.",category:"AI Assistants",sub_category:"Multi-Model",type:"Platform",tags:["multi-model","ai assistant","automation","document generation","enterprise ai","productivity"],use_cases:["Access multiple AI models from one interface","Build custom AI applications","Automate business processes"],business_functions:["Operations","Research","Engineering"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://abacus.ai/",source_page:"/general-ai-toolkit"},{id:"chatsonic",title:"Chatsonic",description:"AI chat assistant with live web search. Combines AI responses with up-to-date information from the internet.",category:"AI Assistants",sub_category:"General Purpose",type:"Tool",tags:["research","search","writing","content","real-time"],use_cases:["Research with live web access","Content generation","Business writing"],business_functions:["Marketing","Research"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://writesonic.com/chat",source_page:"/general-ai-toolkit"},{id:"anythingllm",title:"AnythingLLM",description:"Run an AI assistant locally on your own infrastructure. Keeps documents and data private — no cloud, no subscription.",category:"Knowledge Management",sub_category:"Self-hosted",type:"GitHub",tags:["knowledge management","internal productivity","open source","private","document analysis","local","self-hosted"],use_cases:["Build private internal AI assistant","Document Q&A on private data","Self-hosted knowledge base"],business_functions:["Operations","Legal","Research"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://anythingllm.com/",github:"https://github.com/Mintplex-Labs/anything-llm",source_page:"/general-ai-toolkit"},{id:"obsidian",title:"Obsidian",description:"Local-first knowledge management and connected notes platform. Used for building structured research bases, deal notes, and sector knowledge graphs.",category:"Knowledge Management",sub_category:"Notes & Research",type:"Tool",tags:["knowledge management","internal productivity","research","notes","private","local"],use_cases:["Build structured research bases","Manage deal notes and sector intelligence","Personal knowledge management"],business_functions:["Research","Investment","Strategy"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Self-hosted",open_source:!1,enterprise_ready:!1,website:"https://obsidian.md",source_page:"/ai-strategy-toolkit"},{id:"notion-ai",title:"Notion AI",description:"Notes, wikis, project management, and team workspaces — with AI that writes, summarises, and organises for you.",category:"Knowledge Management",sub_category:"Team Workspace",type:"Tool",tags:["knowledge management","productivity","notes","wiki","internal productivity","project management","writing"],use_cases:["Build internal wikis","Summarise meeting notes with AI","Manage team projects and documentation"],business_functions:["Operations","HR","Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.notion.so/product/ai",source_page:"/general-ai-toolkit"},{id:"canva",title:"Canva AI",description:"Design graphics, social posts, presentations, and marketing visuals with AI. No design skills needed.",category:"Marketing & Content",sub_category:"Design",type:"Tool",tags:["design","marketing","social media","presentation","graphics","content","visual","no-code"],use_cases:["Create social media graphics","Design marketing materials","Build presentations quickly"],business_functions:["Marketing","HR","Operations"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.canva.com/ai-image-generator/",source_page:"/general-ai-toolkit"},{id:"dalle3",title:"DALL-E 3",description:"Generate original images from a text description. Useful for marketing visuals, social media, and presentations.",category:"Marketing & Content",sub_category:"Image Generation",type:"Tool",tags:["image generation","marketing","visual","design","social media"],use_cases:["Generate custom marketing images","Create original visual
486s for presentations","Produce social media imagery"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://openai.com/dall-e-3",source_page:"/general-ai-toolkit"},{id:"figma-ai",title:"Figma AI",description:"Professional design tool for websites, apps, and visual mockups — with AI features. Used by design agencies and product teams.",category:"Marketing & Content",sub_category:"Design",type:"Tool",tags:["design","ui","prototype","website","product design","marketing"],use_cases:["Design product interfaces","Create website mockups","Collaborative design workflows"],business_functions:["Marketing","Engineering"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.figma.com/ai",source_page:"/general-ai-toolkit"},{id:"midjourney",title:"Midjourney",description:"Create high-quality, artistic images from text prompts. One of the best tools for striking visual content and marketing imagery.",category:"Marketing & Content",sub_category:"Image Generation",type:"Tool",tags:["image generation","design","marketing","visual","creative","ai images"],use_cases:["Generate marketing visuals","Create brand imagery","Produce original illustrations"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.midjourney.com",source_page:"/general-ai-toolkit"},{id:"stability-ai",title:"Stability AI",description:"Free, open-source AI for generating images (Stable Diffusion). Privacy-friendly — can be run on your own hardware.",category:"Marketing & Content",sub_category:"Image Generation",type:"Tool",tags:["image generation","open source","design","marketing","private","self-hosted"],use_cases:["Self-hosted image generation","Custom brand visuals","Privacy-first AI imagery"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://stability.ai/",source_page:"/general-ai-toolkit"},{id:"flair-ai",title:"Flair.ai",description:"Generate branded product photos and marketing visuals with AI. Upload your product, set the scene, get the shot.",category:"Marketing & Content",sub_category:"Visual Marketing",type:"Tool",tags:["marketing","product photos","visual","brand","e-commerce"],use_cases:["Generate product marketing visuals","Create branded photography","E-commerce image production"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://flair.ai/",source_page:"/general-ai-toolkit"},{id:"adcreative",title:"AdCreative.ai",description:"Generate ready-to-publish ad images and copy for social media and digital campaigns. Optimised for c
486onversion.",category:"Marketing & Content",sub_category:"Advertising",type:"Tool",tags:["ads","advertising","marketing","social media","conversion","content"],use_cases:["Generate social media ad creatives","Scale digital ad production","A/B test marketing visuals"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.adcreative.ai/",source_page:"/general-ai-toolkit"},{id:"predis-ai",title:"Predis.ai",description:"Create social media posts and ads from a product link or short description. Covers images, captions, and scheduling.",category:"Marketing & Content",sub_category:"Social Media",type:"Tool",tags:["social media","marketing","content","automation","scheduling"],use_cases:["Automate social media content","Generate posts from product descriptions","Schedule social media publishing"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://predis.ai/",source_page:"/general-ai-toolkit"},{id:"copyai",title:"Copy.ai",description:"AI copywriting for marketing and sales — generate landing page copy, email sequences, ads, and social captions fast.",category:"Marketing & Content",sub_category:"Copywriting",type:"Tool",tags:["copywriting","marketing","content","email","ads","landing page","social media","sales copy"],use_cases:["Write landing page copy","Generate email sequences","Produce social media captions at scale"],business_functions:["Marketing","Sales"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.copy.ai",source_page:"/general-ai-toolkit"},{id:"beautiful-ai",title:"Beautiful.ai",description:"Create business presentations with AI-designed slide templates. Clean, professional output fast.",category:"Marketing & Content",sub_category:"Presentations",type:"Tool",tags:["presentation","slides","pitch deck","deck","powerpoint","board presentation","marketing"],use_cases:["Build investor pitch decks","Create board presentations","Generate professional slide decks"],business_functions:["Marketing","Investment","Strategy"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.beautiful.ai",source_page:"/general-ai-toolkit"},{id:"leonardo-ai",title:"Leonardo AI",description:"AI image generation with fine-tuned style models. Good for game assets, concept art, and design variations.",category:"Marketing & Content",sub_category:"Image Generation",type:"Tool",tags:["image generation","design","creative","marketing","art"],use_cases:["Generate custom style visuals","Concept art and brand imagery","Design variation testing"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://leonardo.ai",source_page:"/general-ai-toolkit"},{id:"flux",title:"Flux",description:"Next-generation AI image generator with ultra-high resolution and broad style flexibility. Used by professional designers.",category:"Marketing & Content",sub_category:"Image Generation",type:"Tool",tags:["image generation","design","marketing","professional","high resolution"],use_cases:["High-resolution marketing imagery","Professional visual production"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://flux-ai.io",source_page:"/general-ai-toolkit"},{id:"ideogram",title:"Ideogram",description:"AI image generator that handles text inside images — useful for poster design, banners, and typographic visuals.",category:"Marketing & Content",sub_category:"Image Generation",type:"Tool",tags:["image generation","design","marketing","typography","banners"],use_cases:["Create banners and posters with text","Generate typographic marketing visuals"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://ideogram.ai",source_page:"/general-ai-toolkit"},{id:"synthesia",title:"Synthesia",description:"Turn a script into a polished video with an AI presenter. No camera or studio needed — used for onboarding, training, and product explainers.",category:"Marketing & Content",sub_category:"Video Generation",type:"Tool",tags:["video","avatar","training video","marketing video","explainer","presenter","no camera","ai video"],use_cases:["Create training videos without a studio","Produce marketing explainer videos","Scale video content with AI avatars"],business_functions:["Marketing","HR"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.synthesia.io",source_page:"/general-ai-toolkit"},{id:"heygen",title:"HeyGen",description:"Create professional training or marketing videos using AI avatars. No camera, no crew — just a script and your brand.",category:"Marketing & Content",sub_category:"Video Generation",type:"Tool",tags:["video","avatar","training video","marketing video","ai video","talking head","presenter"],use_cases:["Produce HR onboarding videos","Create marketing content at scale","Multi-language video localisation"],business_functions:["Marketing","HR"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.heygen.com",source_page:"/general-ai-toolkit"},{id:"runwayml",title:"RunwayML",description:"Generate and edit short video clips with AI. Useful for marketing content, demos, and social media videos.",category:"Marketing & Content",sub_category:"Video Generation",type:"Tool",tags:["video","video editing","ai video","marketing video","clip","reel","generation"],use_cases:["Generate AI video clips from text","Edit and enhance marketing videos","Create short-form social media content"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://runwayml.com",source_page:"/general-ai-toolkit"},{id:"seedance",title:"Seedance 2.0",description:"Create short AI-generated videos combining images, video clips, and audio. Good for product showcases, ads, and social reels.",category:"Marketing & Content",sub_category:"Video Generation",type:"Tool",tags:["video","ai video","reel","short","product showcase","marketing video","social media"],use_cases:["Create product showcase videos","Generate AI-
486powered social reels","Marketing video content at scale"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://seedance2.ai",source_page:"/general-ai-toolkit"},{id:"descript",title:"Descript",description:"Edit video and podcast by editing the transcript — delete words in the text, they disappear from the video. AI-powered media editing.",category:"Marketing & Content",sub_category:"Video Editing",type:"Tool",tags:["video editing","podcast","recording","transcript","audio","content editing","youtube"],use_cases:["Edit podcast episodes efficiently","Repurpose video interviews","Remove filler words automatically"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.descript.com",source_page:"/general-ai-toolkit"},{id:"opusclip",title:"OpusClip",description:"Turn long videos into short, shareable clips automatically. AI picks the best moments from webinars and interviews.",category:"Marketing & Content",sub_category:"Video Editing",type:"Tool",tags:["video","clip","shorts","tiktok","youtube","repurpose","social media","podcast"],use_cases:["Repurpose webinars into social clips","Create short-form video from long content"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.opus.pro",source_page:"/general-ai-toolkit"},{id:"captions-ai",title:"Captions.ai",description:"Add AI-generated animated captions to videos automatically. Popular for Instagram Reels, TikTok, and YouTube Shorts.",category:"Marketing & Content",sub_category:"Video Editing",type:"Tool",tags:["captions","subtitles","video editing","shorts","tiktok","instagram","reel","youtube"],use_cases:["Auto-caption social media videos","Add animated subtitles to reels"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://captions.ai/",source_page:"/general-ai-toolkit"},{id:"elevenlabs",title:"ElevenLabs",description:"Convert text to natural-sounding speech. Clone a voice or choose from hundreds — used for video voiceover, podcasts, and content.",category:"Marketing & Content",sub_category:"Audio",type:"Tool",tags:["audio","voice","voiceover","text to speech","podcast","video","narration"],use_cases:["Add professional voiceover to videos","Generate podcast narration","Localise content with AI voices"],business_functions:["Marketing","HR"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://elevenlabs.io",source_page:"/general-ai-toolkit"},{id:"vizard",title:"Vizard.ai",description:"Turn long videos into short social media clips automatically. Saves hours of editing for webinars and podcasts.",category:"Marketing & Content",sub_category:"Video Editing",type:"Tool",tags:["video","clip","repurpose","social media","shorts","tiktok","webinar","youtube"],use_cases:["Repurpose long-form video into clips","Generate social content from webinars"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://vizard.ai/",source_page:"/general-ai-toolkit"},{id:"hubspot",title:"HubSpot AI",description:"CRM with AI built in — tracks contacts, automates sales follow-ups, and generates marketing content. Good starting point for SMEs.",category:"Sales",sub_category:"CRM",type:"Platform",tags:["crm","sales","marketing","automation","lead","email","customer service"],use_cases:["Manage sales pipeline with AI","Automate email follow-ups","Track customer interactions"],business_functions:["Sales","Marketing"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.hubspot.com/artificial-intelligence",source_page:"/general-ai-toolkit"},{id:"salesforce-einstein",title:"Salesforce Einstein",description:"AI layer inside Salesforce CRM for sales forecasting, lead scoring, and customer workflow automation. Enterprise-grade.",category:"Sales",sub_category:"CRM",type:"Platform",tags:["crm","sales","forecasting","lead scoring","enterprise","automation"],use_cases:["Sales forecasting","Automated lead scoring","Enterprise customer workflow automation"],business_functions:["Sales"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.salesforce.com/products/einstein/",source_page:"/general-ai-toolkit"},{id:"saikoo-crm",title:"Saikoo CRM",description:"Financial CRM for Italian SMEs — combines customer and prospect management with official company data, financial indicators, and EBITDA-based analysis.",category:"Sales",sub_category:"CRM",type:"Tool",tags:["crm","smes","italy","sales","prospecting","financial data","ebitda","company research"],use_cases:["Manage SME customer relationships","Qualify prospects with financial data","Monitor company financial indicators","Support sales research"],business_functions:["Sales","Finance","Research"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://apps.apple.com/it/app/saikoo-crm/id6758054592?l=en-GB",source_page:"/general-ai-toolkit"}
486,{id:"clay",title:"Clay",description:"AI-powered data enrichment and outreach automation. Used for LP investor outreach, deal origination pipelines, and relationship intelligence.",category:"Sales",sub_category:"Prospecting",type:"Tool",tags:["sales","prospecting","crm","outreach","data enrichment","automation","sales prospecting","investor relations"],use_cases:["Automate sales prospecting","Enrich contact data","Build outreach sequences","LP relationship management"],business_functions:["Sales","Investment"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.clay.com/",source_page:"/ai-agentic-companies"},{id:"dynamo",title:"Dynamo Software",description:"CRM and data platform for private equity, VC, and asset managers. Improves pipeline visibility and investor relationship management.",category:"Sales",sub_category:"PE CRM",type:"Platform",tags:["crm","private equity","investor relations","sales","pipeline management","fund management"],use_cases:["Investor CRM for PE funds","Pipeline and deal tracking","LP relationship management"],business_functions:["Investment","Sales"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.dynamosoftware.com/",source_page:"/ai-strategy-toolkit"},{id:"dealcloud",title:"DealCloud",description:"Deal flow management and relationship intelligence platform for private capital. Centralises pipeline, deal tracking, and investor relationships.",category:"Sales",sub_category:"PE CRM",type:"Platform",tags:["deal flow","crm","private equity","sales","investor relations","pipeline management"],use_cases:["Manage deal pipeline","Track investor relationships","Centralise deal intelligence"],business_functions:["Investment","Sales"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.intapp.com/dealcloud/",source_page:"/ai-strategy-toolkit"},{id:"sitegpt",title:"SiteGPT",description:"Add an AI chatbot to your website, trained on your own content. Answers customer questions automatically, 24/7.",category:"Customer Service",sub_category:"Chatbots",type:"Tool",tags:["customer support","chatbot","website","automation","faq","24/7"],use_cases:["Automate customer support on website","Handle FAQs automatically","Reduce support ticket volume"],business_functions:["Customer Service"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://sitegpt.ai/",source_page:"/general-ai-toolkit"},{id:"chatbase",title:"Chatbase",description:"Build a chatbot from your PDFs, help docs, or website pages. Embed it on your site to handle customer queries.",category:"Customer Service",sub_category:"Chatbots",type:"Tool",tags:["customer support","chatbot","documents","faq","automation","website"],use_cases:["Build document-trained chatbot","Automate customer support queries","Internal knowledge base chatbot"],business_functions:["Customer Service","Operations"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.chatbase.co/",source_page:"/general-ai-toolkit"},{id:"aisera",title:"Aisera",description:"Enterprise AI copilot and agent platform for IT, HR, and operations. Reduces support volume and accelerates workflow resolution.",category:"Customer Service",sub_category:"Enterprise Automation",type:"Platform",tags:["customer support","hr automation","it automation","workflow automation","enterprise ai","copilot"],use_cases:["Automate customer support","Reduce IT ticket volume","HR process automation"],business_functions:["Customer Service","HR","IT"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://aisera.com/",source_page:"/ai-agentic-companies"},{id:"fathom",title:"Fathom",description:"Joins your video calls, records, transcribes, and summarises them instantly. Free plan available — one of the most popular meeting AI tools.",category:"Productivity",sub_category:"Meeting Intelligence",type:"Tool",tags:["meetings","transcription","productivity","notes","action items","internal productivity"],use_cases:["Automate meeting notes","Extract action items from calls","Share meeting summaries instantly"],business_functions:["Operations","Investment","Sales"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.fathom.ai/",source_page:"/general-ai-toolkit"}
486,{id:"fireflies",title:"Fireflies.ai",description:"Joins your video calls, records and transcribes them, then sends a summary with action items automatically.",category:"Productivity",sub_category:"Meeting Intelligence",type:"Tool",tags:["meetings","transcription","productivity","notes","action items","crm"],use_cases:["Automate meeting notes and transcription","Push action items to CRM","Search past meeting content"],business_functions:["Operations","Sales","HR"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://fireflies.ai",source_page:"/general-ai-toolkit"},{id:"granola",title:"Granola",description:"AI notepad that listens to your meetings and creates structured notes automatically. Works locally on your Mac.",category:"Productivity",sub_category:"Meeting Intelligence",type:"Tool",tags:["meetings","notes","productivity","local","transcription","mac"],use_cases:["Auto-generate structured meeting notes","Private local meeting transcription"],business_functions:["Operations","Investment"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Self-hosted",open_source:!1,enterprise_ready:!1,website:"https://www.granola.ai",source_page:"/general-ai-toolkit"},{id:"copilot365",title:"Microsoft Copilot 365",description:"AI built into Word, Excel, PowerPoint, Outlook, and Teams. Drafts emails, creates slides, and summarises meeting recordings.",category:"Productivity",sub_category:"Office Suite AI",type:"Platform",tags:["productivity","microsoft","excel","word","powerpoint","teams","email","meetings","enterprise"],use_cases:["Automate report generation in Excel","Draft emails in Outlook","Create presentations with AI","Summarise Teams meetings"],business_functions:["Operations","Finance","HR","Marketing"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.microsoft.com/microsoft-365/copilot",source_page:"/general-ai-toolkit"},{id:"zapier",title:"Zapier",description:"Connect apps and automate tasks without coding. Trigger actions across Gmail, Slack, CRM, Notion, and hundreds of tools.",category:"Workflow Automation",sub_category:"No-Code Integration",type:"Tool",tags:["workflow automation","integration","connect apps","no-code","automation","trigger","zap"],use_cases:["Automate repetitive tasks between apps","Connect CRM to email workflows","Trigger actions without code"],business_functions:["Operations","Marketing","Sales"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://zapier.com",source_page:"/general-ai-toolkit"},{id:"make",title:"Make",description:"Build visual automation workflows connecting your tools — more flexible than Zapier for complex logic. No coding needed.",category:"Workflow Automation",sub_category:"No-Code Integration",type:"Tool",tags:["workflow automation","integration","no-code","automation","visual"],use_cases:["Build complex multi-step automations","Connect business tools with logic","Process automation without code"],business_functions:["Operations"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.make.com",source_page:"/general-ai-toolkit"},{id:"n8n",title:"n8n",description:"Open-source automation tool you can host on your own server. Full control over your data, 200+ app integrations.",category:"Workflow Automation",sub_category:"Self-hosted Automation",type:"Tool",tags:["workflow automation","open source","self-hosted","integration","automation","data control"],use_cases:["Self-hosted workflow automation","Data-sensitive process automation","Custom integrations without SaaS fees"],business_functions:["Operations","Engineering"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!0,website:"https://n8n.io/",source_page:"/general-ai-toolkit"},{id:"power-automate",title:"Power Automate",description:"Microsoft's automation tool. Automate tasks between Office 365, SharePoint, Teams, and hundreds of other apps.",category:"Workflow Automation",sub_category:"Enterprise Automation",type:"Tool",tags:["workflow automation","microsoft","office 365","sharepoint","teams","enterprise"],use_cases:["Automate Office 365 workflows","Connect SharePoint and Teams","Enterprise process automation"],business_functions:["Operations","Finance","HR"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://powerautomate.microsoft.com/",source_page:"/general-ai-toolkit"},{id:"workato",title:"Workato",description:"Connects enterprise apps and automates complex multi-step workflows. Best suited for mid-size and larger organisations.",category:"Workflow Automation",sub_category:"Enterprise Integration",type:"Platform",tags:["workflow automation","enterprise","integration","automation","multi-step"],use_cases:["Enterprise workflow automation","Complex multi-step process automation","Integrate business systems"],business_functions:["Operations","Finance"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.workato.com/",source_page:"/general-ai-toolkit"},{id:"bardeen",title:"Bardeen",description:"Automate repetitive browser tasks with AI — scrape data, fill forms, move information between tabs — all without writing code.",category:"Workflow Automation",sub_category:"Browser Automation",type:"Tool",tags:["workflow automation","browser","scraping","no-code","data extraction","forms"],use_cases:["Automate data collection from websites","Fill forms automatically","Extract and move browser data"],business_functions:["Operations","Research","Sales"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.bardeen.ai/",source_page:"/general-ai-toolkit"},{id:"uipath",title:"UiPath",description:"Enterprise RPA and AI platform for automating repetitive processes in finance, operations, and back-office functions.",category:"Workflow Automation",sub_category:"RPA",type:"Platform",tags:["workflow automation","rpa","finance automation","back-office","process automation","enterprise"],use_cases:["Automate finance reporting","Streamline back-office operations","Reduce manual data entry","Automate fund administration"],business_functions:["Finance","Operations","HR"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Both",open_source:!1,enterprise_ready:!0,website:"https://www.uipath.com/",source_page:"/ai-strategy-toolkit"},{id:"atlassian-rovo",title:"Atlassian Rovo",description:"Enterprise AI search and agent platform for knowledge management, fund operations, and cross-team workflows.",category:"Knowledge Management",sub_category:"Enterprise Search",type:"Platform",tags:["knowledge management","workflow automation","enterprise ai","search","internal productivity","ai agents","jira","confluence"],use_cases:["Build internal AI search","Connect enterprise knowledge sources","Automate cross-team workflows"],business_functions:["Operations","Engineering","HR"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.atlassian.com/software/rovo",source_page:"/ai-strategy-toolkit"},{id:"moveworks",title:"Moveworks",description:"Agentic AI for enterprise automation across IT, HR, and internal systems. Accelerates resolution time across portfolio company operations.",category:"Workflow Automation",sub_category:"Enterprise AI Agents",type:"Platform",tags:["workflow automation","hr automation","it automation","enterprise ai","internal productivity","ai agents"],use_cases:["Automate IT helpdesk","Streamline HR requests","Internal productivity automation"],business_functions:["IT","HR","Operations"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.moveworks.com/",source_page:"/ai-agentic-companies"},{id:"beam",title:"Beam",description:"Agentic process automation for end-to-e
486nd enterprise workflows. Executes multi-step operational processes without human intervention.",category:"Workflow Automation",sub_category:"Enterprise AI Agents",type:"Platform",tags:["ai agents","workflow automation","process automation","enterprise","autonomous"],use_cases:["End-to-end workflow automation","Autonomous process execution","Multi-step task delegation"],business_functions:["Operations"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.beam.ai/",source_page:"/ai-agentic-companies"},{id:"adept",title:"Adept",description:"Agentic AI that operates across financial technology stacks and enterprise software, enabling autonomous workflow execution.",category:"Workflow Automation",sub_category:"Enterprise AI Agents",type:"Platform",tags:["ai agents","workflow automation","enterprise ai","finance automation","autonomous","fintech"],use_cases:["Automate workflows across financial software stacks","Enterprise AI automation"],business_functions:["Finance","Operations"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.adept.ai/",source_page:"/ai-agentic-companies"},{id:"bolt-new",title:"Bolt.new",description:"Describe your app idea in plain language and get a working prototype in minutes — no coding required.",category:"Website & Digital",sub_category:"App Builder",type:"Tool",tags:["website","app","no-code","prototype","web app","build website","fast"],use_cases:["Build working app prototype quickly","Launch MVP without developers","Create custom internal tools"],business_functions:["Engineering","Operations"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://bolt.new/",source_page:"/general-ai-toolkit"},{id:"framer",title:"Framer AI",description:"Design and publish professional websites with AI. No code needed — ideal for landing pages and marketing sites.",category:"Website & Digital",sub_category:"Website Builder",type:"Tool",tags:["website","landing page","no-code","web design","marketing site","prototype","ui"],use_cases:["Build a company website without code","Create marketing landing pages"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.framer.com",source_page:"/general-ai-toolkit"},{id:"durable",title:"Durable",description:"Build a complete business website in 30 seconds with AI. Generates copy, images, and layout automatically.",category:"Website & Digital",sub_category:"Website Builder",type:"Tool",tags:["website","landing page","no-code","small business","web design","ai website","fast"],use_cases:["Launch business website in minutes","Generate website copy and layout with AI"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://durable.com/",source_page:"/general-ai-toolkit"},{id:"10web",title:"10Web",description:"AI-powered WordPress website builder. Generates and optimises your site — good if you already use WordPress.",category:"Website & Digital",sub_category:"Website Builder",type:"Tool",tags:["website","wordpress","no-code","web design","ai website"],use_cases:["Build WordPress site with AI","Optimise existing WordPress site","Generate website content automatically"],business_functions:["Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://10web.io/",source_page:"/general-ai-toolkit"},{id:"replit",title:"Replit",description:"Build and deploy web apps directly in your browser — no installation needed. AI helps write the code as you go.",category:"Coding",sub_category:"IDE & Dev Environment",type:"Platform",tags:["coding","developer","web app","deployment","ai coding","prototyping"],use_cases:["Build and deploy web applications","Prototype apps without local setup","AI-assisted development"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://replit.com",source_page:"/general-ai-toolkit"},{id:"github-copilot",title:"GitHub Copilot",description:"AI assistant for developers — suggests code and completes functions as you type. Integrates with most code editors.",category:"Coding",sub_category:"AI Code Assistant",type:"Tool",tags:["coding","developer","ai coding","github","autocomplete","programming"],use_cases:["Accelerate software development","Auto-complete code and functions","Reduce developer cycle time"],business_functions:["Engineering"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://github.com/features/copilot",source_page:"/general-ai-toolkit"},{id:"cursor",title:"Cursor",description:"Code editor with deep AI integration — write, edit, and explain code in natural language. Popular among developers.",category:"Coding",sub_category:"AI Code Editor",type:"Tool",tags:["coding","developer","ai coding","editor","natural language","programming"],use_cases:["Build software with natural language instructions","Refactor and explain codebase
486s","AI pair programming"],business_functions:["Engineering"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Self-hosted",open_source:!1,enterprise_ready:!0,website:"https://cursor.sh",source_page:"/general-ai-toolkit"},{id:"v0-vercel",title:"v0 by Vercel",description:"Describe a UI element in words and get working code for it instantly. Used by developers to prototype interfaces fast.",category:"Coding",sub_category:"UI Generation",type:"Tool",tags:["coding","developer","ui","prototype","frontend","design to code"],use_cases:["Generate UI components from description","Rapidly prototype frontend interfaces"],business_functions:["Engineering","Marketing"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://v0.dev",source_page:"/general-ai-toolkit"},{id:"open-interpreter",title:"Open Interpreter",description:"Give your computer instructions in plain language — it runs code, analyses files, and automates tasks on your machine.",category:"Coding",sub_category:"Local AI Agent",type:"GitHub",tags:["coding","ai agents","automation","local","open source","developer","analyst"],use_cases:["Run local AI coding agent","Automate file and data processing","Local AI task execution"],business_functions:["Engineering","Operations"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://openinterpreter.com/",source_page:"/general-ai-toolkit"},{id:"factory",title:"Factory",description:"Agent-native software development platform. Accelerates engineering output for PE-backed software companies.",category:"Coding",sub_category:"AI Dev Platform",type:"Platform",tags:["coding","developer","software development","ai agents","engineering","automation"],use_cases:["Accelerate software development","Automate code review","Reduce engineering costs"],business_functions:["Engineering"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://factory.ai/",source_page:"/ai-agentic-companies"},{id:"cognition-devin",title:"Devin — Cognition AI",description:"AI software engineer capable of end-to-end development tasks. Applicable to software-intensive portfolio companies.",category:"Coding",sub_category:"AI Dev Platform",type:"Platform",tags:["coding","developer","software development","ai agents","engineering"],use_cases:["Autonomous software development","End-to-end coding tasks","Reduce engineering headcount costs"],business_functions:["Engineering"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.cognition.ai/",source_page:"/ai-agentic-companies"},{id:"powerbi",title:"Power BI",description:"Microsoft BI platform for interactive dashboards and AI-powered reporting. Supports portfolio-level KPI monitoring and automated finance reports.",category:"Finance",sub_category:"Business Intelligence",type:"Tool",tags:["finance","data analysis","reporting","dashboards","bi","finance automation","portfolio monitoring","kpis"],use_cases:["Automate finance reporting","Build portfolio dashboards","KPI monitoring","Board-ready reporting"],business_functions:["Finance","Operations"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://powerbi.microsoft.com",source_page:"/ai-strategy-toolkit"},{id:"tableau",title:"Tableau AI",description:"Data visualisation with AI-powered insights. Industry standard for business analytics and performance dashboards.",category:"Finance",sub_category:"Business Intelligence",type:"Tool",tags:["data analysis","finance","dashboards","bi","visualisation","reporting","portfolio monitoring"],use_cases:["Visualise portfolio performance","Build operational dashboards","Data-driven board reporting"],business_functions:["Finance","Operations"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.tableau.com/products/tableau-ai",source_page:"/ai-strategy-toolkit"},{id:"wren-ai",title:"Wren AI",description:"Open-source text-to-SQL for business intelligence. Query your data in plain English — no SQL or engineering team required.",category:"Finance",sub_category:"Self-serve BI",type:"Tool",tags:["data analysis","finance","sql","open source","business intelligence","reporting","self-serve data"],use_cases:["Query financial data without SQL","Self-serve business intelligence","Automate data reporting"],business_functions:["Finance","Operations"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://www.getwren.ai",github:"https://github.com/canner/WrenAI",source_page:"/ai-strategy-toolkit"},{id:"datarobot",title:"DataRobot",description:"Enterprise AutoML platform for demand forecasting, customer churn prediction, and pipeline analytics — no coding required.",category:"Finance",sub_category:"Predictive Analytics",type:"Platform",tags:["data analysis","finance","machine learning","forecasting","predictive analytics","automation"],use_cases:["Forecast demand and revenue","Predict customer churn","Build predictive finance models"],business_functions:["Finance","Sales"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.datarobot.com",source_page:"/general-ai-toolkit"},{id:"mindsdb",title:"MindsDB",description:"Add AI predictions directly to your existing database. Ask business questions in standard SQL — get AI-powered answers back.",category:"Finance",sub_category:"Predictive Analytics",type:"Platform",tags:["data analysis","sql","machine learning","database","predictive analytics","open source"],use_cases:["Add ML predictions to existing database","AI-powered SQL queries","Forecast from existing data"],business_functions:["Finance","Engineering"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://mindsdb.com/",source_page:"/general-ai-toolkit"},{id:"neo4j",title:"Neo4j",description:"Graph database for mapping complex relationships — supply chains, ownership structures, networks. Used with AI for knowledge graph and RAG applications.",category:"Data Analysis",sub_category:"Graph Database",type:"Platform",tags:["data analysis","knowledge management","graph database","open source","rag","ai agents","ownership structures"],use_cases:["Map ownership and relationship structures","Build knowledge graphs","Supply chain intelligence"],business_functions:["Research","Engineering","Investment"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!0,website:"https://neo4j.com/",source_page:"/general-ai-toolkit"},{id:"domo-ai",title:"Domo AI",description:"AI-powered business intelligence platform with natural language querying. Connects to hundreds of data sources for real-time dashboards.",category:"Finance",sub_category:"Business Intelligence",type:"Platform",tags:["data analysis","bi","dashboards","natural language","finance","reporting"],use_cases:["Natural language data querying","Real-time business dashboards","Multi-source data integration"],business_functions:["Finance","Operations"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.domo.com/ai",source_page:"/general-ai-toolkit"},{id:"workiva",title:"Workiva AI",description:"AI for financial reporting, ESG disclosure, and audit workflows. Used by CFOs and compliance teams managing multi-entity reporting.",category:"Finance",sub_category:"Financial Reporting",type:"Platform",tags:["finance automation","compliance","reporting","esg","regulatory","finance","data analysis","audit"],use_cases:["Automate finance reporting","ESG and regulatory compliance","Multi-entity consolidated reporting"],business_functions:["Finance","Legal"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.workiva.com/solutions/artificial-intelligence",source_page:"/general-ai-toolkit"},{id:"mercor",title:"Mercor",description:"AI platform for talent matching, hiring, and workforce intelligence. Relevant for portfolio companies scaling teams.",category:"HR & Recruiting",sub_category:"Talent Acquisition",type:"Platform",tags:["hr","recruiting","talent","hiring","hr automation","workforce"],use_cases:["Automate c
486andidate screening","AI-powered talent matching","Scale hiring pipelines"],business_functions:["HR"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.mercor.com/",source_page:"/ai-agentic-companies"},{id:"hebbia",title:"Hebbia",description:"AI for large-scale document analysis in private equity diligence. Processes entire data rooms with source citations and structured output.",category:"Due Diligence",sub_category:"Document Analysis",type:"Platform",tags:["due diligence","document analysis","private equity","data room","investment","diligence","research"],use_cases:["Process entire data rooms","Extract key facts from CIMs","Automate document review in M&A"],business_functions:["Investment","Legal"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.hebbia.com",source_page:"/ai-strategy-toolkit"},{id:"blueflame",title:"BlueFlame AI",description:"Agentic AI for deal lifecycle automation — deal screening, expert call synthesis, and portfolio monitoring.",category:"Due Diligence",sub_category:"Deal Intelligence",type:"Platform",tags:["due diligence","deal flow","private equity","automation","portfolio monitoring","investment"],use_cases:["Automate deal screening","Synthesise expert calls","Monitor portfolio companies"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.blueflame.ai",source_page:"/ai-strategy-toolkit"},{id:"rogo",title:"Rogo",description:"Generative AI for PE, IB, and asset management. Automates financial models, deal memos, and market intelligence reports.",category:"Due Diligence",sub_category:"Deal Intelligence",type:"Platform",tags:["financial modelling","due diligence","deal memos","private equity","investment banking","finance automation"],use_cases:["Automate IC memo drafting","Build financial models","Produce market intelligence reports"],business_functions:["Investment","Finance"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://rogo.ai",source_page:"/ai-strategy-toolkit"},{id:"metal",title:"Metal",description:"Institutional intelligence platform aggregating deal data across CRMs, repositories, and financial documents.",category:"Due Diligence",sub_category:"Deal Intelligence",type:"Platform",tags:["due diligence","deal intelligence","private equity","crm","data aggregation","investment"],use_cases:["Aggregate deal data across systems","Surface intelligence from institutional data","Centralise investment data"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.metal.ai",source_page:"/ai-strategy-toolkit"},{id:"model-ml",title:"Model ML",description:"AI-native workflow automation for PE and IB. Produces institutional-format IC memos and portfolio analytics.",category:"Due Diligence",sub_category:"Deal Intelligence",type:"Platform",tags:["financial modelling","ic memo","due diligence","private equity","investment banking","portfolio analytics"],use_cases:["Produce IC memo automation","Portfolio analytics at scale","Institutional workflow automation"],business_functions:["Investment","Finance"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.modelml.com",source_page:"/ai-strategy-toolkit"},{id:"alphasense",title:"AlphaSense",description:"Market intelligence platform scanning earnings calls, analyst reports, and financial filings. Supports commercial diligence and sector mapping.",category:"Research",sub_category:"Market Intelligence",type:"Platform",tags:["market research","intelligence","due diligence","finance","earnings","sector","data analysis"],use_cases:["Commercial diligence research","Competitor and sector mapping","Earnings call analysis"],business_functions:["Investment","Research"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.alpha-sense.com",source_page:"/ai-strategy-toolkit"},{id:"pitchbook",title:"PitchBook",description:"Comprehensive private capital data and deal tracking. Standardises market visibility across funds and sectors.",category:"Research",sub_category:"Private Market Data",type:"Platform",tags:["private equity","data","deal flow","market research","due diligence","fundraising","investment"],use_cases:["Track deal flow","Research target companies","Benchmark fund performance"],business_functions:["Investment","Research"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://pitchbook.com",source_page:"/ai-strategy-toolkit"},{id:"gainpro",title:"Gain.pro",description:"Private market intelligence focused on mid-market company data. Increases speed and precision in target identification.",category:"Research",sub_category:"Private Market Data",type:"Platform",tags:["private equity","market intelligence","mid-market","deal sourcing","due diligence"],use_cases:["Identify acquisition targets","Map mid-market landscapes","Enrich deal origination"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://gain.pro",source_page:"/ai-strategy-toolkit"},{id:"preqin",title:"Preqin",description:"Data and analytics platform for alternative assets and fund performance. Improves fund benchmarking and capital allocation decisions.",category:"Research",sub_category:"Private Market Data",type:"Platform",tags:["private equity","alternative assets","fund performance","benchmarking","due diligence","data"],use_cases:["Benchmark fund performance","Research alternative asset markets","Capital allocation decisions"],business_functions:["Investment","Research"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.preqin.com",source_page:"/ai-strategy-toolkit"},{id:"ilevel",title:"iLevel",description:"Portfolio monitoring and analytics platform for private equity and credit funds. Standardises performance tracking across investments.",category:"Finance",sub_category:"Portfolio Monitoring",type:"Platform",tags:["portfolio monitoring","private equity","finance","reporting","data analysis","fund management"],use_cases:["Monitor portfolio company performance","Standardise fund reporting","Track investment KPIs"],business_functions:["Investment","Finance"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.ilevelsolutions.
486com/",source_page:"/ai-strategy-toolkit"},{id:"allvue",title:"Allvue Systems",description:"Integrated investment management platform covering front, middle, and back office. Centralises fund data and operational workflows.",category:"Enterprise AI",sub_category:"Fund Operations",type:"Platform",tags:["fund management","private equity","finance automation","back-office","portfolio monitoring","reporting"],use_cases:["Centralise fund operations","Automate back-office reporting","Portfolio data management"],business_functions:["Investment","Finance","Operations"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.allvuesystems.com/",source_page:"/ai-strategy-toolkit"},{id:"harvey",title:"Harvey AI",description:"AI platform for law firms and legal teams — contract analysis, due diligence, legal research, and regulatory review at scale.",category:"Due Diligence",sub_category:"Legal AI",type:"Platform",tags:["legal","contracts","due diligence","compliance","document analysis","research","regulatory"],use_cases:["Automate contract review","Legal due diligence","Regulatory compliance research","M&A document analysis"],business_functions:["Legal","Investment"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.harvey.ai/",source_page:"/general-ai-toolkit"},{id:"casetext",title:"Casetext",description:"Legal research AI acquired by Thomson Reuters. Finds relevant case law, statutes, and legal documents faster than traditional search.",category:"Due Diligence",sub_category:"Legal AI",type:"Tool",tags:["legal","contracts","due diligence","research","document analysis","case law"],use_cases:["Legal research automation","Contract analysis","Case law discovery"],business_functions:["Legal"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://casetext.com/",source_page:"/general-ai-toolkit"},{id:"lexis-ai",title:"Lexis+ AI",description:"LexisNexis AI assistant for legal professionals — case research, contract drafting, and document summarisation with citation tracking.",category:"Due Diligence",sub_category:"Legal AI",type:"Platform",tags:["legal","contracts","due diligence","research","citation","compliance","regulatory"],use_cases:["Legal research with citations","Contract drafting assistance","Compliance document review"],business_functions:["Legal"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.lexisnexis.com/en-us/products/lexis-plus-ai.page",source_page:"/general-ai-toolkit"},{id:"mikeoss",title:"Mikeoss",description:"AI legal assistant for lawyers — contract review, legal research, document drafting, and case analysis.",category:"Due Diligence",sub_category:"Legal AI",type:"Tool",tags:["legal","contracts","document analysis","research","drafting"],use_cases:["Contract review automation","Legal document drafting","Case analysis"],business_functions:["Legal"],pe_relevance:"Low",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://mikeoss.com/",source_page:"/general-ai-toolkit"},{id:"lexroom",title:"Lexroom",description:"AI partner for lawyers that combines legal research with data analysis to improve accuracy, speed, and professional judgment.",category:"Due Diligence",sub_category:"Legal AI",type:"Platform",tags:["legal","legal research","data analysis","document analysis","law firms"],use_cases:["Legal research assistance","Legal data analysis","Law firm knowledge work"],business_functions:["Legal","Research"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.lexroom.ai/en",source_page:"/general-ai-toolkit"},{id:"query-juriste",title:"Query Juriste",description:"French legal AI platform for sourced legal research and structured reasoning, with EU-hosted infrastru
486cture for law firms and in-house teams.",category:"Due Diligence",sub_category:"Legal AI",type:"Platform",tags:["legal","legal research","citations","data privacy","law firms"],use_cases:["Sourced legal research","Legal reasoning assistance","Law firm knowledge work"],business_functions:["Legal","Research"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.query-juriste.com/",source_page:"/general-ai-toolkit"},{id:"praven-intelekt",title:"Praven Intelekt",description:"Bulgarian legal AI assistant for sourced legal research, document analysis, and drafting based on current Bulgarian legislation and case law.",category:"Due Diligence",sub_category:"Legal AI",type:"Platform",tags:["legal","legal research","citations","document analysis","case law","Bulgarian law"],use_cases:["Bulgarian legal research","Legal document analysis","Legal drafting assistance"],business_functions:["Legal","Research"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.pravenintelekt.com/",source_page:"/general-ai-toolkit"},{id:"xbow",title:"XBOW",description:"Autonomous AI penetration testing platform for cyber due diligence, portfolio company risk assessment, and continuous security validation.",category:"Cybersecurity",sub_category:"Penetration Testing",type:"Platform",tags:["cybersecurity","security","due diligence","risk","penetration testing"],use_cases:["Cyber due diligence on target companies","Continuous security validation","Portfolio company risk assessment"],business_functions:["Investment","IT","Legal"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://xbow.com/",source_page:"/ai-agentic-companies"},{id:"orchextra-qi4m",title:"OrcheXtra — Qi4M",description:"Governance and execution intelligence layer for regulated financial institutions. Risk & Regulatory Reporting, Compliance & Audit, and Product Management AI.",category:"Enterprise AI",sub_category:"Governance",type:"Platform",tags:["governance","compliance","finance automation","regulatory","enterprise ai","risk","workflow automation","due diligence"],use_cases:["AI governance for regulated finance","Risk and compliance reporting","Automate audit workflows"],business_functions:["Finance","Legal","Operations"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.qi4m.com/",source_page:"/ai-agentic-companies"},{id:"glean",title:"Glean",description:"Enterprise AI search connecting all organisational knowledge. Accelerates decision-making across fund teams and distributed organisations.",category:"Knowledge Management",sub_category:"Enterprise Search",type:"Platform",tags:["knowledge management","enterprise ai","search","internal productivity","document analysis"],use_cases:["Build enterprise knowledge search","Connect all company data sources","Internal productivity for large teams"],business_functions:["Operations","Investment","HR"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.glean.com/",source_page:"/ai-agentic-companies"},{id:"ninjatech",title:"NinjaTech.ai",description:"AI agent workforce platform for enterprise knowledge and task execution. Scales throughput across knowledge-intensive portfolio workflows.",category:"Enterprise AI",sub_category:"AI Workforce",type:"Platform",tags:["ai agents","enterprise ai","workflow automation","knowledge management","portfolio"],use_cases:["Scale knowledge work with AI agents","Automate enterprise task execution"],business_functions:["Operations"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.ninjatech.ai/",source_page:"/ai-agentic-companies"},{id:"domyn",title:"Domyn",description:"Open-source LLM-as-a-Service platform for institutional AI deployment on proprietary data with full infrastru
486cture control.",category:"Enterprise AI",sub_category:"LLM Infrastructure",type:"Platform",tags:["enterprise ai","open source","llm","self-hosted","data privacy","institutional"],use_cases:["Deploy private LLMs on proprietary data","Full-control AI infrastructure","Institutional AI deployment"],business_functions:["Engineering","Operations"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!0,website:"https://www.domyn.com/",source_page:"/ai-agentic-companies"},{id:"langchain",title:"LangChain",description:"Open-source framework for building LLM-powered applications and AI agents. Widely used for RAG, document Q&A, and multi-step reasoning chains.",category:"AI Agents",sub_category:"Framework",type:"Framework",tags:["ai agents","framework","open source","rag","document analysis","developer","llm","build ai agents"],use_cases:["Build internal AI agents","Connect LLMs to documents and databases","Create RAG pipelines"],business_functions:["Engineering","Research"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!0,website:"https://www.langchain.com/",github:"https://github.com/langchain-ai/langchain",source_page:"/learning"},{id:"langgraph",title:"LangGraph",description:"Framework for building stateful, multi-agent AI workflows with graph-based orchestration. Used for complex agentic systems.",category:"AI Agents",sub_category:"Framework",type:"Framework",tags:["ai agents","multi-agent","framework","open source","workflow automation","orchestration","build ai agents"],use_cases:["Build multi-agent systems","Orchestrate complex AI workflows","Stateful agent pipelines"],business_functions:["Engineering"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!0,website:"https://www.langchain.com/langgraph",github:"https://github.com/langchain-ai/langgraph",source_page:"/learning"},{id:"langgraph-cua",title:"LangGraph: Computer Using Agents",description:"Build AI agents that interact with computers like humans — browser, CLI, and mouse cursor. Open-source framework on GitHub.",category:"AI Agents",sub_category:"Computer Use",type:"GitHub",tags:["ai agents","computer use","browser automation","open source","agentic","build ai agents"],use_cases:["Automate browser-based tasks with AI","Build computer-using agents","Web automation pipelines"],business_functions:["Engineering","Operations"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/langchain-ai/langgraph-cua-py",github:"https://github.com/langchain-ai/langgraph-cua-py",source_page:"/learning"},{id:"langgraph-deep-research",title:"LangGraph: Deep Research Agents",description:"Collaborative multi-agent system to build extensively researched reports from a large number of sources automatically.",category:"AI Agents",sub_category:"Research Agents",type:"GitHub",tags:["ai agents","research","multi-agent","open source","rag","reports","due diligence"],use_cases:["Automate deep research reports","Multi-source intelligence synthesis","Automated market research"],business_functions:["Research","Investment"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/langchain-ai/open_deep_research",github:"https://github.com/langchain-ai/open_deep_research",source_page:"/learning"},{id:"autogen",title:"Microsoft AutoGen",description:"Open-source multi-agent framework from Microsoft. Enables multiple AI agents to collaborate and solve complex tasks autonomously.",category:"AI Agents",sub_category:"Framework",type:"Framework",tags:["ai agents","multi-agent","framework","open source","microsoft","automation","build ai agents","workflow automation"],use_cases:["Build internal AI agents","Multi-agent task automation","Collaborative AI systems for enterprise"],business_functions:["Engineering","Operations"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!0,website:"https://microsoft.github.io/autogen/",github:"https://github.com/microsoft/autogen",source_page:"/learning"},{id:"magentic-one",title:"Microsoft Magentic-One",description:"Microsoft's generalist multi-agent framework built on AutoGen for web and file-based tasks. Handles complex multi-step workflows.",category:"AI Agents",sub_category:"Framework",type:"GitHub",tags:["ai agents","multi-agent","microsoft","open source","workflow automation","build ai agents"],use_cases:["Build general-purpose AI agents","Automate web-based multi-step workflows"],business_functions:["Engineering","Operations"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/microsoft/autogen/tree/main/python/packages/autogen-magentic-one",github:"https://github.com/microsoft/autogen",source_page:"/learning"},{id:"semantic-kernel",title:"Microsoft Semantic Kernel",description:"Enterprise-grade AI orchestration SDK from Microsoft supporting multiple LLMs and agent patterns.",category:"AI Agents",sub_category:"Enterprise Framework",type:"GitHub",tags:["ai agents","enterprise","microsoft","open source","framework","llm","orchestration"],use_cases:["Build enterprise AI applications","Orchestrate multiple LLMs","AI plugins for enterprise systems"],business_functions:["Engineering"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!0,website:"https://github.com/microsoft/semantic-kernel",github:"https://github.com/microsoft/semantic-kernel",s
486ource_page:"/learning"},{id:"crewai",title:"CrewAI",description:"Framework for orchestrating role-playing AI agents. Each agent has a role, goal, and tools — agents collaborate to complete complex tasks.",category:"AI Agents",sub_category:"Framework",type:"Framework",tags:["ai agents","multi-agent","framework","open source","automation","workflow automation","build ai agents"],use_cases:["Build AI agent teams","Automate multi-step research","Orchestrate specialised AI workflows"],business_functions:["Engineering","Research","Operations"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://www.crewai.com/",github:"https://github.com/crewAIInc/crewAI",source_page:"/general-ai-toolkit"},{id:"bee-agent",title:"Bee Agent Framework",description:"IBM's open-source agent framework for building production-ready AI agents with structured tools and memory.",category:"AI Agents",sub_category:"Framework",type:"GitHub",tags:["ai agents","open source","ibm","framework","production","build ai agents"],use_cases:["Build production AI agents","Enterprise-grade agent development","Structured multi-tool agents"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!0,website:"https://github.com/i-am-bee/bee-agent-framework",github:"https://github.com/i-am-bee/bee-agent-framework",source_page:"/learning"},{id:"awesome-mcp-servers",title:"Awesome MCP Servers",description:"Curated list of Model Context Protocol servers — connect AI assistants to files, databases, APIs, and business tools.",category:"AI Agents",sub_category:"MCP",type:"GitHub",tags:["mcp","ai agents","open source","integration","tools","claude","build ai agents"],use_cases:["Connect AI to enterprise systems via MCP","Discover MCP integrations","Extend AI assistant capabilities"],business_functions:["Engineering","Operations"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/punkpeye/awesome-mcp-servers",github:"https://github.com/punkpeye/awesome-mcp-servers",source_page:"/learning"},{id:"genai-agents",title:"GenAI Agents — NirDiamant",description:"Comprehensive collection of GenAI agent tutorials and implementations. Covers RAG, multi-agent, tools, and production patterns.",category:"AI Agents",sub_category:"Learning & Reference",type:"GitHub",tags:["ai agents","open source","rag","tutorials","multi-agent","build ai agents"],use_cases:["Learn to build GenAI agents","Reference implementations for AI agent patterns"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/NirDiamant/GenAI_Agents",github:"https://github.com/NirDiamant/GenAI_Agents",source_page:"/learning"},{id:"rag-techniques",title:"RAG Techniques — NirDiamant",description:"Comprehensive guide to Retrieval-Augmented Generation patterns. Practical implementations for building AI that reads your documents.",category:"AI Agents",sub_category:"RAG",type:"GitHub",tags:["rag","ai agents","open source","document analysis","knowledge management","build ai agents"],use_cases:["Build document Q&A systems","Implement RAG for private data","AI that reads your knowledge base"],business_functions:["Engineering","Research"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/NirDiamant/RAG_Techniques",github:"https://github.com/NirDiamant/RAG_Techniques",source_page:"/learning"},{id:"agents-production",title:"Agents Towards Production",description:"Practical guide for moving AI agents from prototype to production. Covers reliability, monitoring, and enterprise deployment.",category:"AI Agents",sub_category:"Production",type:"GitHub",tags:["ai agents","production","deployment","open source","enterprise","monitoring"],use_cases:["Move AI agents to production","Enterprise agent deployment patterns","Agent reliability engineering"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/NirDiamant/agents-towards-production",github:"https://github.com/NirDiamant/agents-towards-production",source_page:"/learning"},{id:"awesome-llm-apps",title:"Awesome LLM Apps Collection",description:"Curated collection of LLM applications with RAG, AI Agents, and production-ready patterns. Starting point for building business AI tools.",category:"AI Agents",sub_category:"Reference Collection",type:"GitHub",tags:["ai agents","llm","rag","open source","apps","build ai agents","reference"],use_cases:["Find LLM app patterns and templates","Reference implementations for business AI"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/Shubhamsaboo/awesome-llm-apps",github:"https://github.com/Shubhamsaboo/awesome-llm-apps",source_page:"/learning"},{id:"huggingface",title:"Hugging Face",description:"Largest open-source AI model library. Find, test, and deploy models for text, images, audio, and more.",category:"AI Agents",sub_category:"Model Hub",type:"GitHub",tags:["open source","llm","machine learning","developer","models","ai agents","build ai agents"],use_cases:["Find open-source AI models","Fine-tune LLMs on private data","Deploy custom AI models"],business_functions:["Engineering","Research"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!0,website:"https://huggingface.co/",github:"https://github.com/huggingface",source_page:"/general-ai-toolkit"},{id:"llama3",title:"Llama 3 — Meta AI",description:"Meta's free open-source AI model. Can run locally — full data privacy, no subscription, no cloud dependency.",category:"AI Agents",sub_category:"Open Weight Models",type:"GitHub",tags:["open source","llm","developer","private","ai agents","build ai agents","local"],use_cases:["Run AI locally for data privacy","Build custom internal AI tools","Self-hosted AI assistant"],business_functions:["Engineering"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://llama.meta.com/llama3/",github:"https://github.com/meta-llama/llama3",source_page:"/general-ai-toolkit"},{id:"mistral",title:"Mistral AI",description:"High-quality open-source AI models from a French company. Strong multilingual support — well-suited for European deployments.",category:"AI Agents",sub_category:"Open Weight Models",type:"Platform",tags:["open source","llm","multilingual","european","developer","build ai agents"],use_cases:["European-compl
486iant open AI models","Multilingual AI applications","Custom model deployment"],business_functions:["Engineering"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!0,website:"https://mistral.ai/",source_page:"/general-ai-toolkit"},{id:"deepseek",title:"DeepSeek",description:"Powerful open-source AI model from China. Handles long documents and images. Free alternative for high-volume or private use.",category:"AI Agents",sub_category:"Open Weight Models",type:"GitHub",tags:["open source","llm","developer","private","document analysis","build ai agents"],use_cases:["High-volume private AI processing","Long document analysis","Cost-efficient AI deployment"],business_functions:["Engineering","Research"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://github.com/deepseek-ai/DeepSeek-V2",github:"https://github.com/deepseek-ai/DeepSeek-V2",source_page:"/general-ai-toolkit"},{id:"qwen",title:"Qwen 2.5 — Alibaba",description:"Alibaba's open-source AI model with strong multilingual capabilities. Useful for businesses operating in Asian markets.",category:"AI Agents",sub_category:"Open Weight Models",type:"Platform",tags:["open source","llm","multilingual","asian markets","developer","alibaba"],use_cases:["Multilingual AI for Asian markets","Cost-efficient open-weight model deployment"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://qwen.ai/",source_page:"/general-ai-toolkit"},{id:"together-ai",title:"Together.ai",description:"Run open-source AI models in the cloud without managing infrastructure. Good for businesses needing a private, customisable AI system.",category:"AI Agents",sub_category:"Model Hosting",type:"Platform",tags:["open source","llm","cloud","infrastructure","ai models","build ai agents"],use_cases:["Deploy open-source models without infrastructure","Customisable private AI","Cost-efficient model API"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.together.ai/",source_page:"/general-ai-toolkit"},{id:"llamaindex",title:"LlamaIndex",description:"Connect your documents and databases to an AI that can query them. Used by developers to build internal knowledge-base assistants.",category:"AI Agents",sub_category:"RAG Framework",type:"Framework",tags:["rag","ai agents","open source","document analysis","knowledge management","developer","build ai agents"],use_cases:["Build internal knowledge base AI","Connect databases to LLMs","Document Q&A systems"],business_functions:["Engineering","Research"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!0,website:"https://www.llamaindex.ai/",source_page:"/general-ai-toolkit"},{id:"pinecone",title:"Pinecone",description:"Vector database optimised for AI — stores information in a way that lets AI retrieve it accurately. Used in custom AI applications.",category:"AI Agents",sub_category:"Vector Database",type:"Platform",tags:["rag","vector database","ai agents","open source","knowledge management","developer"],use_cases:["Store and retrieve AI-optimised data","Build semantic search systems","RAG application backend"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.pinecone.io/",source_page:"/general-ai-toolkit"},{id:"glm5",title:"GLM-5 — ZhipuAI",description:"ZhipuAI's frontier open-source language model. Strong multilingual reasoning — one of the leading Chinese open-weight models.",category:"AI Agents",sub_category:"Open Weight Models",type:"GitHub",tags:["open source","llm","multilingual","reasoning","developer","chinese ai"],use_cases:["Multilingual open model for business AI","Deploy sovereign AI capabilities"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://github.com/zai-org/GLM-5",github:"https://github.com/zai-org/GLM-5",source_page:"/general-ai-toolkit"},{id:"minimax-m3",title:"MiniMax M3",description:"MiniMax's frontier open-weight language model with strong reasoning and long-context c
486apabilities.",category:"AI Agents",sub_category:"Open Weight Models",type:"Platform",tags:["open source","llm","reasoning","long context","developer","frontier model"],use_cases:["Long-context document processing","Open-weight frontier model deployment"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!1,website:"https://www.minimax.io/models/text/m3",source_page:"/general-ai-toolkit"},{id:"predibase",title:"Predibase",description:"Platform for creating, deploying, and managing custom AI models including fine-tuned LLMs. Open-source core via LoRAX.",category:"AI Agents",sub_category:"Fine-tuning",type:"Platform",tags:["open source","fine-tuning","llm","custom model","deployment","developer"],use_cases:["Fine-tune LLMs on proprietary data","Deploy custom domain-specific models"],business_functions:["Engineering"],pe_relevance:"Low",implementation_complexity:"High",deployment_type:"Both",open_source:!0,enterprise_ready:!0,website:"https://predibase.com/",source_page:"/general-ai-toolkit"},{id:"openwa",title:"OpenWA",description:"Open-source WhatsApp automation library. Build bots, send automated messages, and integrate WhatsApp into business workflows.",category:"Workflow Automation",sub_category:"Messaging Automation",type:"GitHub",tags:["whatsapp","automation","messaging","open source","workflow automation","customer support"],use_cases:["Automate WhatsApp business messaging","Build customer communication bots","WhatsApp workflow integration"],business_functions:["Customer Service","Marketing"],pe_relevance:"Low",implementation_complexity:"Medium",deployment_type:"Self-hosted",open_source:!0,enterprise_ready:!1,website:"https://github.com/rmyndharis/OpenWA",github:"https://github.com/rmyndharis/OpenWA",source_page:"/general-ai-toolkit"},{id:"nabla",title:"Nabla",description:"AI clinical assistant for healthcare professionals — listens to patient consultations and generates structured medical notes automatically.",category:"Healthcare AI",sub_category:"Clinical Documentation",type:"Platform",tags:["healthcare","clinical","medical notes","automation","professional","vertical ai"],use_cases:["Automate clinical documentation","AI-assisted medical note generation","Healthcare workflow automation"],business_functions:["Operations"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.nabla.com/",source_page:"/general-ai-toolkit"},{id:"amboss",title:"Amboss AI",description:"AI medical knowledge platform for clinicians — evidence-based decision support, drug references, and diagnostic guidance.",category:"Healthcare AI",sub_category:"Clinical Decision Support",type:"Platform",tags:["healthcare","clinical","medical knowledge","diagnostic","professional","vertical ai"],use_cases:["AI-assisted clinical decision support","Medical knowledge access at point of care"],business_functions:["Operations"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.amboss.com/",source_page:"/general-ai-toolkit"},{id:"icapital",title:"iCapital",description:"Wealth technology platform enabling access to alternative investments for private banks, advisors, and institutions.",category:"Private Capital Infrastructure",sub_category:"Fund Access",type:"Platform",tags:["private equity","alternative investments","wealth management","fund access","institutional"],use_cases:["Access alternative investment funds","Automate fund subscription workflows","Digital fund distribution"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://icapital.com/",source_page:"/infrastructure"},{id:"cais",title:"CAIS",description:"Alternative investment marketplace connecting independent financial advisors to fund managers across private equity, hedge funds, and real assets.",category:"Private Capital Infrastructure",sub_category:"Fund Access",type:"Platform",tags:["private equity","alternative investments","marketplace","fund managers","advisors"],use_cases:["Connect advisors to alternative funds","Alternative investment distribution"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.caisgroup.com/",source_page:"/infrastru
486cture"},{id:"moonfare",title:"Moonfare",description:"Digital platform providing high-net-worth individuals and wealth managers access to institutional-grade private equity funds.",category:"Private Capital Infrastructure",sub_category:"Fund Access",type:"Platform",tags:["private equity","wealth management","fund access","digital","institutional"],use_cases:["Access PE funds as HNW investor","Digital PE fund subscription"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.moonfare.com/",source_page:"/infrastructure"},{id:"securitize",title:"Securitize",description:"Digital securities issuance and transfer agent platform enabling tokenization of private funds and alternative assets.",category:"Private Capital Infrastructure",sub_category:"Digital Securities",type:"Platform",tags:["tokenization","private equity","digital securities","alternative assets","blockchain"],use_cases:["Tokenize private fund interests","Digital securities issuance","Automated compliance for digital assets"],business_functions:["Investment","Legal"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://securitize.io/",source_page:"/infrastructure"},{id:"forge-global",title:"Forge Global",description:"Private securities marketplace providing price discovery, liquidity, and trading infrastructure for pre-IPO company shares.",category:"Private Capital Infrastructure",sub_category:"Secondary Markets",type:"Platform",tags:["private equity","secondary market","liquidity","pre-ipo","price discovery","trading"],use_cases:["Trade pre-IPO company shares","Price discovery for private equity","Liquidity for private holdings"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://forgeglobal.com/",source_page:"/infrastructure"},{id:"nasdaq-private-market",title:"Nasdaq Private Market",description:"Institutional-grade secondary trading infrastructure for private company shares, enabling structured liquidity programs.",category:"Private Capital Infrastructure",sub_category:"Secondary Markets",type:"Platform",tags:["private equity","secondary market","liquidity","institutional","nasdaq","trading"],use_cases:["Structured liquidity programs","Institutional private company trading","Secondary share programs"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.nasdaqprivatemarket.com/",source_page:"/infrastructure"},{id:"hiive",title:"Hiive",description:"Secondary marketplace connecting buyers and sellers of private company equity with real-time price discovery.",category:"Private Capital Infrastructure",sub_category:"Secondary Markets",type:"Platform",tags:["private equity","secondary market","liquidity","price discovery"],use_cases:["Buy and sell private company equity","Real-time pricing for private shares"],business_functions:["Investment"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://www.hiive.com/",source_page:"/infrastructure"},{id:"addx",title:"ADDX",description:"Regulated digital exchange in Singapore for private market securities, providing fractional access to pre-IPO and alternative investments.",category:"Private Capital Infrastructure",sub_category:"Digital Exchange",type:"Platform",tags:["private equity","digital exchange","alternative investments","singapore","regulated"],use_cases:["Fractional access to PE investments","Regulated digital asset exchange"],business_functions:["Investment"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://addx.co/",source_page:"/infrastructure"},{id:"obscura",title:"Obscura",description:"Headless browser for AI agents and web scraping. Delivers isolated browser sessions in milliseconds with MCP server mode, stealth, and proxy support.",category:"AI Agents",sub_category:"Browser Automation",type:"Open Source",tags:["headless browser","web scraping","ai agents","mcp","automation","open source","browser"],use_cases:["Web Scraping","Agent Browser Automation","Data Extraction","MCP Server"],business_functions:["Engineering","Research","Operations"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Both",open_source:!0,enterprise_ready:!0,website:"https://obscura.sh/",github:"https://github.com/h4ckf0r0day/obscura",source_page:"/general-ai-toolkit"},{id:"feedzai",title:"Feedzai",description:"Real-time fraud and financial crime detection platform using ML across payments, account takeover, and AML for banks and fintechs.",category:"Financial Services AI",sub_category:"Fraud Detection",type:"Platform",tags:["fraud detection","aml","financial crime","payments","real-time","banking","fintech"],use_cases:["Fraud Detection","AML","Payment Risk Management","Account Takeover Prevention"],business_functions:["Risk","Compliance","Finance"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://feedzai.com/",source_page:"/general-ai-toolkit"},{id:"featurespace",title:"Featurespace",description:"Adaptive behavioural analytics engine for fraud and AML detection. Learns 
486individual customer patterns to flag anomalies in real time.",category:"Financial Services AI",sub_category:"Fraud Detection",type:"Platform",tags:["fraud","aml","behavioural analytics","anomaly detection","banking","insurance"],use_cases:["Fraud Detection","AML","Behavioural Risk Scoring"],business_functions:["Risk","Compliance"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.featurespace.com/",source_page:"/general-ai-toolkit"},{id:"complyadvantage",title:"ComplyAdvantage",description:"AML and financial crime intelligence platform. Screens customers against sanctions, PEP lists, and adverse media in real time.",category:"Financial Services AI",sub_category:"Compliance",type:"Platform",tags:["aml","sanctions","pep","compliance","kyc","financial crime","screening"],use_cases:["AML","Sanctions Screening","KYC","Adverse Media Monitoring"],business_functions:["Compliance","Risk","Legal"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://complyadvantage.com/",source_page:"/general-ai-toolkit"},{id:"chainalysis",title:"Chainalysis",description:"Blockchain analytics for AML, compliance, and financial crime investigation. Used by banks, crypto firms, and regulators.",category:"Financial Services AI",sub_category:"Compliance",type:"Platform",tags:["blockchain","crypto","aml","compliance","financial crime","investigation"],use_cases:["AML","Crypto Compliance","Financial Crime Investigation","Sanctions Screening"],business_functions:["Compliance","Risk","Legal"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.chainalysis.com/",source_page:"/general-ai-toolkit"},{id:"ripjar",title:"Ripjar",description:"Financial crime intelligence and AML platform combining AI screening with structured and unstructured data across global sources.",category:"Financial Services AI",sub_category:"Compliance",type:"Platform",tags:["aml","financial crime","sanctions","intelligence","screening","compliance"],use_cases:["AML","Financial Crime Intelligence","Sanctions Screening"],business_functions:["Compliance","Risk"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://ripjar.com/",source_page:"/general-ai-toolkit"},{id:"sift",title:"Sift",description:"Fraud prevention platform for payments, account integrity, and content abuse. ML-based decisioning at transaction level.",category:"Financial Services AI",sub_category:"Fraud Detection",type:"Platform",tags:["fraud","payments","account integrity","ml","decisioning","ecommerce","fintech"],use_cases:["Fraud Detection","Payment Risk Management","Account Takeover Prevention"],business_functions:["Risk","Operations","Finance"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://sift.com/",source_page:"/general-ai-toolkit"},{id:"onfido",title:"Onfido",description:"AI-based identity verification and KYC. Document and biometric checks for onboarding, re-verification, and fraud prevention.",category:"Financial Services AI",sub_category:"Identity & KYC",type:"Platform",tags:["kyc","identity verification","biometrics","onboarding","fraud","compliance"],use_cases:["KYC","Identity Verification","Customer Onboarding","Fraud Prevention"],business_functions:["Compliance","Operations","Risk"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://onfido.com/",source_page:"/general-ai-toolkit"},{id:"trulioo",title:"Trulioo",description:"Global identity verification and KYC platform covering 195 countries. Used by fintechs, payments companies, and regulated institutions.",category:"Financial Services AI",sub_category:"Identity & KYC",type:"Platform",tags:["kyc","identity verification","global","onboarding","compliance","fintech"],use_cases:["KYC","Identity Verification","Global Onboarding","Compliance"],business_functions:["Compliance","Operations"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.trulioo.com/",source_page:"/general-ai-toolkit"},{id:"alloy",title:"Alloy",description:"Identity decisioning platform for banks and fintechs. Automates KYC, AML, and fraud checks across the full customer lifecycle.",category:"Financial Services AI",sub_category:"Identity & KYC",type:"Platform",tags:["kyc","aml","fraud","identity","decisioning","banking","fintech","onboarding"],use_cases:["KYC","AML","Fraud Detection","Identity Decisioning"],business_functions:["Compliance","Risk","Operations"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.alloy.com/",source_page:"/general-ai-toolkit"},{id:"zestai",title:"Zest AI",description:"AI credit underwriting platform. Improves model performance and fairness for consumer and SME lending decisions.",category:"Financial Services AI",sub_category:"Credit & Lending",type:"Platform",tags:["credit","underwriting","lending","ml","risk scoring","banking","sme"],use_cases:["Credit Underwriting","Risk Scoring","Lending Automation"],business_functions:["Risk","Finance"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.zest.ai/",source_page:"/general-ai-toolkit"},{id:"actico",title:"ACTICO",description:"Decision automation platform for credit, compliance, and risk. Operationalises rules and ML models for regulated financial institutions.",category:"Financial Services AI",sub_category:"Decision Automation",type:"Platform",tags:["decision automation","credit","compliance","risk","rules engine","regulated","ml"],use_cases:["Credit Decisioning","Compliance Automation","Risk Management"],business_functions:["Risk","Compliance","Finance"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Both",open_source:!1,enterprise_ready:!0,website:"https://actico.com/",source_page:"/general-ai-toolkit"},{id:"modelml",title:"Model ML",description:"AI workspace and finance agent for financial institutions. Covers research, analysis, and deal workflows. Trusted by leading financial services firms. YC W2024.",category:"Financial Services AI",sub_category:"AI Workspace",type:"Platform",tags:["finance agent","financial services","ai workspace","research","deal workflow","yc","investment banking"],use_cases:["Financial Research","Deal Workflow Automation","Investment Analysis","Financial Intelligence"],business_functions:["Finance","Investment","Research","Operations"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://modelml.com/",source_page:"/general-ai-toolkit"},{id:"kasisto",title:"Kasisto",description:"Conversational AI platform built for banking and financial services. Handles customer queries, account support, and financial guidance.",category:"Financial Services AI",sub_category:"Conversational AI",type:"Platform",tags:["conversational ai","banking","chatbot","customer service","virtual assistant","financial"],use_cases:["Customer Service","Conversational AI","Banking Virtual Assistant"],business_functions:["Customer Service","Operations"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://kasisto.com/",source_page:"/general-ai-toolkit"},{id:"koreai",title:"Kore.ai",description:"Enterprise conversational AI for banking, insurance, and wealth. Deploys virtual assistants across web, mobile, and voice channels.",category:"Financial Services AI",sub_category:"Conversational AI",type:"Platform",tags:["conversational ai","virtual assistant","banking","insurance","wealth","enterprise","voice"],use_cases:["Customer Service","Conversational AI","Employee Productivity"],business_functions:["Customer Service","Operations","HR"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://kore.ai/",source_page:"/general-ai-toolkit"},{id:"tifin",title:"TIFIN",description:"AI platform for wealth management — personalisation, client engagement, and investment intelligence for advisers and asset managers.",category:"Financial Services AI",sub_category:"Wealth Management",type:"Platform",tags:["wealth management","personalisation","investment","adviser","asset management","client engagement"],use_cases:["Wealth Management","Client Personalisation","Investment Intelligence"],business_functions:["Sales","Customer Service","Investment"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://tifin.com/",source_page:"/general-ai-toolkit"},{id:"zocks",title:"Zocks",description:"AI note-taking and CRM automation for wealth managers. Transcribes client meetings and extracts actionable data for advisers.",category:"Financial Services AI",sub_category:"Wealth Management",type:"Tool",tags:["wealth management","meeting notes","crm","transcription","adviser","productivity"],use_cases:["Wealth Management","Meeting Automation","CRM Automation"],business_functions:["Sales","Operations"],pe_relevance:"Medium",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.zocks.ai/",source_page:"/general-ai-toolkit"},{id:"abbyy",title:"ABBYY",description:"Intelligent document processing for financial services. Automates extraction from invoices, contracts, forms, and compliance documents.",category:"Financial Services AI",sub_category:"Document Processing",type:"Platform",tags:["document processing","ocr","extraction","invoices","contracts","compliance","automation"],use_cases:["Document Processing","Invoice Automation","Contract Extraction","Compliance Documents"],business_functions:["Finance","Operations","Compliance"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Both",open_source:!1,enterprise_ready:!0,website:"https://www.abbyy.com/",source_page:"/general-ai-toolkit"},{id:"hyperscience",title:"Hyperscience",description:"Enterprise document automation platform. Processes high-volume financial and insurance documents with ML-based extraction and validation.",category:"Financial Services AI",sub_category:"Document Processing",type:"Platform",tags:["document automation","ml","extraction","insurance","banking","high-volume","back-office"],use_cases:["Document Processing","Back-office Automation","Claims Processing"],business_functions:["Operations","Finance","Compliance"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Both",open_source:!1,enterprise_ready:!0,website:"https://hyperscience.com/",source_page:"/general-ai-toolkit"},{id:"nanonets",title:"Nanonets",description:"AI document extraction and workflow automation. Handles invoices, bank statements, and financial forms with minimal setup.",category:"Financial Services AI",sub_category:"Document Processing",type:"Tool",tags:["document extraction","invoices","bank statements","automation","ocr","workflow"],use_cases:["Document Processing","Invoice Automation","Financial Form Extraction"],business_functions:["Finance","Operations"],pe_relevance:"High",implementation_complexity:"Low",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://nanonets.com/",source_page:"/general-ai-toolkit"},{id:"collibra",title:"Collibra",description:"Data governance and intelligence platform. Manages data quality, lineage, and cataloguing for regulated financial institutions.",category:"Financial Services AI",sub_category:"Data Governance",type:"Platform",tags:["data governance","data quality","lineage","catalogue","compliance","regulated","enterprise"],use_cases:["Data Governance","Data Quality Management","Regulatory Reporting"],business_functions:["Compliance","Data","Risk"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Both",open_source:!1,enterprise_ready:!0,website:"https://www.collibra.com/",source_page:"/general-ai-toolkit"},{id:"kensho",title:"Kensho",description:"AI analytics and NLP for financial intelligence. Used by investment banks and data providers for event analytics and structured data extraction.",category:"Financial Services AI",sub_category:"Financial Analysis",type:"Platform",tags:["financial analytics","nlp","investment banking","data extraction","market intelligence"],use_cases:["Financial Analysis","Market Intelligence","Data 
486Extraction","Investment Research"],business_functions:["Research","Investment","Data"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.kensho.com/",source_page:"/general-ai-toolkit"},{id:"numerai",title:"Numerai",description:"Crowd-sourced AI hedge fund platform. Data scientists submit ML models to predict financial markets — relevant for quant and alternative data strategies.",category:"Financial Services AI",sub_category:"Quantitative Finance",type:"Platform",tags:["quant","hedge fund","ml","financial markets","crowdsourced","alternative data","prediction"],use_cases:["Financial Analysis","Quantitative Modelling","Alternative Data"],business_functions:["Investment","Research"],pe_relevance:"Medium",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!1,website:"https://numer.ai/",source_page:"/general-ai-toolkit"},{id:"dynamic-yield",title:"Dynamic Yield",description:"AI personalisation platform for financial services and retail. Delivers segment-level and individual experiences across digital channels.",category:"Financial Services AI",sub_category:"Marketing Personalisation",type:"Platform",tags:["personalisation","customer experience","marketing","financial services","digital","segmentation"],use_cases:["Marketing Personalisation","Customer Intelligence","Digital Experience"],business_functions:["Marketing","Customer Service","Sales"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.dynamicyield.com/",source_page:"/general-ai-toolkit"},{id:"braze",title:"Braze",description:"Customer engagement platform with AI-powered personalisation across email, push, SMS, and in-app channels. Used by fintechs and financial brands.",category:"Financial Services AI",sub_category:"Customer Engagement",type:"Platform",tags:["customer engagement","personalisation","email","sms","push","marketing","fintech"],use_cases:["Customer Engagement","Marketing Personalisation","Customer Retention"],business_functions:["Marketing","Customer Service","Sales"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.braze.com/",source_page:"/general-ai-toolkit"},{id:"twilio",title:"Twilio",description:"Cloud communications platform for SMS, voice, email, and messaging APIs. Used to build automated customer contact and verification workflows.",category:"Financial Services AI",sub_category:"Customer Communications",type:"Platform",tags:["sms","voice","communications","api","messaging","verification","automation"],use_cases:["Customer Communications","OTP Verification","Automated Outreach","Contact Workflows"],business_functions:["Customer Service","Operations","Marketing"],pe_relevance:"Medium",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.twilio.com/",source_page:"/general-ai-toolkit"},{id:"darktrace",title:"Darktrace",description:"AI cybersecurity platform using unsupervised ML to detect and respond to novel threats in real time. Widely used by financial institutions.",category:"Financial Services AI",sub_category:"Cybersecurity",type:"Platform",tags:["cybersecurity","threat detection","ml","network security","banking","real-time","anomaly"],use_cases:["Cybersecurity","Threat Detection","Incident Response","Network Monitoring"],business_functions:["IT Security","Risk","Compliance"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Both",open_source:!1,enterprise_ready:!0,website:"https://darktrace.com/",source_page:"/general-ai-toolkit"},{id:"crowdstrike",title:"CrowdStrike",description:"Cloud-native endpoint security and threat intelligence platform. Standard for financial services cyber risk management and incident response.",category:"Financial Services AI",sub_category:"Cybersecurity",type:"Platform",tags:["cybersecurity","endpoint security","threat intelligence","incident response","financial services"],use_cases:["Cybersecurity","Endpoint Protection","Threat Intelligence","Incident Response"],business_functions:["IT Security","Risk"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.crowdstrike.com/",source_page:"/general-ai-toolkit"},{id:"persefoni",title:"Persefoni",description:"AI-powered carbon management and ESG reporting platform for financial institutions and their portfolio companies.",category:"Financial Services AI",sub_category:"ESG & Sustainability",type:"Platform",tags:["esg","carbon","sustainability","reporting","financial institutions","portfolio","climate"],use_cases:["ESG Reporting","Carbon Management","Sustainability Analytics"],business_functions:["Compliance","Finance","Strategy"],pe_relevance:"High",implementation_complexity:"Medium",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://www.persefoni.com/",source_page:"/general-ai-toolkit"},{id:"caplight",title:"Caplight",description:"Derivatives and secondary market platform for private company equity, enabling price hedging and structured liquidity.",category:"Private Capital Infrastru
486cture",sub_category:"Secondary Markets",type:"Platform",tags:["private equity","derivatives","secondary market","hedging","liquidity","structured"],use_cases:["Hedge private equity positions","Structured liquidity for PE holdings"],business_functions:["Investment","Finance"],pe_relevance:"High",implementation_complexity:"High",deployment_type:"Cloud",open_source:!1,enterprise_ready:!0,website:"https://caplight.com/",source_page:"/infrastructure"}],NK=[{id:"legora",title:"Legora",description:"AI workspace for legal teams supporting legal research, document review, drafting and collaborative legal workflows.",category:"Professional & Vertical AI",sub_category:"Legal",type:"Platform",tags:["legal","legal research","document review","drafting","legal workflows"],use_cases:["Legal research","Review legal documents","Draft legal work","Coordinate legal workflows"],business_functions:["Legal"],website:"https://legora.com/",source_page:"/general-ai-toolkit",valueCreationLevers:["productivity","scalability"],businessFunctions:["Legal"],audience:"portfolio-company",stackType:"value-creation"},{id:"evenup",title:"EvenUp",description:"AI platform focused on personal injury legal workflows, including case preparation and demand-package generation.",category:"Professional & Vertical AI",sub_category:"Legal",type:"Platform",tags:["legal","personal injury","case preparation","demand packages","legal workflows"],use_cases:["Prepare personal injury cases","Generate demand packages","Organise legal case workflows"],business_functions:["Legal"],website:"https://www.evenuplaw.com/",source_page:"/general-ai-toolkit",valueCreationLevers:["productivity","scalability"],businessFunctions:["Legal"],audience:"portfolio-company",stackType:"value-creation"},{id:"basis-accounting",title:"Basis",description:"AI platform for accounting workflows using AI agents to support repetitive and knowledge-intensive accounting work.",category:"Finance & Data",sub_category:"Accounting",type:"Platform",tags:["accounting","finance","ai agents","workflow automation","financial operations"],use_cases:["Automate accounting workflows","Support repetitive accounting work","Assist knowledge-intensive finance tasks"],business_functions:["Finance","Accounting"],website:"https://www.getbasis.ai/",source_page:"/general-ai-toolkit",valueCreationLevers:["margin-expansion","productivity"],businessFunctions:["Finance","Accounting"],audience:"portfolio-company",stackType:"value-creation"},{id:"rillet",title:"Rillet",description:"AI-native ERP and accounting platform designed to automate finance workflows, reporting and financial operations.",category:"Finance & Data",sub_category:"Finance / Accounting",type:"Platform",tags:["finance","accounting","erp","reporting","financial operations","automation"],use_cases:["Automate finance workflows","Support financial reporting","Manage accounting operations"],business_functions:["Finance","Accounting"],website:"https://www.rillet.com/",source_page:"/general-ai-toolkit",valueCreationLevers:["margin-expansion","productivity"],businessFunctions:["Finance","Accounting"],audience:"portfolio-company",stackType:"value-creation"},{id:"black-ore",title:"Black Ore",description:"AI platform focused on automating tax preparation and accounting workflows for professional firms.",category:"Professional & Vertical AI",sub_category:"Tax & Accounting",type:"Platform",tags:["tax","accounting","tax preparation","professional services","workflow automation"],use_cases:["Automate tax preparation","Support accounting workflows","Standardise professional services delivery"],business_functions:["Finance","Accounting"],website:"https://www.blackore.ai/",source_page:"/general-ai-toolkit",valueCreationLevers:["margin-expansion","productivity"],businessFunctions:["Finance","Accounting"],audience:"portfolio-company",stackType:"value-creation"},{id:"kick-accounting",title:"Kick",description:"AI-powered bookkeeping and financial operations platform designed to automate accounting workflows for businesses.",category:"Finance & Data",sub_category:"Accounting",type:"Platform",tags:["bookkeeping","accounting","finance","financial operations","automation"],use_cases:["Automate bookkeeping","Support financial operations","Streamline accounting workflows"],business_functions:["Finance","Accounting"],website:"https://kick.co/",source_page:"/general-ai-toolkit",valueCreationLevers:["margin-expansion","productivity"],businessFunctions:["Finance","Accounting"],audience:"portfolio-company",stackType:"value-creation"},{id:"fieldguide",title:"Fieldguide",description:"AI-powered platform for audit and advisory firms supporting engagement workflows, evidence management and professional services delivery.",category:"Professional & Vertical AI",sub_category:"Audit",type:"Platform",tags:["audit","advisory","evidence management","professional services","engagement workflows"],use_cases:["Manage audit engagements","Coordinate audit evidence","Support advisory delivery"],business_functions:["Finance","Risk"],website:"https://www.fieldguide.io
486/",source_page:"/general-ai-toolkit",valueCreationLevers:["productivity","risk-reduction"],businessFunctions:["Finance","Risk"],audience:"portfolio-company",stackType:"value-creation"},{id:"distyl",title:"Distyl",description:"Enterprise AI platform focused on deploying AI systems into complex operational workflows and existing enterprise environments.",category:"Operations & Workflow",sub_category:"Enterprise AI",type:"Platform",tags:["enterprise ai","operations","workflow","deployment","enterprise systems"],use_cases:["Deploy AI in operational workflows","Integrate AI with enterprise environments","Support enterprise AI programmes"],business_functions:["Operations","IT"],website:"https://distyl.ai/",source_page:"/general-ai-toolkit",valueCreationLevers:["productivity","scalability"],businessFunctions:["Operations","IT"],audience:"portfolio-company",stackType:"value-creation"},{id:"aaru",title:"Aaru",description:"AI platform for modelling and simulating customer and market behaviour to support research, strategy and commercial decision-making.",category:"Revenue & Sales",sub_category:"Commercial Intelligence",type:"Platform",tags:["commercial intelligence","customer behaviour","market behaviour","simulation","strategy"],use_cases:["Model customer behaviour","Simulate market scenarios","Support commercial research"],business_functions:["Sales","Marketing","Strategy"],website:"https://aaru.com/",source_page:"/general-ai-toolkit",valueCreationLevers:["revenue-growth","productivity"],businessFunctions:["Sales","Marketing","Strategy"],audience:"portfolio-company",stackType:"value-creation"},{id:"hadrius",title:"Hadrius",description:"AI-powered compliance platform for financial institutions and regulated firms, supporting monitoring, communications review and compliance workflows.",category:"Financial Services & Risk",sub_category:"Compliance",type:"Platform",tags:["compliance","financial services","monitoring","communications review","regulated firms"],use_cases:["Monitor compliance workflows","Review communications","Support regulated operations"],business_functions:["Compliance","Risk"],website:"https://www.hadrius.com/",source_page:"/general-ai-toolkit",valueCreationLevers:["risk-reduction","productivity"],businessFunctions:["Compliance","Risk"],audience:"portfolio-company",stackType:"value-creation"},{id:"norm-ai",title:"Norm AI",description:"AI platform that converts regulatory requirements into executable compliance workflows and controls.",category:"Financial Services & Risk",sub_category:"Compliance / Regulatory Intelligence",type:"Platform",tags:["compliance","regulation","regulatory intelligence","controls","workflow automation"],use_cases:["Translate regulations into workflows","Operationalise compliance controls","Manage regulatory requirements"],business_functions:["Compliance","Risk"],website:"https://www.norm.ai/",source_page:"/general-ai-toolkit",valueCreationLevers:["risk-reduction","scalability"],businessFunctions:["Compliance","Risk"],audience:"portfolio-company",stackType:"value-creation"}];Lm.push(...NK);const B5=[{id:"VIDEO_CREATION",label:"Video Creation",keywords:["video","movie","clip","youtube","training video","demo video","recording","avatar","reel","short","podcast","vlog","animation","explainer","shorts","tiktok","instagram","captions","subtitle","editing","film","footage","presenter","talking head","screen record"],categories:["Marketing & Content","Video Generation"],suggestedChip:"Marketing Content"},{id:"FINANCE_AUTOMATION",label:"Finance & Accounting",keywords:["invoice","accounting","finance","budget","forecast","cash","reporting","bookkeeping","expense","erp","financial","payroll","revenue","profit","loss","balance","p&l","cash flow","automate finance","finance report","esg","compliance reporting"],categories:["Finance","Data Analysis"],suggestedChip:"Automate Finance"},{id:"CUSTOMER_SUPPORT",label:"Customer Support",keywords:["customer","support","helpdesk","ticket","chatbot","faq","service desk","customer service","chat","response","query","complaint","refund","customer query","live chat","bot"],categories:["Customer Service","Workflow Automation"],suggestedChip:"Customer Support"},{id:"SALES",label:"Sales & Prospecting",keywords:["crm","lead","prospect","pipeline","sales","outreach","follow up","cold email","deal","opportunity","close","conversion","quota","revenue","account","contact enrichment","prospecting","investor"],categories:["Sales","Enterprise AI"],suggestedChip:"Sales Prospecting"},{id:"MARKETING",label:"Marketing & Content",keywords:["marketing","content","social media","linkedin","post","campaign","brand","copy","copywriting","ad","advertisement","newsletter","email marketing","seo","blog","landing page copy","social","instagram","twitter","engagement","audience"],categories:["Marketing & Content"],suggestedChip:"Marketing Content"},{id:"LEGAL_RESEARCH",label:"Legal Research",keywords:["legal research","legal ai","lawyer","law firm","legal team","case law","jurisprudence","legal reasoning","legal assistant","legal document","legal analysis"],categories:["Due Diligence"],subcategories:["Legal AI"],suggestedChip:"Legal Research"},{id:"DOCUMENT_ANALYSIS",label:"Document Analysis",keywords:["pdf","contract","document","report","legal","analyse","summary","read","extract","highlight","clause","review","data room","cim","memo","due diligence document","nda","agreement","filing"],categories:["Due Diligence","Knowledge Management"],suggestedChip:"Document Analysis"},{id:"WORKFLOW_AUTOMATION",label:"Workflow Automation",keywords:["workflow","automation","process","integration","connect","approval","manual work","repetitive","zap","trigger","automate","rpa","back office","handoff","route","schedule","batch"],categories:["Workflow Automation"],suggestedChip:"Workflow Automation"},{id:"AI_AGENTS",label:"AI Agents & Frameworks",keywords:["agent","multi agent","assistant","autonomous","crew","agentic","build agent","langchain","langgraph","autogen","crewai","orchestrate","tool use","reasoning","framework","open source agent"],
486categories:["AI Agents"],suggestedChip:"AI Agents"},{id:"KNOWLEDGE_MANAGEMENT",label:"Knowledge Management",keywords:["knowledge","wiki","notes","research base","internal search","documentation","knowledge base","search internal","company knowledge","institutional memory","information retrieval","enterprise search"],categories:["Knowledge Management"],suggestedChip:"Knowledge Management"},{id:"HR_RECRUITING",label:"HR & Recruiting",keywords:["hr","human resources","recruiting","hiring","talent","candidate","resume","cv","interview","onboarding","workforce","headcount","employee","performance","payroll","people","team"],categories:["HR & Recruiting"],suggestedChip:"HR & Recruiting"},{id:"DUE_DILIGENCE",label:"Due Diligence & Research",keywords:["due diligence","diligence","deal","target","acquisition","m&a","private equity","investment","ic memo","sector","market map","portfolio","thesis","data room","commercial","financial diligence"],categories:["Due Diligence","Research"],suggestedChip:"Due Diligence"},{id:"DATA_ANALYSIS",label:"Data & Business Intelligence",keywords:["data","dashboard","analytics","bi","visualise","chart","kpi","metric","report","database","sql","query","insight","graph","spreadsheet","excel","forecast model"],categories:["Finance","Data Analysis"],suggestedChip:"Data Analysis"},{id:"CODING",label:"Coding & Development",keywords:["code","coding","developer","software","programming","github","build app","api","backend","frontend","deploy","debug","engineering","pull request","test","ci/cd"],categories:["Coding","AI Agents"],suggestedChip:"AI Agents"},{id:"CYBERSECURITY",label:"Cybersecurity",keywords:["security","cyber","penetration","pentest","vulnerability","risk","threat","compliance security","audit","breach","attack"],categories:["Cybersecurity"],suggestedChip:"Due Diligence"},{id:"WEBSITE_BUILDING",label:"Website & Digital",keywords:["website","landing page","web app","site","prototype","ui","web design","publish","online presence","no-code","nocode","framer","webflow","build website"],categories:["Website & Digital","Marketing & Content"],suggestedChip:"Marketing Content"},{id:"FRAUD_DETECTION",label:"Fraud & Financial Crime",keywords:["fraud","fraud detection","payment fraud","financial crime","aml","anti money laundering","money laundering","account takeover","transaction monitoring","risk scoring","reduce payment fraud","detect fraud","fraud prevention"],categories:["Financial Services AI","Cybersecurity"],suggestedChip:"Due Diligence"},{id:"KYC_COMPLIANCE",label:"KYC & Compliance",keywords:["kyc","know your customer","identity verification","onboarding","sanctions","pep","aml compliance","regulatory compliance","automate kyc","improve aml","compliance automation","customer due diligence","cdd","ekyc"],categories:["Financial Services AI"],suggestedChip:"Due Diligence"},{id:"FINANCIAL_DOCUMENTS",label:"Financial Document Automation",keywords:["automate financial documents","document extraction","invoice processing","bank statement","financial form","ocr finance","document automation","intelligent document","idp","nanonets","abbyy"],categories:["Financial Services AI","Workflow Automation"],suggestedChip:"Workflow Automation"},{id:"WEALTH_MANAGEMENT",label:"Wealth Management AI",keywords:["wealth management","adviser","advisor","wealth","investment adviser","client meeting","portfolio personalisation","ai for wealth","wealth manager","financial adviser"],categories:["Financial Services AI"],suggestedChip:"Due Diligence"},{id:"PRESENTATIONS",label:"Presentations & Slides",keywords:["presentation","slide","deck","powerpoint","pitch deck","keynote","investor deck","board presentation","slides"],categories:["Marketing & Content"],suggestedChip:"Marketing Content"}];function ou(e){return e.toLowerCase().replace(/[^a-z0-9\s&]/g," ").replace(/\s+/g," ").trim()}function lu(e){return e.endsWith("ies")?e.slice(0,-3)+"y":e.endsWith("ses")||e.endsWith("xes")||e.endsWith("ches")||e.endsWith("shes")?e.slice(0,-2):e.endsWith("s")&&e.length>4?e.slice(0,-1):e}function IK(e){const t=ou(e),n=t.split(/\s+/).map(lu);let i=null,a=0;for(const s of B5){let o=0;for(const l of s.keywords){const c=ou(l);if(t.includes(c))o+=c.includes(" ")?3:1;else{const d=c.split(/\s+/).map(lu);for(const u of d)n.includes(u)&&u.length>2&&(o+=1)}}o>a&&(a=o,i=s)}return a>=1?i:null}function SK(e){const t=ou(e),n=t.split(/\s+/).map(lu);return B5.map(i=>{let a=0;for(const s of i.keywords){const o=ou(s);if(t.includes(o))a+=o.includes(" ")?3:1;else{const l=o.split(/\s+/).map(lu);for(const c of l)n.includes(c)&&c.length>2&&(a+=1)}}return{intent:i,score:a}}).filter(i=>i.score>0).sort((i,a)=>a.score-i.score).slice(0,3).map(i=>i.intent)}function tN(e){return ou(e).split(/\s+/).map(lu).filter(t=>t.length>2)}const Bn="#D4A843",nN=["Automate Finance","Customer Support","Sales Prospecting","Marketing Content","HR & Recruiting","Document Analysis","AI Agents","Workflow Automation","Knowledge Management","Due Diligence","Legal Research","Data Analysis","Create Marketing Videos","Build AI Agents","Internal Productivity"],CK={"AI Assistants":"#6366f1","Due Diligence":"#D4A843","Workflow Automation":"#22c55e","AI Agents":"#f59e0b","Knowledge Management":"#3b82f6",Finance:"#10b981",Sales:"#8b5cf6","HR & Recruiting":"#ec4899",Coding:"#06b6d4",Cybersecurity:"#ef4444",Research:"#84cc16","Enterprise AI":"#D4A843","Data Analysis":"#14b8a6","Marketing & Content":"#f97316","Website & Digital":"#a78bfa","Video Generation":"#f97316","Financial Services AI":"#0ea5e9"};function EK(e,t,n,i){let a=0;n.length>0&&n.includes(e.category)&&(a+=6),e.sub_category&&i.includes(e.sub_category)&&(a+=8);const s=[e.title,e.description,e.sub_category??"",...e.tags,...e.use_cases,...e.business_functions??[]].concat(e.businessFunctions??[],e.valueCreationLevers??[],e.companySize??[],e.industryFit??[],e.deployment??[],e.aiMaturity??[],e.integrationRequirements??[],e.securityConsiderations??[]).join(" ").toLowerCase();for(const o of t)o.length<2||(e.title.toLowerCase().includes(o)?a+=4:e.category.toLowerCase().includes(o)?a+=3:e.tags.some(l=>l.includes(o))||e.use_cases.some(l=>l.toLowerCase().includes(o))?a+=2:s.includes(o)&&(a+=1));return a}
486function _K(e,t,n){const i=e.use_cases.find(s=>t.some(o=>s.toLowerCase().includes(o)));if(i)return i;if(n)return`Matches intent: ${n}`;const a=e.tags.find(s=>t.some(o=>s.includes(o)));return a?`Relevant for: ${a}`:e.description.split(".")[0]}function $5({compact:e=!1}){const[t,n]=j.useState(""),[i,a]=j.useState(null);function s(d){const u=d.trim();if(!u)return;const p=IK(u),m=tN(u),f=(p==null?void 0:p.categories)??[],x=(p==null?void 0:p.subcategories)??[],h=(p==null?void 0:p.label)??null,g=Lm.find(A=>A.title.toLowerCase()===u.toLowerCase()),y=x.length>0?Lm.filter(A=>A.sub_category&&x.includes(A.sub_category)):Lm,v=g?[g]:y.map(A=>({tool:A,score:EK(A,m,f,x)})).filter(A=>A.score>0).sort((A,w)=>w.score-A.score).slice(0,x.length>0?void 0:5).map(A=>A.tool);let b=[];v.length===0&&(b=SK(u).map(w=>w.suggestedChip).filter(Boolean),b=Array.from(new Set(b))),a({results:v,intentLabel:h,noResults:v.length===0,suggestedChips:b})}function o(d){n(d),s(d)}function l(){n(""),a(null)}const c=tN(t);return r.jsxs("div",{className:`${e?"":"w-full"} navigator-shell`,children:[!e&&r.jsxs("div",{className:"mb-8",children:[r.jsx("p",{className:"text-xs tracking-widest uppercase font-semibold mb-3",style:{color:Bn},children:"AI Solution Navigator"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-3 tracking-tight",children:"Find the right AI tools for your business challenge."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl leading-relaxed",children:"Describe what you want to achieve and discover the most relevant AI tools, GitHub projects, and operating frameworks curated by PrivateEquity.AI."})]}),r.jsxs("div",{className:"flex gap-2 mb-4",children:[r.jsxs("div",{className:"relative flex-1",children:[r.jsx(tp,{className:"absolute left-3.5 top-1/2 -translate-y-1/2 h-4 w-4 text-[#555555] pointer-events-none"}),r.jsx("input",{type:"text",value:t,onChange:d=>n(d.target.value),onKeyDown:d=>d.key==="Enter"&&s(t),placeholder:e?"What are you trying to achieve?":"e.g. Create marketing videos  ·  Automate accounting  ·  Build internal AI agents",className:"navigator-search w-full border rounded-xl pl-10 pr-10 py-3.5 text-sm text-white outline-none focus:border-[#D4A843]/50 transition-colors"}),t&&r.jsx("button",{onClick:l,className:"absolute right-3.5 top-1/2 -translate-y-1/2 text-[#777777] hover:text-white transition-colors",children:r.jsx(ac,{className:"h-4 w-4"})})]}),r.jsxs("button",{onClick:()=>s(t),className:"navigator-action px-5 py-3.5 rounded-xl text-sm font-semibold text-black hover:opacity-90 flex-shrink-0 flex items-center gap-2",style:{backgroundColor:Bn},children:["Find Solutions",r.jsx(qt,{className:"h-4 w-4"})]})]}),r.jsx("div",{className:"flex flex-wrap gap-2 mb-8",children:nN.map(d=>r.jsx("button",{onClick:()=>o(d),className:"navigator-chip text-xs px-3 py-1.5 rounded-full border hover:text-white",style:t===d?{backgroundColor:"rgba(196,151,58,0.15)",borderColor:`${Bn}60`,color:Bn}:{borderColor:"rgba(255,255,255,0.12)",color:"#9A9A9A",backgroundColor:"transparent"},children:d},d))}),i&&r.jsxs("div",{children:[i.intentLabel&&i.results.length>0&&r.jsxs("div",{className:"flex items-center gap-2 mb-4",children:[r.jsx(vD,{className:"h-3.5 w-3.5 flex-shrink-0",style:{color:Bn}}),r.jsxs("p",{className:"text-xs text-[#BBBBBB]",children:["Intent detected: ",r.jsx("span",{className:"font-semibold",style:{color:Bn},children:i.intentLabel})," ","— showing the ",i.results.length," most relevant tool",i.results.length!==1?"s":"",' for "',t,'"']})]}),i.noResults?r.jsxs("div",{className:"navigator-card bg-[#0D0D0D] border border-white/8 rounded-xl p-8 text-center",children:[r.jsx("p",{className:"text-sm text-[#BBBBBB] mb-4",children:"No tools found for that query. Try one of these topics:"}),i.suggestedChips.length>0?r.jsx("div",{className:"flex flex-wrap gap-2 justify-center",children:i.suggestedChips.map(d=>r.jsx("button",{onClick:()=>o(d),className:"navigator-chip text-xs px-3 py-1.5 rounded-full border hover:text-white",style:{borderColor:`${Bn}50`,color:Bn,backgroundColor:"rgba(196,151,58,0.07)"},children:d},d))}):r.jsx("div",{className:"flex flex-wrap gap-2 justify-center",children:nN.slice(0,6).map(d=>r.jsx("button",{onClick:()=>o(d),className:"navigator-chip text-xs px-3 py-1.5 rounded-full border hover:text-white",style:{borderColor:"rgba(255,255,255,0.15)",color:"#9A9A9A"},children:d},d))})]}):r.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-4",children:i.results.map(d=>{const u=CK[d.category]??Bn,p=_K(d,c,i.intentLabel??void 0);return r.jsxs("div",{className:"dense-card navigator-card bg-[#111111] rounded-xl p-5 border border-white/10 hover:border-[#D4A843]/35 flex flex-col",children:[r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-[10px] font-semibold uppercase tracking-widest px-2 py-1 rounded",style:{color:u,backgroundColor:`${u}18`},children:d.category}),r.jsx("span",{className:"text-[10px] text-[#555555] font-medium uppercase tracking-widest",children:d.type})]}),r.jsx("h3",{className:"text-sm font-semibold text-white mb-2 leading-snug",children:d.title}),r.jsx("p",{className:"text-xs text-[#BBBBBB] leading-relaxed mb-3 flex-1",children:d.description}),r.jsxs("div",{className:"rounded-lg px-3 py-2 mb-4 text-xs leading-relaxed",style:{backgroundColor:"rgba(196,151,58,0.07)",borderLeft:`2px solid ${Bn}40`},children:[r.jsx("span",{className:"font-semibold",style:{color:Bn},children:"Why this matches: "}),r.jsx("span",{className:"text-[#CCCCCC]",children:p})]}),r.jsxs("div",{className:"flex gap-2 mt-auto",children:[r.jsxs("a",{href:d.website,target:"_blank",rel:"nofollow noopener noreferrer",className:"flex-1 flex items-center justify-center gap-1.5 text-xs font-semibold py-2 rounded-lg border hover:opacity-90",style:{borderColor:`${Bn}50`,color:Bn},children:[r.jsx(S,{className:"h-3 w-3"}),"Website"]}),d.github&&r.jsxs("a",{href:d.github,target:"_blank",rel:"nofollow noopener noreferrer",className:"flex items-center justify-center gap-1.5 text-xs font-medium py-2 px-3 rounded-lg border border-white/15 text-[#BBBBBB] hover:text-white hover:border-white/30",children:[r.jsx(Xq,{className:"h-3 w-3"}),"GitHub"]})]})]},d.id)})}),!i.noResults&&r.jsx("p",{className:"text-xs text-[#555555] mt-6 leading-relaxed",children:"Educational resource only. PrivateEquity.AI does not endorse or provide warranty for third-party tools. All recommendations are drawn from our curated internal 
486catalog. No external APIs or AI inference used."})]})]})}const Rs="#D4A843";function PK(e){try{return new URL(e).hostname.replace(/^www\./,"")}catch{return""}}const TK=({url:e,name:t})=>{const[n,i]=j.useState(!1),a=PK(e);return n||!a?r.jsx("div",{className:"w-6 h-6 rounded flex items-center justify-center text-xs font-bold flex-shrink-0 bg-white/5",style:{color:Rs},children:t.charAt(0)}):r.jsx("img",{src:`https://www.google.com/s2/favicons?domain=${a}&sz=64`,alt:t,className:"w-6 h-6 rounded object-contain flex-shrink-0",loading:"lazy",decoding:"async",onError:()=>i(!0)})},DK=[{label:"GROW REVENUE",detail:"Sales · Marketing · Pricing · Customer Intelligence",href:"#revenue-sales"},{label:"EXPAND MARGINS",detail:"Process Automation · Customer Service · Operational Efficiency",href:"#operations-workflow"},{label:"TRANSFORM G&A",detail:"Finance · Accounting · Legal · HR · Procurement",href:"#finance-data"},{label:"IMPROVE DECISION-MAKING",detail:"Analytics · Knowledge · Research · Forecasting",href:"#knowledge-research"},{label:"REDUCE RISK",detail:"Compliance · Audit · Cybersecurity · Regulatory Intelligence",href:"#financial-services-risk"},{label:"BUILD AI CAPABILITY",detail:"Agents · Workflow Infrastructure · Data · Developer Stack",href:"#ai-developer-stack"}],U5=[{name:"ChatGPT",description:"AI assistant by OpenAI for writing emails, drafting documents, answering questions, and automating everyday business tasks.",url:"https://chat.openai.com",testId:"g-chatgpt"},{name:"Claude",description:"AI assistant by Anthropic — excellent for reading and summarising long documents, contracts, and reports. Clear, structured output.",url:"https://claude.ai",testId:"g-claude"},{name:"Gemini",description:"Google's AI assistant. Works with documents, images, and integrates directly with Gmail, Docs, and Drive.",url:"https://gemini.google.com",testId:"g-gemini"},{name:"Perplexity",description:"AI-powered search engine that gives direct answers with cited sources. Useful for quick market research and competitor checks.",url:"https://www.perplexity.ai",testId:"g-perplexity"},{name:"NotebookLM",description:"Upload your documents (PDFs, reports, presentations) and ask questions about them. Google's AI reads and explains your files.",url:"https://notebooklm.google.com",testId:"g-notebooklm"},{name:"K2 Think",description:"Open-source AI reasoning model with transparent training data. Alternative to proprietary models for privacy-conscious users.",url:"https://www.k2think.ai/k2think",testId:"g-k2think"},{name:"Kimi",description:"AI assistant that handles very long documents — useful when you need to analyse an entire report or legal contract in one go.",url:"https://www.kimi.com/",testId:"g-kimi"},{name:"Kimi K2",description:"Moonshot AI's frontier open-weight model with 1T parameters. Strong coding, reasoning, and agentic capabilities — one of the most capable open models available.",url:"https://www.kimi.com/it-it/resources/kimi-k2-7-code",testId:"g-kimik2"},{name:"Kimi K3",description:"Moonshot AI's most capable model — 2.8T parameter MoE with native vision and 1M token context. Stronger reasoning and multimodal capabilities than K2.",url:"https://www.kimi.com/blog/kimi-k3",testId:"g-kimik3"},{name:"Manus",description:"AI assistant that can take actions on your behalf — browsing, researching, and completing multi-step business tasks automatically.",url:"https://manus.im/",testId:"g-manus"},{name:"HyperWrite",description:"AI assistant for writing and research that learns your style over time. Good for recurring content and email workflows.",url:"https://www.hyperwriteai.com/personal-assistant",testId:"g-hyperwrite"},{name:"Z.ai Chat",description:"Conversational AI assistant for research, writing, and business thinking. Clean interface, useful for daily tasks.",url:"https://chat.z.ai/",testId:"g-zai"},{name:"Abacus.AI",description:"AI platform for automating business processes and building custom AI applications. More technical — suitable for companies with IT resources.",url:"https://abacus.ai/",testId:"g-abacusai"},{name:"Chatsonic",description:"AI chat assistant with live web search. Combines AI responses with up-to-date information from the internet.",url:"https://writesonic.com/chat",testId:"g-chatsonic"},{name:"AnythingLLM",description:"Run an AI assistant locally on your own computer — keeps your documents and data private, without sending anything to the cloud.",url:"https://anythingllm.com/",testId:"g-anythingllm"}],q5=[{name:"Beautiful.ai",description:"Create business presentations with AI-designed slide templates. Clean output, fast to build.",url:"https://www.beautiful.ai",testId:"g-beautifulai"},{name:"Canva AI",description:"Design graphics, social posts, and presentations with AI. No design skills needed — the most popular tool for non-designers.",url:"https://www.canva.com/ai-image-generator/",testId:"g-canva"},{name:"DALL-E 3",description:"Generate original images from a text description. Useful for marketing visuals, social media, and presentations.",url:"https://openai.com/dall-e-3",testId:"g-dalle3"},{name:"Figma AI",description:"Professional design tool for websites, apps, and visual mockups — now with AI features. Used by design agencies and product teams.",url:"https://www.figma.com/ai",testId:"g-figma"},{name:"Midjourney",description:"Create high-quality, artistic images from text prompts. One of the best tools for striking visual content.",url:"https://www.midjourney.com",testId:"g-midjourney"},{name:"RunwayML",description:"Generate and edit short video clips with AI. Useful for marketing content, demos, and social media videos.",url:"https://runwayml.com",testId:"g-runway"},{name:"Seedance 2.0",description:"Create short AI-generated videos combining images, video clips, and audio. Good for product showcases and ads.",url:"https://seedance2.ai",testId:"g-seedance"},{name:"Stability AI",description:"Free, open-source AI for generating images (Stable Diffusion). Privacy-friendly — 
486can be run on your own hardware.",url:"https://stability.ai/",testId:"g-stabilityai"},{name:"Flair.ai",description:"Generate branded product photos and marketing visuals with AI. Upload your product, set the scene, get the shot.",url:"https://flair.ai/",testId:"g-flairai"},{name:"AdCreative.ai",description:"Generate ready-to-publish ad images and copy for social media and digital campaigns. Optimised for conversion.",url:"https://www.adcreative.ai/",testId:"g-adcreative"},{name:"Pencil",description:"Generate ad creatives and predict which visuals will perform best before you spend your budget.",url:"https://trypencil.com/",testId:"g-pencil"},{name:"Predis.ai",description:"Create social media posts and ads from a product link or short description. Covers images, captions, and scheduling.",url:"https://predis.ai/",testId:"g-predisai"},{name:"Simplified",description:"All-in-one tool for graphic design, video editing, and copywriting. Good if you want one platform for all content needs.",url:"https://simplified.com/",testId:"g-simplified"},{name:"Munch Studio",description:"AI creative studio for producing on-brand visual assets and social content at scale.",url:"https://www.munchstudio.com/",testId:"g-munchstudio"},{name:"HeyGen",description:"Create professional training or marketing videos using AI avatars — no camera or studio needed.",url:"https://www.heygen.com",testId:"g-heygen"},{name:"Synthesia",description:"Turn a script into a polished video with an AI presenter. Used for onboarding, training, and product explainers.",url:"https://www.synthesia.io",testId:"g-synthesia"},{name:"Captions.ai",description:"Add AI-generated animated captions to your videos automatically. Popular for Instagram Reels, TikTok, and YouTube Shorts.",url:"https://captions.ai/",testId:"g-captions"},{name:"Vizard.ai",description:"Turn long videos (webinars, interviews, podcasts) into short social media clips automatically. Saves hours of editing time.",url:"https://vizard.ai/",testId:"g-vizard"},{name:"Kili.ng",description:"AI writing assistant for creating marketing content, social posts, and copy in multiple languages. Fast, simple interface.",url:"https://kilng.ai/",testId:"g-kilng"},{name:"Descript",description:"Edit a video or podcast by editing the transcript — delete words in the text, they disappear from the video.",url:"https://www.descript.com",testId:"g-descript"},{name:"ElevenLabs",description:"Convert text to natural-sounding speech. Clone your voice or choose from hundreds of voices for content and presentations.",url:"https://elevenlabs.io",testId:"g-elevenlabs"},{name:"Boomy",description:"Create original background music in seconds — no music knowledge required. Useful for videos and content.",url:"https://boomy.com/",testId:"g-boomy"},{name:"OpusClip",description:"Turn long videos (webinars, interviews, podcasts) into short, shareable clips automatically. AI picks the best moments.",url:"https://www.opus.pro",testId:"g-opus"},{name:"Copy.ai",description:"AI copywriting for marketing and sales — generate landing page copy, email sequences, ads, and social captions fast.",url:"https://www.copy.ai",testId:"g-copyai"},{name:"Leonardo AI",description:"AI image generation with fine-tuned style models. Good for game assets, concept art, and design variations.",url:"https://leonardo.ai",testId:"g-leonardoai"},{name:"Recraft",description:"Generate logos, icons, vectors, and flat illustrations with AI. Outputs are editable and brand-consistent.",url:"https://www.recraft.ai",testId:"g-recraft"},{name:"Flux",description:"Next-generation AI image generator with ultra-high resolution and broad style flexibility. Used by professional designers.",url:"https://flux-ai.io",testId:"g-flux"},{name:"Ideogram",description:"AI image generator that handles text inside images — useful for poster design, banners, and typographic visuals.",url:"https://ideogram.ai",testId:"g-ideogram"},{name:"Playground AI",description:"User-friendly AI design canvas with drag-and-drop editing and style presets. Good for social media and marketing visuals.",url:"https://playground.com",testId:"g-playground"},{name:"Nano Banana",description:"AI image editor powered by Gemini — edit and retouch images using natural language instructions.",url:"https://nanobanana.ai",testId:"g-nanobanana"}],G5=[{name:"HubSpot AI",description:"CRM with AI built in — tracks contacts, automates sales follow-ups, and generates marketing content. Good starting point for SMEs.",url:"https://www.hubspot.com/artificial-intelligence",testId:"g-hubspot"},{name:"Salesforce Einstein",description:"AI layer inside Salesforce CRM for sales forecasting, lead scoring, and customer workflow automation. Enterprise-grade.",url:"https://www.salesforce.com/products/einstein/",testId:"g-salesforce"},{name:"Saikoo CRM",description:"Financial CRM for Italian SMEs — combines customer and prospect management with official company data, financial indicators, and EBITDA-based analysis.",url:"https://apps.apple.com/it/app/saikoo-crm/id6758054592?l=en-GB",testId:"g-saikoo"}],H5=[{name:"SiteGPT",description:"Add an AI chatbot to your website, trained on your own content. Answers customer questions automatically, 24/7.",url:"https://sitegpt.ai/",testId:"g-sitegpt"},{name:"Chatbase",description:"Build a chatbot from your PDFs, help docs, or website pages. Embed it on your site to handle customer queries.",url:"https://www.chatbase.co/",testId:"g-chatbase"}],z5=[{name:"Fathom",description:"Joins your video calls, records, transcribes, and summarises them instantly. Free plan available — one of the most popular meeting AI tools.",url:"https://www.fathom.ai/",testId:"g-fathom"},{name:"Fireflies.ai",description:"Joins your video calls, records and transcribes them, then sends a summary with action items. Never take meeting notes again.",url:"https://fireflies.ai",testId:"g-fireflies"},{name:"Granola",description:"AI notepad that listens to your meetings and creates structured notes automatically. Works locally on your Mac.",url:"https://www.granola.ai",testId:"g-granola"},{name:"Notion AI",description:"Notes, wikis, project management, and team workspaces — with AI that writes, summarises, and organises for you.",url:"https://www.notion.so/product/ai",testId:"g-notion"},{name:"Microsoft Copilot 365",description:"AI built into Word, Excel, PowerPoint, Outlook, and Teams. Drafts emails, creates slides, and summarises meeting recordings.",url:"https://www.microsoft.com/microsoft-365/copilot",testId:"g-copilot365"}],W5=[{name:"Zapier",description:"Connect your apps and automate tasks without coding. If something happens in Gmail, trigger an action in Slack, Notion, or your CRM automatically.",url:"https://zapier.com",testId:"g-zapier"},{name:"Make",description:"Build visual automation workflows connecting your tools — more flexible than Zapier for complex logic. No coding needed.",url:"https://www.make.com",testId:"g-make"},{name:"n8n",description:"Open-source automation tool you can host on your own server. Full control over your data, 200+ app integrations.",url:"https://n8n.io/",testId:"g-n8n"},{name:"Power Automate",description:"Microsoft's automation tool. Automate tasks between Office 365, SharePoint, Teams, and hundreds of other apps.",url:"https://powerautomate.microsoft.com/",testId:"g-powerautomate"},{name:"UiPath",description:"Automates repetitive computer tasks (data entry, form filling, copy-paste between systems) as if a robot were doing them. No coding needed.",url:"https://www.uipath.com/",testId:"g-uipath"},{name:"Workato",description:"Connects enterprise apps and automates complex multi-step workflows. Best suited for mid-size and larger organisations.",url:"https://www.workato.com/",testId:"g-workato"},{name:"Bardeen",description:"Automate repetitive browser tasks with AI — scrape data, fill forms, move information between tabs — all without writing code.",url:"https://www.bardeen.ai/",testId:"g-bardeen"},{name:"Flowise AI",description:"Open-source, drag-and-drop builder for AI agents and LLM workflows. Connect models, tools, and data sources visually — no coding required.",url:"https://flowiseai.com",testId:"g-flowise"},{name:"DeerFlow",description:"AI-powered deep research and workflow automation agent. Runs multi-step research tasks autonomously and returns structured reports.",url:"https://deerflow.tech",testId:"g-deerflow"},{name:"Voicebox",description:"AI voice generation tool. Create realistic, expressive voice output from text — suitable for content, demos, and voice interface prototyping.",url:"https://voicebox.sh",testId:"g-voicebox"},{name:"Atlassian Rovo",description:"AI search across all your business tools (Jira, Confluence, Slack) — find any information instantly and delegate tasks to AI agents.",url:"https://www.atlassian.com/software/rovo",testId:"g-rovo"},{name:"Saveria",description:"AI assistant for accounting and advisory firms. Manages client interactions, detects opportunities, and automates follow-ups. (French market focus.)",url:"https://saveria.ai",testId:"g-saveria"},{name:"Polsia",description:"Autonomous AI system that handles planning, marketing, and technical tasks for your company around the clock — designed for fast-moving teams.",url:"https://polsia.com",testId:"g-polsia"},{name:"CoFounder",description:"AI co-founder platform that helps entrepreneurs build, validate, and launch startups — from idea to product with AI-driven execution.",url:"https://cofounder.co/",testId:"g-cofounder"}],V5=[{name:"Bolt.new",description:"Describe your app idea in plain language and get a working prototype in minutes — no coding required.",url:"https://bolt.new/",testId:"g-bolt"},{name:"Framer AI",description:"Design and publish professional websites with AI. No code needed — good for landing pages and marketing sites.",url:"https://www.framer.com",testId:"g-framer"},{name:"Durable",description:"Build a complete business website in 30 seconds with AI. Designed for small businesses — generates copy, images, and layout automatically.",url:"https://durable.com/",testId:"g-durable"},{name:"10Web",description:"AI-powered WordPress website builder. Generates and optimises your site — good if you already use WordPress.",url:"https://10web.io/",testId:"g-10web"},{name:"Rocket.new",description:"Go from idea to a live web application with AI. Describe what you need — it builds and deploys it for you.",url:"https://www.rocket.new/",testId:"g-rocketnew"}],K5=[{name:"Replit",description:"Build and deploy web apps directly in your browser — no installation needed. AI helps write the code as you go.",url:"https://replit.com",testId:"g-replit"},{name:"v0 by Vercel",description:"Describe a UI element in words and get working code for it instantly. Used by developers to prototype interfaces fast.",url:"https://v0.dev",testId:"g-v0"},{name:"GitHub Copilot",description:"AI assistant for developers — suggests code and completes functions as you type. Integrates with most code editors.",url:"https://github.com/features/copilot",testId:"g-copilot"},{name:"Cursor",description:"Code editor with deep AI integration — write, edit, and explain code in natural language. Popular among developers.",url:"https://cursor.sh",testId:"g-cursor"},{name:"Gradio",description:"Build a simple web interface for an AI model with a few lines of Python. Used by researchers and technical teams.",url:"https://www.gradio.app/",testId:"g-gradio"},{name:"Docsify",description:"Open-source documentation site generator. Turns Markdown files into a clean documentation website — no build step needed.",url:"https://docsify.js.org",testId:"g-docsify"},{name:"Open Interpreter",description:"Give your computer instructions in plain language — it runs code, analyses files, and automates tasks on your machine.",url:"https://openinterpreter.com/",testId:"g-openinterpreter"}],Y5=[{name:"Power BI",description:"Turn your business data into interactive dashboards and reports. Ask questions in plain language and get charts automatically. Microsoft's standard BI tool.",url:"https://powerbi.microsoft.com",testId:"g-powerbi"},{name:"Tableau AI",description:"Professional data visualisation with AI-assisted insights. Industry standard for business analytics. Drag-and-drop dashboards from any data source.",url:"https://www.tableau.com/products/tableau-ai",testId:"g-tableau"},{name:"Wren AI",description:"Ask questions about your data in plain English and get answers — without knowing SQL or needing a data analyst.",url:"https://www.getwren.ai",testId:"g-wren"},{name:"DataRobot",description:"Build predictive models (demand forecasting, customer churn, sales pipeline) without writing code. Enterprise-grade AutoML platform.",url:"https://www.datarobot.com",testId:"g-datarobot"},{name:"MindsDB",description:"Add AI predictions directly to your existing database. Ask business questions in standard SQL — get AI-powered answers back.",url:"https://mindsdb.com/",testId:"g-mindsdb"},{name:"Neo4j",description:"Graph database for mapping complex relationships — supply chains, ownership structures, networks. Increasingly used with AI for knowledge graph and RAG applications.",url:"https://neo4j.com/",testId:"g-neo4j"}],Q5=[{name:"Hugging Face",description:"The largest library of free, open-source AI models. Find, test, and download AI models for any task — text, images, audio, and more.",url:"https://huggingface.co/",testId:"g-huggingface"},{name:"Llama 3 — Meta AI",description:"Meta's free, open-source AI models. Can be run locally on your own server — full data privacy, no subscription.",url:"https://llama.meta.com/llama3/",testId:"g-llama3"},{name:"Mistral AI",description:"High-quality open-source AI models from a French company. Strong multilingual support — well-suited for European deployments.",url:"https://mistral.ai/",testId:"g-mistral"},{name:"DeepSeek",description:"Powerful open-source AI model from China. Handles long documents and images. Free alternative to GPT for high-volume or private use.",url:"https://github.com/deepseek-ai/DeepSeek-V2",testId:"g-deepseek"},{name:"Qwen 2.5 — Alibaba",description:"Alibaba's open-source AI model with strong multilingual capabilities. Useful for businesses operating in Asian markets.",url:"https://qwen.ai/",testId:"g-qwen"},{name:"Qwen3.8-Max",description:"Alibaba's 2.4T parameter frontier model, focused on coding and professional office tasks. Available via the Qwen AI platform API.",url:"https://qwen.ai/blog?id=qwen3.8",testId:"g-qwen38"},{name:"Together.ai",description:"Run open-source AI models in the cloud without managing infrastru
486cture. Good option for businesses needing a private, customisable AI system.",url:"https://www.together.ai/",testId:"g-togetherai"},{name:"BigScience — BLOOM",description:"Open-source multilingual AI model developed by a global research community. Free to use and fully transparent.",url:"https://bigscience.huggingface.co/",testId:"g-bigscience"},{name:"EleutherAI",description:"Non-profit research group building and releasing open-source AI models freely available to everyone.",url:"https://github.com/EleutherAI",testId:"g-eleutherai"},{name:"Fugu — Sakana AI",description:"Open-source Japanese LLM from Sakana AI. Built on evolutionary model merging — a research-grade frontier model from one of Japan's leading AI labs.",url:"https://sakana.ai/fugu/",testId:"g-sakana-fugu"},{name:"CrewAI",description:"Build systems where multiple AI agents work together on a task — one researches, one writes, one reviews. For technically capable teams.",url:"https://www.crewai.com/",testId:"g-crewai"},{name:"LangChain",description:"Developer framework for building AI applications that connect to your data sources, memory, and tools. Requires programming knowledge.",url:"https://www.langchain.com/",testId:"g-langchain"},{name:"LlamaIndex",description:"Connect your documents and databases to an AI that can query them. Used by developers to build internal knowledge-base assistants.",url:"https://www.llamaindex.ai/",testId:"g-llamaindex"},{name:"Pinecone",description:"Database optimised for AI — stores information in a way that lets AI retrieve it accurately. Used in custom AI applications.",url:"https://www.pinecone.io/",testId:"g-pinecone"},{name:"H2O.ai",description:"Open-source platform for building and monitoring AI models. Free to use — suitable for data teams with technical resources.",url:"https://h2o.ai/",testId:"g-h2o"},{name:"PyTorch",description:"Meta's open-source framework for building and training AI models. The most widely used tool in AI research worldwide.",url:"https://pytorch.org/",testId:"g-pytorch"},{name:"TensorFlow",description:"Google's open-source AI development framework. Used by engineers and data scientists to build and deploy AI models at scale.",url:"https://www.tensorflow.org/",testId:"g-tensorflow"},{name:"ClearML",description:"Open-source platform for tracking, comparing, and automating AI model training. Used by ML engineering teams.",url:"https://github.com/allegroai/clearml",testId:"g-clearml"},{name:"ZenML",description:"Open-source framework for packaging AI workflows so they can be moved between environments (local, cloud, production).",url:"https://github.com/zenml-io/zenml",testId:"g-zenml"},{name:"Common Crawl",description:"A massive, free archive of web pages used to train large language models. Public dataset for AI researchers.",url:"https://github.com/commoncrawl",testId:"g-commoncrawl"},{name:"LAION",description:"Large-scale open dataset of image-text pairs used to train AI image models. Key resource for multimodal AI research.",url:"https://github.com/LAION-AI",testId:"g-laion"},{name:"Origin Pilot — Origin Quantum",description:"Cloud platform for quantum computing — access real quantum hardware and simulators. Frontier technology for research teams.",url:"https://originqc.com/",testId:"g-originpilot"},{name:"Qiskit — IBM Quantum",description:"IBM's open-source toolkit for quantum computing. Write and run programs on IBM's quantum computers.",url:"https://www.ibm.com/quantum/qiskit",testId:"g-qiskit"},{name:"Cirq — Google Quantum AI",description:"Google's open-source framework for building and running quantum circuits on Google's quantum hardware.",url:"https://quantumai.google/cirq",testId:"g-cirq"},{name:"Predibase",description:"Platform for creating, deploying, and managing custom AI models including fine-tuned LLMs. Open-source core via LoRAX on GitHub.",url:"https://predibase.com/",testId:"g-predibase"},{name:"Flyte",description:"Open-source workflow orchestrator for machine learning and data processing. Scales ML pipelines from prototype to production.",url:"https://flyte.org/",testId:"g-flyte"},{name:"GLM-5 — ZhipuAI",description:"ZhipuAI's latest open-source frontier language model. Strong multilingual reasoning with broad task coverage — one of the leading Chinese open-weight models.",url:"https://github.com/zai-org/GLM-5",testId:"g-glm5"},{name:"MiniMax M3",description:"MiniMax's frontier language model with strong reasoning and long-context c
486apabilities. Open-weight model from one of China's leading AI labs.",url:"https://www.minimax.io/models/text/m3",testId:"g-minimaxm3"},{name:"DiffusionGemma — Google DeepMind",description:"Google DeepMind's experimental diffusion-based language model. A departure from transformer-only architectures — research-grade frontier model.",url:"https://deepmind.google/models/gemma/diffusiongemma/",testId:"g-diffusiongemma"},{name:"Gemma 4 — Google DeepMind",description:"Google DeepMind's latest generation of the Gemma open-weight model family. Efficient, deployable, and available for research and commercial use.",url:"https://deepmind.google/models/gemma/gemma-4/",testId:"g-gemma4"},{name:"OpenWA",description:"Open-source WhatsApp automation library. Build bots, send automated messages, and integrate WhatsApp into business workflows — without the official API.",url:"https://github.com/rmyndharis/OpenWA",testId:"g-openwa"},{name:"OpenMontage",description:"Open-source AI video montage tool. Automates the assembly of video clips into structured, edited sequences — useful for content and media workflows.",url:"https://github.com/calesthio/OpenMontage",testId:"g-openmontage"},{name:"Karpathy — LLM Training Guide",description:"Andrej Karpathy's annotated guide to training large language models from scratch. Essential reference for anyone building or evaluating AI systems.",url:"https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f",testId:"g-karpathy"},{name:"OpenAI Research",description:"OpenAI's public research publications covering ML advances, AI alignment, and safety. Reference for staying current on frontier AI.",url:"https://openai.com/research",testId:"g-openairesearch"}],X5=[{name:"Feedzai",description:"Real-time fraud and financial crime detection using ML. Covers payment fraud, account takeover, and AML for banks and fintechs.",url:"https://feedzai.com/",testId:"fs-feedzai"},{name:"Featurespace",description:"Adaptive behavioural analytics for fraud and AML detection. Learns individual customer patterns to flag anomalies in real time.",url:"https://www.featurespace.com/",testId:"fs-featurespace"},{name:"ComplyAdvantage",description:"AML and financial crime intelligence platform. Screens customers against sanctions, PEP lists, and adverse media automatically.",url:"https://complyadvantage.com/",testId:"fs-complyadvantage"},{name:"Chainalysis",description:"Blockchain analytics for AML, compliance, and financial crime investigation. Used by banks, crypto firms, and regulators.",url:"https://www.chainalysis.com/",testId:"fs-chainalysis"},{name:"Ripjar",description:"Financial crime intelligence and AML platform combining AI screening with structured and unstructured data across global sources.",url:"https://ripjar.com/",testId:"fs-ripjar"},{name:"Sift",description:"Fraud prevention platform for payments, account integrity, and content abuse. ML-based decisioning at transaction level.",url:"https://sift.com/",testId:"fs-sift"},{name:"Onfido",description:"AI-based identity verification and KYC. Document and biometric checks for onboarding, re-verification, and fraud prevention.",url:"https://onfido.com/",testId:"fs-onfido"},{name:"Trulioo",description:"Global identity verification and KYC platform. Covers 195 countries — used by fintechs, payments companies, and regulated institutions.",url:"https://www.trulioo.com/",testId:"fs-trulioo"},{name:"Alloy",description:"Identity decisioning platform for banks and fintechs — automates KYC, AML, and fraud checks across the customer lifecycle.",url:"https://www.alloy.com/",testId:"fs-alloy"},{name:"Zest AI",description:"AI credit underwriting platform. Improves model performance and fairness for consumer and SME lending decisions.",url:"https://www.zest.ai/",testId:"fs-zestai"},{name:"ACTICO",description:"Decision automation platform for credit, compliance, and risk. Used by regulated financial institutions to operationalise rules and ML models.",url:"https://actico.com/",testId:"fs-actico"},{name:"Model ML",description:"AI workspace and finance agent for financial institutions. Covers research, analysis, and deal workflows — trusted by leading financial services firms. YC W2024.",url:"https://modelml.com/",testId:"fs-modelml"},{name:"Kasisto",description:"Conversational AI platform built for banking and financial services. Handles customer queries, account support, and financial guidance.",url:"https://kasisto.com/",testId:"fs-kasisto"},{name:"Kore.ai",description:"Enterprise conversational AI for banking, insurance, and wealth. Deploys virtual assistants across web, mobile, and voice channels.",url:"https://kore.ai/",testId:"fs-koreai"},{name:"TIFIN",description:"AI platform for wealth management — personalisation, client engagement, and investment intelligence for advisers and asset managers.",url:"https://tifin.com/",testId:"fs-tifin"},{name:"Zocks",description:"AI note-taking and CRM automation for wealth managers. Transcribes client meetings and extracts actionable data for advisers.",url:"https://www.zocks.ai/",testId:"fs-zocks"},{name:"ABBYY",description:"Intelligent document processing for financial services — automates extraction from invoices, contracts, forms, and compliance documents.",url:"https://www.abbyy.com/",testId:"fs-abbyy"},{name:"Hyperscience",description:"Enterprise document automation platform. Processes high-volume financial and insurance documents with ML-based extraction and validation.",url:"https://hyperscience.com/",testId:"fs-hyperscience"},{name:"Nanonets",description:"AI document extraction and workflow automation. Handles invoices, bank statements, and financial forms with minimal setup.",url:"https://nanonets.com/",testId:"fs-nanonets"},{name:"Collibra",description:"Data governance and intelligence platform. Manages data quality, lineage, and cataloguing for regulated financial institutions.",url:"https://www.collibra.com/",testId:"fs-collibra"},{name:"Kensho",description:"AI analytics and NLP platform for financial intelligence, used by investment banks and data providers for event analytics and data extraction.",url:"https://www.kensho.com/",testId:"fs-kensho"},{name:"Numerai",description:"Crowd-sourced AI hedge fund platform. Data scientists submit ML models to predict financial markets — relevant for quant and alternative data strategies.",url:"https://numer.ai/",testId:"fs-numerai"},{name:"Dynamic Yield",description:"AI personalisation platform for financial services and retail. Delivers segment-level and individual customer experiences across digital channels.",url:"https://www.dynamicyield.com/",testId:"fs-dynamicyield"},{name:"Braze",description:"Customer engagement platform with AI-powered personalisation across email, push, SMS, and in-app channels. Used by fintechs and financial brands.",url:"https://www.braze.com/",testId:"fs-braze"},{name:"Twilio",description:"Cloud communications platform for SMS, voice, email, and messaging APIs. Used to build automated customer contact and verification workflows.",url:"https://www.twilio.com/",testId:"fs-twilio"},{name:"Darktrace",description:"AI cybersecurity platform using unsupervised ML to detect and respond to novel threats in real time. Used by financial institutions.",url:"https://darktrace.com/",testId:"fs-darktrace"},{name:"CrowdStrike",description:"Cloud-native endpoint security and threat intelligence platform. Standard for financial services cyber risk management and incident response.",url:"https://www.crowdstrike.com/",testId:"fs-crowdstrike"},{name:"Persefoni",description:"AI-powered carbon management and ESG reporting platform for financial institutions and their portfolio companies.",url:"https://www.persefoni.com/",testId:"fs-persefoni"}],Z5=[{name:"Mikeoss",description:"AI legal assistant for lawyers — contract review, legal research, document drafting, and case analysis.",url:"https://mikeoss.com/",testId:"g-mikeoss"},{name:"Lexroom",description:"AI partner for lawyers that combines legal research with data analysis to improve accuracy, speed, and professional judgment.",url:"https://www.lexroom.ai/en",testId:"g-lexroom"},{name:"Query Juriste",description:"French legal AI for sourced legal research and structured reasoning, with EU-hosted infrastru
486cture for law firms and in-house teams.",url:"https://www.query-juriste.com/",testId:"g-query-juriste"},{name:"Praven Intelekt",description:"Bulgarian legal AI for sourced research, document analysis, and drafting based on current Bulgarian legislation and case law.",url:"https://www.pravenintelekt.com/",testId:"g-praven-intelekt"},{name:"Harvey AI",description:"AI platform built for law firms and legal teams — contract analysis, due diligence, legal research, and regulatory review at scale.",url:"https://www.harvey.ai/",testId:"g-harvey"},{name:"Casetext",description:"Legal research AI acquired by Thomson Reuters. Finds relevant case law, statutes, and legal documents faster than traditional search.",url:"https://casetext.com/",testId:"g-casetext"},{name:"Lexis+ AI",description:"LexisNexis AI assistant for legal professionals — case research, contract drafting, and document summarisation with citation tracking.",url:"https://www.lexisnexis.com/en-us/products/lexis-plus-ai.page",testId:"g-lexis"},{name:"Domo AI",description:"AI-powered business intelligence platform with natural language querying. Connects to hundreds of data sources for real-time dashboards and forecasting.",url:"https://www.domo.com/ai",testId:"g-domo"},{name:"Workiva AI",description:"AI for financial reporting, ESG disclosure, and audit workflows. Used by CFOs and compliance teams managing multi-entity reporting.",url:"https://www.workiva.com/solutions/artificial-intelligence",testId:"g-workiva"},{name:"Nabla",description:"AI clinical assistant for healthcare professionals — listens to patient consultations and generates structured medical notes automatically.",url:"https://www.nabla.com/",testId:"g-nabla"},{name:"Amboss AI",description:"AI medical knowledge platform for clinicians — evidence-based decision support, drug references, and diagnostic guidance at the point of care.",url:"https://www.amboss.com/",testId:"g-amboss"}],J5=[{name:"OpenAI GPT API",url:"https://platform.openai.com/",description:"OpenAI's API for GPT-4o and o-series models — the most widely adopted LLM API for production applications.",testId:"llm-openai"},{name:"Anthropic Claude API",url:"https://www.anthropic.com/api",description:"Claude's API — strong at long-context reasoning, structured output, and safe agentic tasks.",testId:"llm-claude"},{name:"Google Gemini API",url:"https://ai.google.dev/",description:"Gemini 2.5 Pro/Flash API — multimodal, long context, integrated with Google Cloud ecosystem.",testId:"llm-gemini"},{name:"Meta Llama",url:"https://llama.meta.com/",description:"Meta's open-weight LLM family — deployable on-premise or via cloud providers with no usage fees.",testId:"llm-llama"},{name:"Mistral AI",url:"https://mistral.ai/",description:"High-performance European LLMs — available via API or self-hosted. Strong multilingual and instruction-following capability.",testId:"llm-mistral"},{name:"Cohere",url:"https://cohere.com/",description:"Enterprise LLM platform focused on RAG, embeddings, and private deployment for regulated industries.",testId:"llm-cohere"},{name:"Hugging Face",url:"https://huggingface.co/",description:"Hub for open-source models, datasets, and inference APIs — the default repository for the ML community.",testId:"llm-hf"},{name:"Ollama",url:"https://ollama.ai/",description:"Run LLMs locally on Mac, Linux, or Windows with a single command. Supports Llama, Mistral, Gemma, and more.",testId:"llm-ollama"},{name:"vLLM",url:"https://docs.vllm.ai/",description:"High-throughput inference engine for LLMs — optimised for production serving with PagedAttention architecture.",testId:"llm-vllm"}],eR=[{name:"LangGraph",url:"https://langchain-ai.github.io/langgraph/",description:"Graph-based framework for building stateful, multi-step AI agents with cycles and branching — built on LangChain.",testId:"ag-langgraph"},{name:"CrewAI",url:"https://www.crewai.com/",description:"Multi-agent framework for building role-based AI teams — agents collaborate, delegate, and complete complex workflows.",testId:"ag-crewai"},{name:"Microsoft AutoGen",url:"https://microsoft.github.io/autogen/",description:"Multi-agent conversation framework from Microsoft Research — agents interact autonomously to 
486solve tasks.",testId:"ag-autogen"},{name:"Microsoft Agent Framework",url:"https://github.com/microsoft/agent-framework",description:"Microsoft's modular framework for building production-grade AI agent systems with enterprise patterns.",testId:"ag-msagent"},{name:"LlamaIndex Workflows",url:"https://docs.llamaindex.ai/en/stable/understanding/workflows/",description:"Event-driven workflow orchestration within LlamaIndex — build multi-step agentic pipelines over your data.",testId:"ag-llamawf"},{name:"AWS Strands Agents",url:"https://strandsagents.com/",description:"AWS SDK for building AI agents with tool use, memory, and multi-agent coordination on AWS infrastructure.",testId:"ag-strands"},{name:"CAMEL",url:"https://www.camel-ai.org/",description:"Communicative Agents framework — role-playing agents that collaborate through structured conversation.",testId:"ag-camel"},{name:"Agno",url:"https://www.agno.com/",description:"Full-stack platform for building, testing, and monitoring production AI agents with a unified developer experience.",testId:"ag-agno"}],tR=[{name:"LangChain",url:"https://www.langchain.com/",description:"Composable framework for building LLM applications — chains, retrievers, agents, and integrations with 100+ data sources.",testId:"rag-langchain"},{name:"LlamaIndex",url:"https://www.llamaindex.ai/",description:"Data framework for LLM applications — index, retrieve, and query structured and unstructured data.",testId:"rag-llamaindex"},{name:"Haystack",url:"https://haystack.deepset.ai/",description:"Open-source AI pipeline framework by deepset — build RAG, question answering, and search systems.",testId:"rag-haystack"},{name:"DSPy",url:"https://dspy-docs.vercel.app/",description:"Stanford framework for programmatic LLM pipeline optimisation — replaces hand-crafted prompts with learnable modules.",testId:"rag-dspy"},{name:"RAGFlow",url:"https://ragflow.io/",description:"Open-source RAG engine with deep document understanding — handles PDFs, tables, and mixed-format content accurately.",testId:"rag-ragflow"},{name:"GraphRAG",url:"https://microsoft.github.io/graphrag/",description:"Microsoft's graph-based RAG — builds knowledge graphs from documents for richer, more connected retrieval.",testId:"rag-graphrag"},{name:"Unstructured",url:"https://unstructured.io/",description:"Pipeline for extracting and preprocessing content from PDFs, Word, HTML, and other unstructured formats for LLM ingestion.",testId:"rag-unstructured"},{name:"EmbedChain",url:"https://github.com/embedchain/embedchain",description:"Open-source RAG framework — build chatbots over any data source in minutes with minimal configuration.",testId:"rag-embedchain"}],nR=[{name:"OpenAI Embeddings",url:"https://platform.openai.com/docs/guides/embeddings",description:"text-embedding-3 models — high-quality dense embeddings for semantic search and RAG applications.",testId:"emb-openai"},{name:"Cohere Embed",url:"https://cohere.com/embeddings",description:"Multilingual embedding models optimised for retrieval — strong cross-lingual semantic search capability.",testId:"emb-cohere"},{name:"Voyage AI",url:"https://www.voyageai.com/",description:"State-of-the-art embedding models — top performance on retrieval benchmarks, used by Anthropic partners.",testId:"emb-voyage"},{name:"Sentence Transformers",url:"https://www.sbert.net/",description:"Open-source Python library for sentence and text embeddings — widely used for semantic similarity and retrieval.",testId:"emb-sbert"},{name:"BGE (BAAI)",url:"https://huggingface.co/BAAI/bge-large-en",description:"BAAI General Embedding — high-quality open-source embeddings from Beijing Academy of AI, competitive with commercial models.",testId:"emb-bge"},{name:"Google Vertex AI Embeddings",url:"https://cloud.google.com/vertex-ai/generative-ai/docs/embeddings/get-text-embeddings",description:"Google's text embedding models via Vertex AI — integrates with Google Cloud storage and search infrastructure.",testId:"emb-vertex"},{name:"Azure OpenAI Embeddings",url:"https://learn.microsoft.com/en-us
486/azure/ai-services/openai/concepts/understand-embeddings",description:"OpenAI embedding models deployed within Azure — enterprise data residency and compliance controls.",testId:"emb-azure"}],rR=[{name:"MCP SDK",url:"https://modelcontextprotocol.io/",description:"Anthropic's Model Context Protocol — open standard for connecting AI models to tools, data sources, and external systems.",testId:"mcp-sdk"},{name:"FastMCP",url:"https://github.com/jlowin/fastmcp",description:"Python framework for building MCP servers quickly — higher-level abstractions over the raw MCP SDK.",testId:"mcp-fastmcp"},{name:"MCP Registry",url:"https://github.com/modelcontextprotocol/servers",description:"Official repository of reference MCP server implementations — connectors for popular tools and services.",testId:"mcp-registry"},{name:"GitHub MCP Server",url:"https://github.com/github/github-mcp-server",description:"Official GitHub MCP server — lets AI agents read repos, create PRs, manage issues, and interact with code directly.",testId:"mcp-github"},{name:"Slack MCP Server",url:"https://github.com/modelcontextprotocol/servers/tree/main/src/slack",description:"MCP server for Slack — enables AI agents to read channels, send messages, and interact with Slack workspaces.",testId:"mcp-slack"},{name:"PostgreSQL MCP Server",url:"https://github.com/modelcontextprotocol/servers/tree/main/src/postgres",description:"MCP server for PostgreSQL — gives AI agents read access to query database schemas and execute SQL.",testId:"mcp-postgres"},{name:"Google Drive MCP Server",url:"https://github.com/modelcontextprotocol/servers/tree/main/src/gdrive",description:"MCP server for Google Drive — allows AI agents to search, read, and retrieve files from Drive.",testId:"mcp-gdrive"},{name:"Filesystem MCP Server",url:"https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem",description:"MCP server for local filesystem access — AI agents can read, write, and navigate directory structures.",testId:"mcp-filesystem"}],iR=[{name:"NVIDIA NeMo Guardrails",url:"https://github.com/NVIDIA/NeMo-Guardrails",description:"Open-source toolkit for adding programmable guardrails to LLM applications — controls topical, safety, and output constraints.",testId:"sec-nemo"},{name:"Guardrails AI",url:"https://www.guardrailsai.com/",description:"Python library for validating LLM outputs — enforce schemas, detect hallucinations, and filter unsafe content.",testId:"sec-guardrails"},{name:"Microsoft Presidio",url:"https://microsoft.github.io/presidio/",description:"Open-source PII detection and anonymisation — identify and redact sensitive data before it reaches LLM inputs or outputs.",testId:"sec-presidio"},{name:"Lakera Guard",url:"https://www.lakera.ai/",description:"Real-time LLM security — detects prompt injections, jailbreaks, and sensitive data leakage in AI applications.",testId:"sec-lakera"},{name:"Prompt Security",url:"https://www.prompt.security/",description:"Enterprise AI security gateway — monitors and blocks prompt injection, data exfiltration, and policy violations.",testId:"sec-promptsec"},{name:"Protect AI",url:"https://protectai.com/",description:"AI/ML security platform — scans models for vulnerabilities, monitors inference, and secures the AI supply chain.",testId:"sec-protectai"},{name:"Azure AI Content Safety",url:"https://azure.microsoft.com/en-us/products/ai-services/ai-content-safety",description:"Microsoft's content moderation API — detects harmful content across text and images in AI applications.",testId:"sec-azure"},{name:"AWS Bedrock Guardrails",url:"https://aws.amazon.com/bedrock/guardrails/",description:"AWS-native guardrails for Bedrock-based applications — filter content, block topics, and enforce PII protections.",testId:"sec-bedrock"}],aR=[{name:"LangSmith",url:"https://www.langchain.com/langsmith",description:"LangChain's observability platform — trace, debug, and evaluate LLM chains and agent runs in production.",testId:"obs-langsmith"}
486,{name:"Langfuse",url:"https://langfuse.com/",description:"Open-source LLM observability — trace inputs/outputs, score responses, and monitor latency and cost across models.",testId:"obs-langfuse"},{name:"Arize Phoenix",url:"https://phoenix.arize.com/",description:"Open-source AI observability tool for tracing, evaluating, and debugging LLM and embedding-based applications.",testId:"obs-arize"},{name:"Weights & Biases Weave",url:"https://wandb.ai/site/weave",description:"W&B's LLM evaluation and observability layer — trace model calls, log datasets, and track evaluation metrics.",testId:"obs-weave"},{name:"TruLens",url:"https://www.trulens.org/",description:"Evaluation framework for LLM applications — measures groundedness, answer relevance, and context precision for RAG.",testId:"obs-trulens"},{name:"Ragas",url:"https://ragas.io/",description:"RAG evaluation framework — scores retrieval and generation quality using automated LLM-as-judge metrics.",testId:"obs-ragas"},{name:"Promptfoo",url:"https://www.promptfoo.dev/",description:"Open-source LLM testing tool — run structured evaluations, compare models, and detect regressions in prompts.",testId:"obs-promptfoo"},{name:"Helicone",url:"https://www.helicone.ai/",description:"LLM observability proxy — log all API calls, track costs, cache responses, and rate-limit in production.",testId:"obs-helicone"}],sR=[{name:"Mem0",url:"https://mem0.ai/",description:"Intelligent memory layer for AI agents — stores, retrieves, and updates user-specific context across sessions.",testId:"mem-mem0"},{name:"Zep",url:"https://www.getzep.com/",description:"Long-term memory service for AI applications — persists conversation history with semantic search retrieval.",testId:"mem-zep"},{name:"Letta",url:"https://www.letta.com/",description:"Stateful agent framework (formerly MemGPT) — agents with self-managed memory that persists across conversations.",testId:"mem-letta"},{name:"LangGraph Memory",url:"https://langchain-ai.github.io/langgraph/concepts/memory/",description:"Built-in memory management for LangGraph agents — short-term state and long-term persistent memory stores.",testId:"mem-lgmem"},{name:"Redis",url:"https://redis.io/solutions/ai/",description:"In-memory data store widely used for AI session state, short-term agent memory, and fast key-value caching.",testId:"mem-redis"},{name:"PostgreSQL",url:"https://www.postgresql.org/",description:"Relational database used for persistent agent memory, structured conversation logs, and user preference storage.",testId:"mem-postgres"},{name:"Neo4j",url:"https://neo4j.com/",description:"Graph database for knowledge graph memory — models relationships between entities for richer agent context.",testId:"mem-neo4j"},{name:"Chroma",url:"https://www.trychroma.com/",description:"Open-source embedding database — lightweight vector store for AI memory and RAG, easy to run locally.",testId:"mem-chroma"}],oR=[{name:"OpenAI Agents SDK",url:"https://openai.github.io/openai-agents-python/",description:"OpenAI's official Python SDK for building production agents — handoffs, guardrails, tracing, and tool use built-in.",testId:"sdk-openai"},{name:"LangChain Agents",url:"https://python.langchain.com/docs/modules/agents/",description:"LangChain's agent framework — ReAct, tool-calling, and structured agents with broad tool integration.",testId:"sdk-lca"},{name:"PydanticAI",url:"https://ai.pydantic.dev/",description:"Type-safe agent framework built on Pydantic — structured inputs/outputs, dependency injection, and model-agnostic.",testId:"sdk-pydantic"},{name:"Semantic Kernel",url:"https://learn.microsoft.com/en-us/semantic-kernel/",description:"Microsoft's SDK for integrating LLMs into enterprise applications — supports Python, C#, and Java.",testId:"sdk-sk"},{name:"Google ADK",url:"https://google.github.io/adk-docs/",description:"Google's Agent Development Kit — framework for building multi-agent systems with Gemini and Google Cloud tools.",testId:"sdk-adk"},{name:"AWS Bedrock Agents",url:"https://aws.amazon.com/bedrock/agents/",description:"Managed agent service on AWS — orchestrate LLM reasoning with knowledge bases, APIs, and Lambda functions.",testId:"sdk-bedrock"},{name:"Azure AI Foundry Agent Service",url:"https://azure.microsoft.com/en-us
486/products/ai-foundry/",description:"Microsoft's managed agent platform — build, deploy, and scale AI agents with Azure security and compliance.",testId:"sdk-azure"},{name:"Obscura",url:"https://obscura.sh/",description:"Headless browser for AI agents and web scraping. Provides isolated browser sessions for agents, with MCP server mode and stealth/proxy support. Open source.",testId:"sdk-obscura"}],lR=[{name:"n8n",url:"https://n8n.io/",description:"Open-source workflow automation — self-hostable, 400+ integrations, supports code nodes and AI agent workflows.",testId:"orch-n8n"},{name:"Zapier",url:"https://zapier.com",description:"No-code automation connecting 6,000+ apps — the most widely used automation tool for business teams.",testId:"orch-zapier"},{name:"Make",url:"https://www.make.com",description:"Visual automation platform — more flexible than Zapier for complex multi-step and conditional workflows.",testId:"orch-make"},{name:"Microsoft Power Automate",url:"https://powerautomate.microsoft.com/",description:"Microsoft's automation tool — integrates natively with Office 365, SharePoint, Teams, and Dynamics.",testId:"orch-powerautomate"},{name:"Temporal",url:"https://temporal.io/",description:"Durable workflow engine for long-running processes — handles retries, timeouts, and state for complex AI pipelines.",testId:"orch-temporal"},{name:"Apache Airflow",url:"https://airflow.apache.org/",description:"Open-source workflow orchestration platform — schedule and monitor data pipelines and ML workflows at scale.",testId:"orch-airflow"},{name:"Prefect",url:"https://www.prefect.io/",description:"Modern dataflow orchestration — Python-native workflows with observability, retries, and cloud or self-hosted deployment.",testId:"orch-prefect"},{name:"Kestra",url:"https://kestra.io/",description:"Open-source orchestration platform — declarative YAML workflows with built-in plugins for data and AI pipelines.",testId:"orch-kestra"},{name:"Pipedream",url:"https://pipedream.com/",description:"Developer-first integration platform — event-driven workflows connecting APIs and services with code-level control.",testId:"orch-pipedream"}],cR=[{name:"Pinecone",url:"https://www.pinecone.io/",description:"Managed vector database — production-grade, serverless, with real-time filtering and metadata search.",testId:"vdb-pinecone"},{name:"Weaviate",url:"https://weaviate.io/",description:"Open-source vector database with hybrid search — combines dense vector search with BM25 keyword retrieval.",testId:"vdb-weaviate"},{name:"Qdrant",url:"https://qdrant.tech/",description:"High-performance vector search engine — Rust-based, supports payload filtering and on-disk indexing.",testId:"vdb-qdrant"},{name:"Milvus",url:"https://milvus.io/",description:"Open-source vector database built for scale — supports billions of vectors with distributed architecture.",testId:"vdb-milvus"},{name:"Chroma",url:"https://www.trychroma.com/",description:"Lightweight open-source vector store — easy to set up for prototyping and small-to-medium RAG applications.",testId:"vdb-chroma"},{name:"pgvector",url:"https://github.com/pgvector/pgvector",description:"Vector similarity search extension for PostgreSQL — add embedding storage to existing Postgres databases.",testId:"vdb-pgvector"},{name:"Elasticsearch",url:"https://www.elastic.co/elasticsearch/",description:"Search engine with vector capabilities — hybrid search combining full-text and semantic retrieval.",testId:"vdb-elastic"},{name:"Redis Vector",url:"https://redis.io/solutions/vector-search/",description:"In-memory vector search in Redis — low-latency similarity search for real-time AI applications.",testId:"vdb-redis"},{name:"MongoDB Atlas Vector Search",url:"https://www.mongodb.com/products/platform/atlas-vector-search",description:"Vector search built into MongoDB Atlas — query embeddings alongside operational data in one database.",testId:"vdb-mongodb"}],$r=e=>({...e,audience:"portfolio-company",stackType:"value-creation"}),dR=[$r({name:"Legora",description:"AI workspace for legal teams supporting legal research, document review, drafting and collaborative legal workflows.",url:"https://legora.com/",testId:"g-legora",category:"Professional & Vertical AI",subcategory:"Legal",businessFunctions:["Legal"],valueCreationLevers:["productivity","scalability"]}),$r({name:"EvenUp",description:"AI platform focused on personal injury legal workflows, including case preparation and demand-package generation.",url:"https://www.evenuplaw.com/",testId:"g-evenup",category:"Professional & Vertical AI",subcategory:"Legal",businessFunctions:["Legal"],valueCreationLevers:["productivity","scalability"]})],uR=[$r({name:"Basis",description:"AI platform for accounting workflows using AI agents to support repetitive and knowledge-intensive accounting work.",url:"https://www.getbasis.ai/",testId:"g-basis",category:"Finance & Data",subcategory:"Accounting",businessFunctions:["Finance","Accounting"],valueCreationLevers:["margin-expansion","productivity"]}),$r({name:"Rillet",description:"AI-native ERP and accounting platform designed to automate finance workflows, reporting and financial operations.",url:"https://www.rillet.com/",testId:"g-rillet",category:"Finance & Data",subcategory:"Finance / Accounting",businessFunctions:["Finance","Accounting"],valueCreationLevers:["margin-expansion","productivity"]}),$r({name:"Kick",description:"AI-powered bookkeeping and financial operations platform designed to automate accounting workflows for businesses.",url:"https://kick.co/",testId:"g-kick",category:"Finance & Data",subcategory:"Accounting",businessFunctions:["Finance","Accounting"],valueCreationLevers:["margin-expansion","productivity"]})],pR=[$r({name:"Black Ore",description:"AI platform focused on automating tax preparation and accounting workflows for professional firms.",url:"https://www.blackore.ai/",testId:"g-blackore",category:"Professional & Vertical AI",subcategory:"Tax & Accounting",businessFunctions:["Finance","Accounting"],valueCreationLevers:["margin-expansion","productivity"]}),$r({name:"Fieldguide",description:"AI-powered platform for audit and advisory firms supporting engagement workflows, evidence management and professional services delivery.",url:"https://www.fieldguide.io
486/",testId:"g-fieldguide",category:"Professional & Vertical AI",subcategory:"Audit",businessFunctions:["Finance","Risk"],valueCreationLevers:["productivity","risk-reduction"]})],mR=[$r({name:"Distyl",description:"Enterprise AI platform focused on deploying AI systems into complex operational workflows and existing enterprise environments.",url:"https://distyl.ai/",testId:"g-distyl",category:"Operations & Workflow",subcategory:"Enterprise AI",businessFunctions:["Operations","IT"],valueCreationLevers:["productivity","scalability"]})],hR=[$r({name:"Aaru",description:"AI platform for modelling and simulating customer and market behaviour to support research, strategy and commercial decision-making.",url:"https://aaru.com/",testId:"g-aaru",category:"Revenue & Sales",subcategory:"Commercial Intelligence",businessFunctions:["Sales","Marketing","Strategy"],valueCreationLevers:["revenue-growth","productivity"]})],fR=[$r({name:"Hadrius",description:"AI-powered compliance platform for financial institutions and regulated firms, supporting monitoring, communications review and compliance workflows.",url:"https://www.hadrius.com/",testId:"g-hadrius",category:"Financial Services & Risk",subcategory:"Compliance",businessFunctions:["Compliance","Risk"],valueCreationLevers:["risk-reduction","productivity"]}),$r({name:"Norm AI",description:"AI platform that converts regulatory requirements into executable compliance workflows and controls.",url:"https://www.norm.ai/",testId:"g-norm-ai",category:"Financial Services & Risk",subcategory:"Compliance / Regulatory Intelligence",businessFunctions:["Compliance","Risk"],valueCreationLevers:["risk-reduction","scalability"]})],OK=[U5,G5,q5,H5,z5,W5,V5,Y5,Z5,X5,dR,uR,pR,mR,hR,fR],MK=[K5,Q5,J5,eR,tR,nR,rR,iR,aR,sR,oR,lR,
486cR];for(const e of OK.flat())e.audience??(e.audience="portfolio-company"),e.stackType??(e.stackType="value-creation");for(const e of MK.flat())e.audience??(e.audience="technical"),e.stackType??(e.stackType="developer");const RK=[{title:"Business Idea Validation",prompt:"Evaluate the idea of launching [BUSINESS IDEA]. Provide market potential analysis, target audience definition, competitive landscape, key risks, and expansion possibilities. Include a go/no-go recommendation with supporting rationale.",tip:"Validate business ideas before significant investment."},{title:"Business Plan Creation",prompt:"Adopt the role of an expert business strategist. Create a comprehensive business plan covering: 1) Executive summary with mission and objectives, 2) Market analysis with competitors and trends, 3) Marketing and sales strategies, 4) Financial projections with income statements and break-even analysis, 5) Action plan with milestones. My business type: [TYPE], target market: [MARKET], unique value proposition: [USP], initial investment: [AMOUNT].",tip:"Generate a complete business plan structure in minutes."},{title:"Market Research",prompt:"Conduct a comprehensive competitive analysis of the top 5 companies in [YOUR INDUSTRY]. Include pricing models, features, customer reviews, and distinctive selling points. Identify gaps and opportunities for differentiation.",tip:"Understand your competitive landscape deeply."},{title:"SWOT Analysis",prompt:"Conduct a detailed SWOT analysis for [COMPANY/PRODUCT]. For each quadrant, provide at least 5 specific points with evidence. Then develop 3 strategic recommendations that: 1) Leverage strengths to capture opportunities, 2) Address weaknesses before they become threats, 3) Create competitive advantage.",tip:"Analyze your competitive position with structured SWOT frameworks."},{title:"Go-to-Market Strategy",prompt:"Develop a go-to-market strategy for launching [PRODUCT] to [TARGET MARKET]. Cover: 1) Market positioning and messaging, 2) Distribution channels and partners, 3) Customer acquisition tactics, 4) Launch timeline and milestones, 5) Success metrics and KPIs. Provide a phased approach with specific action items.",tip:"Plan your market entry with a structured GTM framework."},{title:"Market Expansion Strategy",prompt:"Act like a business development manager and outline a strategy for expanding into [NEW MARKET]. Include: 1) Target regions and customer segments, 2) Market entry tactics (organic, partnership, acquisition), 3) Competitive analysis and positioning, 4) Resource requirements and timeline, 5) Risk asse
486ssment and mitigation.",tip:"Plan geographic or segment expansion strategically."},{title:"Competitor Benchmarking",prompt:"Evaluate [TOOL/COMPANY A] vs [TOOL/COMPANY B] vs [TOOL/COMPANY C] across pricing, features, integrations, customer reviews, and long-term scalability. Provide a recommendation based on [SPECIFIC USE CASE].",tip:"Compare options systematically for better decisions."},{title:"Pricing Strategy",prompt:"Analyze the ideal pricing strategy for [PRODUCT/SERVICE]. Consider: 1) Value-based pricing models, 2) Competitor pricing analysis, 3) Customer willingness to pay research, 4) Tiered pricing structures, 5) Discount and promotion strategies. Recommend a pricing framework with rationale.",tip:"Set prices that maximize revenue and customer value."},{title:"KPI Dashboard Blueprint",prompt:"List the 7 most important KPIs for a [BUSINESS TYPE] to track. Organize across: 1) Customer acquisition metrics, 2) Retention and engagement indicators, 3) Product usage and adoption rates, 4) Financial health measures (MRR, CAC, LTV). Include target ranges and measurement frequency for each KPI.",tip:"Define the metrics that matter for executive decision-making."},{title:"Growth Levers Analysis",prompt:"Identify 5 scalable growth levers for a [TYPE OF BUSINESS], focusing on revenue expansion, operational leverage, and brand amplification. For each lever, explain implementation approach and expected impact.",tip:"Discover untapped growth opportunities systematically."},{title:"Industry Reports Summary",prompt:"Extract the key takeaways from [REPORT NAME OR SOURCE] on [TOPIC]. Emphasize statistics, challenges, opportunities, and actionable recommendations for [AUDIENCE]. Format for executive briefing.",tip:"Distill lengthy reports into actionable insights."},{title:"Case Studies Research",prompt:"Share 3 real-world case studies of how companies in [INDUSTRY] effectively used [TECHNOLOGY/STRATEGY] to accomplish [SPECIFIC GOAL]. Include measurable results, implementation approach, and lessons learned.",tip:"Learn from proven success stories in your industry."},{title:"Negotiation Tactics",prompt:"Act like a negotiations expert and prepare negotiation tactics for [DEAL]. Include key points, desired outcomes, and potential compromises to achieve the best results for [COMPANY] while maintaining positive relationships.",tip:"Prepare negotiation strategies for win-win outcomes."},{title:"Partnership Proposal",prompt:"Act like a business development manager and write a partnership proposal for [POTENTIAL PARTNER]. Include mutual benefits, partnership structure, and expected outcomes to establish a strong foundation for collaboration and growth of [PARTNERSHIP GOAL].",tip:"Structure partnership proposals that attract collaborators."},{title:"Innovation Workshop Agenda",prompt:"Act like an innovation consultant and design an agenda for [WORKSHOP]. Include key topics, activities, and desired outcomes to foster creativity and drive innovation within [TEAM/ORGANIZATION].",tip:"Facilitate productive innovation sessions."},{title:"Expense Reduction Plan",prompt:"Act like a financial consultant and develop a plan to reduce expenses for [COMPANY]. Include cost-cutting measures, efficiency improvements, and monitoring processes to optimize budget and increase profitability.",tip:"Identify and implement cost reduction opportunities."},{title:"Crisis Management Plan",prompt:"Act like a crisis management expert and develop a crisis management plan for [POTENTIAL ISSUE]. Include: 1) Response protocols and decision trees, 2) Communication strategies for stakeholders, 3) Key contacts and escalation paths, 4) Media handling guidelines, 5) Recovery and reputation repair steps.",tip:"Prepare for unexpected challenges with structured crisis protocols."},{title:"Internal Audit Plan",prompt:"Act like an internal auditor and develop a plan for [DEPARTMENT/COMPANY]. Include audit objectives, scope, methodology, and timeline to ensure compliance and identify areas for operational improvement.",tip:"Structure internal audits for compliance and improvement."},{title:"Vendor Evaluation Matrix",prompt:"Act like a procurement manager and create a vendor evaluation matrix for [SERVICE/PRODUCT]. Include: 1) Evaluation criteria (price, quality, reliability, support), 2) Weighted scoring system, 3) Vendor comparison table, 4) Risk asse
486ssment per vendor, 5) Recommendation with rationale.",tip:"Select vendors with objective, structured evaluation."},{title:"Product Roadmap",prompt:"Act like a product manager and create a strategic product roadmap for [PRODUCT]. Include: 1) Current state and vision, 2) Key milestones and deliverables by quarter, 3) Technical requirements and dependencies, 4) Resource allocation and team responsibilities, 5) Success metrics and validation criteria. Cover the next [TIMEFRAME].",tip:"Plan product evolution with strategic roadmaps."},{title:"Product Feature Prioritization",prompt:"Act like a product manager and prioritize a list of 10 features for [PRODUCT]. Use the RICE scoring model (Reach, Impact, Confidence, Effort) to evaluate each feature and provide a recommendation for the next sprint or release.",tip:"Prioritize product features with data-driven frameworks."},{title:"Product Launch Checklist",prompt:"Act like a product launch manager and create a launch checklist for [PRODUCT]. Include key tasks, deadlines, and responsible parties to ensure seamless coordination and successful launches for maximum market impact.",tip:"Launch products with comprehensive planning."}],LK=[{title:"Blog Post Ideas",prompt:"Act like a content strategist and generate 10 blog post ideas for [INDUSTRY/NICHE]. Include catchy titles, key points to cover, and potential call-to-actions to engage [TARGET AUDIENCE] and drive [BUSINESS GOAL].",tip:"Generate blog content ideas that drive traffic."},{title:"Content Ideas Generator",prompt:"Create 10 LinkedIn content ideas about [YOUR NICHE/TOPIC] that will engage [TARGET AUDIENCE]. Suggest formats like infographics, carousels, posts, and thought-leadership insights. Include hooks and call-to-actions for each.",tip:"Generate engaging content ideas at scale."},{title:"Monthly Content Calendar",prompt:"Act like a content manager and create a content calendar for [MONTH] for [BRAND]. Include various post types, seasonal themes, and important dates to maintain consistent engagement with [AUDIENCE] across [PLATFORMS].",tip:"Plan monthly content for consistent publishing."},{title:"Marketing Campaign Plan",prompt:"Act like a marketing strategist and draft a comprehensive campaign plan for [PRODUCT/SERVICE]. Include target audience, key messages, channels, and metrics to measure success and drive engagement towards [MARKETING GOAL].",tip:"Plan marketing campaigns with clear objectives and metrics."},{title:"Annual Marketing Budget",prompt:"Act like a marketing manager and prepare an annual budget for [MARKETING DEPARTMENT]. Include key campaigns, estimated costs, and ROI projections to allocate resources effectively and support [MARKETING GOALS].",tip:"Plan marketing spend for maximum ROI."},{title:"Email Follow-Up Template",prompt:"Act like a sales manager and craft an email follow-up template for [CLIENT/LEAD]. Include a personalized greeting, a summary of the previous conversation, and a clear call to action to maintain engagement and progress towards [DESIRED OUTCOME].",tip:"Structure follow-ups that keep deals moving forward."},{title:"Email Subject Lines",prompt:"Act like an email copywriter and write 10 different subject lines for [EMAIL TYPE/CAMPAIGN]. Include emotional, urgency, and curiosity variations to maximize open rates with [TARGET AUDIENCE].",tip:"Craft subject lines that boost email open rates."},{title:"Social Media Strategy",prompt:"Act like a social media strategist and create a strategy for [BRAND] on [PLATFORMS]. Include: 1) Audience analysis and personas, 2) Content pillars and themes, 3) Posting frequency and optimal times, 4) Engagement tactics and community building, 5) KPIs and measurement framework.",tip:"Build social media presence with a strategic approach."},{title:"Personal Brand Positioning",prompt:"Act like a personal branding strategist and help [PERSON] develop a compelling personal brand. Include: 1) Core value proposition and unique expertise, 2) Key themes and messaging pillars, 3) Platform strategy (LinkedIn, Twitter, speaking), 4) Content plan to build authority, 5) Networking and visibility opportunities.",tip:"Build a personal brand that attracts opportunities."},{title:"Sales Pitch Script",prompt:"Act like a sales strategist and draft a sales pitch script for [PRODUCT/SERVICE]. Include: 1) Opening hook to capture attention, 2) Key value propositions and differentiators, 3) Common objection handling, 4) Social proof and case study references, 5) Clear call-to-action. Target audience: [AUDIENCE]. Desired outcome: [OUTCOME].",tip:"
486Craft sales pitches that convert prospects into customers."}],FK=[{title:"Churn Reduction Strategy",prompt:"Recommend 3 evidence-based strategies to reduce churn for a SaaS product serving [TARGET CUSTOMER]. Use customer behavior patterns, feedback loops, and early warning indicators. Include implementation roadmap and expected impact on retention.",tip:"Reduce customer churn with data-driven strategies."},{title:"Client Onboarding Checklist",prompt:"Act like a customer success manager and create an onboarding checklist for [NEW CLIENT/CUSTOMER]. Include essential steps, necessary documents, and key contacts to ensure a seamless onboarding process and a positive start to [CLIENT RELATIONSHIP].",tip:"Ensure smooth client onboarding with structured checklists."},{title:"Client Retention Strategy",prompt:"Act like a client success manager and outline a retention strategy for [KEY CLIENTS]. Include: 1) Engagement tactics and touchpoint cadence, 2) Personalized communication approaches, 3) Value-add services to deepen relationships, 4) Early churn indicators and intervention triggers.",tip:"Reduce churn and strengthen key client relationships."},{title:"Customer Engagement Plan",prompt:"Act like a customer relationship manager and create an engagement plan for [AUDIENCE]. Include interaction tactics, communication channels, and personalized content to strengthen relationships and enhance loyalty for [BRAND].",tip:"Deepen customer relationships with strategic engagement."},{title:"Customer Feedback Survey",prompt:"Act like a customer experience specialist and design a feedback survey for [PRODUCT/SERVICE]. Include key questions, response options, and a thank-you note to gather valuable insights and improve [CUSTOMER SATISFACTION].",tip:"Collect actionable customer feedback systematically."},{title:"Customer Insights",prompt:"Review customer feedback and forum discussions to identify the most frequent complaints, requests, and positive feedback regarding [PRODUCT/SERVICE]. Synthesize into actionable insights for product and service improvement.",tip:"Extract actionable insights from customer voice."},{title:"Customer Journey Mapping",prompt:"Act like a customer experience designer and map the customer journey for [PRODUCT/SERVICE]. Include touchpoints, pain points, and improvement opportunities to enhance overall experience and satisfaction for [TARGET CUSTOMERS].",tip:"Understand and improve every customer touchpoint."},{title:"Customer Retention Plan",prompt:"Act like a customer loyalty manager and design a retention plan for [EXISTING CUSTOMERS]. Include engagement tactics, loyalty programs, and feedback mechanisms to enhance customer loyalty and reduce churn for [BUSINESS].",tip:"Build loyalty programs that reduce customer churn."}],BK=[{title:"30-60-90 Day Performance Plan",prompt:"Create a 30-60-90 day performance plan for a new [ROLE] joining [COMPANY]. Include: 1) First 30 days: onboarding, learning, and relationship building, 2) Days 31-60: initial contributions and quick wins, 3) Days 61-90: measurable impact and strategic initiatives, 4) KPIs for each phase. Ensure alignment with company objectives.",tip:"Structure executive onboarding for rapid impact."},{title:"Performance Review Template",prompt:"Act like an HR manager and design a performance review template for [EMPLOYEE/TEAM]. Include performance criteria, rating scales, and feedback guidelines to evaluate and develop talent in [ORGANIZATION].",tip:"Standardize performance reviews for fair evaluation."},{title:"Employee Motivation Plan",prompt:"Act like a human resources manager and create a motivation plan for [TEAM/DEPARTMENT]. Include recognition programs, incentives, and career development opportunities to boost morale and performance in [WORK ENVIRONMENT].",tip:"Boost team morale with structured motivation strategies."},{title:"Employee Training Schedule",prompt:"Act like a training coordinator and develop a training schedule for [NEW HIRES/ONGOING TRAINING]. Include training modules, dates, and instructors to ensure comprehensive skill development and alignment with [COMPANY STANDARDS].",tip:"Plan systematic training programs for team development."},{title:"Employee Wellness Program",prompt:"Act like a wellness coordinator and develop a wellness program for [EMPLOYEES]. Include health initiatives, participation incentives, and support resources to promote well-being and increase productivity in [WORKPLACE].",tip:"Design programs that support employee wellbeing."},{title:"Team Building Workshop",prompt:"Act like a team development facilitator and design a team building workshop for [TEAM/DEPARTMENT]. Include: 1) Ice-breakers and warm-up activities, 2) Collaborative exercises and challenges, 3) Communication and trust-building activities, 4) Reflection and action planning, 5) Follow-up accountability measures.",tip:"Strengthen team dynamics with structured workshops."},{title:"Budget Allocation Plan",prompt:"Act like a financial planner and outline a budget allocation plan for [DEPARTMENT/PROJECT]. Include: 1) Key expense categories with projected costs, 2) Fu
486nding sources and constraints, 3) ROI expectations for major investments, 4) Contingency reserves, 5) Quarterly review checkpoints.",tip:"Structure budgets for maximum strategic impact."},{title:"Meeting Agenda Creation",prompt:"Act like a professional project manager and create a detailed meeting agenda for [PROJECT/MEETING] scheduled on [DATE]. Include key discussion points, assigned tasks, and expected outcomes to ensure all participants are prepared and aligned with [MAIN OBJECTIVE].",tip:"Structure meetings for maximum productivity and clarity."},{title:"Event Planning Checklist",prompt:"Act like an event planner and create a detailed checklist for [EVENT]. Include key tasks, deadlines, responsible parties, and budget considerations to ensure seamless coordination and successful execution of [EVENT OBJECTIVES].",tip:"Plan events with comprehensive checklists."}],$K=[{title:"Excel Formulas with AI",prompt:"I'm working in Excel with two sheets: one has sales order & order amount, the other has sales orders with customer names & dates. I need a formula to fetch the customer name in the first sheet using sales order as the key. Give me the exact formula and explain how to use it.",tip:"Let AI write your Excel formulas — just describe what you need."},{title:"Python Financial Analysis",prompt:"My data is in an Excel file called 'Sales 2025'. I'm using Google Colab. Generate the full Python code to identify outliers and show me a geographical dashboard. Here are the headers and first 5 lines as example: [insert data example here].",tip:"Turn raw data into visual dashboards with AI-generated Python code."},{title:"Budget Instructions Draft",prompt:"I am the finance manager. I need to draft the instructions for this year's budget. Help me create the instructions for all departments and for the finance team. It needs to include objectives, key assumptions, time schedule and deliverables. Ask me for information you need before starting and I will provide them.",tip:"Draft comprehensive budget instructions for all departments."},{title:"Gap-Closing Action Plan",prompt:"I'm an FP&A analyst. Sales came in 15% below budget due to supply chain delays. Can you draft a bullet-point action plan I can present to management to close the gap? Make it solution-oriented, measurable, and structured like a proactive finance business partner.",tip:"Create actionable plans to close budget-vs-actual gaps."},{title:"Financial Statement Notes",prompt:"I'm preparing financial statements under US GAAP. Can you draft a note for property, plant, and equipment with a table by category showing cost, depreciation and net value? Also include useful lives by category. Use a clear, compliant format like a Big 4 partner would.",tip:"Draft GAAP-compliant financial statement notes instantly."},{title:"Budget Input Email Request",prompt:"I work in finance and need inputs from other departments on 2026 external service needs for our budget. Help me write a clear email request and create a sample table they can fill. Deadline is June 30, 2025. Use a professional tone — like a finance coordinator gathering inputs.",tip:"Write professional emails to gather budget inputs from departments."},{title:"Advanced Financial Modeling",prompt:"I'm a young finance professional starting a new role. Teach me advanced financial modeling skills — what they are, why they matter, and how to learn and apply them on the job. Break it down clearly, like a mentor training someone for high-performance FP&A work.",tip:"Learn advanced financial modeling like a mentor is teaching you."},{title:"Visual Scenario Planning",prompt:"I'm creating a visual called '2025 Financial Forecast Scenarios'. Show 3 cases side-by-side: Best case ($24M rev, $6M EBITDA), Base ($20M, $4.5M), Downturn ($14M, breakeven). Use horizontal bars with green, gray, & red, plus icons. Make it clean & exec-ready using the best Financial Storytelling techniques.",tip:"Create executive-ready visual scenario comparisons."},{title:"Cash Flow Projection",prompt:"I'm building a 12-month cash flow projection for a small retail business. Include beginning cash, inflows, outflows, and ending balance. Present it in a simple, table format. Make it clear and easy to understand for a business owner by using Excel graphs.",tip:"Generate 12-month cash flow projections with visual charts."},{title:"Dunning Letter Templates",prompt:"I'm managing receivables and need 3 dunning letter templates: first notice, reminder, and final warning before legal action. Each should include placeholders for invoice number & amount. Tone must escalate with each letter — like a finance pro handling collections professionally.",tip:"
486Create escalating collection letters for receivables management."},{title:"Cost Reduction Plan",prompt:"I'm a financial analyst at a manufacturing company. My manager asked for a cost reduction plan. Create a table with the best cost-cutting ideas, action steps, and impact column — a 5-step mini plan. Keep it practical, valuable & structured, like the best cost-cutter consultant would do.",tip:"Draft structured cost reduction plans with measurable impact."},{title:"Finance Business Partner Questions",prompt:"I'm a finance business partner meeting the head of sales & marketing for the first time. Suggest 10 smart questions I can ask to build trust, understand their priorities, and show how finance can support growth — like a strategic partner starting a high-impact relationship.",tip:"Prepare strategic questions for cross-functional business partnering."},{title:"Standard Operating Procedure",prompt:"I'm an accountant using QuickBooks. I need a step-by-step SOP for bank reconciliation that complies with internal controls. Make it clear, structured, and practical — like a finance team documenting clean processes for an audit-ready company.",tip:"Create audit-ready SOPs for financial processes."}],UK=[{title:"RCA: Define the Problem Clearly",prompt:"I am facing [describe the issue in detail]. Help me define this problem clearly by restating it in one sentence, breaking it into measurable components, and identifying both the symptoms and possible hidden causes. Present your output in a structured table with columns: Symptom, Impact, Possible Hidden Cause.",tip:"Start every root cause analysis with crystal-clear problem definition."},{title:"RCA: Five Whys Analysis",prompt:"Perform a Five Whys root cause analysis for the issue: [insert issue]. Start with the surface problem, ask why five times, and document each answer step-by-step. End with the deepest possible root cause, and summarize it in plain English.",tip:"Drill down to the deepest root cause with iterative questioning."},{title:"RCA: Fishbone Diagram (Ishikawa)",prompt:"Construct a textual Fishbone diagram for the issue [insert problem]. Break down causes into six major categories: People, Process, Technology, Materials, Environment, and Management. Under each category, list detailed contributing factors in bullet points.",tip:"Map all possible cause categories visually for comprehensive analysis."},{title:"RCA: Problem vs. Symptom Clarification",prompt:"For the problem [insert problem], separate what is a symptom vs. what is the actual root cause. Provide a two-column table where the first column lists all symptoms, and the second column hypothesizes potential root causes behind them.",tip:"Distinguish symptoms from causes to avoid treating the wrong issue."},{title:"RCA: Timeline of Events Analysis",prompt:"Reconstruct a timeline of events leading to the problem [insert problem]. Identify the sequence of triggers, key actions, and decisions. Highlight the earliest detectable point where intervention could have prevented escalation.",tip:"Trace the chain of events to find the earliest intervention point."},{title:"RCA: Stakeholder Perspective Mapping",prompt:"Analyze the problem [insert problem] from the perspective of different stakeholders: customer, employee, manager, and external partner. For each, list what they perceive as the cause, how it impacts them, and what evidence supports or contradicts their view.",tip:"Understand how different stakeholders see the same problem differently."},{title:"RCA: Barrier Analysis",prompt:"Conduct a barrier analysis for the incident [insert problem]. Identify what barriers (policies, checks, systems) were supposed to prevent this, how they failed, and what gaps existed. Present results in a table: Barrier Expected Function | How it Failed | Possible Improvements.",tip:"Identify which safeguards failed and why."},{title:"RCA: Fault Tree Analysis (FTA)",prompt:"Perform a Fault Tree Analysis for [insert problem]. Start with the top-level failure, then break it down into possible sub-failures using AND/OR logic. Present hierarchically as an outline showing how multiple causes combine to create the main issue.",tip:"Map how multiple failures comb
486ine to create the top-level problem."},{title:"RCA: Systems Thinking Approach",prompt:"Apply systems thinking to the problem [insert issue]. Map out feedback loops, reinforcing cycles, and delays within the system that might have created or worsened the issue. Provide both a textual diagram and an explanation of leverage points.",tip:"Reveal hidden feedback loops and systemic patterns driving the issue."},{title:"RCA: Pareto Analysis (80/20 Rule)",prompt:"Create a Pareto analysis of events leading to the problem [insert problem]. Identify the sequence of triggers, key actions, and decisions. Highlight the earliest detectable point where intervention could have prevented escalation.",tip:"Focus on the vital few causes that drive 80% of the problem."},{title:"RCA: Cause-and-Effect Matrix",prompt:"Create a Cause-and-Effect matrix for [insert problem]. In the rows, list potential causes. In the columns, list measurable effects (e.g., cost, time lost, quality, risk). Score each cause-effect link from 1 to 10, and identify the top priority causes.",tip:"Quantify and prioritize causes by their measurable impact."},{title:"RCA: Comparative Case Analysis",prompt:"Compare the current problem [insert problem] with similar past problems in [industry/domain]. Identify common cause patterns, highlight what is unique in this situation, and propose which cause is most likely relevant here.",tip:"Learn from similar problems across industries and domains."},{title:"RCA: Hypothesis Testing Approach",prompt:"Generate multiple hypotheses for the root cause of [insert problem]. For each hypothesis, suggest testable predictions or evidence to confirm or refute it. Present in a table: Hypothesis | Supporting Evidence | Disconfirming Evidence | Next Step.",tip:"Test root cause hypotheses with structured evidence evaluation."},{title:"RCA: Human Factors Analysis",prompt:"Analyze the role of human factors in the problem [insert issue]. Break it into categories: training, motivation, communication, workload, cognitive bias, and error type (slip, lapse, mistake, violation). Identify which contributed most.",tip:"Uncover human-related contributors to operational failures."},{title:"RCA: Process Mapping Analysis",prompt:"Map the process where the issue [insert problem] occurred. Provide a step-by-step textual flowchart. At each step, highlight potential failure points, missing checks, or bottlenecks that may have caused the root issue.",tip:"Visualize process steps to find failure points and bottlenecks."},{title:"RCA: 5W2H Method",prompt:"Apply the 5W2H method to [insert problem]. For each dimension (What, Why, Where, When, Who, How, How much), fill in detailed answers. Use this to clarify scope and identify the most likely root cause.",tip:"Clarify problem scope with structured who/what/where/when/why/how analysis."},{title:"RCA: Contradiction Analysis",prompt:"For the problem [insert issue], identify contradictions such as 'we want X but also Y' that may be driving it. Map out conflicting requirements, priorities, or incentives, and explain how these contradictions contribute to the root cause.",tip:"Surface hidden contradictions and conflicting incentives."},{title:"RCA: Data-Driven Analysis",prompt:"Based on the available data for [insert problem], identify correlations, anomalies, and trends. Highlight which metrics strongly point toward a likely root cause, and which are just noise. Provide recommendations for further data collection.",tip:"Let data guide your root cause identification."},{title:"RCA: Failure Mode and Effects Analysis (FMEA)",prompt:"Perform an FMEA for [insert system/process]. List possible failure modes, their causes, effects, and assign Risk Priority Numbers (RPN) using Severity, Occurrence, and Detection ratings from 1 to 10. Identify the highest risk root causes.",tip:"Systematically assess failure modes and prioritize by risk."},{title:"RCA: Counterfactual Analysis",prompt:"Perform a counterfactual analysis of [insert problem]. Describe what would have happened if a key event or decision had been different. Use this to isolate which factor was critical in creating the root cause.",tip:"Isolate critical factors by exploring 'what if' scenarios."},{title:"RCA: Constraints Analysis",prompt:"Analyze the issue [insert problem] through the Theory of Constraints. Identify the system's weakest link, how it contributed to the problem, and how removing or reinfor
486cing it could prevent recurrence.",tip:"Find and address the system's weakest link."},{title:"RCA: Cost of Root Cause",prompt:"Estimate the cost implications of the root cause behind [insert problem]. Break it down into direct costs, indirect costs, opportunity costs, and long-term risks. Provide calculations and reasoning.",tip:"Quantify the financial impact of root causes for executive buy-in."},{title:"RCA: Scenario Simulation",prompt:"Simulate alternative scenarios for [insert problem]. Describe how the issue would change if variable A increased, variable B decreased, or condition C was removed. Use this to isolate which variable is most likely the root cause.",tip:"Test variables through scenario simulation to isolate root causes."},{title:"RCA: External Factors Analysis",prompt:"Analyze how external factors (market shifts, regulations, environment, competitors) may have contributed to [insert problem]. Distinguish between controllable and uncontrollable factors, and highlight which ones are most likely root causes.",tip:"Assess external forces that may drive internal problems."},{title:"RCA: Cognitive Bias Root Cause",prompt:"Examine whether cognitive biases (confirmation bias, hindsight bias, sunk cost fallacy, overconfidence) influenced the decisions leading to [insert problem]. Identify which bias played the strongest role and how it created the outcome.",tip:"Uncover hidden biases that led to flawed decision-making."},{title:"RCA: Cross-Industry Benchmarking",prompt:"Compare the root causes of [insert problem] with best practices from other industries. Highlight what root cause patterns are universal, and which are specific to my industry. Suggest how other industries solved similar root causes.",tip:"Borrow proven solutions from other industries."},{title:"RCA: Layered Why-Tree",prompt:"Build a layered Why-Tree for the issue [insert problem]. Start with the problem as the root, then expand branches for each cause, then sub-causes, until you reach fundamental systemic-level root causes. Present hierarchically in outline format.",tip:"Build a comprehensive cause hierarchy from surface to systemic level."},{title:"RCA: Prevention-Focused RCA",prompt:"Identify not just the root cause of [insert problem], but also preventive measures. Provide an RCA summary and then recommend preventive actions categorized into short-term fixes, medium-term improvements, and long-term redesigns.",tip:"Go beyond diagnosis to prevention with actionable recommendations."},{title:"RCA: Evidence Weighting",prompt:"List all potential root causes for [insert problem]. For each cause, assign a probability weight based on available evidence (high, medium, low). Provide reasoning for each weight and highlight the most probable root cause.",tip:"Rank root causes by evidence strength for data-driven decisions."},{title:"RCA: Executive Summary",prompt:"Summarize the root cause analysis for [insert problem] in a format suitable for executives. Include: (1) Problem statement, (2) Key findings, (3) Root cause, (4) Business impact, (5) Recommended corrective and preventive actions.",tip:"Present root cause findings in a board-ready executive format."}],mb=({tool:e})=>r.jsxs("div",{className:"dense-list-item flex items-start gap-3 py-3 border-b border-white/5 last:border-0",children:[r.jsx(TK,{url:e.url,name:e.name}),r.jsxs("div",{className:"flex-1 min-w-0",children:[e.profileUrl?r.jsx(de,{href:e.profileUrl,children:r.jsx("span",{className:"text-sm font-medium text-white mb-0.5 hover:text-[#D4A843] transition-colors cursor-pointer",children:e.name})}):r.jsx("p",{className:"text-sm font-medium text-white mb-0.5",children:e.name}),r.jsx("p",{className:"text-xs text-gray-400 leading-relaxed",children:e.description})]}),r.jsx("a",{href:e.url,target:"_blank",rel:"nofollow noopener noreferrer",className:"flex-shrink-0 mt-0.5","data-testid":e.testId,children:r.jsx(S,{className:"h-3.5 w-3.5 text-[#AAAAAA] hover:text-[#D4A843] transition-colors"})})]}),Nt=({tools:e})=>r.jsxs("div",{className:"grid md:grid-cols-2 gap-0",children:[r.jsx("div",{className:"dense-list-panel bg-[#111111] rounded-xl border border-white/10 px-5 py-1 md:rounded-r-none md:border-r-0",children:e.slice(0,Math.ceil(e.length/2)).map(t=>r.jsx(mb,{tool:t},t.testId))}),r.jsx("div",{className:"dense-list-panel bg-[#111111] rounded-xl border border-white/10 px-5 py-1 md:rounded-l-none",children:e.slice(Math.ceil(e.length/2)).map(t=>r.jsx(mb,{tool:t},t.testId))})]}),qK=({p:e})=>{const[t,n]=j.useState(!1),[i,a]=j.useState(!1),s=e.prompt.length>220,o=!i&&s?e.prompt.slice(0,220)+"…":e.prompt,l=()=>{navigator.clipboard.writeText(e.prompt),n(!0),setTimeout(()=>n(!1),2e3)};return r.jsxs("div",{className:"dense-card bg-[#141414] rounded-xl border border-white/15 hover:border-[#D4A843]/40 transition-all duration-200 p-5 flex flex-col gap-3",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsx("h4",{className:"text-sm font-semibold text-white leading-snug",children:e.title}),r.jsxs("button",{onClick:l,className:"flex-shrink-0 flex items-center gap-1.5 px-2.5 py-1 rounded-md text-xs font-medium transition-all duration-200 cursor-pointer",style:t?{backgroundColor:"rgba(196,151,58,0.15)",color:Rs,border:"1px solid rgba(196,151,58,0.3)"}:{backgroundColor:"rgba(255,255,255,0.05)",color:"#6b7280",border:"1px solid rgba(255,255,255,0.08)"},children:[t?r.jsx(Ia,{className:"h-3 w-3"}):r.jsx(W0,{className:"h-3 w-3"}),t?"Copied":"Copy"]})]}),r.jsxs("div",{className:"bg-black/60 rounded-lg p-3.5 border border-white/10",children:[r.jsx("p",{className:"text-xs text-gray-300 font-mono leading-relaxed",children:o}),s&&r.jsx("button",{onClick:()=>a(!i),className:"mt-2.5 text-xs text-[#BBBBBB] hover:text-gray-400 flex items-center gap-1 transition-colors cursor-pointer",children:i?r.jsxs(r.Fragment,{children:[r.jsx(ng,{className:"h-3 w-3"})," Show less"]}):r.jsxs(r.Fragment,{children:[r.jsx(La,{className:"h-3 w-3"})," Show full prompt"]})})]}),r.jsx("p",{className:"text-xs text-[#BBBBBB] italic leading-relaxed",children:e.tip})]})},GK=[{label:"Strategy",key:"strategy"},{label:"Marketing",key:"marketing"},{label:"Customer",key:"customer"},{label:"HR",key:"hr"},{label:"Finance",key:"finance"},{label:"Root Cause",key:"rca"}],HK=({strategyP:e,marketingP:t,customerP:n,hrP:i,financeP:a,rcaP:s})=>{const[o,l]=j.useState("strategy"),c={strategy:e,marketing:t,customer:n,hr:i,finance:a,rca:s},d=c[o]??[];return r.jsxs("div",{children:[r.jsx("div",{className:"flex flex-wrap gap-2 mb-6",children:GK.map(u=>{var f;const p=o===u.key,m=((f=c[u.key])==null?void 0:f.length)??0;return r.jsxs("button",{onClick:()=>l(u.key),className:"flex items-center gap-1.5 px-3.5 py-1.5 rounded-full text-xs font-medium transition-all duration-200 cursor-pointer",style:p?{backgroundColor:"rgba(196,151,58,0.15)",color:Rs,border:"1px solid rgba(196,151,58,0.4)"}:{backgroundColor:"rgba(255,255,255,0.04)",color:"#6b7280",border:"1px solid rgba(255,255,255,0.08)"},children:[u.label,r.jsx("span",{className:"px-1.5 py-0.5 rounded-full text-[10px] font-semibold",style:p?{backgroundColor:"rgba(196,151,58,0.2)",color:Rs}:{backgroundColor:"rgba(255,255,255,0.06)",color:"#4b5563"},children:m})]},u.key)})}),r.jsx("div",{className:"grid md:grid-cols-2 gap-3",children:d.map(u=>r.jsx(qK,{p:u},u.title))})]})}
486,ft=({label:e,title:t,description:n})=>r.jsxs("div",{className:"dense-section-heading mb-5",children:[r.jsx("p",{className:"section-kicker text-xs font-semibold tracking-widest uppercase mb-2",children:e}),r.jsx("h2",{className:"text-2xl md:text-3xl font-light text-white mb-2",children:t}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:n})]}),zK=()=>r.jsx("section",{id:"ai-value-creation-map",className:"border-t border-white/5 bg-[#0A0A0A] scroll-mt-24",children:r.jsxs("div",{className:"container mx-auto max-w-5xl px-4 py-8 sm:px-8 md:py-10",children:[r.jsxs("div",{className:"mb-6 max-w-3xl",children:[r.jsx("p",{className:"section-kicker mb-2 text-xs font-semibold uppercase tracking-widest",children:"AI Value Creation Map"}),r.jsx("h2",{className:"mb-2 text-2xl font-light tracking-tight text-white md:text-3xl",children:"Where AI can create enterprise value."}),r.jsx("p",{className:"text-sm leading-relaxed text-[#CCCCCC]",children:"A practical map of the AI systems reshaping revenue growth, operating margins, G&A, decision-making, risk and enterprise capability."})]}),r.jsx("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3",children:DK.map((e,t)=>r.jsxs("a",{href:e.href,className:"group rounded-lg border border-white/10 bg-[#111111] px-4 py-4 transition-colors hover:border-[#D4A843]/45",children:[r.jsxs("div",{className:"mb-3 flex items-center gap-3",children:[r.jsx("span",{className:"text-[10px] font-semibold tracking-[0.18em] text-[#777777]",children:String(t+1).padStart(2,"0")}),r.jsx("span",{className:"text-[11px] font-semibold tracking-[0.14em] text-[#D4A843]",children:e.label})]}),r.jsx("p",{className:"text-xs leading-relaxed text-[#B8B8B8] group-hover:text-white",children:e.detail})]},e.label))})]})}),WK=()=>(j.useEffect(()=>{if(!window.location.hash)return;const e=document.getElementById(window.location.hash.slice(1));e&&requestAnimationFrame(()=>e.scrollIntoView({behavior:"smooth",block:"start"}))},[]),r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:xs.title,description:xs.description,canonicalUrl:xs.canonicalPath,keywords:xs.keywords,twitterCard:"summary"}),r.jsxs("div",{className:"dense-content-page dense-toolkit-page min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A]",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 pt-16 pb-10 max-w-5xl",children:[r.jsx(de,{href:"/ai-strategy-toolkit",children:r.jsx("span",{className:"text-xs text-[#BBBBBB] hover:text-gray-400 transition-colors cursor-pointer",children:"← Intelligence Stack"})}),r.jsxs("div",{className:"mt-6",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:Rs},children:"AI Value Creation Toolkit"}),r.jsx("h1",{className:"text-2xl font-semibold text-white mb-3",children:"AI Readiness & Operating Model Toolkit"}),r.jsx("p",{className:"mb-2 text-xs font-medium text-white",children:"For CEOs, Operating Partners and functional leaders."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl mb-1",children:"A curated set of AI systems for workflow automation, operating efficiency, revenue execution, customer service, finance, recruiting, and knowledge work — selected for their relevance to value creation and AI readiness in mid-market companies."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Designed to help company leaders build the operating model investors assess. Educational reference only — no affiliation or endorsement."})]})]})}),r.jsx(zK,{}),r.jsx("section",{className:"elevated-section bg-[#141414] border-t border-white/5",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 py-8 max-w-5xl",children:r.jsx("div",{className:"dense-navigator bg-[#0D0D0D] rounded-2xl border border-white/10 p-6 md:p-10 mb-2",children:r.jsx($5,{})})})}),r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 pb-20 max-w-5xl content-rhythm",children:[r.jsxs("section",{id:"knowledge-research",className:"scroll-mt-24",children:[r.jsx(ft,{label:"Knowledge & Research",title:"AI for Research, Analysis & Decision Support",description:"General-purpose AI assistants for drafting, research, synthesis, and reasoning — the starting point for any AI-enabled team."}),r.jsx(Nt,{tools:U5})]}),r.jsxs("section",{id:"revenue-sales",className:"scroll-mt-24",children:[r.jsx(ft,{label:"Revenue & Sales",title:"AI for CRM, Sales & Revenue Growth",description:"AI-powered CRM platforms that automate sales follow-ups, score leads, and forecast pipeline performance."}),r.jsx(Nt,{tools:[...G5,...hR]})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Marketing & Content",title:"AI for Brand, Content & Marketing Production",description:"AI tools for visual design, image and video generation, copywriting, and content at scale — from social media to presentations."}),r.jsx(Nt,{tools:q5})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Customer Service",title:"AI for Customer Engagement & Support",description:"Train AI chatbots on your own content and embed them on your website — handle customer queries automatically, 24/7."}),r.jsx(Nt,{tools:H5})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Meetings & Productivity",title:"AI for Meetings, Notes & Team Productivity",description:"AI meeting recorders, note-takers, and productivity suites that capture every decision and free your team from administrative overhead."}),r.jsx(Nt,{tools:z5}
486)]}),r.jsxs("section",{id:"operations-workflow",className:"scroll-mt-24",children:[r.jsx(ft,{label:"Operations & Workflow",title:"Process Automation & Operational Efficiency",description:"Platforms for automating repetitive processes, connecting business apps, and reducing manual overhead across operations."}),r.jsx(Nt,{tools:[...W5,...mR]})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Website & Digital",title:"Build Websites & Digital Products with AI",description:"No-code AI website builders and app generators — go from idea to a live digital presence in minutes, without a development team."}),r.jsx(Nt,{tools:V5})]}),r.jsxs("section",{id:"finance-data",className:"scroll-mt-24",children:[r.jsx(ft,{label:"Finance & Data",title:"AI for Analytics, Reporting & Business Intelligence",description:"BI dashboards, predictive analytics, and plain-language data querying — turn your business data into decisions without a data science team."}),r.jsx("div",{className:"bg-[#111111] rounded-xl border border-white/10 px-5 py-1",children:[...Y5,...uR].map(e=>r.jsx(mb,{tool:e},e.testId))})]}),r.jsxs("section",{id:"professional-vertical-ai",className:"scroll-mt-24",children:[r.jsx(ft,{label:"Professional & Vertical AI",title:"Domain-Specific AI Tools",description:"AI tools built for specific professions — legal, finance, healthcare, and other domain-specific use cases."}),r.jsx(Nt,{tools:[...Z5,...dR,...pR]})]}),r.jsxs("section",{id:"financial-services-risk",className:"scroll-mt-24",children:[r.jsx(ft,{label:"Financial Services & Risk",title:"AI for Financial Services, Risk & Compliance",description:"AI systems for fraud detection, compliance, financial workflows, customer operations and decision support — relevant for PE-backed financial services, fintech, insurance and wealth management companies."}),r.jsx(Nt,{tools:[...X5,...fR]})]}),r.jsxs("div",{id:"ai-developer-stack",className:"scroll-mt-24 border-t border-white/10 pt-8",children:[r.jsx("p",{className:"mb-2 text-xs font-semibold uppercase tracking-widest",style:{color:Rs},children:"AI Developer Stack"}),r.jsx("h2",{className:"mb-2 text-2xl font-light text-white md:text-3xl",children:"Technical infrastructure for builders."}),r.jsx("p",{className:"mb-2 text-xs font-medium text-white",children:"For technical teams and builders."}),r.jsx("p",{className:"max-w-3xl text-xs leading-relaxed text-[#BBBBBB]",children:"Frameworks, models, data infrastructure and developer tools for organisations building AI-native systems internally."})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Developer Tools",title:"Advanced AI for Technical Teams",description:"AI coding assistants, development environments, and automation tools for companies with in-house technical capability."}),r.jsx(Nt,{tools:K5})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Open Source & AI Models",title:"Open-Source AI Models & Infrastructure",description:"Open-source LLMs, agent frameworks, ML platforms, and datasets — for organisations building or fine-tuning their own AI capabilities."}),r.jsx(Nt,{tools:Q5})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"LLM",title:"Language Model Providers",description:"API and self-hosted LLM options for production applications — from frontier proprietary models to open-weight local inference."}),r.jsx(Nt,{tools:J5})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Agentic AI",title:"Agentic AI Frameworks",description:"Frameworks for building multi-step, multi-agent AI systems — stateful orchestration, role-based collaboration, and autonomous task execution."}),r.jsx(Nt,{tools:eR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"RAG",title:"Retrieval-Augmented Generation",description:"Frameworks and engines for connecting LLMs to external knowledge — document ingestion, chunking, retrieval, and generation pipelines."}),r.jsx(Nt,{tools:tR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Embedding",title:"Embedding Models",description:"Text embedding models for semantic search, RAG retrieval, and similarity matching — proprietary APIs and open-source alternatives."}),r.jsx(Nt,{tools:nR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"MCP",title:"Model Context Protocol",description:"Anthropic's open standard for connecting AI models to tools, data, and services — SDK, reference servers, and community connectors."}),r.jsx(Nt,{tools:rR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"AI Security",title:"AI Security & Guardrails",description:"Tools for securing LLM applications — prompt injection detection, PII redaction, output validation, and content safety."}),r.jsx(Nt,{tools:iR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Observability",title:"LLM Observability & Evaluation",description:"Tracing, evaluation, and monitoring platforms for production LLM applications — debug, benchmark, and track quality over time."}),r.jsx(Nt,{tools:aR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Memory",title:"AI Memory Systems",description:"Persistent and session memory solutions for AI agents — from purpose-built memory layers to vector, graph, and relational stores."}),r.jsx(Nt,{tools:sR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"AI Agent SDKs",title:"AI Agent SDKs & Platforms",description:"Official SDKs and managed platforms for building production AI agents — from open-source libraries to cloud-native agent services."}),r.jsx(Nt,{tools:oR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Automation",title:"Automation & Workflow Orchestration",description:"From no-code automation tools to enterprise-grade pipeline orchestrators — covering both business workflow and technical ML pipeline needs."}),r.jsx(Nt,{tools:lR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Vector Database",title:"Vector Databases",description:"Databases optimised for storing and searching high-dimensional embedding vectors — the retrieval layer of every RAG system."}),r.jsx(Nt,{tools:cR})]}),r.jsxs("section",{children:[r.jsx(ft,{label:"Prompt Library",title:"Business Prompt Library",description:"Business-grade prompts for strategy, marketing, customer management, HR, finance, and root cause analysis. Select a category, copy, and adapt."}),r.jsx(HK,{strategyP:RK,marketingP:LK,customerP:FK,hrP:BK,financeP:$K,rcaP:UK})]}),r.jsx("p",{className:"text-center text-xs text-[#AAAAAA] italic",children:"Educational reference only. No affiliation or endorsement. All tool names and trademarks belong to their respective owners."}),r.jsx("div",{className:"text-center mt-8",children:r.jsx(de,{href:"/assessment",children:r.jsxs("span",{className:"inline-flex items-center gap-2 text-sm font-medium cursor-pointer transition-opacity hover:opacity-75",style:{color:Rs},children:["From opportunity to investment case — explore the Assessment ",r.jsx("span",{"aria-hidden":"true",children:"→"})]})})})]})]}),r.jsx(ht,{})]})),Mc="#D4A843",VK=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Marco Mizzau — Founder, PrivateEquity.ai",description:"Marco Mizzau is Founder of PrivateEquity.ai and Chairman of Blacktrace. Former CEO of Consip and Director General of Inarcassa. Advisor to private equity funds and institutional investors across Europe.",canonicalUrl:"/marco-mizzau",keywords:"Marco Mizzau, PrivateEquity.ai, Blacktrace, AI due diligence private equity, Consip, Inarcassa, private equity advisor, capital allocation, operating model transformation",ogType:"profile"}),r.jsx("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify({"@context":"https://schema.org","@type":"ProfilePage","@id":"https://www.privatequity.ai/marco-mizzau#profilepage",url:"https://www.privatequity.ai/marco-mizzau",name:"Marco Mizzau — Founder, PrivateEquity.ai",dateCreated:"2025-01-01T00:00:00+00:00",dateModified:"2026-07-10T00:00:00+00:00",inLanguage:"en",isPartOf:{"@type":"WebSite","@id":"https://www.privatequity.ai/#website",url:"https://www.privatequity.ai"},breadcrumb:{"@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"PrivateEquity.ai",item:"https://www.privatequity.ai"},{"@type":"ListItem",position:2,name:"Marco Mizzau",item:"https://www.privatequity.ai/marco-mizzau"}]},mainEntity:{"@type":"Person","@id":"https://www.privatequity.ai/#person",name:"Marco Mizzau",url:"https://www.privatequity.ai/marco-mizzau",image:{"@type":"ImageObject",url:"https://www.privatequity.ai/marco-mizzau.jpg",caption:"Marco Mizzau — Founder, PrivateEquity.ai"},jobTitle:"Founder",description:"Marco Mizzau is Founder of PrivateEquity.ai — an independent intelligence platform for AI due diligence in private equity — and Chairman of Blacktrace. Former CEO of Consip and Director General of Inarcassa. Advisor to private equity funds and institutional investors across Europe on strategy, governance, capital allocation and complex transformation.",email:"[email protected]",nationality:{"@type":"Country",name:"Italy"},knowsLanguage:["en","it"],knowsAbout:["AI Due Diligence","Private Equity","Capital Allocation","Strategic Transformation","Operating Model","Institutional Investment","Financial Restructuring","Artificial Intelligence"],hasOccupation:[{"@type":"Role",roleName:"Founder",works
486For:{"@type":"Organization",name:"PrivateEquity.ai",url:"https://www.privatequity.ai"}},{"@type":"Role",roleName:"Chairman",worksFor:{"@type":"Organization",name:"Blacktrace",url:"https://blacktrace.uk"}}],alumniOf:[{"@type":"Organization",name:"Consip"},{"@type":"Organization",name:"Inarcassa"},{"@type":"Organization",name:"KPMG"},{"@type":"Organization",name:"EY"},{"@type":"Organization",name:"Accenture"},{"@type":"Organization",name:"Ferrovie dello Stato"}],sameAs:["https://www.linkedin.com/in/marcomizzau/","https://blacktrace.uk/marco-mizzau/","https://www.linkedin.com/company/private-equity-fund-advisory/"]}})}}),r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A] py-20 md:py-28",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:r.jsxs("div",{className:"flex flex-col md:flex-row gap-12 md:gap-16 items-start",children:[r.jsx("div",{className:"flex-shrink-0",children:r.jsx("div",{className:"w-48 h-56 md:w-56 md:h-64 overflow-hidden rounded-xl border border-white/10",children:r.jsx("img",{src:"/marco-mizzau.jpg",alt:"Marco Mizzau — Founder, PrivateEquity.ai",width:224,height:256,decoding:"async",className:"w-full h-full object-cover object-top grayscale"})})}),r.jsxs("div",{className:"flex flex-col justify-center",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-4",style:{color:Mc},children:"Founder"}),r.jsx("h1",{className:"text-4xl md:text-5xl font-light tracking-tight text-white mb-3 leading-tight",children:"Marco Mizzau"}),r.jsx("p",{className:"text-base mb-6",style:{color:Mc},children:"PrivateEquity.ai"}),r.jsx("div",{className:"flex flex-wrap gap-4",children:r.jsxs("a",{href:"https://www.linkedin.com/in/marcomizzau/?locale=en_US",target:"_blank",rel:"nofollow noopener noreferrer",className:"inline-flex items-center gap-2 text-sm text-gray-400 hover:text-white transition-colors",children:[r.jsx(VD,{className:"h-4 w-4 text-[#0A66C2]"}),"LinkedIn"]})})]})]})})}),r.jsx("section",{className:"elevated-section py-16 md:py-20 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-3xl",children:[r.jsx("div",{className:"mb-6",style:{width:"2rem",height:"1px",backgroundColor:Mc}}),r.jsxs("div",{className:"space-y-5 text-base text-gray-400 leading-relaxed",children:[r.jsxs("p",{children:["Marco Mizzau is Founder of"," ",r.jsx("a",{href:"https://www.privatequity.ai",style:{color:Mc},children:"PrivateEquity.ai"})," ","— an independent intelligence platform for AI due diligence in private equity — and Chairman of"," ",r.jsx("a",{href:"https://blacktrace.uk/",target:"_blank",rel:"nofollow noopener noreferrer",style:{color:Mc},children:"Blacktrace"}),"."]}),r.jsx("p",{children:"He previously served as Chief Executive Officer of Consip, the Italian government's national procurement platform and one of the largest public purchasing systems in Europe, where he led the transformation of the organisation's operating model and digital procurement infrastru
486cture."}),r.jsx("p",{children:"Earlier, he was Director General of Inarcassa, one of Italy's largest institutional investors, overseeing the strategic management and modernisation of its operational model and institutional investment framework."}),r.jsx("p",{children:"He spent nearly a decade in international advisory firms including KPMG, EY and Accenture, working as Senior Manager on strategic transformation, financial restructuring and digital innovation programmes for large corporate groups across energy, utilities and infrastructure in Europe, Turkey, Russia and the Middle East."}),r.jsx("p",{children:"He began his career at Ferrovie dello Stato, contributing to the industrial restructuring and privatisation processes that reshaped the Italian railway group in the early 2000s."}),r.jsx("p",{children:"He currently advises private equity funds, institutional investors and industrial companies on strategy, governance, capital alignment and complex transformation initiatives across infrastructure, industrial manufacturing and technology-enabled platforms."}),r.jsx("p",{children:"He works with investors, boards and leadership teams across Europe on high-impact strategic and capital allocation decisions."})]}),r.jsx("div",{className:"mt-14 pt-8 border-t border-white/10",children:r.jsx("p",{className:"text-xs text-[#BBBBBB] leading-relaxed",children:"Content on this platform is provided for informational and research purposes only. It does not constitute investment, financial, or advisory services of any kind."})})]})})]}),r.jsx(ht,{})]}),yt="#D4A843",KK=["Business Model Diagnostic","AI Readiness Score","Capital Positioning Map","Value Creation Opportunities","Risk & Gap Assessment","PE Readiness Index"],YK=[{n:1,title:"Submit your profile",desc:"Complete the short form — sector, revenue range, and objective."},{n:2,title:"Diagnostic analysis",desc:"Business model, AI maturity, and capital readiness reviewed against PE frameworks."},{n:3,title:"Structured delivery",desc:"You receive a structured diagnostic report — clear, actionable, no fluff."},{n:4,title:"Introduction pathway",desc:"If relevant, an introduction to private capital sources through Blacktrace's network."}];function QK(){return D3(),j.useState({name:"",email:"",company:"",role:"",sector:"",revenue:"",objective:"",gdpr:!1}),r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Blacktrace Diagnostic — Capital Readiness for Private Companies",description:"A strategic diagnostic for private companies assessing AI readiness, business model quality, and positioning for private capital. Presented within the PrivateEquity.ai intelligence ecosystem, founded by Marco Mizzau.",canonicalUrl:"/blacktrace-diagnostic",keywords:"Blacktrace diagnostic, PE readiness SME, private equity capital readiness, AI readiness assessment, business diagnostic private capital"}),r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[r.jsxs("section",{className:"relative bg-[#0A0A0A] py-28 md:py-40 overflow-hidden",children:[r.jsx("div",{className:"absolute inset-0 pointer-events-none",style:{background:"radial-gradient(ellipse 70% 50% at 50% 60%, rgba(196,151,58,0.07) 0%, transparent 70%)"}}),r.jsxs("div",{className:"relative container mx-auto px-4 sm:px-8 max-w-5xl text-center",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-5",style:{color:yt},children:"Blacktrace · Diagnostic"}),r.jsxs("h1",{className:"text-4xl md:text-5xl lg:text-6xl font-light tracking-tight text-white mb-5 leading-tight",children:["Is your company ready",r.jsx("br",{className:"hidden sm:block"})," for private capital?"]}),r.jsx("p",{className:"text-lg md:text-xl font-light tracking-wide mb-6",style:{color:yt},children:"A strategic diagnostic for private companies seeking growth capital or PE partnership."}),r.jsx("p",{className:"text-base text-gray-400 max-w-2xl mx-auto mb-10 leading-relaxed",children:"Blacktrace assesses your business model quality, AI readiness, and capital positioning — then delivers a structured report and, where relevant, an introduction to the right private capital sources."}),r.jsxs("div",{className:"flex flex-wrap gap-6 justify-center text-sm text-[#CCCCCC] mb-10",children:[r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(gD,{className:"h-4 w-4",style:{color:yt}})," Fast turnaround"]}),r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(aG,{className:"h-4 w-4",style:{color:yt}})," Confidential"]}),r.jsxs("span",{className:"flex items-center gap-2",children:[r.jsx(z0,{className:"h-4 w-4",style:{color:yt}})," GDPR compliant"]})]}),r.jsxs("button",{onClick:()=>{var e;return(e=document.getElementById("diagnostic-form"))==null?void 0:e.scrollIntoView({behavior:"smooth"})},className:"inline-flex items-center gap-2 px-8 py-4 text-sm font-medium tracking-wide border transition-all duration-200",style:{color:yt,borderColor:yt},onMouseEnter:e=>{e.currentTarget.style.background="rgba(196,151,58,0.08)"},onMouseLeave:e=>{e.currentTarget.style.background="transparent"},children:["Request your diagnostic ",r.jsx(qt,{className:"h-4 w-4"})]})]})]}),r.jsx("section",{className:"elevated-section py-24 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-6xl",children:[r.jsxs("div",{className:"text-center mb-14",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:yt},children:"What we assess"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white",children:"Three dimensions of capital readiness."})]}),r.jsx("div",{className:"grid md:grid-cols-3 gap-6",children:[{icon:r.jsx(mD,{className:"h-6 w-6",style:{color:yt}}),title:"Business Model Quality",items:["Revenue model & margins","Customer concentration","Competitive moat","Management depth","Scalability potential"]},{icon:r.jsx(V0,{className:"h-6 w-6",style:{color:yt}}),title:"AI Readiness",items:["Current AI & automation maturity","Operational leverage opportunities","Data infrastru
486cture quality","AI risk exposure","Transformation capacity"]},{icon:r.jsx(K0,{className:"h-6 w-6",style:{color:yt}}),title:"Capital Positioning",items:["PE fit assessment","Deal structure readiness","Narrative clarity","Value creation story","Gap analysis vs. PE criteria"]}].map(({icon:e,title:t,items:n})=>r.jsxs("div",{className:"bg-[#111111] border border-white/10 p-7 hover:border-[#D4A843]/40 transition-colors duration-200",children:[r.jsx("div",{className:"mb-4",children:e}),r.jsx("h3",{className:"text-base font-medium text-white mb-4 tracking-tight",children:t}),r.jsx("ul",{className:"space-y-2",children:n.map(i=>r.jsxs("li",{className:"text-sm text-[#CCCCCC] flex items-start gap-2",children:[r.jsx("span",{style:{color:yt},className:"mt-0.5 text-xs",children:"—"}),i]},i))})]},t))})]})}),r.jsx("section",{className:"py-24 bg-[#0A0A0A] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsxs("div",{className:"text-center mb-14",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:yt},children:"What you receive"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white",children:"Six deliverables."})]}),r.jsx("div",{className:"grid sm:grid-cols-2 md:grid-cols-3 gap-4",children:KK.map((e,t)=>r.jsxs("div",{className:"bg-[#111111] border border-white/10 px-5 py-4 flex items-center gap-3",children:[r.jsx("span",{className:"text-xs font-mono",style:{color:yt},children:String(t+1).padStart(2,"0")}),r.jsx("span",{className:"text-sm text-gray-300",children:e})]},e))})]})}),r.jsx("section",{className:"elevated-section py-24 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsxs("div",{className:"text-center mb-14",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:yt},children:"How it works"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white",children:"Four steps to clarity."})]}),r.jsx("div",{className:"grid sm:grid-cols-2 md:grid-cols-4 gap-6",children:YK.map(({n:e,title:t,desc:n})=>r.jsxs("div",{className:"text-center",children:[r.jsx("div",{className:"w-10 h-10 flex items-center justify-center text-sm font-mono mx-auto mb-4 border",style:{color:yt,borderColor:"rgba(196,151,58,0.4)"},children:e}),r.jsx("h3",{className:"text-sm font-medium text-white mb-2",children:t}),r.jsx("p",{className:"text-xs text-[#CCCCCC] leading-relaxed",children:n})]},e))})]})}),r.jsx("section",{className:"py-24 bg-[#0A0A0A] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl",children:[r.jsxs("div",{className:"text-center mb-10",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:yt},children:"Who this is for"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white",children:"Private companies at a decision point."})]}),r.jsx("div",{className:"grid sm:grid-cols-2 gap-4",children:[{label:"Revenue range",value:"€5M – €500M turnover"},{label:"Stage",value:"Established, revenue-generating businesses"},{label:"Objective",value:"PE partnership, growth capital, or exit preparation"},{label:"Geography",value:"European mid-market focus"}].map(({label:e,value:t})=>r.jsxs("div",{className:"bg-[#111111] border border-white/10 px-5 py-4",children:[r.jsx("p",{className:"text-xs uppercase tracking-widest mb-1",style:{color:yt},children:e}),r.jsx("p",{className:"text-sm text-gray-300",children:t})]},e))}),r.jsx("p",{className:"text-xs text-[#BBBBBB] text-center mt-8",children:"Not intended for pre-revenue startups or businesses seeking regulated financial advice."})]})}),r.jsx("section",{className:"elevated-section py-24 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsxs("div",{className:"text-center mb-12",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:yt},children:"AI Tools for Private Companies"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white mb-3",children:"Start improving efficiency today."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-xl mx-auto",children:"While you prepare for capital, these tools help you build a more efficient, AI-ready operation — the kind that PE funds look for."})]}),r.jsx("div",{className:"grid sm:grid-cols-3 gap-6 mb-10",children:[{category:"Productivity & Research",tools:[{name:"Claude",desc:"Long-form analysis, document review, and strategic reasoning.",url:"https://claude.ai"},{name:"Perplexity",desc:"Real-time research and market intelligence with source citations.",url:"https://perplexity.ai"}]},{category:"Workflow Automation",tools:[{name:"Make",desc:"Visual automation connecting your apps and eliminating manual processes.",url:"https://make.com"},{name:"UiPath",desc:"Enterprise RPA for automating finance, HR, and back-office operations.",url:"https://uipath.com"}]},{category:"Professional & Legal",tools:[{name:"Mikeoss",desc:"AI legal assistant for contract review, document drafting, and legal research.",url:"https://mikeoss.com"},{name:"Harvey",desc:"AI for legal workflows, M&A drafting, and professional services.",url:"https://harvey.ai"}]}].map(({category:e,tools:t})=>r.jsxs("div",{className:"bg-[#111111] border border-white/10 p-6 hover:border-[#D4A843]/30 transition-colors duration-200",children:[r.jsx("p",{className:"text-xs uppercase tracking-widest mb-4",style:{color:yt},children:e}),r.jsx("div",{className:"space-y-4",children:t.map(({name:n,desc:i,url:a})=>r.jsxs("a",{href:a,target:"_blank",rel:"nofollow noopener noreferrer",className:"block group",children:[r.jsxs("p",{className:"text-sm font-medium text-white group-hover:text-[#D4A843] transition-colors mb-1",children:[n," ↗"]}),r.jsx("p",{className:"text-xs text-[#CCCCCC] leading-relaxed",children:i})]},n))})]},e))}),r.jsx("div",{className:"text-center",children:r.jsx(de,{href:"/general-ai-toolkit",className:"text-sm tracking-wide transition-colors hover:opacity-80",style:{color:yt},children:"See the full AI toolkit for private companies →"})})]})}),r.jsx("section",{id:"diagnostic-form",className:"py-24 bg-[#0A0A0A] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-2xl text-center",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-5",style:{color:yt},children:"Request your diagnostic"}),r.jsx("h2",{className:"text-3xl md:text-4xl font-light text-white mb-6",children:"Start the conversation."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] mb-10 leading-relaxed",children:"For institutional inquiries or confidential discussions, please contact:"}),r.jsx("a",{href:"mailto:[email protected]",className:"text-base transition-colors hover:opacity-80",style:{color:yt},children:"[email protected]"}),r.jsx("div",{className:"mt-10 px-4 py-3 border border-white/5",children:r.jsx("p",{className:"text-xs text-[#BBBBBB] leading-relaxed",children:"This is a strategic diagnostic service, not regulated financial advice or investment intermediation. No fundraising mandate is created. All introductions are made at Blacktrace's sole discretion."})})]})}),r.jsx(ht,{})]})]})}const nt="#D4A843",XK=["Business Services","Accounting","Legal","Insurance","Manufacturing","Healthcare Services","Education","Staffing","BPO","Software","Financial Services","Other"],ZK=["Under €10M","€10M–50M","€50M–100M","€100M–500M","€500M+"],JK=["Under 50","50–250","250–1,000","1,000+"],Fm=[{id:"opportunity",label:"AI Opportunity",badge:"
48601",subtitle:"Where AI can create investment value in this business",questions:[{id:"o1",text:"How much could AI-driven automation compress costs in this business?",options:[{label:"Minimal scope",detail:"< 10% of cost base is addressable by AI automation",value:25},{label:"Limited scope",detail:"10–25% of costs could be reduced through AI automation",value:50},{label:"Meaningful scope",detail:"25–50% of workflows have credible AI cost-compression potential",value:75},{label:"Significant scope",detail:"> 50% of the cost base is addressable by AI-driven automation",value:100}]},{id:"o2",text:"How significant is the margin expansion potential through AI-enabled workflow redesign?",options:[{label:"No clear path",detail:"No identifiable route to margin improvement via AI",value:25},{label:"Limited upside",detail:"Administrative efficiency gains only; not structurally material",value:50},{label:"Clear opportunity",detail:"AI could improve EBITDA margins in operations or service delivery",value:75},{label:"Multiple levers",detail:"AI could drive material P&L improvement across several dimensions",value:100}]},{id:"o3",text:"How much operating leverage could AI unlock in this business?",options:[{label:"Minimal",detail:"Business is already lean; limited additional leverage available",value:25},{label:"Some",detail:"Incremental gains achievable; not a structural leverage driver",value:50},{label:"Material",detail:"AI could decouple revenue growth from headcount growth materially",value:75},{label:"Structural",detail:"AI represents a fundamental operating leverage opportunity at scale",value:100}]},{id:"o4",text:"How directly could AI tools accelerate revenue generation or expand market reach?",options:[{label:"Minimal impact",detail:"AI unlikely to change revenue trajectory in the investment horizon",value:25},{label:"Modest",detail:"AI could modestly improve sales productivity or pipeline velocity",value:50},{label:"Meaningful",detail:"AI could expand addressable market or compress sales cycles materially",value:75},{label:"Transformational",detail:"AI could fundamentally reshape the go-to-market model and revenue ceiling",value:100}]}]},{id:"risk",label:"AI Risk",badge:"02",subtitle:"Exposure to AI-driven competitive and operating risk",questions:[{id:"r1",text:"How significant is the AI-native competitive threat in this market?",options:[{label:"No visible threat",detail:"No AI-native competitors at meaningful scale in this market",value:25},{label:"Early stage",detail:"AI-native entrants exist but have not achieved material penetration",value:50},{label:"Growing threat",detail:"AI-native competitors are gaining share and compressing incumbent margins",value:75},{label:"Dominant",detail:"AI-native players are already reshaping market structure and pricing",value:100}]},{id:"r2",text:"How resilient is the company's pricing power to AI-driven margin compression?",options:[{label:"Strong",detail:"Pricing power robust; AI unlikely to compress margins materially in the hold period",value:25},{label:"Moderate",detail:"Some compression risk on a 3–5 year horizon; manageable with active monitoring",value:50},{label:"Under pressure",detail:"Pricing already under pressure from tech-enabled or AI-native alternatives",value:75},{label:"Severely exposed",detail:"Value proposition and price points at significant risk from AI-driven competition",value:100}]},{id:"r3",text:"How exposed is the core product or service to AI-driven commoditisation?",options:[{label:"Well defended",detail:"Core IP or delivery model is defensible; low commoditisation risk",value:25},{label:"Partially exposed",detail:"Some elements commoditisable; core value proposition remains intact",value:50},{label:"Materially exposed",detail:"Meaningful portions of the offering face AI-driven commoditisation pressure",value:75},{label:"Highly exposed",detail:"Core product or service is at high risk of commoditisation by AI tools",value:100}]},{id:"r4",text:"How vulnerable is the labor model to AI-driven workforce displacement?",options:[{label:"Minimal risk",detail:"Labor model is specialised and defensible; low displacement risk",value:25},{label:"Manageable",detail:"Some roles at risk; restructuring cost is quantifiable and manageable",value:50},{label:"Significant",detail:"A meaningful portion of the workforce faces near-term displacement risk",value:75},{label:"Structural",detail:"Labor model fundamentally at risk; significant restructuring cost likely",value:100}]}]}
486,{id:"readiness",label:"AI Readiness",badge:"03",subtitle:"Operational capability to engage with AI at scale",questions:[{id:"rd1",text:"How fit is the company's data infrastructure for AI deployment at scale?",options:[{label:"Poor",detail:"Data is fragmented, inconsistent, or inaccessible across the business",value:25},{label:"Basic",detail:"Some structured data exists but integration and governance are limited",value:50},{label:"Functional",detail:"Operational data systems are in place with meaningful room to improve",value:75},{label:"Investment-grade",detail:"Clean, integrated, and governed data infrastructure ready for AI",value:100}]},{id:"rd2",text:"How digitised are the core workflows underpinning this company's value delivery?",options:[{label:"Primarily manual",detail:"Paper-based or manual processes dominate core value-delivery workflows",value:25},{label:"Transitional",detail:"Mix of manual and digital; active digitisation programme underway",value:50},{label:"Mostly digital",detail:"Core workflows are digital; some automation is already deployed",value:75},{label:"Fully digitised",detail:"End-to-end digital infrastructure with significant automation in place",value:100}]},{id:"rd3",text:"How aligned is the leadership team on AI as a strategic priority?",options:[{label:"Low awareness",detail:"Leadership has limited AI understanding; no strategic initiatives underway",value:25},{label:"Aware but passive",detail:"Awareness exists; no concrete AI ownership or budget allocation",value:50},{label:"Engaged",detail:"Leadership is actively pursuing AI; early initiatives are in progress",value:75},{label:"Committed",detail:"Clear AI strategy with designated ownership, budget, and board-level support",value:100}]},{id:"rd4",text:"How proven is the company's capacity to absorb and execute large-scale operational change?",options:[{label:"High inertia",detail:"Historically resistant to change; strong organisational friction and inertia",value:25},{label:"Limited",detail:"Some change capacity; meaningful friction points constrain execution",value:50},{label:"Moderate",detail:"Successful change programmes have been executed in recent operating history",value:75},{label:"Highly adaptable",detail:"Demonstrated track record of delivering large-scale operational transformation",value:100}]}]},{id:"execution",label:"AI Execution",badge:"04",subtitle:"Internal capacity to capture AI value at operational scale",questions:[{id:"ex1",text:"How AI-compatible is the current technology stack?",options:[{label:"Legacy",detail:"Significant technical debt; stack is not AI-compatible without major investment",value:25},{label:"Partially modernised",detail:"Core systems partially modernised; meaningful remediation required",value:50},{label:"Modern core",detail:"Stack is broadly AI-compatible with manageable legacy components",value:75},{label:"Contemporary",detail:"Cloud-native or modern infrastructure ready for AI integration today",value:100}]},{id:"ex2",text:"How capable is the organisation to implement AI without reliance on external vendors?",options:[{label:"None",detail:"No internal AI or technology capability; fully dependent on external delivery",value:25},{label:"Limited",detail:"Small technology team without meaningful AI delivery experience",value:50},{label:"Moderate",detail:"Technology team capable of implementing AI with structured external support",value:75},{label:"Strong",detail:"Dedicated AI or digital capability with a proven internal delivery track record",value:100}]},{id:"ex3",text:"How disciplined is the operating model at delivering complex change programmes?",options:[{label:"Weak",detail:"Project delivery is inconsistent; limited programme governance or accountability",value:25},{label:"Inconsistent",detail:"Execution quality varies; structured processes are not consistently followed",value:50}
486,{label:"Good",detail:"Processes are documented and followed; delivery is generally consistent",value:75},{label:"Strong",detail:"High delivery reliability with strong programme governance and accountability",value:100}]},{id:"ex4",text:"How strong is the organisation's track record in managing significant operational transformation?",options:[{label:"Minimal",detail:"Little evidence of structured transformation; significant resistance to change",value:25},{label:"Basic",detail:"Transformation managed informally; results have been inconsistent",value:50},{label:"Moderate",detail:"Structured transformation programmes with demonstrable past success",value:75},{label:"Strong",detail:"Experienced transformation capability with measurable outcomes and repeatable methodology",value:100}]}]},{id:"disruption",label:"AI Disruption Exposure",badge:"05",subtitle:"Structural exposure to AI-driven industry disruption",questions:[{id:"d1",text:"How rapidly are AI-native competitors gaining traction in this market?",options:[{label:"No visible threat",detail:"No AI-native competitors at meaningful scale in this market",value:25},{label:"Emerging",detail:"AI-native entrants exist but have limited market penetration today",value:50},{label:"Accelerating",detail:"AI-native competitors gaining share; competitive structure is shifting",value:75},{label:"Disruptive",detail:"AI-native players are already reshaping competitive dynamics and pricing",value:100}]},{id:"d2",text:"How exposed is the business model to AI-driven barrier-to-entry compression?",options:[{label:"Well defended",detail:"High barriers to entry; AI is unlikely to materially lower them",value:25},{label:"Partial exposure",detail:"Some barriers may erode over time; competitive set could gradually expand",value:50},{label:"Meaningful exposure",detail:"AI is actively lowering entry barriers; new competitors are entering the market",value:75},{label:"Severe exposure",detail:"Entry barriers have materially compressed; market is increasingly contestable",value:100}]},{id:"d3",text:"How significant is the risk of customer self-service substitution through AI?",options:[{label:"Minimal",detail:"Customer self-service substitution risk is low in this business model",value:25},{label:"Limited",detail:"Some automation of customer touchpoints is possible but unlikely to be structural",value:50},{label:"Material",detail:"AI self-service tools could materially reduce demand for human-delivered services",value:75},{label:"Structural",detail:"AI-driven self-service is a direct substitution threat to core revenue streams",value:100}]},{id:"d4",text:"How vulnerable is the business to direct AI software or platform displacement?",options:[{label:"Low risk",detail:"Business model is not at risk of displacement by AI-native software or agents",value:25},{label:"Limited risk",detail:"Peripheral workflow elements are replaceable; core model remains intact",value:50},{label:"Moderate risk",detail:"Core workflows increasingly addressable by AI-enabled software alternatives",value:75},{label:"High risk",detail:"Business model at structural risk of displacement by AI platforms or autonomous agents",value:100}]}]}];function Rc(e,t){const i=Fm.find(a=>a.id===e).questions.map(a=>t[a.id]??0);return i.some(a=>a===0)?0:Math.round(i.reduce((a,s)=>a+s,0)/i.length)}function eY(e){return{opportunity:Rc("opportunity",e),risk:Rc("risk",e),readiness:Rc("readiness",e),execution:Rc("execution",e),disruption:Rc("disruption",e)}}function gR(e){return Math.round(e.opportunity*.25+(100-e.risk)*.2+e.readiness*.15+e.execution*.15+(100-e.disruption)*.25)}function tY(e){return e>=70?"A":e>=50?"B":e>=30?"C":"D"}const nY={A:{label:"Strong AI investment profile",color:"#22c55e",summary:"This company demonstrates a strong AI profile — meaningful upside potential, manageable disruption exposure, and sufficient readiness and execution capacity to capture value. AI is likely a positive driver in the investment thesis."},B:{label:"Moderate AI investment profile",color:nt,summary:"This company presents a balanced AI profile. Identifiable opportunities coexist with risk or capability gaps. AI diligence should focus on validating the execution path and stress-testing disruption dynamics before close."},C:{label:"Challenged AI investment profile",color:"#f97316",summary:"This company faces limited opportunity, meaningful disruption risk, or insufficient execution readiness. AI is likely a net headwind unless the thesis includes a structured transformation programme with clear ownership and milestones."},D:{label:"High-risk AI investment profile",color:"#ef4444",summary:"This company shows significant exposure to AI-driven disruption with limited internal 
486capacity to respond. AI represents a material investment risk. The thesis must include explicit mitigation strategies and a realistic transformation cost estimate."}};function rY(e){return e.opportunity>=70?["AI automation could materially compress the cost base across core workflow layers.","Multiple margin expansion levers exist; AI-augmented processes could improve EBITDA independent of revenue growth.",e.readiness>=60?"Strong readiness combined with automation potential creates a credible near-term value creation path.":"Opportunity is identifiable but readiness gaps may delay realisation — prioritise data and workflow infrastructure first."]:e.opportunity>=45?["Limited but identifiable automation opportunities exist in specific functional areas.","Margin upside via AI is possible but not structural at current workflow maturity.","Revenue acceleration through AI is achievable with targeted go-to-market initiatives."]:["AI automation upside is limited given the current business model and workflow configuration.","Revenue and margin acceleration through AI would require significant process redesign.","AI opportunity is not a primary value creation driver in the near-term investment horizon."]}function iY(e){return e.risk>=70||e.disruption>=70?["Competitive threat from AI-native entrants is active and likely to accelerate — maintain close market monitoring.","Pricing power is materially at risk; underwrite margin trajectory with conservative assumptions in the model.","Labor model restructuring risk is significant and should be explicitly quantified in the investment thesis."]:e.risk>=45||e.disruption>=45?["Some AI-driven competitive pressure exists; model market dynamics over a 3–5 year diligence horizon.","Pricing compression is a mid-term risk; apply sensitivity analysis to EBITDA margin assumptions.","Labor model appears stable near-term but requires monitoring as AI penetration increases."]:["Limited near-term AI disruption risk detected; standard competitive monitoring protocols apply.","Pricing power appears resilient to AI-driven compression given current competitive dynamics.","Labor model is defensible; AI displacement risk is not a material factor in the holding period."]}function aY(e){return e.disruption>=70?"Structural disruption risk is high. AI-native competitors, barrier-to-entry compression, and customer self-service substitution represent active and compounding threats. This dimension should be treated as a critical diligence workstream, with detailed competitive mapping and a disruption scenario included in the IC memo.":e.disruption>=45?"Moderate structural disruption exposure. AI-native dynamics are present in this market but have not yet reached a point of structural disruption. The investment team should monitor competitive entry patterns and customer behaviour over the hold period.":"Limited structural disruption risk at current trajectory. AI-native competitive dynamics are nascent or absent in this market. Standard sector monitoring applies; no immediate disruption scenario is required in the investment model."}function sY(e){return e.readiness>=70?"The company is well-positioned to engage with AI at the operational level. Data infrastructure, workflow digitisation, and leadership readiness are all at levels that support near-term AI deployment without major remediation investment.":e.readiness>=45?"The company has foundational readiness but meaningful gaps remain — particularly in data infrastructure or leadership alignment. A structured AI readiness programme will be required in the first 12–18 months post-close to unlock value creation potential.":"AI readiness is materially underdeveloped. Data fragmentation, limited workflow digitisation, or low leadership engagement are likely to constrain AI deployment timelines significantly. Readiness improvement must be a central pillar of the post-acquisition operating plan."}function oY(e){const t=[],n=[],i=[];return e.disruption>=65&&t.push("AI disruption exposure — structural threat from AI-native substitution and platform displacement requires immediate investigation."),e.risk>
486=65&&t.push("Competitive moat durability — pricing power and margin trajectory under AI-driven compression must be stress-tested."),(e.risk>=65||e.disruption>=65)&&t.push("Labor substitution exposure — workforce displacement cost and restructuring liability should be quantified in the model."),e.readiness<35&&t.push("Data infrastructure — critical foundational gap that will constrain any AI value creation programme."),e.disruption>=40&&e.disruption<65&&n.push("AI competitive dynamics — monitor market structure shifts and new entrant activity over the hold period."),e.readiness>=35&&e.readiness<60&&n.push("Data and workflow infrastructure — moderate readiness gap; improvement plan required post-close."),e.execution<50&&n.push("AI implementation capacity — internal delivery capability may be the binding constraint on value creation."),e.opportunity>=60&&e.execution<60&&n.push("Automation potential realisation — opportunity is visible but execution path needs validation before inclusion in the thesis."),e.readiness>=65&&i.push("Operational readiness — infrastructure foundation is adequate; standard programme monitoring applies."),e.risk<40&&e.disruption<40&&i.push("Competitive position — no material AI disruption risk detected; maintain standard sector intelligence cadence."),e.execution>=65&&i.push("Technology and execution capability — stack and delivery capacity are at investment-grade level."),t.length||t.push("Standard AI competitive monitoring — risk profile is manageable; no critical gaps identified."),n.length||n.push("Ongoing market monitoring — maintain standard sector intelligence cadence through the hold period."),i.length||i.push("Baseline operational health — meets minimum investment-grade threshold across assessed dimensions."),{high:t,medium:n,low:i}}function lY(e){const t=gR(e);return t>=70?["AI represents a credible upside lever in the value creation plan. Include specific AI workstreams with ownership and milestones in the 100-day plan.","Incorporate AI KPIs — automation rate, cost per unit, AI-attributed revenue — into the portfolio monitoring framework.","Evaluate whether operational partnerships or technology integrations could accelerate AI value realisation in the holding period."]:t>=50?["Include an AI readiness improvement programme as a milestone in the post-acquisition operating plan.","Evaluate whether bolt-on acquisitions or technology partnerships could bridge the execution gap more efficiently than organic build.","Price the readiness improvement cost into the investment model and include AI-related KPIs in the monitoring framework."]:["AI risk must be explicitly addressed in the investment committee memo — including competitive, pricing, and labor dimensions.","Consider pricing the transformation cost into the valuation or structuring earn-out mechanisms linked to AI readiness milestones.","Identify whether AI risk can be mitigated through operating partners, technology partnerships, or targeted management upgrades post-close."]}function Lc({label:e,value:t,isRisk:n}){const i=n?t>=65?"#ef4444":t>=40?"#f97316":"#22c55e":t>=65?"#22c55e":t>=40?nt:"#ef4444",a=n?t>=65?"High Exposure":t>=40?"Moderate Exposure":"Low Exposure":t>=65?"Strong":t>=40?"Moderate":"Limited";return r.jsxs("div",{className:"space-y-1.5",children:[r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx("span",{className:"text-xs font-medium text-white",children:e}),r.jsxs("span",{className:"text-xs text-[#CCCCCC]",children:[t,"/100 · ",a]})]}),r.jsx("div",{className:"h-1 bg-white/10 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${t}%`,backgroundColor:i}})})]})}function as({title:e,children:t}){return r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-3",children:[r.jsx("div",{className:"w-0.5 h-5 rounded-full flex-shrink-0",style:{backgroundColor:nt}}),r.jsx("h3",{className:"text-xs font-semibold uppercase tracking-widest text-white",children:e})]}),r.jsx("div",{className:"pl-5",children:t})]})}function ey({items:e,level:t}){const n={High:"#ef4444",Medium:nt,Low:"#6b7280"};return r.jsxs("div",{className:"space-y-1.5",children:[r.jsxs("p",{className:"text-xs font-semibold uppercase tracking-widest mb-2",style:{color:n[t]},children:[t," Priority"]}),e.map((i,a)=>r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx("span",{className:"mt-1 text-xs flex-shrink-0",style:{color:n[t]},children:"—"}),r.jsx("span",{className:"text-sm text-gray-400 leading-relaxed",children:i})]},a))]})}function ty({label:e,value:t,onChange:n,options:i,required:a}){return r.jsxs("div",{children:[r.jsxs("label",{className:"block text-xs text-[#CCCCCC] uppercase tracking-widest mb-2",children:[e,a&&r.jsx("span",{className:"text-red-400 ml-1",children:"*"})]}),r.jsxs("select",{value:t,onChange:s=>n(s.target.value),className:"w-full bg-[#141414] border border-white/15 rounded-lg px-4 py-3 text-sm text-white focus:outline-none focus:border-white/30 transition-colors appearance-none cursor-pointer",style:{backgroundImage:`url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")`,backgroundRepeat:"no-repeat",backgroundPosition:"right 12px center"},children:[r.jsx("option",{value:"",disabled:!0,className:"bg-[#141414]",children:"Select…"}),i.map(s=>r.jsx("option",{value:s,className:"bg-[#141414]",children:s},s))]})]})}function cY({onStart:e}){return r.jsxs(r.Fragment,{children:[r.jsxs("section",{className:"relative bg-[#0A0A0A] py-24 md:py-36 overflow-hidden",children:[r.jsx("div",{className:"absolute inset-0 pointer-events-none",style:{background:"radial-gradient(ellipse 70% 50% at 50% 60%, rgba(196,151,58,0.07) 0%, transparent 70%)"}}),r.jsxs("div",{className:"relative container mx-auto px-4 sm:px-8 max-w-4xl text-center",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest mb-4",style:{color:nt},children:"AI Diligence Score"}),r.jsxs("h1",{className:"text-4xl md:text-5xl font-light tracking-tight text-white mb-6 leading-tight",children:["Assess AI risk, opportunity, and disruption exposure",r.jsx("br",{className:"hidden sm:block"})," in five minutes."]}),r.jsx("p",{className:"text-base text-gray-400 leading-relaxed max-w-2xl mx-auto mb-3",children:"A rapid diligence framework for investment teams to identify AI-related upside, structural disruption risk, and execution readiness in a target company — before an investment decision is made."}),r.jsx("p",{className:"text-sm text-[#BBBBBB] mb-12",children:"20 investment-oriented questions across five diligence dimensions. No login required."}),r.jsx("button",{onClick:e,className:"inline-flex items-center gap-2 px-8 py-4 text-sm font-medium tracking-wide border transition-all duration-200 hover:bg-[rgba(196,151,58,0.08)] cursor-pointer",style:{color:nt,borderColor:nt},children:"Start Assessment — 5 min →"}),r.jsx("p",{className:"text-xs text-[#AAAAAA] mt-6",children:"For informational and research purposes only. Not investment advice."})]})]}),r.jsx("section",{className:"py-16 border-t border-white/5 bg-[#0A0A0A]",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest mb-10 text-center",style:{color:nt},children:"Five Diligence Dimensions"}
486),r.jsx("div",{className:"grid md:grid-cols-5 gap-4",children:[{n:"01",label:"AI Opportunity",desc:"Cost compression, operating leverage, and revenue acceleration."},{n:"02",label:"AI Risk",desc:"Competitive disruption, pricing compression, and labor exposure."},{n:"03",label:"AI Readiness",desc:"Data infrastructure, workflow digitisation, leadership alignment."},{n:"04",label:"AI Execution",desc:"Technology stack, delivery capacity, and transformation track record."},{n:"05",label:"AI Disruption",desc:"Structural exposure to AI-native substitution and platform displacement."}].map(t=>r.jsxs("div",{className:"bg-[#141414] border border-white/15 rounded-xl p-5",children:[r.jsx("p",{className:"text-xs font-semibold mb-2",style:{color:nt},children:t.n}),r.jsx("h3",{className:"text-sm font-semibold text-white mb-2",children:t.label}),r.jsx("p",{className:"text-xs text-[#CCCCCC] leading-relaxed",children:t.desc})]},t.n))}),r.jsx("div",{className:"mt-10 border-t border-white/5 pt-8 grid md:grid-cols-3 gap-6 text-center",children:[{label:"Overall Rating",value:"A / B / C / D"},{label:"Per-Dimension Score",value:"0 – 100"},{label:"Diligence Report",value:"7 sections"}].map(t=>r.jsxs("div",{children:[r.jsx("p",{className:"text-lg font-light text-white mb-1",children:t.value}),r.jsx("p",{className:"text-xs text-[#BBBBBB] uppercase tracking-widest",children:t.label})]},t.label))})]})})]})}function dY({companyName:e,sector:t,revenueRange:n,employeeCount:i,onCompanyName:a,onSector:s,onRevenue:o,onEmployees:l,onBack:c,onNext:d}){const u=t&&n&&i;return r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[r.jsx("div",{className:"border-b border-white/5 py-4",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-3xl flex items-center justify-between",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest",style:{color:nt},children:"AI Diligence Score"}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Company Profile"})]})}),r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-3xl py-12",children:[r.jsxs("div",{className:"mb-8",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest mb-1",style:{color:nt},children:"Company Profile"}),r.jsx("h2",{className:"text-xl font-light text-white",children:"Tell us about the company you are assessing."})]}),r.jsxs("div",{className:"space-y-6",children:[r.jsxs("div",{children:[r.jsxs("label",{className:"block text-xs text-[#CCCCCC] uppercase tracking-widest mb-2",children:["Company Name ",r.jsx("span",{className:"text-[#AAAAAA]",children:"(optional)"})]}),r.jsx("input",{type:"text",value:e,onChange:p=>a(p.target.value),placeholder:"e.g. Acme Industries",className:"w-full bg-[#141414] border border-white/15 rounded-lg px-4 py-3 text-sm text-white placeholder-gray-600 focus:outline-none focus:border-white/30 transition-colors"})]}),r.jsx(ty,{label:"Sector",value:t,onChange:s,options:XK,required:!0}),r.jsx(ty,{label:"Revenue Range",value:n,onChange:o,options:ZK,required:!0}),r.jsx(ty,{label:"Employee Count",value:i,onChange:l,options:JK,required:!0})]}),r.jsxs("div",{className:"flex items-center justify-between mt-12 pt-6 border-t border-white/5",children:[r.jsxs("button",{onClick:c,className:"inline-flex items-center gap-2 text-sm text-[#CCCCCC] hover:text-gray-300 transition-colors cursor-pointer",children:[r.jsx(hD,{className:"h-4 w-4"})," Back"]}),r.jsxs("button",{onClick:d,disabled:!u,className:"inline-flex items-center gap-2 px-6 py-3 text-sm font-medium tracking-wide border transition-all duration-200 disabled:opacity-30 disabled:cursor-not-allowed cursor-pointer",style:{color:u?nt:"gray",borderColor:u?nt:"rgba(255,255,255,0.15)"},children:["Start Assessment ",r.jsx(fD,{className:"h-4 w-4"})]})]})]})]})}function uY({dim:e,dimIndex:t,total:n,answers:i,onAnswer:a,onBack:s,onNext:o,allAnswered:l,isLast:c}){const d=(t+1)/n*100;return r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[r.jsx("div",{className:"border-b border-white/5 py-4",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-3xl",children:[r.jsxs("div",{className:"flex items-center justify-between mb-2",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest",style:{color:nt},children:"AI Diligence Score"}),r.jsxs("p",{className:"text-xs text-[#BBBBBB]",children:[t+1," / ",n]})]}),r.jsx("div",{className:"h-0.5 bg-white/5 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all duration-500",style:{width:`${d}%`,backgroundColor:nt}})})]})}),r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-3xl py-12",children:[r.jsxs("div",{className:"mb-8",children:[r.jsxs("p",{className:"text-xs font-semibold uppercase tracking-widest mb-1",style:{color:nt},children:[e.badge," — ",e.label]}),r.jsx("h2",{className:"text-xl font-light text-white",children:e.subt
486itle})]}),r.jsx("div",{className:"space-y-8",children:e.questions.map((u,p)=>r.jsxs("div",{children:[r.jsxs("p",{className:"text-sm font-medium text-gray-300 mb-3 leading-snug",children:[r.jsxs("span",{className:"text-[#BBBBBB] mr-2",children:[p+1,"."]}),u.text]}),r.jsx("div",{className:"grid sm:grid-cols-2 gap-2",children:u.options.map(m=>{const f=i[u.id]===m.value;return r.jsxs("button",{onClick:()=>a(u.id,m.value),className:"text-left rounded-xl border p-4 transition-all duration-150 cursor-pointer",style:{backgroundColor:f?"rgba(196,151,58,0.08)":"#141414",borderColor:f?`${nt}99`:"rgba(255,255,255,0.15)"},children:[r.jsx("p",{className:"text-sm font-medium mb-0.5",style:{color:f?nt:"white"},children:m.label}),r.jsx("p",{className:"text-xs text-[#CCCCCC] leading-snug",children:m.detail})]},m.value)})})]},u.id))}),r.jsxs("div",{className:"flex items-center justify-between mt-12 pt-6 border-t border-white/5",children:[r.jsxs("button",{onClick:s,className:"inline-flex items-center gap-2 text-sm text-[#CCCCCC] hover:text-gray-300 transition-colors cursor-pointer",children:[r.jsx(hD,{className:"h-4 w-4"})," Back"]}),r.jsxs("button",{onClick:o,disabled:!l,className:"inline-flex items-center gap-2 px-6 py-3 text-sm font-medium tracking-wide border transition-all duration-200 disabled:opacity-30 disabled:cursor-not-allowed cursor-pointer",style:{color:l?nt:"gray",borderColor:l?nt:"rgba(255,255,255,0.15)"},children:[c?"Continue to Report":"Continue"," ",r.jsx(fD,{className:"h-4 w-4"})]})]})]})]})}function pY({name:e,email:t,company:n,onName:i,onEmail:a,onCompany:s,onSubmit:o,onSkip:l,saving:c}){const d=e.trim()&&t.includes("@");return r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] flex items-center justify-center py-20",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-lg",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest mb-4 text-center",style:{color:nt},children:"Your Report is Ready"}),r.jsxs("h2",{className:"text-2xl font-light text-white text-center mb-3 leading-snug",children:["Receive a copy of your",r.jsx("br",{}),"AI Diligence Report."]}),r.jsx("p",{className:"text-sm text-[#CCCCCC] text-center mb-10 leading-relaxed",children:"Enter your details below to access the full report and receive a summary by email."}),r.jsx("div",{className:"space-y-4",children:[{label:"Name",value:e,onChange:i,placeholder:"Your name",required:!0},{label:"Email",value:t,onChange:a,placeholder:"Work email address",required:!0},{label:"Company",value:n,onChange:s,placeholder:"Your firm or company",required:!1}].map(u=>r.jsxs("div",{children:[r.jsxs("label",{className:"block text-xs text-[#CCCCCC] uppercase tracking-widest mb-2",children:[u.label,!u.required&&r.jsx("span",{className:"text-[#AAAAAA] ml-1",children:"(optional)"})]}),r.jsx("input",{type:u.label==="Email"?"email":"text",value:u.value,onChange:p=>u.onChange(p.target.value),placeholder:u.placeholder,className:"w-full bg-[#141414] border border-white/15 rounded-lg px-4 py-3 text-sm text-white placeholder-gray-600 focus:outline-none focus:border-white/30 transition-colors"})]},u.label))}),r.jsxs("div",{className:"mt-8 space-y-3",children:[r.jsx("button",{onClick:o,disabled:!d||c,className:"w-full py-4 text-sm font-medium tracking-wide border transition-all duration-200 disabled:opacity-40 disabled:cursor-not-allowed cursor-pointer",style:{color:nt,borderColor:nt,backgroundColor:d&&!c?"rgba(196,151,58,0.08)":"transparent"},children:c?"Saving…":"View My Report →"}),r.jsx("button",{onClick:l,className:"w-full py-3 text-xs text-[#BBBBBB] hover:text-gray-400 transition-colors cursor-pointer",children:"Continue without email"})]}),r.jsx("p",{className:"text-xs text-[#AAAAAA] mt-6 text-center",children:"Your details will not be shared. For research purposes only."})]})})}function mY({scores:e,composite:t,rating:n,meta:i,companyName:a,sector:s,revenueRange:o,employeeCount:l,onReset:c}){const d=oY(e),u=rY(e),p=iY(e),m=aY(e),f=sY(e),x=lY(e);return r.jsxs(r.Fragment,{children:[r.jsx("style",{children:"@media print { .no-print { display: none !important; } body { background: white !important; } .print-bg { background: white !important; color: black !important; } .print-text { color: #111 !important; } }"}),r.jsxs("div",{className:"bg-[#0A0A0A]",children:[r.jsx("div",{className:"border-b border-white/5 py-4 no-print",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl flex items-center justify-between",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-widest",style:{color:nt},children:"AI Diligence Score"}),r.jsxs("div",{className:"flex items-center gap-4",children:[r.jsxs("button",{onClick:()=>window.print(),className:"inline-flex items-center gap-1.5 text-xs text-[#CCCCCC] hover:text-gray-300 transition-colors cursor-pointer",children:[r.jsx(rG,{className:"h-3.5 w-3.5"})," Export PDF"]}),r.jsxs("button",{onClick:c,className:"inline-flex items-center gap-1.5 text-xs text-[#BBBBBB] hover:text-gray-400 transition-colors cursor-pointer",children:[r.jsx(Zj,{className:"h-3 w-3"})," New Assessment"]})]})]})}),r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl py-16",children:[(a||s)&&r.jsxs("div",{className:"mb-8 flex flex-wrap gap-4",children:[a&&r.jsx("span",{className:"text-xs text-[#CCCCCC] border border-white/10 px-3 py-1 rounded",children:a}),s&&r.jsx("span",{className:"text-xs text-[#CCCCCC] border border-white/10 px-3 py-1 rounded",children:s}),o&&r.jsx("span",{className:"text-xs text-[#CCCCCC] border border-white/10 px-3 py-1 rounded",children:o}),l&&r.jsxs("span",{className:"text-xs text-[#CCCCCC] border border-white/10 px-3 py-1 rounded",children:[l," employees"]})]}),r.jsxs("div",{className:"grid md:grid-cols-3 gap-8 mb-16",children:[r.jsxs("div",{className:"md:col-span-1 flex flex-col items-center md:items-start",children:[r.jsx("p",{className:"text-xs text-[#BBBBBB] uppercase tracking-widest mb-3",children:"Overall Rating"}),r.jsx("div",{className:"flex items-center justify-center w-28 h-28 rounded-2xl border-2 mb-4",style:{borderColor:i.color,backgroundColor:`${i.color}12`},children:r.jsx("span",{className:"text-6xl font-light",style:{color:i.color},children:n})}),r.jsx("p",{className:"text-sm font-medium text-white text-center md:text-left",children:i.label}),r.jsxs("p",{className:"text-xs text-[#BBBBBB] mt-1",children:["Composite score: ",t,"/100"]})]}),r.jsxs("div",{className:"md:col-span-2 space-y-4",children:[r.jsx("p",{className:"text-xs text-[#BBBBBB] uppercase tracking-widest",children:"Dimension Scores"}),r.jsx(Lc,{label:"AI Opportunity Score",value:e.opportunity}),r.jsx(Lc,{label:"AI Risk Score",value:e.risk,isRisk:!0}),r.jsx(Lc,{label:"AI Readiness Score",value:e.readiness}),r.jsx(Lc,{label:"AI Execution Score",value:e.execution}),r.jsx(Lc,{label:"AI Disruption Exposure",value:e.disruption,isRisk:!0})]})]}),r.jsxs("div",{className:"space-y-10",children:[r.jsx(as,{title:"Executive Summary",children:r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed",children:i.summary})}),r.jsx(as,{title:"Diligence Priority Areas",children:r.jsxs("div",{className:"space-y-6",children:[r.jsx(ey,{items:d.high,level:"High"}),r.jsx(ey,{items:d.medium,level:"Medium"}),r.jsx(ey,{items:d.low,level:"Low"})]})}),r.jsx(as,{title:"Key AI Upside Opportunities",children:r.jsx("ul",{className:"space-y-2",children:u.map((h,g)=>r.jsxs("li",{className:"flex items-start gap-2",children:[r.jsx("span",{className:"mt-1 text-xs flex-shrink-0",style:{color:nt},children:"—"}),r.jsx("span",{className:"text-sm text-gray-400 leading-relaxed",children:h})]},g))})}),r.jsx(as,{title:"Key AI Risks",children:r.jsx("ul",{className:"space-y-2",children:p.map((h,g)=>r.jsxs("li",{className:"flex items-start gap-2",children:[r.jsx("span",{className:"mt-1 text-xs flex-shrink-0 text-[#BBBBBB]",children:"—"}),r.jsx("span",{className:"text-sm text-gray-400 leading-relaxed",children:h})]},g))})}),r.jsx(as,{title:"AI Disruption Exposure",children:r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed",children:m})}),r.jsx(as,{title:"Readiness Assessment",children:r.jsx("p",{className:"text-sm text-gray-400 leading-relaxed",children:f})}),r.jsx(as,{title:"Investment Team Considerations",children:r.jsx("ul",{className:"space-y-2",children:x.map((h,g)=>r.jsxs("li",{className:"flex items-start gap-2",children:[r.jsx("span",{className:"mt-1 text-xs flex-shrink-0",style:{color:nt},children:"—"}),r.jsx("span",{className:"text-sm text-gray-400 leading-relaxed",children:h})]},g))})})]}),r.jsxs("div",{className:"mt-14 pt-8 border-t border-white/5 no-print",children:[r.jsxs("div",{className:"flex flex-col sm:flex-row gap-4",children:[r.jsx(de,{href:"/blacktrace-diagnostic",children:r.jsx("span",{className:"inline-flex items-center gap-2 px-6 py-3 text-sm font-medium tracking-wide border transition-all duration-200 hover:bg-[rgba(196,151,58,0.08)] cursor-pointer",style:{color:nt,borderColor:nt},children:"Request Full Diagnostic →"})}),r.jsxs("button",{onClick:c,className:"inline-flex items-center gap-2 px-6 py-3 text-sm font-medium tracking-wide border border-white/20 text-gray-400 hover:border-white/40 hover:text-white transition-all duration-200 cursor-pointer",children:[r.jsx(Zj,{className:"h-3.5 w-3.5"})," Assess Another Company"]})]}),r.jsx("p",{className:"text-xs text-[#AAAAAA] mt-4 leading-relaxed max-w-xl",children:"This assessment is for informational and research purposes only. It does not constitute investment advice, financial advice, or regulated advisory services. Results are based solely on responses provided and should not be used as the basis for investment decisions."}),r.jsx("p",{className:"text-xs text-[#666666] mt-2 leading-relaxed max-w-xl",children:"The score is a structured analytical indicator based on the information and responses provided. It is not a prediction, valuation, investment recommendation or substitute for professional due diligence."}),r.jsx("p",{className:"text-xs text-[#555555] mt-2 leading-relaxed max-w-xl",children:"The score should be considered as one analytical input among many and should not be relied upon as the sole basis for investment, financing or commercial decisions."})]})]})]}),r.jsx(ht,{})]})}function hY(){const[e,t]=j.useState("landing"),[n,i]=j.useState(0),[a,s]=j.useState({}),[o,l]=j.useState(""),[c,d]=j.useState(""),[u,p]=j.useState(""),[m,f]=j.useState(""),[x,h]=j.useState(""),[g,y]=j.useState(""),[v,b]=j.useState(""),[A,w]=j.useState(!1),k=Fm[n],N=k.questions.every($=>a[$.id]!==void 0),I=n===Fm.length-1,C=eY(a),O=gR(C),_=tY(O);async function D($){try{await Mt("POST","/api/assessments",{companyName:o||null,sector:c,revenueRange:u,employeeCount:m,opportunityScore:C.opportunity,riskScore:C.risk,readinessScore:C.readiness,executionScore:C.execution,disruptionScore:C.disruption,overallScore:O,rating:_,leadName:$.name||null,leadEmail:$.email||null,leadCompany:$.company||null})}catch{}}function G($,z){s(Q=>({...Q,[$]:z}))}function P(){I?t("lead"):i($=>$+1)}function L(){n===0?t("setup"):i($=>$-1)}async function U(){w(!0),await D({name:x,email:g,company:v}),w(!1),t("results")}async function W(){await D({}),t("results")}function B(){t("landing"),i(0),s({}),l(""),d(""),p(""),f(""),h(""),y(""),b("")}return r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"AI Diligence Score — Assess AI Risk, Disruption & Readiness | PrivateEquity.AI",description:"A rapid diligence framework for investment teams to identify AI-related upside, structural disruption risk, and execution readiness before an investment decision is made.",canonicalUrl:"/ai-diligence-score",keywords:"AI diligence score, AI investment assessment, AI readiness private equity, AI risk assessment PE, AI due diligence framework"}),r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[e==="landing"&&r.jsx(cY,{onStart:()=>t("setup")}),e==="setup"&&r.jsx(dY,{companyName:o,sector:c,revenueRange:u,employeeCount:m,onCompanyName:l,onSector:d,onRevenue:p,onEmployees:f,onBack:()=>t("landing"),onNext:()=>t("assessment")}),e==="assessment"&&r.jsx(uY,{dim:k,dimIndex:n,total:Fm.length,answers:a,onAnswer:G,onBack:L,onNext:P,allAnswered:N,isLast:I}),e==="lead"&&r.jsx(pY,{name:x,email:g,company:v,onName:h,onEmail:y,onCompany:b,onSubmit:U,onSkip:W,saving:A}),e==="results"&&r.jsx(mY,{scores:C,composite:O,rating:_,meta:nY[_],companyName:o,sector:c,revenueRange:u,employeeCount:m,onReset:B}),e!=="results"&&r.jsx(ht,{})]})]})}const Ei="#D4A843",fY=[{number:"01",label:"Corporate Foundation",title:"Legal identity and statutory infrastru
486cture.",purpose:"Establish the legal identity of the company and create a reliable foundation for fundraising, governance and future transactions.",items:["Articles of Incorporation","Corporate Documents","Company registry","Share capital structure","Statutory records"]},{number:"02",label:"Ownership & Governance",title:"Decision rights, board structure, and shareholder agreements.",purpose:"Clarify responsibilities, prevent conflicts, formalise decision-making and build investor confidence.",items:["Founders Agreement","Shareholders Agreement","Board Resolutions","Board Resolution Templates","Decision rights framework","Reserved matters"]},{number:"03",label:"Ownership Intelligence",title:"Cap table clarity and equity incentive structure.",purpose:"Provide a clear view of ownership, incentives, dilution and future capital structure — essential for any institutional investor review.",items:["Cap Table (current and fully diluted)","Option pool and ESOP","Vesting schedules","Dilution history","Future round modelling"]},{number:"04",label:"Intellectual Property",title:"Ownership of core assets before due diligence.",purpose:"Ensure that the company legally owns its core assets and that value is protected before investors conduct IP review.",items:["IP Assignment Agreements","Software and source code ownership","AI models and algorithms","Trademarks and brand assets","Patents and pending applications","Proprietary databases"]},{number:"05",label:"Compliance & Risk",title:"Regulatory, data, and employment risk mitigation.",purpose:"Reduce legal, regulatory and operational risks that could delay or block an investment during the diligence process.",items:["Regulatory compliance framework","GDPR / data privacy policies","Cybersecurity posture","Employment compliance","Tax compliance and structure","AML / KYC where applicable"]},{number:"06",label:"Financial & Fundraising Readiness",title:"The financial infrastructure investors expect.",purpose:"Create the financial and informational infrastructure needed to engage investors professionally and close rounds efficiently.",items:["Audited or reviewed Financial Statements","Financial Model (3-5 year)","Investment Memorandum","KPI dashboard","Use of proceeds","Structured Data Room","Due Diligence Checklist"]}],gY=({layer:e})=>{const[t,n]=j.useState(!1);return r.jsxs("div",{className:`rounded-xl border transition-all duration-300 overflow-hidden ${t?"border-[#D4A843]/40 bg-[#0F0F0F]":"border-white/10 bg-[#0C0C0C] hover:border-white/20"}`,children:[r.jsxs("button",{onClick:()=>n(!t),className:"w-full flex items-center justify-between gap-4 px-6 py-5 text-left cursor-pointer",children:[r.jsxs("div",{className:"flex items-center gap-5",children:[r.jsx("span",{className:"text-xs font-bold tracking-widest flex-shrink-0 font-mono",style:{color:Ei},children:e.number}),r.jsxs("div",{children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-0.5",style:{color:Ei},children:e.label}),r.jsx("h3",{className:"text-base font-semibold text-white leading-snug",children:e.title})]})]}),r.jsx("div",{className:"flex-shrink-0 text-gray-500",children:t?r.jsx(ng,{className:"h-4 w-4"}):r.jsx(La,{className:"h-4 w-4"})})]}),t&&r.jsxs("div",{className:"px-6 pb-6 border-t border-white/8",children:[r.jsx("p",{className:"text-sm text-[#CCCCCC] leading-relaxed mt-5 mb-5 pl-10",children:e.purpose}),r.jsx("div",{className:"pl-10 grid sm:grid-cols-2 gap-x-6 gap-y-2.5",children:e.items.map(i=>r.jsxs("div",{className:"flex items-start gap-2.5",children:[r.jsx(Ia,{className:"h-4 w-4 mt-0.5 flex-shrink-0",style:{color:Ei}}),r.jsx("span",{className:"text-sm text-gray-300",children:i})]},i))})]})]})},xY=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Intelligent Startup Stack — From Founder-Led to Investor-Ready — PrivateEquity.AI",description:"The governance, ownership, compliance, financial readiness and due diligence infrastructure every startup must build to become investable. PrivateEquity.AI framework for investor-ready founders.",canonicalUrl:"/startup-stack",keywords:"startup investor readiness, startup due diligence, cap table, governance startup, PE-ready company, startup fundraising infrastru
486cture"}),r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"bg-[#0A0A0A]",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 py-20 md:py-28 max-w-4xl",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-6",style:{color:Ei},children:"Intelligent Startup Stack"}),r.jsxs("h1",{className:"text-4xl md:text-5xl font-light tracking-tight text-white mb-5",children:["From Founder-Led Startup",r.jsx("br",{className:"hidden md:block"})," to Investor-Ready Company."]}),r.jsx("p",{className:"text-base text-gray-400 max-w-2xl mb-3 leading-relaxed",children:"Professional investors evaluate governance, ownership, compliance, and financial readiness before committing capital — not just product and market."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl mb-6 leading-relaxed",children:"The Intelligent Startup Stack helps founders understand and strengthen the structural layers required to become investable, scalable, and acquisition-ready."}),r.jsx("p",{className:"text-xs text-[#BBBBBB]",children:"Educational reference only. Not legal or financial advice."})]})}),r.jsx("section",{className:"elevated-section py-16 bg-[#141414] border-t border-white/5",children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl",children:[r.jsxs("div",{className:"mb-10",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:Ei},children:"The Six Layers"}),r.jsx("h2",{className:"text-2xl font-semibold text-white mb-2",children:"What investors examine before they invest."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl",children:"Each layer represents a structural dimension of investor readiness. Select a layer to see what belongs inside and why it matters."})]}),r.jsx("div",{className:"space-y-3",children:fY.map(e=>r.jsx(gY,{layer:e},e.number))})]})}),r.jsx("section",{className:"elevated-section py-10 bg-[#141414] border-t border-white/5",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl",children:r.jsx(de,{href:"/ai-tool-finder",children:r.jsxs("div",{className:"group bg-[#0F0F0F] border border-white/10 hover:border-[#D4A843]/40 rounded-2xl px-8 py-8 flex flex-col md:flex-row items-start md:items-center gap-6 cursor-pointer transition-all",children:[r.jsx("div",{className:"w-12 h-12 rounded-xl flex items-center justify-center flex-shrink-0",style:{backgroundColor:"rgba(196,151,58,0.12)",border:"1px solid rgba(196,151,58,0.25)"},children:r.jsx(tp,{className:"h-5 w-5",style:{color:Ei}})}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-1",style:{color:Ei},children:"AI Solution Navigator"}),r.jsx("h3",{className:"text-lg font-semibold text-white mb-1",children:"Find the right AI tool for your operating need →"}),r.jsx("p",{className:"text-sm text-[#BBBBBB]",children:"Describe your business challenge and discover the most relevant AI tools, GitHub projects, and frameworks curated by PrivateEquity.AI."})]}),r.jsx(qt,{className:"h-5 w-5 text-[#666666] group-hover:text-[#D4A843] transition-colors flex-shrink-0 hidden md:block"})]})})})}),r.jsx("section",{className:"py-16 bg-[#0A0A0A] border-t border-white/5",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 max-w-4xl",children:r.jsxs("div",{className:"bg-[#0F0F0F] border border-[#D4A843]/25 rounded-2xl px-8 py-12 md:px-12 text-center",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-4",style:{color:Ei},children:"For Founders & Advisors"}),r.jsx("h2",{className:"text-2xl md:text-3xl font-semibold text-white mb-4 leading-snug",children:"Build the company investors want to finance."}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-xl mx-auto mb-8 leading-relaxed",children:"PrivateEquity.AI helps founders and advisors transform fragmented company documentation into a structured, investor-ready operating stack."}),r.jsxs(de,{href:"/contact",className:"inline-flex items-center gap-2 px-7 py-3.5 rounded-lg text-sm font-semibold transition-all duration-200",style:{backgroundColor:Ei,color:"#0A0A0A"},children:["Unlock your enterprise value",r.jsx(qt,{className:"h-4 w-4"})]})]})})})]}),r.jsx(ht,{})]}),yY=["Technology","Healthcare","Manufacturing","Consumer Goods","Food & Beverage","Cleantech","Financial Services","Business Services","Transportation","Media & Entertainment","Construction","Energy","Telecom","Logistics","Consumer","Insurance","Industrial","Software","Media","Other"],vY=["Buy Out","Secondary Buy Out","Expansion","Replacement","Infrastru
486cture","Turnaround"],bY=["<€5M","€5–25M","€25–100M","€100–500M",">€500M","< €200M","€200M–€1B","€1B–€5B","> €5B"],wY=["unscored","manually_scored","model_assisted","validated"],xR=["AI Winner","AI Neutral","AI Exposed","AI Disrupted","Unclassified"],yR=["High","Medium","Low","Unassigned"],AY=["PE-Backed","Public Corporate","Financial Institution","Insurance","International Presence"],jY=["PEM 2022 — Private Equity Monitor","EY BVCA Private Equity Report 2022","Mediobanca — Le Principali Società Italiane 2024","Italian Trade Agency USA Presence List 2017"],kY={"Tier 1":"bg-[#D4A843]/15 text-[#D4A843] border border-[#D4A843]/30","Tier 2":"bg-blue-900/20 text-blue-300 border border-blue-600/30","Tier 3":"bg-white/8 text-white/60 border border-white/15",Unassigned:"bg-white/5 text-white/35 border border-white/8"},rN={">€500M":0,"€100–500M":1,"€25–100M":2,"€5–25M":3,"<€5M":4,Unknown:5},iN={"Tier 1":0,"Tier 2":1,"Tier 3":2,Unassigned:3},g1={"AI Winner":"bg-emerald-900/40 text-emerald-300 border border-emerald-600/30","AI Exposed":"bg-orange-900/40 text-orange-300 border border-orange-600/30","AI Disrupted":"bg-red-900/40 text-red-300 border border-red-600/30","AI Neutral":"bg-white/10 text-white/60 border border-white/15",Unclassified:"bg-white/5 text-white/50 border border-white/10"},NY={High:"text-red-400",Medium:"text-yellow-400",Low:"text-emerald-400",Unassigned:"text-white/50"},vR={unscored:"bg-white/8 text-white/40",manually_scored:"bg-blue-900/40 text-blue-300",model_assisted:"bg-purple-900/40 text-purple-300",validated:"bg-emerald-900/40 text-emerald-300"},bR={A:"text-emerald-400 font-bold",B:"text-blue-400 font-bold",C:"text-yellow-400 font-bold",D:"text-red-400 font-bold"};function lr({value:e,color:t="#D4A843"}){return e==null?r.jsx("span",{className:"text-white/35 text-xs",children:"—"}):r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"w-14 h-1.5 bg-white/10 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all",style:{width:`${Math.min(100,e)}%`,backgroundColor:t}})}),r.jsx("span",{className:"text-xs tabular-nums text-white/70",children:e})]})}function Th({label:e,className:t}){return r.jsx("span",{className:`text-[10px] px-2 py-0.5 rounded-full font-medium ${t}`,children:e})}function Fc({label:e,value:t,sub:n}){return r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-lg px-4 py-3 min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-1",children:e}),r.jsx("div",{className:"text-2xl font-semibold text-white truncate",children:t}),n&&r.jsx("div",{className:"text-xs text-white/50 mt-0.5 truncate",children:n})]})}function Qr({value:e,onChange:t,options:n,placeholder:i,className:a=""}){return r.jsxs("select",{value:e,onChange:s=>t(s.target.value),className:`bg-[#141414] border border-white/15 focus:border-[#D4A843]/60 text-white text-sm rounded px-3 py-1.5 outline-none transition-colors ${a}`,children:[r.jsx("option",{value:"",children:i}),n.map(s=>r.jsx("option",{value:s,children:s},s))]})}function IY({record:e,onClose:t,onUpdate:n}){const i=Ln(),[a,s]=j.useState(e.notes??""),[o,l]=j.useState(e.keyAiOpportunity??""),[c,d]=j.useState(e.keyAiRisk??""),[u,p]=j.useState(e.aiClassification??"Unclassified"),[m,f]=j.useState(e.diligencePriority??"Unassigned"),[x,h]=j.useState(!1),[g,y]=j.useState(null),[v,b]=j.useState(!1),[A,w]=j.useState(!1),[k,N]=j.useState(!1),I=sn({mutationFn:P=>Mt("PATCH",`/api/admin/ai-exposure-seed/${e.id}`,P),onSuccess:async P=>{const L=await P.json();L.record&&(n(L.record),N(!0),setTimeout(()=>N(!1),2e3)),i.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}});async function C(){I.mutate({notes:a,keyAiOpportunity:o,keyAiRisk:c,aiClassification:u,diligencePriority:m})}async function O(P=!1){h(!0),y(null);try{const L=await fetch(`/api/admin/ai-exposure-seed/${e.id}/generate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({confirm:P})}),U=await L.json();if(L.status===409){b(!0),h(!1);return}if(!U.success)throw new Error(U.error??"Generation failed");n(U.record),s(U.record.notes??""),l(U.record.keyAiOpportunity??""),d(U.record.keyAiRisk??""),p(U.record.aiClassification??"Unclassified"),f(U.record.diligencePriority??"Unassigned"),b(!1),i.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}catch(L){y(L instanceof Error?L.message:"Unknown error")}finally{h(!1)}}async function _(){w(!0);try{const L=await(await fetch(`/api/admin/ai-exposure-seed/${e.id}/validate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({validatedBy:"admin"})})).json();if(!L.success)throw new Error(L.error);n(L.record),i.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}catch(P){y(P instanceof Error?P.message:"Validation failed")}finally{w(!1)}}const D=e.overallAiDiligenceScore!=null,G=e.scoringStatus==="validated";return r.jsxs("div",{className:"fixed inset-0 z-40 flex",children:[r.jsx("div",{className:"flex-1 bg-black/60 backdrop-blur-sm",onClick:t}),r.jsxs("div",{className:"w-[520px] bg-[#0d0d0d] border-l border-white/10 flex flex-col h-full overflow-hidden",children:[r.jsxs("div",{className:"px-6 py-5 border-b border-white/10 flex items-start justify-between gap-4 shrink-0",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-1",children:"Company Profile"}),r.jsx("h2",{className:"text-base font-semibold text-white leading-snug",children:e.companyName}),r.jsxs("div",{className:"text-xs text-white/40 mt-0.5",children:[e.country," · ",e.year," · ",e.sourceDocument]})]}),r.jsx("button",{onClick:t,className:"text-white/50 hover:text-white text-xl mt-0.5 shrink-0 transition-colors",children:"✕"})]}),r.jsxs("div",{className:"flex-1 overflow-y-auto px-6 py-5 space-y-6",children:[r.jsxs("section",{className:"space-y-3",children:[r.jsx("div",{className:"grid grid-cols-2 gap-x-4 gap-y-2 text-xs",children:[["Sector",e.sectorNormalized],["Sector (raw)",e.sectorRaw],["Revenue",e.revenueRange],["Revenue (exact)",e.revenueRaw],["Employees",e.employeeCountRange],["Employees (exact)",e.employeesRaw],["EBITDA",e.ebitdaRaw],["Sponsor",e.sponsorOrInvestor],["Deal Type",e.dealType],["Confidence",e.dataConfidence]].map(([P,L])=>L?r.jsxs("div",{children:[r.jsx("div",{className:"text-white/50 mb-0.5",children:P}),r.jsx("div",{className:"text-white/80 capitalize",children:L})]},P):null)}),e.businessDescription&&r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-1",children:"Business"}),r.jsx("p",{className:"text-white/65 text-xs leading-relaxed",children:e.businessDescription})]})]}),r.jsxs("section",{className:"space-y-3",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]",children:"AI Diligence Tags"}),r.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-xs text-white/40 mb-1",children:"AI Classification"}),r.jsx("select",{value:u,onChange:P=>p(P.target.value),className:"w-full bg-[#1a1a1a] border border-white/10 focus:border-[#D4A843]/50 text-white text-xs rounded px-2 py-1.5 outline-none",children:xR.map(P=>r.jsx("option",{value:P,children:P},P))})]}),r.jsxs("div",{children:[r.jsx("div",{className:"text-xs text-white/40 mb-1",children:"Diligence Priority"}),r.jsx("select",{value:m,onChange:P=>f(P.target.value),className:"w-full bg-[#1a1a1a] border border-white/10 focus:border-[#D4A843]/50 text-white text-xs rounded px-2 py-1.5 outline-none",children:yR.map(P=>r.jsx("option",{value:P,children:P},P))})]})]})]}),r.jsx(SY,{record:e,onUpdate:n}),D&&r.jsxs("section",{className:"space-y-3",children:[r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]",children:"AI Diligence Scores"}),r.jsxs("div",{className:"flex items-center gap-2",children:[e.rating&&r.jsx("span",{className:`text-lg ${bR[e.rating]??""}`,children:e.rating}),r.jsx(Th,{label:(e.scoringStatus??"unscored").replace("_"," "),className:vR[e.scoringStatus??"unscored"]??""})]})]}),G&&e.validatedAt&&r.jsxs("div",{className:"text-[10px] text-emerald-400/70",children:["✓ Validated ",new Date(e.validatedAt).toLocaleDateString()," by ",e.validatedBy??"admin"]}),r.jsxs("div",{className:"bg-[#141414] rounded-lg p-4 space-y-2.5",children:[r.jsxs("div",{className:"flex justify-between items-center text-[10px] text-white/50 uppercase tracking-wider pb-1 border-b border-white/5",children:[r.jsx("span",{children:"Dimension"}),r.jsx("span",{children:"Score"})]}),[["Opportunity",e.aiOpportunityScore,"#22c55e"],["Risk",e.aiRiskScore,"#ef4444"],["Readiness",e.aiReadinessScore,"#3b82f6"],["Execution",e.aiExecutionScore,"#a855f7"],["Disruption",e.aiDisruptionScore,"#f97316"]].map(([P,L,U])=>r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsx("span",{className:"text-xs text-white/50 w-24",children:P}),r.jsx(lr,{value:L,color:U})]},P)),r.jsxs("div",{className:"border-t border-white/5 pt-2 flex items-center justify-between",children:[r.jsx("span",{className:"text-xs text-white/50",children:"Overall"}),r.jsx(lr,{value:e.overallAiDiligenceScore,color:"#D4A843"})]})]}),e.scoringStatus==="model_assisted"&&r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[r.jsx("p",{className:"text-[10px] text-purple-300/70 italic",children:"Preliminary model-assisted assessment — requires human review."}),e.generationMethod&&r.jsx("span",{className:`text-[10px] px-2 py-0.5 rounded-full font-medium border ${e.generationMethod==="anthropic"?"bg-amber-900/20 text-amber-300 border-amber-600/30":e.generationMethod==="openai"?"bg-green-900/20 text-green-300 border-green-600/30":"bg-white/5 text-white/50 border-white/10"}`,children:e.generationMethod==="anthropic"?"Claude":e.generationMethod==="openai"?"GPT-4o-mini":"Rules-based"}),e.modelName&&r.jsx("span",{className:"text-[10px] text-white/35 font-mono",children:e.modelName})]})]}),r.jsxs("section",{className:"space-y-3",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]",children:"Internal Notes"}),e.keyAiOpportunity&&r.jsxs("div",{className:"bg-emerald-900/15 border border-emerald-600/20 rounded px-3 py-2",children:[r.jsx("div",{className:"text-[10px] text-emerald-400/70 mb
486-0.5",children:"Key AI Opportunity"}),r.jsx("p",{className:"text-xs text-emerald-100/80",children:e.keyAiOpportunity})]}),e.keyAiRisk&&r.jsxs("div",{className:"bg-red-900/15 border border-red-600/20 rounded px-3 py-2",children:[r.jsx("div",{className:"text-[10px] text-red-400/70 mb-0.5",children:"Key AI Risk"}),r.jsx("p",{className:"text-xs text-red-100/80",children:e.keyAiRisk})]}),r.jsxs("div",{children:[r.jsx("div",{className:"text-xs text-white/40 mb-1",children:"Key AI Opportunity (edit)"}),r.jsx("input",{value:o,onChange:P=>l(P.target.value),placeholder:"Primary AI value creation angle…",className:"w-full bg-[#1a1a1a] border border-white/10 focus:border-[#D4A843]/50 text-white text-xs rounded px-3 py-2 outline-none placeholder-white/30 transition-colors"})]}),r.jsxs("div",{children:[r.jsx("div",{className:"text-xs text-white/40 mb-1",children:"Key AI Risk (edit)"}),r.jsx("input",{value:c,onChange:P=>d(P.target.value),placeholder:"Primary AI risk factor…",className:"w-full bg-[#1a1a1a] border border-white/10 focus:border-[#D4A843]/50 text-white text-xs rounded px-3 py-2 outline-none placeholder-white/30 transition-colors"})]}),r.jsxs("div",{children:[r.jsx("div",{className:"text-xs text-white/40 mb-1",children:"Analyst Notes"}),r.jsx("textarea",{rows:3,value:a,onChange:P=>s(P.target.value),placeholder:"Preliminary analyst notes…",className:"w-full bg-[#1a1a1a] border border-white/10 focus:border-[#D4A843]/50 text-white text-xs rounded px-3 py-2 outline-none resize-none placeholder-white/30 transition-colors"})]}),r.jsx("button",{onClick:C,disabled:I.isPending,className:"w-full py-2 bg-white/8 hover:bg-white/12 text-white text-xs rounded transition-colors disabled:opacity-50",children:I.isPending?"Saving…":k?"✓ Saved":"Save Notes & Tags"})]}),(e.sectorArchetype||e.confidenceScore!=null)&&r.jsxs("section",{className:"space-y-2.5",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]",children:"Sector Intelligence"}),r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-lg p-3 space-y-2",children:[e.sectorArchetype&&r.jsxs("div",{className:"flex justify-between items-center",children:[r.jsx("span",{className:"text-[10px] text-white/50",children:"Archetype"}),r.jsx("span",{className:"text-xs font-medium text-white/70",children:e.sectorArchetype})]}),e.confidenceScore!=null&&r.jsxs("div",{className:"flex items-center justify-between gap-2",children:[r.jsx("span",{className:"text-[10px] text-white/50",children:"Data Confidence"}),r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"w-16 h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full bg-[#D4A843]",style:{width:`${e.confidenceScore}%`}})}),r.jsxs("span",{className:"text-[10px] text-white/50",children:[e.confidenceScore,"/100"]})]})]}),e.sectorAiThesis&&r.jsxs("div",{className:"pt-1 border-t border-white/5",children:[r.jsx("div",{className:"text-[10px] text-white/40 mb-1",children:"Sector AI Thesis"}),r.jsx("p",{className:"text-[10px] text-white/50 leading-relaxed",children:e.sectorAiThesis})]})]})]}),r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-lg p-3",children:[r.jsx("div",{className:"text-[10px] text-white/50 mb-2 uppercase tracking-widest",children:"Full Assessment"}),r.jsx("a",{href:`/ai-diligence-score?company=${encodeURIComponent(e.companyName)}&sector=${encodeURIComponent(e.sectorNormalized??"")}&revenue=${encodeURIComponent(e.revenueRange??"")}&employees=${encodeURIComponent(e.employeeCountRange??"")}`,className:"block text-center text-sm px-4 py-2 border border-white/15 hover:border-[#D4A843]/50 text-white/60 hover:text-white rounded transition-colors",children:"Run AI Diligence Score →"})]})]}),r.jsxs("div",{className:"px-6 py-4 border-t border-white/10 space-y-2 shrink-0",children:[g&&r.jsx("div",{className:"text-xs text-red-400 bg-red-900/20 border border-red-600/30 rounded px-3 py-2",children:g}),v&&r.jsxs("div",{className:"bg-orange-900/20 border border-orange-600/30 rounded px-3 py-2 flex items-center justify-between gap-2",children:[r.jsx("p",{className:"text-xs text-orange-300",children:"Record has human review. Overwrite?"}),r.jsxs("div",{className:"flex gap-2 shrink-0",children:[r.jsx("button",{onClick:()=>b(!1),className:"text-xs px-2 py-1 bg-white/10 rounded",children:"Cancel"}),r.jsx("button",{onClick:()=>O(!0),className:"text-xs px-2 py-1 bg-orange-600 text-white rounded",children:"Overwrite"})]})]}),r.jsx("button",{onClick:()=>O(!1),disabled:x,className:"w-full py-2.5 bg-[#1a1020] border border-purple-600/40 hover:border-purple-500 text-purple-300 hover:text-purple-200 text-sm font-medium rounded transition-colors disabled:opacity-50 flex items-center justify-center gap-2",children:x?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"animate-spin",children:"⟳"})," Generating…"]}):"⚡ Generate Preliminary Assessment"}),D&&!G&&r.jsx("button",{onClick:_,disabled:A,className:"w-full py-2.5 bg-emerald-900/30 border border-emerald-600/40 hover:border-emerald-500 text-emerald-300 hover:text-emerald-200 text-sm font-medium rounded transition-colors disabled:opacity-50",children:A?"Validating…":"✓ Validate Assessment"}),G&&r.jsx("div",{className:"w-full py-2.5 bg-emerald-900/20 border border-emerald-600/30 text-emerald-400 text-sm text-center rounded",children:"✓ Validated"})]})]})]})}function SY({record:e,onUpdate:t}){const n=Ln(),[i,a]=j.useState(!1),[s,o]=j.useState(!1),l=e.datasetSegment==="Expansion / Market Presence";async function c(d){if(d&&l&&!i){a(!0);return}o(!0);try{const p=await(await fetch(`/api/admin/ai-exposure-seed/${e.id}/eligibility`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({indexEligible:d})})).json();p.record&&(t(p.record),a(!1)),n.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}catch{}o(!1)}return r.jsxs("section",{className:"space-y-3",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]",children:"Index Eligibility"}),r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-lg p-3 space-y-2.5",children:[r.jsxs("div",{className:"flex items-center justify-between gap-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-xs text-white/60 font-medium",children:e.indexEligible?r.jsx("span",{className:"text-emerald-400",children:"✓ Index Eligible"}):r.jsx("span",{className:"text-white/50",children:"✕ Expansion Record"})}),r.jsxs("div",{className:"text-[10px] text-white/50 mt-0.5",children:[e.datasetSegment??"—"," · ",e.companyUniverse]})]}),e.indexEligible?r.jsx("button",{onClick:()=>c(!1),disabled:s,className:"text-[10px] px-2 py-1 border border-red-600/30 hover:border-red-500/60 text-red-400/70 hover:text-red-300 rounded transition-colors disabled:opacity-40",children:s?"…":"Exclude from Index"}):r.jsx("button",{onClick:()=>c(!0),disabled:s,className:"text-[10px] px-2 py-1 border border-[#D4A843]/40 hover:border-[#D4A843] text-[#D4A843]/70 hover:text-[#D4A843] rounded transition-colors disabled:opacity-40",children:s?"…":"Promote to Index"})]}),e.indexEligibilityReason&&r.jsx("div",{className:"text-[10px] text-white/40 italic",children:e.indexEligibilityReason}),i&&r.jsxs("div",{className:"bg-amber-900/15 border border-amber-600/30 rounded p-2.5 space-y-2",children:[r.jsx("p",{className:"text-[10px] text-amber-200/80",children:"This record originates from the Expansion / Market Presence dataset. Confirm it is sufficiently complete and relevant for Index inclusion."}),r.jsxs("div",{className:"flex gap-2",children:[r.jsx("button",{onClick:()=>a(!1),className:"text-[10px] px-2 py-1 bg-white/8 rounded text-white/50",children:"Cancel"}),r.jsx("button",{onClick:()=>c(!0),disabled:s,className:"text-[10px] px-2 py-1 bg-amber-700/50 hover:bg-amber-700/70 text-amber-100 rounded transition-colors disabled:opacity-40",children:s?"Promoting…":"Confirm Promotion"})]})]})]})]})}function CY({records:e}){const t=e.filter(a=>a.prioritySector==="Tier 1"),n=t.filter(a=>a.scoringStatus==="validated"),i=Math.min(100,Math.round(n.length/50*100));return r.jsxs("div",{className:"bg-[#141414] border border-[#D4A843]/25 rounded-xl px-5 py-4 flex items-center gap-6",children:[r.jsxs("div",{className:"shrink-0",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-1",children:"First 50 Program"}),r.jsxs("div",{className:"text-2xl font-semibold text-white",children:[n.length,r.jsx("span",{className:"text-sm text-white/50 font-normal",children:" / 50"})]}),r.jsx("div",{className:"text-xs text-white/50 mt-0.5",children:"Tier 1 validated"})]}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"flex items-center justify-between mb-1.5",children:[r.jsx("span",{className:"text-xs text-white/40",children:"Progress toward 50 validated Tier 1 companies"}),r.jsxs("span",{className:"text-xs font-semibold text-[#D4A843]",children:[i,"%"]})]}),r.jsx("div",{className:"w-full h-2 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full bg-[#D4A843] rounded-full transition-all duration-700",style:{width:`${i}%`}})}),r.jsxs("div",{className:"flex items-center gap-4 mt-2",children:[r.jsxs("span",{className:"text-[10px] text-white/40",children:[t.length," Tier 1 in DB"]}),r.jsx("span",{className:"text-[10px] text-white/40",children:"·"}),r.jsxs("span",{className:"text-[10px] text-white/40",children:[t.filter(a=>a.overallAiDiligenceScore!=null).length," scored"]}),r.jsx("span",{className:"text-[10px] text-white/40",children:"·"}),r.jsx("span",{className:"text-[10px] text-white/40",children:50-n.length>0?`${50-n.length} remaining`:"Target reached ✓"})]})]}),r.jsx("a",{href:"/admin/ai-exposure-baseline",className:"shrink-0 text-xs px-3 py-1.5 border border-[#D4A843]/40 hover:border-[#D4A843] text-[#D4A843] rounded transition-colors whitespace-nowrap",children:"View Baseline →"})]})}function EY({onDone:e}){const[t,n]=j.useState(!1),[i,a]=j.useState(null);async function s(){n(!0),a(null);try{const l=await(await fetch("/api/admin/ai-exposure-seed/backfill-eligibility",{method:"POST"})).json();a(`✓ ${l.updated??0} records classified`),e()}catch{a("✕ Failed")}n(!1)}return r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("button",{onClick:s,disabled:t,className:"px-3 py-1.5 border border-[#D4A843]/40 hover:border-[#D4A843] text-[#D4A843] text-xs rounded transition-colors disabled:opacity-40",children:t?"Classifying…":"⊕ Backfill Eligibility"}),i&&r.jsx("span",{className:"text-[10px] text-[#D4A843]/70",children:i})]})}function _Y({onSelect:e}){const t=Ln(),[n,i]=j.useState("core"),[a,s]=j.useState(!1),[o,l]=j.useState(0),[c,d]=j.useState(0),[u,p]=j.useState(""),{data:m=[],isLoading:f,refetch:x}=We({queryKey:["/api/admin/ai-exposure-seed","unscored","core-queue"],queryFn:()=>fetch("/api/admin/ai-exposure-seed?scoringStatus=unscored&indexEligible=true").then(w=>
486w.json())}),{data:h=[],isLoading:g}=We({queryKey:["/api/admin/ai-exposure-seed","expansion-queue"],queryFn:()=>fetch("/api/admin/ai-exposure-seed?datasetSegment=Expansion+%2F+Market+Presence").then(w=>w.json())}),y=j.useMemo(()=>[...u?m.filter(k=>k.prioritySector===u):m].sort((k,N)=>{const I=iN[k.prioritySector??"Unassigned"]??3,C=iN[N.prioritySector??"Unassigned"]??3;if(I!==C)return I-C;const O=rN[k.revenueRange??"Unknown"]??5,_=rN[N.revenueRange??"Unknown"]??5;return O-_}),[m,u]),v=j.useMemo(()=>{const w={};for(const k of m){const N=k.prioritySector??"Unassigned";w[N]=(w[N]??0)+1}return w},[m]);async function b(){if(y.length){s(!0),d(y.length),l(0);for(const w of y){try{await fetch(`/api/admin/ai-exposure-seed/${w.id}/generate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})})}catch{}l(k=>k+1)}s(!1),x(),t.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}}const A=["Tier 1","Tier 2","Tier 3","Unassigned"];return r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"flex gap-2 border-b border-white/8 pb-3",children:[r.jsxs("button",{onClick:()=>i("core"),className:`px-4 py-2 text-xs font-semibold rounded border transition-colors ${n==="core"?"border-[#D4A843]/50 bg-[#D4A843]/10 text-[#D4A843]":"border-white/10 text-white/40 hover:text-white/70 hover:border-white/20"}`,children:["Core Queue (",m.length,")",r.jsx("span",{className:"ml-1.5 text-[10px] opacity-60",children:"index_eligible · unscored"})]}),r.jsxs("button",{onClick:()=>i("expansion"),className:`px-4 py-2 text-xs font-semibold rounded border transition-colors ${n==="expansion"?"border-blue-500/50 bg-blue-900/20 text-blue-300":"border-white/10 text-white/40 hover:text-white/70 hover:border-white/20"}`,children:["Expansion Queue (",h.length,")",r.jsx("span",{className:"ml-1.5 text-[10px] opacity-60",children:"market presence"})]}),n==="core"&&r.jsx("div",{className:"ml-2 text-[10px] text-white/40 self-center",children:"Default view — do not batch-generate Expansion records"})]}),n==="expansion"&&r.jsxs("div",{className:"space-y-3",children:[r.jsxs("div",{className:"bg-blue-900/15 border border-blue-600/25 rounded-xl p-4 text-xs text-blue-200/70",children:[r.jsx("strong",{className:"text-blue-300",children:"Expansion / Market Presence records"}
486)," — These are Italian Trade Agency company records used for coverage and sourcing. They are excluded from Core Index benchmarks until manually promoted. Use the company detail panel to review and promote individual records."]}),g&&r.jsx("div",{className:"text-white/50 text-xs",children:"Loading…"}),!g&&h.length===0&&r.jsx("div",{className:"text-white/40 text-xs text-center py-8",children:"No Expansion records found."}),!g&&h.length>0&&r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full text-xs",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-white/10 text-[10px] uppercase tracking-widest text-white/50",children:[r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Company"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Sector"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Country"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Source"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Status"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Actions"})]})}),r.jsxs("tbody",{children:[h.slice(0,100).map(w=>r.jsxs("tr",{className:"border-b border-white/5 hover:bg-white/[0.02]",children:[r.jsx("td",{className:"px-4 py-2.5 font-medium text-white/80 max-w-[180px] truncate",children:w.companyName}),r.jsx("td",{className:"px-4 py-2.5 text-white/50 max-w-[120px] truncate",children:w.sectorNormalized??"—"}),r.jsx("td",{className:"px-4 py-2.5 text-white/40",children:w.country??"—"}),r.jsx("td",{className:"px-4 py-2.5 text-white/50 text-[10px] max-w-[120px] truncate",children:w.sourceDocument}),r.jsx("td",{className:"px-4 py-2.5",children:r.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full bg-white/5 text-white/40 border border-white/10",children:"Expansion"})}),r.jsx("td",{className:"px-4 py-2.5",children:r.jsx("button",{onClick:()=>e(w),className:"text-xs px-2 py-1 border border-white/15 hover:border-blue-500/50 text-white/40 hover:text-white/80 rounded transition-colors",children:"Review →"})})]},w.id)),h.length>100&&r.jsx("tr",{children:r.jsxs("td",{colSpan:6,className:"px-4 py-2 text-center text-[10px] text-white/40",children:["+ ",h.length-100," more records — use filters to narrow down"]})})]})]})})})]}),n==="core"&&r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"flex flex-wrap gap-3 items-center",children:[r.jsxs("div",{className:"flex gap-1",children:[r.jsxs("button",{onClick:()=>p(""),className:`px-3 py-1.5 text-xs rounded border transition-colors ${u===""?"border-[#D4A843]/60 text-[#D4A843] bg-[#D4A843]/10":"border-white/12 text-white/40 hover:text-white/70"}`,children:["All (",m.length,")"]}),A.map(w=>v[w]?r.jsxs("button",{onClick:()=>p(u===w?"":w),className:`px-3 py-1.5 text-xs rounded border transition-colors ${u===w?"border-[#D4A843]/60 text-[#D4A843] bg-[#D4A843]/10":"border-white/12 text-white/40 hover:text-white/70"}`,children:[w," (",v[w],")"]},w):null)]}),r.jsxs("div",{className:"ml-auto flex items-center gap-3",children:[a&&r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("div",{className:"w-32 h-1.5 bg-white/10 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full bg-purple-500 transition-all",style:{width:`${c?o/c*100:0}%`}})}),r.jsxs("span",{className:"text-xs text-purple-300 tabular-nums",children:[o,"/",c]})]}),r.jsxs("button",{onClick:b,disabled:a||y.length===0,className:"px-4 py-2 bg-[#1a1020] border border-purple-600/40 hover:border-purple-500 text-purple-300 hover:text-purple-200 text-xs font-semibold rounded transition-colors disabled:opacity-40 flex items-center gap-2",children:[a?r.jsx("span",{className:"animate-spin",children:"⟳"}):"⚡",a?`Generating ${o+1}/${c}…`:`Generate All (${y.length})`]})]})]}),f?r.jsx("div",{className:"space-y-2",children:[...Array(5)].map((w,k)=>r.jsx("div",{className:"bg-[#141414] border border-white/5 rounded-lg h-12 animate-pulse"},k))}):y.length===0?r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-12 text-center",children:[r.jsx("div",{className:"text-4xl mb-4",children:"✓"}),r.jsx("h2",{className:"text-base font-semibold mb-2",children:"Queue is empty"}),r.jsx("p",{className:"text-white/50 text-sm",children:"All companies have been assessed. Use the Companies tab to review results."})]}):r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full text-sm",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-white/10 text-[10px] uppercase tracking-widest text-white/50",children:[r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"#"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Company"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Tier"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Sector"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Revenue"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Country"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Source"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Action"})]})}),r.jsx("tbody",{children:y.map((w,k)=>r.jsx(PY,{record:w,idx:k+1,onSelect:e,onDone:()=>{x(),t.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}},w.id))})]})})})]})]})}function PY({record:e,idx:t,onSelect:n,onDone:i}){var u,p;const[a,s]=j.useState(!1),[o,l]=j.useState(!1);async function c(){s(!0);try{await fetch(`/api/admin/ai-exposure-seed/${e.id}/generate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})}),l(!0),i()}catch{}s(!1)}
486const d=(u=e.sourceDocument)!=null&&u.includes("EY")?"EY/BVCA":(p=e.sourceDocument)!=null&&p.includes("Mediobanca")?"Mediobanca":"PEM 2022";return r.jsxs("tr",{className:`border-b border-white/5 hover:bg-white/[0.02] transition-colors ${o?"opacity-40":""}`,children:[r.jsx("td",{className:"px-4 py-2.5 text-xs text-white/40 tabular-nums",children:t}),r.jsxs("td",{className:"px-4 py-2.5 cursor-pointer",onClick:()=>n(e),children:[r.jsx("div",{className:"font-medium text-white text-sm hover:text-[#D4A843] transition-colors max-w-[200px] truncate",children:e.companyName}),r.jsx("div",{className:"text-[11px] text-white/50",children:e.dealType})]}),r.jsx("td",{className:"px-4 py-2.5",children:r.jsx(Th,{label:e.prioritySector??"Unassigned",className:kY[e.prioritySector??"Unassigned"]??""})}),r.jsx("td",{className:"px-4 py-2.5 text-xs text-white/55 max-w-[110px] truncate",children:e.sectorNormalized??"—"}),r.jsx("td",{className:"px-4 py-2.5 text-xs text-white/50",children:e.revenueRange??"—"}),r.jsx("td",{className:"px-4 py-2.5 text-xs text-white/40",children:e.country??"—"}),r.jsx("td",{className:"px-4 py-2.5 text-[10px] text-white/50",children:d}),r.jsx("td",{className:"px-4 py-2.5",onClick:m=>m.stopPropagation(),children:r.jsx("button",{onClick:c,disabled:a||o,className:"text-xs px-3 py-1 border border-purple-600/30 hover:border-purple-500 text-purple-300 hover:text-purple-200 rounded transition-colors disabled:opacity-40 whitespace-nowrap",children:o?"✓ Done":a?"⟳":"⚡ Generate"})})]})}const TY={"PE-Backed":"#D4A843","Public Corporate":"#3b82f6","Financial Institution":"#a855f7",Insurance:"#22c55e",Unknown:"#6b7280"};function Xp({value:e,max:t,color:n}){if(e==null)return r.jsx("span",{className:"text-white/35 text-xs",children:"—"});const i=Math.round(e/t*100);return r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("div",{className:"flex-1 bg-white/5 rounded-full h-1.5 overflow-hidden",style:{minWidth:60},children:r.jsx("div",{className:"h-full rounded-full transition-all",style:{width:`${i}%`,backgroundColor:n}})}),r.jsx("span",{className:"text-xs text-white/60 w-7 text-right",children:e})]})}function Zp({a:e,b:t,label:n,color:i}){const a=e!=null&&t!=null?e-t:null;return r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/50 mb-3",children:n}),r.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] text-white/50 mb-1",children:"PE-Backed"}),r.jsx("div",{className:"text-xl font-semibold",style:{color:i},children:e??"—"})]}),r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] text-white/50 mb-1",children:"Public Corporate"}),r.jsx("div",{className:"text-xl font-semibold text-blue-400",children:t??"—"})]})]}),a!=null&&r.jsxs("div",{className:`mt-2 text-[11px] font-medium ${a>0?"text-emerald-400":a<0?"text-red-400":"text-white/50"}`,children:["PE-Backed ",a>0?`+${a}`:a<0?`${a}`:"="," vs Public Corporate"]})]})}function DY(e,t,n,i,a,s,o){if(e==null||t==null||n==null)return null;const l=a??50,c=o??(a!=null?Math.round(a*.8):40),d=i??50,u=s??30;return Math.round(e*.25+t*.15+n*.15+l*.2+c*.1+(100-d)*.1+(100-u)*.05)}function Dh(e){return e==null?"—":e>=78?"AAA":e>=70?"AA":e>=63?"A":e>=56?"BBB":e>=49?"BB":e>=42?"B":"CCC"}const Oh={AAA:"#22c55e",AA:"#4ade80",A:"#D4A843",BBB:"#fbbf24",BB:"#f97316",B:"#ef4444",CCC:"#dc2626","—":"#4b5563"};function OY(e,t,n,i,a){return e==null||t==null||n==null||i==null||a==null?null:Math.round(e*.3+t*.25+n*.2+(100-i)*.15+(100-a)*.1)}function MY(e,t,n){return e==null||t==null||n==null?null:Math.round(e*.45+t*.4+(100-n)*.15)}function RY(e,t,n){return e==null||t==null||n==null?null:Math.round(e*.5+t*.3+n*.2)}const Jp={topPE:{label:"Top PE",color:"#D4A843"},aiWinners:{label:"AI Winner",color:"#22c55e"},disruptionRisk:{label:"Risk",color:"#ef4444"},turnaround:{label:"Turnaround",color:"#a855f7"}},aN={"PE-Backed":{label:"PE-Backed",bg:"bg-emerald-900/25",text:"text-emerald-400",border:"border-emerald-700/30"},"Public Corporate":{label:"Public Corp",bg:"bg-amber-900/25",text:"text-amber-400",border:"border-amber-700/30"},"Financial Institution":{label:"Fin. Inst",bg:"bg-sky-900/25",text:"text-sky-400",border:"border-sky-700/30"},Insurance:{label:"Insurance",bg:"bg-purple-900/25",text:"text-purple-400",border:"border-purple-700/30"}},LY={"PE-Backed":"text-emerald-400 border-emerald-700/40 bg-emerald-900/20","Public Corporate":"text-amber-400 border-amber-700/40 bg-amber-900/20","Financial Institution":"text-sky-400 border-sky-700/40 bg-sky-900/20",Insurance:"text-purple-400 border-purple-700/40 bg-purple-900/20"},FY=["All","PE-Backed","Public Corporate","Financial Institution","Insurance"];function BY(){const e=Ln(),[t,n]=j.useState(null),[i,a]=j.useState({}),[s,o]=j.useState("All"),{data:l,isLoading:c}=We({queryKey:["/api/admin/ai-exposure-seed/validation-candidates"],queryFn:()=>fetch("/api/admin/ai-exposure-seed/validation-candidates").then(h=>h.json()),staleTime:15e3}),d=(l==null?void 0:l.candidates)??[],u=l==null?void 0:l.coverage,p=sn({mutationFn:({id:h,note:g})=>Mt("POST",`/api/admin/ai-exposure-seed/${h}/validate`,{analystNote:g}),onSuccess:()=>
486{e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed/validation-candidates"]}),e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed/rankings"]}),n(null)}}),m=d.filter(h=>h.scoringStatus==="validated").length,f=Math.round(m/30*100),x=s==="All"?d:d.filter(h=>h.companyUniverse===s);return r.jsxs("div",{className:"space-y-5",children:[r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-5",children:[r.jsxs("div",{className:"flex items-start justify-between mb-4",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[r.jsx("h3",{className:"text-sm font-semibold text-white",children:"Validation Candidate Queue"}),r.jsx("span",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]/60 border border-[#D4A843]/20 rounded px-2 py-0.5",children:"Internal · Not Public"})]}),r.jsxs("p",{className:"text-xs text-white/50",children:["Top 30 ranked by PE AI Attractiveness · AI Exposure Risk · Strategic Relevance. Validated records form ",r.jsx("span",{className:"text-white/55",children:"AI Exposure Baseline v0.1"}),"."]})]}),r.jsxs("div",{className:"text-right flex-shrink-0 ml-6",children:[r.jsxs("div",{className:"text-3xl font-semibold text-[#D4A843]",children:[m,r.jsx("span",{className:"text-base font-normal text-white/50",children:" / 30"})]}),r.jsx("div",{className:"text-[10px] text-white/50 mt-0.5",children:"Baseline v0.1"})]})]}),r.jsx("div",{className:"h-1.5 bg-white/8 rounded-full overflow-hidden mb-1.5",children:r.jsx("div",{className:"h-full rounded-full transition-all duration-700",style:{width:`${f}%`,backgroundColor:f>=100?"#22c55e":"#D4A843"}})}),r.jsxs("div",{className:"flex justify-between",children:[r.jsxs("span",{className:"text-[10px] text-white/40",children:[f,"% complete"]}),r.jsxs("span",{className:"text-[10px] text-white/40",children:[30-m," remaining"]})]}),u&&r.jsxs("div",{className:"mt-4 pt-4 border-t border-white/6",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/40 mb-2.5",children:"Validated by Universe"}),r.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-2",children:u.byUniverse.map(h=>{const g=aN[h.universe],y=h.target>0?Math.min(100,Math.round(h.validated/h.target*100)):0,v=h.validated>=h.target,b=v?"#22c55e":h.universe==="PE-Backed"?"#34d399":h.universe==="Financial Institution"?"#38bdf8":h.universe==="Insurance"?"#a855f7":"#D4A843";return r.jsxs("div",{className:`rounded-lg p-3 border ${v?"border-emerald-700/25 bg-emerald-900/10":"border-white/6 bg-white/[0.02]"}`,children:[r.jsx("div",{className:`text-[10px] font-semibold mb-1.5 ${(g==null?void 0:g.text)??"text-white/50"}`,children:(g==null?void 0:g.label)??h.universe}),r.jsxs("div",{className:"flex items-end justify-between mb-1.5",children:[r.jsx("span",{className:"text-base font-bold text-white",children:h.validated}),r.jsxs("span",{className:"text-[10px] text-white/50",children:["/ ",h.target," target"]})]}),r.jsx("div",{className:"h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all duration-500",style:{width:`${y}%`,backgroundColor:b}})}),r.jsxs("div",{className:"text-[11px] text-white/35 mt-1",children:[y,"%"]})]},h.universe)})})]})]}),(u==null?void 0:u.biasWarning)&&r.jsxs("div",{className:"bg-amber-900/15 border border-amber-600/30 rounded-xl p-4 flex items-start gap-3",children:[r.jsx("span",{className:"text-amber-400 text-base mt-0.5 shrink-0",children:"⚠"}),r.jsxs("div",{children:[r.jsx("div",{className:"text-[11px] font-semibold text-amber-400 mb-0.5 uppercase tracking-wide",children:"Calibration Bias Warning"}),r.jsx("p",{className:"text-xs text-amber-400/70",children:u.biasMessage})]})]}),r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[FY.map(h=>{const g=s===h,y=g&&h!=="All"?LY[h]:g?"text-[#D4A843] border-[#D4A843]/40 bg-[#D4A843]/10":"text-white/50 border-white/10 hover:border-white/25 hover:text-white/60";return r.jsx("button",{onClick:()=>o(h),className:`text-[10px] px-2.5 py-1 rounded border font-medium transition-colors ${y}`,children:h},h)}),r.jsx("div",{className:"ml-auto flex items-center gap-3 hidden sm:flex",children:Object.entries(Jp).map(([h,g])=>r.jsxs("div",{className:"flex items-center gap-1 text-[11px] text-white/40",children:[r.jsx("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:g.color}}),g.label]},h))})]}),c?r.jsx("div",{className:"space-y-2",children:[...Array(10)].map((h,g)=>r.jsx("div",{className:"bg-[#141414] border border-white/5 rounded-lg h-14 animate-pulse"},g))}):r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:[r.jsxs("div",{className:"grid items-center border-b border-white/10 px-4 py-2.5 text-[10px] uppercase tracking-widest text-white/40",style:{gridTemplateColumns:"28px 1fr 110px 90px 90px 130px 110px"},children:[r.jsx("div",{children:"#"}),r.jsx("div",{children:"Company"}),r.jsx("div",{children:"Universe"}),r.jsx("div",{children:"PE Score"}),r.jsx("div",{children:"Exp. Risk"}),r.jsx("div",{children:"Classification"}),r.jsx("div",{children:"Status"})]}),r.jsxs("div",{className:"divide-y divide-white/5",children:[x.map((h,g)=>{const y=h.scoringStatus==="validated",v=t===h.id,b=Dh(h.peScore),A=Oh[b]??"#6b7280",w=aN[h.companyUniverse??""];return r.jsxs("div",{children:[r.jsxs("div",{className:`grid items-center px-4 py-3 transition-colors hover:bg-white/[0.02] ${y?"opacity-50":""}`,style:{gridTemplateColumns:"28px 1fr 110px 90px 90px 130px 110px"},children:[r.jsx("div",{className:"text-xs text-white/35 font-mono",children:g+1}),r.jsxs("div",{className:"min-w-0 pr-2",children:[r.jsxs("div",{className:"flex items-center gap-1.5 mb-0.5",children:[r.jsx("span",{className:"text-xs font-medium text-white/85 truncate",children:h.companyName}),h.recommendedNext&&r.jsx("span",{className:"shrink-0 text-[11px] px-1.5 py-px rounded bg-emerald-900/35 text-emerald-400 border border-emerald-700/35 font-bold uppercase tracking-wide",children:"Rec"})]}),r.jsxs("div",{className:"flex items-center gap-1 flex-wrap",children:[r.jsx("span",{className:"text-[11px] text-white/50",children:h.sectorNormalized??"—"}),h.recommendedNext&&h.recommendedReason?r.jsx("span",{className:"text-[11px] text-emerald-400/55 italic",children:h.recommendedReason}):h.sourcePools.slice(0,2).map(k=>{var N,I,C;return r.jsx("span",{className:"text-[11px] px-1 py-px rounded-sm font-medium",style:{color:(N=Jp[k])==null?void 0:N.color,backgroundColor:(((I=Jp[k])==null?void 0:I.color)??"#888")+"20"},children:((C=Jp[k])==null?void 0:C.label)??k},k)})]})]}),r.jsx("div",{children:w?r.jsx("span",{className:`text-[11px] px-2 py-0.5 rounded border font-semibold ${w.bg} ${w.text} ${w.border}`,children:w.label}):r.jsx("span",{className:"text-[10px] text-white/40",children:h.companyUniverse??"—"})}),r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"text-sm font-semibold",style:{color:A},children:h.peScore??"—"}),r.jsx("span",{className:"text-[11px] px-1 py-px rounded font-medium",style:{color:A,backgroundColor:A+"18",border:`1px solid ${A}30`},children:b})]}),r.jsx("div",{children:r.jsx(lr,{value:h.exposureRisk,color:"#ef4444"})}),r.jsx("div",{children:r.jsx("span",{className:`text-[10px] px-2 py-0.5 rounded font-medium ${g1[h.aiClassification??""]??"bg-white/5 text-white/40"}`,children:h.aiClassification??"—"})}),r.jsx("div",{children:y?r.jsxs("div",{children:[r.jsx("span",{className:"text-[10px] px-2 py-0.5 bg-emerald-900/25 text-emerald-400 border border-emerald-600/25 rounded font-medium",children:"✓ Validated"}),h.validationNotes&&r.jsx("div",{className:"text-[11px] text-white/40 mt-0.5 truncate max-w-[100px]",title:h.validationNotes,children:h.validationNotes})]}):r.jsx("button",{onClick:()=>n(v?null:h.id),className:`text-[10px] px-2.5 py-1 rounded border font-medium transition-colors ${v?"bg-[#D4A843]/15 border-[#D4A843]/40 text-[#D4A843]":"border-white/15 text-white/40 hover:border-[#D4A843]/40 hover:text-[#D4A843]"}`,children:v?"↑ Cancel":"Validate →"})})]}),v&&!y&&r.jsxs("div",{className:"px-4 pb-4 pt-3 bg-[#0d0d0d] border-t border-white/5",children:[r.jsxs("div",{className:"flex gap-3 items-start",children:[r.jsxs("div",{className:"flex-1",children:[r.jsxs("label",{className:"text-[10px] uppercase tracking-widest text-white/50 block mb-1.5",children:["Analyst Note ",r.jsx("span",{className:"text-white/35 normal-case tracking-normal",children:"(optional)"})]}),r.jsx("textarea",{rows:2,placeholder:"Confirmed from public disclosures, sector research, or direct knowledge…",value:i[h.id]??"",onChange:k=>a(N=>({...N,[h.id]:k.target.value})),className:"w-full bg-[#141414] border border-white/15 focus:border-[#D4A843]/50 text-white/80 text-xs rounded px-3 py-2 outline-none resize-none placeholder-white/30 transition-colors"})]}),r.jsx("button",{onClick:()=>p.mutate({id:h.id,note:i[h.id]??""}),disabled:p.isPending,className:"mt-6 px-4 py-2 bg-[#D4A843] hover:bg-[#d4a74a] disabled:opacity-50 text-black text-xs font-semibold rounded transition-colors flex-shrink-0",children:p.isPending?"Saving…":"Confirm Validation"})]}),r.jsxs("div",{className:"mt-2.5 flex flex-wrap gap-x-5 gap-y-1 text-[10px] text-white/40",children:[r.jsxs("span",{children:["PE ",r.jsx("strong",{className:"text-[#D4A843]",children:h.peScore??"—"})," [",b,"]"]}),r.jsxs("span",{children:["Opp ",r.jsx("strong",{className:"text-white/50",children:h.aiOpportunityScore})]}),r.jsxs("span",{children:["Ready ",r.jsx("strong",{className:"text-white/50",children:h.aiReadinessScore})]}),r.jsxs("span",{children:["Moat ",r.jsx("strong",{className:"text-white/50",children:h.moatDefensibilityScore??"—"})]}),r.jsxs("span",{children:["DataAdv ",r.jsx("strong",{className:"text-white/50",children:h.dataAdvantageScore??"—"})]}),r.jsxs("span",{children:["Threat ",r.jsx("strong",{className:"text-white/50",children:h.aiNativeThreatLevel??"—"})]}),r.jsxs("span",{children:["ExpRisk ",r.jsx("strong",{className:"text-red-400",children:h.exposureRisk})]}),r.jsxs("span",{children:["Universe ",r.jsx("strong",{className:(w==null?void 0:w.text)??"text-white/50",children:h.companyUniverse??"—"})]})]})]})]}
486,h.id)}),x.length===0&&!c&&r.jsx("div",{className:"py-10 text-center text-xs text-white/40",children:"No candidates match the selected universe filter."})]})]})]})}const em=["Business model understood","Opportunity score reasonable","Readiness score reasonable","Disruption score reasonable","Classification confirmed","Analyst note added"];function $Y(){return`Validated as Reference Record.
487
488Business model reviewed.
489AI opportunity assessment reviewed.
490AI readiness and execution assessment reviewed.
491Disruption exposure and AI-native threat reviewed.
492Classification confirmed for baseline calibration.
493
494Analyst: Marco Mizzau.
495Date: ${new Date().toLocaleDateString("en-GB",{day:"2-digit",month:"long",year:"numeric"})}.`}function UY(){const e=Ln(),[t,n]=j.useState(null),[i,a]=j.useState({}),[s,o]=j.useState({}),{data:l=[],isLoading:c}=We({queryKey:["/api/admin/ai-exposure-seed/reference-records"],queryFn:()=>fetch("/api/admin/ai-exposure-seed/reference-records").then(x=>x.json()),staleTime:15e3}),d=sn({mutationFn:({id:x,note:h})=>Mt("POST",`/api/admin/ai-exposure-seed/${x}/validate`,{analystNote:h,analystName:"Marco Mizzau"}),onSuccess:()=>{e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed/reference-records"]}),e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]}),n(null)}});function u(x){return i[x]??new Array(em.length).fill(!1)}function p(x,h){const y=[...u(x)];y[h]=!y[h],a(v=>({...v,[x]:y}))}function m(x){return s[x]!==void 0?s[x]:$Y()}const f=l.filter(x=>{var h;return((h=x.record)==null?void 0:h.scoringStatus)==="validated"}).length;return r.jsxs("div",{className:"space-y-5",children:[r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-5",children:[r.jsxs("div",{className:"flex items-start justify-between mb-4",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[r.jsx("h3",{className:"text-sm font-semibold text-white",children:"Reference Records Validation"}),r.jsx("span",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]/60 border border-[#D4A843]/20 rounded px-2 py-0.5",children:"Internal · Human Review Only"})]}),r.jsx("p",{className:"text-xs text-white/50",children:"Fixed cohort of 10 reference companies for baseline calibration. AI scores are never modified — only validation status, analyst name, and note are written."})]}),r.jsxs("div",{className:"text-right flex-shrink-0 ml-6",children:[r.jsxs("div",{className:"text-3xl font-semibold text-[#D4A843]",children:[f,r.jsx("span",{className:"text-base font-normal text-white/50",children:" / 10"})]}),r.jsx("div",{className:"text-[10px] text-white/50 mt-0.5",children:"Reference Baseline"})]})]}),r.jsx("div",{className:"h-1.5 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all duration-700",style:{width:`${f*10}%`,backgroundColor:f===10?"#22c55e":"#D4A843"}})}),r.jsxs("div",{className:"flex justify-between mt-1.5",children:[r.jsxs("span",{className:"text-[10px] text-white/40",children:[f*10,"% complete"]}),r.jsxs("span",{className:"text-[10px] text-white/40",children:[10-f," remaining"]})]})]}),r.jsxs("div",{className:"bg-amber-900/15 border border-amber-600/25 rounded-xl p-4 text-xs text-amber-200/60",children:[r.jsx("strong",{className:"text-amber-300",children:"Human validation only."})," This workflow does not overwrite Claude v3 outputs or modify any scores. Completing a validation marks the record as validated and saves the analyst note."]}),c?r.jsx("div",{className:"space-y-3",children:[...Array(5)].map((x,h)=>r.jsx("div",{className:"bg-[#141414] border border-white/5 rounded-xl h-20 animate-pulse"},h))}):r.jsx("div",{className:"space-y-4",children:l.map((x,h)=>{const g=x.record,y=(g==null?void 0:g.scoringStatus)==="validated",v=g!=null&&t===g.id,b=g?u(g.id):[],A=b.length===em.length&&b.every(Boolean),w=g?DY(g.aiOpportunityScore,g.aiReadinessScore,g.aiExecutionScore,g.aiDisruptionScore,g.moatDefensibilityScore,g.aiNativeThreatLevel,g.dataAdvantageScore):null,k=Dh(w),N=Oh[k]??"#6b7280";return r.jsxs("div",{className:`bg-[#141414] border rounded-xl overflow-hidden transition-colors ${y?"border-emerald-600/30":v?"border-[#D4A843]/30":"border-white/8"}`,children:[r.jsxs("div",{className:"px-5 py-4 flex items-center gap-4",children:[r.jsx("div",{className:"text-xs text-white/35 font-mono w-5 flex-shrink-0",children:h+1}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[r.jsx("span",{className:"text-sm font-semibold text-white/90",children:x.searchName}),g?r.jsxs(r.Fragment,{children:[r.jsx("span",{className:`text-[10px] px-2 py-0.5 rounded font-medium ${g1[g.aiClassification??""]??"bg-white/5 text-white/40 border border-white/10"}`,children:g.aiClassification??"Unclassified"}),r.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-semibold",style:{color:N,backgroundColor:N+"18",border:`1px solid ${N}30`},children:k})]}):r.jsx("span",{className:"text-[10px] text-red-400/70 border border-red-600/25 bg-red-900/15 rounded px-2 py-0.5",children:"Not found in database"})]}),g&&r.jsxs("div",{className:"text-[11px] text-white/50 mt-0.5",children:[g.sectorNormalized??"—"," · ",g.revenueRange??"—"," · ",g.companyUniverse??"—"]})]}),g&&r.jsxs("div",{className:"flex items-center gap-3 flex-shrink-0",children:[r.jsxs("div",{className:"text-right",children:[r.jsx("div",{className:"text-[10px] text-white/40",children:"PE Score"}),r.jsx("div",{className:"text-base font-semibold",style:{color:N},children:w??"—"})]}),y?r.jsx("span",{className:"text-[10px] px-2.5 py-1 bg-emerald-900/25 text-emerald-400 border border-emerald-600/25 rounded font-medium",children:"✓ Validated"}):r.jsx("button",{onClick:()=>n(v?null:g.id),className:`text-[10px] px-3 py-1.5 rounded border font-medium transition-colors ${v?"bg-[#D4A843]/15 border-[#D4A843]/40 text-[#D4A843]":"border-white/15 text-white/40 hover:border-[#D4A843]/40 hover:text-[#D4A843]"}`,children:v?"↑ Close":"Validate →"})]})]}
495),g&&r.jsx("div",{className:"px-5 pb-4 grid grid-cols-5 gap-2",children:[{label:"AI Opportunity",value:g.aiOpportunityScore,color:"#10b981"},{label:"AI Risk",value:g.aiRiskScore,color:"#ef4444"},{label:"AI Readiness",value:g.aiReadinessScore,color:"#D4A843"},{label:"AI Execution",value:g.aiExecutionScore,color:"#a78bfa"},{label:"AI Disruption",value:g.aiDisruptionScore,color:"#f97316"},{label:"Moat Defensibility",value:g.moatDefensibilityScore,color:"#22c55e"},{label:"Labor Substitution",value:g.laborSubstitutionExposure,color:"#fb923c"},{label:"AI-Native Threat",value:g.aiNativeThreatLevel,color:"#f43f5e"},{label:"Data Advantage",value:g.dataAdvantageScore,color:"#60a5fa"},{label:"PE Attractiveness",value:w,color:N}].map(I=>r.jsxs("div",{className:"bg-[#0d0d0d] rounded-lg p-2.5",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/40 mb-1 leading-tight",children:I.label}),I.value!=null?r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"text-sm font-semibold",style:{color:I.color},children:I.value}),r.jsx("div",{className:"mt-1.5 h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.min(100,I.value)}%`,backgroundColor:I.color+"80"}})})]}):r.jsx("div",{className:"text-sm text-white/35",children:"—"})]},I.label))}),g&&(g.aiThesis||g.keyAiOpportunity||g.keyAiRisk)&&r.jsxs("div",{className:"px-5 pb-4 space-y-2",children:[g.aiThesis&&r.jsxs("div",{className:"bg-[#0d0d0d] rounded-lg p-3",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-[#D4A843]/50 mb-1",children:"AI Thesis"}),r.jsx("p",{className:"text-xs text-white/50 leading-relaxed",children:g.aiThesis})]}),(g.keyAiOpportunity||g.keyAiRisk)&&r.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[g.keyAiOpportunity&&r.jsxs("div",{className:"bg-[#0d0d0d] rounded-lg p-3",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-emerald-400/50 mb-1",children:"Key AI Upside"}),r.jsx("p",{className:"text-xs text-white/50 leading-relaxed",children:g.keyAiOpportunity})]}),g.keyAiRisk&&r.jsxs("div",{className:"bg-[#0d0d0d] rounded-lg p-3",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-red-400/50 mb-1",children:"Key AI Risk"}),r.jsx("p",{className:"text-xs text-white/50 leading-relaxed",children:g.keyAiRisk})]})]})]}),v&&!y&&g&&r.jsxs("div",{className:"border-t border-white/8 px-5 py-5 bg-[#0a0a0a] space-y-5",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]",children:"Validation Checklist"}),r.jsx("div",{className:"space-y-2.5",children:em.map((I,C)=>r.jsxs("label",{className:"flex items-center gap-3 cursor-pointer group",onClick:()=>p(g.id,C),children:[r.jsx("div",{className:`w-4 h-4 rounded border flex items-center justify-center flex-shrink-0 transition-colors ${b[C]?"bg-[#D4A843] border-[#D4A843]":"border-white/20 group-hover:border-[#D4A843]/50"}`,children:b[C]&&r.jsx("span",{className:"text-black text-[10px] font-bold leading-none",children:"✓"})}),r.jsx("span",{className:`text-xs transition-colors ${b[C]?"text-white/75":"text-white/40 group-hover:text-white/60"}`,children:I})]},C))}),r.jsxs("div",{children:[r.jsxs("label",{className:"text-[10px] uppercase tracking-widest text-white/50 block mb-1.5",children:["Analyst Note ",r.jsx("span",{className:"text-white/35 normal-case tracking-normal",children:"(required — edit or accept default)"})]}),r.jsx("textarea",{rows:9,value:m(g.id),onChange:I=>o(C=>({...C,[g.id]:I.target.value})),className:"w-full bg-[#141414] border border-white/15 focus:border-[#D4A843]/50 text-white/75 text-xs rounded px-3 py-2.5 outline-none resize-none transition-colors font-mono leading-relaxed"})]}),r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("div",{className:`w-2 h-2 rounded-full flex-shrink-0 ${A?"bg-emerald-400":"bg-white/15"}`}),r.jsx("span",{className:`text-xs ${A?"text-emerald-400":"text-white/50"}`,children:A?"Checklist complete — ready to validate":`${b.filter(Boolean).length} / ${em.length} items checked`})]}),r.jsx("button",{disabled:!A||d.isPending,onClick:()=>d.mutate({id:g.id,note:m(g.id)}),className:"px-5 py-2 bg-[#D4A843] hover:bg-[#d4a74a] disabled:opacity-40 disabled:cursor-not-allowed text-black text-xs font-semibold rounded transition-colors",children:d.isPending?"Saving…":"Mark as Validated"})]})]}),y&&(g==null?void 0:g.validationNotes)&&r.jsx("div",{className:"px-5 pb-4",children:r.jsxs("div",{className:"bg-emerald-900/10 border border-emerald-600/20 rounded-lg p-3",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-emerald-400/60 mb-1.5",children:"Validation Note"}),r.jsx("pre",{className:"text-[11px] text-emerald-300/50 font-mono leading-relaxed whitespace-pre-wrap",children:g.validationNotes}),g.validatedAt&&r.jsxs("div",{className:"mt-2 text-[11px] text-emerald-400/30",children:["Validated ",new Date(g.validatedAt).toLocaleDateString("en-GB",{day:"2-digit",month:"long",year:"numeric"})," · ",g.validatedBy??"analyst"]})]})})]},x.searchName)})})]})}const qY=[{key:"topPeOpportunities",label:"Top PE Opportunities",sub:"Highest PE AI Attractiveness Score overall",accentColor:"#D4A843",headerColor:"text-[#D4A843]",borderColor:"border-[#D4A843]/20",badge:e=>{const t=Dh(e.peScore);return{label:t,color:Oh[t]??"#6b7280"}},metric:e=>e.peScore,metricLabel:"PE Score",sub2:e=>`Opp ${e.aiOpportunityScore??"—"} · Moat ${e.moatDefensibilityScore??"—"}`},{key:"topAiWinners",label:"Top AI Winners",sub:"AI Winner classification · highest PE score",accentColor:"#22c55e",headerColor:"text-emerald-400",borderColor:"border-emerald-600/20",badge:e=>{const t=Dh(e.peScore);return{label:t,color:Oh[t]??"#6b7280"}},metric:e=>e.peScore,metricLabel:"PE Score",sub2:e=>`Opp ${e.aiOpportunityScore??"—"} · Ready ${e.aiReadinessScore??"—"}`},{key:"topTurnaround",label:"Top AI Turnaround Candidates",sub:"High opportunity gap vs. readiness (≥15 pt delta)",accentColor:"#a85
4955f7",headerColor:"text-purple-400",borderColor:"border-purple-600/20",badge:e=>{const t=e.aiOpportunityScore!=null&&e.aiReadinessScore!=null?e.aiOpportunityScore-e.aiReadinessScore:null;return{label:t!=null?`+${t}`:"—",color:"#a855f7"}},metric:e=>e.aiOpportunityScore,metricLabel:"Opp",sub2:e=>`Ready ${e.aiReadinessScore??"—"} · Exec ${e.aiExecutionScore??"—"}`},{key:"topDisruptionRisks",label:"Top AI Disruption Risks",sub:"Composite disruption + AI-native threat pressure",accentColor:"#ef4444",headerColor:"text-red-400",borderColor:"border-red-600/20",badge:e=>({label:e.aiClassification??"—",color:"#ef4444"}),metric:e=>e.compositeRisk??e.aiDisruptionScore??null,metricLabel:"Risk",sub2:e=>`Dis ${e.aiDisruptionScore??"—"} · Threat ${e.aiNativeThreatLevel??"—"}`}];function GY(){const{data:e,isLoading:t}=We({queryKey:["/api/admin/ai-exposure-seed/rankings"],queryFn:()=>fetch("/api/admin/ai-exposure-seed/rankings").then(n=>n.json()),staleTime:6e4});return r.jsxs("div",{className:"space-y-5",children:[r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("h3",{className:"text-sm font-semibold text-white",children:"PE AI Attractiveness Rankings"}),r.jsx("span",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]/60 border border-[#D4A843]/20 rounded px-2 py-0.5",children:"Internal · Not Public"})]}),t?r.jsx("div",{className:"text-xs text-white/50 py-8 text-center",children:"Loading rankings…"}):r.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:qY.map(n=>{const i=(e==null?void 0:e[n.key])??[];return r.jsxs("div",{className:`bg-[#141414] border ${n.borderColor} rounded-xl overflow-hidden`,children:[r.jsxs("div",{className:"px-4 py-3 border-b border-white/8",children:[r.jsx("div",{className:`text-xs font-semibold ${n.headerColor}`,children:n.label}),r.jsx("div",{className:"text-[10px] text-white/50 mt-0.5",children:n.sub})]}),r.jsxs("div",{className:"divide-y divide-white/5",children:[i.length===0&&r.jsx("div",{className:"px-4 py-6 text-xs text-white/35 text-center",children:"No data"}),i.map((a,s)=>{const o=n.badge(a),l=n.metric(a);return r.jsxs("div",{className:"flex items-center gap-3 px-4 py-2.5 hover:bg-white/[0.02] transition-colors",children:[r.jsx("span",{className:"text-[10px] text-white/35 w-4 text-right flex-shrink-0",children:s+1}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("div",{className:"text-xs text-white/85 font-medium truncate",children:a.companyName}),r.jsxs("div",{className:"text-[10px] text-white/40 mt-0.5",children:[a.sectorNormalized??"—"," · ",n.sub2(a)]})]}),r.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[r.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded font-medium",style:{color:o.color,backgroundColor:o.color+"18",border:`1px solid ${o.color}30`},children:o.label}),r.jsx("span",{className:"text-sm font-semibold w-7 text-right",style:{color:n.accentColor},children:l??"—"})]})]},a.id)})]})]},n.key)})})]})}function HY({onSegmentFilter:e}){const[t,n]=j.useState("attractiveness"),[i,a]=j.useState("desc"),{data:s=[]}=We({queryKey:["/api/admin/ai-exposure-seed/analytics/sectors"],queryFn:()=>fetch("/api/admin/ai-exposure-seed/analytics/sectors").then(v=>v.json())}),{data:o=[]}=We({queryKey:["/api/admin/ai-exposure-seed/analytics/universes"],queryFn:()=>fetch("/api/admin/ai-exposure-seed/analytics/universes").then(v=>v.json())}),{data:l}=We({queryKey:["/api/admin/ai-exposure-seed/analytics/segments"],queryFn:()=>fetch("/api/admin/ai-exposure-seed/analytics/segments").then(v=>v.json())}),c=j.useMemo(()=>s.map(v=>({...v,attractiveness:OY(v.avgOpportunity,v.avgReadiness,v.avgExecution,v.avgRisk,v.avgDisruption),exposureRisk:MY(v.avgRisk,v.avgDisruption,v.avgReadiness),valueCreation:RY(v.avgOpportunity,v.avgExecution,v.avgReadiness)})),[s]),d=j.useMemo(()=>[...c].sort((v,b)=>{const A=v[t]??-1,w=b[t]??-1;return i==="desc"?w-A:A-w}),[c,t,i]);function u(v){t===v?a(b=>b==="desc"?"asc":"desc"):(n(v),a("desc"))}function p({col:v,children:b}){const A=t===v;return r.jsxs("th",{className:`text-left px-3 py-2.5 font-medium cursor-pointer select-none transition-colors ${A?"text-[#D4A843]":"text-white/40 hover:text-white/70"}`,onClick:()=>u(v),children:[b,A?i==="desc"?" ↓":" ↑":""]})}const m=[{key:"highOppHighDis",label:"High Opp · High Disruption",sub:"Transformable but threatened",color:"#f97316",bg
495:"bg-orange-900/15 border-orange-600/30"},{key:"highOppLowDis",label:"High Opp · Low Disruption",sub:"Best position — AI Winners",color:"#22c55e",bg:"bg-emerald-900/15 border-emerald-600/30"},{key:"lowOppHighDis",label:"Low Opp · High Disruption",sub:"Structurally exposed",color:"#ef4444",bg:"bg-red-900/15 border-red-600/30"},{key:"lowOppLowDis",label:"Low Opp · Low Disruption",sub:"AI-neutral or resistant",color:"#6b7280",bg:"bg-white/5 border-white/10"}],f=Math.max(...o.map(v=>v.companyCount),1),x=o.filter(v=>v.scoredCount>0),h=x.length?x.reduce((v,b)=>(b.avgReadiness??0)>(v.avgReadiness??0)?b:v,x[0]):null,g=o.find(v=>v.universe==="PE-Backed")??null,y=o.find(v=>v.universe==="Public Corporate")??null;return r.jsxs("div",{className:"space-y-8",children:[o.length>0&&r.jsxs("div",{className:"space-y-5",children:[r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("h3",{className:"text-sm font-semibold text-white",children:"Universe Intelligence"}),r.jsxs("span",{className:"text-[10px] uppercase tracking-widest text-white/40 border border-white/10 rounded px-2 py-0.5",children:[o.length," universes · ",o.reduce((v,b)=>v+b.companyCount,0)," companies"]})]}),h&&r.jsxs("div",{className:"bg-[#D4A843]/8 border border-[#D4A843]/25 rounded-xl p-4 flex items-start gap-4",children:[r.jsx("div",{className:"text-2xl",children:"🏆"}),r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-1",children:"Most AI-Ready Universe"}),r.jsx("div",{className:"text-base font-semibold text-white",children:h.universe}),r.jsxs("div",{className:"text-xs text-white/50 mt-0.5",children:["Avg Readiness ",r.jsx("strong",{className:"text-white/80",children:h.avgReadiness}),"/100 · ",h.scoredCount," scored companies",h.avgOverall!=null&&r.jsxs(r.Fragment,{children:[" · Avg Overall Score ",r.jsx("strong",{className:"text-white/80",children:h.avgOverall})]})]})]})]}),r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:[r.jsx("div",{className:"px-4 py-3 border-b border-white/10",children:r.jsx("h4",{className:"text-xs font-semibold text-white/60 uppercase tracking-widest",children:"Universe Rankings"})}),r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full text-xs",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-white/10 text-[10px] uppercase tracking-widest",children:[r.jsx("th",{className:"text-left px-4 py-2.5 font-medium text-white/40",children:"Universe"}),r.jsx("th",{className:"text-left px-4 py-2.5 font-medium text-white/40",children:"Companies"}),r.jsx("th",{className:"text-left px-4 py-2.5 font-medium text-white/40",children:"Scored"}),r.jsx("th",{className:"text-left px-4 py-2.5 font-medium text-white/40 min-w-[120px]",children:"AI Opportunity"}),r.jsx("th",{className:"text-left px-4 py-2.5 font-medium text-white/40 min-w-[120px]",children:"AI Readiness"}),r.jsx("th",{className:"text-left px-4 py-2.5 font-medium text-white/40 min-w-[120px]",children:"AI Disruption"}),r.jsx("th",{className:"text-left px-4 py-2.5 font-medium text-white/40 min-w-[120px]",children:"Avg Score"})]})}),r.jsx("tbody",{children:o.map(v=>{const b=TY[v.universe]??"#6b7280";return r.jsxs("tr",{className:"border-b border-white/5 hover:bg-white/[0.02]",children:[r.jsx("td",{className:"px-4 py-3",children:r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("div",{className:"w-2 h-2 rounded-full flex-shrink-0",style:{backgroundColor:b}}),r.jsx("span",{className:"font-medium text-white/80",children:v.universe})]})}),r.jsx("td",{className:"px-4 py-3",children:r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("div",{className:"bg-white/5 rounded-full h-1 flex-1",style:{minWidth:40},children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.round(v.companyCount/f*100)}%`,backgroundColor:b,opacity:.5}})}),r.jsx("span",{className:"text-white/60 w-8 text-right",children:v.companyCount})]})}),r.jsx("td",{className:"px-4 py-3 text-white/50",children:v.scoredCount}),r.jsx("td",{className:"px-4 py-3",children:r.jsx(Xp,{value:v.avgOpportunity,max:100,color:"#22c55e"})}),r.jsx("td",{className:"px-4 py-3",children:r.jsx(Xp,{value:v.avgReadiness,max:100,color:"#3b82f6"})}),r.jsx("td",{className:"px-4 py-3",children:r.jsx(Xp,{value:v.avgDisruption,max:100,color:"#f97316"})}),r.jsx("td",{className:"px-4 py-3",children:r.jsx(Xp,{value:v.avgOverall,max:100,color:b})})]},v.universe)})})]})})]}),(g||y)&&r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[r.jsx("h4",{className:"text-xs font-semibold text-white/60 uppercase tracking-widest",children:"PE-Backed vs Public Corporate"}),r.jsx("span",{className:"text-[10px] text-white/40",children:"Scored companies only"})]}),r.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-3",children:[r.jsx(Zp,{a:(g==null?void 0:g.avgOpportunity)??null,b:(y==null?void 0:y.avgOpportunity)??null,label:"Avg Opportunity",color:"#D4A843"}),r.jsx(Zp,{a:(g==null?void 0:g.avgReadiness)??null,b:(y==null?void 0:y.avgReadiness)??null,label:"Avg Readiness",color:"#D4A843"}),r.jsx(Zp,{a:(g==null?void 0:g.avgDisruption)??null,b:(y==null?void 0:y.avgDisruption)??null,label:"Avg Disruption",color:"#D4A843"}),r.jsx(Zp,{a:(g==null?void 0:g.avgOverall)??null,b:(y==null?void 0:y.avgOverall)??null,label:"Avg Overall Score",color:"#D4A843"})]})]})]}),l&&r.jsxs("div",{children:[r.jsx("div",{className:"flex items-center justify-between mb-3",children:r.jsxs("div",{children:[r.jsx("h3",{className:"text-sm font-semibold text-white",children:"Opportunity × Disruption Segmentation"}),r.jsxs("p",{className:"text-xs text-white/50 mt-0.5",children:["Thresholds: Opportunity ≥65, Disruption ≥65 · ",l.totalScored," scored companies"]})]})}),r.jsx("div",{className:"grid grid-cols-2 gap-3",children:m.map(({key:v,label:b,sub:A,bg:w})=>{const k=l[v];return r.jsxs("button",{onClick:()=>k.count>0&&e(k.ids),className:`text-left p-4 rounded-xl border transition-colors ${w} ${k.count>0?"hover:brightness-110 cursor-pointer":"opacity-60 cursor-default"}`,children:[r.jsx("div",{className:"text-2xl font-semibold text-white mb-1",children:k.count}),r.jsx("div",{className:"text-xs font-medium text-white/80 mb-0.5",children:b}),r.jsx("div",{className:"text-[11px] text-white/40",children:A}),k.count>0&&r.jsx("div",{className:"text-[10px] text-white/50 mt-2",children:"Click to filter →"})]},v)})})]}),c.filter(v=>v.scoredCount>0).length>0&&r.jsxs("div",{className:"space-y-3",children:[r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("h3",{className:"text-sm font-semibold text-white",children:"Three Headline Metrics"}),r.jsx("span",{className:"text-[10px] uppercase tracking-widest text-white/40 border border-white/10 rounded px-2 py-0.5",children:"sector averages · scored only"})]}),r.jsxs("div",{className:"grid grid-cols-3 gap-3",children:[r.jsxs("div",{className:"bg-[#141414] border border-emerald-600/20 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-emerald-400/70 mb
495-2",children:"AI Attractiveness Score"}),r.jsx("div",{className:"text-[11px] text-white/40 mb-3",children:"Opp×0.30 + Ready×0.25 + Exec×0.20 + (100-Risk)×0.15 + (100-Dis)×0.10"}),c.filter(v=>v.attractiveness!=null&&v.scoredCount>0).sort((v,b)=>(b.attractiveness??0)-(v.attractiveness??0)).slice(0,6).map(v=>r.jsxs("div",{className:"flex items-center gap-2 mb-1.5",children:[r.jsx("div",{className:"text-[10px] text-white/50 w-28 truncate",children:v.sector}),r.jsx("div",{className:"flex-1 h-1.5 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full bg-emerald-500/60 rounded-full",style:{width:`${v.attractiveness??0}%`}})}),r.jsx("div",{className:"text-[10px] font-medium text-emerald-300 w-6 text-right",children:v.attractiveness})]},v.sector))]}),r.jsxs("div",{className:"bg-[#141414] border border-red-600/20 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-red-400/70 mb-2",children:"AI Exposure Risk Score"}),r.jsx("div",{className:"text-[11px] text-white/40 mb-3",children:"Risk×0.45 + Dis×0.40 + (100-Ready)×0.15"}),c.filter(v=>v.exposureRisk!=null&&v.scoredCount>0).sort((v,b)=>(b.exposureRisk??0)-(v.exposureRisk??0)).slice(0,6).map(v=>r.jsxs("div",{className:"flex items-center gap-2 mb-1.5",children:[r.jsx("div",{className:"text-[10px] text-white/50 w-28 truncate",children:v.sector}),r.jsx("div",{className:"flex-1 h-1.5 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full bg-red-500/60 rounded-full",style:{width:`${v.exposureRisk??0}%`}})}),r.jsx("div",{className:"text-[10px] font-medium text-red-300 w-6 text-right",children:v.exposureRisk})]},v.sector))]}),r.jsxs("div",{className:"bg-[#141414] border border-[#D4A843]/20 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]/70 mb-2",children:"AI Value Creation Potential"}),r.jsx("div",{className:"text-[11px] text-white/40 mb-3",children:"Opp×0.50 + Exec×0.30 + Ready×0.20"}),c.filter(v=>v.valueCreation!=null&&v.scoredCount>0).sort((v,b)=>(b.valueCreation??0)-(v.valueCreation??0)).slice(0,6).map(v=>r.jsxs("div",{className:"flex items-center gap-2 mb-1.5",children:[r.jsx("div",{className:"text-[10px] text-white/50 w-28 truncate",children:v.sector}),r.jsx("div",{className:"flex-1 h-1.5 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full bg-[#D4A843]/50 rounded-full",style:{width:`${v.valueCreation??0}%`}})}),r.jsx("div",{className:"text-[10px] font-medium text-[#D4A843] w-6 text-right",children:v.valueCreation})]},v.sector))]})]})]}),r.jsx(GY,{}),r.jsxs("div",{children:[r.jsx("h3",{className:"text-sm font-semibold text-white mb-3",children:"Sector Analytics — Full Table"}),r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full text-xs",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-white/10 text-[10px] uppercase tracking-widest",children:[r.jsx("th",{className:"text-left px-3 py-2.5 font-medium text-white/40",children:"Sector"}),r.jsx(p,{col:"companyCount",children:"Co."}),r.jsx("th",{className:"text-left px-3 py-2.5 font-medium text-white/40",children:"Sc."}),r.jsx(p,{col:"avgOpportunity",children:"Opp"}),r.jsx("th",{className:"text-left px-3 py-2.5 font-medium text-white/40",children:"Risk"}),r.jsx("th",{className:"text-left px-3 py-2.5 font-medium text-white/40",children:"Ready"}),r.jsx("th",{className:"text-left px-3 py-2.5 font-medium text-white/40",children:"Exec"}),r.jsx(p,{col:"avgDisruption",children:"Dis"}),r.jsx(p,{col:"attractiveness",children:r.jsx("span",{className:"text-emerald-400/80",children:"Attract."})}),r.jsx(p,{col:"exposureRisk",children:r.jsx("span",{className:"text-red-400/80",children:"Risk Sc."})}),r.jsx(p,{col:"valueCreation",children:r.jsx("span",{className:"text-[#D4A843]",children:"Value"})})]})}),r.jsx("tbody",{children:d.map(v=>r.jsxs("tr",{className:"border-b border-white/5 hover:bg-white/[0.02]",children:[r.jsx("td",{className:"px-3 py-2.5 font-medium text-white/80",children:v.sector??"Unknown"}),r.jsx("td",{className:"px-3 py-2.5 text-white/50",children:v.companyCount}),r.jsx("td",{className:"px-3 py-2.5 text-white/40",children:v.scoredCount||"—"}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(lr,{value:v.avgOpportunity,color:"#22c55e"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(lr,{value:v.avgRisk,color:"#ef4444"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(lr,{value:v.avgReadiness,color:"#3b82f6"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(lr,{value:v.avgExecution,color:"#a85
4955f7"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(lr,{value:v.avgDisruption,color:"#f97316"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(lr,{value:v.attractiveness,color:"#22c55e"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(lr,{value:v.exposureRisk,color:"#ef4444"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(lr,{value:v.valueCreation,color:"#D4A843"})})]},v.sector))})]})})})]})]})}const zY=["companies","queue","validation","reference","analytics"];function WY(){var Et,re,ve,fe,Y,E,ee,pe,_e;const e=Ln(),t=()=>{const X=new URLSearchParams(window.location.search).get("tab");return zY.includes(X??"")?X:"companies"},[n,i]=j.useState(t),[a,s]=j.useState(null),[o,l]=j.useState(""),[c,d]=j.useState(""),[u,p]=j.useState(""),[m,f]=j.useState(""),[x,h]=j.useState(""),[g,y]=j.useState(""),[v,b]=j.useState(""),[A,w]=j.useState(""),[k,N]=j.useState(""),[I,C]=j.useState(""),[O,_]=j.useState(""),[D,G]=j.useState(null),P=new URLSearchParams;c&&P.set("sector",c),u&&P.set("dealType",u),m&&P.set("revenueRange",m),x&&P.set("scoringStatus",x),g&&P.set("aiClassification",g),v&&P.set("diligencePriority",v),A&&P.set("companyUniverse",A),k&&P.set("sourceDocument",k),I&&P.set("indexEligible",I),O&&P.set("datasetSegment",O),o&&P.set("search",o);const{data:L=[],isLoading:U,error:W}=We({queryKey:["/api/admin/ai-exposure-seed",c,u,m,x,g,v,A,k,I,O,o],queryFn:async()=>{const X=await fetch(`/api/admin/ai-exposure-seed?${P.toString()}`,{credentials:"include"});if(!X.ok){const Te=await X.text();let Lt=Te;try{const wr=JSON.parse(Te);Lt=wr.error??wr.message??Te}catch{}throw new rc(X.status,Lt)}return X.json()}}),B=D?L.filter(X=>D.includes(X.id)):L,$=sn({mutationFn:()=>Mt("POST","/api/admin/ai-exposure-seed/seed"),onSuccess:()=>e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}),z=sn({mutationFn:()=>Mt("POST","/api/admin/ai-exposure-seed/import-mediobanca-excel"),onSuccess:()=>e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}),Q=sn({mutationFn:()=>Mt("POST","/api/admin/ai-exposure-seed/reclassify-universe"),onSuccess:()=>{e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]}),e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed/analytics/universes"]})}}),V=sn({mutationFn:()=>Mt("POST","/api/admin/ai-exposure-seed/import-ita-usa"),onSuccess:()=>e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}),ne=j.useMemo(()=>{const X=L.length,Te=L.filter(lt=>lt.scoringStatus!=="unscored").length,Lt=L.filter(lt=>lt.scoringStatus==="validated").length,wr=L.filter(lt=>lt.overallAiDiligenceScore!=null),xi=wr.length?Math.round(wr.reduce((lt,vi)=>lt+(vi.overallAiDiligenceScore??0),0)/wr.length):null,yi=Object.entries(L.reduce((lt,vi)=>(vi.sectorNormalized&&(lt[vi.sectorNormalized]=(lt[vi.sectorNormalized]??0)+1),lt),{})).sort((lt,vi)=>vi[1]-lt[1])[0],is=L.filter(lt=>lt.indexEligible),yp=L.filter(lt=>lt.datasetSegment==="Expansion / Market Presence"),vp=is.filter(lt=>lt.overallAiDiligenceScore!=null).length,aB=is.filter(lt=>lt.scoringStatus==="validated").length,sB=L.reduce((lt,vi)=>{const bA=vi.companyUniverse??"Unknown";return lt[bA]=(lt[bA]??0)+1,lt},{});return{total:X,scored:Te,validated:Lt,avg:xi,topSector:yi,byUniverse:sB,indexEligibleCount:is.length,expansionCount:yp.length,scoredEligible:vp,validatedEligible:aB}},[L]),Se=!U&&L.length===0&&!o&&!c&&!u&&!m&&!x&&!g&&!v&&!A&&!k&&!I&&!O;function He(X){(a==null?void 0:a.id)===X.id&&s(X),e.setQueryData(["/api/admin/ai-exposure-seed",c,u,m,x,g,v,A,k,I,O,o],Te=>(Te==null?void 0:Te.map(Lt=>Lt.id===X.id?X:Lt))??Te)}function at(){l(""),d(""),p(""),f(""),h(""),y(""),b(""),w(""),N(""),C(""),_(""),G(null)}const tn=o||c||u||m||x||g||v||A||k||I||O||D;if(W){const X=Ga(W);return r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] flex items-center justify-center px-6",children:r.jsxs("div",{className:"max-w-md text-center",children:[r.jsx("h1",{className:"text-base font-semibold text-white",children:"AI Exposure Database unavailable"}),r.jsx("p",{className:"mt-2 text-sm text-white/50",children:X?"Your session has expired or you do not have permission to access this dashboard.":"Failed to load database records. Please try again."}),!X&&r.jsx("button",{onClick:()=>e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]}),className:"mt-5 px-3 py-1.5 border border-white/20 text-xs text-white/70 rounded hover:border-white/40 hover:text-white transition-colors",children:"Try again"}),X&&r.jsx("a",{href:"/auth",className:"inline-block mt-5 px-3 py-1.5 border border-white/20 text-xs text-white/70 rounded hover:border-white/40 hover:text-white transition-colors",children:"Sign in"})]})})}return r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A] text-white",children:[r.jsx("div",{className:"border-b border-white/10 bg-[#0A0A0A] sticky top-0 z-20",children:r.jsxs("div",{className:"max-w-screen-xl mx-auto px-6 py-4 flex items-center justify-between gap-4 flex-wrap",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-0.5",children:"Internal Admin · Not for Distribution"}),r.jsx("h1",{className:"text-lg font-semibold tracking-tight",children:"AI Exposure Database"}),r.jsxs("p",{className:"text-xs text-white/50 mt-0.5",children:["PEM 2022 · EY/BVCA UK · Mediobanca Italy · ",r.jsx("strong",{className:"text-white/50",children:ne.total})," companies"]})]}),r.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[r.jsx("button",{onClick:()=>$.mutate(),disabled:$.isPending,className:"px-3 py-1.5 border border-white/15 hover:border-[#D4A843]/40 text-white/50 hover:text-white/80 text-xs rounded transition-colors disabled:opacity-40",children:$.isPending?"Seeding…":"↺ Re-seed"}),r.jsx("button",{onClick:()=>z.mutate(),disabled:z.isPending,className:"px-3 py-1.5 border border-white/15 hover:border-[#D4A843]/40 text-white/50 hover:text-white/80 text-xs rounded transition-colors disabled:opacity-40",children:z.isPending?"Importing…":"⬆ Import Mediobanca"}),r.jsx("button",{onClick:()=>Q.mutate(),disabled:Q.isPending,className:"px-3 py-1.5 border border-white/15 hover:border-[#D4A843]/40 text-white/50 hover:text-white/80 text-xs rounded transition-colors disabled:opacity-40",children:Q.isPending?"Reclassifying…":"⟳ Reclassify Universe"}),r.jsx("button",{onClick:()=>V.mutate(),disabled:V.isPending,className:"px-3 py-1.5 border border-white/15 hover:border-[#D4A843]/40 text-white/50 hover:text-white/80 text-xs rounded transition-colors disabled:opacity-40",children:V.isPending?"Importing…":"🇮🇹 Import ITA–USA"}),r.jsx(EY,{onDone:()=>e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]})}),r.jsx("a",{href:"/admin/ai-exposure-sector-intelligence",className:"px-3 py-1.5 border border-white/15 hover:border-white/30 text-white/40 hover:text-white/70 text-xs rounded transition-colors",children:"Sector Intelligence →"}),r.jsx("a",{href:"/api/admin/ai-exposure-seed/csv",download:!0,className:"px-4 py-2 border border-[#D4A843]/40 hover:border-[#D4A843] text-[#D4A843] text-sm font-semibold rounded transition-colors",children:"↓ Export CSV"})]})]})}),r.jsxs("div",{className:"max-w-screen-xl mx-auto px-6 py-6 space-y-5",children:[$.data&&r.jsxs("div",{className:"bg-emerald-900/20 border border-emerald-500/30 rounded-lg px-4 py-2.5 text-sm text-emerald-300",children:["✓ ",((Et=$.data)==null?void 0:Et.message)??"Done"]}),z.data&&r.jsxs("div",{className:"bg-emerald-900/20 border border-emerald-500/30 rounded-lg px-4 py-2.5 text-sm text-emerald-300",children:["✓ Mediobanca import complete — ",((re=z.data)==null?void 0:re.inserted)??0," inserted, ",((ve=z.data)==null?void 0:ve.updated)??0," updated",((fe=z.data)==null?void 0:fe.breakdown)&&r.jsxs("span",{className:"ml-2 text-white/50",children:["(",z.data.breakdown.publicCorporate," corporate · ",z.data.breakdown.financialInstitution," banks · ",z.data.breakdown.insurance," insurance)"]})]}),z.isError&&r.jsx("div",{className:"bg-red-900/20 border border-red-500/30 rounded-lg px-4 py-2.5 text-sm text-red-300",children:"✕ Import failed — check server logs"}),Q.data&&r.jsxs("div",{className:"bg-emerald-900/20 border border-emerald-500/30 rounded-lg px-4 py-2.5 text-sm text-emerald-300",children:["✓ Universe reclassification complete — ",((Y=Q.data)==null?void 0:Y.updated)??0," records updated to PE-Backed"]}),V.data&&r.jsxs("div",{className:"bg-emerald-900/20 border border-emerald-500/30 rounded-lg px-4 py-2.5 text-sm text-emerald-300",children:["✓ ITA–USA import 
495complete — ",r.jsx("strong",{children:((E=V.data)==null?void 0:E.inserted)??0})," companies imported"," · ",((ee=V.data)==null?void 0:ee.sectorsRepresented)??0," sectors"," · ",((pe=V.data)==null?void 0:pe.statesRepresented)??0," US states",((_e=V.data)==null?void 0:_e.duplicatesSkipped)>0&&r.jsxs("span",{className:"ml-2 text-white/50",children:["(",V.data.duplicatesSkipped," duplicates skipped)"]})]}),V.isError&&r.jsx("div",{className:"bg-red-900/20 border border-red-500/30 rounded-lg px-4 py-2.5 text-sm text-red-300",children:"✕ ITA–USA import failed — check server logs"}),r.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-5 gap-3",children:[r.jsx(Fc,{label:"Total Records",value:ne.total,sub:"All universes"}),r.jsx(Fc,{label:"Index Eligible",value:ne.indexEligibleCount,sub:"Core PE Intelligence"}),r.jsx(Fc,{label:"Expansion Records",value:ne.expansionCount,sub:"Excl. from benchmarks"}),r.jsx(Fc,{label:"Scored (Eligible)",value:ne.scoredEligible,sub:`${ne.validatedEligible} validated`}),r.jsx(Fc,{label:"Avg AI Score",value:ne.avg??"—",sub:ne.avg?"/100 · all scored":"no scores yet"})]}),ne.total>0&&r.jsx("div",{className:"flex flex-wrap gap-2",children:Object.entries(ne.byUniverse).sort((X,Te)=>Te[1]-X[1]).map(([X,Te])=>r.jsxs("button",{onClick:()=>w(A===X?"":X),className:`px-3 py-1 rounded text-xs font-medium transition-colors border ${A===X?"bg-[#D4A843]/20 border-[#D4A843]/60 text-[#D4A843]":"bg-white/5 border-white/10 text-white/50 hover:border-white/25 hover:text-white/70"}`,children:[X," ",r.jsxs("span",{className:"opacity-60",children:["(",Te,")"]})]},X))}),r.jsx(CY,{records:L}),r.jsx("div",{className:"flex gap-1 border-b border-white/10",children:[{id:"companies",label:"Companies"},{id:"queue",label:`Scoring Queue${L.filter(X=>X.scoringStatus==="unscored").length>0?` (${L.filter(X=>X.scoringStatus==="unscored").length})`:""}`},{id:"validation",label:"Validation Candidates"},{id:"reference",label:"Reference Records"},{id:"analytics",label:"Analytics"}].map(({id:X,label:Te})=>r.jsx("button",{onClick:()=>i(X),className:`px-5 py-2.5 text-sm font-medium transition-colors border-b-2 -mb-px ${n===X?"border-[#D4A843] text-[#D4A843]":"border-transparent text-white/40 hover:text-white/70"}`,children:Te},X))}),n==="companies"&&r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[r.jsx("input",{type:"text",placeholder:"Search…",value:o,onChange:X=>l(X.target.value),className:"bg-[#141414] border border-white/15 focus:border-[#D4A843]/60 text-white text-sm placeholder-white/25 rounded px-3 py-1.5 outline-none w-52 transition-colors"}),r.jsx(Qr,{value:c,onChange:d,options:yY,placeholder:"All Sectors"}),r.jsx(Qr,{value:u,onChange:p,options:vY,placeholder:"All Deals"}),r.jsx(Qr,{value:m,onChange:f,options:bY,placeholder:"All Revenue"}),r.jsx(Qr,{value:x,onChange:h,options:wY,placeholder:"All Statuses"}),r.jsx(Qr,{value:g,onChange:y,options:xR,placeholder:"All Classifications"}),r.jsx(Qr,{value:v,onChange:b,options:yR,placeholder:"All Priorities"}),r.jsx(Qr,{value:A,onChange:w,options:AY,placeholder:"All Universes"}),r.jsx(Qr,{value:k,onChange:N,options:jY,placeholder:"All Sources"}),r.jsx(Qr,{value:I,onChange:C,options:["true","false"],placeholder:"All Eligibility"}),r.jsx(Qr,{value:O,onChange:_,options:["Core PE Intelligence","Expansion / Market Presence"],placeholder:"All Segments"}),tn&&r.jsx("button",{onClick:at,className:"text-xs text-white/50 hover:text-white/70 px-2 transition-colors",children:"✕ Clear"}),D&&r.jsxs("span",{className:"text-xs text-orange-300 bg-orange-900/20 border border-orange-600/30 px-2 py-0.5 rounded",children:["Segment filter active (",D.length," ids)"]}),r.jsxs("span",{className:"text-xs text-white/40 ml-auto",children:[B.length," record",B.length!==1?"s":""]})]}),Se&&r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-12 text-center",children:[r.jsx("div",{className:"text-4xl mb-4",children:"🗄"}),r.jsx("h2",{className:"text-base font-semibold mb-2",children:"Database is empty"}),r.jsxs("p",{className:"text-white/50 text-sm mb-5 max-w-sm mx-auto",children:["Click ",r.jsx("strong",{className:"text-[#D4A843]",children:"Re-seed"})," in the header or the button below to load the 65 companies from PEM 2022."]}),r.jsx("button",{onClick:()=>$.mutate(),disabled:$.isPending,className:"px-6 py-2.5 bg-[#D4A843] hover:bg-[#d4a74a] text-black font-semibold rounded transition-colors",children:$.isPending?"Seeding…":"⬆ Seed Database"})]}),U&&r.jsx("div",{className:"space-y-2",children:[...Array(6)].map((X,Te)=>r.jsx("div",{className:"bg-[#141414] border border-white/5 rounded-lg h-12 animate-pulse"},Te))}),!U&&B.length>0&&r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full text-sm",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-white/10 text-[10px] uppercase tracking-widest text-white/50",children:[r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Company"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Sector"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Revenue"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Classification"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Priority"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"AI Score"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Status"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Eligibility"}),r.jsx("th",{className:"text-left px-4 py-3 font-medium",children:"Actions"})]})}),r.jsx("tbody",{children:B.map(X=>r.jsx(j.Fragment,{children:r.jsxs("tr",{className:`border-b border-white/5 hover:bg-white/[0.02] transition-colors ${(a==null?void 0:a.id)===X.id?"bg-white/[0.03]":""} ${X.scoringStatus==="validated"?"border-l-2 border-l-emerald-600/40":""}`,children:[r.jsxs("td",{className:"px-4 py-3 cursor-pointer",onClick:()=>s(X),children:[r.jsx("div",{className:"font-medium text-white text-sm hover:text-[#D4A843] transition-colors max-w-[180px] truncate",children:X.companyName}),r.jsxs("div",{className:"text-[11px] text-white/50 mt-0.5",children:[X.country," · ",X.dealType]})]}),r.jsx("td",{className:"px-4 py-3 text-xs text-white/60 max-w-[110px] truncate",children:X.sectorNormalized??"—"}),r.jsx("td",{className:"px-4 py-3 text-xs text-white/50",children:X.revenueRange??"—"}),r.jsx("td",{className:"px-4 py-3",children:r.jsx(Th,{label:X.aiClassification??"Unclassified",className:g1[X.aiClassification??"Unclassified"]??""})}),r.jsx("td",{className:"px-4 py-3",children:r.jsx("span",{className:`text-xs font-medium ${NY[X.diligencePriority??"Unassigned"]??""}`,children:X.diligencePriority??"Unassigned"})}),r.jsx("td",{className:"px-4 py-3",children:X.overallAiDiligenceScore!=null?r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx(lr,{value:X.overallAiDiligenceScore}),X.rating&&r.jsx("span",{className:`text-xs ${bR[X.rating]??""}`,children:X.rating})]}):r.jsx("span",{className:"text-xs text-white/35",children:"—"})}),r.jsx("td",{className:"px-4 py-3",children:r.jsx(Th,{label:(X.scoringStatus??"unscored").replace("_"," "),className:vR[X.scoringStatus??"unscored"]??""})}),r.jsx("td",{className:"px-4 py-3",children:X.indexEligible?r.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full bg-emerald-900/30 text-emerald-400 border border-emerald-600/30 font-medium",children:"Index"}):r.jsx("span",{className:"text-[10px] px-1.5 py-0.5 rounded-full bg-white/5 text-white/40 border border-white/10",children:"Expansion"})}),r.jsx("td",{className:"px-4 py-3",onClick:Te=>Te.stopPropagation(),children:r.jsx("button",{onClick:()=>s(X),className:"text-xs px-3 py-1 border border-white/15 hover:border-[#D4A843]/50 text-white/50 hover:text-white rounded transition-colors whitespace-nowrap",children:"View →"})})]})},X.id))})]})})})]}),n==="queue"&&r.jsx(_Y,{onSelect:X=>s(X)}),n==="validation"&&r.jsx(BY,{}),n==="reference"&&r.jsx(UY,{}),n==="analytics"&&r.jsx(HY,{onSegmentFilter:X=>{G(X),i("companies")}}),r.jsx("div",{className:"text-center text-xs text-white/35 pb-4",children:"AI Exposure Database · Internal use only · Sources: PEM 2022 · EY/BVCA UK · Mediobanca Italy"})]}),a&&r.jsx(IY,{record:a,onClose:()=>s(null),onUpdate:He})]})}var VY=Array.isArray,Fn=VY,KY=typeof wp=="object"&&wp&&wp.Object===Object&&wp,wR=KY,YY=wR,QY=typeof self=="object"&&self&&self.Object===Object&&self,XY=YY||QY||Function("return this")(),gi=XY,ZY=gi,JY=ZY.Symbol,cp=JY,sN=cp,AR=Object.prototype,eQ=AR.hasOwnProperty,tQ=AR.toString,Bc=sN?sN.toStringTag:void 0;function nQ(e){var t=eQ.call(e,Bc),n=e[Bc];try{e[Bc]=void 0;var i=!0}catch{}var a=tQ.call(e);return i&&(t?e[Bc]=n:delete e[Bc]),a}var rQ=nQ,iQ=Object.prototype,aQ=iQ.toString;function sQ(e){return aQ.call(e)}var oQ=sQ,oN=cp,lQ=rQ,cQ=oQ,dQ="[object Null]",uQ="[object Undef
495ined]",lN=oN?oN.toStringTag:void 0;function pQ(e){return e==null?e===void 0?uQ:dQ:lN&&lN in Object(e)?lQ(e):cQ(e)}var Ji=pQ;function mQ(e){return e!=null&&typeof e=="object"}var ea=mQ,hQ=Ji,fQ=ea,gQ="[object Symbol]";function xQ(e){return typeof e=="symbol"||fQ(e)&&hQ(e)==gQ}var lc=xQ,yQ=Fn,vQ=lc,bQ=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,wQ=/^\w*$/;function AQ(e,t){if(yQ(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||vQ(e)?!0:wQ.test(e)||!bQ.test(e)||t!=null&&e in Object(t)}var x1=AQ;function jQ(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Ja=jQ;const cc=Qe(Ja);var kQ=Ji,NQ=Ja,IQ="[object AsyncFunction]",SQ="[object Function]",CQ="[object GeneratorFunction]",EQ="[object Proxy]";function _Q(e){if(!NQ(e))return!1;var t=kQ(e);return t==SQ||t==CQ||t==IQ||t==EQ}var y1=_Q;const Be=Qe(y1);var PQ=gi,TQ=PQ["__core-js_shared__"],DQ=TQ,ny=DQ,cN=function(){var e=/[^.]+$/.exec(ny&&ny.keys&&ny.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function OQ(e){return!!cN&&cN in e}var MQ=OQ,RQ=Function.prototype,LQ=RQ.toString;function FQ(e){if(e!=null){try{return LQ.call(e)}catch{}try{return e+""}catch{}}return""}var jR=FQ,BQ=y1,$Q=MQ,UQ=Ja,qQ=jR,GQ=/[\\^$.*+?()[\]{}|]/g,HQ=/^\[object .+?Constructor\]$/,zQ=Function.prototype,WQ=Object.prototype,VQ=zQ.toString,KQ=WQ.hasOwnProperty,YQ=RegExp("^"+VQ.call(KQ).replace(GQ,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function QQ(e){if(!UQ(e)||$Q(e))return!1;var t=BQ(e)?YQ:HQ;return t.test(qQ(e))}var XQ=QQ;function ZQ(e,t){return e==null?void 0:e[t]}var JQ=ZQ,eX=XQ,tX=JQ;function nX(e,t){var n=tX(e,t);return eX(n)?n:void 0}var io=nX,rX=io,iX=rX(Object,"create"),dg=iX,dN=dg;function aX(){this.__data__=dN?dN(null):{},this.size=0}var sX=aX;function oX(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var lX=oX,cX=dg,dX="__lodash_hash_undefined__",uX=Object.prototype,pX=uX.hasOwnProperty;function mX(e){var t=this.__data__;if(cX){var n=t[e];return n===dX?void 0:n}return pX.call(t,e)?t[e]:void 0}var hX=mX,fX=dg,gX=Object.prototype,xX=gX.hasOwnProperty;function yX(e){var t=this.__data__;return fX?t[e]!==void 0:xX.call(t,e)}var vX=yX,bX=dg,wX="__lodash_hash_undefined__";function AX(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=bX&&t===void 0?wX:t,this}var jX=AX,kX=sX,NX=lX,IX=hX,SX=vX,CX=jX;function dc(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}dc.prototype.clear=kX;dc.prototype.delete=NX;dc.prototype.get=IX;dc.prototype.has=SX;dc.prototype.set=CX;var EX=dc;function _X(){this.__data__=[],this.size=0}var PX=_X;function TX(e,t){return e===t||e!==e&&t!==t}var v1=TX,DX=v1;function OX(e,t){for(var n=e.length;n--;)if(DX(e[n][0],t))return n;return-1}var ug=OX,MX=ug,RX=Array.prototype,LX=RX.splice;function FX(e){var t=this.__data__,n=MX(t,e);if(n<0)return!1;var i=t.length-1;return n==i?t.pop():LX.call(t,n,1),--this.size,!0}var BX=FX,$X=ug;function UX(e){var t=this.__data__,n=$X(t,e);return n<0?void 0:t[n][1]}var qX=UX,GX=ug;function HX(e){return GX(this.__data__,e)>-1}var zX=HX,WX=ug;function VX(e,t){var n=this.__data__,i=WX(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this}var KX=VX,YX=PX,QX=BX,XX=qX,ZX=zX,JX=KX;function uc(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}uc.prototype.clear=YX;uc.prototype.delete=QX;uc.prototype.get=XX;uc.prototype.has=ZX;uc.prototype.set=JX;var pg=uc,eZ=io,tZ=gi,nZ=eZ(tZ,"Map"),b1=nZ,uN=EX,rZ=pg,iZ=b1;function aZ(){this.size=0,this.__data__={hash:new uN,map:new(iZ||rZ),string:new uN}}var sZ=aZ;function oZ(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var lZ=oZ,cZ=lZ;function dZ(e,t){var n=e.__data__;return cZ(t)?n[typeof t=="string"?"string":"hash"]:n.map}var mg=dZ,uZ=mg;function pZ(e){var t=uZ(this,e).delete(e);return this.size-=t?1:0,t}var mZ=pZ,hZ=mg;function fZ(e){return hZ(this,e).get(e)}var gZ=fZ,xZ=mg;function yZ(e){return xZ(this,e).has(e)}var vZ=yZ,bZ=mg;function wZ(e,t){var n=bZ(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this}var AZ=wZ,jZ=sZ,kZ=mZ,NZ=gZ,IZ=vZ,SZ=AZ;function pc(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var i=e[t];this.set(i[0],i[1])}}pc.prototype.clear=jZ;pc.prototype.delete=kZ;pc.prototype.get=NZ;pc.prototype.has=IZ;pc.prototype.set=SZ;var w1=pc,kR=w1,CZ="Expected a function";function A1(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(CZ);var n=function(){var i=arguments,a=t?t.apply(this,i):i[0],s=n.cache;if(s.has(a))return s.get(a);var o=e.apply(this,i);return n.cache=s.set(a,o)||s,o};return n.cache=new(A1.Cache||kR),n}A1.Cache=kR;var NR=A1;const EZ=Qe(NR);var _Z=NR,PZ=500;function TZ(e){var t=_Z(e,function(i){return n.size===PZ&&n.clear(),i}),n=t.cache;return t}var DZ=TZ,OZ=DZ,MZ=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,RZ=/\\(\\)?/g,LZ=OZ(function(e){var t=[];
495return e.charCodeAt(0)===46&&t.push(""),e.replace(MZ,function(n,i,a,s){t.push(a?s.replace(RZ,"$1"):i||n)}),t}),FZ=LZ;function BZ(e,t){for(var n=-1,i=e==null?0:e.length,a=Array(i);++n<i;)a[n]=t(e[n],n,e);return a}var j1=BZ,pN=cp,$Z=j1,UZ=Fn,qZ=lc,GZ=1/0,mN=pN?pN.prototype:void 0,hN=mN?mN.toString:void 0;function IR(e){if(typeof e=="string")return e;if(UZ(e))return $Z(e,IR)+"";if(qZ(e))return hN?hN.call(e):"";var t=e+"";return t=="0"&&1/e==-GZ?"-0":t}var HZ=IR,zZ=HZ;function WZ(e){return e==null?"":zZ(e)}var SR=WZ,VZ=Fn,KZ=x1,YZ=FZ,QZ=SR;function XZ(e,t){return VZ(e)?e:KZ(e,t)?[e]:YZ(QZ(e))}var CR=XZ,ZZ=lc,JZ=1/0;function eJ(e){if(typeof e=="string"||ZZ(e))return e;var t=e+"";return t=="0"&&1/e==-JZ?"-0":t}var hg=eJ,tJ=CR,nJ=hg;function rJ(e,t){t=tJ(t,e);for(var n=0,i=t.length;e!=null&&n<i;)e=e[nJ(t[n++])];return n&&n==i?e:void 0}var k1=rJ,iJ=k1;function aJ(e,t,n){var i=e==null?void 0:iJ(e,t);return i===void 0?n:i}var ER=aJ;const hr=Qe(ER);function sJ(e){return e==null}var oJ=sJ;const Ke=Qe(oJ);var lJ=Ji,cJ=Fn,dJ=ea,uJ="[object String]";function pJ(e){return typeof e=="string"||!cJ(e)&&dJ(e)&&lJ(e)==uJ}var mJ=pJ;const dp=Qe(mJ);var _R={exports:{}},Je={};/**
496 * @license React
497 * react-is.production.min.js
498 *
499 * Copyright (c) Facebook, Inc. and its affiliates.
500 *
501 * This source code is licensed under the MIT license found in the
502 * LICENSE file in the root directory of this source tree.
503 */var N1=Symbol.for("react.element"),I1=Symbol.for("react.portal"),fg=Symbol.for("react.fragment"),gg=Symbol.for("react.strict_mode"),xg=Symbol.for("react.profiler"),yg=Symbol.for("react.provider"),vg=Symbol.for("react.context"),hJ=Symbol.for("react.server_context"),bg=Symbol.for("react.forward_ref"),wg=Symbol.for("react.suspense"),Ag=Symbol.for("react.suspense_list"),jg=Symbol.for("react.memo"),kg=Symbol.for("react.lazy"),fJ=Symbol.for("react.offscreen"),PR;PR=Symbol.for("react.module.reference");function vr(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case N1:switch(e=e.type,e){case fg:case xg:case gg:case wg:case Ag:return e;default:switch(e=e&&e.$$typeof,e){case hJ:case vg:case bg:case kg:case jg:case yg:return e;default:return t}}case I1:return t}}}Je.ContextConsumer=vg;Je.ContextProvider=yg;Je.Element=N1;Je.ForwardRef=bg;Je.Fragment=fg;Je.Lazy=kg;Je.Memo=jg;Je.Portal=I1;Je.Profiler=xg;Je.StrictMode=gg;Je.Suspense=wg;Je.SuspenseList=Ag;Je.isAsyncMode=function(){return!1};Je.isConcurrentMode=function(){return!1};Je.isContextConsumer=function(e){return vr(e)===vg};Je.isContextProvider=function(e){return vr(e)===yg};Je.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===N1};Je.isForwardRef=function(e){return vr(e)===bg};Je.isFragment=function(e){return vr(e)===fg};Je.isLazy=function(e){return vr(e)===kg};Je.isMemo=function(e){return vr(e)===jg};Je.isPortal=function(e){return vr(e)===I1};Je.isProfiler=function(e){return vr(e)===xg};Je.isStrictMode=function(e){return vr(e)===gg};Je.isSuspense=function(e){return vr(e)===wg};Je.isSuspenseList=function(e){return vr(e)===Ag};Je.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===fg||e===xg||e===gg||e===wg||e===Ag||e===fJ||typeof e=="object"&&e!==null&&(e.$$typeof===kg||e.$$typeof===jg||e.$$typeof===yg||e.$$typeof===vg||e.$$typeof===bg||e.$$typeof===PR||e.getModuleId!==void 0)};Je.typeOf=vr;_R.exports=Je;var gJ=_R.exports,xJ=Ji,yJ=ea,vJ="[object Number]";function bJ(e){return typeof e=="number"||yJ(e)&&xJ(e)==vJ}var TR=bJ;const wJ=Qe(TR);var AJ=TR;function jJ(e){return AJ(e)&&e!=+e}var kJ=jJ;const up=Qe(kJ);var Rr=function(t){return t===0?0:t>0?1:-1},ys=function(t){return dp(t)&&t.indexOf("%")===t.length-1},ae=function(t){return wJ(t)&&!up(t)},Ht=function(t){return ae(t)||dp(t)},NJ=0,Ng=function(t){var n=++NJ;return"".concat(t||"").concat(n)},Js=function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ae(t)&&!dp(t))return i;var s;if(ys(t)){var o=t.indexOf("%");s=n*parseFloat(t.slice(0,o))/100}else s=+t;return up(s)&&(s=i),a&&s>n&&(s=n),s},ko=function(t){if(!t)return null;var n=Object.keys(t);
vendor: 5,024 bytes, line 503
503return n&&n.length?t[n[0]]:null},IJ=function(t){if(!Array.isArray(t))return!1;for(var n=t.length,i={},a=0;a<n;a++)if(!i[t[a]])i[t[a]]=!0;else return!0;return!1},go=function(t,n){return ae(t)&&ae(n)?function(i){return t+i*(n-t)}:function(){return n}};function hb(e,t,n){return!e||!e.length?null:e.find(function(i){return i&&(typeof t=="function"?t(i):hr(i,t))===n})}function nl(e,t){for(var n in e)if({}.hasOwnProperty.call(e,n)&&(!{}.hasOwnProperty.call(t,n)||e[n]!==t[n]))return!1;for(var i in t)if({}.hasOwnProperty.call(t,i)&&!{}.hasOwnProperty.call(e,i))return!1;return!0}function fb(e){"@babel/helpers - typeof";return fb=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},fb(e)}var SJ=["viewBox","children"],CJ=["aria-activedescendant","aria-atomic","aria-autocomplete","aria-busy","aria-checked","aria-colcount","aria-colindex","aria-colspan","aria-controls","aria-current","aria-describedby","aria-details","aria-disabled","aria-errormessage","aria-expanded","aria-flowto","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-level","aria-live","aria-modal","aria-multiline","aria-multiselectable","aria-orientation","aria-owns","aria-placeholder","aria-posinset","aria-pressed","aria-readonly","aria-relevant","aria-required","aria-roledescription","aria-rowcount","aria-rowindex","aria-rowspan","aria-selected","aria-setsize","aria-sort","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","className","color","height","id","lang","max","media","method","min","name","style","target","width","role","tabIndex","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baselineShift","baseProfile","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipPathUnits","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","href","ideographic","imageRendering","in2","in","intercept","k1","k2","k3","k4","k","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerHeight","markerMid","markerStart","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textLength","textRendering","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","vHanging","vIdeographic","viewTarget","visibility","vMathematical","widths","wordSpacing","writingMode","x1","x2","x","xChannelSelector","xHeight","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlLang","xmlns","xmlnsXlink","xmlSpace","y1","y2","y","yChannelSelector","z","zoomAndPan","ref","key","angle"],fN=["points","pathLength"],ry={svg:SJ,polygon:fN,polyline:fN},S1=["dangerouslySetInnerHTML","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onCompositionEnd","onCompositionEndCapture","onCompositionStart","onCompositionStartCapture","onCompositionUpdate","onCompositionUpdateCapture","onF
503ocus","onFocusCapture","onBlur","onBlurCapture","onChange","onChangeCapture","onBeforeInput","onBeforeInputCapture","onInput","onInputCapture","onReset","onResetCapture","onSubmit","onSubmitCapture","onInvalid","onInvalidCapture","onLoad","onLoadCapture","onError","onErrorCapture","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","onAbort","onAbortCapture","onCanPlay","onCanPlayCapture","onCanPlayThrough","onCanPlayThroughCapture","onDurationChange","onDurationChangeCapture","onEmptied","onEmptiedCapture","onEncrypted","onEncryptedCapture","onEnded","onEndedCapture","onLoadedData","onLoadedDataCapture","onLoadedMetadata","onLoadedMetadataCapture","onLoadStart","onLoadStartCapture","onPause","onPauseCapture","onPlay","onPlayCapture","onPlaying","onPlayingCapture","onProgress","onProgressCapture","onRateChange","onRateChangeCapture","onSeeked","onSeekedCapture","onSeeking","onSeekingCapture","onStalled","onStalledCapture","onSuspend","onSuspendCapture","onTimeUpdate","onTimeUpdateCapture","onVolumeChange","onVolumeChangeCapture","onWaiting","onWaitingCapture","onAuxClick","onAuxClickCapture","onClick","onClickCapture","onContextMenu","onContextMenuCapture","onDoubleClick","onDoubleClickCapture","onDrag","onDragCapture","onDragEnd","onDragEndCapture","onDragEnter","onDragEnterCapture","onDragExit","onDragExitCapture","onDragLeave","onDragLeaveCapture","onDragOver","onDragOverCapture","onDragStart","onDragStartCapture","onDrop","onDropCapture","onMouseDown","onMouseDownCapture","onMouseEnter","onMouseLeave","onMouseMove","onMouseMoveCapture","onMouseOut","onMouseOutCapture","onMouseOver","onMouseOverCapture","onMouseUp","onMouseUpCapture","onSelect","onSelectCapture","onTouchCancel","onTouchCancelCapture","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchMoveCapture","onTouchStart","onTouchStartCapture","onPointerDown","onPointerDownCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onPointerCancel","onPointerCancelCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerOver","onPointerOverCapture","onPointerOut","onPointerOutCapture","onGotPointerCapture","onGotPointerCaptureCapture","onLostPointerCapture","onLostPointerCaptureCapture","onScroll","onScrollCapture","onWheel","onWheelCapture","onAnimationStart","onAnimationStartCapture","onAnimationEnd","onAnimationEndCapture","onAnimationIteration","onAnimationIterationCapture","onTransitionEnd","onTransitionEndCapture"],Mh=function(t,n){if(!t||typeof t=="function"||typeof t=="boolean")return null;var i=t;if(j.isValidElement(t)&&(i=t.props),!cc(i))return null;var a={};
vendor: 4,228 bytes, line 503
503return Object.keys(i).forEach(function(s){S1.includes(s)&&(a[s]=n||function(o){return i[s](i,o)})}),a},EJ=function(t,n,i){return function(a){return t(n,i,a),null}},Rh=function(t,n,i){if(!cc(t)||fb(t)!=="object")return null;var a=null;return Object.keys(t).forEach(function(s){var o=t[s];S1.includes(s)&&typeof o=="function"&&(a||(a={}),a[s]=EJ(o,n,i))}),a},_J=["children"],PJ=["children"];function gN(e,t){if(e==null)return{};var n=TJ(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function TJ(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}var xN={click:"onClick",mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",mouseout:"onMouseOut",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",touchcancel:"onTouchCancel",touchend:"onTouchEnd",touchmove:"onTouchMove",touchstart:"onTouchStart"},Bi=function(t){return typeof t=="string"?t:t?t.displayName||t.name||"Component":""},yN=null,iy=null,C1=function e(t){if(t===yN&&Array.isArray(iy))return iy;var n=[];return j.Children.forEach(t,function(i){Ke(i)||(gJ.isFragment(i)?n=n.concat(e(i.props.children)):n.push(i))}),iy=n,yN=t,n};function Ur(e,t){var n=[],i=[];return Array.isArray(t)?i=t.map(function(a){return Bi(a)}):i=[Bi(t)],C1(e).forEach(function(a){var s=hr(a,"type.displayName")||hr(a,"type.name");i.indexOf(s)!==-1&&n.push(a)}),n}function Gn(e,t){var n=Ur(e,t);return n&&n[0]}var vN=function(t){if(!t||!t.props)return!1;var n=t.props,i=n.width,a=n.height;return!(!ae(i)||i<=0||!ae(a)||a<=0)},DJ=["a","altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","color-profile","cursor","defs","desc","ellipse","feBlend","feColormatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","font","font-face","font-face-format","font-face-name","font-face-url","foreignObject","g","glyph","glyphRef","hkern","image","line","lineGradient","marker","mask","metadata","missing-glyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","svg","switch","symbol","text","textPath","title","tref","tspan","use","view","vkern"],OJ=function(t){return t&&t.type&&dp(t.type)&&DJ.indexOf(t.type)>=0},MJ=function(t,n,i,a){var s,o=(s=ry==null?void 0:ry[a])!==null&&s!==void 0?s:[];return!Be(t)&&(a&&o.includes(n)||CJ.includes(n))||i&&S1.includes(n)},Ve=function(t,n,i){if(!t||typeof t=="function"||typeof t=="boolean")return null;var a=t;if(j.isValidElement(t)&&(a=t.props),!cc(a))return null;var s={};return Object.keys(a).forEach(function(o){var l;MJ((l=a)===null||l===void 0?void 0:l[o],o,n,i)&&(s[o]=a[o])}),s},gb=function e(t,n){if(t===n)return!0;var i=j.Children.count(t);if(i!==j.Children.count(n))return!1;if(i===0)return!0;if(i===1)return bN(Array.isArray(t)?t[0]:t,Array.isArray(n)?n[0]:n);for(var a=0;a<i;a++){var s=t[a],o=n[a];if(Array.isArray(s)||Array.isArray(o)){if(!e(s,o))return!1}else if(!bN(s,o))return!1}return!0},bN=function(t,n){if(Ke(t)&&Ke(n))return!0;if(!Ke(t)&&!Ke(n)){var i=t.props||{},a=i.children,s=gN(i,_J),o=n.props||{},l=o.children,c=gN(o,PJ);return a&&l?nl(s,c)&&gb(a,l):!a&&!l?nl(s,c):!1}return!1},wN=function(t,n){var i=[],a={};return C1(t).forEach(function(s,o){if(OJ(s))i.push(s);else if(s){var l=Bi(s.type),c=n[l]||{},d=c.handler,u=c.once;if(d&&(!u||!a[l])){var p=d(s,l,o);i.push(p),a[l]=!0}}}),i},RJ=function(t){var n=t&&t.type;return n&&xN[n]?xN[n]:null},LJ=function(t,n){return C1(n).indexOf(t)},FJ=["children","width","height","viewBox","className","style","title","desc"];function xb(){return xb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}
503,xb.apply(this,arguments)}function BJ(e,t){if(e==null)return{};var n=$J(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function $J(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function yb(e){var t=e.children,n=e.width,i=e.height,a=e.viewBox,s=e.className,o=e.style,l=e.title,c=e.desc,d=BJ(e,FJ),u=a||{width:n,height:i,x:0,y:0},p=Ge("recharts-surface",s);return F.createElement("svg",xb({},Ve(d,!0,"svg"),{className:p,width:n,height:i,style:o,viewBox:"".concat(u.x," ").concat(u.y," ").concat(u.width," ").concat(u.height)}),F.createElement("title",null,l),F.createElement("desc",null,c),t)}var UJ=["children","className"];function vb(){return vb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},vb.apply(this,arguments)}function qJ(e,t){if(e==null)return{};var n=GJ(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function GJ(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}var Qt=F.forwardRef(function(e,t){var n=e.children,i=e.className,a=qJ(e,UJ),s=Ge("recharts-layer",i);return F.createElement("g",vb({className:s},Ve(a,!0),{ref:t}),n)}),Ls=function(t,n){for(var i=arguments.length,a=new Array(i>2?i-2:0),s=2;s<i;s++)a[s-2]=arguments[s]};function HJ(e,t,n){var i=-1,a=e.length;t<0&&(t=-t>a?0:a+t),n=n>a?a:n,n<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(a);++i<a;)s[i]=e[i+t];return s}var zJ=HJ,WJ=zJ;function VJ(e,t,n){var i=e.length;return n=n===void 0?i:n,!t&&n>=i?e:WJ(e,t,n)}var KJ=VJ,YJ="\\ud800-\\udfff",QJ="\\u0300-\\u036f",XJ="\\ufe20-\\ufe2f",ZJ="\\u20d0-\\u20ff",JJ=QJ+XJ+ZJ,eee="\\ufe0e\\ufe0f",tee="\\u200d",nee=RegExp("["+tee+YJ+JJ+eee+"]");function ree(e){return nee.test(e)}var DR=ree;function iee(e){return e.split("")}var aee=iee,OR="\\ud800-\\udfff",see="\\u0300-\\u036f",oee="\\ufe20-\\ufe2f",lee="\\u20d0-\\u20ff",cee=see+oee+lee,dee="\\ufe0e\\ufe0f",uee="["+OR+"]",bb="["+cee+"]",wb="\\ud83c[\\udffb-\\udfff]",pee="(?:"+bb+"|"+wb+")",MR="[^"+OR+"]",RR="(?:\\ud83c[\\udde6-\\uddff]){2}",LR="[\\ud800-\\udbff][\\udc00-\\udfff]",mee="\\u200d",FR=pee+"?",BR="["+dee+"]?",hee="(?:"+mee+"(?:"+[MR,RR,LR].join("|")+")"+BR+FR+")*",fee=BR+FR+hee,gee="(?:"+[MR+bb+"?",bb,RR,LR,uee].join("|")+")",xee=RegExp(wb+"(?="+wb+")|"+gee+fee,"g");function yee(e){return e.match(xee)||[]}var vee=yee,bee=aee,wee=DR,Aee=vee;function jee(e){return wee(e)?Aee(e):bee(e)}var kee=jee,Nee=KJ,Iee=DR,See=kee,Cee=SR;function Eee(e){return function(t){t=Cee(t);var n=Iee(t)?See(t):void 0,i=n?n[0]:t.charAt(0),a=n?Nee(n,1).join(""):t.slice(1);return i[e]()+a}}var _ee=Eee,Pee=_ee,Tee=Pee("toUpperCase"),Dee=Tee;const Ig=Qe(Dee);function st(e){return function(){return e}}const $R=Math.cos,Lh=Math.sin,Vr=Math.sqrt,Fh=Math.PI,Sg=2*Fh,Ab=Math.PI,jb=2*Ab,ds=1e-6,Oee=jb-ds;function UR(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function Mee(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return UR;const n=10**t;return function(i){this._+=i[0];for(let a=1,s=i.length;a<s;++a)this._+=Math.round(arguments[a]*n)/n+i[a]}}class Ree{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?UR:Mee(t)}moveTo(t,n){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,n){this._append`L${this._x1=+t},${this._y1=+n}`}quadraticCurveTo(t,n,i,a){this._append`Q${+t},${+n},${this._x1=+i},${this._y1=+a}`}bezierCurveTo(t,n,i,a,s,o){this._append`C${+t},${+n},${+i},${+a},${this._x1=+s},${this._y1=+o}`}
vendor: 4,573 bytes, line 503
503arcTo(t,n,i,a,s){if(t=+t,n=+n,i=+i,a=+a,s=+s,s<0)throw new Error(`negative radius: ${s}`);let o=this._x1,l=this._y1,c=i-t,d=a-n,u=o-t,p=l-n,m=u*u+p*p;if(this._x1===null)this._append`M${this._x1=t},${this._y1=n}`;else if(m>ds)if(!(Math.abs(p*c-d*u)>ds)||!s)this._append`L${this._x1=t},${this._y1=n}`;else{let f=i-o,x=a-l,h=c*c+d*d,g=f*f+x*x,y=Math.sqrt(h),v=Math.sqrt(m),b=s*Math.tan((Ab-Math.acos((h+m-g)/(2*y*v)))/2),A=b/v,w=b/y;Math.abs(A-1)>ds&&this._append`L${t+A*u},${n+A*p}`,this._append`A${s},${s},0,0,${+(p*f>u*x)},${this._x1=t+w*c},${this._y1=n+w*d}`}}arc(t,n,i,a,s,o){if(t=+t,n=+n,i=+i,o=!!o,i<0)throw new Error(`negative radius: ${i}`);let l=i*Math.cos(a),c=i*Math.sin(a),d=t+l,u=n+c,p=1^o,m=o?a-s:s-a;this._x1===null?this._append`M${d},${u}`:(Math.abs(this._x1-d)>ds||Math.abs(this._y1-u)>ds)&&this._append`L${d},${u}`,i&&(m<0&&(m=m%jb+jb),m>Oee?this._append`A${i},${i},0,1,${p},${t-l},${n-c}A${i},${i},0,1,${p},${this._x1=d},${this._y1=u}`:m>ds&&this._append`A${i},${i},0,${+(m>=Ab)},${p},${this._x1=t+i*Math.cos(s)},${this._y1=n+i*Math.sin(s)}`)}rect(t,n,i,a){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${i=+i}v${+a}h${-i}Z`}toString(){return this._}}function E1(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const i=Math.floor(n);if(!(i>=0))throw new RangeError(`invalid digits: ${n}`);t=i}return e},()=>new Ree(t)}function _1(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function qR(e){this._context=e}qR.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Cg(e){return new qR(e)}function GR(e){return e[0]}function HR(e){return e[1]}function zR(e,t){var n=st(!0),i=null,a=Cg,s=null,o=E1(l);e=typeof e=="function"?e:e===void 0?GR:st(e),t=typeof t=="function"?t:t===void 0?HR:st(t);function l(c){var d,u=(c=_1(c)).length,p,m=!1,f;for(i==null&&(s=a(f=o())),d=0;d<=u;++d)!(d<u&&n(p=c[d],d,c))===m&&((m=!m)?s.lineStart():s.lineEnd()),m&&s.point(+e(p,d,c),+t(p,d,c));if(f)return s=null,f+""||null}return l.x=function(c){return arguments.length?(e=typeof c=="function"?c:st(+c),l):e},l.y=function(c){return arguments.length?(t=typeof c=="function"?c:st(+c),l):t},l.defined=function(c){return arguments.length?(n=typeof c=="function"?c:st(!!c),l):n},l.curve=function(c){return arguments.length?(a=c,i!=null&&(s=a(i)),l):a},l.context=function(c){return arguments.length?(c==null?i=s=null:s=a(i=c),l):i},l}function tm(e,t,n){var i=null,a=st(!0),s=null,o=Cg,l=null,c=E1(d);e=typeof e=="function"?e:e===void 0?GR:st(+e),t=typeof t=="function"?t:st(t===void 0?0:+t),n=typeof n=="function"?n:n===void 0?HR:st(+n);function d(p){var m,f,x,h=(p=_1(p)).length,g,y=!1,v,b=new Array(h),A=new Array(h);for(s==null&&(l=o(v=c())),m=0;m<=h;++m){if(!(m<h&&a(g=p[m],m,p))===y)if(y=!y)f=m,l.areaStart(),l.lineStart();else{for(l.lineEnd(),l.lineStart(),x=m-1;x>=f;--x)l.point(b[x],A[x]);l.lineEnd(),l.areaEnd()}y&&(b[m]=+e(g,m,p),A[m]=+t(g,m,p),l.point(i?+i(g,m,p):b[m],n?+n(g,m,p):A[m]))}if(v)return l=null,v+""||null}function u(){return zR().defined(a).curve(o).context(s)}return d.x=function(p){return arguments.length?(e=typeof p=="function"?p:st(+p),i=null,d):e},d.x0=function(p){return arguments.length?(e=typeof p=="function"?p:st(+p),d):e},d.x1=function(p){return arguments.length?(i=p==null?null:typeof p=="function"?p:st(+p),d):i},d.y=function(p){return arguments.length?(t=typeof p=="function"?p:st(+p),n=null,d):t},d.y0=function(p){return arguments.length?(t=typeof p=="function"?p:st(+p),d):t},d.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:st(+p),d):n},d.lineX0=d.lineY0=function(){return u().x(e).y(t)},d.lineY1=function(){return u().x(e).y(n)},d.lineX1=function(){return u().x(i).y(t)},d.defined=function(p){return arguments.length?(a=typeof p=="function"?p:st(!!p),d):a},d.curve=function(p){return arguments.length?(o=p,s!=null&&(l=o(s)),d):o},d.context=function(p){return arguments.length?(p==null?s=l=null:l=o(s=p),d):s},d}class WR{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}
vendor: 8,443 bytes, line 503
503point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function Lee(e){return new WR(e,!0)}function Fee(e){return new WR(e,!1)}const P1={draw(e,t){const n=Vr(t/Fh);e.moveTo(n,0),e.arc(0,0,n,0,Sg)}},Bee={draw(e,t){const n=Vr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},VR=Vr(1/3),$ee=VR*2,Uee={draw(e,t){const n=Vr(t/$ee),i=n*VR;e.moveTo(0,-n),e.lineTo(i,0),e.lineTo(0,n),e.lineTo(-i,0),e.closePath()}},qee={draw(e,t){const n=Vr(t),i=-n/2;e.rect(i,i,n,n)}},Gee=.8908130915292852,KR=Lh(Fh/10)/Lh(7*Fh/10),Hee=Lh(Sg/10)*KR,zee=-$R(Sg/10)*KR,Wee={draw(e,t){const n=Vr(t*Gee),i=Hee*n,a=zee*n;e.moveTo(0,-n),e.lineTo(i,a);for(let s=1;s<5;++s){const o=Sg*s/5,l=$R(o),c=Lh(o);e.lineTo(c*n,-l*n),e.lineTo(l*i-c*a,c*i+l*a)}e.closePath()}},ay=Vr(3),Vee={draw(e,t){const n=-Vr(t/(ay*3));e.moveTo(0,n*2),e.lineTo(-ay*n,-n),e.lineTo(ay*n,-n),e.closePath()}},Jn=-.5,er=Vr(3)/2,kb=1/Vr(12),Kee=(kb/2+1)*3,Yee={draw(e,t){const n=Vr(t/Kee),i=n/2,a=n*kb,s=i,o=n*kb+n,l=-s,c=o;e.moveTo(i,a),e.lineTo(s,o),e.lineTo(l,c),e.lineTo(Jn*i-er*a,er*i+Jn*a),e.lineTo(Jn*s-er*o,er*s+Jn*o),e.lineTo(Jn*l-er*c,er*l+Jn*c),e.lineTo(Jn*i+er*a,Jn*a-er*i),e.lineTo(Jn*s+er*o,Jn*o-er*s),e.lineTo(Jn*l+er*c,Jn*c-er*l),e.closePath()}};function Qee(e,t){let n=null,i=E1(a);e=typeof e=="function"?e:st(e||P1),t=typeof t=="function"?t:st(t===void 0?64:+t);function a(){let s;if(n||(n=s=i()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),s)return n=null,s+""||null}return a.type=function(s){return arguments.length?(e=typeof s=="function"?s:st(s),a):e},a.size=function(s){return arguments.length?(t=typeof s=="function"?s:st(+s),a):t},a.context=function(s){return arguments.length?(n=s??null,a):n},a}function Bh(){}function $h(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function YR(e){this._context=e}YR.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:$h(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:$h(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Xee(e){return new YR(e)}function QR(e){this._context=e}QR.prototype={areaStart:Bh,areaEnd:Bh,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:$h(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Zee(e){return new QR(e)}function XR(e){this._context=e}XR.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,i=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,i):this._context.moveTo(n,i);break;case 3:this._point=4;default:$h(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Jee(e){return new XR(e)}function ZR(e){this._context=e}ZR.prototype={areaStart:Bh,areaEnd:Bh,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function ete(e){return new ZR(e)}function AN(e){return e<0?-1:1}function jN(e,t,n){var i=e._x1-e._x0,a=t-e._x1,s=(e._y1-e._y0)/(i||a<0&&-0),o=(n-e._y1)/(a||i<0&&-0),l=(s*a+o*i)/(i+a);return(AN(s)+AN(o))*Math.min(Math.abs(s),Math.abs(o),.5*Math.abs(l))||0}function kN(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function sy(e,t,n){var i=e._x0,a=e._y0,s=e._x1,o=e._y1,l=(s-i)/3;e._context.bezierCurveTo(i+l,a+l*t,s-l,o-l*n,s,o)}function Uh(e){this._context=e}Uh.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:sy(this,this._t0,kN(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,sy(this,kN(this,n=jN(this,e,t)),n);break;default:sy(this,this._t0,n=jN(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function JR(e){this._context=new eL(e)}(JR.prototype=Object.create(Uh.prototype)).point=function(e,t){Uh.prototype.point.call(this,t,e)};function eL(e){this._context=e}eL.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,i,a,s){this._context.bezierCurveTo(t,e,i,n,s,a)}};function tte(e){return new Uh(e)}function nte(e){return new JR(e)}function tL(e){this._context=e}tL.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var i=NN(e),a=NN(t),s=0,o=1;o<n;++s,++o)this._context.bezierCurveTo(i[0][s],a[0][s],i[1][s],a[1][s],e[o],t[o]);(this._line||this._line!==0&&n===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};function NN(e){var t,n=e.length-1,i,a=new Array(n),s=new Array(n),o=new Array(n);for(a[0]=0,s[0]=2,o[0]=e[0]+2*e[1],t=1;t<n-1;++t)a[t]=1,s[t]=4,o[t]=4*e[t]+2*e[t+1];for(a[n-1]=2,s[n-1]=7,o[n-1]=8*e[n-1]+e[n],t=1;t<n;++t)i=a[t]/s[t-1],s[t]-=i,o[t]-=i*o[t-1];for(a[n-1]=o[n-1]/s[n-1],t=n-2;t>=0;--t)a[t]=(o[t]-a[t+1])/s[t];for(s[n-1]=(e[n]+a[n-1])/2,t=0;t<n-1;++t)s[t]=2*e[t+1]-a[t+1];return[a,s]}function rte(e){return new tL(e)}function Eg(e,t){this._context=e,this._t=t}Eg.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;
vendor: 9,187 bytes, lines 503-506
503default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function ite(e){return new Eg(e,.5)}function ate(e){return new Eg(e,0)}function ste(e){return new Eg(e,1)}function Tl(e,t){if((o=e.length)>1)for(var n=1,i,a,s=e[t[0]],o,l=s.length;n<o;++n)for(a=s,s=e[t[n]],i=0;i<l;++i)s[i][1]+=s[i][0]=isNaN(a[i][1])?a[i][0]:a[i][1]}function Nb(e){for(var t=e.length,n=new Array(t);--t>=0;)n[t]=t;return n}function ote(e,t){return e[t]}function lte(e){const t=[];return t.key=e,t}function cte(){var e=st([]),t=Nb,n=Tl,i=ote;function a(s){var o=Array.from(e.apply(this,arguments),lte),l,c=o.length,d=-1,u;for(const p of s)for(l=0,++d;l<c;++l)(o[l][d]=[0,+i(p,o[l].key,d,s)]).data=p;for(l=0,u=_1(t(o));l<c;++l)o[u[l]].index=l;return n(o,u),o}return a.keys=function(s){return arguments.length?(e=typeof s=="function"?s:st(Array.from(s)),a):e},a.value=function(s){return arguments.length?(i=typeof s=="function"?s:st(+s),a):i},a.order=function(s){return arguments.length?(t=s==null?Nb:typeof s=="function"?s:st(Array.from(s)),a):t},a.offset=function(s){return arguments.length?(n=s??Tl,a):n},a}function dte(e,t){if((i=e.length)>0){for(var n,i,a=0,s=e[0].length,o;a<s;++a){for(o=n=0;n<i;++n)o+=e[n][a][1]||0;if(o)for(n=0;n<i;++n)e[n][a][1]/=o}Tl(e,t)}}function ute(e,t){if((a=e.length)>0){for(var n=0,i=e[t[0]],a,s=i.length;n<s;++n){for(var o=0,l=0;o<a;++o)l+=e[o][n][1]||0;i[n][1]+=i[n][0]=-l/2}Tl(e,t)}}function pte(e,t){if(!(!((o=e.length)>0)||!((s=(a=e[t[0]]).length)>0))){for(var n=0,i=1,a,s,o;i<s;++i){for(var l=0,c=0,d=0;l<o;++l){for(var u=e[t[l]],p=u[i][1]||0,m=u[i-1][1]||0,f=(p-m)/2,x=0;x<l;++x){var h=e[t[x]],g=h[i][1]||0,y=h[i-1][1]||0;f+=g-y}c+=p,d+=f*p}a[i-1][1]+=a[i-1][0]=n,c&&(n-=d/c)}a[i-1][1]+=a[i-1][0]=n,Tl(e,t)}}function cu(e){"@babel/helpers - typeof";return cu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cu(e)}var mte=["type","size","sizeType"];function Ib(){return Ib=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Ib.apply(this,arguments)}function IN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function SN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?IN(Object(n),!0).forEach(function(i){hte(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):IN(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function hte(e,t,n){return t=fte(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function fte(e){var t=gte(e,"string");return cu(t)=="symbol"?t:t+""}function gte(e,t){if(cu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(cu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function xte(e,t){if(e==null)return{};var n=yte(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function yte(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}var nL={symbolCircle:P1,symbolCross:Bee,symbolDiamond:Uee,symbolSquare:qee,symbolStar:Wee,symbolTriangle:Vee,symbolWye:Yee},vte=Math.PI/180,bte=function(t){var n="symbol".concat(Ig(t));return nL[n]||P1},wte=function(t,n,i){if(n==="area")return t;switch(i){case"cross":return 5*t*t/9;case"diamond":return .5*t*t/Math.sqrt(3);case"square":return t*t;case"star":{var a=18*vte;return 1.25*t*t*(Math.tan(a)-Math.tan(a*2)*Math.pow(Math.tan(a),2))}case"triangle":return Math.sqrt(3)*t*t/4;case"wye":return(21-10*Math.sqrt(3))*t*t/8;default:return Math.PI*t*t/4}},Ate=function(t,n){nL["symbol".concat(Ig(t))]=n},T1=function(t){var n=t.type,i=n===void 0?"circle":n,a=t.size,s=a===void 0?64:a,o=t.sizeType,l=o===void 0?"area":o,c=xte(t,mte),d=SN(SN({},c),{},{type:i,size:s,sizeType:l}),u=function(){var g=bte(i),y=Qee().type(g).size(wte(s,l,i));return y()},p=d.className,m=d.cx,f=d.cy,x=Ve(d,!0);return m===+m&&f===+f&&s===+s?F.createElement("path",Ib({},x,{className:Ge("recharts-symbols",p),transform:"translate(".concat(m,", ").concat(f,")"),d:u()})):null};T1.registerSymbol=Ate;function Dl(e){"@babel/helpers - typeof";return Dl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dl(e)}function Sb(){return Sb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Sb.apply(this,arguments)}function CN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function jte(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?CN(Object(n),!0).forEach(function(i){du(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):CN(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function kte(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Nte(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,iL(i.key),i)}}function Ite(e,t,n){return t&&Nte(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ste(e,t,n){return t=qh(t),Cte(e,rL()?Reflect.construct(t,n||[],qh(e).constructor):t.apply(e,n))}function Cte(e,t){if(t&&(Dl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Ete(e)}function Ete(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function rL(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(rL=function(){return!!e})()}function qh(e){return qh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},qh(e)}function _te(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Cb(e,t)}function Cb(e,t){return Cb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Cb(e,t)}function du(e,t,n){return t=iL(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function iL(e){var t=Pte(e,"string");return Dl(t)=="symbol"?t:t+""}function Pte(e,t){if(Dl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Dl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var tr=32,D1=function(e){function t(){return kte(this,t),Ste(this,t,arguments)}return _te(t,e),Ite(t,[{key:"renderIcon",value:function(i){var a=this.props.inactiveColor,s=tr/2,o=tr/6,l=tr/3,c=i.inactive?a:i.color;if(i.type==="plainline")return F.createElement("line",{strokeWidth:4,fill:"none",stroke:c,strokeDasharray:i.payload.strokeDasharray,x1:0,y1:s,x2:tr,y2:s,className:"recharts-legend-icon"});if(i.type==="line")return F.createElement("path",{strokeWidth:4,fill:"none",stroke:c,d:"M0,".concat(s,"h").concat(l,`
504            A`).concat(o,",").concat(o,",0,1,1,").concat(2*l,",").concat(s,`
505            H`).concat(tr,"M").concat(2*l,",").concat(s,`
506            A`).concat(o,",").concat(o,",0,1,1,").concat(l,",").concat(s),className:"recharts-legend-icon"});if(i.type==="rect")return F.createElement("path",{stroke:"none",fill:c,d:"M0,".concat(tr/8,"h").concat(tr,"v").concat(tr*3/4,"h").concat(-tr,"z"),className:"recharts-legend-icon"});if(F.isValidElement(i.legendIcon)){var d=jte({},i);return delete d.legendIcon,F.cloneElement(i.legendIcon,d)}return F.createElement(T1,{fill:c,cx:s,cy:s,size:tr,sizeType:"diameter",type:i.type})}},{key:"renderItems",value:function(){var i=this,a=this.props,s=a.payload,o=a.iconSize,l=a.layout,c=a.formatter,d=a.inactiveColor,u={x:0,y:0,width:tr,height:tr}
506,p={display:l==="horizontal"?"inline-block":"block",marginRight:10},m={display:"inline-block",verticalAlign:"middle",marginRight:4};return s.map(function(f,x){var h=f.formatter||c,g=Ge(du(du({"recharts-legend-item":!0},"legend-item-".concat(x),!0),"inactive",f.inactive));if(f.type==="none")return null;var y=Be(f.value)?null:f.value;Ls(!Be(f.value),`The name property is also required when using a function for the dataKey of a chart's cartesian components. Ex: <Bar name="Name of my Data"/>`);var v=f.inactive?d:f.color;return F.createElement("li",Sb({className:g,style:p,key:"legend-item-".concat(x)},Rh(i.props,f,x)),F.createElement(yb,{width:o,height:o,viewBox:u,style:m},i.renderIcon(f)),F.createElement("span",{className:"recharts-legend-item-text",style:{color:v}},h?h(y,f,x):y))})}},{key:"render",value:function(){var i=this.props,a=i.payload,s=i.layout,o=i.align;if(!a||!a.length)return null;var l={padding:0,margin:0,textAlign:s==="horizontal"?o:"left"};return F.createElement("ul",{className:"recharts-default-legend",style:l},this.renderItems())}}])}(j.PureComponent);du(D1,"displayName","Legend");du(D1,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"middle",inactiveColor:"#ccc"});var Tte=pg;function Dte(){this.__data__=new Tte,this.size=0}var Ote=Dte;function Mte(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var Rte=Mte;function Lte(e){return this.__data__.get(e)}var Fte=Lte;function Bte(e){return this.__data__.has(e)}var $te=Bte,Ute=pg,qte=b1,Gte=w1,Hte=200;function zte(e,t){var n=this.__data__;if(n instanceof Ute){var i=n.__data__;if(!qte||i.length<Hte-1)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new Gte(i)}return n.set(e,t),this.size=n.size,this}var Wte=zte,Vte=pg,Kte=Ote,Yte=Rte,Qte=Fte,Xte=$te,Zte=Wte;function mc(e){var t=this.__data__=new Vte(e);this.size=t.size}mc.prototype.clear=Kte;mc.prototype.delete=Yte;mc.prototype.get=Qte;mc.prototype.has=Xte;mc.prototype.set=Zte;var aL=mc,Jte="__lodash_hash_undefined__";function ene(e){return this.__data__.set(e,Jte),this}var tne=ene;function nne(e){return this.__data__.has(e)}var rne=nne,ine=w1,ane=tne,sne=rne;function Gh(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new ine;++t<n;)this.add(e[t])}Gh.prototype.add=Gh.prototype.push=ane;Gh.prototype.has=sne;var sL=Gh;function one(e,t){for(var n=-1,i=e==null?0:e.length;++n<i;)if(t(e[n],n,e))return!0;return!1}var oL=one;function lne(e,t){return e.has(t)}var lL=lne,cne=sL,dne=oL,une=lL,pne=1,mne=2;function hne(e,t,n,i,a,s){var o=n&pne,l=e.length,c=t.length;if(l!=c&&!(o&&c>l))return!1;var d=s.get(e),u=s.get(t);if(d&&u)return d==t&&u==e;var p=-1,m=!0,f=n&mne?new cne:void 0;for(s.set(e,t),s.set(t,e);++p<l;){var x=e[p],h=t[p];if(i)var g=o?i(h,x,p,t,e,s):i(x,h,p,e,t,s);if(g!==void 0){if(g)continue;m=!1;break}if(f){if(!dne(t,function(y,v){if(!une(f,v)&&(x===y||a(x,y,n,i,s)))return f.push(v)})){m=!1;break}}else if(!(x===h||a(x,h,n,i,s))){m=!1;break}}return s.delete(e),s.delete(t),m}var cL=hne,fne=gi,gne=fne.Uint8Array,xne=gne;function yne(e){var t=-1,n=Array(e.size);return e.forEach(function(i,a){n[++t]=[a,i]}),n}var vne=yne;function bne(e){var t=-1,n=Array(e.size);return e.forEach(function(i){n[++t]=i}),n}var O1=bne,EN=cp,_N=xne,wne=v1,Ane=cL,jne=vne,kne=O1,Nne=1,Ine=2,Sne="[object Boolean]",Cne="[object Date]",Ene="[object Error]",_ne="[object Map]",Pne="[object Number]",Tne="[object RegExp]",Dne="[object Set]",One="[object String]",Mne="[object Symbol]",Rne="[object ArrayBuffer]",Lne="[object DataView]",PN=EN?EN.prototype:void 0,oy=PN?PN.valueOf:void 0;function Fne(e,t,n,i,a,s,o){switch(n){case Lne:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Rne:return!(e.byteLength!=t.byteLength||!s(new _N(e),new _N(t)));case Sne:case Cne:case Pne:return wne(+e,+t);case Ene:return e.name==t.name&&e.message==t.message;case Tne:case One:return e==t+"";case _ne:var l=jne;case Dne:var c=i&Nne;if(l||(l=kne),e.size!=t.size&&!c)return!1;var d=o.get(e);if(d)return d==t;i|=Ine,o.set(e,t);var u=Ane(l(e),l(t),i,a,s,o);return o.delete(e),u;case Mne:if(oy)return oy.call(e)==oy.call(t)}return!1}var Bne=Fne;function $ne(e,t){for(var n=-1,i=t.length,a=e.length;++n<i;)e[a+n]=t[n];return e}var dL=$ne,Une=dL,qne=Fn;function Gne(e,t,n){var i=t(e);return qne(e)?i:Une(i,n(e))}var Hne=Gne;function zne(e,t){for(var n=-1,i=e==null?0:e.length,a=0,s=[];++n<i;){var o=e[n];t(o,n,e)&&(s[a++]=o)}return s}var Wne=zne;function Vne(){return[]}var Kne=Vne,Yne=Wne,Qne=Kne,Xne=Object.prototype,Zne=Xne.propertyIsEnumerable,TN=Object.getOwnPropertySymbols,Jne=TN?function(e){return e==null?[]:(e=Object(e),Yne(TN(e),function(t){return Zne.call(e,t)}))}:Qne,ere=Jne;function tre(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}var nre=tre,rre=Ji,ire=ea,are="[object Arguments]";function sre(e){return ire(e)&&rre(e)==are}var ore=sre,DN=ore,lre=ea,uL=Object.prototype,cre=uL.hasOwnProperty,dre=uL.propertyIsEnumerable,ure=DN(function(){return arguments}())?DN:function(e){return lre(e)&&cre.call(e,"callee")&&!dre.call(e,"callee")},M1=ure,Hh={exports:{}};function pre(){return!1}var mre=pre;Hh.exports;(function(e,t){var n=gi,i=mre,a=t&&!t.nodeType&&t,s=a&&!0&&e&&!e.nodeType&&e,o=s&&s.exports===a,l=o?n.Buffer:void 0,c=l?l.isBuffer:void 0,d=c||i;e.exports=d}
vendor: 4,576 bytes, line 506
506)(Hh,Hh.exports);var pL=Hh.exports,hre=9007199254740991,fre=/^(?:0|[1-9]\d*)$/;function gre(e,t){var n=typeof e;return t=t??hre,!!t&&(n=="number"||n!="symbol"&&fre.test(e))&&e>-1&&e%1==0&&e<t}var R1=gre,xre=9007199254740991;function yre(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=xre}var L1=yre,vre=Ji,bre=L1,wre=ea,Are="[object Arguments]",jre="[object Array]",kre="[object Boolean]",Nre="[object Date]",Ire="[object Error]",Sre="[object Function]",Cre="[object Map]",Ere="[object Number]",_re="[object Object]",Pre="[object RegExp]",Tre="[object Set]",Dre="[object String]",Ore="[object WeakMap]",Mre="[object ArrayBuffer]",Rre="[object DataView]",Lre="[object Float32Array]",Fre="[object Float64Array]",Bre="[object Int8Array]",$re="[object Int16Array]",Ure="[object Int32Array]",qre="[object Uint8Array]",Gre="[object Uint8ClampedArray]",Hre="[object Uint16Array]",zre="[object Uint32Array]",ut={};ut[Lre]=ut[Fre]=ut[Bre]=ut[$re]=ut[Ure]=ut[qre]=ut[Gre]=ut[Hre]=ut[zre]=!0;ut[Are]=ut[jre]=ut[Mre]=ut[kre]=ut[Rre]=ut[Nre]=ut[Ire]=ut[Sre]=ut[Cre]=ut[Ere]=ut[_re]=ut[Pre]=ut[Tre]=ut[Dre]=ut[Ore]=!1;function Wre(e){return wre(e)&&bre(e.length)&&!!ut[vre(e)]}var Vre=Wre;function Kre(e){return function(t){return e(t)}}var mL=Kre,zh={exports:{}};zh.exports;(function(e,t){var n=wR,i=t&&!t.nodeType&&t,a=i&&!0&&e&&!e.nodeType&&e,s=a&&a.exports===i,o=s&&n.process,l=function(){try{var c=a&&a.require&&a.require("util").types;return c||o&&o.binding&&o.binding("util")}catch{}}();e.exports=l})(zh,zh.exports);var Yre=zh.exports,Qre=Vre,Xre=mL,ON=Yre,MN=ON&&ON.isTypedArray,Zre=MN?Xre(MN):Qre,hL=Zre,Jre=nre,eie=M1,tie=Fn,nie=pL,rie=R1,iie=hL,aie=Object.prototype,sie=aie.hasOwnProperty;function oie(e,t){var n=tie(e),i=!n&&eie(e),a=!n&&!i&&nie(e),s=!n&&!i&&!a&&iie(e),o=n||i||a||s,l=o?Jre(e.length,String):[],c=l.length;for(var d in e)(t||sie.call(e,d))&&!(o&&(d=="length"||a&&(d=="offset"||d=="parent")||s&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||rie(d,c)))&&l.push(d);return l}var lie=oie,cie=Object.prototype;function die(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||cie;return e===n}var uie=die;function pie(e,t){return function(n){return e(t(n))}}var fL=pie,mie=fL,hie=mie(Object.keys,Object),fie=hie,gie=uie,xie=fie,yie=Object.prototype,vie=yie.hasOwnProperty;function bie(e){if(!gie(e))return xie(e);var t=[];for(var n in Object(e))vie.call(e,n)&&n!="constructor"&&t.push(n);return t}var wie=bie,Aie=y1,jie=L1;function kie(e){return e!=null&&jie(e.length)&&!Aie(e)}var _g=kie,Nie=lie,Iie=wie,Sie=_g;function Cie(e){return Sie(e)?Nie(e):Iie(e)}var F1=Cie,Eie=Hne,_ie=ere,Pie=F1;function Tie(e){return Eie(e,Pie,_ie)}var Die=Tie,RN=Die,Oie=1,Mie=Object.prototype,Rie=Mie.hasOwnProperty;function Lie(e,t,n,i,a,s){var o=n&Oie,l=RN(e),c=l.length,d=RN(t),u=d.length;if(c!=u&&!o)return!1;for(var p=c;p--;){var m=l[p];if(!(o?m in t:Rie.call(t,m)))return!1}var f=s.get(e),x=s.get(t);if(f&&x)return f==t&&x==e;var h=!0;s.set(e,t),s.set(t,e);for(var g=o;++p<c;){m=l[p];var y=e[m],v=t[m];if(i)var b=o?i(v,y,m,t,e,s):i(y,v,m,e,t,s);if(!(b===void 0?y===v||a(y,v,n,i,s):b)){h=!1;break}g||(g=m=="constructor")}if(h&&!g){var A=e.constructor,w=t.constructor;A!=w&&"constructor"in e&&"constructor"in t&&!(typeof A=="function"&&A instanceof A&&typeof w=="function"&&w instanceof w)&&(h=!1)}return s.delete(e),s.delete(t),h}var Fie=Lie,Bie=io,$ie=gi,Uie=Bie($ie,"DataView"),qie=Uie,Gie=io,Hie=gi,zie=Gie(Hie,"Promise"),Wie=zie,Vie=io,Kie=gi,Yie=Vie(Kie,"Set"),gL=Yie,Qie=io,Xie=gi,Zie=Qie(Xie,"WeakMap"),Jie=Zie,Eb=qie,_b=b1,Pb=Wie,Tb=gL,Db=Jie,xL=Ji,hc=jR,LN="[object Map]",eae="[object Object]",FN="[object Promise]",BN="[object Set]",$N="[object WeakMap]",UN="[object DataView]",tae=hc(Eb),nae=hc(_b),rae=hc(Pb),iae=hc(Tb),aae=hc(Db),us=xL;(Eb&&us(new Eb(new ArrayBuffer(1)))!=UN||_b&&us(new _b)!=LN||Pb&&us(Pb.resolve())!=FN||Tb&&us(new Tb)!=BN||Db&&us(new Db)!=$N)&&(us=function(e){var t=xL(e),n=t==eae?e.constructor:void 0,i=n?hc(n):"";if(i)switch(i){case tae:return UN;case nae:return LN;case rae:return FN;case iae:return BN;case aae:return $N}return t});var sae=us,ly=aL,oae=cL,lae=Bne,cae=Fie,qN=sae,GN=Fn,HN=pL,dae=hL,uae=1,zN="[object Arguments]",WN="[object Array]",nm="[object Object]",pae=Object.prototype,VN=pae.hasOwnProperty;function mae(e,t,n,i,a,s){var o=GN(e),l=GN(t),c=o?WN:qN(e),d=l?WN:qN(t);c=c==zN?nm:c,d=d==zN?nm:d;var u=c==nm,p=d==nm,m=c==d;if(m&&HN(e)){if(!HN(t))return!1;o=!0,u=!1}if(m&&!u)return s||(s=new ly),o||dae(e)?oae(e,t,n,i,a,s):lae(e,t,c,n,i,a,s);if(!(n&uae)){var f=u&&VN.call(e,"__wrapped__"),x=p&&VN.call(t,"__wrapped__");
vendor: 4,114 bytes, line 506
506if(f||x){var h=f?e.value():e,g=x?t.value():t;return s||(s=new ly),a(h,g,n,i,s)}}return m?(s||(s=new ly),cae(e,t,n,i,a,s)):!1}var hae=mae,fae=hae,KN=ea;function yL(e,t,n,i,a){return e===t?!0:e==null||t==null||!KN(e)&&!KN(t)?e!==e&&t!==t:fae(e,t,n,i,yL,a)}var B1=yL,gae=aL,xae=B1,yae=1,vae=2;function bae(e,t,n,i){var a=n.length,s=a,o=!i;if(e==null)return!s;for(e=Object(e);a--;){var l=n[a];if(o&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<s;){l=n[a];var c=l[0],d=e[c],u=l[1];if(o&&l[2]){if(d===void 0&&!(c in e))return!1}else{var p=new gae;if(i)var m=i(d,u,c,e,t,p);if(!(m===void 0?xae(u,d,yae|vae,i,p):m))return!1}}return!0}var wae=bae,Aae=Ja;function jae(e){return e===e&&!Aae(e)}var vL=jae,kae=vL,Nae=F1;function Iae(e){for(var t=Nae(e),n=t.length;n--;){var i=t[n],a=e[i];t[n]=[i,a,kae(a)]}return t}var Sae=Iae;function Cae(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var bL=Cae,Eae=wae,_ae=Sae,Pae=bL;function Tae(e){var t=_ae(e);return t.length==1&&t[0][2]?Pae(t[0][0],t[0][1]):function(n){return n===e||Eae(n,e,t)}}var Dae=Tae;function Oae(e,t){return e!=null&&t in Object(e)}var Mae=Oae,Rae=CR,Lae=M1,Fae=Fn,Bae=R1,$ae=L1,Uae=hg;function qae(e,t,n){t=Rae(t,e);for(var i=-1,a=t.length,s=!1;++i<a;){var o=Uae(t[i]);if(!(s=e!=null&&n(e,o)))break;e=e[o]}return s||++i!=a?s:(a=e==null?0:e.length,!!a&&$ae(a)&&Bae(o,a)&&(Fae(e)||Lae(e)))}var Gae=qae,Hae=Mae,zae=Gae;function Wae(e,t){return e!=null&&zae(e,t,Hae)}var Vae=Wae,Kae=B1,Yae=ER,Qae=Vae,Xae=x1,Zae=vL,Jae=bL,ese=hg,tse=1,nse=2;function rse(e,t){return Xae(e)&&Zae(t)?Jae(ese(e),t):function(n){var i=Yae(n,e);return i===void 0&&i===t?Qae(n,e):Kae(t,i,tse|nse)}}var ise=rse;function ase(e){return e}var fc=ase;function sse(e){return function(t){return t==null?void 0:t[e]}}var ose=sse,lse=k1;function cse(e){return function(t){return lse(t,e)}}var dse=cse,use=ose,pse=dse,mse=x1,hse=hg;function fse(e){return mse(e)?use(hse(e)):pse(e)}var gse=fse,xse=Dae,yse=ise,vse=fc,bse=Fn,wse=gse;function Ase(e){return typeof e=="function"?e:e==null?vse:typeof e=="object"?bse(e)?yse(e[0],e[1]):xse(e):wse(e)}var gc=Ase;function jse(e,t,n,i){for(var a=e.length,s=n+(i?1:-1);i?s--:++s<a;)if(t(e[s],s,e))return s;return-1}var kse=jse;function Nse(e){return e!==e}var Ise=Nse;function Sse(e,t,n){for(var i=n-1,a=e.length;++i<a;)if(e[i]===t)return i;return-1}var Cse=Sse,Ese=kse,_se=Ise,Pse=Cse;function Tse(e,t,n){return t===t?Pse(e,t,n):Ese(e,_se,n)}var Dse=Tse,Ose=Dse;function Mse(e,t){var n=e==null?0:e.length;return!!n&&Ose(e,t,0)>-1}var Rse=Mse;function Lse(e,t,n){for(var i=-1,a=e==null?0:e.length;++i<a;)if(n(t,e[i]))return!0;return!1}var Fse=Lse;function Bse(){}var $se=Bse,cy=gL,Use=$se,qse=O1,Gse=1/0,Hse=cy&&1/qse(new cy([,-0]))[1]==Gse?function(e){return new cy(e)}:Use,zse=Hse,Wse=sL,Vse=Rse,Kse=Fse,Yse=lL,Qse=zse,Xse=O1,Zse=200;function Jse(e,t,n){var i=-1,a=Vse,s=e.length,o=!0,l=[],c=l;if(n)o=!1,a=Kse;else if(s>=Zse){var d=t?null:Qse(e);if(d)return Xse(d);o=!1,a=Yse,c=new Wse}else c=t?[]:l;e:for(;++i<s;){var u=e[i],p=t?t(u):u;if(u=n||u!==0?u:0,o&&p===p){for(var m=c.length;m--;)if(c[m]===p)continue e;t&&c.push(p),l.push(u)}else a(c,p,n)||(c!==l&&c.push(p),l.push(u))}return l}var eoe=Jse,toe=gc,noe=eoe;function roe(e,t){return e&&e.length?noe(e,toe(t)):[]}var ioe=roe;const YN=Qe(ioe);function wL(e,t,n){return t===!0?YN(e,n):Be(t)?YN(e,t):e}function Ol(e){"@babel/helpers - typeof";return Ol=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ol(e)}var aoe=["ref"];function QN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Ai(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?QN(Object(n),!0).forEach(function(i){Pg(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):QN(Object(n)).forEac
vendor: 4,282 bytes, line 506
506h(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function soe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function XN(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,jL(i.key),i)}}function ooe(e,t,n){return t&&XN(e.prototype,t),n&&XN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function loe(e,t,n){return t=Wh(t),coe(e,AL()?Reflect.construct(t,n||[],Wh(e).constructor):t.apply(e,n))}function coe(e,t){if(t&&(Ol(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return doe(e)}function doe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function AL(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(AL=function(){return!!e})()}function Wh(e){return Wh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Wh(e)}function uoe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ob(e,t)}function Ob(e,t){return Ob=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Ob(e,t)}function Pg(e,t,n){return t=jL(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function jL(e){var t=poe(e,"string");return Ol(t)=="symbol"?t:t+""}function poe(e,t){if(Ol(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Ol(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function moe(e,t){if(e==null)return{};var n=hoe(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function hoe(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function foe(e){return e.value}function goe(e,t){if(F.isValidElement(e))return F.cloneElement(e,t);if(typeof e=="function")return F.createElement(e,t);t.ref;var n=moe(t,aoe);return F.createElement(D1,n)}var ZN=1,rl=function(e){function t(){var n;soe(this,t);for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];return n=loe(this,t,[].concat(a)),Pg(n,"lastBoundingBox",{width:-1,height:-1}),n}return uoe(t,e),ooe(t,[{key:"componentDidMount",value:function(){this.updateBBox()}},{key:"componentDidUpdate",value:function(){this.updateBBox()}},{key:"getBBox",value:function(){if(this.wrapperNode&&this.wrapperNode.getBoundingClientRect){var i=this.wrapperNode.getBoundingClientRect();return i.height=this.wrapperNode.offsetHeight,i.width=this.wrapperNode.offsetWidth,i}return null}},{key:"updateBBox",value:function(){var i=this.props.onBBoxUpdate,a=this.getBBox();a?(Math.abs(a.width-this.lastBoundingBox.width)>ZN||Math.abs(a.height-this.lastBoundingBox.height)>ZN)&&(this.lastBoundingBox.width=a.width,this.lastBoundingBox.height=a.height,i&&i(a)):(this.lastBoundingBox.width!==-1||this.lastBoundingBox.height!==-1)&&(this.lastBoundingBox.width=-1,this.lastBoundingBox.height=-1,i&&i(null))}},{key:"getBBoxSnapshot",value:function(){return this.lastBoundingBox.width>=0&&this.lastBoundingBox.height>=0?Ai({},this.lastBoundingBox):{width:0,height:0}}},{key:"getDefaultPosition",value:function(i){var a=this.props,s=a.layout,o=a.align,l=a.verticalAlign,c=a.margin,d=a.chartWidth,u=a.chartHeight,p,m;if(!i||(i.left===void 0||i.left===null)&&(i.right===void 0||i.right===null))if(o==="center"&&s==="vertical"){var f=this.getBBoxSnapshot();p={left:((d||0)-f.width)/2}}else p=o==="right"?{right:c&&c.right||0}:{left:c&&c.left||0};if(!i||(i.top===void 0||i.top===null)&&(i.bottom===void 0||i.bottom===null))if(l==="middle"){var x=this.getBBoxSnapsh
506ot();m={top:((u||0)-x.height)/2}}else m=l==="bottom"?{bottom:c&&c.bottom||0}:{top:c&&c.top||0};return Ai(Ai({},p),m)}},{key:"render",value:function(){var i=this,a=this.props,s=a.content,o=a.width,l=a.height,c=a.wrapperStyle,d=a.payloadUniqBy,u=a.payload,p=Ai(Ai({position:"absolute",width:o||"auto",height:l||"auto"},this.getDefaultPosition(c)),c);return F.createElement("div",{className:"recharts-legend-wrapper",style:p,ref:function(f){i.wrapperNode=f}},goe(s,Ai(Ai({},this.props),{},{payload:wL(u,d,foe)})))}}],[{key:"getWithHeight",value:function(i,a){var s=Ai(Ai({},this.defaultProps),i.props),o=s.layout;return o==="vertical"&&ae(i.props.height)?{height:i.props.height}:o==="horizontal"?{width:i.props.width||a}:null}}])}(j.PureComponent);Pg(rl,"displayName","Legend");Pg(rl,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"bottom"});var JN=cp,xoe=M1,yoe=Fn,eI=JN?JN.isConcatSpreadable:void 0;function voe(e){return yoe(e)||xoe(e)||!!(eI&&e&&e[eI])}var boe=voe,woe=dL,Aoe=boe;function kL(e,t,n,i,a){var s=-1,o=e.length;for(n||(n=Aoe),a||(a=[]);++s<o;){var l=e[s];t>0&&n(l)?t>1?kL(l,t-1,n,i,a):woe(a,l):i||(a[a.length]=l)}return a}var NL=kL;function joe(e){return function(t,n,i){for(var a=-1,s=Object(t),o=i(t),l=o.length;l--;){var c=o[e?l:++a];if(n(s[c],c,s)===!1)break}return t}}var koe=joe,Noe=koe,Ioe=Noe(),Soe=Ioe,Coe=Soe,Eoe=F1;function _oe(e,t){return e&&Coe(e,t,Eoe)}var IL=_oe,Poe=_g;function Toe(e,t){return function(n,i){if(n==null)return n;if(!Poe(n))return e(n,i);for(var a=n.length,s=t?a:-1,o=Object(n);(t?s--:++s<a)&&i(o[s],s,o)!==!1;);return n}}var Doe=Toe,Ooe=IL,Moe=Doe,Roe=Moe(Ooe),$1=Roe,Loe=$1,Foe=_g;function Boe(e,t){var n=-1,i=Foe(e)?Array(e.length):[];return Loe(e,function(a,s,o){i[++n]=t(a,s,o)}),i}var SL=Boe;function $oe(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}var Uoe=$oe,tI=lc;function qoe(e,t){if(e!==t){var n=e!==void 0,i=e===null,a=e===e,s=tI(e),o=t!==void 0,l=t===null,c=t===t,d=tI(t);if(!l&&!d&&!s&&e>t||s&&o&&c&&!l&&!d||i&&o&&c||!n&&c||!a)return 1;if(!i&&!s&&!d&&e<t||d&&n&&a&&!i&&!s||l&&n&&a||!o&&a||!c)return-1}return 0}var Goe=qoe,Hoe=Goe;function zoe(e,t,n){for(var i=-1,a=e.criteria,s=t.criteria,o=a.length,l=n.length;++i<o;){var c=Hoe(a[i],s[i]);if(c){if(i>=l)return c;var d=n[i];return c*(d=="desc"?-1:1)}}return e.index-t.index}var Woe=zoe,dy=j1,Voe=k1,Koe=gc,Yoe=SL,Qoe=Uoe,Xoe=mL,Zoe=Woe,Joe=fc,ele=Fn;function tle(e,t,n){t.length?t=dy(t,function(s){return ele(s)?function(o){return Voe(o,s.length===1?s[0]:s)}:s}):t=[Joe];var i=-1;t=dy(t,Xoe(Koe));var a=Yoe(e,function(s,o,l){var c=dy(t,function(d){return d(s)});return{criteria:c,index:++i,value:s}});return Qoe(a,function(s,o){return Zoe(s,o,n)})}var nle=tle;function rle(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}var ile=rle,ale=ile,nI=Math.max;function sle(e,t,n){return t=nI(t===void 0?e.length-1:t,0),function(){for(var i=arguments,a=-1,s=nI(i.length-t,0),o=Array(s);++a<s;)o[a]=i[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=i[a];return l[t]=n(o),ale(e,this,l)}}var ole=sle;function lle(e){return function(){return e}}var cle=lle,dle=io,ule=function(){try{var e=dle(Object,"defineProperty");return e({},"",{}),e}catch{}}(),CL=ule,ple=cle,rI=CL,mle=fc,hle=rI?function(e,t){return rI(e,"toString",{configurable:!0,enumerable:!1,value:ple(t),writable:!0})}:mle,fle=hle,gle=800,xle=16,yle=Date.now;function vle(e){var t=0,n=0;return function(){var i=yle(),a=xle-(i-n);if(n=i,a>0){if(++t>=gle)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var ble=vle,wle=fle,Ale=ble,jle=Ale(wle),kle=jle,Nle=fc,Ile=ole,Sle=kle;function Cle(e,t){return Sle(Ile(e,t,Nle),e+"")}var Ele=Cle,_le=v1,Ple=_g,Tle=R1,Dle=Ja;function Ole(e,t,n){if(!Dle(n))return!1;var i=typeof t;return(i=="number"?Ple(n)&&Tle(t,n.length):i=="string"&&t in n)?_le(n[t],e):!1}var Tg=Ole,Mle=NL,Rle=nle,Lle=Ele,iI=Tg,Fle=Lle(function(e,t){if(e==null)return[];var n=t.length;return n>1&&iI(e,t[0],t[1])?t=[]:n>2&&iI(t[0],t[1],t[2])&&(t=[t[0]]),Rle(e,Mle(t,1),[])}),Ble=Fle;const U1=Qe(Ble);function uu(e){"@babel/helpers - typeof";return uu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},uu(e)}function Mb(){return Mb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Mb.apply(this,arguments)}function $le(e,t){return Hle(e)||Gle(e,t)||qle(e,t)||Ule()}
vendor: 32,657 bytes, lines 506-514
506function Ule(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
507In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function qle(e,t){if(e){if(typeof e=="string")return aI(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return aI(e,t)}}function aI(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function Gle(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function Hle(e){if(Array.isArray(e))return e}function sI(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function uy(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?sI(Object(n),!0).forEach(function(i){zle(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):sI(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function zle(e,t,n){return t=Wle(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Wle(e){var t=Vle(e,"string");return uu(t)=="symbol"?t:t+""}function Vle(e,t){if(uu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(uu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Kle(e){return Array.isArray(e)&&Ht(e[0])&&Ht(e[1])?e.join(" ~ "):e}var Yle=function(t){var n=t.separator,i=n===void 0?" : ":n,a=t.contentStyle,s=a===void 0?{}:a,o=t.itemStyle,l=o===void 0?{}:o,c=t.labelStyle,d=c===void 0?{}:c,u=t.payload,p=t.formatter,m=t.itemSorter,f=t.wrapperClassName,x=t.labelClassName,h=t.label,g=t.labelFormatter,y=t.accessibilityLayer,v=y===void 0?!1:y,b=function(){if(u&&u.length){var D={padding:0,margin:0},G=(m?U1(u,m):u).map(function(P,L){if(P.type==="none")return null;var U=uy({display:"block",paddingTop:4,paddingBottom:4,color:P.color||"#000"},l),W=P.formatter||p||Kle,B=P.value,$=P.name,z=B,Q=$;if(W&&z!=null&&Q!=null){var V=W(B,$,P,L,u);if(Array.isArray(V)){var ne=$le(V,2);z=ne[0],Q=ne[1]}else z=V}return F.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(L),style:U},Ht(Q)?F.createElement("span",{className:"recharts-tooltip-item-name"},Q):null,Ht(Q)?F.createElement("span",{className:"recharts-tooltip-item-separator"},i):null,F.createElement("span",{className:"recharts-tooltip-item-value"},z),F.createElement("span",{className:"recharts-tooltip-item-unit"},P.unit||""))});return F.createElement("ul",{className:"recharts-tooltip-item-list",style:D},G)}return null},A=uy({margin:0,padding:10,backgroundColor:"#fff",border:"1px solid #ccc",whiteSpace:"nowrap"},s),w=uy({margin:0},d),k=!Ke(h),N=k?h:"",I=Ge("recharts-default-tooltip",f),C=Ge("recharts-tooltip-label",x);k&&g&&u!==void 0&&u!==null&&(N=g(h,u));var O=v?{role:"status","aria-live":"assertive"}:{};return F.createElement("div",Mb({className:I,style:A},O),F.createElement("p",{className:C,style:w},F.isValidElement(N)?N:"".concat(N)),b())};function pu(e){"@babel/helpers - typeof";return pu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pu(e)}function rm(e,t,n){return t=Qle(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Qle(e){var t=Xle(e,"string");return pu(t)=="symbol"?t:t+""}function Xle(e,t){if(pu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(pu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var $c="recharts-tooltip-wrapper",Zle={visibility:"hidden"};function Jle(e){var t=e.coordinate,n=e.translateX,i=e.translateY;return Ge($c,rm(rm(rm(rm({},"".concat($c,"-right"),ae(n)&&t&&ae(t.x)&&n>=t.x),"".concat($c,"-left"),ae(n)&&t&&ae(t.x)&&n<t.x),"".concat($c,"-bottom"),ae(i)&&t&&ae(t.y)&&i>=t.y),"".concat($c,"-top"),ae(i)&&t&&ae(t.y)&&i<t.y))}function oI(e){var t=e.allowEscapeViewBox,n=e.coordinate,i=e.key,a=e.offsetTopLeft,s=e.position,o=e.reverseDirection,l=e.tooltipDimension,c=e.viewBox,d=e.viewBoxDimension;if(s&&ae(s[i]))return s[i];var u=n[i]-l-a,p=n[i]+a;if(t[i])return o[i]?u:p;if(o[i]){var m=u,f=c[i];return m<f?Math.max(p,c[i]):Math.max(u,c[i])}var x=p+l,h=c[i]+d;return x>h?Math.max(u,c[i]):Math.max(p,c[i])}function ece(e){var t=e.translateX,n=e.translateY,i=e.useTranslate3d;return{transform:i?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function tce(e){var t=e.allowEscapeViewBox,n=e.coordinate,i=e.offsetTopLeft,a=e.position,s=e.reverseDirection,o=e.tooltipBox,l=e.useTranslate3d,c=e.viewBox,d,u,p;return o.height>0&&o.width>0&&n?(u=oI({allowEscapeViewBox:t,coordinate:n,key:"x",offsetTopLeft:i,position:a,reverseDirection:s,tooltipDimension:o.width,viewBox:c,viewBoxDimension:c.width}),p=oI({allowEscapeViewBox:t,coordinate:n,key:"y",offsetTopLeft:i,position:a,reverseDirection:s,tooltipDimension:o.height,viewBox:c,viewBoxDimension:c.height}),d=ece({translateX:u,translateY:p,useTranslate3d:l})):d=Zle,{cssProperties:d,cssClasses:Jle({translateX:u,translateY:p,coordinate:n})}}function Ml(e){"@babel/helpers - typeof";return Ml=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ml(e)}function lI(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function cI(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?lI(Object(n),!0).forEach(function(i){Lb(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):lI(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function nce(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function rce(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,_L(i.key),i)}}function ice(e,t,n){return t&&rce(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function ace(e,t,n){return t=Vh(t),sce(e,EL()?Reflect.construct(t,n||[],Vh(e).constructor):t.apply(e,n))}function sce(e,t){if(t&&(Ml(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return oce(e)}function oce(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function EL(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(EL=function(){return!!e})()}function Vh(e){return Vh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Vh(e)}function lce(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Rb(e,t)}function Rb(e,t){return Rb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Rb(e,t)}function Lb(e,t,n){return t=_L(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _L(e){var t=cce(e,"string");return Ml(t)=="symbol"?t:t+""}function cce(e,t){if(Ml(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Ml(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var dI=1,dce=function(e){function t(){var n;nce(this,t);for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];return n=ace(this,t,[].concat(a)),Lb(n,"state",{dismissed:!1,dismissedAtCoordinate:{x:0,y:0},lastBoundingBox:{width:-1,height:-1}}),Lb(n,"handleKeyDown",function(o){if(o.key==="Escape"){var l,c,d,u;n.setState({dismissed:!0,dismissedAtCoordinate:{x:(l=(c=n.props.coordinate)===null||c===void 0?void 0:c.x)!==null&&l!==void 0?l:0,y:(d=(u=n.props.coordinate)===null||u===void 0?void 0:u.y)!==null&&d!==void 0?d:0}})}}),n}return lce(t,e),ice(t,[{key:"updateBBox",value:function(){if(this.wrapperNode&&this.wrapperNode.getBoundingClientRect){var i=this.wrapperNode.getBoundingClientRect();(Math.abs(i.width-this.state.lastBoundingBox.width)>dI||Math.abs(i.height-this.state.lastBoundingBox.height)>dI)&&this.setState({lastBoundingBox:{width:i.width,height:i.height}})}else(this.state.lastBoundingBox.width!==-1||this.state.lastBoundingBox.height!==-1)&&this.setState({lastBoundingBox:{width:-1,height:-1}})}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown),this.updateBBox()}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown)}},{key:"componentDidUpdate",value:function(){var i,a;this.props.active&&this.updateBBox(),this.state.dismissed&&(((i=this.props.coordinate)===null||i===void 0?void 0:i.x)!==this.state.dismissedAtCoordinate.x||((a=this.props.coordinate)===null||a===void 0?void 0:a.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}},{key:"render",value:function(){var i=this,a=this.props,s=a.active,o=a.allowEscapeViewBox,l=a.animationDuration,c=a.animationEasing,d=a.children,u=a.coordinate,p=a.hasPayload,m=a.isAnimationActive,f=a.offset,x=a.position,h=a.reverseDirection,g=a.useTranslate3d,y=a.viewBox,v=a.wrapperStyle,b=tce({allowEscapeViewBox:o,coordinate:u,offsetTopLeft:f,position:x,reverseDirection:h,tooltipBox:this.state.lastBoundingBox,useTranslate3d:g,viewBox:y}),A=b.cssClasses,w=b.cssProperties,k=cI(cI({transition:m&&s?"transform ".concat(l,"ms ").concat(c):void 0},w),{},{pointerEvents:"none",visibility:!this.state.dismissed&&s&&p?"visible":"hidden",position:"absolute",top:0,left:0},v);return F.createElement("div",{tabIndex:-1,className:A,style:k,ref:function(I){i.wrapperNode=I}},d)}}])}(j.PureComponent),uce=function(){return!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout)},Ba={isSsr:uce(),get:function(t){return Ba[t]},set:function(t,n){if(typeof t=="string")Ba[t]=n;else{var i=Object.keys(t);i&&i.length&&i.forEach(function(a){Ba[a]=t[a]})}}};function Rl(e){"@babel/helpers - typeof";return Rl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Rl(e)}function uI(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function pI(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?uI(Object(n),!0).forEach(function(i){q1(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):uI(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function pce(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function mce(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,TL(i.key),i)}}function hce(e,t,n){return t&&mce(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function fce(e,t,n){return t=Kh(t),gce(e,PL()?Reflect.construct(t,n||[],Kh(e).constructor):t.apply(e,n))}function gce(e,t){if(t&&(Rl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return xce(e)}function xce(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function PL(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(PL=function(){return!!e})()}function Kh(e){return Kh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Kh(e)}function yce(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Fb(e,t)}function Fb(e,t){return Fb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Fb(e,t)}function q1(e,t,n){return t=TL(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function TL(e){var t=vce(e,"string");return Rl(t)=="symbol"?t:t+""}function vce(e,t){if(Rl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Rl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function bce(e){return e.dataKey}function wce(e,t){return F.isValidElement(e)?F.cloneElement(e,t):typeof e=="function"?F.createElement(e,t):F.createElement(Yle,t)}var Sr=function(e){function t(){return pce(this,t),fce(this,t,arguments)}return yce(t,e),hce(t,[{key:"render",value:function(){var i=this,a=this.props,s=a.active,o=a.allowEscapeViewBox,l=a.animationDuration,c=a.animationEasing,d=a.content,u=a.coordinate,p=a.filterNull,m=a.isAnimationActive,f=a.offset,x=a.payload,h=a.payloadUniqBy,g=a.position,y=a.reverseDirection,v=a.useTranslate3d,b=a.viewBox,A=a.wrapperStyle,w=x??[];p&&w.length&&(w=wL(x.filter(function(N){return N.value!=null&&(N.hide!==!0||i.props.includeHidden)}),h,bce));var k=w.length>0;return F.createElement(dce,{allowEscapeViewBox:o,animationDuration:l,animationEasing:c,isAnimationActive:m,active:s,coordinate:u,hasPayload:k,offset:f,position:g,reverseDirection:y,useTranslate3d:v,viewBox:b,wrapperStyle:A},wce(d,pI(pI({},this.props),{},{payload:w})))}}])}(j.PureComponent);q1(Sr,"displayName","Tooltip");q1(Sr,"defaultProps",{accessibilityLayer:!1,allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",contentStyle:{},coordinate:{x:0,y:0},cursor:!0,cursorStyle:{},filterNull:!0,isAnimationActive:!Ba.isSsr,itemStyle:{},labelStyle:{},offset:10,reverseDirection:{x:!1,y:!1},separator:" : ",trigger:"hover",useTranslate3d:!1,viewBox:{x:0,y:0,height:0,width:0},wrapperStyle:{}});var Ace=gi,jce=function(){return Ace.Date.now()},kce=jce,Nce=/\s/;function Ice(e){for(var t=e.length;t--&&Nce.test(e.charAt(t)););return t}var Sce=Ice,Cce=Sce,Ece=/^\s+/;function _ce(e){return e&&e.slice(0,Cce(e)+1).replace(Ece,"")}var Pce=_ce,Tce=Pce,mI=Ja,Dce=lc,hI=NaN,Oce=/^[-+]0x[0-9a-f]+$/i,Mce=/^0b[01]+$/i,Rce=/^0o[0-7]+$/i,Lce=parseInt;function Fce(e){if(typeof e=="number")return e;if(Dce(e))return hI;if(mI(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=mI(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=Tce(e);var n=Mce.test(e);return n||Rce.test(e)?Lce(e.slice(2),n?2:8):Oce.test(e)?hI:+e}var DL=Fce,Bce=Ja,py=kce,fI=DL,$ce="Expected a function",Uce=Math.max,qce=Math.min;function Gce(e,t,n){var i,a,s,o,l,c,d=0,u=!1,p=!1,m=!0;if(typeof e!="function")throw new TypeError($ce);t=fI(t)||0,Bce(n)&&(u=!!n.leading,p="maxWait"in n,s=p?Uce(fI(n.maxWait)||0,t):s,m="trailing"in n?!!n.trailing:m);function f(k){var N=i,I=a;return i=a=void 0,d=k,o=e.apply(I,N),o}function x(k){return d=k,l=setTimeout(y,t),u?f(k):o}function h(k){var N=k-c,I=k-d,C=t-N;return p?qce(C,s-I):C}function g(k){var N=k-c,I=k-d;return c===void 0||N>=t||N<0||p&&I>=s}function y(){var k=py();if(g(k))return v(k);l=setTimeout(y,h(k))}function v(k){return l=void 0,m&&i?f(k):(i=a=void 0,o)}function b(){l!==void 0&&clearTimeout(l),d=0,i=c=a=l=void 0}function A(){return l===void 0?o:v(py())}function w(){var k=py(),N=g(k);if(i=arguments,a=this,c=k,N){if(l===void 0)return x(c);if(p)return clearTimeout(l),l=setTimeout(y,t),f(c)}return l===void 0&&(l=setTimeout(y,t)),o}return w.cancel=b,w.flush=A,w}var Hce=Gce,zce=Hce,Wce=Ja,Vce="Expected a function";function Kce(e,t,n){var i=!0,a=!0;if(typeof e!="function")throw new TypeError(Vce);return Wce(n)&&(i="leading"in n?!!n.leading:i,a="trailing"in n?!!n.trailing:a),zce(e,t,{leading:i,maxWait:t,trailing:a})}var Yce=Kce;const OL=Qe(Yce);function mu(e){"@babel/helpers - typeof";return mu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},mu(e)}function gI(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function im(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?gI(Object(n),!0).forEach(function(i){Qce(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):gI(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Qce(e,t,n){return t=Xce(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Xce(e){var t=Zce(e,"string");return mu(t)=="symbol"?t:t+""}function Zce(e,t){if(mu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(mu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Jce(e,t){return rde(e)||nde(e,t)||tde(e,t)||ede()}function ede(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
508In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function tde(e,t){if(e){if(typeof e=="string")return xI(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return xI(e,t)}}function xI(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function nde(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function rde(e){if(Array.isArray(e))return e}var ML=j.forwardRef(function(e,t){var n=e.aspect,i=e.initialDimension,a=i===void 0?{width:-1,height:-1}:i,s=e.width,o=s===void 0?"100%":s,l=e.height,c=l===void 0?"100%":l,d=e.minWidth,u=d===void 0?0:d,p=e.minHeight,m=e.maxHeight,f=e.children,x=e.debounce,h=x===void 0?0:x,g=e.id,y=e.className,v=e.onResize,b=e.style,A=b===void 0?{}:b,w=j.useRef(null),k=j.useRef();k.current=v,j.useImperativeHandle(t,function(){return Object.defineProperty(w.current,"current",{get:function(){return console.warn("The usage of ref.current.current is deprecated and will no longer be supported."),w.current},configurable:!0})});var N=j.useState({containerWidth:a.width,containerHeight:a.height}),I=Jce(N,2),C=I[0],O=I[1],_=j.useCallback(function(G,P){O(function(L){var U=Math.round(G),W=Math.round(P);return L.containerWidth===U&&L.containerHeight===W?L:{containerWidth:U,containerHeight:W}})},[]);j.useEffect(function(){var G=function($){var z,Q=$[0].contentRect,V=Q.width,ne=Q.height;_(V,ne),(z=k.current)===null||z===void 0||z.call(k,V,ne)};h>0&&(G=OL(G,h,{trailing:!0,leading:!1}));var P=new ResizeObserver(G),L=w.current.getBoundingClientRect(),U=L.width,W=L.height;return _(U,W),P.observe(w.current),function(){P.disconnect()}},[_,h]);var D=j.useMemo(function(){var G=C.containerWidth,P=C.containerHeight;if(G<0||P<0)return null;Ls(ys(o)||ys(c),`The width(%s) and height(%s) are both fixed numbers,
509       maybe you don't need to use a ResponsiveContainer.`,o,c),Ls(!n||n>0,"The aspect(%s) must be greater than zero.",n);var L=ys(o)?G:o,U=ys(c)?P:c;n&&n>0&&(L?U=L/n:U&&(L=U*n),m&&U>m&&(U=m)),Ls(L>0||U>0,`The width(%s) and height(%s) of chart should be greater than 0,
510       please check the style of container, or the props width(%s) and height(%s),
511       or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the
512       height and width.`,L,U,o,c,u,p,n);var W=!Array.isArray(f)&&Bi(f.type).endsWith("Chart");return F.Children.map(f,function(B){return F.isValidElement(B)?j.cloneElement(B,im({width:L,height:U},W?{style:im({height:"100%",width:"100%",maxHeight:U,maxWidth:L},B.props.style)}:{})):B})},[n,f,c,m,p,u,C,o]);return F.createElement("div",{id:g?"".concat(g):void 0,className:Ge("recharts-responsive-container",y),style:im(im({},A),{},{width:o,height:c,minWidth:u,minHeight:p,maxHeight:m}),ref:w},D)}),Dg=function(t){return null};Dg.displayName="Cell";function hu(e){"@babel/helpers - typeof";return hu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},hu(e)}function yI(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Bb(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?yI(Object(n),!0).forEach(function(i){ide(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):yI(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function ide(e,t,n){return t=ade(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ade(e){var t=sde(e,"string");return hu(t)=="symbol"?t:t+""}function sde(e,t){if(hu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(hu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var xo={widthCache:{},cacheCount:0},ode=2e3,lde={position:"absolute",top:"-20000px",left:0,padding:0,margin:0,border:"none",whiteSpace:"pre"},vI="recharts_measurement_span";function cde(e){var t=Bb({},e);return Object.keys(t).forEach(function(n){t[n]||delete t[n]}),t}var Ad=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Ba.isSsr)return{width:0,height:0};var i=cde(n),a=JSON.stringify({text:t,copyStyle:i});if(xo.widthCache[a])return xo.widthCache[a];try{var s=document.getElementById(vI);s||(s=document.createElement("span"),s.setAttribute("id",vI),s.setAttribute("aria-hidden","true"),document.body.appendChild(s));var o=Bb(Bb({},lde),i);Object.assign(s.style,o),s.textContent="".concat(t);var l=s.getBoundingClientRect(),c={width:l.width,height:l.height};return xo.widthCache[a]=c,++xo.cacheCount>ode&&(xo.cacheCount=0,xo.widthCache={}),c}catch{return{width:0,height:0}}},dde=function(t){return{top:t.top+window.scrollY-document.documentElement.clientTop,left:t.left+window.scrollX-document.documentElement.clientLeft}};function fu(e){"@babel/helpers - typeof";return fu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},fu(e)}function Yh(e,t){return hde(e)||mde(e,t)||pde(e,t)||ude()}function ude(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
513In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function pde(e,t){if(e){if(typeof e=="string")return bI(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return bI(e,t)}}function bI(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function mde(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function hde(e){if(Array.isArray(e))return e}function fde(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function wI(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,xde(i.key),i)}}function gde(e,t,n){return t&&wI(e.prototype,t),n&&wI(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function xde(e){var t=yde(e,"string");return fu(t)=="symbol"?t:t+""}function yde(e,t){if(fu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t);if(fu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var AI=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,jI=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,vde=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,bde=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,RL={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},wde=Object.keys(RL),Bo="NaN";function Ade(e,t){return e*RL[t]}var am=function(){function e(t,n){fde(this,e),this.num=t,this.unit=n,this.num=t,this.unit=n,Number.isNaN(t)&&(this.unit=""),n!==""&&!vde.test(n)&&(this.num=NaN,this.unit=""),wde.includes(n)&&(this.num=Ade(t,n),this.unit="px")}return gde(e,[{key:"add",value:function(n){return this.unit!==n.unit?new e(NaN,""):new e(this.num+n.num,this.unit)}},{key:"subtract",value:function(n){return this.unit!==n.unit?new e(NaN,""):new e(this.num-n.num,this.unit)}},{key:"multiply",value:function(n){return this.unit!==""&&n.unit!==""&&this.unit!==n.unit?new e(NaN,""):new e(this.num*n.num,this.unit||n.unit)}},{key:"divide",value:function(n){return this.unit!==""&&n.unit!==""&&this.unit!==n.unit?new e(NaN,""):new e(this.num/n.num,this.unit||n.unit)}},{key:"toString",value:function(){return"".concat(this.num).concat(this.unit)}},{key:"isNaN",value:function(){return Number.isNaN(this.num)}}],[{key:"parse",value:function(n){var i,a=(i=bde.exec(n))!==null&&i!==void 0?i:[],s=Yh(a,3),o=s[1],l=s[2];return new e(parseFloat(o),l??"")}}])}();function LL(e){if(e.includes(Bo))return Bo;for(var t=e;t.includes("*")||t.includes("/");){var n,i=(n=AI.exec(t))!==null&&n!==void 0?n:[],a=Yh(i,4),s=a[1],o=a[2],l=a[3],c=am.parse(s??""),d=am.parse(l??""),u=o==="*"?c.multiply(d):c.divide(d);if(u.isNaN())return Bo;t=t.replace(AI,u.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var p,m=(p=jI.exec(t))!==null&&p!==void 0?p:[],f=Yh(m,4),x=f[1],h=f[2],g=f[3],y=am.parse(x??""),v=am.parse(g??""),b=h==="+"?y.add(v):y.subtract(v);if(b.isNaN())return Bo;t=t.replace(jI,b.toString())}return t}var kI=/\(([^()]*)\)/;function jde(e){for(var t=e;t.includes("(");){var n=kI.exec(t),i=Yh(n,2),a=i[1];t=t.replace(kI,LL(a))}return t}function kde(e){var t=e.replace(/\s+/g,"");return t=jde(t),t=LL(t),t}function Nde(e){try{return kde(e)}catch{return Bo}}function my(e){var t=Nde(e.slice(5,-1));return t===Bo?"":t}var Ide=["x","y","lineHeight","capHeight","scaleToFit","textAnchor","verticalAnchor","fill"],Sde=["dx","dy","angle","className","breakAll"];function $b(){return $b=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},$b.apply(this,arguments)}function NI(e,t){if(e==null)return{};var n=Cde(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function Cde(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function II(e,t){return Tde(e)||Pde(e,t)||_de(e,t)||Ede()}function Ede(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
514In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _de(e,t){if(e){if(typeof e=="string")return SI(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return SI(e,t)}}function SI(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function Pde(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function Tde(e){if(Array.isArray(e))return e}var FL=/[ \f\n\r\t\v\u2028\u2029]+/,BL=function(t){var n=t.children,i=t.breakAll,a=t.style;try{var s=[];Ke(n)||(i?s=n.toString().split(""):s=n.toString().split(FL));var o=s.map(function(c){return{word:c,width:Ad(c,a).width}}),l=i?0:Ad(" ",a).width;return{wordsWithComputedWidth:o,spaceWidth:l}}catch{return null}},Dde=function(t,n,i,a,s){var o=t.maxLines,l=t.children,c=t.style,d=t.breakAll,u=ae(o),p=l,m=function(){var L=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];return L.reduce(function(U,W){var B=W.word,$=W.width,z=U[U.length-1];if(z&&(a==null||s||z.width+$+i<Number(a)))z.words.push(B),z.width+=$+i;else{var Q={words:[B],width:$};U.push(Q)}return U},[])},f=m(n),x=function(L){return L.reduce(function(U,W){return U.width>W.width?U:W})};if(!u)return f;for(var h="…",g=function(L){var U=p.slice(0,L),W=BL({breakAll:d,style:c,children:U+h}).wordsWithComputedWidth,B=m(W),$=B.length>o||x(B).width>Number(a);return[$,B]},y=0,v=p.length-1,b=0,A;y<=v&&b<=p.length-1;){var w=Math.floor((y+v)/2),k=w-1,N=g(k),I=II(N,2),C=I[0],O=I[1],_=g(w),D=II(_,1),G=D[0];if(!C&&!G&&(y=w+1),C&&G&&(v=w-1),!C&&G){A=O;break}b++}return A||f},CI=function(t){var n=Ke(t)?[]:t.toString().split(FL);return[{words:n}]},Ode=function(t){var n=t.width,i=t.scaleToFit,a=t.children,s=t.style,o=t.breakAll,l=t.maxLines;if((n||i)&&!Ba.isSsr){var c,d,u=BL({breakAll:o,children:a,style:s});if(u){var p=u.wordsWithComputedWidth,m=u.spaceWidth;c=p,d=m}else return CI(a);return Dde({breakAll:o,children:a,maxLines:l,style:s},c,d,n,i)}return CI(a)},EI="#808080",Qh=function(t){var n=t.x,i=n===void 0?0:n,a=t.y,s=a===void 0?0:a,o=t.lineHeight,l=o===void 0?"1em":o,c=t.capHeight,d=c===void 0?"0.71em":c,u=t.scaleToFit,p=u===void 0?!1:u,m=t.textAnchor,f=m===void 0?"start":m,x=t.verticalAnchor,h=x===void 0?"end":x,g=t.fill,y=g===void 0?EI:g,v=NI(t,Ide),b=j.useMemo(function(){return Ode({breakAll:v.breakAll,children:v.children,maxLines:v.maxLines,scaleToFit:p,style:v.style,width:v.width})},[v.breakAll,v.children,v.maxLines,p,v.style,v.width]),A=v.dx,w=v.dy,k=v.angle,N=v.className,I=v.breakAll,C=NI(v,Sde);
514if(!Ht(i)||!Ht(s))return null;var O=i+(ae(A)?A:0),_=s+(ae(w)?w:0),D;switch(h){case"start":D=my("calc(".concat(d,")"));break;case"middle":D=my("calc(".concat((b.length-1)/2," * -").concat(l," + (").concat(d," / 2))"));break;default:D=my("calc(".concat(b.length-1," * -").concat(l,")"));break}var G=[];if(p){var P=b[0].width,L=v.width;G.push("scale(".concat((ae(L)?L/P:1)/P,")"))}return k&&G.push("rotate(".concat(k,", ").concat(O,", ").concat(_,")")),G.length&&(C.transform=G.join(" ")),F.createElement("text",$b({},Ve(C,!0),{x:O,y:_,className:Ge("recharts-text",N),textAnchor:f,fill:y.includes("url")?EI:y}),b.map(function(U,W){var B=U.words.join(I?"":" ");return F.createElement("tspan",{x:O,dy:W===0?D:l,key:"".concat(B,"-").concat(W)},B)}))};function $a(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function Mde(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function G1(e){let t,n,i;e.length!==2?(t=$a,n=(l,c)=>$a(e(l),c),i=(l,c)=>e(l)-c):(t=e===$a||e===Mde?e:Rde,n=e,i=e);function a(l,c,d=0,u=l.length){if(d<u){if(t(c,c)!==0)return u;do{const p=d+u>>>1;n(l[p],c)<0?d=p+1:u=p}while(d<u)}return d}function s(l,c,d=0,u=l.length){if(d<u){if(t(c,c)!==0)return u;do{const p=d+u>>>1;n(l[p],c)<=0?d=p+1:u=p}while(d<u)}return d}function o(l,c,d=0,u=l.length){const p=a(l,c,d,u-1);return p>d&&i(l[p-1],c)>-i(l[p],c)?p-1:p}return{left:a,center:o,right:s}}function Rde(){return 0}function $L(e){return e===null?NaN:+e}function*Lde(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const Fde=G1($a),pp=Fde.right;G1($L).center;class _I extends Map{constructor(t,n=Ude){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[i,a]of t)this.set(i,a)}get(t){return super.get(PI(this,t))}has(t){return super.has(PI(this,t))}set(t,n){return super.set(Bde(this,t),n)}delete(t){return super.delete($de(this,t))}}function PI({_intern:e,_key:t},n){const i=t(n);return e.has(i)?e.get(i):n}function Bde({_intern:e,_key:t},n){const i=t(n);return e.has(i)?e.get(i):(e.set(i,n),n)}function $de({_intern:e,_key:t},n){const i=t(n);return e.has(i)&&(n=e.get(i),e.delete(i)),n}function Ude(e){return e!==null&&typeof e=="object"?e.valueOf():e}function qde(e=$a){if(e===$a)return UL;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const i=e(t,n);return i||i===0?i:(e(n,n)===0)-(e(t,t)===0)}}function UL(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}const Gde=Math.sqrt(50),Hde=Math.sqrt(10),zde=Math.sqrt(2);function Xh(e,t,n){const i=(t-e)/Math.max(0,n),a=Math.floor(Math.log10(i)),s=i/Math.pow(10,a),o=s>=Gde?10:s>=Hde?5:s>=zde?2:1;let l,c,d;return a<0?(d=Math.pow(10,-a)/o,l=Math.round(e*d),c=Math.round(t*d),l/d<e&&++l,c/d>t&&--c,d=-d):(d=Math.pow(10,a)*o,l=Math.round(e/d),c=Math.round(t/d),l*d<e&&++l,c*d>t&&--c),c<l&&.5<=n&&n<2?Xh(e,t,n*2):[l,c,d]}function Ub(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];const i=t<e,[a,s,o]=i?Xh(t,e,n):Xh(e,t,n);if(!(s>=a))return[];const l=s-a+1,c=new Array(l);if(i)if(o<0)for(let d=0;d<l;++d)c[d]=(s-d)/-o;else for(let d=0;d<l;++d)c[d]=(s-d)*o;else if(o<0)for(let d=0;d<l;++d)c[d]=(a+d)/-o;else for(let d=0;d<l;++d)c[d]=(a+d)*o;return c}function qb(e,t,n){return t=+t,e=+e,n=+n,Xh(e,t,n)[2]}function Gb(e,t,n){t=+t,e=+e,n=+n;const i=t<e,a=i?qb(t,e,n):qb(e,t,n);return(i?-1:1)*(a<0?1/-a:a)}function TI(e,t){let n;for(const i of e)i!=null&&(n<i||n===void 0&&i>=i)&&(n=i);return n}function DI(e,t){let n;for(const i of e)i!=null&&(n>i||n===void 0&&i>=i)&&(n=i);return n}function qL(e,t,n=0,i=1/0,a){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),i=Math.floor(Math.min(e.length-1,i)),!(n<=t&&t<=i))return e;for(a=a===void 0?UL:qde(a);i>n;){if(i-n>600){const c=i-n+1,d=t-n+1,u=Math.log(c),p=.5*Math.exp(2*u/3),m=.5*Math.sqrt(u*p*(c-p)/c)*(d-c/2<0?-1:1),f=Math.max(n,Math.floor(t-d*p/c+m)),x=Math.min(i,Math.floor(t+(c-d)*p/c+m));qL(e,t,f,x,a)}const s=e[t];let o=n,l=i;for(Uc(e,n,t),a(e[i],s)>0&&Uc(e,n,i);o<l;){for(Uc(e,o,l),++o,--l;a(e[o],s)<0;)++o;for(;a(e[l],s)>0;)--l}a(e[n],s)===0?Uc(e,n,l):(++l,Uc(e,l,i)),l<=t&&(n=l+1),t<=l&&(i=l-1)}return e}function Uc(e,t,n){const i=e[t];e[t]=e[n],e[n]=i}function Wde(e,t,n){if(e=Float64Array.from(Lde(e)),!(!(i=e.length)||isNaN(t=+t))){if(t<=0||i<2)return DI(e);if(t>=1)return TI(e);var i,a=(i-1)*t,s=Math.floor(a),o=TI(qL(e,s).subarray(0,s+1)),l=DI(e.subarray(s+1));return o+(l-o)*(a-s)}}function Vde(e,t,n=$L){if(!(!(i=e.length)||isNaN(t=+t))){if(t<=0||i<2)return+n(e[0],0,e);if(t>=1)return+n(e[i-1],i-1,e);var i,a=(i-1)*t,s=Math.floor(a),o=+n(e[s],s,e),l=+n(e[s+1],s+1,e);return o+(l-o)*(a-s)}}function Kde(e,t,n){e=+e,t=+t,n=(a=arguments.length)<2?(t=e,e=0,1):a<3?1:+n;for(var i=-1,a=Math.max(0,Math.ceil((t-e)/n))|0,s=new Array(a);++i<a;)s[i]=e+i*n;return s}function br(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}function ta(e,t){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof t=="function"?this.interpolator(t):this.range(t);break}}return this}
vendor: 6,685 bytes, line 514
514const Hb=Symbol("implicit");function H1(){var e=new _I,t=[],n=[],i=Hb;function a(s){let o=e.get(s);if(o===void 0){if(i!==Hb)return i;e.set(s,o=t.push(s)-1)}return n[o%n.length]}return a.domain=function(s){if(!arguments.length)return t.slice();t=[],e=new _I;for(const o of s)e.has(o)||e.set(o,t.push(o)-1);return a},a.range=function(s){return arguments.length?(n=Array.from(s),a):n.slice()},a.unknown=function(s){return arguments.length?(i=s,a):i},a.copy=function(){return H1(t,n).unknown(i)},br.apply(a,arguments),a}function gu(){var e=H1().unknown(void 0),t=e.domain,n=e.range,i=0,a=1,s,o,l=!1,c=0,d=0,u=.5;delete e.unknown;function p(){var m=t().length,f=a<i,x=f?a:i,h=f?i:a;s=(h-x)/Math.max(1,m-c+d*2),l&&(s=Math.floor(s)),x+=(h-x-s*(m-c))*u,o=s*(1-c),l&&(x=Math.round(x),o=Math.round(o));var g=Kde(m).map(function(y){return x+s*y});return n(f?g.reverse():g)}return e.domain=function(m){return arguments.length?(t(m),p()):t()},e.range=function(m){return arguments.length?([i,a]=m,i=+i,a=+a,p()):[i,a]},e.rangeRound=function(m){return[i,a]=m,i=+i,a=+a,l=!0,p()},e.bandwidth=function(){return o},e.step=function(){return s},e.round=function(m){return arguments.length?(l=!!m,p()):l},e.padding=function(m){return arguments.length?(c=Math.min(1,d=+m),p()):c},e.paddingInner=function(m){return arguments.length?(c=Math.min(1,m),p()):c},e.paddingOuter=function(m){return arguments.length?(d=+m,p()):d},e.align=function(m){return arguments.length?(u=Math.max(0,Math.min(1,m)),p()):u},e.copy=function(){return gu(t(),[i,a]).round(l).paddingInner(c).paddingOuter(d).align(u)},br.apply(p(),arguments)}function GL(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return GL(t())},e}function jd(){return GL(gu.apply(null,arguments).paddingInner(1))}function z1(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function HL(e,t){var n=Object.create(e.prototype);for(var i in t)n[i]=t[i];return n}function mp(){}var xu=.7,Zh=1/xu,il="\\s*([+-]?\\d+)\\s*",yu="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",di="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Yde=/^#([0-9a-f]{3,8})$/,Qde=new RegExp(`^rgb\\(${il},${il},${il}\\)$`),Xde=new RegExp(`^rgb\\(${di},${di},${di}\\)$`),Zde=new RegExp(`^rgba\\(${il},${il},${il},${yu}\\)$`),Jde=new RegExp(`^rgba\\(${di},${di},${di},${yu}\\)$`),eue=new RegExp(`^hsl\\(${yu},${di},${di}\\)$`),tue=new RegExp(`^hsla\\(${yu},${di},${di},${yu}\\)$`),OI={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};z1(mp,vu,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:MI,formatHex:MI,formatHex8:nue,formatHsl:rue,formatRgb:RI,toString:RI});function MI(){return this.rgb().formatHex()}function nue(){return this.rgb().formatHex8()}function rue(){return zL(this).formatHsl()}function RI(){return this.rgb().formatRgb()}function vu(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=Yde.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?LI(t):n===3?new Dn(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?sm(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?sm(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Qde.exec(e))?new Dn(t[1],t[2],t[3],1):(t=Xde.exec(e))?new Dn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Zde.exec(e))?sm(t[1],t[2],t[3],t[4]):(t=Jde.exec(e))?sm(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=eue.exec(e))?$I(t[1],t[2]/100,t[3]/100,1):(t=tue.exec(e))?$I(t[1],t[2]/100,t[3]/100,t[4]):OI.hasOwnProperty(e)?LI(OI[e]):e==="transparent"?new Dn(NaN,NaN,NaN,0):null}function LI(e){return new Dn(e>>16&255,e>>8&255,e&255,1)}function sm(e,t,n,i){return i<=0&&(e=t=n=NaN),new Dn(e,t,n,i)}function iue(e){return e instanceof mp||(e=vu(e)),e?(e=e.rgb(),new Dn(e.r,e.g,e.b,e.opacity)):new Dn}function zb(e,t,n,i){return arguments.length===1?iue(e):new Dn(e,t,n,i??1)}function Dn(e,t,n,i){this.r=+e,this.g=+t,this.b=+n,this.opacity=+i}z1(Dn,zb,HL(mp,{brighter(e){return e=e==null?Zh:Math.pow(Zh,e),new Dn(this.r*e,this.g*e,this.b*e,this.opacity)}
vendor: 13,726 bytes, line 514
514,darker(e){return e=e==null?xu:Math.pow(xu,e),new Dn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Dn(Fs(this.r),Fs(this.g),Fs(this.b),Jh(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:FI,formatHex:FI,formatHex8:aue,formatRgb:BI,toString:BI}));function FI(){return`#${vs(this.r)}${vs(this.g)}${vs(this.b)}`}function aue(){return`#${vs(this.r)}${vs(this.g)}${vs(this.b)}${vs((isNaN(this.opacity)?1:this.opacity)*255)}`}function BI(){const e=Jh(this.opacity);return`${e===1?"rgb(":"rgba("}${Fs(this.r)}, ${Fs(this.g)}, ${Fs(this.b)}${e===1?")":`, ${e})`}`}function Jh(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Fs(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function vs(e){return e=Fs(e),(e<16?"0":"")+e.toString(16)}function $I(e,t,n,i){return i<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Tr(e,t,n,i)}function zL(e){if(e instanceof Tr)return new Tr(e.h,e.s,e.l,e.opacity);if(e instanceof mp||(e=vu(e)),!e)return new Tr;if(e instanceof Tr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,i=e.b/255,a=Math.min(t,n,i),s=Math.max(t,n,i),o=NaN,l=s-a,c=(s+a)/2;return l?(t===s?o=(n-i)/l+(n<i)*6:n===s?o=(i-t)/l+2:o=(t-n)/l+4,l/=c<.5?s+a:2-s-a,o*=60):l=c>0&&c<1?0:o,new Tr(o,l,c,e.opacity)}function sue(e,t,n,i){return arguments.length===1?zL(e):new Tr(e,t,n,i??1)}function Tr(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}z1(Tr,sue,HL(mp,{brighter(e){return e=e==null?Zh:Math.pow(Zh,e),new Tr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?xu:Math.pow(xu,e),new Tr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*t,a=2*n-i;return new Dn(hy(e>=240?e-240:e+120,a,i),hy(e,a,i),hy(e<120?e+240:e-120,a,i),this.opacity)},clamp(){return new Tr(UI(this.h),om(this.s),om(this.l),Jh(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Jh(this.opacity);return`${e===1?"hsl(":"hsla("}${UI(this.h)}, ${om(this.s)*100}%, ${om(this.l)*100}%${e===1?")":`, ${e})`}`}}));function UI(e){return e=(e||0)%360,e<0?e+360:e}function om(e){return Math.max(0,Math.min(1,e||0))}function hy(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const W1=e=>()=>e;function oue(e,t){return function(n){return e+n*t}}function lue(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(i){return Math.pow(e+i*t,n)}}function cue(e){return(e=+e)==1?WL:function(t,n){return n-t?lue(t,n,e):W1(isNaN(t)?n:t)}}function WL(e,t){var n=t-e;return n?oue(e,n):W1(isNaN(e)?t:e)}const qI=function e(t){var n=cue(t);function i(a,s){var o=n((a=zb(a)).r,(s=zb(s)).r),l=n(a.g,s.g),c=n(a.b,s.b),d=WL(a.opacity,s.opacity);return function(u){return a.r=o(u),a.g=l(u),a.b=c(u),a.opacity=d(u),a+""}}return i.gamma=e,i}(1);function due(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,i=t.slice(),a;return function(s){for(a=0;a<n;++a)i[a]=e[a]*(1-s)+t[a]*s;return i}}function uue(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function pue(e,t){var n=t?t.length:0,i=e?Math.min(n,e.length):0,a=new Array(i),s=new Array(n),o;for(o=0;o<i;++o)a[o]=xc(e[o],t[o]);for(;o<n;++o)s[o]=t[o];return function(l){for(o=0;o<i;++o)s[o]=a[o](l);return s}}function mue(e,t){var n=new Date;return e=+e,t=+t,function(i){return n.setTime(e*(1-i)+t*i),n}}function ef(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function hue(e,t){var n={},i={},a;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(a in t)a in e?n[a]=xc(e[a],t[a]):i[a]=t[a];return function(s){for(a in n)i[a]=n[a](s);return i}}var Wb=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,fy=new RegExp(Wb.source,"g");function fue(e){return function(){return e}}function gue(e){return function(t){return e(t)+""}}function xue(e,t){var n=Wb.lastIndex=fy.lastIndex=0,i,a,s,o=-1,l=[],c=[];for(e=e+"",t=t+"";(i=Wb.exec(e))&&(a=fy.exec(t));)(s=a.index)>n&&(s=t.slice(n,s),l[o]?l[o]+=s:l[++o]=s),(i=i[0])===(a=a[0])?l[o]?l[o]+=a:l[++o]=a:(l[++o]=null,c.push({i:o,x:ef(i,a)})),n=fy.lastIndex;return n<t.length&&(s=t.slice(n),l[o]?l[o]+=s:l[++o]=s),l.length<2?c[0]?gue(c[0].x):fue(t):(t=c.length,function(d){for(var u=0,p;u<t;++u)l[(p=c[u]).i]=p.x(d);return l.join("")})}function xc(e,t){var n=typeof t,i;return t==null||n==="boolean"?W1(t):(n==="number"?ef:n==="string"?(i=vu(t))?(t=i,qI):xue:t instanceof vu?qI:t instanceof Date?mue:uue(t)?due:Array.isArray(t)?pue:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?hue:ef)(e,t)}function V1(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}function yue(e,t){t===void 0&&(t=e,e=xc);for(var n=0,i=t.length-1,a=t[0],s=new Array(i<0?0:i);n<i;)s[n]=e(a,a=t[++n]);return function(o){var l=Math.max(0,Math.min(i-1,Math.floor(o*=i)));return s[l](o-l)}}function vue(e){return function(){return e}}function tf(e){return+e}var GI=[0,1];function kn(e){return e}function Vb(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:vue(isNaN(t)?NaN:.5)}function bue(e,t){var n;return e>t&&(n=e,e=t,t=n),function(i){return Math.max(e,Math.min(t,i))}}function wue(e,t,n){var i=e[0],a=e[1],s=t[0],o=t[1];return a<i?(i=Vb(a,i),s=n(o,s)):(i=Vb(i,a),s=n(s,o)),function(l){return s(i(l))}}function Aue(e,t,n){var i=Math.min(e.length,t.length)-1,a=new Array(i),s=new Array(i),o=-1;for(e[i]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++o<i;)a[o]=Vb(e[o],e[o+1]),s[o]=n(t[o],t[o+1]);return function(l){var c=pp(e,l,1,i)-1;return s[c](a[c](l))}}function hp(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function Og(){var e=GI,t=GI,n=xc,i,a,s,o=kn,l,c,d;function u(){var m=Math.min(e.length,t.length);return o!==kn&&(o=bue(e[0],e[m-1])),l=m>2?Aue:wue,c=d=null,p}function p(m){return m==null||isNaN(m=+m)?s:(c||(c=l(e.map(i),t,n)))(i(o(m)))}return p.invert=function(m){return o(a((d||(d=l(t,e.map(i),ef)))(m)))},p.domain=function(m){return arguments.length?(e=Array.from(m,tf),u()):e.slice()},p.range=function(m){return arguments.length?(t=Array.from(m),u()):t.slice()},p.rangeRound=function(m){return t=Array.from(m),n=V1,u()},p.clamp=function(m){return arguments.length?(o=m?!0:kn,u()):o!==kn},p.interpolate=function(m){return arguments.length?(n=m,u()):n},p.unknown=function(m){return arguments.length?(s=m,p):s},function(m,f){return i=m,a=f,u()}}function K1(){return Og()(kn,kn)}function jue(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function nf(e,t){if((n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"))<0)return null;var n,i=e.slice(0,n);return[i.length>1?i[0]+i.slice(2):i,+e.slice(n+1)]}function Ll(e){return e=nf(Math.abs(e)),e?e[1]:NaN}function kue(e,t){return function(n,i){for(var a=n.length,s=[],o=0,l=e[0],c=0;a>0&&l>0&&(c+l+1>i&&(l=Math.max(1,i-c)),s.push(n.substring(a-=l,a+l)),!((c+=l+1)>i));)l=e[o=(o+1)%e.length];return s.reverse().join(t)}}function Nue(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var Iue=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function bu(e){if(!(t=Iue.exec(e)))throw new Error("invalid format: "+e);var t;return new Y1({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}bu.prototype=Y1.prototype;function Y1(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}Y1.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Sue(e){e:for(var t=e.length,n=1,i=-1,a;n<t;++n)switch(e[n]){case".":i=a=n;break;case"0":i===0&&(i=n),a=n;break;default:if(!+e[n])break e;i>0&&(i=0);break}return i>0?e.slice(0,i)+e.slice(a+1):e}var VL;function Cue(e,t){var n=nf(e,t);if(!n)return e+"";var i=n[0],a=n[1],s=a-(VL=Math.max(-8,Math.min(8,Math.floor(a/3)))*3)+1,o=i.length;return s===o?i:s>o?i+new Array(s-o+1).join("0"):s>0?i.slice(0,s)+"."+i.slice(s):"0."+new Array(1-s).join("0")+nf(e,Math.max(0,t+s-1))[0]}function HI(e,t){var n=nf(e,t);if(!n)return e+"";var i=n[0],a=n[1];return a<0?"0."+new Array(-a).join("0")+i:i.length>a+1?i.slice(0,a+1)+"."+i.slice(a+1):i+new Array(a-i.length+2).join("0")}const zI={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:jue,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>HI(e*100,t),r:HI,s:Cue,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function WI(e){return e}var VI=Array.prototype.map,KI=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Eue(e){var t=e.grouping===void 0||e.thousands===void 0?WI:kue(VI.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",i=e.currency===void 0?"":e.currency[1]+"",a=e.decimal===void 0?".":e.decimal+"",s=e.numerals===void 0?WI:Nue(VI.call(e.numerals,String)),o=e.percent===void 0?"%":e.percent+"",l=e.minus===void 0?"−":e.minus+"",c=e.nan===void 0?"NaN":e.nan+"";function d(p){p=bu(p);var m=p.fill,f=p.align,x=p.sign,h=p.symbol,g=p.zero,y=p.width,v=p.comma,b=p.precision,A=p.trim,w=p.type;w==="n"?(v=!0,w="g"):zI[w]||(b===void 0&&(b=12),A=!0,w="g"),(g||m==="0"&&f==="=")&&(g=!0,m="0",f="=");var k=h==="$"?n:h==="#"&&/[boxX]/.test(w)?"0"+w.toLowerCase():"",N=h==="$"?i:/[%p]/.test(w)?o:"",I=zI[w],C=/[defgprs%]/.test(w);b=b===void 0?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,b)):Math.max(0,Math.min(20,b));function O(_){var D=k,G=N,P,L,U;if(w==="c")G=I(_)+G,_="";else{_=+_;var W=_<0||1/_<0;if(_=isNaN(_)?c:I(Math.abs(_),b),A&&(_=Sue(_)),W&&+_==0&&x!=="+"&&(W=!1),D=(W?x==="("?x:l:x==="-"||x==="("?"":x)+D,G=(w==="s"?KI[8+VL/3]:"")+G+(W&&x==="("?")":""),C){for(P=-1,L=_.length;++P<L;)if(U=_.charCodeAt(P),48>U||U>57){G=(U===46?a+_.slice(P+1):_.slice(P))+G,_=_.slice(0,P);break}}}v&&!g&&(_=t(_,1/0));var B=D.length+_.length+G.length,$=B<y?new Array(y-B+1).join(m):"";switch(v&&g&&(_=t($+_,$.length?y-G.length:1/0),$=""),f){case"<":_=D+_+G+$;break;case"=":_=D+$+_+G;break;case"^":_=$.slice(0,B=$.length>>1)+D+_+G+$.slice(B);break;default:_=$+D+_+G;break}return s(_)}return O.toString=function(){return p+""},O}function u(p,m){var f=d((p=bu(p),p.type="f",p)),x=Math.max(-8,Math.min(8,Math.floor(Ll(m)/3)))*3,h=Math.pow(10,-x),g=KI[8+x/3];return function(y){return f(h*y)+g}}return{format:d,formatPrefix:u}}var lm,Q1,KL;_ue({thousands:",",grouping:[3],currency:["$",""]});function _ue(e){return lm=Eue(e),Q1=lm.format,KL=lm.formatPrefix,lm}function Pue(e){return Math.max(0,-Ll(Math.abs(e)))}function Tue(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ll(t)/3)))*3-Ll(Math.abs(e)))}function Due(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Ll(t)-Ll(e))+1}function YL(e,t,n,i){var a=Gb(e,t,n),s;switch(i=bu(i??",f"),i.type){case"s":{var o=Math.max(Math.abs(e),Math.abs(t));return i.precision==null&&!isNaN(s=Tue(a,o))&&(i.precision=s),KL(i,o)}case"":case"e":case"g":case"p":case"r":{i.precision==null&&!isNaN(s=Due(a,Math.max(Math.abs(e),Math.abs(t))))&&(i.precision=s-(i.type==="e"));break}case"f":case"%":{i.precision==null&&!isNaN(s=Pue(a))&&(i.precision=s-(i.type==="%")*2);break}}return Q1(i)}function es(e){var t=e.domain;return e.ticks=function(n){var i=t();return Ub(i[0],i[i.length-1],n??10)},e.tickFormat=function(n,i){var a=t();return YL(a[0],a[a.length-1],n??10,i)},e.nice=function(n){n==null&&(n=10);var i=t(),a=0,s=i.length-1,o=i[a],l=i[s],c,d,u=10;for(l<o&&(d=o,o=l,l=d,d=a,a=s,s=d);u-- >0;){if(d=qb(o,l,n),d===c)return i[a]=o,i[s]=l,t(i);if(d>0)o=Math.floor(o/d)*d,l=Math.ceil(l/d)*d;else if(d<0)o=Math.ceil(o*d)/d,l=Math.floor(l*d)/d;else break;c=d}return e},e}function rf(){var e=K1();return e.copy=function(){return hp(e,rf())},br.apply(e,arguments),es(e)}function QL(e){var t;function n(i){return i==null||isNaN(i=+i)?t:i}return n.invert=n,n.domain=n.range=function(i){return arguments.length?(e=Array.from(i,tf),n):e.slice()},n.unknown=function(i){return arguments.length?(t=i,n):t},n.copy=function(){return QL(e).unknown(t)},e=arguments.length?Array.from(e,tf):[0,1],es(n)}function XL(e,t){e=e.slice();var n=0,i=e.length-1,a=e[n],s=e[i],o;return s<a&&(o=n,n=i,i=o,o=a,a=s,s=o),e[n]=t.floor(a),e[i]=t.ceil(s),e}function YI(e){return Math.log(e)}function QI(e){return Math.exp(e)}function Oue(e){return-Math.log(-e)}function Mue(e){return-Math.exp(-e)}function Rue(e){return isFinite(e)?+("1e"+e):e<0?0:e}function Lue(e){return e===10?Rue:e===Math.E?Math.exp:t=>Math.pow(e,t)}function Fue(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function XI(e){return(t,n)=>-e(-t,n)}function X1(e){const t=e(YI,QI),n=t.domain;let i=10,a,s;function o(){return a=Fue(i),s=Lue(i),n()[0]<0?(a=XI(a),s=XI(s),e(Oue,Mue)):e(YI,QI),t}return t.base=function(l){return arguments.length?(i=+l,o()):i},t.domain=function(l){return arguments.length?(n(l),o()):n()},t.ticks=l=>{const c=n();let d=c[0],u=c[c.length-1];const p=u<d;p&&([d,u]=[u,d]);let m=a(d),f=a(u),x,h;const g=l==null?10:+l;let y=[];if(!(i%1)&&f-m<g){if(m=Math.floor(m),f=Math.ceil(f),d>0){for(;m<=f;++m)for(x=1;x<i;
514++x)if(h=m<0?x/s(-m):x*s(m),!(h<d)){if(h>u)break;y.push(h)}}else for(;m<=f;++m)for(x=i-1;x>=1;--x)if(h=m>0?x/s(-m):x*s(m),!(h<d)){if(h>u)break;y.push(h)}y.length*2<g&&(y=Ub(d,u,g))}else y=Ub(m,f,Math.min(f-m,g)).map(s);return p?y.reverse():y},t.tickFormat=(l,c)=>{if(l==null&&(l=10),c==null&&(c=i===10?"s":","),typeof c!="function"&&(!(i%1)&&(c=bu(c)).precision==null&&(c.trim=!0),c=Q1(c)),l===1/0)return c;const d=Math.max(1,i*l/t.ticks().length);return u=>{let p=u/s(Math.round(a(u)));return p*i<i-.5&&(p*=i),p<=d?c(u):""}},t.nice=()=>n(XL(n(),{floor:l=>s(Math.floor(a(l))),ceil:l=>s(Math.ceil(a(l)))})),t}function ZL(){const e=X1(Og()).domain([1,10]);return e.copy=()=>hp(e,ZL()).base(e.base()),br.apply(e,arguments),e}function ZI(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function JI(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Z1(e){var t=1,n=e(ZI(t),JI(t));return n.constant=function(i){return arguments.length?e(ZI(t=+i),JI(t)):t},es(n)}function JL(){var e=Z1(Og());return e.copy=function(){return hp(e,JL()).constant(e.constant())},br.apply(e,arguments)}function e4(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function Bue(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function $ue(e){return e<0?-e*e:e*e}function J1(e){var t=e(kn,kn),n=1;function i(){return n===1?e(kn,kn):n===.5?e(Bue,$ue):e(e4(n),e4(1/n))}return t.exponent=function(a){return arguments.length?(n=+a,i()):n},es(t)}function eA(){var e=J1(Og());return e.copy=function(){return hp(e,eA()).exponent(e.exponent())},br.apply(e,arguments),e}function Uue(){return eA.apply(null,arguments).exponent(.5)}function t4(e){return Math.sign(e)*e*e}function que(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function e8(){var e=K1(),t=[0,1],n=!1,i;function a(s){var o=que(e(s));return isNaN(o)?i:n?Math.round(o):o}return a.invert=function(s){return e.invert(t4(s))},a.domain=function(s){return arguments.length?(e.domain(s),a):e.domain()},a.range=function(s){return arguments.length?(e.range((t=Array.from(s,tf)).map(t4)),a):t.slice()},a.rangeRound=function(s){return a.range(s).round(!0)},a.round=function(s){return arguments.length?(n=!!s,a):n},a.clamp=function(s){return arguments.length?(e.clamp(s),a):e.clamp()},a.unknown=function(s){return arguments.length?(i=s,a):i},a.copy=function(){return e8(e.domain(),t).round(n).clamp(e.clamp()).unknown(i)},br.apply(a,arguments),es(a)}function t8(){var e=[],t=[],n=[],i;function a(){var o=0,l=Math.max(1,t.length);for(n=new Array(l-1);++o<l;)n[o-1]=Vde(e,o/l);return s}function s(o){return o==null||isNaN(o=+o)?i:t[pp(n,o)]}return s.invertExtent=function(o){var l=t.indexOf(o);return l<0?[NaN,NaN]:[l>0?n[l-1]:e[0],l<n.length?n[l]:e[e.length-1]]},s.domain=function(o){if(!arguments.length)return e.slice();e=[];for(let l of o)l!=null&&!isNaN(l=+l)&&e.push(l);return e.sort($a),a()},s.range=function(o){return arguments.length?(t=Array.from(o),a()):t.slice()},s.unknown=function(o){return arguments.length?(i=o,s):i},s.quantiles=function(){return n.slice()},s.copy=function(){return t8().domain(e).range(t).unknown(i)},br.apply(s,arguments)}function n8(){var e=0,t=1,n=1,i=[.5],a=[0,1],s;function o(c){return c!=null&&c<=c?a[pp(i,c,0,n)]:s}function l(){var c=-1;for(i=new Array(n);++c<n;)i[c]=((c+1)*t-(c-n)*e)/(n+1);return o}return o.domain=function(c){return arguments.length?([e,t]=c,e=+e,t=+t,l()):[e,t]},o.range=function(c){return arguments.length?(n=(a=Array.from(c)).length-1,l()):a.slice()},o.invertExtent=function(c){var d=a.indexOf(c);return d<0?[NaN,NaN]:d<1?[e,i[0]]:d>=n?[i[n-1],t]:[i[d-1],i[d]]},o.unknown=function(c){return arguments.length&&(s=c),o},o.thresholds=function(){return i.slice()},o.copy=function(){return n8().domain([e,t]).range(a).unknown(s)},br.apply(es(o),arguments)}function r8(){var e=[.5],t=[0,1],n,i=1;function a(s){return s!=null&&s<=s?t[pp(e,s,0,i)]:n}return a.domain=function(s){return arguments.length?(e=Array.from(s),i=Math.min(e.length,t.length-1),a):e.slice()},a.range=function(s){return arguments.length?(t=Array.from(s),i=Math.min(e.length,t.length-1),a):t.slice()},a.invertExtent=function(s){var o=t.indexOf(s);return[e[o-1],e[o]]},a.unknown=function(s){return arguments.length?(n=s,a):n},a.copy=function(){return r8().domain(e).range(t).unknown(n)},br.apply(a,arguments)}const gy=new Date,xy=new Date;function Wt(e,t,n,i){function a(s){return e(s=arguments.length===0?new Date:new Date(+s)),s}return a.floor=s=>(e(s=new Date(+s)),s),a.ceil=s=>(e(s=new Date(s-1)),t(s,1),e(s),s),a.round=s=>{const o=a(s),l=a.ceil(s);return s-o<l-s?o:l},a.offset=(s,o)=>(t(s=new Date(+s),o==null?1:Math.floor(o)),s),a.range=(s,o,l)=>{const c=[];if(s=a.ceil(s),l=l==null?1:Math.floor(l),!(s<o)||!(l>0))return c;let d;do c.push(d=new Date(+s)),t(s,l),e(s);while(d<s&&s<o);return c},a.filter=s=>Wt(o=>{if(o>=o)for(;e(o),!s(o);)o.setTime(o-1)},(o,l)=>{if(o>=o)if(l<0)for(;++l<=0;)for(;t(o,-1),!s(o););else for(;--l>=0;)for(;t(o,1),!s(o););}),n&&(a.count=(s,o)=>(gy.setTime(+s),xy.setTime(+o),e(gy),e(xy),Math.floor(n(gy,xy))),a.every=s=>(s=Math.floor(s),!isFinite(s)||!(s>0)?null:s>1?a.filter(i?o=>i(o)%s===0:o=>a.count(0,o)%s===0):a)),a}const af=Wt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);af.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Wt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):af);af.range;const Mi=1e3,pr=Mi*60,Ri=pr*60,Ki=Ri*24,tA=Ki*7,n4=Ki*30,yy=Ki*365,bs=Wt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*Mi)},(e,t)=>(t-e)/Mi,e=>e.getUTCSeconds());bs.range;const nA=Wt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mi)},(e,t)=>{e.setTime(+e+t*pr)},(e,t)=>(t-e)/pr,e=>e.getMinutes());nA.range;const rA=Wt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*pr)},(e,t)=>(t-e)/pr,e=>e.getUTCMinutes());rA.range;const iA=Wt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Mi-e.getMinutes()*pr)},(e,t)=>{e.setTime(+e+t*Ri)},(e,t)=>(t-e)/Ri,e=>e.getHours());iA.range;const aA=Wt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*Ri)},(e,t)=>(t-e)/Ri,e=>e.getUTCHours());aA.range;const fp=Wt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*pr)/Ki,e=>e.getDate()-1);fp.range;const Mg=Wt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ki,e=>e.getUTCDate()-1);Mg.range;const i8=Wt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ki,e=>Math.floor(e/Ki));i8.range;function ao(e){return Wt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*pr)/tA)}const Rg=ao(0),sf=ao(1),Gue=ao(2),Hue=ao(3),Fl=ao(4),zue=ao(5),Wue=ao(6);Rg.range;sf.range;Gue.range;Hue.range;Fl.range;zue.range;Wue.range;function so(e){return Wt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/tA)}const Lg=so(0),of=so(1),Vue=so(2),Kue=so(3),Bl=so(4),Yue=so(5),Que=so(6);Lg.range;of.range;Vue.range;Kue.range;Bl.range;Yue.range;Que.range;const sA=Wt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());sA.range;
vendor: 10,566 bytes, line 514
514const oA=Wt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());oA.range;const Yi=Wt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Yi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Wt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});Yi.range;const Qi=Wt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());Qi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Wt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});Qi.range;function a8(e,t,n,i,a,s){const o=[[bs,1,Mi],[bs,5,5*Mi],[bs,15,15*Mi],[bs,30,30*Mi],[s,1,pr],[s,5,5*pr],[s,15,15*pr],[s,30,30*pr],[a,1,Ri],[a,3,3*Ri],[a,6,6*Ri],[a,12,12*Ri],[i,1,Ki],[i,2,2*Ki],[n,1,tA],[t,1,n4],[t,3,3*n4],[e,1,yy]];function l(d,u,p){const m=u<d;m&&([d,u]=[u,d]);const f=p&&typeof p.range=="function"?p:c(d,u,p),x=f?f.range(d,+u+1):[];return m?x.reverse():x}function c(d,u,p){const m=Math.abs(u-d)/p,f=G1(([,,g])=>g).right(o,m);if(f===o.length)return e.every(Gb(d/yy,u/yy,p));if(f===0)return af.every(Math.max(Gb(d,u,p),1));const[x,h]=o[m/o[f-1][2]<o[f][2]/m?f-1:f];return x.every(h)}return[l,c]}const[Xue,Zue]=a8(Qi,oA,Lg,i8,aA,rA),[Jue,epe]=a8(Yi,sA,Rg,fp,iA,nA);function vy(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function by(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function qc(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function tpe(e){var t=e.dateTime,n=e.date,i=e.time,a=e.periods,s=e.days,o=e.shortDays,l=e.months,c=e.shortMonths,d=Gc(a),u=Hc(a),p=Gc(s),m=Hc(s),f=Gc(o),x=Hc(o),h=Gc(l),g=Hc(l),y=Gc(c),v=Hc(c),b={a:W,A:B,b:$,B:z,c:null,d:l4,e:l4,f:kpe,g:Ope,G:Rpe,H:wpe,I:Ape,j:jpe,L:s8,m:Npe,M:Ipe,p:Q,q:V,Q:u4,s:p4,S:Spe,u:Cpe,U:Epe,V:_pe,w:Ppe,W:Tpe,x:null,X:null,y:Dpe,Y:Mpe,Z:Lpe,"%":d4},A={a:ne,A:Se,b:He,B:at,c:null,d:c4,e:c4,f:Upe,g:Xpe,G:Jpe,H:Fpe,I:Bpe,j:$pe,L:l8,m:qpe,M:Gpe,p:tn,q:Et,Q:u4,s:p4,S:Hpe,u:zpe,U:Wpe,V:Vpe,w:Kpe,W:Ype,x:null,X:null,y:Qpe,Y:Zpe,Z:eme,"%":d4},w={a:O,A:_,b:D,B:G,c:P,d:s4,e:s4,f:xpe,g:a4,G:i4,H:o4,I:o4,j:mpe,L:gpe,m:ppe,M:hpe,p:C,q:upe,Q:vpe,s:bpe,S:fpe,u:spe,U:ope,V:lpe,w:ape,W:cpe,x:L,X:U,y:a4,Y:i4,Z:dpe,"%":ype};b.x=k(n,b),b.X=k(i,b),b.c=k(t,b),A.x=k(n,A),A.X=k(i,A),A.c=k(t,A);function k(re,ve){return function(fe){var Y=[],E=-1,ee=0,pe=re.length,_e,X,Te;for(fe instanceof Date||(fe=new Date(+fe));++E<pe;)re.charCodeAt(E)===37&&(Y.push(re.slice(ee,E)),(X=r4[_e=re.charAt(++E)])!=null?_e=re.charAt(++E):X=_e==="e"?" ":"0",(Te=ve[_e])&&(_e=Te(fe,X)),Y.push(_e),ee=E+1);return Y.push(re.slice(ee,E)),Y.join("")}}function N(re,ve){return function(fe){var Y=qc(1900,void 0,1),E=I(Y,re,fe+="",0),ee,pe;if(E!=fe.length)return null;if("Q"in Y)return new Date(Y.Q);if("s"in Y)return new Date(Y.s*1e3+("L"in Y?Y.L:0));if(ve&&!("Z"in Y)&&(Y.Z=0),"p"in Y&&(Y.H=Y.H%12+Y.p*12),Y.m===void 0&&(Y.m="q"in Y?Y.q:0),"V"in Y){if(Y.V<1||Y.V>53)return null;"w"in Y||(Y.w=1),"Z"in Y?(ee=by(qc(Y.y,0,1)),pe=ee.getUTCDay(),ee=pe>4||pe===0?of.ceil(ee):of(ee),ee=Mg.offset(ee,(Y.V-1)*7),Y.y=ee.getUTCFullYear(),Y.m=ee.getUTCMonth(),Y.d=ee.getUTCDate()+(Y.w+6)%7):(ee=vy(qc(Y.y,0,1)),pe=ee.getDay(),ee=pe>4||pe===0?sf.ceil(ee):sf(ee),ee=fp.offset(ee,(Y.V-1)*7),Y.y=ee.getFullYear(),Y.m=ee.getMonth(),Y.d=ee.getDate()+(Y.w+6)%7)}else("W"in Y||"U"in Y)&&("w"in Y||(Y.w="u"in Y?Y.u%7:"W"in Y?1:0),pe="Z"in Y?by(qc(Y.y,0,1)).getUTCDay():vy(qc(Y.y,0,1)).getDay(),Y.m=0,Y.d="W"in Y?(Y.w+6)%7+Y.W*7-(pe+5)%7:Y.w+Y.U*7-(pe+6)%7);return"Z"in Y?(Y.H+=Y.Z/100|0,Y.M+=Y.Z%100,by(Y)):vy(Y)}}function I(re,ve,fe,Y){for(var E=0,ee=ve.length,pe=fe.length,_e,X;E<ee;){if(Y>=pe)return-1;if(_e=ve.charCodeAt(E++),_e===37){if(_e=ve.charAt(E++),X=w[_e in r4?ve.charAt(E++):_e],!X||(Y=X(re,fe,Y))<0)return-1}else if(_e!=fe.charCodeAt(Y++))return-1}return Y}function C(re,ve,fe){var Y=d.exec(ve.slice(fe));return Y?(re.p=u.get(Y[0].toLowerCase()),fe+Y[0].length):-1}function O(re,ve,fe){var Y=f.exec(ve.slice(fe));return Y?(re.w=x.get(Y[0].toLowerCase()),fe+Y[0].length):-1}function _(re,ve,fe){var Y=p.exec(ve.slice(fe));return Y?(re.w=m.get(Y[0].toLowerCase()),fe+Y[0].length):-1}function D(re,ve,fe){var Y=y.exec(ve.slice(fe));return Y?(re.m=v.get(Y[0].toLowerCase()),fe+Y[0].length):-1}function G(re,ve,fe){var Y=h.exec(ve.slice(fe));return Y?(re.m=g.get(Y[0].toLowerCase()),fe+Y[0].length):-1}function P(re,ve,fe){return I(re,t,ve,fe)}function L(re,ve,fe){return I(re,n,ve,fe)}function U(re,ve,fe){return I(re,i,ve,fe)}function W(re){return o[re.getDay()]}function B(re){return s[re.getDay()]}function $(re){return c[re.getMonth()]}function z(re){return l[re.getMonth()]}function Q(re){return a[+(re.getHours()>=12)]}function V(re){return 1+~~(re.getMonth()/3)}function ne(re){return o[re.getUTCDay()]}function Se(re){return s[re.getUTCDay()]}function He(re){return c[re.getUTCMonth()]}function at(re){return l[re.getUTCMonth()]}function tn(re){return a[+(re.getUTCHours()>=12)]}function Et(re){return 1+~~(re.getUTCMonth()/3)}return{format:function(re){var ve=k(re+="",b);return ve.toString=function(){return re},ve},parse:function(re){var ve=N(re+="",!1);return ve.toString=function(){return re},ve},utcFormat:function(re){var ve=k(re+="",A);return ve.toString=function(){return re},ve},utcParse:function(re){var ve=N(re+="",!0);return ve.toString=function(){return re},ve}}}var r4={"-":"",_:" ",0:"0"},en=/^\s*\d+/,npe=/^%/,rpe=/[\\^$*+?|[\]().{}]/g;function Ue(e,t,n){var i=e<0?"-":"",a=(i?-e:e)+"",s=a.length;return i+(s<n?new Array(n-s+1).join(t)+a:a)}function ipe(e){return e.replace(rpe,"\\$&")}function Gc(e){return new RegExp("^(?:"+e.map(ipe).join("|")+")","i")}function Hc(e){return new Map(e.map((t,n)=>[t.toLowerCase(),n]))}function ape(e,t,n){var i=en.exec(t.slice(n,n+1));return i?(e.w=+i[0],n+i[0].length):-1}function spe(e,t,n){var i=en.exec(t.slice(n,n+1));return i?(e.u=+i[0],n+i[0].length):-1}function ope(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.U=+i[0],n+i[0].length):-1}function lpe(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.V=+i[0],n+i[0].length):-1}function cpe(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.W=+i[0],n+i[0].length):-1}function i4(e,t,n){var i=en.exec(t.slice(n,n+4));return i?(e.y=+i[0],n+i[0].length):-1}function a4(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.y=+i[0]+(+i[0]>68?1900:2e3),n+i[0].length):-1}function dpe(e,t,n){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return i?(e.Z=i[1]?0:-(i[2]+(i[3]||"00")),n+i[0].length):-1}function upe(e,t,n){var i=en.exec(t.slice(n,n+1));return i?(e.q=i[0]*3-3,n+i[0].length):-1}function ppe(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.m=i[0]-1,n+i[0].length):-1}function s4(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.d=+i[0],n+i[0].length):-1}function mpe(e,t,n){var i=en.exec(t.slice(n,n+3));return i?(e.m=0,e.d=+i[0],n+i[0].length):-1}function o4(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.H=+i[0],n+i[0].length):-1}function hpe(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.M=+i[0],n+i[0].length):-1}function fpe(e,t,n){var i=en.exec(t.slice(n,n+2));return i?(e.S=+i[0],n+i[0].length):-1}function gpe(e,t,n){var i=en.exec(t.slice(n,n+3));return i?(e.L=+i[0],n+i[0].length):-1}function xpe(e,t,n){var i=en.exec(t.slice(n,n+6));return i?(e.L=Math.floor(i[0]/1e3),n+i[0].length):-1}function ype(e,t,n){var i=npe.exec(t.slice(n,n+1));return i?n+i[0].length:-1}function vpe(e,t,n){var i=en.exec(t.slice(n));return i?(e.Q=+i[0],n+i[0].length):-1}function bpe(e,t,n){var i=en.exec(t.slice(n));return i?(e.s=+i[0],n+i[0].length):-1}function l4(e,t){return Ue(e.getDate(),t,2)}function wpe(e,t){return Ue(e.getHours(),t,2)}function Ape(e,t){return Ue(e.getHours()%12||12,t,2)}function jpe(e,t){return Ue(1+fp.count(Yi(e),e),t,3)}function s8(e,t){return Ue(e.getMilliseconds(),t,3)}function kpe(e,t){return s8(e,t)+"000"}function Npe(e,t){return Ue(e.getMonth()+1,t,2)}function Ipe(e,t){return Ue(e.getMinutes(),t,2)}function Spe(e,t){return Ue(e.getSeconds(),t,2)}function Cpe(e){var t=e.getDay();return t===0?7:t}function Epe(e,t){return Ue(Rg.count(Yi(e)-1,e),t,2)}function o8(e){var t=e.getDay();return t>=4||t===0?Fl(e):Fl.ceil(e)}function _pe(e,t){return e=o8(e),Ue(Fl.count(Yi(e),e)+(Yi(e).getDay()===4),t,2)}function Ppe(e){return e.getDay()}function Tpe(e,t){return Ue(sf.count(Yi(e)-1,e),t,2)}function Dpe(e,t){return Ue(e.getFullYear()%100,t,2)}function Ope(e,t){return e=o8(e),Ue(e.getFullYear()%100,t,2)}function Mpe(e,t){return Ue(e.getFullYear()%1e4,t,4)}function Rpe(e,t){var n=e.getDay();return e=n>=4||n===0?Fl(e):Fl.ceil(e),Ue(e.getFullYear()%1e4,t,4)}function Lpe(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Ue(t/60|0,"0",2)+Ue(t%60,"0",2)}function c4(e,t){return Ue(e.getUTCDate(),t,2)}function Fpe(e,t){return Ue(e.getUTCHours(),t,2)}function Bpe(e,t){return Ue(e.getUTCHours()%12||12,t,2)}function $pe(e,t){return Ue(1+Mg.count(Qi(e),e),t,3)}function l8(e,t){return Ue(e.getUTCMilliseconds(),t,3)}function Upe(e,t){return l8(e,t)+"000"}function qpe(e,t){return Ue(e.getUTCMonth()+1,t,2)}function Gpe(e,t){return Ue(e.getUTCMinutes(),t,2)}function Hpe(e,t){return Ue(e.getUTCSeconds(),t,2)}function zpe(e){var t=e.getUTCDay();return t===0?7:t}function Wpe(e,t){return Ue(Lg.count(Qi(e)-1,e),t,2)}function c8(e){var t=e.getUTCDay();return t>=4||t===0?Bl(e):Bl.ceil(e)}function Vpe(e,t){return e=c8(e),Ue(Bl.count(Qi(e),e)+(Qi(e).getUTCDay()===4),t,2)}function Kpe(e){return e.getUTCDay()}function Ype(e,t){return Ue(of.count(Qi(e)-1,e),t,2)}function Qpe(e,t){return Ue(e.getUTCFullYear()%100,t,2)}function Xpe(e,t){return e=c8(e),Ue(e.getUTCFullYear()%100,t,2)}function Zpe(e,t){return Ue(e.getUTCFullYear()%1e4,t,4)}function Jpe(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Bl(e):Bl.ceil(e),Ue(e.getUTCFullYear()%1e4,t,4)}function eme(){return"+0000"}function d4(){return"%"}function u4(e){return+e}function p4(e){return Math.floor(+e/1e3)}var yo,d8,u8;tme({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Frid
514ay","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function tme(e){return yo=tpe(e),d8=yo.format,yo.parse,u8=yo.utcFormat,yo.utcParse,yo}function nme(e){return new Date(e)}function rme(e){return e instanceof Date?+e:+new Date(+e)}function lA(e,t,n,i,a,s,o,l,c,d){var u=K1(),p=u.invert,m=u.domain,f=d(".%L"),x=d(":%S"),h=d("%I:%M"),g=d("%I %p"),y=d("%a %d"),v=d("%b %d"),b=d("%B"),A=d("%Y");function w(k){return(c(k)<k?f:l(k)<k?x:o(k)<k?h:s(k)<k?g:i(k)<k?a(k)<k?y:v:n(k)<k?b:A)(k)}return u.invert=function(k){return new Date(p(k))},u.domain=function(k){return arguments.length?m(Array.from(k,rme)):m().map(nme)},u.ticks=function(k){var N=m();return e(N[0],N[N.length-1],k??10)},u.tickFormat=function(k,N){return N==null?w:d(N)},u.nice=function(k){var N=m();return(!k||typeof k.range!="function")&&(k=t(N[0],N[N.length-1],k??10)),k?m(XL(N,k)):u},u.copy=function(){return hp(u,lA(e,t,n,i,a,s,o,l,c,d))},u}function ime(){return br.apply(lA(Jue,epe,Yi,sA,Rg,fp,iA,nA,bs,d8).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function ame(){return br.apply(lA(Xue,Zue,Qi,oA,Lg,Mg,aA,rA,bs,u8).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function Fg(){var e=0,t=1,n,i,a,s,o=kn,l=!1,c;function d(p){return p==null||isNaN(p=+p)?c:o(a===0?.5:(p=(s(p)-n)*a,l?Math.max(0,Math.min(1,p)):p))}d.domain=function(p){return arguments.length?([e,t]=p,n=s(e=+e),i=s(t=+t),a=n===i?0:1/(i-n),d):[e,t]},d.clamp=function(p){return arguments.length?(l=!!p,d):l},d.interpolator=function(p){return arguments.length?(o=p,d):o};function u(p){return function(m){var f,x;return arguments.length?([f,x]=m,o=p(f,x),d):[o(0),o(1)]}}return d.range=u(xc),d.rangeRound=u(V1),d.unknown=function(p){return arguments.length?(c=p,d):c},function(p){return s=p,n=p(e),i=p(t),a=n===i?0:1/(i-n),d}}function ts(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function p8(){var e=es(Fg()(kn));return e.copy=function(){return ts(e,p8())},ta.apply(e,arguments)}function m8(){var e=X1(Fg()).domain([1,10]);return e.copy=function(){return ts(e,m8()).base(e.base())},ta.apply(e,arguments)}function h8(){var e=Z1(Fg());return e.copy=function(){return ts(e,h8()).constant(e.constant())},ta.apply(e,arguments)}function cA(){var e=J1(Fg());return e.copy=function(){return ts(e,cA()).exponent(e.exponent())},ta.apply(e,arguments)}function sme(){return cA.apply(null,arguments).exponent(.5)}function f8(){var e=[],t=kn;function n(i){if(i!=null&&!isNaN(i=+i))return t((pp(e,i,1)-1)/(e.length-1))}return n.domain=function(i){if(!arguments.length)return e.slice();e=[];for(let a of i)a!=null&&!isNaN(a=+a)&&e.push(a);return e.sort($a),n},n.interpolator=function(i){return arguments.length?(t=i,n):t},n.range=function(){return e.map((i,a)=>t(a/(e.length-1)))},n.quantiles=function(i){return Array.from({length:i+1},(a,s)=>Wde(e,s/i))},n.copy=function(){return f8(t).domain(e)},ta.apply(n,arguments)}function Bg(){var e=0,t=.5,n=1,i=1,a,s,o,l,c,d=kn,u,p=!1,m;function f(h){return isNaN(h=+h)?m:(h=.5+((h=+u(h))-s)*(i*h<i*s?l:c),d(p?Math.max(0,Math.min(1,h)):h))}f.domain=function(h){return arguments.length?([e,t,n]=h,a=u(e=+e),s=u(t=+t),o=u(n=+n),l=a===s?0:.5/(s-a),c=s===o?0:.5/(o-s),i=s<a?-1:1,f):[e,t,n]},f.clamp=function(h){return arguments.length?(p=!!h,f):p},f.interpolator=function(h){return arguments.length?(d=h,f):d};function x(h){return function(g){var y,v,b;return arguments.length?([y,v,b]=g,d=yue(h,[y,v,b]),f):[d(0),d(.5),d(1)]}}return f.range=x(xc),f.rangeRound=x(V1),f.unknown=function(h){return arguments.length?(m=h,f):m},function(h){return u=h,a=h(e),s=h(t),o=h(n),l=a===s?0:.5/(s-a),c=s===o?0:.5/(o-s),i=s<a?-1:1,f}}function g8(){var e=es(Bg()(kn));return e.copy=function(){return ts(e,g8())},ta.apply(e,arguments)}function x8(){var e=X1(Bg()).domain([.1,1,10]);return e.copy=function(){return ts(e,x8()).base(e.base())},ta.apply(e,arguments)}function y8(){var e=Z1(Bg());return e.copy=function(){return ts(e,y8()).constant(e.constant())},ta.apply(e,arguments)}function dA(){var e=J1(Bg());return e.copy=function(){return ts(e,dA()).exponent(e.exponent())},ta.apply(e,arguments)}function ome(){return dA.apply(null,arguments).exponent(.5)}const m4=Object.freeze(Object.defineProperty({__proto__:null,scaleBand:gu,scaleDiverging:g8,scaleDivergingLog:x8,scaleDivergingPow:dA,scaleDivergingSqrt:ome,scaleDivergingSymlog:y8,scaleIdentity:QL,scaleImplicit:Hb,scaleLinear:rf,scaleLog:ZL,scaleOrdinal:H1,scalePoint:jd,scalePow:eA,scaleQuantile:t8,scaleQuantize:n8,scaleRadial:e8,scaleSequential:p8,scaleSequentialLog:m8,scaleSequentialPow:cA,scaleSequentialQuantile:f8,scaleSequentialSqrt:sme,scaleSequentialSymlog:h8,scaleSqrt:Uue,scaleSymlog:JL,scaleThreshold:r8,scaleTime:ime,scaleUtc:ame,tickFormat:YL},Symbol.toStringTag,{value:"Module"}));var lme=lc;function cme(e,t,n){for(var i=-1,a=e.length;++i<a;){var s=e[i],o=t(s);if(o!=null&&(l===void 0?o===o&&!lme(o):n(o,l)))var l=o,c=s}return c}var v8=cme;function dme(e,t){return e>t}var ume=dme,pme=v8,mme=ume,hme=fc;function fme(e){return e&&e.length?pme(e,hme,mme):void 0}var gme=fme;const $g=Qe(gme);function xme(e,t){return e<t}var yme=xme,vme=v8,bme=yme,wme=fc;function Ame(e){return e&&e.length?vme(e,wme,bme):void 0}var jme=Ame;const Ug=Qe(jme);var kme=j1,Nme=gc,Ime=SL,Sme=Fn;function Cme(e,t){var n=Sme(e)?kme:Ime;return n(e,Nme(t))}var Eme=Cme,_me=NL,Pme=Eme;function Tme(e,t){return _me(Pme(e,t),1)}var Dme=Tme;const Ome=Qe(Dme);var Mme=B1;function Rme(e,t){return Mme(e,t)}var Lme=Rme;const uA=Qe(Lme);
vendor: 45,831 bytes, lines 514-521
514var yc=1e9,Fme={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},mA,xt=!0,xr="[DecimalError] ",Bs=xr+"Invalid argument: ",pA=xr+"Exponent out of range: ",vc=Math.floor,ps=Math.pow,Bme=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Hn,Vt=1e7,pt=7,b8=9007199254740991,lf=vc(b8/pt),ce={};ce.absoluteValue=ce.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ce.comparedTo=ce.cmp=function(e){var t,n,i,a,s=this;if(e=new s.constructor(e),s.s!==e.s)return s.s||-e.s;if(s.e!==e.e)return s.e>e.e^s.s<0?1:-1;for(i=s.d.length,a=e.d.length,t=0,n=i<a?i:a;t<n;++t)if(s.d[t]!==e.d[t])return s.d[t]>e.d[t]^s.s<0?1:-1;return i===a?0:i>a^s.s<0?1:-1};ce.decimalPlaces=ce.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*pt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ce.dividedBy=ce.div=function(e){return $i(this,new this.constructor(e))};ce.dividedToIntegerBy=ce.idiv=function(e){var t=this,n=t.constructor;return it($i(t,new n(e),0,1),n.precision)};ce.equals=ce.eq=function(e){return!this.cmp(e)};ce.exponent=function(){return Rt(this)};ce.greaterThan=ce.gt=function(e){return this.cmp(e)>0};ce.greaterThanOrEqualTo=ce.gte=function(e){return this.cmp(e)>=0};ce.isInteger=ce.isint=function(){return this.e>this.d.length-2};ce.isNegative=ce.isneg=function(){return this.s<0};ce.isPositive=ce.ispos=function(){return this.s>0};ce.isZero=function(){return this.s===0};ce.lessThan=ce.lt=function(e){return this.cmp(e)<0};ce.lessThanOrEqualTo=ce.lte=function(e){return this.cmp(e)<1};ce.logarithm=ce.log=function(e){var t,n=this,i=n.constructor,a=i.precision,s=a+5;if(e===void 0)e=new i(10);else if(e=new i(e),e.s<1||e.eq(Hn))throw Error(xr+"NaN");if(n.s<1)throw Error(xr+(n.s?"NaN":"-Infinity"));return n.eq(Hn)?new i(0):(xt=!1,t=$i(wu(n,s),wu(e,s),s),xt=!0,it(t,a))};ce.minus=ce.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?j8(t,e):w8(t,(e.s=-e.s,e))};ce.modulo=ce.mod=function(e){var t,n=this,i=n.constructor,a=i.precision;if(e=new i(e),!e.s)throw Error(xr+"NaN");return n.s?(xt=!1,t=$i(n,e,0,1).times(e),xt=!0,n.minus(t)):it(new i(n),a)};ce.naturalExponential=ce.exp=function(){return A8(this)};ce.naturalLogarithm=ce.ln=function(){return wu(this)};ce.negated=ce.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ce.plus=ce.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?w8(t,e):j8(t,(e.s=-e.s,e))};ce.precision=ce.sd=function(e){var t,n,i,a=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Bs+e);if(t=Rt(a)+1,i=a.d.length-1,n=i*pt+1,i=a.d[i],i){for(;i%10==0;i/=10)n--;for(i=a.d[0];i>=10;i/=10)n++}return e&&t>n?t:n};ce.squareRoot=ce.sqrt=function(){var e,t,n,i,a,s,o,l=this,c=l.constructor;if(l.s<1){if(!l.s)return new c(0);throw Error(xr+"NaN")}for(e=Rt(l),xt=!1,a=Math.sqrt(+l),a==0||a==1/0?(t=si(l.d),(t.length+e)%2==0&&(t+="0"),a=Math.sqrt(t),e=vc((e+1)/2)-(e<0||e%2),a==1/0?t="5e"+e:(t=a.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),i=new c(t)):i=new c(a.toString()),n=c.precision,a=o=n+3;;)if(s=i,i=s.plus($i(l,s,o+2)).times(.5),si(s.d).slice(0,o)===(t=si(i.d)).slice(0,o)){if(t=t.slice(o-3,o+1),a==o&&t=="4999"){if(it(s,n+1,0),s.times(s).eq(l)){i=s;break}}else if(t!="9999")break;o+=4}return xt=!0,it(i,n)};ce.times=ce.mul=function(e){var t,n,i,a,s,o,l,c,d,u=this,p=u.constructor,m=u.d,f=(e=new p(e)).d;if(!u.s||!e.s)return new p(0);for(e.s*=u.s,n=u.e+e.e,c=m.length,d=f.length,c<d&&(s=m,m=f,f=s,o=c,c=d,d=o),s=[],o=c+d,i=o;i--;)s.push(0);for(i=d;--i>=0;){for(t=0,a=c+i;a>i;)l=s[a]+f[i]*m[a-i-1]+t,s[a--]=l%Vt|0,t=l/Vt|0;s[a]=(s[a]+t)%Vt|0}for(;!s[--o];)s.pop();return t?++n:s.shift(),e.d=s,e.e=n,xt?it(e,p.precision):e};ce.toDecimalPlaces=ce.todp=function(e,t){var n=this,i=n.constructor;return n=new i(n),e===void 0?n:(hi(e,0,yc),t===void 0?t=i.rounding:hi(t,0,8),it(n,e+Rt(n)+1,t))};ce.toExponential=function(e,t){var n,i=this,a=i.constructor;return e===void 0?n=eo(i,!0):(hi(e,0,yc),t===void 0?t=a.rounding:hi(t,0,8),i=it(new a(i),e+1,t),n=eo(i,!0,e+1)),n};ce.toFixed=function(e,t){var n,i,a=this,s=a.constructor;return e===void 0?eo(a):(hi(e,0,yc),t===void 0?t=s.rounding:hi(t,0,8),i=it(new s(a),e+Rt(a)+1,t),n=eo(i.abs(),!1,e+Rt(i)+1),a.isneg()&&!a.isZero()?"-"+n:n)};ce.toInteger=ce.toint=function(){var e=this,t=e.constructor;return it(new t(e),Rt(e)+1,t.rounding)};ce.toNumber=function(){return+this};ce.toPower=ce.pow=function(e){var t,n,i,a,s,o,l=this,c=l.constructor,d=12,u=+(e=new c(e));if(!e.s)return new c(Hn);if(l=new c(l),!l.s){if(e.s<1)throw Error(xr+"Infinity");return l}if(l.eq(Hn))return l;if(i=c.precision,e.eq(Hn))return it(l,i);if(t=e.e,n=e.d.length-1,o=t>=n,s=l.s,o){if((n=u<0?-u:u)<=b8){for(a=new c(Hn),t=Math.ceil(i/pt+4),xt=!1;n%2&&(a=a.times(l),f4(a.d,t)),n=vc(n/2),n!==0;)l=l.times(l),f4(l.d,t);return xt=!0,e.s<0?new c(Hn).div(a):it(a,i)}}else if(s<0)throw Error(xr+"NaN");return s=s<0&&e.d[Math.max(t,n)]&1?-1:1,l.s=1,xt=!1,a=e.times(wu(l,i+d)),xt=!0,a=A8(a),a.s=s,a};ce.toPrecision=function(e,t){var n,i,a=this,s=a.constructor;return e===void 0?(n=Rt(a),i=eo(a,n<=s.toExpNeg||n>=s.toExpPos)):(hi(e,1,yc),t===void 0?t=s.rounding:hi(t,0,8),a=it(new s(a),e,t),n=Rt(a),i=eo(a,e<=n||n<=s.toExpNeg,e)),i};ce.toSignificantDigits=ce.tosd=function(e,t){var n=this,i=n.constructor;return e===void 0?(e=i.precision,t=i.rounding):(hi(e,1,yc),t===void 0?t=i.rounding:hi(t,0,8)),it(new i(n),e,t)};ce.toString=ce.valueOf=ce.val=ce.toJSON=ce[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Rt(e),n=e.constructor;return eo(e,t<=n.toExpNeg||t>=n.toExpPos)};function w8(e,t){var n,i,a,s,o,l,c,d,u=e.constructor,p=u.precision;if(!e.s||!t.s)return t.s||(t=new u(e)),xt?it(t,p):t;if(c=e.d,d=t.d,o=e.e,a=t.e,c=c.slice(),s=o-a,s){for(s<0?(i=c,s=-s,l=d.length):(i=d,a=o,l=c.length),o=Math.ceil(p/pt),l=o>l?o+1:l+1,s>l&&(s=l,i.length=1),i.reverse();s--;)i.push(0);i.reverse()}for(l=c.length,s=d.length,l-s<0&&(s=l,i=d,d=c,c=i),n=0;s;)n=(c[--s]=c[s]+d[s]+n)/Vt|0,c[s]%=Vt;for(n&&(c.unshift(n),++a),l=c.length;c[--l]==0;)c.pop();return t.d=c,t.e=a,xt?it(t,p):t}function hi(e,t,n){if(e!==~~e||e<t||e>n)throw Error(Bs+e)}function si(e){var t,n,i,a=e.length-1,s="",o=e[0];if(a>0){for(s+=o,t=1;t<a;t++)i=e[t]+"",n=pt-i.length,n&&(s+=ua(n)),s+=i;o=e[t],i=o+"",n=pt-i.length,n&&(s+=ua(n))}else if(o===0)return"0";for(;o%10===0;)o/=10;return s+o}var $i=function(){function e(i,a){var s,o=0,l=i.length;for(i=i.slice();l--;)s=i[l]*a+o,i[l]=s%Vt|0,o=s/Vt|0;return o&&i.unshift(o),i}function t(i,a,s,o){var l,c;if(s!=o)c=s>o?1:-1;else for(l=c=0;l<s;l++)if(i[l]!=a[l]){c=i[l]>a[l]?1:-1;break}return c}function n(i,a,s){for(var o=0;s--;)i[s]-=o,o=i[s]<a[s]?1:0,i[s]=o*Vt+i[s]-a[s];for(;!i[0]&&i.length>1;)i.shift()}return function(i,a,s,o){var l,c,d,u,p,m,f,x,h,g,y,v,b,A,w,k,N,I,C=i.constructor,O=i.s==a.s?1:-1,_=i.d,D=a.d;if(!i.s)return new C(i);if(!a.s)throw Error(xr+"Division by zero");for(c=i.e-a.e,N=D.length,w=_.length,f=new C(O),x=f.d=[],d=0;D[d]==(_[d]||0);)++d;if(D[d]>(_[d]||0)&&--c,s==null?v=s=C.precision:o?v=s+(Rt(i)-Rt(a))+1:v=s,v<0)return new C(0);if(v=v/pt+2|0,d=0,N==1)for(u=0,D=D[0],v++;(d<w||u)&&v--;d++)b=u*Vt+(_[d]||0),x[d]=b/D|0,u=b%D|0;else{for(u=Vt/(D[0]+1)|0,u>1&&(D=e(D,u),_=e(_,u),N=D.length,w=_.length),A=N,h=_.slice(0,N),g=h.length;g<N;)h[g++]=0;I=D.slice(),I.unshift(0),k=D[0],D[1]>=Vt/2&&++k;do u=0,l=t(D,h,N,g),l<0?(y=h[0],N!=g&&(y=y*Vt+(h[1]||0)),u=y/k|0,u>1?(u>=Vt&&(u=Vt-1),p=e(D,u),m=p.length,g=h.length,l=t(p,h,m,g),l==1&&(u--,n(p,N<m?I:D,m))):(u==0&&(l=u=1),p=D.slice()),m=p.length,m<g&&p.unshift(0),n(h,p,g),l==-1&&(g=h.length,l=t(D,h,N,g),l<1&&(u++,n(h,N<g?I:D,g))),g=h.length):l===0&&(u++,h=[0]),x[d++]=u,l&&h[0]?h[g++]=_[A]||0:(h=[_[A]],g=1);while((A++<w||h[0]!==void 0)&&v--)}return x[0]||x.shift(),f.e=c,it(f,o?s+Rt(f)+1:s)}}();function A8(e,t){var n,i,a,s,o,l,c=0,d=0,u=e.constructor,p=u.precision;if(Rt(e)>16)throw Error(pA+Rt(e));if(!e.s)return new u(Hn);for(t==null?(xt=!1,l=p):l=t,o=new u(.03125);e.abs().gte(.1);)e=e.times(o),d+=5;for(i=Math.log(ps(2,d))/Math.LN10*2+5|0,l+=i,n=a=s=new u(Hn),u.precision=l;;){if(a=it(a.times(e),l),n=n.times(++c),o=s.plus($i(a,n,l)),si(o.d).slice(0,l)===si(s.d).slice(0,l)){for(;d--;)s=it(s.times(s),l);return u.precision=p,t==null?(xt=!0,it(s,p)):s}s=o}}function Rt(e){for(var t=e.e*pt,n=e.d[0];n>=10;n/=10)t++;return t}function wy(e,t,n){if(t>e.LN10.sd())throw xt=!0,n&&(e.precision=n),Error(xr+"LN10 precision limit exceeded");return it(new e(e.LN10),t)}function ua(e){for(var t="";e--;)t+="0";return t}function wu(e,t){var n,i,a,s,o,l,c,d,u,p=1,m=10,f=e,x=f.d,h=f.constructor,g=h.precision;if(f.s<1)throw Error(xr+(f.s?"NaN":"-Infinity"));if(f.eq(Hn))return new h(0);if(t==null?(xt=!1,d=g):d=t,f.eq(10))return t==null&&(xt=!0),wy(h,d);if(d+=m,h.precision=d,n=si(x),i=n.charAt(0),s=Rt(f),Math.abs(s)<15e14){for(;i<7&&i!=1||i==1&&n.charAt(1)>3;)f=f.times(e),n=si(f.d),i=n.charAt(0),p++;s=Rt(f),i>1?(f=new h("0."+n),s++):f=new h(i+"."+n.slice(1))}else return c=wy(h,d+2,g).times(s+""),f=wu(new h(i+"."+n.slice(1)),d-m).plus(c),h.precision=g,t==null?(xt=!0,it(f,g)):f;for(l=o=f=$i(f.minus(Hn),f.plus(Hn),d),u=it(f.times(f),d),a=3;;){if(o=it(o.times(u),d),c=l.plus($i(o,new h(a),d)),si(c.d).slice(0,d)===si(l.d).slice(0,d))return l=l.times(2),s!==0&&(l=l.plus(wy(h,d+2,g).times(s+""))),l=$i(l,new h(p),d),h.precision=g,t==null?(xt=!0,it(l,g)):l;l=c,a+=2}}function h4(e,t){var n,i,a;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(i=t.search(/e/i))>0?(n<0&&(n=i),n+=+t.slice(i+1),t=t.substring(0,i)):n<0&&(n=t.length),i=0;t.charCodeAt(i)===48;)++i;for(a=t.length;t.charCodeAt(a-1)===48;)--a;if(t=t.slice(i,a),t){if(a-=i,n=n-i-1,e.e=vc(n/pt),e.d=[],i=(n+1)%pt,n<0&&(i+=pt),i<a){for(i&&e.d.push(+t.slice(0,i)),a-=pt;i<a;)e.d.push(+t.slice(i,i+=pt));t=t.slice(i),i=pt-t.length}else i-=a;for(;i--;)t+="0";if(e.d.push(+t),xt&&(e.e>lf||e.e<-lf))throw Error(pA+n)}else e.s=0,e.e=0,e.d=[0];return e}function it(e,t,n){var i,a,s,o,l,c,d,u,p=e.d;for(o=1,s=p[0];s>=10;s/=10)o++;if(i=t-o,i<0)i+=pt,a=t,d=p[u=0];else{if(u=Math.ceil((i+1)/pt),s=p.length,u>=s)return e;for(d=s=p[u],o=1;s>=10;s/=10)o++;i%=pt,a=i-pt+o}if(n!==void 0&&(s=ps(10,o-a-1),l=d/s%10|0,c=t<0||p[u+1]!==void 0||d%s,c=n<4?(l||c)&&(n==0||n==(e.s<0?3:2)):l>5||l==5&&(n==4||c||n==6&&(i>0?a>0?d/ps(10,o-a):0:p[u-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return c?(s=Rt(e),p.length=1,t=t-s-1,p[0]=ps(10,(pt-t%pt)%pt),e.e=vc(-t/pt)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(i==0?(p.length=u,s=1,u--):(p.length=u+1,s=ps(10,pt-i),p[u]=a>0?(d/ps(10,o-a)%ps(10,a)|0)*s:0),c)for(;;)if(u==0){(p[0]+=s)==Vt&&(p[0]=1,++e.e);break}else{if(p[u]+=s,p[u]!=Vt)break;p[u--]=0,s=1}for(i=p.length;p[--i]===0;)p.pop();if(xt&&(e.e>lf||e.e<-lf))throw Error(pA+Rt(e));return e}function j8(e,t){var n,i,a,s,o,l,c,d,u,p,m=e.constructor,f=m.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new m(e),xt?it(t,f):t;if(c=e.d,p=t.d,i=t.e,d=e.e,c=c.slice(),o=d-i,o){for(u=o<0,u?(n=c,o=-o,l=p.length):(n=p,i=d,l=c.length),a=Math.max(Math.ceil(f/pt),l)+2,o>a&&(o=a,n.length=1),n.reverse(),a=o;a--;)n.push(0);n.reverse()}else{for(a=c.length,l=p.length,u=a<l,u&&(l=a),a=0;a<l;a++)if(c[a]!=p[a]){u=c[a]<p[a];break}o=0}for(u&&(n=c,c=p,p=n,t.s=-t.s),l=c.length,a=p.length-l;a>0;--a)c[l++]=0;for(a=p.length;a>o;){if(c[--a]<p[a]){for(s=a;s&&c[--s]===0;)c[s]=Vt-1;--c[s],c[a]+=Vt}c[a]-=p[a]}for(;c[--l]===0;)c.pop();for(;c[0]===0;c.shift())--i;return c[0]?(t.d=c,t.e=i,xt?it(t,f):t):new m(0)}function eo(e,t,n){var i,a=Rt(e),s=si(e.d),o=s.length;return t?(n&&(i=n-o)>0?s=s.charAt(0)+"."+s.slice(1)+ua(i):o>1&&(s=s.charAt(0)+"."+s.slice(1)),s=s+(a<0?"e":"e+")+a):a<0?(s="0."+ua(-a-1)+s,n&&(i=n-o)>0&&(s+=ua(i))):a>=o?(s+=ua(a+1-o),n&&(i=n-a-1)>0&&(s=s+"."+ua(i))):((i=a+1)<o&&(s=s.slice(0,i)+"."+s.slice(i)),n&&(i=n-o)>0&&(a+1===o&&(s+="."),s+=ua(i))),e.s<0?"-"+s:s}function f4(e,t){if(e.length>t)return e.length=t,!0}function k8(e){var t,n,i;function a(s){var o=this;if(!(o instanceof a))return new a(s);if(o.constructor=a,s instanceof a){o.s=s.s,o.e=s.e,o.d=(s=s.d)?s.slice():s;return}if(typeof s=="number"){if(s*0!==0)throw Error(Bs+s);if(s>0)o.s=1;else if(s<0)s=-s,o.s=-1;else{o.s=0,o.e=0,o.d=[0];return}if(s===~~s&&s<1e7){o.e=0,o.d=[s];return}return h4(o,s.toString())}else if(typeof s!="string")throw Error(Bs+s);if(s.charCodeAt(0)===45?(s=s.slice(1),o.s=-1):o.s=1,Bme.test(s))h4(o,s);else throw Error(Bs+s)}if(a.prototype=ce,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.clone=k8,a.config=a.set=$me,e===void 0&&(e={}),e)for(i=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t<i.length;)e.hasOwnProperty(n=i[t++])||(e[n]=this[n]);return a.config(e),a}function $me(e){if(!e||typeof e!="object")throw Error(xr+"Object expected");var t,n,i,a=["precision",1,yc,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t<a.length;t+=3)if((i=e[n=a[t]])!==void 0)if(vc(i)===i&&i>=a[t+1]&&i<=a[t+2])this[n]=i;else throw Error(Bs+n+": "+i);if((i=e[n="LN10"])!==void 0)if(i==Math.LN10)this[n]=new this(i);else throw Error(Bs+n+": "+i);return this}var mA=k8(Fme);Hn=new mA(1);const tt=mA;function Ume(e){return zme(e)||Hme(e)||Gme(e)||qme()}function qme(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
515In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Gme(e,t){if(e){if(typeof e=="string")return Kb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Kb(e,t)}}function Hme(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function zme(e){if(Array.isArray(e))return Kb(e)}function Kb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}var Wme=function(t){return t},N8={"@@functional/placeholder":!0},I8=function(t){return t===N8},g4=function(t){return function n(){return arguments.length===0||arguments.length===1&&I8(arguments.length<=0?void 0:arguments[0])?n:t.apply(void 0,arguments)}},Vme=function e(t,n){return t===1?n:g4(function(){for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];var o=a.filter(function(l){return l!==N8}).length;return o>=t?n.apply(void 0,a):e(t-o,g4(function(){for(var l=arguments.length,c=new Array(l),d=0;d<l;d++)c[d]=arguments[d];var u=a.map(function(p){return I8(p)?c.shift():p});return n.apply(void 0,Ume(u).concat(c))}))})},qg=function(t){return Vme(t.length,t)},Yb=function(t,n){for(var i=[],a=t;a<n;++a)i[a-t]=a;return i},Kme=qg(function(e,t){return Array.isArray(t)?t.map(e):Object.keys(t).map(function(n){return t[n]}).map(e)}),Yme=function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];if(!n.length)return Wme;var a=n.reverse(),s=a[0],o=a.slice(1);return function(){return o.reduce(function(l,c){return c(l)},s.apply(void 0,arguments))}},Qb=function(t){return Array.isArray(t)?t.reverse():t.split("").reverse.join("")},S8=function(t){var n=null,i=null;return function(){for(var a=arguments.length,s=new Array(a),o=0;o<a;o++)s[o]=arguments[o];return n&&s.every(function(l,c){return l===n[c]})||(n=s,i=t.apply(void 0,s)),i}};function Qme(e){var t;return e===0?t=1:t=Math.floor(new tt(e).abs().log(10).toNumber())+1,t}function Xme(e,t,n){for(var i=new tt(e),a=0,s=[];i.lt(t)&&a<1e5;)s.push(i.toNumber()),i=i.add(n),a++;return s}var Zme=qg(function(e,t,n){var i=+e,a=+t;return i+n*(a-i)}),Jme=qg(function(e,t,n){var i=t-+e;return i=i||1/0,(n-e)/i}),ehe=qg(function(e,t,n){var i=t-+e;return i=i||1/0,Math.max(0,Math.min(1,(n-e)/i))});const Gg={rangeStep:Xme,getDigitCount:Qme,interpolateNumber:Zme,uninterpolateNumber:Jme,uninterpolateTruncation:ehe};function Xb(e){return rhe(e)||nhe(e)||C8(e)||the()}function the(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
516In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function nhe(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function rhe(e){if(Array.isArray(e))return Zb(e)}function Au(e,t){return she(e)||ahe(e,t)||C8(e,t)||ihe()}function ihe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
517In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function C8(e,t){if(e){if(typeof e=="string")return Zb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Zb(e,t)}}function Zb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function ahe(e,t){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(e)))){var n=[],i=!0,a=!1,s=void 0;try{for(var o=e[Symbol.iterator](),l;!(i=(l=o.next()).done)&&(n.push(l.value),!(t&&n.length===t));i=!0);}catch(c){a=!0,s=c}finally{try{!i&&o.return!=null&&o.return()}finally{if(a)throw s}}return n}}function she(e){if(Array.isArray(e))return e}function E8(e){var t=Au(e,2),n=t[0],i=t[1],a=n,s=i;return n>i&&(a=i,s=n),[a,s]}function _8(e,t,n){if(e.lte(0))return new tt(0);var i=Gg.getDigitCount(e.toNumber()),a=new tt(10).pow(i),s=e.div(a),o=i!==1?.05:.1,l=new tt(Math.ceil(s.div(o).toNumber())).add(n).mul(o),c=l.mul(a);return t?c:new tt(Math.ceil(c))}function ohe(e,t,n){var i=1,a=new tt(e);if(!a.isint()&&n){var s=Math.abs(e);s<1?(i=new tt(10).pow(Gg.getDigitCount(e)-1),a=new tt(Math.floor(a.div(i).toNumber())).mul(i)):s>1&&(a=new tt(Math.floor(e)))}else e===0?a=new tt(Math.floor((t-1)/2)):n||(a=new tt(Math.floor(e)));var o=Math.floor((t-1)/2),l=Yme(Kme(function(c){return a.add(new tt(c-o).mul(i)).toNumber()}),Yb);return l(0,t)}function P8(e,t,n,i){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((t-e)/(n-1)))return{step:new tt(0),tickMin:new tt(0),tickMax:new tt(0)};var s=_8(new tt(t).sub(e).div(n-1),i,a),o;e<=0&&t>=0?o=new tt(0):(o=new tt(e).add(t).div(2),o=o.sub(new tt(o).mod(s)));var l=Math.ceil(o.sub(e).div(s).toNumber()),c=Math.ceil(new tt(t).sub(o).div(s).toNumber()),d=l+c+1;return d>n?P8(e,t,n,i,a+1):(d<n&&(c=t>0?c+(n-d):c,l=t>0?l:l+(n-d)),{step:s,tickMin:o.sub(new tt(l).mul(s)),tickMax:o.add(new tt(c).mul(s))})}function lhe(e){var t=Au(e,2),n=t[0],i=t[1],a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=Math.max(a,2),l=E8([n,i]),c=Au(l,2),d=c[0],u=c[1];if(d===-1/0||u===1/0){var p=u===1/0?[d].concat(Xb(Yb(0,a-1).map(function(){return 1/0}))):[].concat(Xb(Yb(0,a-1).map(function(){return-1/0})),[u]);return n>i?Qb(p):p}if(d===u)return ohe(d,a,s);var m=P8(d,u,o,s),f=m.step,x=m.tickMin,h=m.tickMax,g=Gg.rangeStep(x,h.add(new tt(.1).mul(f)),f);return n>i?Qb(g):g}function che(e,t){var n=Au(e,2),i=n[0],a=n[1],s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=E8([i,a]),l=Au(o,2),c=l[0],d=l[1];if(c===-1/0||d===1/0)return[i,a];if(c===d)return[c];var u=Math.max(t,2),p=_8(new tt(d).sub(c).div(u-1),s,0),m=[].concat(Xb(Gg.rangeStep(new tt(c),new tt(d).sub(new tt(.99).mul(p)),p)),[d]);return i>a?Qb(m):m}var dhe=S8(lhe),uhe=S8(che),phe="Invariant failed";function to(e,t){throw new Error(phe)}var mhe=["offset","layout","width","dataKey","data","dataPointFormatter","xAxis","yAxis"];function $l(e){"@babel/helpers - typeof";return $l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},$l(e)}function cf(){return cf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},cf.apply(this,arguments)}function hhe(e,t){return yhe(e)||xhe(e,t)||ghe(e,t)||fhe()}function fhe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
518In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ghe(e,t){if(e){if(typeof e=="string")return x4(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return x4(e,t)}}function x4(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function xhe(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function yhe(e){if(Array.isArray(e))return e}function vhe(e,t){if(e==null)return{};var n=bhe(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function bhe(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function whe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ahe(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,O8(i.key),i)}}function jhe(e,t,n){return t&&Ahe(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function khe(e,t,n){return t=df(t),Nhe(e,T8()?Reflect.construct(t,n||[],df(e).constructor):t.apply(e,n))}function Nhe(e,t){if(t&&($l(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Ihe(e)}function Ihe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function T8(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(T8=function(){return!!e})()}function df(e){return df=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},df(e)}function She(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Jb(e,t)}function Jb(e,t){return Jb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Jb(e,t)}function D8(e,t,n){return t=O8(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function O8(e){var t=Che(e,"string");return $l(t)=="symbol"?t:t+""}function Che(e,t){if($l(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if($l(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Hg=function(e){function t(){return whe(this,t),khe(this,t,arguments)}return She(t,e),jhe(t,[{key:"render",value:function(){var i=this.props,a=i.offset,s=i.layout,o=i.width,l=i.dataKey,c=i.data,d=i.dataPointFormatter,u=i.xAxis,p=i.yAxis,m=vhe(i,mhe),f=Ve(m,!1);this.props.direction==="x"&&u.type!=="number"&&to();var x=c.map(function(h){var g=d(h,l),y=g.x,v=g.y,b=g.value,A=g.errorVal;if(!A)return null;var w=[],k,N;if(Array.isArray(A)){var I=hhe(A,2);k=I[0],N=I[1]}else k=N=A;if(s==="vertical"){var C=u.scale,O=v+a,_=O+o,D=O-o,G=C(b-k),P=C(b+N);w.push({x1:P,y1:_,x2:P,y2:D}),w.push({x1:G,y1:O,x2:P,y2:O}),w.push({x1:G,y1:_,x2:G,y2:D})}else if(s==="horizontal"){var L=p.scale,U=y+a,W=U-o,B=U+o,$=L(b-k),z=L(b+N);w.push({x1:W,y1:z,x2:B,y2:z}),w.push({x1:U,y1:$,x2:U,y2:z}),w.push({x1:W,y1:$,x2:B,y2:$})}return F.createElement(Qt,cf({className:"recharts-errorBar",key:"bar-".concat(w.map(function(Q){return"".concat(Q.x1,"-").concat(Q.x2,"-").concat(Q.y1,"-").concat(Q.y2)}))},f),w.map(function(Q){return F.createElement("line",cf({},Q,{key:"line-".concat(Q.x1,"-").concat(Q.x2,"-").concat(Q.y1,"-").concat(Q.y2)}))}))});return F.createElement(Qt,{className:"recharts-errorBars"},x)}}])}(F.Component);D8(Hg,"defaultProps",{stroke:"black",strokeWidth:1.5,width:5,offset:0,layout:"horizontal"});D8(Hg,"displayName","ErrorBar");function ju(e){"@babel/helpers - typeof";return ju=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ju(e)}function y4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function ss(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?y4(Object(n),!0).forEach(function(i){Ehe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):y4(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Ehe(e,t,n){return t=_he(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _he(e){var t=Phe(e,"string");return ju(t)=="symbol"?t:t+""}function Phe(e,t){if(ju(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(ju(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var M8=function(t){var n=t.children,i=t.formattedGraphicalItems,a=t.legendWidth,s=t.legendContent,o=Gn(n,rl);if(!o)return null;var l=rl.defaultProps,c=l!==void 0?ss(ss({},l),o.props):{},d;return o.props&&o.props.payload?d=o.props&&o.props.payload:s==="children"?d=(i||[]).reduce(function(u,p){var m=p.item,f=p.props,x=f.sectors||f.data||[];return u.concat(x.map(function(h){return{type:o.props.iconType||m.props.legendType,value:h.name,color:h.fill,payload:h}}))},[]):d=(i||[]).map(function(u){var p=u.item,m=p.type.defaultProps,f=m!==void 0?ss(ss({},m),p.props):{},x=f.dataKey,h=f.name,g=f.legendType,y=f.hide;return{inactive:y,dataKey:x,type:c.iconType||g||"square",color:hA(p),value:h||x,payload:f}}),ss(ss(ss({},c),rl.getWithHeight(o,a)),{},{payload:d,item:o})};function ku(e){"@babel/helpers - typeof";return ku=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ku(e)}function v4(e){return Mhe(e)||Ohe(e)||Dhe(e)||The()}function The(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
519In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Dhe(e,t){if(e){if(typeof e=="string")return ew(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ew(e,t)}}function Ohe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Mhe(e){if(Array.isArray(e))return ew(e)}function ew(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function b4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Ct(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?b4(Object(n),!0).forEach(function(i){al(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):b4(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function al(e,t,n){return t=Rhe(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Rhe(e){var t=Lhe(e,"string");return ku(t)=="symbol"?t:t+""}function Lhe(e,t){if(ku(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(ku(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function fi(e,t,n){return Ke(e)||Ke(t)?n:Ht(t)?hr(e,t,n):Be(t)?t(e):n}function kd(e,t,n,i){var a=Ome(e,function(l){return fi(l,t)});if(n==="number"){var s=a.filter(function(l){return ae(l)||parseFloat(l)});return s.length?[Ug(s),$g(s)]:[1/0,-1/0]}var o=i?a.filter(function(l){return!Ke(l)}):a;return o.map(function(l){return Ht(l)||l instanceof Date?l:""})}var Fhe=function(t){var n,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],a=arguments.length>2?arguments[2]:void 0,s=arguments.length>3?arguments[3]:void 0,o=-1,l=(n=i==null?void 0:i.length)!==null&&n!==void 0?n:0;if(l<=1)return 0;if(s&&s.axisType==="angleAxis"&&Math.abs(Math.abs(s.range[1]-s.range[0])-360)<=1e-6)for(var c=s.range,d=0;d<l;d++){var u=d>0?a[d-1].coordinate:a[l-1].coordinate,p=a[d].coordinate,m=d>=l-1?a[0].coordinate:a[d+1].coordinate,f=void 0;if(Rr(p-u)!==Rr(m-p)){var x=[];if(Rr(m-p)===Rr(c[1]-c[0])){f=m;var h=p+c[1]-c[0];x[0]=Math.min(h,(h+u)/2),x[1]=Math.max(h,(h+u)/2)}else{f=u;var g=m+c[1]-c[0];x[0]=Math.min(p,(g+p)/2),x[1]=Math.max(p,(g+p)/2)}var y=[Math.min(p,(f+p)/2),Math.max(p,(f+p)/2)];if(t>y[0]&&t<=y[1]||t>=x[0]&&t<=x[1]){o=a[d].index;break}}else{var v=Math.min(u,m),b=Math.max(u,m);if(t>(v+p)/2&&t<=(b+p)/2){o=a[d].index;break}}}else for(var A=0;A<l;A++)if(A===0&&t<=(i[A].coordinate+i[A+1].coordinate)/2||A>0&&A<l-1&&t>(i[A].coordinate+i[A-1].coordinate)/2&&t<=(i[A].coordinate+i[A+1].coordinate)/2||A===l-1&&t>(i[A].coordinate+i[A-1].coordinate)/2){o=i[A].index;break}return o},hA=function(t){var n,i=t,a=i.type.displayName,s=(n=t.type)!==null&&n!==void 0&&n.defaultProps?Ct(Ct({},t.type.defaultProps),t.props):t.props,o=s.stroke,l=s.fill,c;switch(a){case"Line":c=o;break;case"Area":case"Radar":c=o&&o!=="none"?o:l;break;default:c=l;break}return c},Bhe=function(t){var n=t.barSize,i=t.totalSize,a=t.stackGroups,s=a===void 0?{}:a;if(!s)return{};for(var o={},l=Object.keys(s),c=0,d=l.length;c<d;c++)for(var u=s[l[c]].stackGroups,p=Object.keys(u),m=0,f=p.length;m<f;m++){var x=u[p[m]],h=x.items,g=x.cateAxisId,y=h.filter(function(N){return Bi(N.type).indexOf("Bar")>=0});if(y&&y.length){var v=y[0].type.defaultProps,b=v!==void 0?Ct(Ct({},v),y[0].props):y[0].props,A=b.barSize,w=b[g];o[w]||(o[w]=[]);var k=Ke(A)?n:A;o[w].push({item:y[0],stackList:y.slice(1),barSize:Ke(k)?void 0:Js(k,i,0)})}}return o},$he=function(t){var n=t.barGap,i=t.barCategoryGap,a=t.bandSize,s=t.sizeList,o=s===void 0?[]:s,l=t.maxBarSize,c=o.length;if(c<1)return null;var d=Js(n,a,0,!0),u,p=[];if(o[0].barSize===+o[0].barSize){var m=!1,f=a/c,x=o.reduce(function(A,w){return A+w.barSize||0},0);x+=(c-1)*d,x>=a&&(x-=(c-1)*d,d=0),x>=a&&f>0&&(m=!0,f*=.9,x=c*f);var h=(a-x)/2>>0,g={offset:h-d,size:0};u=o.reduce(function(A,w){var k={item:w.item,position:{offset:g.offset+g.size+d,size:m?f:w.barSize}},N=[].concat(v4(A),[k]);return g=N[N.length-1].position,w.stackList&&w.stackList.length&&w.stackList.forEach(function(I){N.push({item:I,position:g})}),N},p)}else{var y=Js(i,a,0,!0);a-2*y-(c-1)*d<=0&&(d=0);var v=(a-2*y-(c-1)*d)/c;v>1&&(v>>=0);var b=l===+l?Math.min(v,l):v;u=o.reduce(function(A,w,k){var N=[].concat(v4(A),[{item:w.item,position:{offset:y+(v+d)*k+(v-b)/2,size:b}}]);return w.stackList&&w.stackList.length&&w.stackList.forEach(function(I){N.push({item:I,position:N[N.length-1].position})}),N},p)}return u},Uhe=function(t,n,i,a){var s=i.children,o=i.width,l=i.margin,c=o-(l.left||0)-(l.right||0),d=M8({children:s,legendWidth:c});if(d){var u=a||{},p=u.width,m=u.height,f=d.align,x=d.verticalAlign,h=d.layout;if((h==="vertical"||h==="horizontal"&&x==="middle")&&f!=="center"&&ae(t[f]))return Ct(Ct({},t),{},al({},f,t[f]+(p||0)));if((h==="horizontal"||h==="vertical"&&f==="center")&&x!=="middle"&&ae(t[x]))return Ct(Ct({},t),{},al({},x,t[x]+(m||0)))}return t},qhe=function(t,n,i){return Ke(n)?!0:t==="horizontal"?n==="yAxis":t==="vertical"||i==="x"?n==="xAxis":i==="y"?n==="yAxis":!0},R8=function(t,n,i,a,s){var o=n.props.children,l=Ur(o,Hg).filter(function(d){return qhe(a,s,d.props.direction)});if(l&&l.length){var c=l.map(function(d){return d.props.dataKey});return t.reduce(function(d,u){var p=fi(u,i);if(Ke(p))return d;var m=Array.isArray(p)?[Ug(p),$g(p)]:[p,p],f=c.reduce(function(x,h){var g=fi(u,h,0),y=m[0]-Math.abs(Array.isArray(g)?g[0]:g),v=m[1]+Math.abs(Array.isArray(g)?g[1]:g);return[Math.min(y,x[0]),Math.max(v,x[1])]},[1/0,-1/0]);return[Math.min(f[0],d[0]),Math.max(f[1],d[1])]},[1/0,-1/0])}return null},Ghe=function(t,n,i,a,s){var o=n.map(function(l){return R8(t,l,i,s,a)}).filter(function(l){return!Ke(l)});return o&&o.length?o.reduce(function(l,c){return[Math.min(l[0],c[0]),Math.max(l[1],c[1])]},[1/0,-1/0]):null},L8=function(t,n,i,a,s){var o=n.map(function(c){var d=c.props.dataKey;return i==="number"&&d&&R8(t,c,d,a)||kd(t,d,i,s)});if(i==="number")return o.reduce(function(c,d){return[Math.min(c[0],d[0]),Math.max(c[1],d[1])]},[1/0,-1/0]);var l={};return o.reduce(function(c,d){for(var u=0,p=d.length;u<p;u++)l[d[u]]||(l[d[u]]=!0,c.push(d[u]));return c},[])},F8=function(t,n){return t==="horizontal"&&n==="xAxis"||t==="vertical"&&n==="yAxis"||t==="centric"&&n==="angleAxis"||t==="radial"&&n==="radiusAxis"},ws=function(t,n,i){if(!t)return null;var a=t.scale,s=t.duplicateDomain,o=t.type,l=t.range,c=t.realScaleType==="scaleBand"?a.bandwidth()/2:2,d=(n||i)&&o==="category"&&a.bandwidth?a.bandwidth()/c:0;if(d=t.axisType==="angleAxis"&&(l==null?void 0:l.length)>=2?Rr(l[0]-l[1])*2*d:d,n&&(t.ticks||t.niceTicks)){var u=(t.ticks||t.niceTicks).map(function(p){var m=s?s.indexOf(p):p;return{coordinate:a(m)+d,value:p,offset:d}});return u.filter(function(p){return!up(p.coordinate)})}return t.isCategorical&&t.categoricalDomain?t.categoricalDomain.map(function(p,m){return{coordinate:a(p)+d,value:p,index:m,offset:d}}):a.ticks&&!i?a.ticks(t.tickCount).map(function(p){return{coordinate:a(p)+d,value:p,offset:d}}):a.domain().map(function(p,m){return{coordinate:a(p)+d,value:s?s[p]:p,index:m,offset:d}})},Ay=new WeakMap,cm=function(t,n){if(typeof n!="function")return t;Ay.has(t)||Ay.set(t,new WeakMap);var i=Ay.get(t);if(i.has(n))return i.get(n);var a=function(){t.apply(void 0,arguments),n.apply(void 0,arguments)};return i.set(n,a),a},Hhe=function(t,n,i){var a=t.scale,s=t.type,o=t.layout,l=t.axisType;if(a==="auto")return o==="radial"&&l==="radiusAxis"?{scale:gu(),realScaleType:"band"}:o==="radial"&&l==="angleAxis"?{scale:rf(),realScaleType:"linear"}:s==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!i)?{scale:jd(),realScaleType:"point"}:s==="category"?{scale:gu(),realScaleType:"band"}:{scale:rf(),realScaleType:"linear"};if(dp(a)){var c="scale".concat(Ig(a));return{scale:(m4[c]||jd)(),realScaleType:m4[c]?c:"point"}}return Be(a)?{scale:a}:{scale:jd(),realScaleType:"point"}},w4=1e-4,zhe=function(t){var n=t.domain();if(!(!n||n.length<=2)){var i=n.length,a=t.range(),s=Math.min(a[0],a[1])-w4,o=Math.max(a[0],a[1])+w4,l=t(n[0]),c=t(n[i-1]);(l<s||l>o||c<s||c>o)&&t.domain([n[0],n[i-1]])}},Whe=function(t,n){if(!t)return null;for(var i=0,a=t.length;i<a;i++)if(t[i].item===n)return t[i].position;return null},Vhe=function(t,n){if(!n||n.length!==2||!ae(n[0])||!ae(n[1]))return t;var i=Math.min(n[0],n[1]),a=Math.max(n[0],n[1]),s=[t[0],t[1]];return(!ae(t[0])||t[0]<i)&&(s[0]=i),(!ae(t[1])||t[1]>a)&&(s[1]=a),s[0]>a&&(s[0]=a),s[1]<i&&(s[1]=i),s},Khe=function(t){var n=t.length;if(!(n<=0))for(var i=0,a=t[0].length;i<a;++i)for(var s=0,o=0,l=0;l<n;++l){var c=up(t[l][i][1])?t[l][i][0]:t[l][i][1];c>=0?(t[l][i][0]=s,t[l][i][1]=s+c,s=t[l][i][1]):(t[l][i][0]=o,t[l][i][1]=o+c,o=t[l][i][1])}},Yhe=function(t){var n=t.length;if(!(n<=0))for(var i=0,a=t[0].length;i<a;++i)for(var s=0,o=0;o<n;++o){var l=up(t[o][i][1])?t[o][i][0]:t[o][i][1];l>=0?(t[o][i][0]=s,t[o][i][1]=s+l,s=t[o][i][1]):(t[o][i][0]=0,t[o][i][1]=0)}},Qhe={sign:Khe,expand:dte,none:Tl,silhouette:ute,wiggle:pte,positive:Yhe},Xhe=function(t,n,i){var a=n.map(function(l){return l.props.dataKey}),s=Qhe[i],o=cte().keys(a).value(function(l,c){return+fi(l,c,0)}).order(Nb).offset(s);return o(t)},Zhe=function(t,n,i,a,s,o){if(!t)return null;var l=o?n.reverse():n,c={},d=l.reduce(function(p,m){var f,x=(f=m.type)!==null&&f!==void 0&&f.defaultProps?Ct(Ct({},m.type.defaultProps),m.props):m.props,h=x.stackId,g=x.hide;if(g)return p;var y=x[i],v=p[y]||{hasStack:!1,stackGroups:{}};if(Ht(h)){var b=v.stackGroups[h]||{numericAxisId:i,cateAxisId:a,items:[]};b.items.push(m),v.hasStack=!0,v.stackGroups[h]=b}else v.stackGroups[Ng("_stackId_")]={numericAxisId:i,cateAxisId:a,items:[m]};return Ct(Ct({},p),{},al({},y,v))},c),u={};return Object.keys(d).reduce(function(p,m){var f=d[m];if(f.hasStack){var x={};f.stackGroups=Object.keys(f.stackGroups).reduce(function(h,g){var y=f.stackGroups[g];return Ct(Ct({},h),{},al({},g,{numericAxisId:i,cateAxisId:a,items:y.items,stackedData:Xhe(t,y.items,s)}))},x)}return Ct(Ct({},p),{},al({},m,f))},u)},Jhe=function(t,n){var i=n.realScaleType,a=n.type,s=n.tickCount,o=n.originalDomain,l=n.allowDecimals,c=i||n.scale;if(c!=="auto"&&c!=="linear")return null;if(s&&a==="number"&&o&&(o[0]==="auto"||o[1]==="auto")){var d=t.domain();if(!d.length)return null;var u=dhe(d,s,l);return t.domain([Ug(u),$g(u)]),{niceTicks:u}}if(s&&a==="number"){var p=t.domain(),m=uhe(p,s,l);return{niceTicks:m}}return null},A4=function(t){var n=t.axis,i=t.ticks,a=t.offset,s=t.bandSize,o=t.entry,l=t.index;if(n.type==="category")return i[l]?i[l].coordinate+a:null;var c=fi(o,n.dataKey,n.domain[l]);return Ke(c)?null:n.scale(c)-s/2+a},efe=function(t){var n=t.numericAxis,i=n.scale.domain();if(n.type==="number"){var a=Math.min(i[0],i[1]),s=Math.max(i[0],i[1]);return a<=0&&s>=0?0:s<0?s:a}return i[0]},tfe=function(t,n){var i,a=(i=t.type)!==null&&i!==void 0&&i.defaultProps?Ct(Ct({},t.type.defaultProps),t.props):t.props,s=a.stackId;if(Ht(s)){var o=n[s];if(o){var l=o.items.indexOf(t);return l>=0?o.stackedData[l]:null}}return null},nfe=function(t){return t.reduce(function(n,i){return[Ug(i.concat([n[0]]).filter(ae)),$g(i.concat([n[1]]).filter(ae))]},[1/0,-1/0])},B8=function(t,n,i){return Object.keys(t).reduce(function(a,s){var o=t[s],l=o.stackedData,c=l.reduce(function(d,u){var p=nfe(u.slice(n,i+1));return[Math.min(d[0],p[0]),Math.max(d[1],p[1])]},[1/0,-1/0]);return[Math.min(c[0],a[0]),Math.max(c[1],a[1])]},[1/0,-1/0]).map(function(a){return a===1/0||a===-1/0?0:a})},j4=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,k4=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,tw=function(t,n,i){if(Be(t))return t(n,i);if(!Array.isArray(t))return n;var a=[];if(ae(t[0]))a[0]=i?t[0]:Math.min(t[0],n[0]);else if(j4.test(t[0])){var s=+j4.exec(t[0])[1];a[0]=n[0]-s}else Be(t[0])?a[0]=t[0](n[0]):a[0]=n[0];if(ae(t[1]))a[1]=i?t[1]:Math.max(t[1],n[1]);else if(k4.test(t[1])){var o=+k4.exec(t[1])[1];a[1]=n[1]+o}else Be(t[1])?a[1]=t[1](n[1]):a[1]=n[1];return a},uf=function(t,n,i){if(t&&t.scale&&t.scale.bandwidth){var a=t.scale.bandwidth();if(!i||a>0)return a}if(t&&n&&n.length>=2){for(var s=U1(n,function(p){return p.coordinate}),o=1/0,l=1,c=s.length;l<c;l++){var d=s[l],u=s[l-1];o=Math.min((d.coordinate||0)-(u.coordinate||0),o)}return o===1/0?0:o}return i?void 0:0},N4=function(t,n,i){return!t||!t.length||uA(t,hr(i,"type.defaultProps.domain"))?n:t},$8=function(t,n){var i=t.type.defaultProps?Ct(Ct({},t.type.defaultProps),t.props):t.props,a=i.dataKey,s=i.name,o=i.unit,l=i.formatter,c=i.tooltipType,d=i.chartType,u=i.hide;return Ct(Ct({},Ve(t,!1)),{},{dataKey:a,unit:o,formatter:l,name:s||a,color:hA(t),value:fi(n,a),type:c,payload:n,chartType:d,hide:u})};function Nu(e){"@babel/helpers - typeof";return Nu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Nu(e)}function I4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function S4(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?I4(Object(n),!0).forEach(function(i){rfe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):I4(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function rfe(e,t,n){return t=ife(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ife(e){var t=afe(e,"string");return Nu(t)=="symbol"?t:t+""}function afe(e,t){if(Nu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Nu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var pf=Math.PI/180,sfe=function(t){return t*180/Math.PI},on=function(t,n,i,a){return{x:t+Math.cos(-pf*a)*i,y:n+Math.sin(-pf*a)*i}},ofe=function(t,n){var i=t.x,a=t.y,s=n.x,o=n.y;return Math.sqrt(Math.pow(i-s,2)+Math.pow(a-o,2))},lfe=function(t,n){var i=t.x,a=t.y,s=n.cx,o=n.cy,l=ofe({x:i,y:a},{x:s,y:o});if(l<=0)return{radius:l};var c=(i-s)/l,d=Math.acos(c);return a>o&&(d=2*Math.PI-d),{radius:l,angle:sfe(d),angleInRadian:d}},cfe=function(t){var n=t.startAngle,i=t.endAngle,a=Math.floor(n/360),s=Math.floor(i/360),o=Math.min(a,s);return{startAngle:n-o*360,endAngle:i-o*360}},dfe=function(t,n){var i=n.startAngle,a=n.endAngle,s=Math.floor(i/360),o=Math.floor(a/360),l=Math.min(s,o);return t+l*360},C4=function(t,n){var i=t.x,a=t.y,s=lfe({x:i,y:a},n),o=s.radius,l=s.angle,c=n.innerRadius,d=n.outerRadius;if(o<c||o>d)return!1;if(o===0)return!0;var u=cfe(n),p=u.startAngle,m=u.endAngle,f=l,x;if(p<=m){for(;f>m;)f-=360;for(;f<p;)f+=360;x=f>=p&&f<=m}else{for(;f>p;)f-=360;for(;f<m;)f+=360;x=f>=m&&f<=p}return x?S4(S4({},n),{},{radius:o,angle:dfe(f,n)}):null};function Iu(e){"@babel/helpers - typeof";return Iu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Iu(e)}var ufe=["offset"];function pfe(e){return gfe(e)||ffe(e)||hfe(e)||mfe()}function mfe(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
520In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hfe(e,t){if(e){if(typeof e=="string")return nw(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return nw(e,t)}}function ffe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function gfe(e){if(Array.isArray(e))return nw(e)}function nw(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function xfe(e,t){if(e==null)return{};var n=yfe(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function yfe(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function E4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Ft(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?E4(Object(n),!0).forEach(function(i){vfe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):E4(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function vfe(e,t,n){return t=bfe(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bfe(e){var t=wfe(e,"string");return Iu(t)=="symbol"?t:t+""}function wfe(e,t){if(Iu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Iu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Su(){return Su=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Su.apply(this,arguments)}var Afe=function(t){var n=t.value,i=t.formatter,a=Ke(t.children)?n:t.children;return Be(i)?i(a):a},jfe=function(t,n){var i=Rr(n-t),a=Math.min(Math.abs(n-t),360);return i*a},kfe=function(t,n,i){var a=t.position,s=t.viewBox,o=t.offset,l=t.className,c=s,d=c.cx,u=c.cy,p=c.innerRadius,m=c.outerRadius,f=c.startAngle,x=c.endAngle,h=c.clockWise,g=(p+m)/2,y=jfe(f,x),v=y>=0?1:-1,b,A;a==="insideStart"?(b=f+v*o,A=h):a==="insideEnd"?(b=x-v*o,A=!h):a==="end"&&(b=x+v*o,A=h),A=y<=0?A:!A;var w=on(d,u,g,b),k=on(d,u,g,b+(A?1:-1)*359),N="M".concat(w.x,",").concat(w.y,`
521    A`).concat(g,",").concat(g,",0,1,").concat(A?0:1,`,
522    `).concat(k.x,",").concat(k.y),I=Ke(t.id)?Ng("recharts-radial-line-"):t.id;return F.createElement("text",Su({},i,{dominantBaseline:"central",className:Ge("recharts-radial-bar-label",l)}),F.createElement("defs",null,F.createElement("path",{id:I,d:N})),F.createElement("textPath",{xlinkHref:"#".concat(I)},n))},Nfe=function(t){var n=t.viewBox,i=t.offset,a=t.position,s=n,o=s.cx,l=s.cy,c=s.innerRadius,d=s.outerRadius,u=s.startAngle,p=s.endAngle,m=(u+p)/2;if(a==="outside"){var f=on(o,l,d+i,m),x=f.x,h=f.y;return{x,y:h,textAnchor:x>=o?"start":"end",verticalAnchor:"middle"}}if(a==="center")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"middle"};if(a==="centerTop")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"start"};if(a==="centerBottom")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"end"};var g=(c+d)/2,y=on(o,l,g,m),v=y.x,b=y.y;return{x:v,y:b,textAnchor:"middle",verticalAnchor:"middle"}},Ife=function(t){var n=t.viewBox,i=t.parentViewBox,a=t.offset,s=t.position,o=n,l=o.x,c=o.y,d=o.width,u=o.height,p=u>=0?1:-1,m=p*a,f=p>0?"end":"start",x=p>0?"start":"end",h=d>=0?1:-1,g=h*a,y=h>0?"end":"start",v=h>0?"start":"end";if(s==="top"){var b={x:l+d/2,y:c-p*a,textAnchor:"middle",verticalAnchor:f};return Ft(Ft({},b),i?{height:Math.max(c-i.y,0),width:d}:{})}if(s==="bottom"){var A={x:l+d/2,y:c+u+m,textAnchor:"middle",verticalAnchor:x};return Ft(Ft({},A),i?{height:Math.max(i.y+i.height-(c+u),0),width:d}:{})}if(s==="left"){var w={x:l-g,y:c+u/2,textAnchor:y,verticalAnchor:"middle"};return Ft(Ft({},w),i?{width:Math.max(w.x-i.x,0),height:u}:{})}if(s==="right"){var k={x:l+d+g,y:c+u/2,textAnchor:v,verticalAnchor:"middle"};return Ft(Ft({},k),i?{width:Math.max(i.x+i.width-k.x,0),height:u}:{})}var N=i?{width:d,height:u}:{};return s==="insideLeft"?Ft({x:l+g,y:c+u/2,textAnchor:v,verticalAnchor:"middle"},N):s==="insideRight"?Ft({x:l+d-g,y:c+u/2,textAnchor:y,verticalAnchor:"middle"},N):s==="insideTop"?Ft({x:l+d/2,y:c+m,textAnchor:"middle",verticalAnchor:x},N):s==="insideBottom"?Ft({x:l+d/2,y:c+u-m,textAnchor:"middle",verticalAnchor:f},N):s==="insideTopLeft"?Ft({x:l+g,y:c+m,textAnchor:v,verticalAnchor:x},N):s==="insideTopRight"?Ft({x:l+d-g,y:c+m,textAnchor:y,verticalAnchor:x},N):s==="insideBottomLeft"?Ft({x:l+g,y:c+u-m,textAnchor:v,verticalAnchor:f},N):s==="insideBottomRight"?Ft({x:l+d-g,y:c+u-m,textAnchor:y,verticalAnchor:f},N):cc(s)&&(ae(s.x)||ys(s.x))&&(ae(s.y)||ys(s.y))?Ft({x:l+Js(s.x,d),y:c+Js(s.y,u),textAnchor:"end",verticalAnchor:"end"},N):Ft({x:l+d/2,y:c+u/2,textAnchor:"middle",verticalAnchor:"middle"},N)},Sfe=function(t){return"cx"in t&&ae(t.cx)};function fn(e){var t=e.offset,n=t===void 0?5:t,i=xfe(e,ufe),a=Ft({offset:n},i),s=a.viewBox,o=a.position,l=a.value,c=a.children,d=a.content,u=a.className,p=u===void 0?"":u,m=a.textBreakAll;if(!s||Ke(l)&&Ke(c)&&!j.isValidElement(d)&&!Be(d))return null;if(j.isValidElement(d))return j.cloneElement(d,a);var f;if(Be(d)){if(f=j.createElement(d,a),j.isValidElement(f))return f}else f=Afe(a);var x=Sfe(s),h=Ve(a,!0);if(x&&(o==="insideStart"||o==="insideEnd"||o==="end"))return kfe(a,f,h);var g=x?Nfe(a):Ife(a);return F.createElement(Qh,Su({className:Ge("recharts-label",p)},h,g,{breakAll:m}),f)}fn.displayName="Label";var U8=function(t){var n=t.cx,i=t.cy,a=t.angle,s=t.startAngle,o=t.endAngle,l=t.r,c=t.radius,d=t.innerRadius,u=t.outerRadius,p=t.x,m=t.y,f=t.top,x=t.left,h=t.width,g=t.height,y=t.clockWise,v=t.labelViewBox;if(v)return v;if(ae(h)&&ae(g)){if(ae(p)&&ae(m))return{x:p,y:m,width:h,height:g};if(ae(f)&&ae(x))return{x:f,y:x,width:h,height:g}}return ae(p)&&ae(m)?{x:p,y:m,width:0,height:0}:ae(n)&&ae(i)?{cx:n,cy:i,startAngle:s||a||0,endAngle:o||a||0,innerRadius:d||0,outerRadius:u||c||l||0,clockWise:y}:t.viewBox?t.viewBox:{}},Cfe=function(t,n){return t?t===!0?F.createElement(fn,{key:"label-implicit",viewBox:n}):Ht(t)?F.createElement(fn,{key:"label-implicit",viewBox:n,value:t}):j.isValidElement(t)?t.type===fn?j.cloneElement(t,{key:"label-implicit",viewBox:n}):F.createElement(fn,{key:"label-implicit",content:t,viewBox:n}):Be(t)?F.createElement(fn,{key:"label-implicit",content:t,viewBox:n}):cc(t)?F.createElement(fn,Su({viewBox:n},t,{key:"label-implicit"})):null:null},Efe=function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;
vendor: 9,246 bytes, lines 522-540
522if(!t||!t.children&&i&&!t.label)return null;var a=t.children,s=U8(t),o=Ur(a,fn).map(function(c,d){return j.cloneElement(c,{viewBox:n||s,key:"label-".concat(d)})});if(!i)return o;var l=Cfe(t.label,n||s);return[l].concat(pfe(o))};fn.parseViewBox=U8;fn.renderCallByParent=Efe;function _fe(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var Pfe=_fe;const Tfe=Qe(Pfe);function Cu(e){"@babel/helpers - typeof";return Cu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cu(e)}var Dfe=["valueAccessor"],Ofe=["data","dataKey","clockWise","id","textBreakAll"];function Mfe(e){return Bfe(e)||Ffe(e)||Lfe(e)||Rfe()}function Rfe(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
523In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Lfe(e,t){if(e){if(typeof e=="string")return rw(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return rw(e,t)}}function Ffe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Bfe(e){if(Array.isArray(e))return rw(e)}function rw(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function mf(){return mf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},mf.apply(this,arguments)}function _4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function P4(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?_4(Object(n),!0).forEach(function(i){$fe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_4(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function $fe(e,t,n){return t=Ufe(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ufe(e){var t=qfe(e,"string");return Cu(t)=="symbol"?t:t+""}function qfe(e,t){if(Cu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Cu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function T4(e,t){if(e==null)return{};var n=Gfe(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function Gfe(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}var Hfe=function(t){return Array.isArray(t.value)?Tfe(t.value):t.value};function Ui(e){var t=e.valueAccessor,n=t===void 0?Hfe:t,i=T4(e,Dfe),a=i.data,s=i.dataKey,o=i.clockWise,l=i.id,c=i.textBreakAll,d=T4(i,Ofe);return!a||!a.length?null:F.createElement(Qt,{className:"recharts-label-list"},a.map(function(u,p){var m=Ke(s)?n(u,p):fi(u&&u.payload,s),f=Ke(l)?{}:{id:"".concat(l,"-").concat(p)};return F.createElement(fn,mf({},Ve(u,!0),d,f,{parentViewBox:u.parentViewBox,value:m,textBreakAll:c,viewBox:fn.parseViewBox(Ke(o)?u:P4(P4({},u),{},{clockWise:o})),key:"label-".concat(p),index:p}))}))}Ui.displayName="LabelList";function zfe(e,t){return e?e===!0?F.createElement(Ui,{key:"labelList-implicit",data:t}):F.isValidElement(e)||Be(e)?F.createElement(Ui,{key:"labelList-implicit",data:t,content:e}):cc(e)?F.createElement(Ui,mf({data:t},e,{key:"labelList-implicit"})):null:null}function Wfe(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!e||!e.children&&n&&!e.label)return null;var i=e.children,a=Ur(i,Ui).map(function(o,l){return j.cloneElement(o,{data:t,key:"labelList-".concat(l)})});if(!n)return a;var s=zfe(e.label,t);return[s].concat(Mfe(a))}Ui.renderCallByParent=Wfe;function Eu(e){"@babel/helpers - typeof";return Eu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Eu(e)}function iw(){return iw=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},iw.apply(this,arguments)}function D4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function O4(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?D4(Object(n),!0).forEach(function(i){Vfe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):D4(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Vfe(e,t,n){return t=Kfe(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Kfe(e){var t=Yfe(e,"string");return Eu(t)=="symbol"?t:t+""}function Yfe(e,t){if(Eu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Eu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Qfe=function(t,n){var i=Rr(n-t),a=Math.min(Math.abs(n-t),359.999);return i*a},dm=function(t){var n=t.cx,i=t.cy,a=t.radius,s=t.angle,o=t.sign,l=t.isExternal,c=t.cornerRadius,d=t.cornerIsExternal,u=c*(l?1:-1)+a,p=Math.asin(c/u)/pf,m=d?s:s+o*p,f=on(n,i,u,m),x=on(n,i,a,m),h=d?s-o*p:s,g=on(n,i,u*Math.cos(p*pf),h);return{center:f,circleTangency:x,lineTangency:g,theta:p}},q8=function(t){var n=t.cx,i=t.cy,a=t.innerRadius,s=t.outerRadius,o=t.startAngle,l=t.endAngle,c=Qfe(o,l),d=o+c,u=on(n,i,s,o),p=on(n,i,s,d),m="M ".concat(u.x,",").concat(u.y,`
524    A `).concat(s,",").concat(s,`,0,
525    `).concat(+(Math.abs(c)>180),",").concat(+(o>d),`,
526    `).concat(p.x,",").concat(p.y,`
527  `);if(a>0){var f=on(n,i,a,o),x=on(n,i,a,d);m+="L ".concat(x.x,",").concat(x.y,`
528            A `).concat(a,",").concat(a,`,0,
529            `).concat(+(Math.abs(c)>180),",").concat(+(o<=d),`,
530            `).concat(f.x,",").concat(f.y," Z")}else m+="L ".concat(n,",").concat(i," Z");return m},Xfe=function(t){var n=t.cx,i=t.cy,a=t.innerRadius,s=t.outerRadius,o=t.cornerRadius,l=t.forceCornerRadius,c=t.cornerIsExternal,d=t.startAngle,u=t.endAngle,p=Rr(u-d),m=dm({cx:n,cy:i,radius:s,angle:d,sign:p,cornerRadius:o,cornerIsExternal:c}),f=m.circleTangency,x=m.lineTangency,h=m.theta,g=dm({cx:n,cy:i,radius:s,angle:u,sign:-p,cornerRadius:o,cornerIsExternal:c}),y=g.circleTangency,v=g.lineTangency,b=g.theta,A=c?Math.abs(d-u):Math.abs(d-u)-h-b;if(A<0)return l?"M ".concat(x.x,",").concat(x.y,`
531        a`).concat(o,",").concat(o,",0,0,1,").concat(o*2,`,0
532        a`).concat(o,",").concat(o,",0,0,1,").concat(-o*2,`,0
533      `):q8({cx:n,cy:i,innerRadius:a,outerRadius:s,startAngle:d,endAngle:u});var w="M ".concat(x.x,",").concat(x.y,`
534    A`).concat(o,",").concat(o,",0,0,").concat(+(p<0),",").concat(f.x,",").concat(f.y,`
535    A`).concat(s,",").concat(s,",0,").concat(+(A>180),",").concat(+(p<0),",").concat(y.x,",").concat(y.y,`
536    A`).concat(o,",").concat(o,",0,0,").concat(+(p<0),",").concat(v.x,",").concat(v.y,`
537  `);if(a>0){var k=dm({cx:n,cy:i,radius:a,angle:d,sign:p,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),N=k.circleTangency,I=k.lineTangency,C=k.theta,O=dm({cx:n,cy:i,radius:a,angle:u,sign:-p,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),_=O.circleTangency,D=O.lineTangency,G=O.theta,P=c?Math.abs(d-u):Math.abs(d-u)-C-G;if(P<0&&o===0)return"".concat(w,"L").concat(n,",").concat(i,"Z");w+="L".concat(D.x,",").concat(D.y,`
538      A`).concat(o,",").concat(o,",0,0,").concat(+(p<0),",").concat(_.x,",").concat(_.y,`
539      A`).concat(a,",").concat(a,",0,").concat(+(P>180),",").concat(+(p>0),",").concat(N.x,",").concat(N.y,`
540      A`).concat(o,",").concat(o,",0,0,").concat(+(p<0),",").concat(I.x,",").concat(I.y,"Z")}else w+="L".concat(n,",").concat(i,"Z");return w},Zfe={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},G8=function(t){var n=O4(O4({},Zfe),t),i=n.cx,a=n.cy,s=n.innerRadius,o=n.outerRadius,l=n.cornerRadius,c=n.forceCornerRadius,d=n.cornerIsExternal,u=n.startAngle,p=n.endAngle,m=n.className;if(o<s||u===p)return null;var f=Ge("recharts-sector",m),x=o-s,h=Js(l,x,0,!0),g;return h>0&&Math.abs(u-p)<360?g=Xfe({cx:i,cy:a,innerRadius:s,outerRadius:o,cornerRadius:Math.min(h,x/2),forceCornerRadius:c,cornerIsExternal:d,startAngle:u,endAngle:p}):g=q8({cx:i,cy:a,innerRadius:s,outerRadius:o,startAngle:u,endAngle:p}
540),F.createElement("path",iw({},Ve(n,!0),{className:f,d:g,role:"img"}))};function _u(e){"@babel/helpers - typeof";return _u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_u(e)}function aw(){return aw=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},aw.apply(this,arguments)}function M4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function R4(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?M4(Object(n),!0).forEach(function(i){Jfe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):M4(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Jfe(e,t,n){return t=ege(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ege(e){var t=tge(e,"string");return _u(t)=="symbol"?t:t+""}function tge(e,t){if(_u(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(_u(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var L4={curveBasisClosed:Zee,curveBasisOpen:Jee,curveBasis:Xee,curveBumpX:Lee,curveBumpY:Fee,curveLinearClosed:ete,curveLinear:Cg,curveMonotoneX:tte,curveMonotoneY:nte,curveNatural:rte,curveStep:ite,curveStepAfter:ste,curveStepBefore:ate},um=function(t){return t.x===+t.x&&t.y===+t.y},zc=function(t){return t.x},Wc=function(t){return t.y},nge=function(t,n){if(Be(t))return t;var i="curve".concat(Ig(t));return(i==="curveMonotone"||i==="curveBump")&&n?L4["".concat(i).concat(n==="vertical"?"Y":"X")]:L4[i]||Cg},rge=function(t){var n=t.type,i=n===void 0?"linear":n,a=t.points,s=a===void 0?[]:a,o=t.baseLine,l=t.layout,c=t.connectNulls,d=c===void 0?!1:c,u=nge(i,l),p=d?s.filter(function(h){return um(h)}):s,m;if(Array.isArray(o)){var f=d?o.filter(function(h){return um(h)}):o,x=p.map(function(h,g){return R4(R4({},h),{},{base:f[g]})});return l==="vertical"?m=tm().y(Wc).x1(zc).x0(function(h){return h.base.x}):m=tm().x(zc).y1(Wc).y0(function(h){return h.base.y}),m.defined(um).curve(u),m(x)}return l==="vertical"&&ae(o)?m=tm().y(Wc).x1(zc).x0(o):ae(o)?m=tm().x(zc).y1(Wc).y0(o):m=zR().x(zc).y(Wc),m.defined(um).curve(u),m(p)},F4=function(t){var n=t.className,i=t.points,a=t.path,s=t.pathRef;if((!i||!i.length)&&!a)return null;var o=i&&i.length?rge(t):a;return F.createElement("path",aw({},Ve(t,!1),Mh(t),{className:Ge("recharts-curve",n),d:o,ref:s}))},H8={exports:{}},ige="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",age=ige,sge=age;function z8(){}function W8(){}W8.resetWarningCache=z8;var oge=function(){function e(i,a,s,o,l,c){if(c!==sge){var d=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw d.name="Invariant Violation",d}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:W8,resetWarningCache:z8};return n.PropTypes=n,n};H8.exports=oge();var lge=H8.exports;const Ie=Qe(lge);var cge=Object.getOwnPropertyNames,dge=Object.getOwnPropertySymbols,uge=Object.prototype.hasOwnProperty;function B4(e,t){return function(i,a,s){return e(i,a,s)&&t(i,a,s)}}function pm(e){return function(n,i,a){if(!n||!i||typeof n!="object"||typeof i!="object")return e(n,i,a);var s=a.cache,o=s.get(n),l=s.get(i);if(o&&l)return o===i&&l===n;s.set(n,i),s.set(i,n);var c=e(n,i,a);return s.delete(n),s.delete(i),c}}function $4(e){return cge(e).concat(dge(e))}var V8=Object.hasOwn||function(e,t){return uge.call(e,t)};function bc(e,t){return e||t?e===t:e===t||e!==e&&t!==t}var K8="_owner",U4=Object.getOwnPropertyDescriptor,q4=Object.keys;function pge(e,t,n){var i=e.length;if(t.length!==i)return!1;for(;i-- >0;)if(!n.equals(e[i],t[i],i,i,e,t,n))return!1;return!0}function mge(e,t){return bc(e.getTime(),t.getTime())}function G4(e,t,n){if(e.size!==t.size)return!1;for(var i={},a=e.entries(),s=0,o,l;(o=a.next())&&!o.done;){for(var c=t.entries(),d=!1,u=0;(l=c.next())&&!l.done;){var p=o.value,m=p[0],f=p[1],x=l.value,h=x[0],g=x[1];!d&&!i[u]&&(d=n.equals(m,h,s,u,e,t,n)&&n.equals(f,g,m,h,e,t,n))&&
540(i[u]=!0),u++}if(!d)return!1;s++}return!0}function hge(e,t,n){var i=q4(e),a=i.length;if(q4(t).length!==a)return!1;for(var s;a-- >0;)if(s=i[a],s===K8&&(e.$$typeof||t.$$typeof)&&e.$$typeof!==t.$$typeof||!V8(t,s)||!n.equals(e[s],t[s],s,s,e,t,n))return!1;return!0}function Vc(e,t,n){var i=$4(e),a=i.length;if($4(t).length!==a)return!1;for(var s,o,l;a-- >0;)if(s=i[a],s===K8&&(e.$$typeof||t.$$typeof)&&e.$$typeof!==t.$$typeof||!V8(t,s)||!n.equals(e[s],t[s],s,s,e,t,n)||(o=U4(e,s),l=U4(t,s),(o||l)&&(!o||!l||o.configurable!==l.configurable||o.enumerable!==l.enumerable||o.writable!==l.writable)))return!1;return!0}function fge(e,t){return bc(e.valueOf(),t.valueOf())}function gge(e,t){return e.source===t.source&&e.flags===t.flags}function H4(e,t,n){if(e.size!==t.size)return!1;for(var i={},a=e.values(),s,o;(s=a.next())&&!s.done;){for(var l=t.values(),c=!1,d=0;(o=l.next())&&!o.done;)!c&&!i[d]&&(c=n.equals(s.value,o.value,s.value,o.value,e,t,n))&&(i[d]=!0),d++;if(!c)return!1}return!0}function xge(e,t){var n=e.length;if(t.length!==n)return!1;for(;n-- >0;)if(e[n]!==t[n])return!1;return!0}var yge="[object Arguments]",vge="[object Boolean]",bge="[object Date]",wge="[object Map]",Age="[object Number]",jge="[object Object]",kge="[object RegExp]",Nge="[object Set]",Ige="[object String]",Sge=Array.isArray,z4=typeof ArrayBuffer=="function"&&ArrayBuffer.isView?ArrayBuffer.isView:null,W4=Object.assign,Cge=Object.prototype.toString.call.bind(Object.prototype.toString);function Ege(e){var t=e.areArraysEqual,n=e.areDatesEqual,i=e.areMapsEqual,a=e.areObjectsEqual,s=e.arePrimitiveWrappersEqual,o=e.areRegExpsEqual,l=e.areSetsEqual,c=e.areTypedArraysEqual;return function(u,p,m){if(u===p)return!0;if(u==null||p==null||typeof u!="object"||typeof p!="object")return u!==u&&p!==p;var f=u.constructor;if(f!==p.constructor)return!1;if(f===Object)return a(u,p,m);if(Sge(u))return t(u,p,m);if(z4!=null&&z4(u))return c(u,p,m);if(f===Date)return n(u,p,m);if(f===RegExp)return o(u,p,m);if(f===Map)return i(u,p,m);if(f===Set)return l(u,p,m);var x=Cge(u);return x===bge?n(u,p,m):x===kge?o(u,p,m):x===wge?i(u,p,m):x===Nge?l(u,p,m):x===jge?typeof u.then!="function"&&typeof p.then!="function"&&a(u,p,m):x===yge?a(u,p,m):x===vge||x===Age||x===Ige?s(u,p,m):!1}}function _ge(e){var t=e.circular,n=e.createCustomConfig,i=e.strict,a={areArraysEqual:i?Vc:pge,areDatesEqual:mge,areMapsEqual:i?B4(G4,Vc):G4,areObjectsEqual:i?Vc:hge,arePrimitiveWrappersEqual:fge,areRegExpsEqual:gge,areSetsEqual:i?B4(H4,Vc):H4,areTypedArraysEqual:i?Vc:xge};if(n&&(a=W4({},a,n(a))),t){var s=pm(a.areArraysEqual),o=pm(a.areMapsEqual),l=pm(a.areObjectsEqual),c=pm(a.areSetsEqual);a=W4({},a,{areArraysEqual:s,areMapsEqual:o,areObjectsEqual:l,areSetsEqual:c})}return a}function Pge(e){return function(t,n,i,a,s,o,l){return e(t,n,l)}}function Tge(e){var t=e.circular,n=e.comparator,i=e.createState,a=e.equals,s=e.strict;if(i)return function(c,d){var u=i(),p=u.cache,m=p===void 0?t?new WeakMap:void 0:p,f=u.meta;return n(c,d,{cache:m,equals:a,meta:f,strict:s})};if(t)return function(c,d){return n(c,d,{cache:new WeakMap,equals:a,meta:void 0,strict:s})};var o={cache:void 0,equals:a,meta:void 0,strict:s};return function(c,d){return n(c,d,o)}}var Dge=ns();ns({strict:!0});ns({circular:!0});ns({circular:!0,strict:!0});ns({createInternalComparator:function(){return bc}});ns({strict:!0,createInternalComparator:function(){return bc}});ns({circular:!0,createInternalComparator:function(){return bc}});ns({circular:!0,createInternalComparator:function(){return bc},strict:!0});function ns(e){e===void 0&&(e={});var t=e.circular,n=t===void 0?!1:t,i=e.createInternalComparator,a=e.createState,s=e.strict,o=s===void 0?!1:s,l=_ge(e),c=Ege(l),d=i?i(c):Pge(c);return Tge({circular:n,comparator:c,createState:a,equals:d,strict:o})}function Oge(e){typeof requestAnimationFrame<"u"&&requestAnimationFrame(e)}function V4(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=-1,i=function a(s){n<0&&(n=s),s-n>t?(e(s),n=-1):Oge(a)};requestAnimationFrame(i)}function sw(e){"@babel/helpers - typeof";return sw=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},sw(e)}function Mge(e){return Bge(e)||Fge(e)||Lge(e)||Rge()}
vendor: 145,638 bytes, lines 540-562
540function Rge(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
541In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Lge(e,t){if(e){if(typeof e=="string")return K4(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return K4(e,t)}}function K4(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function Fge(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Bge(e){if(Array.isArray(e))return e}function $ge(){var e={},t=function(){return null},n=!1,i=function a(s){if(!n){if(Array.isArray(s)){if(!s.length)return;var o=s,l=Mge(o),c=l[0],d=l.slice(1);if(typeof c=="number"){V4(a.bind(null,d),c);return}a(c),V4(a.bind(null,d));return}sw(s)==="object"&&(e=s,t(e)),typeof s=="function"&&s()}};return{stop:function(){n=!0},start:function(s){n=!1,i(s)},subscribe:function(s){return t=s,function(){t=function(){return null}}}}}function Pu(e){"@babel/helpers - typeof";return Pu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Pu(e)}function Y4(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Q4(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Y4(Object(n),!0).forEach(function(i){Y8(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Y4(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Y8(e,t,n){return t=Uge(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Uge(e){var t=qge(e,"string");return Pu(t)==="symbol"?t:String(t)}function qge(e,t){if(Pu(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Pu(i)!=="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Gge=function(t,n){return[Object.keys(t),Object.keys(n)].reduce(function(i,a){return i.filter(function(s){return a.includes(s)})})},Hge=function(t){return t},zge=function(t){return t.replace(/([A-Z])/g,function(n){return"-".concat(n.toLowerCase())})},Nd=function(t,n){return Object.keys(n).reduce(function(i,a){return Q4(Q4({},i),{},Y8({},a,t(a,n[a])))},{})},X4=function(t,n,i){return t.map(function(a){return"".concat(zge(a)," ").concat(n,"ms ").concat(i)}).join(",")};function Wge(e,t){return Yge(e)||Kge(e,t)||Q8(e,t)||Vge()}function Vge(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
542In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Kge(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function Yge(e){if(Array.isArray(e))return e}function Qge(e){return Jge(e)||Zge(e)||Q8(e)||Xge()}function Xge(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
543In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Q8(e,t){if(e){if(typeof e=="string")return ow(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ow(e,t)}}function Zge(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Jge(e){if(Array.isArray(e))return ow(e)}function ow(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}var hf=1e-4,X8=function(t,n){return[0,3*t,3*n-6*t,3*t-3*n+1]},Z8=function(t,n){return t.map(function(i,a){return i*Math.pow(n,a)}).reduce(function(i,a){return i+a})},Z4=function(t,n){return function(i){var a=X8(t,n);return Z8(a,i)}},exe=function(t,n){return function(i){var a=X8(t,n),s=[].concat(Qge(a.map(function(o,l){return o*l}).slice(1)),[0]);return Z8(s,i)}},J4=function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];var a=n[0],s=n[1],o=n[2],l=n[3];if(n.length===1)switch(n[0]){case"linear":a=0,s=0,o=1,l=1;break;case"ease":a=.25,s=.1,o=.25,l=1;break;case"ease-in":a=.42,s=0,o=1,l=1;break;case"ease-out":a=.42,s=0,o=.58,l=1;break;case"ease-in-out":a=0,s=0,o=.58,l=1;break;default:{var c=n[0].split("(");if(c[0]==="cubic-bezier"&&c[1].split(")")[0].split(",").length===4){var d=c[1].split(")")[0].split(",").map(function(g){return parseFloat(g)}),u=Wge(d,4);a=u[0],s=u[1],o=u[2],l=u[3]}}}var p=Z4(a,o),m=Z4(s,l),f=exe(a,o),x=function(y){return y>1?1:y<0?0:y},h=function(y){for(var v=y>1?1:y,b=v,A=0;A<8;++A){var w=p(b)-v,k=f(b);if(Math.abs(w-v)<hf||k<hf)return m(b);b=x(b-w/k)}return m(b)};return h.isStepper=!1,h},txe=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=t.stiff,i=n===void 0?100:n,a=t.damping,s=a===void 0?8:a,o=t.dt,l=o===void 0?17:o,c=function(u,p,m){var f=-(u-p)*i,x=m*s,h=m+(f-x)*l/1e3,g=m*l/1e3+u;return Math.abs(g-p)<hf&&Math.abs(h)<hf?[p,0]:[g,h]};return c.isStepper=!0,c.dt=l,c},nxe=function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];var a=n[0];if(typeof a=="string")switch(a){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return J4(a);case"spring":return txe();default:if(a.split("(")[0]==="cubic-bezier")return J4(a)}return typeof a=="function"?a:null};function Tu(e){"@babel/helpers - typeof";return Tu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Tu(e)}function eS(e){return axe(e)||ixe(e)||J8(e)||rxe()}function rxe(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
544In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ixe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function axe(e){if(Array.isArray(e))return cw(e)}function tS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function nn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?tS(Object(n),!0).forEach(function(i){lw(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function lw(e,t,n){return t=sxe(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function sxe(e){var t=oxe(e,"string");return Tu(t)==="symbol"?t:String(t)}function oxe(e,t){if(Tu(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Tu(i)!=="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function lxe(e,t){return uxe(e)||dxe(e,t)||J8(e,t)||cxe()}function cxe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
545In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function J8(e,t){if(e){if(typeof e=="string")return cw(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return cw(e,t)}}function cw(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function dxe(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function uxe(e){if(Array.isArray(e))return e}var ff=function(t,n,i){return t+(n-t)*i},dw=function(t){var n=t.from,i=t.to;return n!==i},pxe=function e(t,n,i){var a=Nd(function(s,o){if(dw(o)){var l=t(o.from,o.to,o.velocity),c=lxe(l,2),d=c[0],u=c[1];return nn(nn({},o),{},{from:d,velocity:u})}return o},n);return i<1?Nd(function(s,o){return dw(o)?nn(nn({},o),{},{velocity:ff(o.velocity,a[s].velocity,i),from:ff(o.from,a[s].from,i)}):o},n):e(t,a,i-1)};const mxe=function(e,t,n,i,a){var s=Gge(e,t),o=s.reduce(function(g,y){return nn(nn({},g),{},lw({},y,[e[y],t[y]]))},{}),l=s.reduce(function(g,y){return nn(nn({},g),{},lw({},y,{from:e[y],velocity:0,to:t[y]}))},{}),c=-1,d,u,p=function(){return null},m=function(){return Nd(function(y,v){return v.from},l)},f=function(){return!Object.values(l).filter(dw).length},x=function(y){d||(d=y);var v=y-d,b=v/n.dt;l=pxe(n,l,b),a(nn(nn(nn({},e),t),m())),d=y,f()||(c=requestAnimationFrame(p))},h=function(y){u||(u=y);var v=(y-u)/i,b=Nd(function(w,k){return ff.apply(void 0,eS(k).concat([n(v)]))},o);if(a(nn(nn(nn({},e),t),b)),v<1)c=requestAnimationFrame(p);else{var A=Nd(function(w,k){return ff.apply(void 0,eS(k).concat([n(1)]))},o);a(nn(nn(nn({},e),t),A))}};return p=n.isStepper?x:h,function(){return requestAnimationFrame(p),function(){cancelAnimationFrame(c)}}};function Ul(e){"@babel/helpers - typeof";return Ul=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ul(e)}var hxe=["children","begin","duration","attributeName","easing","isActive","steps","from","to","canBegin","onAnimationEnd","shouldReAnimate","onAnimationReStart"];function fxe(e,t){if(e==null)return{};var n=gxe(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function gxe(e,t){if(e==null)return{};var n={},i=Object.keys(e),a,s;for(s=0;s<i.length;s++)a=i[s],!(t.indexOf(a)>=0)&&(n[a]=e[a]);return n}function jy(e){return bxe(e)||vxe(e)||yxe(e)||xxe()}function xxe(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
546In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function yxe(e,t){if(e){if(typeof e=="string")return uw(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return uw(e,t)}}function vxe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function bxe(e){if(Array.isArray(e))return uw(e)}function uw(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function nS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function jr(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?nS(Object(n),!0).forEach(function(i){ld(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):nS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function ld(e,t,n){return t=eF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function wxe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Axe(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,eF(i.key),i)}}function jxe(e,t,n){return t&&Axe(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function eF(e){var t=kxe(e,"string");return Ul(t)==="symbol"?t:String(t)}function kxe(e,t){if(Ul(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Ul(i)!=="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Nxe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&pw(e,t)}function pw(e,t){return pw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},pw(e,t)}function Ixe(e){var t=Sxe();return function(){var i=gf(e),a;if(t){var s=gf(this).constructor;a=Reflect.construct(i,arguments,s)}else a=i.apply(this,arguments);return mw(this,a)}}function mw(e,t){if(t&&(Ul(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return hw(e)}function hw(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Sxe(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function gf(e){return gf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},gf(e)}var Ya=function(e){Nxe(n,e);var t=Ixe(n);function n(i,a){var s;wxe(this,n),s=t.call(this,i,a);var o=s.props,l=o.isActive,c=o.attributeName,d=o.from,u=o.to,p=o.steps,m=o.children,f=o.duration;if(s.handleStyleChange=s.handleStyleChange.bind(hw(s)),s.changeStyle=s.changeStyle.bind(hw(s)),!l||f<=0)return s.state={style:{}},typeof m=="function"&&(s.state={style:u}),mw(s);if(p&&p.length)s.state={style:p[0].style};else if(d){if(typeof m=="function")return s.state={style:d},mw(s);s.state={style:c?ld({},c,d):d}}else s.state={style:{}};return s}return jxe(n,[{key:"componentDidMount",value:function(){var a=this.props,s=a.isActive,o=a.canBegin;this.mounted=!0,!(!s||!o)&&this.runAnimation(this.props)}},{key:"componentDidUpdate",value:function(a){var s=this.props,o=s.isActive,l=s.canBegin,c=s.attributeName,d=s.shouldReAnimate,u=s.to,p=s.from,m=this.state.style;if(l){if(!o){var f={style:c?ld({},c,u):u};this.state&&m&&(c&&m[c]!==u||!c&&m!==u)&&this.setState(f);return}if(!(Dge(a.to,u)&&a.canBegin&&a.isActive)){var x=!a.canBegin||!a.isActive;this.manager&&this.manager.stop(),this.stopJSAnimation&&this.stopJSAnimation();var h=x||d?p:a.to;if(this.state&&m){var g={style:c?ld({},c,h):h};(c&&m[c]!==h||!c&&m!==h)&&this.setState(g)}this.runAnimation(jr(jr({},this.props),{},{from:h,begin:0}))}}}},{key:"componentWillUnmount",value:function(){this.mounted=!1;var a=this.props.onAnimationEnd;this.unSubscribe&&this.unSubscribe(),this.manager&&(this.manager.stop(),this.manager=null),this.stopJSAnimation&&this.stopJSAnimation(),a&&a()}},{key:"handleStyleChange",value:function(a){this.changeStyle(a)}},{key:"changeStyle",value:function(a){this.mounted&&this.setState({style:a})}},{key:"runJSAnimation",value:function(a){var s=this,o=a.from,l=a.to,c=a.duration,d=a.easing,u=a.begin,p=a.onAnimationEnd,m=a.onAnimationStart,f=mxe(o,l,nxe(d),c,this.changeStyle),x=function(){s.stopJSAnimation=f()};this.manager.start([m,u,x,c,p])}},{key:"runStepAnimation",value:function(a){var s=this,o=a.steps,l=a.begin,c=a.onAnimationStart,d=o[0],u=d.style,p=d.duration,m=p===void 0?0:p,f=function(h,g,y){if(y===0)return h;var v=g.duration,b=g.easing,A=b===void 0?"ease":b,w=g.style,k=g.properties,N=g.onAnimationEnd,I=y>0?o[y-1]:g,C=k||Object.keys(w);if(typeof A=="function"||A==="spring")return[].concat(jy(h),[s.runJSAnimation.bind(s,{from:I.style,to:w,duration:v,easing:A}),v]);var O=X4(C,v,A),_=jr(jr(jr({},I.style),w),{},{transition:O});return[].concat(jy(h),[_,v,N]).filter(Hge)};return this.manager.start([c].concat(jy(o.reduce(f,[u,Math.max(m,l)])),[a.onAnimationEnd]))}},{key:"runAnimation",value:function(a){this.manager||(this.manager=$ge());var s=a.begin,o=a.duration,l=a.attributeName,c=a.to,d=a.easing,u=a.onAnimationStart,p=a.onAnimationEnd,m=a.steps,f=a.children,x=this.manager;if(this.unSubscribe=x.subscribe(this.handleStyleChange),typeof d=="function"||typeof f=="function"||d==="spring"){this.runJSAnimation(a);return}if(m.length>1){this.runStepAnimation(a);return}var h=l?ld({},l,c):c,g=X4(Object.keys(h),o,d);x.start([u,s,jr(jr({},h),{},{transition:g}),o,p])}},{key:"render",value:function(){var a=this.props,s=a.children;a.begin;var o=a.duration;a.attributeName,a.easing;var l=a.isActive;a.steps,a.from,a.to,a.canBegin,a.onAnimationEnd,a.shouldReAnimate,a.onAnimationReStart;var c=fxe(a,hxe),d=j.Children.count(s),u=this.state.style;if(typeof s=="function")return s(u);if(!l||d===0||o<=0)return s;var p=function(f){var x=f.props,h=x.style,g=h===void 0?{}:h,y=x.className,v=j.cloneElement(f,jr(jr({},c),{},{style:jr(jr({},g),u),className:y}));return v};return d===1?p(j.Children.only(s)):F.createElement("div",null,j.Children.map(s,function(m){return p(m)}))}}]),n}(j.PureComponent);Ya.displayName="Animate";Ya.defaultProps={begin:0,duration:1e3,from:"",to:"",attributeName:"",easing:"ease",isActive:!0,canBegin:!0,steps:[],onAnimationEnd:function(){},onAnimationStart:function(){}};Ya.propTypes={from:Ie.oneOfType([Ie.object,Ie.string]),to:Ie.oneOfType([Ie.object,Ie.string]),attributeName:Ie.string,duration:Ie.number,begin:Ie.number,easing:Ie.oneOfType([Ie.string,Ie.func]),steps:Ie.arrayOf(Ie.shape({duration:Ie.number.isRequired,style:Ie.object.isRequired,easing:Ie.oneOfType([Ie.oneOf(["ease","ease-in","ease-out","ease-in-out","linear"]),Ie.func]),properties:Ie.arrayOf("string"),onAnimationEnd:Ie.func})),children:Ie.oneOfType([Ie.node,Ie.func]),isActive:Ie.bool,canBegin:Ie.bool,onAnimationEnd:Ie.func,shouldReAnimate:Ie.bool,onAnimationStart:Ie.func,onAnimationReStart:Ie.func};Ie.object,Ie.object,Ie.object,Ie.element;Ie.object,Ie.object,Ie.object,Ie.oneOfType([Ie.array,Ie.element]),Ie.any;function Du(e){"@babel/helpers - typeof";return Du=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Du(e)}function xf(){return xf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},xf.apply(this,arguments)}function Cxe(e,t){return Txe(e)||Pxe(e,t)||_xe(e,t)||Exe()}function Exe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
547In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _xe(e,t){if(e){if(typeof e=="string")return rS(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return rS(e,t)}}function rS(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function Pxe(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function Txe(e){if(Array.isArray(e))return e}function iS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function aS(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?iS(Object(n),!0).forEach(function(i){Dxe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):iS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Dxe(e,t,n){return t=Oxe(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Oxe(e){var t=Mxe(e,"string");return Du(t)=="symbol"?t:t+""}function Mxe(e,t){if(Du(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Du(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var sS=function(t,n,i,a,s){var o=Math.min(Math.abs(i)/2,Math.abs(a)/2),l=a>=0?1:-1,c=i>=0?1:-1,d=a>=0&&i>=0||a<0&&i<0?1:0,u;if(o>0&&s instanceof Array){for(var p=[0,0,0,0],m=0,f=4;m<f;m++)p[m]=s[m]>o?o:s[m];u="M".concat(t,",").concat(n+l*p[0]),p[0]>0&&(u+="A ".concat(p[0],",").concat(p[0],",0,0,").concat(d,",").concat(t+c*p[0],",").concat(n)),u+="L ".concat(t+i-c*p[1],",").concat(n),p[1]>0&&(u+="A ".concat(p[1],",").concat(p[1],",0,0,").concat(d,`,
548        `).concat(t+i,",").concat(n+l*p[1])),u+="L ".concat(t+i,",").concat(n+a-l*p[2]),p[2]>0&&(u+="A ".concat(p[2],",").concat(p[2],",0,0,").concat(d,`,
549        `).concat(t+i-c*p[2],",").concat(n+a)),u+="L ".concat(t+c*p[3],",").concat(n+a),p[3]>0&&(u+="A ".concat(p[3],",").concat(p[3],",0,0,").concat(d,`,
550        `).concat(t,",").concat(n+a-l*p[3])),u+="Z"}else if(o>0&&s===+s&&s>0){var x=Math.min(o,s);u="M ".concat(t,",").concat(n+l*x,`
551            A `).concat(x,",").concat(x,",0,0,").concat(d,",").concat(t+c*x,",").concat(n,`
552            L `).concat(t+i-c*x,",").concat(n,`
553            A `).concat(x,",").concat(x,",0,0,").concat(d,",").concat(t+i,",").concat(n+l*x,`
554            L `).concat(t+i,",").concat(n+a-l*x,`
555            A `).concat(x,",").concat(x,",0,0,").concat(d,",").concat(t+i-c*x,",").concat(n+a,`
556            L `).concat(t+c*x,",").concat(n+a,`
557            A `).concat(x,",").concat(x,",0,0,").concat(d,",").concat(t,",").concat(n+a-l*x," Z")}else u="M ".concat(t,",").concat(n," h ").concat(i," v ").concat(a," h ").concat(-i," Z");return u},Rxe=function(t,n){if(!t||!n)return!1;var i=t.x,a=t.y,s=n.x,o=n.y,l=n.width,c=n.height;if(Math.abs(l)>0&&Math.abs(c)>0){var d=Math.min(s,s+l),u=Math.max(s,s+l),p=Math.min(o,o+c),m=Math.max(o,o+c);return i>=d&&i<=u&&a>=p&&a<=m}return!1},Lxe={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},fA=function(t){var n=aS(aS({},Lxe),t),i=j.useRef(),a=j.useState(-1),s=Cxe(a,2),o=s[0],l=s[1];j.useEffect(function(){if(i.current&&i.current.getTotalLength)try{var A=i.current.getTotalLength();A&&l(A)}catch{}},[]);var c=n.x,d=n.y,u=n.width,p=n.height,m=n.radius,f=n.className,x=n.animationEasing,h=n.animationDuration,g=n.animationBegin,y=n.isAnimationActive,v=n.isUpdateAnimationActive;if(c!==+c||d!==+d||u!==+u||p!==+p||u===0||p===0)return null;var b=Ge("recharts-rectangle",f);return v?F.createElement(Ya,{canBegin:o>0,from:{width:u,height:p,x:c,y:d},to:{width:u,height:p,x:c,y:d},duration:h,animationEasing:x,isActive:v},function(A){var w=A.width,k=A.height,N=A.x,I=A.y;return F.createElement(Ya,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:g,duration:h,isActive:y,easing:x},F.createElement("path",xf({},Ve(n,!0),{className:b,d:sS(N,I,w,k,m),ref:i})))}):F.createElement("path",xf({},Ve(n,!0),{className:b,d:sS(c,d,u,p,m)}))};function fw(){return fw=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},fw.apply(this,arguments)}var tF=function(t){var n=t.cx,i=t.cy,a=t.r,s=t.className,o=Ge("recharts-dot",s);return n===+n&&i===+i&&a===+a?F.createElement("circle",fw({},Ve(t,!1),Mh(t),{className:o,cx:n,cy:i,r:a})):null};function Ou(e){"@babel/helpers - typeof";return Ou=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ou(e)}var Fxe=["x","y","top","left","width","height","className"];function gw(){return gw=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},gw.apply(this,arguments)}function oS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Bxe(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?oS(Object(n),!0).forEach(function(i){$xe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):oS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function $xe(e,t,n){return t=Uxe(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Uxe(e){var t=qxe(e,"string");return Ou(t)=="symbol"?t:t+""}function qxe(e,t){if(Ou(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Ou(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Gxe(e,t){if(e==null)return{};var n=Hxe(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function Hxe(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}var zxe=function(t,n,i,a,s,o){return"M".concat(t,",").concat(s,"v").concat(a,"M").concat(o,",").concat(n,"h").concat(i)},Wxe=function(t){var n=t.x,i=n===void 0?0:n,a=t.y,s=a===void 0?0:a,o=t.top,l=o===void 0?0:o,c=t.left,d=c===void 0?0:c,u=t.width,p=u===void 0?0:u,m=t.height,f=m===void 0?0:m,x=t.className,h=Gxe(t,Fxe),g=Bxe({x:i,y:s,top:l,left:d,width:p,height:f},h);return!ae(i)||!ae(s)||!ae(p)||!ae(f)||!ae(l)||!ae(d)?null:F.createElement("path",gw({},Ve(g,!0),{className:Ge("recharts-cross",x),d:zxe(i,s,p,f,l,d)}))},Vxe=fL,Kxe=Vxe(Object.getPrototypeOf,Object),Yxe=Kxe,Qxe=Ji,Xxe=Yxe,Zxe=ea,Jxe="[object Object]",eye=Function.prototype,tye=Object.prototype,nF=eye.toString,nye=tye.hasOwnProperty,rye=nF.call(Object);function iye(e){if(!Zxe(e)||Qxe(e)!=Jxe)return!1;var t=Xxe(e);if(t===null)return!0;var n=nye.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&nF.call(n)==rye}var aye=iye;const sye=Qe(aye);var oye=Ji,lye=ea,cye="[object Boolean]";function dye(e){return e===!0||e===!1||lye(e)&&oye(e)==cye}var uye=dye;const pye=Qe(uye);function Mu(e){"@babel/helpers - typeof";return Mu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Mu(e)}function yf(){return yf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},yf.apply(this,arguments)}function mye(e,t){return xye(e)||gye(e,t)||fye(e,t)||hye()}function hye(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
558In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function fye(e,t){if(e){if(typeof e=="string")return lS(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return lS(e,t)}}function lS(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function gye(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function xye(e){if(Array.isArray(e))return e}function cS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function dS(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?cS(Object(n),!0).forEach(function(i){yye(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):cS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function yye(e,t,n){return t=vye(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vye(e){var t=bye(e,"string");return Mu(t)=="symbol"?t:t+""}function bye(e,t){if(Mu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Mu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var uS=function(t,n,i,a,s){var o=i-a,l;return l="M ".concat(t,",").concat(n),l+="L ".concat(t+i,",").concat(n),l+="L ".concat(t+i-o/2,",").concat(n+s),l+="L ".concat(t+i-o/2-a,",").concat(n+s),l+="L ".concat(t,",").concat(n," Z"),l},wye={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},Aye=function(t){var n=dS(dS({},wye),t),i=j.useRef(),a=j.useState(-1),s=mye(a,2),o=s[0],l=s[1];j.useEffect(function(){if(i.current&&i.current.getTotalLength)try{var b=i.current.getTotalLength();b&&l(b)}catch{}},[]);var c=n.x,d=n.y,u=n.upperWidth,p=n.lowerWidth,m=n.height,f=n.className,x=n.animationEasing,h=n.animationDuration,g=n.animationBegin,y=n.isUpdateAnimationActive;if(c!==+c||d!==+d||u!==+u||p!==+p||m!==+m||u===0&&p===0||m===0)return null;var v=Ge("recharts-trapezoid",f);return y?F.createElement(Ya,{canBegin:o>0,from:{upperWidth:0,lowerWidth:0,height:m,x:c,y:d},to:{upperWidth:u,lowerWidth:p,height:m,x:c,y:d},duration:h,animationEasing:x,isActive:y},function(b){var A=b.upperWidth,w=b.lowerWidth,k=b.height,N=b.x,I=b.y;return F.createElement(Ya,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:g,duration:h,easing:x},F.createElement("path",yf({},Ve(n,!0),{className:v,d:uS(N,I,A,w,k),ref:i})))}):F.createElement("g",null,F.createElement("path",yf({},Ve(n,!0),{className:v,d:uS(c,d,u,p,m)})))},jye=["option","shapeType","propTransformer","activeClassName","isActive"];function Ru(e){"@babel/helpers - typeof";return Ru=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ru(e)}function kye(e,t){if(e==null)return{};var n=Nye(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function Nye(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function pS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function vf(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?pS(Object(n),!0).forEach(function(i){Iye(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):pS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Iye(e,t,n){return t=Sye(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Sye(e){var t=Cye(e,"string");return Ru(t)=="symbol"?t:t+""}function Cye(e,t){if(Ru(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Ru(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Eye(e,t){return vf(vf({},t),e)}function _ye(e,t){return e==="symbols"}function mS(e){var t=e.shapeType,n=e.elementProps;switch(t){case"rectangle":return F.createElement(fA,n);case"trapezoid":return F.createElement(Aye,n);case"sector":return F.createElement(G8,n);case"symbols":if(_ye(t))return F.createElement(T1,n);break;default:return null}}function Pye(e){return j.isValidElement(e)?e.props:e}function Tye(e){var t=e.option,n=e.shapeType,i=e.propTransformer,a=i===void 0?Eye:i,s=e.activeClassName,o=s===void 0?"recharts-active-shape":s,l=e.isActive,c=kye(e,jye),d;if(j.isValidElement(t))d=j.cloneElement(t,vf(vf({},c),Pye(t)));else if(Be(t))d=t(c);else if(sye(t)&&!pye(t)){var u=a(t,c);d=F.createElement(mS,{shapeType:n,elementProps:u})}else{var p=c;d=F.createElement(mS,{shapeType:n,elementProps:p})}return l?F.createElement(Qt,{className:o},d):d}function zg(e,t){return t!=null&&"trapezoids"in e.props}function Wg(e,t){return t!=null&&"sectors"in e.props}function Lu(e,t){return t!=null&&"points"in e.props}function Dye(e,t){var n,i,a=e.x===(t==null||(n=t.labelViewBox)===null||n===void 0?void 0:n.x)||e.x===t.x,s=e.y===(t==null||(i=t.labelViewBox)===null||i===void 0?void 0:i.y)||e.y===t.y;return a&&s}function Oye(e,t){var n=e.endAngle===t.endAngle,i=e.startAngle===t.startAngle;return n&&i}function Mye(e,t){var n=e.x===t.x,i=e.y===t.y,a=e.z===t.z;return n&&i&&a}function Rye(e,t){var n;return zg(e,t)?n=Dye:Wg(e,t)?n=Oye:Lu(e,t)&&(n=Mye),n}function Lye(e,t){var n;return zg(e,t)?n="trapezoids":Wg(e,t)?n="sectors":Lu(e,t)&&(n="points"),n}function Fye(e,t){if(zg(e,t)){var n;return(n=t.tooltipPayload)===null||n===void 0||(n=n[0])===null||n===void 0||(n=n.payload)===null||n===void 0?void 0:n.payload}if(Wg(e,t)){var i;return(i=t.tooltipPayload)===null||i===void 0||(i=i[0])===null||i===void 0||(i=i.payload)===null||i===void 0?void 0:i.payload}return Lu(e,t)?t.payload:{}}function Bye(e){var t=e.activeTooltipItem,n=e.graphicalItem,i=e.itemData,a=Lye(n,t),s=Fye(n,t),o=i.filter(function(c,d){var u=uA(s,c),p=n.props[a].filter(function(x){var h=Rye(n,t);return h(x,t)}),m=n.props[a].indexOf(p[p.length-1]),f=d===m;return u&&f}),l=i.indexOf(o[o.length-1]);return l}var $ye=Math.ceil,Uye=Math.max;function qye(e,t,n,i){for(var a=-1,s=Uye($ye((t-e)/(n||1)),0),o=Array(s);s--;)o[i?s:++a]=e,e+=n;return o}var Gye=qye,Hye=DL,hS=1/0,zye=17976931348623157e292;function Wye(e){if(!e)return e===0?e:0;if(e=Hye(e),e===hS||e===-hS){var t=e<0?-1:1;return t*zye}return e===e?e:0}var Vye=Wye,Kye=Gye,Yye=Tg,ky=Vye;function Qye(e){return function(t,n,i){return i&&typeof i!="number"&&Yye(t,n,i)&&(n=i=void 0),t=ky(t),n===void 0?(n=t,t=0):n=ky(n),i=i===void 0?t<n?1:-1:ky(i),Kye(t,n,i,e)}}var Xye=Qye,Zye=Xye,Jye=Zye(),eve=Jye;const bf=Qe(eve);function Fu(e){"@babel/helpers - typeof";return Fu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Fu(e)}function fS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function gS(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?fS(Object(n),!0).forEach(function(i){rF(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):fS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function rF(e,t,n){return t=tve(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function tve(e){var t=nve(e,"string");return Fu(t)=="symbol"?t:t+""}function nve(e,t){if(Fu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Fu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var rve=["Webkit","Moz","O","ms"],ive=function(t,n){var i=t.replace(/(\w)/,function(s){return s.toUpperCase()}),a=rve.reduce(function(s,o){return gS(gS({},s),{},rF({},o+i,n))},{});return a[t]=n,a};function ql(e){"@babel/helpers - typeof";return ql=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ql(e)}function wf(){return wf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},wf.apply(this,arguments)}function xS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Ny(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?xS(Object(n),!0).forEach(function(i){$n(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function ave(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function yS(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,aF(i.key),i)}}function sve(e,t,n){return t&&yS(e.prototype,t),n&&yS(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function ove(e,t,n){return t=Af(t),lve(e,iF()?Reflect.construct(t,n||[],Af(e).constructor):t.apply(e,n))}function lve(e,t){if(t&&(ql(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return cve(e)}function cve(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function iF(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(iF=function(){return!!e})()}function Af(e){return Af=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Af(e)}function dve(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&xw(e,t)}function xw(e,t){return xw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},xw(e,t)}function $n(e,t,n){return t=aF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function aF(e){var t=uve(e,"string");return ql(t)=="symbol"?t:t+""}function uve(e,t){if(ql(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(ql(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var pve=function(t){var n=t.data,i=t.startIndex,a=t.endIndex,s=t.x,o=t.width,l=t.travellerWidth;if(!n||!n.length)return{};var c=n.length,d=jd().domain(bf(0,c)).range([s,s+o-l]),u=d.domain().map(function(p){return d(p)});return{isTextActive:!1,isSlideMoving:!1,isTravellerMoving:!1,isTravellerFocused:!1,startX:d(i),endX:d(a),scale:d,scaleValues:u}},vS=function(t){return t.changedTouches&&!!t.changedTouches.length},Gl=function(e){function t(n){var i;return ave(this,t),i=ove(this,t,[n]),$n(i,"handleDrag",function(a){i.leaveTimer&&(clearTimeout(i.leaveTimer),i.leaveTimer=null),i.state.isTravellerMoving?i.handleTravellerMove(a):i.state.isSlideMoving&&i.handleSlideDrag(a)}),$n(i,"handleTouchMove",function(a){a.changedTouches!=null&&a.changedTouches.length>0&&i.handleDrag(a.changedTouches[0])}),$n(i,"handleDragEnd",function(){i.setState({isTravellerMoving:!1,isSlideMoving:!1},function(){var a=i.props,s=a.endIndex,o=a.onDragEnd,l=a.startIndex;o==null||o({endIndex:s,startIndex:l})}),i.detachDragEndListener()}),$n(i,"handleLeaveWrapper",function(){(i.state.isTravellerMoving||i.state.isSlideMoving)&&(i.leaveTimer=window.setTimeout(i.handleDragEnd,i.props.leaveTimeOut))}),$n(i,"handleEnterSlideOrTraveller",function(){i.setState({isTextActive:!0})}),$n(i,"handleLeaveSlideOrTraveller",function(){i.setState({isTextActive:!1})}),$n(i,"handleSlideDragStart",function(a){var s=vS(a)?a.changedTouches[0]:a;i.setState({isTravellerMoving:!1,isSlideMoving:!0,slideMoveStartX:s.pageX}),i.attachDragEndListener()}),i.travellerDragStartHandlers={startX:i.handleTravellerDragStart.bind(i,"startX"),endX:i.handleTravellerDragStart.bind(i,"endX")},i.state={},i}return dve(t,e),sve(t,[{key:"componentWillUnmount",value:function(){this.leaveTimer&&(clearTimeout(this.leaveTimer),this.leaveTimer=null),this.detachDragEndListener()}},{key:"getIndex",value:function(i){var a=i.startX,s=i.endX,o=this.state.scaleValues,l=this.props,c=l.gap,d=l.data,u=d.length-1,p=Math.min(a,s),m=Math.max(a,s),f=t.getIndexInRange(o,p),x=t.getIndexInRange(o,m);return{startIndex:f-f%c,endIndex:x===u?u:x-x%c}}},{key:"getTextOfTick",value:function(i){var a=this.props,s=a.data,o=a.tickFormatter,l=a.dataKey,c=fi(s[i],l,i);return Be(o)?o(c,i):c}},{key:"attachDragEndListener",value:function(){window.addEventListener("mouseup",this.handleDragEnd,!0),window.addEventListener("touchend",this.handleDragEnd,!0),window.addEventListener("mousemove",this.handleDrag,!0)}},{key:"detachDragEndListener",value:function(){window.removeEventListener("mouseup",this.handleDragEnd,!0),window.removeEventListener("touchend",this.handleDragEnd,!0),window.removeEventListener("mousemove",this.handleDrag,!0)}},{key:"handleSlideDrag",value:function(i){var a=this.state,s=a.slideMoveStartX,o=a.startX,l=a.endX,c=this.props,d=c.x,u=c.width,p=c.travellerWidth,m=c.startIndex,f=c.endIndex,x=c.onChange,h=i.pageX-s;h>0?h=Math.min(h,d+u-p-l,d+u-p-o):h<0&&(h=Math.max(h,d-o,d-l));var g=this.getIndex({startX:o+h,endX:l+h});(g.startIndex!==m||g.endIndex!==f)&&x&&x(g),this.setState({startX:o+h,endX:l+h,slideMoveStartX:i.pageX})}},{key:"handleTravellerDragStart",value:function(i,a){var s=vS(a)?a.changedTouches[0]:a;this.setState({isSlideMoving:!1,isTravellerMoving:!0,movingTravellerId:i,brushMoveStartX:s.pageX}),this.attachDragEndListener()}},{key:"handleTravellerMove",value:function(i){var a=this.state,s=a.brushMoveStartX,o=a.movingTravellerId,l=a.endX,c=a.startX,d=this.state[o],u=this.props,p=u.x,m=u.width,f=u.travellerWidth,x=u.onChange,h=u.gap,g=u.data,y={startX:this.state.startX,endX:this.state.endX},v=i.pageX-s;v>0?v=Math.min(v,p+m-f-d):v<0&&(v=Math.max(v,p-d)),y[o]=d+v;var b=this.getIndex(y),A=b.startIndex,w=b.endIndex,k=function(){var I=g.length-1;return o==="startX"&&(l>c?A%h===0:w%h===0)||l<c&&w===I||o==="endX"&&(l>c?w%h===0:A%h===0)||l>c&&w===I};this.setState($n($n({},o,d+v),"brushMoveStartX",i.pageX),function(){x&&k()&&x(b)})}},{key:"handleTravellerMoveKeyboard",value:function(i,a){var s=this,o=this.state,l=o.scaleValues,c=o.startX,d=o.endX,u=this.state[a],p=l.indexOf(u);if(p!==-1){var m=p+i;if(!(m===-1||m>=l.length)){var f=l[m];a==="startX"&&f>=d||a==="endX"&&f<=c||this.setState($n({},a,f),function(){s.props.onChange(s.getIndex({startX:s.state.startX,endX:s.state.endX}))})}}}},{key:"renderBackground",value:function(){var i=this.props,a=i.x,s=i.y,o=i.width,l=i.height,c=i.fill,d=i.stroke;return F.createElement("rect",{stroke:d,fill:c,x:a,y:s,width:o,height:l})}},{key:"renderPanorama",value:function(){var i=this.props,a=i.x,s=i.y,o=i.width,l=i.height,c=i.data,d=i.children,u=i.padding,p=j.Children.only(d);return p?F.cloneElement(p,{x:a,y:s,width:o,height:l,margin:u,compact:!0,data:c}):null}},{key:"renderTravellerLayer",value:function(i,a){var s,o,l=this,c=this.props,d=c.y,u=c.travellerWidth,p=c.height,m=c.traveller,f=c.ariaLabel,x=c.data,h=c.startIndex,g=c.endIndex,y=Math.max(i,this.props.x),v=Ny(Ny({},Ve(this.props,!1)),{},{x:y,y:d,width:u,height:p}),b=f||"Min value: ".concat((s=x[h])===null||s===void 0?void 0:s.name,", Max value: ").concat((o=x[g])===null||o===void 0?void 0:o.name);return F.createElement(Qt,{tabIndex:0,role:"slider","aria-label":b,"aria-valuenow":i,className:"recharts-brush-traveller",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.travellerDragStartHandlers[a],onTouchStart:this.travellerDragStartHandlers[a],onKeyDown:function(w){["ArrowLeft","ArrowRight"].includes(w.key)&&(w.preventDefault(),w.stopPropagation(),l.handleTravellerMoveKeyboard(w.key==="ArrowRight"?1:-1,a))},onFocus:function(){l.setState({isTravellerFocused:!0})},onBlur:function(){l.setState({isTravellerFocused:!1})},style:{cursor:"col-resize"}},t.renderTraveller(m,v))}},{key:"renderSlide",value:function(i,a){var s=this.props,o=s.y,l=s.height,c=s.stroke,d=s.travellerWidth,u=Math.min(i,a)+d,p=Math.max(Math.abs(a-i)-d,0);return F.createElement("rect",{className:"recharts-brush-slide",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.handleSlideDragStart,onTouchStart:this.handleSlideDragStart,style:{cursor:"move"},stroke:"none",fill:c,fillOpacity:.2,x:u,y:o,width:p,height:l})}},{key:"renderText",value:function(){var i=this.props,a=i.startIndex,s=i.endIndex,o=i.y,l=i.height,c=i.travellerWidth,d=i.stroke,u=this.state,p=u.startX,m=u.endX,f=5,x={pointerEvents:"none",fill:d};return F.createElement(Qt,{className:"recharts-brush-texts"},F.createElement(Qh,wf({textAnchor:"end",verticalAnchor:"middle",x:Math.min(p,m)-f,y:o+l/2},x),this.getTextOfTick(a)),F.createElement(Qh,wf({textAnchor:"start",verticalAnchor:"middle",x:Math.max(p,m)+c+f,y:o+l/2},x),this.getTextOfTick(s)))}},{key:"render",value:function(){var i=this.props,a=i.data,s=i.className,o=i.children,l=i.x,c=i.y,d=i.width,u=i.height,p=i.alwaysShowText,m=this.state,f=m.startX,x=m.endX,h=m.isTextActive,g=m.isSlideMoving,y=m.isTravellerMoving,v=m.isTravellerFocused;if(!a||!a.length||!ae(l)||!ae(c)||!ae(d)||!ae(u)||d<=0||u<=0)return null;var b=Ge("recharts-brush",s),A=F.Children.count(o)===1,w=ive("userSelect","none");return F.createElement(Qt,{className:b,onMouseLeave:this.handleLeaveWrapper,onTouchMove:this.handleTouchMove,style:w},this.renderBackground(),A&&this.renderPanorama(),this.renderSlide(f,x),this.renderTravellerLayer(f,"startX"),this.renderTravellerLayer(x,"endX"),(h||g||y||v||p)&&this.renderText())}}],[{key:"renderDefaultTraveller",value:function(i){var a=i.x,s=i.y,o=i.width,l=i.height,c=i.stroke,d=Math.floor(s+l/2)-1;return F.createElement(F.Fragment,null,F.createElement("rect",{x:a,y:s,width:o,height:l,fill:c,stroke:"none"}),F.createElement("line",{x1:a+1,y1:d,x2:a+o-1,y2:d,fill:"none",stroke:"#fff"}),F.createElement("line",{x1:a+1,y1:d+2,x2:a+o-1,y2:d+2,fill:"none",stroke:"#fff"}))}},{key:"renderTraveller",value:function(i,a){var s;return F.isValidElement(i)?s=F.cloneElement(i,a):Be(i)?s=i(a):s=t.renderDefaultTraveller(a),s}},{key:"getDerivedStateFromProps",value:function(i,a){var s=i.data,o=i.width,l=i.x,c=i.travellerWidth,d=i.updateId,u=i.startIndex,p=i.endIndex;if(s!==a.prevData||d!==a.prevUpdateId)return Ny({prevData:s,prevTravellerWidth:c,prevUpdateId:d,prevX:l,prevWidth:o},s&&s.length?pve({data:s,width:o,x:l,travellerWidth:c,startIndex:u,endIndex:p}):{scale:null,scaleValues:null});if(a.scale&&(o!==a.prevWidth||l!==a.prevX||c!==a.prevTravellerWidth)){a.scale.range([l,l+o-c]);var m=a.scale.domain().map(function(f){return a.scale(f)});return{prevData:s,prevTravellerWidth:c,prevUpdateId:d,prevX:l,prevWidth:o,startX:a.scale(i.startIndex),endX:a.scale(i.endIndex),scaleValues:m}}return null}},{key:"getIndexInRange",value:function(i,a){for(var s=i.length,o=0,l=s-1;l-o>1;){var c=Math.floor((o+l)/2);i[c]>a?l=c:o=c}return a>=i[l]?l:o}}])}(j.PureComponent);$n(Gl,"displayName","Brush");$n(Gl,"defaultProps",{height:40,travellerWidth:5,gap:1,fill:"#fff",stroke:"#666",padding:{top:1,right:1,bottom:1,left:1},leaveTimeOut:1e3,alwaysShowText:!1});var mve=$1;function hve(e,t){var n;return mve(e,function(i,a,s){return n=t(i,a,s),!n}),!!n}var fve=hve,gve=oL,xve=gc,yve=fve,vve=Fn,bve=Tg;function wve(e,t,n){var i=vve(e)?gve:yve;return n&&bve(e,t,n)&&(t=void 0),i(e,xve(t))}var Ave=wve;const jve=Qe(Ave);var ui=function(t,n){var i=t.alwaysShow,a=t.ifOverflow;return i&&(a="extendDomain"),a===n},bS=CL;function kve(e,t,n){t=="__proto__"&&bS?bS(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}var Nve=kve,Ive=Nve,Sve=IL,Cve=gc;function Eve(e,t){var n={};return t=Cve(t),Sve(e,function(i,a,s){Ive(n,a,t(i,a,s))}),n}var _ve=Eve;const Pve=Qe(_ve);function Tve(e,t){for(var n=-1,i=e==null?0:e.length;++n<i;)if(!t(e[n],n,e))return!1;return!0}var Dve=Tve,Ove=$1;function Mve(e,t){var n=!0;return Ove(e,function(i,a,s){return n=!!t(i,a,s),n}),n}var Rve=Mve,Lve=Dve,Fve=Rve,Bve=gc,$ve=Fn,Uve=Tg;function qve(e,t,n){var i=$ve(e)?Lve:Fve;return n&&Uve(e,t,n)&&(t=void 0),i(e,Bve(t))}var Gve=qve;const Hve=Qe(Gve);var zve=["x","y"];function Bu(e){"@babel/helpers - typeof";return Bu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Bu(e)}function yw(){return yw=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},yw.apply(this,arguments)}function wS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Kc(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?wS(Object(n),!0).forEach(function(i){Wve(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):wS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Wve(e,t,n){return t=Vve(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Vve(e){var t=Kve(e,"string");return Bu(t)=="symbol"?t:t+""}function Kve(e,t){if(Bu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Bu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Yve(e,t){if(e==null)return{};var n=Qve(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function Qve(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function Xve(e,t){var n=e.x,i=e.y,a=Yve(e,zve),s="".concat(n),o=parseInt(s,10),l="".concat(i),c=parseInt(l,10),d="".concat(t.height||a.height),u=parseInt(d,10),p="".concat(t.width||a.width),m=parseInt(p,10);return Kc(Kc(Kc(Kc(Kc({},t),a),o?{x:o}:{}),c?{y:c}:{}),{},{height:u,width:m,name:t.name,radius:t.radius})}function AS(e){return F.createElement(Tye,yw({shapeType:"rectangle",propTransformer:Xve,activeClassName:"recharts-active-bar"},e))}var Zve=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return function(i,a){if(typeof t=="number")return t;var s=typeof i=="number";return s?t(i,a):(s||to(),n)}},Jve=["value","background"],sF;function Hl(e){"@babel/helpers - typeof";return Hl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Hl(e)}function ebe(e,t){if(e==null)return{};var n=tbe(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function tbe(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function jf(){return jf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},jf.apply(this,arguments)}function jS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Dt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?jS(Object(n),!0).forEach(function(i){Sa(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):jS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function nbe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function kS(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,lF(i.key),i)}}function rbe(e,t,n){return t&&kS(e.prototype,t),n&&kS(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function ibe(e,t,n){return t=kf(t),abe(e,oF()?Reflect.construct(t,n||[],kf(e).constructor):t.apply(e,n))}function abe(e,t){if(t&&(Hl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return sbe(e)}function sbe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function oF(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(oF=function(){return!!e})()}function kf(e){return kf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},kf(e)}function obe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&vw(e,t)}function vw(e,t){return vw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},vw(e,t)}function Sa(e,t,n){return t=lF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function lF(e){var t=lbe(e,"string");return Hl(t)=="symbol"?t:t+""}function lbe(e,t){if(Hl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Hl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var rs=function(e){function t(){var n;nbe(this,t);for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];return n=ibe(this,t,[].concat(a)),Sa(n,"state",{isAnimationFinished:!1}),Sa(n,"id",Ng("recharts-bar-")),Sa(n,"handleAnimationEnd",function(){var o=n.props.onAnimationEnd;n.setState({isAnimationFinished:!0}),o&&o()}),Sa(n,"handleAnimationStart",function(){var o=n.props.onAnimationStart;n.setState({isAnimationFinished:!1}),o&&o()}),n}return obe(t,e),rbe(t,[{key:"renderRectanglesStatically",value:function(i){var a=this,s=this.props,o=s.shape,l=s.dataKey,c=s.activeIndex,d=s.activeBar,u=Ve(this.props,!1);return i&&i.map(function(p,m){var f=m===c,x=f?d:o,h=Dt(Dt(Dt({},u),p),{},{isActive:f,option:x,index:m,dataKey:l,onAnimationStart:a.handleAnimationStart,onAnimationEnd:a.handleAnimationEnd});return F.createElement(Qt,jf({className:"recharts-bar-rectangle"},Rh(a.props,p,m),{key:"rectangle-".concat(p==null?void 0:p.x,"-").concat(p==null?void 0:p.y,"-").concat(p==null?void 0:p.value)}),F.createElement(AS,h))})}},{key:"renderRectanglesWithAnimation",value:function(){var i=this,a=this.props,s=a.data,o=a.layout,l=a.isAnimationActive,c=a.animationBegin,d=a.animationDuration,u=a.animationEasing,p=a.animationId,m=this.state.prevData;return F.createElement(Ya,{begin:c,duration:d,isActive:l,easing:u,from:{t:0},to:{t:1},key:"bar-".concat(p),onAnimationEnd:this.handleAnimationEnd,onAnimationStart:this.handleAnimationStart},function(f){var x=f.t,h=s.map(function(g,y){var v=m&&m[y];if(v){var b=go(v.x,g.x),A=go(v.y,g.y),w=go(v.width,g.width),k=go(v.height,g.height);return Dt(Dt({},g),{},{x:b(x),y:A(x),width:w(x),height:k(x)})}if(o==="horizontal"){var N=go(0,g.height),I=N(x);return Dt(Dt({},g),{},{y:g.y+g.height-I,height:I})}var C=go(0,g.width),O=C(x);return Dt(Dt({},g),{},{width:O})});return F.createElement(Qt,null,i.renderRectanglesStatically(h))})}},{key:"renderRectangles",value:function(){var i=this.props,a=i.data,s=i.isAnimationActive,o=this.state.prevData;return s&&a&&a.length&&(!o||!uA(o,a))?this.renderRectanglesWithAnimation():this.renderRectanglesStatically(a)}},{key:"renderBackground",value:function(){var i=this,a=this.props,s=a.data,o=a.dataKey,l=a.activeIndex,c=Ve(this.props.background,!1);return s.map(function(d,u){d.value;var p=d.background,m=ebe(d,Jve);if(!p)return null;var f=Dt(Dt(Dt(Dt(Dt({},m),{},{fill:"#eee"},p),c),Rh(i.props,d,u)),{},{onAnimationStart:i.handleAnimationStart,onAnimationEnd:i.handleAnimationEnd,dataKey:o,index:u,className:"recharts-bar-background-rectangle"});return F.createElement(AS,jf({key:"background-bar-".concat(u),option:i.props.background,isActive:u===l},f))})}},{key:"renderErrorBar",value:function(i,a){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var s=this.props,o=s.data,l=s.xAxis,c=s.yAxis,d=s.layout,u=s.children,p=Ur(u,Hg);if(!p)return null;var m=d==="vertical"?o[0].height/2:o[0].width/2,f=function(g,y){var v=Array.isArray(g.value)?g.value[1]:g.value;return{x:g.x,y:g.y,value:v,errorVal:fi(g,y)}},x={clipPath:i?"url(#clipPath-".concat(a,")"):null};return F.createElement(Qt,x,p.map(function(h){return F.cloneElement(h,{key:"error-bar-".concat(a,"-").concat(h.props.dataKey),data:o,xAxis:l,yAxis:c,layout:d,offset:m,dataPointFormatter:f})}))}},{key:"render",value:function(){var i=this.props,a=i.hide,s=i.data,o=i.className,l=i.xAxis,c=i.yAxis,d=i.left,u=i.top,p=i.width,m=i.height,f=i.isAnimationActive,x=i.background,h=i.id;if(a||!s||!s.length)return null;var g=this.state.isAnimationFinished,y=Ge("recharts-bar",o),v=l&&l.allowDataOverflow,b=c&&c.allowDataOverflow,A=v||b,w=Ke(h)?this.id:h;return F.createElement(Qt,{className:y},v||b?F.createElement("defs",null,F.createElement("clipPath",{id:"clipPath-".concat(w)},F.createElement("rect",{x:v?d:d-p/2,y:b?u:u-m/2,width:v?p:p*2,height:b?m:m*2}))):null,F.createElement(Qt,{className:"recharts-bar-rectangles",clipPath:A?"url(#clipPath-".concat(w,")"):null},x?this.renderBackground():null,this.renderRectangles()),this.renderErrorBar(A,w),(!f||g)&&Ui.renderCallByParent(this.props,s))}}],[{key:"getDerivedStateFromProps",value:function(i,a){return i.animationId!==a.prevAnimationId?{prevAnimationId:i.animationId,curData:i.data,prevData:a.curData}:i.data!==a.curData?{curData:i.data}:null}}])}(j.PureComponent);sF=rs;Sa(rs,"displayName","Bar");Sa(rs,"defaultProps",{xAxisId:0,yAxisId:0,legendType:"rect",minPointSize:0,hide:!1,data:[],layout:"vertical",activeBar:!1,isAnimationActive:!Ba.isSsr,animationBegin:0,animationDuration:400,animationEasing:"ease"});Sa(rs,"getComposedData",function(e){var t=e.props,n=e.item,i=e.barPosition,a=e.bandSize,s=e.xAxis,o=e.yAxis,l=e.xAxisTicks,c=e.yAxisTicks,d=e.stackedData,u=e.dataStartIndex,p=e.displayedData,m=e.offset,f=Whe(i,n);if(!f)return null;var x=t.layout,h=n.type.defaultProps,g=h!==void 0?Dt(Dt({},h),n.props):n.props,y=g.dataKey,v=g.children,b=g.minPointSize,A=x==="horizontal"?o:s,w=d?A.scale.domain():null,k=efe({numericAxis:A}),N=Ur(v,Dg),I=p.map(function(C,O){var _,D,G,P,L,U;d?_=Vhe(d[u+O],w):(_=fi(C,y),Array.isArray(_)||(_=[k,_]));var W=Zve(b,sF.defaultProps.minPointSize)(_[1],O);if(x==="horizontal"){var B,$=[o.scale(_[0]),o.scale(_[1])],z=$[0],Q=$[1];D=A4({axis:s,ticks:l,bandSize:a,offset:f.offset,entry:C,index:O}),G=(B=Q??z)!==null&&B!==void 0?B:void 0,P=f.size;var V=z-Q;if(L=Number.isNaN(V)?0:V,U={x:D,y:o.y,width:P,height:o.height},Math.abs(W)>0&&Math.abs(L)<Math.abs(W)){var ne=Rr(L||W)*(Math.abs(W)-Math.abs(L));G-=ne,L+=ne}}else{var Se=[s.scale(_[0]),s.scale(_[1])],He=Se[0],at=Se[1];if(D=He,G=A4({axis:o,ticks:c,bandSize:a,offset:f.offset,entry:C,index:O}),P=at-He,L=f.size,U={x:s.x,y:G,width:s.width,height:L},Math.abs(W)>0&&Math.abs(P)<Math.abs(W)){var tn=Rr(P||W)*(Math.abs(W)-Math.abs(P));P+=tn}}return Dt(Dt(Dt({},C),{},{x:D,y:G,width:P,height:L,value:d?_:_[1],payload:C,background:U},N&&N[O]&&N[O].props),{},{tooltipPayload:[$8(n,C)],tooltipPosition:{x:D+P/2,y:G+L/2}})});return Dt({data:I,layout:x},m)});function $u(e){"@babel/helpers - typeof";return $u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},$u(e)}function cbe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function NS(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,cF(i.key),i)}}function dbe(e,t,n){return t&&NS(e.prototype,t),n&&NS(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function IS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function Cr(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?IS(Object(n),!0).forEach(function(i){Vg(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):IS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Vg(e,t,n){return t=cF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function cF(e){var t=ube(e,"string");return $u(t)=="symbol"?t:t+""}function ube(e,t){if($u(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if($u(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var pbe=function(t,n,i,a,s){var o=t.width,l=t.height,c=t.layout,d=t.children,u=Object.keys(n),p={left:i.left,leftMirror:i.left,right:o-i.right,rightMirror:o-i.right,top:i.top,topMirror:i.top,bottom:l-i.bottom,bottomMirror:l-i.bottom},m=!!Gn(d,rs);return u.reduce(function(f,x){var h=n[x],g=h.orientation,y=h.domain,v=h.padding,b=v===void 0?{}:v,A=h.mirror,w=h.reversed,k="".concat(g).concat(A?"Mirror":""),N,I,C,O,_;if(h.type==="number"&&(h.padding==="gap"||h.padding==="no-gap")){var D=y[1]-y[0],G=1/0,P=h.categoricalDomain.sort();if(P.forEach(function(Se,He){He>0&&(G=Math.min((Se||0)-(P[He-1]||0),G))}),Number.isFinite(G)){var L=G/D,U=h.layout==="vertical"?i.height:i.width;if(h.padding==="gap"&&(N=L*U/2),h.padding==="no-gap"){var W=Js(t.barCategoryGap,L*U),B=L*U/2;N=B-W-(B-W)/U*W}}}a==="xAxis"?I=[i.left+(b.left||0)+(N||0),i.left+i.width-(b.right||0)-(N||0)]:a==="yAxis"?I=c==="horizontal"?[i.top+i.height-(b.bottom||0),i.top+(b.top||0)]:[i.top+(b.top||0)+(N||0),i.top+i.height-(b.bottom||0)-(N||0)]:I=h.range,w&&(I=[I[1],I[0]]);var $=Hhe(h,s,m),z=$.scale,Q=$.realScaleType;z.domain(y).range(I),zhe(z);var V=Jhe(z,Cr(Cr({},h),{},{realScaleType:Q}));a==="xAxis"?(_=g==="top"&&!A||g==="bottom"&&A,C=i.left,O=p[k]-_*h.height):a==="yAxis"&&(_=g==="left"&&!A||g==="right"&&A,C=p[k]-_*h.width,O=i.top);var ne=Cr(Cr(Cr({},h),V),{},{realScaleType:Q,x:C,y:O,scale:z,width:a==="xAxis"?i.width:h.width,height:a==="yAxis"?i.height:h.height});return ne.bandSize=uf(ne,V),!h.hide&&a==="xAxis"?p[k]+=(_?-1:1)*ne.height:h.hide||(p[k]+=(_?-1:1)*ne.width),Cr(Cr({},f),{},Vg({},x,ne))},{})},dF=function(t,n){var i=t.x,a=t.y,s=n.x,o=n.y;return{x:Math.min(i,s),y:Math.min(a,o),width:Math.abs(s-i),height:Math.abs(o-a)}},mbe=function(t){var n=t.x1,i=t.y1,a=t.x2,s=t.y2;return dF({x:n,y:i},{x:a,y:s})},uF=function(){function e(t){cbe(this,e),this.scale=t}return dbe(e,[{key:"domain",get:function(){return this.scale.domain}},{key:"range",get:function(){return this.scale.range}},{key:"rangeMin",get:function(){return this.range()[0]}},{key:"rangeMax",get:function(){return this.range()[1]}},{key:"bandwidth",get:function(){return this.scale.bandwidth}},{key:"apply",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=i.bandAware,s=i.position;if(n!==void 0){if(s)switch(s){case"start":return this.scale(n);case"middle":{var o=this.bandwidth?this.bandwidth()/2:0;return this.scale(n)+o}case"end":{var l=this.bandwidth?this.bandwidth():0;return this.scale(n)+l}default:return this.scale(n)}if(a){var c=this.bandwidth?this.bandwidth()/2:0;return this.scale(n)+c}return this.scale(n)}}},{key:"isInRange",value:function(n){var i=this.range(),a=i[0],s=i[i.length-1];return a<=s?n>=a&&n<=s:n>=s&&n<=a}}],[{key:"create",value:function(n){return new e(n)}}])}();Vg(uF,"EPS",1e-4);var gA=function(t){var n=Object.keys(t).reduce(function(i,a){return Cr(Cr({},i),{},Vg({},a,uF.create(t[a])))},{});return Cr(Cr({},n),{},{apply:function(a){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=s.bandAware,l=s.position;return Pve(a,function(c,d){return n[d].apply(c,{bandAware:o,position:l})})},isInRange:function(a){return Hve(a,function(s,o){return n[o].isInRange(s)})}})};function hbe(e){return(e%180+180)%180}var fbe=function(t){var n=t.width,i=t.height,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,s=hbe(a),o=s*Math.PI/180,l=Math.atan(i/n),c=o>l&&o<Math.PI-l?i/Math.sin(o):n/Math.cos(o);return Math.abs(c)},gbe=EZ(function(e){return{x:e.left,y:e.top,width:e.width,height:e.height}},function(e){return["l",e.left,"t",e.top,"w",e.width,"h",e.height].join("")}),pF=j.createContext(void 0),mF=j.createContext(void 0),hF=j.createContext(void 0),xbe=j.createContext({}),fF=j.createContext(void 0),gF=j.createContext(0),xF=j.createContext(0),SS=function(t){var n=t.state,i=n.xAxisMap,a=n.yAxisMap,s=n.offset,o=t.clipPathId,l=t.children,c=t.width,d=t.height,u=gbe(s);return F.createElement(pF.Provider,{value:i},F.createElement(mF.Provider,{value:a},F.createElement(xbe.Provider,{value:s},F.createElement(hF.Provider,{value:u},F.createElement(fF.Provider,{value:o},F.createElement(gF.Provider,{value:d},F.createElement(xF.Provider,{value:c},l)))))))},ybe=function(){return j.useContext(fF)},yF=function(t){var n=j.useContext(pF);n==null&&to();var i=n[t];return i==null&&to(),i},vF=function(t){var n=j.useContext(mF);n==null&&to();var i=n[t];return i==null&&to(),i},vbe=function(){var t=j.useContext(hF);return t},bF=function(){return j.useContext(xF)},wF=function(){return j.useContext(gF)};function zl(e){"@babel/helpers - typeof";return zl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},zl(e)}function bbe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function wbe(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,jF(i.key),i)}}function Abe(e,t,n){return t&&wbe(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function jbe(e,t,n){return t=Nf(t),kbe(e,AF()?Reflect.construct(t,n||[],Nf(e).constructor):t.apply(e,n))}function kbe(e,t){if(t&&(zl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Nbe(e)}function Nbe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function AF(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(AF=function(){return!!e})()}function Nf(e){return Nf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Nf(e)}function Ibe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&bw(e,t)}function bw(e,t){return bw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},bw(e,t)}function CS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function ES(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?CS(Object(n),!0).forEach(function(i){xA(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):CS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function xA(e,t,n){return t=jF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function jF(e){var t=Sbe(e,"string");return zl(t)=="symbol"?t:t+""}function Sbe(e,t){if(zl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(zl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Cbe(e,t){return Tbe(e)||Pbe(e,t)||_be(e,t)||Ebe()}function Ebe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
559In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _be(e,t){if(e){if(typeof e=="string")return _S(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _S(e,t)}}function _S(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function Pbe(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function Tbe(e){if(Array.isArray(e))return e}function ww(){return ww=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},ww.apply(this,arguments)}var Dbe=function(t,n){var i;return F.isValidElement(t)?i=F.cloneElement(t,n):Be(t)?i=t(n):i=F.createElement("line",ww({},n,{className:"recharts-reference-line-line"})),i},Obe=function(t,n,i,a,s,o,l,c,d){var u=s.x,p=s.y,m=s.width,f=s.height;if(i){var x=d.y,h=t.y.apply(x,{position:o});if(ui(d,"discard")&&!t.y.isInRange(h))return null;var g=[{x:u+m,y:h},{x:u,y:h}];return c==="left"?g.reverse():g}if(n){var y=d.x,v=t.x.apply(y,{position:o});if(ui(d,"discard")&&!t.x.isInRange(v))return null;var b=[{x:v,y:p+f},{x:v,y:p}];return l==="top"?b.reverse():b}if(a){var A=d.segment,w=A.map(function(k){return t.apply(k,{position:o})});return ui(d,"discard")&&jve(w,function(k){return!t.isInRange(k)})?null:w}return null};function Mbe(e){var t=e.x,n=e.y,i=e.segment,a=e.xAxisId,s=e.yAxisId,o=e.shape,l=e.className,c=e.alwaysShow,d=ybe(),u=yF(a),p=vF(s),m=vbe();if(!d||!m)return null;Ls(c===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.');var f=gA({x:u.scale,y:p.scale}),x=Ht(t),h=Ht(n),g=i&&i.length===2,y=Obe(f,x,h,g,m,e.position,u.orientation,p.orientation,e);if(!y)return null;var v=Cbe(y,2),b=v[0],A=b.x,w=b.y,k=v[1],N=k.x,I=k.y,C=ui(e,"hidden")?"url(#".concat(d,")"):void 0,O=ES(ES({clipPath:C},Ve(e,!0)),{},{x1:A,y1:w,x2:N,y2:I});return F.createElement(Qt,{className:Ge("recharts-reference-line",l)},Dbe(o,O),fn.renderCallByParent(e,mbe({x1:A,y1:w,x2:N,y2:I})))}var yA=function(e){function t(){return bbe(this,t),jbe(this,t,arguments)}return Ibe(t,e),Abe(t,[{key:"render",value:function(){return F.createElement(Mbe,this.props)}}])}(F.Component);xA(yA,"displayName","ReferenceLine");xA(yA,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,fill:"none",stroke:"#ccc",fillOpacity:1,strokeWidth:1,position:"middle"});function Aw(){return Aw=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Aw.apply(this,arguments)}function Wl(e){"@babel/helpers - typeof";return Wl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wl(e)}function PS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function TS(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?PS(Object(n),!0).forEach(function(i){Kg(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):PS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Rbe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Lbe(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,NF(i.key),i)}}function Fbe(e,t,n){return t&&Lbe(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Bbe(e,t,n){return t=If(t),$be(e,kF()?Reflect.construct(t,n||[],If(e).constructor):t.apply(e,n))}function $be(e,t){if(t&&(Wl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Ube(e)}function Ube(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function kF(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(kF=function(){return!!e})()}function If(e){return If=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},If(e)}function qbe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&jw(e,t)}function jw(e,t){return jw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},jw(e,t)}function Kg(e,t,n){return t=NF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function NF(e){var t=Gbe(e,"string");return Wl(t)=="symbol"?t:t+""}function Gbe(e,t){if(Wl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Wl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Hbe=function(t){var n=t.x,i=t.y,a=t.xAxis,s=t.yAxis,o=gA({x:a.scale,y:s.scale}),l=o.apply({x:n,y:i},{bandAware:!0});return ui(t,"discard")&&!o.isInRange(l)?null:l},Yg=function(e){function t(){return Rbe(this,t),Bbe(this,t,arguments)}return qbe(t,e),Fbe(t,[{key:"render",value:function(){var i=this.props,a=i.x,s=i.y,o=i.r,l=i.alwaysShow,c=i.clipPathId,d=Ht(a),u=Ht(s);if(Ls(l===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.'),!d||!u)return null;var p=Hbe(this.props);if(!p)return null;var m=p.x,f=p.y,x=this.props,h=x.shape,g=x.className,y=ui(this.props,"hidden")?"url(#".concat(c,")"):void 0,v=TS(TS({clipPath:y},Ve(this.props,!0)),{},{cx:m,cy:f});return F.createElement(Qt,{className:Ge("recharts-reference-dot",g)},t.renderDot(h,v),fn.renderCallByParent(this.props,{x:m-o,y:f-o,width:2*o,height:2*o}))}}])}(F.Component);Kg(Yg,"displayName","ReferenceDot");Kg(Yg,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,r:10,fill:"#fff",stroke:"#ccc",fillOpacity:1,strokeWidth:1});Kg(Yg,"renderDot",function(e,t){var n;return F.isValidElement(e)?n=F.cloneElement(e,t):Be(e)?n=e(t):n=F.createElement(tF,Aw({},t,{cx:t.cx,cy:t.cy,className:"recharts-reference-dot-dot"})),n});function kw(){return kw=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},kw.apply(this,arguments)}function Vl(e){"@babel/helpers - typeof";return Vl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Vl(e)}function DS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function OS(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?DS(Object(n),!0).forEach(function(i){Qg(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):DS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function zbe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Wbe(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,SF(i.key),i)}}function Vbe(e,t,n){return t&&Wbe(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Kbe(e,t,n){return t=Sf(t),Ybe(e,IF()?Reflect.construct(t,n||[],Sf(e).constructor):t.apply(e,n))}function Ybe(e,t){if(t&&(Vl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Qbe(e)}function Qbe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function IF(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(IF=function(){return!!e})()}function Sf(e){return Sf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Sf(e)}function Xbe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Nw(e,t)}function Nw(e,t){return Nw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Nw(e,t)}function Qg(e,t,n){return t=SF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function SF(e){var t=Zbe(e,"string");return Vl(t)=="symbol"?t:t+""}function Zbe(e,t){if(Vl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Vl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Jbe=function(t,n,i,a,s){var o=s.x1,l=s.x2,c=s.y1,d=s.y2,u=s.xAxis,p=s.yAxis;if(!u||!p)return null;var m=gA({x:u.scale,y:p.scale}),f={x:t?m.x.apply(o,{position:"start"}):m.x.rangeMin,y:i?m.y.apply(c,{position:"start"}):m.y.rangeMin},x={x:n?m.x.apply(l,{position:"end"}):m.x.rangeMax,y:a?m.y.apply(d,{position:"end"}):m.y.rangeMax};return ui(s,"discard")&&(!m.isInRange(f)||!m.isInRange(x))?null:dF(f,x)},Xg=function(e){function t(){return zbe(this,t),Kbe(this,t,arguments)}return Xbe(t,e),Vbe(t,[{key:"render",value:function(){var i=this.props,a=i.x1,s=i.x2,o=i.y1,l=i.y2,c=i.className,d=i.alwaysShow,u=i.clipPathId;Ls(d===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.');var p=Ht(a),m=Ht(s),f=Ht(o),x=Ht(l),h=this.props.shape;if(!p&&!m&&!f&&!x&&!h)return null;var g=Jbe(p,m,f,x,this.props);if(!g&&!h)return null;var y=ui(this.props,"hidden")?"url(#".concat(u,")"):void 0;return F.createElement(Qt,{className:Ge("recharts-reference-area",c)},t.renderRect(h,OS(OS({clipPath:y},Ve(this.props,!0)),g)),fn.renderCallByParent(this.props,g))}}])}(F.Component);Qg(Xg,"displayName","ReferenceArea");Qg(Xg,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,r:10,fill:"#ccc",fillOpacity:.5,stroke:"none",strokeWidth:1});Qg(Xg,"renderRect",function(e,t){var n;return F.isValidElement(e)?n=F.cloneElement(e,t):Be(e)?n=e(t):n=F.createElement(fA,kw({},t,{className:"recharts-reference-area-rect"})),n});function CF(e,t,n){if(t<1)return[];if(t===1&&n===void 0)return e;for(var i=[],a=0;a<e.length;a+=t)i.push(e[a]);return i}function ewe(e,t,n){var i={width:e.width+t.width,height:e.height+t.height};return fbe(i,n)}function twe(e,t,n){var i=n==="width",a=e.x,s=e.y,o=e.width,l=e.height;return t===1?{start:i?a:s,end:i?a+o:s+l}:{start:i?a+o:s+l,end:i?a:s}}function Cf(e,t,n,i,a){if(e*t<e*i||e*t>e*a)return!1;var s=n();return e*(t-e*s/2-i)>=0&&e*(t+e*s/2-a)<=0}function nwe(e,t){return CF(e,t+1)}function rwe(e,t,n,i,a){for(var s=(i||[]).slice(),o=t.start,l=t.end,c=0,d=1,u=o,p=function(){var x=i==null?void 0:i[c];if(x===void 0)return{v:CF(i,d)};var h=c,g,y=function(){return g===void 0&&(g=n(x,h)),g},v=x.coordinate,b=c===0||Cf(e,v,y,u,l);b||(c=0,u=o,d+=1),b&&(u=v+e*(y()/2+a),c+=d)},m;d<=s.length;)if(m=p(),m)return m.v;return[]}function Uu(e){"@babel/helpers - typeof";return Uu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Uu(e)}function MS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function mn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?MS(Object(n),!0).forEach(function(i){iwe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):MS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function iwe(e,t,n){return t=awe(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function awe(e){var t=swe(e,"string");return Uu(t)=="symbol"?t:t+""}function swe(e,t){if(Uu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Uu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function owe(e,t,n,i,a){for(var s=(i||[]).slice(),o=s.length,l=t.start,c=t.end,d=function(m){var f=s[m],x,h=function(){return x===void 0&&(x=n(f,m)),x};if(m===o-1){var g=e*(f.coordinate+e*h()/2-c);s[m]=f=mn(mn({},f),{},{tickCoord:g>0?f.coordinate-g*e:f.coordinate})}else s[m]=f=mn(mn({},f),{},{tickCoord:f.coordinate});var y=Cf(e,f.tickCoord,h,l,c);y&&(c=f.tickCoord-e*(h()/2+a),s[m]=mn(mn({},f),{},{isShow:!0}))},u=o-1;u>=0;u--)d(u);return s}function lwe(e,t,n,i,a,s){var o=(i||[]).slice(),l=o.length,c=t.start,d=t.end;if(s){var u=i[l-1],p=n(u,l-1),m=e*(u.coordinate+e*p/2-d);o[l-1]=u=mn(mn({},u),{},{tickCoord:m>0?u.coordinate-m*e:u.coordinate});var f=Cf(e,u.tickCoord,function(){return p},c,d);f&&(d=u.tickCoord-e*(p/2+a),o[l-1]=mn(mn({},u),{},{isShow:!0}))}for(var x=s?l-1:l,h=function(v){var b=o[v],A,w=function(){return A===void 0&&(A=n(b,v)),A};if(v===0){var k=e*(b.coordinate-e*w()/2-c);o[v]=b=mn(mn({},b),{},{tickCoord:k<0?b.coordinate-k*e:b.coordinate})}else o[v]=b=mn(mn({},b),{},{tickCoord:b.coordinate});var N=Cf(e,b.tickCoord,w,c,d);N&&(c=b.tickCoord+e*(w()/2+a),o[v]=mn(mn({},b),{},{isShow:!0}))},g=0;g<x;g++)h(g);return o}function cwe(e,t,n){var i=e.tick,a=e.ticks,s=e.viewBox,o=e.minTickGap,l=e.orientation,c=e.interval,d=e.tickFormatter,u=e.unit,p=e.angle;if(!a||!a.length||!i)return[];if(ae(c)||Ba.isSsr)return nwe(a,typeof c=="number"&&ae(c)?c:0);var m=[],f=l==="top"||l==="bottom"?"width":"height",x=u&&f==="width"?Ad(u,{fontSize:t,letterSpacing:n}):{width:0,height:0},h=function(b,A){var w=Be(d)?d(b.value,A):b.value;return f==="width"?ewe(Ad(w,{fontSize:t,letterSpacing:n}),x,p):Ad(w,{fontSize:t,letterSpacing:n})[f]},g=a.length>=2?Rr(a[1].coordinate-a[0].coordinate):1,y=twe(s,g,f);return c==="equidistantPreserveStart"?rwe(g,y,h,a,o):(c==="preserveStart"||c==="preserveStartEnd"?m=lwe(g,y,h,a,o,c==="preserveStartEnd"):m=owe(g,y,h,a,o),m.filter(function(v){return v.isShow}))}var dwe=["viewBox"],uwe=["viewBox"],pwe=["ticks"];function Kl(e){"@babel/helpers - typeof";return Kl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Kl(e)}function $o(){return $o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},$o.apply(this,arguments)}function RS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function vn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?RS(Object(n),!0).forEach(function(i){vA(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):RS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Iy(e,t){if(e==null)return{};var n=mwe(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function mwe(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function hwe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function LS(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,_F(i.key),i)}}function fwe(e,t,n){return t&&LS(e.prototype,t),n&&LS(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function gwe(e,t,n){return t=Ef(t),xwe(e,EF()?Reflect.construct(t,n||[],Ef(e).constructor):t.apply(e,n))}function xwe(e,t){if(t&&(Kl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return ywe(e)}function ywe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function EF(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(EF=function(){return!!e})()}function Ef(e){return Ef=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Ef(e)}function vwe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Iw(e,t)}function Iw(e,t){return Iw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Iw(e,t)}function vA(e,t,n){return t=_F(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _F(e){var t=bwe(e,"string");return Kl(t)=="symbol"?t:t+""}function bwe(e,t){if(Kl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Kl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Zg=function(e){function t(n){var i;return hwe(this,t),i=gwe(this,t,[n]),i.state={fontSize:"",letterSpacing:""},i}return vwe(t,e),fwe(t,[{key:"shouldComponentUpdate",value:function(i,a){var s=i.viewBox,o=Iy(i,dwe),l=this.props,c=l.viewBox,d=Iy(l,uwe);return!nl(s,c)||!nl(o,d)||!nl(a,this.state)}},{key:"componentDidMount",value:function(){var i=this.layerReference;if(i){var a=i.getElementsByClassName("recharts-cartesian-axis-tick-value")[0];a&&this.setState({fontSize:window.getComputedStyle(a).fontSize,letterSpacing:window.getComputedStyle(a).letterSpacing})}}},{key:"getTickLineCoord",value:function(i){var a=this.props,s=a.x,o=a.y,l=a.width,c=a.height,d=a.orientation,u=a.tickSize,p=a.mirror,m=a.tickMargin,f,x,h,g,y,v,b=p?-1:1,A=i.tickSize||u,w=ae(i.tickCoord)?i.tickCoord:i.coordinate;switch(d){case"top":f=x=i.coordinate,g=o+ +!p*c,h=g-b*A,v=h-b*m,y=w;break;case"left":h=g=i.coordinate,x=s+ +!p*l,f=x-b*A,y=f-b*m,v=w;break;case"right":h=g=i.coordinate,x=s+ +p*l,f=x+b*A,y=f+b*m,v=w;break;default:f=x=i.coordinate,g=o+ +p*c,h=g+b*A,v=h+b*m,y=w;break}return{line:{x1:f,y1:h,x2:x,y2:g},tick:{x:y,y:v}}}},{key:"getTickTextAnchor",value:function(){var i=this.props,a=i.orientation,s=i.mirror,o;switch(a){case"left":o=s?"start":"end";break;case"right":o=s?"end":"start";break;default:o="middle";break}return o}},{key:"getTickVerticalAnchor",value:function(){var i=this.props,a=i.orientation,s=i.mirror,o="end";switch(a){case"left":case"right":o="middle";break;case"top":o=s?"start":"end";break;default:o=s?"end":"start";break}return o}},{key:"renderAxisLine",value:function(){var i=this.props,a=i.x,s=i.y,o=i.width,l=i.height,c=i.orientation,d=i.mirror,u=i.axisLine,p=vn(vn(vn({},Ve(this.props,!1)),Ve(u,!1)),{},{fill:"none"});if(c==="top"||c==="bottom"){var m=+(c==="top"&&!d||c==="bottom"&&d);p=vn(vn({},p),{},{x1:a,y1:s+m*l,x2:a+o,y2:s+m*l})}else{var f=+(c==="left"&&!d||c==="right"&&d);p=vn(vn({},p),{},{x1:a+f*o,y1:s,x2:a+f*o,y2:s+l})}return F.createElement("line",$o({},p,{className:Ge("recharts-cartesian-axis-line",hr(u,"className"))}))}},{key:"renderTicks",value:function(i,a,s){var o=this,l=this.props,c=l.tickLine,d=l.stroke,u=l.tick,p=l.tickFormatter,m=l.unit,f=cwe(vn(vn({},this.props),{},{ticks:i}),a,s),x=this.getTickTextAnchor(),h=this.getTickVerticalAnchor(),g=Ve(this.props,!1),y=Ve(u,!1),v=vn(vn({},g),{},{fill:"none"},Ve(c,!1)),b=f.map(function(A,w){var k=o.getTickLineCoord(A),N=k.line,I=k.tick,C=vn(vn(vn(vn({textAnchor:x,verticalAnchor:h},g),{},{stroke:"none",fill:d},y),I),{},{index:w,payload:A,visibleTicksCount:f.length,tickFormatter:p});return F.createElement(Qt,$o({className:"recharts-cartesian-axis-tick",key:"tick-".concat(A.value,"-").concat(A.coordinate,"-").concat(A.tickCoord)},Rh(o.props,A,w)),c&&F.createElement("line",$o({},v,N,{className:Ge("recharts-cartesian-axis-tick-line",hr(c,"className"))})),u&&t.renderTickItem(u,C,"".concat(Be(p)?p(A.value,w):A.value).concat(m||"")))});return F.createElement("g",{className:"recharts-cartesian-axis-ticks"},b)}},{key:"render",value:function(){var i=this,a=this.props,s=a.axisLine,o=a.width,l=a.height,c=a.ticksGenerator,d=a.className,u=a.hide;if(u)return null;var p=this.props,m=p.ticks,f=Iy(p,pwe),x=m;return Be(c)&&(x=m&&m.length>0?c(this.props):c(f)),o<=0||l<=0||!x||!x.length?null:F.createElement(Qt,{className:Ge("recharts-cartesian-axis",d),ref:function(g){i.layerReference=g}},s&&this.renderAxisLine(),this.renderTicks(x,this.state.fontSize,this.state.letterSpacing),fn.renderCallByParent(this.props))}}],[{key:"renderTickItem",value:function(i,a,s){var o;return F.isValidElement(i)?o=F.cloneElement(i,a):Be(i)?o=i(a):o=F.createElement(Qh,$o({},a,{className:"recharts-cartesian-axis-tick-value"}),s),o}}])}(j.Component);vA(Zg,"displayName","CartesianAxis");vA(Zg,"defaultProps",{x:0,y:0,width:0,height:0,viewBox:{x:0,y:0,width:0,height:0},orientation:"bottom",ticks:[],stroke:"#666",tickLine:!0,axisLine:!0,tick:!0,mirror:!1,minTickGap:5,tickSize:6,tickMargin:2,interval:"preserveEnd"});function Yl(e){"@babel/helpers - typeof";return Yl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Yl(e)}function wwe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Awe(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,DF(i.key),i)}}function jwe(e,t,n){return t&&Awe(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function kwe(e,t,n){return t=_f(t),Nwe(e,PF()?Reflect.construct(t,n||[],_f(e).constructor):t.apply(e,n))}function Nwe(e,t){if(t&&(Yl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Iwe(e)}function Iwe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function PF(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(PF=function(){return!!e})()}function _f(e){return _f=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},_f(e)}function Swe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Sw(e,t)}function Sw(e,t){return Sw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Sw(e,t)}function TF(e,t,n){return t=DF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function DF(e){var t=Cwe(e,"string");return Yl(t)=="symbol"?t:t+""}function Cwe(e,t){if(Yl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Yl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Cw(){return Cw=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Cw.apply(this,arguments)}function Ewe(e){var t=e.xAxisId,n=bF(),i=wF(),a=yF(t);return a==null?null:F.createElement(Zg,Cw({},a,{className:Ge("recharts-".concat(a.axisType," ").concat(a.axisType),a.className),viewBox:{x:0,y:0,width:n,height:i},ticksGenerator:function(o){return ws(o,!0)}}))}var gp=function(e){function t(){return wwe(this,t),kwe(this,t,arguments)}return Swe(t,e),jwe(t,[{key:"render",value:function(){return F.createElement(Ewe,this.props)}}])}(F.Component);TF(gp,"displayName","XAxis");TF(gp,"defaultProps",{allowDecimals:!0,hide:!1,orientation:"bottom",width:0,height:30,mirror:!1,xAxisId:0,tickCount:5,type:"category",padding:{left:0,right:0},allowDataOverflow:!1,scale:"auto",reversed:!1,allowDuplicatedCategory:!0});function Ql(e){"@babel/helpers - typeof";return Ql=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ql(e)}function _we(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Pwe(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,RF(i.key),i)}}function Twe(e,t,n){return t&&Pwe(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Dwe(e,t,n){return t=Pf(t),Owe(e,OF()?Reflect.construct(t,n||[],Pf(e).constructor):t.apply(e,n))}function Owe(e,t){if(t&&(Ql(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Mwe(e)}function Mwe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function OF(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(OF=function(){return!!e})()}function Pf(e){return Pf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Pf(e)}function Rwe(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ew(e,t)}function Ew(e,t){return Ew=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Ew(e,t)}function MF(e,t,n){return t=RF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function RF(e){var t=Lwe(e,"string");return Ql(t)=="symbol"?t:t+""}function Lwe(e,t){if(Ql(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Ql(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function _w(){return _w=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},_w.apply(this,arguments)}var Fwe=function(t){var n=t.yAxisId,i=bF(),a=wF(),s=vF(n);return s==null?null:F.createElement(Zg,_w({},s,{className:Ge("recharts-".concat(s.axisType," ").concat(s.axisType),s.className),viewBox:{x:0,y:0,width:i,height:a},ticksGenerator:function(l){return ws(l,!0)}}))},xp=function(e){function t(){return _we(this,t),Dwe(this,t,arguments)}return Rwe(t,e),Twe(t,[{key:"render",value:function(){return F.createElement(Fwe,this.props)}}])}(F.Component);MF(xp,"displayName","YAxis");MF(xp,"defaultProps",{allowDuplicatedCategory:!0,allowDecimals:!0,hide:!1,orientation:"left",width:60,height:0,mirror:!1,yAxisId:0,tickCount:5,type:"number",padding:{top:0,bottom:0},allowDataOverflow:!1,scale:"auto",reversed:!1});function FS(e){return qwe(e)||Uwe(e)||$we(e)||Bwe()}function Bwe(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
560In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function $we(e,t){if(e){if(typeof e=="string")return Pw(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Pw(e,t)}}function Uwe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function qwe(e){if(Array.isArray(e))return Pw(e)}function Pw(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}var Tw=function(t,n,i,a,s){var o=Ur(t,yA),l=Ur(t,Yg),c=[].concat(FS(o),FS(l)),d=Ur(t,Xg),u="".concat(a,"Id"),p=a[0],m=n;if(c.length&&(m=c.reduce(function(h,g){if(g.props[u]===i&&ui(g.props,"extendDomain")&&ae(g.props[p])){var y=g.props[p];return[Math.min(h[0],y),Math.max(h[1],y)]}return h},m)),d.length){var f="".concat(p,"1"),x="".concat(p,"2");m=d.reduce(function(h,g){if(g.props[u]===i&&ui(g.props,"extendDomain")&&ae(g.props[f])&&ae(g.props[x])){var y=g.props[f],v=g.props[x];return[Math.min(h[0],y,v),Math.max(h[1],y,v)]}return h},m)}return s&&s.length&&(m=s.reduce(function(h,g){return ae(g)?[Math.min(h[0],g),Math.max(h[1],g)]:h},m)),m},LF={exports:{}};(function(e){var t=Object.prototype.hasOwnProperty,n="~";function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(n=!1));function a(c,d,u){this.fn=c,this.context=d,this.once=u||!1}function s(c,d,u,p,m){if(typeof u!="function")throw new TypeError("The listener must be a function");var f=new a(u,p||c,m),x=n?n+d:d;return c._events[x]?c._events[x].fn?c._events[x]=[c._events[x],f]:c._events[x].push(f):(c._events[x]=f,c._eventsCount++),c}function o(c,d){--c._eventsCount===0?c._events=new i:delete c._events[d]}function l(){this._events=new i,this._eventsCount=0}l.prototype.eventNames=function(){var d=[],u,p;if(this._eventsCount===0)return d;for(p in u=this._events)t.call(u,p)&&d.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?d.concat(Object.getOwnPropertySymbols(u)):d},l.prototype.listeners=function(d){var u=n?n+d:d,p=this._events[u];if(!p)return[];if(p.fn)return[p.fn];for(var m=0,f=p.length,x=new Array(f);m<f;m++)x[m]=p[m].fn;return x},l.prototype.listenerCount=function(d){var u=n?n+d:d,p=this._events[u];return p?p.fn?1:p.length:0},l.prototype.emit=function(d,u,p,m,f,x){var h=n?n+d:d;if(!this._events[h])return!1;var g=this._events[h],y=arguments.length,v,b;if(g.fn){switch(g.once&&this.removeListener(d,g.fn,void 0,!0),y){case 1:return g.fn.call(g.context),!0;case 2:return g.fn.call(g.context,u),!0;case 3:return g.fn.call(g.context,u,p),!0;case 4:return g.fn.call(g.context,u,p,m),!0;case 5:return g.fn.call(g.context,u,p,m,f),!0;case 6:return g.fn.call(g.context,u,p,m,f,x),!0}for(b=1,v=new Array(y-1);b<y;b++)v[b-1]=arguments[b];g.fn.apply(g.context,v)}else{var A=g.length,w;for(b=0;b<A;b++)switch(g[b].once&&this.removeListener(d,g[b].fn,void 0,!0),y){case 1:g[b].fn.call(g[b].context);break;case 2:g[b].fn.call(g[b].context,u);break;case 3:g[b].fn.call(g[b].context,u,p);break;case 4:g[b].fn.call(g[b].context,u,p,m);break;default:if(!v)for(w=1,v=new Array(y-1);w<y;w++)v[w-1]=arguments[w];g[b].fn.apply(g[b].context,v)}}return!0},l.prototype.on=function(d,u,p){return s(this,d,u,p,!1)},l.prototype.once=function(d,u,p){return s(this,d,u,p,!0)},l.prototype.removeListener=function(d,u,p,m){var f=n?n+d:d;if(!this._events[f])return this;if(!u)return o(this,f),this;var x=this._events[f];if(x.fn)x.fn===u&&(!m||x.once)&&(!p||x.context===p)&&o(this,f);else{for(var h=0,g=[],y=x.length;h<y;h++)(x[h].fn!==u||m&&!x[h].once||p&&x[h].context!==p)&&g.push(x[h]);g.length?this._events[f]=g.length===1?g[0]:g:o(this,f)}return this},l.prototype.removeAllListeners=function(d){var u;return d?(u=n?n+d:d,this._events[u]&&o(this,u)):(this._events=new i,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=n,l.EventEmitter=l,e.exports=l})(LF);var Gwe=LF.exports;const Hwe=Qe(Gwe);var Sy=new Hwe,Cy="recharts.syncMouseEvents";function qu(e){"@babel/helpers - typeof";return qu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},qu(e)}function zwe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Wwe(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,FF(i.key),i)}}function Vwe(e,t,n){return t&&Wwe(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ey(e,t,n){return t=FF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function FF(e){var t=Kwe(e,"string");return qu(t)=="symbol"?t:t+""}function Kwe(e,t){if(qu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t);if(qu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var Ywe=function(){function e(){zwe(this,e),Ey(this,"activeIndex",0),Ey(this,"coordinateList",[]),Ey(this,"layout","horizontal")}return Vwe(e,[{key:"setDetails",value:function(n){var i,a=n.coordinateList,s=a===void 0?null:a,o=n.container,l=o===void 0?null:o,c=n.layout,d=c===void 0?null:c,u=n.offset,p=u===void 0?null:u,m=n.mouseHandlerCallback,f=m===void 0?null:m;this.coordinateList=(i=s??this.coordinateList)!==null&&i!==void 0?i:[],this.container=l??this.container,this.layout=d??this.layout,this.offset=p??this.offset,this.mouseHandlerCallback=f??this.mouseHandlerCallback,this.activeIndex=Math.min(Math.max(this.activeIndex,0),this.coordinateList.length-1)}},{key:"focus",value:function(){this.spoofMouse()}},{key:"keyboardEvent",value:function(n){if(this.coordinateList.length!==0)switch(n.key){case"ArrowRight":{if(this.layout!=="horizontal")return;this.activeIndex=Math.min(this.activeIndex+1,this.coordinateList.length-1),this.spoofMouse();break}case"ArrowLeft":{if(this.layout!=="horizontal")return;this.activeIndex=Math.max(this.activeIndex-1,0),this.spoofMouse();break}}}},{key:"setIndex",value:function(n){this.activeIndex=n}},{key:"spoofMouse",value:function(){var n,i;if(this.layout==="horizontal"&&this.coordinateList.length!==0){var a=this.container.getBoundingClientRect(),s=a.x,o=a.y,l=a.height,c=this.coordinateList[this.activeIndex].coordinate,d=((n=window)===null||n===void 0?void 0:n.scrollX)||0,u=((i=window)===null||i===void 0?void 0:i.scrollY)||0,p=s+c+d,m=o+this.offset.top+l/2+u;this.mouseHandlerCallback({pageX:p,pageY:m})}}}])}();function Qwe(e,t,n){if(n==="number"&&t===!0&&Array.isArray(e)){var i=e==null?void 0:e[0],a=e==null?void 0:e[1];if(i&&a&&ae(i)&&ae(a))return!0}return!1}function Xwe(e,t,n,i){var a=i/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-a:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-a,width:e==="horizontal"?i:n.width-1,height:e==="horizontal"?n.height-1:i}}function BF(e){var t=e.cx,n=e.cy,i=e.radius,a=e.startAngle,s=e.endAngle,o=on(t,n,i,a),l=on(t,n,i,s);return{points:[o,l],cx:t,cy:n,radius:i,startAngle:a,endAngle:s}}function Zwe(e,t,n){var i,a,s,o;if(e==="horizontal")i=t.x,s=i,a=n.top,o=n.top+n.height;else if(e==="vertical")a=t.y,o=a,i=n.left,s=n.left+n.width;else if(t.cx!=null&&t.cy!=null)if(e==="centric"){var l=t.cx,c=t.cy,d=t.innerRadius,u=t.outerRadius,p=t.angle,m=on(l,c,d,p),f=on(l,c,u,p);i=m.x,a=m.y,s=f.x,o=f.y}else return BF(t);return[{x:i,y:a},{x:s,y:o}]}function Gu(e){"@babel/helpers - typeof";return Gu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Gu(e)}function BS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function mm(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?BS(Object(n),!0).forEach(function(i){Jwe(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):BS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function Jwe(e,t,n){return t=e0e(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function e0e(e){var t=t0e(e,"string");return Gu(t)=="symbol"?t:t+""}function t0e(e,t){if(Gu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Gu(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function n0e(e){var t,n,i=e.element,a=e.tooltipEventType,s=e.isActive,o=e.activeCoordinate,l=e.activePayload,c=e.offset,d=e.activeTooltipIndex,u=e.tooltipAxisBandSize,p=e.layout,m=e.chartName,f=(t=i.props.cursor)!==null&&t!==void 0?t:(n=i.type.defaultProps)===null||n===void 0?void 0:n.cursor;if(!i||!f||!s||!o||m!=="ScatterChart"&&a!=="axis")return null;var x,h=F4;if(m==="ScatterChart")x=o,h=Wxe;else if(m==="BarChart")x=Xwe(p,o,c,u),h=fA;else if(p==="radial"){var g=BF(o),y=g.cx,v=g.cy,b=g.radius,A=g.startAngle,w=g.endAngle;x={cx:y,cy:v,startAngle:A,endAngle:w,innerRadius:b,outerRadius:b},h=G8}else x={points:Zwe(p,o,c)},h=F4;var k=mm(mm(mm(mm({stroke:"#ccc",pointerEvents:"none"},c),x),Ve(f,!1)),{},{payload:l,payloadIndex:d,className:Ge("recharts-tooltip-cursor",f.className)});return j.isValidElement(f)?j.cloneElement(f,k):j.createElement(h,k)}var r0e=["item"],i0e=["children","className","width","height","style","compact","title","desc"];function Xl(e){"@babel/helpers - typeof";return Xl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xl(e)}function Uo(){return Uo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},Uo.apply(this,arguments)}function $S(e,t){return o0e(e)||s0e(e,t)||UF(e,t)||a0e()}function a0e(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
561In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function s0e(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var i,a,s,o,l=[],c=!0,d=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(i=s.call(n)).done)&&(l.push(i.value),l.length!==t);c=!0);}catch(u){d=!0,a=u}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(d)throw a}}return l}}function o0e(e){if(Array.isArray(e))return e}function US(e,t){if(e==null)return{};var n=l0e(e,t),i,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)i=s[a],!(t.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function l0e(e,t){if(e==null)return{};var n={};for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(t.indexOf(i)>=0)continue;n[i]=e[i]}return n}function c0e(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function d0e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,qF(i.key),i)}}function u0e(e,t,n){return t&&d0e(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function p0e(e,t,n){return t=Tf(t),m0e(e,$F()?Reflect.construct(t,n||[],Tf(e).constructor):t.apply(e,n))}function m0e(e,t){if(t&&(Xl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return h0e(e)}function h0e(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function $F(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return($F=function(){return!!e})()}function Tf(e){return Tf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Tf(e)}function f0e(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Dw(e,t)}function Dw(e,t){return Dw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,a){return i.__proto__=a,i},Dw(e,t)}function Zl(e){return y0e(e)||x0e(e)||UF(e)||g0e()}function g0e(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
562In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function UF(e,t){if(e){if(typeof e=="string")return Ow(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Ow(e,t)}}function x0e(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function y0e(e){if(Array.isArray(e))return Ow(e)}function Ow(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function qS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,i)}return n}function H(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?qS(Object(n),!0).forEach(function(i){ye(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):qS(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function ye(e,t,n){return t=qF(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function qF(e){var t=v0e(e,"string");return Xl(t)=="symbol"?t:t+""}function v0e(e,t){if(Xl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var i=n.call(e,t||"default");if(Xl(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var b0e={xAxis:["bottom","top"],yAxis:["left","right"]},w0e={width:"100%",height:"100%"},GF={x:0,y:0};function hm(e){return e}var A0e=function(t,n){return n==="horizontal"?t.x:n==="vertical"?t.y:n==="centric"?t.angle:t.radius},j0e=function(t,n,i,a){var s=n.find(function(u){return u&&u.index===i});if(s){if(t==="horizontal")return{x:s.coordinate,y:a.y};if(t==="vertical")return{x:a.x,y:s.coordinate};if(t==="centric"){var o=s.coordinate,l=a.radius;return H(H(H({},a),on(a.cx,a.cy,l,o)),{},{angle:o,radius:l})}var c=s.coordinate,d=a.angle;return H(H(H({},a),on(a.cx,a.cy,c,d)),{},{angle:d,radius:c})}return GF},Jg=function(t,n){var i=n.graphicalItems,a=n.dataStartIndex,s=n.dataEndIndex,o=(i??[]).reduce(function(l,c){var d=c.props.data;return d&&d.length?[].concat(Zl(l),Zl(d)):l},[]);return o.length>0?o:t&&t.length&&ae(a)&&ae(s)?t.slice(a,s+1):[]};function HF(e){return e==="number"?[0,"auto"]:void 0}var Mw=function(t,n,i,a){var s=t.graphicalItems,o=t.tooltipAxis,l=Jg(n,t);return i<0||!s||!s.length||i>=l.length?null:s.reduce(function(c,d){var u,p=(u=d.props.data)!==null&&u!==void 0?u:n;p&&t.dataStartIndex+t.dataEndIndex!==0&&t.dataEndIndex-t.dataStartIndex>=i&&(p=p.slice(t.dataStartIndex,t.dataEndIndex+1));var m;if(o.dataKey&&!o.allowDuplicatedCategory){var f=p===void 0?l:p;m=hb(f,o.dataKey,a)}else m=p&&p[i]||l[i];return m?[].concat(Zl(c),[$8(d,m)]):c},[])},GS=function(t,n,i,a){var s=a||{x:t.chartX,y:t.chartY},o=A0e(s,i),l=t.orderedTooltipTicks,c=t.tooltipAxis,d=t.tooltipTicks,u=Fhe(o,l,d,c);if(u>=0&&d){var p=d[u]&&d[u].value,m=Mw(t,n,u,p),f=j0e(i,l,u,s);return{activeTooltipIndex:u,activeLabel:p,activePayload:m,activeCoordinate:f}}return null},k0e=function(t,n){var i=n.axes,a=n.graphicalItems,s=n.axisType,o=n.axisIdKey,l=n.stackGroups,c=n.dataStartIndex,d=n.dataEndIndex,u=t.layout,p=t.children,m=t.stackOffset,f=F8(u,s);return i.reduce(function(x,h){var g,y=h.type.defaultProps!==void 0?H(H({},h.type.defaultProps),h.props):h.props,v=y.type,b=y.dataKey,A=y.allowDataOverflow,w=y.allowDuplicatedCategory,k=y.scale,N=y.ticks,I=y.includeHidden,C=y[o];if(x[C])return x;var O=Jg(t.data,{graphicalItems:a.filter(function(V){var ne,Se=o in V.props?V.props[o]:(ne=V.type.defaultProps)===null||ne===void 0?void 0:ne[o];return Se===C}),dataStartIndex:c,dataEndIndex:d}),_=O.length,D,G,P;Qwe(y.domain,A,v)&&(D=tw(y.domain,null,A),f&&(v==="number"||k!=="auto")&&(P=kd(O,b,"category")));var L=HF(v);if(!D||D.length===0){var U,W=(U=y.domain)!==null&&U!==void 0?U:L;if(b){if(D=kd(O,b,v),v==="category"&&f){var B=IJ(D);w&&B?(G=D,D=bf(0,_)):w||(D=N4(W,D,h).reduce(function(V,ne){return V.indexOf(ne)>=0?V:[].concat(Zl(V),[ne])},[]))}else if(v==="category")w?D=D.filter(function(V){return V!==""&&!Ke(V)}):D=N4(W,D,h).reduce(function(V,ne){return V.indexOf(ne)>=0||ne===""||Ke(ne)?V:[].concat(Zl(V),[ne])},[]);else if(v==="number"){var $=Ghe(O,a.filter(function(V){var ne,Se,He=o in V.props?V.props[o]:(ne=V.type.defaultProps)===null||ne===void 0?void 0:ne[o],at="hide"in V.props?V.props.hide:(Se=V.type.defaultProps)===null||Se===void 0?void 0:Se.hide;return He===C&&(I||!at)}),b,s,u);$&&(D=$)}f&&(v==="number"||k!=="auto")&&(P=kd(O,b,"category"))}else f?D=bf(0,_):l&&l[C]&&l[C].hasStack&&v==="number"?D=m==="expand"?[0,1]:B8(l[C].stackGroups,c,d):D=L8(O,a.filter(function(V){var ne=o in V.props?V.props[o]:V.type.defaultProps[o],Se="hide"in V.props?V.props.hide:V.type.defaultProps.hide;return ne===C&&(I||!Se)}),v,u,!0);if(v==="number")D=Tw(p,D,C,s,N),W&&(D=tw(W,D,A));else if(v==="category"&&W){var z=W,Q=D.every(function(V){return z.indexOf(V)>=0});Q&&(D=z)}}return H(H({},x),{},ye({},C,H(H({},y),{},{axisType:s,domain:D,categoricalDomain:P,duplicateDomain:G,originalDomain:(g=y.domain)!==null&&g!==void 0?g:L,isCategorical:f,layout:u})))},{})},N0e=function(t,n){var i=n.graphicalItems,a=n.Axis,s=n.axisType,o=n.axisIdKey,l=n.stackGroups,c=n.dataStartIndex,d=n.dataEndIndex,u=t.layout,p=t.children,m=Jg(t.data,{graphicalItems:i,dataStartIndex:c,dataEndIndex:d}),f=m.length,x=F8(u,s),h=-1;return i.reduce(function(g,y){var v=y.type.defaultProps!==void 0?H(H({},y.type.defaultProps),y.props):y.props,b=v[o],A=HF("number");if(!g[b]){h++;var w;return x?w=bf(0,f):l&&l[b]&&l[b].hasStack?(w=B8(l[b].stackGroups,c,d),w=Tw(p,w,b,s)):(w=tw(A,L8(m,i.filter(function(k){var N,I,C=o in k.props?k.props[o]:(N=k.type.defaultProps)===null||N===void 0?void 0:N[o],O="hide"in k.props?k.props.hide:(I=k.type.defaultProps)===null||I===void 0?void 0:I.hide;return C===b&&!O}),"number",u),a.defaultProps.allowDataOverflow),w=Tw(p,w,b,s)),H(H({},g),{},ye({},b,H(H({axisType:s},a.defaultProps),{},{hide:!0,orientation:hr(b0e,"".concat(s,".").concat(h%2),null),domain:w,originalDomain:A,isCategorical:x,layout:u})))}return g},{})},I0e=function(t,n){var i=n.axisType,a=i===void 0?"xAxis":i,s=n.AxisComp,o=n.graphicalItems,l=n.stackGroups,c=n.dataStartIndex,d=n.dataEndIndex,u=t.children,p="".concat(a,"Id"),m=Ur(u,s),f={};return m&&m.length?f=k0e(t,{axes:m,graphicalItems:o,axisType:a,axisIdKey:p,stackGroups:l,dataStartIndex:c,dataEndIndex:d}):o&&o.length&&(f=N0e(t,{Axis:s,graphicalItems:o,axisType:a,axisIdKey:p,stackGroups:l,dataStartIndex:c,dataEndIndex:d})),f},S0e=function(t){var n=ko(t),i=ws(n,!1,!0);return{tooltipTicks:i,orderedTooltipTicks:U1(i,function(a){return a.coordinate}),tooltipAxis:n,tooltipAxisBandSize:uf(n,i)}},HS=function(t){var n=t.children,i=t.defaultShowTooltip,a=Gn(n,Gl),s=0,o=0;return t.data&&t.data.length!==0&&(o=t.data.length-1),a&&a.props&&(a.props.startIndex>=0&&(s=a.props.startIndex),a.props.endIndex>=0&&(o=a.props.endIndex)),{chartX:0,chartY:0,dataStartIndex:s,dataEndIndex:o,activeTooltipIndex:-1,isTooltipActive:!!i}},C0e=function(t){return!t||!t.length?!1:t.some(function(n){var i=Bi(n&&n.type);return i&&i.indexOf("Bar")>=0})},zS=function(t){return t==="horizontal"?{numericAxisName:"yAxis",cateAxisName:"xAxis"}:t==="vertical"?{numericAxisName:"xAxis",cateAxisName:"yAxis"}:t==="centric"?{numericAxisName:"radiusAxis",cateAxisName:"angleAxis"}:{numericAxisName:"angleAxis",cateAxisName:"radiusAxis"}},E0e=function(t,n){var i=t.props,a=t.graphicalItems,s=t.xAxisMap,o=s===void 0?{}:s,l=t.yAxisMap,c=l===void 0?{}:l,d=i.width,u=i.height,p=i.children,m=i.margin||{},f=Gn(p,Gl),x=Gn(p,rl),h=Object.keys(c).reduce(function(w,k){var N=c[k],I=N.orientation;return!N.mirror&&!N.hide?H(H({},w),{},ye({},I,w[I]+N.width)):w},{left:m.left||0,right:m.right||0}),g=Object.keys(o).reduce(function(w,k){var N=o[k],I=N.orientation;return!N.mirror&&!N.hide?H(H({},w),{},ye({},I,hr(w,"".concat(I))+N.height)):w},{top:m.top||0,bottom:m.bottom||0}),y=H(H({},g),h),v=y.bottom;f&&(y.bottom+=f.props.height||Gl.defaultProps.height),x&&n&&(y=Uhe(y,a,i,n));var b=d-y.left-y.right,A=u-y.top-y.bottom;return H(H({brushBottom:v},y),{},{width:Math.max(b,0),height:Math.max(A,0)})},_0e=function(t,n){if(n==="xAxis")return t[n].width;if(n==="yAxis")return t[n].height},P0e=function(t){var n=t.chartName,i=t.GraphicalChild,a=t.defaultTooltipEventType,s=a===void 0?"axis":a,o=t.validateTooltipEventTypes,l=o===void 0?["axis"]:o,c=t.axisComponents,d=t.legendContent,u=t.formatAxisMap,p=t.defaultProps,m=function(y,v){var b=v.graphicalItems,A=v.stackGroups,w=v.offset,k=v.updateId,N=v.dataStartIndex,I=v.dataEndIndex,C=y.barSize,O=y.layout,_=y.barGap,D=y.barCategoryGap,G=y.maxBarSize,P=zS(O),L=P.numericAxisName,U=P.cateAxisName,W=C0e(b),B=[];return b.forEach(function($,z){var Q=Jg(y.data,{graphicalItems:[$],dataStartIndex:N,dataEndIndex:I}),V=$.type.defaultProps!==void 0?H(H({},$.type.defaultProps),$.props):$.props,ne=V.dataKey,Se=V.maxBarSize,He=V["".concat(L,"Id")],at=V["".concat(U,"Id")],tn={},Et=c.reduce(function(xi,yi){var is=v["".concat(yi.axisType,"Map")],yp=V["".concat(yi.axisType,"Id")];is&&is[yp]||yi.axisType==="zAxis"||to();var vp=is[yp];return H(H({},xi),{},ye(ye({},yi.axisType,vp),"".concat(yi.axisType,"Ticks"),ws(vp)))},tn),re=Et[U],ve=Et["".concat(U,"Ticks")],fe=A&&A[He]&&A[He].hasStack&&tfe($,A[He].stackGroups),Y=Bi($.type).indexOf("Bar")>=0,E=uf(re,ve),ee=[],pe=W&&Bhe({barSize:C,stackGroups:A,totalSize:_0e(Et,U)});if(Y){var _e,X,Te=Ke(Se)?G:Se,Lt=(_e=(X=uf(re,ve,!0))!==null&&X!==void 0?X:Te)!==null&&_e!==void 0?_e:0;ee=$he({barGap:_,barCategoryGap:D,bandSize:Lt!==E?Lt:E,sizeList:pe[at],maxBarSize:Te}),Lt!==E&&(ee=ee.map(function(xi){return H(H({},xi),{},{position:H(H({},xi.position),{},{offset:xi.position.offset-Lt/2})})}))}var wr=$&&$.type&&$.type.getComposedData;wr&&B.push({props:H(H({},wr(H(H({},Et),{},{displayedData:Q,props:y,dataKey:ne,item:$,bandSize:E,barPosition:ee,offset:w,stackedData:fe,layout:O,dataStartIndex:N,dataEndIndex:I}))),{},ye(ye(ye({key:$.key||"item-".concat(z)},L,Et[L]),U,Et[U]),"animationId",k)),childIndex:LJ($,y.children),item:$})}),B},f=function(y,v){var b=y.props,A=y.dataStartIndex,w=y.dataEndIndex,k=y.updateId;if(!vN({props:b}))return null;var N=b.children,I=b.layout,C=b.stackOffset,O=b.data,_=b.reverseStackOrder,D=zS(I),G=D.numericAxisName,P=D.cateAxisName,L=Ur(N,i),U=Zhe(O,L,"".concat(G,"Id"),"".concat(P,"Id"),C,_),W=c.reduce(function(V,ne){var Se="".concat(ne.axisType,"Map");return H(H({},V),{},ye({},Se,I0e(b,H(H({},ne),{},{graphicalItems:L,stackGroups:ne.axisType===G&&U,dataStartIndex:A,dataEndIndex:w}))))},{}),B=E0e(H(H({},W),{},{props:b,graphicalItems:L}),v==null?void 0:v.legendBBox);Object.keys(W).forEach(function(V){W[V]=u(b,W[V],B,V.replace("Map",""),n)});var $=W["".concat(P,"Map")],z=S0e($),Q=m(b,H(H({},W),{},{dataStartIndex:A,dataEndIndex:w,updateId:k,graphicalItems:L,stackGroups:U,offset:B}));return H(H({formattedGraphicalItems:Q,graphicalItems:L,offset:B,stackGroups:U},z),W)},x=function(g){function y(v){var b,A,w;return c0e(this,y),w=p0e(this,y,[v]),ye(w,"eventEmitterSymbol",Symbol("rechartsEventEmitter")),ye(w,"accessibilityManager",new Ywe),ye(w,"handleLegendBBoxUpdate",function(k){if(k){var N=w.state,I=N.dataStartIndex,C=N.dataEndIndex,O=N.updateId;w.setState(H({legendBBox:k},f({props:w.props,dataStartIndex:I,dataEndIndex:C,updateId:O},H(H({},w.state),{},{legendBBox:k}))))}}),ye(w,"handleReceiveSyncEvent",function(k,N,I){if(w.props.syncId===k){if(I===w.eventEmitterSymbol&&typeof w.props.syncMethod!="function")return;w.applySyncEvent(N)}}),ye(w,"handleBrushChange",function(k){var N=k.startIndex,I=k.endIndex;if(N!==w.state.dataStartIndex||I!==w.state.dataEndIndex){var C=w.state.updateId;w.setState(function(){return H({dataStartIndex:N,dataEndIndex:I},f({props:w.props,dataStartIndex:N,dataEndIndex:I,updateId:C},w.state))}),w.triggerSyncEvent({dataStartIndex:N,dataEndIndex:I})}}),ye(w,"handleMouseEnter",function(k){var N=w.getMouseInfo(k);if(N){var I=H(H({},N),{},{isTooltipActive:!0});w.setState(I),w.triggerSyncEvent(I);var C=w.props.onMouseEnter;Be(C)&&C(I,k)}}),ye(w,"triggeredAfterMouseMove",function(k){var N=w.getMouseInfo(k),I=N?H(H({},N),{},{isTooltipActive:!0}):{isTooltipActive:!1};w.setState(I),w.triggerSyncEvent(I);var C=w.props.onMouseMove;Be(C)&&C(I,k)}),ye(w,"handleItemMouseEnter",function(k){w.setState(function(){return{isTooltipActive:!0,activeItem:k,activePayload:k.tooltipPayload,activeCoordinate:k.tooltipPosition||{x:k.cx,y:k.cy}}})}),ye(w,"handleItemMouseLeave",function(){w.setState(function(){return{isTooltipActive:!1}})}),ye(w,"handleMouseMove",function(k){k.persist(),w.throttleTriggeredAfterMouseMove(k)}),ye(w,"handleMouseLeave",function(k){w.throttleTriggeredAfterMouseMove.cancel();var N={isTooltipActive:!1};w.setState(N),w.triggerSyncEvent(N);var I=w.props.onMouseLeave;Be(I)&&I(N,k)}),ye(w,"handleOuterEvent",function(k){var N=RJ(k),I=hr(w.props,"".concat(N));if(N&&Be(I)){var C,O;/.*touch.*/i.test(N)?O=w.getMouseInfo(k.changedTouches[0]):O=w.getMouseInfo(k),I((C=O)!==null&&C!==void 0?C:{},k)}}),ye(w,"handleClick",function(k){var N=w.getMouseInfo(k);if(N){var I=H(H({},N),{},{isTooltipActive:!0});w.setState(I),w.triggerSyncEvent(I);var C=w.props.onClick;Be(C)&&C(I,k)}}),ye(w,"handleMouseDown",function(k){var N=w.props.onMouseDown;if(Be(N)){var I=w.getMouseInfo(k);N(I,k)}}),ye(w,"handleMouseUp",function(k){var N=w.props.onMouseUp;if(Be(N)){var I=w.getMouseInfo(k);N(I,k)}}),ye(w,"handleTouchMove",function(k){k.changedTouches!=null&&k.changedTouches.length>0&&w.throttleTriggeredAfterMouseMove(k.changedTouches[0])}),ye(w,"handleTouchStart",function(k){k.changedTouches!=null&&k.changedTouches.length>0&&w.handleMouseDown(k.changedTouches[0])}),ye(w,"handleTouchEnd",function(k){k.changedTouches!=null&&k.changedTouches.length>0&&w.handleMouseUp(k.changedTouches[0])}),ye(w,"triggerSyncEvent",function(k){w.props.syncId!==void 0&&Sy.emit(Cy,w.props.syncId,k,w.eventEmitterSymbol)}),ye(w,"applySyncEvent",function(k){var N=w.props,I=N.layout,C=N.syncMethod,O=w.state.updateId,_=k.dataStartIndex,D=k.dataEndIndex;if(k.dataStartIndex!==void 0||k.dataEndIndex!==void 0)w.setState(H({dataStartIndex:_,dataEndIndex:D},f({props:w.props,dataStartIndex:_,dataEndIndex:D,updateId:O},w.state)));else if(k.activeTooltipIndex!==void 0){var G=k.chartX,P=k.chartY,L=k.activeTooltipIndex,U=w.state,W=U.offset,B=U.tooltipTicks;if(!W)return;if(typeof C=="function")L=C(B,k);else if(C==="value"){L=-1;for(var $=0;$<B.length;$++)if(B[$].value===k.activeLabel){L=$;break}}var z=H(H({},W),{},{x:W.left,y:W.top}),Q=Math.min(G,z.x+z.width),V=Math.min(P,z.y+z.height),ne=B[L]&&B[L].value,Se=Mw(w.state,w.props.data,L),He=B[L]?{x:I==="horizontal"?B[L].coordinate:Q,y:I==="horizontal"?V:B[L].coordinate}:GF;w.setState(H(H({},k),{},{activeLabel:ne,activeCoordinate:He,activePayload:Se,activeTooltipIndex:L}))}else w.setState(k)}),ye(w,"renderCursor",function(k){var N,I=w.state,C=I.isTooltipActive,O=I.activeCoordinate,_=I.activePayload,D=I.offset,G=I.activeTooltipIndex,P=I.tooltipAxisBandSize,L=w.getTooltipEventType(),U=(N=k.props.active)!==null&&N!==void 0?N:C,W=w.props.layout,B=k.key||"_recharts-cursor";return F.createElement(n0e,{key:B,activeCoordinate:O,activePayload:_,activeTooltipIndex:G,chartName:n,element:k,isActive:U,layout:W,offset:D,tooltipAxisBandSize:P,tooltipEventType:L})}),ye(w,"renderPolarAxis",function(k,N,I){var C=hr(k,"type.axisType"),O=hr(w.state,"".concat(C,"Map")),_=k.type.defaultProps,D=_!==void 0?H(H({},_),k.props):k.props,G=O&&O[D["".concat(C,"Id")]];return j.cloneElement(k,H(H({},G),{},{className:Ge(C,G.className),key:k.key||"".concat(N,"-").concat(I),ticks:ws(G,!0)}))}),ye(w,"renderPolarGrid",function(k){var N=k.props,I=N.radialLines,C=N.polarAngles,O=N.polarRadius,_=w.state,D=_.radiusAxisMap,G=_.angleAxisMap,P=ko(D),L=ko(G),U=L.cx,W=L.cy,B=L.innerRadius,$=L.outerRadius;return j.cloneElement(k,{polarAngles:Array.isArray(C)?C:ws(L,!0).map(function(z){return z.coordinate}),polarRadius:Array.isArray(O)?O:ws(P,!0).map(function(z){return z.coordinate}),cx:U,cy:W,innerRadius:B,outerRadius:$,key:k.key||"polar-grid",radialLines:I})}),ye(w,"renderLegend",function(){var k=w.state.formattedGraphicalItems,N=w.props,I=N.children,C=N.width,O=N.height,_=w.props.margin||{},D=C-(_.left||0)-(_.right||0),G=M8({children:I,formattedGraphicalItems:k,legendWidth:D,legendContent:d});if(!G)return null;var P=G.item,L=US(G,r0e);return j.cloneElement(P,H(H({},L),{},{chartWidth:C,chartHeight:O,margin:_,onBBoxUpdate:w.handleLegendBBoxUpdate}))}),ye(w,"renderTooltip",function(){var k,N=w.props,I=N.children,C=N.accessibilityLayer,O=Gn(I,Sr);if(!O)return null;var _=w.state,D=_.isTooltipActive,G=_.activeCoordinate,P=_.activePayload,L=_.activeLabel,U=_.offset,W=(k=O.props.active)!==null&&k!==void 0?k:D;return j.cloneElement(O,{viewBox:H(H({},U),{},{x:U.left,y:U.top}),active:W,label:L,payload:W?P:[],coordinate:G,accessibilityLayer:C})}),ye(w,"renderBrush",function(k){var N=w.props,I=N.margin,C=N.data,O=w.state,_=O.offset,D=O.dataStartIndex,G=O.dataEndIndex,P=O.updateId;return j.cloneElement(k,{key:k.key||"_recharts-brush",onChange:cm(w.handleBrushChange,k.props.onChange),data:C,x:ae(k.props.x)?k.props.x:_.left,y:ae(k.props.y)?k.props.y:_.top+_.height+_.brushBottom-(I.bottom||0),width:ae(k.props.width)?k.props.width:_.width,startIndex:D,endIndex:G,updateId:"brush-".concat(P)})}),ye(w,"renderReferenceElement",function(k,N,I){if(!k)return null;var C=w,O=C.clipPathId,_=w.state,D=_.xAxisMap,G=_.yAxisMap,P=_.offset,L=k.type.defaultProps||{},U=k.props,W=U.xAxisId,B=W===void 0?L.xAxisId:W,$=U.yAxisId,z=$===void 0?L.yAxisId:$;return j.cloneElement(k,{key:k.key||"".concat(N,"-").concat(I),xAxis:D[B],yAxis:G[z],viewBox:{x:P.left,y:P.top,width:P.width,height:P.height},clipPathId:O})}),ye(w,"renderActivePoints",function(k){var N=k.item,I=k.activePoint,C=k.basePoint,O=k.childIndex,_=k.isRange,D=[],G=N.props.key,P=N.item.type.defaultProps!==void 0?H(H({},N.item.type.defaultProps),N.item.props):N.item.props,L=P.activeDot,U=P.dataKey,W=H(H({index:O,dataKey:U,cx:I.x,cy:I.y,r:4,fill:hA(N.item),strokeWidth:2,stroke:"#fff",payload:I.payload,value:I.value},Ve(L,!1)),Mh(L));return D.push(y.renderActiveDot(L,W,"".concat(G,"-activePoint-").concat(O))),C?D.push(y.renderActiveDot(L,H(H({},W),{},{cx:C.x,cy:C.y}),"".concat(G,"-basePoint-").concat(O))):_&&D.push(null),D}),ye(w,"renderGraphicChild",function(k,N,I){var C=w.filterFormatItem(k,N,I);if(!C)return null;var O=w.getTooltipEventType(),_=w.state,D=_.isTooltipActive,G=_.tooltipAxis,P=_.activeTooltipIndex,L=_.activeLabel,U=w.props.children,W=Gn(U,Sr),B=C.props,$=B.points,z=B.isRange,Q=B.baseLine,V=C.item.type.defaultProps!==void 0?H(H({},C.item.type.defaultProps),C.item.props):C.item.props,ne=V.activeDot,Se=V.hide,He=V.activeBar,at=V.activeShape,tn=!!(!Se&&D&&W&&(ne||He||at)),Et={};O!=="axis"&&W&&W.props.trigger==="click"?Et={onClick:cm(w.handleItemMouseEnter,k.props.onClick)}:O!=="axis"&&(Et={onMouseLeave:cm(w.handleItemMouseLeave,k.props.onMouseLeave),onMouseEnter:cm(w.handleItemMouseEnter,k.props.onMouseEnter)});var re=j.cloneElement(k,H(H({},C.props),Et));function ve(yi){return typeof G.dataKey=="function"?G.dataKey(yi.payload):null}if(tn)if(P>=0){var fe,Y;if(G.dataKey&&!G.allowDuplicatedCategory){var E=typeof G.dataKey=="function"?ve:"payload.".concat(G.dataKey.toString());fe=hb($,E,L),Y=z&&Q&&hb(Q,E,L)}else fe=$==null?void 0:$[P],Y=z&&Q&&Q[P];if(at||He){var ee=k.props.activeIndex!==void 0?k.props.activeIndex:P;return[j.cloneElement(k,H(H(H({},C.props),Et),{},{activeIndex:ee})),null,null]}if(!Ke(fe))return[re].concat(Zl(w.renderActivePoints({item:C,activePoint:fe,basePoint:Y,childIndex:P,isRange:z})))}else{var pe,_e=(pe=w.getItemByXY(w.state.activeCoordinate))!==null&&pe!==void 0?pe:{graphicalItem:re},X=_e.graphicalItem,Te=X.item,Lt=Te===void 0?k:Te,wr=X.childIndex,xi=H(H(H({},C.props),Et),{},{activeIndex:wr});return[j.cloneElement(Lt,xi),null,null]}return z?[re,null,null]:[re,null]}),ye(w,"renderCustomized",function(k,N,I){return j.cloneElement(k,H(H({key:"recharts-customized-".concat(I)},w.props),w.state))}),ye(w,"renderMap",{CartesianGrid:{handler:hm,once:!0},ReferenceArea:{handler:w.renderReferenceElement},ReferenceLine:{handler:hm},ReferenceDot:{handler:w.renderReferenceElement},XAxis:{handler:hm},YAxis:{handler:hm},Brush:{handler:w.renderBrush,once:!0},Bar:{handler:w.renderGraphicChild},Line:{handler:w.renderGraphicChild},Area:{handler:w.renderGraphicChild},Radar:{handler:w.renderGraphicChild},RadialBar:{handler:w.renderGraphicChild},Scatter:{handler:w.renderGraphicChild},Pie:{handler:w.renderGraphicChild},Funnel:{handler:w.renderGraphicChild},Tooltip:{handler:w.renderCursor,once:!0},PolarGrid:{handler:w.renderPolarGrid,once:!0},PolarAngleAxis:{handler:w.renderPolarAxis},PolarRadiusAxis:{handler:w.renderPolarAxis},Customized:{handler:w.renderCustomized}}),w.clipPathId="".concat((b=v.id)!==null&&b!==void 0?b:Ng("recharts"),"-clip"),w.throttleTriggeredAfterMouseMove=OL(w.triggeredAfterMouseMove,(A=v.throttleDelay)!==null&&A!==void 0?A:1e3/60),w.state={},w}return f0e(y,g),u0e(y,[{key:"componentDidMount",value:function(){var b,A;this.addListener(),this.accessibilityManager.setDetails({container:this.container,offset:{left:(b=this.props.margin.left)!==null&&b!==void 0?b:0,top:(A=this.props.margin.top)!==null&&A!==void 0?A:0},coordinateList:this.state.tooltipTicks,mouseHandlerCallback:this.triggeredAfterMouseMove,layout:this.props.layout}),this.displayDefaultTooltip()}},{key:"displayDefaultTooltip",value:function(){var b=this.props,A=b.children,w=b.data,k=b.height,N=b.layout,I=Gn(A,Sr);if(I){var C=I.props.defaultIndex;if(!(typeof C!="number"||C<0||C>this.state.tooltipTicks.length-1)){var O=this.state.tooltipTicks[C]&&this.state.tooltipTicks[C].value,_=Mw(this.state,w,C,O),D=this.state.tooltipTicks[C].coordinate,G=(this.state.offset.top+k)/2,P=N==="horizontal",L=P?{x:D,y:G}:{y:D,x:G},U=this.state.formattedGraphicalItems.find(function(B){var $=B.item;return $.type.name==="Scatter"});U&&(L=H(H({},L),U.props.points[C].tooltipPosition),_=U.props.points[C].tooltipPayload);var W={activeTooltipIndex:C,isTooltipActive:!0,activeLabel:O,activePayload:_,activeCoordinate:L};this.setState(W),this.renderCursor(I),this.accessibilityManager.setIndex(C)}}}},{key:"getSnapshotBeforeUpdate",value:function(b,A){if(!this.props.accessibilityLayer)return null;if(this.state.tooltipTicks!==A.tooltipTicks&&this.accessibilityManager.setDetails({coordinateList:this.state.tooltipTicks}),this.props.layout!==b.layout&&this.accessibilityManager.setDetails({layout:this.props.layout}),this.props.margin!==b.margin){var w,k;this.accessibilityManager.setDetails({offset:{left:(w=this.props.margin.left)!==null&&w!==void 0?w:0,top:(k=this.props.margin.top)!==null&&k!==void 0?k:0}})}return null}},{key:"componentDidUpdate",value:function(b){gb([Gn(b.children,Sr)],[Gn(this.props.children,Sr)])||this.displayDefaultTooltip()}},{key:"componentWillUnmount",value:function(){this.removeListener(),this.throttleTriggeredAfterMouseMove.cancel()}},{key:"getTooltipEventType",value:function(){var b=Gn(this.props.children,Sr);if(b&&typeof b.props.shared=="boolean"){var A=b.props.shared?"axis":"item";return l.indexOf(A)>=0?A:s}return s}},{key:"getMouseInfo",value:function(b){if(!this.container)return null;var A=this.container,w=A.getBoundingClientRect(),k=dde(w),N={chartX:Math.round(b.pageX-k.left),chartY:Math.round(b.pageY-k.top)},I=w.width/A.offsetWidth||1,C=this.inRange(N.chartX,N.chartY,I);if(!C)return null;var O=this.state,_=O.xAxisMap,D=O.yAxisMap,G=this.getTooltipEventType();if(G!=="axis"&&_&&D){var P=ko(_).scale,L=ko(D).scale,U=P&&P.invert?P.invert(N.chartX):null,W=L&&L.invert?L.invert(N.chartY):null;return H(H({},N),{},{xValue:U,yValue:W})}var B=GS(this.state,this.props.data,this.props.layout,C);return B?H(H({},N),B):null}},{key:"inRange",value:function(b,A){var w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,k=this.props.layout,N=b/w,I=A/w;if(k==="horizontal"||k==="vertical"){var C=this.state.offset,O=N>=C.left&&N<=C.left+C.width&&I>=C.top&&I<=C.top+C.height;return O?{x:N,y:I}:null}var _=this.state,D=_.angleAxisMap,G=_.radiusAxisMap;if(D&&G){var P=ko(D);return C4({x:N,y:I},P)}return null}},{key:"parseEventsOfWrapper",value:function(){var b=this.props.children,A=this.getTooltipEventType(),w=Gn(b,Sr),k={};w&&A==="axis"&&(w.props.trigger==="click"?k={onClick:this.handleClick}:k={onMouseEnter:this.handleMouseEnter,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,onTouchMove:this.handleTouchMove,onTouchStart:this.handleTouchStart,onTouchEnd:this.handleTouchEnd});var N=Mh(this.props,this.handleOuterEvent);return H(H({},N),k)}},{key:"addListener",value:function(){Sy.on(Cy,this.handleReceiveSyncEvent)}},{key:"removeListener",value:function(){Sy.removeListener(Cy,this.handleReceiveSyncEvent)}},{key:"filterFormatItem",value:function(b,A,w){for(var k=this.state.formattedGraphicalItems,N=0,I=k.length;N<I;N++){var C=k[N];if(C.item===b||C.props.key===b.key||A===Bi(C.item.type)&&w===C.childIndex)return C}return null}},{key:"renderClipPath",value:function(){var b=this.clipPathId,A=this.state.offset,w=A.left,k=A.top,N=A.height,I=A.width;return F.createElement("defs",null,F.createElement("clipPath",{id:b},F.createElement("rect",{x:w,y:k,height:N,width:I})))}},{key:"getXScales",value:function(){var b=this.state.xAxisMap;return b?Object.entries(b).reduce(function(A,w){var k=$S(w,2),N=k[0],I=k[1];return H(H({},A),{},ye({},N,I.scale))},{}):null}},{key:"getYScales",value:function(){var b=this.state.yAxisMap;return b?Object.entries(b).reduce(function(A,w){var k=$S(w,2),N=k[0],I=k[1];return H(H({},A),{},ye({},N,I.scale))},{}):null}},{key:"getXScaleByAxisId",value:function(b){var A;return(A=this.state.xAxisMap)===null||A===void 0||(A=A[b])===null||A===void 0?void 0:A.scale}},{key:"getYScaleByAxisId",value:function(b){var A;return(A=this.state.yAxisMap)===null||A===void 0||(A=A[b])===null||A===void 0?void 0:A.scale}},{key:"getItemByXY",value:function(b){var A=this.state,w=A.formattedGraphicalItems,k=A.activeItem;if(w&&w.length)for(var N=0,I=w.length;N<I;N++){var C=w[N],O=C.props,_=C.item,D=_.type.defaultProps!==void 0?H(H({},_.type.defaultProps),_.props):_.props,G=Bi(_.type);if(G==="Bar"){var P=(O.data||[]).find(function(B){return Rxe(b,B)});if(P)return{graphicalItem:C,payload:P}}else if(G==="RadialBar"){var L=(O.data||[]).find(function(B){return C4(b,B)});if(L)return{graphicalItem:C,payload:L}}else if(zg(C,k)||Wg(C,k)||Lu(C,k)){var U=Bye({graphicalItem:C,activeTooltipItem:k,itemData:D.data}),W=D.activeIndex===void 0?U:D.activeIndex;return{graphicalItem:H(H({},C),{},{childIndex:W}),payload:Lu(C,k)?D.data[U]:C.props.data[U]}}}return null}},{key:"render",value:function(){var b=this;if(!vN(this))return null;var A=this.props,w=A.children,k=A.className,N=A.width,I=A.height,C=A.style,O=A.compact,_=A.title,D=A.desc,G=US(A,i0e),P=Ve(G,!1);if(O)return F.createElement(SS,{state:this.state,width:this.props.width,height:this.props.height,clipPathId:this.clipPathId},F.createElement(yb,Uo({},P,{width:N,height:I,title:_,desc:D}),this.renderClipPath(),wN(w,this.renderMap)));if(this.props.accessibilityLayer){var L,U;P.tabIndex=(L=this.props.tabIndex)!==null&&L!==void 0?L:0,P.role=(U=this.props.role)!==null&&U!==void 0?U:"application",P.onKeyDown=function(B){b.accessibilityManager.keyboardEvent(B)},P.onFocus=function(){b.accessibilityManager.focus()}}var W=this.parseEventsOfWrapper();return F.createElement(SS,{state:this.state,width:this.props.width,height:this.props.height,clipPathId:this.clipPathId},F.createElement("div",Uo({className:Ge("recharts-wrapper",k),style:H({position:"relative",cursor:"default",width:N,height:I},C)},W,{ref:function($){b.container=$}}),F.createElement(yb,Uo({},P,{width:N,height:I,title:_,desc:D,style:w0e}),this.renderClipPath(),wN(w,this.renderMap)),this.renderLegend(),this.renderTooltip()))}}])}(j.Component);ye(x,"displayName",n),ye(x,"defaultProps",H({layout:"horizontal",stackOffset:"none",barCategoryGap:"10%",barGap:4,margin:{top:5,right:5,bottom:5,left:5},reverseStackOrder:!1,syncMethod:"index"},p)),ye(x,"getDerivedStateFromProps",function(g,y){var v=g.dataKey,b=g.data,A=g.children,w=g.width,k=g.height,N=g.layout,I=g.stackOffset,C=g.margin,O=y.dataStartIndex,_=y.dataEndIndex;if(y.updateId===void 0){var D=HS(g);return H(H(H({},D),{},{updateId:0},f(H(H({props:g},D),{},{updateId:0}),y)),{},{prevDataKey:v,prevData:b,prevWidth:w,prevHeight:k,prevLayout:N,prevStackOffset:I,prevMargin:C,prevChildren:A})}if(v!==y.prevDataKey||b!==y.prevData||w!==y.prevWidth||k!==y.prevHeight||N!==y.prevLayout||I!==y.prevStackOffset||!nl(C,y.prevMargin)){var G=HS(g),P={chartX:y.chartX,chartY:y.chartY,isTooltipActive:y.isTooltipActive},L=H(H({},GS(y,b,N)),{},{updateId:y.updateId+1}),U=H(H(H({},G),P),L);return H(H(H({},U),f(H({props:g},U),y)),{},{prevDataKey:v,prevData:b,prevWidth:w,prevHeight:k,prevLayout:N,prevStackOffset:I,prevMargin:C,prevChildren:A})}if(!gb(A,y.prevChildren)){var W,B,$,z,Q=Gn(A,Gl),V=Q&&(W=(B=Q.props)===null||B===void 0?void 0:B.startIndex)!==null&&W!==void 0?W:O,ne=Q&&($=(z=Q.props)===null||z===void 0?void 0:z.endIndex)!==null&&$!==void 0?$:_,Se=V!==O||ne!==_,He=!Ke(b),at=He&&!Se?y.updateId:y.updateId+1;return H(H({updateId:at},f(H(H({props:g},y),{},{updateId:at,dataStartIndex:V,dataEndIndex:ne}),y)),{},{prevChildren:A,dataStartIndex:V,dataEndIndex:ne})}return null}),ye(x,"renderActiveDot",function(g,y,v){var b;return j.isValidElement(g)?b=j.cloneElement(g,y):Be(g)?b=g(y):b=F.createElement(tF,y),F.createElement(Qt,{className:"recharts-active-dot",key:v},b)});var h=j.forwardRef(function(y,v){return F.createElement(x,Uo({},y,{ref:v}))});return h.displayName=x.displayName,h},zF=P0e({chartName:"BarChart",GraphicalChild:rs,defaultTooltipEventType:"axis",validateTooltipEventTypes:["axis","item"],axisComponents:[{axisType:"xAxis",AxisComp:gp},{axisType:"yAxis",AxisComp:xp}],formatAxisMap:pbe});const Rw="v1.0",WF="June 2026",WS="AI Exposure Baseline v0.1",VF=[{id:"AI Winner",tagline:"High opportunity, high readiness, low disruption.",description:"AI creates material value and the company has the infrastructure and execution capability to capture it. Low disruption threat from external AI-native competitors. PE priority: accelerate AI adoption during ownership.",color:"#22c55e",bg:"bg-emerald-900/20",border:"border-emerald-600/30"},{id:"AI Transformer",tagline:"High execution capability, strong AI upside.",description:"Management team and operational model are capable of driving AI-enabled transformation. Strong opportunity signal with proven execution track record. Not yet at Winner threshold — often mid-transformation. PE priority: fund and accelerate the transformation roadmap.",color:"#3b82f6",bg:"bg-blue-900/20",border:"border-blue-600/30"},{id:"AI Defensible",tagline:"Structural moat protects against AI displacement.",description:"Proprietary data, regulatory barriers, certified processes, or deep switching costs create durable protection against AI-native disruptors. May underutilise AI opportunity — not a near-term threat. PE priority: monitor moat durability and assess opportunistic AI leverage.",color:"#a85
5625f7",bg:"bg-purple-900/20",border:"border-purple-600/30"},{id:"AI Exposed",tagline:"Disruption risk is the primary dynamic.",description:"AI-native competitors could plausibly attack the core business model or compress margins materially within the investment horizon. May still hold meaningful opportunity — exposure is asymmetric. PE priority: diligence the disruption vector before entry; build AI countermeasures into the 100-day plan.",color:"#f97316",bg:"bg-orange-900/20",border:"border-orange-600/30"},{id:"AI Turnaround Candidate",tagline:"High opportunity gap — execution is the unlock.",description:"AI opportunity is real and material, but current readiness or execution capability significantly lags. The gap between potential and delivery is the investment thesis. PE priority: assess whether the transformation gap is closeable under PE ownership and within the hold period.",color:"#f59e0b",bg:"bg-amber-900/20",border:"border-amber-600/30"},{id:"AI Legacy",tagline:"Low AI leverage, moderate or high structural risk.",description:"Limited AI opportunity signal and insufficient readiness or execution to capture even incremental value. Often asset-heavy, regulated, or structurally constrained. PE priority: AI is not a value creation lever in the near term — focus on operational efficiency and defensive positioning.",color:"#6b7280",bg:"bg-white/5",border:"border-white/10"}],fm=Object.fromEntries(VF.map(e=>[e.id,e])),KF={S:"#D4A843",A:"#22c55e",B:"#3b82f6",C:"#f59e0b",D:"#ef4444"};function YF(e){return e==null?"—":e>=75?"S":e>=65?"A":e>=55?"B":e>=45?"C":"D"}function T0e(e){if(!e||typeof e!="object")return!1;const t=e,n=t.datasetStats;return!n||typeof n!="object"?!1:["totalRecords","corePeIntelligence","scored","claudeV3","validated","indexEligible"].every(s=>typeof n[s]=="number")&&typeof t.frameworkVersion=="string"&&typeof t.baselineName=="string"&&typeof t.generatedAt=="string"&&Array.isArray(t.universeBreakdown)&&Array.isArray(t.sectorRankings)&&Array.isArray(t.topPeOpportunities)&&Array.isArray(t.topAiWinners)&&Array.isArray(t.topAiExposed)&&Array.isArray(t.topTurnaround)&&Array.isArray(t.topDisruptionRisks)&&Array.isArray(t.archetypeDistribution)&&Array.isArray(t.arcByUniverse)&&Array.isArray(t.earlyFindings)}function D0e(e,t){return e instanceof rc&&(e.status===401||e.status===403)?"You do not have permission to view this report.":t?"The report is unavailable because the server returned incomplete data.":"Failed to load report data."}function _i({value:e,color:t="#D4A843",w:n="w-14"}){return e==null?r.jsx("span",{className:"text-white/35 text-xs",children:"—"}):r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:`${n} h-1.5 bg-white/10 rounded-full overflow-hidden`,children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.min(100,e)}%`,backgroundColor:t}})}),r.jsx("span",{className:"text-xs tabular-nums text-white/65",children:e})]})}function vo({label:e,value:t,sub:n,accent:i,note:a}){return r.jsxs("div",{className:`bg-[#141414] border rounded-xl px-5 py-4 ${i?"border-[#D4A843]/40":"border-white/10"}`,children:[r.jsx("div",{className:`text-[10px] uppercase tracking-widest mb-1 ${i?"text-[#D4A843]":"text-white/50"}`,children:e}),r.jsx("div",{className:"text-2xl font-semibold text-white tabular-nums",children:t}),n&&r.jsx("div",{className:"text-xs text-white/50 mt-0.5",children:n}),a&&r.jsx("div",{className:"text-[10px] text-white/35 mt-1",children:a})]})}function Dr({number:e,title:t,sub:n}){return r.jsxs("div",{className:"flex items-baseline gap-3 mb-4",children:[r.jsx("span",{className:"text-[10px] font-mono text-[#D4A843]/50 w-6 shrink-0",children:e}),r.jsxs("div",{children:[r.jsx("h2",{className:"text-sm font-semibold text-white tracking-tight",children:t}),n&&r.jsx("p",{className:"text-xs text-white/50 mt-0.5",children:n})]})]})}const O0e={"Tier 1":"bg-[#D4A843]/15 text-[#D4A843] border-[#D4A843]/30","Tier 2":"bg-blue-900/20 text-blue-300 border-blue-600/30","Tier 3":"bg-white/8 text-white/60 border-white/15",Unassigned:"bg-white/5 text-white/35 border-white/8"},M0e={"AI Winner":"bg-emerald-900/20 text-emerald-400 border border-emerald-600/25","AI Exposed":"bg-orange-900/20 text-orange-400 border border-orange-600/25","AI Disrupted":"bg-red-900/20 text-red-400 border border-red-600/25","AI Neutral":"bg-white/8 text-white/50 border border-white/15",Unclassified:"bg-white/5 text-white/50 border border-white/8"};function R0e(){const e=[{name:"PE AI Attractiveness",formula:"Opp×0.25 + Ready×0.15 + Exec×0.15 + Moat×0.20 + DataAdv×0.10 + (100−Dis)×0.10 + (100−Threat)×0.05",note:"Primary deal-ranking metric. Fallbacks: Moat=50, DataAdv=Moat×0.8, Threat=30 when enhanced fields unavailable."},{name:"AI Exposure Risk",formula:"Risk×0.45 + Dis×0.40 + (100−Ready)×0.15",note:"Disruption pressure composite. Higher = more acute near-term threat."},{name:"AI Value Creation",formula:"Opp×0.45 + Exec×0.30 + DataAdv×0.25 (or Opp×0.60 + Exec×0.40 fallback)",note:"Upside potential composite. Preferred when DataAdv available (Claude v3 cohort)."}];return r.jsxs("section",{children:[r.jsx(Dr,{number:"01",title:"Methodology",sub:`Framework ${Rw} · ${WF} · Formulas frozen — do not modify in future releases`}),r.jsx("div",{className:"grid md:grid-cols-3 gap-3 mb-4",children:e.map(t=>r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-2",children:t.name}),r.jsx("div",{className:"font-mono text-[11px] text-white/80 leading-relaxed bg-black/30 rounded px-3 py-2 mb-2",children:t.formula}),r.jsx("p",{className:"text-[10px] text-white/50 leading-relaxed",children:t.note})]},t.name))}),r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/50 mb-3",children:"Classification Logic"}),r.jsxs("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-2 text-[10px] text-white/50",children:[r.jsxs("div",{children:[r.jsx("span",{className:"text-emerald-400 font-medium",children:"AI Winner"})," — High opp + readiness, low disruption, overall ≥60"]}),r.jsxs("div",{children:[r.jsx("span",{className:"text-blue-400 font-medium",children:"AI Exposed"})," — High disruption or AI-native threat"]}),r.jsxs("div",{children:[r.jsx("span",{className:"text-red-400 font-medium",children:"AI Disrupted"})," — High disruption, low opportunity/readiness"]}),r.jsxs("div",{children:[r.jsx("span",{className:"text-white/40 font-medium",children:"AI Neutral"})," — Moderate across all dimensions"]})]}),r.jsx("div",{className:"mt-3 pt-3 border-t border-white/5 text-[10px] text-white/35",children:"Reference Records — 10 named benchmark companies validated by anal
562yst. Scores never modified. Calibration anchor for all cohort comparisons."})]})]})}function L0e({stats:e}){return r.jsxs("section",{children:[r.jsx(Dr,{number:"02",title:"Dataset Coverage",sub:"AI Exposure Baseline v0.1 — Core PE Intelligence scope"}),r.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-3",children:[r.jsx(vo,{label:"Total Records",value:e.totalRecords.toLocaleString(),sub:"All sources"}),r.jsx(vo,{label:"Core PE Intel.",value:e.corePeIntelligence,sub:"Primary scope",accent:!0}),r.jsx(vo,{label:"Scored",value:e.scored,sub:`${Math.round(e.scored/Math.max(e.corePeIntelligence,1)*100)}% of core`}),r.jsx(vo,{label:"Claude v3",value:e.claudeV3,sub:"Enhanced scoring",note:"Moat + DataAdv + Threat"}),r.jsx(vo,{label:"Validated",value:e.validated,sub:"Reference anchors",accent:!0}),r.jsx(vo,{label:"Index Eligible",value:e.indexEligible,sub:"PE index scope"})]})]})}function F0e({data:e}){const t=e.slice(0,8).map(n=>({name:n.universe.length>22?n.universe.slice(0,22)+"…":n.universe,pe:n.avgPe??0,count:n.count}));return r.jsxs("section",{children:[r.jsx(Dr,{number:"03",title:"Universe Breakdown",sub:"Scored companies by company universe — avg PE AI Attractiveness"}),r.jsxs("div",{className:"grid lg:grid-cols-5 gap-4",children:[r.jsx("div",{className:"lg:col-span-2 bg-[#141414] border border-white/10 rounded-xl p-4",children:r.jsx(ML,{width:"100%",height:220,children:r.jsxs(zF,{data:t,layout:"vertical",margin:{left:0,right:40,top:4,bottom:4},children:[r.jsx(gp,{type:"number",domain:[0,100],hide:!0}),r.jsx(xp,{type:"category",dataKey:"name",width:130,tick:{fill:"#ffffff60",fontSize:10}}),r.jsx(Sr,{cursor:{fill:"rgba(255,255,255,0.03)"},contentStyle:{background:"#141414",border:"1px solid rgba(255,255,255,0.1)",borderRadius:8,fontSize:11},formatter:n=>[`PE Score ${n}`,""]}),r.jsxs(rs,{dataKey:"pe",radius:3,maxBarSize:18,children:[t.map((n,i)=>r.jsx(Dg,{fill:i===0?"#D4A843":"#ffffff18"},i)),r.jsx(Ui,{dataKey:"pe",position:"right",style:{fill:"#ffffff50",fontSize:10}})]})]})})}),r.jsx("div",{className:"lg:col-span-3 bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:r.jsxs("table",{className:"w-full text-xs",children:[r.jsx("thead",{children:r.jsx("tr",{className:"border-b border-white/10",children:["Universe","#","Avg PE","Avg Opp","Avg Dis","Validated"].map(n=>r.jsx("th",{className:"text-left px-3 py-2.5 text-[10px] uppercase tracking-widest text-white/50 font-medium",children:n},n))})}),r.jsx("tbody",{children:e.map(n=>{const i=YF(n.avgPe),a=KF[i]??"#6b7280";return r.jsxs("tr",{className:"border-b border-white/5 hover:bg-white/[0.02]",children:[r.jsx("td",{className:"px-3 py-2.5 font-medium text-white/75",children:n.universe}),r.jsx("td",{className:"px-3 py-2.5 text-white/40",children:n.count}),r.jsx("td",{className:"px-3 py-2.5",children:n.avgPe!=null?r.jsx("span",{className:"font-semibold tabular-nums",style:{color:a},children:n.avgPe}):r.jsx("span",{className:"text-white/35",children:"—"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(_i,{value:n.avgOpportunity,color:"#22c55e"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(_i,{value:n.avgDisruption,color:"#f97316"})}),r.jsx("td",{className:"px-3 py-2.5 text-white/40",children:n.validated||"—"})]},n.universe)})})]})})]})]})}function B0e({data:e}){const[t,n]=j.useState("avgPe"),[i,a]=j.useState("desc"),s=j.useMemo(()=>[...e].sort((l,c)=>{const d=l[t]??-1,u=c[t]??-1;return i==="desc"?u-d:d-u}),[e,t,i]),o=({col:l,children:c})=>{const d=t===l;return r.jsxs("th",{onClick:()=>{t===l?a(u=>u==="desc"?"asc":"desc"):(n(l),a("desc"))},className:`text-left px-3 py-2.5 cursor-pointer select-none text-[10px] uppercase tracking-widest font-medium transition-colors ${d?"text-[#D4A843]":"text-white/50 hover:text-white/55"}`,children:[c,d?i==="desc"?" ↓":" ↑":""]})};return r.jsxs("section",{children:[r.jsx(Dr,{number:"04",title:"Sector Rankings",sub:`${s.length} sectors · sorted by PE AI Attractiveness by default`}),r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full text-xs",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-white/10",children:[r.jsx("th",{className:"text-left px-3 py-2.5 text-[10px] uppercase tracking-widest text-white/50 font-medium",children:"Sector"}),r.jsx("th",{className:"text-left px-3 py-2.5 text-[10px] uppercase tracking-widest text-white/50 font-medium",children:"Tier"}),r.jsx(o,{col:"count",children:"#"}),r.jsx(o,{col:"avgPe",children:"PE Score"}),r.jsx(o,{col:"avgOpportunity",children:"Opp"}),r.jsx(o,{col:"avgRisk",children:"Risk"}),r.jsx(o,{col:"avgReadiness",children:"Ready"}),r.jsx(o,{col:"avgExecution",children:"Exec"}),r.jsx(o,{col:"avgDisruption",children:"Dis"}),r.jsx(o,{col:"avgOverall",children:"Overall"})]})}),r.jsx("tbody",{children:s.map(l=>{const c=l.avgOverall!=null?l.avgOverall>=70?"A":l.avgOverall>=55?"B":l.avgOverall>=40?"C":"D":"—";return r.jsxs("tr",{className:"border-b border-white/5 hover:bg-white/[0.02]",children:[r.jsx("td",{className:"px-3 py-2.5 font-medium text-white/80",children:l.sector}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx("span",{className:`text-[11px] px-2 py-0.5 rounded-full border font-medium ${O0e[l.prioritySector]??""}`,children:l.prioritySector})}),r.jsx("td",{className:"px-3 py-2.5 text-white/40 tabular-nums",children:l.count}),r.jsx("td",{className:"px-3 py-2.5",children:l.avgPe!=null?r.jsx("span",{className:"font-semibold tabular-nums text-[#D4A843]",children:l.avgPe}):r.jsx("span",{className:"text-white/35",children:"—"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(_i,{value:l.avgOpportunity,color:"#22c55e"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(_i,{value:l.avgRisk,color:"#ef4444"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(_i,{value:l.avgReadiness,color:"#3b82f6"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(_i,{value:l.avgExecution,color:"#a85
5625f7"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(_i,{value:l.avgDisruption,color:"#f97316"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx(_i,{value:l.avgOverall,color:"#D4A843",w:"w-12"}),r.jsx("span",{className:`text-[10px] font-bold ${c==="A"?"text-emerald-400":c==="B"?"text-blue-400":c==="C"?"text-yellow-400":"text-red-400"}`,children:c})]})})]},l.sector)})})]})})})]})}function Yc({records:e,rankBy:t,rankLabel:n,rankColor:i,showGap:a=!1}){const[s,o]=j.useState(null);return r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:[r.jsxs("div",{className:"grid border-b border-white/10 px-4 py-2 text-[11px] uppercase tracking-widest text-white/40",style:{gridTemplateColumns:"24px 1fr 80px 80px 110px 90px"},children:[r.jsx("div",{children:"#"}),r.jsx("div",{children:"Company"}),r.jsx("div",{children:n}),r.jsx("div",{children:"Exp. Risk"}),r.jsx("div",{children:"Classification"}),r.jsx("div",{children:"Source"})]}),r.jsx("div",{className:"divide-y divide-white/5",children:e.map((l,c)=>{const d=t==="expRisk"?l.expRisk:l[t],u=YF(l.peScore),p=KF[u]??"#6b7280",m=(l.aiOpportunityScore??0)-(l.aiReadinessScore??0),f=s===l.id;return r.jsxs("div",{children:[r.jsxs("div",{className:"grid items-center px-4 py-3 cursor-pointer hover:bg-white/[0.02] transition-colors",style:{gridTemplateColumns:"24px 1fr 80px 80px 110px 90px"},onClick:()=>o(f?null:l.id),children:[r.jsx("div",{className:"text-xs text-white/35 font-mono",children:c+1}),r.jsxs("div",{className:"min-w-0 pr-2",children:[r.jsx("div",{className:"text-xs font-medium text-white/85 truncate",children:l.companyName}),r.jsx("div",{className:"text-[10px] text-white/50 truncate",children:l.sectorNormalized??"—"})]}),r.jsxs("div",{children:[t==="peScore"?r.jsxs("div",{className:"flex items-center gap-1",children:[r.jsx("span",{className:"text-sm font-semibold tabular-nums",style:{color:p},children:l.peScore??"—"}),r.jsx("span",{className:"text-[11px] font-medium px-1 rounded",style:{color:p,background:p+"18",border:`1px solid ${p}30`},children:u})]}):t==="expRisk"?r.jsx("span",{className:"text-sm font-semibold tabular-nums text-red-400",children:l.expRisk}):r.jsx("span",{className:"text-sm font-semibold tabular-nums",style:{color:i},children:d??"—"}),a&&r.jsxs("div",{className:"text-[11px] text-amber-400/70",children:["Gap +",m]})]}),r.jsx("div",{children:r.jsx(_i,{value:l.expRisk,color:"#ef4444"})}),r.jsx("div",{children:r.jsx("span",{className:`text-[10px] px-2 py-0.5 rounded font-medium ${M0e[l.aiClassification??""]??"bg-white/5 text-white/50 border border-white/8"}`,children:l.aiClassification??"—"})}),r.jsx("div",{className:"text-[10px] font-mono text-white/50",children:l.generationMethod==="anthropic"?"Claude v3":l.generationMethod??"—"})]}),f&&r.jsxs("div",{className:"px-4 pb-4 pt-2 bg-[#0d0d0d] border-t border-white/5 text-xs",children:[r.jsxs("div",{className:"flex flex-wrap gap-x-5 gap-y-1 text-[10px] text-white/50 mb-3",children:[r.jsxs("span",{children:["PE ",r.jsx("strong",{className:"text-[#D4A843]",children:l.peScore??"—"})]}),r.jsxs("span",{children:["Opp ",r.jsx("strong",{className:"text-white/55",children:l.aiOpportunityScore??"—"})]}),r.jsxs("span",{children:["Ready ",r.jsx("strong",{className:"text-white/55",children:l.aiReadinessScore??"—"})]}),r.jsxs("span",{children:["Exec ",r.jsx("strong",{className:"text-white/55",children:l.aiExecutionScore??"—"})]}),r.jsxs("span",{children:["Dis ",r.jsx("strong",{className:"text-white/55",children:l.aiDisruptionScore??"—"})]}),r.jsxs("span",{children:["Moat ",r.jsx("strong",{className:"text-white/55",children:l.moatDefensibilityScore??"—"})]}),r.jsxs("span",{children:["DataAdv ",r.jsx("strong",{className:"text-white/55",children:l.dataAdvantageScore??"—"})]}),r.jsxs("span",{children:["Threat ",r.jsx("strong",{className:"text-white/55",children:l.aiNativeThreatLevel??"—"})]}),l.archetype&&r.jsxs("span",{children:["Archetype ",r.jsx("strong",{className:"text-[#D4A843]/80",children:l.archetype})]})]}),l.keyAiOpportunity&&r.jsxs("p",{className:"text-white/50 mb-1.5",children:[r.jsx("span",{className:"text-emerald-400/60",children:"↑ Opp:"})," ",l.keyAiOpportunity]}),l.keyAiRisk&&r.jsxs("p",{className:"text-white/50 mb-1.5",children:[r.jsx("span",{className:"text-red-400/60",children:"↓ Risk:"})," ",l.keyAiRisk]}),l.aiThesis&&r.jsx("p",{className:"text-white/50 text-[10px] leading-relaxed italic",children:l.aiThesis})]})]},l.id)})})]})}function $0e({distribution:e,arcByUniverse:t}){var o;const[n,i]=j.useState(null),a=e.map(l=>{var c;return{name:l.archetype.replace("AI ","").replace(" Candidate",""),count:l.count,pct:l.pct,color:((c=fm[l.archetype])==null?void 0:c.color)??"#6b7280"}}),s=n?e.find(l=>l.archetype===n):null;return r.jsxs("section",{children:[r.jsx(Dr,{number:"11",title:"AI Archetypes",sub:"Framework v1.0 — 6 archetypes, frozen assignment logic. Click a card to inspect sector distribution."}),r.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-3 gap-3 mb-6",children:VF.map(l=>
562{const c=e.find(u=>u.archetype===l.id),d=n===l.id;return r.jsxs("button",{onClick:()=>i(d?null:l.id),className:`text-left p-4 rounded-xl border transition-all ${l.bg} ${d?l.border+" border-2":"border-white/8 hover:"+l.border}`,children:[r.jsxs("div",{className:"flex items-start justify-between mb-2",children:[r.jsx("div",{className:"text-xs font-semibold",style:{color:l.color},children:l.id}),c&&r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"text-lg font-bold tabular-nums text-white",children:c.count}),r.jsxs("span",{className:"text-[10px] text-white/50",children:[c.pct,"%"]})]})]}),r.jsx("p",{className:"text-[10px] font-medium text-white/60 mb-1",children:l.tagline}),r.jsx("p",{className:"text-[10px] text-white/50 leading-relaxed line-clamp-3",children:l.description}),(c==null?void 0:c.avgPe)!=null&&r.jsxs("div",{className:"mt-2 pt-2 border-t border-white/8 text-[10px] text-white/50",children:["Avg PE Score ",r.jsx("strong",{style:{color:l.color},children:c.avgPe})]})]},l.id)})}),r.jsxs("div",{className:"grid lg:grid-cols-5 gap-4",children:[r.jsxs("div",{className:"lg:col-span-2 bg-[#141414] border border-white/10 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/50 mb-3",children:"Distribution"}),r.jsx(ML,{width:"100%",height:200,children:r.jsxs(zF,{data:a,margin:{left:0,right:32,top:4,bottom:4},children:[r.jsx(gp,{dataKey:"name",tick:{fill:"#ffffff40",fontSize:9}}),r.jsx(xp,{hide:!0}),r.jsx(Sr,{cursor:{fill:"rgba(255,255,255,0.03)"},contentStyle:{background:"#141414",border:"1px solid rgba(255,255,255,0.1)",borderRadius:8,fontSize:11},formatter:(l,c,d)=>[`${l} companies (${d.payload.pct}%)`,d.payload.name]}),r.jsxs(rs,{dataKey:"count",radius:4,maxBarSize:40,children:[a.map((l,c)=>r.jsx(Dg,{fill:l.color},c)),r.jsx(Ui,{dataKey:"count",position:"top",style:{fill:"#ffffff50",fontSize:10}})]})]})})]}),r.jsx("div",{className:"lg:col-span-3 bg-[#141414] border border-white/10 rounded-xl p-4",children:s?r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("div",{className:"text-xs font-semibold",style:{color:(o=fm[s.archetype])==null?void 0:o.color},children:s.archetype}),r.jsxs("span",{className:"text-[10px] text-white/50",children:[s.count," companies · ",s.pct,"% of scored"]})]}),r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/40 mb-2",children:"Sector Breakdown"}),r.jsxs("div",{className:"space-y-2",children:[s.bySector.map(l=>{var c;return r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("span",{className:"text-xs text-white/55 w-36 shrink-0 truncate",children:l.sector}),r.jsx("div",{className:"flex-1 h-1.5 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.round(l.count/s.count*100)}%`,backgroundColor:((c=fm[s.archetype])==null?void 0:c.color)??"#D4A843"}})}),r.jsx("span",{className:"text-xs tabular-nums text-white/40 w-6 text-right",children:l.count})]},l.sector)}),s.bySector.length===0&&r.jsx("p",{className:"text-xs text-white/40",children:"No sector data available."})]})]}):r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/40 mb-3",children:"By Universe"}),r.jsx("div",{className:"space-y-2 overflow-auto max-h-48",children:t.filter(l=>l.total>0).map(l=>{const c=["AI Winner","AI Transformer","AI Defensible","AI Exposed","AI Turnaround Candidate","AI Legacy"];return r.jsxs("div",{className:"flex items-center gap-2 text-[10px]",children:[r.jsx("span",{className:"text-white/40 w-40 shrink-0 truncate",children:l.universe}),r.jsx("div",{className:"flex-1 flex h-3 rounded overflow-hidden gap-px",children:c.map(d=>{var m;const u=l.archetypes[d]??0;if(!u)return null;const p=Math.round(u/l.total*100);return r.jsx("div",{className:"h-full",title:`${d}: ${u}`,style:{width:`${p}%`,backgroundColor:((m=fm[d])==null?void 0:m.color)??"#6b7280",minWidth:2,opacity:.75}},d)})}),r.jsx("span",{className:"text-white/40 w-8 text-right tabular-nums",children:l.total})]},l.universe)})}),r.jsx("p",{className:"text-[10px] text-white/35 mt-3",children:"Click an archetype card above to see sector breakdown."})]})})]})]})}function U0e({findings:e}){return r.jsxs("section",{children:[r.jsx(Dr,{number:"10",title:"Early Findings",sub:"Derived from v0.1 scored cohort — analyst review recommended before distribution"}),r.jsx("div",{className:"bg-[#141414] border border-[#D4A843]/20 rounded-xl p-5 space-y-3",children:e.map((t,n)=>r.jsxs("div",{className:"flex gap-3",children:[r.jsx("div",{className:"shrink-0 mt-1.5 w-1.5 h-1.5 rounded-full bg-[#D4A843]"}),r.jsx("p",{className:"text-sm text-white/70 leading-relaxed",children:t})]},n))})]})}function q0e(){var l;const e=Ln(),{data:t,isLoading:n,error:i}=We({queryKey:["/api/admin/ai-exposure-baseline/v1-report"],queryFn:Ti({on401:"throw"}),staleTime:3e4}),a=sn({mutationFn:()=>Mt("POST","/api/admin/ai-exposure-seed/assign-archetypes"),onSuccess:()=>e.invalidateQueries({queryKey:["/api/admin/ai-exposure-baseline/v1-report"]})}),s=t!=null&&t.generatedAt?new Date(t.generatedAt).toLocaleDateString("en-GB",{day:"2-digit",month:"long",year:"numeric"}):"—",o=!T0e(t);return r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A] text-white",children:[r.jsx("div",{className:"border-b border-white/10 bg-[#0A0A0A] sticky top-0 z-20",children:r.jsxs("div",{className:"max-w-screen-xl mx-auto px-6 py-4 flex items-start justify-between gap-4 flex-wrap",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-2 mb-0.5",children:[r.jsx("span",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]",children:"Internal · Not for Distribution"}),r.jsxs("span",{className:"text-[10px] font-mono bg-[#D4A843]/10 text-[#D4A843] border border-[#D4A843]/25 px-2 py-0.5 rounded",children:["Framework ",Rw]})]}),r.jsx("h1",{className:"text-lg font-semibold tracking-tight",children:WS}),r.jsxs("p",{className:"text-xs text-white/50 mt-0.5",children:["Generated ",s," · ",(t==null?void 0:t.datasetStats.scored)??"—"," scored · ",(t==null?void 0:t.datasetStats.claudeV3)??"—"," Claude v3 · ",(t==null?void 0:t.datasetStats.validated)??"—"," validated"]})]}),r.jsxs("div",{className:"flex items-center gap-2.5 flex-wrap",children:[r.jsx("button",{onClick:()=>a.mutate(),disabled:a.isPending,className:"px-3 py-1.5 border border-[#D4A843]/30 hover:border-[#D4A843]/60 text-[#D4A843]/70 hover:text-[#D4A843] text-xs rounded transition-colors disabled:opacity-40",children:a.isPending?"Assigning…":"↻ Assign Archetypes"}),a.isSuccess&&r.jsxs("span",{className:"text-[10px] text-emerald-400",children:["✓ ",((l=a.data)==null?void 0:l.updated)??0," records updated"]}),r.jsx("div",{className:"w-px h-4 bg-white/10"}),r.jsx("a",{href:"/api/admin/ai-exposure-baseline/csv?indexOnly=true",download:!0,className:"px-3 py-1.5 border border-white/15 hover:border-white/30 text-white/40 hover:text-white/70 text-xs rounded transition-colors",children:"↓ Export CSV"}),r.jsx("button",{onClick:()=>window.print(),className:"px-3 py-1.5 border border-white/15 hover:border-white/30 text-white/40 hover:text-white/70 text-xs rounded transition-colors",children:"⎙ Print"}),r.jsx("a",{href:"/admin/ai-exposure-seed",className:"px-3 py-1.5 text-xs text-white/50 hover:text-white/60 transition-colors",children:"← Database"})]})]})}),n?r.jsx("div",{className:"max-w-screen-xl mx-auto px-6 py-12 space-y-4",children:[...Array(6)].map((c,d)=>r.jsx("div",{className:"bg-[#141414] border border-white/5 rounded-xl h-32 animate-pulse"},d))}):i||o?r.jsxs("div",{className:"max-w-screen-xl mx-auto px-6 py-12 text-center text-white/40 text-sm",children:[r.jsx("p",{children:D0e(i,o)}),r.jsx("a",{href:"/admin/ai-exposure-seed",className:"inline-block mt-2 text-[#D4A843] hover:underline",children:"← Back to Database"})]}):r.jsxs("div",{className:"max-w-screen-xl mx-auto px-6 py-6 space-y-10",children:[r.jsx(R0e,{}),r.jsx("div",{className:"border-t border-white/5"}),r.jsx(L0e,{stats:t.datasetStats}),r.jsx("div",{className:"border-t border-white/5"}),t.universeBreakdown.length>0&&r.jsx(F0e,{data:t.universeBreakdown}),r.jsx("div",{className:"border-t border-white/5"}),t.sectorRankings.length>0&&r.jsx(B0e,{data:t.sectorRankings}),r.jsx("div",{className:"border-t border-white/5"}),r.jsxs("section",{children:[r.jsx(Dr,{number:"05",title:"Top PE Opportunities",sub:"Highest PE AI Attractiveness — primary deal-sourcing signal"}),t.topPeOpportunities.length>0?r.jsx(Yc,{records:t.topPeOpportunities,rankBy:"peScore",rankLabel:"PE Score",rankColor:"#D4A843"}):r.jsx("p",{className:"text-sm text-white/50",children:"No scored records yet."})]}),r.jsx("div",{className:"border-t border-white/5"}),r.jsxs("section",{children:[r.jsx(Dr,{number:"06",title:"Top AI Winners",sub:"High opportunity + readiness, low disruption — value creation assets"}),t.topAiWinners.length>0?r.jsx(Yc,{records:t.topAiWinners,rankBy:"peScore",rankLabel:"PE Score",rankColor:"#22c55e"}):r.jsx("p",{className:"text-sm text-white/50",children:"No AI Winners in scored cohort yet."})]}),r.jsx("div",{className:"border-t border-white/5"}),r.jsxs("section",{children:[r.jsx(Dr,{number:"07",title:"Top AI Exposed",sub:"Highest AI Exposure Risk — disruption is the primary diligence focus"}),t.topAiExposed.length>0?r.jsx(Yc,{records:t.topAiExposed,rankBy:"expRisk",rankLabel:"Exp. Risk",rankColor:"#f97316"}):r.jsx("p",{className:"text-sm text-white/50",children:"No AI Exposed records in cohort."})]}),r.jsx("div",{className:"border-t border-white/5"}),r.jsxs("section",{children:[r.jsx(Dr,{number:"08",title:"Top AI Turnaround Candidates",sub:"Largest opportunity gap vs readiness — PE ownership is the activation mechanism"}),t.topTurnaround.length>0?r.jsx(Yc,{records:t.topTurnaround,rankBy:"peScore",rankLabel:"PE Score",rankColor:"#f59e0b",showGap:!0}):r.jsx("p",{className:"text-sm text-white/50",children:"No turnaround candidates identified."})]}),r.jsx("div",{className:"border-t border-white/5"}),r.jsxs("section",{children:[r.jsx(Dr,{number:"09",title:"Top Disruption Risks",sub:"Highest composite disruption pressure — monitor during hold"}),t.topDisruptionRisks.length>0?r.jsx(Yc,{records:t.topDisruptionRisks,rankBy:"expRisk",rankLabel:"Exp. Risk",rankColor:"#ef4444"}):r.jsx("p",{className:"text-sm text-white/50",children:"No disruption risk data available."})]}),r.jsx("div",{className:"border-t border-white/5"}),t.earlyFindings.length>0&&r.jsx(U0e,{findings:t.earlyFindings}),r.jsx("div",{className:"border-t border-white/5"}),r.jsx($0e,{distribution:t.archetypeDistribution,arcByUniverse:t.arcByUniverse}),r.jsxs("div",{className:"text-center text-xs text-white/35 pb-6 pt-2",children:[WS," · Framework ",Rw," · ",WF," · Internal use only · Not investment advice",r.jsx("br",{}),r.jsx("span",{className:"text-[10px] text-white/10",children:"Formulas frozen — do not modify without analyst approval"})]})]})]})}function G0e(e){if(!e||typeof e!="object")return!1;const t=e,n=t.summary,i=t.rankings,a=t.confidenceDistribution;return!!n&&typeof n.total=="number"&&typeof n.scored=="number"&&typeof n.archetypes=="number"&&Array.isArray(t.archetypePriors)&&Array.isArray(t.liveArchetypes)&&!!i&&Array.isArray(i.topByOpportunity)&&Array.isArray(i.topByDisruption)&&Array.isArray(i.topByReadiness)&&Array.isArray(i.mostAttractive)&&Array.isArray(i.highestRisk)&&!!t.classDistribution&&typeof t.classDistribution=="object"&&!!a&&typeof a.high=="number"&&typeof a.medium=="number"&&typeof a.low=="number"}function H0e(e){return Ga(e)?"You do not have permission to view this dashboard.":"Sector intelligence is unavailable. Please try again."}const QF={Software:"⬡","Business Services":"◈","Financial Services":"◆",Healthcare:"♥",Manufacturing:"⚙",Industrial:"⛭",Consumer:"⊛",Media:"▦",Logistics:"◎",Education:"◐",Other:"○"},XF={"AI Winner":"bg-emerald-900/20 text-emerald-300 border border-emerald-600/30","AI Exposed":"bg-amber-900/20 text-amber-300 border border-amber-600/30","AI Disrupted":"bg-red-900/20 text-red-400 border border-red-600/30","AI Neutral":"bg-blue-900/20 text-blue-300 border border-blue-600/30",Unclassified:"bg-white/5 text-white/50 border border-white/10"};function No({value:e,color:t="#D4A843"}){return e==null?r.jsx("span",{className:"text-white/35 text-xs",children:"—"}):r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"w-14 h-1.5 bg-white/10 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.min(100,e)}%`,backgroundColor:t}})}),r.jsx("span",{className:"text-xs tabular-nums text-white/70",children:e})]})}function Qc({value:e,color:t,label:n}){return r.jsxs("div",{className:"space-y-0.5",children:[r.jsxs("div",{className:"flex justify-between text-[10px] text-white/50",children:[r.jsx("span",{children:n}),r.jsx("span",{children:e})]}),r.jsx("div",{className:"h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${e}%`,backgroundColor:t}})})]})}function Xc({rank:e,title:t,items:n,valueKey:i,color:a,icon:s}){return r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-4",children:[r.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[r.jsx("span",{className:"text-lg",children:s}),r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/50",children:e}),r.jsx("div",{className:"text-xs font-semibold text-white/80",children:t})]})]}),r.jsxs("div",{className:"space-y-2.5",children:[n.map((o,l)=>{const c=o[i];return r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-white/35 text-[10px] w-3 tabular-nums",children:l+1}),r.jsx("span",{className:"text-xs text-white/60 flex-1 truncate",children:o.ar
562chetype}),r.jsx(No,{value:c,color:a})]},o.archetype)}),n.length===0&&r.jsx("p",{className:"text-xs text-white/35",children:"No scored data yet"})]})]})}function z0e({a:e,priors:t}){const[n,i]=j.useState(!1),a=t.find(d=>d.sector===e.archetype),s=e.avgOverall,o=s!=null?s>=70?"A":s>=50?"B":s>=30?"C":"D":null,l={A:"text-emerald-400",B:"text-blue-400",C:"text-yellow-400",D:"text-red-400"},c=(a==null?void 0:a.classification)??"AI Neutral";return r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden hover:border-white/20 transition-colors",children:[r.jsxs("button",{className:"w-full text-left p-4",onClick:()=>i(d=>!d),children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"flex items-center gap-2.5",children:[r.jsx("span",{className:"text-xl text-white/50",children:QF[e.archetype]??"○"}),r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-semibold text-white/90",children:e.archetype}),r.jsxs("div",{className:"text-[10px] text-white/50 mt-0.5",children:[e.companyCount," compan",e.companyCount===1?"y":"ies"," assessed"]})]})]}),r.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[r.jsx("span",{className:`text-[10px] px-2 py-0.5 rounded-full font-medium ${XF[c]??""}`,children:c}),o&&r.jsx("span",{className:`text-base font-bold ${l[o]??""}`,children:o}),s!=null&&r.jsx("span",{className:"text-sm font-semibold text-white/70",children:s}),r.jsx("span",{className:"text-white/35 ml-1 text-xs",children:n?"▲":"▼"})]})]}),r.jsxs("div",{className:"grid grid-cols-5 gap-2 mt-3",children:[r.jsx(Qc,{value:e.avgOpportunity??(a==null?void 0:a.opportunity)??0,color:"#22c55e",label:"Opp"}),r.jsx(Qc,{value:e.avgRisk??(a==null?void 0:a.risk)??0,color:"#ef4444",label:"Risk"}),r.jsx(Qc,{value:e.avgReadiness??(a==null?void 0:a.readiness)??0,color:"#3b82f6",label:"Ready"}),r.jsx(Qc,{value:e.avgExecution??(a==null?void 0:a.execution)??0,color:"#a855f7",label:"Exec"}),r.jsx(Qc,{value:e.avgDisruption??(a==null?void 0:a.disruption)??0,color:"#f97316",label:"Dis"})]})]}),n&&r.jsxs("div",{className:"px-4 pb-4 border-t border-white/5 pt-3 space-y-3",children:[(e.thesis??(a==null?void 0:a.thesis))&&r.jsxs("div",{className:"bg-[#0A0A0A] border border-[#D4A843]/20 rounded-lg p-3",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]/70 mb-1.5",children:"Sector AI Thesis"}),r.jsx("p",{className:"text-xs text-white/65 leading-relaxed",children:e.thesis??(a==null?void 0:a.thesis)})]}),e.companyCount>0&&r.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] text-white/40 mb-1.5",children:"Live average (scored companies)"}),r.jsx("div",{className:"space-y-1",children:[["Opportunity",e.avgOpportunity],["Risk",e.avgRisk],["Readiness",e.avgReadiness],["Execution",e.avgExecution],["Disruption",e.avgDisruption]].map(([d,u])=>r.jsxs("div",{className:"flex justify-between text-[10px]",children:[r.jsx("span",{className:"text-white/40",children:d}),r.jsx("span",{className:"text-white/60",children:u??"—"})]},d))})]}),a&&r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] text-white/40 mb-1.5",children:"Sector prior (baseline)"}),r.jsx("div",{className:"space-y-1",children:[["Opportunity",a.opportunity],["Risk",a.risk],["Readiness",a.readiness],["Execution",a.execution],["Disruption",a.disruption]].map(([d,u])=>r.jsxs("div",{className:"flex justify-between text-[10px]",children:[r.jsx("span",{className:"text-white/40",children:d}),r.jsx("span",{className:"text-white/50",children:u})]},d))})]})]}),e.avgConfidence!=null&&r.jsxs("div",{className:"flex items-center gap-2 pt-1 border-t border-white/5",children:[r.jsx("span",{className:"text-[10px] text-white/40",children:"Avg Data Confidence"}),r.jsx("div",{className:"w-20 h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full bg-[#D4A843]",style:{width:`${e.avgConfidence}%`}})}),r.jsxs("span",{className:"text-[10px] text-white/40",children:[e.avgConfidence,"/100"]})]})]})]})}function W0e({dist:e}){const t=e.high+e.medium+e.low||1,n=Math.round(e.high/t*100),i=Math.round(e.medium/t*100),a=Math.round(e.low/t*100);return r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/50 mb-3",children:"Confidence Distribution"}),r.jsxs("div",{className:"flex h-3 rounded-full overflow-hidden gap-0.5",children:[r.jsx("div",{style:{width:`${n}%`},className:"bg-emerald-500 rounded-l-full",title:`High: ${e.high}`}),r.jsx("div",{style:{width:`${i}%`},className:"bg-amber-400",title:`Med: ${e.medium}`}),r.jsx("div",{style:{width:`${a}%`},className:"bg-red-500/70 rounded-r-full",title:`Low: ${e.low}`})]}),r.jsxs("div",{className:"flex gap-4 mt-2 text-[10px]",children:[r.jsxs("span",{className:"text-emerald-400",children:["High ≥70: ",e.high," (",n,"%)"]}),r.jsxs("span",{className:"text-amber-400",children:["Med 40–69: ",e.medium," (",i,"%)"]}),r.jsxs("span",{className:"text-red-400/80",children:["Low <40: ",e.low," (",a,"%)"]})]})]})}function V0e(){const e=Ln(),[t,n]=j.useState("archetypes"),[i,a]=j.useState("avgOverall"),[s,o]=j.useState("desc"),{data:l,isLoading:c,error:d,refetch:u}=We({queryKey:["/api/admin/ai-exposure-sector-intelligence/data"],queryFn:Ti({on401:"throw"})}),p=sn({mutationFn:y=>Mt("POST","/api/admin/ai-exposure-seed/recalculate-all",{includeUnscored:y}),onSuccess:()=>
562{e.invalidateQueries({queryKey:["/api/admin/ai-exposure-sector-intelligence/data"]}),e.invalidateQueries({queryKey:["/api/admin/ai-exposure-seed"]}),e.invalidateQueries({queryKey:["/api/admin/ai-exposure-baseline/data"]})}}),m=j.useMemo(()=>l!=null&&l.liveArchetypes?[...l.liveArchetypes].sort((y,v)=>{const b=y[i]??-1,A=v[i]??-1;return s==="desc"?A-b:b-A}):[],[l==null?void 0:l.liveArchetypes,i,s]),f=j.useMemo(()=>l!=null&&l.archetypePriors?[...l.archetypePriors].sort((y,v)=>v.opportunity-y.opportunity):[],[l==null?void 0:l.archetypePriors]);function x({col:y,children:v}){return r.jsxs("th",{onClick:()=>{i===y?o(b=>b==="desc"?"asc":"desc"):(a(y),o("desc"))},className:`text-left px-3 py-2.5 font-medium cursor-pointer select-none text-[10px] uppercase tracking-widest transition-colors ${i===y?"text-[#D4A843]":"text-white/50 hover:text-white/60"}`,children:[v,i===y?s==="desc"?" ↓":" ↑":""]})}if(c)return r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] text-white flex items-center justify-center",children:r.jsx("span",{className:"text-white/50 text-sm",children:"Loading sector intelligence…"})});if(d||!G0e(l))return r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] text-white flex items-center justify-center px-6",children:r.jsxs("div",{className:"max-w-md text-center",children:[r.jsx("h1",{className:"text-base font-semibold",children:"Sector intelligence unavailable"}),r.jsx("p",{className:"mt-2 text-sm text-white/50",children:H0e(d)}),!Ga(d)&&r.jsx("button",{onClick:()=>u(),className:"mt-5 px-3 py-1.5 border border-white/20 text-xs text-white/70 rounded hover:border-white/40 hover:text-white transition-colors",children:"Try again"})]})});const h=l.summary.scored,g=["AI Winner","AI Exposed","AI Disrupted","AI Neutral","Unclassified"];return r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A] text-white",children:[r.jsx("div",{className:"border-b border-white/10 bg-[#0A0A0A] sticky top-0 z-20",children:r.jsxs("div",{className:"max-w-screen-xl mx-auto px-6 py-4 flex items-center justify-between gap-4 flex-wrap",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-0.5",children:"Internal · Not for Distribution"}),r.jsx("h1",{className:"text-lg font-semibold tracking-tight",children:"Sector Intelligence Layer"}),r.jsxs("p",{className:"text-xs text-white/50 mt-0.5",children:["AI diligence archetypes · ",l.summary.archetypes," archetypes · ",h," companies scored"]})]}),r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("button",{onClick:()=>p.mutate(!0),disabled:p.isPending,className:"px-3 py-1.5 border border-[#D4A843]/40 hover:border-[#D4A843] text-[#D4A843] text-xs font-semibold rounded transition-colors disabled:opacity-40",children:p.isPending?"Recalculating…":"⟳ Recalculate All"}),r.jsx("a",{href:"/admin/ai-exposure-baseline",className:"px-3 py-1.5 text-xs text-white/50 hover:text-white/60 transition-colors",children:"← Baseline"}),r.jsx("a",{href:"/admin/ai-exposure-seed",className:"px-3 py-1.5 text-xs text-white/50 hover:text-white/60 transition-colors",children:"← Database"})]})]})}),r.jsxs("div",{className:"max-w-screen-xl mx-auto px-6 py-6 space-y-6",children:[r.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-3",children:[{label:"Total Companies",value:l.summary.total,sub:"in database",accent:!0},{label:"Scored",value:h,sub:h?`${Math.round(h/(l.summary.total||1)*100)}% coverage`:"none yet"},{label:"Archetypes Active",value:l.summary.archetypes,sub:"sector categories"},{label:"High Confidence",value:l.confidenceDistribution.high,sub:"≥70/100 confidence"}].map(({label:y,value:v,sub:b,accent:A})=>r.jsxs("div",{className:`bg-[#141414] border rounded-xl px-5 py-4 ${A?"border-[#D4A843]/30":"border-white/10"}`,children:[r.jsx("div",{className:`text-[10px] uppercase tracking-widest mb-1 ${A?"text-[#D4A843]":"text-white/50"}`,children:y}),r.jsx("div",{className:"text-2xl font-semibold",children:v}),r.jsx("div",{className:"text-xs text-white/50 mt-0.5",children:b})]},y))}),h>0&&r.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[r.jsx(W0e,{dist:l.confidenceDistribution}),r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-4",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/50 mb-3",children:"AI Classification Distribution"}),r.jsx("div",{className:"space-y-1.5",children:g.map(y=>{const v=l.classDistribution[y]??0,b=h?Math.round(v/h*100):0,A={"AI Winner":"#22c55e","AI Exposed":"#f59e0b","AI Disrupted":"#ef4444","AI Neutral":"#3b82f6",Unclassified:"#6b7280"};return r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-[10px] text-white/40 w-28 shrink-0",children:y}),r.jsx("div",{className:"flex-1 h-1.5 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${b}%`,backgroundColor:A[y]}})}),r.jsxs("span",{className:"text-[10px] text-white/40 w-14 text-right",children:[v," (",b,"%)"]})]},y)})})]})]}),h===0&&r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-12 text-center",children:[r.jsx("div",{className:"text-5xl mb-4",children:"⬡"}),r.jsx("h2",{className:"text-base font-semibold mb-2",children:"No scored companies yet"}),r.jsxs("p",{className:"text-white/50 text-sm mb-5 max-w-md mx-auto",children:["Click ",r.jsx("strong",{className:"text-white/60",children:"Recalculate All"})," to instantly score all 195 companies using the Sector Intelligence Layer. No API key required — uses deterministic sector priors."]}),r.jsx("button",{onClick:()=>p.mutate(!0),disabled:p.isPending,className:"px-6 py-2.5 bg-[#D4A843] text-black text-sm font-semibold rounded hover:bg-[#D4A74A] transition-colors disabled:opacity-50",children:p.isPending?"Recalculating…":"⟳ Score All Companies Now"})]}),h>0&&r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"flex gap-1 border-b border-white/10",children:[{id:"ar
562chetypes",label:"Sector Archetypes"},{id:"rankings",label:"Intelligence Rankings"},{id:"priors",label:"Baseline Priors"}].map(({id:y,label:v})=>r.jsx("button",{onClick:()=>n(y),className:`px-5 py-2.5 text-sm font-medium transition-colors border-b-2 -mb-px ${t===y?"border-[#D4A843] text-[#D4A843]":"border-transparent text-white/40 hover:text-white/70"}`,children:v},y))}),t==="archetypes"&&r.jsxs("div",{className:"space-y-3",children:[r.jsxs("div",{className:"flex justify-between items-center",children:[r.jsx("p",{className:"text-xs text-white/50",children:"Click to expand thesis, dimension detail, and live vs prior comparison"}),r.jsx("div",{className:"flex gap-1.5",children:["avgOverall","avgOpportunity","avgDisruption","avgReadiness"].map(y=>r.jsx("button",{onClick:()=>a(y),className:`text-[10px] px-2.5 py-1 rounded border transition-colors ${i===y?"border-[#D4A843]/40 text-[#D4A843]":"border-white/10 text-white/50 hover:text-white/60"}`,children:y.replace("avg","")},y))})]}),r.jsx("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-3",children:m.map(y=>r.jsx(z0e,{a:y,priors:l.archetypePriors},y.archetype))})]}),t==="rankings"&&r.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:[r.jsx(Xc,{rank:"AI Opportunity",title:"Highest AI Upside Potential",items:l.rankings.topByOpportunity,valueKey:"avgOpportunity",color:"#22c55e",icon:"📈"}),r.jsx(Xc,{rank:"AI Disruption",title:"Highest Disruption Exposure",items:l.rankings.topByDisruption,valueKey:"avgDisruption",color:"#f97316",icon:"⚠"}),r.jsx(Xc,{rank:"AI Readiness",title:"Best Positioned to Execute",items:l.rankings.topByReadiness,valueKey:"avgReadiness",color:"#3b82f6",icon:"✓"}),r.jsx(Xc,{rank:"Most Attractive PE",title:"Top AI Diligence Score",items:l.rankings.mostAttractive,valueKey:"avgOverall",color:"#D4A843",icon:"★"}),r.jsx(Xc,{rank:"Highest Risk",title:"Greatest AI Risk Exposure",items:l.rankings.highestRisk,valueKey:"avgRisk",color:"#ef4444",icon:"⛨"})]}),t==="priors"&&r.jsxs("div",{children:[r.jsx("p",{className:"text-xs text-white/50 mb-3",children:"Static sector priors — the baseline used by the Sector Intelligence scoring engine. Individual company scores vary by ±variance around these means, seeded by company name for reproducibility."}),r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full text-xs",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-white/10",children:[r.jsx("th",{className:"text-left px-3 py-2.5 text-[10px] uppercase tracking-widest text-white/50",children:"Archetype"}),r.jsx(x,{col:"opportunity",children:"Opp."}),r.jsx(x,{col:"risk",children:"Risk"}),r.jsx(x,{col:"readiness",children:"Readiness"}),r.jsx(x,{col:"execution",children:"Exec."}),r.jsx(x,{col:"disruption",children:"Disrupt."}),r.jsx("th",{className:"text-left px-3 py-2.5 text-[10px] uppercase tracking-widest text-white/50",children:"Classification"}),r.jsx("th",{className:"text-left px-3 py-2.5 text-[10px] uppercase tracking-widest text-white/50",children:"Priority"})]})}),r.jsx("tbody",{children:f.map(y=>r.jsxs("tr",{className:"border-b border-white/5 hover:bg-white/[0.02]",children:[r.jsxs("td",{className:"px-3 py-2.5 font-medium text-white/80",children:[r.jsx("span",{className:"mr-1.5 text-white/40",children:QF[y.sector]??""}),y.sector]}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(No,{value:y.opportunity,color:"#22c55e"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(No,{value:y.risk,color:"#ef4444"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(No,{value:y.readiness,color:"#3b82f6"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(No,{value:y.execution,color:"#a855f7"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx(No,{value:y.disruption,color:"#f97316"})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx("span",{className:`text-[10px] px-2 py-0.5 rounded-full ${XF[y.classification]??""}`,children:y.classification})}),r.jsx("td",{className:"px-3 py-2.5",children:r.jsx("span",{className:`text-[10px] font-medium ${y.priority==="High"?"text-[#D4A843]":y.priority==="Medium"?"text-blue-300":"text-white/50"}`,children:y.priority})})]},y.sector))})]})})})]})]}),r.jsx("div",{className:"text-center text-xs text-white/35 pb-4",children:"Sector Intelligence Layer · Internal use only · Not investment advice"})]})]})}function K0e(e){if(!e||typeof e!="object")return!1;const t=e,n=t.summary;return typeof t.generatedAt=="string"&&!!n&&typeof n.totalScored=="number"&&typeof n.totalValidated=="number"&&typeof n.target=="number"&&typeof n.remaining=="number"&&typeof n.pct=="number"&&Array.isArray(t.bySector)&&Array.isArray(t.byUniverse)&&Array.isArray(t.byArchetype)&&Array.isArray(t.recommendedQueue)}function Y0e(e){return Ga(e)?"You do not have permission to view this dashboard.":"Validation coverage is unavailable. Please try again."}const ZF="#D4A843",Q0e={1:"P1",2:"P2",3:"P3",4:"P4",5:"P5",6:"P6",7:"P7",8:"P8"},VS={"AI Winner":"text-emerald-400","AI Transformer":"text-sky-400","AI Defensible":"text-blue-400","AI Exposed":"text-amber-400","AI Turnaround Candidate":"text-orange-400","AI Legacy":"text-red-400",Unclassified:"text-white/50"},KS={"PE-Backed":"text-emerald-400","Financial Institution":"text-sky-400","Public Corporate":"text-amber-400",Insurance:"text-purple-400"},X0e={anthropic:"Claude v3",sector_intelligence_v1:"Sector Intelligence",rules_based_fallback:"Rules",manually_scored:"Manual"};function _y({pct:e,validated:t,target:n}){const i=Math.min(100,e),a=e>=100?"#10b981":e>=50?ZF:"#ef4444";return r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("div",{className:"flex-1 h-1.5 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all",style:{width:`${i}%`,backgroundColor:a}})}),r.jsxs("span",{className:"text-[10px] font-mono text-white/40 w-12 text-right",children:[t,"/",n]})]})}function Z0e({pct:e}){const n=2*Math.PI*20,i=e/100*n,a=e>=100?"#10b981":e>=50?ZF:"#ef4444";return r.jsxs("svg",{width:"52",height:"52",className:"rotate-[-90deg]",children:[r.jsx("circle",{cx:"26",cy:"26",r:20,fill:"none",stroke:"rgba(255,255,255,0.08)",strokeWidth:"4"}),r.jsx("circle",{cx:"26",cy:"26",r:20,fill:"none",stroke:a,strokeWidth:"4",strokeDasharray:`${i} ${n}`,strokeLinecap:"round"}),r.jsxs("text",{x:"26",y:"26",dominantBaseline:"middle",textAnchor:"middle",fill:"white",fontSize:"10",fontWeight:"600",className:"rotate-[90deg]",transform:"rotate(90 26 26)",children:[e,"%"]})]})}function Zc({n:e,title:t,sub:n}){return r.jsxs("div",{className:"flex items-start gap-4 mb-4",children:[r.jsx("div",{className:"text-[11px] font-mono text-white/35 w-6 shrink-0 pt-0.5",children:e}),r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-semibold text-white tracking-tight",children:t}),n&&r.jsx("div",{className:"text-[11px] text-white/50 mt-0.5",children:n})]})]})}function J0e(){const{data:e,isLoading:t,error:n,refetch:i}=We({queryKey:["/api/admin/validation-coverage"],queryFn:Ti({on401:"throw"}),staleTime:6e4});if(t)return r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] flex items-center justify-center",children:r.jsx("div",{className:"text-white/50 text-sm font-mono animate-pulse",children:"Loading coverage data…"})});if(n||!K0e(e))return r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] flex items-center justify-center px-6",children:r.jsxs("div",{className:"max-w-md text-center",children:[r.jsx("h1",{className:"text-base font-semibold text-white",children:"Validation coverage unavailable"}),r.jsx("p",{className:"mt-2 text-sm text-white/50",children:Y0e(n)}),!Ga(n)&&r.jsx("button",{onClick:()=>i(),className:"mt-5 px-3 py-1.5 border border-white/20 text-xs text-white/70 rounded hover:border-white/40 hover:text-white transition-colors",children:"Try again"})]})});const{summary:a,bySector:s,byUniverse:o,byArchetype:l,recommendedQueue:c}=e;return r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A] text-white",children:[r.jsxs("div",{className:"border-b border-white/8 px-6 py-4 flex items-start justify-between",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-3 mb-1",children:[r.jsx("span",{className:"text-[10px] font-mono uppercase tracking-widest text-white/40",children:"INTERNAL · NOT FOR DISTRIBUTION"}),r.jsxs("span",{className:"text-[10px] font-mono px-2 py-0.5 rounded border border-[#D4A843]/40 text-[#D4A843]",children:["Target: ",a.target]})]}),r.jsx("h1",{className:"text-xl font-bold tracking-tight",children:"Validation Coverage Dashboard"}),r.jsx("p",{className:"text-[12px] text-white/50 mt-1",children:"Calibration cohort progress — balanced across sector, universe, and archetype"})]}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("button",{onClick:()=>i(),className:"flex items-center gap-1.5 px-3 py-1.5 text-[11px] text-white/50 border border-white/10 rounded hover:border-white/25 hover:text-white/70 transition-colors font-mono",children:"↻ Refresh"}),r.jsx(de,{href:"/admin/ai-exposure-seed",className:"flex items-center gap-1.5 px-3 py-1.5 text-[11px] text-white/50 border border-white/10 rounded hover:border-white/25 hover:text-white/70 transition-colors font-mono",children:"← Database"}),r.jsx(de,{href:"/admin/ai-exposure-baseline",className:"flex items-center gap-1.5 px-3 py-1.5 text-[11px] text-white/50 border border-white/10 rounded hover:border-white/25 hover:text-white/70 transition-colors font-mono",children:"Baseline →"})]})]}),r.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-8 space-y-10",children:[r.jsxs("section",{children:[r.jsx(Zc,{n:"01",title:"Overall Progress",sub:`Generated ${new Date(e.generatedAt).toLocaleStr
562ing()}`}),r.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-4",children:[r.jsxs("div",{className:"col-span-2 md:col-span-1 bg-white/3 border border-white/8 rounded-lg p-5 flex flex-col items-center justify-center gap-3",children:[r.jsx(Z0e,{pct:a.pct}),r.jsxs("div",{className:"text-center",children:[r.jsx("div",{className:"text-2xl font-bold text-white",children:a.totalValidated}),r.jsxs("div",{className:"text-[11px] text-white/50",children:["validated of ",a.target," target"]})]})]}),r.jsxs("div",{className:"bg-white/3 border border-white/8 rounded-lg p-5 flex flex-col justify-center gap-1",children:[r.jsx("div",{className:"text-[10px] font-mono uppercase tracking-widest text-white/40 mb-1",children:"Scored"}),r.jsx("div",{className:"text-2xl font-bold text-white",children:a.totalScored}),r.jsx("div",{className:"text-[11px] text-white/50",children:"records with AI scores"})]}),r.jsxs("div",{className:"bg-white/3 border border-white/8 rounded-lg p-5 flex flex-col justify-center gap-1",children:[r.jsx("div",{className:"text-[10px] font-mono uppercase tracking-widest text-white/40 mb-1",children:"Remaining"}),r.jsx("div",{className:`text-2xl font-bold ${a.remaining===0?"text-emerald-400":"text-amber-400"}`,children:a.remaining}),r.jsx("div",{className:"text-[11px] text-white/50",children:"to reach target"})]}),r.jsxs("div",{className:"bg-white/3 border border-white/8 rounded-lg p-5 flex flex-col justify-center gap-1",children:[r.jsx("div",{className:"text-[10px] font-mono uppercase tracking-widest text-white/40 mb-1",children:"Coverage"}),r.jsxs("div",{className:"text-2xl font-bold text-white",children:[a.pct,"%"]}),r.jsx("div",{className:"text-[11px] text-white/50",children:"of calibration target"})]})]})]}),r.jsxs("section",{children:[r.jsx(Zc,{n:"02",title:"Coverage by Sector",sub:"Priority order: Software → Business Services → Financial Services → Healthcare → Manufacturing → Energy → Media → Telecom"}),r.jsxs("div",{className:"bg-white/3 border border-white/8 rounded-lg overflow-hidden",children:[r.jsxs("div",{className:"grid grid-cols-[auto_1fr_1fr_1fr_1fr_1fr] text-[10px] font-mono uppercase tracking-widest text-white/40 px-4 py-2 border-b border-white/6",children:[r.jsx("div",{className:"w-10",children:"Pri"}),r.jsx("div",{children:"Sector"}),r.jsx("div",{className:"text-right",children:"Scored"}),r.jsx("div",{className:"text-right",children:"Validated"}),r.jsx("div",{className:"text-right",children:"Remaining"}),r.jsx("div",{className:"pl-3",children:"Progress"})]}),s.map((d,u)=>{const p=d.priority<=8,m=d.validated>=2&&p;return r.jsxs("div",{className:`grid grid-cols-[auto_1fr_1fr_1fr_1fr_1fr] items-center px-4 py-2.5 border-b border-white/4 last:border-0
563                    ${p?"hover:bg-white/3":"opacity-50"}
564                    transition-colors`,children:[r.jsx("div",{className:"w-10",children:p?r.jsx("span",{className:`text-[11px] font-mono px-1.5 py-0.5 rounded font-semibold
565                        ${d.priority<=3?"bg-[#D4A843]/20 text-[#D4A843]":"bg-white/8 text-white/40"}`,children:Q0e[d.priority]??"—"}):r.jsx("span",{className:"text-[11px] text-white/35 font-mono",children:"—"})}),r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-[12px] text-white font-medium",children:d.sector}),m&&r.jsx("span",{className:"text-[11px] text-emerald-400 font-mono",children:"✓"})]}),r.jsx("div",{className:"text-right text-[11px] text-white/40 font-mono",children:d.scored}),r.jsx("div",{className:`text-right text-[11px] font-mono font-medium ${d.validated>0?"text-emerald-400":"text-white/40"}`,children:d.validated}),r.jsx("div",{className:`text-right text-[11px] font-mono ${d.remaining>0&&p?"text-amber-400":"text-white/40"}`,children:p?d.remaining>0?`-${d.remaining}`:"✓":"—"}),r.jsx("div",{className:"pl-3",children:p?r.jsx(_y,{pct:d.pct,validated:d.validated,target:2}):r.jsx("div",{className:"h-1.5 bg-white/5 rounded-full"})})]},d.sector)})]}),r.jsx("p",{className:"text-[10px] text-white/40 mt-2 ml-10",children:"Target: ≥2 validated companies per priority sector. ✓ = target met."})]}),r.jsxs("section",{children:[r.jsx(Zc,{n:"03",title:"Coverage by Universe",sub:"Goal: avoid validating only large public Italian champions. PE-Backed companies anchor the calibration."}),r.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-3",children:o.map(d=>
565{const u=KS[d.universe]??"text-white/50",p=d.validated>=5;return r.jsxs("div",{className:`bg-white/3 border rounded-lg p-4 transition-colors
566                  ${p?"border-emerald-500/30":"border-white/8 hover:border-white/15"}`,children:[r.jsxs("div",{className:"flex items-start justify-between mb-3",children:[r.jsxs("div",{children:[r.jsx("div",{className:`text-[11px] font-semibold ${u}`,children:d.universe}),p&&r.jsx("div",{className:"text-[11px] text-emerald-400 mt-0.5",children:"Target met ✓"})]}),r.jsxs("div",{className:"text-right",children:[r.jsx("div",{className:`text-xl font-bold ${d.validated>0?"text-white":"text-white/40"}`,children:d.validated}),r.jsx("div",{className:"text-[11px] text-white/40",children:"/ 5"})]})]}),r.jsx(_y,{pct:Math.round(d.validated/5*100),validated:d.validated,target:5}),r.jsxs("div",{className:"flex justify-between mt-2",children:[r.jsxs("span",{className:"text-[11px] text-white/40",children:[d.scored," scored"]}),r.jsx("span",{className:`text-[11px] font-mono ${d.remaining>0?"text-amber-400/70":"text-emerald-400/70"}`,children:d.remaining>0?`${d.remaining} remaining`:"Done"})]})]},d.universe)})}),r.jsx("p",{className:"text-[10px] text-white/40 mt-2",children:"Target: ≥5 validated companies per active universe."})]}),r.jsxs("section",{children:[r.jsx(Zc,{n:"04",title:"Coverage by Archetype",sub:"Calibration must cover the full AI Archetype spectrum — not only high-scoring outliers."}),r.jsxs("div",{className:"bg-white/3 border border-white/8 rounded-lg overflow-hidden",children:[r.jsxs("div",{className:"grid grid-cols-[2fr_1fr_1fr_1fr_2fr] text-[10px] font-mono uppercase tracking-widest text-white/40 px-4 py-2 border-b border-white/6",children:[r.jsx("div",{children:"Archetype"}),r.jsx("div",{className:"text-right",children:"Scored"}),r.jsx("div",{className:"text-right",children:"Validated"}),r.jsx("div",{className:"text-right",children:"Remaining"}),r.jsx("div",{className:"pl-3",children:"Progress"})]}),l.map(d=>{const u=VS[d.archetype]??"text-white/40",p=d.validated>=2;return r.jsxs("div",{className:"grid grid-cols-[2fr_1fr_1fr_1fr_2fr] items-center px-4 py-2.5 border-b border-white/4 last:border-0 hover:bg-white/2 transition-colors",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:`text-[12px] font-medium ${u}`,children:d.archetype}),p&&r.jsx("span",{className:"text-[11px] text-emerald-400",children:"✓"})]}),r.jsx("div",{className:"text-right text-[11px] text-white/40 font-mono",children:d.scored}),r.jsx("div",{className:`text-right text-[11px] font-mono font-medium ${d.validated>0?"text-emerald-400":"text-white/40"}`,children:d.validated}),r.jsx("div",{className:`text-right text-[11px] font-mono ${d.remaining>0?"text-amber-400":"text-white/40"}`,children:d.remaining>0?`-${d.remaining}`:"✓"}),r.jsx("div",{className:"pl-3",children:r.jsx(_y,{pct:d.pct,validated:d.validated,target:2})})]},d.archetype)})]}),r.jsx("p",{className:"text-[10px] text-white/40 mt-2 ml-0",children:"Target: ≥2 validated companies per archetype."})]}),r.jsxs("section",{children:[r.jsx(Zc,{n:"05",title:"Recommended Validation Queue",sub:`${c.length} companies — ordered by sector priority → universe diversity → PE score`}),r.jsx("div",{className:"flex flex-wrap gap-3 mb-4 ml-0",children:[{label:"P1–P3 Priority Sector",color:"bg-[#D4A843]/20 text-[#D4A843] border-[#D4A843]/30"},{label:"PE-Backed",color:"bg-emerald-500/10 text-emerald-400 border-emerald-500/20"},{label:"Public Corporate",color:"bg-amber-500/10 text-amber-400 border-amber-500/20"},{label:"Claude v3",color:"bg-sky-500/10 text-sky-400 border-sky-500/20"}].map(d=>r.jsx("span",{className:`text-[11px] font-mono px-2 py-0.5 rounded border ${d.color}`,children:d.label},d.label))}),r.jsxs("div",{className:"bg-white/3 border border-white/8 rounded-lg overflow-hidden",children:[r.jsxs("div",{className:"grid grid-cols-[auto_2fr_1fr_1fr_1fr_auto_2fr] text-[10px] font-mono uppercase tracking-widest text-white/40 px-4 py-2 border-b border-white/6",children:[r.jsx("div",{className:"w-8",children:"#"}),r.jsx("div",{children:"Company"}),r.jsx("div",{children:"Sector"}),r.jsx("div",{children:"Universe"}),r.jsx("div",{children:"Archetype"}),r.jsx("div",{className:"text-right w-14",children:"Score"}),r.jsx("div",{className:"pl-3",children:"Why queue"})]}),c.map((d,u)=>{const p=VS[d.archetype]??"text-white/50",m=KS[d.universe]??"text-white/40",f=d.sectorPriority<=3;return r.jsxs("div",{className:"grid grid-cols-[auto_2fr_1fr_1fr_1fr_auto_2fr] items-center px-4 py-2.5 border-b border-white/4 last:border-0 hover:bg-white/2 transition-colors group",children:[r.jsx("div",{className:"w-8 text-[10px] font-mono text-white/35",children:u+1}),r.jsxs("div",{children:[r.jsx("div",{className:"text-[12px] text-white font-medium group-hover:text-[#D4A843] transition-colors",children:d.companyName}),r.jsxs("div",{className:"text-[11px] text-white/40 font-mono mt-0.5",children:[X0e[d.generationMethod??""]??d.generationMethod??"—"," · ",d.scoringStatus]})]}),r.jsx("div",{children:r.jsx("span",{className:`text-[10px] font-mono px-1.5 py-0.5 rounded
567                      ${f?"bg-[#D4A843]/15 text-[#D4A843]":"text-white/40"}`,children:d.sector})}),r.jsx("div",{className:`text-[11px] font-mono ${m}`,children:d.universe}),r.jsx("div",{className:`text-[10px] font-mono ${p}`,children:d.archetype}),r.jsx("div",{className:"w-14 text-right",children:r.jsx("span",{className:"text-[12px] font-mono text-white font-semibold",children:d.overallScore??"—"})}),r.jsx("div",{className:"pl-3 text-[10px] text-white/50 italic",children:d.reason})]},d.id)})]}),r.jsxs("div",{className:"mt-4 bg-white/2 border border-white/6 rounded-lg p-4",children:[r.jsx("div",{className:"text-[10px] font-mono uppercase tracking-widest text-white/40 mb-2",children:"Calibration principle"}),r.jsxs("p",{className:"text-[12px] text-white/50 leading-relaxed",children:["The validation cohort must avoid large Italian public champions (e.g. Enel, ENI, Leonardo). Priority goe
567s to ",r.jsx("span",{className:"text-emerald-400",children:"PE-Backed"})," companies in priority sectors — these anchor the calibration to real deal-flow contexts. Public Corporate records serve as calibration anchors, not as the primary validation signal."]})]})]}),r.jsxs("div",{className:"border-t border-white/6 pt-6 flex items-center justify-between text-[10px] text-white/35 font-mono",children:[r.jsx("span",{children:"AI Exposure Database · Validation Coverage · Internal use only"}),r.jsxs("span",{children:["Generated ",new Date(e.generatedAt).toLocaleString()]})]})]})]})}const As=["Not Started","Researching","Portfolio Imported","AI Scored","Completed"],Ca={"Not Started":{dot:"#6b7280",text:"text-white/50",bg:"bg-white/5 border-white/10"},Researching:{dot:"#f59e0b",text:"text-amber-400",bg:"bg-amber-900/20 border-amber-700/30"},"Portfolio Imported":{dot:"#3b82f6",text:"text-blue-400",bg:"bg-blue-900/20 border-blue-700/30"},"AI Scored":{dot:"#8b5cf6",text:"text-violet-400",bg:"bg-violet-900/20 border-violet-700/30"},Completed:{dot:"#22c55e",text:"text-emerald-400",bg:"bg-emerald-900/20 border-emerald-700/30"}},e1e={AI:"text-emerald-400 bg-emerald-900/25 border-emerald-700/30",Cybersecurity:"text-red-400 bg-red-900/25 border-red-700/30","Data Center":"text-purple-400 bg-purple-900/25 border-purple-700/30","Data Infrastructure":"text-purple-400 bg-purple-900/25 border-purple-700/30","Digital Connectivity":"text-sky-400 bg-sky-900/25 border-sky-700/30","Healthcare Technology":"text-rose-400 bg-rose-900/25 border-rose-700/30","Life Science":"text-pink-400 bg-pink-900/25 border-pink-700/30","Digital Medicine":"text-pink-400 bg-pink-900/25 border-pink-700/30","Digital Health":"text-rose-300 bg-rose-900/20 border-rose-700/25","Quantum Computing":"text-sky-400 bg-sky-900/25 border-sky-700/30",Semiconductors:"text-amber-400 bg-amber-900/25 border-amber-700/30","Industrial Technologies":"text-orange-400 bg-orange-900/25 border-orange-700/30",Space:"text-indigo-400 bg-indigo-900/25 border-indigo-700/30",Blockchain:"text-violet-400 bg-violet-900/25 border-violet-700/30","Other Digital":"text-white/40 bg-white/5 border-white/15","Education Tech":"text-cyan-400 bg-cyan-900/25 border-cyan-700/30",Energy:"text-yellow-400 bg-yellow-900/25 border-yellow-700/30","Clean Energy":"text-green-400 bg-green-900/25 border-green-700/30"},cd={"Venture Capital":"text-emerald-400 bg-emerald-900/20 border-emerald-700/25","Private Equity":"text-[#D4A843] bg-[#D4A843]/10 border-[#D4A843]/25",TTA:"text-sky-400 bg-sky-900/20 border-sky-700/25",Infrastructure:"text-purple-400 bg-purple-900/20 border-purple-700/25"},pa={Italy:"🇮🇹","United Kingdom":"🇬🇧",France:"🇫🇷",Germany:"🇩🇪",Finland:"🇫🇮",Denmark:"🇩🇰",
567Sweden:"🇸🇪",Norway:"🇳🇴"},t1e={"Not Started":0,Researching:1,"Portfolio Imported":2,"AI Scored":3,Completed:4},Bm={"AI Winner":{bg:"bg-emerald-900/25",text:"text-emerald-400",border:"border-emerald-600/30",dot:"#22c55e"},"AI Transformer":{bg:"bg-sky-900/20",text:"text-sky-400",border:"border-sky-600/30",dot:"#38bdf8"},"AI Defensible":{bg:"bg-violet-900/20",text:"text-violet-400",border:"border-violet-600/30",dot:"#a78bfa"},"AI Exposed":{bg:"bg-amber-900/20",text:"text-amber-400",border:"border-amber-600/30",dot:"#fbbf24"},"AI Turnaround Candidate":{bg:"bg-orange-900/20",text:"text-orange-400",border:"border-orange-600/30",dot:"#fb923c"},"AI Legacy":{bg:"bg-red-900/20",text:"text-red-400",border:"border-red-600/30",dot:"#f87171"}};function n1e({cls:e}){if(!e)return r.jsx("span",{className:"text-[11px] text-white/35",children:"—"});const t=Bm[e]??{bg:"bg-white/5",text:"text-white/40",border:"border-white/10",dot:"#666"};return r.jsxs("span",{className:`text-[11px] px-2 py-0.5 rounded border font-medium flex items-center gap-1 whitespace-nowrap ${t.bg} ${t.text} ${t.border}`,children:[r.jsx("span",{className:"w-1.5 h-1.5 rounded-full shrink-0",style:{backgroundColor:t.dot}}),e]})}function Xr({value:e,color:t,max:n=100}){return e==null?r.jsx("span",{className:"text-[11px] text-white/35 font-mono",children:"—"}):r.jsxs("div",{className:"flex items-center gap-1",children:[r.jsx("div",{className:"w-10 h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all",style:{width:`${e/n*100}%`,backgroundColor:t}})}),r.jsx("span",{className:"text-[11px] font-bold font-mono w-5 text-right",style:{color:t},children:e})]})}function YS({value:e,color:t}){return e==null?r.jsx("span",{className:"text-xs text-white/35",children:"—"}):r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"flex-1 h-1.5 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${e}%`,backgroundColor:t}})}),r.jsx("span",{className:"text-[10px] font-semibold w-6 text-right",style:{color:t},children:e})]})}function Df({tag:e}){const t=e1e[e]??"text-white/50 bg-white/5 border-white/10";return r.jsx("span",{className:`text-[11px] px-1.5 py-px rounded border font-medium ${t}`,children:e})}function JF({status:e}){const t=Ca[e??"Not Started"]??Ca["Not Started"];return r.jsxs("span",{className:`text-[11px] px-2 py-0.5 rounded border font-medium flex items-center gap-1 ${t.bg} ${t.text}`,children:[r.jsx("span",{className:"w-1.5 h-1.5 rounded-full shrink-0",style:{backgroundColor:t.dot}}),e??"Not Started"]})}function QS({imported:e,total:t}){const n=t??0,i=n>0?Math.round(e/n*100):0;return r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"flex-1 h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full bg-[#D4A843]",style:{width:`${i}%`}})}),r.jsxs("span",{className:"text-xs text-white/60 shrink-0",children:[e,"/",n]})]})}const r1e=[{key:"ai",label:"Top AI Investors",description:"Ranked by AI Relevance Score",scoreKey:"aiRelevanceScore",color:"#22c55e"},{key:"cyber",label:"Top Cyber Investors",description:"Cybersecurity tag · AI Score",scoreKey:"aiRelevanceScore",filterTag:"Cybersecurity",color:"#ef4444"},{key:"datainfra",label:"Top Data Infrastructure",description:"Data Infrastructure · Infra Score",scoreKey:"infraRelevanceScore",filterTag:"Data Infrastructure",color:"#a855f7"},{key:"health",label:"Top HealthTech Investors",description:"Healthcare Technology & Life Science",scoreKey:"aiRelevanceScore",filterTag:"Healthcare Technology",color:"#f43f5e"},{key:"pe",label:"Top Private Equity",description:"PE type · PE Relevance Score",scoreKey:"peRelevanceScore",filterType:"Private Equity",color:"#D4A843"}];function i1e({cat:e,managers:t}){let n=[...t];return e.filterTag&&(n=n.filter(i=>(i.strategyTags??[]).some(a=>a.toLowerCase().includes(e.filterTag.toLowerCase().split(" ")[0])))),e.filterType&&(n=n.filter(i=>i.supportType===e.filterType)),n=n.filter(i=>i[e.scoreKey]!=null).sort((i,a)=>(a[e.scoreKey]??0)-(i[e.scoreKey]??0)).slice(0,6),r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-5 flex flex-col gap-4",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-2 mb-0.5",children:[r.jsx("div",{className:"w-2 h-2 rounded-full",style:{backgroundColor:e.color}}),r.jsx("h3",{className:"text-xs font-semibold text-white",children:e.label})]}),r.jsx("p",{className:"text-xs text-white/40 ml-4",children:e.description})]}),n.length===0?r.jsx("div",{className:"text-[11px] text-white/35 py-4 text-center",children:"No matches."}):r.jsx("div",{className:"space-y-3",children:n.map((i,a)=>r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx("span",{className:"text-xs text-white/35 font-mono w-3 shrink-0",children:a+1}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-1.5 mb-1",children:[r.jsx("span",{className:"text-[11px] font-medium text-white/80 truncate",children:i.name}),r.jsx("span",{className:"shrink-0",children:pa[i.country??""]??""}),r.jsxs("span",{className:`shrink-0 text-[11px] px-1 py-px rounded border font-bold ${i.tier===1?"text-[#D4A843] border-[#D4A843]/35 bg-[#D4A843]/10":"text-white/40 border-white/12"}`,children:["T",i.tier]})]}),r.jsx("div",{className:"h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${i[e.scoreKey]??0}%`,backgroundColor:e.color}})})]}),r.jsx("span",{className:"text-sm font-bold shrink-0 w-8 text-right",style:{color:e.color},children:i[e.scoreKey]??"—"})]},i.id))})]})}function a1e({managerId:e,fundId:t,onClose:n,onSaved:i}){const[a,s]=j.useState({companyName:"",website:"",country:"",sector:"",subSector:"",description:"",ownershipStage:"",source:""}),[o,l]=j.useState(!1),[c,d]=j.useState(null),u=f=>x=>s(h=>({...h,[f]:x.target.value})),p=async()=>
567{if(!a.companyName.trim()){d("Company name required");return}l(!0),d(null);try{const f=await fetch("/api/admin/capital-intelligence/portfolio-companies",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...a,fundManagerId:e,fundId:t??null})});if(!f.ok)throw new Error((await f.json()).error);i(),n()}catch(f){d(f.message)}finally{l(!1)}},m="w-full bg-[#0d0d0d] border border-white/10 rounded-lg px-3 py-2 text-xs text-white/80 placeholder-white/30 focus:outline-none focus:border-[#D4A843]/50";return r.jsx("div",{className:"fixed inset-0 bg-black/70 z-50 flex items-center justify-center p-4",onClick:n,children:r.jsxs("div",{className:"bg-[#141414] border border-white/15 rounded-2xl w-full max-w-lg p-6",onClick:f=>f.stopPropagation(),children:[r.jsxs("div",{className:"flex items-center justify-between mb-5",children:[r.jsx("h2",{className:"text-sm font-semibold text-white",children:"Add Portfolio Company"}),r.jsx("button",{onClick:n,className:"text-white/50 hover:text-white/60 text-lg",children:"×"})]}),r.jsxs("div",{className:"space-y-3",children:[r.jsx("input",{className:m,placeholder:"Company Name *",value:a.companyName,onChange:u("companyName")}),r.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[r.jsx("input",{className:m,placeholder:"Website",value:a.website,onChange:u("website")}),r.jsx("input",{className:m,placeholder:"Country",value:a.country,onChange:u("country")})]}),r.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[r.jsx("input",{className:m,placeholder:"Sector",value:a.sector,onChange:u("sector")}),r.jsx("input",{className:m,placeholder:"Sub-sector",value:a.subSector,onChange:u("subSector")})]}),r.jsxs("select",{className:m,value:a.ownershipStage,onChange:u("ownershipStage"),children:[r.jsx("option",{value:"",children:"Ownership Stage"}),["Seed","Series A","Series B","Series C+","Growth","Buyout","Majority","Minority"].map(f=>r.jsx("option",{children:f},f))]}),r.jsx("textarea",{className:m+" resize-none",rows:2,placeholder:"Description (optional)",value:a.description,onChange:u("description")}),r.jsx("input",{className:m,placeholder:"Source (e.g. fund website, LinkedIn)",value:a.source,onChange:u("source")})]}),c&&r.jsx("p",{className:"text-[11px] text-red-400 mt-3",children:c}),r.jsxs("div",{className:"flex items-center justify-end gap-3 mt-5",children:[r.jsx("button",{onClick:n,className:"text-xs text-white/50 hover:text-white/55 transition-colors",children:"Cancel"}),r.jsx("button",{onClick:p,disabled:o,className:"text-xs px-4 py-2 bg-[#D4A843] hover:bg-[#d4a74a] text-black font-semibold rounded transition-colors disabled:opacity-50",children:o?"Saving…":"Add Company"})]})]})})}function s1e({manager:e,funds:t,onClose:n,onStatusChange:i}){var m;const[a,s]=j.useState(!1),o=Ln(),{data:l=[],isLoading:c}=We({queryKey:["/api/admin/capital-intelligence/portfolio-companies",e.id],queryFn:async()=>{const f=await fetch(`/api/admin/capital-intelligence/portfolio-companies?managerId=${e.id}`,{credentials:"include"});if(!f.ok){const x=await f.text();let h=x;try{const g=JSON.parse(x);h=g.error??g.message??x}catch{}throw new rc(f.status,h)}return f.json()},staleTime:15e3}),d=sn({mutationFn:f=>Mt("DELETE",`/api/admin/capital-intelligence/portfolio-companies/${f}`,{}),onSuccess:()=>o.invalidateQueries({queryKey:["/api/admin/capital-intelligence/portfolio-companies",e.id]})}),u=t.filter(f=>f.fundManagerId===e.id);Ca[e.researchStatus??"Not Started"]??Ca["Not Started"];const p=t1e[e.researchStatus??"Not Started"]??0;return r.jsxs("div",{className:"fixed right-0 top-0 bottom-0 w-[480px] bg-[#0f0f0f] border-l border-white/10 z-40 flex flex-col shadow-2xl overflow-hidden",children:[r.jsxs("div",{className:"px-6 py-5 border-b border-white/8 shrink-0",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[r.jsxs("span",{className:"text-[11px] font-bold px-1.5 py-0.5 rounded",style:{color:e.tier===1?"#D4A843":"#6b7280",backgroundColor:(e.tier===1?"#D4A843":"#6b7280")+"18",border:`1px solid ${e.tier===1?"#D4A843":"#6b7280"}30`},children:["T",e.tier]}),e.researchPriority&&r.jsxs("span",{className:"text-[11px] text-white/40",children:["Pri
567ority #",e.researchPriority]})]}),r.jsx("h2",{className:"text-sm font-semibold text-white leading-tight",children:e.name}),r.jsxs("p",{className:"text-[11px] text-white/50 mt-0.5",children:[pa[e.country??""]??""," ",e.country," · ",e.supportType]})]}),r.jsx("button",{onClick:n,className:"text-white/40 hover:text-white/55 text-xl shrink-0 transition-colors",children:"×"})]}),r.jsx("div",{className:"flex items-center gap-3 mt-3",children:[{label:"AI",v:e.aiRelevanceScore,c:"#22c55e"},{label:"PE",v:e.peRelevanceScore,c:"#D4A843"},{label:"Infra",v:e.infraRelevanceScore,c:"#a855f7"}].map(f=>r.jsxs("div",{className:"flex items-center gap-1",children:[r.jsx("span",{className:"text-[11px] text-white/50",children:f.label}),r.jsx("span",{className:"text-xs font-bold",style:{color:f.c},children:f.v??"—"})]},f.label))})]}),r.jsxs("div",{className:"flex-1 overflow-y-auto",children:[r.jsxs("div",{className:"px-6 py-4 border-b border-white/6",children:[r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsx("span",{className:"text-xs uppercase tracking-widest text-white/40",children:"Research Status"}),r.jsx(JF,{status:e.researchStatus})]}),r.jsx("div",{className:"flex items-center gap-0 mb-3",children:As.map((f,x)=>{const h=x<=p,g=x===p;return r.jsxs("div",{className:"flex items-center flex-1",children:[r.jsx("button",{onClick:()=>i(e.id,f),className:`w-6 h-6 rounded-full border-2 flex items-center justify-center text-[11px] font-bold transition-all shrink-0 ${g?"border-[#D4A843] bg-[#D4A843] text-black":h?"border-emerald-600 bg-emerald-900/40 text-emerald-400":"border-white/15 bg-white/5 text-white/35 hover:border-white/30"}`,title:f,children:x+1}),x<As.length-1&&r.jsx("div",{className:`flex-1 h-px mx-1 ${x<p?"bg-emerald-700/40":"bg-white/8"}`})]},f)})}),r.jsx("div",{className:"flex justify-between px-1",children:As.map((f,x)=>r.jsx("span",{className:`text-[11px] text-center leading-tight ${x===p?"text-[#D4A843]":"text-white/35"}`,style:{width:`${100/As.length}%`},children:f.split(" ")[0]},f))})]}),u.length>0&&r.jsxs("div",{className:"px-6 py-4 border-b border-white/6",children:[r.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-3",children:"InvestEU Fund(s)"}),r.jsx("div",{className:"space-y-2",children:u.map(f=>r.jsxs("div",{className:"bg-[#0d0d0d] rounded-lg px-3 py-2.5",children:[r.jsx("div",{className:"text-[11px] font-medium text-white/80 mb-0.5",children:f.fundName}),r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[f.typeOfSupport&&r.jsx("span",{className:`text-[11px] px-1.5 py-px rounded border font-medium ${cd[f.typeOfSupport]??""}`,children:f.typeOfSupport}),f.commitmentAmount&&r.jsxs("span",{className:"text-[10px] font-semibold text-[#D4A843]",children:["€",(f.commitmentAmount/1e6).toFixed(1).replace(/\.0$/,""),"M"]}),(f.targetAreas??[]).slice(0,2).map(x=>r.jsx(Df,{tag:x},x))]})]},f.id))})]}),r.jsxs("div",{className:"px-6 py-4",children:[r.jsxs("div",{className:"flex items-center justify-between mb-3",children:[r.jsxs("div",{children:[r.jsx("span",{className:"text-xs uppercase tracking-widest text-white/40",children:"Portfolio Companies"}),r.jsxs("span",{className:"text-xs text-white/35 ml-2",children:[l.length," / ~",e.portfolioSizeEstimate??"?"," imported"]})]}),r.jsx("button",{onClick:()=>s(!0),className:"text-[10px] px-2.5 py-1 bg-[#D4A843]/15 border border-[#D4A843]/30 text-[#D4A843] rounded font-medium hover:bg-[#D4A843]/25 transition-colors",children:"+ Add Company"})]}),c?r.jsx("div",{className:"space-y-2",children:[...Array(3)].map((f,x)=>r.jsx("div",{className:"h-10 bg-[#0d0d0d] rounded-lg animate-pulse"},x))}):l.length===0?r.jsxs("div",{className:"bg-[#0d0d0d] border border-white/6 rounded-xl p-6 text-center",children:[r.jsx("p",{className:"text-[11px] text-white/40 mb-3",children:"No companies imported yet."}),r.jsx("button",{onClick:()=>s(!0),className:"text-[10px] px-3 py-1.5 bg-[#D4A843] text-black font-semibold rounded hover:bg-[#d4a74a] transition-colors",children:"+ Add First Company"})]}):r.jsx("div",{className:"space-y-1.5",children:l.map(f=>r.jsxs("div",{className:"bg-[#0d0d0d] border border-white/6 rounded-lg px-3 py-2.5 flex items-center gap-3 group",children:[r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsx("div",{className:"text-[11px] font-medium text-white/80 truncate",children:f.companyName}),r.jsx("div",{className:"text-[11px] text-white/50 mt-0.5",children:[f.sector,f.country,f.ownershipStage].filter(
567Boolean).join(" · ")})]}),f.website&&r.jsx("a",{href:f.website.startsWith("http")?f.website:`https://${f.website}`,target:"_blank",rel:"nofollow noopener noreferrer",className:"text-[11px] text-white/35 hover:text-[#D4A843] transition-colors shrink-0",children:"↗"}),r.jsx("button",{onClick:()=>d.mutate(f.id),className:"text-[11px] text-white/35 hover:text-red-400 transition-colors shrink-0 opacity-0 group-hover:opacity-100",children:"×"})]},f.id))})]}),(e.strategyTags??[]).length>0&&r.jsxs("div",{className:"px-6 py-4 border-t border-white/6",children:[r.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-2",children:"Strategy Tags"}),r.jsx("div",{className:"flex flex-wrap gap-1.5",children:(e.strategyTags??[]).map(f=>r.jsx(Df,{tag:f},f))})]}),e.notes&&r.jsxs("div",{className:"px-6 py-4 border-t border-white/6",children:[r.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-2",children:"Notes"}),r.jsx("p",{className:"text-[11px] text-white/40 leading-relaxed",children:e.notes})]}),e.website&&r.jsx("div",{className:"px-6 pb-6",children:r.jsxs("a",{href:e.website,target:"_blank",rel:"nofollow noopener noreferrer",className:"text-[10px] text-[#D4A843]/60 hover:text-[#D4A843] transition-colors",children:[e.website," ↗"]})})]}),a&&r.jsx(a1e,{managerId:e.id,fundId:(m=u[0])==null?void 0:m.id,onClose:()=>s(!1),onSaved:()=>{o.invalidateQueries({queryKey:["/api/admin/capital-intelligence/portfolio-companies",e.id]})}})]})}function o1e(){const e=Ln(),[t,n]=j.useState("managers"),[i,a]=j.useState(null),[s,o]=j.useState("All"),[l,c]=j.useState("All"),[d,u]=j.useState("All"),[p,m]=j.useState("All"),[f,x]=j.useState("peAiAttractiveness"),[h,g]=j.useState(null),{data:y=[],isLoading:v,error:b}=We({queryKey:["/api/admin/capital-intelligence/fund-managers"],queryFn:Ti({on401:"throw"}),staleTime:15e3}),{data:A=[],isLoading:w}=We({queryKey:["/api/admin/capital-intelligence/funds"],queryFn:Ti({on401:"throw"}),staleTime:15e3}),{data:k=[]}=We({queryKey:["/api/admin/capital-intelligence/portfolio-companies"],queryFn:Ti({on401:"throw"}),staleTime:15e3,enabled:y.length>0}),{data:N,refetch:I}=We({queryKey:["/api/admin/capital-intelligence/scoring-status"],queryFn:Ti({on401:"throw"}),staleTime:2e3,refetchInterval:E=>{var ee;return(ee=E.state.data)!=null&&ee.running?1500:!1}}),{data:C=[],isLoading:O,refetch:_}=We({queryKey:["/api/admin/capital-intelligence/portfolio-scores"],queryFn:Ti({on401:"throw"}),staleTime:5e3,enabled:t==="scoring"});j.useEffect(()=>{N&&!N.running&&N.scoredCompanies>0&&_()},[N==null?void 0:N.running,N==null?void 0:N.scoredCompanies]);const D=sn({mutationFn:()=>Mt("POST","/api/admin/capital-intelligence/seed",{}),onSuccess:()=>{e.invalidateQueries({queryKey:["/api/admin/capital-intelligence/fund-managers"]}),e.invalidateQueries({queryKey:["/api/admin/capital-intelligence/funds"]})}}),G=sn({mutationFn:()=>Mt("POST","/api/admin/capital-intelligence/configure-research",{}),onSuccess:()=>e.invalidateQueries({queryKey:["/api/admin/capital-intelligence/fund-managers"]})}),P=sn({mutationFn:({id:E,status:ee})=>Mt("PATCH",`/api/admin/capital-intelligence/fund-managers/${E}/status`,{researchStatus:ee}),onSuccess:()=>e.invalidateQueries({queryKey:["/api/admin/capital-intelligence/fund-managers"]})}),L=sn({mutationFn:()=>Mt("POST","/api/admin/capital-intelligence/batch-score",{}),onSuccess:()=>{I(),setTimeout(()=>_(),3e3)}}),U=sn({mutationFn:()=>Mt("DELETE","/api/admin/capital-intelligence/portfolio-scores",{}),onSuccess:()=>{I(),_()}}),W=y.length>0&&y.every(E=>E.researchPriority==null),B=y.length===0,$=A.reduce((E,ee)=>E+(ee.commitmentAmount??0),0),z=["All",...Array.from(new Set(y.map(E=>E.country).filter(Boolean))).sort()],Q=["All",...Array.from(new Set(y.map(E=>E.supportType).filter(Boolean))).sort()],V=y.filter(E=>!(s!=="All"&&E.country!==s||l!=="All"&&String(E.tier)!==l||d!=="All"&&E.supportType!==d)),ne=[...y].sort((E,ee)=>(E.researchPriority??99)-(ee.researchPriority??99)),Se=As.reduce((E,ee)=>(E[ee]=y.filter(pe=>(pe.researchStatus??"Not Started")===ee).length,E),{}),He=E=>k.filter(ee=>ee.fundManagerId===E).length,at=(E,ee)=>{P.mutate({id:E,status:ee}),(i==null?void 0:i.id)===E&&a(pe=>pe?{...pe,researchStatus:ee}:null)},tn=Object.keys(Bm).reduce((E,ee)=>(E[ee]=C.filter(pe=>pe.aiClassification===ee).length,E),{}),Et=C.filter(E=>p==="All"||E.aiClassification===p).sort((E,ee)=>(ee[f]??0)-(E[f]??0)),re=C.length?Math.round(C.reduce((E,ee)=>E+(ee.peAiAttractiveness??0),0)/C.length):0,ve=C.length?Math.round(C.reduce((E,ee)=>E+(ee.aiExposureRisk??0),0)/C.length):0,fe=C.filter(E=>E.scoringMethod==="claude").length,Y=[{key:"managers",label:`Fund Managers${y.length?` (${y.length})`:""}`},{key:"funds",label:`Funds${A.length?` (${A.length})`:""}`},{key:"pipeline",label:"Research Pipeline"},{key:"queue",label:"Priority Queue"},{key:"rankings",label:"Rankings"},{key:"scoring",label:`AI Scoring${C.length?` (${C.length})`:""}`}];if(b){const E=Ga(b);return r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] flex items-center justify-center px-6",children:r.jsxs("div",{className:"max-w-md text-center",children:[r.jsx("h1",{className:"text-base font-semibold text-white",children:"Capital Intelligence unavailable"}),r.jsx("p",{className:"mt-2 text-sm text-white/50",children:E?"Your session has expired or you do not have permission to access this dashboard.":"Failed to load dashboard data. Please try again."}),!E&&r.jsx("button",{onClick:()=>e.invalidateQueries({queryKey:["/api/admin/capital-intelligence/fund-managers"]}
567),className:"mt-5 px-3 py-1.5 border border-white/20 text-xs text-white/70 rounded hover:border-white/40 hover:text-white transition-colors",children:"Try again"}),E&&r.jsx("a",{href:"/auth",className:"inline-block mt-5 px-3 py-1.5 border border-white/20 text-xs text-white/70 rounded hover:border-white/40 hover:text-white transition-colors",children:"Sign in"})]})})}return r.jsxs("div",{className:`min-h-screen bg-[#0A0A0A] text-white transition-all ${i?"mr-[480px]":""}`,children:[r.jsx("div",{className:"border-b border-white/6 bg-[#0d0d0d]",children:r.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-5",children:[r.jsxs("div",{className:"flex items-start justify-between gap-6",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-2 mb-0.5",children:[r.jsx("span",{className:"text-[11px] uppercase tracking-widest text-white/35",children:"Internal Admin"}),r.jsx("span",{className:"text-white/35",children:"·"}),r.jsx("span",{className:"text-[11px] uppercase tracking-widest text-white/35",children:"Not for Distribution"})]}),r.jsxs("h1",{className:"text-xl font-semibold tracking-tight",children:["Capital Intelligence",r.jsx("span",{className:"ml-2 text-[10px] font-normal text-[#D4A843]/60 uppercase tracking-widest",children:"Portfolio Intelligence Layer · v2"})]}),r.jsx("p",{className:"text-[11px] text-white/50 mt-0.5",children:"InvestEU Financial Intermediaries · EIF-backed Fund Managers · Source: 31 Dec 2024"})]}),r.jsxs("div",{className:"flex items-center gap-2 shrink-0 pt-1 flex-wrap justify-end",children:[B&&r.jsx("button",{onClick:()=>D.mutate(),disabled:D.isPending,className:"text-xs px-4 py-2 bg-[#D4A843] hover:bg-[#d4a74a] disabled:opacity-50 text-black font-semibold rounded transition-colors",children:D.isPending?"Seeding…":"⊕ Seed InvestEU Data"}),W&&r.jsx("button",{onClick:()=>G.mutate(),disabled:G.isPending,className:"text-xs px-3 py-2 bg-white/8 hover:bg-white/12 border border-white/15 text-white/70 rounded transition-colors",children:G.isPending?"Configuring…":"⚙ Setup Research Config"}),r.jsx("a",{href:"/admin/ai-exposure-seed",className:"text-xs text-white/35 hover:text-white/60 transition-colors",children:"← AI Database"})]})]}),r.jsx("div",{className:"grid grid-cols-4 gap-3 mt-5",children:[{label:"Fund Managers",value:y.length||"—",sub:y.length?`${y.filter(E=>E.tier===1).length} T1 · ${y.filter(E=>E.tier===2).length} T2`:"Not seeded"},{label:"InvestEU Funds",value:A.length||"—",sub:"tracked vehicles"},{label:"Portfolio Cos",value:k.length||"—",sub:"companies imported"},{label:"Total Commitment",value:$?`€${($/1e6).toFixed(0)}M`:"—",sub:"aggregate InvestEU"}].map(E=>r.jsxs("div",{className:"bg-[#141414] border border-white/8 rounded-xl px-4 py-3",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/40 mb-1",children:E.label}),r.jsx("div",{className:"text-2xl font-bold text-[#D4A843]",children:E.value}),r.jsx("div",{className:"text-xs text-white/40 mt-0.5",children:E.sub})]},E.label))})]})}),r.jsxs("div",{className:"max-w-7xl mx-auto px-6",children:[r.jsx("div",{className:"flex items-center border-b border-white/6 overflow-x-auto",children:Y.map(E=>r.jsx("button",{onClick:()=>n(E.key),className:`px-4 py-4 text-[11px] font-medium uppercase tracking-wider border-b-2 whitespace-nowrap transition-colors ${t===E.key?"border-[#D4A843] text-[#D4A843]":"border-transparent text-white/50 hover:text-white/55"}`,children:E.label},E.key))}),r.jsxs("div",{className:"py-6 pb-16",children:[t==="managers"&&r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[r.jsx("div",{className:"flex items-center gap-1",children:["All","1","2"].map(E=>r.jsx("button",{onClick:()=>c(E),className:`text-[10px] px-2.5 py-1 rounded border font-medium transition-colors ${l===E?"bg-[#D4A843]/15 border-[#D4A843]/40 text-[#D4A843]":"border-white/10 text-white/50 hover:border-white/25"}`,children:E==="All"?"All Tiers":`Tier ${E}`},E))}),r.jsx("div",{className:"w-px h-4 bg-white/10"}),r.jsx("div",{className:"flex items-center gap-1 flex-wrap",children:z.map(E=>r.jsx("button",{onClick:()=>o(E),className:`text-[10px] px-2.5 py-1 rounded border font-medium transition-colors ${s===E?"bg-[#D4A843]/15 border-[#D4A843]/40 text-[#D4A843]":"border-white/10 text-white/50 hover:border-white/25"}`,children:E==="All"?"All Countries":`${pa[E]??""} ${E}`},E))}),r.jsx("div",{className:"w-px h-4 bg-white/10"}),r.jsx("div",{className:"flex items-center gap-1 flex-wrap",children:Q.map(E=>r.jsx("button",{onClick:()=>u(E),className:`text-[10px] px-2.5 py-1 rounded border font-medium transition-colors ${d===E?"bg-[#D4A843]/15 border-[#D4A843]/40 text-[#D4A843]":"border-white/10 text-white/50 hover:border-white/25"}`,children:E},E))})]}),v?r.jsx("div",{className:"space-y-2",children:[...Array(8)].map((E,ee)=>r.jsx("div",{className:"h-14 bg-[#141414] rounded-lg animate-pulse"},ee))}):B?r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-12 text-center",children:[r.jsx("p",{className:"text-sm text-white/50 mb-5",children:"No fund managers loaded yet."}),r.jsx("button",{onClick:()=>D.mutate(),disabled:D.isPending,className:"text-xs px-5 py-2.5 bg-[#D4A843] text-black font-semibold rounded disabled:opacity-50",children:D.isPending?"Seeding…":"⊕ Seed InvestEU Data"})]}):V.length===0?r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-8 text-center text-sm text-white/40",children:"No managers match the current filters."}):r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:[r.jsxs("div",{className:"hidden xl:grid border-b border-white/10 px-4 py-2.5 text-[11px] uppercase tracking-widest text-white/35",style:{gridTemplateColumns:"36px 36px 1fr 100px 100px 1fr 100px 70px 65px 65px"},children:[r.jsx("div",{children:"#"}),r.jsx("div",{children:"T"}),r.jsx("div",{children:"Fund Manager"}),r.jsx("div",{children:"Country"}),r.jsx("div",{children:"Type"}),r.jsx("div",{children:"Strategy"}),r.jsx("div",{children:"Coverage"}),r.jsx("div",{children:"Status"}),r.jsx("div",{children:"AI"}),r.jsx("div",{children:"PE"})]}),r.jsx("div",{className:"divide-y divide-white/[0.04]",children:V.map(E=>{const ee=E.tier===1?"#D4A843":"#6b7280",pe=cd[E.supportType??""]??"text-white/50 bg-white/5 border-white/10",_e=He(E.id),X=(i==null?void 0:i.id)===E.id;return r.jsxs("div",{onClick:()=>a(X?null:E),className:`hidden xl:grid items-center px-4 py-3 cursor-pointer transition-colors gap-2 ${X?"bg-[#D4A843]/5 border-l-2 border-[#D4A843]":"hover:bg-white/[0.018]"}`,style:{gridTemplateColumns:"36px 36px 1fr 100px 100px 1fr 100px 70px 65px 65px"},children:[r.jsx("div",{className:"text-xs text-white/40",children:E.researchPriority??"—"}),r.jsx("div",{children:r.jsxs("span",{className:"text-[11px] font-bold px-1.5 py-0.5 rounded",style:{color:ee,backgroundColor:ee+"18",border:`1px solid ${ee}30`},children:["T",E.tier]})}),r.jsx("div",{className:"min-w-0 pr-3",children:r.jsx("div",{className:"text-[11px] font-medium text-white/85 truncate",children:E.name})}),r.jsxs("div",{className:"text-[11px] text-white/60",children:[pa[E.country??""]??""," ",E.country]}),r.jsx("div",{children:r.jsx("span",{className:`text-[11px] px-1.5 py-0.5 rounded border font-medium ${pe}`,children:E.supportType??"—"})}),r.jsxs("div",{className:"flex flex-wrap gap-1 pr-2",children:[(E.strategyTags??[]).slice(0,3).map(Te=>r.jsx(Df,{tag:Te},Te)),(E.strategyTags??[]).length>3&&r.jsxs("span",{className:"text-[11px] text-white/35",children:["+",(E.strategyTags??[]).length-3]})]}),r.jsx("div",{children:r.jsx(QS,{imported:_e,total:E.portfolioSizeEstimate})}),r.jsx("div",{children:r.jsx(JF,{status:E.researchStatus})}),r.jsx("div",{children:r.jsx(YS,{value:E.aiRelevanceScore,color:"#22c55e"})}),r.jsx("div",{children:r.jsx(YS,{value:E.peRelevanceScore,color:"#D4A843"})})]},E.id)})}),r.jsxs("div",{className:"px-4 py-3 border-t border-white/5 text-[10px] text-white/35",children:[V.length," of ",y.length," managers · Click a row to open detail panel"]})]})]}),t==="funds"&&r.jsx("div",{children:w?r.jsx("div",{className:"space-y-2",children:[...Array(8)].map((E,ee)=>r.jsx("div",{className:"h-12 bg-[#141414] rounded-lg animate-pulse"},ee))}):A.length===0?r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-10 text-center text-sm text-white/50",children:"No funds loaded."}):r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:[r.jsxs("div",{className:"hidden lg:grid border-b border-white/10 px-4 py-2.5 text-[11px] uppercase tracking-widest text-white/35",style:{gridTemplateColumns:"1fr 150px 60px 100px 1fr 115px"},children:[r.jsx("div",{children:"Fund Name"}),r.jsx("div",{children:"Manager"}),r.jsx("div",{children:"Country"}),r.jsx("div",{children:"Commitment"}),r.jsx("div",{children:"Target Areas"}),r.jsx("div",{children:"Type"})]}),r.jsx("div",{className:"divide-y divide-white/[0.04]",children:A.map(E=>
567{const ee=cd[E.typeOfSupport??""]??"text-white/50 bg-white/5 border-white/10";return r.jsxs("div",{className:"hidden lg:grid items-center px-4 py-3 hover:bg-white/[0.018] transition-colors gap-2",style:{gridTemplateColumns:"1fr 150px 60px 100px 1fr 115px"},children:[r.jsxs("div",{className:"min-w-0 pr-3",children:[r.jsx("div",{className:"text-[11px] font-medium text-white/80 truncate",children:E.fundName}),E.eifProduct&&r.jsx("div",{className:"text-[11px] text-white/22 truncate mt-0.5",children:E.eifProduct})]}),r.jsx("div",{className:"text-xs text-white/60 truncate pr-2",children:E.managerName??"—"}),r.jsx("div",{className:"text-base",children:pa[E.country??""]??r.jsx("span",{className:"text-xs text-white/40",children:E.country})}),r.jsx("div",{className:"text-xs font-semibold text-[#D4A843]",children:E.commitmentAmount?`€${(E.commitmentAmount/1e6).toFixed(1).replace(/\.0$/,"")}M`:"—"}),r.jsxs("div",{className:"flex flex-wrap gap-1 pr-2",children:[(E.targetAreas??[]).slice(0,3).map(pe=>r.jsx(Df,{tag:pe},pe)),(E.targetAreas??[]).length>3&&r.jsxs("span",{className:"text-[11px] text-white/35",children:["+",(E.targetAreas??[]).length-3]})]}),r.jsx("div",{children:r.jsx("span",{className:`text-[11px] px-2 py-0.5 rounded border font-medium ${ee}`,children:E.typeOfSupport??"—"})})]},E.id)})}),r.jsxs("div",{className:"px-4 py-3 border-t border-white/5 text-[10px] text-white/35",children:[A.length," funds · Total: €",($/1e6).toFixed(0),"M · Source: InvestEU 31/12/2024"]})]})}),t==="pipeline"&&r.jsxs("div",{className:"space-y-6",children:[r.jsx("div",{className:"grid grid-cols-5 gap-3",children:As.map(E=>{const ee=Se[E]??0,pe=Ca[E];return r.jsxs("div",{className:`bg-[#141414] border rounded-xl px-4 py-3 ${ee>0?"border-white/15":"border-white/6"}`,children:[r.jsxs("div",{className:"flex items-center gap-1.5 mb-1.5",children:[r.jsx("div",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:pe.dot}}),r.jsx("span",{className:"text-[11px] text-white/50",children:E})]}),r.jsx("div",{className:`text-2xl font-bold ${pe.text}`,children:ee})]},E)})}),B?r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-10 text-center text-sm text-white/50",children:"Seed data first."}):r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:[r.jsxs("div",{className:"grid border-b border-white/10 px-4 py-2.5 text-[11px] uppercase tracking-widest text-white/35",style:{gridTemplateColumns:"36px 1fr 100px 130px 1fr 140px"},children:[r.jsx("div",{children:"#"}),r.jsx("div",{children:"Fund Manager"}),r.jsx("div",{children:"Country"}),r.jsx("div",{children:"Type"}),r.jsx("div",{children:"Portfolio Coverage"}),r.jsx("div",{children:"Research Status"})]}),r.jsx("div",{className:"divide-y divide-white/[0.04]",children:ne.map(E=>{var pe,_e;const ee=He(E.id);return r.jsxs("div",{onClick:()=>{a(E),n("managers")},className:"grid items-center px-4 py-3.5 hover:bg-white/[0.02] cursor-pointer transition-colors gap-2",style:{gridTemplateColumns:"36px 1fr 100px 130px 1fr 140px"},children:[r.jsx("div",{className:"text-xs text-white/40 font-mono",children:E.researchPriority??"—"}),r.jsx("div",{className:"min-w-0",children:r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"text-[11px] font-medium text-white/80 truncate",children:E.name}),r.jsxs("span",{className:"text-[11px] font-bold px-1 py-px rounded",style:{color:E.tier===1?"#D4A843":"#6b7280",backgroundColor:(E.tier===1?"#D4A843":"#6b7280")+"18"},children:["T",E.tier]})]})}),r.jsxs("div",{className:"text-[11px] text-white/40",children:[pa[E.country??""]??""," ",E.country]}),r.jsx("div",{children:r.jsx("span",{className:`text-[11px] px-1.5 py-0.5 rounded border font-medium ${cd[E.supportType??""]??""}`,children:E.supportType})}),r.jsx("div",{className:"pr-3",children:r.jsx(QS,{imported:ee,total:E.portfolioSizeEstimate})}),r.jsx("div",{children:r.jsx("select",{value:E.researchStatus??"Not Started",onChange:X=>{X.stopPropagation(),at(E.id,X.target.value)},onClick:X=>X.stopPropagation(),className:`text-[11px] px-2 py-1 rounded border bg-transparent cursor-pointer font-medium transition-colors ${((pe=Ca[E.researchStatus??"Not Started"])==null?void 0:pe.bg)??""} ${((_e=Ca[E.researchStatus??"Not Started"])==null?void 0:_e.text)??""}`,children:As.map(X=>r.jsx("option",{value:X,className:"bg-[#141414] text-white",children:X},X))})})]},E.id)})})]})]}),t==="queue"&&r.jsxs("div",{className:"space-y-3",children:[r.jsx("div",{className:"flex items-center justify-between mb-5",children:r.jsxs("div",{children:[r.jsx("h2",{className:"text-sm font-semibold text-white",children:"Research Priority Queue"}),r.jsx("p",{className:"text-[11px] text-white/50 mt-0.5",children:"Ordered by strategic importance — click to open detail"})]})}),B?r.jsx("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-10 text-center text-sm text-white/50",children:"Seed data first."}):ne.map(E=>
567{const ee=He(E.id),pe=E.portfolioSizeEstimate??0,_e=pe>0?Math.round(ee/pe*100):0,X=Ca[E.researchStatus??"Not Started"],Te=E.tier===1?"#D4A843":"#6b7280";return r.jsx("div",{onClick:()=>{a(E),n("managers")},className:"bg-[#141414] border border-white/10 hover:border-white/20 rounded-xl px-5 py-4 cursor-pointer transition-all group",children:r.jsxs("div",{className:"flex items-start gap-4",children:[r.jsx("div",{className:"text-3xl font-black text-white/8 w-10 shrink-0 text-right leading-none mt-1",children:E.researchPriority??"?"}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-2 mb-1 flex-wrap",children:[r.jsx("span",{className:"text-sm font-semibold text-white/90",children:E.name}),r.jsxs("span",{className:"text-[11px] font-bold px-1.5 py-0.5 rounded",style:{color:Te,backgroundColor:Te+"18",border:`1px solid ${Te}30`},children:["Tier ",E.tier]}),pa[E.country??""]&&r.jsx("span",{className:"text-sm",children:pa[E.country??""]}),r.jsx("span",{className:`text-[11px] px-1.5 py-px rounded border ${cd[E.supportType??""]??""}`,children:E.supportType}),r.jsxs("span",{className:`text-[11px] px-2 py-px rounded border flex items-center gap-1 ${X.bg} ${X.text}`,children:[r.jsx("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:X.dot}}),E.researchStatus??"Not Started"]})]}),r.jsxs("div",{className:"grid grid-cols-3 gap-4 mt-2.5",children:[r.jsxs("div",{children:[r.jsx("div",{className:"text-[11px] text-white/40 mb-1",children:"Est. Portfolio"}),r.jsxs("div",{className:"text-xs font-semibold text-white/60",children:[pe||"Unknown"," companies"]})]}),r.jsxs("div",{children:[r.jsx("div",{className:"text-[11px] text-white/40 mb-1",children:"Imported"}),r.jsxs("div",{className:"text-xs font-semibold text-white/60",children:[ee," (",_e,"%)"]})]}),r.jsxs("div",{children:[r.jsx("div",{className:"text-[11px] text-white/40 mb-1",children:"AI Scored"}),r.jsx("div",{className:"text-xs font-semibold text-white/60",children:"0 (0%)"})]})]}),pe>0&&r.jsx("div",{className:"mt-2.5 h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full bg-[#D4A843] transition-all",style:{width:`${_e}%`}})})]}),r.jsxs("div",{className:"flex items-center gap-3 shrink-0",children:[r.jsx("div",{className:"flex gap-2",children:[{l:"AI",v:E.aiRelevanceScore,c:"#22c55e"},{l:"PE",v:E.peRelevanceScore,c:"#D4A843"}].map(Lt=>r.jsxs("div",{className:"text-center",children:[r.jsx("div",{className:"text-[11px] text-white/40",children:Lt.l}),r.jsx("div",{className:"text-sm font-bold",style:{color:Lt.c},children:Lt.v??"—"})]},Lt.l))}),r.jsx("span",{className:"text-white/35 group-hover:text-white/40 transition-colors text-lg",children:"→"})]})]})},E.id)})]}),t==="rankings"&&r.jsx("div",{children:B?r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-12 text-center",children:[r.jsx("p",{className:"text-sm text-white/50 mb-5",children:"Rankings require seeded data."}),r.jsx("button",{onClick:()=>D.mutate(),disabled:D.isPending,className:"text-xs px-5 py-2.5 bg-[#D4A843] text-black font-semibold rounded disabled:opacity-50",children:D.isPending?"Seeding…":"⊕ Seed InvestEU Data"})]}):r.jsx("div",{className:"grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-3 gap-4",children:r1e.map(E=>r.jsx(i1e,{cat:E,managers:y},E.key))})}),t==="scoring"&&r.jsxs("div",{className:"space-y-6",children:[r.jsxs("div",{className:"flex items-center justify-between gap-4 flex-wrap",children:[r.jsxs("div",{children:[r.jsx("h2",{className:"text-sm font-semibold text-white",children:"AI Exposure Scoring"}),r.jsx("p",{className:"text-[11px] text-white/50 mt-0.5",children:"AI Exposure Framework v1.0 · 9 Dimensions · 3 Composite Scores · Claude-powered"})]}),r.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[C.length>0&&r.jsx("button",{onClick:()=>{confirm("Clear all scores and re-run?")&&U.mutate()},disabled:U.isPending||(N==null?void 0:N.running),className:"text-[10px] px-3 py-1.5 border border-white/10 text-white/50 hover:text-white/55 hover:border-white/25 rounded transition-colors disabled:opacity-30",children:U.isPending?"Clearing…":"↺ Reset Scores"}),r.jsx("button",{onClick:()=>L.mutate(),disabled:L.isPending||(N==null?void 0:N.running)||(N==null?void 0:N.unscoredCompanies)===0&&C.length>0,className:"text-xs px-4 py-2 bg-[#D4A843] hover:bg-[#d4a74a] text-black font-semibold rounded transition-colors disabled:opacity-40",children:N!=null&&N.running?"⟳ Scoring in progress…":L.isPending?"Starting…":C.length===0?"▶ Run Batch AI Score":(N==null?void 0:N.unscoredCompanies)===0?"✓ All Scored":`▶ Score ${N==null?void 0:N.unscoredCompanies} Remaining`})]})]}),N&&(N.running||N.startedAt)&&r.jsxs("div",{className:`border rounded-xl px-5 py-5 transition-colors ${N.running?"bg-[#141414] border-[#D4A843]/25":"bg-[#141414] border-white/8"}`,children:[r.jsxs("div",{className:"flex items-center justify-between mb-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[N.running?r.jsx("div",{className:"w-2 h-2 rounded-full bg-[#D4A843] animate-pulse"}):r.jsx("div",{className:"w-2 h-2 rounded-full bg-emerald-500"}),r.jsx("span",{className:`text-[11px] font-semibold ${N.running?"text-[#D4A843]":"text-emerald-400"}`,children:N.running?"Scoring in progress…":"Scoring complete"})]}),r.jsx("span",{className:"text-[10px] font-mono text-white/50",children:N.running?`${Math.round(N.scored/Math.max(N.total,1)*100)}%`:N.completedAt?new Date(N.completedAt).toLocaleTimeString():""})]}),r.jsx("div",{className:"h-2 bg-white/6 rounded-full overflow-hidden mb-5",children:r.jsx("div",{className:`h-full rounded-full transition-all duration-700 ${N.running?"bg-[#D4A843]":"bg-emerald-500"}`,style:{width:`${N.total>0?Math.round(N.scored/N.total*100):0}
567%`}})}),r.jsxs("div",{className:"grid grid-cols-2 sm:grid-cols-4 gap-3",children:[r.jsxs("div",{className:"bg-[#0f0f0f] rounded-lg px-4 py-3 border border-white/5",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/35 mb-1.5",children:"Portfolio Companies"}),r.jsx("div",{className:"text-2xl font-bold text-white/70",children:N.totalCompanies}),r.jsx("div",{className:"text-[11px] text-white/35 mt-0.5",children:"total"})]}),r.jsxs("div",{className:"bg-[#0f0f0f] rounded-lg px-4 py-3 border border-white/5",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/35 mb-1.5",children:"Scored"}),r.jsxs("div",{className:"flex items-end gap-1.5",children:[r.jsx("span",{className:"text-2xl font-bold text-[#D4A843]",children:N.scoredCompanies}),r.jsxs("span",{className:"text-sm text-white/35 pb-0.5 font-mono",children:["/ ",N.totalCompanies]})]}),r.jsx("div",{className:"text-[11px] text-white/35 mt-0.5",children:N.running?`${N.scored} done · ${N.total-N.scored} remaining`:"all companies processed"})]}),r.jsxs("div",{className:"bg-[#0f0f0f] rounded-lg px-4 py-3 border border-white/5",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/35 mb-1.5",children:"Claude"}),r.jsx("div",{className:"text-2xl font-bold text-sky-400",children:fe}),r.jsx("div",{className:"text-[11px] text-white/35 mt-0.5",children:"claude-haiku-4-5"})]}),r.jsxs("div",{className:"bg-[#0f0f0f] rounded-lg px-4 py-3 border border-white/5",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/35 mb-1.5",children:"Fallback"}),r.jsx("div",{className:"text-2xl font-bold text-white/40",children:C.length-fe}),r.jsx("div",{className:"text-[11px] text-white/35 mt-0.5",children:"sector framework v1"})]})]}),N.errors>0&&r.jsxs("div",{className:"mt-3 text-[10px] text-red-400/70",children:[N.errors," companies failed to score"]}),N.running&&r.jsx("div",{className:"mt-3 text-[11px] text-white/35",children:"AI Exposure Framework v1.0 · auto-refreshing"})]}),C.length>0&&r.jsx("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-3",children:[{label:"Companies Scored",value:C.length,sub:`${fe} via Claude · ${C.length-fe} fallback`,color:"#D4A843"},{label:"Avg PE Attractiveness",value:re,sub:"PE AI Attractiveness score",color:"#22c55e"},{label:"Avg Exposure Risk",value:ve,sub:"Portfolio-wide AI risk level",color:"#f87171"},{label:"AI Winners",value:tn["AI Winner"]??0,sub:"Classified AI Winner",color:"#22c55e"}].map(E=>r.jsxs("div",{className:"bg-[#141414] border border-white/8 rounded-xl px-4 py-3",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/40 mb-1",children:E.label}),r.jsx("div",{className:"text-2xl font-bold",style:{color:E.color},children:E.value}),r.jsx("div",{className:"text-xs text-white/35 mt-0.5",children:E.sub})]},E.label))}),C.length>0&&r.jsxs("div",{className:"bg-[#141414] border border-white/8 rounded-xl p-5",children:[r.jsx("div",{className:"text-xs uppercase tracking-widest text-white/40 mb-4",children:"Classification Distribution"}),r.jsx("div",{className:"flex flex-wrap gap-2",children:["All",...Object.keys(Bm)].map(E=>{const ee=E==="All"?C.length:tn[E]??0,pe=E==="All"?null:Bm[E];return r.jsxs("button",{onClick:()=>m(E),className:`flex items-center gap-1.5 text-[10px] px-3 py-1.5 rounded border font-medium transition-all ${p===E?pe?`${pe.bg} ${pe.text} ${pe.border}`:"bg-[#D4A843]/15 text-[#D4A843] border-[#D4A843]/30":"bg-white/3 text-white/50 border-white/8 hover:border-white/20"}`,children:[pe&&r.jsx("span",{className:"w-1.5 h-1.5 rounded-full shrink-0",style:{backgroundColor:pe.dot}}),E," ",r.jsx("span",{className:"font-bold",children:ee})]},E)})})]}),O?r.jsx("div",{className:"space-y-2",children:[...Array(6)].map((E,ee)=>r.jsx("div",{className:"h-14 bg-[#141414] rounded-lg animate-pulse"},ee))}):C.length===0?r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl p-12 text-center",children:[r.jsx("div",{className:"text-white/35 text-4xl mb-4",children:"◎"}),r.jsx("p",{className:"text-sm font-medium text-white/40 mb-2",children:"No scores yet"}),r.jsxs("p",{className:"text-[11px] text-white/35 mb-6",children:['Click "Run Batch AI Score" to apply the AI Exposure Framework v1.0',r.jsx("br",{}),"to all ",k.length," portfolio companies using Claude"]}),r.jsx("button",{onClick:()=>L.mutate(),disabled:L.isPending||(N==null?void 0:N.running),className:"text-xs px-5 py-2.5 bg-[#D4A843] text-black font-semibold rounded hover:bg-[#d4a74a] transition-colors disabled:opacity-40",children:L.isPending?"Starting…":`▶ Run Batch AI Score (${k.length} companies)`})]}):r.jsxs("div",{className:"space-y-4",children:[r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-xs text-white/40",children:"Sort by:"}),[{key:"peAiAttractiveness",label:"PE AI Attractiveness",color:"#22c55e"},{key:"aiExposureRisk",label:"Exposure Risk",color:"#f87171"},{key:"aiValueCreation",label:"Value Creation",color:"#D4A843"}].map(E=>r.jsx("button",{onClick:()=>x(E.key),className:`text-[10px] px-2.5 py-1 rounded border font-medium transition-colors ${f===E.key?"bg-white/8 border-white/20 text-white/70":"border-white/8 text-white/40 hover:border-white/18"}`,children:E.label},E.key)),r.jsxs("span",{className:"text-xs text-white/35 ml-1",children:[Et.length," results"]})]}),r.jsxs("div",{className:"bg-[#141414] border border-white/10 rounded-xl overflow-hidden",children:[r.jsxs("div",{className:"grid border-b border-white/10 px-4 py-2.5 text-[11px] uppercase tracking-widest text-white/35",style:{gridTemplateColumns:"1fr 110px 55px 55px 55px 55px 55px 55px 55px 55px 55px 55px 165px 60px"},children:[r.jsx("div",{children:"Company"}),r.jsx("div",{children:"Manager"}),r.jsx("div",{title:"AI Opportunity",children:"Opp"}),r.jsx("div",{title:"AI Risk",children:"Risk"}),r.jsx("div",{title:"AI Readiness",children:"Ready"}),r.jsx("div",{title:"AI Execution",children:"Exec"}),r.jsx("div",{title:"AI Disruption",children:"Disrupt"}),r.jsx("div",{title:"Moat Defensibility",children:"Moat"}),r.jsx("div",{title:"Data Advantage",children:"Data"}),r.jsx("div",{title:"Labor Substitution",children:"Labor"}),r.jsx("div",{title:"AI-Native Threat",children:"Threat"}),r.jsx("div",{title:"PE AI Attractiveness",className:"text-[#22c55e]",children:"Attract"}),r.jsx("div",{children:"Classification"}),r.jsx("div",{title:"Confidence",children:"Conf"})]}),r.jsx("div",{className:"divide-y divide-white/[0.03]",children:Et.map(E=>{var pe;const ee=h===E.id;return r.jsxs("div",{children:[r.jsxs("div",{onClick:()=>g(ee?null:E.id),className:"grid items-center px-4 py-3 hover:bg-white/[0.018] cursor-pointer transition-colors gap-1",
567style:{gridTemplateColumns:"1fr 110px 55px 55px 55px 55px 55px 55px 55px 55px 55px 55px 165px 60px"},children:[r.jsxs("div",{className:"min-w-0 pr-2",children:[r.jsx("div",{className:"text-[11px] font-medium text-white/85 truncate",children:E.companyName}),r.jsxs("div",{className:"text-[11px] text-white/40 mt-px truncate",children:[E.sector," · ",E.country]})]}),r.jsx("div",{className:"text-[11px] text-white/50 truncate pr-2",children:((pe=E.managerName)==null?void 0:pe.replace(" SGR SpA","").replace(" Manager GmbH","").replace(" LLP",""))??"—"}),r.jsx("div",{children:r.jsx(Xr,{value:E.aiOpportunity,color:"#22c55e"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.aiRisk,color:"#f87171"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.aiReadiness,color:"#60a5fa"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.aiExecution,color:"#a78bfa"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.aiDisruption,color:"#fb923c"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.moatDefensibility,color:"#34d399"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.dataAdvantage,color:"#818cf8"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.laborSubstitution,color:"#fbbf24"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.aiNativeThreat,color:"#f43f5e"})}),r.jsx("div",{children:r.jsx(Xr,{value:E.peAiAttractiveness,color:"#22c55e"})}),r.jsx("div",{children:r.jsx(n1e,{cls:E.aiClassification})}),r.jsx("div",{className:"text-[11px] text-white/50 font-mono",children:E.confidenceScore??"—"})]}),ee&&r.jsxs("div",{className:"px-4 pb-4 bg-white/[0.012] border-t border-white/5",children:[r.jsx("div",{className:"grid grid-cols-3 gap-3 mt-3 mb-3",children:[{label:"PE AI Attractiveness",value:E.peAiAttractiveness,color:"#22c55e",desc:"Opp×0.30 + Ready×0.25 + Exec×0.20 + (100-Risk)×0.15 + (100-Dis)×0.10"},{label:"AI Exposure Risk",value:E.aiExposureRisk,color:"#f87171",desc:"Risk×0.35 + Disruption×0.25 + LaborSub×0.25 + NativeThreat×0.15"},{label:"AI Value Creation",value:E.aiValueCreation,color:"#D4A843",desc:"Opportunity×0.40 + DataAdvantage×0.30 + MoatDefensibility×0.30"}].map(_e=>r.jsxs("div",{className:"bg-[#0d0d0d] rounded-lg px-3 py-3",children:[r.jsx("div",{className:"text-[11px] text-white/50 mb-1",children:_e.label}),r.jsx("div",{className:"text-xl font-bold mb-1",style:{color:_e.color},children:_e.value??"—"}),r.jsx("div",{className:"h-1 bg-white/8 rounded-full overflow-hidden mb-1.5",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${_e.value??0}%`,backgroundColor:_e.color}})}),r.jsx("div",{className:"text-[11px] text-white/35 leading-tight",children:_e.desc})]},_e.label))}),r.jsxs("div",{className:"flex items-center gap-4 text-[11px] text-white/40 mt-1",children:[r.jsxs("span",{children:["Method: ",r.jsx("span",{className:"text-white/60",children:E.scoringMethod})]}),r.jsxs("span",{children:["Model: ",r.jsx("span",{className:"text-white/60",children:E.model})]}),r.jsxs("span",{children:["Confidence: ",r.jsxs("span",{className:"text-white/60",children:[E.confidenceScore,"/100"]})]}),E.website&&r.jsxs("a",{href:E.website,target:"_blank",rel:"nofollow noopener noreferrer",className:"text-[#D4A843]/50 hover:text-[#D4A843] transition-colors",children:["↗ ",E.website]})]})]})]},E.id)})}),r.jsxs("div",{className:"px-4 py-3 border-t border-white/5 text-[10px] text-white/35",children:[Et.length," companies · ",fe," scored by Claude · ",C.length-fe," by framework fallback"]})]})]})]})]})]}),i&&r.jsx(s1e,{manager:y.find(E=>E.id===i.id)??i,funds:A,onClose:()=>a(null),onStatusChange:at})]})}const $s={Italy:"🇮🇹","United Kingdom":"🇬🇧",France:"🇫🇷",Germany:"🇩🇪",Finland:"🇫🇮",Denmark:"🇩🇰",
567Sweden:"🇸🇪",Norway:"🇳🇴"},eB={"AI Winner":{bg:"bg-emerald-900/25",text:"text-emerald-400",border:"border-emerald-600/30",dot:"#22c55e"},"AI Transformer":{bg:"bg-sky-900/20",text:"text-sky-400",border:"border-sky-600/30",dot:"#38bdf8"},"AI Defensible":{bg:"bg-violet-900/20",text:"text-violet-400",border:"border-violet-600/30",dot:"#a78bfa"},"AI Exposed":{bg:"bg-amber-900/20",text:"text-amber-400",border:"border-amber-600/30",dot:"#fbbf24"},"AI Turnaround Candidate":{bg:"bg-orange-900/20",text:"text-orange-400",border:"border-orange-600/30",dot:"#fb923c"},"AI Legacy":{bg:"bg-red-900/20",text:"text-red-400",border:"border-red-600/30",dot:"#f87171"}};function l1e({cls:e}){if(!e)return r.jsx("span",{className:"text-[11px] text-white/35",children:"—"});const t=eB[e]??{bg:"bg-white/5",text:"text-white/40",border:"border-white/10",dot:"#666"};return r.jsxs("span",{className:`text-[11px] px-1.5 py-0.5 rounded border font-medium flex items-center gap-1 whitespace-nowrap ${t.bg} ${t.text} ${t.border}`,children:[r.jsx("span",{className:"w-1.5 h-1.5 rounded-full shrink-0",style:{backgroundColor:t.dot}}),e]})}function Jc({value:e,color:t}){return e==null?r.jsx("span",{className:"text-[11px] text-white/35 font-mono",children:"—"}):r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"w-8 h-1 bg-white/8 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${e}%`,backgroundColor:t}})}),r.jsx("span",{className:"text-[10px] font-bold font-mono w-5 text-right leading-none",style:{color:t},children:e})]})}function Py({value:e,color:t}){return r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("div",{className:"flex-1 h-1.5 bg-white/6 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all",style:{width:`${e}%`,backgroundColor:t}})}),r.jsx("span",{className:"text-xs font-bold font-mono w-6 text-right",style:{color:t},children:e})]})}function c1e({value:e,color:t}){return r.jsxs("span",{className:"text-[10px] font-bold font-mono px-2 py-0.5 rounded",style:{backgroundColor:`${t}18`,color:t},children:[e,"%"]})}function d1e({rank:e}){return e===1?r.jsx("span",{className:"text-base",children:"🥇"}):e===2?r.jsx("span",{className:"text-base",children:"🥈"}):e===3?r.jsx("span",{className:"text-base",children:"🥉"}):r.jsx("span",{className:"text-[11px] font-bold text-white/40 w-5 text-center",children:e})}function tB(e){return e.replace(" SGR SpA","").replace(" Manager GmbH","").replace(" Capital LLP","").replace(" Capital Management","").replace(" LLP","").trim()}function u1e({manager:e,scores:t,funds:n,onClose:i}){const[a,s]=j.useState("peAiAttractiveness"),[o,l]=j.useState("All"),[c,d]=j.useState(null);j.useEffect(()=>{const h=g=>{g.key==="Escape"&&i()};return document.addEventListener("keydown",h),()=>document.removeEventListener("keydown",h)},[i]);const u=n.filter(h=>h.fundManagerId===e.fundManagerId),p=t.filter(h=>h.fundManagerId===e.fundManagerId),m=p.filter(h=>o==="All"||h.aiClassification===o).sort((h,g)=>(g[a]??0)-(h[a]??0)),f=e.aiWinners>=e.aiTransformers&&e.aiWinners>=e.aiExposed?{label:"AI Winner–Led",color:"#22c55e"}:e.aiTransformers>=e.aiExposed?{label:"AI Transformer–Led",color:"#38bdf8"}:{label:"AI Exposed–Led",color:"#fbbf24"},x=["All","AI Winner","AI Transformer","AI Defensible","AI Exposed","AI Turnaround Candidate","AI Legacy"];return r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"fixed inset-0 bg-black/60 z-40 backdrop-blur-sm",onClick:i}),r.jsxs("div",{className:"fixed top-0 right-0 h-full w-full max-w-3xl bg-[#0f0f0f] border-l border-white/10 z-50 flex flex-col overflow-hidden shadow-2xl",children:[r.jsxs("div",{className:"flex items-start justify-between px-6 py-5 border-b border-white/8 shrink-0",children:[r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[$s[e.managerCountry??""]&&r.jsx("span",{className:"text-lg",children:$s[e.managerCountry]}),r.jsx("h2",{className:"text-base font-bold text-white",children:e.managerName}),e.managerTier&&r.jsxs("span",{className:"text-[11px] font-bold px-1.5 py-px rounded border border-[#D4A843]/30 text-[#D4A843] bg-[#D4A843]/8 ml-1",children:["T",e.managerTier]})]}),r.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[r.jsxs("span",{className:"text-xs text-white/50",children:[e.totalCompanies," portfolio companies"]}),r.jsx("span",{className:"text-[11px] px-1.5 py-px rounded",style:{backgroundColor:`${f.color}14`,color:f.color},children:f.label}),r.jsxs("span",{className:"text-[11px] text-white/35",children:[e.claudeScored," Claude-scored"]})]})]}),r.jsx("button",{onClick:i,className:"text-white/35 hover:text-white/60 transition-colors text-xl leading-none mt-1 
567shrink-0",children:"✕"})]}),r.jsxs("div",{className:"flex-1 overflow-y-auto",children:[r.jsx("div",{className:"grid grid-cols-3 border-b border-white/6",children:[{label:"PE AI Attractiveness",value:e.avgPeAiAttractiveness,color:"#22c55e"},{label:"AI Value Creation",value:e.avgAiValueCreation,color:"#D4A843"},{label:"AI Exposure Risk",value:e.avgAiExposureRisk,color:"#f87171"}].map(h=>r.jsxs("div",{className:"px-5 py-4 border-r border-white/6 last:border-r-0",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/35 mb-1",children:h.label}),r.jsx("div",{className:"text-2xl font-bold mb-1.5",style:{color:h.color},children:h.value}),r.jsx("div",{className:"h-1 bg-white/6 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${h.value}%`,backgroundColor:h.color}})})]},h.label))}),r.jsxs("div",{className:"px-6 py-4 border-b border-white/6",children:[r.jsx("div",{className:"flex items-center gap-4 flex-wrap",children:[{label:"Winners",count:e.aiWinners,ratio:e.winnerRatio,color:"#22c55e"},{label:"Transformers",count:e.aiTransformers,ratio:e.transformerRatio,color:"#38bdf8"},{label:"Defensible",count:e.aiDefensibles,ratio:Math.round(e.aiDefensibles/e.totalCompanies*100),color:"#a78bfa"},{label:"Exposed",count:e.aiExposed,ratio:e.exposureRatio,color:"#fbbf24"},{label:"Turnaround",count:e.aiTurnaround,ratio:Math.round(e.aiTurnaround/e.totalCompanies*100),color:"#fb923c"},{label:"Legacy",count:e.aiLegacy,ratio:Math.round(e.aiLegacy/e.totalCompanies*100),color:"#f87171"}].filter(h=>h.count>0).map(h=>r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"w-2 h-2 rounded-full",style:{backgroundColor:h.color}}),r.jsx("span",{className:"text-xs text-white/50",children:h.label}),r.jsx("span",{className:"text-[10px] font-bold",style:{color:h.color},children:h.count}),r.jsxs("span",{className:"text-[11px] text-white/35",children:["(",h.ratio,"%)"]})]},h.label))}),r.jsx("div",{className:"h-1.5 rounded-full overflow-hidden flex gap-px mt-3",children:[{count:e.aiWinners,color:"#22c55e"},{count:e.aiTransformers,color:"#38bdf8"},{count:e.aiDefensibles,color:"#a78bfa"},{count:e.aiExposed,color:"#fbbf24"},{count:e.aiTurnaround,color:"#fb923c"},{count:e.aiLegacy,color:"#f87171"}].filter(h=>h.count>0).map((h,g)=>r.jsx("div",{className:"h-full rounded-sm",style:{width:`${Math.round(h.count/e.totalCompanies*100)}%`,backgroundColor:h.color}},g))})]}),u.length>0&&r.jsxs("div",{className:"px-6 py-4 border-b border-white/6",children:[r.jsxs("div",{className:"text-[11px] uppercase tracking-widest text-white/35 mb-3",children:["Funds · ",u.length," vehicle",u.length!==1?"s":""]}),r.jsx("div",{className:"space-y-2",children:u.map(h=>{var g;return r.jsx("div",{className:"bg-[#141414] border border-white/6 rounded-lg px-4 py-3",children:r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsx("div",{className:"text-[11px] font-medium text-white/75 truncate",children:h.fundName}),r.jsxs("div",{className:"flex items-center gap-2 mt-1 flex-wrap",children:[h.eifProduct&&r.jsx("span",{className:"text-[11px] px-1.5 py-px rounded bg-[#D4A843]/10 text-[#D4A843] border border-[#D4A843]/20",children:h.eifProduct}),h.typeOfSupport&&r.jsx("span",{className:"text-[11px] text-white/40",children:h.typeOfSupport}),(g=h.targetAreas)==null?void 0:g.slice(0,3).map(y=>r.jsx("span",{className:"text-[11px] px-1.5 py-px rounded bg-white/5 text-white/40 border border-white/8",children:y},y))]})]}),h.commitmentAmount&&r.jsxs("div",{className:"text-right shrink-0",children:[r.jsxs("div",{className:"text-sm font-bold text-[#D4A843]",children:[h.commitmentCurrency==="EUR"?"€":h.commitmentCurrency,h.commitmentAmount>=1e3?`${(h.commitmentAmount/1e3).toFixed(1)}B`:`${h.commitmentAmount}M`]}),r.jsx("div",{className:"text-[11px] text-white/35",children:"commitment"})]})]})},h.id)})})]}),r.jsxs("div",{className:"px-6 py-4",children:[r.jsx("div",{className:"flex items-center justify-between mb-3",children:r.jsxs("div",{className:"text-[11px] uppercase tracking-widest text-white/35",children:["Portfolio Companies · ",m.length," shown"]})}),r.jsxs("div",{className:"flex items-center gap-2 mb-3 flex-wrap",children:[r.jsx("span",{className:"text-[11px] text-white/35",children:"Sort:"}),[{key:"peAiAttractiveness",label:"PE Score",color:"#22c55e"},{key:"aiExposureRisk",label:"AI Risk",color:"#f87171"},{key:"aiValueCreation",label:"Value Creation",color:"#D4A843"}].map(h=>r.jsx("button",{onClick:()=>s(h.key),className:`text-[11px] px-2.5 py-1 rounded border transition-colors font-medium ${a===
567h.key?"bg-white/8 border-white/20 text-white/70":"border-white/8 text-white/40 hover:border-white/18 hover:text-white/40"}`,children:h.label},h.key))]}),r.jsx("div",{className:"flex items-center gap-1.5 mb-4 flex-wrap",children:x.filter(h=>h==="All"?!0:p.some(g=>g.aiClassification===h)).map(h=>{const g=h!=="All"?eB[h]:null,y=h==="All"?p.length:p.filter(v=>v.aiClassification===h).length;return r.jsxs("button",{onClick:()=>l(h),className:`flex items-center gap-1 text-[11px] px-2 py-1 rounded border font-medium transition-all ${o===h?g?`${g.bg} ${g.text} ${g.border}`:"bg-[#D4A843]/15 text-[#D4A843] border-[#D4A843]/30":"bg-white/3 text-white/40 border-white/8 hover:border-white/18"}`,children:[g&&r.jsx("span",{className:"w-1.5 h-1.5 rounded-full",style:{backgroundColor:g.dot}}),h==="All"?"All":h.replace("AI ","")," ",r.jsx("span",{className:"font-bold",children:y})]},h)})}),r.jsxs("div",{className:"space-y-1",children:[m.map(h=>{const g=c===h.id;return r.jsxs("div",{className:"bg-[#141414] border border-white/6 rounded-lg overflow-hidden",children:[r.jsxs("div",{onClick:()=>d(g?null:h.id),className:"flex items-center gap-3 px-4 py-3 hover:bg-white/[0.02] cursor-pointer transition-colors",children:[r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[r.jsx("span",{className:"text-[11px] font-semibold text-white/85 truncate",children:h.companyName}),h.website&&r.jsx("a",{href:h.website,target:"_blank",rel:"nofollow noopener noreferrer",onClick:y=>y.stopPropagation(),className:"text-[11px] text-white/35 hover:text-[#D4A843] transition-colors shrink-0",children:"↗"})]}),r.jsxs("div",{className:"flex items-center gap-1.5 mt-0.5 flex-wrap",children:[h.country&&r.jsxs("span",{className:"text-[11px] text-white/40",children:[$s[h.country]??""," ",h.country]}),h.sector&&r.jsxs("span",{className:"text-[11px] text-white/35",children:["· ",h.sector]}),h.ownershipStage&&r.jsxs("span",{className:"text-[11px] text-white/35",children:["· ",h.ownershipStage]})]})]}),r.jsxs("div",{className:"flex items-center gap-4 shrink-0",children:[r.jsxs("div",{className:"hidden sm:flex flex-col items-end gap-1",children:[r.jsx(Jc,{value:h.peAiAttractiveness,color:"#22c55e"}),r.jsx(Jc,{value:h.aiExposureRisk,color:"#f87171"}),r.jsx(Jc,{value:h.aiValueCreation,color:"#D4A843"})]}),r.jsxs("div",{className:"hidden md:flex flex-col items-end gap-1",children:[r.jsx(Jc,{value:h.moatDefensibility,color:"#34d399"}),r.jsx(Jc,{value:h.dataAdvantage,color:"#818cf8"})]}),r.jsx(l1e,{cls:h.aiClassification}),r.jsx("span",{className:"text-white/35 text-sm",children:g?"▴":"▾"})]})]}),g&&r.jsxs("div",{className:"px-4 pb-4 bg-[#111111] border-t border-white/5",children:[r.jsx("div",{className:"grid grid-cols-3 gap-3 mt-3",children:[{label:"PE AI Attractiveness",value:h.peAiAttractiveness,color:"#22c55e"},{label:"AI Value Creation",value:h.aiValueCreation,color:"#D4A843"},{label:"AI Exposure Risk",value:h.aiExposureRisk,color:"#f87171"},{label:"Moat Defensibility",value:h.moatDefensibility,color:"#34d399"},{label:"Data Advantage",value:h.dataAdvantage,color:"#818cf8"},{label:"AI Opportunity",value:h.aiOpportunity,color:"#60a5fa"}].map(y=>r.jsxs("div",{className:"bg-[#0d0d0d] rounded-lg px-3 py-2.5",children:[r.jsx("div",{className:"text-[11px] text-white/40 mb-1",children:y.label}),r.jsx("div",{className:"text-xl font-bold mb-1.5",style:{color:y.color},children:y.value??"—"}),r.jsx("div",{className:"h-1 bg-white/6 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${y.value??0}%`,backgroundColor:y.color}})})]},y.label))}),r.jsxs("div",{className:"flex items-center gap-4 mt-3 text-[11px] text-white/35",children:[r.jsxs("span",{children:["Method: ",r.jsx("span",{className:"text-white/40",children:h.scoringMethod})]}),r.jsxs("span",{children:["Confidence: ",r.jsxs("span",{className:"text-white/40",children:[h.confidenceScore,"/100"]})]}),h.subSector&&r.jsxs("span",{children:["Sub-sector: ",r.jsx("span",{className:"text-white/40",children:h.subSector})]})]})]})]}
567,h.id)}),m.length===0&&r.jsx("div",{className:"text-center py-8 text-[11px] text-white/40",children:"No companies match this filter"})]})]})]}),r.jsxs("div",{className:"px-6 py-3 border-t border-white/6 bg-[#0A0A0A] shrink-0 flex items-center justify-between",children:[r.jsx("span",{className:"text-[11px] text-white/35",children:"AI Exposure Framework v1.0 · Capital Intelligence v2.1"}),r.jsx("button",{onClick:i,className:"text-xs text-white/40 hover:text-white/50 transition-colors",children:"✕ Close"})]})]})]})}function bo({title:e,subtitle:t,data:n,valueKey:i,color:a,format:s="score",onSelect:o}){const l=[...n].sort((d,u)=>u[i]-d[i]),c=d=>s==="pct"?`${d}%`:String(d);return r.jsxs("div",{className:"bg-[#141414] border border-white/8 rounded-xl overflow-hidden",children:[r.jsxs("div",{className:"px-5 py-4 border-b border-white/6",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest mb-1",style:{color:a},children:t}),r.jsx("div",{className:"text-sm font-semibold text-white/85",children:e})]}),r.jsx("div",{className:"divide-y divide-white/[0.04]",children:l.map((d,u)=>r.jsxs("div",{onClick:()=>o(d),className:"flex items-center gap-3 px-5 py-3 hover:bg-white/[0.025] transition-colors cursor-pointer group",children:[r.jsx("div",{className:"w-6 flex justify-center shrink-0",children:r.jsx(d1e,{rank:u+1})}),r.jsxs("div",{className:"flex-1 min-w-0",children:[r.jsxs("div",{className:"text-[11px] font-medium text-white/80 truncate group-hover:text-white/95 transition-colors",children:[$s[d.managerCountry??""]&&r.jsx("span",{className:"mr-1",children:$s[d.managerCountry]}),tB(d.managerName)]}),r.jsxs("div",{className:"text-[11px] text-white/40 mt-0.5",children:[d.totalCompanies," companies"]})]}),r.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[r.jsx("div",{className:"w-16 h-1 bg-white/6 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.min(100,d[i])}%`,backgroundColor:a}})}),r.jsx("span",{className:"text-[11px] font-bold font-mono w-8 text-right",style:{color:a},children:c(d[i])}),r.jsx("span",{className:"text-white/10 group-hover:text-white/50 transition-colors text-xs",children:"→"})]})]},d.fundManagerId))})]})}function p1e({m:e,rank:t,onSelect:n}){const i=e.aiWinners>=e.aiTransformers&&e.aiWinners>=e.aiExposed?{label:"AI Winner–Led",color:"#22c55e"}:e.aiTransformers>=e.aiExposed?{label:"AI Transformer–Led",color:"#38bdf8"}:{label:"AI Exposed–Led",color:"#fbbf24"};return r.jsxs("div",{onClick:n,className:"bg-[#141414] border border-white/8 rounded-xl overflow-hidden hover:border-white/22 hover:bg-[#161616] transition-all cursor-pointer group",children:[r.jsxs("div",{className:"px-5 py-4 flex items-start justify-between gap-3",children:[r.jsxs("div",{className:"flex items-center gap-3 min-w-0",children:[r.jsx("div",{className:"w-7 h-7 rounded-lg bg-[#0f0f0f] border border-white/8 flex items-center justify-center shrink-0",children:r.jsxs("span",{className:"text-[10px] font-bold text-white/40",children:["#",t]})}),r.jsxs("div",{className:"min-w-0",children:[r.jsxs("div",{className:"text-sm font-semibold text-white/85 truncate group-hover:text-white transition-colors",children:[$s[e.managerCountry??""]&&r.jsx("span",{className:"mr-1.5",children:$s[e.managerCountry]}),tB(e.managerName)]}),r.jsxs("div",{className:"flex items-center gap-2 mt-0.5 flex-wrap",children:[e.managerTier&&r.jsxs("span",{className:"text-[11px] font-bold px-1.5 py-px rounded border border-[#D4A843]/30 text-[#D4A843] bg-[#D4A843]/8",children:["T",e.managerTier]}),r.jsxs("span",{className:"text-[11px] text-white/40",children:[e.totalCompanies," cos"]}),r.jsx("span",{className:"text-[11px] px-1.5 py-px rounded",style:{backgroundColor:`${i.color}14`,color:i.color},children:i.label})]})]})]}),r.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[r.jsxs("div",{className:"text-right",children:[r.jsx("div",{className:"text-2xl font-bold text-[#22c55e]",children:e.avgPeAiAttractiveness}),r.jsx("div",{className:"text-[11px] text-white/35 mt-0.5",children:"PE AI Attr."})]}),r.jsx("span",{className:"text-white/35 group-hover:text-white/40 transition-colors text-lg mt-0.5",children:"→"})]})]}),r.jsxs("div",{className:"px-5 pb-4 space-y-2",children:[r.jsx(Py,{value:e.avgPeAiAttractiveness,color:"#22c55e"}),r.jsx(Py,{value:e.avgAiValueCreation,color:"#D4A843"}),r.jsx(Py,{value:e.avgAiExposureRisk,color:"#f87171"})]}),r.jsxs("div",{className:"px-5 py-3 border-t border-white/5 bg-[#111111]",children:[r.jsx("div",{className:"grid grid-cols-3 gap-2 mb-2",children:[{label:"Winners",count:e.aiWinners,ratio:e.winnerRatio,color:"#22c55e"},{label:"Transformers",count:e.aiTransformers,ratio:e.transformerRatio,color:"#38bdf8"},{label:"Exposed",count:e.aiExposed,ratio:e.exposureRatio,color:"#fbbf24"}].map(a=>r.jsxs("div",{className:"text-center",children:[r.jsx("div",{className:"text-[11px] text-white/35 mb-0.5",children:a.label}),r.jsx("div",{className:"text-base font-bold",style:{color:a.color},children:a.count}),r.jsx(c1e,{value:a.ratio,color:a.color})]},a.label))}),r.jsx("div",{className:"h-1.5 rounded-full overflow-hidden flex gap-px",children:[{n:e.aiWinners,c:"#22c55e"},{n:e.aiTransformers,c:"#38bdf8"},{n:e.aiDefensibles,c:"#a78bfa"},{n:e.aiExposed,c:"#fbbf24"},{n:e.aiTurnaround,c:"#fb923c"},{n:e.aiLegacy,c:"#f87171"}].filter(a=>a.n>0).map((a,s)=>r.jsx("div",{className:"h-full rounded-sm",style:{width:`${Math.round(a.n/e.totalCompanies*100)}%`,backgroundColor:a.c}},s))}),r.jsx("div",{className:"mt-2 text-[11px] text-white/35 group-hover:text-white/50 transition-colors text-right",children:"Click to view portfolio →"})]})]})}function m1e(){const[e,t]=j.useState(null),{data:n=[],isLoading:i}=We({queryKey:["/api/admin/capital-intelligence/fund-intelligence"],queryFn:()=>fetch("/api/admin/capital-intelligence/fund-intelligence").then(x=>x.json()),staleTime:3e4}),{data:a=[]}=We({queryKey:["/api/admin/capital-intelligence/portfolio-scores"],queryFn:()=>fetch("/api/admin/capital-intelligence/portfolio-scores").then(x=>x.json()),staleTime:3e4}),{data:s=[]}=We({queryKey:["/api/admin/capital-intelligence/funds"],queryFn:()=>fetch("/api/admin/capital-intelligence/funds").then(x=>x.json()),staleTime:3e4}),o=[...n].sort((x,h)=>h.avgPeAiAttractiveness-x.avgPeAiAttractiveness),l=n.reduce((x,h)=>x+h.totalCompanies,0),c=n.reduce((x,h)=>x+h.aiWinners,0),d=n.reduce((x,h)=>x+h.aiTransformers,0),u=n.reduce((x,h)=>x+h.aiExposed,0),p=n.length?Math.round(n.reduce((x,h)=>
567x+h.avgPeAiAttractiveness,0)/n.length):0,m=n.length?Math.round(n.reduce((x,h)=>x+h.avgAiExposureRisk,0)/n.length):0,f=n.length?Math.round(n.reduce((x,h)=>x+h.avgAiValueCreation,0)/n.length):0;return r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A] text-white",children:[r.jsx("div",{className:"border-b border-white/8 bg-[#0A0A0A] sticky top-0 z-10",children:r.jsx("div",{className:"max-w-7xl mx-auto px-6 py-4",children:r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx(de,{href:"/admin/capital-intelligence",children:r.jsx("span",{className:"text-xs text-white/40 hover:text-white/50 transition-colors cursor-pointer",children:"← Capital Intelligence"})}),r.jsx("span",{className:"text-white/35",children:"·"}),r.jsx("span",{className:"text-xs text-white/50 uppercase tracking-widest",children:"Fund Intelligence v2.1"})]}),r.jsx("div",{className:"text-xs text-white/35 uppercase tracking-widest",children:"INTERNAL ADMIN · NOT FOR DISTRIBUTION"})]})})}),r.jsxs("div",{className:"max-w-7xl mx-auto px-6 py-8",children:[r.jsxs("div",{className:"mb-8",children:[r.jsxs("h1",{className:"text-3xl font-bold tracking-tight text-white",children:["Fund Intelligence"," ",r.jsx("span",{className:"text-[13px] font-normal text-white/50 tracking-widest uppercase ml-2 align-middle",children:"AI PORTFOLIO ANALYTICS"})]}),r.jsxs("p",{className:"text-sm text-white/50 mt-2",children:["AI Exposure Framework v1.0 · ",n.length," fund managers · ",l," portfolio companies"," · ",r.jsx("span",{className:"text-white/35",children:"click any card to drill down"})]})]}),i?r.jsx("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-4 mb-8",children:[...Array(4)].map((x,h)=>r.jsx("div",{className:"h-24 bg-[#141414] rounded-xl animate-pulse"},h))}):n.length===0?r.jsxs("div",{className:"bg-[#141414] border border-white/8 rounded-xl p-16 text-center",children:[r.jsx("div",{className:"text-white/35 text-5xl mb-4",children:"◎"}),r.jsx("p",{className:"text-sm text-white/40 mb-2",children:"No scored data available"}),r.jsx(de,{href:"/admin/capital-intelligence",children:r.jsx("span",{className:"text-xs px-5 py-2.5 bg-[#D4A843] text-black font-semibold rounded cursor-pointer",children:"→ Go to AI Scoring"})})]}):r.jsxs(r.Fragment,{children:[r.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-3 mb-8",children:[{label:"Fund Managers",value:n.length,color:"#D4A843",sub:"with scored portfolio"},{label:"Portfolio Companies",value:l,color:"#fff",sub:"total scored"},{label:"Avg PE Attractiveness",value:p,color:"#22c55e",sub:"cross-portfolio avg"},{label:"Avg Exposure Risk",value:m,color:"#f87171",sub:"cross-portfolio avg"},{label:"Avg Value Creation",value:f,color:"#D4A843",sub:"cross-portfolio avg"},{label:"AI Winners",value:c,color:"#22c55e",sub:`${l?Math.round(c/l*100):0}
567% of portfolio`}].map(x=>r.jsxs("div",{className:"bg-[#141414] border border-white/8 rounded-xl px-4 py-3",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/35 mb-1",children:x.label}),r.jsx("div",{className:"text-2xl font-bold",style:{color:x.color},children:x.value}),r.jsx("div",{className:"text-[11px] text-white/35 mt-0.5",children:x.sub})]},x.label))}),r.jsxs("div",{className:"bg-[#141414] border border-white/8 rounded-xl px-5 py-4 mb-8",children:[r.jsx("div",{className:"text-[11px] uppercase tracking-widest text-white/35 mb-3",children:"Portfolio-Wide Classification Distribution"}),r.jsx("div",{className:"h-3 rounded-full overflow-hidden flex gap-px mb-3",children:[{count:c,color:"#22c55e"},{count:d,color:"#38bdf8"},{count:n.reduce((x,h)=>x+h.aiDefensibles,0),color:"#a78bfa"},{count:u,color:"#fbbf24"},{count:n.reduce((x,h)=>x+h.aiTurnaround,0),color:"#fb923c"},{count:n.reduce((x,h)=>x+h.aiLegacy,0),color:"#f87171"}].map((x,h)=>x.count>0&&r.jsx("div",{className:"h-full transition-all",style:{width:`${Math.round(x.count/l*100)}%`,backgroundColor:x.color}},h))}),r.jsx("div",{className:"flex flex-wrap gap-4",children:[{label:"AI Winner",count:c,color:"#22c55e"},{label:"AI Transformer",count:d,color:"#38bdf8"},{label:"AI Defensible",count:n.reduce((x,h)=>x+h.aiDefensibles,0),color:"#a78bfa"},{label:"AI Exposed",count:u,color:"#fbbf24"},{label:"AI Turnaround Candidate",count:n.reduce((x,h)=>x+h.aiTurnaround,0),color:"#fb923c"},{label:"AI Legacy",count:n.reduce((x,h)=>x+h.aiLegacy,0),color:"#f87171"}].map(x=>r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"w-2 h-2 rounded-full shrink-0",style:{backgroundColor:x.color}}),r.jsx("span",{className:"text-xs text-white/60",children:x.label}),r.jsx("span",{className:"text-[10px] font-bold",style:{color:x.color},children:x.count}),r.jsxs("span",{className:"text-[11px] text-white/35",children:["(",l?Math.round(x.count/l*100):0,"%)"]})]},x.label))})]}),r.jsxs("div",{className:"mb-8",children:[r.jsx("div",{className:"text-xs uppercase tracking-widest text-white/35 mb-4",children:"Rankings · click any row to open drill-down"}),r.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4",children:[r.jsx(bo,{title:"Most AI Attractive Funds",subtitle:"Ranking 1 · PE AI Attractiveness",data:n,valueKey:"avgPeAiAttractiveness",color:"#22c55e",format:"score",onSelect:t}),r.jsx(bo,{title:"Highest AI Value Creation",subtitle:"Ranking 2 · AI Value Creation",data:n,valueKey:"avgAiValueCreation",color:"#D4A843",format:"score",onSelect:t}),r.jsx(bo,{title:"Most AI-Exposed Funds",subtitle:"Ranking 3 · AI Exposure Risk",data:n,valueKey:"avgAiExposureRisk",color:"#f87171",format:"score",onSelect:t}),r.jsx(bo,{title:"Highest Winner Ratio",subtitle:"Ranking 4 · AI Winners / Portfolio",data:n,valueKey:"winnerRatio",color:"#22c55e",format:"pct",onSelect:t}),r.jsx(bo,{title:"Highest Transformer Ratio",subtitle:"Ranking 5 · AI Transformers / Portfolio",data:n,valueKey:"transformerRatio",color:"#38bdf8",format:"pct",onSelect:t}),r.jsx(bo,{title:"Highest Exposure Ratio",subtitle:"Ranking 5b · AI Exposed / Portfolio",data:n,valueKey:"exposureRatio",color:"#fbbf24",format:"pct",onSelect:t})]})]}),r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center justify-between mb-4",children:[r.jsx("div",{className:"text-xs uppercase tracking-widest text-white/35",children:"All Fund Managers — sorted by PE AI Attractiveness"}),r.jsxs("div",{className:"text-xs text-white/35",children:[n.length," managers"]})]}),r.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4",children:o.map((x,h)=>r.jsx(p1e,{m:x,rank:h+1,onSelect:()=>t(x)},x.fundManagerId))})]})]})]}),e&&r.jsx(u1e,{manager:e,scores:a,funds:s,onClose:()=>t(null)})]})}const wo={Software:"⬡","Business Services":"◈","Financial Services":"◆",Healthcare:"♥",Manufacturing:"⚙",Industrial:"⛭",Consumer:"⊛",Media:"▦",Logistics:"◎",Education:"◐",Other:"○"},XS={A:"text-emerald-400","B+":"text-emerald-300",B:"text-amber-400","C+":"text-amber-300",C:"text-orange-400",D:"text-red-400","—":"text-white/40"};function ed({value:e,color:t="#D4A843"}){return e==null?r.jsx("span",{className:"text-white/40",children:"—"}):r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:"w-10 h-1.5 bg-white/10 rounded-full overflow-hidden shrink-0",children:r.jsx("div",{className:"h-full rounded-full",style:{width:`${Math.min(100,e)}%`,backgroundColor:t}})}),r.jsx("span",{className:"tabular-nums text-white/90 font-medium",children:e})]})}function Ty({score:e,label:t}){if(e==null)return null;const n=Math.min(100,e),i=n>=65?"#10b981":n>=45?"#D4A843":"#ef4444";return r.jsxs("div",{className:"flex flex-col gap-1",children:[r.jsxs("div",{className:"flex justify-between text-[11px] text-white/55",children:[r.jsx("span",{children:t}),r.jsx("span",{className:"tabular-nums font-medium text-white/80",children:e})]}),r.jsx("div",{className:"h-1.5 bg-white/10 rounded-full overflow-hidden",children:r.jsx("div",{className:"h-full rounded-full transition-all",style:{width:`${n}%`,backgroundColor:i}})})]})}const h1e=[{name:"Italy",flag:"🇮🇹",status:"live"},{name:"United Kingdom",flag:"🇬🇧",status:"live"},{name:"DACH",flag:"🇩🇪",status:"planned"},{name:"France",flag:"🇫🇷",status:"planned"},{name:"Nordics",flag:"🇸🇪",status:"planned"}],ZS=[{id:"opportunity",name:"AI Opportunity",color:"#10b981",desc:"Measures the potential for AI to create incremental value: revenue expansion, cost reduction, and new product lines enabled by AI deployment within the sector."},{id:"risk",name:"AI Risk",color:"#ef4444",desc:"Captures the probability and severity of AI-related downside risk including model risk, data governance failures, and regulatory exposure."},{id:"readiness",name:"AI Readiness",color:"#D4A843",desc:"Evaluates the organisational and technical preparedness to adopt AI at scale: data infrastru
567cture, talent availability, and legacy system constraints."},{id:"execution",name:"AI Execution",color:"#a78bfa",desc:"Assesses management capability to translate AI investment into measurable operating model improvements within a 24–36 month PE holding period."},{id:"disruption",name:"AI Disruption Exposure",color:"#f97316",desc:"Quantifies how exposed the sector is to competitive displacement by AI-native entrants or incumbents with AI structural advantages."}];function f1e(){const[e,t]=j.useState("overall"),[n,i]=j.useState(!1),[a,s]=j.useState(!1),{data:o,isLoading:l,isError:c}=We({queryKey:["/api/ai-exposure-index"],queryFn:()=>fetch("/api/ai-exposure-index").then(g=>g.json()),staleTime:5*60*1e3}),d=j.useMemo(()=>o!=null&&o.sectors?[...o.sectors].sort((g,y)=>{const v=e==="sector"?g.sector:g[e]??-1,b=e==="sector"?y.sector:y[e]??-1;return typeof v=="string"&&typeof b=="string"?n?v.localeCompare(b):b.localeCompare(v):n?v-b:b-v}):[],[o,e,n]);function u(g){e===g?i(y=>!y):(t(g),i(!1))}const p=({colKey:g,label:y})=>r.jsxs("th",{className:"text-left py-3 px-4 text-[10px] uppercase tracking-widest text-white/50 cursor-pointer hover:text-[#D4A843] transition-colors select-none whitespace-nowrap",onClick:()=>u(g),children:[y,e===g?n?" ↑":" ↓":""]}),m=new Intl.DateTimeFormat("en-GB",{day:"numeric",month:"long",year:"numeric"}),f=55,x=45,h=j.useMemo(()=>{if(!(o!=null&&o.sectors))return{q1:[],q2:[],q3:[],q4:[]};const g=[],y=[],v=[],b=[];for(const A of o.sectors){if(A.opportunity==null||A.disruption==null)continue;const w=A.opportunity>=f,k=A.disruption>=x;w&&!k?g.push(A):w&&k?y.push(A):!w&&!k?v.push(A):b.push(A)}return{q1:g,q2:y,q3:v,q4:b}},[o]);return r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A] text-white",children:[r.jsx(Xe,{title:gh["/ai-exposure-index"].title,description:gh["/ai-exposure-index"].description,canonicalUrl:"/ai-exposure-index"}),r.jsxs("section",{className:"relative overflow-hidden border-b border-white/8",children:[r.jsxs("div",{className:"absolute inset-0 pointer-events-none",children:[r.jsx("div",{className:"absolute inset-0 bg-[radial-gradient(ellipse_at_30%_40%,rgba(196,151,58,0.07)_0%,transparent_65%)]"}),r.jsx("div",{className:"absolute top-0 left-0 w-full h-px bg-gradient-to-r from-transparent via-[#D4A843]/20 to-transparent"})]}),r.jsxs("div",{className:"max-w-screen-lg mx-auto px-6 pt-20 pb-16 relative",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-4",children:"AI Exposure Index · Independent Intelligence · Private Capital"}),r.jsxs("h1",{className:"text-4xl md:text-5xl font-semibold tracking-tight leading-tight mb-4",children:["The AI Exposure Index",r.jsx("br",{}),r.jsx("span",{className:"text-[#D4A843]",children:"for Private Capital"})]}),r.jsx("p",{className:"text-sm text-white/50 mb-5",children:"Independent sector-level intelligence derived from the PrivateEquity.ai AI Exposure Database."}),r.jsx("p",{className:"text-lg text-white/75 max-w-2xl leading-relaxed mb-6",children:"A sector-level intelligence benchmark tracking where AI creates opportunity, where it creates disruption risk, and where private equity investors should pay attention."}),o&&r.jsx("div",{className:"flex flex-wrap gap-4 mb-8 py-4 border-y border-white/8",children:[{label:"Companies Tracked",value:o.summary.totalCompanies},{label:"Countries Covered",value:o.summary.countries},{label:"Sectors Covered",value:o.summary.sectors},{label:"Records Scored",value:o.summary.scored},{label:"Validated Records",value:o.summary.validated}].map(g=>r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-lg font-semibold tabular-nums text-white",children:g.value}),r.jsx("span",{className:"text-[11px] text-white/50 uppercase tracking-wide",children:g.label})]},g.label))}),r.jsxs("div",{className:"flex items-center gap-4 flex-wrap",children:[r.jsx("button",{onClick:()=>s(!0),className:"px-5 py-2.5 border border-[#D4A843]/40 hover:border-[#D4A843] text-[#D4A843] text-sm font-medium rounded transition-colors",children:"View Methodology"}),r.jsx("a",{href:"#sector-intelligence",className:"px-5 py-2.5 border border-white/15 hover:border-white/30 text-white/50 hover:text-white/80 text-sm rounded transition-colors",children:"Explore Sectors ↓"})]}),o&&r.jsxs("div",{className:"mt-10 text-[10px] text-white/40 font-mono",children:["Last updated · ",m.format(new Date(o.generatedAt))," · ",o.summary.totalCompanies," companies analysed"]})]})]}),r.jsxs("div",{className:"max-w-screen-lg mx-auto px-6 py-14 space-y-20",children:[r.jsxs("section",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-6",children:"Executive Summary"}
567),l?r.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-5 gap-3 mb-10",children:[...Array(5)].map((g,y)=>r.jsx("div",{className:"bg-[#111] border border-white/8 rounded-xl p-4 animate-pulse h-20"},y))}):o&&r.jsx("div",{className:"grid grid-cols-2 sm:grid-cols-5 gap-3 mb-10",children:[{label:"Companies Analysed",value:o.summary.totalCompanies},{label:"Countries Covered",value:o.summary.countries},{label:"Sectors Covered",value:o.summary.sectors},{label:"Records Scored",value:o.summary.scored},{label:"Records Validated",value:o.summary.validated}].map(g=>r.jsxs("div",{className:"bg-[#111] border border-white/8 rounded-xl p-4",children:[r.jsx("div",{className:"text-2xl font-semibold tabular-nums",children:g.value}),r.jsx("div",{className:"text-[11px] text-white/50 mt-1 uppercase tracking-wide",children:g.label})]},g.label))}),o&&r.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4",children:[{label:"Highest AI Opportunity Sector",color:"#10b981",dot:"bg-emerald-400",insight:o.insights.highestOpportunity},{label:"Highest AI Disruption Sector",color:"#ef4444",dot:"bg-red-400",insight:o.insights.highestDisruption},{label:"Highest AI Readiness Sector",color:"#D4A843",dot:"bg-amber-400",insight:o.insights.highestReadiness},{label:"Most Attractive PE Sector",color:"#a78bfa",dot:"bg-violet-400",insight:o.insights.mostAttractive},{label:"Highest Risk Sector",color:"#f97316",dot:"bg-orange-400",insight:o.insights.highestRisk}].map(g=>r.jsxs("div",{className:"bg-[#111] border border-white/8 rounded-xl p-4 flex flex-col gap-2",children:[r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("div",{className:`w-1.5 h-1.5 rounded-full ${g.dot} shrink-0`}),r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/50",children:g.label})]}),r.jsx("div",{className:"text-lg font-semibold",style:{color:g.color},children:g.insight.sector}),g.insight.score!=null&&r.jsxs("div",{className:"text-xs text-white/50 tabular-nums font-medium",children:["Score ",g.insight.score,"/100"]})]},g.label))})]}),r.jsxs("section",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-2",children:"Sector Rankings"}),r.jsxs("p",{className:"text-sm text-white/55 mb-6",children:["Aggregated sector scores derived from ",(o==null?void 0:o.summary.scored)??"—"," scored companies. Click column headers to sort. Individual company data is not disclosed."]}),l?r.jsx("div",{className:"bg-[#111] border border-white/8 rounded-xl p-6 animate-pulse h-64"}):c?r.jsx("div",{className:"text-sm text-red-400 bg-red-900/15 border border-red-600/20 rounded-xl p-4",children:"Failed to load ranking data."}):r.jsxs("div",{className:"bg-[#111] border border-white/8 rounded-xl overflow-hidden",children:[r.jsx("div",{className:"overflow-x-auto",children:r.jsxs("table",{className:"w-full text-xs",children:[r.jsx("thead",{children:r.jsxs("tr",{className:"border-b border-white/8",children:[r.jsx(p,{colKey:"sector",label:"Sector"}),r.jsx(p,{colKey:"opportunity",label:"AI Opportunity"}),r.jsxs("th",{className:"hidden sm:table-cell text-left py-3 px-4 text-[10px] uppercase tracking-widest text-white/50 whitespace-nowrap cursor-pointer hover:text-[#D4A843] transition-colors select-none",onClick:()=>u("readiness"),children:["AI Readiness",e==="readiness"?n?" ↑":" ↓":""]}),r.jsxs("th",{className:"hidden sm:table-cell text-left py-3 px-4 text-[10px] uppercase tracking-widest text-white/50 whitespace-nowrap cursor-pointer hover:text-[#D4A843] transition-colors select-none",onClick:()=>u("execution"),children:["AI Execution",e==="execution"?n?" ↑":" ↓":""]}),r.jsx(p,{colKey:"disruption",label:"AI Disruption"}),r.jsx(p,{colKey:"overall",label:"Score"}),r.jsx("th",{className:"text-left py-3 px-4 text-[10px] uppercase tracking-widest text-white/50 whitespace-nowrap",children:"Rating"})]})}),r.jsx("tbody",{children:d.map((g,y)=>r.jsxs("tr",{className:`border-b border-white/5 hover:bg-white/3 transition-colors ${y%2===0?"":"bg-white/1"}`,children:[r.jsx("td",{className:"py-3 px-4",children:r.jsxs("div",{className:"flex items-center gap-2",children:[r.jsx("span",{className:"text-[#D4A843]/60 text-base",children:wo[g.sector]??"○"}),r.jsxs("div",{children:[r.jsx("div",{className:"font-medium text-white",children:g.sector}),r.jsxs("div",{className:"text-[10px] text-white/40",children:[g.companyCount," cos."]})]})]})}),r.jsx("td",{className:"py-3 px-4",children:r.jsx(ed,{value:g.opportunity,color:"#10b981"})}),r.jsx("td",{className:"hidden sm:table-cell py-3 px-4",children:r.jsx(ed,{value:g.readiness,color:"#D4A843"})}),r.jsx("td",{className:"hidden sm:table-cell py-3 px-4",children:r.jsx(ed,{value:g.execution,color:"#a78bfa"})}),r.jsx("td",{className:"py-3 px-4",children:r.jsx(ed,{value:g.disruption,color:"#ef4444"})}),r.jsx("td",{className:"py-3 px-4",children:r.jsx(ed,{value:g.overall})}),r.jsx("td",{className:"py-3 px-4",children:r.jsx("span",{className:`font-semibold text-sm ${XS[g.rating]??"text-white/50"}`,children:g.rating})})]},g.sector))})]})}),r.jsxs("div",{className:"px-4 py-3 border-t border-white/5 flex items-center justify-between flex-wrap gap-2",children:[r.jsx("span",{className:"text-[10px] text-white/35",children:"Sector-level averages · No individual company data disclosed · Research purposes only"}),r.jsx("span",{className:"text-[10px] text-white/35 sm:hidden",children:"Readiness & Execution visible on larger screens"})]})]})]}),r.jsxs("section",{id:"sector-intelligence",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-2",children:"Sector Intelligence"}),r.jsx("p",{className:"text-sm text-white/55 mb-6",children:"Sector-level AI thesis derived from structural analysis of each archetype's operating model, competitive dynamics, and AI adoption trajectory."}),l?r.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[...Array(6)].map((g,y)=>r.jsx("div",{className:"bg-[#111] border border-white/8 rounded-xl p-5 animate-pulse h-40"},y))}):r.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:((o==null?void 0:o.sectors)??[]).filter(g=>g.thesis).map(g=>r.jsxs("div",{className:"bg-[#111] border border-white/8 hover:border-[#D4A843]/20 rounded-xl p-5 transition-colors",children:[r.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[r.jsx("span",{className:"text-[#D4A843]/60 text-base",children:wo[g.sector]??"○"}),r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-medium text-white",children:g.sector}),r.jsxs("div",{className:"text-[10px] text-white/60",children:[g.companyCount," companies"]})]}),r.jsx("div",{className:"ml-auto",children:r.jsx("span",{className:`text-xs font-semibold ${XS[g.rating]??"text-white/40"}`,children:g.rating})})]}),r.jsx("p",{className:"text-xs text-white/65 leading-relaxed mb-4",children:g.thesis}),r.jsxs("div",{className:"space-y-1.5",children:[r.jsx(Ty,{score:g.opportunity,label:"AI Opportunity"}),r.jsx(Ty,{score:g.disruption,label:"AI Disruption"}),r.jsx(Ty,{score:g.readiness,label:"AI Readiness"})]})]},g.sector))})]}),r.jsxs("section",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-2",children:"AI Opportunity–Disruption Matrix"}),r.jsx("p",{className:"text-sm text-white/50 mb-6",children:"Sectors plotted by aggregate AI Opportunity score (y-axis) vs AI Disruption Exposure (x-axis). Quadrants derived from dataset median thresholds."}),r.jsxs("div",{className:"grid grid-cols-2 gap-px bg-white/8 rounded-xl overflow-hidden border border-white/8",children:[r.jsxs("div",{className:"bg-[#0d0d0d] p-4 sm:p-5 min-h-[160px]",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-emerald-400/60 mb-1 leading-tight",children:"High Opp · Low Risk"}),r.jsx("div",{className:"text-[10px] text-white/35 mb-3",children:"Attractive entry"}),l?r.jsx("div",{className:"animate-pulse h-8 bg-white/5 rounded"}):r.jsxs("div",{className:"space-y-1",children:[h.q1.map(g=>r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"text-[#D4A843]/40 text-xs",children:wo[g.sector]??"○"}),r.jsx("span",{className:"text-xs text-white/60",children:g.sector})]},g.sector)),h.q1.length===0&&r.jsx("span",{className:"text-[10px] text-white/35",children:"No sectors in quadrant"})]})]}),r.jsxs("div",{className:"bg-[#0d0d0d] p-4 sm:p-5 min-h-[160px]",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-amber-400/60 mb-1 leading-tight",children:"High Opp · High Risk"}),r.jsx("div",{className:"text-[10px] text-white/35 mb-3",children:"High conviction + risk"}),l?r.jsx("div",{className:"animate-pulse h-8 bg-white/5 rounded"}):r.jsxs("div",{className:"space-y-1",children:[h.q2.map(g=>r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"text-[#D4A843]/40 text-xs",children:wo[g.sector]??"○"}),r.jsx("span",{className:"text-xs text-white/60",children:g.sector})]},g.sector)),h.q2.length===0&&r.jsx("span",{className:"text-[10px] text-white/35",children:"No sectors in quadrant"})]})]}),r.jsxs("div",{className:"bg-[#0d0d0d] p-4 sm:p-5 min-h-[160px]",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-blue-400/60 mb-1 leading-tight",children:"Low Opp · Low Risk"}),r.jsx("div",{className:"text-[10px] text-white/35 mb-3",children:"Stable, low AI delta"}),l?r.jsx("div",{className:"animate-pulse h-8 bg-white/5 rounded"}):r.jsxs("div",{className:"space-y-1",children:[h.q3.map(g=>r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"text-[#D4A843]/40 text-xs",children:wo[g.sector]??"○"}),r.jsx("span",{className:"text-xs text-white/60",children:g.sector})]},g.sector)),h.q3.length===0&&r.jsx("span",{className:"text-[10px] text-white/35",children:"No sectors in quadrant"})]})]}),r.jsxs("div",{className:"bg-[#0d0d0d] p-4 sm:p-5 min-h-[160px]",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-red-400/60 mb-1 leading-tight",children:"Low Opp · High Risk"}),r.jsx("div",{className:"text-[10px] text-white/35 mb-3",children:"Structural caution"}),l?r.jsx("div",{className:"animate-pulse h-8 bg-white/5 rounded"}):r.jsxs("div",{className:"space-y-1",children:[h.q4.map(g=>r.jsxs("div",{className:"flex items-center gap-1.5",children:[r.jsx("span",{className:"text-[#D4A843]/40 text-xs",children:wo[g.sector]??"○"}),r.jsx("span",{className:"text-xs text-white/60",children:g.sector})]},g.sector)),h.q4.length===0&&r.jsx("span",{className:"text-[10px] text-white/35",children:"No sectors in quadrant"})]})]})]}),r.jsxs("div",{className:"mt-2 text-xs text-white/40 text-right",children:["Quadrant thresholds: Opportunity median ",f," · Disruption median ",x]})]}),r.jsxs("section",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-2",children:"Methodology"}),r.jsx("p",{className:"text-sm text-white/55 mb-6",children:"The AI Exposure Index applies a five-dimension scoring framework calibrated to private equity deal evaluation criteria."}),r.jsx("div",{className:"space-y-3 mb-8",children:ZS.map(g=>r.jsxs("div",{className:"bg-[#111] border border-white/8 rounded-xl p-5 flex gap-4",children:[r.jsx("div",{className:"w-1 rounded-full shrink-0 self-stretch",style:{backgroundColor:g.color}}),r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-medium mb-1",style:{color:g.color},children:g.name}),r.jsx("p",{className:"text-xs text-white/60 leading-relaxed",children:g.desc})]})]},g.id))}),r.jsxs("div",{className:"bg-[#111] border border-white/8 rounded-xl p-5 space-y-3",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/60 mb-3",children:"Score Derivation"}),["Sector archetypes — baseline priors derived from structural sector analysis","Company attributes — revenue range, employee count, EBITDA profile","Deal characteristics — buyout, growth equity, or secondary transaction type","Validated analyst review — human-in-the-loop score confirmation where applied"].map(g=>r.jsxs("div",{className:"flex items-start gap-2",children:[r.jsx("div",{className:"w-1 h-1 rounded-full bg-[#D4A843]/50 mt-1.5 shrink-0"}),r.jsx("p",{className:"text-xs text-white/60",children:g})]},g))]}),r.jsx("div",{className:"mt-4 bg-[#0f0f0f] border border-white/6 rounded-lg px-4 py-3",children:r.jsx("p",{className:"text-[10px] text-white/40 leading-relaxed",children:"The AI Exposure Index is an independent research product and does not constitute investment advice. Scores represent analytical assessments for research purposes only. Past sector performance does not indicate future AI adoption outcomes."})}),r.jsx("div",{className:"mt-3 bg-[#0f0f0f] border border-white/6 rounded-lg px-4 py-3",children:r.jsx("p",{className:"text-[10px] text-white/40 leading-relaxed",children:"This index may include analysis produced with the support of third-party language models and subject to editorial or human review. It is provided for informational and research purposes only."})}),r.jsx("div",{className:"mt-2 text-right",children:r.jsx("a",{href:"/methodology",className:"text-[10px] text-[#D4A843] hover:underline tracking-wide",children:"View Methodology →"})})]}),r.jsxs("section",{children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-2",children:"Coverage Expansion"}),r.jsx("p",{className:"text-sm text-white/50 mb-6",children:"Coverage expansion in progress."}),r.jsx("div",{className:"flex flex-wrap gap-3",children:h1e.map(g=>r.jsxs("div",{className:`flex items-center gap-2 px-4 py-2.5 rounded-lg border text-sm transition-colors ${g.status==="live"?"border-[#D4A843]/30 bg-[#D4A843]/5 text-white/70":"border-white/8 bg-[#111] text-white/50"}`,children:[r.jsx("span",{className:"text-base",children:g.flag}),r.jsx("span",{children:g.name}),g.status==="live"?r.jsx("span",{className:"text-[11px] uppercase tracking-widest text-[#D4A843]",children:"Live"}):r.jsx("span",{className:"text-[11px] uppercase tracking-widest text-white/40",children:"Planned"})]},g.name))})]}),r.jsxs("section",{className:"border border-white/10 rounded-2xl p-5 sm:p-8 bg-[#0d0d0d] relative overflow-hidden",children:[r.jsx("div",{className:"absolute inset-0 pointer-events-none bg-[radial-gradient(ellipse_at_50%_0%,rgba(196,151,58,0.05)_0%,transparent_60%)]"}),r.jsxs("div",{className:"relative",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-3",children:"AI Due Diligence"}),r.jsx("h2",{className:"text-2xl font-semibold tracking-tight mb-3",children:"Need AI Due Diligence on a Specific Company?"}),r.jsx("p",{className:"text-sm text-white/60 mb-7 max-w-xl",children:"The AI Exposure Index covers sector-level intelligence. For company-specific due diligence — including AI Upside Assessment, Risk Score, and Readiness Review — use the tools below."}),r.jsxs("div",{className:"flex flex-wrap gap-3",children:[r.jsx("a",{href:"/ai-diligence-score",className:"px-5 py-2.5 bg-[#D4A843] hover:bg-[#b8883a] text-black text-sm font-semibold rounded transition-colors",children:"Run AI Diligence Score"}),r.jsx("a",{href:"/blacktrace-diagnostic",className:"px-5 py-2.5 border border-white/15 hover:border-[#D4A843]/40 text-white/60 hover:text-white/90 text-sm rounded transition-colors",children:"Request a Diagnostic Review"})]})]})]})]}),r.jsx("div",{className:"border-t border-white/6 py-8",children:r.jsxs("div",{className:"max-w-screen-lg mx-auto px-6 space-y-3",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-white/35 text-center mb-3",children:"Index Methodology"}),r.jsx("p",{className:"text-[10px] text-white/35 text-center leading-relaxed max-w-2xl mx-auto",children:"The AI Exposure Index is calculated using index-eligible records from the Core PE Intelligence Dataset. Expansion records are used for c
567overage development and are excluded from benchmark calculations until reviewed."}),r.jsx("p",{className:"text-[10px] text-white/35 text-center",children:"AI Exposure Index · Independent Research · Not Investment Advice · privatequity.ai"}),r.jsxs("p",{className:"text-[10px] text-white/30 text-center mt-1",children:["Analytical content on this index may include outputs produced with the support of third-party language models, subject to editorial review. See ",r.jsx("a",{href:"/ai-transparency",className:"underline hover:text-white/50 transition-colors",children:"AI Transparency"})," for details."]})]})}),a&&r.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center p-4",children:[r.jsx("div",{className:"absolute inset-0 bg-black/70 backdrop-blur-sm",onClick:()=>s(!1)}),r.jsxs("div",{className:"relative bg-[#111] border border-white/12 rounded-2xl p-7 max-w-lg w-full max-h-[80vh] overflow-y-auto",children:[r.jsxs("div",{className:"flex justify-between items-center mb-5",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843]",children:"Methodology"}),r.jsx("button",{onClick:()=>s(!1),className:"text-white/50 hover:text-white/70 text-lg transition-colors",children:"✕"})]}),r.jsx("h3",{className:"text-lg font-semibold mb-4",children:"AI Exposure Scoring Framework"}),r.jsx("div",{className:"space-y-4 mb-6",children:ZS.map(g=>r.jsxs("div",{className:"flex gap-3",children:[r.jsx("div",{className:"w-0.5 rounded-full shrink-0 self-stretch",style:{backgroundColor:g.color}}),r.jsxs("div",{children:[r.jsx("div",{className:"text-sm font-medium mb-0.5",style:{color:g.color},children:g.name}),r.jsx("p",{className:"text-xs text-white/60 leading-relaxed",children:g.desc})]})]},g.id))}),r.jsx("div",{className:"bg-[#0d0d0d] border border-white/8 rounded-lg p-4",children:r.jsx("p",{className:"text-[10px] text-white/50 leading-relaxed",children:"Composite score: Opportunity × 0.25 + (100 − Risk) × 0.20 + Readiness × 0.15 + Execution × 0.15 + (100 − Disruption) × 0.25. Scores are sector-archetype priors adjusted for company-level attributes and validated where analyst review has been applied."})}),r.jsx("div",{className:"mt-4 text-[10px] text-white/35 leading-relaxed",children:"The AI Exposure Index is an independent research product and does not constitute investment advice."})]})]})]})}const g1e="#D4A843",x1e=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"AI Tool Finder — PrivateEquity.AI",description:"Find the right AI tools, GitHub projects, and frameworks for your business challenge. Curated by PrivateEquity.AI."}),r.jsx("section",{className:"relative pt-28 pb-16 md:pt-36 md:pb-20",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.10) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl text-center",children:[r.jsx("p",{className:"text-xs tracking-widest uppercase font-semibold mb-4",style:{color:g1e},children:"AI Solution Navigator"}),r.jsxs("h1",{className:"text-3xl md:text-5xl font-light text-white mb-5 tracking-tight leading-tight",children:["Find the right AI tools",r.jsx("br",{className:"hidden md:block"})," for your business challenge."]}),r.jsx("p",{className:"text-sm md:text-base text-[#CCCCCC] max-w-2xl mx-auto leading-relaxed",children:"Describe what you want to improve and discover the most relevant AI tools, GitHub projects, and operating frameworks already curated by PrivateEquity.AI."})]})}),r.jsx("section",{className:"bg-[#0A0A0A] pb-24",children:r.jsx("div",{className:"container mx-auto px-4 sm:px-8 max-w-5xl",children:r.jsx($5,{compact:!0})})}),r.jsx(ht,{})]});function y1e(){return r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"AI Transparency | PrivateEquity.AI",description:"Learn how PrivateEquity.AI uses artificial intelligence, human oversight and editorial validation in its research and analytical frameworks.",canonicalUrl:"/ai-transparency",keywords:"AI transparency, artificial intelligence, human oversight, editorial validation, responsible AI, PrivateEquity AI"}),r.jsx("div",{className:"min-h-screen bg-[#0A0A0A] text-white",children:r.jsxs("div",{className:"max-w-3xl mx-auto px-6 py-20",children:[r.jsxs("div",{className:"mb-12",children:[r.jsx("div",{className:"text-[10px] uppercase tracking-widest text-[#D4A843] mb-4",children:"Transparency"}),r.jsx("h1",{className:"text-3xl md:text-4xl font-semibold tracking-tight mb-4",children:"AI Transparency"}),r.jsx("p",{className:"text-white/60 text-base leading-relaxed",children:"PrivateEquity.AI uses artificial intelligence as a supporting analytical capability within selected internal research, classification and scoring processes."}),r.jsx("p",{className:"text-white/60 text-base leading-relaxed mt-3",children:"Artificial intelligence is not presented as a substitute for investment judgment, professional due diligence, legal analysis, financial analysis or human decision-making."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"How artificial intelligence is used"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-4",children:"Selected internal administrative processes may use third-party language models, including models provided by Anthropic and OpenAI, to supp
567ort:"}),r.jsx("ul",{className:"space-y-2 pl-4",children:["the classification of companies and sectors;","the preparation of preliminary AI exposure assessments;","the identification of potential AI-related risks and opportunities;","the generation of structured analytical fields;","the prioritisation and organisation of research information."].map(e=>r.jsxs("li",{className:"flex items-start gap-2 text-sm text-white/60",children:[r.jsx("div",{className:"w-1 h-1 rounded-full bg-[#D4A843]/60 mt-2 shrink-0"}),e]},e))}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mt-4",children:"These systems are accessed through internal administrative functions and are not offered to users as public conversational agents or autonomous decision-making systems."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Information processed"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"The information submitted to artificial intelligence services is generally limited to corporate and market information, including company names, websites, countries, sectors, business descriptions, ownership stages and other business-related attributes."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"PrivateEquity.AI does not intentionally use these internal processes to analyse private user communications, login credentials or sensitive personal data."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Human oversight"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"Artificial intelligence outputs may be reviewed, edited, supplemented, validated or rejected before being used in publicly available analytical content."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"The platform's technical architecture allows records to be identified as validated or manually scored. Human review does not guarantee that every item is free from error, but it is intended to reduce the risks associated with unverified automated output."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Analytical limitations"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-4",children:"Artificial intelligence outputs depend on the quality, completeness and timeliness of the information available to the models."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"Assessments may therefore:"}),r.jsx("ul",{className:"space-y-2 pl-4 mb-4",children:["contain errors or omissions;","rely on incomplete company descriptions;","fail to reflect recent developments;","simplify complex business models;","produce inconsistent results;","require additional sector-specific analysis."].map(e=>r.jsxs("li",{className:"flex items-start gap-2 text-sm text-white/60",children:[r.jsx("div",{className:"w-1 h-1 rounded-full bg-[#D4A843]/60 mt-2 shrink-0"}),e]},e))}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Scores and classifications should not be treated as definitive assessments of a company, investment, transaction or market."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"No automated investment decisions"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"PrivateEquity.AI does not make investment decisions, approve or reject transactions, allocate capital or produce legally binding determinations through automated systems."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"The platform's content is intended for research, educational and informational purposes only."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"It does not constitute investment advice, financial advice, legal advice, tax advice, a recommendation, a solicitation or regulated advisory activity."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Third-party models"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"PrivateEquity.AI currently uses selected services made available by third-party providers, including Anthropic and OpenAI."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"PrivateEquity.AI does not develop, train or provide a general-purpose AI model and is not affiliated with or endorsed by these providers."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"The models and providers used may change over time based on quality, security, availability, performance and operational requirements."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Editorial responsibility"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"The use of artificial intelligence does not transfer or eliminate PrivateEquity.AI's responsibility for determining which anal
567ytical content is published on the platform."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"Where content has been materially supported by artificial intelligence, appropriate disclosures may be provided within the relevant page, profile or methodology."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Regulatory framework"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed mb-3",children:"This statement has been prepared taking into account the applicable European regulatory framework concerning artificial intelligence and data protection, including, where relevant, Regulation (EU) 2024/1689."}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"It does not constitute a certification or declaration of general legal compliance."})]}),r.jsx("div",{className:"border-t border-white/8 mb-10"}),r.jsxs("section",{className:"mb-12",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Updates"}),r.jsx("p",{className:"text-white/60 text-sm leading-relaxed",children:"This statement may be updated to reflect changes in the technologies used, the platform's analytical processes or the applicable regulatory framework."}),r.jsx("p",{className:"text-white/50 text-xs mt-4",children:"Last reviewed: 4 August 2026."})]}),r.jsxs("section",{className:"mb-10 pt-8 border-t border-white/10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Related"}),r.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[r.jsx(de,{href:"/methodology",className:"text-[#D4A843] hover:underline",children:"Methodology"}),r.jsx("span",{className:"text-white/20",children:"·"}),r.jsx(de,{href:"/editorial-policy",className:"text-[#D4A843] hover:underline",children:"Editorial Policy"}),r.jsx("span",{className:"text-white/20",children:"·"}),r.jsx(de,{href:"/legal",className:"text-[#D4A843] hover:underline",children:"Legal"})]})]})]})}),r.jsx(ht,{})]})}const v1e=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Methodology | PrivateEquity.AI",description:"Methodological framework used by PrivateEquity.AI to organise research, analytical scoring and AI exposure assessments.",canonicalUrl:"/methodology",keywords:"methodology, analytical framework, research, AI exposure, scoring"}),r.jsx("div",{className:"min-h-screen bg-[#0A0A0A]",children:r.jsxs("div",{className:"max-w-3xl mx-auto px-6 py-20",children:[r.jsx("h1",{className:"text-3xl font-bold mb-3 text-white",children:"Methodology"}),r.jsx("p",{className:"text-sm text-white/40 mb-12 tracking-wide uppercase",children:"Methodology version 1.0  ·  Last reviewed: 4 August 2026"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Scope"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"PrivateEquity.AI develops analytical frameworks designed to organise information and support research activities in the context of AI's impact on private equity investment decisions."}),r.jsx("p",{children:"The platform does not produce:"}),r.jsxs("ul",{className:"list-disc list-inside space-y-1 pl-2",children:[r.jsx("li",{children:"financial ratings or credit ratings;"}),r.jsx("li",{children:"investment recommendations;"}),r.jsx("li",{children:"valuations;"}),r.jsx("li",{children:"certified due diligence."})]}),r.jsx("p",{children:"All outputs are intended as research inputs and structured analytical references. They do not substitute professional judgment or independent verification."})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Data Sources"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"Analytical outputs are based on a combination of:"}),r.jsxs("ul",{className:"list-disc list-inside space-y-1 pl-2",children:[r.jsx("li",{children:"publicly available corporate information;"}),r.jsx("li",{children:"publicly available market and sector sources;"}),r.jsx("li",{children:"editorial and published information;"}),r.jsx("li",{children:"information collected and organised by the research team."})]}),r.jsx("p",{children:"The quality and completeness of source material may vary. Scores and assessments reflect the information available at the time of analysis."})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Analytical Framework"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"Structured analytical scores are derived from a combination of:"}),r.jsxs("ul",{className:"list-disc list-inside space-y-1 pl-2",children:[r.jsx("li",{children:"proprietary frameworks developed by the research team;"}),r.jsx("li",{children:"structured rules and classification criteria;"}),r.jsx("li",{children:"sector and segment classifications;"}),r.jsx("li",{children:"AI-assisted analysis where appropriate, subject to editorial review;"}),r.jsx("li",{children:"editorial responsibility exercised by the team."})]}),r.jsx("p",{children:"Where AI-assisted processes are used, they operate as analytical tools under human oversight. No output is published without editorial responsibility being exercised."})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Human Oversight"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"The publication of content on this platform remains under editorial responsibility at all times."}),r.jsx("p",{children:"Analytical outputs, scores and classifications are subject to human review before publication. Automated or AI-assisted processes inform analysis but do not replace editorial judgment."})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Limitations"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"Scores and assessments produced by this platform:"}),r.jsxs("ul",{className:"list-disc list-inside space-y-1 pl-2",children:[r.jsx("li",{children:"do not represent absolute facts or definitive judgments;"}),r.jsx("li",{children:"do not substitute professional analysis, independent research or specialist advice;"}),r.jsx("li",{children:"depend on the quality and completeness of available information;"}),r.jsx("li",{children:"may be updated as new information becomes available or the framework is revised."})]})]})]}),r.jsxs("section",{className:"mb-10 pt-8 border-t border-white/10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Related"}),r.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[r.jsx(de,{href:"/ai-transparency",className:"text-[#D4A843] hover:underline",children:"AI Transparency"}),r.jsx("span",{className:"text-white/20",children:"·"}),r.jsx(de,{href:"/editorial-policy",className:"text-[#D4A843] hover:underline",children:"Editorial Policy"}),r.jsx("span",{className:"text-white/20",children:"·"}),r.jsx(de,{href:"/legal",className:"text-[#D4A843] hover:underline",children:"Legal"})]})]})]})}),r.jsx(ht,{})]}),b1e=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Editorial Policy | PrivateEquity.AI",description:"Editorial principles governing research, analytical content and AI-assisted processes.",canonicalUrl:"/editorial-policy",keywords:"editorial policy, research, AI-assisted, human oversight, corrections"}),r.jsx("div",{className:"min-h-screen bg-[#0A0A0A]",children:r.jsxs("div",{className:"max-w-3xl mx-auto px-6 py-20",children:[r.jsx("h1",{className:"text-3xl font-bold mb-12 text-white",children:"Editorial Policy"}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Editorial Independence"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"PrivateEquity.AI operates as an independent research platform. Editorial decisions are made by the team on the basis of research merit and analytical qual
567ity."}),r.jsx("p",{children:"No commercial relationship, sponsorship or external arrangement influences the content, scoring or analytical outputs published on the platform."})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Human-authored content"}),r.jsx("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:r.jsx("p",{children:"Research, analysis and editorial content produced by the PrivateEquity.AI team is written and reviewed by human authors. This includes frameworks, strategic commentary, sector analysis and platform documentation."})})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"AI-assisted content"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"Some content on this platform may be produced with AI-assisted processes. Where AI tools are used, they support research activities such as information synthesis, classification and preliminary analysis."}),r.jsx("p",{children:"AI-assisted outputs are not published without human review. Editorial responsibility for all published content remains with the PrivateEquity.AI team."}),r.jsxs("p",{children:["For further information, see ",r.jsx(de,{href:"/ai-transparency",className:"text-[#D4A843] hover:underline",children:"AI Transparency"}),"."]})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Editorial Review"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"All analytical scores, assessments and published research are subject to editorial review before publication. This includes review of source material, consistency with established analytical frameworks and overall quality of the output."}),r.jsx("p",{children:"Human oversight is exercised at every stage of the publication process."})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Corrections"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"Errors in published content may be identified and corrected. Corrections are applied when a factual inaccuracy or analytical inconsistency is identified."}),r.jsxs("p",{children:["To report an error or submit a correction request, contact the team at"," ",r.jsx("a",{href:"mailto:[email protected]",className:"text-[#D4A843] hover:underline",children:"[email protected]"}),"."]})]})]}),r.jsxs("section",{className:"mb-10",children:[r.jsx("h2",{className:"text-xl font-semibold mb-4 text-white",children:"Updates"}),r.jsxs("div",{className:"space-y-3 text-gray-400 leading-relaxed",children:[r.jsx("p",{children:"Analytical content, scores and assessments may be updated to reflect new information, revised frameworks or changes in the underlying subject matter."}),r.jsx("p",{children:"This policy may be updated to reflect changes in the platform's editorial processes or the tools used."})]})]}),r.jsxs("section",{className:"mb-10 pt-8 border-t border-white/10",children:[r.jsx("h2",{className:"text-lg font-semibold mb-4 text-white",children:"Related"}),r.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[r.jsx(de,{href:"/methodology",className:"text-[#D4A843] hover:underline",children:"Methodology"}),r.jsx("span",{className:"text-white/20",children:"·"}),r.jsx(de,{href:"/ai-transparency",className:"text-[#D4A843] hover:underline",children:"AI Transparency"}),r.jsx("span",{className:"text-white/20",children:"·"}),r.jsx(de,{href:"/legal",className:"text-[#D4A843] hover:underline",children:"Legal"})]})]})]})}),r.jsx(ht,{})]}),w1e=()=>r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"Contact Us | PrivateEquity.AI",description:"Institutional inquiries and confidential discussions — PrivateEquity.AI and Blacktrace.",canonicalUrl:"/contact",noindex:!0}),r.jsx("div",{className:"min-h-screen bg-[#0A0A0A]",children:r.jsxs("div",{className:"max-w-2xl mx-auto px-6 py-24",children:[r.jsx("h1",{className:"text-3xl font-bold mb-4 text-white",children:"Contact Us"}),r.jsx("p",{className:"text-gray-400 leading-relaxed mb-12",children:"Blacktrace works with a limited number of clients each year to ensure focus, depth and discretion."}),r.jsx("p",{className:"text-sm text-gray-400 mb-8",children:"For institutional inquiries or confidential discussions, please contact:"}),r.jsxs("div",{className:"space-y-8",children:[r.jsxs("div",{children:[r.jsx("p",{className:"text-xs uppercase tracking-widest mb-1",style:{color:"#D4A843"},children:"General"}),r.jsx("a",{href:"mailto:[email protected]",className:"text-white text-sm hover:text-[#D4A843] transition-colors",children:"[email protected]"})]}),r.jsxs("div",{className:"border-t border-white/10 pt-8 grid sm:grid-cols-2 gap-8",children:[r.jsxs("div",{children:[r.jsx("p",{className:"text-xs uppercase tracking-widest mb-2 text-[#BBBBBB]",children:"United Kingdom"}),r.jsx("p",{className:"text-white text-sm font-medium",children:"Blacktrace"})]}),r.jsxs("div",{children:[r.jsx("p",{className:"text-xs uppercase tracking-widest mb-2 text-[#BBBBBB]",children:"Italy"}),r.jsx("p",{className:"text-white text-sm font-medium mb-1",children:"Mizzau & Partners"}),r.jsx("a",{href:"https://www.mizzaupartners.com/",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-[#D4A843] hover:underline",children:"www.mizzaupartners.com"})]})]})]})]})}),r.jsx(ht,{})]}),Dy="#D4A843",Li="/learning",JS=[{label:"Research",href:`${Li}#research`},{label:"Learning",href:`${Li}#learning`},{label:"AI Channels",href:`${Li}#youtube-learning-channels`},{label:"AI Leadership",href:`${Li}#ai-leadership`}],nB=()=>{const[e]=Jf(),[t,n]=j.useState(!1),[i,a]=j.useState(!1),[s,o]=j.useState(!1),[l,c]=j.useState(!1),d=j.useRef(null),u=j.useRef(null),p=j.useRef(null);j.useEffect(()=>{const v=()=>a(window.scrollY>20);return window.addEventListener("scroll",v),()=>window.removeEventListener("scroll",v)},[]),j.useEffect(()=>{const v=b=>{d.current&&!d.current.contains(b.target)&&o(!1),u.current&&!u.current.contains(b.target)&&c(!1)};return document.addEventListener("mousedown",v),()=>document.removeEventListener("mousedown",v)},[]);const m=()=>n(!t),f=()=>n(!1),x=()=>c(!1),h=e==="/general-ai-toolkit"||e==="/startup-stack"||e==="/blacktrace-diagnostic",g=e===Li||e.startsWith(`${Li}#`),y=v=>{var b;
567v.key==="Escape"&&(c(!1),(b=p.current)==null||b.focus())};return r.jsxs("header",{className:`institutional-header sticky top-0 z-50 transition-[padding,box-shadow,border-color] duration-300 bg-[#0A0A0A] ${i?"border-b border-white/10 shadow-md py-3":"py-4"}`,children:[r.jsx("div",{className:"container mx-auto px-4 sm:px-8",children:r.jsxs("nav",{className:"flex justify-between items-center",children:[r.jsxs("div",{className:"flex items-center",children:[r.jsxs(de,{href:"/",className:"flex items-center gap-0.5 group",children:[r.jsx("span",{className:"text-white font-semibold tracking-tighter uppercase text-sm",children:"Private"}),r.jsx("span",{className:"text-white uppercase text-sm tracking-tighter",children:"Equity"}),r.jsxs("span",{className:"text-sm relative mr-4",children:[r.jsx("span",{className:"font-light tracking-tighter",style:{color:Dy},children:".ai"}),r.jsx("span",{className:"absolute -top-1 -right-2.5 w-1.5 h-1.5 rounded-full animate-pulse",style:{backgroundColor:Dy}})]})]}),r.jsx("a",{href:"https://blacktrace.uk",target:"_blank",rel:"noopener noreferrer",className:"text-[11px] font-light tracking-wide text-white -ml-3 hidden sm:inline hover:text-[#D4A843] transition-colors",children:"by Blacktrace"})]}),r.jsxs("div",{className:"hidden md:flex items-center space-x-0.5",children:[r.jsx(Ao,{href:"/",location:e,label:"Home"}),r.jsx(Ao,{href:"/about",location:e,label:"About"}),r.jsx(Ao,{href:"/ai-strategy-toolkit",location:e,label:"Intelligence"}),r.jsx(Ao,{href:"/ai-agentic-companies",location:e,label:"Execution"}),r.jsx(Ao,{href:"/infrastructure",location:e,label:"Infrastructure"}),r.jsx(Ao,{href:"/assessment",location:e,label:"Assessment"}),r.jsxs("div",{ref:u,className:"relative",onMouseEnter:()=>c(!0),onMouseLeave:()=>c(!1),onFocus:()=>c(!0),onKeyDown:y,children:[r.jsxs("div",{className:`relative flex items-center px-3 py-2 font-medium tracking-wider uppercase text-xs transition-colors ${g?"text-[#D4A843]":"text-gray-400"}`,children:[r.jsx(de,{href:Li,onClick:x,className:"hover:text-white",children:"Insights"}),r.jsx("button",{ref:p,type:"button","aria-label":"Open Insights sections","aria-haspopup":"menu","aria-expanded":l,"aria-controls":"insights-dropdown",onClick:()=>c(v=>!v),className:"ml-1 p-1 rounded-sm hover:bg-white/10 hover:text-white focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[#D4A843]",children:r.jsx(La,{className:`h-3 w-3 transition-transform duration-200 ${l?"rotate-180":""}`})}),g&&r.jsx("div",{className:"absolute bottom-0 left-3 right-3 h-px",style:{backgroundColor:Dy}})]}),l&&r.jsx(eC,{onNavigate:x})]}),r.jsxs("div",{className:"ml-3 pl-3 border-l border-white/10 relative",ref:d,children:[r.jsxs("button",{type:"button","aria-haspopup":"menu","aria-expanded":s,"aria-controls":"companies-dropdown",onClick:()=>o(!s),className:`header-menu-trigger flex items-center gap-1 px-3 py-1.5 text-xs font-medium tracking-wider uppercase border rounded-sm transition-colors cursor-pointer ${h?"border-[#D4A843]/60 text-[#D4A843]":"border-white/20 text-gray-400 hover:text-white hover:border-white/40"}`,children:["For Companies",r.jsx(La,{className:`h-3 w-3 transition-transform duration-200 ${s?"rotate-180":""}`})]}),s&&r.jsxs("div",{id:"companies-dropdown",role:"menu",className:"header-dropdown absolute right-0 mt-2 w-56 border overflow-hidden z-50",children:[r.jsxs(de,{href:"/general-ai-toolkit",onClick:()=>o(!1),className:"block px-4 py-3.5 hover:bg-white/5 transition-colors border-b border-white/8",children:[r.jsx("p",{className:"text-xs font-semibold text-white mb-0.5",children:"AI Value Creation Toolkit"}),r.jsx("p",{className:"text-xs text-gray-500",children:"AI tools for mid-market companies"})]}),r.jsxs(de,{href:"/startup-stack",onClick:()=>o(!1),className:"block px-4 py-3.5 hover:bg-white/5 transition-colors",children:[r.jsx("p",{className:"text-xs font-semibold text-white mb-0.5",children:"Intelligent Startup Stack"}),r.jsx("p",{className:"text-xs text-gray-500",children:"Investor-readiness framework"})]})]})]})]}),r.jsx("button",{className:"md:hidden flex items-center justify-center p-2 rounded-full bg-white/10 hover:bg-white/15 transition-colors",onClick:m,"aria-label":t?"Close menu":"Open menu",children:t?r.jsx(ac,{className:"w-5 h-5 text-white"}):r.jsx(nG,{className:"w-5 h-5 text-white"})})]})}),t&&r.jsx("div",{className:"md:hidden bg-[#0A0A0A] border-t border-white/10",children:r.jsxs("div",{className:"container mx-auto px-4 py-4 flex flex-col space-y-1",children:[r.jsx(aa,{href:"/",location:e,label:"Home",onClick:f}),r.jsx(aa,{href:"/about",location:e,label:"About",onClick:f}),r.jsx(aa,{href:"/ai-strategy-toolkit",location:e,label:"Intelligence",onClick:f}),r.jsx(aa,{href:"/ai-agentic-companies",location:e,label:"Execution",onClick:f}
567),r.jsx(aa,{href:"/infrastructure",location:e,label:"Infrastructure",onClick:f}),r.jsx(aa,{href:"/assessment",location:e,label:"Assessment",onClick:f}),r.jsxs("div",{className:"rounded-sm",children:[r.jsxs("div",{className:"flex items-center",children:[r.jsx(de,{href:Li,onClick:()=>{x(),f()},className:`flex-1 px-4 py-3 font-medium uppercase text-xs tracking-widest rounded-sm transition-colors ${g?"text-[#D4A843]":"text-gray-400 hover:text-white"}`,children:"Insights"}),r.jsx("button",{type:"button","aria-label":"Open Insights sections","aria-haspopup":"menu","aria-expanded":l,"aria-controls":"insights-mobile-menu",onClick:()=>c(v=>!v),className:"p-3 text-gray-400 hover:text-white focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[#D4A843]",children:r.jsx(La,{className:`h-4 w-4 transition-transform duration-200 ${l?"rotate-180":""}`})})]}),l&&r.jsx(eC,{id:"insights-mobile-menu",mobile:!0,onNavigate:f})]}),r.jsxs("div",{className:"border-t border-white/10 mt-2 pt-2 space-y-1",children:[r.jsx(aa,{href:"/general-ai-toolkit",location:e,label:"AI Value Creation Toolkit →",onClick:f}),r.jsx(aa,{href:"/startup-stack",location:e,label:"Intelligent Startup Stack →",onClick:f})]})]})})]})},eC=({id:e="insights-dropdown",mobile:t=!1,onNavigate:n})=>{const i=(a,s)=>{if(window.location.pathname===Li){a.preventDefault();const o=s.split("#")[1];window.history.pushState({},"",s),window.requestAnimationFrame(()=>{var l;(l=document.getElementById(o))==null||l.scrollIntoView({behavior:"auto",block:"start"})})}n()};return r.jsx("div",{id:e,role:"menu",className:t?"ml-4 border-l border-white/10 pl-2 pb-2":"absolute left-0 top-full w-56 overflow-hidden rounded-xl border border-white/15 bg-[#111111] shadow-2xl z-50",children:JS.map((a,s)=>r.jsx("a",{href:a.href,role:"menuitem",onClick:o=>i(o,a.href),className:`block px-4 py-3 text-xs font-medium tracking-wide text-gray-300 hover:bg-white/5 hover:text-white focus-visible:bg-white/5 focus-visible:text-white focus-visible:outline-none ${s<JS.length-1?"border-b border-white/8":""}`,children:a.label},a.href))})},Ao=({href:e,location:t,label:n})=>{const i=t===e;return r.jsx(de,{href:e,children:r.jsxs("div",{className:`relative px-3 py-2 font-medium tracking-wider uppercase text-xs transition-colors ${i?"text-[#D4A843]":"text-gray-400 hover:text-white"}`,children:[n,i&&r.jsx("div",{className:"absolute bottom-0 left-0 right-0 h-px",style:{backgroundColor:"#D4A843"}})]})})},aa=({href:e,location:t,label:n,onClick:i})=>{const a=t===e;return r.jsx(de,{href:e,onClick:i,children:r.jsx("div",{className:`px-4 py-3 font-medium uppercase text-xs tracking-widest rounded-sm transition-colors ${a?"text-[#D4A843]":"text-gray-400 hover:text-white"}`,children:n})})},dd="#D4A843",A1e=[{title:"The Four-Cut Issue-Tree Builder",prompt:`Here is my key question: [paste the one-sentence key question]. Context: [paste 5-15 sentences on the business: what you sell, how you make money, the main cost lines, what changed in the last two quarters].
568
569Build 4 separate issue trees that break this question into sub-questions. Each tree uses a different cut:
570Tree 1: by profit lever (price, volume, mix, cost).
571Tree 2: by process stage, from [first step of your core workflow] to [last step].
572Tree 3: by customer segment [list your segments, or tell Claude to infer them from context].
573Tree 4: by a cut you choose that I have not thought of. Name it and defend it.
574
575Rules for every tree: two or three levels deep, branches mutually exclusive and collectively exhaustive, every leaf phrased as a question that data could answer. After each tree, state in one line what that cut is best at finding and what it is structurally blind to. Finish with a recommendation on which single tree to run first, given that my binding constraint is [time / analyst capacity / data access, pick one].`},{title:"The Hypothesis Loader",prompt:`Here is my issue tree: [paste the tree, one branch per line, indented to show levels].
576
577For every leaf, produce a table with four columns:
5781. Hypothesis: one falsifiable sentence stating what we believe is true, with a direction and rough magnitude, e.g. 'freight cost per order rose more than 15% since [date].'
5792. Kill condition: the specific evidence that would make us drop this branch within a week.
5803. Data needed: the exact report, system, or person likely to hold the answer inside a company like mine [name your stack if you know it, e.g. NetSuite + Salesforce + Looker].
5814. Owner and effort: who on a lean team pulls it, and whether it is an hour, a day, or a week of work.
582
583Then rank the leaves by (likelihood the hypothesis is true) x (size of the prize if true) / (effort to test), and give me the three tests to run in the first five business days.`}],j1e=[{title:"The Ghost Deck Drafter",prompt:`I am about to commit my team to answering this key question: [paste the key question], using this issue tree: [paste the winning tree with hypotheses attached].
584
585Before any analysis runs, draft the ghost version of the final readout: the storyline we would tell if the leading hypotheses hold.
586
587Produce:
5881. A one-paragraph governing thought: the answer we currently expect, stated plainly.
5892. A slide-by-slide skeleton, 8 to 12 slides. Each slide is a full-sentence headline that asserts a claim, followed by one placeholder line describing the exhibit that would prove it and the data source it comes from.
5903. A mirror skeleton, 4 to 6 headlines: the story the readout tells if the lead hypothesis dies.
5914. A workplan table mapping each slide to the analysis that fills it, the owner [list your team members and their day jobs], and the week it lands inside a [4/6/8]-week window.
592
593Mark every headline that currently rests on an untested assumption.`},{title:"The Fact Base Builder",prompt:`You are a senior consultant building the current-state fact base for a diagnostic of [COMPANY OR BUSINESS UNIT]. Your job is to structure what I give you, flag what conflicts, and name what is missing.
594
595Here is the raw material:
596[PASTE: P&L or financial summary for the last 8-12 quarters]
597[PASTE: operational KPI reports, whatever gets tracked weekly or monthly]
598[PASTE: org structure and headcount by function, if available]
599[PASTE: any prior strategy decks, board materials, or consultant reports]
600
601Produce four sections:
602
6031. BUSINESS SNAPSHOT. What this business is, how it makes money, and the 6 numbers that matter most. Cite the source document for each number.
604
6052. PERFORMANCE NARRATIVE. What the data says is happening, 300 words maximum, plain language. Lead with trends, then levels. If margin is compressing, say where the compression comes from.
606
6073. CONTRADICTIONS. Every place two documents disagree, a figure looks implausible, or a stated priority does not match where the money goes. Quote the conflicting numbers side by side. Do not resolve them. List them.
608
6094. OPEN QUESTIONS. The 10 questions this material cannot answer, ranked by how much each answer would change the diagnosis. For each, name the role inside the company most likely to know.
610
611Rules: every figure gets a source. Anything you infer gets labeled INFERENCE. A gap in the data is a finding, so report it instead of writing around it.`},{title:"The Interview Synthesizer",prompt:`I am pasting raw notes or transcripts from internal interviews about [TOPIC, e.g., why order-to-cash keeps missing SLA]. Interviewees are labeled by role: [ROLE 1], [ROLE 2], [ROLE 3].
612
613[PASTE: transcript or notes, one interview at a time, each labeled by role]
614
615Produce:
616
6171. THEMES. The 5-8 recurring themes across all interviews. For each: a one-line statement of the theme, how many interviewees raised it, and 2 representative verbatim quotes with the role attached.
618
6192. OUTLIERS. Claims made by exactly one person that would matter if true. For each: who said it and what evidence would confirm or kill it.
620
6213. DISAGREEMENTS. Where interviewees describe the same process or problem differently. Show the competing versions side by side.
622
6234. THE SILENCE. Up to 5 topics you would expect people in these roles to raise that nobody did, with why each absence is notable.
624
625Rules: quotes stay verbatim. Do not average opinions into a consensus that was not there. If two people contradict each other, that is a finding, so preserve it.`},{title:"The Alignment Gap Map",prompt:`I am giving you the positions of [N] leaders on the state of [BUSINESS AREA OR INITIATIVE]. Sources are a mix of [interview notes / emails / planning docs / my summaries of 1:1 conversations], each labeled by role.
626
627[PASTE: material per leader, labeled ROLE: ...]
628
629Build an alignment map:
630
6311. THE QUESTION GRID. Identify the 5-8 underlying questions these leaders are implicitly answering (examples: is the problem demand or execution, can the current team fix it, how urgent is this). For each question, state each leader's position in one line with a quote or paraphrase as evidence.
632
6332. FAULT LINES. The 2-3 disagreements that cost the most if left unresolved. For each: who is on which side, and whether the split looks like an information gap (they see different data) or an incentive gap (they are paid to want different things). Show your reasoning.
634
6353. FALSE ALIGNMENT. Places where everyone uses the same words and means different things. Quote the shared language, then unpack the divergent meanings.
636
6374. THE MEETING AGENDA. If I could put this group in one room for 90 minutes, the 3 questions to force to a decision, in order.
638
639Rules: attribute every position to its source. Where the material does not support a position, write NOT EVIDENCED instead of guessing.`},{title:"The Process Autopsy",prompt:`Map the process below the way the work actually happens. Ignore the SOP version.
640
641Process: [NAME, e.g., enterprise customer onboarding]
642Walk-through: [DESCRIBE each step in order as it really runs: who does it, what system they use, how long the step takes, how long work WAITS before the step starts, what goes wrong, and what percentage gets sent back for rework. Rough numbers are fine. Label them rough.]
643Volume: [how many times this process runs per week or month]
644Cost assumptions: [rough loaded hourly cost of the roles involved, if known]
645
646Produce:
647
6481. THE MAP. A text-based map: numbered steps, owner, system, touch time, wait time. Mark every handoff with H, every queue with Q, every rework loop with R.
649
6502. THE DELAY LEDGER. Rank the waits and rework loops by total hours consumed per month using my volume figure. Show the math.
651
6523. THE THREE UGLIEST HANDOFFS. For each: what gets lost in the handoff, why it exists (system boundary, org boundary, or approval ritual), and what would have to be true to remove it.
653
6544. QUESTIONS FOR THE FLOOR. The 5 things I should verify by watching the work, because my description probably flattered the process.
655
656Rules: separate touch time from wait time everywhere. If my inputs blend them, ask. Do not blend them yourself.`}],k1e=[{title:"The Exhibit Architect",prompt:`You are designing the exhibits for a current-state readout to [AUDIENCE, e.g., the executive team of a $400M distribution company]. Below are my findings and the data I can actually pull.
657
658Findings: [PASTE: your fact-base findings, one per line]
659Available data: [LIST: what you can genuinely get, e.g., monthly P&L by segment for 3 years, ticket volume by type, headcount by function]
660
661For each finding, produce an exhibit spec:
662
6631. TITLE: a full sentence stating the point, written so the page is understood from the title alone. Example: "Service margin fell 6 points in 18 months, and 80% of the fall sits in two accounts."
664
6652. FORM: the single chart or table that proves the title, and why that form. Waterfall for bridges, line for trends, scatter for relationships, table when precision beats shape.
666
6673. DATA SPEC: exactly which fields, what time range, what cuts. Written so an analyst could pull it without asking me anything.
668
6694. THE EYE TEST: what the viewer's eye should land on first, and the one annotation to add.
670
6715. KILL CHECK: if the data comes back and does not support the title, name the fallback exhibit.
672
673Rules: one point per exhibit. If a finding needs two charts, split it into two findings. Reject any finding too vague to chart and tell me what would sharpen it.`},{title:"The Five-Stance Red Team",prompt:`Red-team this recommendation from five different stances, one at a time. Stay fully in character for each. Do not blend them.
674
675The recommendation: [paste the recommendation and its supporting logic]
676
677Stance 1: A skeptical CFO who has watched three initiatives like this miss their numbers. Attack the financials, the payback period, and every number that looks rounded up.
678Stance 2: A hostile board member who suspects management is empire-building. Attack the strategic logic and the incentives of the people proposing it.
679Stance 3: The operator who has to actually run this. Attack the timeline, the staffing, and everything the plan assumes about capacity that does not exist yet.
680Stance 4: A competitor CEO reading this plan after a leak. Tell me exactly how you would respond, and which of our moves you would be relieved to see.
681Stance 5: The customer. Tell me what changes for you, what you were never asked, and where you would quietly leave.
682
683After all five, list the three objections that came up in more than one stance. Those are the ones I take into the room.`},{title:"The Bear Case Builder",prompt:`Build the bear case for this plan. The base case is below. Your job is to construct the credible downside version, the one a smart short-seller would write if they were betting against us.
684
685Base case: [paste the key numbers, growth assumptions, timeline, and expected outcome]
686Key inputs and current assumed values: [list the 5-10 numbers the model runs on: win rate, churn, ramp time, unit cost, adoption, pricing]
687
6881. For each input, give me the pessimistic-but-defensible value. Defensible means a reasonable person could hold it, driven by a plausible mechanism, no asteroid strikes.
6892. Rebuild the outcome with those values. Show which single input moves the result most.
6903. Identify the compounding pair: the two inputs that do the most damage if they go wrong together, and why they might correlate.
6914. Write the bear case as one page of prose, the way an investor memo would put it.
6925. End with the tripwires: for each of the three most dangerous inputs, the observable metric and the threshold that tells us we are living in the bear case, early enough to act.`}],N1e=[{title:"The Rival Explanation Generator",prompt:`This case rests on a pattern in the data and one explanation for it. Your job is to generate the explanations we skipped.
693
694The pattern: [describe the finding, e.g. churn dropped 30% after the pricing change, the pilot region outperformed by 2x]
695Our explanation: [the causal story the recommendation is built on]
696What we plan to do because of it: [the decision this finding justifies]
697
6981. Generate every alternative explanation for the same pattern: selection effects, timing and seasonality, a measurement change, a one-off event, regression to the mean, a confounding change that happened at the same time, and any mechanism specific to this situation.
6992. For each alternative, rate its plausibility and state what it would mean for the decision if it were the true cause.
7003. Give me the cheapest test that would separate our explanation from the strongest alternative. Cheapest means days and existing data, ideally.
7014. Then your honest read: if you had to bet, what share of the observed effect belongs to our explanation versus everything else.`},{title:"The Top-Down Cascade",prompt:`You are building a top-down market sizing for [PRODUCT/SERVICE] in [GEOGRAPHY].
702
703Start from the broadest credible market category and narrow in explicit steps: total category spend, then the segment we serve ([SEGMENT DEFINITION]), then geography, then the portion addressable by our delivery model ([BUSINESS MODEL: e.g., subscription software, managed service, per-project fees]).
704
705Rules:
7061. Show every narrowing step as one line in a table: starting number, filter applied, percentage assumption, resulting number.
7072. Label every number A, B, or C. A = a figure you believe exists in published research that I should verify. B = your structured estimate. C = pure assumption.
7083. Never present a number as sourced. For every A-line, name where I should go verify it. I will do that sourcing myself.
7094. End with TAM, SAM, and SOM, each as a low/base/high range, plus the three assumptions that move the final answer most and by how much.
710
711Context on the business: [2-4 SENTENCES: what you sell, who buys it, rough price point, how it is delivered].`},{title:"The Bottom-Up Rebuild",prompt:`Build a bottom-up market sizing for [PRODUCT/SERVICE]. Ignore all published market-size figures. Build the number from the ground:
712
7131. Buying unit. Define who actually writes the check: [BUYER: e.g., mid-market HR departments, independent dental practices, plant managers at food manufacturers].
7142. Count. Estimate how many buying units exist in [GEOGRAPHY] and show the logic: census categories, industry association membership, employment statistics. Flag which counts I should verify against a real source.
7153. Adoption. What fraction of those units plausibly buys anything in this category at all, with your reasoning stated.
7164. Price. Annual spend per buying unit at [OUR PRICE POINT, or typical category pricing if we have none], as low/base/high.
7175. Multiply. Show the arithmetic for the low, base, and high cases.
718
719Present the whole model as a table I can rebuild in a spreadsheet in ten minutes: driver, value, evidence class (verify / estimate / assumption), and how much the final number moves if that driver swings 20%.
720
721Context: [2-4 SENTENCES on the product, the buyer, and the price].`},{title:"The Triangulation Audit",prompt:`Here are two independent sizings of the same market.
722
723Top-down estimate: [PASTE THE TOP-DOWN TABLE, OR THE NUMBER PLUS ITS KEY ASSUMPTIONS]
724Bottom-up estimate: [PASTE THE BOTTOM-UP TABLE, OR THE NUMBER PLUS ITS KEY ASSUMPTIONS]
725
726Triangulate them:
7271. State the gap, in dollars and as a ratio.
7282. Diagnose it. Walk both assumption chains and identify which specific assumptions drive the divergence. Rank them by contribution to the gap.
7293. For each driving assumption, name the real-world evidence that would settle it: a specific data source, a count I can check, or a set of five customer conversations.
7304. Give a reconciled base case with a defensible range, and state plainly which of the two estimates you trust more and why.
7315. List what would have to be true for the top of the range to be real, and for the bottom.
732
733Do not average the two numbers and call it triangulation. The gap is the finding. Explain it.`},{title:"The Margin Pool Map",prompt:`Map the structure of the [MARKET/INDUSTRY] market in [GEOGRAPHY].
734
7351. Value chain. Lay out the stages from raw input to end customer. [OPTIONAL: name the stages you already know, e.g., manufacturers, distributors, installers, service contracts.]
7362. For each stage: estimated revenue pool, typical gross and operating margin range, and the two or three types of players who capture it. Label every number as estimate or verify-against-source.
7373. Mark where the margin concentrates and give the structural reason it sits there: switching costs, fragmentation, regulation, information advantage.
7384. Flag where margin is migrating. Which stage is gaining share of the total profit pool, and what is driving the shift?
7395. End with the three positions in this chain a new entrant with [OUR CAPABILITY: e.g., a service layer, a software layer, an existing distribution relationship] could realistically take, and what would have to be true for each.
740
741Context on us: [2-3 SENTENCES].`}],I1e=[{title:"The Beachhead Grid",prompt:`Build a segmentation of the [MARKET] market for [PRODUCT/SERVICE].
742
7431. Propose 4-7 segments. Segment by what drives buying behavior: use case, urgency, who owns the budget. Use firmographics only where behavior actually follows them. State your segmentation logic before you list the segments.
7442. One row per segment: estimated size (with an evidence label: verify / estimate / assumption), growth direction and rough rate, the problem they are buying to solve, what they pay today and to whom, and how contested the segment is.
7453. Score each segment 1-5 on fit with our strengths [2-3 SENTENCES ON WHAT YOU ARE GENUINELY GOOD AT] and 1-5 on ease of reach through our channels [YOUR CHANNELS: e.g., founder network, outbound, one strong partner].
7464. Recommend a beachhead segment and defend it. Then argue the opposite in three sentences: the strongest reason the beachhead is wrong.
7475. Close with the five facts about the recommended segment I should verify with real customers before betting on it.`},{title:"The Capability Benchmark Matrix",prompt:`Build a capability benchmark comparing my company against our main rivals.
748
749My company: [YOUR COMPANY, 2-3 SENTENCES on what you do and how you win today].
750Competitors: [LIST 3-6 RIVALS].
751Capabilities that decide who wins in this category: [LIST 5-8, e.g., distribution reach, product breadth, implementation speed, brand with the economic buyer, price flexibility, service model]. If you believe I have missed a capability buyers actually weigh, add it and say why.
752
753Score every player on every capability, 1 to 5. For each score, give one or two sentences of reasoning and the evidence behind it, so I can argue with it. Where you have no real evidence, still score it, mark it LOW CONFIDENCE, and say what would firm it up.
754
755Output:
7561. The matrix: players as columns, capabilities as rows, scores in the cells.
7572. The reasoning ledger below it: every cell's justification.
7583. The three biggest gaps where we trail, ranked by how much they cost us in deals.
7594. The one capability where we lead that rivals would find hardest to copy, and why.
7605. A short list of the scores most likely to be wrong, with the reason each might be off.`},{title:"The Filing Strategy Extractor",prompt:`I am pasting [COMPETITOR NAME]'s latest [10-K / annual report / earnings call transcript] below. Read it as a competitive strategist and answer four things:
761
7621. What changed. Compare the stated strategy, segment emphasis, and investment language against what you would expect from a company in this position a year ago. Quote the exact lines that carry the shift.
7632. Where the money is going. Capex, R&D, hiring, and M&A signals, and which business each one points to.
7643. What they are worried about. Read the risk factors and the analyst Q&A for the concerns management keeps circling back to, whether or not they name them directly.
7654. What this means for us. My company is [YOUR COMPANY, ONE SENTENCE]. We compete with them in [SEGMENTS / MARKETS]. Given points 1-3, where does their shift put pressure on us in the next two quarters, and where does it open room?
766
767Rules: every claim in sections 1-3 must quote or cite the document. Section 4 is your judgment; label it as judgment. Close with the two things in this document you found genuinely surprising.
768
769[PASTE THE FULL DOCUMENT TEXT]`},{title:"The Strategic Implications Memo",prompt:`You have my competitor teardowns and capability benchmark below. Write the strategic implications memo a senior partner would draft from them. One page.
770
771Inputs:
772[PASTE YOUR TEARDOWNS AND BENCHMARK MATRIX, or summarize: our position, each rival's position, the gap scores]
773
774The memo answers four questions, in this order:
7751. Where are we exposed? The two places a rival could hurt us in the next 12 months, and the specific move each one would make.
7762. Where is a rival overextended? Which player is spending or promising beyond its capability base, and what that opening looks like for us.
7773. Where is the whitespace? Segments, geographies, or buying situations no player currently owns, with the evidence.
7784. What would you watch? Five leading indicators that would tell us the competitive picture is shifting, each one observable from public sources or our own pipeline.
779
780Rules: no hedging language. Every claim gets a because-clause. Where the input is too thin to support a judgment, write INSUFFICIENT EVIDENCE instead of filling the gap. Close with the three decisions this memo puts in front of leadership, each framed as a choice with its tradeoff stated in one line.`}],S1e=[{title:"The Win/Loss Pattern Miner",prompt:`Below are our win/loss 
780notes from the last [NUMBER] competitive deals. Each entry has: deal code, competitor faced, outcome, deal size band, what the buyer said, and what our sales team believes happened.
781
782Mine them for competitive pattern:
783
7841. By competitor. Against each rival: our win rate in this set, the situations where we win, the situations where we lose, and the recurring reason in each direction, quoting the notes.
7852. The real objection. Across the losses, the underlying pattern behind the stated reasons. Buyers say price; the notes often show something else. Name it and show the evidence.
7863. The playbook read. For each rival, infer their sales playbook against us: how they position us to the buyer, the trap they set, the proof they lead with. Mark all of this INFERRED.
7874. The counter. For our two most damaging loss patterns, draft the specific counter: the talk track, the proof point we need to build, or the deal-stage move.
7885. What the notes cannot tell us. The gaps in this data set, and the three questions to add to every win/loss debrief going forward so the next pass is sharper.
789
790[PASTE WIN/LOSS NOTES]`},{title:"The Jobs-to-Be-Done Extractor",prompt:`You are extracting segmentation raw material from voice-of-customer documents. My company is [COMPANY]. We sell [PRODUCT/SERVICE] to [MARKET]. Below I am pasting [NUMBER] documents: customer interviews, win-loss call notes, and churn interviews.
791
792Work through them and produce four outputs:
793
7941. JOBS INVENTORY. Every distinct job-to-be-done, stated as: "When [situation], they need to [job], so they can [outcome]." Under each, the exact customer quotes that support it, tagged by document. Keep near-duplicates separate; merging happens in the clustering step, not here.
7952. TRADE-OFF INVENTORY. Every trade-off a customer revealed: what they will give up (price, speed, features, service depth, integration effort, risk) to get something they value more. One line each, with the supporting quote.
7963. FREQUENCY TABLE. Each job and trade-off with a count of how many distinct customers voiced it.
7974. WEAK-SIGNAL FLAGS. Anything voiced by only one customer, marked clearly. I will not build a segment on one loud voice.
798
799Rules: use only what is in the documents. If you infer rather than quote, mark it INFERRED. Do not editorialize about what the segments should be. That is the next step.
800
801DOCUMENTS:
802[PASTE 15-20 INTERVIEW TRANSCRIPTS, WIN-LOSS NOTES, AND CHURN INTERVIEWS]`},{title:"The Segmentation Survey Writer",prompt:`You are writing a needs-based segmentation survey for [COMPANY], which sells [PRODUCT/SERVICE] to [TARGET MARKET]. The respondent is [WHO ANSWERS: TITLE, FUNCTION, COMPANY PROFILE]. I will field it through [MY OWN LIST / A PANEL VENDOR / IN-PRODUCT INTERCEPT].
803
804Here is the jobs and trade-off inventory extracted from real customer interviews:
805[PASTE THE JOBS INVENTORY AND TRADE-OFF INVENTORY FROM THE EXTRACTOR PROMPT]
806
807Build the survey in five blocks:
8081. SCREENER. 3 to 5 questions that disqualify respondents outside [TARGET MARKET DEFINITION], written so the passing answer is not obvious.
8092. MAXDIFF. Convert the jobs inventory into 12 to 16 MaxDiff items: short, parallel phrasing, one idea each. Lay out the design: how many screens, items per screen, and how many times each item appears.
8103. IMPORTANCE VS. SATISFACTION. A grid for the top needs: rate importance and current-solution satisfaction on the same scale, so I can find high-importance, low-satisfaction gaps.
8114. TRADE-OFF FORCERS. 4 to 6 questions that force a choice between the trade-off pairs in my inventory (example: faster deployment vs. deeper customization). No "both matter equally" escape option.
8125. CLASSIFIERS. Role, company size, current solution, and spend-band questions at the end, so segments can be found in the wild later.
813
814Then tell me: the minimum usable sample size for clustering, the sample size that makes the read solid, and the two questions most likely to produce junk data and why.
815
816Keep every question under 25 words. Use only vocabulary the respondent uses.`},{title:"The Segment Clusterer and Namer",prompt:`You are running the clustering step of a needs-based segmentation for [COMPANY], which sells [PRODUCT/SERVICE] to [MARKET].
817
818Input: [PASTE EITHER (A) THE JOBS + TRADE-OFF INVENTORY WITH FREQUENCY COUNTS, OR (B) A RAW SURVEY EXPORT AS CSV, ONE ROW PER RESPONDENT]. Firmographics I have per customer or respondent: [PASTE, OR WRITE "NONE"].
819
820Do this:
8211. Identify the needs and trade-off variables that actually differentiate customers. Discard variables everyone agrees on; a universal need defines the market, never a segment.
8222. Propose three candidate schemes: coarse (3-4 segments), medium (4-5), fine (6-7). For each scheme, define every segment by the needs and trade-offs that make it distinct.
8233. Recommend one scheme and defend the choice in one paragraph: distinctness, reachability, and whether a sales rep could tell members apart on a first call.
8244. For each segment in the recommended scheme, write: a two-word name that describes the need (never the demographic), a one-paragraph persona in plain language, its 3 to 5 defining needs, its defining trade-off, and the single discovery question that identifies a member.
8255. Stress-test: name the two segments most likely to be confused with each other and the one question that separates them. If no question separates them, merge them and say so.
826
827Do not pad the scheme to look thorough. If the honest answer is three segments, give me three.`},{title:"The Segment Sizing Model",prompt:`You are building the sizing model for a customer segmentation. Company: [COMPANY]. Total revenue: [$X].
828
829Segment definitions:
830[PASTE THE SEGMENT NAMES, PERSONAS, AND DEFINING NEEDS FROM THE CLUSTERING PROMPT]
831
832My customer data:
833[PASTE CSV OR TABLE: CUSTOMER, ANNUAL REVENUE, MARGIN OR COST-TO-SERVE IF AVAILABLE, PLUS FIELDS THAT HINT AT SEGMENT MEMBERSHIP: INDUSTRY, USE CASE, PRODUCTS OWNED, SUPPORT VOLUME]
834
835What I know about the total market:
836[PASTE MARKET COUNTS, TAM ESTIMATES, OR INDUSTRY-REPORT FIGURES, WITH SOURCES]
837
838Produce:
8391. ASSIGNMENT. Map each customer to a segment using the hint fields. Mark low-confidence assignments and name the field that would resolve each one.
8402. CURRENT-BASE TABLE. Per segment: customer count, revenue, revenue share, and margin quality where the data supports it.
8413. MARKET TABLE. Per segment: estimated count of companies that fit, estimated revenue potential, and my current penetration.
8424. ASSUMPTIONS BLOCK. Every assumption the model rests on, numbered, each with a sensitivity note: if this assumption is off by half, what changes.
8435. THE GAP READ. The two segments where potential most exceeds my current share, and the one segment where I am over-invested relative to its potential.
844
845Rules: never present a market estimate without its assumption number. Where my data cannot support a cell, write UNKNOWN. Do not interpolate.`}],C1e=[{title:"The Serve-or-Walk Decision Brief",prompt:`You are drafting the targeting decision brief that ends a segmentation project. Company: [COMPANY].
846
847The sized segmentation:
848[PASTE THE CURRENT-BASE AND MARKET TABLES FROM THE SIZING PROMPT]
849
850Constraints I operate under:
851[SALES TEAM SIZE AND STRUCTURE, PRODUCT ROADMAP COMMITMENTS, DELIVERY CAPACITY, ANY BOARD OR OWNER MANDATES]
852
853My top 20 accounts, tagged by segment:
854[PASTE LIST]
855
856For each segment, produce a one-page brief:
8571. A verdict: SERVE AND GROW, HOLD, or EXIT, plus a ranked targeting priority across all segments. At least one segment must rank last, and you must nominate a hold or exit candidate even if the case is close. I can overrule a recommendation; I cannot overrule a tie.
8582. The argument, five sentences or fewer, grounded in the sizing numbers.
8593. What the verdict forces: coverage changes, incentive changes, roadmap implications, and which of my top 20 accounts are affected.
8604. The revenue at risk if we deprioritize, stated plainly.
8615. The three hardest objections my exec team will raise, each with the counter or the honest concession.
862
863Close with the single decision I must make in the next 30 days for this segmentation to change anything, and what happens if I do n
863ot make it.`},{title:"The Profit-Pool Mapper",prompt:`I want a profit-pool map of the [INDUSTRY] value chain: a table showing, for each step in the chain, its share of total industry revenue and its operating margin, so I can see where the profit sits versus where the revenue is.
864
865My company: [COMPANY NAME, WHAT YOU DO, ROUGH ANNUAL REVENUE]. We operate at the [VALUE-CHAIN STEP(S) YOU OCCUPY] step.
866
867Source material, pasted or attached below:
868[PASTE: excerpts from 3-5 annual reports or 10-Ks of companies at different steps of the chain, trade-association revenue data if you have it, and any analyst or industry coverage you can find]
869
870Work in this order:
8711. Define the value chain. Break [INDUSTRY] into 5 to 9 discrete steps from raw input to end customer. Name 2-3 representative public companies per step. If a step has no pure-play public company, say so and name the closest proxy segment inside a diversified filer.
8722. Estimate total industry revenue and each step's share of it. Show the source or the logic behind every number. Where you are inferring rather than citing, label the figure INFERRED and give a range, never a false-precision point estimate.
8733. Estimate operating margin per step from the representative companies' financials. Where a filer spans multiple steps, adjust for segment mix and state the adjustment you made.
8744. Reconcile. Revenue shares must sum to roughly 100% of the industry total, and the implied total profit pool must be sane against reported industry profits. Flag any step where reconciliation forced you to revise an estimate.
8755. Output the profit-pool table: step, revenue share %, operating margin %, absolute profit pool $, share of total industry profit. Rank the steps by profit share.
8766. Write a one-page narrative: where the money actually is, where it is thin, which step captures profit out of proportion to its revenue, and the two or three structural reasons why (pricing power, concentration, switching costs, regulation, capital intensity).
8777. Confidence audit. List your five weakest estimates, what evidence would firm each one up, and whether firming it up could change the ranking in step 5.
878
879Do not smooth over data gaps. Label every gap and keep going.`},{title:"The Position Audit",prompt:`I have a profit-pool map of my industry (pasted below) and I want to know exactly where my company sits in it and how well we capture the pools we touch.
880
881The profit-pool map: [PASTE THE TABLE FROM THE PROFIT-POOL MAPPER, OR ANY REVENUE/MARGIN-BY-STEP DATA YOU HAVE]
882
883My company's financials: [PASTE YOUR P&L OR SUMMARY: revenue by product/service line, gross margin by line if you have it, operating margin overall]
884
885How our revenue lines map to value-chain steps, as best I understand it: [E.G. 'our distribution segment = the wholesale step; our service contracts = the aftermarket step']
886
887Produce:
8881. A position table: for each value-chain step, whether we participate, our revenue in that step, our estimated margin in that step, the step's industry-average margin, and the gap.
8892. Our capture ratio per step: our share of that step's total profit pool versus our share of its revenue. Tell me where we punch above our weight and where we are leaving money on the table.
8903. The exposure read: what percentage of our total profit comes from steps that are shallow (below-average margin) versus deep. If most of our profit sits in a shallow pool, say so bluntly.
8914. The three adjacent steps where our existing assets (customer relationships, data, physical footprint, contracts) would travel best, with the honest obstacles for each.
8925. Questions you could not answer from my data, listed so I can pull the right internal numbers next pass.
893
894Where my line-to-step mapping looks wrong or too coarse, challenge it before you compute anything on top of it.`},{title:"The Margin Migration Tracker",prompt:`I want to know whether profit in the [INDUSTRY] value chain is migrating, in which direction, and how fast.
895
896Use the same value-chain steps as this map: [PASTE THE STEP DEFINITIONS OR THE FULL POOL TABLE]
897
898Source material from two points in time:
899[PASTE: financials or 10-K excerpts for the representative companies from roughly 5 years ago, e.g. FY[YEAR]]
900[PASTE: the same companies' most recent financials, FY[CURRENT YEAR]]
901
902Produce:
9031. A two-vintage table: for each step, revenue share and operating margin then versus now, with the delta in both.
9042. The migration verdict: which steps gained profit share, which lost it, and whether the movement is upstream, downstream, or toward a step that barely existed five years ago. State the verdict in one sentence before you explain it.
9053. Driver analysis per moving step: is the shift driven by pricing, consolidation, technology substitution, regulation, or input costs? Cite the evidence from the filings that supports each driver, and say where you are speculating.
9064. A five-year extrapolation, clearly labeled as scenario rather than forecast: if the current drivers hold, what does the pool table look like in [YEAR+5]? Then name the one assumption most likely to break.
9075. The 'so what' for a company sitting at the [YOUR STEP] step: are we in the path of the migration or in its wake, and what is the earliest visible indicator that would confirm it either way?
908
909Where the two vintages are not comparable (restatements, changed segment definitions, M&A), flag it rather than forcing the comparison.`},{title:"The Triangulation Auditor",prompt:`Below is a profit-pool analysis of the [INDUSTRY] value chain. It came from [SOURCE: a consulting deck / our internal strategy team / a banker's industry primer / my own earlier session with you]. Before anyone in my company acts on it, I want it stress-tested the way a skeptical senior partner would.
910
911The analysis: [PASTE THE POOL TABLE, THE STEP DEFINITIONS, AND ANY STATED SOURCES OR FOOTNOTES]
912
913Any underlying data I have access to: [PASTE FILINGS, DATA EXCERPTS, OR WRITE 'none, the chart is all I was given']
914
915Run five checks and report each as PASS, FAIL, or CANNOT VERIFY:
9161. Reconciliation. Do the revenue shares sum to the industry total? Does the implied total profit pool square with reported industry profits? Show the arithmetic.
9172. Sourcing. For each material number, is there a stated source, and is it the kind of number that source could actually produce? Flag every figure that has no visible provenance.
9183. Segment-mix distortion. Where a step's margin was proxied from a diversified company, could the proxy's other segments be polluting the estimate? Name the specific companies where this risk is highest.
9194. Vintage. How old is the underlying data, and has anything since (a major merger, a regulatory change, an input-cost shock) plausibly moved the pool? List the events I should check.
9205. Convenient conclusions. Does the analysis happen to justify what its author was selling? Identify any step where the estimate leans in the direction of the author's interest, and what an adversarial estimate would look like.
921
922Then give me: the three findings most likely to change a decision if corrected, and the three cheapest actions (a specific filing to pull, a trade dataset to buy, an expert to call) that would tighten the analysis the most.`}],E1e=[{title:"The Adjacent-Pool Scanner",prompt:`I want to see the profit pools one step upstream and one step downstream of my company, so I can tell where the dollars I spend and the dollars I collect end up as someone else's profit.
923
924My company: [NAME, INDUSTRY, ROUGH REVENUE, YOUR STEP IN THE CHAIN
924].
925My largest supplier categories and roughly what I spend on each per year: [E.G. 'contract manufacturing ~$40M, logistics ~$12M, packaging ~$8M'].
926My customer types and roughly what each contributes to revenue: [E.G. 'big-box retail 60%, distributors 30%, direct 10%'].
927
928Source material on those adjacent industries: [PASTE: filings or public financials for your major suppliers and customers, or their closest public comparables]
929
930Produce:
9311. An upstream pool table: for each supplier category, the supplier industry's typical operating margin, the margin of my specific suppliers or their comparables, and my estimated annual contribution to their profit in dollars.
9322. A downstream pool table: same structure for each customer type. What margin do they earn on the products or services they buy from me, and how much of their profit do I effectively fund?
9333. The imbalance read: rank every adjacent pool by margin. Show me in one table where I sit relative to the parties I buy from and sell to. If I am the thinnest margin in my own neighborhood, say it plainly.
9344. Structural explanations: for the two richest adjacent pools, why are they rich (concentration, switching costs, information advantage, contract structure), and which of those advantages is durable versus contestable?
9355. Contestability list: the specific levers available to me short of full integration, such as dual-sourcing, contract renegotiation at [NEXT RENEWAL DATE], selective disintermediation of one customer segment, or building the capability in-house for one product line. For each lever, the realistic margin capture and what it puts at risk.
936
937Separate what the numbers show from what you are guessing. I will act on the first and verify the second.`},{title:"The Option-Set Generator",prompt:`You are a strategy partner building a set of strategic options for a leadership team. Here is our situation:
938
939Company: [one paragraph: what you sell, to whom, revenue, margin profile]
940Market: [what is changing: demand, competitors, technology, regulation]
941Constraints: [balance sheet, debt, talent, ownership structure, anything off the table]
942Ambition: [what the CEO actually wants: growth target, exit, margin, survival]
943Time horizon: [e.g., 3 years]
944
945Generate exactly four strategic options. They must be mutually exclusive: choosing one must foreclose the others. For each option give me:
946
9471. Thesis in one sentence: the bet this option makes about the world.
9482. The five moves it requires, in sequence.
9493. Investment: order-of-magnitude capital and people, and where it comes from.
9504. Risk: the two things most likely to kill it.
9515. What has to be true for this option to win. Specific enough that we could test each condition.
9526. Expected payoff if it works, and what year it shows up in the P&L.
953
954Then check your own work. If any two options could be run at the same time by the same team, they are variations of one option. Merge them and generate a genuinely different replacement. One of the four should be the option you suspect this leadership team does not want to hear.`},{title:"The Distinctness Audit",prompt:`Here are the strategic options currently on our table:
955
956[paste your options, however rough: bullets, a memo, slides converted to text]
957
958Audit them for false distinctness. For every pair of options, answer one question: could the same leadership team execute both simultaneously without contradiction? If yes, they are one option wearing two names. Show me exactly where they overlap: shared assumptions, shared investments, shared customers, shared risks.
959
960Then rebuild the set. Force real separation on three axes: where we play, how we win, and what we stop doing. Every option must require killing something the other options keep. If an option demands no sacrifice, it is a wish, and you should say so.
961
962Finally, name the option missing from this set: the one a rational outsider would propose that nobody inside the company will. Build it out with the same structure as the rest. Do not soften it.`},{title:"The Three Horizons Mapper",prompt:`Map our initiatives and strategic options onto McKinsey's Three Horizons of Growth (Baghai, Coley, and White, The Alchemy of Growth, 1999). Horizon 1 defends and extends the core business. Horizon 2 scales emerging businesses. Horizon 3 seeds future options.
963
964Core business: [what it is, growth rate, margin trend]
965Everything we are currently funding or considering: [list each initiative, project, and strategic option with rough annual spend and headcount]
966
967For each item: assign a horizon and justify the assignment in one sentence. Flag anything that is really Horizon 1 maintenance dressed up as Horizon 2 innovation. That is the most common self-deception and I want it named per item.
968
969Then total spend by horizon and show me the split. Compare it against the common rule of thumb of roughly 70/20/10 across the three horizons (a popular heuristic, not official McKinsey doctrine) and tell me what our imbalance says about us. If Horizon 3 is empty, propose three seeds that fit our existing capabilities, each testable for under [$ amount]. If Horizon 1 is starving, say so plainly. Defense funds everything else.`},{title:"The First-Cut Business Case",prompt:`Build a first-cut business case for each of these strategic options:
970
971[paste your option set]
972
973Baseline financials: [current revenue, gross margin, EBITDA, growth rate]
974Planning assumptions we already use: [hurdle rate or WACC, planning horizon, any board-mandated constraints]
975
976For each option, build a simple model in a table: year-by-year revenue impact, cost to execute, EBITDA effect, and cumulative cash position over [5] years. State every assumption you make in a numbered list, ranked by how much the outcome moves if the assumption is wrong.
977
978For the top three assumptions per option, define the cheapest real-world test that would confirm or kill the assumption within 90 days: what we do, what we measure, what result kills it.
979
980Then give each option a kill condition: the observable signal that means we stop, and the sunk cost at that point. I care about what each option costs us to find out it was wrong. That number matters more than the upside case.`}],_1e=[{title:"The Recommendation Forcer",prompt:`We have narrowed to these strategic options:
981
982[paste the final option set, with business cases if you have them]
983
984Decision context: [who decides, what the board cares about, what happened the last time we made a bet this size]
985My current lean: [the option you privately favor and why, be honest]
986
987Force a recommendation. Rank the options and pick one. Write the recommendation the way a senior partner delivers it: the choice, the three reasons, the single biggest risk and how we manage it, and the first 90 days of moves.
988
989Then do the harder part. Write the case against each rejected option in the voice of its strongest internal advocate, the actual argument that person will make in the room, and give me the response to each.
990
991Separately, pressure-test my lean. List the ways my stated preference could be motivated reasoning (sunk cost, career risk, familiarity) and tell me whether your recommendation survives if you strip my lean out of the inputs entirely. If your recommendation differs from my lean, say so in the first sentence.`},{title:"The Willingness-to-Pay Survey Builder",prompt:`You are a pricing researcher designing willingness-to-pay instruments. My product: [describe the product or service, what it does, who buys it]. Current price: [price and unit, e.g. $499 per user per year]. Segments I care about: [list 2-4 segments, e.g. SMB, mid-market, enterprise]. Where the survey will run: [email to existing customers / research panel / in-app].
992
993Build me:
9941. A Van Westendorp price-sensitivity instrument: the four standard questions (too cheap, a bargain, getting expensive, too expensive) worded for my product, plus screener questions that confirm the respondent actually buys in this category and a segment classifier so I can cut results by segment.
9952. A Gabor-Granger sequence: a purchase-intent ladder at [5-7] price points bracketing my current price from [low bound] to [high bound], with randomized starting points to control for anchoring.
9963. Field guidance: minimum sample per segment for stable estimates, question order, and the three most common ways these instruments get biased, with the exact wording that avoids each.
997
998Write every question verbatim, ready to paste into my survey tool. Van Westendorp and Gabor-Granger are standard published market-research methods. Use the textbook versions, adapted only in wording for my product.`},{title:"The Demand-Curve Estimator",prompt:`I fielded Van Westendorp and Gabor-Granger pricing surveys. Here are the raw responses: [paste or attach a CSV: one row per respondent, columns for segment, the four Van Westendorp price answers, and purchase intent at each Gabor-Granger price point]. Current price: [X]. Unit economics: [gross margin % or variable cost per unit].
999
1000Do the analysis:
10011. Van Westendorp: build the four cumulative curves and give me the point of marginal cheapness, the point of marginal expensiveness, the optimal price point, and the indifference price point, per segment and overall.
10022. Gabor-Granger: build the demand curve per segment, then the revenue curve and the gross-profit curve using my margin, and mark the revenue-maximizing and profit-maximizing prices.
10033. Reconcile the two methods: where they agree, where they diverge, and the price range I can actually defend.
10044. Flag data problems: respondents whose answers are internally inconsistent (too-cheap above too-expensive), segments with thin sample, and how much confidence each estimate deserves.
1005
1006Give me the numbers in tables, then a one-page read: what price the data supports, by segment, and what staying at [current price] costs me per year at [current volume].`},{title:"The Good-Better-Best Architect",prompt:`Design a good-better-best price architecture for my business. What I sell today: [current packages and prices]. The full feature and service list: [everything, including things you currently give away free]. Segments and what each values: [segment, what they need most, roughly what they will pay, from survey work or from your gut]. Deals I keep losing and why: [2-3 recent examples].
1007
1008Build:
10091. Three tiers with names, price points, and exactly which features sit in each. Every feature placement must do one of two jobs, drive upgrade or protect margin, and 
1009you will tell me which job each placement does.
10102. The fences: eligibility rules that stop a large customer buying the cheap tier (seat minimums, usage caps, support levels, contract terms), plus the two or three fences that will take the most sales pressure and why.
10113. Add-ons and bundles: what stays out of all tiers and sells separately, and which bundle discounts make sense at what depth.
10124. Migration: how current customers map to the new tiers, who gets grandfathered and for how long, and the expected revenue change from the shuffle at [assumed take rates, e.g. 60/30/10].
1013
1014Show the architecture as a single table I can put in front of my leadership team, then the reasoning underneath it.`},{title:"The Pocket-Price Waterfall",prompt:`Build a pocket-price waterfall from my transaction data. Attached: [transaction export: one row per invoice line, with list price, invoice price, and every discount field you have: standard discount, negotiated discount, rebates, promotions, payment-terms discounts, freight. Include customer, rep, product, region, and date. Add cost-to-serve fields if you have them: expedited freight, support hours, returns].
1015
1016Do this:
10171. Build the waterfall: list price down through every deduction to pocket price, averaged across the book, shown as a % of list at each step.
10182. Show the pocket-price band: the distribution of pocket price across transactions for the same product. Give me the spread between the 10th and 90th percentile, in dollars and points of margin.
10193. Rank the leaks: which deduction costs the most in aggregate, and whether it concentrates in specific customers, reps, regions, or deal sizes.
10204. Name names: the 20 deals and 5 reps furthest below the band median, and for each, what pricing at the median would have been worth.
10215. Size the prize: total annual margin recovered if the bottom quartile of transactions moved to the current median pocket price. Show the math.
1022
1023Tables first, then a one-page summary I can bring to a pricing review this week.`}],P1e=[{title:"The One-Percent Plan",prompt:`McKinsey's Marn and Rosiello published in HBR in 1992 (Managing Price, Gaining Profit) that a 1% improvement in realized price lifts operating profit by about 11% for the average company. Build me the plan to capture 1 to 3 points of realized price on my book.
1024
1025My numbers: [revenue, operating profit, gross margin %]. My pricing situation today: [when you last raised prices and how it went, discount approval rules if any, % of revenue on legacy or grandfathered pricing, contract renewal terms, annual escalator clauses or lack of them]. Constraints: [contracts locked until renewal, competitive accounts I will not touch, channel commitments].
1026
1027Give me:
10281. My version of the 11% math: what each point of realized price is worth to my operating profit line, computed from my numbers, so I stop quoting someone else's average.
10292. The standard realized-price moves (list increase, discount floor, approval escalation, surcharge recovery, legacy-price catch-up, term tightening, annual escalators, mix steering) ranked for my situation by margin impact, speed, and churn risk.
10303. For the top three: the specific mechanics, who has to approve, the customer communication, and the rep talk track for the pushback that will come.
10314. A 90-day sequence with expected margin capture per move and the leading indicator that tells me churn is running above plan, so I know when to slow down.
1032
1033Be specific with the numbers. I am going to pressure-test every one.`},{title:"The Value-Driver Tree Builder",prompt:`You are a corporate finance analyst building a MECE value-driver tree for [COMPANY], a [INDUSTRY] company with roughly [REVENUE] in annual revenue and [EBITDA] in EBITDA.
1034
1035Here are my P&L lines: [PASTE 15-25 LINES: revenue by segment or product, COGS components, gross margin, major SG&A buckets, D&A]
1036Here are my balance sheet lines: [PASTE: receivables, inventory, payables, PP&E, annual capex]
1037
1038Build a value-driver tree that decomposes enterprise value into growth and return on invested capital, then breaks ROIC into revenue drivers, margin drivers, working c
1038apital, tax, and capital intensity. Rules:
10391. Every branch must be mutually exclusive and collectively exhaustive. Flag any line you could not place cleanly.
10402. Go at least three levels deep on margin and working capital.
10413. At each leaf, state the operational lever a manager could actually pull, and which function in the org owns it.
10424. Show the arithmetic linking each leaf back to EBITDA, using my actual numbers.
10435. End with the three leaves where a 5% improvement moves EBITDA the most, ranked, with the dollar impact calculated and the calculation shown.
1044
1045Present the tree as indented text I can paste into a document, then the ranked table.`},{title:"The DCF Baseline",prompt:`Act as a valuation analyst. Build a DCF baseline for [COMPANY] with every assumption exposed.
1046
1047Inputs:
1048- Last 3 years: revenue [X], EBITDA [X], capex [X], depreciation [X], change in net working capital [X], cash taxes [X or effective tax rate]
1049- Net debt today: [X]
1050- My view of the next 5 years: revenue growth [X% per year], EBITDA margin trajectory [DESCRIBE]
1051- Cost of capital inputs if I have them: [risk-free rate, beta or a comparable public company, cost of debt, target debt/equity mix]. If I left these blank, use standard mid-market assumptions and label every one as your default.
1052
1053Build:
10541. A 5-year free-cash-flow projection with each line's formula written out next to the number.
10552. The WACC calculation shown step by step.
10563. Terminal value computed both ways: perpetuity growth at [X%, default 2.5%] and an exit multiple of [X, default a defensible range for my industry]. Show what percent of total value sits in the terminal.
10574. Enterprise value and implied equity value.
10585. Then re-run the DCF with the improved EBITDA from my bridge: [PASTE BRIDGE SUMMARY OR TARGET EBITDA AND TIMING]. State the value of the improvement case as one number: the difference in enterprise value between the two runs.
1059
1060Put every assumption in a single table at the top of your answer so my CFO can challenge them in order.`},{title:"The Sensitivity Engine",prompt:`Here is my business case model: [PASTE THE DRIVER TREE, BRIDGE, AND DCF OUTPUT FROM THE EARLIER PROMPTS, OR YOUR OWN NUMBERS]
1061
1062Run sensitivity and scenario analysis on it:
10631. One-at-a-time sensitivity: flex each of these drivers by plus and minus 10% and 20%: [LIST 5-8 DRIVERS, e.g. price, volume, churn, labor cost per unit, initiative ramp speed]. Show the EBITDA and valuation impact of each flex in a ranked table, biggest swing first.
10642. Tell me plainly which two or three drivers dominate the outcome, and which drivers I can stop arguing about because they barely move the number.
10653. Build three scenarios with named, internally consistent assumption sets:
1066   - Base: exactly what I gave you.
1067   - Downside: [DESCRIBE, e.g. recession, loss of the largest customer, initiative ramps slip 12 months]
1068   - Aggressive: [DESCRIBE, e.g. pricing action lands, churn fix works in year one]
10694. For each scenario give ending EBITDA, the valuation, and the single assumption that scenario lives or dies on.
10705. Finish with the break-even question: how far can [MOST CONTESTED DRIVER] deteriorate before the case stops clearing [HURDLE, e.g. our 15% IRR threshold]? Show the algebra.`}],T1e=[{title:"The CFO Red Team",prompt:`You are the most skeptical CFO I have ever presented to. Your job is to break this business case before my real CFO does.
1071
1072Here is the full case: [PASTE THE DRIVER TREE, THE BRIDGE, THE DCF, AND THE SIZED PRIZE]
1073
1074Attack it:
10751. Hunt for double counting: benefits claimed under two initiatives, or savings already baked into the operating budget as productivity assumptions.
10762. Flag every benefit with no named owner or no mechanism: any number that has no answer to "what specifically changes on Monday morning."
10773. Audit cost to achieve: severance, systems, external help, backfill, management attention. If it looks light, estimate by how much and show your reasoning.
10784. Test the ramps: mark any initiative assumed to reach run rate inside 12 months and tell me the base-rate reality for that category of change.
10795. Question the baseline: does the do-nothing case pretend the business holds flat while it is actually eroding, or does it quietly claim improvement that would have happened anyway?
10806. Restate the case at the number you would actually sign: your conservative EBITDA and valuation, with every haircut itemized and justified.
1081
1082Write it as a memo I would hate to receive. Rank the objections by how much money each one takes off the table.`},{title:"The Weight Stress-Tester",prompt:`Here is my current nine-box model: the criteria, weights, full score table, and resulting grid placements. [paste the output from your nine-box pass, or attach the file]
1083
1084Stress-test it. Run four scenarios and re-place every unit under each:
1085
10861. Sensitivity sweep: move each axis weight up and down by [10] points, one factor at a time, holding the rest proportional. List every unit whose cell changes under any single move.
10872. Growth-biased weighting: shift the attractiveness axis so market growth carries [40]% of the weight. Re-place all units.
10883. Profitability-biased weighting: shift so margin structure and our margin-vs-peers carry the dominant weight. Re-place all units.
10894. The politics detector: tell me exactly what weighting someone would have to argue for to move [UNIT] out of [ITS CURRENT CELL] and into [DESIRED CELL], and give me your straight assessment of whether that weighting is defensible for a business like ours.
1090
1091Then report in two lists: STABLE (units that hold their cell across all scenarios; these placements are real) and FRAGILE (units that flip; name the assumption doing the work in each flip).
1092
1093Close with one paragraph: which of my current weights is carrying the most freight, and what evidence would settle whether it deserves to.`},{title:"The Growth-Share Grid",prompt:`Build a growth-share matrix for my product lines.
1094
1095For each line: [PRODUCT LINE: our revenue, revenue growth last 12 months, our estimated market share, the largest competitor's estimated share or revenue]
1096
1097Market context: [overall market growth rate, or the growth threshold you consider 'high' for this industry; default to 10% if I give you nothing]
1098
1099Do this:
11001. Compute relative market share for every line (our share divided by the largest competitor's share). Show the arithmetic.
11012. Place each line in the four quadrants: high growth/high relative share, high growth/low share, low growth/high share, low growth/low share. Render as a markdown grid with revenue noted per line.
11023. For each line, describe its cash behavior in plain language: does it fund the portfolio, consume cash to hold position, or drain cash with no path to leadership. Then give the standard posture (grow, invest to win, milk, exit) and say whether you would follow it here or deviate, and why.
11034. Flag where the model's core assumption breaks for my business. Relative share only predicts profitability where scale drives cost advantage. If any of my lines compete on something scale does not buy (relationships, regulatory position, niche specialization), say so and mark that placement as low-confidence.
11045. End with the portfolio-level cash picture: which lines are funding which, and whether the funding lines can carry the consuming lines at their current growth rates.`},{title:"The Harvest-or-Divest Brief",prompt:`One of my units landed in the harvest-or-divest band. Write me the decision brief.
1105
1106The unit: [name, revenue, margin, growth trend over 3 years, headcount, why it scored low on the grid]
1107
1108Entanglements, and be exhaustive here: [shared systems it runs on, shared customers or contracts that bundle it with other units, shared facilities, key people who also serve other units, any parent guarantees or brand dependencies]
1109
1110Exit context: [plausible buyer types if any, whether competitors have acquired similar assets, any prior inbound interest, contractual or regulatory constraints on a sale]
1111
1112Produce, in order:
11131. HARVEST plan: cut investment to maintenance level, run for cash. Estimated 12-month and 36-month cash picture, what breaks first as investment stops, and the trigger event that would tell me harvesting has run its course.
11142. DIVEST plan: realistic exit routes ranked (trade sale, sponsor, management buyout, wind-down), a defensible valuation range with your method stated as illustrative, and the stranded-cost analysis: every shared cost that stays with me after the unit leaves, itemized.
11153. The ten questions any serious buyer will ask in the first meeting, with my current best answer to each and a flag on the answers that will hurt the price.
11164. Side-by-side: 3-year cash and management-attention comparison of harvest vs. divest vs. the do-nothing default.
11175. Your recommendation in one paragraph, stated plainly, with the single factor that most drives it.
1118
1119Rule: the stranded-cost section is where these analyses usually flatter the seller. Be pessimistic there.`}],D1e=[{title:"The Customer Portfolio Nine-Box",prompt:`Run a nine-box on my customer portfolio. Same mechanics as a business-unit grid, but the axes are account attractiveness and strength of our position.
1120
1121Context: [company, what we sell, total revenue, rough gross margin]
1122
1123Accounts or segments to score, one block each:
1124[ACCOUNT/SEGMENT: annual revenue to us, revenue trend over 2 years, estimated margin or cost-to-serve if known, our share of their total spend in our category if known, relationship depth (single contact vs. multi-level), contract status and renewal date, any concentration or payment-behavior concerns]
1125
1126Step 1: Propose the criteria. Account attractiveness: 4-5 weighted factors (account size and growth, margin quality, strategic or reference value, risk profile). Strength of position: 4-5 weighted factors (share of wallet, relationship depth, switching costs in our favor, competitive presence in the account). Weights sum to 100 per axis, one line of reasoning each. Stop for my sign-off.
1127
1128Step 2: Score every account 1-9 per factor with the math shown. Mark thin-data scores [ESTIMATE].
1129
1130Step 3: Place accounts on the grid and assign each a posture: GROW (invest sales and service capacity), DEFEND (protect share of wallet, deepen relationships before renewal), REPRICE (attractive account, weak economics for us), or RELEASE (let a competitor win it).
1131
1132Step 4: The cost-to-serve overlay. Using whatever I gave you on service intensity, flag every account whose demands on my organization are out of proportion to its grid position, especially any account in the top-revenue five that lands outside the GROW 
1132cells.
1133
1134Step 5: Close with the three moves the grid most clearly supports, each with the account named, the action, and what I should expect to change in 12 months.`},{title:"The Current-State Mapper",prompt:`You are helping me build a current-state operating model map for [FUNCTION OR BUSINESS UNIT] at a [INDUSTRY] company doing roughly [ANNUAL REVENUE].
1135
1136I'm going to brain-dump how work actually gets done here, including the workarounds nobody writes down. Turn it into a structured map.
1137
1138The dump: [PASTE EVERYTHING: how work flows end to end, who touches what, which systems people use and which they route around, where handoffs break, the spreadsheets and email threads holding things together, what gets escalated and to whom, what gets decided twice]
1139
1140Produce five sections:
11411. PROCESS INVENTORY. Every distinct process I described: name, owner, trigger, inputs, outputs, rough cycle time if I gave one. Flag any process with no clear owner in bold.
11422. ROLES SNAPSHOT. Who does what. Call out anywhere the same work happens in two places, and any role that exists mainly to move information between systems.
11433. SYSTEMS MAP. Each system: what it was bought for, what it is actually used for, and every place a spreadsheet, inbox, or chat thread is doing a system's job.
11444. HANDOFF TABLE. Every handoff: from whom, to whom, what breaks there, and the workaround currently covering for it.
11455. GOVERNANCE READOUT. How decisions get made today: which decisions have a clear owner, which have none, which get re-made after they were already made.
1146
1147Tag every line [STATED] if I told you or [INFERRED] if you deduced it. Close with the 10 questions that would most improve this map if I answered them.`},{title:"The Org Design Option Generator",prompt:`Design three future-state org structure options for [FUNCTION OR BUSINESS UNIT].
1148
1149Context:
1150- Current structure: [PASTE OR DESCRIBE: layers, teams, headcount by team, reporting lines]
1151- What the structure must deliver over the next 2 years: [TOP 3 PRIORITIES WITH NUMBERS, e.g., cut order-to-cash cycle time 30%, absorb 2x volume without adding headcount, stand up a pricing capability]
1152- Where the current structure fails: [BE SPECIFIC: which decisions are slow, which work is duplicated, which processes are orphaned, where spans are too wide or too narrow]
1153- Constraints: [WHAT CANNOT CHANGE: key people, union rules, systems, budget, geography]
1154
1155Make the three options genuinely different: one functional design, one process-aligned or value-stream design, one hybrid. For each option give me:
11561. The structure: teams, reporting lines, spans, layers. Draw it in indented text.
11572. The design logic: which of my priorities it serves and the mechanism by which it serves them.
11583. What it fixes from my failure list, item by item.
11594. What it breaks: the new seams it creates, the decisions that get harder, the people whose jobs change most.
11605. Migration difficulty, 1 to 5, with the two hardest moves named.
1161
1162Then pick one given my constraints and defend the pick in one paragraph. Do not hedge with "it depends."`},{title:"The Decision-Rights Charter Builder",prompt:`Build me a decision-rights charter for [FUNCTION OR BUSINESS UNIT].
1163
1164Here are the decisions that are slow, contested, or keep getting re-made: [LIST 10 TO 20 REAL DECISIONS WITH THRESHOLDS WHERE THEY EXIST, e.g., pricing exceptions over 5%, vendor contracts over $250K, backfill approvals, changes to the production schedule inside 48 hours, customer credits over $10K]
1165
1166Here is who touches these decisions today: [ROLES AND STANDING MEETINGS CURRENTLY INVOLVED]
1167
1168Produce:
11691. A decision-rights table. For each decision: one Decider (a single role, never a committee), who gives Input, who holds a Veto and on what narrow grounds, who gets Informed. Wherever a committee decides today, propose the single role that should own it and say why.
11702. Threshold design: where a dollar or risk threshold should split a decision into "team decides" vs. "escalate," with the specific number you would set and your reasoning.
11713. A forum audit: given this table, which of my current meetings still need to exist, which shrink to 15-minute informs, and which die. Name them.
11724. An escalation path: when the Decider and a Veto-holder disagree, where it goes and how fast it must resolve. Give a clock, in days.
11735. The five decisions on my list where moving authority down one level saves the most time, ranked.
1174
1175Write it so I could publish it internally as-is.`},{title:"The Tech-and-Data Layer Sketch",prompt:`Sketch the technology and data layer of a target operating model that builds on what I already own instead of assuming a replatform.
1176
1177Current systems: [LIST EACH SYSTEM: name, what it does, roughly how old, who owns it]
1178Where the data lives: [WHICH SYSTEM HOLDS CUSTOMER, PRODUCT, FINANCIAL, AND OPERATIONAL DATA, AND WHERE THE SAME DATA LIVES IN TWO PLACES]
1179The shadow layer: [THE SPREADSHEETS, ACCESS DATABASES, EMAIL WORKFLOWS, AND MANUAL EXPORTS THAT ACTUALLY RUN THE PLACE. DO NOT SKIP THIS.]
1180What the future-state processes need: [E.G., ONE VIEW OF A CUSTOMER, SAME-DAY QUOTE TURNAROUND, AUTOMATED HANDOFF BETWEEN SYSTEM A AND SYSTEM B]
1181
1182Produce:
11831. A current-state readout: each system, its real role, and every point where a human being is the integration.
11842. A target sketch in three layers: KEEP (systems that stay as the system of record), CONNECT (the integration and workflow layer built on top of them), RETIRE (what the connect layer makes unnecessary, including the shadow tools). Be explicit about what does NOT get replaced.
11853. A data decision list: for every piece of data living in two places, which system wins as the source of truth, and what happens to the loser.
11864. Sequencing: the order to build the connect layer in, driven by which manual integration burns the most hours today, with a rough effort size (S/M/L) per move.
11875. The three places this sketch is most likely wrong given how little you know about my environment, stated plainly.`}],O1e=[{title:"The Blueprint Assembler",prompt:`Assemble a complete target operating-model blueprint for [FUNCTION OR BUSINESS UNIT] at a [INDUSTRY] company, roughly [REVENUE] and [HEADCOUNT].
1188
1189Inputs. Paste whatever you have; rough is fine:
1190- Current-state map: [PASTE YOUR MAP, OR THE RAW DUMP OF HOW WORK HAPPENS TODAY]
1191- Org direction: [PASTE THE STRUCTURE YOU ARE LEANING TOWARD AND WHY]
1192- Decision rights: [PASTE YOUR TABLE, OR A LIST OF WHO SHOULD DECIDE WHAT]
1193- Tech and data direction: [PASTE YOUR KEEP/CONNECT/RETIRE THINKING]
1194- The outcomes this redesign must produce: [3 TO 5 MEASURABLE OUTCOMES WITH TARGET NUMBERS AND DATES]
1195
1196Produce the full blueprint as one document:
11971. EXECUTIVE SUMMARY. The case for change in under 200 words, anchored on my outcome numbers.
11982. DESIGN PRINCIPLES. Five to seven rules the design follows, each traceable to one of my outcomes. No principle that every company would claim.
11993. FUTURE STATE BY ELEMENT. One section each for process, organization, governance and decision rights, technology and data, and the behaviors the new model requires. Specific enough that a new hire could read it and know how the place is supposed to run.
12004. GAP ANALYSIS. Current vs. future for each element, each gap sized as a small, medium, or large move.
12015. TRANSITION SEQUENCE. Days 0-90, 90-180, 180-365, in dependency order, with the single riskiest move flagged per phase.
12026. RISK REGISTER. The five ways this redesign dies, who kills it (name the role, not the person), and the countermove for each.
1203
1204Where my inputs conflict, resolve the conflict and note the call you made. Where they are silent, make the operator's best guess and mark it [ASSUMPTION].`},{title:"The Portfolio Scorer",prompt:`You are a transformation program lead scoring a portfolio of initiatives. Here is my raw list of candidates: [paste your list, one per line, with a one-sentence description of each. Rough is fine.]
1205
1206Context: [company, industry, revenue range, headcount]. Strategic goal for the next 12 months: [e.g. take $15M out of operating cost, or free up 20% of service capacity]. Constraints: [budget ceiling, headcount freeze, systems you cannot touch, regulatory limits].
1207
1208Do the following:
12091. Define an impact scale of 1 to 5 with explicit criteria tied to my stated goal. State the dollar or capacity threshold for each level so two people scoring independently would land on the same number.
12102. Define an effort scale of 1 to 5 covering cost, duration, headcount, and change complexity. Same rule: explicit thresholds.
12113. Score every initiative on both scales. Where my description is too thin to score, score it anyway, flag the assumption you made, and list the single question that would change the score most.
12124. Sort into four buckets: quick wins (high impact, low effort), major projects (high impact, high effort), fill-ins (low impact, low effort), and deprioritize (low impact, high effort).
12135. For each initiative, write a two-sentence placement rationale I can read aloud to my leadership team and let them attack.
1214
1215Output a table: initiative, impact score, effort score, bucket, rationale, biggest open question. Then list your five least confident scores so we start the argument there.`},{title:"The Wave Sequencer",prompt:`Take my scored initiative portfolio and sequence it into execution waves.
1216
1217Portfolio: [paste your scored list: initiative, impact 1-5, effort 1-5, estimated annual value, estimated one-time cost, estimated duration in months]
1218Constraints: [how many initiatives your organization can run at once, e.g. 4], [available funding for wave 1, e.g. $500K], [any hard deadlines or board commitments], [dependencies you already know, e.g. warehouse automation needs the WMS upgrade first]
1219
1220Rules for sequencing:
12211. Wave 1 is quick wins only: initiatives that pay back inside [6] months. Their captured savings become the funding pool for wave 2.
12222. Show the funding math wave by wave: cumulative savings captured versus cumulative cost committed. Flag any point where the program goes cash-negative.
12233. Identify dependencies I missed. If initiative B assumes a system, a team, or a data source that initiative A creates, sequence accordingly and say so.
12244. Never load a wave beyond my concurrency limit. If something high-value must wait, tell me exactly what it is waiting for.
12255. For each wave produce: initiatives, start month, duration, which function must lead each one, value captured by end of wave, and the single risk most likely to slip the wave.
1226
1227Then write a five-line summary I can put in front of my CFO: total value, total cost, months to break-even, and what we are explicitly choosing not to do this year.`},{title:"The Estimate Interrogator",prompt:`My initiative scores are built on effort estimates that nobody has pressure-tested. Interrogate them before I take this to my leadership team.
1228
1229Initiatives and current estimates: [paste: initiative, estimated cost, estimated duration, teams involved]
1230Who provided each estimate: [e.g. the sponsor, IT, a gut call in the workshop]
1231
1232For each initiative:
12331. Classify the estimate source risk: did the number come from the people who will do the work, from the person who wants the initiative approved, or from a workshop guess? Sponsors underestimate their own initiatives. Flag every estimate where the estimator benefits from a low number.
12342. Write the five questions I should ask the frontline team that would expose the estimate as wrong. Make them concrete: data migration volumes, exception rates, integration counts, retraining hours, approval chains.
12353. State the common failure pattern for this type of initiative (system replacement, process redesign, org restructure, automation) and the typical way its category runs over.
12364. Give me a pessimistic re-estimate and state exactly what would have to be true for the original number to hold.
1237
1238Output a table sorted by the gap between the optimistic and pessimistic estimate. The top three rows are where my prioritization is most likely lying to me.`},{title:"The Kill List Memo",prompt:`Prioritization only works if the bottom of the list actually stops. Help me kill initiatives cleanly.
1239
1240Initiatives to stop or deprioritize: [list them, with current status, sponsor, spend to date, and why each scored low]
1241Political context: [who champions each one, any executive attachment, anything already announced publicly or to the board]
1242
1243For each initiative:
12441. Write a half-page kill memo: what it was meant to do, what we now know, why it loses to the initiatives we are funding instead, and the specific conditions that would reopen it. Name the tradeoff explicitly: funding this means not funding [X].
12452. Draft the two-paragraph message to the sponsor. Respectful, direct, no corporate padding. Acknowledge the sunk work. State the decision as final.
12463. Identify what to salvage: any completed workstream, data asset, or trained team that transfers to a funded initiative.
12474. Flag the zombie risk: the way this initiative is most likely to restart under a new name, and the control that prevents it (budget line removed, standing steering-committee check, headcount formally reassigned).
1248
1249Then give me the portfolio-level summary: total annual spend freed by the kill list and where each dollar and person goes instead.`}],M1e=[{title:"The Re-Score Engine",prompt:`An estimate changed and I need the whole portfolio re-scored before Monday's steering committee.
1250
1251Current portfolio: [paste the full scored list: initiative, impact, effort, bucket, wave]
1252What changed: [e.g. the ERP integration for initiative 7 came back at $900K, triple the estimate, or we lost two of the four ops analysts assigned to wave 1]
1253
1254Do the following:
12551. Re-score every initiative touched by the change, directly or through a dependency. Show old score, new score, and the reasoning in one line each.
12562. Tell me what moves buckets and what moves waves. If a wave-1 quick win is no longer quick, say which fill-in or deferred initiative takes its slot and why.
12573. Re-run the funding math: does wave 1 still generate enough captured savings to fund wave 2 on schedule? If there is a gap, size it and give me three ways to close it: defer, descope, or fund externally.
12584. Run a sensitivity pass on the rest of the portfolio: which three initiatives have the most fragile rankings, meaning a 25% error in their impact or effort estimate would flip their bucket? Those are the estimates to verify next.
12595. Write the delta summary for the steering committee: five bullets covering what changed, what we are doing about it, and what we need decided in the meeting.
1260
1261Keep every score the change did not touch stable. Do not reshuffle the portfolio for elegance.`},{title:"The Initiative Decomposer",prompt:`You are a transformation program designer. I will give you a strategy and you will decompose it into a complete initiative backlog.
1262
1263Company context: [industry, revenue, headcount, one paragraph on the business]
1264The strategy: [the strategic goals with target numbers, e.g. "take $40M out of operating cost in 24 months" or "move service margin from 12% to 18%"]
1265P&L lines in scope: [paste the summary P&L, or list the cost and revenue lines with current annual values]
1266Constraints: [what is off the table: no layoffs before Q2, ERP migration locked until next year, union terms, capex freeze]
1267
1268Decompose the strategy into an initiative backlog. Rules:
12691. Every initiative must map to a specific P&L line I gave you. If an initiative touches no line, cut it.
12702. Every initiative gets: a name a line leader would recognize, one sentence on what changes in how the work is done, the P&L line it hits, a value class (S: under $500K annual, M: $500K to $2M, L: over $2M), the function that owns it, and a difficulty rating (process change only / process plus system change / process plus system plus org change).
12713. Aim for MECE coverage. When you finish, show me which in-scope P&L lines have no initiative against them and say why.
12724. Flag any initiative that conflicts with a constraint I listed.
12735. Do not pad. Fifteen strong initiatives beat forty weak ones.
1274
1275Output the backlog as a table, then the coverage gaps and constraint conflicts below it. Then ask me the five questions whose answers would most change this backlog.`},{title:"The Value Hypothesis Sizer",prompt:`You are a transformation finance analyst. Size one initiative with a value hypothesis I can defend to a CFO.
1276
1277The initiative: [name and a one-paragraph description]
1278The baseline: [current-state numbers: annual cost of the process, headcount involved, volume, cycle time, error or rework rate, whatever you actually have]
1279The mechanism: [what changes: e.g. "AI drafts the first response, agents review" or "consolidate three regional teams into one"]
1280Comparable evidence: [internal pilots, vendor benchmarks, or published studies you trust; write "none" if none]
1281
1282Build the value hypothesis in this exact structure:
12831. Driver tree: baseline value = [volume] x [unit cost or rate]. Show the math with my numbers.
12842. The change: which driver moves, by how much, and why that magnitude is plausible given the mechanism.
12853. Three cases: conservative, expected, aggressive, each with the single assumption that separates it from the next.
12864. Ramp: how much of the annual value lands in quarters 1 through 4 after launch, and why.
12875. Cost to achieve: one-time and recurring, best estimate with stated assumptions.
12886. The kill assumption: the one assumption that, if wrong, zeroes this initiative. Tell me how to test it in two weeks for under $10K.
1289
1290Where I gave you no baseline number, do not invent one. Mark it BASELINE NEEDED and tell me exactly who in my org would have that number and what to ask for.`},{title:"The Delivery-Wave Planner",prompt:`You are sequencing a transformation portfolio into waves. transformation programs commonly run in roughly 8 to 12 week waves; use 10-week waves unless I say otherwise.
1291
1292The backlog: [paste the initiative table: name, expected value, owning function, difficulty, known dependencies]
1293Capacity: [how many initiatives each function can run at once; if unsure, write "assume 2 per function"]
1294Cash constraint: [budget available per quarter for cost to achieve]
1295Must-move-first: [anything with an external deadline: contract renewal, regulatory date, system sunset]
1296
1297Sequence the backlog into waves. Rules:
12981. Wave 1 is a credibility wave. Pick 3 to 5 initiatives that are high-certainty, low-difficulty, and land visible value inside the first wave. Wave 1 results buy permission to run wave 2.
12992. Respect dependencies. If B needs A's system change, B waits.
13003. Respect capacity. Never load a function past the limit I gave you.
13014. Sequence cash. Cost to achieve in early waves must fit the quarterly budget; value from early waves can fund later ones. Show the cumulative cash curve quarter by quarter.
13025. For every initiative, state in one line WHY it sits in its wave. "Fits" fails that test.
1303
1304Output: the wave-by-wave table, the quarterly cash table, and the three sequencing calls you were least sure about, with the tradeoff on each.`},{title:"The Stage-Gate Writer",prompt:`You are writing stage-gate criteria for a transformation initiative. Use the standard five-stage pipeline: identified, designed, validated, launched, tracked to P&L.
1305
1306The initiative: [name, description, value hypothesis, owner]
1307Our finance rules: [who signs off on validated value and what evidence they require; if unknown, write "draft a sensible default"]
1308Review cadence: [weekly or biweekly gate reviews]
1309
1310For each of the five gates, write:
13111. Entry criteria as verifiable statements. "Design complete" fails the test; "process map signed by the line owner and both upstream teams" passes it.
13122. The evidence artifact: the specific document or number the gate review looks at.
13133. Who approves, by role.
13144. The three questions a skeptical CFO asks at this gate, and what a passing answer looks like.
13155. Kill criteria: the condition under which this initiative dies at this gate instead of limping forward and diluting the portfolio number.
1316
1317Then compress all five gates onto one page I can hand to every initiative owner as the program standard.`}],R1e=[{title:"The Roadmap-on-a-Page Assembler",prompt:`You are assembling the executive view of a transformation program. I will give you the pieces; you produce the two artifacts the steering committee actually reads.
1318
1319The sequenced backlog: [paste the wave table from the sequencing work]
1320Value hypotheses: [paste the sized values: initiative, conservative and expected value, ramp]
1321Program facts: [start date, wave length, program name, sponsor]
1322Owners: [initiative-to-owner mapping, or write "draft placeholders by role"]
1323
1324Produce:
13251. The roadmap on a page: waves across the top with dates, initiatives placed in their waves, cumulative expected value marked at each wave boundary, and the three program-level milestones an executive would remember a week later. Format as a text layout I can rebuild on one slide.
13262. The initiative register: one row per initiative with ID, name, owner, wave, gate status (everything starts at "identified"), baseline, expected annual value, and next gate date. Format as a table I can paste straight into a spreadsheet.
13273. The honesty footnote: three sentences under the roadmap stating what is estimated, what is validated, and when the first real numbers arrive. Steering committees trust roadmaps that say what they do not know yet.
1328
1329Keep every number traceable. If a number appears on the page, it appears in my inputs. No invented figures.`},{title:"The Taxonomy Tailor",prompt:`You are a chief risk officer designing a risk taxonomy for one specific business. McKinsey has published that there is no single standard risk taxonomy across industries, so build one that fits this company instead of reciting a generic one.
1330
1331The business: [describe your company: what you sell, revenue scale, customer concentration, geographic footprint, supply chain shape, regulatory exposure, workforce model, technology dependencies]
1332
1333Build a risk taxonomy with 6 to 9 top-level categories. For each category give me:
13341. A one-line definition scoped to this business, not a textbook definition.
13352. 3 to 5 subcategories.
13363. One concrete example of a risk in that category this specific company could plausibly face.
13374. The internal function that should own monitoring for that category.
1338
1339Then do two more things:
13405. Name any category a standard taxonomy (strategic, financial, operational, cyber, legal and regulatory, reputational) would include that you deliberately merged or dropped for this business, and why.
13416. Name one category this business needs that a generic taxonomy would miss.
1342
1343Keep every definition specific enough that two executives reading it would sort the same risk into the same bucket.`},{title:"The Register Builder",prompt:`Using the taxonomy below, build a full risk register for this business.
1344
1345Taxonomy: [paste your taxonomy, or list the categories]
1346The business: [paste the same business description]
1347Known sore spots: [anything already worrying leadership: a fragile supplier, a big renewal, a system migration, a key-pers
1347on dependency]
1348
1349Enumerate 30 to 50 plausible risks across the taxonomy. For each risk produce a register row:
1350- Risk ID and one-line name
1351- Category
1352- Description: the specific mechanism of harm, two sentences maximum
1353- Trigger: the event that would set it off
1354- Early warning indicator: something measurable that moves before the risk lands
1355- Likelihood score, 1 to 5, using these anchors: 1 = under 5% in the next 24 months, 2 = 5 to 20%, 3 = 20 to 50%, 4 = 50 to 80%, 5 = over 80%
1356- Impact score, 1 to 5, using these anchors: 1 = an annoyance we absorb, 2 = noticeable but recoverable within a quarter, 3 = we miss the annual plan, 4 = multi-year damage or major regulatory action, 5 = a threat to the franchise
1357- One sentence justifying each score
1358- The control you would assume already exists, flagged as ASSUMED so my team can confirm or kill it
1359
1360Do not pad the list with boilerplate risks that apply to every company on earth. Every row must connect to something in the business description. If a category yields fewer than three credible risks, say so instead of inventing filler.`},{title:"The Heat Map and the Cut",prompt:`Here is our risk register with likelihood and impact scores: [paste the register rows]
1361
1362Do four things:
13631. Plot the register on a 5x5 likelihood-by-impact grid, rendered as a text table with risk IDs in each cell.
13642. Give me the top 10 risks by combined severity, and for each, one sentence on why it earned the slot.
13653. Flag velocity separately: identify any risk scored 3 or below on likelihood that would go from trigger to full impact in under 30 days. Slow-moving high scores get managed; fast-moving mid scores kill quarters. Name them.
13664. Flag clusters: any set of 3 or more risks sharing a common trigger or a common single point of failure. A cluster is one risk wearing several disguises and should be managed as one.
1367
1368Then write the half-page summary I would put in front of the executive team: the top 10, the velocity risks, the clusters, and the two decisions the room needs to make this quarter. Write it in plain declarative sentences a CEO would actually read.`},{title:"The Mitigation Drafter",prompt:`For each of the top risks below, draft a full mitigation entry.
1369
1370Top risks: [paste your top 10 from the heat map exercise, with scores and descriptions]
1371Our org structure: [list your executive roles and what each one actually controls]
1372Budget reality: [rough annual budget available for risk work, or write 'assume constrained']
1373
1374For each risk produce:
13751. The disposition: mitigate, accept, transfer, or avoid, with one sentence of reasoning.
13762. If mitigating: the specific action, not a theme. 'Qualify a second supplier for [component] by Q2' qualifies. 'Strengthen supply chain resilience' gets rejected.
13773. The owner, chosen from the org structure I gave you, matched to who actually controls the levers. Say why that role and not the obvious one.
13784. A cost band: under $50K, $50K to $250K, $250K to $1M, over $1M.
13795. The 90-day first milestone that proves the mitigation is real and not a slide.
13806. Residual likelihood and impact after the mitigation, on the same 1 to 5 anchors, with one sentence on what the mitigation does NOT cover.
13817. The review trigger: the event or date that reopens this entry.
1382
1383Where one action covers multiple risks, consolidate and say so. Close with a rough total cost of the full plan, and if it exceeds the budget I gave you, rank which mitigations to cut first and state the exposure each cut leaves open.`}],L1e=[{title:"The Blind-Spot Red Team",prompt:`Here is our full risk register and mitigation plan: [paste both]
1384Here is our business description: [paste it]
1385Our primary regulator(s): [name them]
1386
1387Attack this register. Take three perspectives in sequence.
1388
1389First, as a short seller building a thesis against this company: what risk would anchor your report that is missing from this register or scored conveniently low on it?
1390
1391Second, as our regulator: which entry reads like evidence we know about a problem and softened the score? Which enforcement trend in our industry is absent from the register entirely?
1392
1393Third, as a departing executive being honest in an exit interview: which risks here are owned in name only? Which mitigation is a document rather than a behavior? What does everyone below the executive team already believe is going to break?
1394
1395For each finding, give me: what is missing or miscored, the honest score on the same 1 to 5 anchors, and the specific question I should ask, and of whom, to confirm it within a week.
1396
1397End with the three risks you believe this register was built to avoid discussing.`},{title:"The Competitor Role Brief",prompt:`You are going to role-play one of my competitors in a strategic war-game. Before we play, build the role brief.
1398
1399The competitor: [competitor name]
1400My company: [what you do, rough revenue, market position]
1401The market: [category, how deals are won, anything unusual right now]
1402What I know about them: [recent moves, leadership changes, pricing behavior, anything from the field]
1403
1404Build a competitor role brief with five sections:
14051. Economics: how they make money, their cost structure relative to mine, where their margin actually comes from.
14062. Incentives: what their leadership is being measured on right now. Use public statements, earnings pressure, recent leadership changes, investor pressure. Flag anything you are inferring rather than know.
14073. Constraints: what they cannot easily do. Channel conflict, legacy install base, debt load, culture, regulatory exposure.
14084. Playbook: their last five significant competitive moves and the pattern behind them.
14095. Doctrine: one paragraph, written in first person as their head of strategy, stating how we respond when attacked.
1410
1411Separate what is publicly known from what you are inferring, line by line. I will correct the brief before we play.`},{title:"The Reverse Ambush",prompt:`You are the head of strategy at [your strongest competitor]. Your CEO has asked your team for a plan to take meaningful share from my company within 12 months. You are good at your job and you know our public weaknesses.
1412
1413Your company (the one you work for): [competitor name and market position]
1414My company (the target): [honest description, including the weaknesses you would rather not write down: churn, aging product, key-pers
1414on dependence, pricing pressure, delivery misses]
1415The market: [category dynamics, how customers actually switch]
1416
1417Produce the attack plan:
14181. The three moves you would make, sequenced across the year, with rough cost to you and expected damage to me.
14192. For each move, what you expect my company to do in response, and why that response fails or arrives too late.
14203. The single asset of mine you would try to neutralize first, and how.
1421
1422Then switch sides. As my advisor now: which of these three attacks are we least prepared for, what makes it hard for us to see coming, and what would we start doing this quarter if we took it seriously?`},{title:"The Survivors Read-Out",prompt:`Below is the record of a competitive war-game. Turn it into a decision read-out for my executive team.
1423
1424Game record: [paste the full move/counter-move exchange from the war-game, or your notes from a live session]
1425The decision we need to make: [what is actually on the table: budget, launch timing, pricing, M&A, market exit]
1426Resources in play: [rough budget, headcount, or capacity that could move]
1427
1428Produce four things:
14291. Options that survived contact: the moves that held up across every competitor response, with the reasoning trail from the game.
14302. Options that died: what got beaten, by which competitor, in which round. One line each on why.
14313. The reallocation table: given what survived, where money and people should move. Be specific about what gets defunded, and name the objection the owner of that budget will raise.
14324. Tripwires: for each surviving option, the two external signals that would tell us a competitor is running the counter we mapped, and how early we could realistically see each one.
1433
1434One page. Written for executives who did not sit through the game.`}],F1e=[{title:"The Activist in the Room",prompt:`You are an activist investor who has just built a 6 percent position in my company. You have done your homework and you want changes.
1435
1436My company: [description, revenue, ownership structure, recent performance]
1437The plan I am about to present: [the strategic plan or move, stated the way you would state it to the board]
1438What the numbers look like: [key financials or trajectory, rough is fine]
1439
1440Do three things:
14411. Write the letter you would send my board. Two pages, specific, cold, grounded in the numbers I gave you plus what an outsider could reasonably infer.
14422. List the ten hardest questions you would ask me in the room, ranked by how much damage a weak answer does.
14433. For the top three questions, write the answer a strong management team would give. Then tell me honestly whether my plan as described actually supports that answer. Where it does not, say so plainly and tell me what would have to change in the plan itself, in the answer.
1444
1445Stay hostile until section three. Do not soften the letter.`},{title:"The Metric Tree Builder",prompt:`You are building a value-driver tree for my company, using the architecture McKinsey documents in its published valuation work: enterprise value at the top, decomposed through ROIC and revenue growth, down to the operational KPIs a line manager can actually move.
1446
1447Company context:
1448- Business model: [how you make money: products/services, pricing model, customer segments, sales motion]
1449- Revenue: [total revenue and rough split by segment or product line]
1450- P&L summary: [paste your income statement lines: revenue, COGS, gross margin, SG&A, operating income]
1451- Balance sheet lines: [paste: receivables, inventory, payables, PP&E, and anything else material]
1452- Strategic priorities (optional): [what leadership is focused on this year]
1453
1454Build the tree in four levels:
14551. Level 1: Enterprise value, split into ROIC and growth.
14562. Level 2: Decompose ROIC into operating margin and capital turnover. Decompose growth into volume, price/mix, and new-revenue sources specific to my model.
14573. Level 3: Break each Level 2 branch into the P&L or balance-sheet line that feeds it. Name the actual line from my numbers.
14584. Level 4: For each Level 3 line, identify 2-4 operational KPIs a specific team could move this quarter. Each KPI must name the frontline behavior behind it.
1459
1460For every branch, state the causal chain in one sentence: this KPI moves this line, which moves this driver, which moves value. If a branch is weak or the causality is speculative for my business model, say so plainly instead of forcing symmetry.
1461
1462Output as an indented tree, then a table of the Level 4 KPIs with columns: KPI, definition, P&L or balance-sheet line it feeds, function that controls it, dollar logic.
1463
1464Before you build, ask me up to five clarifying questions about my business model, but only ones whose answers would change the tree's structure.`},{title:"The Driver Sensitivity Ranker",prompt:`You are stress-testing a value-driver tree to find where a point of improvement is 
1464worth the most.
1465
1466Inputs:
1467- My driver tree or KPI list: [paste the tree from a prior session, or your current KPI list]
1468- Financials: [revenue, operating margin %, invested capital or total assets, working capital lines, growth rate]
1469- Constraints: [what is genuinely hard to move in my industry, e.g. pricing is contract-locked for 18 months, labor is unionized, capacity is fixed until the new line opens]
1470
1471Do this:
14721. For each driver, compute the enterprise-value impact of a realistic improvement: one point of operating margin, one point of price, one point of volume growth, one day of DSO, one turn of inventory. Show the math and state every assumption.
14732. Rank the drivers by dollar impact per unit of realistic effort, using my constraints. A big number behind a locked contract ranks below a smaller number a team can move next month.
14743. Flag two special lists: drivers with high impact but low controllability, and drivers with modest impact that a single team fully controls. The second list is often where momentum starts.
14754. Recommend the three drivers I should concentrate on for the next two quarters, with the argument for each in a form I can defend to my CFO.
1476
1477Where you need a number I did not give, use a stated assumption and mark it clearly. Do not smooth over missing data.`},{title:"The Function KPI Assignment",prompt:`You are assigning KPI ownership from a value-driver tree down to specific functions: three KPIs per leader, no more.
1478
1479Inputs:
1480- Driver tree or KPI candidate list: [paste]
1481- Org structure: [list your direct reports or functions, e.g. Ops, Sales, Finance, Customer Service, HR, Procurement, IT]
1482- Current incentive structure: [what each leader is bonused on today, as far as you know it]
1483
1484Rules:
14851. Every KPI gets exactly one owning function. Shared ownership means no ownership.
14862. Each leader gets at most three KPIs. If a function seems to need five, the tree is wrong, so fix the tree and show me the fix.
14873. Each assignment needs three things: the KPI's precise operational definition (formula, data source, measurement frequency), the value chain in one sentence, and a leading indicator the leader can check weekly before the monthly number lands.
14884. Flag every conflict between a proposed KPI and a current incentive. A leader bonused on revenue will fight a margin KPI. Name each collision plainly.
14895. Flag every pair of KPIs where two functions' targets can work against each other, e.g. procurement's unit cost against ops' rework rate, and propose the tie-breaker metric that arbitrates.
1490
1491Output: one table per function, then the conflict list, then the five hardest conversations this assignment will force, each with a one-paragraph brief for how I open it.`}],B1e=[{title:"The KPI Definition Sheet Builder",prompt:`You are writing the definition sheets that keep a KPI architecture from dying in interpretation fights.
1492
1493Inputs:
1494- Final KPI list: [paste your chosen KPIs with owners]
1495- Systems of record: [where the data actually lives: ERP, CRM, billing system, spreadsheets. Name them.]
1496- Reporting rhythm: [weekly ops review, monthly business review, quarterly board, whatever you run]
1497- Financial anchors: [operating margin, growth rate, and any unit economics you have]
1498
1499For each KPI, produce a one-page definition sheet:
15001. Exact formula, with every term defined. If a term like 'active customer' or 'on-time' has two plausible meanings in my business, choose one, and state what the choice excludes.
15012. Data source, down to the specific field or report. Flag any KPI whose source is a spreadsheet a single person maintains. That is a fragility. Collect all of them into a risk register at the end.
15023. Measurement window and reporting lag.
15034. Green, yellow, and red thresholds, with the reasoning. Anchor red to the point where the value math breaks, using my financial anchors, and show the arithmetic.
15045. The known ways this metric gets gamed, and the counter-metric that catches it.
15056. What the owner is expected to bring to the review when it goes red: the diagnosis format, filled in with a worked example.
1506
1507Output all sheets, then the data-fragility risk register, then a list of every definitional decision I made through you that leadership should ratify explicitly rather than discover later.`},{title:"The Power-Interest Mapper",prompt:`You are mapping stakeholders for a change initiative. Here is the initiative in one paragraph: [describe the change: what is changing, who is driving it, what happens to headcount, budget, and reporting lines].
1508
1509Here is the org chart or a list of the people involved, with titles and reporting lines: [paste org chart text or a plain list].
1510
1511Here are my raw notes from conversations with or about these people: [paste interview notes, meeting notes, email excerpts, or your own observations. Rough is fine].
1512
1513Do the following:
15141. Sort every named person into a power-interest grid: high power / high interest (manage closely), high power / low interest (keep satisfied), low power / high interest (keep informed), low power / low interest (monitor). For each placement, cite the specific note or fact that justifies it. If you are guessing, say so and mark the placement LOW CONFIDENCE.
15152. For every high-power person, state in one sentence what they gain and what they lose if the initiative succeeds.
15163. Flag anyone whose stated position and likely actual position differ, and explain the gap.
15174. List the three placements you are least sure of and the single question I could ask to resolve each one.
1518
1519Format as a table plus a short readout. No filler.`},{title:"The Decision RACI Builder",prompt:`I am running [initiative name and one-line description]. Below are the decisions this initiative requires and the people who could plausibly touch each one.
1520
1521Decisions: [list every real decision, one per line. Examples: approve the new vendor contract, sign off on the revised org design, set the cutover date, approve severance terms].
1522
1523People: [list names, titles, and one line on what each person currently controls].
1524
1525Build a RACI for each decision: exactly one Accountable, Responsible parties who will do the work, Consulted only where their input changes the outcome, Informed for everyone else who needs to know.
1526
1527Then audit your own draft:
15281. Flag any decision where you could not name a single Accountable owner with confidence.
15292. Flag any person who appears as Consulted on more than half the decisions. That is usually a veto hiding as a courtesy.
15303. Flag any decision where the Accountable person and the person with actual power (per the people list) are different, and say what breaks when they disagree.
15314. List the decisions I have probably missed, based on the initiative description.
1532
1533Output one table per decision, then the audit as a short memo.`},{title:"The Blocker Brief",prompt:`One person is slowing down [initiative]. Here is who: [name, title, what they control, how long they have been in the role].
1534
1535Here is everything I have on their behavior: [paste email threads, meeting notes, secondhand reports, and anything they have said in open forums. Include dates where you have them].
1536
1537Here is what the initiative changes for them specifically: [budget, headcount, reporting lines, status, workload].
1538
1539Write me a one-page brief:
15401. Stated objections, quoted or paraphrased from the material, with dates.
15412. Likely real objection. Choose from: turf loss, workload, genuine substantive concern, scar tissue from a similar past effort, loyalty to someone else, or timing. Rank the top two and cite the evidence for each.
15423. What they would need to see, hear, or get in order to move. Be concrete: a role in the design, a delayed timeline, a public win, an exit.
15434. The three things I should never say to this person, based on the material.
15445. A draft opening for a one-on-one: my first ninety seconds, in plain spoken language.
1545
1546If the evidence contradicts itself, show me the contradiction rather than smoothing it over. Mark every inference you cannot support with a quote as SPECULATION.`},{title:"The Influence-Model Planner",prompt:`McKinsey's published Influence Model says people shift behavior when four conditions hold: they see leaders modeling the change, they understand and believe the reason for it, the formal mechanisms (incentives, processes, structures) reinforce it, and they have the skills to do the new thing.
1547
1548Score my initiative against those four conditions, segment by segment.
1549
1550Initiative: [one paragraph: what is changing and by when].
1551
1552Segments: [list each group the change touches, with rough headcount and one line on how the change hits them. Examples: field service managers (240 people, new scheduling system replaces their judgment calls); regional VPs (11 people, lose direct pricing authority)].
1553
1554What we have done so far: [list every communication, town hall, incentive change, or training already delivered, with dates].
1555
1556For each segment:
15571. Score each of the four conditions red, yellow, or green, with one sentence of evidence per score drawn from the inputs.
15582. For every red or yellow, name the single highest-impact action, who delivers it, and in which week.
15593. Identify which condition we keep over-investing in and which one we keep skipping. Most programs oversupply communication and undersupply reinforcing mechanisms. Tell me if mine does.
1560
1561End with a one-page sequenced plan: weeks 1 through 12, actions by segment, one named owner per action.`}],$1e=[{title:"The Conversation Sequencer",prompt:`I have [N] weeks before [the decision point: board vote, steering committee, budget approval]. I need the following people aligned, or at least neutral, by then.
1562
1563For each person: [name, title, current position (supportive / neutral / resistant / unknown), what they care about, and who they listen to. The Power-Interest Mapper's output pastes straight in here].
1564
1565Constraints: [anything fixed: travel, an offsite, someone leaving, a person I cannot approach directly].
1566
1567Build me the conversation sequence:
15681. Order the one-on-ones. For each, state why this person comes before the next. Apply these sequencing rules: land the most influential supporter first so I can reference them, never let a resistant person hear about the plan secondhand, and put the swing votes after I have at least two named supporters on record.
15692. For each conversation: the single ask, the one thing this person needs to hear early, the objection I should expect, and my answer to it in two sentences.
15703. Mark the conversations where the order depends on an outcome. Give me the branch: if [person] says no, what changes downstream.
15714. Tell me which conversations I should not delegate, and why.
1572
1573Output as a numbered schedule I can put against a calendar.`},{title:"The Governing Thought Extractor",prompt:`You are structuring an executive recommendation using the Pyramid Principle. I will give you raw material. Your job is to find the answer and state it first.
1574
1575THE DECISION I NEED MADE: [the specific decision, e.g. "approve $2.4M to consolidate our three regional service centers into one"]
1576THE AUDIENCE: [who decides, what they care about, what they already believe]
1577RAW FINDINGS: [paste your data, analysis notes, interview takeaways, whatever you have; messy is fine]
1578CONSTRAINTS: [anything off the table: budget ceiling, timeline, political realities]
1579
1580Produce:
15811. THE GOVERNING THOUGHT. One sentence, 25 words or fewer, that states the recommendation and the single most compelling reason. It must be a claim someone could disagree with. Write 3 candidates, then tell me which one you would bet on and why.
15822. THE SCQA OPENING. Situation (2 sentences of context the audience already agrees with), Complication (what changed or broke), Question (the question the complication forces), Answer (the governing thought). Total under 120 words.
15833. THE KILL TEST. State the one finding in my raw material that most undercuts the governing thought. If I cannot answer it in the room, the thought needs to change. Tell me whether it should.
1584
1585Do not hedge the governing thought. "We should consider" is a fail. Recommend.`},{title:"The Ghost Deck Builder",prompt:`Build me a ghost deck: the complete title-and-logic skeleton of an executive presentation, before any design work. Pyramid Principle discipline applies. The headlines alone must tell the whole story.
1586
1587GOVERNING THOUGHT: [the one-sentence recommendation]
1588SCQA OPENING: [paste it, or write "draft one"]
1589SUPPORTING PILLARS: [2-4 reasons the recommendation holds, or write "propose them from my findings"]
1590FINDINGS AND DATA: [paste everything relevant]
1591DECK LENGTH: [e.g. 12 slides plus appendix]
1592DECISION ASKED OF THE ROOM: [approve, fund, choose between options, kill]
1593
1594For each slide give me:
1595- SLIDE #
1596- ACTION TITLE: a full-sentence claim, 15 words maximum. "Service costs" fails. "Service costs rose 34% while volume stayed flat, and three sites drove all of it" passes.
1597- EVIDENCE SLOT: what proof belongs on this slide (chart type, table, quote, benchmark) and whether I already supplied it or need to go get it. Mark missing proof as EVIDENCE GAP in caps.
1598- SO-WHAT: one line on why this slide earns its place in the argument.
1599
1600Then print the READ-THROUGH: every action title in sequence as a single paragraph. If that paragraph does not stand alone as the full argument, revise the titles until it does. End with the appendix list: the backup slides for the 5 hardest questions this deck will draw.`},{title:"The MECE Pressure Test",prompt:`Pressure-test the structure of this argument for MECE violations: mutually exclusive, collectively exhaustive.
1601
1602GOVERNING THOUGHT: [the recommendation]
1603MY SUPPORTING PILLARS: [list your 2-5 supporting reasons or buckets exactly as you currently have them]
1604WHAT THE ARGUMENT MUST SURVIVE: [the decision forum, e.g. "a CFO who thinks this is an IT cost problem" or "a board that rejected a version of this last year"]
1605
1606Run three checks:
16071. OVERLAP CHECK (mutually exclusive). For every pair of pillars, state whether any evidence could file under both. Name the specific overlap. Overlapping pillars read as padding and invite the question "aren't these the same point?"
16082. GAP CHECK (collectively exhaustive). List what a skeptical executive would expect this argument to cover that no pillar covers. For each gap, say whether it becomes a new pillar, folds into an existing one, or gets parked in the appendix with one line of acknowledgment.
16093. LOAD-BEARING CHECK. Rank the pillars by how much of the recommendation rests on each. If one pillar carries more than half the weight, say so. That is 
1609where the argument gets attacked, and it may deserve two slides while a weak pillar gets cut.
1610
1611Then give me the restructured pillar set: renamed, regrouped, one-line rationale per change, maximum 4 pillars. If my original structure was already sound, say so plainly and do not invent changes.`},{title:"The Action Title Rewriter",prompt:`Rewrite these slide titles as action titles: full-sentence claims that carry the argument, in the Minto tradition where a reader who sees only the headlines gets the entire story.
1612
1613CURRENT TITLES, IN ORDER: [paste your deck's titles as a numbered list, topic labels and all]
1614GOVERNING THOUGHT: [the recommendation the deck exists to land]
1615AUDIENCE: [who reads this and how fast, e.g. "the CEO skims headlines on a phone before the meeting"]
1616
1617For each title:
1618- Rewrite it as one declarative sentence with a subject, a verb, and, where the evidence supports it, a number. 15 words maximum.
1619- If the current title is a topic label ("Market Overview", "Next Steps"), mark it TOPIC LABEL and state the claim the slide is hiding.
1620- If a title claims more than the slide's evidence can carry, mark it OVERCLAIM and write the honest version.
1621
1622Then run the SKIM TEST: print the rewritten titles in sequence and grade the flow A to F on three axes: each title advances the argument, the sequence builds to the governing thought, a reader who saw nothing else would make the right decision. Fix anything below a B by reordering or merging slides, and tell me which slides to cut. A slide whose title cannot be written as a claim is usually a slide that should not exist.`}],U1e=[{title:"The Hostile Read",prompt:`You are the most skeptical executive who will see this presentation. Shred it before the real one does.
1623
1624THE STORY LINE: [paste your action titles in order, plus the SCQA opening]
1625THE DECIDER: [role, what they protect, what they have rejected before, e.g. "CFO, guards cash, killed the last automation proposal over payback period"]
1626WHAT I AM ASKING FOR: [the specific approval: dollars, headcount, a date]
1627KNOWN WEAK POINTS: [anything you already know is soft; be honest, it comes out anyway]
1628
1629Produce:
16301. THE FIRST INTERRUPTION. Identify the exact slide where this decider stops the presenter, and the sentence they say. Most decks die at one specific headline. Name it.
16312. THE TEN QUESTIONS. The hardest questions this story line draws, ranked by damage. For each: which slide triggers it, whether the deck as structured can answer it, and if yes, the 2-sentence answer. If no, mark it NAKED and tell me what evidence or appendix slide would clothe it.
16323. THE COUNTER-NARRATIVE. Write the memo the smartest opponent of this recommendation would circulate the night before. One page. If it is more persuasive than my deck, tell me why.
16334. THE VERDICT. Approve, approve with conditions, or send back. As this decider, with only this material, pick one and name the single change that most improves the odds.
1634
1635Do not be polite. A gentle read here buys me a brutal one in the room.`},{title:"The Governing-Thought Tightener",prompt:`You are doing the second-pass edit on a draft decision memo. Your job is to tighten the governing thought and cut everything that does not prove it.
1636
1637DRAFT MEMO: [paste your draft, any length]
1638THE DECISION IT SUPPORTS: [one sentence]
1639AUDIENCE: [who reads it and what they already believe]
1640
1641Work in this order:
16421. Extract the governing thought as currently written. If the draft buries the answer, quote the sentence where it first appears and say how far down the page it sits.
16432. Test it against three questions, each graded yes or no with one line of justification: Is it a recommendation or a topic? Does it contain the strongest reason? Could the reader act on it alone?
16443. Rewrite it. Give me three candidate governing thoughts, each one sentence, each answer-first. Rank them and say why the winner wins.
16454. Run the cut list. Go paragraph by paragraph and mark each one KEEP (proves the governing thought), MOVE (true, belongs in an appendix), or CUT (interesting, proves nothing). Show me the full list with a five-word reason per verdict.
16465. Reassemble the memo using only KEEP material under the winning governing thought. Target 400 words.
1647
1648One rule: if more than half the draft gets marked CUT, stop and tell me the analysis does not yet support the recommendation. List the missing evidence instead of padding what survived.`},{title:"The Trade-off Forcer",prompt:`I have a decision with several live options and I need the trade-offs forced into the open before I recommend one.
1649
1650DECISION: [one sentence]
1651OPTIONS: [describe each option in one paragraph, including "do nothing" if it is genuinely on the table]
1652WHAT MATTERS MOST: [the 3-4 criteria that decide this, in strict priority order: cost, speed, risk, reversibility, headcount impact, whatever applies here]
1653KNOWN FACTS: [paste estimates, quotes, analysis, vendor numbers, anything you have]
1654
1655Produce:
16561. A trade-off table: options as rows, my criteria as columns. Each cell gets a short factual entry drawn from what I gave you. No numeric scoring. Where you have no basis, write UNKNOWN, and count the UNKNOWNs per option at the bottom.
16572. For each option, the single strongest argument for it and the single strongest argument against it, one sentence each.
16583. Reversibility check: for each option, can we walk it back within 90 days, and what would walking back cost in money and credibility?
16594. A recommendation with the governing thought stated first, then the two reasons that decided it against my ranked criteria.
16605. Kill criteria: the two or three observable conditions in the first 90 days that would prove this recommendation wrong.
1661
1662Do not split the difference or propose a blend to avoid choosing. If two options genuinely tie on my criteria, say the criteria are insufficient and name the single piece of information that breaks the tie.`},{title:"The Board Red Team",prompt:`Before this memo goes to [the board / my CEO / the executive committee], attack it.
1663
1664MEMO: [paste the final draft]
1665DECIDER AND AUDIENCE: [who decides, who else is in the room, and what each person cares about, e.g. "CFO cares about capex discipline, GC cares about the union agreement, the COO sponsored the losing option"]
1666WHAT I AM ALREADY WORRIED ABOUT: [optional: your own doubts, stated bluntly]
1667
1668Four passes:
16691. Strongest case against. Write the best one-paragraph argument for rejecting the recommendation, as the smartest skeptic in that room would make it. Steelman it. No strawmen.
16702. Load-bearing assumptions. List every assumption the recommendation collapses without. For each: how confident should I actually be, and what is the cheapest way to check it before the meeting?
16713. The questions I will get. The seven hardest questions this specific audience will ask, ranked by how much damage a bad answer does. For each, either draft the answer from the memo's own material or mark it NOT DEFENSIBLE and name what I would need to make it defensible.
16724. The failure story. Write the six-sentence version of how this decision looks in 18 months if it goes wrong, then name what the memo could add now (a stage gate, a reversal trigger, a smaller first step) that would have contained the damage.
1673
1674End with a verdict: SHIP, SHIP WITH FIXES (list them), or HOLD (say exactly what is missing). Do not soften the verdict t
1675…[truncated]o be agreeable.`}],q1e=[{title:"The Decision Record",prompt:`The decision is made. Write the record so that a year from now nobody relitigates it from memory.
1676
1677THE DECISION: [what was decided, by whom, on what date]
1678THE MEMO OR NOTES: [paste the decision memo, the meeting notes, or both]
1679OPTIONS REJECTED: [what was on the table and did not win]
1680DISSENT: [who disagreed and on what grounds, if anyone did. "None voiced" is an acceptable answer and worth recording.]
1681
1682Write a one-page decision record with five sections:
16831. The decision, stated plainly, with the owner and the effective date.
16842. Why: the governing thought and the two or three reasons that carried it, written in the past tense, as history.
16853. What we rejected and why, one line per option. This is the section that stops the relitigation.
16864. What we knew we did not know: the open risks and the unresolved dissent we accepted going in, named honestly. Recording the dissent protects the dissenter and the decision at the same time.
16875. Revisit triggers: the specific conditions or dates that reopen this decision, and who has the authority to call it. Everything outside those triggers stays closed.
1688
1689Keep it under 350 words. Neutral register. No selling. The memo argued for the decision; the record just has to survive being read in a year by someone who was not in the room.`},{title:"The House Method File",prompt:`You are going to build my company's standing method file. This is the context document every future analysis prompt will load first, so every output speaks our operating reality from the first line.
1690
1691Here is the raw material:
1692- What we do and how we make money: [two-paragraph description of the business model]
1693- Our stated strategy for the next 12-24 months: [paste strategy summary or annual plan excerpt]
1694- The 5-10 metrics leadership actually watches: [list metrics with current values]
1695- Who decides what: [list the decision-makers and what each one owns]
1696- Vocabulary we use internally: [product names, org names, terms of art]
1697- Known sensitivities: [topics or units that are politically loaded]
1698
1699Produce a single method file with these sections:
17001) Business context in 200 words.
17012) Strategic priorities, ranked.
17023) Metric definitions with current baselines.
17034) Decision rights map: decision type, owner, forum.
17045) House vocabulary with one-line definitions.
17056) Constraints and sensitivities.
17067) Output standards: every future deliverable states the recommendation first, quantifies impact against one of the metrics above, and names a single owner for every action.
1707
1708Keep it under 1,500 words. I will paste this file at the top of every analysis we run from now on.`},{title:"The Engagement Kickoff Chain",prompt:`Load the method file below, then run a full engagement kickoff on this problem.
1709
1710METHOD FILE: [paste your House Method File]
1711
1712THE PROBLEM: [one-paragraph description of the business problem]
1713WHAT TRIGGERED IT NOW: [the event, number, or complaint that put this on the table]
1714THE DECISION THIS MUST ENABLE: [the specific decision and who makes it]
1715DEADLINE: [date]
1716
1717Run these steps in order and label each one:
1718
1719STEP 1: Problem statement. Restate the problem as a single answerable question with a metric and a deadline. Flag anything ambiguous, cho
1719ose the most defensible interpretation, and say why.
1720
1721STEP 2: Issue tree. Break the question into mutually exclusive, collectively exhaustive branches, three levels deep. Mark each leaf: answerable with data we likely have, answerable with new data, or judgment call.
1722
1723STEP 3: Day-one hypothesis. State your best-guess answer and the three findings that would kill it.
1724
1725STEP 4: Workplan. Turn the tree into a two-week workplan: each analysis, the data it needs, the output it produces, and an owner placeholder.
1726
1727STEP 5: Data request. Write the exact data-request email I can send today: each dataset, format, date range, and the role that likely owns it.
1728
1729End with the five questions you would ask me before starting if you were the engagement manager on this.`},{title:"The Analysis-to-Memo Pipeline",prompt:`Load the method file and kickoff output below, then run the analysis chain.
1730
1731METHOD FILE: [paste your House Method File]
1732KICKOFF OUTPUT: [paste the full Engagement Kickoff Chain output]
1733DATA THAT CAME BACK: [paste tables and exports, or attach the files and list them here]
1734
1735Run these steps in order and label each one:
1736
1737STEP 1: Data audit. List what arrived versus what the data request asked for, what is missing, and which branches of the issue tree we can now close.
1738
1739STEP 2: Analysis. Work every answerable branch. For each: the calculation, the finding, and a confidence level (high, medium, low) with the reason.
1740
1741STEP 3: Kill test. Revisit the day-one hypothesis. Say plainly whether it survived, died, or changed, and name the finding that did it.
1742
1743STEP 4: Synthesis. Write the governing thought in one sentence, then the three supporting arguments beneath it, answer first, evidence under each.
1744
1745STEP 5: Decision memo. Produce a one-page memo for [decision-maker]: the recommendation, the cost of doing nothing quantified against the method file's metrics, the three arguments with evidence, risks with mitigations, and the specific ask with a date.
1746
1747Flag every number you calculated versus every number you assumed. I will check the assumed ones by hand.`},{title:"The Pre-Wire Run",prompt:`Load the method file and the decision memo below. The recommendation goes to [forum, e.g., the executive committee] on [date].
1748
1749METHOD FILE: [paste your House Method File]
1750DECISION MEMO: [paste the memo from the Analysis-to-Memo Pipeline]
1751THE ROOM: [list each attendee: name, role, and one line on what they care about or fear]
1752
1753Produce:
1754
17551) Stakeholder map. For each person: likely position (champion, persuadable, blocker), what the recommendation costs them, and what it gives them.
1756
17572) Pre-wire plan. The order I should meet them in before the forum, and the single point to land in each conversation. One point per person, no more.
1758
17593) The three hardest objections I will hear, written verbatim as that person would phrase them, each with a response grounded in the memo's evidence.
1760
17614) A tailored one-page version of the memo for the most likely blocker, reframed around what they own and what they are measured on.
1762
17635) The fallback. If the full recommendation dies in the room, the smallest version still worth taking, and exactly what we give up by settling for it.`},{title:"The Rerun Retro",prompt:`We ran the full chain on [problem] and the decision was made on [date]. Now update the method so the next run is better.
1764
1765WHAT WE PREDICTED: [paste the decision memo's recommendation and quantified impact]
1766WHAT ACTUALLY HAPPENED: [outcomes, real numbers, surprises, where the pushback came from]
1767WHERE THE ANALYSIS WAS WRONG OR THIN: [your honest read, two or three sentences]
1768
1769Produce:
1770
17711) Variance table. Each major claim in the memo against what happened, rated: held, partly held, missed.
1772
17732) Root causes. For each miss, name the cause: bad data, bad assumption, wrong frame, or execution gap. One line each.
1774
17753) Method file edits. The specific lines to add or change in our House Method File so the next run does not repeat the misses. Write the edits verbatim, ready to paste.
1776
17774) The next problem. Given what this cycle revealed, the three problems most worth running the chain on 
1777next month, ranked by recoverable dollars, with a one-line case for each.
1778
1779Keep the whole output under two pages. This is the step that turns five prompts into an operating system, so do not let me skip it.`}],gm=[{key:"problem_framing___issue_trees",label:"Problem Framing & Issue Trees",prompts:A1e},{key:"the_fact_base",label:"The Fact Base",prompts:j1e},{key:"assumption_audits",label:"Assumption Audits",prompts:k1e},{key:"market_sizing",label:"Market Sizing",prompts:N1e},{key:"competitive_intelligence",label:"Competitive Intelligence",prompts:I1e},{key:"customer_segmentation",label:"Customer Segmentation",prompts:S1e},{key:"profit_pool_analysis",label:"Profit-Pool Analysis",prompts:C1e},{key:"strategic_options",label:"Strategic Options",prompts:E1e},{key:"pricing_strategy",label:"Pricing Strategy",prompts:_1e},{key:"business_cases___models",label:"Business Cases & Models",prompts:P1e},{key:"portfolio_review",label:"Portfolio Review",prompts:T1e},{key:"operating_model_design",label:"Operating-Model Design",prompts:D1e},{key:"initiative_prioritization",label:"Initiative Prioritization",prompts:O1e},{key:"transformation_roadmaps",label:"Transformation Roadmaps",prompts:M1e},{key:"risk___mitigation",label:"Risk & Mitigation",prompts:R1e},{key:"competitive_war_gaming",label:"Competitive War-Gaming",prompts:L1e},{key:"kpi_architecture",label:"KPI Architecture",prompts:F1e},{key:"stakeholder_alignment",label:"Stakeholder Alignment",prompts:B1e},{key:"executive_narrative___decks",label:"Executive Narrative & Decks",prompts:$1e},{key:"board_memos___decisions",label:"Board Memos & Decisions",prompts:U1e},{key:"the_reusable_operating_system",label:"The Reusable Operating System",prompts:q1e}],G1e=({p:e})=>{const[t,n]=j.useState(!1),[i,a]=j.useState(!1),s=e.prompt.length>220,o=!i&&s?e.prompt.slice(0,220)+"…":e.prompt,l=()=>{navigator.clipboard.writeText(e.prompt),n(!0),setTimeout(()=>n(!1),2e3)};return r.jsxs("div",{className:"bg-[#141414] rounded-xl border border-white/15 hover:border-[#D4A843]/40 transition-all duration-200 p-5 flex flex-col gap-3",children:[r.jsxs("div",{className:"flex items-start justify-between gap-3",children:[r.jsx("h4",{className:"text-sm font-semibold text-white leading-snug",children:e.title}),r.jsxs("button",{onClick:l,className:"flex-shrink-0 flex items-center gap-1.5 px-2.5 py-1 rounded-md text-xs font-medium transition-all duration-200 cursor-pointer",style:t?{backgroundColor:"rgba(196,151,58,0.15)",color:dd,border:"1px solid rgba(196,151,58,0.3)"}:{backgroundColor:"rgba(255,255,255,0.05)",color:"#6b7280",border:"1px solid rgba(255,255,255,0.08)"},children:[t?r.jsx(Ia,{className:"h-3 w-3"}):r.jsx(W0,{className:"h-3 w-3"}),t?"Copied":"Copy"]})]}),r.jsxs("div",{className:"bg-black/60 rounded-lg p-3.5 border border-white/10",children:[r.jsx("p",{className:"text-xs text-gray-300 font-mono leading-relaxed whitespace-pre-line",children:o}),s&&r.jsx("button",{onClick:()=>a(!i),className:"mt-2.5 text-xs text-[#BBBBBB] hover:text-gray-400 flex items-center gap-1 transition-colors cursor-pointer",children:i?r.jsxs(r.Fragment,{children:[r.jsx(ng,{className:"h-3 w-3"})," Show less"]}):r.jsxs(r.Fragment,{children:[r.jsx(La,{className:"h-3 w-3"})," Show full prompt"]})})]})]})},H1e=()=>{const[e,t]=j.useState(gm[0].key),n=gm.find(i=>i.key===e)??gm[0];return r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:"McKinsey-Style AI Prompts — 95 Consulting Frameworks for Claude & GPT",description:"95 institutional-grade prompts across 21 consulting skill families — issue trees, market sizing, competitive war-gaming, EBITDA bridges, board memos, and more.",canonicalUrl:"/mckinsey-prompts",keywords:"McKinsey prompts, consulting AI prompts, issue tree prompt, EBITDA bridge prompt, board memo prompt, strategy AI prompts"}),r.jsx(nB,{}),r.jsxs("div",{className:"min-h-screen bg-[#0A0A0A]",children:[r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 pt-16 pb-10 max-w-5xl",style:{background:"radial-gradient(ellipse 70% 50% at 50% 0%, rgba(196,151,58,0.18) 0%, transparent 100%)"},children:[r.jsx(de,{href:"/ai-strategy-toolkit",children:r.jsx("span",{className:"text-xs text-[#BBBBBB] hover:text-gray-400 transition-colors cursor-pointer",children:"← AI Strategy Toolkit"})}),r.jsxs("div",{className:"mt-6",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-3",style:{color:dd},children:"McKinsey-Style Prompts"}),r.jsx("h1",{className:"text-2xl font-semibold text-white mb-3",children:"Consulting Frameworks for AI — 95 Prompts"}),r.jsx("p",{className:"text-sm text-[#CCCCCC] max-w-2xl mb-1",children:"95 institutional-grade prompts across 21 skill families — from issue trees and market sizing to competitive war-gaming, EBITDA bridges, stakeholder alignment, and board memos."}),r.jsxs("p",{className:"text-xs text-[#BBBBBB]",children:["10 featured prompts are available on the"," ",r.jsx(de,{href:"/ai-strategy-toolkit",children:r.jsx("span",{className:"underline hover:text-gray-400 transition-colors cursor-pointer",children:"AI Strategy Toolkit"})})," ","page. Adapted from The Craft of AI (Grant Baldwin). Educational reference only."]})]})]}),r.jsxs("div",{className:"container mx-auto px-4 sm:px-8 pb-20 max-w-5xl space-y-8",children:[r.jsx("div",{className:"flex flex-wrap gap-2",children:gm.map(i=>{const a=e===i.key,s=i.prompts.length;return r.jsxs("button",{onClick:()=>t(i.key),className:"flex items-center gap-1.5 px-3 py-1.5 rounded-full text-xs font-medium transition-all duration-200 cursor-pointer",style:a?{backgroundColor:"rgba(196,151,58,0.15)",color:dd,border:"1px solid rgba(196,151,58,0.4)"}:{backgroundColor:"rgba(255,255,255,0.04)",color:"#6b7280",border:"1px solid rgba(255,255,255,0.08)"},children:[i.label,r.jsx("span",{className:"px-1.5 py-0.5 rounded-full text-[10px] font-semibold",style:a?{backgroundColor:"rgba(196,151,58,0.2)",color:dd}:{backgroundColor:"rgba(255,255,255,0.06)",color:"#4b5563"},children:s})]},i.key)})}),r.jsxs("div",{children:[r.jsxs("div",{className:"mb-5",children:[r.jsx("p",{className:"text-xs font-semibold tracking-widest uppercase mb-2",style:{color:dd},children:n.label}),r.jsxs("p",{className:"text-xs text-[#BBBBBB]",children:[n.prompts.length," prompt",n.prompts.length!==1?"s":""," in this family"]})]}),r.jsx("div",{className:"grid md:grid-cols-2 gap-3",children:n.prompts.map(i=>r.jsx(G1e,{p:i},i.title))})]}),r.jsx("p",{className:"text-xs text-[#AAAAAA] border-t border-white/10 pt-6",children:"Educational reference only. Prompts adapted from The Craft of AI by Grant Baldwin. No affiliation or endorsement implied."})]})]}),r.jsx(ht,{})]})},js="institutional-field mt-1.5 w-full rounded-lg border bg-[#0A0A0A] px-3 py-2.5 text-sm text-white outline-none transition-colors focus:border-[#D4A843]/60",z1e=["Origination","Investment Research","Due Diligence","Investment Committee","Portfolio Monitoring","Knowledge Management","Other"],W1e=["Private equity firm","Portfolio company","Family office","Asset manager","Advisory firm","Law firm","Other"],V1e=["1–50 employees","51–250 employees","251–1,000 employees","1,001–5,000 employees","5,000+ employees"];function Pr({label:e,name:t,type:n="text",required:i=!0,value:a,onChange:s}){return r.jsxs("label",{className:"institutional-field-label block text-xs font-medium text-[#C8C8C8]",children:[e,r.jsx("input",{className:js,name:t,type:n,required:i,value:a,onChange:o=>s(o.target.value)})]})}function rB({submitting:e,submitted:t,error:n,label:i}){return t?r.jsxs("div",{className:"flex items-center gap-2 rounded-lg border border-[#D4A843]/30 bg-[#D4A843]/8 px-4 py-3 text-sm text-white",children:[r.jsx(z0,{className:"h-4 w-4 text-[#D4A843]"}),"Request recorded. No information has been shared with the vendor."]}):r.jsxs("div",{children:[n&&r.jsx("p",{className:"mb-3 text-xs text-red-300",children:n}),r.jsxs("button",{type:"submit",disabled:e,className:"institutional-primary-button inline-flex items-center justify-center gap-2 border border-[#D4A843] bg-[#D4A843] px-5 py-3 text-sm font-semibold text-black transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-60",children:[e&&r.jsx(ic,{className:"h-4 w-4 animate-spin"}),i]})]})}const K1e={name:"",workEmail:"",company:"",role:"",country:"",organisationType:"",companySize:"",primaryWorkflow:"",optionalMe
1779ssage:"",consent:!1,honeypot:"",formStartedAt:""};function Y1e({open:e,onOpenChange:t,vendorId:n,vendorName:i,onStarted:a,onCompleted:s}){const[o,l]=j.useState(K1e),[c,d]=j.useState(!1),[u,p]=j.useState(!1),[m,f]=j.useState(null);j.useEffect(()=>{e&&(l(h=>({...h,formStartedAt:new Date().toISOString()})),a())},[e,a]);async function x(h){h.preventDefault(),d(!0),f(null);try{await Mt("POST","/api/intelligence-profile/evaluations",{vendorId:n,vendorName:i,sourcePage:`/intelligence/${n}`,...o,optionalMessage:o.optionalMessage||null}),p(!0),s()}catch{f("The request could not be recorded. Please review the fields and try again.")}finally{d(!1)}}return r.jsx(og,{open:e,onOpenChange:t,children:r.jsxs(rp,{className:"max-h-[90vh] max-w-2xl overflow-y-auto border-white/15 bg-[#111111] text-white",children:[r.jsxs(ip,{children:[r.jsxs(ap,{children:["Evaluate ",i]}),r.jsxs(a1,{className:"text-[#AFAFAF]",children:["Help PrivateEquity.AI understand institutional demand. This form does not contact ",i,"."]})]}),r.jsxs("form",{className:"mt-3 space-y-5",onSubmit:x,children:[r.jsx("input",{type:"text",name:"website",value:o.honeypot,onChange:h=>l({...o,honeypot:h.target.value}),className:"absolute -left-[9999px] h-px w-px opacity-0",tabIndex:-1,autoComplete:"off","aria-hidden":"true"}),r.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[r.jsx(Pr,{label:"Name",name:"name",value:o.name,onChange:h=>l({...o,name:h})}),r.jsx(Pr,{label:"Work email",name:"workEmail",type:"email",value:o.workEmail,onChange:h=>l({...o,workEmail:h})}),r.jsx(Pr,{label:"Company",name:"company",value:o.company,onChange:h=>l({...o,company:h})}),r.jsx(Pr,{label:"Role",name:"role",value:o.role,onChange:h=>l({...o,role:h})}),r.jsx(Pr,{label:"Country",name:"country",value:o.country,onChange:h=>l({...o,country:h})}),r.jsxs("label",{className:"block text-xs font-medium text-[#C8C8C8]",children:["Organisation type",r.jsxs("select",{className:js,required:!0,value:o.organisationType,onChange:h=>l({...o,organisationType:h.target.value}),children:[r.jsx("option",{value:"",children:"Select…"}),W1e.map(h=>r.jsx("option",{value:h,children:h},h))]})]}),r.jsxs("label",{className:"block text-xs font-medium text-[#C8C8C8]",children:["Firm / company size",r.jsxs("select",{className:js,required:!0,value:o.companySize,onChange:h=>l({...o,companySize:h.target.value}),children:[r.jsx("option",{value:"",children:"Select…"}),V1e.map(h=>r.jsx("option",{value:h,children:h},h))]})]}),r.jsxs("label",{className:"block text-xs font-medium text-[#C8C8C8]",children:["Primary workflow",r.jsxs("select",{className:js,required:!0,value:o.primaryWorkflow,onChange:h=>l({...o,primaryWorkflow:h.target.value}),children:[r.jsx("option",{value:"",children:"Select…"}),z1e.map(h=>r.jsx("option",{value:h,children:h},h))]})]})]}),r.jsxs("label",{className:"block text-xs font-medium text-[#C8C8C8]",children:["Optional message",r.jsx("textarea",{className:`${js} min-h-24 resize-y`,maxLength:2e3,value:o.optionalMessage,onChange:h=>l({...o,optionalMessage:h.target.value})})]}),r.jsxs("label",{className:"flex items-start gap-3 text-xs leading-relaxed text-[#BDBDBD]",children:[r.jsx("input",{className:"mt-0.5 h-4 w-4 accent-[#D4A843]",type:"checkbox",required:!0,checked:o.consent,onChange:h=>l({...o,consent:h.target.checked})}),r.jsxs("span",{children:["I agree that PrivateEquity.AI may use this information to understand institutional demand. My contact details will not be shared with ",i," without my explicit consent."]})]}),r.jsx(rB,{submitting:c,submitted:u,error:m,label:"Record evaluation"})]})]})})}const Q1e={name:"",corporateEmail:"",role:"",company:"",country:"",requestedCorrection:"",supportingUrl:"",additionalInformation:"",consent:!1,honeypot:"",formStartedAt:""};function X1e({open:e,onOpenChange:t,vendorId:n,vendorName:i,onCompleted:a}){const[s,o]=j.useState(Q1e),[l,c]=j.useState(!1),[d,u]=j.useState(!1),[p,m]=j.useState(null);j.useEffect(()=>{e&&o(x=>({...x,formStartedAt:new Date().toISOString()}))},[e]);async function f(x){x.preventDefault(),c(!0),m(null);try{await Mt("POST","/api/intelligence-profile/claims",{vendorId:n,vendorName:i,sourcePage:`/intelligence/${n}`,...s,additionalInformation:s.additionalInformation||null}),u(!0),a()}catch{m("The request could not be recorded. Please review the fields and try again.")}finally{c(!1)}}return r.jsx(og,{open:e,onOpenChange:t,children:r.jsxs(rp,{className:"max-h-[90vh] max-w-2xl overflow-y-auto border-white/15 bg-[#111111] text-white",children:[r.jsxs(ip,{children:[r.jsx(ap,{children:"Claim or update this profile"}),r.jsxs(a1,{className:"text-[#AFAFAF]",children:["Submit an official correction or request to maintain the ",i," profile."]})]}),r.jsxs("form",{className:"mt-3 space-y-5",onSubmit:f,children:[r.jsx("input",{type:"text",name:"website",value:s.honeypot,onChange:x=>o({...s,honeypot:x.target.value}),className:"absolute -left-[9999px] h-px w-px opacity-0",tabIndex:-1,autoComplete:"off","aria-hidden":"true"}),r.jsxs("div",{className:"grid gap-4 sm:grid-cols-2",children:[r.jsx(Pr,{label:"Name",name:"name",value:s.name,onChange:x=>o({...s,name:x})}),r.jsx(Pr,{label:"Corporate email",name:"corporateEmail",type:"email",value:s.corporateEmail,onChange:x=>o({...s,corporateEmail:x})}),r.jsx(Pr,{label:"Role",name:"role",value:s.role,onChange:x=>o({...s,role:x})}),r.jsx(Pr,{label:"Company",name:"company",value:s.company,onChange:x=>o({...s,company:x})}),r.jsx(Pr,{label:"Country",name:"country",value:s.country,onChange:x=>o({...s,country:x})})]}),r.jsxs("label",{className:"block text-xs font-medium text-[#C8C8C8]",children:["Requested correction",r.jsx("textarea",{className:`${js} min-h-28 resize-y`,maxLength:3e3,required:!0,value:s.requestedCorrection,onChange:x=>o({...s,requestedCorrection:x.target.value})})]}),r.jsxs("label",{className:"flex items-start gap-3 text-xs leading-relaxed text-[#BDBDBD]",children:[r.jsx("input",{className:"mt-0.5 h-4 w-4 accent-[#D4A843]",type:"checkbox",required:!0,checked:s.consent,onChange:x=>o({...s,consent:x.target.checked})}),r.jsx("span",{children:"I confirm that I am authorised to submit this information on behalf of the organisation and agree that PrivateEquity.AI may use it to review and update the relevant Intelligence Profile."})]}),r.jsx(Pr,{label:"Official supporting URL",name:"supportingUrl",type:"url",value:s.supportingUrl,onChange:x=>o({...s,supportingUrl:x})}),r.jsxs("label",{className:"block text-xs font-medium text-[#C8C8C8]",children:["Additional information",r.jsx("textarea",{className:`${js} min-h-24 resize-y`,maxLength:3e3,value:s.additionalInformation,onChange:x=>o({...s,additionalInformation:x.target.value})})]}),r.jsx("p",{className:"text-xs leading-relaxed text-[#8F8F8F]",children:"Claiming or updating a profile does not influence PrivateEquity.AI classifications, evidence assessments, recommendation logic or editorial treatment."}),r.jsx(rB,{submitting:l,submitted:d,error:p,label:"Submit profile update"})]})]})})}function Z1e(e,t,n){typeof window>"u"||fetch("/api/intelligence-profile/events",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({vendorId:e,eventType:t,sourcePage:n}),credentials:"include",keepalive:!0}
1779).catch(()=>{})}const J1e=[{label:"Overview",href:"#overview"},{label:"Workflow Fit",href:"#workflow-fit"},{label:"Use Cases",href:"#use-cases"},{label:"Deployment",href:"#deployment"},{label:"Required Context",href:"#required-context"},{label:"Readiness",href:"#readiness"},{label:"Evidence",href:"#evidence-ledger"},{label:"PrivateEquity.AI View",href:"#privateequity-view"},{label:"Official Source",href:"#official-source"}],tC=new Set;function eAe(e){return Array.from(new Map(e.map(t=>[t.sourceUrl,t])).values())}function tAe(e,t){var i;return(((i=e.claims.find(a=>a.field===t))==null?void 0:i.evidenceIds)??[]).map(a=>e.evidence.find(s=>s.id===a)).filter(a=>!!a)}function nAe(e){return new Intl.DateTimeFormat("en-GB",{day:"2-digit",month:"short",year:"numeric",timeZone:"UTC"}).format(new Date(`${e}T00:00:00Z`))}function la({profile:e,fields:t,onEvidenceClick:n}){const i=Array.isArray(t)?t:[t],a=eAe(i.flatMap(s=>tAe(e,s)));return a.length===0?null:r.jsxs("a",{href:"#evidence-ledger",onClick:n,className:"mt-3 inline-flex w-fit items-center gap-1 text-xs font-medium text-[#B9B9B9] hover:text-white focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[#D4A843]",children:["Evidence · ",a.length," ",a.length===1?"source":"sources"," →"]})}function ji({number:e,title:t}){return r.jsxs("div",{className:"profile-section-heading mb-7",children:[r.jsxs("p",{className:"profile-section-number text-[10px] font-semibold uppercase tracking-[0.2em] text-[#D4A843]",children:["Section ",e]}),r.jsx("h2",{className:"profile-section-title mt-2 text-2xl font-light tracking-tight text-white md:text-3xl",children:t})]})}function rAe({profile:e,label:t,value:n,field:i,description:a,onEvidenceClick:s}){return r.jsxs("div",{className:"institutional-card rounded-xl border border-white/10 bg-[#111111] p-5",children:[r.jsx("p",{className:"profile-classification-label text-[10px] font-semibold uppercase tracking-[0.18em] text-[#AFAFAF]",children:t}),r.jsx("p",{className:"profile-classification-value mt-2 text-xl font-semibold text-white",children:n}),r.jsx("p",{className:"profile-classification-note mt-1 text-[10px] font-semibold uppercase tracking-[0.16em] text-[#D4A843]",children:"PrivateEquity.AI classification"}),a&&r.jsx("p",{className:"mt-3 text-sm leading-relaxed text-[#BDBDBD]",children:a}),r.jsx(la,{profile:e,fields:i,onEvidenceClick:s})]})}function iAe({profile:e,onEvaluate:t,onCompare:n,onOfficialWebsite:i}){const a=[["Best suited for",e.decisionSnapshot.bestSuitedFor],["Core PE stage",e.decisionSnapshot.corePeStage],["Primary workflow",e.peClassification.primaryWorkflow],["Deployment",e.peClassification.deploymentModel],["PE relevance",e.peAiClassification.peRelevance],["Institutional readiness",e.decisionSnapshot.institutionalReadiness],["Evidence confidence",e.peAiClassification.evidenceConfidence],["Pricing",e.identity.pricingStatus],["Last verified",e.identity.lastVerified]];return r.jsx("section",{className:"profile-summary-panel border-b border-white/8 bg-[#101010]",children:r.jsxs("div",{className:"container-data px-4 py-8 sm:px-8 md:py-10",children:[r.jsxs("p",{className:"text-xs font-semibold uppercase tracking-[0.2em] text-[#D4A843]",children:[e.identity.platform," at a glance"]}),r.jsx("div",{className:"profile-summary-grid institutional-card mt-5 grid gap-px overflow-hidden rounded-xl border border-white/10 bg-white/10 sm:grid-cols-2 lg:grid-cols-3",children:a.map(([s,o])=>r.jsxs("div",{className:"profile-summary-item bg-[#111111] px-4 py-4",children:[r.jsx("p",{className:"profile-summary-label text-[9px] font-semibold uppercase tracking-[0.16em] text-[#888888]",children:s}),r.jsx("p",{className:"profile-summary-value mt-1.5 text-sm font-medium leading-snug text-white",children:o})]},s))}),r.jsxs("div",{className:"mt-6 flex flex-col gap-3 sm:flex-row sm:flex-wrap sm:items-center",children:[r.jsxs("button",{type:"button",onClick:t,className:"inline-flex items-center justify-center gap-2 border border-[#D4A843] bg-[#D4A843] px-5 py-3 text-sm font-semibold text-black hover:opacity-90",children:["Evaluate ",e.identity.platform," ",r.jsx(qt,{className:"h-3.5 w-3.5"})]}),r.jsxs(de,{href:"/ai-strategy-toolkit#pe-ai-stack-navigator",onClick:n,className:"inline-flex items-center justify-center gap-2 border border-white/20 px-5 py-3 text-sm font-semibold text-white hover:border-[#D4A843]/60",children:["Compare solutions ",r.jsx(qt,{className:"h-3.5 w-3.5"})]}),r.jsxs("a",{href:e.identity.officialWebsite,target:"_blank",rel:"nofollow noopener noreferrer",onClick:i,className:"inline-flex items-center justify-center gap-2 px-2 py-3 text-sm font-medium text-[#BDBDBD] hover:text-white",children:["Visit official website ",r.jsx(S,{className:"h-3.5 w-3.5"})]})]})]})})}function aAe({profile:e}){const[t,n]=j.useState(!1),[i,a]=j.useState(!1),s=`/intelligence/${e.slug}`,o=j.useCallback(h=>{Z1e(e.id,h,s)},[e.id,s]),l=j.useCallback(()=>o("evidence_click"),[o]),c=j.useCallback(()=>o("evaluate_form_started"),[o]),d=j.useCallback(()=>o("evaluate_form_completed"),[o]),u=j.useCallback(()=>o("claim_profile_submitted"),[o]);j.useEffect(()=>{if(tC.has(s)||(tC.add(s),o("profile_view")),!window.location.hash)return;const h=document.getElementById(window.location.hash.slice(1));h&&requestAnimationFrame(()=>h.scrollIntoView({behavior:"auto",block:"start"}))},[o]);const p=[{label:"Security Suitability",value:e.institutionalReadiness.securitySuitability,description:"Based on published security and data-protection documentation."},{label:"Integration Capability",value:e.institutionalReadiness.integrationCapability,description:"Based on documented external-data workflows and published integrations."},{label:"Institutional Deployment",value:e.institutionalReadiness.institutionalDeploymentEvidence,description:"Based on published deployment, customer and institutional-use evidence."}
1779,{label:"PE Adoption Evidence",value:e.institutionalReadiness.peAdoptionEvidence,description:"Based on documented private-equity workflows and vendor-published adoption evidence."}],m=e.peClassification.lifecycleFit,f=j.useMemo(()=>Array.from(e.evidence.reduce((h,g)=>{const y=h.get(g.sourceUrl)??[];return y.push(g),h.set(g.sourceUrl,y),h},new Map)),[e]),x={"@context":"https://schema.org","@type":"TechArticle",headline:e.identity.platform,description:e.identity.shortDescription,dateModified:e.seo.dateModified,author:{"@type":"Organization",name:"PrivateEquity.AI",url:"https://www.privatequity.ai"},about:{"@type":"SoftwareApplication",name:e.identity.platform,applicationCategory:"BusinessApplication",url:e.identity.officialWebsite}};return r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:e.seo.title,description:e.seo.description,canonicalUrl:s,keywords:e.seo.keywords,ogTitle:e.seo.title,ogDescription:e.seo.socialDescription,ogType:"article",children:r.jsx("script",{type:"application/ld+json",children:JSON.stringify(x)})}),r.jsxs("div",{className:"institutional-page profile-page min-h-screen bg-[#0A0A0A]",children:[r.jsx("section",{className:"profile-hero border-b border-white/5",style:{background:"radial-gradient(ellipse 70% 55% at 50% 0%, rgba(196,151,58,0.17) 0%, #0A0A0A 100%)"},children:r.jsxs("div",{className:"profile-hero-inner container mx-auto max-w-5xl px-4 py-16 sm:px-8 md:py-24",children:[r.jsx(de,{href:"/ai-strategy-toolkit",children:r.jsxs("span",{className:"mb-10 inline-flex cursor-pointer items-center gap-2 text-xs font-medium text-[#B8B8B8] hover:text-white",children:[r.jsx(cD,{className:"h-3.5 w-3.5"}),"Back to Intelligence Stack"]})}),r.jsx("p",{className:"text-xs font-semibold uppercase tracking-[0.2em] text-[#D4A843]",children:"PrivateEquity.AI Intelligence Profile"}),r.jsxs("div",{className:"mt-5 grid gap-8 lg:grid-cols-[1.4fr_0.8fr] lg:items-end",children:[r.jsxs("div",{children:[r.jsx("h1",{className:"text-5xl font-light tracking-tight text-white md:text-7xl",children:e.identity.platform}),r.jsx("p",{className:"mt-4 text-lg font-light text-[#D0D0D0]",children:e.peClassification.primaryWorkflow}),r.jsx("p",{className:"mt-5 max-w-2xl text-sm leading-relaxed text-[#BEBEBE]",children:e.identity.shortDescription})]}),r.jsx("div",{className:"profile-hero-metadata grid grid-cols-2 gap-x-6 gap-y-4 border-l border-[#D4A843]/35 pl-6",children:[["Country",e.identity.country],["Deployment",e.peClassification.deploymentModel],["PE Relevance",e.peAiClassification.peRelevance],["Evidence Confidence",e.peAiClassification.evidenceConfidence],["Last verified",e.identity.lastVerified],["Pricing",e.identity.pricingStatus]].map(([h,g])=>r.jsxs("div",{className:`profile-hero-field ${h==="Pricing"?"col-span-2":""}`,children:[r.jsx("p",{className:"profile-hero-label text-[9px] font-semibold uppercase tracking-[0.16em] text-[#888888]",children:h}),r.jsx("p",{className:"profile-hero-value mt-1 text-xs font-medium text-white",children:g})]},h))})]}),r.jsx("p",{className:"mt-8 max-w-3xl text-xs leading-relaxed text-[#8F8F8F]",children:"PE Relevance and Evidence Confidence are PrivateEquity.AI classifications. They are not performance ratings, endorsements or independently audited outcomes."})]})}),r.jsx(iAe,{profile:e,onEvaluate:()=>{o("evaluate_click"),n(!0)},onCompare:()=>o("compare_click"),onOfficialWebsite:()=>o("official_website_click")}),r.jsx("nav",{className:"profile-section-nav sticky top-[72px] z-30 border-b border-white/10 bg-[#0A0A0A]/95 backdrop-blur","aria-label":"Profile sections",children:r.jsx("div",{className:"container-data flex gap-5 overflow-x-auto px-4 py-3 sm:px-8",children:J1e.map(h=>r.jsx("a",{href:h.href,className:"shrink-0 text-[10px] font-semibold uppercase tracking-[0.12em] text-[#9A9A9A] hover:text-[#D4A843]",children:h.label},h.href))})}),r.jsxs("div",{className:"container-data px-4 sm:px-8",children:[r.jsxs("section",{id:"overview",className:"profile-section profile-section--quiet scroll-mt-32 border-b border-white/8 py-14 md:py-20",children:[r.jsx(ji,{number:"01",title:"Overview"}),r.jsxs("div",{className:"grid gap-5 md:grid-cols-2",children:[r.jsx(rAe,{profile:e,label:"Primary Workflow",value:e.peClassification.primaryWorkflow,field:"peClassification.primaryWorkflow",onEvidenceClick:l}),r.jsxs("div",{className:"profile-pe-stages rounded-xl border border-white/10 bg-[#111111] p-5",children:[r.jsx("p",{className:"text-[10px] font-semibold uppercase tracking-[0.18em] text-[#AFAFAF]",children:"PE Stages"}),r.jsx("div",{className:"mt-3 flex flex-wrap gap-2",children:e.peClassification.peStages.map(h=>r.jsx("span",{className:"rounded border border-[#D4A843]/25 px-2.5 py-1.5 text-xs text-[#D0D0D0]",children:h},h))}),r.jsx(la,{profile:e,fields:"peClassification.peStages",onEvidenceClick:l})]})]}),r.jsx("p",{className:"mt-5 max-w-2xl text-sm leading-relaxed text-[#BDBDBD]",children:e.identity.shortDescription})]}),r.jsxs("section",{id:"workflow-fit",className:"profile-section scroll-mt-32 border-b border-white/8 py-14 md:py-20",children:[r.jsx(ji,{number:"02",title:"Where It Fits"}),r.jsx("div",{className:"overflow-x-auto pb-2",children:r.jsx("div",{className:"grid min-w-[720px] grid-cols-6 gap-px overflow-hidden rounded-xl border border-white/10 bg-white/10",children:m.map(h=>r.jsxs("div",{className:`profile-lifecycle-item relative bg-[#111111] p-4 ${h.status==="Core"?"profile-lifecycle-item--core":h.status==="Relevant"?"profile-lifecycle-item--relevant":h.status==="Secondary"?"profile-lifecycle-item--secondary":"profile-lifecycle-item--not-assessed"}`,children:[r.jsx("span",{className:`absolute inset-x-0 top-0 h-0.5 ${h.status==="Core"?"bg-[#D4A843]":h.status==="Not assessed"?"bg-white/10":"bg-[#D4A843]/40"}`}),r.jsx("p",{className:"text-xs font-medium text-white",children:h.stage}),r.jsx("p",{className:`profile-lifecycle-status mt-2 text-[10px] font-semibold uppercase tracking-[0.15em] ${h.status==="Not assessed"?"text-[#777777]":"text-[#D4A843]"}`,children:h.status})]},h.stage))})}),r.jsx("p",{className:"mt-4 text-xs leading-relaxed text-[#8F8F8F]",children:"Lifecycle relevance is a PrivateEquity.AI classification based on documented workflows. “Not assessed” does not imply lack of capability."}),r.jsx(la,{profile:e,fields:["peClassification.lifecycleFit","optionalValueFields.portfolioValueRelevance"],onEvidenceClick:l})]}),r.jsxs("section",{id:"use-cases",className:"profile-section profile-section--quiet scroll-mt-32 border-b border-white/8 py-14 md:py-20",children:[r.jsx(ji,{number:"03",title:"Primary Use Cases"}),r.jsx("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3",children:e.capability.primaryUseCases.map(h=>r.jsx("div",{className:"profile-taxonomy-item rounded-xl border border-white/10 bg-[#111111] px-5 py-4 text-sm text-[#D0D0D0]",children:h},h))}),r.jsx(la,{profile:e,fields:"capability.primaryUseCases",onEvidenceClick:l})]}),r.jsxs("section",{id:"deployment",className:"profile-section profile-section--raised scroll-mt-32 border-b border-white/8 py-14 md:py-20",children:[r.jsx(ji,{number:"04",title:"Deployment & Automation"}),r.jsxs("div",{className:"grid gap-12 md:grid-cols-2",children:[r.jsxs("div",{className:"profile-assessment-panel",children:[r.jsx("p",{className:"profile-assessment-label text-[10px] font-semibold uppercase tracking-[0.18em] text-[#D4A843]",children:"Deployment Model"}),r.jsx("p",{className:"profile-assessment-value text-4xl font-semibold text-white",children:e.peClassification.deploymentModel.toUpperCase()}),r.jsx("p",{className:"profile-classification-note mt-2 text-[10px] font-semibold uppercase tracking-[0.16em] text-[#D4A843]",children:"PrivateEquity.AI classification"}),r.jsx("p",{className:"mt-5 text-sm leading-relaxed text-[#BDBDBD]",children:e.capability.deploymentExplanation}),r.jsx(la,{profile:e,fields:"peClassification.deploymentModel",onEvidenceClick:l})]}),r.jsxs("div",{className:"profile-assessment-panel",children:[r.jsx("p",{className:"profile-assessment-label text-[10px] font-semibold uppercase tracking-[0.18em] text-[#D4A843]",children:"Automation Potential"}),r.jsx("p",{className:"profile-assessment-value text-4xl font-semibold text-white",children:e.capability.automationPotential.toUpperCase()}),r.jsx("p",{className:"profile-classification-note mt-2 text-[10px] font-semibold uppercase tracking-[0.16em] text-[#D4A843]",children:"PrivateEquity.AI classification"}),r.jsx("p",{className:"mt-5 text-sm leading-relaxed text-[#BDBDBD]",children:e.capability.automationExplanation}),r.jsx("p",{className:"mt-4 border-l border-[#D4A843]/50 pl-4 text-sm font-medium leading-relaxed text-white",children:e.capability.humanAccountabilityStatement}),r.jsx(la,{profile:e,fields:"capability.automationPotential",onEvidenceClick:l})]})]})]}),r.jsxs("section",{id:"required-context",className:"profile-section scroll-mt-32 border-b border-white/8 py-14 md:py-20",children:[r.jsx(ji,{number:"05",title:"Required Context & Human Gate"}),r.jsxs("div",{className:"grid gap-10 md:grid-cols-[1.4fr_0.6fr]",children:[r.jsxs("div",{children:[r.jsx("p",{className:"mb-6 max-w-2xl text-sm leading-relaxed text-[#BDBDBD]",children:"These information categories describe the context used by documented workflows. They are conceptual, not implementation instructions."}),r.jsx("div",{className:"grid gap-3 sm:grid-cols-2 lg:grid-cols-3",children:e.capability.requiredContext.map(h=>r.jsx("div",{className:"border-l border-[#D4A843]/45 bg-[#111111] px-5 py-4 text-sm text-[#D0D0D0]",children:h},h))}),r.jsx(la,{profile:e,fields:"capability.requiredContext",onEvidenceClick:l})]}),r.jsxs("div",{className:"md:border-l md:border-white/10 md:pl-6",children:[r.jsx("p",{className:"text-[10px] font-semibold uppercase tracking-[0.18em] text-[#D4A843]",children:"Human gate"}),r.jsx("p",{className:"mt-4 text-lg font-medium leading-relaxed text-white",children:e.capability.humanGate}),r.jsx(la,{profile:e,fields:"capability.humanGate",onEvidenceClick:l})]})]})]}),r.jsxs("section",{id:"readiness",className:"profile-section profile-section--quiet scroll-mt-32 border-b border-white/8 py-14 md:py-20",children:[r.jsx(ji,{number:"06",title:"Institutional Readiness"}),r.jsx("div",{className:"overflow-hidden rounded-xl border border-white/10",children:p.map((h,g)=>r.jsxs("div",{className:`profile-readiness-row grid gap-2 bg-[#111111] px-5 py-4 sm:grid-cols-[1fr_auto] sm:items-center sm:gap-4 ${g<p.length-1?"border-b border-white/8":""}`,children:[r.jsxs("div",{children:[r.jsx("p",{className:"profile-readiness-label text-sm font-medium text-white",children:h.label}),r.jsx("p",{className:"mt-1 max-w-2xl text-xs text-[#8F8F8F]",children:h.description})]}),r.jsx("p",{className:"profile-readiness-value text-sm font-semibold uppercase tracking-wide text-[#D4A843]",children:h.value})]},h.label))}),r.jsx("a",{href:"#evidence-ledger",onClick:l,className:"mt-5 inline-flex items-center gap-1.5 text-xs font-medium text-[#B9B9B9] hover:text-white focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[#D4A843]",children:"Evidence · supp
1779orting sources →"})]}),r.jsxs("section",{id:"evidence-ledger",className:"profile-section profile-section--raised scroll-mt-32 border-b border-white/8 py-14 md:py-20",children:[r.jsx(ji,{number:"07",title:"Evidence Ledger"}),r.jsx("p",{className:"mb-7 max-w-2xl text-sm leading-relaxed text-[#BDBDBD]",children:"Each public URL appears once. Tags show which displayed classifications or claims it supports."}),r.jsx("div",{className:"profile-evidence-ledger overflow-hidden rounded-xl border border-white/10",children:f.map(([h,g],y)=>{const v=new Set(g.map(I=>I.id)),b=e.claims.filter(I=>I.evidenceIds.some(C=>v.has(C))),A=Array.from(new Set(g.map(I=>I.sourceType))).join(" · "),w=Array.from(new Set(g.map(I=>I.publisher))).join(" · "),k=Array.from(new Set(g.map(I=>nAe(I.verificationDate)))).join(" · "),N=Array.from(new Set(g.map(I=>I.evidenceNote))).join(" ");return r.jsx("div",{id:`evidence-${g[0].id}`,className:`profile-evidence-row bg-[#111111] p-5 ${y<f.length-1?"border-b border-white/8":""}`,children:r.jsxs("div",{className:"grid gap-5 md:grid-cols-[1fr_1.5fr]",children:[r.jsxs("div",{className:"min-w-0",children:[r.jsxs("a",{href:h,target:"_blank",rel:"nofollow noopener noreferrer",onClick:l,className:"profile-evidence-title inline-flex max-w-full items-start gap-1 break-words text-sm font-semibold leading-snug text-white hover:text-[#D4A843]",children:[g[0].sourceTitle,r.jsx(S,{className:"mt-0.5 h-3 w-3 shrink-0"})]}),r.jsxs("div",{className:"profile-evidence-meta mt-2 text-[10px] leading-relaxed text-[#888888]",children:[r.jsxs("p",{children:[A," · ",w]}),r.jsxs("p",{className:"mt-1 text-[#AFAFAF]",children:["Verified ",k]})]})]}),r.jsxs("div",{children:[r.jsx("p",{className:"profile-evidence-description text-xs leading-relaxed text-[#AFAFAF]",children:N}),r.jsxs("div",{className:"profile-evidence-support mt-3 flex flex-wrap gap-1.5",children:[r.jsx("span",{className:"mr-1 text-[9px] font-semibold uppercase tracking-[0.16em] text-[#777777]",children:"Supports"}),b.slice(0,5).map(I=>r.jsx("span",{className:"rounded border border-[#D4A843]/25 px-2 py-1 text-[9px] font-medium text-[#C5C5C5]",children:I.label},I.field)),b.length>5&&r.jsxs("span",{className:"px-1 py-1 text-[9px] font-medium text-[#888888]",children:["+",b.length-5," more"]})]})]})]})},h)})})]}),r.jsxs("section",{id:"privateequity-view",className:"profile-section profile-section--priority scroll-mt-32 border-b border-white/8 py-14 md:py-20",children:[r.jsx(ji,{number:"08",title:"PrivateEquity.AI View"}),r.jsx("div",{className:"profile-view-grid grid gap-5 md:grid-cols-2 lg:grid-cols-4",children:[["Best suited for",e.privateEquityView.bestSuitedFor],["Key strength",e.privateEquityView.keyStrength],["Key consideration",e.privateEquityView.keyConsideration],["Evidence confidence",e.peAiClassification.evidenceConfidence]].map(([h,g])=>r.jsxs("div",{className:"profile-view-card rounded-xl border border-white/10 bg-[#111111] p-6",children:[r.jsx("p",{className:"profile-view-label text-[10px] font-semibold uppercase tracking-[0.18em] text-[#D4A843]",children:h}),r.jsx("p",{className:"mt-4 text-sm leading-relaxed text-[#C4C4C4]",children:g})]},h))}),r.jsxs("div",{className:"profile-view-guidance-grid mt-5 grid gap-5 md:grid-cols-2",children:[r.jsxs("div",{className:"profile-view-guidance profile-view-guidance--primary border-l border-[#D4A843]/55 bg-[#111111] p-5",children:[r.jsxs("p",{className:"text-[10px] font-semibold uppercase tracking-[0.18em] text-[#D4A843]",children:["When to evaluate ",e.identity.platform]}),r.jsx("p",{className:"mt-3 text-sm leading-relaxed text-[#C4C4C4]",children:e.privateEquityView.whenToEvaluate})]}),r.jsxs("div",{className:"profile-view-guidance border-l border-white/20 bg-[#111111] p-5",children:[r.jsx("p",{className:"text-[10px] font-semibold uppercase tracking-[0.18em] text-[#AFAFAF]",children:"When to evaluate alternatives"}),r.jsx("p",{className:"mt-3 text-sm leading-relaxed text-[#C4C4C4]",children:e.privateEquityView.whenToEvaluateAlternatives})]})]}),r.jsx("p",{className:"mt-6 text-xs leading-relaxed text-[#8F8F8F]",children:"This view assesses documented workflow relevance and evidence quality. It does not assess proven ROI, client satisfaction, implementation success or comparative performance."})]}),r.jsxs("section",{className:"profile-related-section border-b border-white/8 py-12 md:py-16",children:[r.jsx("p",{className:"text-xs font-semibold uppercase tracking-[0.2em] text-[#D4A843]",children:"Related solutions"}),r.jsx("div",{className:"mt-5 grid gap-3 sm:grid-cols-2 lg:grid-cols-4",children:e.relatedSolutions.map(h=>r.jsxs(de,{href:h.href,onClick:()=>o("compare_click"),className:"group flex items-center justify-between rounded-lg border border-white/10 bg-[#111111] px-4 py-4 text-sm font-medium text-white hover:border-[#D4A843]/45",children:[h.name,r.jsx(qt,{className:"h-3.5 w-3.5 text-[#D4A843] transition-transform group-hover:translate-x-0.5"})]},h.name))}),r.jsxs(de,{href:"/ai-strategy-toolkit#pe-ai-stack-navigator",onClick:()=>o("compare_click"),className:"mt-5 inline-flex items-center gap-2 text-sm font-semibold text-[#D4A843] hover:text-white",children:["Compare all solutions ",r.jsx(qt,{className:"h-3.5 w-3.5"})]})]}),r.jsx("section",{className:"profile-stewardship-section border-b border-white/8 py-12 md:py-16",children:r.jsxs("div",{className:"profile-stewardship-card rounded-xl border border-white/10 bg-[#111111] p-6 md:p-8",children:[r.jsxs("p",{className:"text-xs font-semibold uppercase tracking-[0.2em] text-[#D4A843]",children:["Represent ",e.identity.platform,"?"]}),r.jsx("h2",{className:"mt-3 text-2xl font-light text-white",children:"Help keep this profile current."}),r.jsx("p",{className:"mt-3 max-w-2xl text-sm leading-relaxed text-[#BDBDBD]",children:"Submit official corrections or supporting information for editorial review."}),r.jsxs("button",{type:"button",onClick:()=>{o("claim_profile_click"),a(!0)},className:"profile-governance-cta mt-6 inline-flex items-center gap-2 border border-[#D4A843]/60 px-5 py-3 text-sm font-semibold text-[#D4A843] hover:bg-[#D4A843]/10",children:["Claim or update this profile ",r.jsx(qt,{className:"h-3.5 w-3.5"})]}),r.jsx("p",{className:"mt-5 max-w-3xl text-xs leading-relaxed text-[#8F8F8F]",children:"Claiming or updating a profile does not influence PrivateEquity.AI classifications, evidence assessments, recommendation logic or editorial treatment."})]})}),r.jsxs("section",{id:"official-source",className:"profile-official-source scroll-mt-32 py-14 md:py-20",children:[r.jsx(ji,{number:"09",title:"Official Source"}),r.jsxs("div",{className:"flex flex-col gap-6 rounded-xl border border-[#D4A843]/30 bg-[#111111] p-6 md:flex-row md:items-center md:justify-between md:p-8",children:[r.jsxs("div",{children:[r.jsxs("p",{className:"text-lg font-semibold text-white",children:[e.identity.platform," official website"]}),r.jsx("p",{className:"mt-2 text-sm text-[#AFAFAF]",children:"Review current product and company information directly from the vendor."})]}),r.jsxs("a",{href:e.identity.officialWebsite,target:"_blank",rel:"nofollow noopener noreferrer",onClick:()=>o("official_website_click"),className:"inline-flex w-fit items-center gap-2 border border-[#D4A843] px-5 py-3 text-sm font-medium text-[#D4A843] hover:bg-[#D4A843]/10",children:["Visit ",e.identity.platform," official website",r.jsx(S,{className:"h-4 w-4"})]})]}),r.jsxs("details",{className:"group mt-8 rounded-xl border border-white/10 bg-[#0D0D0D] p-5",children:[r.jsxs("summary",{className:"flex cursor-pointer list-none items-center justify-between gap-4 text-sm font-semibold text-white focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[#D4A843]",children:["How we 
1779classify platforms",r.jsx(La,{className:"h-4 w-4 shrink-0 text-[#D4A843] transition-transform group-open:rotate-180"})]}),r.jsx("p",{className:"mt-4 max-w-3xl text-xs leading-relaxed text-[#AFAFAF]",children:"PrivateEquity.AI classifications are based on publicly available product, security, integration, institutional-deployment and private-equity workflow evidence. They are not investment advice, vendor endorsement or independently audited performance ratings."})]}),r.jsx("p",{className:"mt-8 max-w-3xl border-t border-white/10 pt-6 text-xs leading-relaxed text-[#8F8F8F]",children:"PrivateEquity.AI profiles are independently classified using reviewed public evidence. Commercial relationships, where present, do not influence classifications or evidence assessments."})]})]})]}),r.jsx(Y1e,{open:t,onOpenChange:n,vendorId:e.id,vendorName:e.identity.platform,onStarted:c,onCompleted:d}),r.jsx(X1e,{open:i,onOpenChange:a,vendorId:e.id,vendorName:e.identity.platform,onCompleted:u}),r.jsx(ht,{})]})}const sAe=oD("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),Lw=j.forwardRef(({className:e,variant:t,size:n,asChild:i=!1,...a},s)=>{const o=i?Sl:"button";return r.jsx(o,{className:Zt(sAe({variant:t,size:n,className:e})),ref:s,...a})});Lw.displayName="Button";function iB(){const{t:e}=ZH(),[t]=Jf();return j.useEffect(()=>{document.title=`404 - ${e("notFound.pageTitle")} | Private Equity AI`},[e]),r.jsxs(r.Fragment,{children:[r.jsx(Xe,{title:`404 - ${e("notFound.pageTitle")}`,description:e("notFound.metaDescription"),canonicalUrl:"/404",noindex:!0}),r.jsx("div",{className:"min-h-[calc(100vh-200px)] w-full flex items-center justify-center py-16 px-4",children:r.jsxs(e1,{className:"w-full max-w-lg border shadow-lg",children:[r.jsx(rO,{className:"pt-8 pb-4",children:r.jsxs("div",{className:"flex flex-col items-center text-center mb-6",children:[r.jsx("div",{className:"bg-primary/10 p-4 rounded-full mb-6",children:r.jsx(Kq,{className:"h-12 w-12 text-primary"})}),r.jsxs("h1",{className:"text-3xl font-bold text-gray-900 mb-2",children:["404 - ",e("notFound.heading")]}),r.jsx("p",{className:"text-muted-foreground max-w-md",children:e("notFound.message")}),r.jsx("div",{className:"mt-6 border-t border-gray-200 w-full pt-6",children:r.jsxs("p",{className:"text-sm text-muted-foreground mb-2",children:[e("notFound.requestedUrl"),": ",r.jsx("span",{className:"font-mono text-primary",children:t})]})})]})}),r.jsxs(iO,{className:"flex flex-col sm:flex-row gap-4 justify-center pt-2 pb-8",children:[r.jsx(Lw,{asChild:!0,variant:"outline",className:"gap-2",children:r.jsxs(de,{href:"javascript:history.back()",children:[r.jsx(cD,{className:"h-4 w-4"}),e("notFound.backButton")]})}),r.jsx(Lw,{asChild:!0,className:"gap-2",children:r.jsxs(de,{href:"/",children:[r.jsx(Jq,{className:"h-4 w-4"}),e("notFound.homeButton")]})})]})]})})]})}function oAe({slug:e}){const t=eO(e);return t?r.jsx(aAe,{profile:t}):r.jsx(iB,{})}function lAe(){const[e]=Jf(),t=e.startsWith("/admin");return r.jsxs("div",{className:"flex flex-col min-h-screen",children:[r.jsx(nB,{}),r.jsx("main",{className:`flex-grow${t?"":" institutional-page"}`,children:r.jsxs(dU,{children:[r.jsx(De,{path:"/",component:$z}),r.jsx(De,{path:"/about",component:iW}
1779),r.jsx(De,{path:"/infrastructure",component:eV}),r.jsx(De,{path:"/ai-infrastructure",component:YW}),r.jsx(De,{path:"/ai-strategy-toolkit",component:PW}),r.jsx(De,{path:"/ai-agentic-companies",component:VW}),r.jsx(De,{path:"/assessment",component:UW}),r.jsx(De,{path:"/research",children:r.jsx(uU,{to:"/learning"})}),r.jsx(De,{path:"/learning",component:rW}),r.jsx(De,{path:"/legal",component:TW}),r.jsx(De,{path:"/admin/contacts",component:iV}),r.jsx(De,{path:"/admin/intelligence/hebbia",component:aV}),r.jsx(De,{path:"/admin/vendor-evaluations",children:r.jsx(eN,{mode:"evaluations"})}),r.jsx(De,{path:"/admin/profile-claims",children:r.jsx(eN,{mode:"claims"})}),r.jsx(De,{path:"/perspectives",component:kK}),r.jsx(De,{path:"/general-ai-toolkit",component:WK}),r.jsx(De,{path:"/marco-mizzau",component:VK}),r.jsx(De,{path:"/blacktrace-diagnostic",component:QK}),r.jsx(De,{path:"/ai-diligence-score",component:hY}),r.jsx(De,{path:"/startup-stack",component:xY}),r.jsx(De,{path:"/admin/ai-exposure-seed",component:WY}),r.jsx(De,{path:"/admin/ai-exposure-baseline",component:q0e}),r.jsx(De,{path:"/admin/ai-exposure-sector-intelligence",component:V0e}),r.jsx(De,{path:"/admin/validation-coverage",component:J0e}),r.jsx(De,{path:"/admin/capital-intelligence",component:o1e}),r.jsx(De,{path:"/admin/capital-intelligence/fund-intelligence",component:m1e}),r.jsx(De,{path:"/ai-exposure-index",component:f1e}),r.jsx(De,{path:"/ai-tool-finder",component:x1e}),r.jsx(De,{path:"/ai-transparency",component:y1e}),r.jsx(De,{path:"/methodology",component:v1e}),r.jsx(De,{path:"/editorial-policy",component:b1e}),r.jsx(De,{path:"/contact",component:w1e}),r.jsx(De,{path:"/mckinsey-prompts",component:H1e}),r.jsx(De,{path:"/intelligence/:slug",children:n=>r.jsx(oAe,{slug:n.slug})}),r.jsx(De,{component:iB})]})}),t&&r.jsx(Xe,{title:"Administration | PrivateEquity.AI",description:"Restricted administration area.",canonicalUrl:e,noindex:!0}),r.jsx(Bz,{})]})}function cAe(){return j.useEffect(()=>{const e=localStorage.getItem("language")||"en";console.log(`Current language before initialization: ${zt.language}`),console.log(`Initializing language from localStorage or default: ${e}`),zt.changeLanguage("en"),localStorage.getItem("language")||(localStorage.setItem("language","en"),console.log("No language preference found, defaulting to English"))},[]),r.jsx(FD,{children:r.jsxs(PU,{client:GU,children:[r.jsx(lAe,{}),r.jsx(GG,{})]})})}o3(document.getElementById("root")).render(r.jsx(JH,{i18n:zt,children:r.jsx(cAe,{})}));

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