diff --git a/dist/NMI_Review.pdf b/dist/NMI_Review.pdf deleted file mode 100644 index 8bde248..0000000 Binary files a/dist/NMI_Review.pdf and /dev/null differ diff --git a/dist/assets/F23.prince.learning.turquoise-B3FyEkB6.jpg b/dist/assets/F23.prince.learning.turquoise-B3FyEkB6.jpg deleted file mode 100644 index 7f9a4a8..0000000 Binary files a/dist/assets/F23.prince.learning.turquoise-B3FyEkB6.jpg and /dev/null differ diff --git a/dist/assets/coding-DMb7YNWh.svg b/dist/assets/coding-DMb7YNWh.svg deleted file mode 100644 index a81819b..0000000 --- a/dist/assets/coding-DMb7YNWh.svg +++ /dev/null @@ -1,1495 +0,0 @@ - - - - diff --git a/dist/assets/index-D6_BvvPY.js b/dist/assets/index-D6_BvvPY.js deleted file mode 100644 index e43a593..0000000 --- a/dist/assets/index-D6_BvvPY.js +++ /dev/null @@ -1,1131 +0,0 @@ -function om(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 Pi=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Pa(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Yd={exports:{}},Yo={},Kd={exports:{}},X={};/** - * @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 di=Symbol.for("react.element"),lm=Symbol.for("react.portal"),sm=Symbol.for("react.fragment"),am=Symbol.for("react.strict_mode"),um=Symbol.for("react.profiler"),cm=Symbol.for("react.provider"),dm=Symbol.for("react.context"),fm=Symbol.for("react.forward_ref"),pm=Symbol.for("react.suspense"),hm=Symbol.for("react.memo"),mm=Symbol.for("react.lazy"),Wu=Symbol.iterator;function gm(e){return e===null||typeof e!="object"?null:(e=Wu&&e[Wu]||e["@@iterator"],typeof e=="function"?e:null)}var Zd={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},qd=Object.assign,Jd={};function hr(e,t,n){this.props=e,this.context=t,this.refs=Jd,this.updater=n||Zd}hr.prototype.isReactComponent={};hr.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")};hr.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function ef(){}ef.prototype=hr.prototype;function Ea(e,t,n){this.props=e,this.context=t,this.refs=Jd,this.updater=n||Zd}var Ta=Ea.prototype=new ef;Ta.constructor=Ea;qd(Ta,hr.prototype);Ta.isPureReactComponent=!0;var Vu=Array.isArray,tf=Object.prototype.hasOwnProperty,Na={current:null},nf={key:!0,ref:!0,__self:!0,__source:!0};function rf(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)tf.call(t,r)&&!nf.hasOwnProperty(r)&&(i[r]=t[r]);var a=arguments.length-2;if(a===1)i.children=n;else if(1>>1,L=E[ie];if(0>>1;iei(W,H))vi(Y,W)?(E[ie]=Y,E[v]=H,ie=v):(E[ie]=W,E[M]=H,ie=M);else if(vi(Y,H))E[ie]=Y,E[v]=H,ie=v;else break e}}return U}function i(E,U){var H=E.sortIndex-U.sortIndex;return H!==0?H:E.id-U.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=[],p=1,h=null,g=3,k=!1,y=!1,w=!1,b=typeof setTimeout=="function"?setTimeout:null,f=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(E){for(var U=n(c);U!==null;){if(U.callback===null)r(c);else if(U.startTime<=E)r(c),U.sortIndex=U.expirationTime,t(u,U);else break;U=n(c)}}function x(E){if(w=!1,m(E),!y)if(n(u)!==null)y=!0,zt(S);else{var U=n(c);U!==null&&He(x,U.startTime-E)}}function S(E,U){y=!1,w&&(w=!1,f(z),z=-1),k=!0;var H=g;try{for(m(U),h=n(u);h!==null&&(!(h.expirationTime>U)||E&&!ye());){var ie=h.callback;if(typeof ie=="function"){h.callback=null,g=h.priorityLevel;var L=ie(h.expirationTime<=U);U=e.unstable_now(),typeof L=="function"?h.callback=L:h===n(u)&&r(u),m(U)}else r(u);h=n(u)}if(h!==null)var I=!0;else{var M=n(c);M!==null&&He(x,M.startTime-U),I=!1}return I}finally{h=null,g=H,k=!1}}var C=!1,T=null,z=-1,Q=5,$=-1;function ye(){return!(e.unstable_now()-$E||125ie?(E.sortIndex=H,t(c,E),n(u)===null&&E===n(c)&&(w?(f(z),z=-1):w=!0,He(x,H-ie))):(E.sortIndex=L,t(u,E),y||k||(y=!0,zt(S))),E},e.unstable_shouldYield=ye,e.unstable_wrapCallback=function(E){var U=g;return function(){var H=g;g=U;try{return E.apply(this,arguments)}finally{g=H}}}})(uf);af.exports=uf;var Em=af.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 Tm=O,lt=Em;function _(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"),_s=Object.prototype.hasOwnProperty,Nm=/^[: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]*$/,Qu={},Xu={};function Om(e){return _s.call(Xu,e)?!0:_s.call(Qu,e)?!1:Nm.test(e)?Xu[e]=!0:(Qu[e]=!0,!1)}function Lm(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 zm(e,t,n,r){if(t===null||typeof t>"u"||Lm(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 Qe(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 Me={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Me[e]=new Qe(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Me[t]=new Qe(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Me[e]=new Qe(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Me[e]=new Qe(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){Me[e]=new Qe(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Me[e]=new Qe(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Me[e]=new Qe(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Me[e]=new Qe(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Me[e]=new Qe(e,5,!1,e.toLowerCase(),null,!1,!1)});var La=/[\-:]([a-z])/g;function za(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(La,za);Me[t]=new Qe(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(La,za);Me[t]=new Qe(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(La,za);Me[t]=new Qe(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Me[e]=new Qe(e,1,!1,e.toLowerCase(),null,!1,!1)});Me.xlinkHref=new Qe("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Me[e]=new Qe(e,1,!1,e.toLowerCase(),null,!0,!0)});function Ia(e,t,n,r){var i=Me.hasOwnProperty(t)?Me[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{Wl=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Or(e):""}function Im(e){switch(e.tag){case 5:return Or(e.type);case 16:return Or("Lazy");case 13:return Or("Suspense");case 19:return Or("SuspenseList");case 0:case 2:case 15:return e=Vl(e.type,!1),e;case 11:return e=Vl(e.type.render,!1),e;case 1:return e=Vl(e.type,!0),e;default:return""}}function Ts(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 Bn:return"Fragment";case An:return"Portal";case Cs:return"Profiler";case Ra:return"StrictMode";case Ps:return"Suspense";case Es:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case ff:return(e.displayName||"Context")+".Consumer";case df:return(e._context.displayName||"Context")+".Provider";case Ma:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Da:return t=e.displayName||null,t!==null?t:Ts(e.type)||"Memo";case Jt:t=e._payload,e=e._init;try{return Ts(e(t))}catch{}}return null}function Rm(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 Ts(t);case 8:return t===Ra?"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 vn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function hf(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Mm(e){var t=hf(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 Ni(e){e._valueTracker||(e._valueTracker=Mm(e))}function mf(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=hf(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function xo(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 Ns(e,t){var n=t.checked;return he({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Ku(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=vn(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 gf(e,t){t=t.checked,t!=null&&Ia(e,"checked",t,!1)}function Os(e,t){gf(e,t);var n=vn(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")?Ls(e,t.type,n):t.hasOwnProperty("defaultValue")&&Ls(e,t.type,vn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Zu(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 Ls(e,t,n){(t!=="number"||xo(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Lr=Array.isArray;function Jn(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=Oi.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Gr(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Rr={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},Dm=["Webkit","ms","Moz","O"];Object.keys(Rr).forEach(function(e){Dm.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Rr[t]=Rr[e]})});function wf(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Rr.hasOwnProperty(e)&&Rr[e]?(""+t).trim():t+"px"}function kf(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=wf(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var $m=he({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 Rs(e,t){if(t){if($m[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(_(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(_(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(_(61))}if(t.style!=null&&typeof t.style!="object")throw Error(_(62))}}function Ms(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 Ds=null;function $a(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var $s=null,er=null,tr=null;function ec(e){if(e=hi(e)){if(typeof $s!="function")throw Error(_(280));var t=e.stateNode;t&&(t=el(t),$s(e.stateNode,e.type,t))}}function jf(e){er?tr?tr.push(e):tr=[e]:er=e}function bf(){if(er){var e=er,t=tr;if(tr=er=null,ec(e),t)for(e=0;e>>=0,e===0?32:31-(Ym(e)/Km|0)|0}var Li=64,zi=4194304;function zr(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 jo(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=zr(a):(l&=s,l!==0&&(r=zr(l)))}else s=n&~i,s!==0?r=zr(s):l!==0&&(r=zr(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 fi(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-bt(t),e[t]=n}function eg(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),uc=" ",cc=!1;function Hf(e,t){switch(e){case"keyup":return Eg.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Wf(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Un=!1;function Ng(e,t){switch(e){case"compositionend":return Wf(t);case"keypress":return t.which!==32?null:(cc=!0,uc);case"textInput":return e=t.data,e===uc&&cc?null:e;default:return null}}function Og(e,t){if(Un)return e==="compositionend"||!Ga&&Hf(e,t)?(e=Bf(),lo=Ha=rn=null,Un=!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=hc(n)}}function Xf(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Xf(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Yf(){for(var e=window,t=xo();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=xo(e.document)}return t}function Qa(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 Ag(e){var t=Yf(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Xf(n.ownerDocument.documentElement,n)){if(r!==null&&Qa(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=mc(n,l);var s=mc(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,Hn=null,Ws=null,Fr=null,Vs=!1;function gc(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Vs||Hn==null||Hn!==xo(r)||(r=Hn,"selectionStart"in r&&Qa(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}),Fr&&qr(Fr,r)||(Fr=r,r=_o(Ws,"onSelect"),0Gn||(e.current=Zs[Gn],Zs[Gn]=null,Gn--)}function oe(e,t){Gn++,Zs[Gn]=e.current,e.current=t}var xn={},Ue=wn(xn),Je=wn(!1),Nn=xn;function lr(e,t){var n=e.type.contextTypes;if(!n)return xn;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 et(e){return e=e.childContextTypes,e!=null}function Po(){se(Je),se(Ue)}function bc(e,t,n){if(Ue.current!==xn)throw Error(_(168));oe(Ue,t),oe(Je,n)}function ip(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(_(108,Rm(e)||"Unknown",i));return he({},n,r)}function Eo(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||xn,Nn=Ue.current,oe(Ue,e),oe(Je,Je.current),!0}function Sc(e,t,n){var r=e.stateNode;if(!r)throw Error(_(169));n?(e=ip(e,t,Nn),r.__reactInternalMemoizedMergedChildContext=e,se(Je),se(Ue),oe(Ue,e)):se(Je),oe(Je,n)}var Rt=null,tl=!1,os=!1;function op(e){Rt===null?Rt=[e]:Rt.push(e)}function qg(e){tl=!0,op(e)}function kn(){if(!os&&Rt!==null){os=!0;var e=0,t=te;try{var n=Rt;for(te=1;e>=s,i-=s,Mt=1<<32-bt(t)+i|n<z?(Q=T,T=null):Q=T.sibling;var $=g(f,T,m[z],x);if($===null){T===null&&(T=Q);break}e&&T&&$.alternate===null&&t(f,T),d=l($,d,z),C===null?S=$:C.sibling=$,C=$,T=Q}if(z===m.length)return n(f,T),ue&&bn(f,z),S;if(T===null){for(;zz?(Q=T,T=null):Q=T.sibling;var ye=g(f,T,$.value,x);if(ye===null){T===null&&(T=Q);break}e&&T&&ye.alternate===null&&t(f,T),d=l(ye,d,z),C===null?S=ye:C.sibling=ye,C=ye,T=Q}if($.done)return n(f,T),ue&&bn(f,z),S;if(T===null){for(;!$.done;z++,$=m.next())$=h(f,$.value,x),$!==null&&(d=l($,d,z),C===null?S=$:C.sibling=$,C=$);return ue&&bn(f,z),S}for(T=r(f,T);!$.done;z++,$=m.next())$=k(T,f,z,$.value,x),$!==null&&(e&&$.alternate!==null&&T.delete($.key===null?z:$.key),d=l($,d,z),C===null?S=$:C.sibling=$,C=$);return e&&T.forEach(function(me){return t(f,me)}),ue&&bn(f,z),S}function b(f,d,m,x){if(typeof m=="object"&&m!==null&&m.type===Bn&&m.key===null&&(m=m.props.children),typeof m=="object"&&m!==null){switch(m.$$typeof){case Ti:e:{for(var S=m.key,C=d;C!==null;){if(C.key===S){if(S=m.type,S===Bn){if(C.tag===7){n(f,C.sibling),d=i(C,m.props.children),d.return=f,f=d;break e}}else if(C.elementType===S||typeof S=="object"&&S!==null&&S.$$typeof===Jt&&Pc(S)===C.type){n(f,C.sibling),d=i(C,m.props),d.ref=Cr(f,C,m),d.return=f,f=d;break e}n(f,C);break}else t(f,C);C=C.sibling}m.type===Bn?(d=Tn(m.props.children,f.mode,x,m.key),d.return=f,f=d):(x=mo(m.type,m.key,m.props,null,f.mode,x),x.ref=Cr(f,d,m),x.return=f,f=x)}return s(f);case An:e:{for(C=m.key;d!==null;){if(d.key===C)if(d.tag===4&&d.stateNode.containerInfo===m.containerInfo&&d.stateNode.implementation===m.implementation){n(f,d.sibling),d=i(d,m.children||[]),d.return=f,f=d;break e}else{n(f,d);break}else t(f,d);d=d.sibling}d=ps(m,f.mode,x),d.return=f,f=d}return s(f);case Jt:return C=m._init,b(f,d,C(m._payload),x)}if(Lr(m))return y(f,d,m,x);if(kr(m))return w(f,d,m,x);Ai(f,m)}return typeof m=="string"&&m!==""||typeof m=="number"?(m=""+m,d!==null&&d.tag===6?(n(f,d.sibling),d=i(d,m),d.return=f,f=d):(n(f,d),d=fs(m,f.mode,x),d.return=f,f=d),s(f)):n(f,d)}return b}var ar=up(!0),cp=up(!1),Oo=wn(null),Lo=null,Yn=null,Za=null;function qa(){Za=Yn=Lo=null}function Ja(e){var t=Oo.current;se(Oo),e._currentValue=t}function ea(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 rr(e,t){Lo=e,Za=Yn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Ze=!0),e.firstContext=null)}function mt(e){var t=e._currentValue;if(Za!==e)if(e={context:e,memoizedValue:t,next:null},Yn===null){if(Lo===null)throw Error(_(308));Yn=e,Lo.dependencies={lanes:0,firstContext:e}}else Yn=Yn.next=e;return t}var Cn=null;function eu(e){Cn===null?Cn=[e]:Cn.push(e)}function dp(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,eu(t)):(n.next=i.next,i.next=n),t.interleaved=n,Ut(e,r)}function Ut(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 en=!1;function tu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function fp(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 Ft(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function dn(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,K&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,Ut(e,n)}return i=r.interleaved,i===null?(t.next=t,eu(r)):(t.next=i.next,i.next=t),r.interleaved=t,Ut(e,n)}function ao(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,Aa(e,n)}}function Ec(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 zo(e,t,n,r){var i=e.updateQueue;en=!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 p=e.alternate;p!==null&&(p=p.updateQueue,a=p.lastBaseUpdate,a!==s&&(a===null?p.firstBaseUpdate=c:a.next=c,p.lastBaseUpdate=u))}if(l!==null){var h=i.baseState;s=0,p=c=u=null,a=l;do{var g=a.lane,k=a.eventTime;if((r&g)===g){p!==null&&(p=p.next={eventTime:k,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var y=e,w=a;switch(g=t,k=n,w.tag){case 1:if(y=w.payload,typeof y=="function"){h=y.call(k,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(k,h,g):y,g==null)break e;h=he({},h,g);break e;case 2:en=!0}}a.callback!==null&&a.lane!==0&&(e.flags|=64,g=i.effects,g===null?i.effects=[a]:g.push(a))}else k={eventTime:k,lane:g,tag:a.tag,payload:a.payload,callback:a.callback,next:null},p===null?(c=p=k,u=h):p=p.next=k,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(p===null&&(u=h),i.baseState=u,i.firstBaseUpdate=c,i.lastBaseUpdate=p,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);zn|=s,e.lanes=s,e.memoizedState=h}}function Tc(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=ss.transition;ss.transition={};try{e(!1),t()}finally{te=n,ss.transition=r}}function Tp(){return gt().memoizedState}function nv(e,t,n){var r=pn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Np(e))Op(t,n);else if(n=dp(e,t,n,r),n!==null){var i=Ve();St(n,e,r,i),Lp(n,t,r)}}function rv(e,t,n){var r=pn(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Np(e))Op(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,_t(a,s)){var u=t.interleaved;u===null?(i.next=i,eu(t)):(i.next=u.next,u.next=i),t.interleaved=i;return}}catch{}finally{}n=dp(e,t,i,r),n!==null&&(i=Ve(),St(n,e,r,i),Lp(n,t,r))}}function Np(e){var t=e.alternate;return e===pe||t!==null&&t===pe}function Op(e,t){Ar=Ro=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Lp(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Aa(e,n)}}var Mo={readContext:mt,useCallback:Fe,useContext:Fe,useEffect:Fe,useImperativeHandle:Fe,useInsertionEffect:Fe,useLayoutEffect:Fe,useMemo:Fe,useReducer:Fe,useRef:Fe,useState:Fe,useDebugValue:Fe,useDeferredValue:Fe,useTransition:Fe,useMutableSource:Fe,useSyncExternalStore:Fe,useId:Fe,unstable_isNewReconciler:!1},iv={readContext:mt,useCallback:function(e,t){return Pt().memoizedState=[e,t===void 0?null:t],e},useContext:mt,useEffect:Oc,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,co(4194308,4,Sp.bind(null,t,e),n)},useLayoutEffect:function(e,t){return co(4194308,4,e,t)},useInsertionEffect:function(e,t){return co(4,2,e,t)},useMemo:function(e,t){var n=Pt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Pt();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=nv.bind(null,pe,e),[r.memoizedState,e]},useRef:function(e){var t=Pt();return e={current:e},t.memoizedState=e},useState:Nc,useDebugValue:uu,useDeferredValue:function(e){return Pt().memoizedState=e},useTransition:function(){var e=Nc(!1),t=e[0];return e=tv.bind(null,e[1]),Pt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=pe,i=Pt();if(ue){if(n===void 0)throw Error(_(407));n=n()}else{if(n=t(),Te===null)throw Error(_(349));Ln&30||gp(r,t,n)}i.memoizedState=n;var l={value:n,getSnapshot:t};return i.queue=l,Oc(xp.bind(null,r,l,e),[e]),r.flags|=2048,li(9,vp.bind(null,r,l,n,t),void 0,null),n},useId:function(){var e=Pt(),t=Te.identifierPrefix;if(ue){var n=Dt,r=Mt;n=(r&~(1<<32-bt(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=ii++,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[Tt]=t,e[ti]=r,Up(e,t,!1,!1),t.stateNode=e;e:{switch(s=Ms(n,r),n){case"dialog":le("cancel",e),le("close",e),i=r;break;case"iframe":case"object":case"embed":le("load",e),i=r;break;case"video":case"audio":for(i=0;idr&&(t.flags|=128,r=!0,Pr(l,!1),t.lanes=4194304)}else{if(!r)if(e=Io(s),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Pr(l,!0),l.tail===null&&l.tailMode==="hidden"&&!s.alternate&&!ue)return Ae(t),null}else 2*ke()-l.renderingStartTime>dr&&n!==1073741824&&(t.flags|=128,r=!0,Pr(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=ke(),t.sibling=null,n=fe.current,oe(fe,r?n&1|2:n&1),t):(Ae(t),null);case 22:case 23:return mu(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?rt&1073741824&&(Ae(t),t.subtreeFlags&6&&(t.flags|=8192)):Ae(t),null;case 24:return null;case 25:return null}throw Error(_(156,t.tag))}function fv(e,t){switch(Ya(t),t.tag){case 1:return et(t.type)&&Po(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return ur(),se(Je),se(Ue),iu(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return ru(t),null;case 13:if(se(fe),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(_(340));sr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return se(fe),null;case 4:return ur(),null;case 10:return Ja(t.type._context),null;case 22:case 23:return mu(),null;case 24:return null;default:return null}}var Ui=!1,Be=!1,pv=typeof WeakSet=="function"?WeakSet:Set,D=null;function Kn(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){xe(e,t,r)}else n.current=null}function ua(e,t,n){try{n()}catch(r){xe(e,t,r)}}var Uc=!1;function hv(e,t){if(Gs=bo,e=Yf(),Qa(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,p=0,h=e,g=null;t:for(;;){for(var k;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),(k=h.firstChild)!==null;)g=h,h=k;for(;;){if(h===e)break t;if(g===n&&++c===i&&(a=s),g===l&&++p===r&&(u=s),(k=h.nextSibling)!==null)break;h=g,g=h.parentNode}h=k}n=a===-1||u===-1?null:{start:a,end:u}}else n=null}n=n||{start:0,end:0}}else n=null;for(Qs={focusedElem:e,selectionRange:n},bo=!1,D=t;D!==null;)if(t=D,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,D=e;else for(;D!==null;){t=D;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,b=y.memoizedState,f=t.stateNode,d=f.getSnapshotBeforeUpdate(t.elementType===t.type?w:wt(t.type,w),b);f.__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(_(163))}}catch(x){xe(t,t.return,x)}if(e=t.sibling,e!==null){e.return=t.return,D=e;break}D=t.return}return y=Uc,Uc=!1,y}function Br(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&&ua(t,n,l)}i=i.next}while(i!==r)}}function il(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 ca(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 Vp(e){var t=e.alternate;t!==null&&(e.alternate=null,Vp(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Tt],delete t[ti],delete t[Ks],delete t[Kg],delete t[Zg])),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 Gp(e){return e.tag===5||e.tag===3||e.tag===4}function Hc(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Gp(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 da(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=Co));else if(r!==4&&(e=e.child,e!==null))for(da(e,t,n),e=e.sibling;e!==null;)da(e,t,n),e=e.sibling}function fa(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(fa(e,t,n),e=e.sibling;e!==null;)fa(e,t,n),e=e.sibling}var Ie=null,kt=!1;function Gt(e,t,n){for(n=n.child;n!==null;)Qp(e,t,n),n=n.sibling}function Qp(e,t,n){if(Nt&&typeof Nt.onCommitFiberUnmount=="function")try{Nt.onCommitFiberUnmount(Ko,n)}catch{}switch(n.tag){case 5:Be||Kn(n,t);case 6:var r=Ie,i=kt;Ie=null,Gt(e,t,n),Ie=r,kt=i,Ie!==null&&(kt?(e=Ie,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Ie.removeChild(n.stateNode));break;case 18:Ie!==null&&(kt?(e=Ie,n=n.stateNode,e.nodeType===8?is(e.parentNode,n):e.nodeType===1&&is(e,n),Kr(e)):is(Ie,n.stateNode));break;case 4:r=Ie,i=kt,Ie=n.stateNode.containerInfo,kt=!0,Gt(e,t,n),Ie=r,kt=i;break;case 0:case 11:case 14:case 15:if(!Be&&(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)&&ua(n,t,s),i=i.next}while(i!==r)}Gt(e,t,n);break;case 1:if(!Be&&(Kn(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){xe(n,t,a)}Gt(e,t,n);break;case 21:Gt(e,t,n);break;case 22:n.mode&1?(Be=(r=Be)||n.memoizedState!==null,Gt(e,t,n),Be=r):Gt(e,t,n);break;default:Gt(e,t,n)}}function Wc(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new pv),t.forEach(function(r){var i=bv.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function yt(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=s),r&=~l}if(r=i,r=ke()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*gv(r/1960))-r,10e?16:e,on===null)var r=!1;else{if(e=on,on=null,Fo=0,K&6)throw Error(_(331));var i=K;for(K|=4,D=e.current;D!==null;){var l=D,s=l.child;if(D.flags&16){var a=l.deletions;if(a!==null){for(var u=0;uke()-pu?En(e,0):fu|=n),tt(e,t)}function th(e,t){t===0&&(e.mode&1?(t=zi,zi<<=1,!(zi&130023424)&&(zi=4194304)):t=1);var n=Ve();e=Ut(e,t),e!==null&&(fi(e,t,n),tt(e,n))}function jv(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),th(e,n)}function bv(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(_(314))}r!==null&&r.delete(t),th(e,n)}var nh;nh=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Je.current)Ze=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Ze=!1,cv(e,t,n);Ze=!!(e.flags&131072)}else Ze=!1,ue&&t.flags&1048576&&lp(t,No,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;fo(e,t),e=t.pendingProps;var i=lr(t,Ue.current);rr(t,n),i=lu(null,t,r,e,i,n);var l=su();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,et(r)?(l=!0,Eo(t)):l=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,tu(t),i.updater=rl,t.stateNode=i,i._reactInternals=t,na(t,r,e,n),t=oa(null,t,r,!0,l,n)):(t.tag=0,ue&&l&&Xa(t),We(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(fo(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=_v(r),e=wt(r,e),i){case 0:t=ia(null,t,r,e,n);break e;case 1:t=Fc(null,t,r,e,n);break e;case 11:t=Dc(null,t,r,e,n);break e;case 14:t=$c(null,t,r,wt(r.type,e),n);break e}throw Error(_(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:wt(r,i),ia(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:wt(r,i),Fc(e,t,r,i,n);case 3:e:{if(Fp(t),e===null)throw Error(_(387));r=t.pendingProps,l=t.memoizedState,i=l.element,fp(e,t),zo(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=cr(Error(_(423)),t),t=Ac(e,t,r,n,i);break e}else if(r!==i){i=cr(Error(_(424)),t),t=Ac(e,t,r,n,i);break e}else for(it=cn(t.stateNode.containerInfo.firstChild),ot=t,ue=!0,jt=null,n=cp(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(sr(),r===i){t=Ht(e,t,n);break e}We(e,t,r,n)}t=t.child}return t;case 5:return pp(t),e===null&&Js(t),r=t.type,i=t.pendingProps,l=e!==null?e.memoizedProps:null,s=i.children,Xs(r,i)?s=null:l!==null&&Xs(r,l)&&(t.flags|=32),$p(e,t),We(e,t,s,n),t.child;case 6:return e===null&&Js(t),null;case 13:return Ap(e,t,n);case 4:return nu(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=ar(t,null,r,n):We(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:wt(r,i),Dc(e,t,r,i,n);case 7:return We(e,t,t.pendingProps,n),t.child;case 8:return We(e,t,t.pendingProps.children,n),t.child;case 12:return We(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,oe(Oo,r._currentValue),r._currentValue=s,l!==null)if(_t(l.value,s)){if(l.children===i.children&&!Je.current){t=Ht(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=Ft(-1,n&-n),u.tag=2;var c=l.updateQueue;if(c!==null){c=c.shared;var p=c.pending;p===null?u.next=u:(u.next=p.next,p.next=u),c.pending=u}}l.lanes|=n,u=l.alternate,u!==null&&(u.lanes|=n),ea(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(_(341));s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),ea(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}We(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,rr(t,n),i=mt(i),r=r(i),t.flags|=1,We(e,t,r,n),t.child;case 14:return r=t.type,i=wt(r,t.pendingProps),i=wt(r.type,i),$c(e,t,r,i,n);case 15:return Mp(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:wt(r,i),fo(e,t),t.tag=1,et(r)?(e=!0,Eo(t)):e=!1,rr(t,n),zp(t,r,i),na(t,r,i,n),oa(null,t,r,!0,e,n);case 19:return Bp(e,t,n);case 22:return Dp(e,t,n)}throw Error(_(156,t.tag))};function rh(e,t){return Nf(e,t)}function Sv(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 pt(e,t,n,r){return new Sv(e,t,n,r)}function vu(e){return e=e.prototype,!(!e||!e.isReactComponent)}function _v(e){if(typeof e=="function")return vu(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ma)return 11;if(e===Da)return 14}return 2}function hn(e,t){var n=e.alternate;return n===null?(n=pt(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 mo(e,t,n,r,i,l){var s=2;if(r=e,typeof e=="function")vu(e)&&(s=1);else if(typeof e=="string")s=5;else e:switch(e){case Bn:return Tn(n.children,i,l,t);case Ra:s=8,i|=8;break;case Cs:return e=pt(12,n,t,i|2),e.elementType=Cs,e.lanes=l,e;case Ps:return e=pt(13,n,t,i),e.elementType=Ps,e.lanes=l,e;case Es:return e=pt(19,n,t,i),e.elementType=Es,e.lanes=l,e;case pf:return ll(n,i,l,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case df:s=10;break e;case ff:s=9;break e;case Ma:s=11;break e;case Da:s=14;break e;case Jt:s=16,r=null;break e}throw Error(_(130,e==null?e:typeof e,""))}return t=pt(s,n,t,i),t.elementType=e,t.type=r,t.lanes=l,t}function Tn(e,t,n,r){return e=pt(7,e,r,t),e.lanes=n,e}function ll(e,t,n,r){return e=pt(22,e,r,t),e.elementType=pf,e.lanes=n,e.stateNode={isHidden:!1},e}function fs(e,t,n){return e=pt(6,e,null,t),e.lanes=n,e}function ps(e,t,n){return t=pt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Cv(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=Ql(0),this.expirationTimes=Ql(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ql(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function xu(e,t,n,r,i,l,s,a,u){return e=new Cv(e,t,n,a,u),t===1?(t=1,l===!0&&(t|=8)):t=0,l=pt(3,null,null,t),e.current=l,l.stateNode=e,l.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},tu(l),e}function Pv(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(sh)}catch(e){console.error(e)}}sh(),sf.exports=st;var ah=sf.exports;const Lv=Pa(ah);/** - * @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 ai(){return ai=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function uh(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Iv(){return Math.random().toString(36).substr(2,8)}function Jc(e,t){return{usr:e.state,key:e.key,idx:t}}function va(e,t,n,r){return n===void 0&&(n=null),ai({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?vr(t):t,{state:n,key:t&&t.key||r||Iv()})}function Uo(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 vr(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 Rv(e,t,n,r){r===void 0&&(r={});let{window:i=document.defaultView,v5Compat:l=!1}=r,s=i.history,a=ln.Pop,u=null,c=p();c==null&&(c=0,s.replaceState(ai({},s.state,{idx:c}),""));function p(){return(s.state||{idx:null}).idx}function h(){a=ln.Pop;let b=p(),f=b==null?null:b-c;c=b,u&&u({action:a,location:w.location,delta:f})}function g(b,f){a=ln.Push;let d=va(w.location,b,f);c=p()+1;let m=Jc(d,c),x=w.createHref(d);try{s.pushState(m,"",x)}catch(S){if(S instanceof DOMException&&S.name==="DataCloneError")throw S;i.location.assign(x)}l&&u&&u({action:a,location:w.location,delta:1})}function k(b,f){a=ln.Replace;let d=va(w.location,b,f);c=p();let m=Jc(d,c),x=w.createHref(d);s.replaceState(m,"",x),l&&u&&u({action:a,location:w.location,delta:0})}function y(b){let f=i.location.origin!=="null"?i.location.origin:i.location.href,d=typeof b=="string"?b:Uo(b);return d=d.replace(/ $/,"%20"),be(f,"No window.location.(origin|href) available to create URL for href: "+d),new URL(d,f)}let w={get action(){return a},get location(){return e(i,s)},listen(b){if(u)throw new Error("A history only accepts one active listener");return i.addEventListener(qc,h),u=b,()=>{i.removeEventListener(qc,h),u=null}},createHref(b){return t(i,b)},createURL:y,encodeLocation(b){let f=y(b);return{pathname:f.pathname,search:f.search,hash:f.hash}},push:g,replace:k,go(b){return s.go(b)}};return w}var ed;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(ed||(ed={}));function Mv(e,t,n){n===void 0&&(n="/");let r=typeof t=="string"?vr(t):t,i=ju(r.pathname||"/",n);if(i==null)return null;let l=ch(e);Dv(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("/")&&(be(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=mn([r,u.relativePath]),p=n.concat(u);l.children&&l.children.length>0&&(be(l.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+c+'".')),ch(l.children,t,p,c)),!(l.path==null&&!l.index)&&t.push({path:c,score:Wv(c,l.index),routesMeta:p})};return e.forEach((l,s)=>{var a;if(l.path===""||!((a=l.path)!=null&&a.includes("?")))i(l,s);else for(let u of dh(l.path))i(l,s,u)}),t}function dh(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=dh(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 Dv(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Vv(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const $v=/^:[\w-]+$/,Fv=3,Av=2,Bv=1,Uv=10,Hv=-2,td=e=>e==="*";function Wv(e,t){let n=e.split("/"),r=n.length;return n.some(td)&&(r+=Hv),t&&(r+=Av),n.filter(i=>!td(i)).reduce((i,l)=>i+($v.test(l)?Fv:l===""?Bv:Uv),r)}function Vv(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 Gv(e,t){let{routesMeta:n}=e,r={},i="/",l=[];for(let s=0;s{let{paramName:g,isOptional:k}=p;if(g==="*"){let w=a[h]||"";s=l.slice(0,l.length-w.length).replace(/(.)\/+$/,"$1")}const y=a[h];return k&&!y?c[g]=void 0:c[g]=(y||"").replace(/%2F/g,"/"),c},{}),pathname:l,pathnameBase:s,pattern:e}}function Xv(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),uh(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 Yv(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return uh(!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 ju(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 Kv(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:i=""}=typeof e=="string"?vr(e):e;return{pathname:n?n.startsWith("/")?n:Zv(n,t):t,search:e1(r),hash:t1(i)}}function Zv(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 hs(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 qv(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function fh(e,t){let n=qv(e);return t?n.map((r,i)=>i===e.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function ph(e,t,n,r){r===void 0&&(r=!1);let i;typeof e=="string"?i=vr(e):(i=ai({},e),be(!i.pathname||!i.pathname.includes("?"),hs("?","pathname","search",i)),be(!i.pathname||!i.pathname.includes("#"),hs("#","pathname","hash",i)),be(!i.search||!i.search.includes("#"),hs("#","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=Kv(i,a),c=s&&s!=="/"&&s.endsWith("/"),p=(l||s===".")&&n.endsWith("/");return!u.pathname.endsWith("/")&&(c||p)&&(u.pathname+="/"),u}const mn=e=>e.join("/").replace(/\/\/+/g,"/"),Jv=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),e1=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,t1=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function n1(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const hh=["post","put","patch","delete"];new Set(hh);const r1=["get",...hh];new Set(r1);/** - * 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 ui(){return ui=Object.assign?Object.assign.bind():function(e){for(var t=1;t{a.current=!0}),O.useCallback(function(c,p){if(p===void 0&&(p={}),!a.current)return;if(typeof c=="number"){r.go(c);return}let h=ph(c,JSON.parse(s),l,p.relative==="path");e==null&&t!=="/"&&(h.pathname=h.pathname==="/"?t:mn([t,h.pathname])),(p.replace?r.replace:r.push)(h,p.state,p)},[t,r,s,l,e])}function vh(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=O.useContext(Dn),{matches:i}=O.useContext($n),{pathname:l}=fl(),s=JSON.stringify(fh(i,r.v7_relativeSplatPath));return O.useMemo(()=>ph(e,JSON.parse(s),l,n==="path"),[e,s,l,n])}function a1(e,t){return u1(e,t)}function u1(e,t,n,r){gi()||be(!1);let{navigator:i}=O.useContext(Dn),{matches:l}=O.useContext($n),s=l[l.length-1],a=s?s.params:{};s&&s.pathname;let u=s?s.pathnameBase:"/";s&&s.route;let c=fl(),p;if(t){var h;let b=typeof t=="string"?vr(t):t;u==="/"||(h=b.pathname)!=null&&h.startsWith(u)||be(!1),p=b}else p=c;let g=p.pathname||"/",k=g;if(u!=="/"){let b=u.replace(/^\//,"").split("/");k="/"+g.replace(/^\//,"").split("/").slice(b.length).join("/")}let y=Mv(e,{pathname:k}),w=h1(y&&y.map(b=>Object.assign({},b,{params:Object.assign({},a,b.params),pathname:mn([u,i.encodeLocation?i.encodeLocation(b.pathname).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?u:mn([u,i.encodeLocation?i.encodeLocation(b.pathnameBase).pathname:b.pathnameBase])})),l,n,r);return t&&w?O.createElement(dl.Provider,{value:{location:ui({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:ln.Pop}},w):w}function c1(){let e=x1(),t=n1(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 O.createElement(O.Fragment,null,O.createElement("h2",null,"Unexpected Application Error!"),O.createElement("h3",{style:{fontStyle:"italic"}},t),n?O.createElement("pre",{style:i},n):null,null)}const d1=O.createElement(c1,null);class f1 extends O.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?O.createElement($n.Provider,{value:this.props.routeContext},O.createElement(mh.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function p1(e){let{routeContext:t,match:n,children:r}=e,i=O.useContext(bu);return i&&i.static&&i.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=n.route.id),O.createElement($n.Provider,{value:t},r)}function h1(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 p=s.findIndex(h=>h.route.id&&(a==null?void 0:a[h.route.id])!==void 0);p>=0||be(!1),s=s.slice(0,Math.min(s.length,p+1))}let u=!1,c=-1;if(n&&r&&r.v7_partialHydration)for(let p=0;p=0?s=s.slice(0,c+1):s=[s[0]];break}}}return s.reduceRight((p,h,g)=>{let k,y=!1,w=null,b=null;n&&(k=a&&h.route.id?a[h.route.id]:void 0,w=h.route.errorElement||d1,u&&(c<0&&g===0?(y=!0,b=null):c===g&&(y=!0,b=h.route.hydrateFallbackElement||null)));let f=t.concat(s.slice(0,g+1)),d=()=>{let m;return k?m=w:y?m=b:h.route.Component?m=O.createElement(h.route.Component,null):h.route.element?m=h.route.element:m=p,O.createElement(p1,{match:h,routeContext:{outlet:p,matches:f,isDataRoute:n!=null},children:m})};return n&&(h.route.ErrorBoundary||h.route.errorElement||g===0)?O.createElement(f1,{location:n.location,revalidation:n.revalidation,component:w,error:k,children:d(),routeContext:{outlet:null,matches:f,isDataRoute:!0}}):d()},null)}var xh=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(xh||{}),Ho=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}(Ho||{});function m1(e){let t=O.useContext(bu);return t||be(!1),t}function g1(e){let t=O.useContext(i1);return t||be(!1),t}function v1(e){let t=O.useContext($n);return t||be(!1),t}function yh(e){let t=v1(),n=t.matches[t.matches.length-1];return n.route.id||be(!1),n.route.id}function x1(){var e;let t=O.useContext(mh),n=g1(Ho.UseRouteError),r=yh(Ho.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function y1(){let{router:e}=m1(xh.UseNavigateStable),t=yh(Ho.UseNavigateStable),n=O.useRef(!1);return gh(()=>{n.current=!0}),O.useCallback(function(i,l){l===void 0&&(l={}),n.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,ui({fromRouteId:t},l)))},[e,t])}function wh(e){be(!1)}function w1(e){let{basename:t="/",children:n=null,location:r,navigationType:i=ln.Pop,navigator:l,static:s=!1,future:a}=e;gi()&&be(!1);let u=t.replace(/^\/*/,"/"),c=O.useMemo(()=>({basename:u,navigator:l,static:s,future:ui({v7_relativeSplatPath:!1},a)}),[u,a,l,s]);typeof r=="string"&&(r=vr(r));let{pathname:p="/",search:h="",hash:g="",state:k=null,key:y="default"}=r,w=O.useMemo(()=>{let b=ju(p,u);return b==null?null:{location:{pathname:b,search:h,hash:g,state:k,key:y},navigationType:i}},[u,p,h,g,k,y,i]);return w==null?null:O.createElement(Dn.Provider,{value:c},O.createElement(dl.Provider,{children:n,value:w}))}function k1(e){let{children:t,location:n}=e;return a1(xa(t),n)}new Promise(()=>{});function xa(e,t){t===void 0&&(t=[]);let n=[];return O.Children.forEach(e,(r,i)=>{if(!O.isValidElement(r))return;let l=[...t,i];if(r.type===O.Fragment){n.push.apply(n,xa(r.props.children,l));return}r.type!==wh&&be(!1),!r.props.index||!r.props.children||be(!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=xa(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 ya(){return ya=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(n[i]=e[i]);return n}function b1(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function S1(e,t){return e.button===0&&(!t||t==="_self")&&!b1(e)}const _1=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"],C1="6";try{window.__reactRouterVersion=C1}catch{}const P1="startTransition",nd=km[P1];function E1(e){let{basename:t,children:n,future:r,window:i}=e,l=O.useRef();l.current==null&&(l.current=zv({window:i,v5Compat:!0}));let s=l.current,[a,u]=O.useState({action:s.action,location:s.location}),{v7_startTransition:c}=r||{},p=O.useCallback(h=>{c&&nd?nd(()=>u(h)):u(h)},[u,c]);return O.useLayoutEffect(()=>s.listen(p),[s,p]),O.createElement(w1,{basename:t,children:n,location:a.location,navigationType:a.action,navigator:s,future:r})}const T1=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",N1=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,vi=O.forwardRef(function(t,n){let{onClick:r,relative:i,reloadDocument:l,replace:s,state:a,target:u,to:c,preventScrollReset:p,unstable_viewTransition:h}=t,g=j1(t,_1),{basename:k}=O.useContext(Dn),y,w=!1;if(typeof c=="string"&&N1.test(c)&&(y=c,T1))try{let m=new URL(window.location.href),x=c.startsWith("//")?new URL(m.protocol+c):new URL(c),S=ju(x.pathname,k);x.origin===m.origin&&S!=null?c=S+x.search+x.hash:w=!0}catch{}let b=o1(c,{relative:i}),f=O1(c,{replace:s,state:a,target:u,preventScrollReset:p,relative:i,unstable_viewTransition:h});function d(m){r&&r(m),m.defaultPrevented||f(m)}return O.createElement("a",ya({},g,{href:y||b,onClick:w||l?r:d,ref:n,target:u}))});var rd;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(rd||(rd={}));var id;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(id||(id={}));function O1(e,t){let{target:n,replace:r,state:i,preventScrollReset:l,relative:s,unstable_viewTransition:a}=t===void 0?{}:t,u=l1(),c=fl(),p=vh(e,{relative:s});return O.useCallback(h=>{if(S1(h,n)){h.preventDefault();let g=r!==void 0?r:Uo(c)===Uo(p);u(e,{replace:g,state:i,preventScrollReset:l,relative:s,unstable_viewTransition:a})}},[c,u,p,r,i,n,e,l,s,a])}var kh={exports:{}},ne={};/** - * @license React - * react-is.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 Su=Symbol.for("react.element"),_u=Symbol.for("react.portal"),pl=Symbol.for("react.fragment"),hl=Symbol.for("react.strict_mode"),ml=Symbol.for("react.profiler"),gl=Symbol.for("react.provider"),vl=Symbol.for("react.context"),L1=Symbol.for("react.server_context"),xl=Symbol.for("react.forward_ref"),yl=Symbol.for("react.suspense"),wl=Symbol.for("react.suspense_list"),kl=Symbol.for("react.memo"),jl=Symbol.for("react.lazy"),z1=Symbol.for("react.offscreen"),jh;jh=Symbol.for("react.module.reference");function vt(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case Su:switch(e=e.type,e){case pl:case ml:case hl:case yl:case wl:return e;default:switch(e=e&&e.$$typeof,e){case L1:case vl:case xl:case jl:case kl:case gl:return e;default:return t}}case _u:return t}}}ne.ContextConsumer=vl;ne.ContextProvider=gl;ne.Element=Su;ne.ForwardRef=xl;ne.Fragment=pl;ne.Lazy=jl;ne.Memo=kl;ne.Portal=_u;ne.Profiler=ml;ne.StrictMode=hl;ne.Suspense=yl;ne.SuspenseList=wl;ne.isAsyncMode=function(){return!1};ne.isConcurrentMode=function(){return!1};ne.isContextConsumer=function(e){return vt(e)===vl};ne.isContextProvider=function(e){return vt(e)===gl};ne.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===Su};ne.isForwardRef=function(e){return vt(e)===xl};ne.isFragment=function(e){return vt(e)===pl};ne.isLazy=function(e){return vt(e)===jl};ne.isMemo=function(e){return vt(e)===kl};ne.isPortal=function(e){return vt(e)===_u};ne.isProfiler=function(e){return vt(e)===ml};ne.isStrictMode=function(e){return vt(e)===hl};ne.isSuspense=function(e){return vt(e)===yl};ne.isSuspenseList=function(e){return vt(e)===wl};ne.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===pl||e===ml||e===hl||e===yl||e===wl||e===z1||typeof e=="object"&&e!==null&&(e.$$typeof===jl||e.$$typeof===kl||e.$$typeof===gl||e.$$typeof===vl||e.$$typeof===xl||e.$$typeof===jh||e.getModuleId!==void 0)};ne.typeOf=vt;kh.exports=ne;var bh=kh.exports;function I1(e){function t(L,I,M,W,v){for(var Y=0,N=0,ge=0,q=0,ee,G,Oe=0,Xe=0,Z,$e=Z=ee=0,J=0,Le=0,yr=0,ze=0,Ci=M.length,wr=Ci-1,xt,V="",we="",Al="",Bl="",Vt;Jee)&&(ze=(V=V.replace(" ",":")).length),0W&&(W=(I=I.trim()).charCodeAt(0)),W){case 38:return I.replace(f,"$1"+L.trim());case 58:return L.trim()+I.replace(f,"$1"+L.trim());default:if(0<1*M&&0N.charCodeAt(8))break;case 115:v=v.replace(N,"-webkit-"+N)+";"+v;break;case 207:case 102:v=v.replace(N,"-webkit-"+(102M.charCodeAt(0)&&(M=M.trim()),ie=M,M=[ie],01?t-1:0),r=1;r0?" Args: "+n.join(", "):""))}var e0=function(){function e(n){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=n}var t=e.prototype;return t.indexOfGroup=function(n){for(var r=0,i=0;i=this.groupSizes.length){for(var i=this.groupSizes,l=i.length,s=l;n>=s;)(s<<=1)<0&&xi(16,""+n);this.groupSizes=new Uint32Array(s),this.groupSizes.set(i),this.length=s;for(var a=l;a=this.length||this.groupSizes[n]===0)return r;for(var i=this.groupSizes[n],l=this.indexOfGroup(n),s=l+i,a=l;a=Wr&&(Wr=t+1),go.set(e,t),Vo.set(t,e)},r0="style["+fr+'][data-styled-version="5.3.11"]',i0=new RegExp("^"+fr+'\\.g(\\d+)\\[id="([\\w\\d-]+)"\\].*?"([^"]*)'),o0=function(e,t,n){for(var r,i=n.split(","),l=0,s=i.length;l=0;c--){var p=u[c];if(p&&p.nodeType===1&&p.hasAttribute(fr))return p}}(n),l=i!==void 0?i.nextSibling:null;r.setAttribute(fr,"active"),r.setAttribute("data-styled-version","5.3.11");var s=s0();return s&&r.setAttribute("nonce",s),n.insertBefore(r,l),r},a0=function(){function e(n){var r=this.element=Eh(n);r.appendChild(document.createTextNode("")),this.sheet=function(i){if(i.sheet)return i.sheet;for(var l=document.styleSheets,s=0,a=l.length;s=0){var i=document.createTextNode(r),l=this.nodes[n];return this.element.insertBefore(i,l||null),this.length++,!0}return!1},t.deleteRule=function(n){this.element.removeChild(this.nodes[n]),this.length--},t.getRule=function(n){return n0&&(h+=g+",")}),l+=""+c+p+'{content:"'+h+`"}/*!sc*/ -`}}}return l}(this)},e}(),f0=/(a)(d)/gi,fd=function(e){return String.fromCharCode(e+(e>25?39:97))};function ka(e){var t,n="";for(t=Math.abs(e);t>52;t=t/52|0)n=fd(t%52)+n;return(fd(t%52)+n).replace(f0,"$1-$2")}var qn=function(e,t){for(var n=t.length;n;)e=33*e^t.charCodeAt(--n);return e},Nh=function(e){return qn(5381,e)};function p0(e){for(var t=0;t>>0);if(!n.hasNameForId(i,a)){var u=r(s,"."+a,void 0,i);n.insertRules(i,a,u)}l.push(a),this.staticRulesId=a}else{for(var c=this.rules.length,p=qn(this.baseHash,r.hash),h="",g=0;g>>0);if(!n.hasNameForId(i,b)){var f=r(h,"."+b,void 0,i);n.insertRules(i,b,f)}l.push(b)}}return l.join(" ")},e}(),g0=/^\s*\/\/.*$/gm,v0=[":","[",".","#"];function x0(e){var t,n,r,i,l=gn,s=l.options,a=s===void 0?gn:s,u=l.plugins,c=u===void 0?Wo:u,p=new I1(a),h=[],g=function(w){function b(f){if(f)try{w(f+"}")}catch{}}return function(f,d,m,x,S,C,T,z,Q,$){switch(f){case 1:if(Q===0&&d.charCodeAt(0)===64)return w(d+";"),"";break;case 2:if(z===0)return d+"/*|*/";break;case 3:switch(z){case 102:case 112:return w(m[0]+d),"";default:return d+($===0?"/*|*/":"")}case-2:d.split("/*|*/}").forEach(b)}}}(function(w){h.push(w)}),k=function(w,b,f){return b===0&&v0.indexOf(f[n.length])!==-1||f.match(i)?w:"."+t};function y(w,b,f,d){d===void 0&&(d="&");var m=w.replace(g0,""),x=b&&f?f+" "+b+" { "+m+" }":m;return t=d,n=b,r=new RegExp("\\"+n+"\\b","g"),i=new RegExp("(\\"+n+"\\b){2,}"),p(f||!b?"":b,x)}return p.use([].concat(c,[function(w,b,f){w===2&&f.length&&f[0].lastIndexOf(n)>0&&(f[0]=f[0].replace(r,k))},g,function(w){if(w===-2){var b=h;return h=[],b}}])),y.hash=c.length?c.reduce(function(w,b){return b.name||xi(15),qn(w,b.name)},5381).toString():"",y}var Oh=qe.createContext();Oh.Consumer;var Lh=qe.createContext(),y0=(Lh.Consumer,new Th),ja=x0();function w0(){return O.useContext(Oh)||y0}function k0(){return O.useContext(Lh)||ja}var j0=function(){function e(t,n){var r=this;this.inject=function(i,l){l===void 0&&(l=ja);var s=r.name+l.hash;i.hasNameForId(r.id,s)||i.insertRules(r.id,s,l(r.rules,s,"@keyframes"))},this.toString=function(){return xi(12,String(r.name))},this.name=t,this.id="sc-keyframes-"+t,this.rules=n}return e.prototype.getName=function(t){return t===void 0&&(t=ja),this.name+t.hash},e}(),b0=/([A-Z])/,S0=/([A-Z])/g,_0=/^ms-/,C0=function(e){return"-"+e.toLowerCase()};function pd(e){return b0.test(e)?e.replace(S0,C0).replace(_0,"-ms-"):e}var hd=function(e){return e==null||e===!1||e===""};function pr(e,t,n,r){if(Array.isArray(e)){for(var i,l=[],s=0,a=e.length;s1?t-1:0),r=1;r?@[\\\]^`{|}~-]+/g,N0=/(^-|-$)/g;function ms(e){return e.replace(T0,"-").replace(N0,"")}var O0=function(e){return ka(Nh(e)>>>0)};function Gi(e){return typeof e=="string"&&!0}var ba=function(e){return typeof e=="function"||typeof e=="object"&&e!==null&&!Array.isArray(e)},L0=function(e){return e!=="__proto__"&&e!=="constructor"&&e!=="prototype"};function z0(e,t,n){var r=e[n];ba(t)&&ba(r)?zh(r,t):e[n]=t}function zh(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r=0||($[z]=C[z]);return $}(t,["componentId"]),S=m&&m+"-"+(Gi(d)?d:ms(cd(d)));return Rh(d,$t({},x,{attrs:g,componentId:S}),n)},Object.defineProperty(y,"defaultProps",{get:function(){return this._foldedDefaultProps},set:function(d){this._foldedDefaultProps=r?zh({},e.defaultProps,d):d}}),Object.defineProperty(y,"toString",{value:function(){return"."+y.styledComponentId}}),i&&q1(y,e,{attrs:!0,componentStyle:!0,displayName:!0,foldedComponentIds:!0,shouldForwardProp:!0,styledComponentId:!0,target:!0,withComponent:!0}),y}var j=function(e){return function t(n,r,i){if(i===void 0&&(i=gn),!bh.isValidElementType(r))return xi(1,String(r));var l=function(){return n(r,i,P0.apply(void 0,arguments))};return l.withConfig=function(s){return t(n,r,$t({},i,{},s))},l.attrs=function(s){return t(n,r,$t({},i,{attrs:Array.prototype.concat(i.attrs,s).filter(Boolean)}))},l}(Rh,e)};["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","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","marquee","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","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","marker","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","textPath","tspan"].forEach(function(e){j[e]=j(e)});var ve={},zu={},yi={},wi={},Mh="Expected a function",gd=NaN,I0="[object Symbol]",R0=/^\s+|\s+$/g,M0=/^[-+]0x[0-9a-f]+$/i,D0=/^0b[01]+$/i,$0=/^0o[0-7]+$/i,F0=parseInt,A0=typeof Pi=="object"&&Pi&&Pi.Object===Object&&Pi,B0=typeof self=="object"&&self&&self.Object===Object&&self,U0=A0||B0||Function("return this")(),H0=Object.prototype,W0=H0.toString,V0=Math.max,G0=Math.min,vs=function(){return U0.Date.now()};function Q0(e,t,n){var r,i,l,s,a,u,c=0,p=!1,h=!1,g=!0;if(typeof e!="function")throw new TypeError(Mh);t=vd(t)||0,Go(n)&&(p=!!n.leading,h="maxWait"in n,l=h?V0(vd(n.maxWait)||0,t):l,g="trailing"in n?!!n.trailing:g);function k(C){var T=r,z=i;return r=i=void 0,c=C,s=e.apply(z,T),s}function y(C){return c=C,a=setTimeout(f,t),p?k(C):s}function w(C){var T=C-u,z=C-c,Q=t-T;return h?G0(Q,l-z):Q}function b(C){var T=C-u,z=C-c;return u===void 0||T>=t||T<0||h&&z>=l}function f(){var C=vs();if(b(C))return d(C);a=setTimeout(f,w(C))}function d(C){return a=void 0,g&&r?k(C):(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(vs())}function S(){var C=vs(),T=b(C);if(r=arguments,i=this,u=C,T){if(a===void 0)return y(u);if(h)return a=setTimeout(f,t),k(u)}return a===void 0&&(a=setTimeout(f,t)),s}return S.cancel=m,S.flush=x,S}function X0(e,t,n){var r=!0,i=!0;if(typeof e!="function")throw new TypeError(Mh);return Go(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Q0(e,t,{leading:r,maxWait:t,trailing:i})}function Go(e){var t=typeof e;return!!e&&(t=="object"||t=="function")}function Y0(e){return!!e&&typeof e=="object"}function K0(e){return typeof e=="symbol"||Y0(e)&&W0.call(e)==I0}function vd(e){if(typeof e=="number")return e;if(K0(e))return gd;if(Go(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Go(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=e.replace(R0,"");var n=D0.test(e);return n||$0.test(e)?F0(e.slice(2),n?2:8):M0.test(e)?gd:+e}var Z0=X0,ki={};Object.defineProperty(ki,"__esModule",{value:!0});ki.addPassiveEventListener=function(t,n,r){var i=r.name;i||(i=n,console.warn("Listener must be a named function.")),vo.has(n)||vo.set(n,new Set);var l=vo.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)}};ki.removePassiveEventListener=function(t,n,r){t.removeEventListener(n,r),vo.get(n).delete(r.name||n)};var vo=new Map;Object.defineProperty(wi,"__esModule",{value:!0});var q0=Z0,J0=tx(q0),ex=ki;function tx(e){return e&&e.__esModule?e:{default:e}}var nx=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:66;return(0,J0.default)(t,n)},ce={spyCallbacks:[],spySetState:[],scrollSpyContainers:[],mount:function(t,n){if(t){var r=nx(function(i){ce.scrollHandler(t)},n);ce.scrollSpyContainers.push(t),(0,ex.addPassiveEventListener)(t,"scroll",r)}},isMounted:function(t){return ce.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=ce.scrollSpyContainers[ce.scrollSpyContainers.indexOf(t)].spyCallbacks||[];n.forEach(function(r){return r(ce.currentPositionX(t),ce.currentPositionY(t))})},addStateHandler:function(t){ce.spySetState.push(t)},addSpyHandler:function(t,n){var r=ce.scrollSpyContainers[ce.scrollSpyContainers.indexOf(n)];r.spyCallbacks||(r.spyCallbacks=[]),r.spyCallbacks.push(t),t(ce.currentPositionX(n),ce.currentPositionY(n))},updateStates:function(){ce.spySetState.forEach(function(t){return t()})},unmount:function(t,n){ce.scrollSpyContainers.forEach(function(r){return r.spyCallbacks&&r.spyCallbacks.length&&r.spyCallbacks.indexOf(n)>-1&&r.spyCallbacks.splice(r.spyCallbacks.indexOf(n),1)}),ce.spySetState&&ce.spySetState.length&&ce.spySetState.indexOf(t)>-1&&ce.spySetState.splice(ce.spySetState.indexOf(t),1),document.removeEventListener("scroll",ce.scrollHandler)},update:function(){return ce.scrollSpyContainers.forEach(function(t){return ce.scrollHandler(t)})}};wi.default=ce;var xr={},ji={};Object.defineProperty(ji,"__esModule",{value:!0});var rx=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)},ix=function(){return window.location.hash.replace(/^#/,"")},ox=function(t){return function(n){return t.contains?t!=n&&t.contains(n):!!(t.compareDocumentPosition(n)&16)}},lx=function(t){return getComputedStyle(t).position!=="static"},xs=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}},sx=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(lx(t)){if(n.offsetParent!==t){var i=function(p){return p===t||p===document},l=xs(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(p){return p===document};return xs(n,u).offsetTop-xs(t,u).offsetTop};ji.default={updateHash:rx,getHash:ix,filterElementInContainer:ox,scrollOffset:sx};var zl={},Iu={};Object.defineProperty(Iu,"__esModule",{value:!0});Iu.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 Ru={};Object.defineProperty(Ru,"__esModule",{value:!0});var ax=ki,ux=["mousedown","mousewheel","touchmove","keydown"];Ru.default={subscribe:function(t){return typeof document<"u"&&ux.forEach(function(n){return(0,ax.addPassiveEventListener)(document,n,t)})}};var bi={};Object.defineProperty(bi,"__esModule",{value:!0});var Sa={registered:{},scrollEvent:{register:function(t,n){Sa.registered[t]=n},remove:function(t){Sa.registered[t]=null}}};bi.default=Sa;Object.defineProperty(zl,"__esModule",{value:!0});var cx=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);_a.call(window,l);return}Et.default.registered.end&&Et.default.registered.end(i.to,i.target,i.currentPosition)},Mu=function(t){t.data.containerElement=t?t.containerId?document.getElementById(t.containerId):t.container&&t.container.nodeType?t.container:document:null},Si=function(t,n,r,i){n.data=n.data||$h(),window.clearTimeout(n.data.delayTimeout);var l=function(){n.data.cancel=!0};if(hx.default.subscribe(l),Mu(n),n.data.start=null,n.data.cancel=!1,n.data.startPosition=n.horizontal?Fh(n):Ah(n),n.data.targetPosition=n.absolute?t:t+n.data.startPosition,n.data.startPosition===n.data.targetPosition){Et.default.registered.end&&Et.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=gx(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=Dh(n),a=wx.bind(null,s,n);if(n&&n.delay>0){n.data.delayTimeout=window.setTimeout(function(){Et.default.registered.begin&&Et.default.registered.begin(n.data.to,n.data.target),_a.call(window,a)},n.delay);return}Et.default.registered.begin&&Et.default.registered.begin(n.data.to,n.data.target),_a.call(window,a)},Rl=function(t){return t=cx({},t),t.data=t.data||$h(),t.absolute=!0,t},kx=function(t){Si(0,Rl(t))},jx=function(t,n){Si(t,Rl(n))},bx=function(t){t=Rl(t),Mu(t),Si(t.horizontal?xx(t):yx(t),t)},Sx=function(t,n){n=Rl(n),Mu(n);var r=n.horizontal?Fh(n):Ah(n);Si(t+r,n)};zl.default={animateTopScroll:Si,getAnimationType:Dh,scrollToTop:kx,scrollToBottom:bx,scrollTo:jx,scrollMore:Sx};Object.defineProperty(xr,"__esModule",{value:!0});var _x=Object.assign||function(e){for(var t=1;t=Math.floor(w)&&x=Math.floor(b)}else{var S=0,C=0,T=0;if(c.getBoundingClientRect){var z=c.getBoundingClientRect();T=z.top}if(!g||s.props.isDynamic){if(g=n.get(h),!g)return;var Q=g.getBoundingClientRect();S=Q.top-T+u,C=S+Q.height}var $=u-s.props.offset;k=$>=Math.floor(S)&&$=Math.floor(C)}var ye=n.getActiveLink();if(y){if(h===ye&&n.setActiveLink(void 0),s.props.hashSpy&&Qt.default.getHash()===h){var me=s.props.saveHashHistory,Se=me===void 0?!1:me;Qt.default.changeHash("",Se)}s.props.spy&&s.state.active&&(s.setState({active:!1}),s.props.onSetInactive&&s.props.onSetInactive(h,g))}if(k&&(ye!==h||s.state.active===!1)){n.setActiveLink(h);var De=s.props.saveHashHistory,Pe=De===void 0?!1:De;s.props.hashSpy&&Qt.default.changeHash(h,Pe),s.props.spy&&(s.setState({active:!0}),s.props.onSetActive&&s.props.onSetActive(h,g))}}}};return r.propTypes=kd,r.defaultProps={offset:0},r};Object.defineProperty(zu,"__esModule",{value:!0});var Xx=O,jd=Wh(Xx),Yx=yi,Kx=Wh(Yx);function Wh(e){return e&&e.__esModule?e:{default:e}}function Zx(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function bd(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 qx(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 Jx=function(e){qx(t,e);function t(){var n,r,i,l;Zx(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;Cd.default.unregister(this.props.name)}},{key:"registerElems",value:function(l){Cd.default.register(l,this.childBindings.domNode)}},{key:"render",value:function(){return _d.default.createElement(e,ay({},this.props,{parentBindings:this.childBindings}))}}]),r}(_d.default.Component);return t.propTypes={name:Pd.default.string,id:Pd.default.string},t};Object.defineProperty(Fu,"__esModule",{value:!0});var Ed=Object.assign||function(e){for(var t=1;t=Math.floor(g)&&f=Math.floor(k),x=r.getActiveLink();if(m)return p===x&&r.setActiveLink(void 0),a.props.hashSpy&&Xt.getHash()===p&&Xt.changeHash(),a.props.spy&&a.state.active&&(a.setState({active:!1}),a.props.onSetInactive&&a.props.onSetInactive()),jn.updateStates();if(d&&x!==p)return r.setActiveLink(p),a.props.hashSpy&&Xt.changeHash(p),a.props.spy&&(a.setState({active:!0}),a.props.onSetActive&&a.props.onSetActive(p)),jn.updateStates()}}};return i.propTypes=Rd,i.defaultProps={offset:0},i},Element:function(t){console.warn("Helpers.Element is deprecated since v1.7.0");var n=function(r){Id(i,r);function i(l){Ld(this,i);var s=zd(this,(i.__proto__||Object.getPrototypeOf(i)).call(this,l));return s.childBindings={domNode:null},s}return Od(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;ks.unregister(this.props.name)}},{key:"registerElems",value:function(s){ks.register(s,this.childBindings.domNode)}},{key:"render",value:function(){return Zi.createElement(t,ws({},this.props,{parentBindings:this.childBindings}))}}]),i}(Zi.Component);return n.propTypes={name:de.string,id:de.string},n}},Cy=_y;Object.defineProperty(ve,"__esModule",{value:!0});ve.Helpers=ve.ScrollElement=ve.ScrollLink=Uu=ve.animateScroll=ve.scrollSpy=ve.Events=ve.scroller=ve.Element=ve.Button=Bu=ve.Link=void 0;var Py=zu,Qh=Lt(Py),Ey=$u,Xh=Lt(Ey),Ty=Fu,Yh=Lt(Ty),Ny=xr,Kh=Lt(Ny),Oy=bi,Zh=Lt(Oy),Ly=wi,qh=Lt(Ly),zy=zl,Jh=Lt(zy),Iy=yi,em=Lt(Iy),Ry=$l,tm=Lt(Ry),My=Cy,nm=Lt(My);function Lt(e){return e&&e.__esModule?e:{default:e}}var Bu=ve.Link=Qh.default;ve.Button=Xh.default;ve.Element=Yh.default;ve.scroller=Kh.default;ve.Events=Zh.default;ve.scrollSpy=qh.default;var Uu=ve.animateScroll=Jh.default;ve.ScrollLink=em.default;ve.ScrollElement=tm.default;ve.Helpers=nm.default;ve.default={Link:Qh.default,Button:Xh.default,Element:Yh.default,scroller:Kh.default,Events:Zh.default,scrollSpy:qh.default,animateScroll:Jh.default,ScrollLink:em.default,ScrollElement:tm.default,Helpers:nm.default};var rm={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},Ca=qe.createContext&&qe.createContext(rm),Dy=["attr","size","title"];function $y(e,t){if(e==null)return{};var n=Fy(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 Fy(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 Qo(){return Qo=Object.assign?Object.assign.bind():function(e){for(var t=1;tqe.createElement(t.tag,Xo({key:n},t.attr),im(t.child)))}function Hu(e){return t=>qe.createElement(Hy,Qo({attr:Xo({},e.attr)},t),im(e.child))}function Hy(e){var t=n=>{var{attr:r,size:i,title:l}=e,s=$y(e,Dy),a=i||n.size||"1em",u;return n.className&&(u=n.className),e.className&&(u=(u?u+" ":"")+e.className),qe.createElement("svg",Qo({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},n.attr,r,s,{className:u,style:Xo(Xo({color:e.color||n.color},n.style),e.style),height:a,width:a,xmlns:"http://www.w3.org/2000/svg"}),l&&qe.createElement("title",null,l),e.children)};return Ca!==void 0?qe.createElement(Ca.Consumer,null,n=>t(n)):t(rm)}function Wy(e){return Hu({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 Vy(e){return Hu({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 Gy(e){return Hu({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)}const Qy=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%"}; - -`,Xy=j(Gy)` - color: #fff ; - &:hover { - color: #01bf71; - transition: 0.2s ease-in-out; - } -`,Yy=j.div` - position: absolute; - top: 1.2rem; - right: 1.5rem; - background: transparent; - font-size: 2rem; - cursor: pointer; - outline: none; -`,Ky=j.div` - color: #ffffff; -`,Zy=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) ; - } -`,qi=j(Bu)` - 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(vi)` - 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; - } -`;const qy=({isOpen:e,toggle:t})=>o.jsx(o.Fragment,{children:o.jsxs(Qy,{isOpen:e,onClick:t,children:[o.jsx(Yy,{onClick:t,children:o.jsx(Xy,{})}),o.jsx(Ky,{children:o.jsxs(Zy,{children:[o.jsx(qi,{to:"Notebooks",onClick:t,children:"Notebooks"}),o.jsx(qi,{to:"Instructors",onClick:t,children:"Instructors"}),o.jsx(qi,{to:"Media",onClick:t,children:"Media"}),o.jsx(qi,{to:"More",onClick:t,children:"More"})]})})]})}),Jy=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; - } -`,ew=j.div` - display: flex; - justify-content: space-between; - height: 100px; - z-index: 1; - width: 100%; - padding: 0 24px; - max-width: 1100px; -`,tw=j(vi)` - 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: 1.0rem; - } - -`,nw=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; - } -`,rw=j.ul` - display: flex; - align-items: center; - list-style: none; - text-align: center; - margin-right: -22px; - - @media screen and (max-width: 768px) { - display: none; - } -`,Ji=j.li` - height: 80px; -`;j.nav` - display: flex; - align-items: center; - - @media screen and (max-width: 768px) { - display: none; - } -`;const eo=j(Bu)` - color: #fff; - display: flex; - align-items: center; - text-decoration: none; - padding: 0 1rem; - height: 100%; - cursor: pointer; - - &.active { - border-bottom: 3px solid #57c6d1 - } -`;j(vi)` - 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; - } -`;const iw=({toggle:e})=>{const[t,n]=O.useState(!1),r=()=>{window.scrollY>=80?n(!0):n(!1)};O.useEffect(()=>{window.addEventListener("scroll",r)},[]);const i=()=>{Uu.scrollToTop()};return o.jsx(o.Fragment,{children:o.jsx(Ca.Provider,{value:{color:"#fff"},children:o.jsx(Jy,{scrollNav:t,children:o.jsxs(ew,{children:[o.jsx(tw,{to:"/udlbook/",onClick:i,children:o.jsx("h1",{children:" Understanding Deep Learning "})}),o.jsx(nw,{onClick:e,children:o.jsx(Vy,{})}),o.jsxs(rw,{children:[o.jsx(Ji,{children:o.jsx(eo,{to:"Notebooks",smooth:!0,duration:500,spy:!0,exact:"true",offset:-80,activeClass:"active",children:"Notebooks"})}),o.jsx(Ji,{children:o.jsx(eo,{to:"Instructors",smooth:!0,duration:500,spy:!0,exact:"true",offset:-80,activeClass:"active",children:"Instructors"})}),o.jsx(Ji,{children:o.jsx(eo,{to:"Media",smooth:!0,duration:500,spy:!0,exact:"true",offset:-80,activeClass:"active",children:"Media"})}),o.jsx(Ji,{children:o.jsx(eo,{to:"More",smooth:!0,duration:500,spy:!0,exact:"true",offset:-80,activeClass:"active",children:"More"})})]})]})})})})},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'; - } -`,Yt=j.div` - margin-left: 4px; - color: #000000; - font-size: 16px; - // line-height: 16px; - margin-bottom: 16px; - display: flex; - justify-content: start; - -`,Kt=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; - } -`,Zt=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; -`,to=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: .3; - -webkit-transform: scaleX(1); - transition-property: opacity, -webkit-transform; - transition-duration: .3s; -} - - &:hover:before { - opacity: 1; - -webkit-transform: scaleX(1.05); - } -`,qt=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: .3; - -webkit-transform: scaleX(1); - transition-property: opacity, -webkit-transform; - transition-duration: .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; -} -`,xw="/assets/F23.prince.learning.turquoise-B3FyEkB6.jpg",yw=()=>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(Yt,{children:[o.jsx(Kt,{children:"03/12/24"}),o.jsx(Zt,{children:" Book now available again."})]}),o.jsxs(Yt,{children:[o.jsx(Kt,{children:"02/21/24"}),o.jsxs(Zt,{children:["New blog about the ",o.jsx(qt,{href:"https://www.borealisai.com/research-blogs/the-neural-tangent-kernel/",children:"Neural Tangent Kernel."})]})]}),o.jsxs(Yt,{children:[o.jsx(Kt,{children:"02/15/24"}),o.jsx(Zt,{children:" First printing of book has sold out in most places. Second printing available mid-March."})]}),o.jsxs(Yt,{children:[o.jsx(Kt,{children:"01/29/24"}),o.jsxs(Zt,{children:[" New blog about ",o.jsx(qt,{href:"https://www.borealisai.com/research-blogs/gradient-flow/",children:" gradient flow "})," published."]})]}),o.jsxs(Yt,{children:[o.jsx(Kt,{children:"12/26/23"}),o.jsxs(Zt,{children:[" Machine Learning Street Talk ",o.jsx(qt,{href:"https://www.youtube.com/watch?v=sJXn4Cl4oww",children:" podcast "})," discussing book."]})]}),o.jsxs(Yt,{children:[o.jsx(Kt,{children:"12/19/23"}),o.jsxs(Zt,{children:["Deeper Insights ",o.jsx(qt,{href:"https://podcasts.apple.com/us/podcast/understanding-deep-learning-with-simon-prince/id1669436318?i=1000638269385",children:"podcast"})," discussing book."]})]}),o.jsxs(Yt,{children:[o.jsx(Kt,{children:"12/06/23"}),o.jsxs(Zt,{children:[" I did an ",o.jsx(qt,{href:"https://www.borealisai.com/news/understanding-deep-learning/",children:"interview"})," discussing the book with Borealis AI."]})]}),o.jsxs(Yt,{children:[o.jsx(Kt,{children:"12/05/23"}),o.jsxs(Zt,{children:[" Book released by ",o.jsx(qt,{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(qe.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(qt,{href:"https://twitter.com/SimonPrinceAI",children:"Twitter"})," or ",o.jsx(qt,{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:xw,alt:"book cover"})}),o.jsx(to,{href:"https://github.com/udlbook/udlbook/releases/download/v2.05/UnderstandingDeepLearning_04_18_24_C.pdf",children:"Download full pdf (18 Apr 2024)"}),o.jsx(fw,{src:"https://img.shields.io/github/downloads/udlbook/udlbook/total",alt:"download stats shield"}),o.jsx(to,{href:"https://mitpress.mit.edu/9780262048644/understanding-deep-learning/",children:"Buy the book"}),o.jsx(to,{href:"https://github.com/udlbook/udlbook/raw/main/UDL_Answer_Booklet_Students.pdf",children:"Answers to selected questions"}),o.jsx(to,{href:"https://github.com/udlbook/udlbook/raw/main/UDL_Errata.pdf",children:"Errata"})]})]})})}),ww=j.div` - color: #fff; - /* background: #f9f9f9; */ - background: ${({lightBg:e})=>e?"#f9f9f9":"#010606"}; - - @media screen and (max-width: 768px) { - padding: 100px 0; - } -`,kw=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; -`,Dd=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'"}; - } -`,$d=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; - } -`,Fd=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; - } -`,jw=j.div` - max-width: 540px ; - padding-top: 0; - padding-bottom: 0; -`,bw=j.p` - color: #57c6d1; - 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; - } -`,_w=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; -`,R=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); - } -`,Ew="/assets/coding-DMb7YNWh.svg",Tw=()=>o.jsx(o.Fragment,{children:o.jsx(ww,{lightBg:!1,id:"Notebooks",children:o.jsxs(kw,{children:[o.jsxs(Dd,{imgStart:!0,children:[o.jsx($d,{children:o.jsxs(jw,{children:[o.jsx(bw,{children:"Coding exercises"}),o.jsx(Sw,{lightText:!0,children:"Python notebooks covering the whole text"}),o.jsx(_w,{darkText:!1,children:"Sixty eight python notebook exercises with missing code to fill in based on the text"})]})}),o.jsx(Fd,{children:o.jsx(Cw,{children:o.jsx(Pw,{src:Ew,alt:"Car"})})})]}),o.jsxs(Dd,{children:[o.jsx($d,{children:o.jsxs("ul",{children:[o.jsxs("li",{children:[" Notebook 1.1 - Background mathematics: ",o.jsx(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap10/10_5_Convolution_For_MNIST.ipynb",children:"ipynb/colab "})]})]})}),o.jsx(Fd,{children:o.jsxs("ul",{children:[o.jsxs("li",{children:[" Notebook 11.1 - Shattered gradients: ",o.jsx(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{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(R,{href:"https://github.com/udlbook/udlbook/blob/main/Notebooks/Chap21/21_2_Explainability.ipynb",children:"ipynb/colab "})]})]})})]})]})})}),Nw=j.div` - color: #fff; - /* background: #f9f9f9; */ - background: ${({lightBg:e})=>e?"#57c6d1":"#010606"}; - - @media screen and (max-width: 768px) { - padding: 100px 0; - } -`,Ow=j.div` - display: grid ; - z-index: 1; - width: 100% ; - max-width: 1100px; - margin-right: auto; - margin-left: auto; - padding: 0 24px; - justify-content: center; -`,Lw=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'"}; - } -`,zw=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'"}; - } -`,Ad=j.div` - margin-bottom: 15px; - padding: 0 15px; - grid-area: col1; -`,Bd=j.div` - margin-bottom: 15px; - padding: 0 15px; - grid-area: col2; -`,Iw=j.div` - max-width: 540px ; - padding-top: 0; - padding-bottom: 0; -`,no=j.p` - color: #773c23; - font-size: 16px; - line-height: 16px; - font-weight: 700; - letter-spacing: 1.4px; - text-transform: uppercase; - margin-bottom: 16px; -`,Rw=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; - } -`,Mw=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 Dw=j.div` - max-width: 555px; - height: 100%; -`,$w=j.img` - width: 100%; - margin-top: 0; - margin-right: 0; - margin-left: 10px; - padding-right: 0; -`,Tr=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; - } -`,P=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: .3; - -webkit-transform: scaleX(1); - transition-property: opacity, -webkit-transform; - transition-duration: .3s; - } - - &:hover:before { - opacity: 1; - -webkit-transform: scaleX(1.05); - } -`,Fw="/assets/instructor-B2zxe_pu.svg",Aw=()=>o.jsx(o.Fragment,{children:o.jsx(Nw,{lightBg:!0,id:"Instructors",children:o.jsxs(Ow,{children:[o.jsxs(Lw,{imgStart:!1,children:[o.jsx(Ad,{children:o.jsxs(Iw,{children:[o.jsx(no,{children:"Instructors"}),o.jsx(Rw,{lightText:!1,children:"Resources for instructors"}),o.jsx(Mw,{darkText:!0,children:"All the figures in vector and image formats, full slides for first twelve chapters, instructor answer booklet"})]})}),o.jsx(Bd,{children:o.jsx(Dw,{children:o.jsx($w,{src:Fw,alt:"Car"})})})]}),o.jsxs(zw,{children:[o.jsxs(Ad,{children:[o.jsx(no,{children:"Register"}),o.jsx(P,{href:"https://mitpress.ublish.com/request?cri=15055",children:"Register"})," with MIT Press for answer booklet.",o.jsx(Tr,{}),o.jsx(no,{children:"Full slides"}),o.jsx(Tr,{children:"Slides for 20 lecture undergraduate deep learning course:"}),o.jsx(Tr,{children:o.jsxs("ol",{children:[o.jsxs("li",{children:["Introduction ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=17RHb11BrydOvxSFNbRIomE1QKLVI087m",children:"PPTX"})]}),o.jsxs("li",{children:["Supervised Learning ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1491zkHULC7gDfqlV6cqUxyVYXZ-de-Ub",children:"PPTX"})]}),o.jsxs("li",{children:["Shallow Neural Networks ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1XkP1c9EhOBowla1rT1nnsDGMf2rZvrt7",children:"PPTX"})]}),o.jsxs("li",{children:["Deep Neural Networks ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1e2ejfZbbfMKLBv0v-tvBWBdI8gO3SSS1",children:"PPTX"})]}),o.jsxs("li",{children:["Loss Functions ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1fxQ_a1Q3eFPZ4kPqKbak6_emJK-JfnRH",children:"PPTX"})]}),o.jsxs("li",{children:["Fitting Models ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=17QQ5ZzXBtR_uCNCUU1gPRWWRUeZN9exW",children:"PPTX"})]}),o.jsxs("li",{children:["Computing Gradients ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1hC8JUCOaFWiw3KGn0rm7nW6mEq242QDK",children:"PPTX"})]}),o.jsxs("li",{children:["Initialization ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1tSjCeAVg0JCeBcPgDJDbi7Gg43Qkh9_d",children:"PPTX"})]}),o.jsxs("li",{children:["Performance ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1RVZW3KjEs0vNSGx3B2fdizddlr6I0wLl",children:"PPTX"})]}),o.jsxs("li",{children:["Regularization ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1LTicIKPRPbZRkkg6qOr1DSuOB72axood",children:"PPTX"})]}),o.jsxs("li",{children:["Convolutional Networks ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1bGVuwAwrofzZdfvj267elIzkYMIvYFj0",children:"PPTX"})]}),o.jsxs("li",{children:["Image Generation ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=14w31QqWRDix1GdUE-na0_E0kGKBhtKzs",children:"PPTX"})]}),o.jsxs("li",{children:["Transformers and LLMs ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1af6bTTjAbhDYfrDhboW7Fuv52Gk9ygKr",children:"PPTX"})]})]})})]}),o.jsxs(Bd,{children:[o.jsx(no,{children:"Figures"}),o.jsx(Tr,{children:o.jsxs("ol",{children:[o.jsxs("li",{children:[" Introduction: ",o.jsx(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap1PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1udnl5pUOAc8DcAQ7HQwyzP9pwL95ynnv",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap2PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1VSxcU5y1qNFlmd3Lb3uOWyzILuOj1Dla",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap3PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=19kZFWlXhzN82Zx02ByMmSZOO4T41fmqI",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap4PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1ojr0ebsOhzvS04ItAflX2cVmYqHQHZUa",children:" SVG"}),"/",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap5PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=17MJO7fiMpFZVqKeqXTbQ36AMpmR4GizZ",children:"SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap6PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1VPdhFRnCr9_idTrX0UdHKGAw2shUuwhK",children:"SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap7PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1TTl4gvrTvNbegnml4CoGoKOOd6O8-PGs",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap8PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=19eQOnygd_l0DzgtJxXuYnWa4z7QKJrJx",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap9PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1LprgnUGL7xAM9-jlGZC9LhMPeefjY0r0",children:"SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap10PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1-Wb3VzaSvVeRzoUzJbI2JjZE0uwqupM9",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap11PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1Mr58jzEVseUAfNYbGWCQyDtEDwvfHRi1",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap12PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1txzOVNf8-jH4UfJ6SLnrtOfPd1Q3ebzd",children:"SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap13PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1lQIV6nRp6LVfaMgpGFhuwEXG-lTEaAwe",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap14PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1aMbI6iCuUvOywqk5pBOmppJu1L1anqsM",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap15PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1EErnlZCOlXc3HK7m83T2Jh_0NzIUHvtL",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap16PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1SNtNIY7khlHQYMtaOH-FosSH3kWwL4b7",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap17PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1B9bxtmdugwtg-b7Y4AdQKAIEVWxjx8l3",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap18PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1A-pIGl4PxjVMYOKAUG3aT4a8wD3G-q_r",children:" SVG"})," /",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap19PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1a5WUoF7jeSgwC_PVdckJi1Gny46fCqh0",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap20PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1M2d0DHEgddAQoIedKSDTTt7m1ZdmBLQ3",children:" SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLChap21PDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1jixmFfwmZkW_UVYzcxmDcMsdFFtnZ0bU",children:"SVG"})," / ",o.jsx(P,{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(P,{href:"https://github.com/udlbook/udlbook/raw/main/PDFFigures/UDLAppendixPDF.zip",children:"PDF"})," / ",o.jsx(P,{href:"https://drive.google.com/uc?export=download&id=1k2j7hMN40ISPSg9skFYWFL3oZT7r8v-l",children:"SVG"})," / ",o.jsx(P,{href:"https://docs.google.com/presentation/d/1_2cJHRnsoQQHst0rwZssv-XH4o5SEHks/edit?usp=drive_link&ouid=110441678248547154185&rtpof=true&sd=true",children:"PPTX"})]})]})}),o.jsx(P,{href:"https://drive.google.com/file/d/1T_MXXVR4AfyMnlEFI-UVDh--FXI5deAp/view?usp=sharing",children:"Instructions"})," for editing equations in figures.",o.jsx(Tr,{})]})]})]})})}),Bw=j.footer` - background-color: #101522; -`,Uw=j.div` - padding: 48x 24px; - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; - max-width: 1100px; - margin: 0 auto; -`;j.div` - display: flex; - justify-content: center; - - @media screen and (max-width: 820px){ - padding-top: 32px; - } -`;j.div` - display: flex; - @media screen and (max-width: 820px){ - flex-direction: column; - } -`;j.div` - display: flex; - flex-direction: column; - align-items: flex-start; - margin: 16px; - text-align: left; - width: 160px; - box-sizing: border-box; - color: #fff; - - @media screen and (max-width: 420px){ - margin: 0; - padding: 10px; - width: 100%; - } -`;j.h1` - font-size: 14px; - margin-bottom: 16px ; -`;j(vi)` - color: #ffffff; - text-decoration: none; - margin-bottom: 0.5rem; - font-size: 14px; - - &:hover{ - color: #01bf71; - transition: 0.3s ease-in-out; - } -`;const Hw=j.section` - max-width: 1000px; - width: 100%; -`,Ww=j.div` - display: flex; - justify-content: space-between; - align-items: center; - max-width: 1100px; - margin: 20px auto 0 auto ; - - @media screen and (max-width: 820px){ - flex-direction: column; - } -`;j.div` - color: #fff; - display: flex; - justify-content: center; - align-items: center; - max-width: 1100px; - margin: 10px auto 0 auto ; - - @media screen and (max-width: 820px){ - flex-direction: column; - } -`;const Vw=j(vi)` - color: #fff; - justify-self: start; - cursor: pointer; - text-decoration: none; - font-size: 1.5rem; - display: flex; - align-items: center; - margin-bottom: 16px; - font-weight: bold; - @media screen and (max-width: 768px) { - font-size: 20px; - } -`,Ud=j.small` - color: #fff ; - margin-bottom: 8px ; -`,Gw=j.div` - display: flex; - justify-content: space-between; - align-items: center; - width: 60px; - margin-bottom: 8px ; -`,Hd=j.a` - color: #fff; - font-size: 24px; -`;j.div` - max-width: 555px; - height: 100%; -`;const Qw=j.img` - width: 100%; - margin-top: 0; - margin-right: 0; - margin-left: 10px; - padding-right: 0; -`,Xw="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",Yw=()=>{const e=()=>{Uu.scrollToTop()};return o.jsx(o.Fragment,{children:o.jsx(Bw,{children:o.jsx(Uw,{children:o.jsx(Hw,{children:o.jsxs(Ww,{children:[o.jsx(Vw,{to:"/udlbook/",onClick:e,children:"Understanding Deep Learning"}),o.jsxs(Ud,{children:["©",new Date().getFullYear()," Simon J.D. Prince"]}),o.jsxs(Ud,{children:["Images by StorySet on FreePik: ",o.jsx("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.jsx("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.jsx("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(Gw,{children:[o.jsx(Hd,{href:"https://twitter.com/SimonPrinceAI",target:"_blank","aria-label":"Twitter",children:o.jsx(Qw,{src:Xw,alt:"twitter"})}),o.jsx(Hd,{href:"https://www.linkedin.com/in/simon-prince-615bb9165/",target:"_blank","aria-label":"LinkedIn",children:o.jsx(Wy,{})})]})]})})})})})},Kw=j.div` - color: #fff; - /* background: #f9f9f9; */ - background: ${({lightBg:e})=>e?"#f9f9f9":"#010606"}; - - @media screen and (max-width: 768px) { - padding: 100px 0; - } -`,Zw=j.div` - display: grid ; - z-index: 1; - width: 100% ; - max-width: 1100px; - margin-right: auto; - margin-left: auto; - padding: 0 24px; - justify-content: center; -`,Wd=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'"}; - } -`,js=j.div` - margin-bottom: 15px; - padding: 0 15px; - grid-area: col1; -`,bs=j.div` - margin-bottom: 15px; - padding: 0 15px; - grid-area: col2; -`,qw=j.div` - max-width: 540px ; - padding-top: 0; - padding-bottom: 0; -`,Ss=j.p` - color: #57c6d1; - font-size: 16px; - line-height: 16px; - font-weight: 700; - letter-spacing: 1.4px; - text-transform: uppercase; - margin-bottom: 16px; -`,Jw=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; - } -`,ek=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 tk=j.div` - max-width: 555px; - height: 100%; -`,nk=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 Vd=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; - } - -`,rk=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'"}; - } -`,Gd=j.div` - width: 560px ; - height: 315px ; - @media screen and (max-width: 1050px) { - width: 280px ; - height: 157px ; - } - - -`,Nr=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); - } -`,ik="/assets/media-BEE6k2_u.svg",ok=()=>o.jsx(o.Fragment,{children:o.jsx(Kw,{lightBg:!1,id:"Media",children:o.jsxs(Zw,{children:[o.jsxs(Wd,{imgStart:!0,children:[o.jsx(js,{children:o.jsxs(qw,{children:[o.jsx(Ss,{children:"Media"}),o.jsx(Jw,{lightText:!0,children:" Reviews, videos, podcasts, interviews"}),o.jsx(ek,{darkText:!1,children:"Various resources connected to the book"})]})}),o.jsx(bs,{children:o.jsx(tk,{children:o.jsx(nk,{src:ik,alt:"Car"})})})]}),o.jsxs(Wd,{children:[o.jsxs(js,{children:["Machine learning street talk podcast",o.jsx(Gd,{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(bs,{children:["Deeper insights podcast",o.jsx(Gd,{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(rk,{children:[o.jsxs(js,{children:[o.jsx(Ss,{children:"Reviews"}),o.jsx(Vd,{children:o.jsxs("ul",{children:[o.jsxs("li",{children:[" Amazon ",o.jsx(Nr,{href:"https://www.amazon.com/Understanding-Deep-Learning-Simon-Prince-ebook/product-reviews/B0BXKH8XY6/",children:"reviews"})]}),o.jsxs("li",{children:["Goodreads ",o.jsx(Nr,{href:"https://www.goodreads.com/book/show/123239819-understanding-deep-learning?",children:"reviews "})]}),o.jsxs("li",{children:["Book ",o.jsx(Nr,{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(bs,{children:[o.jsx(Ss,{children:"Interviews"}),o.jsx(Vd,{children:o.jsxs("ul",{children:[o.jsxs("li",{children:["Borealis AI ",o.jsx(Nr,{href:"https://www.borealisai.com/news/understanding-deep-learning/",children:"interview"})]}),o.jsxs("li",{children:["Shepherd ML book ",o.jsx(Nr,{href:"https://shepherd.com/best-books/machine-learning-and-deep-neural-networks",children:"recommendations"})]})]})})]})]})]})})}),lk=j.div` - color: #fff; - /* background: #f9f9f9; */ - background: ${({lightBg:e})=>e?"#57c6d1":"#010606"}; - - @media screen and (max-width: 768px) { - padding: 100px 0; - } -`,sk=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; -`,ak=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'"}; - } -`,uk=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'"}; - } -`,Qd=j.div` - margin-bottom: 15px; - padding: 0 15px; - grid-area: col1; -`,Xd=j.div` - margin-bottom: 15px; - padding: 0 15px; - grid-area: col2; -`,ck=j.div` - max-width: 540px ; - padding-top: 0; - padding-bottom: 0; -`,Ye=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 ; -`,dk=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; - } -`,fk=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 pk=j.div` - max-width: 555px; - height: 100%; -`,hk=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 nt=j.ul` - // list-style:none; - list-style-position: inside; - margin:0; - @media screen and (max-width: 768px) { - font-size: 14px; - } - -`,F=j.ul` - list-style-position: inside; - @media screen and (max-width: 768px) { - font-size: 12px; - } - -`,A=j.p` - padding-left: 18px; - padding-bottom: 10px ; - padding-top: 3px ; - font-size:14px; - color: #fff -`,B=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: .3; - -webkit-transform: scaleX(1); - transition-property: opacity, -webkit-transform; - transition-duration: .3s; - } - - &:hover:before { - opacity: 1; - -webkit-transform: scaleX(1.05); - } -`,mk="/assets/more-CjTFu1S9.svg",gk=()=>o.jsx(o.Fragment,{children:o.jsx(lk,{lightBg:!0,id:"More",children:o.jsxs(sk,{children:[o.jsxs(ak,{imgStart:!1,children:[o.jsx(Qd,{children:o.jsxs(ck,{children:[o.jsx(Ye,{children:"More"}),o.jsx(dk,{lightText:!1,children:"Further reading"}),o.jsx(fk,{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(Xd,{children:o.jsx(pk,{children:o.jsx(hk,{src:mk,alt:"Car"})})})]}),o.jsxs(uk,{children:[o.jsxs(Qd,{children:[o.jsx(Ye,{children:"Book"}),o.jsx(nt,{children:o.jsxs("li",{children:[o.jsx(B,{href:"http://computervisionmodels.com",target:"_blank",rel:"noreferrer",children:"Computer vision: models, learning, and inference"}),o.jsx(A,{children:o.jsxs(F,{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(Ye,{children:"Transformers & LLMs"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{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(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/en/blog/tutorial-14-transformers-i-introduction/",target:"_blank",rel:"noreferrer",children:"Transformers I"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/en/blog/tutorial-16-transformers-ii-extensions/",target:"_blank",rel:"noreferrer",children:"Transformers II"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/en/blog/tutorial-17-transformers-iii-training/",target:"_blank",rel:"noreferrer",children:"Transformers III"}),o.jsx(A,{children:o.jsxs(F,{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.jsx("li",{children:" How to train deeper transformers on small datasets "})]})})]}),o.jsxs("li",{children:[o.jsx(B,{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(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/research-blogs/speeding-up-inference-in-transformers/",target:"_blank",rel:"noreferrer",children:"Speeding up inference in LLMs"}),o.jsx(A,{children:o.jsxs(F,{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(Ye,{children:"Math for machine learning"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{href:"https://drive.google.com/file/d/1j2v2n6STPnblOCZ1_GBcVAZrsYkjPYwR/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Linear algebra"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1cmxXneW122-hcfmMRjEE-n5C9T2YvuQX/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Introduction to probability"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1GI3eZNB1CjTqYHLyuRhCV215rwqANVOx/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Probability distributions"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1DZ4rCmC7AZ8PFc51PiMUIkBO-xqKT_CG/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Fitting probability distributions"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1CTfmsN-HJWZBRj8lY0ZhgHEbPCmYXWnA/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"The normal distribution"}),o.jsx(A,{children:o.jsxs(F,{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(Ye,{children:"Optimization"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{href:"https://drive.google.com/file/d/1IoOSfJ0ku89aVyM9qygPl4MVnAhMEbAZ/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Gradient-based optimization"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/en/blog/tutorial-8-bayesian-optimization/",target:"_blank",rel:"noreferrer",children:"Bayesian optimization"}),o.jsx(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/en/blog/tutorial-10-sat-solvers-ii-algorithms/",target:"_blank",rel:"noreferrer",children:"SAT Solvers II"}),o.jsx(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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.jsxs("li",{children:[o.jsx(B,{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(A,{children:o.jsxs(F,{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(Ye,{children:"Computer vision"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{href:"https://drive.google.com/file/d/1r3V1GC5grhPF2pD91izuE0hTrTUEpQ9I/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Image Processing"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1dbMBE13MWcd84dEGjYeWsC6eXouoC0xn/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Pinhole camera"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1UArrb1ovqvZHbv90MufkW372r__ZZACQ/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Geometric transformations"}),o.jsx(A,{children:o.jsxs(F,{children:[o.jsx("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(B,{href:"https://drive.google.com/file/d/1RqUoc7kvK8vqZF1NVuw7bIex9v4_QlSx/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Multiple cameras"}),o.jsx(A,{children:o.jsxs(F,{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(Ye,{children:"Reinforcement learning"}),o.jsx(nt,{children:o.jsxs("li",{children:[o.jsx(B,{href:"https://arxiv.org/abs/2307.05979",target:"_blank",rel:"noreferrer",children:"Transformers in RL"}),o.jsx(A,{children:o.jsxs(F,{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(Xd,{children:[o.jsx(Ye,{children:"AI Theory"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{href:"https://www.borealisai.com/research-blogs/gradient-flow/",target:"_blank",rel:"noreferrer",children:"Gradient flow"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/research-blogs/the-neural-tangent-kernel/",target:"_blank",rel:"noreferrer",children:"Neural tangent kernel"}),o.jsx(A,{children:o.jsxs(F,{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 ddep network "}),o.jsx("li",{children:" Analtical NTK for deep network"})]})})]})]}),o.jsx(Ye,{children:"Temporal models"}),o.jsx(nt,{children:o.jsxs("li",{children:[o.jsx(B,{href:"https://drive.google.com/file/d/1rrzGNyZDjXQ3_9ZqCGDmRMM3GYtHSBvj/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Temporal models"}),o.jsx(A,{children:o.jsxs(F,{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(Ye,{children:" Unsupervised learning"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{href:"https://drive.google.com/file/d/1BrPHxAuyz28hhz_FtbO0A1cWYdMs2_h8/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Modeling complex data densities"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/en/blog/tutorial-5-variational-auto-encoders/",target:"_blank",rel:"noreferrer",children:"Variational autoencoders"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://arxiv.org/abs/1908.09257",target:"_blank",rel:"noreferrer",children:"Normalizing flows: introduction and review"}),o.jsx(A,{children:o.jsxs(F,{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(Ye,{children:"Graphical Models"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{href:"https://drive.google.com/file/d/1ghgeRmeZMyzNHcuzVwS4vRP6BXi3npVO/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Graphical models"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1WAMc3wtZoPv5wRkdF-D0SShVYF6Net84/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Models for chains and trees"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1qqS9OfA1z7t12M45UaBr4CSCj1jwzcwz/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Models for grids"}),o.jsx(A,{children:o.jsxs(F,{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(Ye,{children:"Machine learning"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{href:"https://drive.google.com/file/d/1ArWWi-qbzK2ih6KpOeIF8wX5g3S4J5DY/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Learning and inference"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1QZX5jm4xN8rhpvdjRsFP5Ybw1EXSNGaL/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Regression models"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://drive.google.com/file/d/1-_f4Yfm8iBWcaZ2Gyjw6O0eZiODipmSV/view?usp=sharing",target:"_blank",rel:"noreferrer",children:"Classification models"}),o.jsx(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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(Ye,{children:"Natural language processing"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{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(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/en/blog/understanding-xlnet/",target:"_blank",rel:"noreferrer",children:"XLNet"}),o.jsx(A,{children:o.jsxs(F,{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(Ye,{children:"Responsible AI"}),o.jsxs(nt,{children:[o.jsxs("li",{children:[o.jsx(B,{href:"https://www.borealisai.com/en/blog/tutorial1-bias-and-fairness-ai/",target:"_blank",rel:"noreferrer",children:"Bias and fairness"}),o.jsx(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/research-blogs/explainability-i-local-post-hoc-explanations/",target:"_blank",rel:"noreferrer",children:"Explainability I"}),o.jsx(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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(B,{href:"https://www.borealisai.com/en/blog/tutorial-12-differential-privacy-i-introduction/",target:"_blank",rel:"noreferrer",children:"Differential privacy I"}),o.jsx(A,{children:o.jsxs(F,{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(B,{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(A,{children:o.jsxs(F,{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 "})]})})]})]})]})]})]})})}),vk=()=>{const[e,t]=O.useState(!1),n=()=>{t(!e)};return o.jsxs(o.Fragment,{children:[o.jsx(qy,{isOpen:e,toggle:n}),o.jsx(iw,{toggle:n}),o.jsx(yw,{}),o.jsx(Tw,{}),o.jsx(Aw,{}),o.jsx(ok,{}),o.jsx(gk,{}),o.jsx(Yw,{})]})};function xk(){return o.jsx(E1,{children:o.jsx(k1,{children:o.jsx(wh,{exact:!0,path:"/udlbook/",element:o.jsx(vk,{})})})})}Lv.createRoot(document.getElementById("root")).render(o.jsx(qe.StrictMode,{children:o.jsx(xk,{})})); diff --git a/dist/assets/index-OOyxBvQc.css b/dist/assets/index-OOyxBvQc.css deleted file mode 100644 index 4a71edd..0000000 --- a/dist/assets/index-OOyxBvQc.css +++ /dev/null @@ -1 +0,0 @@ -*{box-sizing:border-box;margin:0;padding:0;font-family:Encode Sans Expanded,sans-serif} diff --git a/dist/assets/instructor-B2zxe_pu.svg b/dist/assets/instructor-B2zxe_pu.svg deleted file mode 100644 index 994dfbe..0000000 --- a/dist/assets/instructor-B2zxe_pu.svg +++ /dev/null @@ -1,1908 +0,0 @@ - - - - diff --git a/dist/assets/media-BEE6k2_u.svg b/dist/assets/media-BEE6k2_u.svg deleted file mode 100644 index cdd1301..0000000 --- a/dist/assets/media-BEE6k2_u.svg +++ /dev/null @@ -1,2101 +0,0 @@ - - - - diff --git a/dist/assets/more-CjTFu1S9.svg b/dist/assets/more-CjTFu1S9.svg deleted file mode 100644 index 7e6bad6..0000000 --- a/dist/assets/more-CjTFu1S9.svg +++ /dev/null @@ -1,2921 +0,0 @@ - - - - diff --git a/dist/favicon.ico b/dist/favicon.ico deleted file mode 100644 index 7180d80..0000000 Binary files a/dist/favicon.ico and /dev/null differ diff --git a/dist/index.html b/dist/index.html deleted file mode 100644 index 6b8ae79..0000000 --- a/dist/index.html +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - - Understanding Deep Learning - - - - -
- -