function sm(e,t){for(var n=0;nr[i]})}}}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 i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const l of i)if(l.type==="childList")for(const s of l.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(i){const l={};return i.integrity&&(l.integrity=i.integrity),i.referrerPolicy&&(l.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?l.credentials="include":i.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function r(i){if(i.ep)return;i.ep=!0;const l=n(i);fetch(i.href,l)}})();var Si=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Bd(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ud={exports:{}},qo={},Hd={exports:{}},A={};/** * @license React * react.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var ui=Symbol.for("react.element"),am=Symbol.for("react.portal"),um=Symbol.for("react.fragment"),cm=Symbol.for("react.strict_mode"),dm=Symbol.for("react.profiler"),fm=Symbol.for("react.provider"),pm=Symbol.for("react.context"),hm=Symbol.for("react.forward_ref"),mm=Symbol.for("react.suspense"),gm=Symbol.for("react.memo"),vm=Symbol.for("react.lazy"),Ou=Symbol.iterator;function xm(e){return e===null||typeof e!="object"?null:(e=Ou&&e[Ou]||e["@@iterator"],typeof e=="function"?e:null)}var Wd={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Vd=Object.assign,Gd={};function cr(e,t,n){this.props=e,this.context=t,this.refs=Gd,this.updater=n||Wd}cr.prototype.isReactComponent={};cr.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")};cr.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Qd(){}Qd.prototype=cr.prototype;function wa(e,t,n){this.props=e,this.context=t,this.refs=Gd,this.updater=n||Wd}var ja=wa.prototype=new Qd;ja.constructor=wa;Vd(ja,cr.prototype);ja.isPureReactComponent=!0;var zu=Array.isArray,Xd=Object.prototype.hasOwnProperty,ka={current:null},Yd={key:!0,ref:!0,__self:!0,__source:!0};function Kd(e,t,n){var r,i={},l=null,s=null;if(t!=null)for(r in t.ref!==void 0&&(s=t.ref),t.key!==void 0&&(l=""+t.key),t)Xd.call(t,r)&&!Yd.hasOwnProperty(r)&&(i[r]=t[r]);var a=arguments.length-2;if(a===1)i.children=n;else if(1>>1,G=L[V];if(0>>1;Vi(Tt,M))Dei(xt,Tt)?(L[V]=xt,L[De]=M,V=De):(L[V]=Tt,L[Ze]=M,V=Ze);else if(Dei(xt,M))L[V]=xt,L[De]=M,V=De;else break e}}return O}function i(L,O){var M=L.sortIndex-O.sortIndex;return M!==0?M:L.id-O.id}if(typeof performance=="object"&&typeof performance.now=="function"){var l=performance;e.unstable_now=function(){return l.now()}}else{var s=Date,a=s.now();e.unstable_now=function(){return s.now()-a}}var u=[],c=[],f=1,h=null,g=3,v=!1,y=!1,w=!1,E=typeof setTimeout=="function"?setTimeout:null,p=typeof clearTimeout=="function"?clearTimeout:null,d=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function m(L){for(var O=n(c);O!==null;){if(O.callback===null)r(c);else if(O.startTime<=L)r(c),O.sortIndex=O.expirationTime,t(u,O);else break;O=n(c)}}function x(L){if(w=!1,m(L),!y)if(n(u)!==null)y=!0,vr(_);else{var O=n(c);O!==null&&an(x,O.startTime-L)}}function _(L,O){y=!1,w&&(w=!1,p(T),T=-1),v=!0;var M=g;try{for(m(O),h=n(u);h!==null&&(!(h.expirationTime>O)||L&&!xe());){var V=h.callback;if(typeof V=="function"){h.callback=null,g=h.priorityLevel;var G=V(h.expirationTime<=O);O=e.unstable_now(),typeof G=="function"?h.callback=G:h===n(u)&&r(u),m(O)}else r(u);h=n(u)}if(h!==null)var un=!0;else{var Ze=n(c);Ze!==null&&an(x,Ze.startTime-O),un=!1}return un}finally{h=null,g=M,v=!1}}var k=!1,b=null,T=-1,U=5,$=-1;function xe(){return!(e.unstable_now()-$L||125V?(L.sortIndex=M,t(c,L),n(u)===null&&L===n(c)&&(w?(p(T),T=-1):w=!0,an(x,M-V))):(L.sortIndex=G,t(u,L),y||v||(y=!0,vr(_))),L},e.unstable_shouldYield=xe,e.unstable_wrapCallback=function(L){var O=g;return function(){var M=g;g=O;try{return L.apply(this,arguments)}finally{g=M}}}})(tf);ef.exports=tf;var Tm=ef.exports;/** * @license React * react-dom.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */var Lm=P,Be=Tm;function S(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ms=Object.prototype.hasOwnProperty,Im=/^[: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]*$/,Ru={},Mu={};function Om(e){return ms.call(Mu,e)?!0:ms.call(Ru,e)?!1:Im.test(e)?Mu[e]=!0:(Ru[e]=!0,!1)}function zm(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function Dm(e,t,n,r){if(t===null||typeof t>"u"||zm(e,t,n,r))return!0;if(r)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 Ee(e,t,n,r,i,l,s){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=l,this.removeEmptyString=s}var ve={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){ve[e]=new Ee(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];ve[t]=new Ee(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){ve[e]=new Ee(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){ve[e]=new Ee(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){ve[e]=new Ee(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){ve[e]=new Ee(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){ve[e]=new Ee(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){ve[e]=new Ee(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){ve[e]=new Ee(e,5,!1,e.toLowerCase(),null,!1,!1)});var _a=/[\-:]([a-z])/g;function Sa(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(_a,Sa);ve[t]=new Ee(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(_a,Sa);ve[t]=new Ee(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(_a,Sa);ve[t]=new Ee(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){ve[e]=new Ee(e,1,!1,e.toLowerCase(),null,!1,!1)});ve.xlinkHref=new Ee("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){ve[e]=new Ee(e,1,!1,e.toLowerCase(),null,!0,!0)});function Ea(e,t,n,r){var i=ve.hasOwnProperty(t)?ve[t]:null;(i!==null?i.type!==0:r||!(2a||i[s]!==l[a]){var u=` `+i[s].replace(" at new "," at ");return e.displayName&&u.includes("")&&(u=u.replace("",e.displayName)),u}while(1<=s&&0<=a);break}}}finally{Il=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Pr(e):""}function Rm(e){switch(e.tag){case 5:return Pr(e.type);case 16:return Pr("Lazy");case 13:return Pr("Suspense");case 19:return Pr("SuspenseList");case 0:case 2:case 15:return e=Ol(e.type,!1),e;case 11:return e=Ol(e.type.render,!1),e;case 1:return e=Ol(e.type,!0),e;default:return""}}function ys(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 zn:return"Fragment";case On:return"Portal";case gs:return"Profiler";case Ca:return"StrictMode";case vs:return"Suspense";case xs:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case of:return(e.displayName||"Context")+".Consumer";case rf:return(e._context.displayName||"Context")+".Provider";case Pa:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Na:return t=e.displayName||null,t!==null?t:ys(e.type)||"Memo";case Ft:t=e._payload,e=e._init;try{return ys(e(t))}catch{}}return null}function Mm(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 ys(t);case 8:return t===Ca?"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 tn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function sf(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function $m(e){var t=sf(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,l=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(s){r=""+s,l.call(this,s)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(s){r=""+s},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Pi(e){e._valueTracker||(e._valueTracker=$m(e))}function af(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=sf(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function wo(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 ws(e,t){var n=t.checked;return re({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Fu(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=tn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function uf(e,t){t=t.checked,t!=null&&Ea(e,"checked",t,!1)}function js(e,t){uf(e,t);var n=tn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?ks(e,t.type,n):t.hasOwnProperty("defaultValue")&&ks(e,t.type,tn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Au(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="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)}function ks(e,t,n){(t!=="number"||wo(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Nr=Array.isArray;function Gn(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=Ni.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Wr(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Or={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},Fm=["Webkit","ms","Moz","O"];Object.keys(Or).forEach(function(e){Fm.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Or[t]=Or[e]})});function pf(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Or.hasOwnProperty(e)&&Or[e]?(""+t).trim():t+"px"}function hf(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=pf(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var Am=re({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 Ss(e,t){if(t){if(Am[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(S(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(S(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(S(61))}if(t.style!=null&&typeof t.style!="object")throw Error(S(62))}}function Es(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 Cs=null;function Ta(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ps=null,Qn=null,Xn=null;function Hu(e){if(e=fi(e)){if(typeof Ps!="function")throw Error(S(280));var t=e.stateNode;t&&(t=rl(t),Ps(e.stateNode,e.type,t))}}function mf(e){Qn?Xn?Xn.push(e):Xn=[e]:Qn=e}function gf(){if(Qn){var e=Qn,t=Xn;if(Xn=Qn=null,Hu(e),t)for(e=0;e>>=0,e===0?32:31-(Zm(e)/qm|0)|0}var Ti=64,Li=4194304;function Tr(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 _o(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,l=e.pingedLanes,s=n&268435455;if(s!==0){var a=s&~i;a!==0?r=Tr(a):(l&=s,l!==0&&(r=Tr(l)))}else s=n&~i,s!==0?r=Tr(s):l!==0&&(r=Tr(l));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,l=t&-t,i>=l||i===16&&(l&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function ci(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-nt(t),e[t]=n}function ng(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 r=e.eventTimes;for(e=e.expirationTimes;0=Dr),qu=" ",Ju=!1;function Rf(e,t){switch(e){case"keyup":return Tg.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Mf(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Dn=!1;function Ig(e,t){switch(e){case"compositionend":return Mf(t);case"keypress":return t.which!==32?null:(Ju=!0,qu);case"textInput":return e=t.data,e===qu&&Ju?null:e;default:return null}}function Og(e,t){if(Dn)return e==="compositionend"||!$a&&Rf(e,t)?(e=zf(),io=Da=Ht=null,Dn=!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)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=rc(n)}}function Bf(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Bf(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Uf(){for(var e=window,t=wo();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=wo(e.document)}return t}function Fa(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 Ug(e){var t=Uf(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Bf(n.ownerDocument.documentElement,n)){if(r!==null&&Fa(n)){if(t=r.start,e=r.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 i=n.textContent.length,l=Math.min(r.start,i);r=r.end===void 0?l:Math.min(r.end,i),!e.extend&&l>r&&(i=r,r=l,l=i),i=ic(n,l);var s=ic(n,r);i&&s&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==s.node||e.focusOffset!==s.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),l>r?(e.addRange(t),e.extend(s.node,s.offset)):(t.setEnd(s.node,s.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=document.documentMode,Rn=null,zs=null,Mr=null,Ds=!1;function oc(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ds||Rn==null||Rn!==wo(r)||(r=Rn,"selectionStart"in r&&Fa(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Mr&&Kr(Mr,r)||(Mr=r,r=Co(zs,"onSelect"),0Fn||(e.current=Bs[Fn],Bs[Fn]=null,Fn--)}function Q(e,t){Fn++,Bs[Fn]=e.current,e.current=t}var nn={},ke=on(nn),Ie=on(!1),kn=nn;function Jn(e,t){var n=e.type.contextTypes;if(!n)return nn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},l;for(l in n)i[l]=t[l];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Oe(e){return e=e.childContextTypes,e!=null}function No(){K(Ie),K(ke)}function fc(e,t,n){if(ke.current!==nn)throw Error(S(168));Q(ke,t),Q(Ie,n)}function Zf(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(S(108,Mm(e)||"Unknown",i));return re({},n,r)}function To(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||nn,kn=ke.current,Q(ke,e),Q(Ie,Ie.current),!0}function pc(e,t,n){var r=e.stateNode;if(!r)throw Error(S(169));n?(e=Zf(e,t,kn),r.__reactInternalMemoizedMergedChildContext=e,K(Ie),K(ke),Q(ke,e)):K(Ie),Q(Ie,n)}var jt=null,il=!1,Ql=!1;function qf(e){jt===null?jt=[e]:jt.push(e)}function e1(e){il=!0,qf(e)}function ln(){if(!Ql&&jt!==null){Ql=!0;var e=0,t=W;try{var n=jt;for(W=1;e>=s,i-=s,kt=1<<32-nt(t)+i|n<T?(U=b,b=null):U=b.sibling;var $=g(p,b,m[T],x);if($===null){b===null&&(b=U);break}e&&b&&$.alternate===null&&t(p,b),d=l($,d,T),k===null?_=$:k.sibling=$,k=$,b=U}if(T===m.length)return n(p,b),q&&fn(p,T),_;if(b===null){for(;TT?(U=b,b=null):U=b.sibling;var xe=g(p,b,$.value,x);if(xe===null){b===null&&(b=U);break}e&&b&&xe.alternate===null&&t(p,b),d=l(xe,d,T),k===null?_=xe:k.sibling=xe,k=xe,b=U}if($.done)return n(p,b),q&&fn(p,T),_;if(b===null){for(;!$.done;T++,$=m.next())$=h(p,$.value,x),$!==null&&(d=l($,d,T),k===null?_=$:k.sibling=$,k=$);return q&&fn(p,T),_}for(b=r(p,b);!$.done;T++,$=m.next())$=v(b,p,T,$.value,x),$!==null&&(e&&$.alternate!==null&&b.delete($.key===null?T:$.key),d=l($,d,T),k===null?_=$:k.sibling=$,k=$);return e&&b.forEach(function(lt){return t(p,lt)}),q&&fn(p,T),_}function E(p,d,m,x){if(typeof m=="object"&&m!==null&&m.type===zn&&m.key===null&&(m=m.props.children),typeof m=="object"&&m!==null){switch(m.$$typeof){case Ci:e:{for(var _=m.key,k=d;k!==null;){if(k.key===_){if(_=m.type,_===zn){if(k.tag===7){n(p,k.sibling),d=i(k,m.props.children),d.return=p,p=d;break e}}else if(k.elementType===_||typeof _=="object"&&_!==null&&_.$$typeof===Ft&&gc(_)===k.type){n(p,k.sibling),d=i(k,m.props),d.ref=_r(p,k,m),d.return=p,p=d;break e}n(p,k);break}else t(p,k);k=k.sibling}m.type===zn?(d=yn(m.props.children,p.mode,x,m.key),d.return=p,p=d):(x=po(m.type,m.key,m.props,null,p.mode,x),x.ref=_r(p,d,m),x.return=p,p=x)}return s(p);case On:e:{for(k=m.key;d!==null;){if(d.key===k)if(d.tag===4&&d.stateNode.containerInfo===m.containerInfo&&d.stateNode.implementation===m.implementation){n(p,d.sibling),d=i(d,m.children||[]),d.return=p,p=d;break e}else{n(p,d);break}else t(p,d);d=d.sibling}d=ts(m,p.mode,x),d.return=p,p=d}return s(p);case Ft:return k=m._init,E(p,d,k(m._payload),x)}if(Nr(m))return y(p,d,m,x);if(yr(m))return w(p,d,m,x);$i(p,m)}return typeof m=="string"&&m!==""||typeof m=="number"?(m=""+m,d!==null&&d.tag===6?(n(p,d.sibling),d=i(d,m),d.return=p,p=d):(n(p,d),d=es(m,p.mode,x),d.return=p,p=d),s(p)):n(p,d)}return E}var tr=np(!0),rp=np(!1),Oo=on(null),zo=null,Un=null,Ha=null;function Wa(){Ha=Un=zo=null}function Va(e){var t=Oo.current;K(Oo),e._currentValue=t}function Ws(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Kn(e,t){zo=e,Ha=Un=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Ne=!0),e.firstContext=null)}function Xe(e){var t=e._currentValue;if(Ha!==e)if(e={context:e,memoizedValue:t,next:null},Un===null){if(zo===null)throw Error(S(308));Un=e,zo.dependencies={lanes:0,firstContext:e}}else Un=Un.next=e;return t}var mn=null;function Ga(e){mn===null?mn=[e]:mn.push(e)}function ip(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,Ga(t)):(n.next=i.next,i.next=n),t.interleaved=n,Ct(e,r)}function Ct(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 At=!1;function Qa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function op(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 _t(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Kt(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,B&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,Ct(e,n)}return i=r.interleaved,i===null?(t.next=t,Ga(r)):(t.next=i.next,i.next=t),r.interleaved=t,Ct(e,n)}function lo(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ia(e,n)}}function vc(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,l=null;if(n=n.firstBaseUpdate,n!==null){do{var s={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};l===null?i=l=s:l=l.next=s,n=n.next}while(n!==null);l===null?i=l=t:l=l.next=t}else i=l=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:l,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Do(e,t,n,r){var i=e.updateQueue;At=!1;var l=i.firstBaseUpdate,s=i.lastBaseUpdate,a=i.shared.pending;if(a!==null){i.shared.pending=null;var u=a,c=u.next;u.next=null,s===null?l=c:s.next=c,s=u;var f=e.alternate;f!==null&&(f=f.updateQueue,a=f.lastBaseUpdate,a!==s&&(a===null?f.firstBaseUpdate=c:a.next=c,f.lastBaseUpdate=u))}if(l!==null){var h=i.baseState;s=0,f=c=u=null,a=l;do{var g=a.lane,v=a.eventTime;if((r&g)===g){f!==null&&(f=f.next={eventTime:v,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var y=e,w=a;switch(g=t,v=n,w.tag){case 1:if(y=w.payload,typeof y=="function"){h=y.call(v,h,g);break e}h=y;break e;case 3:y.flags=y.flags&-65537|128;case 0:if(y=w.payload,g=typeof y=="function"?y.call(v,h,g):y,g==null)break e;h=re({},h,g);break e;case 2:At=!0}}a.callback!==null&&a.lane!==0&&(e.flags|=64,g=i.effects,g===null?i.effects=[a]:g.push(a))}else v={eventTime:v,lane:g,tag:a.tag,payload:a.payload,callback:a.callback,next:null},f===null?(c=f=v,u=h):f=f.next=v,s|=g;if(a=a.next,a===null){if(a=i.shared.pending,a===null)break;g=a,a=g.next,g.next=null,i.lastBaseUpdate=g,i.shared.pending=null}}while(!0);if(f===null&&(u=h),i.baseState=u,i.firstBaseUpdate=c,i.lastBaseUpdate=f,t=i.shared.interleaved,t!==null){i=t;do s|=i.lane,i=i.next;while(i!==t)}else l===null&&(i.shared.lanes=0);Sn|=s,e.lanes=s,e.memoizedState=h}}function xc(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=Yl.transition;Yl.transition={};try{e(!1),t()}finally{W=n,Yl.transition=r}}function kp(){return Ye().memoizedState}function i1(e,t,n){var r=qt(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},bp(e))_p(t,n);else if(n=ip(e,t,n,r),n!==null){var i=_e();rt(n,e,r,i),Sp(n,t,r)}}function o1(e,t,n){var r=qt(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(bp(e))_p(t,i);else{var l=e.alternate;if(e.lanes===0&&(l===null||l.lanes===0)&&(l=t.lastRenderedReducer,l!==null))try{var s=t.lastRenderedState,a=l(s,n);if(i.hasEagerState=!0,i.eagerState=a,ot(a,s)){var u=t.interleaved;u===null?(i.next=i,Ga(t)):(i.next=u.next,u.next=i),t.interleaved=i;return}}catch{}finally{}n=ip(e,t,i,r),n!==null&&(i=_e(),rt(n,e,r,i),Sp(n,t,r))}}function bp(e){var t=e.alternate;return e===ne||t!==null&&t===ne}function _p(e,t){$r=Mo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Sp(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ia(e,n)}}var $o={readContext:Xe,useCallback:ye,useContext:ye,useEffect:ye,useImperativeHandle:ye,useInsertionEffect:ye,useLayoutEffect:ye,useMemo:ye,useReducer:ye,useRef:ye,useState:ye,useDebugValue:ye,useDeferredValue:ye,useTransition:ye,useMutableSource:ye,useSyncExternalStore:ye,useId:ye,unstable_isNewReconciler:!1},l1={readContext:Xe,useCallback:function(e,t){return ct().memoizedState=[e,t===void 0?null:t],e},useContext:Xe,useEffect:wc,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,ao(4194308,4,vp.bind(null,t,e),n)},useLayoutEffect:function(e,t){return ao(4194308,4,e,t)},useInsertionEffect:function(e,t){return ao(4,2,e,t)},useMemo:function(e,t){var n=ct();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=ct();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=i1.bind(null,ne,e),[r.memoizedState,e]},useRef:function(e){var t=ct();return e={current:e},t.memoizedState=e},useState:yc,useDebugValue:tu,useDeferredValue:function(e){return ct().memoizedState=e},useTransition:function(){var e=yc(!1),t=e[0];return e=r1.bind(null,e[1]),ct().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=ne,i=ct();if(q){if(n===void 0)throw Error(S(407));n=n()}else{if(n=t(),he===null)throw Error(S(349));_n&30||up(r,t,n)}i.memoizedState=n;var l={value:n,getSnapshot:t};return i.queue=l,wc(dp.bind(null,r,l,e),[e]),r.flags|=2048,ii(9,cp.bind(null,r,l,n,t),void 0,null),n},useId:function(){var e=ct(),t=he.identifierPrefix;if(q){var n=bt,r=kt;n=(r&~(1<<32-nt(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=ni++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),n==="select"&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[pt]=t,e[Jr]=r,Dp(e,t,!1,!1),t.stateNode=e;e:{switch(s=Es(n,r),n){case"dialog":X("cancel",e),X("close",e),i=r;break;case"iframe":case"object":case"embed":X("load",e),i=r;break;case"video":case"audio":for(i=0;iir&&(t.flags|=128,r=!0,Sr(l,!1),t.lanes=4194304)}else{if(!r)if(e=Ro(s),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Sr(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!q)return we(t),null}else 2*le()-l.renderingStartTime>ir&&n!==1073741824&&(t.flags|=128,r=!0,Sr(l,!1),t.lanes=4194304);l.isBackwards?(s.sibling=t.child,t.child=s):(n=l.last,n!==null?n.sibling=s:t.child=s,l.last=s)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=le(),t.sibling=null,n=te.current,Q(te,r?n&1|2:n&1),t):(we(t),null);case 22:case 23:return su(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?$e&1073741824&&(we(t),t.subtreeFlags&6&&(t.flags|=8192)):we(t),null;case 24:return null;case 25:return null}throw Error(S(156,t.tag))}function h1(e,t){switch(Ba(t),t.tag){case 1:return Oe(t.type)&&No(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return nr(),K(Ie),K(ke),Ka(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Ya(t),null;case 13:if(K(te),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(S(340));er()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return K(te),null;case 4:return nr(),null;case 10:return Va(t.type._context),null;case 22:case 23:return su(),null;case 24:return null;default:return null}}var Ai=!1,je=!1,m1=typeof WeakSet=="function"?WeakSet:Set,I=null;function Hn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){oe(e,t,r)}else n.current=null}function Js(e,t,n){try{n()}catch(r){oe(e,t,r)}}var Lc=!1;function g1(e,t){if(Rs=So,e=Uf(),Fa(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,l=r.focusNode;r=r.focusOffset;try{n.nodeType,l.nodeType}catch{n=null;break e}var s=0,a=-1,u=-1,c=0,f=0,h=e,g=null;t:for(;;){for(var v;h!==n||i!==0&&h.nodeType!==3||(a=s+i),h!==l||r!==0&&h.nodeType!==3||(u=s+r),h.nodeType===3&&(s+=h.nodeValue.length),(v=h.firstChild)!==null;)g=h,h=v;for(;;){if(h===e)break t;if(g===n&&++c===i&&(a=s),g===l&&++f===r&&(u=s),(v=h.nextSibling)!==null)break;h=g,g=h.parentNode}h=v}n=a===-1||u===-1?null:{start:a,end:u}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ms={focusedElem:e,selectionRange:n},So=!1,I=t;I!==null;)if(t=I,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,I=e;else for(;I!==null;){t=I;try{var y=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(y!==null){var w=y.memoizedProps,E=y.memoizedState,p=t.stateNode,d=p.getSnapshotBeforeUpdate(t.elementType===t.type?w:Je(t.type,w),E);p.__reactInternalSnapshotBeforeUpdate=d}break;case 3:var m=t.stateNode.containerInfo;m.nodeType===1?m.textContent="":m.nodeType===9&&m.documentElement&&m.removeChild(m.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(S(163))}}catch(x){oe(t,t.return,x)}if(e=t.sibling,e!==null){e.return=t.return,I=e;break}I=t.return}return y=Lc,Lc=!1,y}function Fr(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var l=i.destroy;i.destroy=void 0,l!==void 0&&Js(t,n,l)}i=i.next}while(i!==r)}}function sl(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 r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function ea(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 $p(e){var t=e.alternate;t!==null&&(e.alternate=null,$p(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[pt],delete t[Jr],delete t[As],delete t[qg],delete t[Jg])),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 Fp(e){return e.tag===5||e.tag===3||e.tag===4}function Ic(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Fp(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 ta(e,t,n){var r=e.tag;if(r===5||r===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=Po));else if(r!==4&&(e=e.child,e!==null))for(ta(e,t,n),e=e.sibling;e!==null;)ta(e,t,n),e=e.sibling}function na(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(na(e,t,n),e=e.sibling;e!==null;)na(e,t,n),e=e.sibling}var me=null,et=!1;function It(e,t,n){for(n=n.child;n!==null;)Ap(e,t,n),n=n.sibling}function Ap(e,t,n){if(ht&&typeof ht.onCommitFiberUnmount=="function")try{ht.onCommitFiberUnmount(Jo,n)}catch{}switch(n.tag){case 5:je||Hn(n,t);case 6:var r=me,i=et;me=null,It(e,t,n),me=r,et=i,me!==null&&(et?(e=me,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):me.removeChild(n.stateNode));break;case 18:me!==null&&(et?(e=me,n=n.stateNode,e.nodeType===8?Gl(e.parentNode,n):e.nodeType===1&&Gl(e,n),Xr(e)):Gl(me,n.stateNode));break;case 4:r=me,i=et,me=n.stateNode.containerInfo,et=!0,It(e,t,n),me=r,et=i;break;case 0:case 11:case 14:case 15:if(!je&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var l=i,s=l.destroy;l=l.tag,s!==void 0&&(l&2||l&4)&&Js(n,t,s),i=i.next}while(i!==r)}It(e,t,n);break;case 1:if(!je&&(Hn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){oe(n,t,a)}It(e,t,n);break;case 21:It(e,t,n);break;case 22:n.mode&1?(je=(r=je)||n.memoizedState!==null,It(e,t,n),je=r):It(e,t,n);break;default:It(e,t,n)}}function Oc(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new m1),t.forEach(function(r){var i=S1.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function qe(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=s),r&=~l}if(r=i,r=le()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*x1(r/1960))-r,10e?16:e,Wt===null)var r=!1;else{if(e=Wt,Wt=null,Bo=0,B&6)throw Error(S(331));var i=B;for(B|=4,I=e.current;I!==null;){var l=I,s=l.child;if(I.flags&16){var a=l.deletions;if(a!==null){for(var u=0;ule()-ou?xn(e,0):iu|=n),ze(e,t)}function Xp(e,t){t===0&&(e.mode&1?(t=Li,Li<<=1,!(Li&130023424)&&(Li=4194304)):t=1);var n=_e();e=Ct(e,t),e!==null&&(ci(e,t,n),ze(e,n))}function _1(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Xp(e,n)}function S1(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(S(314))}r!==null&&r.delete(t),Xp(e,n)}var Yp;Yp=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ie.current)Ne=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Ne=!1,f1(e,t,n);Ne=!!(e.flags&131072)}else Ne=!1,q&&t.flags&1048576&&Jf(t,Io,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;uo(e,t),e=t.pendingProps;var i=Jn(t,ke.current);Kn(t,n),i=qa(null,t,r,e,i,n);var l=Ja();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Oe(r)?(l=!0,To(t)):l=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,Qa(t),i.updater=ll,t.stateNode=i,i._reactInternals=t,Gs(t,r,e,n),t=Ys(null,t,r,!0,l,n)):(t.tag=0,q&&l&&Aa(t),be(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(uo(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=C1(r),e=Je(r,e),i){case 0:t=Xs(null,t,r,e,n);break e;case 1:t=Pc(null,t,r,e,n);break e;case 11:t=Ec(null,t,r,e,n);break e;case 14:t=Cc(null,t,r,Je(r.type,e),n);break e}throw Error(S(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Je(r,i),Xs(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Je(r,i),Pc(e,t,r,i,n);case 3:e:{if(Ip(t),e===null)throw Error(S(387));r=t.pendingProps,l=t.memoizedState,i=l.element,op(e,t),Do(t,r,null,n);var s=t.memoizedState;if(r=s.element,l.isDehydrated)if(l={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=l,t.memoizedState=l,t.flags&256){i=rr(Error(S(423)),t),t=Nc(e,t,r,n,i);break e}else if(r!==i){i=rr(Error(S(424)),t),t=Nc(e,t,r,n,i);break e}else for(Fe=Yt(t.stateNode.containerInfo.firstChild),Ae=t,q=!0,tt=null,n=rp(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(er(),r===i){t=Pt(e,t,n);break e}be(e,t,r,n)}t=t.child}return t;case 5:return lp(t),e===null&&Hs(t),r=t.type,i=t.pendingProps,l=e!==null?e.memoizedProps:null,s=i.children,$s(r,i)?s=null:l!==null&&$s(r,l)&&(t.flags|=32),Lp(e,t),be(e,t,s,n),t.child;case 6:return e===null&&Hs(t),null;case 13:return Op(e,t,n);case 4:return Xa(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=tr(t,null,r,n):be(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Je(r,i),Ec(e,t,r,i,n);case 7:return be(e,t,t.pendingProps,n),t.child;case 8:return be(e,t,t.pendingProps.children,n),t.child;case 12:return be(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,l=t.memoizedProps,s=i.value,Q(Oo,r._currentValue),r._currentValue=s,l!==null)if(ot(l.value,s)){if(l.children===i.children&&!Ie.current){t=Pt(e,t,n);break e}}else for(l=t.child,l!==null&&(l.return=t);l!==null;){var a=l.dependencies;if(a!==null){s=l.child;for(var u=a.firstContext;u!==null;){if(u.context===r){if(l.tag===1){u=_t(-1,n&-n),u.tag=2;var c=l.updateQueue;if(c!==null){c=c.shared;var f=c.pending;f===null?u.next=u:(u.next=f.next,f.next=u),c.pending=u}}l.lanes|=n,u=l.alternate,u!==null&&(u.lanes|=n),Ws(l.return,n,t),a.lanes|=n;break}u=u.next}}else if(l.tag===10)s=l.type===t.type?null:l.child;else if(l.tag===18){if(s=l.return,s===null)throw Error(S(341));s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),Ws(s,n,t),s=l.sibling}else s=l.child;if(s!==null)s.return=l;else for(s=l;s!==null;){if(s===t){s=null;break}if(l=s.sibling,l!==null){l.return=s.return,s=l;break}s=s.return}l=s}be(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,Kn(t,n),i=Xe(i),r=r(i),t.flags|=1,be(e,t,r,n),t.child;case 14:return r=t.type,i=Je(r,t.pendingProps),i=Je(r.type,i),Cc(e,t,r,i,n);case 15:return Np(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Je(r,i),uo(e,t),t.tag=1,Oe(r)?(e=!0,To(t)):e=!1,Kn(t,n),Ep(t,r,i),Gs(t,r,i,n),Ys(null,t,r,!0,e,n);case 19:return zp(e,t,n);case 22:return Tp(e,t,n)}throw Error(S(156,t.tag))};function Kp(e,t){return bf(e,t)}function E1(e,t,n,r){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=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ge(e,t,n,r){return new E1(e,t,n,r)}function uu(e){return e=e.prototype,!(!e||!e.isReactComponent)}function C1(e){if(typeof e=="function")return uu(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Pa)return 11;if(e===Na)return 14}return 2}function Jt(e,t){var n=e.alternate;return n===null?(n=Ge(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.deletions=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 po(e,t,n,r,i,l){var s=2;if(r=e,typeof e=="function")uu(e)&&(s=1);else if(typeof e=="string")s=5;else e:switch(e){case zn:return yn(n.children,i,l,t);case Ca:s=8,i|=8;break;case gs:return e=Ge(12,n,t,i|2),e.elementType=gs,e.lanes=l,e;case vs:return e=Ge(13,n,t,i),e.elementType=vs,e.lanes=l,e;case xs:return e=Ge(19,n,t,i),e.elementType=xs,e.lanes=l,e;case lf:return ul(n,i,l,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case rf:s=10;break e;case of:s=9;break e;case Pa:s=11;break e;case Na:s=14;break e;case Ft:s=16,r=null;break e}throw Error(S(130,e==null?e:typeof e,""))}return t=Ge(s,n,t,i),t.elementType=e,t.type=r,t.lanes=l,t}function yn(e,t,n,r){return e=Ge(7,e,r,t),e.lanes=n,e}function ul(e,t,n,r){return e=Ge(22,e,r,t),e.elementType=lf,e.lanes=n,e.stateNode={isHidden:!1},e}function es(e,t,n){return e=Ge(6,e,null,t),e.lanes=n,e}function ts(e,t,n){return t=Ge(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function P1(e,t,n,r,i){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=Dl(0),this.expirationTimes=Dl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Dl(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function cu(e,t,n,r,i,l,s,a,u){return e=new P1(e,t,n,a,u),t===1?(t=1,l===!0&&(t|=8)):t=0,l=Ge(3,null,null,t),e.current=l,l.stateNode=e,l.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Qa(l),e}function N1(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(eh)}catch(e){console.error(e)}}eh(),Jd.exports=Ue;var th=Jd.exports;const z1=Bd(th);/** * @remix-run/router v1.16.1 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */function li(){return li=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function nh(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function R1(){return Math.random().toString(36).substr(2,8)}function Uc(e,t){return{usr:e.state,key:e.key,idx:t}}function sa(e,t,n,r){return n===void 0&&(n=null),li({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?pr(t):t,{state:n,key:t&&t.key||r||R1()})}function Wo(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function pr(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function M1(e,t,n,r){r===void 0&&(r={});let{window:i=document.defaultView,v5Compat:l=!1}=r,s=i.history,a=Vt.Pop,u=null,c=f();c==null&&(c=0,s.replaceState(li({},s.state,{idx:c}),""));function f(){return(s.state||{idx:null}).idx}function h(){a=Vt.Pop;let E=f(),p=E==null?null:E-c;c=E,u&&u({action:a,location:w.location,delta:p})}function g(E,p){a=Vt.Push;let d=sa(w.location,E,p);c=f()+1;let m=Uc(d,c),x=w.createHref(d);try{s.pushState(m,"",x)}catch(_){if(_ instanceof DOMException&&_.name==="DataCloneError")throw _;i.location.assign(x)}l&&u&&u({action:a,location:w.location,delta:1})}function v(E,p){a=Vt.Replace;let d=sa(w.location,E,p);c=f();let m=Uc(d,c),x=w.createHref(d);s.replaceState(m,"",x),l&&u&&u({action:a,location:w.location,delta:0})}function y(E){let p=i.location.origin!=="null"?i.location.origin:i.location.href,d=typeof E=="string"?E:Wo(E);return d=d.replace(/ $/,"%20"),ue(p,"No window.location.(origin|href) available to create URL for href: "+d),new URL(d,p)}let w={get action(){return a},get location(){return e(i,s)},listen(E){if(u)throw new Error("A history only accepts one active listener");return i.addEventListener(Bc,h),u=E,()=>{i.removeEventListener(Bc,h),u=null}},createHref(E){return t(i,E)},createURL:y,encodeLocation(E){let p=y(E);return{pathname:p.pathname,search:p.search,hash:p.hash}},push:g,replace:v,go(E){return s.go(E)}};return w}var Hc;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Hc||(Hc={}));function $1(e,t,n){n===void 0&&(n="/");let r=typeof t=="string"?pr(t):t,i=hu(r.pathname||"/",n);if(i==null)return null;let l=rh(e);F1(l);let s=null;for(let a=0;s==null&&a{let u={relativePath:a===void 0?l.path||"":a,caseSensitive:l.caseSensitive===!0,childrenIndex:s,route:l};u.relativePath.startsWith("/")&&(ue(u.relativePath.startsWith(r),'Absolute route path "'+u.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),u.relativePath=u.relativePath.slice(r.length));let c=en([r,u.relativePath]),f=n.concat(u);l.children&&l.children.length>0&&(ue(l.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),rh(l.children,t,f,c)),!(l.path==null&&!l.index)&&t.push({path:c,score:G1(c,l.index),routesMeta:f})};return e.forEach((l,s)=>{var a;if(l.path===""||!((a=l.path)!=null&&a.includes("?")))i(l,s);else for(let u of ih(l.path))i(l,s,u)}),t}function ih(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,i=n.endsWith("?"),l=n.replace(/\?$/,"");if(r.length===0)return i?[l,""]:[l];let s=ih(r.join("/")),a=[];return a.push(...s.map(u=>u===""?l:[l,u].join("/"))),i&&a.push(...s),a.map(u=>e.startsWith("/")&&u===""?"/":u)}function F1(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Q1(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const A1=/^:[\w-]+$/,B1=3,U1=2,H1=1,W1=10,V1=-2,Wc=e=>e==="*";function G1(e,t){let n=e.split("/"),r=n.length;return n.some(Wc)&&(r+=V1),t&&(r+=U1),n.filter(i=>!Wc(i)).reduce((i,l)=>i+(A1.test(l)?B1:l===""?H1:W1),r)}function Q1(e,t){return e.length===t.length&&e.slice(0,-1).every((r,i)=>r===t[i])?e[e.length-1]-t[t.length-1]:0}function X1(e,t){let{routesMeta:n}=e,r={},i="/",l=[];for(let s=0;s{let{paramName:g,isOptional:v}=f;if(g==="*"){let w=a[h]||"";s=l.slice(0,l.length-w.length).replace(/(.)\/+$/,"$1")}const y=a[h];return v&&!y?c[g]=void 0:c[g]=(y||"").replace(/%2F/g,"/"),c},{}),pathname:l,pathnameBase:s,pattern:e}}function K1(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),nh(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(s,a,u)=>(r.push({paramName:a,isOptional:u!=null}),u?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),r]}function Z1(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return nh(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function hu(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function q1(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:i=""}=typeof e=="string"?pr(e):e;return{pathname:n?n.startsWith("/")?n:J1(n,t):t,search:nv(r),hash:rv(i)}}function J1(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?n.length>1&&n.pop():i!=="."&&n.push(i)}),n.length>1?n.join("/"):"/"}function ns(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function ev(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function oh(e,t){let n=ev(e);return t?n.map((r,i)=>i===e.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function lh(e,t,n,r){r===void 0&&(r=!1);let i;typeof e=="string"?i=pr(e):(i=li({},e),ue(!i.pathname||!i.pathname.includes("?"),ns("?","pathname","search",i)),ue(!i.pathname||!i.pathname.includes("#"),ns("#","pathname","hash",i)),ue(!i.search||!i.search.includes("#"),ns("#","search","hash",i)));let l=e===""||i.pathname==="",s=l?"/":i.pathname,a;if(s==null)a=n;else{let h=t.length-1;if(!r&&s.startsWith("..")){let g=s.split("/");for(;g[0]==="..";)g.shift(),h-=1;i.pathname=g.join("/")}a=h>=0?t[h]:"/"}let u=q1(i,a),c=s&&s!=="/"&&s.endsWith("/"),f=(l||s===".")&&n.endsWith("/");return!u.pathname.endsWith("/")&&(c||f)&&(u.pathname+="/"),u}const en=e=>e.join("/").replace(/\/\/+/g,"/"),tv=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),nv=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,rv=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function iv(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const sh=["post","put","patch","delete"];new Set(sh);const ov=["get",...sh];new Set(ov);/** * React Router v6.23.1 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */function si(){return si=Object.assign?Object.assign.bind():function(e){for(var t=1;t{a.current=!0}),P.useCallback(function(c,f){if(f===void 0&&(f={}),!a.current)return;if(typeof c=="number"){r.go(c);return}let h=lh(c,JSON.parse(s),l,f.relative==="path");e==null&&t!=="/"&&(h.pathname=h.pathname==="/"?t:en([t,h.pathname])),(f.replace?r.replace:r.push)(h,f.state,f)},[t,r,s,l,e])}function ch(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=P.useContext(Nn),{matches:i}=P.useContext(Tn),{pathname:l}=ml(),s=JSON.stringify(oh(i,r.v7_relativeSplatPath));return P.useMemo(()=>lh(e,JSON.parse(s),l,n==="path"),[e,s,l,n])}function cv(e,t){return dv(e,t)}function dv(e,t,n,r){hi()||ue(!1);let{navigator:i}=P.useContext(Nn),{matches:l}=P.useContext(Tn),s=l[l.length-1],a=s?s.params:{};s&&s.pathname;let u=s?s.pathnameBase:"/";s&&s.route;let c=ml(),f;if(t){var h;let E=typeof t=="string"?pr(t):t;u==="/"||(h=E.pathname)!=null&&h.startsWith(u)||ue(!1),f=E}else f=c;let g=f.pathname||"/",v=g;if(u!=="/"){let E=u.replace(/^\//,"").split("/");v="/"+g.replace(/^\//,"").split("/").slice(E.length).join("/")}let y=$1(e,{pathname:v}),w=gv(y&&y.map(E=>Object.assign({},E,{params:Object.assign({},a,E.params),pathname:en([u,i.encodeLocation?i.encodeLocation(E.pathname).pathname:E.pathname]),pathnameBase:E.pathnameBase==="/"?u:en([u,i.encodeLocation?i.encodeLocation(E.pathnameBase).pathname:E.pathnameBase])})),l,n,r);return t&&w?P.createElement(hl.Provider,{value:{location:si({pathname:"/",search:"",hash:"",state:null,key:"default"},f),navigationType:Vt.Pop}},w):w}function fv(){let e=wv(),t=iv(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,i={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return P.createElement(P.Fragment,null,P.createElement("h2",null,"Unexpected Application Error!"),P.createElement("h3",{style:{fontStyle:"italic"}},t),n?P.createElement("pre",{style:i},n):null,null)}const pv=P.createElement(fv,null);class hv extends P.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?P.createElement(Tn.Provider,{value:this.props.routeContext},P.createElement(ah.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function mv(e){let{routeContext:t,match:n,children:r}=e,i=P.useContext(mu);return i&&i.static&&i.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=n.route.id),P.createElement(Tn.Provider,{value:t},r)}function gv(e,t,n,r){var i;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var l;if((l=n)!=null&&l.errors)e=n.matches;else return null}let s=e,a=(i=n)==null?void 0:i.errors;if(a!=null){let f=s.findIndex(h=>h.route.id&&(a==null?void 0:a[h.route.id])!==void 0);f>=0||ue(!1),s=s.slice(0,Math.min(s.length,f+1))}let u=!1,c=-1;if(n&&r&&r.v7_partialHydration)for(let f=0;f=0?s=s.slice(0,c+1):s=[s[0]];break}}}return s.reduceRight((f,h,g)=>{let v,y=!1,w=null,E=null;n&&(v=a&&h.route.id?a[h.route.id]:void 0,w=h.route.errorElement||pv,u&&(c<0&&g===0?(y=!0,E=null):c===g&&(y=!0,E=h.route.hydrateFallbackElement||null)));let p=t.concat(s.slice(0,g+1)),d=()=>{let m;return v?m=w:y?m=E:h.route.Component?m=P.createElement(h.route.Component,null):h.route.element?m=h.route.element:m=f,P.createElement(mv,{match:h,routeContext:{outlet:f,matches:p,isDataRoute:n!=null},children:m})};return n&&(h.route.ErrorBoundary||h.route.errorElement||g===0)?P.createElement(hv,{location:n.location,revalidation:n.revalidation,component:w,error:v,children:d(),routeContext:{outlet:null,matches:p,isDataRoute:!0}}):d()},null)}var dh=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(dh||{}),Vo=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(Vo||{});function vv(e){let t=P.useContext(mu);return t||ue(!1),t}function xv(e){let t=P.useContext(lv);return t||ue(!1),t}function yv(e){let t=P.useContext(Tn);return t||ue(!1),t}function fh(e){let t=yv(),n=t.matches[t.matches.length-1];return n.route.id||ue(!1),n.route.id}function wv(){var e;let t=P.useContext(ah),n=xv(Vo.UseRouteError),r=fh(Vo.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function jv(){let{router:e}=vv(dh.UseNavigateStable),t=fh(Vo.UseNavigateStable),n=P.useRef(!1);return uh(()=>{n.current=!0}),P.useCallback(function(i,l){l===void 0&&(l={}),n.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,si({fromRouteId:t},l)))},[e,t])}function ph(e){ue(!1)}function kv(e){let{basename:t="/",children:n=null,location:r,navigationType:i=Vt.Pop,navigator:l,static:s=!1,future:a}=e;hi()&&ue(!1);let u=t.replace(/^\/*/,"/"),c=P.useMemo(()=>({basename:u,navigator:l,static:s,future:si({v7_relativeSplatPath:!1},a)}),[u,a,l,s]);typeof r=="string"&&(r=pr(r));let{pathname:f="/",search:h="",hash:g="",state:v=null,key:y="default"}=r,w=P.useMemo(()=>{let E=hu(f,u);return E==null?null:{location:{pathname:E,search:h,hash:g,state:v,key:y},navigationType:i}},[u,f,h,g,v,y,i]);return w==null?null:P.createElement(Nn.Provider,{value:c},P.createElement(hl.Provider,{children:n,value:w}))}function bv(e){let{children:t,location:n}=e;return cv(aa(t),n)}new Promise(()=>{});function aa(e,t){t===void 0&&(t=[]);let n=[];return P.Children.forEach(e,(r,i)=>{if(!P.isValidElement(r))return;let l=[...t,i];if(r.type===P.Fragment){n.push.apply(n,aa(r.props.children,l));return}r.type!==ph&&ue(!1),!r.props.index||!r.props.children||ue(!1);let s={id:r.props.id||l.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(s.children=aa(r.props.children,l)),n.push(s)}),n}/** * React Router DOM v6.23.1 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */function ua(){return ua=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(n[i]=e[i]);return n}function Sv(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Ev(e,t){return e.button===0&&(!t||t==="_self")&&!Sv(e)}const Cv=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"],Pv="6";try{window.__reactRouterVersion=Pv}catch{}const Nv="startTransition",Vc=bm[Nv];function Tv(e){let{basename:t,children:n,future:r,window:i}=e,l=P.useRef();l.current==null&&(l.current=D1({window:i,v5Compat:!0}));let s=l.current,[a,u]=P.useState({action:s.action,location:s.location}),{v7_startTransition:c}=r||{},f=P.useCallback(h=>{c&&Vc?Vc(()=>u(h)):u(h)},[u,c]);return P.useLayoutEffect(()=>s.listen(f),[s,f]),P.createElement(kv,{basename:t,children:n,location:a.location,navigationType:a.action,navigator:s,future:r})}const Lv=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",Iv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,mi=P.forwardRef(function(t,n){let{onClick:r,relative:i,reloadDocument:l,replace:s,state:a,target:u,to:c,preventScrollReset:f,unstable_viewTransition:h}=t,g=_v(t,Cv),{basename:v}=P.useContext(Nn),y,w=!1;if(typeof c=="string"&&Iv.test(c)&&(y=c,Lv))try{let m=new URL(window.location.href),x=c.startsWith("//")?new URL(m.protocol+c):new URL(c),_=hu(x.pathname,v);x.origin===m.origin&&_!=null?c=_+x.search+x.hash:w=!0}catch{}let E=sv(c,{relative:i}),p=Ov(c,{replace:s,state:a,target:u,preventScrollReset:f,relative:i,unstable_viewTransition:h});function d(m){r&&r(m),m.defaultPrevented||p(m)}return P.createElement("a",ua({},g,{href:y||E,onClick:w||l?r:d,ref:n,target:u}))});var Gc;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(Gc||(Gc={}));var Qc;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(Qc||(Qc={}));function Ov(e,t){let{target:n,replace:r,state:i,preventScrollReset:l,relative:s,unstable_viewTransition:a}=t===void 0?{}:t,u=av(),c=ml(),f=ch(e,{relative:s});return P.useCallback(h=>{if(Ev(h,n)){h.preventDefault();let g=r!==void 0?r:Wo(c)===Wo(f);u(e,{replace:g,state:i,preventScrollReset:l,relative:s,unstable_viewTransition:a})}},[c,u,f,r,i,n,e,l,s,a])}var hh={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},ca=Le.createContext&&Le.createContext(hh),zv=["attr","size","title"];function Dv(e,t){if(e==null)return{};var n=Rv(e,t),r,i;if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function Rv(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function Go(){return Go=Object.assign?Object.assign.bind():function(e){for(var t=1;tLe.createElement(t.tag,Qo({key:n},t.attr),mh(t.child)))}function gu(e){return t=>Le.createElement(Av,Go({attr:Qo({},e.attr)},t),mh(e.child))}function Av(e){var t=n=>{var{attr:r,size:i,title:l}=e,s=Dv(e,zv),a=i||n.size||"1em",u;return n.className&&(u=n.className),e.className&&(u=(u?u+" ":"")+e.className),Le.createElement("svg",Go({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},n.attr,r,s,{className:u,style:Qo(Qo({color:e.color||n.color},n.style),e.style),height:a,width:a,xmlns:"http://www.w3.org/2000/svg"}),l&&Le.createElement("title",null,l),e.children)};return ca!==void 0?Le.createElement(ca.Consumer,null,n=>t(n)):t(hh)}function Bv(e){return gu({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"},child:[]}]})(e)}function Uv(e){return gu({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"},child:[]}]})(e)}function Hv(e){return gu({tag:"svg",attr:{viewBox:"0 0 352 512"},child:[{tag:"path",attr:{d:"M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"},child:[]}]})(e)}var ie={},vu={},gi={},vi={},gh="Expected a function",Yc=NaN,Wv="[object Symbol]",Vv=/^\s+|\s+$/g,Gv=/^[-+]0x[0-9a-f]+$/i,Qv=/^0b[01]+$/i,Xv=/^0o[0-7]+$/i,Yv=parseInt,Kv=typeof Si=="object"&&Si&&Si.Object===Object&&Si,Zv=typeof self=="object"&&self&&self.Object===Object&&self,qv=Kv||Zv||Function("return this")(),Jv=Object.prototype,e0=Jv.toString,t0=Math.max,n0=Math.min,rs=function(){return qv.Date.now()};function r0(e,t,n){var r,i,l,s,a,u,c=0,f=!1,h=!1,g=!0;if(typeof e!="function")throw new TypeError(gh);t=Kc(t)||0,Xo(n)&&(f=!!n.leading,h="maxWait"in n,l=h?t0(Kc(n.maxWait)||0,t):l,g="trailing"in n?!!n.trailing:g);function v(k){var b=r,T=i;return r=i=void 0,c=k,s=e.apply(T,b),s}function y(k){return c=k,a=setTimeout(p,t),f?v(k):s}function w(k){var b=k-u,T=k-c,U=t-b;return h?n0(U,l-T):U}function E(k){var b=k-u,T=k-c;return u===void 0||b>=t||b<0||h&&T>=l}function p(){var k=rs();if(E(k))return d(k);a=setTimeout(p,w(k))}function d(k){return a=void 0,g&&r?v(k):(r=i=void 0,s)}function m(){a!==void 0&&clearTimeout(a),c=0,r=u=i=a=void 0}function x(){return a===void 0?s:d(rs())}function _(){var k=rs(),b=E(k);if(r=arguments,i=this,u=k,b){if(a===void 0)return y(u);if(h)return a=setTimeout(p,t),v(u)}return a===void 0&&(a=setTimeout(p,t)),s}return _.cancel=m,_.flush=x,_}function i0(e,t,n){var r=!0,i=!0;if(typeof e!="function")throw new TypeError(gh);return Xo(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),r0(e,t,{leading:r,maxWait:t,trailing:i})}function Xo(e){var t=typeof e;return!!e&&(t=="object"||t=="function")}function o0(e){return!!e&&typeof e=="object"}function l0(e){return typeof e=="symbol"||o0(e)&&e0.call(e)==Wv}function Kc(e){if(typeof e=="number")return e;if(l0(e))return Yc;if(Xo(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Xo(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=e.replace(Vv,"");var n=Qv.test(e);return n||Xv.test(e)?Yv(e.slice(2),n?2:8):Gv.test(e)?Yc:+e}var s0=i0,xi={};Object.defineProperty(xi,"__esModule",{value:!0});xi.addPassiveEventListener=function(t,n,r){var i=r.name;i||(i=n,console.warn("Listener must be a named function.")),ho.has(n)||ho.set(n,new Set);var l=ho.get(n);if(!l.has(i)){var s=function(){var a=!1;try{var u=Object.defineProperty({},"passive",{get:function(){a=!0}});window.addEventListener("test",null,u)}catch{}return a}();t.addEventListener(n,r,s?{passive:!0}:!1),l.add(i)}};xi.removePassiveEventListener=function(t,n,r){t.removeEventListener(n,r),ho.get(n).delete(r.name||n)};var ho=new Map;Object.defineProperty(vi,"__esModule",{value:!0});var a0=s0,u0=d0(a0),c0=xi;function d0(e){return e&&e.__esModule?e:{default:e}}var f0=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:66;return(0,u0.default)(t,n)},J={spyCallbacks:[],spySetState:[],scrollSpyContainers:[],mount:function(t,n){if(t){var r=f0(function(i){J.scrollHandler(t)},n);J.scrollSpyContainers.push(t),(0,c0.addPassiveEventListener)(t,"scroll",r)}},isMounted:function(t){return J.scrollSpyContainers.indexOf(t)!==-1},currentPositionX:function(t){if(t===document){var n=window.pageYOffset!==void 0,r=(document.compatMode||"")==="CSS1Compat";return n?window.pageXOffset:r?document.documentElement.scrollLeft:document.body.scrollLeft}else return t.scrollLeft},currentPositionY:function(t){if(t===document){var n=window.pageXOffset!==void 0,r=(document.compatMode||"")==="CSS1Compat";return n?window.pageYOffset:r?document.documentElement.scrollTop:document.body.scrollTop}else return t.scrollTop},scrollHandler:function(t){var n=J.scrollSpyContainers[J.scrollSpyContainers.indexOf(t)].spyCallbacks||[];n.forEach(function(r){return r(J.currentPositionX(t),J.currentPositionY(t))})},addStateHandler:function(t){J.spySetState.push(t)},addSpyHandler:function(t,n){var r=J.scrollSpyContainers[J.scrollSpyContainers.indexOf(n)];r.spyCallbacks||(r.spyCallbacks=[]),r.spyCallbacks.push(t),t(J.currentPositionX(n),J.currentPositionY(n))},updateStates:function(){J.spySetState.forEach(function(t){return t()})},unmount:function(t,n){J.scrollSpyContainers.forEach(function(r){return r.spyCallbacks&&r.spyCallbacks.length&&r.spyCallbacks.indexOf(n)>-1&&r.spyCallbacks.splice(r.spyCallbacks.indexOf(n),1)}),J.spySetState&&J.spySetState.length&&J.spySetState.indexOf(t)>-1&&J.spySetState.splice(J.spySetState.indexOf(t),1),document.removeEventListener("scroll",J.scrollHandler)},update:function(){return J.scrollSpyContainers.forEach(function(t){return J.scrollHandler(t)})}};vi.default=J;var hr={},yi={};Object.defineProperty(yi,"__esModule",{value:!0});var p0=function(t,n){var r=t.indexOf("#")===0?t.substring(1):t,i=r?"#"+r:"",l=window&&window.location,s=i?l.pathname+l.search+i:l.pathname+l.search;n?history.pushState(history.state,"",s):history.replaceState(history.state,"",s)},h0=function(){return window.location.hash.replace(/^#/,"")},m0=function(t){return function(n){return t.contains?t!=n&&t.contains(n):!!(t.compareDocumentPosition(n)&16)}},g0=function(t){return getComputedStyle(t).position!=="static"},is=function(t,n){for(var r=t.offsetTop,i=t.offsetParent;i&&!n(i);)r+=i.offsetTop,i=i.offsetParent;return{offsetTop:r,offsetParent:i}},v0=function(t,n,r){if(r)return t===document?n.getBoundingClientRect().left+(window.scrollX||window.pageXOffset):getComputedStyle(t).position!=="static"?n.offsetLeft:n.offsetLeft-t.offsetLeft;if(t===document)return n.getBoundingClientRect().top+(window.scrollY||window.pageYOffset);if(g0(t)){if(n.offsetParent!==t){var i=function(f){return f===t||f===document},l=is(n,i),s=l.offsetTop,a=l.offsetParent;if(a!==t)throw new Error("Seems containerElement is not an ancestor of the Element");return s}return n.offsetTop}if(n.offsetParent===t.offsetParent)return n.offsetTop-t.offsetTop;var u=function(f){return f===document};return is(n,u).offsetTop-is(t,u).offsetTop};yi.default={updateHash:p0,getHash:h0,filterElementInContainer:m0,scrollOffset:v0};var gl={},xu={};Object.defineProperty(xu,"__esModule",{value:!0});xu.default={defaultEasing:function(t){return t<.5?Math.pow(t*2,2)/2:1-Math.pow((1-t)*2,2)/2},linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return t*(2-t)},easeInOutQuad:function(t){return t<.5?2*t*t:-1+(4-2*t)*t},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return--t*t*t+1},easeInOutCubic:function(t){return t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return 1- --t*t*t*t},easeInOutQuart:function(t){return t<.5?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return 1+--t*t*t*t*t},easeInOutQuint:function(t){return t<.5?16*t*t*t*t*t:1+16*--t*t*t*t*t}};var yu={};Object.defineProperty(yu,"__esModule",{value:!0});var x0=xi,y0=["mousedown","mousewheel","touchmove","keydown"];yu.default={subscribe:function(t){return typeof document<"u"&&y0.forEach(function(n){return(0,x0.addPassiveEventListener)(document,n,t)})}};var wi={};Object.defineProperty(wi,"__esModule",{value:!0});var da={registered:{},scrollEvent:{register:function(t,n){da.registered[t]=n},remove:function(t){da.registered[t]=null}}};wi.default=da;Object.defineProperty(gl,"__esModule",{value:!0});var w0=Object.assign||function(e){for(var t=1;t=i.duration?1:t(i.progress/i.duration),i.currentPosition=i.startPosition+Math.ceil(i.delta*i.percent),i.containerElement&&i.containerElement!==document&&i.containerElement!==document.body?n.horizontal?i.containerElement.scrollLeft=i.currentPosition:i.containerElement.scrollTop=i.currentPosition:n.horizontal?window.scrollTo(i.currentPosition,0):window.scrollTo(0,i.currentPosition),i.percent<1){var l=e.bind(null,t,n);fa.call(window,l);return}dt.default.registered.end&&dt.default.registered.end(i.to,i.target,i.currentPosition)},wu=function(t){t.data.containerElement=t?t.containerId?document.getElementById(t.containerId):t.container&&t.container.nodeType?t.container:document:null},ji=function(t,n,r,i){n.data=n.data||xh(),window.clearTimeout(n.data.delayTimeout);var l=function(){n.data.cancel=!0};if(_0.default.subscribe(l),wu(n),n.data.start=null,n.data.cancel=!1,n.data.startPosition=n.horizontal?yh(n):wh(n),n.data.targetPosition=n.absolute?t:t+n.data.startPosition,n.data.startPosition===n.data.targetPosition){dt.default.registered.end&&dt.default.registered.end(n.data.to,n.data.target,n.data.currentPosition);return}n.data.delta=Math.round(n.data.targetPosition-n.data.startPosition),n.data.duration=E0(n.duration)(n.data.delta),n.data.duration=isNaN(parseFloat(n.data.duration))?1e3:parseFloat(n.data.duration),n.data.to=r,n.data.target=i;var s=vh(n),a=T0.bind(null,s,n);if(n&&n.delay>0){n.data.delayTimeout=window.setTimeout(function(){dt.default.registered.begin&&dt.default.registered.begin(n.data.to,n.data.target),fa.call(window,a)},n.delay);return}dt.default.registered.begin&&dt.default.registered.begin(n.data.to,n.data.target),fa.call(window,a)},xl=function(t){return t=w0({},t),t.data=t.data||xh(),t.absolute=!0,t},L0=function(t){ji(0,xl(t))},I0=function(t,n){ji(t,xl(n))},O0=function(t){t=xl(t),wu(t),ji(t.horizontal?P0(t):N0(t),t)},z0=function(t,n){n=xl(n),wu(n);var r=n.horizontal?yh(n):wh(n);ji(t+r,n)};gl.default={animateTopScroll:ji,getAnimationType:vh,scrollToTop:L0,scrollToBottom:O0,scrollTo:I0,scrollMore:z0};Object.defineProperty(hr,"__esModule",{value:!0});var D0=Object.assign||function(e){for(var t=1;t=Math.floor(w)&&x=Math.floor(E)}else{var _=0,k=0,b=0;if(c.getBoundingClientRect){var T=c.getBoundingClientRect();b=T.top}if(!g||s.props.isDynamic){if(g=n.get(h),!g)return;var U=g.getBoundingClientRect();_=U.top-b+u,k=_+U.height}var $=u-s.props.offset;v=$>=Math.floor(_)&&$=Math.floor(k)}var xe=n.getActiveLink();if(y){if(h===xe&&n.setActiveLink(void 0),s.props.hashSpy&&Ot.default.getHash()===h){var lt=s.props.saveHashHistory,vt=lt===void 0?!1:lt;Ot.default.changeHash("",vt)}s.props.spy&&s.state.active&&(s.setState({active:!1}),s.props.onSetInactive&&s.props.onSetInactive(h,g))}if(v&&(xe!==h||s.state.active===!1)){n.setActiveLink(h);var sn=s.props.saveHashHistory,gr=sn===void 0?!1:sn;s.props.hashSpy&&Ot.default.changeHash(h,gr),s.props.spy&&(s.setState({active:!0}),s.props.onSetActive&&s.props.onSetActive(h,g))}}}};return r.propTypes=ed,r.defaultProps={offset:0},r};Object.defineProperty(vu,"__esModule",{value:!0});var ix=P,td=_h(ix),ox=gi,lx=_h(ox);function _h(e){return e&&e.__esModule?e:{default:e}}function sx(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function nd(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t&&(typeof t=="object"||typeof t=="function")?t:e}function ax(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var ux=function(e){ax(t,e);function t(){var n,r,i,l;sx(this,t);for(var s=arguments.length,a=Array(s),u=0;u"u")return!1;this.registerElems(this.props.name)}},{key:"componentDidUpdate",value:function(l){this.props.name!==l.name&&this.registerElems(this.props.name)}},{key:"componentWillUnmount",value:function(){if(typeof window>"u")return!1;od.default.unregister(this.props.name)}},{key:"registerElems",value:function(l){od.default.register(l,this.childBindings.domNode)}},{key:"render",value:function(){return id.default.createElement(e,xx({},this.props,{parentBindings:this.childBindings}))}}]),r}(id.default.Component);return t.propTypes={name:ld.default.string,id:ld.default.string},t};Object.defineProperty(bu,"__esModule",{value:!0});var sd=Object.assign||function(e){for(var t=1;t=Math.floor(g)&&p=Math.floor(v),x=r.getActiveLink();if(m)return f===x&&r.setActiveLink(void 0),a.props.hashSpy&&zt.getHash()===f&&zt.changeHash(),a.props.spy&&a.state.active&&(a.setState({active:!1}),a.props.onSetInactive&&a.props.onSetInactive()),dn.updateStates();if(d&&x!==f)return r.setActiveLink(f),a.props.hashSpy&&zt.changeHash(f),a.props.spy&&(a.setState({active:!0}),a.props.onSetActive&&a.props.onSetActive(f)),dn.updateStates()}}};return i.propTypes=hd,i.defaultProps={offset:0},i},Element:function(t){console.warn("Helpers.Element is deprecated since v1.7.0");var n=function(r){pd(i,r);function i(l){dd(this,i);var s=fd(this,(i.__proto__||Object.getPrototypeOf(i)).call(this,l));return s.childBindings={domNode:null},s}return cd(i,[{key:"componentDidMount",value:function(){if(typeof window>"u")return!1;this.registerElems(this.props.name)}},{key:"componentDidUpdate",value:function(s){this.props.name!==s.name&&this.registerElems(this.props.name)}},{key:"componentWillUnmount",value:function(){if(typeof window>"u")return!1;ss.unregister(this.props.name)}},{key:"registerElems",value:function(s){ss.register(s,this.childBindings.domNode)}},{key:"render",value:function(){return Qi.createElement(t,ls({},this.props,{parentBindings:this.childBindings}))}}]),i}(Qi.Component);return n.propTypes={name:ee.string,id:ee.string},n}},Rx=Dx;Object.defineProperty(ie,"__esModule",{value:!0});ie.Helpers=ie.ScrollElement=ie.ScrollLink=Eu=ie.animateScroll=ie.scrollSpy=ie.Events=ie.scroller=ie.Element=ie.Button=Su=ie.Link=void 0;var Mx=vu,Ch=gt(Mx),$x=ku,Ph=gt($x),Fx=bu,Nh=gt(Fx),Ax=hr,Th=gt(Ax),Bx=wi,Lh=gt(Bx),Ux=vi,Ih=gt(Ux),Hx=gl,Oh=gt(Hx),Wx=gi,zh=gt(Wx),Vx=jl,Dh=gt(Vx),Gx=Rx,Rh=gt(Gx);function gt(e){return e&&e.__esModule?e:{default:e}}var Su=ie.Link=Ch.default;ie.Button=Ph.default;ie.Element=Nh.default;ie.scroller=Th.default;ie.Events=Lh.default;ie.scrollSpy=Ih.default;var Eu=ie.animateScroll=Oh.default;ie.ScrollLink=zh.default;ie.ScrollElement=Dh.default;ie.Helpers=Rh.default;ie.default={Link:Ch.default,Button:Ph.default,Element:Nh.default,scroller:Th.default,Events:Lh.default,scrollSpy:Ih.default,animateScroll:Oh.default,ScrollLink:zh.default,ScrollElement:Dh.default,Helpers:Rh.default};const Qx="data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'%20standalone='no'?%3e%3csvg%20height='10'%20width='8.75'%20viewBox='0%200%20448%20512'%20version='1.1'%20id='svg914'%20sodipodi:docname='square-x-twitter.svg'%20inkscape:version='1.1.2%20(b8e25be8,%202022-02-05)'%20xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape'%20xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:svg='http://www.w3.org/2000/svg'%3e%3cdefs%20id='defs918'%20/%3e%3csodipodi:namedview%20id='namedview916'%20pagecolor='%23ffffff'%20bordercolor='%23666666'%20borderopacity='1.0'%20inkscape:pageshadow='2'%20inkscape:pageopacity='0.0'%20inkscape:pagecheckerboard='0'%20showgrid='false'%20inkscape:zoom='65.6'%20inkscape:cx='3.8948171'%20inkscape:cy='4.5426829'%20inkscape:window-width='1296'%20inkscape:window-height='906'%20inkscape:window-x='0'%20inkscape:window-y='38'%20inkscape:window-maximized='0'%20inkscape:current-layer='svg914'%20/%3e%3c!--!Font%20Awesome%20Free%206.5.1%20by%20@fontawesome%20-%20https://fontawesome.com%20License%20-%20https://fontawesome.com/license/free%20Copyright%202024%20Fonticons,%20Inc.--%3e%3cpath%20d='M64%2032C28.7%2032%200%2060.7%200%2096V416c0%2035.3%2028.7%2064%2064%2064H384c35.3%200%2064-28.7%2064-64V96c0-35.3-28.7-64-64-64H64zm297.1%2084L257.3%20234.6%20379.4%20396H283.8L209%20298.1%20123.3%20396H75.8l111-126.9L69.7%20116h98l67.7%2089.5L313.6%20116h47.5zM323.3%20367.6L153.4%20142.9H125.1L296.9%20367.6h26.3z'%20id='path912'%20style='fill:%23ffffff;fill-opacity:1'%20/%3e%3c/svg%3e";var Te=function(){return Te=Object.assign||function(t){for(var n,r=1,i=arguments.length;r0?pe(mr,--Ke):0,lr--,se===10&&(lr=1,_l--),se}function it(){return se=Ke2||ha(se)>3?"":" "}function ry(e,t){for(;--t&&it()&&!(se<48||se>102||se>57&&se<65||se>70&&se<97););return El(e,go()+(t<6&&wn()==32&&it()==32))}function ma(e){for(;it();)switch(se){case e:return Ke;case 34:case 39:e!==34&&e!==39&&ma(se);break;case 40:e===41&&ma(e);break;case 92:it();break}return Ke}function iy(e,t){for(;it()&&e+se!==57;)if(e+se===84&&wn()===47)break;return"/*"+El(t,Ke-1)+"*"+Pu(e===47?e:it())}function oy(e){for(;!ha(wn());)it();return El(e,Ke)}function ly(e){return ty(vo("",null,null,null,[""],e=ey(e),0,[0],e))}function vo(e,t,n,r,i,l,s,a,u){for(var c=0,f=0,h=s,g=0,v=0,y=0,w=1,E=1,p=1,d=0,m="",x=i,_=l,k=r,b=m;E;)switch(y=d,d=it()){case 40:if(y!=108&&pe(b,h-1)==58){mo(b+=F(as(d),"&","&\f"),"&\f",Fh(c?a[c-1]:0))!=-1&&(p=-1);break}case 34:case 39:case 91:b+=as(d);break;case 9:case 10:case 13:case 32:b+=ny(y);break;case 92:b+=ry(go()-1,7);continue;case 47:switch(wn()){case 42:case 47:Ir(sy(iy(it(),go()),t,n,u),u);break;default:b+="/"}break;case 123*w:a[c++]=ft(b)*p;case 125*w:case 59:case 0:switch(d){case 0:case 125:E=0;case 59+f:p==-1&&(b=F(b,/\f/g,"")),v>0&&ft(b)-h&&Ir(v>32?vd(b+";",r,n,h-1,u):vd(F(b," ","")+";",r,n,h-2,u),u);break;case 59:b+=";";default:if(Ir(k=gd(b,t,n,c,f,i,a,m,x=[],_=[],h,l),l),d===123)if(f===0)vo(b,t,k,k,x,l,h,a,_);else switch(g===99&&pe(b,3)===110?100:g){case 100:case 108:case 109:case 115:vo(e,k,k,r&&Ir(gd(e,k,k,0,0,i,a,m,i,x=[],h,_),_),i,_,h,a,r?x:_);break;default:vo(b,k,k,k,[""],_,0,a,_)}}c=f=v=0,w=p=1,m=b="",h=s;break;case 58:h=1+ft(b),v=y;default:if(w<1){if(d==123)--w;else if(d==125&&w++==0&&Jx()==125)continue}switch(b+=Pu(d),d*w){case 38:p=f>0?1:(b+="\f",-1);break;case 44:a[c++]=(ft(b)-1)*p,p=1;break;case 64:wn()===45&&(b+=as(it())),g=wn(),f=h=ft(m=b+=oy(go())),d++;break;case 45:y===45&&ft(b)==2&&(w=0)}}return l}function gd(e,t,n,r,i,l,s,a,u,c,f,h){for(var g=i-1,v=i===0?l:[""],y=Bh(v),w=0,E=0,p=0;w0?v[d]+" "+m:F(m,/&\f/g,v[d])))&&(u[p++]=x);return Sl(e,t,n,i===0?bl:a,u,c,f,h)}function sy(e,t,n,r){return Sl(e,t,n,Mh,Pu(qx()),or(e,2,-2),0,r)}function vd(e,t,n,r,i){return Sl(e,t,n,Cu,or(e,0,r),or(e,r+1,-1),r,i)}function Hh(e,t,n){switch(Kx(e,t)){case 5103:return H+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return H+e+e;case 4789:return Ur+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return H+e+Ur+e+Y+e+e;case 5936:switch(pe(e,t+11)){case 114:return H+e+Y+F(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return H+e+Y+F(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return H+e+Y+F(e,/[svh]\w+-[tblr]{2}/,"lr")+e}case 6828:case 4268:case 2903:return H+e+Y+e+e;case 6165:return H+e+Y+"flex-"+e+e;case 5187:return H+e+F(e,/(\w+).+(:[^]+)/,H+"box-$1$2"+Y+"flex-$1$2")+e;case 5443:return H+e+Y+"flex-item-"+F(e,/flex-|-self/g,"")+(wt(e,/flex-|baseline/)?"":Y+"grid-row-"+F(e,/flex-|-self/g,""))+e;case 4675:return H+e+Y+"flex-line-pack"+F(e,/align-content|flex-|-self/g,"")+e;case 5548:return H+e+Y+F(e,"shrink","negative")+e;case 5292:return H+e+Y+F(e,"basis","preferred-size")+e;case 6060:return H+"box-"+F(e,"-grow","")+H+e+Y+F(e,"grow","positive")+e;case 4554:return H+F(e,/([^-])(transform)/g,"$1"+H+"$2")+e;case 6187:return F(F(F(e,/(zoom-|grab)/,H+"$1"),/(image-set)/,H+"$1"),e,"")+e;case 5495:case 3959:return F(e,/(image-set\([^]*)/,H+"$1$`$1");case 4968:return F(F(e,/(.+:)(flex-)?(.*)/,H+"box-pack:$3"+Y+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+H+e+e;case 4200:if(!wt(e,/flex-|baseline/))return Y+"grid-column-align"+or(e,t)+e;break;case 2592:case 3360:return Y+F(e,"template-","")+e;case 4384:case 3616:return n&&n.some(function(r,i){return t=i,wt(r.props,/grid-\w+-end/)})?~mo(e+(n=n[t].value),"span",0)?e:Y+F(e,"-start","")+e+Y+"grid-row-span:"+(~mo(n,"span",0)?wt(n,/\d+/):+wt(n,/\d+/)-+wt(e,/\d+/))+";":Y+F(e,"-start","")+e;case 4896:case 4128:return n&&n.some(function(r){return wt(r.props,/grid-\w+-start/)})?e:Y+F(F(e,"-end","-span"),"span ","")+e;case 4095:case 3583:case 4068:case 2532:return F(e,/(.+)-inline(.+)/,H+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(ft(e)-1-t>6)switch(pe(e,t+1)){case 109:if(pe(e,t+4)!==45)break;case 102:return F(e,/(.+:)(.+)-([^]+)/,"$1"+H+"$2-$3$1"+Ur+(pe(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~mo(e,"stretch",0)?Hh(F(e,"stretch","fill-available"),t,n)+e:e}break;case 5152:case 5920:return F(e,/(.+?):(\d+)(\s*\/\s*(span)?\s*(\d+))?(.*)/,function(r,i,l,s,a,u,c){return Y+i+":"+l+c+(s?Y+i+"-span:"+(a?u:+u-+l)+c:"")+e});case 4949:if(pe(e,t+6)===121)return F(e,":",":"+H)+e;break;case 6444:switch(pe(e,pe(e,14)===45?18:11)){case 120:return F(e,/(.+:)([^;\s!]+)(;|(\s+)?!.+)?/,"$1"+H+(pe(e,14)===45?"inline-":"")+"box$3$1"+H+"$2$3$1"+Y+"$2box$3")+e;case 100:return F(e,":",":"+Y)+e}break;case 5719:case 2647:case 2135:case 3927:case 2391:return F(e,"scroll-","scroll-snap-")+e}return e}function Ko(e,t){for(var n="",r=0;r-1&&!e.return)switch(e.type){case Cu:e.return=Hh(e.value,e.length,n);return;case $h:return Ko([$t(e,{value:F(e.value,"@","@"+H)})],r);case bl:if(e.length)return Zx(n=e.props,function(i){switch(wt(i,r=/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":In($t(e,{props:[F(i,/:(read-\w+)/,":"+Ur+"$1")]})),In($t(e,{props:[i]})),pa(e,{props:md(n,r)});break;case"::placeholder":In($t(e,{props:[F(i,/:(plac\w+)/,":"+H+"input-$1")]})),In($t(e,{props:[F(i,/:(plac\w+)/,":"+Ur+"$1")]})),In($t(e,{props:[F(i,/:(plac\w+)/,Y+"input-$1")]})),In($t(e,{props:[i]})),pa(e,{props:md(n,r)});break}return""})}}var fy={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},Me={},sr=typeof process<"u"&&Me!==void 0&&(Me.REACT_APP_SC_ATTR||Me.SC_ATTR)||"data-styled",Wh="active",Vh="data-styled-version",Cl="6.1.11",Nu=`/*!sc*/ `,Tu=typeof window<"u"&&"HTMLElement"in window,py=!!(typeof SC_DISABLE_SPEEDY=="boolean"?SC_DISABLE_SPEEDY:typeof process<"u"&&Me!==void 0&&Me.REACT_APP_SC_DISABLE_SPEEDY!==void 0&&Me.REACT_APP_SC_DISABLE_SPEEDY!==""?Me.REACT_APP_SC_DISABLE_SPEEDY!=="false"&&Me.REACT_APP_SC_DISABLE_SPEEDY:typeof process<"u"&&Me!==void 0&&Me.SC_DISABLE_SPEEDY!==void 0&&Me.SC_DISABLE_SPEEDY!==""&&Me.SC_DISABLE_SPEEDY!=="false"&&Me.SC_DISABLE_SPEEDY),Pl=Object.freeze([]),ar=Object.freeze({});function hy(e,t,n){return n===void 0&&(n=ar),e.theme!==n.theme&&e.theme||t||n.theme}var Gh=new Set(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","track","u","ul","use","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"]),my=/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~-]+/g,gy=/(^-|-$)/g;function xd(e){return e.replace(my,"-").replace(gy,"")}var vy=/(a)(d)/gi,Xi=52,yd=function(e){return String.fromCharCode(e+(e>25?39:97))};function ga(e){var t,n="";for(t=Math.abs(e);t>Xi;t=t/Xi|0)n=yd(t%Xi)+n;return(yd(t%Xi)+n).replace(vy,"$1-$2")}var us,Qh=5381,Vn=function(e,t){for(var n=t.length;n;)e=33*e^t.charCodeAt(--n);return e},Xh=function(e){return Vn(Qh,e)};function xy(e){return ga(Xh(e)>>>0)}function yy(e){return e.displayName||e.name||"Component"}function cs(e){return typeof e=="string"&&!0}var Yh=typeof Symbol=="function"&&Symbol.for,Kh=Yh?Symbol.for("react.memo"):60115,wy=Yh?Symbol.for("react.forward_ref"):60112,jy={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},ky={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},Zh={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},by=((us={})[wy]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},us[Kh]=Zh,us);function wd(e){return("type"in(t=e)&&t.type.$$typeof)===Kh?Zh:"$$typeof"in e?by[e.$$typeof]:jy;var t}var _y=Object.defineProperty,Sy=Object.getOwnPropertyNames,jd=Object.getOwnPropertySymbols,Ey=Object.getOwnPropertyDescriptor,Cy=Object.getPrototypeOf,kd=Object.prototype;function qh(e,t,n){if(typeof t!="string"){if(kd){var r=Cy(t);r&&r!==kd&&qh(e,r,n)}var i=Sy(t);jd&&(i=i.concat(jd(t)));for(var l=wd(e),s=wd(t),a=0;a0?" Args: ".concat(t.join(", ")):""))}var Py=function(){function e(t){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=t}return e.prototype.indexOfGroup=function(t){for(var n=0,r=0;r=this.groupSizes.length){for(var r=this.groupSizes,i=r.length,l=i;t>=l;)if((l<<=1)<0)throw bi(16,"".concat(t));this.groupSizes=new Uint32Array(l),this.groupSizes.set(r),this.length=l;for(var s=i;s=this.length||this.groupSizes[t]===0)return n;for(var r=this.groupSizes[t],i=this.indexOfGroup(t),l=i+r,s=i;s=0){var r=document.createTextNode(n);return this.element.insertBefore(r,this.nodes[t]||null),this.length++,!0}return!1},e.prototype.deleteRule=function(t){this.element.removeChild(this.nodes[t]),this.length--},e.prototype.getRule=function(t){return t0&&(E+="".concat(p,","))}),u+="".concat(y).concat(w,'{content:"').concat(E,'"}').concat(Nu)},f=0;f0?".".concat(t):g},f=u.slice();f.push(function(g){g.type===bl&&g.value.includes("&")&&(g.props[0]=g.props[0].replace(Fy,n).replace(r,c))}),s.prefix&&f.push(dy),f.push(ay);var h=function(g,v,y,w){v===void 0&&(v=""),y===void 0&&(y=""),w===void 0&&(w="&"),t=w,n=v,r=new RegExp("\\".concat(n,"\\b"),"g");var E=g.replace(Ay,""),p=ly(y||v?"".concat(y," ").concat(v," { ").concat(E," }"):E);s.namespace&&(p=tm(p,s.namespace));var d=[];return Ko(p,uy(f.concat(cy(function(m){return d.push(m)})))),d};return h.hash=u.length?u.reduce(function(g,v){return v.name||bi(15),Vn(g,v.name)},Qh).toString():"",h}var Uy=new em,xa=By(),nm=Le.createContext({shouldForwardProp:void 0,styleSheet:Uy,stylis:xa});nm.Consumer;Le.createContext(void 0);function Sd(){return P.useContext(nm)}var Hy=function(){function e(t,n){var r=this;this.inject=function(i,l){l===void 0&&(l=xa);var s=r.name+l.hash;i.hasNameForId(r.id,s)||i.insertRules(r.id,s,l(r.rules,s,"@keyframes"))},this.name=t,this.id="sc-keyframes-".concat(t),this.rules=n,Iu(this,function(){throw bi(12,String(r.name))})}return e.prototype.getName=function(t){return t===void 0&&(t=xa),this.name+t.hash},e}(),Wy=function(e){return e>="A"&&e<="Z"};function Ed(e){for(var t="",n=0;n>>0);if(!n.hasNameForId(this.componentId,s)){var a=r(l,".".concat(s),void 0,this.componentId);n.insertRules(this.componentId,s,a)}i=vn(i,s),this.staticRulesId=s}else{for(var u=Vn(this.baseHash,r.hash),c="",f=0;f>>0);n.hasNameForId(this.componentId,v)||n.insertRules(this.componentId,v,r(c,".".concat(v),void 0,this.componentId)),i=vn(i,v)}}return i},e}(),om=Le.createContext(void 0);om.Consumer;var ds={};function Xy(e,t,n){var r=Lu(e),i=e,l=!cs(e),s=t.attrs,a=s===void 0?Pl:s,u=t.componentId,c=u===void 0?function(x,_){var k=typeof x!="string"?"sc":xd(x);ds[k]=(ds[k]||0)+1;var b="".concat(k,"-").concat(xy(Cl+k+ds[k]));return _?"".concat(_,"-").concat(b):b}(t.displayName,t.parentComponentId):u,f=t.displayName,h=f===void 0?function(x){return cs(x)?"styled.".concat(x):"Styled(".concat(yy(x),")")}(e):f,g=t.displayName&&t.componentId?"".concat(xd(t.displayName),"-").concat(t.componentId):t.componentId||c,v=r&&i.attrs?i.attrs.concat(a).filter(Boolean):a,y=t.shouldForwardProp;if(r&&i.shouldForwardProp){var w=i.shouldForwardProp;if(t.shouldForwardProp){var E=t.shouldForwardProp;y=function(x,_){return w(x,_)&&E(x,_)}}else y=w}var p=new Qy(n,g,r?i.componentStyle:void 0);function d(x,_){return function(k,b,T){var U=k.attrs,$=k.componentStyle,xe=k.defaultProps,lt=k.foldedComponentIds,vt=k.styledComponentId,sn=k.target,gr=Le.useContext(om),vr=Sd(),an=k.shouldForwardProp||vr.shouldForwardProp,L=hy(b,gr,xe)||ar,O=function(Tt,De,xt){for(var xr,cn=Te(Te({},De),{className:void 0,theme:xt}),Nl=0;Nl{Eu.scrollToTop()};return o.jsx(o.Fragment,{children:o.jsx(Ky,{children:o.jsx(Zy,{children:o.jsx(qy,{children:o.jsxs(Jy,{children:[o.jsx(ew,{to:"/udlbook/",onClick:e,children:"Understanding Deep Learning"}),o.jsxs(Nd,{children:["©",new Date().getFullYear()," Simon J.D. Prince"]}),o.jsxs(Nd,{children:["Images by StorySet on FreePik:"," ",o.jsxs("a",{href:"https://www.freepik.com/free-vector/hand-coding-concept-illustration_21864184.htm#query=coding&position=17&from_view=search&track=sph&uuid=5896d847-38e4-4cb9-8fe1-103041c7c933",children:[" ","[1]"," "]})," ",o.jsx("a",{href:"https://www.freepik.com/free-vector/mathematics-concept-illustration_10733824.htm#query=professor&position=13&from_view=search&track=sph&uuid=5b1a188a-64c5-45af-aae2-8573bc1bed3c",children:"[2]"})," ",o.jsxs("a",{href:"https://www.freepik.com/free-vector/content-concept-illustration_7171429.htm#query=media&position=3&from_view=search&track=sph&uuid=c7e35cf2-d85d-4bba-91a6-1cd883dcf153",children:[" ","[3]"]})," ",o.jsxs("a",{href:"https://www.freepik.com/free-vector/library-concept-illustration_9148008.htm#query=library&position=40&from_view=search&track=sph&uuid=abecc792-b6b2-4ec0-b318-5e6cc73ba649",children:[" ","[4]"]})]}),o.jsxs(tw,{children:[o.jsx(Td,{href:"https://twitter.com/SimonPrinceAI",target:"_blank","aria-label":"Twitter",children:o.jsx(nw,{src:Qx,alt:"twitter"})}),o.jsx(Td,{href:"https://www.linkedin.com/in/simon-prince-615bb9165/",target:"_blank","aria-label":"LinkedIn",children:o.jsx(Bv,{})})]})]})})})})})}const iw="/udlbook/assets/F23.prince.learning.turquoise-B3FyEkB6.jpg",ow=j.div` background: #57c6d1; display: flex; justify-content: center; align-items: center; padding: 0 0px; position: static; z-index: 1; `,lw=j.div` z-index: 3; width: 100%; max-width: 1100px; position: static; padding: 8px 24px; margin: 80px 0px; display: flex; flex-direction: column; align-items: center; `;j.h1` color: #fff; font-size: 48px; text-align: center; @media screen and (max-width: 768px) { font-size: 40px; } @media screen and (max-width: 480px) { font-size: 32px; } `;j.p` margin-top: 24px; color: #fff; font-size: 24px; text-align: center; max-width: 600px; @media screen and (max-width: 768px) { font-size: 24px; } @media screen and (max-width: 480px) { font-size: 18px; } `;j.div` margin-top: 32px; display: flex; flex-direction: column; align-items: center; `;const sw=j.div` display: grid; grid-auto-columns: minmax(auto, 1fr); align-items: top; grid-template-areas: 'col1 col2' }; @media screen and (max-width: 768px){ grid-template-areas: 'col2' 'col1'; } `,Dt=j.div` margin-left: 4px; color: #000000; font-size: 16px; /* line-height: 16px; */ margin-bottom: 16px; display: flex; justify-content: start; `,Rt=j.div` width: 20%; margin-right: 20px; @media screen and (max-width: 768px) { font-size: 12px; } @media screen and (max-width: 480px) { font-size: 12px; } `,Mt=j.div` width: 80%; color: #000000; @media screen and (max-width: 768px) { font-size: 12px; } @media screen and (max-width: 480px) { font-size: 12px; } `,aw=j.div` margin-bottom: 15px; margin-left: 12px; margin-top: 60px; padding: 10px 15px; padding: 0 15px; grid-area: col1; align-items: left; display: flex; flex-direction: column; justify-content: space-between; `,uw=j.div` margin-bottom: 15px; padding: 0 15px; grid-area: col2; display: flex; align-items: center; flex-direction: column; `;j.div` max-width: 540px; padding-top: 0; padding-bottom: 0; `;const cw=j.div` max-width: 555px; height: 100%; `,dw=j.img` width: 100%; margin-top: 0; margin-right: 0; margin-left: 10px; padding-right: 0; `,fw=j.img` margin-top: 5px; margin-right: 0; margin-left: 0; padding-right: 0; margin-bottom: 10px; `,Ki=j.a` color: #fff; text-decoration: none; padding: 0.6rem 0rem 0rem 0rem; cursor: pointer; position: relative; &:before { position: absolute; margin: 0 auto; top: 100%; left: 0; width: 100%; height: 2px; background-color: #fff; content: ""; opacity: 0.3; -webkit-transform: scaleX(1); transition-property: opacity, -webkit-transform; transition-duration: 0.3s; } &:hover:before { opacity: 1; -webkit-transform: scaleX(1.05); } `,at=j.a` text-decoration: none; color: #000; font-weight: 300; margin: 0 2px; position: relative; &:before { position: absolute; margin: 0 auto; top: 100%; left: 0; width: 100%; height: 2px; background-color: #000; content: ""; opacity: 0.3; -webkit-transform: scaleX(1); transition-property: opacity, -webkit-transform; transition-duration: 0.3s; } &:hover:before { opacity: 1; -webkit-transform: scaleX(1.05); } `,pw=j.div` margin-left: 0px; color: #000000; font-size: 16px; font-weight: bold; line-height: 16px; margin-bottom: 36px; @media screen and (max-width: 768px) { font-size: 24px; } @media screen and (max-width: 480px) { font-size: 18px; } `,hw=j.div` margin-left: 0px; color: #000000; font-size: 16px; font-weight: bold; line-height: 16px; margin-bottom: 10px; margin-top: 36px; @media screen and (max-width: 768px) { font-size: 24px; } @media screen and (max-width: 480px) { font-size: 18px; } `,mw=j.div``,gw=j.div` font-size: 14px; margin-bottom: 0px; margin-top: 0px; `,vw=j.div` @media screen and (max-width: 768px) { font-size: 14px; } `;function xw(){return o.jsx(ow,{id:"home",children:o.jsx(lw,{children:o.jsxs(sw,{children:[o.jsxs(aw,{children:[o.jsxs(mw,{children:[o.jsx(pw,{children:"RECENT NEWS:"}),o.jsxs(Dt,{children:[o.jsx(Rt,{children:"05/22/24"}),o.jsxs(Mt,{children:[" ","New"," ",o.jsxs(at,{href:"https://www.borealisai.com/research-blogs/neural-tangent-kernel-applications/",children:[" ","blog"," "]})," ","about the applications of the neural tangent kernel."]})]}),o.jsxs(Dt,{children:[o.jsx(Rt,{children:"05/10/24"}),o.jsxs(Mt,{children:[" ","Positive"," ",o.jsx(at,{href:"https://github.com/udlbook/udlbook/blob/main/public/NMI_Review.pdf",children:"review"})," ","in Nature Machine Intelligence."]})]}),o.jsxs(Dt,{children:[o.jsx(Rt,{children:"02/21/24"}),o.jsxs(Mt,{children:["New blog about the"," ",o.jsx(at,{href:"https://www.borealisai.com/research-blogs/the-neural-tangent-kernel/",children:"Neural Tangent Kernel"}),"."]})]}),o.jsxs(Dt,{children:[o.jsx(Rt,{children:"01/29/24"}),o.jsxs(Mt,{children:[" ","New blog about"," ",o.jsxs(at,{href:"https://www.borealisai.com/research-blogs/gradient-flow/",children:[" ","gradient flow"]})," ","published."]})]}),o.jsxs(Dt,{children:[o.jsx(Rt,{children:"12/26/23"}),o.jsxs(Mt,{children:[" ","Machine Learning Street Talk"," ",o.jsxs(at,{href:"https://www.youtube.com/watch?v=sJXn4Cl4oww",children:[" ","podcast"," "]})," ","discussing book."]})]}),o.jsxs(Dt,{children:[o.jsx(Rt,{children:"12/19/23"}),o.jsxs(Mt,{children:["Deeper Insights"," ",o.jsx(at,{href:"https://podcasts.apple.com/us/podcast/understanding-deep-learning-with-simon-prince/id1669436318?i=1000638269385",children:"podcast"})," ","discussing book."]})]}),o.jsxs(Dt,{children:[o.jsx(Rt,{children:"12/06/23"}),o.jsxs(Mt,{children:[" ",o.jsx(at,{href:"https://www.borealisai.com/news/understanding-deep-learning/",children:"Interview"})," ","with Borealis AI."]})]}),o.jsxs(Dt,{children:[o.jsx(Rt,{children:"12/05/23"}),o.jsxs(Mt,{children:[" ","Book released by"," ",o.jsx(at,{href:"https://mitpress.mit.edu/9780262048644/understanding-deep-learning/",children:"The MIT Press"}),"."]})]})]}),o.jsx(hw,{children:"CITATION:"}),o.jsx(gw,{children:o.jsx("pre",{children:o.jsx("code",{children:o.jsx(o.Fragment,{children:` @book{prince2023understanding, author = "Simon J.D. Prince", title = "Understanding Deep Learning", publisher = "The MIT Press", year = 2023, url = "http://udlbook.com" } `})})})}),o.jsxs(vw,{children:["Follow me on"," ",o.jsx(at,{href:"https://twitter.com/SimonPrinceAI",children:"Twitter"})," or"," ",o.jsx(at,{href:"https://www.linkedin.com/in/simon-prince-615bb9165/",children:"LinkedIn"})," ","for updates."]})]}),o.jsxs(uw,{children:[o.jsx(cw,{children:o.jsx(dw,{src:iw,alt:"book cover"})}),o.jsx(Ki,{href:"https://github.com/udlbook/udlbook/releases/download/v4.0.1/UnderstandingDeepLearning_05_27_24_C.pdf",children:"Download full pdf (27 May 2024)"}),o.jsx(fw,{src:"https://img.shields.io/github/downloads/udlbook/udlbook/total",alt:"download stats shield"}),o.jsx(Ki,{href:"https://mitpress.mit.edu/9780262048644/understanding-deep-learning/",children:"Buy the book"}),o.jsx(Ki,{href:"https://github.com/udlbook/udlbook/raw/main/UDL_Answer_Booklet_Students.pdf",children:"Answers to selected questions"}),o.jsx(Ki,{href:"https://github.com/udlbook/udlbook/raw/main/UDL_Errata.pdf",children:"Errata"})]})]})})})}const yw="/udlbook/assets/instructor-B2zxe_pu.svg",ww=j.div` color: #fff; /* background: #f9f9f9; */ background: ${({lightBg:e})=>e?"#57c6d1":"#010606"}; @media screen and (max-width: 768px) { padding: 100px 0; } `,jw=j.div` display: grid; z-index: 1; width: 100%; max-width: 1100px; margin-right: auto; margin-left: auto; padding: 0 24px; justify-content: center; `,kw=j.div` display: grid; grid-auto-columns: minmax(auto, 1fr); align-items: center; grid-template-areas: ${({imgStart:e})=>e?"'col2 col1'":"'col1 col2'"}; @media screen and (max-width: 768px) { grid-template-areas: ${({imgStart:e})=>e?"'col1' 'col2'":"'col1 col1' 'col2 col2'"}; } `,bw=j.div` display: grid; grid-auto-columns: minmax(auto, 1fr); align-items: top; grid-template-areas: ${({imgStart:e})=>e?"'col2 col1'":"'col1 col2'"}; @media screen and (max-width: 768px) { grid-template-areas: ${({imgStart:e})=>e?"'col1' 'col2'":"'col1 col1' 'col2 col2'"}; } `,Ld=j.div` margin-bottom: 15px; padding: 0 15px; grid-area: col1; `,Id=j.div` margin-bottom: 15px; padding: 0 15px; grid-area: col2; `,_w=j.div` max-width: 540px; padding-top: 0; padding-bottom: 0; `,Zi=j.p` color: #773c23; font-size: 16px; line-height: 16px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; margin-bottom: 16px; `,Sw=j.h1` margin-bottom: 24px; font-size: 48px; line-height: 1.1; font-weight: 600; color: ${({lightText:e})=>e?"#f7f8fa":"#010606"}; @media screen and (max-width: 480px) { font-size: 32px; } `,Ew=j.p` max-width: 440px; margin-bottom: 35px; font-size: 18px; line-height: 24px; color: ${({darkText:e})=>e?"#010606":"#fff"}; `;j.div` display: flex; justify-content: flex-start; `;const Cw=j.div` max-width: 555px; height: 100%; `,Pw=j.img` width: 100%; margin-top: 0; margin-right: 0; margin-left: 10px; padding-right: 0; `,Cr=j.div` z-index: 3; width: 100%; max-width: 1100px; position: static; padding: 8px 0px; margin: 10px 0px; display: flex; flex-direction: column; align-items: left; list-style-position: inside; @media screen and (max-width: 1050px) { font-size: 12px; } @media screen and (max-width: 768px) { font-size: 10px; } `,C=j.a` text-decoration: none; color: #555; font-weight: 300; margin: 0 2px; position: relative; &:before { position: absolute; margin: 0 auto; top: 100%; left: 0; width: 100%; height: 2px; background-color: #555; content: ""; opacity: 0.3; -webkit-transform: scaleX(1); transition-property: opacity, -webkit-transform; transition-duration: 0.3s; } &:hover:before { opacity: 1; -webkit-transform: scaleX(1.05); } `;function Nw(){return o.jsx(o.Fragment,{children:o.jsx(ww,{lightBg:!0,id:"Instructors",children:o.jsxs(jw,{children:[o.jsxs(kw,{imgStart:!1,children:[o.jsx(Ld,{children:o.jsxs(_w,{children:[o.jsx(Zi,{children:"Instructors"}),o.jsx(Sw,{lightText:!1,children:"Resources for instructors"}),o.jsx(Ew,{darkText:!0,children:"All the figures in vector and image formats, full slides for first twelve chapters, instructor answer booklet"})]})}),o.jsx(Id,{children:o.jsx(Cw,{children:o.jsx(Pw,{src:yw,alt:"Car"})})})]}),o.jsxs(bw,{children:[o.jsxs(Ld,{children:[o.jsx(Zi,{children:"Register"}),o.jsx(C,{href:"https://mitpress.ublish.com/request?cri=15055",children:"Register"})," ","with MIT Press for answer booklet.",o.jsx(Cr,{}),o.jsx(Zi,{children:"Full slides"}),o.jsx(Cr,{children:"Slides for 20 lecture undergraduate deep learning course:"}),o.jsx(Cr,{children:o.jsxs("ol",{children:[o.jsxs("li",{children:["Introduction"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=17RHb11BrydOvxSFNbRIomE1QKLVI087m",children:"PPTX"})]}),o.jsxs("li",{children:["Supervised Learning"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1491zkHULC7gDfqlV6cqUxyVYXZ-de-Ub",children:"PPTX"})]}),o.jsxs("li",{children:["Shallow Neural Networks"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1XkP1c9EhOBowla1rT1nnsDGMf2rZvrt7",children:"PPTX"})]}),o.jsxs("li",{children:["Deep Neural Networks"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1e2ejfZbbfMKLBv0v-tvBWBdI8gO3SSS1",children:"PPTX"})]}),o.jsxs("li",{children:["Loss Functions"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1fxQ_a1Q3eFPZ4kPqKbak6_emJK-JfnRH",children:"PPTX"})]}),o.jsxs("li",{children:["Fitting Models"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=17QQ5ZzXBtR_uCNCUU1gPRWWRUeZN9exW",children:"PPTX"})]}),o.jsxs("li",{children:["Computing Gradients"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1hC8JUCOaFWiw3KGn0rm7nW6mEq242QDK",children:"PPTX"})]}),o.jsxs("li",{children:["Initialization"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1tSjCeAVg0JCeBcPgDJDbi7Gg43Qkh9_d",children:"PPTX"})]}),o.jsxs("li",{children:["Performance"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1RVZW3KjEs0vNSGx3B2fdizddlr6I0wLl",children:"PPTX"})]}),o.jsxs("li",{children:["Regularization"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1LTicIKPRPbZRkkg6qOr1DSuOB72axood",children:"PPTX"})]}),o.jsxs("li",{children:["Convolutional Networks"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1bGVuwAwrofzZdfvj267elIzkYMIvYFj0",children:"PPTX"})]}),o.jsxs("li",{children:["Image Generation"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=14w31QqWRDix1GdUE-na0_E0kGKBhtKzs",children:"PPTX"})]}),o.jsxs("li",{children:["Transformers and LLMs"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1af6bTTjAbhDYfrDhboW7Fuv52Gk9ygKr",children:"PPTX"})]})]})})]}),o.jsxs(Id,{children:[o.jsx(Zi,{children:"Figures"}),o.jsx(Cr,{children:o.jsxs("ol",{children:[o.jsxs("li",{children:[" ","Introduction:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap1PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1udnl5pUOAc8DcAQ7HQwyzP9pwL95ynnv",children:[" ","SVG"]})," ","/"," ",o.jsxs(C,{href:"https://docs.google.com/presentation/d/1IjTqIUvWCJc71b5vEJYte-Dwujcp7rvG/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:["PPTX"," "]})]}),o.jsxs("li",{children:[" ","Supervised learning:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap2PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1VSxcU5y1qNFlmd3Lb3uOWyzILuOj1Dla",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1Br7R01ROtRWPlNhC_KOommeHAWMBpWtz/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Shallow neural networks:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap3PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=19kZFWlXhzN82Zx02ByMmSZOO4T41fmqI",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1e9M3jB5I9qZ4dCBY90Q3Hwft_i068QVQ/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Deep neural networks:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap4PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1ojr0ebsOhzvS04ItAflX2cVmYqHQHZUa",children:[" ","SVG"]}),"/",o.jsx(C,{href:"https://docs.google.com/presentation/d/1LTSsmY4mMrJbqXVvoTOCkQwHrRKoYnJj/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Loss functions:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap5PDF.zip",children:"PDF"})," ","/"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=17MJO7fiMpFZVqKeqXTbQ36AMpmR4GizZ",children:"SVG"})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1gcpC_3z9oRp87eMkoco-kdLD-MM54Puk/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Training models:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap6PDF.zip",children:"PDF"})," ","/"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1VPdhFRnCr9_idTrX0UdHKGAw2shUuwhK",children:"SVG"})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1AKoeggAFBl9yLC7X5tushAGzCCxmB7EY/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Gradients and initialization:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap7PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1TTl4gvrTvNbegnml4CoGoKOOd6O8-PGs",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/11zhB6PI-Dp6Ogmr4IcI6fbvbqNqLyYcz/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Measuring performance:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap8PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=19eQOnygd_l0DzgtJxXuYnWa4z7QKJrJx",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1SHRmJscDLUuQrG7tmysnScb3ZUAqVMZo/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Regularization:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap9PDF.zip",children:"PDF"})," ","/"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1LprgnUGL7xAM9-jlGZC9LhMPeefjY0r0",children:"SVG"})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1VwIfvjpdfTny6sEfu4ZETwCnw6m8Eg-5/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Convolutional networks:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap10PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1-Wb3VzaSvVeRzoUzJbI2JjZE0uwqupM9",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1MtfKBC4Y9hWwGqeP6DVwUNbi1j5ncQCg/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Residual networks:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap11PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1Mr58jzEVseUAfNYbGWCQyDtEDwvfHRi1",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1saY8Faz0KTKAAifUrbkQdLA2qkyEjOPI/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Transformers:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap12PDF.zip",children:"PDF"})," ","/"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1txzOVNf8-jH4UfJ6SLnrtOfPd1Q3ebzd",children:"SVG"})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1GVNvYWa0WJA6oKg89qZre-UZEhABfm0l/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Graph neural networks:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap13PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1lQIV6nRp6LVfaMgpGFhuwEXG-lTEaAwe",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1YwF3U82c1mQ74c1WqHVTzLZ0j7GgKaWP/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Unsupervised learning:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap14PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1aMbI6iCuUvOywqk5pBOmppJu1L1anqsM",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1A-lBGv3NHl4L32NvfFgy1EKeSwY-0UeB/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","GANs:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap15PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1EErnlZCOlXc3HK7m83T2Jh_0NzIUHvtL",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/10Ernk41ShOTf4IYkMD-l4dJfKATkXH4w/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Normalizing flows:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap16PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1SNtNIY7khlHQYMtaOH-FosSH3kWwL4b7",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1nLLzqb9pdfF_h6i1HUDSyp7kSMIkSUUA/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Variational autoencoders:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap17PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1B9bxtmdugwtg-b7Y4AdQKAIEVWxjx8l3",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1lQE4Bu7-LgvV2VlJOt_4dQT-kusYl7Vo/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Diffusion models:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap18PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1A-pIGl4PxjVMYOKAUG3aT4a8wD3G-q_r",children:[" ","SVG"]})," ","/",o.jsx(C,{href:"https://docs.google.com/presentation/d/1x_ufIBtVPzWUvRieKMkpw5SdRjXWwdfR/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Deep reinforcement learning:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap19PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1a5WUoF7jeSgwC_PVdckJi1Gny46fCqh0",children:[" ","SVG"]})," ","/"," ",o.jsxs(C,{href:"https://docs.google.com/presentation/d/1TnYmVbFNhmMFetbjyfXGmkxp1EHauMqr/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:["PPTX"," "]})]}),o.jsxs("li",{children:[" ","Why does deep learning work?:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap20PDF.zip",children:"PDF"})," ","/"," ",o.jsxs(C,{href:"https://drive.google.com/uc?export=download&id=1M2d0DHEgddAQoIedKSDTTt7m1ZdmBLQ3",children:[" ","SVG"]})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1coxF4IsrCzDTLrNjRagHvqB_FBy10miA/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Deep learning and ethics:"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap21PDF.zip",children:"PDF"})," ","/"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1jixmFfwmZkW_UVYzcxmDcMsdFFtnZ0bU",children:"SVG"})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1EtfzanZYILvi9_-Idm28zD94I_6OrN9R/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]}),o.jsxs("li",{children:[" ","Appendices -"," ",o.jsx(C,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLAppendixPDF.zip",children:"PDF"})," ","/"," ",o.jsx(C,{href:"https://drive.google.com/uc?export=download&id=1k2j7hMN40ISPSg9skFYWFL3oZT7r8v-l",children:"SVG"})," ","/"," ",o.jsx(C,{href:"https://docs.google.com/presentation/d/1_2cJHRnsoQQHst0rwZssv-XH4o5SEHks/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]})]})}),o.jsx(C,{href:"https://drive.google.com/file/d/1T_MXXVR4AfyMnlEFI-UVDh--FXI5deAp/view?usp=sharing",children:"Instructions"})," ","for editing equations in figures.",o.jsx(Cr,{})]})]})]})})})}const Tw="/udlbook/assets/media-BEE6k2_u.svg",Lw=j.div` color: #fff; /* background: #f9f9f9; */ background: ${({lightBg:e})=>e?"#f9f9f9":"#010606"}; @media screen and (max-width: 768px) { padding: 100px 0; } `,Iw=j.div` display: grid; z-index: 1; width: 100%; max-width: 1100px; margin-right: auto; margin-left: auto; padding: 0 24px; justify-content: center; `,Od=j.div` display: grid; grid-auto-columns: minmax(auto, 1fr); align-items: center; grid-template-areas: ${({imgStart:e})=>e?"'col2 col1'":"'col1 col2'"}; @media screen and (max-width: 768px) { grid-template-areas: ${({imgStart:e})=>e?"'col1' 'col2'":"'col1 col1' 'col2 col2'"}; } `,fs=j.div` margin-bottom: 15px; padding: 0 15px; grid-area: col1; `,ps=j.div` margin-bottom: 15px; padding: 0 15px; grid-area: col2; `,Ow=j.div` max-width: 540px; padding-top: 0; padding-bottom: 0; `,hs=j.p` color: #57c6d1; font-size: 16px; line-height: 16px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; margin-bottom: 16px; `,zw=j.h1` margin-bottom: 24px; font-size: 48px; line-height: 1.1; font-weight: 600; color: ${({lightText:e})=>e?"#f7f8fa":"#010606"}; @media screen and (max-width: 480px) { font-size: 32px; } `,Dw=j.p` max-width: 440px; margin-bottom: 35px; font-size: 18px; line-height: 24px; color: ${({darkText:e})=>e?"#010606":"#fff"}; `;j.div` display: flex; justify-content: flex-start; `;const Rw=j.div` max-width: 555px; height: 100%; `,Mw=j.img` width: 100%; margin-top: 0; margin-right: 0; margin-left: 10px; padding-right: 0; `;j.div` @media screen and (max-width: 768px) { font-size: 24px; } @media screen and (max-width: 480px) { font-size: 18px; } `;const zd=j.div` z-index: 3; width: 100%; max-width: 1100px; position: static; padding: 8px 0px; margin: 10px 0px; display: flex; flex-direction: column; align-items: left; list-style-position: inside; @media screen and (max-width: 768px) { font-size: 14px; } `,$w=j.div` display: grid; grid-auto-columns: minmax(auto, 1fr); align-items: top; grid-template-areas: ${({imgStart:e})=>e?"'col2 col1'":"'col1 col2'"}; @media screen and (max-width: 768px) { grid-template-areas: ${({imgStart:e})=>e?"'col1' 'col2'":"'col1 col1' 'col2 col2'"}; } `,Dd=j.div` width: 560px; height: 315px; @media screen and (max-width: 1050px) { width: 280px; height: 157px; } `,ut=j.a` text-decoration: none; color: #57c6d1; font-weight: 300; margin: 0 2px; position: relative; &:before { position: absolute; margin: 0 auto; top: 100%; left: 0; width: 100%; height: 2px; background-color: #57c6d1; content: ""; opacity: 0.3; -webkit-transform: scaleX(1); transition-property: opacity, -webkit-transform; transition-duration: 0.3s; } &:hover:before { opacity: 1; -webkit-transform: scaleX(1.05); } `;function Fw(){return o.jsx(o.Fragment,{children:o.jsx(Lw,{lightBg:!1,id:"Media",children:o.jsxs(Iw,{children:[o.jsxs(Od,{imgStart:!0,children:[o.jsx(fs,{children:o.jsxs(Ow,{children:[o.jsx(hs,{children:"Media"}),o.jsxs(zw,{lightText:!0,children:[" ","Reviews, videos, podcasts, interviews"]}),o.jsx(Dw,{darkText:!1,children:"Various resources connected to the book"})]})}),o.jsx(ps,{children:o.jsx(Rw,{children:o.jsx(Mw,{src:Tw,alt:"Car"})})})]}),o.jsxs(Od,{children:[o.jsxs(fs,{children:["Machine learning street talk podcast",o.jsx(Dd,{children:o.jsx("iframe",{width:"100%",height:"100%",src:"https://www.youtube.com/embed/sJXn4Cl4oww?si=Lm_hQPqj0RXy-75H&controls=0",title:"YouTube video player",frameBorder:"2",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowfullscreen:!0})})]}),o.jsxs(ps,{children:["Deeper insights podcast",o.jsx(Dd,{children:o.jsx("iframe",{width:"100%",height:"100%",src:"https://www.youtube.com/embed/nQf4o9TDSHI?si=uMk66zLD7uhuSnQ1&controls=0",title:"YouTube video player",frameBorder:"2",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowfullscreen:!0})})]})]}),o.jsxs($w,{children:[o.jsxs(fs,{children:[o.jsx(hs,{children:"Reviews"}),o.jsx(zd,{children:o.jsxs("ul",{children:[o.jsxs("li",{children:[" ","Nature Machine Intelligence"," ",o.jsxs(ut,{href:"https://github.com/udlbook/udlbook/blob/main/public/NMI_Review.pdf",children:[" ","review"," "]})," ","by"," ",o.jsx(ut,{href:"https://wang-axis.github.io/",children:"Ge Wang"})]}),o.jsxs("li",{children:[" ","Amazon"," ",o.jsx(ut,{href:"https://www.amazon.com/Understanding-Deep-Learning-Simon-Prince-ebook/product-reviews/B0BXKH8XY6/",children:"reviews"})]}),o.jsxs("li",{children:["Goodreads"," ",o.jsxs(ut,{href:"https://www.goodreads.com/book/show/123239819-understanding-deep-learning?",children:["reviews"," "]})]}),o.jsxs("li",{children:["Book"," ",o.jsx(ut,{href:"https://medium.com/@vishalvignesh/udl-book-review-the-new-deep-learning-textbook-youll-want-to-finish-69e1557b018d",children:"review"})," ","by Vishal V."]}),o.jsxs("li",{children:[" ","Amazon"," ",o.jsx(ut,{href:"https://www.amazon.com/Understanding-Deep-Learning-Simon-Prince-ebook/product-reviews/B0BXKH8XY6/",children:"reviews"})]}),o.jsxs("li",{children:["Goodreads"," ",o.jsxs(ut,{href:"https://www.goodreads.com/book/show/123239819-understanding-deep-learning?",children:["reviews"," "]})]}),o.jsxs("li",{children:["Book"," ",o.jsx(ut,{href:"https://medium.com/@vishalvignesh/udl-book-review-the-new-deep-learning-textbook-youll-want-to-finish-69e1557b018d",children:"review"})," ","by Vishal V."]})]})})]}),o.jsxs(ps,{children:[o.jsx(hs,{children:"Interviews"}),o.jsx(zd,{children:o.jsxs("ul",{children:[o.jsxs("li",{children:["Borealis AI"," ",o.jsx(ut,{href:"https://www.borealisai.com/news/understanding-deep-learning/",children:"interview"})]}),o.jsxs("li",{children:["Shepherd ML book"," ",o.jsx(ut,{href:"https://shepherd.com/best-books/machine-learning-and-deep-neural-networks",children:"recommendations"})]})]})})]})]})]})})})}const Aw="/udlbook/assets/more-CjTFu1S9.svg",Bw=j.div` color: #fff; /* background: #f9f9f9; */ background: ${({lightBg:e})=>e?"#57c6d1":"#010606"}; @media screen and (max-width: 768px) { padding: 100px 0; } `,Uw=j.div` display: grid; z-index: 1; /* height: 1050px; */ width: 100%; max-width: 1100px; margin-right: auto; margin-left: auto; padding: 0 24px; justify-content: center; `,Hw=j.div` display: grid; grid-auto-columns: minmax(auto, 1fr); align-items: center; grid-template-areas: ${({imgStart:e})=>e?"'col2 col1'":"'col1 col2'"}; @media screen and (max-width: 768px) { grid-template-areas: ${({imgStart:e})=>e?"'col1' 'col2'":"'col1 col1' 'col2 col2'"}; } `,Ww=j.div` display: grid; grid-auto-columns: minmax(auto, 1fr); align-items: top; grid-template-areas: ${({imgStart:e})=>e?"'col2 col1'":"'col1 col2'"}; @media screen and (max-width: 768px) { grid-template-areas: ${({imgStart:e})=>e?"'col1' 'col2'":"'col1 col1' 'col2 col2'"}; } `,Rd=j.div` margin-bottom: 15px; padding: 0 15px; grid-area: col1; `,Md=j.div` margin-bottom: 15px; padding: 0 15px; grid-area: col2; `,Vw=j.div` max-width: 540px; padding-top: 0; padding-bottom: 0; `,Ce=j.p` color: #773c23; font-size: 16px; line-height: 16px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; margin-bottom: 12px; margin-top: 16px; `,Gw=j.h1` margin-bottom: 24px; font-size: 48px; line-height: 1.1; font-weight: 600; color: ${({lightText:e})=>e?"#f7f8fa":"#010606"}; @media screen and (max-width: 480px) { font-size: 32px; } `,Qw=j.p` max-width: 440px; margin-bottom: 35px; font-size: 18px; line-height: 24px; color: ${({darkText:e})=>e?"#010606":"#fff"}; `;j.div` display: flex; justify-content: flex-start; `;const Xw=j.div` max-width: 555px; height: 100%; `,Yw=j.img` width: 100%; margin-top: 0; margin-right: 0; margin-left: 10px; padding-right: 0; `;j.div` z-index: 3; width: 100%; max-width: 1100px; position: static; padding: 8px 0px; margin: 10px 0px; display: flex; flex-direction: column; align-items: left; list-style-position: inside; `;const Re=j.ul` /* list-style:none; */ list-style-position: inside; margin: 0; @media screen and (max-width: 768px) { font-size: 14px; } `,z=j.ul` list-style-position: inside; @media screen and (max-width: 768px) { font-size: 12px; } `,D=j.p` padding-left: 18px; padding-bottom: 10px; padding-top: 3px; font-size: 14px; color: #fff; `,R=j.a` text-decoration: none; color: #555; font-weight: 300; margin: 0 2px; position: relative; &:before { position: absolute; margin: 0 auto; top: 100%; left: 0; width: 100%; height: 2px; background-color: #555; content: ""; opacity: 0.3; -webkit-transform: scaleX(1); transition-property: opacity, -webkit-transform; transition-duration: 0.3s; } &:hover:before { opacity: 1; -webkit-transform: scaleX(1.05); } `;function Kw(){return o.jsx(o.Fragment,{children:o.jsx(Bw,{lightBg:!0,id:"More",children:o.jsxs(Uw,{children:[o.jsxs(Hw,{imgStart:!1,children:[o.jsx(Rd,{children:o.jsxs(Vw,{children:[o.jsx(Ce,{children:"More"}),o.jsx(Gw,{lightText:!1,children:"Further reading"}),o.jsxs(Qw,{darkText:!0,children:["Other articles, blogs, and books that I have written. Most in a similar style and using the same notation as Understanding Deep Learning."," "]})]})}),o.jsx(Md,{children:o.jsx(Xw,{children:o.jsx(Yw,{src:Aw,alt:"Car"})})})]}),o.jsxs(Ww,{children:[o.jsxs(Rd,{children:[o.jsx(Ce,{children:"Book"}),o.jsx(Re,{children:o.jsxs("li",{children:[o.jsx(R,{href:"http://computervisionmodels.com",target:"_blank",rel:"noreferrer",children:"Computer vision: models, learning, and inference"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" 2012 book published with CUP "}),o.jsx("li",{children:" Focused on probabilistic models "}),o.jsx("li",{children:' Pre-"deep learning" '}),o.jsx("li",{children:" Lots of ML content "}),o.jsx("li",{children:" Individual chapters available below "})]})})]})}),o.jsx(Ce,{children:"Transformers & LLMs"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/research-blogs/a-high-level-overview-of-large-language-models/",target:"_blank",rel:"noreferrer",children:"Intro to LLMs"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" What is an LLM? "}),o.jsx("li",{children:" Pretraining "}),o.jsx("li",{children:" Instruction fine-tuning "}),o.jsx("li",{children:"Reinforcement learning from human feedback "}),o.jsx("li",{children:" Notable LLMs "}),o.jsx("li",{children:" LLMs without training from scratch "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-14-transformers-i-introduction/",target:"_blank",rel:"noreferrer",children:"Transformers I"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Dot-Product self-attention "}),o.jsx("li",{children:" Scaled dot-product self-attention "}),o.jsx("li",{children:" Position encoding"}),o.jsx("li",{children:" Multiple heads "}),o.jsx("li",{children:" Transformer block "}),o.jsx("li",{children:" Encoders "}),o.jsx("li",{children:" Decoders "}),o.jsx("li",{children:" Encoder-Decoders "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-16-transformers-ii-extensions/",target:"_blank",rel:"noreferrer",children:"Transformers II"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Sinusoidal position embeddings "}),o.jsx("li",{children:" Learned position embeddings "}),o.jsx("li",{children:" Relatives vs. absolute position embeddings"}),o.jsx("li",{children:" Extending transformers to longer sequences "}),o.jsx("li",{children:" Reducing attention matrix size "}),o.jsx("li",{children:" Making attention matrix sparse "}),o.jsx("li",{children:" Kernelizing attention computation "}),o.jsx("li",{children:" Attention as an RNN"}),o.jsx("li",{children:" Attention as a hypernetwork "}),o.jsx("li",{children:" Attention as a routing network "}),o.jsx("li",{children:" Attention and graphs "}),o.jsx("li",{children:" Attention and convolutions "}),o.jsx("li",{children:" Attention and gating "}),o.jsx("li",{children:" Attention and memory retrieval "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-17-transformers-iii-training/",target:"_blank",rel:"noreferrer",children:"Transformers III"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Tricks for training transformers "}),o.jsx("li",{children:" Why are these tricks required? "}),o.jsx("li",{children:" Removing layer normalization"}),o.jsx("li",{children:" Balancing residual dependencies "}),o.jsx("li",{children:" Reducing optimizer variance "}),o.jsxs("li",{children:[" ","How to train deeper transformers on small datasets"," "]})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/research-blogs/training-and-fine-tuning-large-language-models/",target:"_blank",rel:"noreferrer",children:"Training and fine-tuning LLMs"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Large language models "}),o.jsx("li",{children:" Pretraining "}),o.jsx("li",{children:" Supervised fine tuning"}),o.jsx("li",{children:" Reinforcement learning from human feedback "}),o.jsx("li",{children:" Direct preference optimization"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/research-blogs/speeding-up-inference-in-transformers/",target:"_blank",rel:"noreferrer",children:"Speeding up inference in LLMs"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Problems with transformers"}),o.jsx("li",{children:" Attention-free transformers "}),o.jsx("li",{children:" Complexity"}),o.jsx("li",{children:" RWKV "}),o.jsx("li",{children:" Linear transformers and performers"}),o.jsx("li",{children:" Retentive network"})]})})]})]}),o.jsx(Ce,{children:"Math for machine learning"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1j2v2n6STPnblOCZ1_GBcVAZrsYkjPYwR/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Linear algebra"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Vectors and matrices "}),o.jsx("li",{children:" Determinant and trace "}),o.jsx("li",{children:" Orthogonal matrices "}),o.jsx("li",{children:" Null space "}),o.jsx("li",{children:" Linear transformations "}),o.jsx("li",{children:" Singular value decomposition "}),o.jsx("li",{children:" Least squares problems "}),o.jsx("li",{children:" Principal direction problems "}),o.jsx("li",{children:" Inversion of block matrices"}),o.jsx("li",{children:" Schur complement identity"}),o.jsx("li",{children:" Sherman-Morrison-Woodbury"}),o.jsx("li",{children:" Matrix determinant lemma"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1cmxXneW122-hcfmMRjEE-n5C9T2YvuQX/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Introduction to probability"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Random variables "}),o.jsx("li",{children:" Joint probability "}),o.jsx("li",{children:" Marginal probability "}),o.jsx("li",{children:" Conditional probability "}),o.jsx("li",{children:" Bayes' rule "}),o.jsx("li",{children:" Independence "}),o.jsx("li",{children:" Expectation "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1GI3eZNB1CjTqYHLyuRhCV215rwqANVOx/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Probability distributions"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Bernouilli distribution "}),o.jsx("li",{children:" Beta distribution"}),o.jsx("li",{children:" Categorical distribution "}),o.jsx("li",{children:" Dirichlet distribution"}),o.jsx("li",{children:" Univariate normal distribution "}),o.jsx("li",{children:" Normal inverse-scaled gamma distribution "}),o.jsx("li",{children:" Multivariate normal distribution "}),o.jsx("li",{children:" Normal inverse Wishart distribution "}),o.jsx("li",{children:" Conjugacy "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1DZ4rCmC7AZ8PFc51PiMUIkBO-xqKT_CG/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Fitting probability distributions"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Maximum likelihood "}),o.jsx("li",{children:" Maximum a posteriori "}),o.jsx("li",{children:" Bayesian approach "}),o.jsx("li",{children:" Example: fitting normal "}),o.jsx("li",{children:" Example: fitting categorical "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1CTfmsN-HJWZBRj8lY0ZhgHEbPCmYXWnA/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"The normal distribution"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Types of covariance matrix "}),o.jsx("li",{children:" Decomposition of covariance "}),o.jsx("li",{children:" Linear transformations "}),o.jsx("li",{children:" Marginal distributions "}),o.jsx("li",{children:" Conditional distributions "}),o.jsx("li",{children:" Product of two normals "}),o.jsx("li",{children:" Change of variable formula "})]})})]})]}),o.jsx(Ce,{children:"Optimization"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1IoOSfJ0ku89aVyM9qygPl4MVnAhMEbAZ/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Gradient-based optimization"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Convexity "}),o.jsx("li",{children:" Steepest descent "}),o.jsx("li",{children:" Newton's method "}),o.jsx("li",{children:" Gauss-Newton method "}),o.jsx("li",{children:" Line search "}),o.jsx("li",{children:" Reparameterization "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-8-bayesian-optimization/",target:"_blank",rel:"noreferrer",children:"Bayesian optimization"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Gaussian processes "}),o.jsx("li",{children:" Acquisition functions "}),o.jsx("li",{children:" Incorporating noise"}),o.jsx("li",{children:" Kernel choice "}),o.jsx("li",{children:" Learning GP parameters "}),o.jsx("li",{children:" Tips, tricks, and limitations "}),o.jsx("li",{children:" Beta-Bernoulli bandit "}),o.jsx("li",{children:" Random forests for BO "}),o.jsx("li",{children:" Tree-Parzen estimators "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-9-sat-solvers-i-introduction-and-applications/",target:"_blank",rel:"noreferrer",children:"SAT Solvers I"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Boolean logic and satisfiability "}),o.jsx("li",{children:" Conjunctive normal form "}),o.jsx("li",{children:" The Tseitin transformation "}),o.jsx("li",{children:" SAT and related problems "}),o.jsx("li",{children:" SAT constructions "}),o.jsx("li",{children:" Graph coloring and scheduling "}),o.jsx("li",{children:" Fitting binary neural networks"}),o.jsx("li",{children:" Fitting decision trees"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-10-sat-solvers-ii-algorithms/",target:"_blank",rel:"noreferrer",children:"SAT Solvers II"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Conditioning "}),o.jsx("li",{children:" Resolution "}),o.jsx("li",{children:" Solving 2-SAT by unit propagation "}),o.jsx("li",{children:" Directional resolution "}),o.jsx("li",{children:" SAT as binary search "}),o.jsx("li",{children:" DPLL "}),o.jsx("li",{children:" Conflict driven clause learning"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-11-sat-solvers-iii-factor-graphs-and-smt-solvers/",target:"_blank",rel:"noreferrer",children:"SAT Solvers III"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Satisfiability vs. problem size "}),o.jsx("li",{children:" Factor graph representation "}),o.jsx("li",{children:" Max product / sum product for SAT "}),o.jsx("li",{children:" Survey propagation "}),o.jsx("li",{children:" SAT with non-binary variables "}),o.jsx("li",{children:" SMT solvers "})]})})]})]}),o.jsx(Ce,{children:"Temporal models"}),o.jsx(Re,{children:o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1rrzGNyZDjXQ3_9ZqCGDmRMM3GYtHSBvj/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Temporal models"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Kalman filter "}),o.jsx("li",{children:" Smoothing "}),o.jsx("li",{children:" Extended Kalman filter "}),o.jsx("li",{children:" Unscented Kalman filter "}),o.jsx("li",{children:" Particle filtering "})]})})]})}),o.jsx(Ce,{children:"Computer vision"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1r3V1GC5grhPF2pD91izuE0hTrTUEpQ9I/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Image Processing"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Whitening "}),o.jsx("li",{children:" Histogram equalization "}),o.jsx("li",{children:" Filtering "}),o.jsx("li",{children:" Edges and corners "}),o.jsx("li",{children:" Dimensionality reduction "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1dbMBE13MWcd84dEGjYeWsC6eXouoC0xn/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Pinhole camera"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Pinhole camera model "}),o.jsx("li",{children:" Radial distortion "}),o.jsx("li",{children:" Homogeneous coordinates "}),o.jsx("li",{children:" Learning extrinsic parameters "}),o.jsx("li",{children:" Learning intrinsic parameters "}),o.jsx("li",{children:" Inferring three-dimensional world points "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1UArrb1ovqvZHbv90MufkW372r__ZZACQ/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Geometric transformations"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsxs("li",{children:[" ","Euclidean, similarity, affine, projective transformations"," "]}),o.jsx("li",{children:" Fitting transformation models "}),o.jsx("li",{children:" Inference in transformation models "}),o.jsx("li",{children:" Three geometric problems for planes "}),o.jsx("li",{children:" Transformations between images "}),o.jsx("li",{children:" Robust learning of transformations "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1RqUoc7kvK8vqZF1NVuw7bIex9v4_QlSx/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Multiple cameras"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Two view geometry "}),o.jsx("li",{children:" The essential matrix "}),o.jsx("li",{children:" The fundamental matrix "}),o.jsx("li",{children:" Two-view reconstruction pipeline "}),o.jsx("li",{children:" Rectification "}),o.jsx("li",{children:" Multiview reconstruction "})]})})]})]}),o.jsx(Ce,{children:"Reinforcement learning"}),o.jsx(Re,{children:o.jsxs("li",{children:[o.jsx(R,{href:"https://arxiv.org/abs/2307.05979",target:"_blank",rel:"noreferrer",children:"Transformers in RL"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Challenges in RL"}),o.jsx("li",{children:" Advantages of transformers for RL"}),o.jsx("li",{children:" Representation learning"}),o.jsx("li",{children:" Transition function learning"}),o.jsx("li",{children:" Reward learning "}),o.jsx("li",{children:" Policy learning "}),o.jsx("li",{children:" Training strategy "}),o.jsx("li",{children:" Interpretability "}),o.jsx("li",{children:" Applications "})]})})]})})]}),o.jsxs(Md,{children:[o.jsx(Ce,{children:"AI Theory"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/research-blogs/gradient-flow/",target:"_blank",rel:"noreferrer",children:"Gradient flow"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Gradient flow "}),o.jsx("li",{children:" Evolution of residual "}),o.jsx("li",{children:" Evolution of parameters "}),o.jsx("li",{children:" Evolution of model predictions "}),o.jsx("li",{children:" Evolution of prediction covariance "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/research-blogs/the-neural-tangent-kernel/",target:"_blank",rel:"noreferrer",children:"Neural tangent kernel"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Infinite width neural networks "}),o.jsx("li",{children:" Training dynamics "}),o.jsx("li",{children:" Empirical NTK for shallow network"}),o.jsx("li",{children:" Analytical NTK for shallow network "}),o.jsx("li",{children:" Empirical NTK for deep network "}),o.jsx("li",{children:" Analtical NTK for deep network"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/research-blogs/neural-tangent-kernel-applications/",target:"_blank",rel:"noreferrer",children:"NTK applications"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Trainability "}),o.jsx("li",{children:" Convergence bounds "}),o.jsx("li",{children:" Evolution of parameters"}),o.jsx("li",{children:" Evolution of predictions "}),o.jsx("li",{children:" NTK Gaussian processes"}),o.jsx("li",{children:" NTK and generalizability"})]})})]})]}),o.jsx(Ce,{children:" Unsupervised learning"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1BrPHxAuyz28hhz_FtbO0A1cWYdMs2_h8/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Modeling complex data densities"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Hidden variables "}),o.jsx("li",{children:" Expectation maximization "}),o.jsx("li",{children:" Mixture of Gaussians "}),o.jsx("li",{children:" The t-distribution "}),o.jsx("li",{children:" Factor analysis "}),o.jsx("li",{children:" The EM algorithm in detail "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-5-variational-auto-encoders/",target:"_blank",rel:"noreferrer",children:"Variational autoencoders"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Non-linear latent variable models "}),o.jsx("li",{children:" Evidence lower bound (ELBO) "}),o.jsx("li",{children:" ELBO properties "}),o.jsx("li",{children:" Variational approximation "}),o.jsx("li",{children:" The variational autoencoder "}),o.jsx("li",{children:" Reparameterization trick "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://arxiv.org/abs/1908.09257",target:"_blank",rel:"noreferrer",children:"Normalizing flows: introduction and review"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Normalizing flows "}),o.jsx("li",{children:" Elementwise and linear flows "}),o.jsx("li",{children:" Planar and radial flows "}),o.jsx("li",{children:" Coupling and auto-regressive flows "}),o.jsx("li",{children:" Coupling functions "}),o.jsx("li",{children:" Residual flows "}),o.jsx("li",{children:" Infinitesimal (continuous) flows "}),o.jsx("li",{children:" Datasets and performance "})]})})]})]}),o.jsx(Ce,{children:"Graphical Models"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1ghgeRmeZMyzNHcuzVwS4vRP6BXi3npVO/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Graphical models"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Conditional independence "}),o.jsx("li",{children:" Directed graphical models "}),o.jsx("li",{children:" Undirected graphical models "}),o.jsx("li",{children:" Inference in graphical models "}),o.jsx("li",{children:" Sampling in graphical models "}),o.jsx("li",{children:" Learning in graphical models "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1WAMc3wtZoPv5wRkdF-D0SShVYF6Net84/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Models for chains and trees"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Hidden Markov models "}),o.jsx("li",{children:" Viterbi algorithm "}),o.jsx("li",{children:" Forward-backward algorithm "}),o.jsx("li",{children:" Belief propagation "}),o.jsx("li",{children:" Sum product algorithm "}),o.jsx("li",{children:" Extension to trees "}),o.jsx("li",{children:" Graphs with loops "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1qqS9OfA1z7t12M45UaBr4CSCj1jwzcwz/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Models for grids"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Markov random fields "}),o.jsx("li",{children:" MAP inference in binary pairwise MRFs "}),o.jsx("li",{children:" Graph cuts "}),o.jsx("li",{children:" Multi-label pairwise MRFs "}),o.jsx("li",{children:" Alpha-expansion algorithm "}),o.jsx("li",{children:" Conditional random fields "})]})})]})]}),o.jsx(Ce,{children:"Machine learning"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1ArWWi-qbzK2ih6KpOeIF8wX5g3S4J5DY/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Learning and inference"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Discriminative models "}),o.jsx("li",{children:" Generative models "}),o.jsx("li",{children:" Example: regression "}),o.jsx("li",{children:" Example: classification "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1QZX5jm4xN8rhpvdjRsFP5Ybw1EXSNGaL/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Regression models"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Linear regression "}),o.jsx("li",{children:" Bayesian linear regression "}),o.jsx("li",{children:" Non-linear regression "}),o.jsx("li",{children:" Bayesian non-linear regression "}),o.jsx("li",{children:" The kernel trick "}),o.jsx("li",{children:" Gaussian process regression "}),o.jsx("li",{children:" Sparse linear regression "}),o.jsx("li",{children:" Relevance vector regression "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://drive.google.com/file/d/1-_f4Yfm8iBWcaZ2Gyjw6O0eZiODipmSV/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Classification models"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Logistic regression "}),o.jsx("li",{children:" Bayesian logistic regression "}),o.jsx("li",{children:" Non-linear logistic regression "}),o.jsx("li",{children:" Gaussian process classification "}),o.jsx("li",{children:" Relevance vector classification "}),o.jsx("li",{children:" Incremental fitting: boosting and trees "}),o.jsx("li",{children:" Multi-class logistic regression "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-2-few-shot-learning-and-meta-learning-i/",target:"_blank",rel:"noreferrer",children:"Few-shot learning and meta-learning I"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Meta-learning framework "}),o.jsx("li",{children:" Approaches to meta-learning "}),o.jsx("li",{children:" Matching networks "}),o.jsx("li",{children:" Prototypical networks "}),o.jsx("li",{children:" Relation networks "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-3-few-shot-learning-and-meta-learning-ii/",target:"_blank",rel:"noreferrer",children:"Few-shot learning and meta-learning II"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" MAML & Reptile "}),o.jsx("li",{children:" LSTM based meta-learning "}),o.jsx("li",{children:" Reinforcement learning based approaches"}),o.jsx("li",{children:" Memory augmented neural networks "}),o.jsx("li",{children:" SNAIL "}),o.jsx("li",{children:" Generative models "}),o.jsx("li",{children:" Data augmentation approaches "})]})})]})]}),o.jsx(Ce,{children:"Natural language processing"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-6-neural-natural-language-generation-decoding-algorithms/",target:"_blank",rel:"noreferrer",children:"Neural natural language generation I"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Encoder-decoder architecture "}),o.jsx("li",{children:" Maximum-likelihood training "}),o.jsx("li",{children:" Greedy search "}),o.jsx("li",{children:" Beam search "}),o.jsx("li",{children:" Diverse beam search "}),o.jsx("li",{children:" Top-k sampling "}),o.jsx("li",{children:" Nucleus sampling "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-7-neural-natural-language-generation-sequence-level-training/",target:"_blank",rel:"noreferrer",children:"Neural natural language generation II"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Fine-tuning with reinforcement learning "}),o.jsx("li",{children:" Training from scratch with RL "}),o.jsx("li",{children:" RL vs. structured prediction "}),o.jsx("li",{children:" Minimum risk training "}),o.jsx("li",{children:" Scheduled sampling "}),o.jsx("li",{children:" Beam search optimization "}),o.jsx("li",{children:" SeaRNN "}),o.jsx("li",{children:" Reward-augmented maximum likelihood "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-15-parsing-i-context-free-grammars-and-cyk-algorithm/",target:"_blank",rel:"noreferrer",children:"Parsing I"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Parse trees "}),o.jsx("li",{children:" Context-free grammars "}),o.jsx("li",{children:" Chomsky normal form "}),o.jsx("li",{children:" CYK recognition algorithm "}),o.jsx("li",{children:" Worked example "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-18-parsing-ii-wcfgs-inside-algorithm-and-weighted-parsing/",target:"_blank",rel:"noreferrer",children:"Parsing II"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Weighted context-free grammars "}),o.jsx("li",{children:" Semirings "}),o.jsx("li",{children:" Inside algorithm "}),o.jsx("li",{children:" Inside weights "}),o.jsx("li",{children:" Weighted parsing "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-19-parsing-iii-pcfgs-and-inside-outside-algorithm/",target:"_blank",rel:"noreferrer",children:"Parsing III"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Probabilistic context-free grammars "}),o.jsx("li",{children:" Parameter estimation (supervised) "}),o.jsx("li",{children:" Parameter estimation (unsupervised) "}),o.jsx("li",{children:" Viterbi training "}),o.jsx("li",{children:" Expectation maximization "}),o.jsx("li",{children:" Outside from inside "}),o.jsx("li",{children:" Interpretation of outside weights "})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/understanding-xlnet/",target:"_blank",rel:"noreferrer",children:"XLNet"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Language modeling "}),o.jsx("li",{children:" XLNet training objective "}),o.jsx("li",{children:" Permutations "}),o.jsx("li",{children:" Attention mask "}),o.jsx("li",{children:" Two stream self-attention "})]})})]})]}),o.jsx(Ce,{children:"Responsible AI"}),o.jsxs(Re,{children:[o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial1-bias-and-fairness-ai/",target:"_blank",rel:"noreferrer",children:"Bias and fairness"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Sources of bias"}),o.jsx("li",{children:" Demographic Parity "}),o.jsx("li",{children:" Equality of odds"}),o.jsx("li",{children:" Equality of opportunity "}),o.jsx("li",{children:" Individual fairness"}),o.jsx("li",{children:" Bias mitigation"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/research-blogs/explainability-i-local-post-hoc-explanations/",target:"_blank",rel:"noreferrer",children:"Explainability I"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Taxonomy of XAI approaches"}),o.jsx("li",{children:" Local post-hoc explanations "}),o.jsx("li",{children:" Individual conditional explanation"}),o.jsx("li",{children:" Counterfactual explanations"}),o.jsx("li",{children:" LIME & Anchors"}),o.jsx("li",{children:" Shapley additive explanations & SHAP"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/research-blogs/explainability-ii-global-explanations-proxy-models-and-interpretable-models/",target:"_blank",rel:"noreferrer",children:"Explainability II"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Global feature importance"}),o.jsx("li",{children:" Partial dependence & ICE plots"}),o.jsx("li",{children:" Accumulated local effects"}),o.jsx("li",{children:" Aggregate SHAP values"}),o.jsx("li",{children:" Prototypes & criticisms"}),o.jsx("li",{children:" Surrogate / proxy models"}),o.jsx("li",{children:" Inherently interpretable models"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-12-differential-privacy-i-introduction/",target:"_blank",rel:"noreferrer",children:"Differential privacy I"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Early approaches to privacy "}),o.jsx("li",{children:" Fundamental law of information recovery "}),o.jsx("li",{children:" Differential privacy"}),o.jsx("li",{children:" Properties of differential privacy "}),o.jsx("li",{children:" The Laplace mechanism"}),o.jsx("li",{children:" Examples"}),o.jsx("li",{children:" Other mechanisms and definitions"})]})})]}),o.jsxs("li",{children:[o.jsx(R,{href:"https://www.borealisai.com/en/blog/tutorial-13-differential-privacy-ii-machine-learning-and-data-generation/",target:"_blank",rel:"noreferrer",children:"Differential privacy II"}),o.jsx(D,{children:o.jsxs(z,{children:[o.jsx("li",{children:" Differential privacy and matchine learning"}),o.jsx("li",{children:" DPSGD"}),o.jsx("li",{children:" PATE "}),o.jsx("li",{children:" Differentially private data generation"}),o.jsx("li",{children:" DPGAN"}),o.jsx("li",{children:" PateGAN "})]})})]})]})]})]})]})})})}const Zw=j.nav` background: ${({scrollNav:e})=>e?"#000":"transparent"}; height: 100px; margin-top: -100px; display: flex; justify-content: center; align-items: center; font-size: 1rem; position: sticky; top: 0; z-index: 10; @media screen and (max-width: 960px) { transition: 0.8s all ease; } `,qw=j.div` display: flex; justify-content: space-between; height: 100px; z-index: 1; width: 100%; padding: 0 24px; max-width: 1100px; `,Jw=j(mi)` color: #fff; justify-self: flex-start; cursor: pointer; font-size: 1.5rem; display: flex; align-items: center; margin-left: 24px; font-weight: bold; text-decoration: none; @media screen and (max-width: 768px) { font-size: 1rem; } `,ej=j.div` display: none; @media screen and (max-width: 768px) { display: block; position: absolute; top: 0; right: 0; transform: translate(-100%, 60%); font-size: 1.8rem; cursor: pointer; } `,tj=j.ul` display: flex; align-items: center; list-style: none; text-align: center; margin-right: -22px; @media screen and (max-width: 768px) { display: none; } `,qi=j.li` height: 80px; `;j.nav` display: flex; align-items: center; @media screen and (max-width: 768px) { display: none; } `;const Ji=j(Su)` color: #fff; display: flex; align-items: center; text-decoration: none; padding: 0 1rem; height: 100%; cursor: pointer; &.active { border-bottom: 3px solid #57c6d1; } `;j(mi)` border-radius: 50px; background: #01bf71; white-space: nowrap; padding: 10px 22px; color: #010606; font-size: 16px; outline: none; border: none; cursor: pointer; transition: all 0.2s ease-in-out; text-decoration: none; &:hover { transition: all 0.2s ease-in-out; background: #fff; color: #010606; } `;function nj({toggle:e}){const[t,n]=P.useState(!1);P.useEffect(()=>{const i=()=>{window.scrollY>=80?n(!0):n(!1)};return window.addEventListener("scroll",i),()=>{window.removeEventListener("scroll",i)}},[]);const r=()=>{Eu.scrollToTop()};return o.jsx(o.Fragment,{children:o.jsx(ca.Provider,{value:{color:"#fff"},children:o.jsx(Zw,{scrollNav:t,children:o.jsxs(qw,{children:[o.jsx(Jw,{to:"/udlbook/",onClick:r,children:o.jsx("h1",{children:" Understanding Deep Learning "})}),o.jsx(ej,{onClick:e,children:o.jsx(Uv,{})}),o.jsxs(tj,{children:[o.jsx(qi,{children:o.jsx(Ji,{to:"Notebooks",smooth:!0,duration:500,spy:!0,exact:"true",offset:-80,activeClass:"active",children:"Notebooks"})}),o.jsx(qi,{children:o.jsx(Ji,{to:"Instructors",smooth:!0,duration:500,spy:!0,exact:"true",offset:-80,activeClass:"active",children:"Instructors"})}),o.jsx(qi,{children:o.jsx(Ji,{to:"Media",smooth:!0,duration:500,spy:!0,exact:"true",offset:-80,activeClass:"active",children:"Media"})}),o.jsx(qi,{children:o.jsx(Ji,{to:"More",smooth:!0,duration:500,spy:!0,exact:"true",offset:-80,activeClass:"active",children:"More"})})]})]})})})})}const rj="/udlbook/assets/coding-DMb7YNWh.svg",ij=j.div` color: #fff; /* background: #f9f9f9; */ background: ${({lightBg:e})=>e?"#f9f9f9":"#010606"}; @media screen and (max-width: 768px) { padding: 100px 0; } `,oj=j.div` display: grid; z-index: 1; /* height: 1250px; */ width: 100%; max-width: 1100px; margin-right: auto; margin-left: auto; padding: 0 24px; justify-content: center; `,$d=j.div` display: grid; grid-auto-columns: minmax(auto, 1fr); align-items: center; grid-template-areas: ${({imgStart:e})=>e?"'col2 col1'":"'col1 col2'"}; @media screen and (max-width: 768px){ grid-template-areas: ${({imgStart:e})=>e?"'col1' 'col2'":"'col1 col1' 'col2 col2'"}; } `,Fd=j.p` margin-bottom: 15px; padding: 0 15px; grid-area: col1; @media screen and (max-width: 1050px) { font-size: 12px; } @media screen and (max-width: 768px) { font-size: 10px; } `,Ad=j.p` margin-bottom: 15px; padding: 0 15px; grid-area: col2; @media screen and (max-width: 1050px) { font-size: 12px; } @media screen and (max-width: 768px) { font-size: 10px; } `,lj=j.div` max-width: 540px; padding-top: 0; padding-bottom: 0; `,sj=j.p` color: #57c6d1; font-size: 16px; line-height: 16px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; margin-bottom: 16px; `,aj=j.h1` margin-bottom: 24px; font-size: 48px; line-height: 1.1; font-weight: 600; color: ${({lightText:e})=>e?"#f7f8fa":"#010606"}; @media screen and (max-width: 480px) { font-size: 32px; } `,uj=j.p` max-width: 440px; margin-bottom: 35px; font-size: 18px; line-height: 24px; color: ${({darkText:e})=>e?"#010606":"#fff"}; `;j.div` display: flex; justify-content: flex-start; `;const cj=j.div` max-width: 555px; height: 100%; `,dj=j.img` width: 100%; margin-top: 0; margin-right: 0; margin-left: 10px; padding-right: 0; `,N=j.a` text-decoration: none; color: #57c6d1;; font-weight: 300; margin: 0 2px; position: relative; &:before{ position: absolute; margin: 0 auto; top: 100%; left: 0; width: 100%; height: 2px; background-color: #57c6d1;; content: ''; opacity: .3; -webkit-transform: scaleX(1); transition-property: opacity, -webkit-transform; transition-duration: .3s; } &:hover:before { opacity: 1; -webkit-transform: scaleX(1.05); } `;function fj(){return o.jsx(o.Fragment,{children:o.jsx(ij,{lightBg:!1,id:"Notebooks",children:o.jsxs(oj,{children:[o.jsxs($d,{imgStart:!0,children:[o.jsx(Fd,{children:o.jsxs(lj,{children:[o.jsx(sj,{children:"Coding exercises"}),o.jsx(aj,{lightText:!0,children:"Python notebooks covering the whole text"}),o.jsx(uj,{darkText:!1,children:"Sixty eight python notebook exercises with missing code to fill in based on the text"})]})}),o.jsx(Ad,{children:o.jsx(cj,{children:o.jsx(dj,{src:rj,alt:"Car"})})})]}),o.jsxs($d,{children:[o.jsx(Fd,{children:o.jsxs("ul",{children:[o.jsxs("li",{children:[" Notebook 1.1 - Background mathematics: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap01/1_1_BackgroundMathematics.ipynb",children:"ipynb/colab"})]}),o.jsxs("li",{children:[" Notebook 2.1 - Supervised learning: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap02/2_1_Supervised_Learning.ipynb",children:"ipynb/colab"})]}),o.jsxs("li",{children:[" Notebook 3.1 - Shallow networks I: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap03/3_1_Shallow_Networks_I.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 3.2 - Shallow networks II: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap03/3_2_Shallow_Networks_II.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 3.3 - Shallow network regions: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap03/3_3_Shallow_Network_Regions.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 3.4 - Activation functions: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap03/3_4_Activation_Functions.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 4.1 - Composing networks: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap04/4_1_Composing_Networks.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 4.2 - Clipping functions: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap04/4_2_Clipping_functions.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 4.3 - Deep networks: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap04/4_3_Deep_Networks.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 5.1 - Least squares loss: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap05/5_1_Least_Squares_Loss.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 5.2 - Binary cross-entropy loss: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap05/5_2_Binary_Cross_Entropy_Loss.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 5.3 - Multiclass cross-entropy loss: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap05/5_3_Multiclass_Cross_entropy_Loss.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 6.1 - Line search: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap06/6_1_Line_Search.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 6.2 - Gradient descent: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap06/6_2_Gradient_Descent.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 6.3 - Stochastic gradient descent: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap06/6_3_Stochastic_Gradient_Descent.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 6.4 - Momentum: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap06/6_4_Momentum.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 6.5 - Adam: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap06/6_5_Adam.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 7.1 - Backpropagation in toy model: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap07/7_1_Backpropagation_in_Toy_Model.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 7.2 - Backpropagation: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap07/7_2_Backpropagation.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 7.3 - Initialization: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap07/7_3_Initialization.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 8.1 - MNIST-1D performance: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap08/8_1_MNIST_1D_Performance.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 8.2 - Bias-variance trade-off: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap08/8_2_Bias_Variance_Trade_Off.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 8.3 - Double descent: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap08/8_3_Double_Descent.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 8.4 - High-dimensional spaces: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap08/8_4_High_Dimensional_Spaces.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 9.1 - L2 regularization: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap09/9_1_L2_Regularization.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 9.2 - Implicit regularization: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap09/9_2_Implicit_Regularization.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 9.3 - Ensembling: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap09/9_3_Ensembling.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 9.4 - Bayesian approach: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap09/9_4_Bayesian_Approach.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 9.5 - Augmentation ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap09/9_5_Augmentation.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 10.1 - 1D convolution: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap10/10_1_1D_Convolution.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 10.2 - Convolution for MNIST-1D: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap10/10_2_Convolution_for_MNIST_1D.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 10.3 - 2D convolution: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap10/10_3_2D_Convolution.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 10.4 - Downsampling & upsampling: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap10/10_4_Downsampling_and_Upsampling.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 10.5 - Convolution for MNIST: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap10/10_5_Convolution_For_MNIST.ipynb",children:"ipynb/colab "})]})]})}),o.jsx(Ad,{children:o.jsxs("ul",{children:[o.jsxs("li",{children:[" Notebook 11.1 - Shattered gradients: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap11/11_1_Shattered_Gradients.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 11.2 - Residual networks: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap11/11_2_Residual_Networks.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 11.3 - Batch normalization: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap11/11_3_Batch_Normalization.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 12.1 - Self-attention: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap12/12_1_Self_Attention.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 12.2 - Multi-head self-attention: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap12/12_2_Multihead_Self_Attention.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 12.3 - Tokenization: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap12/12_3_Tokenization.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 12.4 - Decoding strategies: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap12/12_4_Decoding_Strategies.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 13.1 - Encoding graphs: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap13/13_1_Graph_Representation.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 13.2 - Graph classification : ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap13/13_2_Graph_Classification.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 13.3 - Neighborhood sampling: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap13/13_3_Neighborhood_Sampling.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 13.4 - Graph attention: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap13/13_4_Graph_Attention_Networks.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 15.1 - GAN toy example: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap15/15_1_GAN_Toy_Example.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 15.2 - Wasserstein distance: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap15/15_2_Wasserstein_Distance.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 16.1 - 1D normalizing flows: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap16/16_1_1D_Normalizing_Flows.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 16.2 - Autoregressive flows: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap16/16_2_Autoregressive_Flows.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 16.3 - Contraction mappings: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap16/16_3_Contraction_Mappings.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 17.1 - Latent variable models: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap17/17_1_Latent_Variable_Models.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 17.2 - Reparameterization trick: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap17/17_2_Reparameterization_Trick.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 17.3 - Importance sampling: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap17/17_3_Importance_Sampling.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 18.1 - Diffusion encoder: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap18/18_1_Diffusion_Encoder.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 18.2 - 1D diffusion model: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap18/18_2_1D_Diffusion_Model.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 18.3 - Reparameterized model: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap18/18_3_Reparameterized_Model.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 18.4 - Families of diffusion models: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap18/18_4_Families_of_Diffusion_Models.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 19.1 - Markov decision processes: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap19/19_1_Markov_Decision_Processes.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 19.2 - Dynamic programming: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap19/19_2_Dynamic_Programming.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 19.3 - Monte-Carlo methods: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap19/19_3_Monte_Carlo_Methods.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 19.4 - Temporal difference methods: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap19/19_4_Temporal_Difference_Methods.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 19.5 - Control variates: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap19/19_5_Control_Variates.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 20.1 - Random data: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap20/20_1_Random_Data.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 20.2 - Full-batch gradient descent: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap20/20_2_Full_Batch_Gradient_Descent.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 20.3 - Lottery tickets: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap20/20_3_Lottery_Tickets.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 20.4 - Adversarial attacks: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap20/20_4_Adversarial_Attacks.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 21.1 - Bias mitigation: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap21/21_1_Bias_Mitigation.ipynb",children:"ipynb/colab "})]}),o.jsxs("li",{children:[" Notebook 21.2 - Explainability: ",o.jsx(N,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap21/21_2_Explainability.ipynb",children:"ipynb/colab "})]})]})})]})]})})})}const pj=j.aside` position: fixed; z-index: 999; width: 100%; height: 100%; background: #0d0d0d; display: grid; align-items: center; top: 0; left: 0; transition: 0.3s ease-in-out; opacity: ${({isOpen:e})=>e?"100%":"0"}; top: ${({isOpen:e})=>e?"0":"-100%"}; `,hj=j(Hv)` color: #fff; &:hover { color: #01bf71; transition: 0.2s ease-in-out; } `,mj=j.div` position: absolute; top: 1.2rem; right: 1.5rem; background: transparent; font-size: 2rem; cursor: pointer; outline: none; `,gj=j.div` color: #ffffff; `,vj=j.ul` display: grid; grid-template-columns: 1fr; grid-template-rows: repeat(6, 80px); text-align: center; @media screen and (max-width: 480px) { grid-template-rows: repeat(6, 60px); } `,eo=j(Su)` display: flex; align-items: center; justify-content: center; font-size: 1.5rem; text-decoration: none; list-style: none; transition: 0.2s ease-in-out; text-decoration: none; color: #fff; cursor: pointer; &:hover { color: #01bf71; transition: 0.2s ease-in-out; } `;j.div` display: flex; justify-content: center; `;j(mi)` border-radius: 50px; background: #01bf71; white-space: nowrap; padding: 16px 46px; color: #010606; font-size: 16px; outline: none; border: none; cursor: pointer; transition: all 0.2s ease-in-out; text-decoration: none; &:hover { transition: all 0.2s ease-in-out; background: #fff; color: #010606; } `;function xj({isOpen:e,toggle:t}){return o.jsx(o.Fragment,{children:o.jsxs(pj,{isOpen:e,onClick:t,children:[o.jsx(mj,{onClick:t,children:o.jsx(hj,{})}),o.jsx(gj,{children:o.jsxs(vj,{children:[o.jsx(eo,{to:"Notebooks",onClick:t,children:"Notebooks"}),o.jsx(eo,{to:"Instructors",onClick:t,children:"Instructors"}),o.jsx(eo,{to:"Media",onClick:t,children:"Media"}),o.jsx(eo,{to:"More",onClick:t,children:"More"})]})})]})})}function yj(){const[e,t]=P.useState(!1),n=()=>{t(!e)};return o.jsxs(o.Fragment,{children:[o.jsx(xj,{isOpen:e,toggle:n}),o.jsx(nj,{toggle:n}),o.jsx(xw,{}),o.jsx(fj,{}),o.jsx(Nw,{}),o.jsx(Fw,{}),o.jsx(Kw,{}),o.jsx(rw,{})]})}function wj(){return o.jsx(Tv,{children:o.jsx(bv,{children:o.jsx(ph,{exact:!0,path:"/udlbook/",element:o.jsx(yj,{})})})})}z1.createRoot(document.getElementById("root")).render(o.jsx(Le.StrictMode,{children:o.jsx(wj,{})}));